Closed (fixed)
Project:
Group
Version:
2.0.x-dev
Component:
Code
Priority:
Normal
Category:
Plan
Assigned:
Unassigned
Reporter:
Created:
16 Mar 2021 at 14:17 UTC
Updated:
1 Jun 2022 at 12:14 UTC
Jump to comment: Most recent
Will add more as I come up with them.
Feel free to suggest more in the comments, but please refrain from adding to the issue summary.
Comments
Comment #2
kristiaanvandeneyndeJust realized we can't sync Anonymous, Outsider and Member. But we can still write a more robust synchronizer for the other roles.
Comment #3
kristiaanvandeneyndeComment #4
chrissnyderHow about revisions on group entities (#2829966: Support for Revisions on groups)? This would allow for content moderation workflows, etc.
Comment #5
ipa 🍺 commented+1 for #4: Support for revisions
Comment #6
jnicola commentedHey Kristian, could you elaborate on "Find someone nice enough to close all D7 issues with a template message"
We've got an intern. Perfect task for her and a great way for her to get more familiarity with Drupal.
Comment #7
kristiaanvandeneyndeRe #6 I stopped supporting the D7 version when I released the full D8 version because:
So by marking the D7 version as unsupported, it vanished from the main page. Usage has since been steadily declining below 1k reported installs (down to 800 now) whereas the D8 version has 10k reported installs.
At this point, I would go over all D7 issues (about 160 of them) and close them with a Closed (outdated) message along the lines of:
"We thank everyone for their collaboration on this issue, but as the D7 version is no longer supported, we will now close all D7 issues to keep the issue queue a bit tidier. This information won't go anywhere, it just won't show up on the list of open issues anymore."
Comment #8
soul88Since 2.x branch is tagged (yay!) I think it's more reasonable for this issue to live under the 2.x version.
Comment #9
kristiaanvandeneyndeGood call :)
Comment #10
soul88@kristiaanvandeneynde, is there a chance you have some timeline you could share for the 2.x version of the module. I start developing a new site that will take several months to build, so it would be great to know if it's worth trying 2.x now or wait until it's stable.
P.S. I also closed most of the 7.x issues. I only didn't touch those in the RTBC/Needs review state. There are 14 of them left. Please tale a look at them when you have a moment.
Comment #11
kristiaanvandeneynde@Soul88 I noticed, thanks a lot for that! The timeline for 2.0.x is "not anytime soon". It's something I want to kickstart over the summer and then slowly work on in parallel to 8x.-1.x until it's ready. Maybe Q4 2021, but your guess is as good as mine.
Comment #12
soul88Got it, thanks!
Comment #13
alphawebgroup@kristiaanvandeneynde
Would you think over the idea to decouple some "Group" parts to separate modules like "Group Membership", "Group Roles" and/or "Group Permissions " to give developers/users a chance to build more flexible implementations using the Group module?
There are a lot of cases where people can use "Group" functionalities just for grouping/segmenting the content or any other entities without the membership workflow/functionality...
Yes, I understand that sounds like we can suggest using pure "Taxonomy" with some different tweaks for implementing that case...
Also, if people would like to implement that as a "GroupContent" way like we currently have in "Group" or like "GroupRelation" that is proposed in the roadmap, then we could have proposed to use the "Relation" module for that... but "Relation" is obsolete.
Comment #14
kristiaanvandeneyndeThe Group module is really an access module at its core. Otherwise it would just become a glorified taxonomy as you mention :)
We already offer a lot of flexibility through the API, one example being the membership loader. Someone showed me a use case where they swapped that out with a service that talks to LDAP directly to retrieve memberships from an external service rather than Drupal entities.
By the way, GroupRelation is vastly different from Relation, they couldn't be more different.
Comment #15
alphawebgroup@kristiaanvandeneynde
ok, thank you for your answer
Comment #16
kristiaanvandeneyndeMost is done, some got moved. Looking into a few final candidates for a 2.0.0 version.
Comment #17
kristiaanvandeneyndeAdded the Group 2.0.0 target tag for adding small QOL issues that won't take longer than an hour to commit.
Comment #18
dalra commented@kristiaanvandeneynde
Will it be included in Group 2.0.0? Will it make it possible to add Commerce Products to groups?
Comment #19
kristiaanvandeneyndeRe #18 Probably 2.1.0, it shouldn't break anything if added later on and that way 2.0.0 can focus on all the new APIs. I don't want to delay it forever, but with the new code in 2.0.x it's definitely possible.
Comment #20
aspilicious commentedWe are starting a new big project.
Should we use the 1.x or 2.x branch? Can we upgrade later on if needed?
Comment #21
kristiaanvandeneyndeUse 8.x-1.4, 2.0.0 will come with an upgrade path. The public API things that will drastically change are the plugins, group roles and permission calculators, internally the access queries will be significantly optimized.
So if you have any custom plugins, you will need to make a few alterations, but they should be easy to pull off. If you have any code that uses group roles, you might need to make a few very small changes and finally if you have custom calculators, they can be simplified after the upgrade.
Finally, I've started with renaming things that do not require any database maintenance. So plugins have been renamed, but GroupContent(Type) entities have not. I am keeping the CRs up to date here: https://www.drupal.org/list-changes/group
Comment #22
mxr576Due to interface changes in Group owner membership roles according to site-wide roles, I would like ask if @kristiaanvandeneynde is open for that feature, should it get more focus to get it done before 2.0.0 or that feature should go to a contrib module instead?
Comment #23
kristiaanvandeneynde@mxr576 Already part of #3204083: Rework group roles into a scoped system and adjust permission calculation which I am in the process of fixing the last few test fails for.
Comment #24
jnicola commentedReviewing 2.0.x for the next website we're going to be developing at OHSU. Any updates on expected time and any other changes?
The new site should be notably less feature intensive than the former site so I'm envisioning we could roll with near out of the box 2.0.x functionality you have already in the dev branch!
By the way I like the new outsider roles permission approach. Very easy and intuitive in the UI!
Comment #25
jnicola commentedOh and if possible any information on what sort of plugins and what not will need to be changed would be helpful. Even a short "1.x to 2.x for devlopers" page would be helpful.
Comment #26
kristiaanvandeneyndeI should have a solid 2.0.0 beta out during the summer. Just faced a minor setback with a developer leaving, but the major work has already been done. Updating the plugins is definitely something that needs to be documented, but it should be pretty straightforward. The change records can already help a little, but I can try to do a short video on it.
Comment #27
geek-merlinHey Kristian, boldly chiming in with two things for the general plan here. Very interested how you are resonating with that.
Comment #28
kristiaanvandeneyndeThe entity type as a group thing was the whole reason I created Group, because I did not like that part about OG at all. So I don't see me going back to that architecture any time soon.
The second I'd have to research more as we need a fieldable entity for the relation. I'm slowly making Group slimmer by putting more into separate modules. 2.0.x will release with a new dependency on a module I am yet to write that takes care of the permission gathering and calculating.
So for a later (perhaps major) version, we could look into writing a more agnostic module that takes care of the fieldable relation. I am afraid, though, that Group's requirements for said relation are too specific to be able to fit in a generic module, but who knows what might come up when we actually investigate this further.
Having said all of the above, currently the remaining items for 2.0.x are cleaning up the roles rework and separating out the module I just talked about, then it's done.
Comment #29
geek-merlinThx! Its totally clear to me that both approaches are not short-term, so this is only about "general plans".
So i will add more information in both other issues, and maybe i can help pursuing.
(But tbh atm i don't have any paid capacity, it's pure love for the thing and can not happen with the power i'd like to.)
Overall, thanks for pushing all this forware, i appreciate it a lot.
Comment #30
kristiaanvandeneyndeI'm in the same boat, lots of ideas, not as much time to complete them in. But thanks for your kind words!
Comment #31
jstollerWill Group 2.0 enable overriding permissions on a per-group basis, or will is still just be at the group type level?
Comment #32
kristiaanvandeneyndeYou already can override permissions on a per group basis using custom permission calculators. This will not change in 2.0.0 but should become way more performant due to the new scopes and query alters.
Comment #33
jstoller@kristiaanvandeneynde I guess my real question is, will the Group module UI support group-level permissions out of the box? Currently I'm forced to use the Group Permissions module, which is a bit clunky and still just an alpha release.
Comment #34
kristiaanvandeneyndeOh, that's a clear no for the time being
Comment #35
kristiaanvandeneyndehttps://www.drupal.org/project/group/releases/2.0.0-alpha1