36.0.0rc5
Release Candidate
This is a release candidate! Only to be used in testing environments!
Important changes
- For policy package operators: Rucio 36 includes a breaking change in the way the supported Rucio version is configured. With this change, the version with PEP-compliant version specifier; you can find the specification for the version specifiers here: https://peps.python.org/pep-0440/#version-specifiers In order to migrate to the new format, you simply need to add a version specifier comparison operator to the
SUPPORTED_VERSION
line in your policy package. For example, if you only want to support the entire Rucio36
release line (so 36.1.0, 36.2.0...) without yet supporting Rucio37
, you can use the compatible release operator~=
, as seen below. Before Rucio 36:SUPPORTED_VERSION = '36'
From Rucio 36 onwards:SUPPORTED_VERSION = '~=36.0'
General
Features
- Policies: Prepare replacement of current policy import with policy packages #4798
- Policies: Policy package version support: specifying each supported major version (current way of doing things) vs specifying a minimum valid version (proposal) #7082
- Testing: Move ATLAS VO test to use policy package #6962
Enhancements
- Policies: Allow permissions to optionally return a message #6580
- Policies: "diff"-based policies, instead of fully replicating the base policy package code #6842
- Policies: Refactor all ATLAS-related code into ATLAS policy package #7027
- Policies: Policy package version check: instead of parsing string manually, use
packaging.version.Version
#7083 - Policies: Extraction of Belle II logic to policy package #7157
- Protocols: Use
abstractmethod
decorator in place ofNotImplementedError
in instances where we're usingNotImplementedError
to mark an abstract method #7031 - Release management: Unneeded dev dependency
virtualenv
#7140 - Testing: Introduce test coverage in PR reviews (and possibly in CI) #6545
- Testing: Better define unit tests and integ tests #7007
- Testing: Improve test coverage #7008
- Testing: Remove unnecessary
test_download_states
#7070
Bugs
- Authentication & Authorisation: Permissions: Unify the permissions for
add_did
andadd_dids
#6973 - Deletion: Reaper fails to delete files in S3 based RSEs #6548
- Documentation: Importing a schema from a policy package with a
lfn2pfn
algorithm results in circular imports due to module-level logic #7165 - Fix
TripleDES
issue that's blockingcryptography
dependency update #7075 - Protocols: RSEProtocol crashes if
protocol_attr
doesn't haveauth_token
#7023 - REST & API: Align recursive Parameter Handling and Documentation in Scope API Endpoint #7175
- Release management: Version block is outdated for minimum Python version #7182
- Testing: VO tests: Belle II test failing due to using deprecated policy package version syntax for
SUPPORTED_VERSION
#7186 - Transfers: Automatix crash if one destination RSE is not available #6925