Releases: Supercolony-net/openbrush-contracts
Release v2.3.0
What's Changed
- Feature/update access control and diamond docs by @Artemka374 in #158
- fix bug with diamond standard naming by @Artemka374 in #159
- Fix twitter link by @o-tsaruk in #163
- Rename PSP35 to PSP37 by @varex83 in #160
- Update logo and hide common roadmap by @xgreenx in #164
- Integration tests for example project structure by @o-tsaruk in #145
- Contracts size for PR by @o-tsaruk in #155
- Implemented the
PSP22
viapallet-assets
chain extension. by @xgreenx in #168 - Fix compilation on different OS by @xgreenx in #171
- Feature/naming and small issues by @o-tsaruk in #147
- Docs versioning by @o-tsaruk in #178
- Update to
0.3.4
ink! by @Artemka374 in #182 - Add typechain support for integration tests by @varex83 in #175
- Testing CI for typechain integration by @Artemka374 in #183
- Openbrush release v2.3.0 by @Artemka374 in #186
New Contributors
Full Changelog: v2.2.0...v2.3.0
Release v2.2.0
Release contains:
-
Significant refactoring of how OpenBursh works with storage.
Now it is simple and more readable. Also, it is a preparation before storage refactoring in ink!.
More info about refactoring you can find in the description. -
Implementation of a diamond contract without the usage of ink! codegen. It takes less size and is a good base for investigating future size optimizations.
-
Documentation on how to write upgradeable contracts.
Release v2.1.0
- Updated the ink! to the
v3.3.0
version. - Added
MultiMapping
,Mapping
, andRawMapping
that can be used to protect the code from monomorphization. The user can specify the key and value that he expects to use during interacting with those structures and that type should be used across all places. It helps to avoid duplicating code for a few different types likeAccountId
and&AccountId
. - Optimized the implementation of
PSP34Enumerable
and also changed the way how to get enumerable functionality.
- Optimized all contract with
openbrush::storage::Mapping
. - Renamed
PSP1155
intoPSP35
and refactored it according to the proposal. - Implemented
AccessControlEnumerable
andPSP35Enumerable
. - Added documentation with GIFs regarding deployment of contracts on different parachains/blockchains.
It is a preparation release before a new storage system.
Release v2.0.0
OpenBursh is available on crates.io under the name openbrush
.
OpenBrush uses a specific version of the ink! due to use-ink/ink#1278. And it is renamed brush
-> openbrush
. It is breaking change so now you need to use a new version like:
ink_primitives = { version = "~3.2.0", default-features = false }
ink_metadata = { version = "~3.2.0", default-features = false, features = ["derive"], optional = true }
ink_env = { version = "~3.2.0", default-features = false }
ink_storage = { version = "~3.2.0", default-features = false }
ink_lang = { version = "~3.2.0", default-features = false }
ink_prelude = { version = "~3.2.0", default-features = false }
scale = { package = "parity-scale-codec", version = "3", default-features = false, features = ["derive"] }
scale-info = { version = "2", default-features = false, features = ["derive"], optional = true }
openbrush = { version = "~2.0.0", default-features = false }
Release v1.7.1
Minor fix and new ink!
- Updated ink! to
3.2.0
- Fixed bug with not docs in metadata
Release v1.7.0
Release contains bug fixes and a new additional method.
- Updated ink! to
3.1.0
release
Another good news: we started to use the ink! from crate.io instead of GitHub. So after updating OpenBrush to a new version also need to update the import of ink! like in documentation. Soon we also will publish brush
to crate.io.
Release v1.6.2
Minor fixes and improvements:
- Fixed bug in
PSP34Enumerable
andDiamondLoupe
contracts. - Fixed
LendingContract
to be compatible with new version of thecontract-pallet
. - Added
_release_all
functionality intoPaymentSplitter
Release v1.6.1
- Simplified running of unit tests.
- Speed up the build of the library by moving each trait definition to a separate file.
- Fixed the bug with modifiers that don't allow to have more than one input argument.
- Changed the name admin to member in
_setup_role
function=) - Up version of ink! to
3.0.1
- Added additional tests for
Diamond
and forPSP34
Release v1.6.0
Included changes:
- Moved
_before_token_transfer
and_after_token_transfer
in all token implementations to a separate trait - Added NFT enumerable extension
PSP34 Enumerable
. - Added the
Diamond
contract for diamond standard implementationDiamond
along with theDiamond Loupe
extensionDiamond Loupe
Release v1.5.0
ink! v3.0.0 is released
So we are creating a new release that will use that stable version.
That release includes:
- Refactored implementation of NFT to be compatible with
PSP34
. - Added a new
#[brush::storage]
macro that allows specifying the storage key of the structure. That macro is useful for upgradable contracts that can be implemented with the newdelegate_call
functionality. - Updated the storage of all contracts to be upgradable by default.
- Added the
Proxy
contract that can be used for upgradable contracts.