Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
14 KiB
Changelog
2.12.0 - 2022-02-22 - Heuksando (흑산도, 黑山島)
Network magic, main status codes, object locks and notifications.
Added
magic_number
field toRequestMetaHeader
message (#82)WRONG_MAGIC_NUMBER
status code toCommonFail
section (#82)- Well-known object attributes related to notifications
__NEOFS__TICK_EPOCH
and__NEOFS__TICK_TOPIC
(#193) ACCESS_DENIED
status code toObject
section (#189)OBJECT_NOT_FOUND
,CONTAINER_NOT_FOUND
andOBJECT_ALREADY_REMOVED
status codes (#190)TOKEN_NOT_FOUND
andTOKEN_EXPIRED
status codes toSession
section (#191)LOCK
value ofobject.Type
enum (#194)Lock
message with payload content ofLOCK
objects (#194)LOCKED
andLOCK_NON_REGULAR_OBJECT
status codes toObject
section (#194)scheme
field of typeSignatureScheme
toSignature
message which determines signature scheme (#55)SignatureRFC6979
message (#203)
Changed
- Type of
signature
field inContainerService
requests toSignatureRFC6979
(#203)
2.11.0 - 2021-12-02 - Sinjido (신지도, 薪智島)
Subnets and status responses.
Added
Status
message structure (#150)status
field ofStatus
type toResponseMetaHeader
message (#150)Subnet
message structure (#180)subnet
field ofSubnet
type toPlacementPolicy
message (#179)
Changed
- Subnet attributes in
NodeInfo
(#181)
2.10.0 - 2021-10-14 - Udo (우도, 牛島)
NNS integration, detailed network info and ACL rules for non-native services.
Added
- ACL header type for services (#173)
- Side chain block duration and NeoFS network config fields in
NetworkInfo
message (#172) - Well-known container attributes for NNS integration (#177)
2.9.1 - 2021-08-26
Changed
- String presentation of object type enum.
2.9.0 - 2021-08-16 - Anmyeondo (안면도, 安眠島)
Support "common prefix" attribute match operation to simplify filesystem directory tree-like structures implementation in NeoFS protocol gateways.
Added
COMMON_PREFIX
object attribute match type.- Storage node's attribute escape symbol description.
2.8.0 - 2021-06-25 - Muuido (무의도, 舞衣島)
Storage nodes with a group of network endpoints.
Changed
address
field ofnetmap.NodeInfo
message becamerepeated
.
2.7.0 - 2021-06-03 - Seongmodo (석모도, 席毛島)
Container service sessions.
Added
Session
ContainerSessionContext
message.ContainerSessionContext
value ofcontext
oneof toSessionToken.Body
message.
Container
Get
session_token
field of typesession.SessionToken
toGetResponse.Body
message.signature
field of typerefs.Signature
toGetResponse.Body
message.
GetExtendedACL
session_token
field of typesession.SessionToken
toGetExtendedACLResponse.Body
message.
2.6.0 - 2021-05-07 - Daecheongdo (대청도, 大靑島)
Added
- Reputation package with reputation service and corresponding type definitions.
2.5.0 - 2021-03-19 - Jebudo (제부도, 濟扶島)
This release contains changes and fixes for NEO3 testnet launch.
Added
- Well-known object attribute
Content-Type
.
Changed
- Namespace for C# has been changed to
Neo.FileStorage.API
.
2.4.0 - 2021-02-26 - Ganghwado (강화도, 江華島)
This release provides new RPC method to fetch network info from storage node. By getting current epoch value, application might set up correct expiration values in the objects.
Added
netmap.NetworkInfo
request for getting node's network view.- Release instructions.
Changed
- Clarified processing of empty search query in
object.Search
RPC. - Specified connection of tombstone expiration value with well-known
__NEOFS__EXPIRATION_EPOCH
object attribute.
2.3.0 - 2021-02-11 - Seonyudo (선유도, 仙遊島)
This release brings support for nodes to exchange information about disk space used by each Container. This information will be used by Inner Ring nodes to calculate basic rewards and payments.
Another significant change is UN/LOCODE support for node's attributes describing
geographical location. From now on, most of the geographical attributes will be
calculated automatically from a single UN-LOCODE
attribute in a deterministic
manner.
Added
- Added
container.AnnounceUsedSpace
request for announcing disk space consumed by container's objects on the node - Added
Continent
well-known node's attribute - Added
SubDivCode
well-known node's attribute - Added
Location
well-known node's attribute - Added
CounrtyCode
well-known node's attribute - Added
STRING_NOT_EQUAL
match type - Added
NOT_PRESENT
match type - Added JSON names for search request filter fields
Changed
Locode
well-known node's attribute renamed toUN-LOCODE
. It will be used as a base for calculating most of the node's geographical attributes.Region
well-known node's attribute renamed toSubDiv
Removed
- Removed
City
well-known node's attribute - Removed
Region
well-known node's attribute
2.2.1 - 2021-01-15
Define "well-known" X-headers
Added
- Description of the format of "well-known" X-headers that affect system behavior
- X-header key to netmap epoch value
- X-header key to netmap lookup depth value
2.2.0 - 2020-12-30 - Yeouido (여의도, 汝矣島)
Storage Groups based Data Audit updates
Added
audit.DataAuditResult
message for recording audit result is added
Changed
object.ShortHeader
now haspayload_hash
andhomomorphic_hash
fields
2.1.1 - 2020-12-17
Minor documentation fixes
Changed
- Clarify JSON encoding for
ObjectID
,ContainerID
andOwnerID
- Clarify object field usage in some requests' eACL filters
2.1.0 - 2020-12-11 - Modo (모도, 茅島)
Object split and deletion improvements, documentation clarifications.
Added
$Object:objectID
added to the list of available ACL and Search filterssplit_id
field added inobject.Object.header
$Object:split.splitID
search filter added- json_name notation added to
acl.EACLTable.Version
field - Adding
tombstone
field with newly created tombstone address field toobject.DeleteResponse.Body
tombstone
package added- Tombstone payload definition added as
tombstone.Tombstone
message SplitInfo
message added toobject
packagesplit_info
field added toobject.GetResponse.Body
split_info
field added toobject.HeadResponse.Body
split_info
field added toobject.GetRangeResponse.Body
raw
flag added inobject.GetRangeRequest.Body
Changed
- Clarified special search index descriptions
- Clarified various types encoding formats descriptions
Removed
$Object:CHILDFREE
filter description removed from well-known list$Object:LEAF
filter description removed from well-known list
2.0.2 - 2020-10-27
More "well-known" application attributes and documentation updates.
Added
- Added "well-known" attributes list for extended ACL and object search filters
- Added
Name
,Timestamp
"well-known" application attributes for container - Added
Name
,FileName
,Timestamp
"well-known" application attributes for object
Changed
BearerToken.owner_id
field description changedSubnet
container attribute now has__NEOFS__
prefix- Search and ACL filters now have
key
andvalue
fields
2.0.1 - 2020-10-19
Documentation updates and JSON field names definition
Added
- Added "well-known" attributes list for
netmap.NodeInfo
- Added "well-known" attributes list for objects
- Added "well-known" attributes list for containers
- JSON field names defined for most of data structures
Changed
- Documentation updated for all packages fixing typos and minor inaccuracies
acl.EACLRecord.Target.key_list
field renamed tokeys
for consistency
Removed
- Human-written documentation will now be only in NeoFS Specification
2.0.0 - 2020-09-07 - Jindo (진도, 珍島)
Major API refactoring and simplification.
Added
neo.fs.v2
prefix added to all package namescontainer.Attributes
field addedrefs.ContainerID
added as a separate typerefs.OwnerID
added as a separate type- Object Search query language defined in
object.SearchRequest.Body.filter
netmap
package addedrefs.Signature
defined as a separate typesession.SessionToken
now has context information for each servicerefs.Version
defined as a separate typerefs.Version
field added to all messages stored in SmartContractsrefs.Checksum
defined as a separate typenetmap.LocalNodeInfo
request added to get actual information from connected peer
Changed
- Extended ACL Table format changed
- Protobuf definitions style changed to follow Google Style Guide
System
andExtended
Object headers are merged into onobject.Header
typeobject.UserHeader
renamed toobject.Header.Attribute
refs.ObjectID
is now a hash of theobject.Header
field, which contains hash of payloadStorageGroup
information moved to Object's payloadnetmap.NodeInfo.options
renamed tonetmap.NodeInfo.attributes
and it uses a separatenetmap.NodeInfo.Attribute
type now.netmap.NodeInfo.Attribute
type now has a list of parents to construct a tree- Session Token renamed to
session.SessionToken
fromsession.Token
- All Requests and Responses now have a common "body-meta-verify" structure
- Meta and Verification headers now follow Matryoshka-style composition
- SessionToken and BearerToken are now part of Meta header
- Object placement policy format is simplified and defined in
netmap
package object.Head()
request now returns either short header or full header with a signature
Removed
- gogoproto is not used anymore
decimal
package merged intoaccounting
packagequery
package merged intoobject
packagestoragegroup
package merged intoobject
packagebootstrap
package merged intonetmap
packagestate
package removedservice
package removed. Merged withsession
packagestate
package removed. It will be implementation specific part of neofs-nodeSpreadMap
functionality removed fromnetmap
package- Unixtime support removed from creation timestamps, leaving only Epoch number
Link
type removed from Object headersRedirect
type support removed from Object headers- Withdrawal and Account Lock functionality removed from
accounting
service - Deposit functionality removed from
accounting
service - Settlement functionality removed from
accounting
service
1.2.0 - 2020-07-08
Added
acl.EACLRecord
,acl.EACLTable
messages for the table of extended ACL rules.
1.1.0 - 2020-06-18
Added
- Extended ACL support in container service.
- Bearer token support in the object service requests.
- Extended headers for the requests in
service.RequestMetaHeader
1.0.0 - 2020-05-16
Bump major release
0.7.5 - 2020-05-15
Added
OwnerKey
bytes field toservice.Token.TokenInfo
message.
0.7.4 - 2020-05-08
Added
service.TokenLifetime
message.
Changed
service.Token
structure.session.Session.Create
RPC signature.session.CreateRequest
structure.session.CreateResponse
structure.
0.7.3 - 2020-04-28
Changed
CreationPoint
disabled stringer method.
0.7.2 - 2020-04-28
Added
Raw
boolean field toservice.RequestMetaHeader
.Token
message field toservice.RequestVerificationHeader
.
Replaced
Token
message fromsession
toservice
package.Signature
message withSign
one inservice
package.
Changed
Token
message structure.
Removed
Raw
field fromobject.GetRequest
andobject.HeadRequest
messages.Token
field fromobject.PutRequest.PutHeader
andobject.DeleteRequest
messages.VerificationHeader
message.
0.7.1 - 2020-04-20
Added
- Method to change current node state. (
state.ChangeState
)
0.7.0 - 2020-04-16
Added
- A numerical field CopiesNumber into
object.PutRequest.PutHeader
message.
0.6.1 - 2020-04-15
Added
- State field into Bootstrap request.
- Request.State enum: Unknown, Online, Offline.
0.6.0 - 2020-04-02
Added
- ACL package with enum of ACL targets.
Changed
- Use
BasicACL
field in container structure andcontainer.Put
request.
0.5.0 - 2020-04-01
- Initial release