Giter Site home page Giter Site logo

run-pkg-tests's People

Contributors

chrisjefferson avatar fingolfin avatar ssiccha avatar wilfwilson avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

run-pkg-tests's Issues

Add input that passes options to GAP

It's merely an idea/suggestion, but I think it would be useful to have the ability to pass options to GAP. In particular, the -A flag would (imho) be useful for testing if a package still works properly when loaded with the OnlyNeeded option. This would require a small change in pkg-ci-scripts/run_tests.sh as well, of course.

This action no longer works with GAP master branch and cygwin

See:

https://github.com/semigroups/Semigroups/actions/runs/7420584539/job/20192252720?pr=969

It looks like the branch cygwin-v2 hasn't be synced with v2, the diff contains (for example):

  ln -f -s $PWD /tmp/gaproot/pkg/

          # start GAP with custom GAP root, to ensure correct package version is loaded
-         GAP="$GAPROOT/gap -l /tmp/gaproot; --quitonbreak"
-
-         if ${{ inputs.only-needed }} = 'true' ; then
-           GAP="$GAP -A"
-         fi
+         GAP="$GAPROOT/bin/gap.sh -l /tmp/gaproot; --quitonbreak"

Document more precisely what `NO_COVERAGE` does

Currently:

NO_COVERAGE: Set to a non-empty string to suppress gathering coverage.

For people who already know what this means, I think this is probably clear enough. But for people who don't... such as me, I think this could be clearer.

Does it stop the profiling package from collecting coverage data on the GAP side of the package? Does it also stop the package's kernel module from having code coverage collected? If this variable is set, does gap-actions/process-coverage stop working, or at least redundant?

This issue was inspired by my confusion in gap-packages/profiling#94

Split coverage uploading (and gathering?) into separate action

People may want to use additional or alternative coverage tracking services, like coveralls, or simply not track coverage at all. So I think that uploading (and possibly gathering) of coverage should be in separate actions. Also, codecov has its own GitHub action for uploading coverage data, which one might want to use?

Of course we can't just remove them here, packages will need to adjust their CI.yml files -- but that's why actions can be versioned. So in v2 (or whatever) of this action, these steps can be removed.

Recursive folder structure may "spam" codecov action

In the action.yml, the following recursive folder structure is created:

mkdir -p gaproot/pkg/
ln -f -s $PWD gaproot/pkg/

However, v2 of codecov-action also looks for coverage reports in subfolders, causing it to find a lot of them (although it seems to automatically stop at 41). The most recent example in gap-packages at the time of writing:

[2022-03-18T13:22:23.874Z] ['info'] => Found 41 possible coverage files:
  gap-coverage.json
  gaproot/pkg/ClassicalMaximals/gap-coverage.json
  gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gap-coverage.json
  gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gap-coverage.json
[...]
  gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gap-coverage.json
[2022-03-18T13:22:23.875Z] ['info'] Processing /home/runner/work/ClassicalMaximals/ClassicalMaximals/gap-coverage.json...
[2022-03-18T13:22:23.880Z] ['info'] Processing /home/runner/work/ClassicalMaximals/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gap-coverage.json...
[2022-03-18T13:22:23.880Z] ['info'] Processing /home/runner/work/ClassicalMaximals/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gap-coverage.json...
[2022-03-18T13:22:23.881Z] ['info'] Processing /home/runner/work/ClassicalMaximals/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gap-coverage.json...
[...]
[2022-03-18T13:22:23.898Z] ['info'] Processing /home/runner/work/ClassicalMaximals/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gaproot/pkg/ClassicalMaximals/gap-coverage.json...

It doesn't seem to cause any actual problems, and the coverage report works fine as well, but (to me, at least) it doesn't seem like this is intended behaviour.

This can probably be "fixed" using the "files" or "directory" flag for codecov-action, but that would imply updating every package's CI.yml, and that's treating the symptoms rather than the cause.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.