Releases: icanvardar/gasgnome
Releases · icanvardar/gasgnome
Release v0.3.0 - Expanded Contract Features and Storage Improvements
🚀 Features
- Implemented
staticcall
anddelegatecall
inContractLib
. - Added transient storage operations to
Slot
.
🐛 Bug Fixes
- Corrected slot updates in
ContractLibLogic
. - Updated
staticcall
todelegatecall
inContractLib
. - Fixed parameter type issue in
Slot
. - Updated
Deploy.s.sol
.
🚜 Refactor
- Merged call functions in
ContractLib
. - Added mock contract and related test files:
ContractLib.t.sol
,Base.t.sol
. - Updated types and library files.
📚 Documentation
- Added API references.
- Updated installation section in docs.
🎨 Styling
- Updated
Deploy.s.sol
.
🧪 Testing
- Added test cases for
staticcall
, new call functions,delegatecall
, and revert cases inContractLib
. - Added mock proxy and logic.
- Created
Variables.sol
mock contract and integrated it intoSlotLib
tests. - Added transient storage test cases and base contract for test suites.
⚙️ Miscellaneous Tasks
- Updated
CHANGELOG.md
,README.md
,Gasgnome.sol
,foundry.toml
,remappings.txt
. - Added
soldeer
package URL. - Added logic slots and tested
delegatecall
with incorrect function signature inContractLibProxy
.
v0.2.0: Major Enhancements & Bug Fixes
Release Notes
This release introduces significant updates and improvements across various libraries, including MemoryLib, Pointer, ErrorLib, EventLib, and ContractLib. Key highlights include the addition of new functions, bug fixes, refactoring for improved code clarity, and the introduction of new test cases.
🚀 Features
- MemoryLib: New functions added for enhanced memory management.
- Pointer: Introduction of a custom type with associated functions.
- ErrorLib: Expanded library with new utility functions.
- EventLib: Addition of untested library functions, duplication by parameter variations, and anonymous event emitters.
- ContractLib: Enhanced with new functions and completion of missing function bodies.
🐛 Bug Fixes
- MemoryLib & PointerLib: Resolved update function bugs.
- EventLib: Updated anonymous emitters.
- ContractLib: Eliminated redundant overwrites.
🚜 Refactor
- Function visibility updates in MemoryLib and Pointer.
- Custom error additions and maximum memory location update.
- Removed unnecessary functions and parameter updates in EventLib and ContractLib.
🎨 Styling
- Cleaned up redundant lines in MemoryLib tests and updated comments in EventLib.
🧪 Testing
- Comprehensive test suites and case updates across all libraries, including positive case coverage in ContractLib.
⚙️ Miscellaneous Tasks
- Updates to Gasgnome.sol, CHANGELOG.md, foundry.toml, and ci.yml configurations.
Release v0.1.0 - Initial Release with Core Libraries and Features
Release Notes
🚀 New Features
- Storage Library: Added a new
Storage
library. - Slot Utilities: Introduced
asString
andasBytes
functions. - Slot Types: Added new
getSlot
types. - Bitmask Library: Added
BitmaskLib.sol
with a newMask
custom type and its library. - Arithmetic Library: Added
ArithmeticLib
with new functions. - Custom Types: Added
SignedInt
andUnsignedInt
custom types with their respective libraries and functions.
🐛 Bug Fixes
- CI Configuration: Updated
ci-all-via-ir.yml
. - Parameter Types: Changed
bitSize
parameter type touint16
. - Condition Fixes: Corrected conditions in
UnsignedInt
andSignedInt
. - Function Updates: Updated
divSignedInt
,modSignedInt
, andexpSignedInt
functions inSignedInt
.
🚜 Refactoring
- Slot Functions: Updated
asInt256
,asUint256
, andasAddress
functions. - Library Renaming: Renamed
Storage
toStorageLib
. - Bitmask Library: Updated
updateLeftPadded
function,Mask
custom type, andbuild
function parameters. RemovedgetLength
function. - UnsignedInt Functions: Updated various functions and added custom errors.
- Gasgnome: Updated
Gasgnome.sol
.
📚 Documentation
- README.md: Updated README with new information.
🎨 Styling
- SlotLib: Updated
setUp
function. - Bitmask Library: Moved
Mask
toBitmaskLib
, renamedupdateDataWith
toupdateLeftPadded
, and formattedBitmaskLib.t.sol
.
🧪 Testing
- SlotLib: Added test suite and
asBytes
test cases. - Storage: Added test suite.
- Bitmask: Added test suite and updated
BitmaskLib
test suite. - ArithmeticLib: Updated test cases.
- Custom Types: Created test suites and updated test cases for
SignedInt
andUnsignedInt
.
⚙️ Miscellaneous
- CI Configuration: Added and updated
ci-all-via-ir.yml
. - Assets: Added and updated
logo.svg
. - Changelog: Added and updated
CHANGELOG.md
. - Types: Added
slot
type and its library. - Clean-Up: Removed redundant contracts.