Skip to content

Tags: oscar-system/GAP.jl

Tags

v0.13.0

Toggle v0.13.0's commit message
[Diff since v0.12.3](v0.12.3...v0.13.0)

- **Breaking:** Update to GAP 4.14.0
- **Breaking:** Require `gap_to_julia` methods to handle `recursive`
  keyword argument (e.g. by adding `; recursive::Bool = true` to the
  argument list and otherwise ignoring it)
- Add `GAP.versioninfo()`
- Add `GAP.Packages.build_recursive(name)`
- Add `GAP.Packages.test(name)`
- Change `GAP.Packages.build(name)` to no longer try to build the package if
  it is already installed
- Optimize conversion of GAP strings to Julia strings, symbols or `Vector{UInt8}`
- Use individual artifacts for each GAP package distributed with GAP,
  instead of a single huge "artifact" containing all of them and which
  has to be downloaded for each update (now we can update GAP packages
  individually)
- Use precompiled binaries for the following GAP packages:
  - 4ti2interface
  - ace
  - anupq
  - browse
  - caratinterface
  - cddinterface
  - cohomolo
  - crypting
  - curlinterface
  - cvec
  - datastructures
  - deepthought
  - digraphs
  - edim
  - ferret
  - float
  - fplsa
  - gauss
  - grape
  - guava
  - io
  - json
  - kbmag
  - normalizinterface
  - nq
  - orb
  - profiling
  - simpcomp
  - singular
  - zeromqinterface

