Skip to content

Make smallgrp an explicit dependency - #52

Open
fingolfin wants to merge 1 commit into
masterfrom
mh/no-smallgrp
Open

Make smallgrp an explicit dependency#52
fingolfin wants to merge 1 commit into
masterfrom
mh/no-smallgrp

Conversation

@fingolfin

Copy link
Copy Markdown
Member

LocalNR uses SmallGroup and IdGroup in lib/lib_local.gi (lines 21, 71, 177, 219, 248) to construct and to identify the additive groups of the local near-rings in its library, but the SmallGrp package is not declared as a dependency. Running the test suite in a GAP where SmallGrp is not loaded therefore fails:

Error, the Small Groups library is required but not installed

This adds ["smallgrp", ">= 1.3"] to NeededOtherPackages.

Note that the failure is currently masked as soon as SONATA declares smallgrp as a needed package (see https://github.com/gap-packages/sonata), since LocalNR needs SONATA. Relying on a transitive dependency is fragile though, and LocalNR calls these functions in its own code, so it should declare the dependency itself.

Testing

  • gap --bare -c 'LoadPackage("GAPDoc");' + LoadPackage("localnr" : OnlyNeeded) + TestPackage("localnr") — 0 failures in 2 files.
  • Normal run with full package autoload — 0 failures in 2 files.

The version in PackageInfo.g is untouched, so this needs a version bump and release on your side.

Context

This comes out of gap-system/gap#2434, which aims to make GAP and its packages work when PrimGrp/SmallGrp/TransGrp are not installed. LocalNR showed up in a PackageDistro CI experiment running package test suites under gap --bare.

🤖 Generated with Claude Code

LocalNR uses SmallGroup and IdGroup in lib/lib_local.gi to construct and
to identify the additive groups of the local near-rings in its library,
so it needs the SmallGrp package. Without it, loading LocalNR in a GAP
started with `--bare` and running its tests failed with

    Error, the Small Groups library is required but not installed

At the moment this happens to be masked once SONATA declares smallgrp as
a needed package, but relying on that is fragile, and LocalNR uses these
functions in its own code.

See gap-system/gap#2434

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@codecov

codecov Bot commented Jul 29, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.33%. Comparing base (4b8dad2) to head (fc61573).

Additional details and impacted files
@@           Coverage Diff           @@
##           master      #52   +/-   ##
=======================================
  Coverage   96.33%   96.33%           
=======================================
  Files           4        4           
  Lines         464      464           
=======================================
  Hits          447      447           
  Misses         17       17           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@fingolfin

Copy link
Copy Markdown
Member Author

@IrynaRaievska @raemarina @olexandr-konovalov hope this can be put into a release soon. happy to do it for you as well, but did not want to do this "behind your backs" :-)

@olexandr-konovalov olexandr-konovalov left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fingolfin thanks, sure thing! Will wait till @raemarina & @IrynaRaievska confirm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants