Releases: hashgraph/hedera-smart-contracts
v0.11.0
Overview
The Hedera Smart Contracts v0.11.0 release introduces a significant enhancement with the resolution of IHRC632 and IHRC904 definitions, addressing long-standing gaps in the repository. This update provides clear definitions for HIP 632, 904, and 906, introducing dedicated interface contracts like IHRC632
, IHRC904
, and IHRC906
to define HIP-specific functions callable by contracts. It also differentiates facade contracts for direct interaction by both EOAs and contracts, ensuring clarity and modularity. Key additions include hbarAllowance()
and hbarApprove()
in IHRC906Facade.sol
, as well as new utility functions like getEvmAddressAlias()
and isAuthorizedRaw()
, which streamline integration with the system contract. This foundational work lays the groundwork for future compatibility and system contract refinements.
Beyond this major update, the release features several other enhancements, including an indexing tool for ERC contracts and improved test coverage for key functionalities like isAuthorizedRaw()
(HIP-632). Bug fixes and dependency upgrades, such as updates to @hashgraph/sdk
and @openzeppelin/hardhat-upgrades
, ensure stability and compatibility. Internal changes like the introduction of an ERC Registry indexing tool targeting localnet and improved CI workflows demonstrate ongoing efforts to make the codebase more robust and developer-friendly.
What's Changed
Enhancements
- ci: Update Permissions on smart-contracts workflows to update main by @rbarkerSL in #969
- fix: updated release automation workflow by @quiet-node in #976
- test: added test coverage to confirm key alias remain the same after key rotations by @quiet-node in #984
- feat: Skip issue matching for snyk and dependabot PRs. by @ebadiere in #982
- test: added E2E coverage for
isAuthorizedRaw()
in HIP-632. by @quiet-node in #997 - docs: added a design document outlining the ERC contract indexer by @quiet-node in #1033
- chore: initialized a new NPM project for the indexer tool by @quiet-node in #1043
- feat: added ContractScanner service class to handle fetching contracts from mirror node by @quiet-node in #1044
- feat: added categorizeERCContracts() method to detect and categorize ERC contracts by @quiet-node in #1048
- feat: added RegistryGenerator service class to export ERC token contracts by @quiet-node in #1050
- feat: added ConfigService service class to evaluate configurations. by @quiet-node in #1054
- feat: added an option for resolveStartingPoint() to fetch next pointer from disk by @quiet-node in #1057
- feat: added a main runner class as the entry point for the indexing tool by @quiet-node in #1058
- chore: update codeowners by @nadezhdapopovaa in #1053
- feat: added
getErcTokenInfo()
to retrieve detailed token information in the ERC Registry project. by @quiet-node in #1064 - feat: allowed ERC registry indexing tool to target localnet by @quiet-node in #1071
- test: added acceptance test to validate the e2e flow of the ERC Registry project by @quiet-node in #1073
- chore: added a list of files containing token information for ERC-20 and ERC-721 tokens on the Hedera networks by @quiet-node in #1075
- feat: Resolve IHRC632 and IHRC904 definitions by @Nana-EC in #1103
Dependency Upgrades
- build(deps-dev): Bump @hashgraph/hedera-local from 2.29.4 to 2.31.0 by @dependabot in #963
- build(deps-dev): Bump @openzeppelin/hardhat-upgrades from 3.3.0 to 3.4.0 by @dependabot in #959
- build(deps): Bump actions/checkout from 4.2.0 to 4.2.1 by @dependabot in #970
- ci: Bump actions/upload-artifact from 4.4.0 to 4.4.3 by @dependabot in #980
- build(deps-dev): Bump @openzeppelin/hardhat-upgrades from 3.4.0 to 3.5.0 by @dependabot in #985
- build(deps-dev): Bump @openzeppelin/contracts-upgradeable from 5.0.2 to 5.1.0 by @dependabot in #989
- build(deps): Bump actions/checkout from 4.2.1 to 4.2.2 by @dependabot in #994
- build(deps-dev): Bump @hashgraph/sdk from 2.51.0 to 2.52.0 by @dependabot in #988
- build(deps): Bump secp256k1 from 4.0.3 to 4.0.4 by @dependabot in #992
- build(deps): bump actions/setup-node from 4.0.4 to 4.1.0 by @dependabot in #995
- build(deps-dev): Bump hardhat from 2.22.12 to 2.22.13 by @dependabot in #979
- build(deps): Bump elliptic from 6.5.7 to 6.6.0 by @dependabot in #996
- build(deps-dev): Bump hardhat from 2.22.13 to 2.22.15 by @dependabot in #1003
- build(deps-dev): Bump @hashgraph/sdk from 2.52.0 to 2.53.0 by @dependabot in #1004
- chore: Upgraded references in github workflows by @ebadiere in #1009
- build(deps): Bump elliptic from 6.6.0 to 6.6.1 by @dependabot in #1015
- build(deps-dev): Bump hardhat from 2.22.15 to 2.22.16 by @dependabot in #1021
- build(deps): Bump cross-spawn from 7.0.3 to 7.0.6 in /system-contract-dapp-playground by @dependabot in #1023
- build(deps): Bump step-security/harden-runner from 2.10.1 to 2.10.2 by @dependabot in #1024
- build(deps-dev): Bump @hashgraph/hedera-local from 2.31.0 to 2.32.4 by @dependabot in #1017
- build(deps): Bump step-security/publish-unit-test-result-action from 2.17.0 to 2.18.0 by @dependabot in #1025
- build(deps-dev): Bump husky from 9.1.6 to 9.1.7 by @dependabot in #1022
- build(deps-dev): Bump @nomicfoundation/hardhat-foundry from 1.1.2 to 1.1.3 by @dependabot in #1020
- build(deps-dev): Bump prettier from 3.3.3 to 3.4.1 by @dependabot in #1031
- build(deps-dev): Bump @hashgraph/sdk from 2.53.0 to 2.54.2 by @dependabot in #1034
- build(deps-dev): Bump hardhat from 2.22.16 to 2.22.17 by @dependabot in #1045
- build(deps): Bump dotenv from 16.4.5 to 16.4.7 by @dependabot in #1046
- build(deps-dev): Bump @openzeppelin/hardhat-upgrades from 3.5.0 to 3.6.0 by @dependabot in #1032
- build(deps-dev): Bump prettier from 3.4.1 to 3.4.2 by @dependabot in #1049
- build(deps-dev): Bump @hashgraph/hedera-local from 2.32.5 to 2.32.6 by @dependabot in #1055
- build(deps-dev): Bump @openzeppelin/hardhat-upgrades from 3.6.0 to 3.7.0 by @dependabot in #1063
- build(deps-dev): Bump @hashgraph/sdk from 2.54.2 to 2.55.0 by @dependabot in #1069
- build(deps): Bump nanoid from 3.3.6 to 3.3.8 in /system-contract-dapp-playground by @dependabot in #1072
Internal Changes
- ci: Updating one of the actions to fix issues with inputs. by @san-est in #986
- ci: Add "contents" persmission and add hardened runner step by @mishomihov00 in #991
- ci: Update per Q3 audit findings by @mishomihov00 in #1002
- ci: replace release notes generator action with one maintained by stepsecurity by @PavelSBorisov #1027
New Contributors
- @mishomihov00 made their first contribution in #991
- @PavelSBorisov made their first contribution in #1027
- @nadezhdapopovaa made their first contribution in h...
v0.10.1
Overview
The Hedera Smart Contracts v0.10.1 release introduces key enhancements and new features, further aligning with important Hedera Improvement Proposals (HIPs). Noteworthy updates include the addition of the isAuthorizedRaw
function, supporting the Hedera Account Service (HIP-632), which improves authorization checks. Additionally, test coverage has been expanded with new examples for HIP-719’s isAssociated()
functionality and comprehensive tests for HIP-1010, enhancing the security and functionality of Hedera's contract services.
This release also strengthens the platform's debugging capabilities with the introduction of debug_traceTransaction
tests, which utilize opcode logging for deeper insights during contract execution. These improvements enable developers to better trace transaction flows and optimize contract behavior. Furthermore, a major code clean-up effort was undertaken, where all references to "precompile" were replaced with "system contract," bringing greater clarity to the project's structure. This update not only renamed test directories and files but also revised the documentation to reflect the updated terminology, ensuring a more cohesive development environment.
In addition to these major updates, several dependency upgrades were implemented to improve security, compatibility, and overall performance. These updates ensure the system remains up to date with the latest standards and continues to provide a reliable foundation for smart contract development.
What's Changed
Enhancements
- test: ecrecover evm compatibility by @marcin-piela-ariane in #815
- feat: added support for release automation by @quiet-node in #849
- feat: block properties behaviour by @natanasow in #853
- test: add
debug_traceTransaction
with opcode logger tests by @natanasow in #786 - chore: add HTS Token Proxy reference contract by @acuarica in #886
- ci: update workflows to use latitude.sh based runners by @nathanklick in #907
- chore: add
isAuthorizedRaw
function by @lukelee-sl in #919 - test: add test coverage and example usage for HIP719 isAssociated() by @Ivo-Yankov in #905
- feat: add new tests for HIP-1010 by @konstantinabl in #911
- feat: gas comparison for verifying a BLS signatures using G1 for public key by @natanasow in #960
- chore: code clean up by @quiet-node in #966
Bug Fixes
- feat: fix migration flow by @natanasow in #954
Documentation
- chore: add comments to document revert behavior in view functions by @lukelee-sl in #899
Dependency Upgrades
- build(deps): Bump peter-evans/create-pull-request from 6.0.5 to 6.1.0 by @dependabot in #856
- build(deps): Bump actions/setup-node from 4.0.2 to 4.0.3 by @dependabot in #842
- build(deps): Bump step-security/semver-utils from 1.0.0 to 3.1.0 by @dependabot in #864
- build(deps): Bump step-security/ghaction-import-gpg from 1.0.0 to 6.0.0 by @dependabot in #865
- build(deps): Bump step-security/conventional-pr-title-action from 1.0.0 to 3.2.0 by @dependabot in #866
- build(deps-dev): Bump prettier from 3.3.2 to 3.3.3 by @dependabot in #859
- build(deps): Bump step-security/harden-runner from 2.7.0 to 2.9.0 by @dependabot in #870
- build(deps): Bump actions/setup-node from 4.0.2 to 4.0.3 by @dependabot in #873
- build(deps-dev): Bump husky from 9.0.11 to 9.1.4 by @dependabot in #880
- build(deps): Bump step-security/ghaction-import-gpg from 6.0.0 to 6.1.0 by @dependabot in #890
- build(deps): Bump step-security/harden-runner from 2.9.0 to 2.9.1 by @dependabot in #893
- build(deps): Bump actions/checkout from 4.1.6 to 4.1.7 by @dependabot in #894
- build(deps): Bump actions/upload-artifact from 4.3.4 to 4.3.6 by @dependabot in #895
- build(deps-dev): Bump @openzeppelin/hardhat-upgrades from 3.2.0 to 3.2.1 by @dependabot in #884
- build(deps): Bump step-security/semver-utils from 3.1.0 to 4.3.0 by @dependabot in #891
- build(deps): Bump elliptic from 6.5.5 to 6.5.6 by @dependabot in #867
- build(deps-dev): Bump hardhat from 2.22.5 to 2.22.8 by @dependabot in #897
- build(deps-dev): Bump @hashgraph/hedera-local from 2.27.1 to 2.29.0 by @dependabot in #896
- build(deps): Bump elliptic from 6.5.6 to 6.5.7 by @dependabot in #904
- build(deps-dev): Bump @hashgraph/hedera-local from 2.29.0 to 2.29.1 by @dependabot in #914
- build(deps-dev): Bump axios from 1.6.1 to 1.7.4 in /system-contract-dapp-playground by @dependabot in #909
- build(deps): Bump step-security/foundry-toolchain from 1.2.0 to 1.2.1 by @dependabot in #912
- build(deps): Bump axios from 1.6.8 to 1.7.4 by @dependabot in #908
- build(deps-dev): Bump husky from 9.1.4 to 9.1.5 by @dependabot in #913
- ci(deps): bump peter-evans/create-pull-request from 6.1.0 to 7.0.1 by @dependabot in #934
- chore(deps): bump peter-evans/create-pull-request from 7.0.1 to 7.0.2 by @dependabot in #942
- chore(deps-dev): bump @hashgraph/sdk from 2.49.2 to 2.51.0 by @dependabot in #941
- chore(deps-dev): bump husky from 9.1.5 to 9.1.6 by @dependabot in #940
- build(deps): Bump micromatch from 4.0.5 to 4.0.8 in /system-contract-dapp-playground by @dependabot in #927
- build(deps): [Snyk] Upgrade typescript from 5.1.6 to 5.5.4 by @swirlds-automation in #917
- build(deps): Bump actions/upload-artifact from 4.3.6 to 4.4.0 by @dependabot in #924
- build(deps-dev): Bump @openzeppelin/hardhat-upgrades from 3.2.1 to 3.3.0 by @dependabot in #943
- chore(deps): bump step-security/harden-runner from 2.9.1 to 2.10.1 by @dependabot in #937
- build(deps): [Snyk] Upgrade: react, react-dom by @swirlds-automation in #918
- build(deps): Bump peter-evans/create-pull-request from 7.0.2 to 7.0.3 by @dependabot in #944
- build(deps): installed js-cookie by @quiet-node in #926
- build(deps): Bump peter-evans/create-pull-request from 7.0.3 to 7.0.5 by @dependabot in #949
- build(deps): Bump next from 14.1.1 to 14.2.12 in /system-contract-dapp-playground by @dependabot in #946
- build(deps): Bump actions/checkout from 4.1.7 to 4.2.0 by @dependabot in #962
- build(deps-dev): Bump @nomicfoundation/hardhat-chai-matchers from 2.0.7 to 2.0.8 by @dependabot in #951
- build(deps-dev): Bump hardhat from 2.22.8 to 2.22.12 by @dependabot in #961
- build(deps): Bump actions/setup-node from 4.0.3 to 4.0.4 by @dependabot in #950
New Contributors
- @marcin-piela-ariane made their first contribution in #815
- @nathanklick made their first contribution in #907
- @san-est made their first contribution in #928
Full Changelog: v0.9.0...v0.10.0
v0.10.0
v0.10.0
v0.9.0
Overview
Release v0.9.0 brings significant updates and improvements to the Hedera Smart Contracts repository, enhancing functionality and ensuring better performance and stability. Key highlights include:
- Support for Cancun Features: Added coverage for HIP-865 and HIP-867, providing new functionalities and improvements to the Hedera ecosystem.
- Enhanced Crypto Transfer Support: Introduced
cryptoTransfer
toCryptoAllowance
to showcase support in HIP-906, expanding the capabilities of crypto operations. - Tooling and Analysis: Enhanced tooling with the
sevm
precompile detection analysis tool and provided raw bytecode analysis reports, improving code quality and security. - Contract Structure Refinement: Renamed
contracts/precompiles
tocontracts/system-contracts
for better organization and clarity. - Dependency Upgrades: Updated various dependencies, including
@hashgraph/hedera-local
,@openzeppelin/hardhat-upgrades
, and@nomicfoundation/solidity-analyzer
, ensuring the latest features and security enhancements.
Enhancements
- fix: renamed contracts/precompiles to contracts/system-contracts #848
- Rename contracts/precompiles to contracts/system-contracts #846
- fix: renamed .github/README.md to ./github/workflows_documentation.md #845
- Rename .github/README.md as it's taking over the README of the repo #843
- docs: add
sevm
precompile detection analysis tool #826 - feat: added coverage for HIP-867 #822
- Add Smart Contract Services Support for KZG Point Evaluation Precompiled Function (HIP-867) #821
- feat: added example coverage for HIP-865 #816
- fix: refactored precompile contracts and tests folders #811
- Refactor precompile folder #810
- fix: renamed IHRC to IHRC719 #808
- feat: added cryptoTransfer to CryptoAllowance to showcase support in HIP906 #800
- docs: Additional Slither AST note #777
- docs: add README for
upgrade-testing.yml
workflow #776 - feat: BLS Signature Verification Example #775
- chore: add Solidity files for the Hedera Account Service #771
- feat: raw bytecode analysing script #768
- docs: tools analysis reports #767
- feat: add upgrade testing workflow #757
- ci: Update workflows for GHA best practices #742
- test: ci migration testing #733
- feat: added new StateRegistry contract to expose more state-related-scenarios #731
- Create end to end tests for atomic crypto transfer #132
Bug Fixes
- fix(slither): setting the correct path to the build in dc cofnig #830
- fix: fixed ci failing test in System Dapp Contract #827
- System Contract DApp CI tests are failing #817
- fix: trying to fix Publish Results CI #778
- fix: Turning on test now that mirror node issue #7036 is fixed. #722
Dependency Upgrades
- build(deps): Bump actions/download-artifact from 4.1.7 to 4.1.8 #838
- build(deps-dev): Bump
@hashgraph
/hedera-local from 2.27.0 to 2.27.1 #836 - build(deps-dev): Bump ws from 7.4.6 to 7.5.10 #832
- build(deps-dev): Bump
@hashgraph
/hedera-local from 2.26.2 to 2.27.0 #828 - build(deps-dev): Bump
@openzeppelin
/hardhat-upgrades from 3.1.1 to 3.2.0 #823 - build(deps): Bump ws and ethers in /system-contract-dapp-playground #818
- build(deps-dev): Bump
@hashgraph
/sdk from 2.45.0 to 2.47.0 #809 - build(deps-dev): Bump prettier from 3.3.1 to 3.3.2 #806
- build(deps): Bump
@nomicfoundation
/solidity-analyzer from 0.1.1 to 0.1.2 #805 - build(deps): Bump braces from 3.0.2 to 3.0.3 in /system-contract-dapp-playground #802
- build(deps-dev): Bump braces from 3.0.2 to 3.0.3 #801
- build(deps-dev): Bump
@hashgraph
/hedera-local from 2.25.2 to 2.26.2 #799 - build(deps-dev): Bump prettier from 3.2.5 to 3.3.1 #796
- build(deps): Bump actions/download-artifact from 3.0.2 to 4.1.7 #794
- build(deps-dev): Bump
@nomicfoundation
/hardhat-chai-matchers from 2.0.6 to 2.0.7 #793 - build(deps-dev): Bump
@openzeppelin
/hardhat-upgrades from 3.1.0 to 3.1.1 #791 - build(deps-dev): Bump hardhat from 2.22.4 to 2.22.5 #790
- ci: Updated source for conventional-pr-title-action #785
- build(deps): Bump actions/download-artifact from 3.0.2 to 4.1.7 #779
- build(deps): Bump actions/setup-node from 3 to 4 #774
- build(deps): Bump actions/checkout from 3 to 4 #773
- build(deps-dev): Bump prettier from 3.0.0 to 3.2.5 #762
- build(deps-dev): Bump hardhat from 2.19.4 to 2.22.4 #755
- build(deps-dev): Bump
@nomicfoundation
/hardhat-chai-matchers from 2.0.3 to 2.0.6 #753 - build(deps-dev): Bump husky from 8.0.3 to 9.0.11 #752
- build(deps): Bump actions/checkout from 4.1.5 to 4.1.6 #751
- build(deps-dev): Bump
@hashgraph
/sdk from 2.41.0 to 2.45.0 #750 - build(deps-dev): Bump
@hashgraph
/sdk from 2.41.0 to 2.44.0 #749 - build(deps-dev): Bump
@openzeppelin
/hardhat-upgrades from 3.0.2 to 3.1.0 #748 - build(deps-dev): Bump
@nomicfoundation
/hardhat-foundry from 1.1.1 to 1.1.2 #747 - build(deps): Bump dotenv from 16.3.1 to 16.4.5 #746
- build(deps): Bump elliptic from 6.5.4 to 6.5.5 #744
- build(deps): Bump actions/checkout from 4.1.4 to 4.1.5 #743
- build(deps): Bump next from 13.5.4 to 14.1.1 in /system-contract-dapp-playground #739
- chore: bump local-node version #720
- build(deps-dev): Bump undici from 5.28.3 to 5.28.4 #717
Contributors
Thank you to all the contributors who worked on this release:
@AlfredoG87, @Ivo-Yankov, @acuarica, @arianejasuwienas, @dependabot[bot], @ebadiere, @lukelee-sl, @natanasow, @quiet-node, and @rbarkerSL
v0.8.0
Overview
The v0.8.0 release of the hashgraph/hedera-smart-contracts
repository encompass a range of enhancements and refinements aimed at improving functionality and maintainability. Key highlights include the migration from ethers.js version 5.x to 6.x, ensuring compatibility and potentially benefiting from new features or optimizations.
Additionally, there's a focus on managing dependencies more efficiently, with updates to various packages and libraries. The introduction of the hardhat-abi-exporter plugin adds a streamlined approach to generating ABI-only artifacts, facilitating easier reference without cluttering the repository with unnecessary default artifacts.
Furthermore, efforts have been made to stabilize tests, enhance documentation, and clean up Solidity warnings, all contributing to a more robust and polished codebase. These changes collectively aim to elevate the overall quality and usability of the project.
Changelog
- docs: Bump 0.8.0-SNAPSHOT by @quiet-node in #632
- feat: added oz governor example (#540) by @quiet-node in #635
- feat: Adding tests for Safe Remote Purchase contract by @stefan-stefanooov in #629
- feat: Enhanced retries. Renamed functions. Bumped down retries to see how it behaves in CI. by @ebadiere in #584
- chore: bump
hedera-local
version by @georgi-l95 in #605 - build(deps-dev): Bump follow-redirects from 1.15.2 to 1.15.4 in /system-contract-dapp-playground by @dependabot in #639
- build(deps-dev): Bump follow-redirects from 1.15.3 to 1.15.4 by @dependabot in #638
- fix: updated current dependencies and migrate from ethersjs v5.x to v6.x (#642 #550) by @quiet-node in #644
- fix: replaced OZUUPSUpgradableV4 with OZ UUPSUpgradeable V5 (#643) by @quiet-node in #645
- feat: implement ihrc in hts system contract mocks (#478) by @mshakeg in #640
- feat: re-compile artifacts by @natanasow in #657
- feat: add workflow which allows to start tests against desired tag by @georgi-l95 in #649
- feat: account nonce discrepancies tests by @natanasow in #654
- fix: fixed networkNodeUrl and mirrorNode constant values by @quiet-node in #661
- feat: added direct calls to native precompiles #647 by @stefan-stefanooov in #660
- fix: removed ZeroHashes as private keys by @quiet-node in #662
- feat: added negative test for Non existing addr and 'send', 'transfer', 'call' sol functions by @stefan-stefanooov in #664
- chore: update local node by @georgi-l95 in #669
- feat: added atomicHTS contract to showcase examples highlighting the utilization of the HIP-551 (#650) by @quiet-node in #666
- fix: Add tests for calls to non existing accounts #670 by @stefan-stefanooov in #671
- build(deps-dev): Bump undici from 5.28.2 to 5.28.3 by @dependabot in #679
- feat: added a new flow to let users manually configure transactions' gas limit on the System Contract DApp by @quiet-node in #678
- feat: stabilize flaky tests by @natanasow in #676
- build(deps-dev): Bump @openzeppelin/contracts-upgradeable from 5.0.0 to 5.0.2 by @dependabot in #690
- build(deps-dev): Bump @openzeppelin/contracts from 5.0.0 to 5.0.2 by @quiet-node in #691
- feat: updated solidity version to be 0.8.23 by @quiet-node in #686
- fix: fixed prerequisite-check with the correct contract artifacts by @quiet-node in #697
- feat: added hardhat-abi-exporter plugin to generate ABI-only artifacts on compile by @quiet-node in #698
- fix: removed gas config in hardhat.config.js (#392) by @quiet-node in #696
- fix: removed custom gas limit for ERC1155 deploy transaction (#394) by @quiet-node in #695
- feat: added dynamic feeAmount parameter to fungible and non-fungible token create with custom fee method by @quiet-node in #700
- fix: tweaked .gitignore to ignore unnecessary default artifacts by @quiet-node in #699
- build(deps-dev): Bump follow-redirects from 1.15.4 to 1.15.6 in /system-contract-dapp-playground by @dependabot in #704
- build(deps-dev): Bump follow-redirects from 1.15.4 to 1.15.6 by @dependabot in #705
- chore: cleaned up Solidity warnings by @quiet-node in #701
- docs(update): bump 0.8.0-rc1 by @quiet-node in #712
Full Changelog: v0.7.0...v0.8.0
v0.8.0-rc1
docs(update): bump 0.8.0-rc1 (#712) update(docs): bump 0.8.0-rc1 Signed-off-by: Logan Nguyen <[email protected]>
v0.7.0
Overview
The v0.7.0 release of the hashgraph/hedera-smart-contracts
repository introduces a spectrum of enhancements and additions. The project is now updated to integrate the latest 5.0.0 version of OpenZeppelin contract packages. This update is complemented by a varied collection of smart contracts, illustrating the compatibility of Solidity at the language layer and the Yul inline-assembly. It also emphasizes support for OpenZeppelin standard contracts on the Hedera network. Furthermore, comprehensive test coverage has been implemented to meticulously verify the correct behavior of the aforementioned contracts. Additionally, new GitHub Actions workflows, including a PR title check workflow, have been introduced. The CI/CD pipeline has been improved with new tests, checks, and runners for enhanced efficiency.
Changelog
- Bump 0.7.0-SNAPSHOT by @quiet-node in #560
- Adds tests for control structures by @konstantinabl in #463
- update: renamed methods in ControlStructures contract (#566) by @quiet-node in #567
- update: upgrade openzeppelin contract packages to latest 5.0.0 version (#536) by @quiet-node in #541
- Adds tests for parameter restructuring and assignment by @konstantinabl in #498
- Adding tests for [OZ] ERC-2981 by @stefan-stefanooov in #555
- Creates tests for panic errors support by @konstantinabl in #510
- 487 Solidity Support Modifiers by @ebadiere in #508
- feat: added ContractCreator solidity example contract (#530) by @quiet-node in #531
- feat: added VestingWallet solidity example contract (#554) by @quiet-node in #570
- feat: added ContractCaller solidity example contract (#534) by @quiet-node in #535
- Adding tests for [OZ] ERC-165 by @stefan-stefanooov in #543
- Adding tests for [OZ] Multicall example by @stefan-stefanooov in #548
- Adding tests for [OZ] Pausable by @stefan-stefanooov in #572
- Added tests around the voting ballot contract. by @ebadiere in #502
- EVM Precompiles support by @ebadiere in #524
- Block information tests. by @ebadiere in #500
- Adding tests for [OZ] ERC-20 Votes contract by @stefan-stefanooov in #551
- Adding tests for [OZ] ERC-2771 Context by @stefan-stefanooov in #562
- Returning Contract artifacts to repo. by @stefan-stefanooov in #585
- 571 polling required ci runner by @ebadiere in #586
- Solidity Coverage - Signature example by @AlfredoG87 in #533
- update: renamed methods in Panic contract to fix foundry-test in CI (#578) by @quiet-node in #579
- feat: added ContractCreatorOZCreate2 solidity example contract (#568) by @quiet-node in #573
- Adds test for reentrancy guard by @konstantinabl in #574
- build(deps-dev): Bump axios from 1.4.0 to 1.6.1 in /system-contract-dapp-playground by @dependabot in #589
- build(deps-dev): Bump crypto-js from 4.1.1 to 4.2.0 by @dependabot in #561
- build(deps): Bump sharp from 0.32.4 to 0.32.6 in /system-contract-dapp-playground by @dependabot in #597
- feat: added CrowdFund solidity OZ Ownable example smart contract (#547) by @quiet-node in #569
- feat: add OZ contract manual GitHub action to run OZ examples (#577) by @quiet-node in #591
- Solidity support panic errors - remove failing test by @konstantinabl in #581
- build(deps-dev): Bump @adobe/css-tools from 4.2.0 to 4.3.1 in /system-contract-dapp-playground by @dependabot in #601
- Adding tests for the Simple Auction smart contract. by @stefan-stefanooov in #532
- 487 modifiers by @ebadiere in #575
- Adds transparent upgradeable proxy tests by @konstantinabl in #595
- feat: added proxy upgradable Vault smart contract (#590) by @quiet-node in #600
- Аdds oz beacon proxy tests by @konstantinabl in #604
- [OZ] Safe Cast adding tests by @stefan-stefanooov in #608
- feat: add PR title check workflow by @georgi-l95 in #611
- build(deps-dev): Bump @adobe/css-tools from 4.3.1 to 4.3.2 in /system-contract-dapp-playground by @dependabot in #612
- chore: delete unneeded dgb files by @georgi-l95 in #618
- feat: [OZ] ERC-2771 Forwarder tests by @stefan-stefanooov in #594
- feat: Adding besu local node config by @stefan-stefanooov in #617
- feat: [OZ] ERC-2612 - Permit by @stefan-stefanooov in #606
- feat: added ERC1155Token example (#619) by @quiet-node in #622
- feat: added OZ Access control example (#539) by @ebadiere in #609
- feat: added erc 4626 token standard example (#538) by @ebadiere in #602
- feat: added example to showcase OZ ERC1967Upgrade (#613) by @quiet-node in #615
- feat: added OZ ERC777 example (#546) by @quiet-node in #620
- feat: added smart contract to showcase blind auction example (#490) by @konstantinabl in #563
- chore: cleaned up and reorganized smart contracts and tests folders (#624) by @quiet-node in #626
- feat(docs): added new README file under contracts/ folder (#621) by @quiet-node in #627
- feat: added examples to showcase the support for OZ IERC721Receiver (#625) by @quiet-node in #628
- docs: Bump 0.7.0-rc1 by @quiet-node in #631
New Contributors
- @konstantinabl made their first contribution in #463
Full Changelog: v0.6.0...v0.7.0
v0.7.0-rc1
docs: Bump 0.7.0-rc1 (#631) update: Bump 0.6.0-rc1 Signed-off-by: Logan Nguyen <[email protected]>
v0.6.0
Overview
Hedera Smart Contracts v0.6.0 marks the completion of the 4th phase of the System Contract DApp Playground project, incorporating expanded support for ERC721Mock
, PrngSystemContract
, and ExchangeRateMock
contracts, along with the addition of a new Export Transaction to CSV
feature. Learn more about the System Contract DApp Playground here.
This release also introduces a set of Solidity example contracts
to enhance language coverage, ensures compatibility with the EVM.
Additionally, it implements precompile mock contracts and foundry mock utility test contracts, further enhancing the platform's capabilities
What's Changed
- Bump PR. 0.6.0-SNAPSHOT by @ebadiere in #407
- dapp-feat: ERC721 TokenInformation feature complete (#322) by @quiet-node in #404
- dapp-feat: ERC721 TokenURI & TokenMint feature complete by @quiet-node in #409
- dapp-feat: ERC721 BalanceOf and OwnerOf feature complete by @quiet-node in #410
- dapp-feat: ERC721 TokenPermission feature complere by @quiet-node in #411
- dapp-feat: ERC721 Approval and TransferFrom feature complete by @quiet-node in #412
- dapp-feat: PRNG feature complete by @quiet-node in #413
- feat: added ExchangeRateMock smart contract by @quiet-node in #414
- dapp-feat: Remove Current Deployed Contract Instance feature complete by @quiet-node in #415
- test: added new test suite for PrngSystemContract (#416) by @quiet-node in #417
- dapp-feat: ExchangeRate contract feature complete by @quiet-node in #418
- dapp-feat: added remove transaction records feature to main activity page by @quiet-node in #419
- dapp-refactor: reorganized shared items (#420) by @quiet-node in #422
- dapp-feat: added READONLY transactions to main activity page (#400) by @quiet-node in #423
- dapp-feat: Export Transaction to CSV feature complete (#421) by @quiet-node in #424
- build(deps): Bump postcss from 8.4.27 to 8.4.31 in /system-contract-dapp-playground by @dependabot in #425
- build(deps): Bump zod and next in /system-contract-dapp-playground by @dependabot in #426
- dapp-feat: added query response data to READONLY transactions in main activity page (#427) by @quiet-node in #433
- dapp-docs: added source code documentation (#438) by @quiet-node in #439
- Adding unit tests for Solidity Crypto Units and Time Units by @stefan-stefanooov in #440
- Adding tests for Concatenation. by @stefan-stefanooov in #454
- Adding tests for the Errors in Solidity by @stefan-stefanooov in #457
- Bumped up versions of the mirror node and consensus nodes in the CI w… by @ebadiere in #442
- Adding tests for the Transactions in Solidity by @stefan-stefanooov in #453
- Adding CryptoMath Solidity Test Coverage by @AlfredoG87 in #460
- build(deps-dev): Bump undici from 5.24.0 to 5.26.3 by @dependabot in #464
- Adding solidity workflow. by @ebadiere in #455
- build(deps-dev): Bump @babel/traverse from 7.22.8 to 7.23.2 in /system-contract-dapp-playground by @dependabot in #465
- ABI Encoding tests. by @ebadiere in #466
- Fix Solidity Github action by @Nana-EC in #469
- feat: added new contract to demonstrate
new
keyword usage (#450) by @quiet-node in #467 - Implement precompile mock contracts and foundry mock util test contracts by @mshakeg in #462
- Tests for Address operations by @stefan-stefanooov in #458
- Adding tests for inheritance by @stefan-stefanooov in #474
- Batch Solidity Equivalence Tests by @Nana-EC in #486
- Adding tests for functions. by @stefan-stefanooov in #475
- Adding tests for scoping by @stefan-stefanooov in #476
- feat: added new contract to showcase assembly address operations (#459) by @quiet-node in #484
- Adding tests for Arithmetic by @stefan-stefanooov in #481
- Update files to include mocks by @mshakeg in #503
- Adding tests for the default values of all types in Solidity by @stefan-stefanooov in #497
- Adding tests for advance errors by @stefan-stefanooov in #499
- feat: added PaymentChannel smart contract (#493) by @quiet-node in #509
- Adding TypeOps Solidity Test Coverage by @AlfredoG87 in #526
- feat: added modular solidity example contract (#494) by @quiet-node in #523
- docs: added tutorial on installing foundry and forge to TEST_SETUP doc (#506) by @quiet-node in #507
- feat: added math coverage solidity example contract (#511) by @quiet-node in #521
- feat: added bitwise coverage solidity example contract (#519) by @quiet-node in #522
- feat: added DataAllocation solidity example contract by @quiet-node in #525
- feat: added TransactionInfo solidity example contract (#527) by @quiet-node in #528
- Adding tests for NonExistant account by @stefan-stefanooov in #501
- Bump 0.6.0-rc1 by @quiet-node in #559
New Contributors
- @stefan-stefanooov made their first contribution in #440
- @AlfredoG87 made their first contribution in #460
- @mshakeg made their first contribution in #462
Full Changelog: v0.5.0...v0.6.0
v0.6.0-rc1
Bump 0.6.0-rc1 (#559) Signed-off-by: Logan Nguyen <[email protected]>