Skip to content
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

Exclude with groups cannot work with groups containing commas #10983

Closed
PVince81 opened this issue Sep 10, 2014 · 16 comments · Fixed by #19510
Closed

Exclude with groups cannot work with groups containing commas #10983

PVince81 opened this issue Sep 10, 2014 · 16 comments · Fixed by #19510

Comments

@PVince81
Copy link
Contributor

Steps to reproduce:

  1. Create a group called "comma,group"
  2. Exclude that group from sharing

Expected result

Group properly excluded

Actual result

(not tested but guessing) group name is split into two groups "comma" and "group", so exclusion cannot work.

Note that other places like the "enable app for groups" use JSON to store the groups array.

The "exclude sharing for groups" feature need to be fixed to also use JSON.

CC @schiesbn

@PVince81 PVince81 added this to the 2014-sprint-03-current milestone Sep 10, 2014
@PVince81
Copy link
Contributor Author

@MTRichards might not sound that severe but this is blocking #10968 (comment) which fixes three issues that are in the sprint (about loading the group lists with ajax)
So, adding to current sprint.

@PVince81
Copy link
Contributor Author

This is likely to happen for the "external storage" groups config as well.

@PVince81
Copy link
Contributor Author

I decided to go with another approach on that PR, so this issue here is no longer blocking.
Removing milestone and tagging as "triage" for a decision.

The TODOs for this ticket is, whenever a group name has a comma in it:

  1. Make it work in the "exclude groups from sharing" by switching to JSON
  2. Make it work in the external storage app as well, possibly requires moving to JSON as well

The trouble is that we'd need to change the format how groups are internally stored, so we also need compatibility with the old format.

I'm not sure this is adequate for OC 7 and also not sure how likely it is that someone uses a comma in their group names...

@PVince81 PVince81 removed this from the 2014-sprint-03-current milestone Sep 10, 2014
@PVince81 PVince81 changed the title Exclude with groups cannot work with groups containing commans Exclude with groups cannot work with groups containing commas Sep 10, 2014
@MTRichards
Copy link
Contributor

Ok. On your recommendation (and agreeing), updated the tags.

@MTRichards MTRichards added this to the 2014-sprint-03-current milestone Sep 10, 2014
@PVince81
Copy link
Contributor Author

So does it mean we still want this for OC 7 ?

@PVince81
Copy link
Contributor Author

I mean... soon

@MTRichards
Copy link
Contributor

@MTRichards might not sound that severe but this is blocking #10968 (comment) which fixes three issues that are in the sprint (about loading the group lists with ajax)
So, adding to current sprint.

Sounds like you solved the short term problem, and this is a longer term problem.

@PVince81
Copy link
Contributor Author

Okay. Let's see how the fix looks like then we can decide whether it's risky or not to backport to OC 7 afterwards.

@MTRichards
Copy link
Contributor

I think this has real bad consequences internally - so I would ask @karlitschek for an opinion on the potential impact. Seems to me changing all this is a real potential problem, with room to break things badly. Ideally, not doing this close to launch is a good idea. BUT, this means this bug remains - where commas are creating separate groups.

Okay. Let's see how the fix looks like then we can decide whether it's risky or not to backport to OC 7 afterwards.

Ok, and worste case a release note on group names wihtout commas is ok for the short term. Adding the release note tag in case we get there.

@PVince81
Copy link
Contributor Author

Makes sense. Thanks.

@craigpg craigpg modified the milestones: 2014-sprint-04-current, 2014-sprint-03 Sep 15, 2014
@karlitschek
Copy link
Contributor

@PVince81 So do you think it is possible to fix this without this big code change?

@craigpg craigpg removed the triage label Sep 17, 2014
@PVince81
Copy link
Contributor Author

Switching to JSON is a big change with a bigger impact.
The alternative is to switch to yet another format using pipes | but note that LDAP group names can probably also contain there.
And if we change formats, regardless which one we use, we need to make the code backwards compatible.

I didn't have time to look into how many places in the code needed changing.

@craigpg craigpg modified the milestones: 2014-sprint-05-current, 2014-sprint-04 Sep 29, 2014
@craigpg craigpg modified the milestones: 2014-sprint-06-current, 2014-sprint-05 Oct 12, 2014
@craigpg craigpg modified the milestones: 2014-sprint-07-current, 2014-sprint-06 Oct 27, 2014
@craigpg craigpg modified the milestones: 2014-sprint-08-current, 2014-sprint-07 Nov 10, 2014
@DeepDiver1975
Copy link
Member

@PVince81 OC8.1?

@PVince81
Copy link
Contributor Author

PVince81 commented Jan 7, 2015

Yes, it's not a simple change

@PVince81 PVince81 modified the milestones: 8.1-next, 8.0-current Jan 7, 2015
@carlaschroder
Copy link

added to 8.0 release note

@DeepDiver1975 DeepDiver1975 modified the milestones: 8.1-current, 8.2-next Apr 4, 2015
@PVince81
Copy link
Contributor Author

Now thinking of it, we might not need to keep the code backward compatible because we can auto-fix the configuration in a repair step to make sure it's using the new format.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants