Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
755 commits
Select commit Hold shift + click to select a range
205dae4
doc fix
pzinn Jul 2, 2025
af124b9
remove incorrect promote(RR,QQ)
pzinn Jul 3, 2025
b5b5ef4
improve promotion from a fraction field to another
pzinn May 23, 2025
8160681
isPromotable fix
pzinn Mar 18, 2026
9137715
capitalise samering
pzinn Mar 18, 2026
297b204
Load package's PackageExports when capturing example output
d-torrance Mar 19, 2026
e100939
Esnure emacs directory exists before installing files in it
d-torrance Mar 19, 2026
215c27e
Stop installing a couple factory files
d-torrance Mar 19, 2026
d609d62
updated helpers in SpectralSequences
mahrud Jul 8, 2025
3deb70b
updated methods in SpectralSequences
mahrud Jul 8, 2025
dd76c54
fixed the filteredComplex(List) constructor
mahrud Jul 8, 2025
14f2289
fixed the filteredComplex(Complex) constructor
mahrud Jul 8, 2025
8106546
fixed an indexing bug in SpectralSequences
mahrud Jul 8, 2025
9d3588b
updated version of SpectralSequences
mahrud Jul 8, 2025
556c296
fixup in filteredComplex(Complex)
mahrud Mar 9, 2026
e5725c8
added documentation of naiveTruncation(Complex,ZZ) back
mahrud Mar 9, 2026
01fdd6a
updated docs for SpectralSequences
mahrud Mar 9, 2026
a518e49
revert SpectralSequences docs to previous order
mahrud Mar 9, 2026
9fdb199
doc fixes in SpectralSequences
mahrud Mar 9, 2026
34dbffb
fix #4114
pzinn Feb 1, 2026
4754864
adjust tests to improved matrix power
pzinn Mar 16, 2026
37ab0ba
Added centroid method
seangrate Mar 26, 2026
ef3358c
Fixed check for compactness
seangrate Mar 26, 2026
5f2ceb5
Actually added assert to tests
seangrate Mar 26, 2026
ff20c03
Export centroid method
seangrate Mar 26, 2026
7d6815c
Small typo and style fixes
seangrate Mar 28, 2026
c9e37d0
Merge branch 'stable' into development
d-torrance Mar 30, 2026
18ed940
update MatchingFields package v1.3
ollieclarke8787 Mar 30, 2026
2068558
fix spelling
ollieclarke8787 Mar 30, 2026
759877a
add better error message for non coherent matching fields
ollieclarke8787 Mar 30, 2026
7790b61
Merge branch 'development' into intervals
d-torrance Apr 7, 2026
9b893a0
Bump msolve to v0.9.5
d-torrance Mar 27, 2026
318431c
Update =distributed-packages
aseceleanu Dec 10, 2025
08f36fc
add in MacaulayPosets package
aseceleanu Dec 10, 2025
69daa5c
Update MacaulayPosets.m2
aseceleanu Dec 10, 2025
c36a9c5
implemented suggestions for MacaulayPosets.m2
pbeall Feb 16, 2026
e071e06
removed inefficient appends and moved Visualize to PackageImports
pbeall Feb 17, 2026
150adec
added improvements
pbeall Apr 6, 2026
d449ac5
Move OldPolyhedra & OldToriceVectorBundles to undistributed-packages …
d-torrance Apr 9, 2026
ea9579d
Merge branch 'development' of https://github.com/Macaulay2/M2 into pr…
pzinn Apr 9, 2026
7c9a9e4
fix incorrect stderrorS in webapp mode
pzinn Apr 9, 2026
62ef003
fix typo
ollieclarke8787 Apr 9, 2026
03b7e5b
add test construct FlMatchingField from permutation
ollieclarke8787 Apr 9, 2026
1851ea8
a bunch of typos in packages
fchapoton Apr 10, 2026
c11db17
Update SpecialFanoFourfolds from 2.7.1 to 2.8
giovannistagliano Apr 7, 2026
700728e
Add directory SpecialFanoFourfolds
giovannistagliano Apr 8, 2026
5a3dd1c
update main file SFF.m2
giovannistagliano Apr 8, 2026
d084602
update aux files for SFF
giovannistagliano Apr 9, 2026
67243a6
update main file SFF.m2 and minor update to K3s.m2
giovannistagliano Apr 9, 2026
6f0fdf1
update aux files
giovannistagliano Apr 11, 2026
a9bd7ee
update main file
giovannistagliano Apr 11, 2026
e463ec3
update main file
giovannistagliano Apr 11, 2026
9fcbc23
update docs
giovannistagliano Apr 11, 2026
d630852
update aux files
giovannistagliano Apr 12, 2026
2198976
update main file
giovannistagliano Apr 12, 2026
03faf0f
update K3Surfaces.m2
giovannistagliano Apr 13, 2026
f48157e
Stop referring to the "bugs" directory in the README
d-torrance Apr 9, 2026
68bad0d
Bump nauty to v2.9.3
d-torrance Apr 9, 2026
56ebc07
Major overhaul of SimplicialModules: efficiency, correctness, and doc…
kellerlv Apr 16, 2026
7b54dd8
Address reviewer feedback and fix CI doc example failures
kellerlv Apr 16, 2026
641d860
Merge branch 'development' into SimplicialModules
kellerlv Apr 16, 2026
d8d0168
Remove unused _Modified.m2 file and rename SimplicialMapUtilities
kellerlv Apr 16, 2026
43bdc3f
Remove "Li" synonym for polylog (#4203)
d-torrance Apr 20, 2026
ae40868
clarify revert of promote(RR,QQ) in changes.m2, renamed internalRepre…
pzinn Apr 22, 2026
5e2a3f4
Merge pull request #3903 from pzinn/promote
d-torrance Apr 22, 2026
a392d92
Added synonym for frobeniusPushforward
sashahbc Oct 9, 2025
6c4466c
Implementing Anton's suggestions
sashahbc Apr 9, 2026
9487b9a
Added the synonym formatting that Anton suggested as well--which I ha…
sashahbc Apr 9, 2026
c9b5487
Whoops I got the formatting wrong again... Here's the corect version
sashahbc Apr 9, 2026
77a49c7
with newer cmake (and MacOS Tahoe), CMAKE_OSX_SYSROOT is not defined
Apr 22, 2026
e20a45e
Set up promoting from real & complex interval fields
d-torrance Apr 24, 2026
0811ece
Merge remote-tracking branch 'origin/development' into intervals
d-torrance Apr 24, 2026
ead521e
Increase upper bound on timing quotient test
d-torrance Apr 24, 2026
b9551ff
Fixing a bug with join in SimplicialComplexes
sashahbc Apr 24, 2026
dd1db4a
Add l^p norms for finite p
d-torrance Apr 21, 2026
8e070f0
Changed findProgram call to "msolve -h"
coolcuber Apr 25, 2026
7754461
Changed "/bin/echo" to "env echo"
coolcuber Apr 27, 2026
4123159
Changed "/bin/pwd" to "env pwd"
coolcuber Apr 27, 2026
16121d4
SchurRings: extension and overhaul
kellerlv Apr 17, 2026
ec1bdee
SchurRings: address review feedback on PR #4196
kellerlv Apr 20, 2026
fca120e
SchurFunctors: added Weyl functor, expanded documentation
kellerlv Apr 18, 2026
711ca90
Address reviewer feedback: package metadata, ss doc, printerr conversion
kellerlv Apr 28, 2026
84cd26d
Merge remote-tracking branch 'upstream/development' into SimplicialMo…
kellerlv Apr 28, 2026
e72c67d
SchurFunctors: drop "normalize" from export list
kellerlv Apr 28, 2026
be67bb9
DGAlgebras: 2.0 overhaul — DG modules, semifree resolutions, docs
kellerlv Apr 19, 2026
52506be
DGAlgebras: split docs and tests into AuxiliaryFiles
kellerlv Apr 28, 2026
e07a0de
share normalize between SchurFunctors and SimplicialModules
kellerlv Apr 28, 2026
1f75977
Add MRDI package
d-torrance Apr 21, 2026
12dfdc2
Bind unary commas in parallel assignment
d-torrance Apr 24, 2026
b19d563
Bump flint to v3.5.0
d-torrance Apr 24, 2026
deec6a2
Unset *_ROOT variable for libraries we build (cmake)
d-torrance Apr 27, 2026
5dabf3e
Support 2-argument "map" to/from RingFamily objects (RR/CC/RRi)
d-torrance Apr 25, 2026
a8780ea
Add support for "kernel" for maps from ZZ
d-torrance Apr 25, 2026
a11bd60
Mention that parallelApply preserves order
d-torrance Apr 28, 2026
3e12cdb
Add 1x1 matrix constructors for specific rings
d-torrance Apr 28, 2026
0349af3
13th time's the charm
kellerlv Apr 29, 2026
cc6243a
Merge pull request #3949 from kellerlv/SimplicialModules
d-torrance Apr 29, 2026
89952b8
Use etags to generate m2 directory TAGS file (autotools)
d-torrance Apr 29, 2026
14d1b15
Added function to compute dual of a LieAlgebraRepresentation. Fixed b…
dswinarski May 1, 2026
90ca3a7
Deleting file 'test dual.m2' as all the tests for this package are in…
dswinarski May 1, 2026
33b6d89
Add a bunch of missing lift methods for inexact numbers
d-torrance May 3, 2026
e572a1c
EliminationTemplates v1
timduff35 May 1, 2026
99e9656
some requested fixes
timduff35 May 1, 2026
7705d1d
more fixes
timduff35 May 1, 2026
20470ae
more fixes
timduff35 May 1, 2026
9c22752
documentation + fixes
timduff35 May 1, 2026
7697cef
documentation + fixes
timduff35 May 1, 2026
7969d41
update list of distributed packgaes
timduff35 May 1, 2026
87a2303
move files, fix warnings
timduff35 May 1, 2026
e032362
typo
timduff35 May 1, 2026
7bb0ab5
InvariantRing v2.4
galettof May 1, 2026
08beeca
info about InvariantRing v2.4 in changes.m2
galettof May 1, 2026
09f2cfa
fixed spelling errors
galettof May 1, 2026
0cbe058
fixing a little set of typos
fchapoton May 3, 2026
e3ac8b9
a few more typos
fchapoton May 3, 2026
75b474f
some more typos
fchapoton May 3, 2026
e198751
even more typos fixed
fchapoton May 3, 2026
bfff084
a few typos again
fchapoton May 3, 2026
a5fcceb
switch to unicode Gröbner + 2 typos
fchapoton May 3, 2026
ca71442
PieriMaps: 2.0 overhaul
kellerlv May 2, 2026
0eec312
PieriMaps: review fixes
kellerlv May 3, 2026
bf780c6
PieriMaps: more review fixes
kellerlv May 3, 2026
fa04171
PieriMaps: more append cleanup
kellerlv May 3, 2026
6e6980b
fix bug and add test for this (and a few related tests), for git issu…
mikestillman May 2, 2026
6d8aad8
fix stderr in openFiles in WebApp mode
pzinn May 3, 2026
05a5505
improve exterior algebra docs regarding left / right modules
joel-dodge May 3, 2026
8fad8f2
add more examples some paragraph structure and a link
joel-dodge May 3, 2026
cb6af9d
spell
joel-dodge May 3, 2026
1f0187e
switch to simple doc + edits and more example
joel-dodge May 4, 2026
a5aa0a9
Add lift(RingElement, InexactNumber)
d-torrance May 4, 2026
0c2214f
upgraded BettiCharacters to v2.6 (with degree fixes for M2 1.26.05)
galettof May 4, 2026
ef975ab
modified changes.m2 for BettiCharacters v2.6
galettof May 4, 2026
276fcb2
removed repository code URI line
galettof May 4, 2026
165e689
Expand setupPromote docs
d-torrance Apr 24, 2026
8fbd3c7
change target of padicValuation to ZZ
d-torrance Apr 19, 2026
6bb1400
Import Classic in Binomials for (Matrix, String)
d-torrance Apr 19, 2026
c328d7b
Allow RingFamily (like RR or CC) as sources for valuations
d-torrance Apr 19, 2026
7ca47f1
Allow promoting from local ring -> fraction field
d-torrance Apr 20, 2026
2c21448
Change source of localRingValuation to be fraction field
d-torrance Apr 20, 2026
60a328d
Simplify evaluation of valuations
d-torrance Apr 20, 2026
26f64ce
Remove redundant numerator/denominator call in padicValuation
d-torrance Apr 20, 2026
8544c77
Add "shuffle" method to replace random(List)
d-torrance Apr 25, 2026
cc4dabe
Add shuffle(MutableList) for in-place shuffling
d-torrance Apr 26, 2026
c7def41
Add shuffle(List, ZZ) for shuffled sublists
d-torrance Apr 26, 2026
93319fa
Switch random(List) -> shuffle(List) in packages
d-torrance Apr 25, 2026
70e40a2
Add randomElement(List) for future random(List) behavior
d-torrance Apr 30, 2026
f4d1f54
Rename randomElement helper function from PhylogeneticTrees
d-torrance May 1, 2026
fb0d307
Use randomElement in packages
d-torrance May 1, 2026
8a6e1a6
Bump tbb to v2023.0.0
d-torrance Apr 30, 2026
72ea958
Big update to RInterface documentation
d-torrance Apr 28, 2026
5be888a
Add a few extra RInterface tests
d-torrance Apr 28, 2026
1fc37ef
Introduce RQuote method for making R symbols
d-torrance Apr 28, 2026
b40cf87
Move RInterface tests into their own files
d-torrance Apr 28, 2026
2a9135f
Add support for R's ~ operator
d-torrance Apr 28, 2026
c6fc607
Introduce RValue
d-torrance Apr 28, 2026
bdad5ef
Add hash table <-> environment conversion
d-torrance Apr 29, 2026
540e62e
Move RInterface's beginDocumentation() to main file
d-torrance Apr 30, 2026
f08f6b0
Add RContext class (based on PythonContext)
d-torrance Apr 30, 2026
f4fbf13
Update RInterface documentation and tests
d-torrance Apr 30, 2026
f8e0bd2
Add copyright header to RInterface
d-torrance Apr 30, 2026
f0647c1
Bump RInterface to v0.2
d-torrance Apr 30, 2026
6ed1f1c
Set up R in the GitHub builds for RInterface package
d-torrance Apr 30, 2026
108c78b
Move almost all RInterface docs to their own files
d-torrance May 1, 2026
505306d
Return empty string when STRSXP has length 0
d-torrance May 1, 2026
f06ef57
Update date for RInterface 0.2 release
d-torrance May 1, 2026
597754b
Use engine for all debug build code
d-torrance May 1, 2026
13f2391
Fix some out of bounds errors caught by the debug build
d-torrance May 1, 2026
547eac6
added witt vectors package
Devlin-Mallory Apr 29, 2026
c84dc84
removed extraneous file
Devlin-Mallory Apr 29, 2026
e4625e6
small documentation change
Devlin-Mallory May 4, 2026
4735ff1
minor edits following github feedback
May 5, 2026
67dcc8e
changed net(WittIdeal) and WittIdeal class
May 5, 2026
13174f0
one more change to net(WittIdeal)
May 5, 2026
9dcd96e
added top level node
May 5, 2026
67e24f0
Add Padic package
d-torrance Apr 22, 2026
c454d36
Make static linking against boost optional
jkyang92 May 6, 2026
e8883e1
Fix / and \ methods for Command objects
d-torrance May 7, 2026
fc32067
Remove useless apply(Thing, Command) method
d-torrance May 7, 2026
f9830d0
Allow lifting from fraction field -> local ring
d-torrance May 5, 2026
0ff6ac1
Add (module, RingFamily) so "module RR" works
d-torrance May 2, 2026
2aec2a1
Update presentation for non-quotient rings
d-torrance May 2, 2026
b093aec
Add RingElement^Ring syntactic sugar for lift (matches Number^Ring)
d-torrance May 2, 2026
4940041
Fix char for quotient rings of tower rings over ZZ
d-torrance May 3, 2026
5b73fdb
Add minimalPrimes strategy for ideals in ZZ and ZZ/n
d-torrance May 3, 2026
af57d1e
Update hash for ZZ/RR to be platform-independent and use 64 bits
d-torrance May 3, 2026
10367a7
Assign magic numbers for hashing sequences to variables
d-torrance May 4, 2026
4cbb7fe
Raise an engine error when a non-unit is found in a "field"
d-torrance May 5, 2026
32723dc
Use top-level new.env instead of R_NewEnv for creating environments
d-torrance May 7, 2026
5dae941
Return strings, not foreign objects, from "net" of R symbols
d-torrance May 7, 2026
34a48d2
Merge pull request #4040 from MichaelABurr/intervals
d-torrance May 7, 2026
a808add
Use "headlines" instead of "help" in for "about" examples
d-torrance May 7, 2026
8e4e0fe
Preserve class when subsetting a list
d-torrance May 1, 2026
61375c5
Allow set differences for all visible lists
d-torrance May 1, 2026
1d68387
Update Permutations test after list subscripting behavior change
d-torrance May 3, 2026
2a9edd3
fix net BR, HR
pzinn May 8, 2026
f9219f8
Add some normaliz, some cytools (lattice points, via Nate MacFadden's…
mikestillman May 8, 2026
bcf0c24
Simple changes to packages: AdjunctionForSurfaces, AlgebraicSplines, …
mikestillman Jan 7, 2026
9837874
Very minor changes to get the following packages to not import OldCha…
mikestillman Jan 8, 2026
60532ed
Minor changes to many packages to get them working with Complexes rat…
mikestillman Jan 27, 2026
0363178
WeylAlgebras, HolonomicSystems, BernsteinSato now all work with Compl…
mikestillman Feb 23, 2026
b8339e4
Adding in 4 packages that now pass, using Complexes. TateOnProducts …
mikestillman Mar 2, 2026
9a559cd
Changes to make LocalRings and PruneComplex work without OldChainComp…
mikestillman Mar 3, 2026
f27fe69
Minor changes to TorAlgebra to get it working with Complexes
mikestillman Mar 3, 2026
827438e
Minor changes in getting everything working with Complexes
mikestillman Mar 4, 2026
f0909af
Changes to get packages working with new Complexes. NonminimalComple…
mikestillman Mar 4, 2026
158e1a3
mostly minor changes to LinearTruncations, VirtualResolutions. Howev…
mikestillman Mar 4, 2026
b14100b
commented out a doc node that doesn't seem to be cached (and I can't …
mikestillman Mar 4, 2026
37678ca
Fix so betti(C, Minimize=>true) works, if C is created with freeResol…
mikestillman Mar 9, 2026
e95b97b
fix TateOnProducts
mikestillman Mar 9, 2026
8521997
Make changes to get LinearTruncations to check correctly.
mikestillman Mar 9, 2026
140a2b3
change index from Sequence to List in 2 places (n same line) in Chain…
mikestillman Mar 16, 2026
98e68a9
Removed package PruneComplex, placing the contents (code, doc, tests)…
mikestillman Mar 17, 2026
af3d7a1
Added in freeResolution Strategy => NonminimalWithGB, which correspon…
mikestillman Mar 17, 2026
2845c4f
renamed FreeResolutions.m2 -> FreeResolution.m2
mahrud Jul 10, 2025
a30b386
added hilbertPolynomial(Complex) and euler(Complex)
mahrud Jul 14, 2025
c94a500
simplified rank(Complex)
mahrud Jul 14, 2025
f4d5386
simplified augmentationMap, removed cacheValue from Complexes
mahrud Jul 14, 2025
c970bdd
added truncate(InfiniteNumber, Complex)
mahrud Sep 6, 2025
232f80a
added yonedaExtension(Vector)
mahrud Jul 10, 2025
b4d6aff
cached cone(ComplexMap)
mahrud Mar 2, 2026
698c688
set isWellDefined(ComplexMap) to check each differential
mahrud Sep 6, 2025
8d71eb7
fixed virtualOfPair for Complexes
mahrud Mar 11, 2026
352269b
remove use of try in augmentationMap
mikestillman Mar 23, 2026
ad30d68
Some bug fixes and minor edits
mikestillman Apr 6, 2026
2d84294
Remove NonminimalComplexes package, fix a few tests.
mikestillman Apr 13, 2026
067ef6a
fix the computation book d-module error, by removing degrees on the t…
mikestillman Apr 16, 2026
fd31fb7
changed HomologicalAlgebraPackage to "Complexes", and added "Complexe…
mikestillman Apr 20, 2026
eb79f9b
don't force preloading Complexes
mahrud Apr 21, 2026
31ab568
changed pdim/regularity to pushforward to PP^n using flattenModule
mahrud Apr 21, 2026
e4acdad
renamed flattenModule -> liftModule
mahrud Apr 21, 2026
d4aa6d4
simplified liftModule/etc over polynomial rings
mahrud Feb 2, 2026
9857d71
fix most test bugs arising from setting Complexes as the HomologicalA…
mikestillman Apr 30, 2026
c9205ff
The final set of test errors has been fixed. This also fixes a bug i…
mikestillman May 8, 2026
6531226
Certify ThinSincereQuivers
d-torrance Apr 17, 2026
a6f9c1b
Don't overwrite global recursionLimit variable in GradedLieAlgebras
d-torrance Apr 21, 2026
a0e09c1
Document unexported "internalRepresentation" function
d-torrance Apr 22, 2026
5bf6463
Add missing info to ForeignFunctions changelog
d-torrance Apr 22, 2026
30601f9
Add workflow for building Debian packages for website
d-torrance Apr 27, 2026
bd86042
Bump mathic to v1.3
d-torrance May 8, 2026
795436d
Bump mathicgb to v1.3
d-torrance May 8, 2026
b27f670
Bump frobby to 0.9.8
d-torrance May 8, 2026
5ec39e3
Use fewer variables in Depth test that was taking too long
d-torrance May 9, 2026
628b7d0
Bump version number to 1.26.05
d-torrance May 9, 2026
ab48555
Update vim symbols for 1.26.05
d-torrance May 9, 2026
ed1bfab
Update prism.js symbols for version 1.26.05.
d-torrance May 9, 2026
522c41f
Update KaTeX to 0.16.45
d-torrance May 9, 2026
bcabc42
Update M2-emacs submodule commit for 1.26.05
d-torrance May 9, 2026
7d72938
Bump Complexes package to 1.0
d-torrance May 9, 2026
9113a8b
Revert "Add some normaliz, some cytools (lattice points, via Nate Mac…
d-torrance May 9, 2026
b30bc0f
Add 1.26.05 changelog
d-torrance Apr 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 4 additions & 0 deletions .codespell_ignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
aci
afile
alledges
allready
Expand Down Expand Up @@ -45,11 +46,13 @@ lsat
manuel
methd
mis
mone
mor
multidimension
nam
nd
nin
ninj
nome
numer
oint
Expand All @@ -74,3 +77,4 @@ thets
toom
tring
ue
vew
101 changes: 101 additions & 0 deletions .github/workflows/build-deb.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# This workflow builds Debian packages for the last 3 Debian releases
# (currently trixie, bookworm, and bullseye)

# After each Macaulay2 release, a new package is prepared for Debian unstable
# (and a few days later, it migrates to Debian testing). The packaging is
# under version control in Debian's git forge, Salsa, at
# https://salsa.debian.org/math-team/macaulay2, in the debian/latest branch

# Backport the package to each of the supported releases and push to the
# appropriate release branch, e.g., debian/trixie for trixie. In many cases,
# this is as simple as just merging the debian/latest branch. Push each branch
# to Salsa.

# Once each branch is ready and pushed to Salsa, run this action using "workflow
# dispatch" to generate each Debian package.

# Download the artifacts and unzip them. Push files using dput to
# Repositories/Debian/mini-dinstall/incoming on the webserver, and then
# run "mini-install -b -v" on the server. Finally sign the Release files
# in each directory (gpg --clearsign -o InRelease Release).

name: Build Debian packages
on: workflow_dispatch

jobs:
build-deb:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
release:
- bullseye
- bookworm
- trixie
os:
- ubuntu-latest
- ubuntu-24.04-arm
container:
image: debian:${{ matrix.release }}
steps:
- name: Install dependencies
run: |
apt-get update
apt-get install -y wget ca-certificates
if test ${{ matrix.release }} = "bullseye"; \
then wget -O /usr/share/keyrings/macaulay2-archive-key.asc https://macaulay2.com/Repositories/Debian/macaulay2-archive-key.asc; \
fi
wget -O /etc/apt/sources.list.d/macaulay2.sources https://macaulay2.com/Repositories/Debian/${{ matrix.release }}/macaulay2.sources
apt-get update
apt-get install -y 4ti2 bison cohomcalg coinor-csdp \
debhelper dh-linktree emacs-nox fflas-ffpack flex \
gfan gfortran install-info libboost-dev libboost-math-dev \
libboost-regex-dev libboost-stacktrace-dev libcdd-dev \
libeigen3-dev libffi-dev libflint-dev libfrobby-dev libfplll-dev \
libgc-dev libgdbm-dev libglpk-dev libgtest-dev libjansson-dev \
liblapack-dev liblzma-dev libmathic-dev libmathicgb-dev \
libmemtailor-dev libmpfi-dev libmpfr-dev libmps-dev libnauty-dev \
libnormaliz-dev libntl-dev libreadline-dev \
libsingular4-dev libtbb-dev libxml2-dev lrslib \
lsb-release msolve nauty normaliz pkgconf python3-dev \
r-base singular-data time topcom git devscripts dh-elpa

# arch-independent dependencies (amd64 build only)
if test ${{ matrix.os }} = "ubuntu-latest"; then
apt-get install -y faketime gdbmtool jdupes

# don't need javascript on bullseye (just use the vendored copies)
if test ${{ matrix.release }} != "bullseye"; then
apt-get install -y node-fortawesome-fontawesome-free \
fonts-katex libjs-bootsidemenu libjs-bootstrap5 libjs-d3 \
libjs-jquery libjs-katex libjs-nouislider libjs-three \
node-clipboard node-css-loader node-import-local \
node-interpret node-prismjs node-prismjs-bibtex \
node-rechoir node-style-loader npm pkg-js-tools webpack
fi
fi
- name: Clone repository
run: |
git clone https://salsa.debian.org/math-team/macaulay2
cd macaulay2
git checkout debian/${{ matrix.release }}
- name: Generate tarball
run: uscan --verbose --rename --force-download
- name: Build package
run: |
cd macaulay2
git submodule update --init M2/Macaulay2/editors/emacs
if test ${{ matrix.os }} = "ubuntu-latest"; \
then dpkg-buildpackage; \
else dpkg-buildpackage -B; \
fi
- name: Upload build logs
if: always()
uses: actions/upload-artifact@v7
with:
name: ${{ matrix.os }}-debian-${{ matrix.release }}
path: |
*.build
*.buildinfo
*.changes
*.deb
2 changes: 1 addition & 1 deletion .github/workflows/build-rpm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
RELEASE=${{ matrix.release }}
- name: Upload artifacts
if: always()
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@v7
with:
name: ${{ matrix.os }}-${{ matrix.distribution }}-${{ matrix.release }}
path: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/make-dist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
make doc-dist
- name: Upload artifacts
if: always()
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@v7
with:
name: dist-tarballs
path: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/package-review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
package: ${{ github.event.inputs.package }}

- name: Upload errors
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@v7
if: failure()
with:
name: ${{ github.event.inputs.package }}-errors
Expand Down
18 changes: 9 additions & 9 deletions .github/workflows/test_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,17 +39,17 @@ jobs:
- cmake
os:
- ubuntu-24.04
- macos-14
- macos-15
compiler:
- default
include:
# This build tests Clang rather than AppleClang (keep)
- build-system: cmake
os: macos-14
os: macos-15
compiler: brew-clang
exclude:
- build-system: cmake
os: macos-14
os: macos-15
compiler: default
steps:
- uses: actions/checkout@v6
Expand All @@ -64,8 +64,7 @@ jobs:
brew config
brew update
brew tap macaulay2/tap
brew install --overwrite python
brew install automake bison boost libtool tbb ccache ctags llvm make ninja yasm libffi msolve googletest fplll eigen
brew install automake bison boost libtool tbb ccache ctags llvm make yasm libffi msolve googletest fplll eigen jansson r
brew install texinfo || true # sometimes post-install step fails
brew install --only-dependencies macaulay2/tap/M2
brew link factory --force
Expand All @@ -86,7 +85,7 @@ jobs:
libgivaro-dev libboost-regex-dev fflas-ffpack libflint-dev libmps-dev libfrobby-dev \
libsingular-dev singular-data libcdd-dev cohomcalg topcom 4ti2 libnormaliz-dev normaliz coinor-csdp \
libnauty-dev nauty lrslib polymake pipx phcpack w3c-markup-validator libtbb-dev qepcad libomp-16-dev \
msolve libfplll-dev
msolve libfplll-dev libjansson-dev r-base

# ----------------------
# Steps common to all build variants
Expand Down Expand Up @@ -214,7 +213,7 @@ jobs:
- name: Run Tests using Autotools
if: matrix.build-system == 'autotools' && runner.os == 'Linux' && matrix.compiler == 'default'
run: |
make check -o check-in-libraries
make -j$(nproc 2>/dev/null || sysctl -n hw.logicalcpu) check -o check-in-libraries
make -C Macaulay2/html-check-links check

- name: Validate HTML documentation
Expand Down Expand Up @@ -244,7 +243,7 @@ jobs:

- name: Upload build logs
if: always()
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@v7
with:
name: ${{ matrix.build-system }}-${{ matrix.os }}-${{ matrix.compiler }}-logs
path: |
Expand All @@ -257,6 +256,7 @@ jobs:
M2/BUILD/build/CMakeCache.txt
M2/BUILD/build/CMakeFiles/CMakeError.log
M2/BUILD/build/CMakeFiles/CMakeOutput.log
M2/BUILD/build/CMakeFiles/CMakeConfigureLog.yaml
M2/BUILD/build/libraries/*/build/config.log
# package example errors
M2/BUILD/build/usr-dist/common/share/doc/Macaulay2/*/example-output/*.errors
Expand All @@ -268,7 +268,7 @@ jobs:

- name: Upload Macaulay2 package for Ubuntu (x86_64)
if: matrix.build-system == 'cmake' && runner.os == 'Linux' && success()
uses: actions/upload-artifact@v6
uses: actions/upload-artifact@v7
with:
name: Macaulay2-${{ env.GIT_COMMIT }}-ubuntu-x86_64
path: |
Expand Down
8 changes: 5 additions & 3 deletions M2/BUILD/anton/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,19 @@ always:

BRANCH := $(shell git branch --contains | grep '^\* ' | sed -e s=^..== -e s=/=.=g )

cmake:
cmake: # ~ mike's cmake-appleclang
echo "git branch is " $(BRANCH)
mkdir -p builds.tmp/$@
cd builds.tmp/$@; cmake \
-GNinja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_PREFIX_PATH="`brew --prefix libomp`" \
-DCMAKE_PREFIX_PATH="`brew --prefix`;`brew --prefix factory`" \
-DBUILD_NATIVE=off \
-DCMAKE_INSTALL_PREFIX=`pwd`/installed \
-DBUILD_TESTING=on \
-DBUILD_DOCS=on \
-DCMAKE_EXPORT_COMPILE_COMMANDS=true \
../../../..
# -DLINTING=on

auto:
echo "git branch is " $(BRANCH)
Expand Down
2 changes: 1 addition & 1 deletion M2/BUILD/docker/fedora/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ RUN microdnf install -y autoconf bison ccache chrpath cmake curl diffutils \

# Libraries we require
RUN microdnf install -y openblas-devel libxml2-devel readline-devel gdbm-devel \
boost-devel libomp-devel tbb-devel python3-devel libffi-devel
boost-devel libomp-devel tbb-devel python3-devel libffi-devel jansson-devel

# Libraries we can build (factory not available on ubuntu)
RUN microdnf install -y eigen3-devel glpk-devel gmp-devel mpfr-devel ntl-devel \
Expand Down
15 changes: 7 additions & 8 deletions M2/BUILD/docker/nightly/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,31 @@
# Net usage: ~100MB
# Disk usage: <600MB docker image

FROM ubuntu:20.04
FROM ubuntu:24.04

RUN apt-get update && \
apt-get install -y software-properties-common apt-transport-https curl git sudo unzip gnupg && \
add-apt-repository -y ppa:macaulay2/macaulay2 && apt-get update && apt-get clean

# this seems to be necessary because libstdc++6 is too old on Ubuntu 20.04
RUN add-apt-repository -y ppa:ubuntu-toolchain-r/test && apt-get update && \
apt-get install -y -q --no-install-recommends libomp5-11 && apt-get clean
RUN add-apt-repository -y ppa:ubuntu-toolchain-r/test && apt-get update && apt-get clean

# Install Macaulay2
COPY Macaulay2-*.zip /
RUN unzip Macaulay2-*.zip && apt-get install -y /Macaulay2-*.deb

# Install optional packages
RUN apt-get install -y -q --no-install-recommends mlocate bash-completion && apt-get clean && updatedb
RUN apt-get install -y -q --no-install-recommends locate bash-completion && apt-get clean && updatedb

#RUN apt-get install -y -q --no-install-recommends emacs && apt-get clean

# Add non-root user for building and running Macaulay2
RUN useradd -G sudo -g root -u 1000 -m macaulay && echo "macaulay ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
RUN useradd -G sudo -g root -o -u 1000 -m macaulay && echo "macaulay ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
USER 1000:0

# Setting environment variables
ENV LD_LIBRARY_PATH /usr/local/lib/Macaulay2/lib
ENV PATH /usr/local/libexec/Macaulay2/bin:${PATH}
ENV LD_LIBRARY_PATH=/usr/local/lib/Macaulay2/lib
ENV PATH=/usr/local/libexec/Macaulay2/bin:${PATH}

WORKDIR /home/macaulay
ENTRYPOINT M2
ENTRYPOINT ["M2"]
8 changes: 5 additions & 3 deletions M2/BUILD/docker/rhel/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,13 @@ ARG RELEASE=latest
FROM $DISTRIBUTION:$RELEASE

# Install dependencies
RUN dnf -y install 'dnf-command(config-manager)' || true
RUN dnf config-manager --set-enabled crb || true # for jansson-devel
RUN dnf -y install autoconf automake bison boost-devel bzip2 chrpath \
cmake diffutils flex gcc-c++ gcc-gfortran git gmp-devel info \
libffi-devel libtool libxml2-devel make mpfr-devel ncurses-devel \
patch python3-devel readline-devel rpm-build tbb-devel which \
xz-devel zlib-devel
jansson-devel libffi-devel libtool libxml2-devel make mpfr-devel \
ncurses-devel patch python3-devel readline-devel rpm-build \
tbb-devel which xz-devel zlib-devel
RUN test "$RELEASE" != "8" && dnf -y install flexiblas-devel || true

# Add non-root user for building and running Macaulay2
Expand Down
8 changes: 4 additions & 4 deletions M2/BUILD/docker/testbot/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
# Time usage: <5min
# Net usage: <200MB
# Disk usage: <800MB
# Disk usage: <850MB

FROM debian:bookworm
FROM debian:trixie

LABEL org.opencontainers.image.source=https://github.com/Macaulay2/M2

# Setup the system
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates debian-keyring git && apt-get clean
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates wget git && apt-get clean

# Install Macaulay2
RUN echo "deb [signed-by=/usr/share/keyrings/debian-keyring.gpg] https://people.debian.org/~dtorrance/debian bookworm/" >> /etc/apt/sources.list && apt-get update && apt-get install -y --no-install-recommends macaulay2 4ti2 cohomcalg coinor-csdp gfan nauty normaliz topcom msolve && apt-get clean
RUN wget -O /etc/apt/sources.list.d/macaulay2.sources https://macaulay2.com/Repositories/Debian/trixie/macaulay2.sources && apt-get update && apt-get install -y --no-install-recommends macaulay2 4ti2 cohomcalg coinor-csdp gfan nauty normaliz topcom msolve && apt-get clean

# Add non-root user for using Macaulay2
RUN useradd -G sudo -g root -u 1000 -m macaulay && echo "macaulay ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
Expand Down
16 changes: 0 additions & 16 deletions M2/BUILD/mahrud/atomic_test/test.c

This file was deleted.

39 changes: 0 additions & 39 deletions M2/BUILD/mahrud/atomic_test/test.cpp

This file was deleted.

4 changes: 0 additions & 4 deletions M2/BUILD/mahrud/atomic_test/test.sh

This file was deleted.

Loading