**Merged pull requests:**
- Add GAP distro tests (#1067) (@lgoettgens)
- Optimize conversion of GAP strings to Julia (#1112) (@fingolfin)
- Remove call to `Base.GC.gc(true)` in `__init__` (#1113) (@fingolfin)
- Ensure all gap_to_julia method handle 'recursive' kwarg (#1115) (@fingolfin)
- Bump GAP_pkg_juliainterface_jll to 0.1300.2 (#1116) (@lgoettgens)
- Use length instead of Wrappers.Length (#1117) (@fingolfin)
- add `GAP.Packages.versioninfo()` (#1119) (@ThomasBreuer)
- set an exit code in `pkg/JuliaInterface/makedoc.g` (#1120) (@ThomasBreuer)
- Version 0.13.0 (#1121) (@fingolfin)

**Closed issues:**
- Systematic testing of all packages in the GAP distro (#1065)
- Add `GAP.versioninfo()` showing a list of loaded GAP packages (including version, package installation path) (#1082)
- Releasing GAP.jl 0.13.0 (#1114)

v0.12.3

Toggle v0.12.3's commit message
[Diff since v0.12.2](v0.12.2...v0.12.3)

- Fix a potential crash that may happen while loading GAP.jl

**Merged pull requests:**
- GAP: add and use ReplaceBinding helper (#1085) (@fingolfin)
- Revamp GAP package overrides (#1094) (@fingolfin)
- Use JLL wrappers for caratinterface, zeromqinterface (#1096) (@fingolfin)
- Add `Packages.build_recursive`; shortwire already built packages (#1097) (@lgoettgens)
- CHANGES.md: mention caratinterface, zeromqinterface (#1098) (@fingolfin)
- Enable GAP package Singular (#1099) (@fingolfin)
- Ensure binary wrappers are set up each time GAP.jl is loaded (#1100) (@fingolfin)
- Call `setup_overrides` earlier during launch (#1102) (@fingolfin)
- Remove a bunch of files from mutable GAP root (#1103) (@fingolfin)
- Enable GAP package 4ti2interface (#1104) (@fingolfin)
- Test `GAP.prompt()` and tab completion via `expect` (#1106) (@fingolfin)
- Add Singular also to GAP's `DirectoriesSystemPrograms` (#1108) (@fingolfin)
- Add curlinterface JLL, update caratinterface (#1109) (@fingolfin)
- init: keep argv C-array alive (#1110) (@benlorenz)

**Closed issues:**
- Add automated CI tests for the GAP.prompt() (#460)

v0.12.2

Toggle v0.12.2's commit message
[Diff since v0.12.1](v0.12.1...v0.12.2)

**Merged pull requests:**
- More C code refactoring (#1068) (@fingolfin)
- Use one artifact for each deposited GAP package (#1069) (@fingolfin)
- Version 0.13.0-DEV and switch to GAP 4.14.0 (#1074) (@fingolfin)
- CI: don't specify runner arch (#1075) (@fingolfin)
- Use JLLs to provide compiled binaries for some GAP packages (#1076) (@fingolfin)
- CI: use 30 minute timeouts instead of 20 minutes (#1077) (@fingolfin)
- Add a hack to make `CI with GAP master` work (#1078) (@lgoettgens)
- Load JuliaInterface before all other packages (#1080) (@fingolfin)
- Update .mailmap and copyright right information (#1081) (@fingolfin)
- Replace JuliaTypeInfo by Julia.typeof (#1084) (@fingolfin)
- Use nauty_jll in GRAPE, enhance CHANGES.md (#1086) (@fingolfin)
- Add JLLs for cohomolo & kbmag; update JLL for JuliaInterface (#1087) (@fingolfin)
- Update SFB Acknowledgements (#1088) (@fingolfin)
- Allow AA v0.44 (#1091) (@lgoettgens)
- [release-0.12] Backport AA compat bump and set version to 0.12.2 (#1093) (@lgoettgens)

**Closed issues:**
- More examples in README (at least) or documentation (#303)
- Macro construct bug? (#344)
- Suppress GAP warnings/errors when loading/installing messages (#650)
- `JULIA_DEBUG=GAP` breaks GAP.jl?!? (#747)
- Again trouble starting OSCAR while offline due to GAP issues (#852)
- Error running Oscar test for 1.6, x64, macOS-latest (#856)
- Trouble installing GAP package `nq` (and hence `hap`) on macOS (#928)
- `GapObj` vs `julia_to_gap` (#990)
- `GapObj` vs. `julia_to_gap` (#1025)
- Error installing nq, anupq because GMP can't be found (#1064)

v0.12.1

Toggle v0.12.1's commit message
[Diff since v0.12.0](v0.12.0...v0.12.1)

**Merged pull requests:**
- Implement iteration over GAP iterators (#967) (@fingolfin)
- for backward compatibility, reintroduce `julia_to_gap` (#1056) (@ThomasBreuer)
- change iteration over GAP objects (#1057) (@ThomasBreuer)
- Improve evalstr to show syntax warnings (#1059) (@fingolfin)
- setup_override_dir.jl: allow passing args to configure (#1060) (@fingolfin)
- Add CI with GAP to scheduled tests (#1063) (@lgoettgens)
- Add `GAP.Packages.build(name)` (#1066) (@lgoettgens)
- Version 0.12.1 (#1070) (@fingolfin)
- Add libstdc++ workaround for CI with julia 1.6 (#1073) (@lgoettgens)

**Closed issues:**
- Segmentation fault when coding a syntax tree obtained from evaluating a Julia string (#814)
- Skip holes when iterating over GAP lists? (#970)
- `fgets` error again (#1050)
- irritating GAP warning/error handling (#1058)
- CI tests against Julia 1.6 started to fail around 7th December 2024 (#1071)

v0.12.0

Toggle v0.12.0's commit message
[Diff since v0.11.4](v0.11.4...v0.12.0)

**Merged pull requests:**
- rewrite `julia_to_gap` (#1029) (@ThomasBreuer)
- Remove JuliaModule (#1041) (@fingolfin)
- Support keyword arguments in `CallJuliaFunctionWithCatch`, and a few other improvements (#1043) (@ThomasBreuer)
- Remove unused _JuliaFunctions (#1046) (@fingolfin)
- Remove JuliaFunction and a bunch of C code (#1047) (@fingolfin)
- Add daily tests  (#1048) (@HereAround)
- Stop wrapping Julia modules in special objects (#1049) (@fingolfin)
- Update CHANGES.md, set version to 0.12.0-DEV, augment a benchmark file (#1052) (@fingolfin)
- Hack to avoid warning about Downloads package (#1054) (@fingolfin)

**Closed issues:**
- Warning "The Julia package 'Downloads' cannot be loaded" when starting GAP.jl in CI (#1040)
- Replacing a Julia module is not handled well (#1044)

v0.11.4

Toggle v0.11.4's commit message
[Diff since v0.11.3](v0.11.3...v0.11.4)

**Merged pull requests:**
- Bump AbstractAlgebra compat to include 0.43 (#1042) (@lgoettgens)

v0.11.3

Toggle v0.11.3's commit message
[Diff since v0.11.2](v0.11.2...v0.11.3)

**Merged pull requests:**
- Remove banner code and instead use `should_show_banner` (#1027) (@lgoettgens)
-  change the show method for GAP objects (#1038) (@ThomasBreuer)
- fix the availability check in `Packages.install` (#1039) (@ThomasBreuer)

v0.11.2

Toggle v0.11.2's commit message
[Diff since v0.11.1](v0.11.1...v0.11.2)

**Merged pull requests:**
- Revert "try to work around some nightly issue" (#1001) (@lgoettgens)
- force_symlink: do nothing if correct symlink already exists (#1002) (@fingolfin)
- Update to GAP 4.13.1 (#1003) (@fingolfin)
- Work around nightly breakage by re-allowing `Julia.name := val` from GAP (#1006) (@lgoettgens)
- Remove macOS `GAC_LDFLAGS` workaround (#1007) (@lgoettgens)
- Update .gitignore (#1008) (@lgoettgens)
- tell JuliaInterface to load GAPDoc (#1009) (@ThomasBreuer)
- JuliaExperimental: stop using OtherPackagesLoadedInAdvance (#1010) (@fingolfin)
- Run JuliaInterface tests from runtests.jl via shell script (#1014) (@lgoettgens)
- change the handling of `IncludeJuliaStartupFile` (for Julia 1.10) (#1017) (@ThomasBreuer)
- CI: update julia-actions/cache to v2 (#1018) (@fingolfin)
- enhance `Packages.install` (#1019) (@ThomasBreuer)
- Add outdated docs warning to old versions (#1020) (@lgoettgens)
- Provide a stale_age to mkpidlock (#1021) (@fingolfin)
- CI: test against Julia 1.11-rc1 (#1022) (@fingolfin)
- CI: stop testing for invalidations (#1023) (@fingolfin)
- Adjust to jl_boundp change in Julia nightly (#1024) (@fingolfin)
- fix a test (#1028) (@ThomasBreuer)
- add `GetJuliaScratchspace` to `JuliaInterface` (#1030) (@ThomasBreuer)
- Update JLLs for Julia nightly compat & GC fix (#1031) (@fingolfin)
- Try to make `etc/ci_test.sh` work (#1033) (@lgoettgens)
- fix access to Julia docstrings from the GAP session (#1034) (@ThomasBreuer)
- fix the Acknowledgements, the current end date is 2024 (#1035) (@ThomasBreuer)
- Version 0.11.2 (#1036) (@fingolfin)

**Closed issues:**
- improve `Packages.install` and `Packages.load` (#627)
- meta: add Julia 1.10 macos to the branch protection rules (#959)
- Failures in Julia nightly (#1004)
- Run `JuliaInterface` tests as part of `Pkg.test`? (#1005)
- `fatal error: julia_gcext.h: No such file or directory` in julia nightly (#1016)

v0.11.1

Toggle v0.11.1's commit message
[Diff since v0.11.0](v0.11.0...v0.11.1)

**Merged pull requests:**
- Optimize conversion of UInt to GapObj (#983) (@fingolfin)
- Convenience: allow GapInt(x) as shorthand for producing a GAP integer (#984) (@fingolfin)
- Add an error for enabled multithreaded gc (#985) (@lgoettgens)
- Update GH actions (#986) (@fingolfin)
- CI: run on 'release-*' branches (#987) (@fingolfin)
- CI: avoid hard coding 'master' in a few places (#988) (@fingolfin)
- support `gap_to_julia(::AbstractVector)` (#989) (@ThomasBreuer)
- Add coercion of arguments to `@wrap` (#991) (@lgoettgens)
- Fix testsuite for julia nightly (#992) (@lgoettgens)
- Add CI job against GAP master (#995) (@lgoettgens)
- Fix force_symlink documentation, argument names (#998) (@fingolfin)
- Add `FORCE_JULIAINTERFACE_COMPILATION` (#999) (@lgoettgens)
- Update CHANGES.md, prepare for 0.11.1 release (#1000) (@fingolfin)

**Closed issues:**
- Add CI tests that build against and test using latest GAP master (#994)
- Using `etc/run_with_override.jl` should force use of a custom compiled JuliaInterface (#997)

v0.10.4

Toggle v0.10.4's commit message
[Diff since v0.10.3](v0.10.3...v0.10.4)

**Merged pull requests:**
- Remove BuildPackages.sh (#860) (@fingolfin)
- Make using and import statements explicit (#972) (@lgoettgens)
- Switch to GAP 4.13.0 (#975) (@fingolfin)
- Let override code also override GAP_lib_jll (#976) (@fingolfin)
- Prepare for GAP 4.13.0 (#977) (@fingolfin)
- Fix #include julia_gc.h to work in GAP 4.13.0, too (#979) (@fingolfin)
- Update to latest Makefile.gappkg (#980) (@fingolfin)
- fix GAP help access for Julia nightly (#981) (@ThomasBreuer)
- read_sysinfo_gap: deal with multiple = on one line (#982) (@fingolfin)
- Optimize conversion of UInt to GapObj (#983) (@fingolfin)
- Convenience: allow GapInt(x) as shorthand for producing a GAP integer (#984) (@fingolfin)
- Add an error for enabled multithreaded gc (#985) (@lgoettgens)
- Update GH actions (#986) (@fingolfin)
- CI: run on 'release-*' branches (#987) (@fingolfin)
- CI: avoid hard coding 'master' in a few places (#988) (@fingolfin)

**Closed issues:**
- Add `@gapproperty` (#680)
- `fgets` error when leaving Julia (#971)
- CI tests fail in Julia nightly: `terminal` not defined in `REPL.TerminalMenus` (#978)