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

GAP should not require PrimgGrp/SmallGrp/TransGrp packages #2434

Open
olexandr-konovalov opened this issue May 2, 2018 · 5 comments
Open
Labels
kind: discussion discussions, questions, requests for comments, and so on kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements topic: packages issues or PRs related to package handling, or specific to a package (for packages w/o issue tracker)

Comments

@olexandr-konovalov
Copy link
Member

The libraries of small, primitive and transitive groups which previously were an integral part of ⪆ were split into three separate packages:

For backwards compatibility, these are required packages in GAP 4.9 (i.e., GAP will not start without them). We plan to change this for GAP 4.10, once all packages which currently implicitly rely on these new packages had time to add explicit dependencies on them.

This issue under the milestone 4.10 is created to track this:

  • list all packages that need to be updated
  • notify package authors
  • track progress
@olexandr-konovalov olexandr-konovalov added the topic: packages issues or PRs related to package handling, or specific to a package (for packages w/o issue tracker) label May 2, 2018
@olexandr-konovalov olexandr-konovalov added this to the GAP 4.10.0 milestone May 2, 2018
@fingolfin
Copy link
Member

Started work on this via #2589, but I am pretty sure tons of packages need changes...

E.g. lots of packages use smallgrp in their test files. This can be resolved by adding an explicit LoadPackage("smallgrp") to their tst/testall.g file.

Just to get a first rough approximation of which packages might be affected, I did some very simple grepping to get a first approximation of the issue (note that will be both false positives and false negatives with this method):

Packages which seem to use TransitiveGroup:

  • ctbllib
  • Hap1.12
  • loops
  • radiroot
  • SCSCP
  • simpcomp
  • transgrp -- no issue

Packages which seem to use PrimitiveGroup:

  • Browse
  • ctbllib
  • digraphs
  • grape
  • primgrp -- no issue
  • recog
  • SCSCP
  • simpcomp

Packages which seem to use SmallGroup:

  • anupq
  • autpgrp
  • crime
  • crisp
  • ctbllib
  • cubefree
  • format
  • groupoids
  • grpconst
  • Hap1.12
  • help
  • irredsol
  • laguna
  • loops
  • modisom
  • permut
  • polenta
  • polycyclic
  • rcwa
  • rds
  • SCSCP
  • semigroups
  • sglppow
  • simpcomp
  • SmallGrp -- no issue
  • smallsemi
  • unitlib
  • utils
  • wedderga
  • xgap
  • XMod
  • XModAlg

We could now go through these packages, and update the above check lists once we know the package either declares suitable dependencies, or has been fixed, or was never really affected in the first place (ideally leave a comment stating which it was)

All in all, this is a big bunch of packages, so we'd need a good plan on how to approach this if we want to resolve it in time for GAP 4.10... May need to punt this to a later release otherwise.

@fingolfin fingolfin modified the milestones: GAP 4.10.0, GAP 4.11 Sep 19, 2018
@fingolfin fingolfin changed the title GAP 4.10 should not require PrimgGrp/SmallGrp/TransGrp packages GAP 4.11 should not require PrimgGrp/SmallGrp/TransGrp packages Sep 19, 2018
@fingolfin
Copy link
Member

This won't be in 4.10; not even sure that it realistically can be in 4.11, but I bumped it to that milestone anyway.

@fingolfin fingolfin changed the title GAP 4.11 should not require PrimgGrp/SmallGrp/TransGrp packages GAP should not require PrimgGrp/SmallGrp/TransGrp packages Sep 19, 2018
@fingolfin fingolfin added kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements kind: discussion discussions, questions, requests for comments, and so on labels Mar 21, 2019
@fingolfin fingolfin removed this from the GAP 4.11 milestone Mar 21, 2019
@fingolfin
Copy link
Member

Removed this from the 4.11 milestone. I don't think we can do this in time, and in fact, I am not sure it'll ever happen, it just isn't worth the effort compared to many other more pressing issues.

That said, if anybody wants to help with this: pick one (or multiple!) of the packages on the list above; check whether it really needs any of the functionality of PrimgGrp/SmallGrp/TransGrp ; if no, state so here (and check its checkbox); if yes, provide a pull request to that package which adds the dependency to that package's PackageInfo.g, then add a comment here with a link to that PR. Rince and repeat for more packages :-)

@ruthhoffmann ruthhoffmann added the gapdays2020-spring Issues and PRs that arose in relation to https://www.gapdays.de/gapdays2020-spring label Nov 6, 2019
@fingolfin fingolfin removed the gapdays2020-spring Issues and PRs that arose in relation to https://www.gapdays.de/gapdays2020-spring label Mar 30, 2020
@fingolfin
Copy link
Member

fingolfin commented May 18, 2021

I should also point out that the GAP library itself uses these packages, e.g.

  • primgrp: used in lib/gpprmsya.gi to compute normalizers, maximal subgroups, ... in alternating&symmetric groups
  • smallgrp: lots of code in the library uses IdGroup
  • transgrp: e.g. lib/galois.gi uses TransitiveGroup

@olexandr-konovalov
Copy link
Member Author

Erm... should this ever happen at all?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind: discussion discussions, questions, requests for comments, and so on kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements topic: packages issues or PRs related to package handling, or specific to a package (for packages w/o issue tracker)
Projects
None yet
Development

No branches or pull requests

3 participants