Install
Works with Drupal: 8.xUsing Composer to manage Drupal site dependencies
Alternative installation files
Release notes
Change records for this release: See this list.
Of special note
- Cache contexts have received an overhaul, please check your code for deprecated ones. For security reasons, group_membership.roles.permissions has been removed!
- Group permissions are now built, cached and can be altered during build time. This should hopefully increase site performance a lot.
- Group lists now use query access! This means you will only see those groups you have access to. Grouped entities and GroupContent lists will be supported in a future release. This requires Entity API until the query access layer makes it into core!
- Minimum core version bumped to 8.6.x
- New co-maintainer: Ronald te Brake
Going forward
This release is a proof of concept for a full release. I need to keep pushing to get the new VariationCache system into core (#2551419: Abstract RenderCache into a separate service that is capable of cache redirects in a non-render array-specific way), add entity query access for grouped entities and GroupContent and review + apply the vast amount of feature requests and bug reports before tagging 8.1.0.
I'm hoping to get a release out the door soon. I've been sidetracked by some core issues that were blocking Group for a long time. This release even includes a copy of the VariationCache system because I could simply no longer let it block further Group releases. It's been over a year since the last release :/
Full changelog
- #3041087: Update the new permission layer to be alterable
- Fixed GroupOperationsBlock was not properly using the group cache contexts.
- #3040578: Implement CR 2973262
- #2826874: Replacing t(' with $this->t (Group module [d8])
- #3040596: Implement CR 3036689
- #3035067: Add query access to Group entity lists
- #3026897: [META] Centralize all permission calculations/operations
- #3030168: Sort group role permissions for config import/export
- #3028346: Update the GroupPermissionsHashGenerator to use the calculated permissions
- #3028352: Update the GroupPermissionsCacheContext to use the calculated permissions
- #3028343: Create a central service that checks someone's group permissions
- #3028340: Create a central service that calculates someone's group permissions
- #3028337: Introduce a value object to store calculated permissions with cacheable metadata
- #2683039: Change 'Add' and 'Create' labels and paths to make be more intuitive & follow Drupal patterns
- #2937037: Parent group(gid) should be required
- #3013648: Add more information to the composer.json file
- #3013644: Specify a minimum core version
- #2984579: Apply new {project}:{module} format for dependencies in info.yml
- #3008372: Add simple table sorting to group overview
- #2867858: Disable 'Use 2-step wizard' by default
- #2886266: Test that config passes schema inspection
- #2906082: Figure out a way to cache lists using group permissions
- #3006258: GroupContentTokenReplaceTest failing all of the sudden
- #3006243: GroupTokenReplaceTest failing all of the sudden
- #2774649: Allow to change the group title label per group type
- #2992499: Can't translate "group content type"
- #2995059: Reliably (re)create important group roles after config import
- #2995058: Separate concerns for the group role synchronizer and storage
- #2995056: Inject @string_translation in GroupRouteContext
- #2995063: Fix import tests failing on 8.6.0 and up
- #2716051: Add operations for group content tabs to groups in the groups listing
- #2943564: Separate group overview from 'administer group' permission