-
Notifications
You must be signed in to change notification settings - Fork 160
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
Fix bug in IrrConlon leading to unexpected errors #3763
Conversation
Out of interest, what is the change of behaviour here? Perhaps put a little more in the commit message. I'm assuming a bug was fixed, which is good :) |
The bug was that certain calls to That's pretty much the title of the PR, the only thing missing is the concrete example. Do you mean you'd like me to add something like this to the body of the message:
|
I didn't understand why SubgroupNC broke things, when changing to SetParent did, as I thought that setting parent was basically all SubgroupNC did. |
Ahh! Well, |
Note |
Ah, now I understand, this isn't some kind of subtle maths bug, just giving a function the completely wrong things :) |
Good :-). I'll update the commit message nevertheless. |
I've approved. You could if you want add to the commit message something like |
08273c6
to
629e4c8
Compare
Updated. BTW, in practice the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this fix.
(It is not the first instance of this problem.)
Concerning the changes, I would perhaps suppress showing the test output; changes in GAP's output format (which happened in the past) will make updates necessary, and the output itself is unimportant here.
As you wrote, StabilizerOfExternalSet
sets already a parent; I would omit the SetParent
call then, note that it could be misleading if StabilizerOfExternalSet
would set a different parent object.
@ThomasBreuer both fine by me; perhaps I should replace the SetParent call by an assertion which verifies the parent... And I'll grep through the code for calls to |
629e4c8
to
46f7cbc
Compare
I saw no obvious similar issues in |
SubgroupNC expects a parent plus a list of generators of the subgroup. However, the old code actually passed a subgroup as "list of generators". Which is bad by itself, but it also means that later `Length( gens )` failed. This is resolved by the new code, which also ensures that known attributes of the subgroups, such as its size, are retained. This used to work in GAP 4.9, but in GAP 4.10 we changed the code which creates subgroups, which introduced this regression in behavior. Reported by Benjamin Sambale.
46f7cbc
to
783e572
Compare
@fingolfin Thanks for the changes. The current documentation of
A better description would be something like the following.
Should I create a new pull request for such a change of the documentation? |
@ThomasBreuer that sounds useful. Of course we could also decide that we want to allow collections, and change the code to allow for that (again). But then in |
Backported to stable-4.11 in commit 4de3c19 |
Reported by Benjamin Sambale
Please use the following template to submit a pull request, filling
in at least the "Text for release notes" and/or "Further details".
Thank You!
Description
Text for release notes
If this pull request should be mentioned in the release notes,
please provide a short description matching the style of the GAP
Changes manual.
Further details
If necessary, please provide further details here.
Checklist for pull request reviewers
If your code contains kernel C code, run
clang-format
on it; thesimplest way is to use
git clang-format
, e.g. like this (don'tforget to commit the resulting changes):
usage of relevant labels
release notes: not needed
orrelease notes: to be added
bug
orenhancement
ornew feature
stable-4.X
add thebackport-to-4.X
labelbuild system
,documentation
,kernel
,library
,tests
runnable tests
lines changed in commits are sufficiently covered by the tests
adequate pull request title
well formulated text for release notes
relevant documentation updates
sensible comments in the code