-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
eacl: Improvements and test coverage #605
Commits on Aug 9, 2024
-
eacl: Rename
*Unknown
enum constants to*Unspecified
onesTo get closer to the protocol. `Unknown` constants are deprecated. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 97ef222 - Browse repository at this point
Copy the full SHA 97ef222View commit details -
eacl: Improve docs of enum types
Also drop mention of to-be-deprecated elements. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 3d98dce - Browse repository at this point
Copy the full SHA 3d98dceView commit details -
eacl: Rework consistent string mapping of enumerations
Enum types provide `EncodeToString`/`DecodeString` interface representing stable stringers. Since the string representation is not declared by the NeoFS protocol, applications are allowed to use this functionality only for internal conversions (e.g. parsing command line input). In addition, enumeration types are simple integers. Thus, implementing this functionality as type methods is quite redundant. At the same time, exporting consistent in-box mapping can simplify development of some apps. `XToString` / `XFromString` function are provided now. Being global functions they emphasize that if the app is satisfied with the lib strings - it can take and use them, otherwise reimplement them by analogy. Methods are deprecated for the sake of new functions. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
2Configuration menu - View commit details
-
Copy full SHA for 61ccde9 - Browse repository at this point
Copy the full SHA 61ccde9View commit details -
eacl: Do not lose enum value during conversion
Continues 71381ff. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for e77ae4b - Browse repository at this point
Copy the full SHA e77ae4bView commit details -
eacl: Deprecate
EqualTables
functionThe function is unused. For example, `waiter.ContainerSetEACLWaiter` compares binary representations which is correct. Overall, NeoFS protocol does not declare comparison operation b/w two eACLs. In particular, the eACL does not change when targets are shuffled. Thus, to avoid introducing a synthetic property, the func will be removed soon. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for cff0c92 - Browse repository at this point
Copy the full SHA cff0c92View commit details -
eacl: Deprecate protocol conversion for all types except
Table
All other types are components and are not transported autonomously outside the eACL. Thus, for the sake of minimal support, these functions will be removed soon. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for b82aa5a - Browse repository at this point
Copy the full SHA b82aa5aView commit details -
eacl: Provide
Filter
type constructorsRefs #483. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 34d6c32 - Browse repository at this point
Copy the full SHA 34d6c32View commit details -
eacl: Improve docs of
Filter
typedef and methodsSigned-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for dd0d3dc - Browse repository at this point
Copy the full SHA dd0d3dcView commit details -
eacl: Declare object filter constants without package import
This allows to be less tied to packages that are about to be abolished. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 07263ab - Browse repository at this point
Copy the full SHA 07263abView commit details -
eacl: Provide
Target
type constructorsThis also emphasizes that role and public keys are mutually exclusive. Additional helpers for ECDSA encoding are provided too. Refs #483. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for ae556cd - Browse repository at this point
Copy the full SHA ae556cdView commit details -
eacl: Improve
Target
typedef docsSigned-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for f47b7fe - Browse repository at this point
Copy the full SHA f47b7feView commit details -
eacl: Provide setter for
Record
filtersAnd improve docs a bit. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 8316731 - Browse repository at this point
Copy the full SHA 8316731View commit details -
eacl: Provide
Record
type constructorAdditionally, provide helpers for object filtering: with them, creating a rule will be more efficient in terms of reallocations. Due to this, all `Add*Filter*` methods are marked deprecated. Refs #483. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 758b5dd - Browse repository at this point
Copy the full SHA 758b5ddView commit details -
eacl: Improve docs of
Record
typedef and methodsSigned-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for b18b7f6 - Browse repository at this point
Copy the full SHA b18b7f6View commit details -
eacl: Provide setter of
Table
records`AddRecord` was inefficient in terms of allocations, so it is deprecated now. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 104b479 - Browse repository at this point
Copy the full SHA 104b479View commit details -
eacl: Provide
Table
type constructorsRefs #483. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 815b7d4 - Browse repository at this point
Copy the full SHA 815b7d4View commit details -
eacl/test: Add more randomizers and randomness to existing ones
Also test the functions. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for e490cd9 - Browse repository at this point
Copy the full SHA e490cd9View commit details -
eacl: Split unit tests for exported and unexported functionality
Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 6a2d9ea - Browse repository at this point
Copy the full SHA 6a2d9eaView commit details -
eacl: Do not declare stateless methods on a pointer receiver
This allows to use instance by value as interface implementation. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 8e8ebc7 - Browse repository at this point
Copy the full SHA 8e8ebc7View commit details -
eacl: Provide setter of raw binary-encoded subjects
For symmetry with `RawSubjects` and testing. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 3e90f1e - Browse repository at this point
Copy the full SHA 3e90f1eView commit details -
eacl: Improve testing and increase coverage
Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 06cf060 - Browse repository at this point
Copy the full SHA 06cf060View commit details -
eacl: Skip currently failing unit tests
Caused by #606 which should make them PASS. Signed-off-by: Leonard Lyubich <leonard@morphbits.io>
Configuration menu - View commit details
-
Copy full SHA for 402b83c - Browse repository at this point
Copy the full SHA 402b83cView commit details