Skip to content

Releases: nspcc-dev/neofs-contract

v0.20.0

30 Jul 10:10
2059417
Compare
Choose a tag to compare

Added

  • verify method for Alphabet contracts (#386)
  • Contract deployment code (#395, #410, #417)
  • Functions to deal with address records and New* constructors for nns wrapper (#397)
  • Script comparing some of NeoFS contract states (#399)
  • Script to compare main/fs chain deposit state (#400)
  • Binary contracts provided as Go package (#401)
  • Support for NEP-18 addresses in NNS wrapper (#392)
  • Contract-specific constants and some types to RPC bindings (#402)
  • Prefixes to balance contract storage scheme (#406)
  • admin to properties() result of NNS (#419)

Changed

  • Contracts moved into a separate directory (#378)
  • Licensing documentation (#391, #395, #401)
  • Release archive uses contract.nef and manifest.json file names (#401)
  • NNS now returns more specific errors for invalid domains (#419)

Updated

  • NeoGo dependency to 0.106.3 (#389, #398, #401, #421)
  • golang.org/x/crypto dependency from 0.14.0 to 0.17.0 (#383)
  • Minimal Go version to 1.20 (#389)
  • google.golang.org/protobuf dependency from 1.31.0 to 1.33.0 (#393)

Fixed

  • Outdated NNS record preventing container deletion (#403)
  • Container contract allowed for Put replays (#404)
  • Potential overflow of NNS record IDs (now limited to 16 entries, #419)
  • CNAME resolve results included CNAME record itself (#419)
  • NNS isAvailable returning true when conflicting records are known (#419)

v0.19.1

28 Nov 17:32
05f0278
Compare
Choose a tag to compare

Fixed

  • Version to 0.19.1

v0.19.0

28 Nov 16:08
57f8a62
Compare
Choose a tag to compare

Added

  • Subscription to new epoch events in netmap contract (#368)

Updated

Removed

  • Obsolete subnet contract (#364)
  • Unused deployment/update options (#373)
  • Most of deploy configurations (#373)

Fixed

  • Expired TLD registration (#366)
  • reputation contract documentation (#369)

v0.18.0

26 Sep 19:21
94764ea
Compare
Choose a tag to compare

Added

  • EACL validation in container.setEACL (#330)
  • Contract storage model documentation (#320)
  • Bump minimum required go version up to 1.18 (#346)
  • Ability to register predefined TLDs at NNS deployment (#344)
  • RPC bindings generation (#345)
  • Method to get container name by its ID (#360)
  • Convenience methods for NNS contract (#361)

Updated

  • NNS TLD registration is possible for committee only now (#344, #357)
  • NNS TLDs are no longer proper NFTs (#344)

Removed

  • Old unused (notary-disabled) events (#341)
  • Unused Burn/Mint balance contract events (#358)

Fixed

  • Migration of non-notary network to notarized one with stale votes (#333)
  • nns.getAllRecords missing 'safe' mark (#355)
  • Stale EACL record left after container deletion (#359)

v0.17.0

06 Apr 16:54
8df64fe
Compare
Choose a tag to compare

Added

  • methods to iterate over containers and their sizes (#293, #300, #326)
  • cmd/dump app that pulls state and data of contracts from remote networks (#324)
  • tests/migration framework for storage migration testing (#324)
  • Dumps of the NeoFS MainNet and TestNet contracts (#324)

Updated

  • neo-go to v0.101.0
  • neo-go/pkg/interop to v0.0.0-20230208100456-1d6e48ee78e5
  • stretchr/testify to v1.8.2
  • NNS contract now uses 10 years for the default domain expiration (#296)
  • contract documentation (#275, #317)

Removed

  • Support for non-notary settings (#303)
  • updateInnerRing of the Netmap contract (#303)

Fixed

  • Migration of contracts to previous versions (#324)
  • Potential panic in container contract's getContainerSize (#321)

Updating from v0.16.0

When updating a non-notary installation:

  • read Inner Ring set using innerRingList method of the Netmap contract and install it as NeoFSAlphabet role in RoleManagement one
  • if an update is aborted due to pending votes, try again later
  • replace calling of removed updateInnerRing and deprecated innerRingList methods of the Netmap contract with RoleManagement contract API

v0.16.0 - Anmado (안마도, 鞍馬島)

17 Oct 14:00
v0.16.0
Compare
Choose a tag to compare

Added

  • Support MAINTENANCE state of storage nodes (#269)

Changed

  • netmap.Snapshot and all similar methods return (#269)

Updated

  • NNS contract now sets domain expiration based on register arguments (#262)

Fixed

  • NNS renew now can only be done by the domain owner

Updating from v0.15.5

Update deployed Netmap contract using Update method: storage of the contract
has been incompatibly changed.


Script hashes of deployed contracts in attached neofs-dev-env chain dumps:

Main chain:

NeoFS           f5dba2f67baa3cbb5595f0a7e46adf564ec9407a
Processing      332016219b9eb48348fb12694409dbefe29bdf30

Side chain:

Alphabet(Az)    14cffa8333133ca7b9b1d3a0feadd1cf7568509c
Audit           1ade1831adbc56fad274d6f2b4236f6a91b66bfe
Balance         46b84292a84c6a402913325297d079972525227a
Container       701b5badbed90d79eb1cab483cb944d6c2bef29f
NeoFSID         1943e9bb78a0fe2fe0c95fd2677eec2da6aa4aa5
Netmap          d87339f71292cc1852d68327867b272e1d60c261
NNS             15c35ccef39aaf2275cde0899a2e0dbebe29ca1d
Proxy           0fa6054cb3c68232b5da08677cf8047a0a2012bf
Reputation      37970f664a216176d621a9515d59a400fe6fb8ad
Subnet          dfd51a5947c3fbe803c1b39ec046e10ee6696b64

neofs-contract-v0.16.0.tar.gz built with neo-go v0.99.3

v0.15.5

23 Aug 09:47
v0.15.5
Compare
Choose a tag to compare

[0.15.5] - 2022-08-23

Update neo-go to v0.99.2.


Script hashes of deployed contracts in attached neofs-dev-env chain dumps:

Main chain:

NeoFS:      913c08e0faa2b94516ac7effaea7a9363e492228
Processing: ab239aa64ff6419419390038682a58b3e7dd0e86

Side chain:

Alphabet(Az): 73cf92b4a0a52009605d19d1dbc67db05d243662
Audit:        ee70ca2cff1073b0335c0b4062edbaa7f59ad629
Balance:      f7a77b58e2581cb3f363977295ff870e42c42555
Container:    4fe02bcf074db1b6a5b71c13e3ac04e4bcfc3a96
NeoFSID:      af4681232a16511654d007ee851a799a3475b551
Netmap:       0605a9623cb07b638fc6fe243bb7dc8bc50d30cd
NNS:          7ae4647c98943faf26a059110d83e0716e789356
Proxy:        7a2b472632f30c0bd841dbe88252096f4e1eccd4
Reputation:   f567d868746cd46c2f3a2c46a9e454cd56a1be1e
Subnet:       dd782a8736da57f0d356f659cf63872c5944162d

neofs-contract-v0.15.5.tar.gz built with the v0.99.2 neo-go

v0.15.4

03 Aug 16:11
v0.15.4
Compare
Choose a tag to compare

[0.15.4] - 2022-07-27

Only a version bump to update manifest.


Script hashes of deployed contracts in attached neofs-dev-env chain dumps:

Main chain:

NeoFS:      9475fd957b98fea6ceaab08fc5f976ecabdb5868
Processing: b6bd82318c210c82e08532650859ce5a9d22c66e

Side chain:

Alphabet(Az): 93e682c333002db825b8b51c81efff76f3f38e15
Audit:        932459996b727b47574728598d7a39063c1c73a9
Balance:      784b0e2b97c2ec842aa9b7f14a1916562092068e
Container:    a67365a9ed4110746024dd2596a2fd65245f5061
NeoFSID:      33ba08c534e3f210c96aaf03a6d1a693ce98e028
Netmap:       fad1e43316dea7f886bab82875931287c5a7e0a5
NNS:          ab38ad2b36546bfd60e34a3583a4a1cfb5358047
Proxy:        fe6df3197f0c266bf71425e670fb0e5596553709
Reputation:   d81ff54929350d0ebf82bd019f5cb825ca6c8721
Subnet:       1d74f672fc683ca4cc60ae376221baa1b1f5ef00

neofs-contract-v0.15.4.tar.gz built with the v0.99.1 neo-go

v0.15.3

22 Jul 12:00
v0.15.3
Compare
Choose a tag to compare

[0.15.3] - 2022-07-22

Added

  • Allow to build archive from source (#250)

Changed

  • Update neo-go to the latest version
  • Use proper type for integer constants (#248)

Script hashes of deployed contracts in attached neofs-dev-env chain dumps:

Main chain:

NeoFS:      d01a381aae45f1ed181db9d554cc5ccc69c69f4e
Processing: 52eb8d0b794430e7d37d7650961d6dcd0ec40cd1

Side chain:

Alphabet(Az): 93e682c333002db825b8b51c81efff76f3f38e15
Audit:        5ff01ee2becec340f2b87bf5b696aa5cbb01fdf3
Balance:      f09634935ee2508ef5acbce5468c8379073fcd9a
Container:    4da19a534afb5578d7739f688733ab8289215507
NeoFSID:      6a8908919828b20d4717bf981dbba619624deb89
Netmap:       f8ba88fc9955fb4adb33e3e7b51f25523f8261ec
NNS:          8e6c3cd4b976b28e84a3788f6ea9e2676c15d667
Proxy:        710f01b1e4cd9eafe78474e979cf30cf0855499d
Reputation:   b2bef90d4d79a156633f904f282c1476b0eae338
Subnet:       9ba750e324f19b1233ba789dd107f67d6a104eb6

neofs-contract-v0.15.3.tar.gz built with the latest neo-go

v0.15.2

07 Jun 12:16
Compare
Choose a tag to compare

[0.15.2] - 2022-06-07

Added

  • container.Count method (#242)

Changed

  • Update neo-go to v0.99.0 (#246)

Script hashes of deployed contracts in attached neofs-dev-env chain dumps:

Main chain:

NeoFS           d07ec2a43d2f8638934d340bfb60b6c23afce106
Processing      181ea9b9db85f91601634d21a0dcba59aace17f0

Side chain:

Calculated hashes for morph contracts:

Alphabet(Az)    2cfeec488e268fdcbf0067ee4af7aa884890e342
Audit           16d5d9ac17c158e44972a8b8dea2eb614b2fc120
Balance         62558ee9fffa88dd8f27caccb5797ea70e35472e
Container       989c9e57f67ae8f38310785609729f53a269e886
NeoFSID         bd259a517ac8bd92c6e1285a3af7fe0c8b3cfa53
Netmap          06197b56b472b65bb42f4cfb024bc21d105c1cb5
NNS             5491c6cfd46f90cda8604ca1dd55449b7aaa1b47
Proxy           2790a6b3698279d28e3131fbf5e3c2c0c3a968c7
Reputation      72de329c8cc94249b825a245c454059bc7945c27
Subnet          633c1c98ca45686f98827a2b7597680e6df1c8fe

neofs-contract-v0.15.2.tar.gz built with neo-go v0.99.0