Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
327 commits
Select commit Hold shift + click to select a range
d95df9f
Fixed HURLEY_HJELLMING_WEBBINk qCrit prescription for Remnants
nrsegovia May 8, 2025
d170eb6
adapted some variable names to camelCase
nrsegovia May 8, 2025
51a70f1
Updated documentation for OPT_Value macro
jeffriley May 8, 2025
e89da72
Merge branch 'issue-1378' of https://github.com/TeamCOMPAS/COMPAS int…
jeffriley May 8, 2025
dccc8db
Merge pull request #1387 from TeamCOMPAS/issue-1378
jeffriley May 8, 2025
df10984
Temporary commit
May 9, 2025
b83c68e
Merge branch 'dev' into Outputs
May 9, 2025
849d11b
Documentation update
May 9, 2025
7a583b2
Typo fix
May 9, 2025
f3183d8
Implementing Jeff's suggested change
May 10, 2025
4fb0cac
Typo fix
May 10, 2025
f293075
Merge pull request #1388 from TeamCOMPAS/Outputs
ilyamandel May 10, 2025
04011c6
Corrected and simplified GiantBranch::CalculateRadialExtentConvective…
May 11, 2025
8f5e36c
Cleaned
May 11, 2025
f9f1ec5
Merge pull request #1389 from TeamCOMPAS/ConvEnvRadius
ilyamandel May 11, 2025
7d23a2d
Simplified equilibrium tides equations
veome22 May 12, 2025
ac610df
Merge branch 'dev' into tides_updates
veome22 May 12, 2025
d9e5faf
HURLEY_HJELLMING_WEBBINK qCrits moved to constants.h and minor cleanup
May 13, 2025
e533312
Removed superfluous lines of code
veome22 May 13, 2025
dc7bb3d
Updated changelog and online documentation
veome22 May 13, 2025
f5b31ff
Moved more wd-related constants to constants.h, reorganized Determine…
May 14, 2025
a22abb5
clarified the m=0 comment in Dynamical tides
veome22 May 14, 2025
b87bee8
Moved DetermineAccretionRegime to WhiteDwarfs
SimonStevenson May 15, 2025
ece2b96
Merge branch 'dev' into improve_wd
SimonStevenson May 15, 2025
12d5970
small tweak to what's new update
SimonStevenson May 15, 2025
87ba9bc
another minor edit to What's New
SimonStevenson May 15, 2025
3fafb6a
Removed some older calculations, no longer needed
veome22 May 16, 2025
b10b3e8
Deprecated KAPIL2024 tides rather than removing the option outright
veome22 May 16, 2025
ad8c2ed
Promoted tidal ImKnm to global variables to compute timescales as out…
veome22 May 16, 2025
c11c62a
Updated yaml file
veome22 May 16, 2025
bf392a7
Renamed tides output variables, demoted ImKnm_tidal back to local var…
veome22 May 16, 2025
67d0727
Moving CalculateMassAcceptanceRate to WhiteDwarfs for COWDs and ONeWDs
SimonStevenson May 19, 2025
8e5edf2
rounded Nomoto 2007 fit constants to 4 decimals
May 19, 2025
535608a
Added CalculateCriticalMassRatioHurleyHjellmingWebbink to Remnants.h
May 19, 2025
168e81d
Update whats-new.rst
jeffriley May 19, 2025
77f83dd
Started section 7, CEs
May 20, 2025
bf44fa4
allow binned-cosmic-inntegrator to also include BNS, BHS
avivajpeyi May 21, 2025
79334f5
remove hacked in comment
avivajpeyi May 21, 2025
412e449
add mass@zams to test object
avivajpeyi May 22, 2025
2163abe
add different stellar types for binned cosmic integrator
avivajpeyi May 22, 2025
bae6ffa
Added functionality to create new System Detailed Output logfile
jeffriley May 22, 2025
c77b245
Typo fixes
jeffriley May 22, 2025
0dbf360
fix enum bug
avivajpeyi May 22, 2025
7863d35
Implemented merger for unstable MT from WDs when the HURLEY_HJELLMING…
May 22, 2025
846abd7
Updates per review
jeffriley May 22, 2025
fccdf41
Merge pull request #1395 from TeamCOMPAS/sys-details
ilyamandel May 22, 2025
44a139c
Moved white dwarf merger code block so it is triggered under the righ…
May 23, 2025
3f7ca2f
Update changelog
May 23, 2025
8b83936
adjust example to include dcos_included=[BBH]
avivajpeyi May 23, 2025
c38f287
Update BaseBinaryStar.cpp
jeffriley May 23, 2025
0d87dfc
Added total, equilibrium, and dynamical tidal potential Love numbers …
veome22 May 25, 2025
a9f594c
Updated documentation to match the changes for this PR
veome22 May 25, 2025
770831b
Cleaned up variable names and definitions
veome22 May 25, 2025
6c56c24
Fixed circularization and synchronization timescale output variables …
veome22 May 25, 2025
8ce462c
fixed spacing
veome22 May 25, 2025
02029e4
Merged dev
veome22 May 25, 2025
6b8d93d
updated yaml
veome22 May 25, 2025
cd88f0f
Merge pull request #1390 from TeamCOMPAS/tides_updates
ilyamandel May 25, 2025
f44aece
Merge branch 'dev' into improve_WD
SimonStevenson May 26, 2025
4fb1515
Added references to WD constants
SimonStevenson May 26, 2025
f8d6856
Update comments in WhiteDwarfs.h
ilyamandel May 26, 2025
f8c34bd
Merge pull request #1386 from TeamCOMPAS/improve_WD
ilyamandel May 26, 2025
b7a5a63
Merge pull request #1394 from avivajpeyi/add_different_populations
SimonStevenson May 27, 2025
89b9545
Merge branch 'dev' into TypoFixes
May 30, 2025
3f106b5
Included unit conversion in WhiteDwarfs::CalculateEtaPTY()
May 30, 2025
987da87
All critical mass ratios now return 0.0 for remnant donors (only stab…
May 30, 2025
227b67d
Final tweak
May 30, 2025
3b643bc
typo fix
May 30, 2025
fb71885
Update for WDs
May 30, 2025
fa064a9
Comment update
May 30, 2025
0352992
Comment update
May 30, 2025
c33fb6f
Merge pull request #1397 from TeamCOMPAS/TypoFixes
ilyamandel May 30, 2025
9ac3605
Fix for online docs compile failure
jeffriley May 30, 2025
ececba8
Merge pull request #1398 from TeamCOMPAS/docs-fix
jeffriley May 30, 2025
bf16afa
Starting work on public cosmic history integrator
Jun 15, 2025
a5794c1
Fix to behaviour for stars that do not qualify for ECSN, see #1305
Jun 18, 2025
b48aa8d
Whatsnew mod, changelog year fix
Jun 18, 2025
87806fa
Plot mod
Jun 18, 2025
c12800a
Merge pull request #1400 from TeamCOMPAS/Matlab
ilyamandel Jun 19, 2025
a07ae2a
Fixes and upgrades to CHE and MS mergers
brcekadam Jun 20, 2025
e90d128
Improvements to comparison plotting
Jun 21, 2025
880ca51
Update changelog.h
brcekadam Jun 23, 2025
f8b1be0
Typo fix
brcekadam Jun 23, 2025
c23bc48
Fix to hydrogen mass calculations
brcekadam Jun 23, 2025
02468cd
Typo fix
brcekadam Jun 23, 2025
5ab3409
Fix to hydrogen mass calculation
brcekadam Jun 23, 2025
3ad655b
Merge pull request #1401 from brcekadam/CHE_and_merger_fixes
brcekadam Jun 23, 2025
988c97a
Fixed typo in implementation of CASE_BB_STABILITY_PRESCRIPTION::ALWAY…
Jun 24, 2025
36e0f45
Merging changes
Jun 24, 2025
d590580
Refer to issue in changelog
Jun 24, 2025
3caa14f
Tweak
Jun 24, 2025
e680878
fix typo in version number in changelog
SimonStevenson Jun 24, 2025
bfe7c26
Merge pull request #1402 from TeamCOMPAS/Matlab
SimonStevenson Jun 24, 2025
fd0732f
Update to Maxwellian kicks; new log normal kicks
Jun 25, 2025
e842b1f
commenttypo fix
Jun 25, 2025
0565dee
Update BaseStar.cpp - formatting
jeffriley Jun 25, 2025
a249ac2
Merge pull request #1404 from TeamCOMPAS/Kicks
ilyamandel Jun 25, 2025
7bd7b32
Added a maximum threshold of 1000 km/s for Disberg & Mandel (2025) LO…
Jun 25, 2025
0c2e12a
typo fix
Jun 25, 2025
726d94a
typo fix
Jun 25, 2025
61706a4
Removed ambiguous ZSOL and checked prescriptions
brcekadam Jun 25, 2025
963748f
Update changelog.h
brcekadam Jun 25, 2025
f0f7daf
Update BaseStar.cpp - formatting
jeffriley Jun 25, 2025
44124d6
Defined LogMetallicityXi() for different ZSOLs
brcekadam Jun 25, 2025
f31dcb1
Addressing Jeff's comment
Jun 26, 2025
98b43d7
Addressing Jeff's comment
Jun 26, 2025
62a0db0
Updated FMIX_BRCEK coefficients, fixed error in calculation
brcekadam Jun 26, 2025
964275c
Clean up random draw
Jun 26, 2025
e412206
Clean up random draw
Jun 26, 2025
37db4c4
Work on cosmic history integration
Jun 26, 2025
348395b
Merge pull request #1405 from TeamCOMPAS/Matlab
ilyamandel Jun 26, 2025
09bef2d
Update changelog.h
brcekadam Jun 26, 2025
30ff94c
Merge pull request #1406 from brcekadam/fix_zsol_reference
ilyamandel Jun 26, 2025
e991085
Cosmic Integrator
Jun 28, 2025
4e2d2ee
First draft of detection code
Jun 29, 2025
bed99bc
Done with cosmic integration
Jun 29, 2025
0f62dff
Added individual velocity components as LogTypedefs so they can be pr…
reinhold-willcox Jun 30, 2025
586d9d9
changelog
reinhold-willcox Jun 30, 2025
3b4b379
documentation
reinhold-willcox Jun 30, 2025
1cc22dd
changed from SPEED_X to VELOCITY_X and same for Y and Z for stars
reinhold-willcox Jun 30, 2025
88415fb
Merge pull request #1407 from TeamCOMPAS/print_final_velocity_components
ilyamandel Jun 30, 2025
0007c69
First complete Matlab upload
Jul 1, 2025
d8df345
Merge branch 'dev' into Matlab
Jul 1, 2025
6d56cea
Merge pull request #1408 from TeamCOMPAS/Matlab
ilyamandel Jul 1, 2025
c030f64
03.21.00
Jul 6, 2025
ce30ae6
CosmicIntegrator cleaning
Jul 6, 2025
dd587bf
Updating mass transfer physics
Jul 6, 2025
5bbe932
Checks
Jul 6, 2025
a0f1b2b
Cleaned up code
Jul 6, 2025
f4f9da5
Update BaseBinaryStar.h - formatting
jeffriley Jul 7, 2025
4b429b9
Added missing virtual declaration to ShouldEnvelopeBeExpelledByPulsat…
Jul 11, 2025
50661dd
Merge branch 'Matlab' of https://github.com/TeamCOMPAS/COMPAS into Ma…
Jul 11, 2025
081b020
Enhancements
jeffriley Jul 17, 2025
04f1bdf
Update changelog.h - fix typos
jeffriley Jul 17, 2025
4f8a2f4
Merge pull request #1410 from TeamCOMPAS/MERRITT2024-2025
ilyamandel Jul 17, 2025
f62596e
Fixed random draws of SN kicks to avoid artificial pile-up at boundar…
Jul 17, 2025
d63a489
Split --muller-mandel-sigma-kick into --muller-mandel-sigma-kick-NS a…
Jul 18, 2025
ffb4250
ComputeZetaEquilibrium() fix
Jul 18, 2025
5856d88
Merge pull request #1409 from TeamCOMPAS/Matlab
ilyamandel Jul 18, 2025
7883e47
Fixed random kick draw for MULLERMANDEL prescription
Jul 21, 2025
6626a27
Merge pull request #1411 from TeamCOMPAS/BugFix
ilyamandel Jul 21, 2025
ce6f555
Added CR/LF to whats-new page
jeffriley Jul 24, 2025
5727822
Merge pull request #1412 from TeamCOMPAS/whatsnew-fix
yuzhesong Jul 24, 2025
82f675d
fix: update Change from -std=c++11 -> -std=c++17
avivajpeyi Aug 7, 2025
25372ea
Merge pull request #1415 from TeamCOMPAS/docker_image_updates
jeffriley Aug 7, 2025
6db4944
Changes for isuues 1413 and 1414
jeffriley Aug 8, 2025
ba082c9
typo fix
jeffriley Aug 8, 2025
a29f37e
another typo fix
jeffriley Aug 8, 2025
27d3098
typos fixed in changelog
jeffriley Aug 8, 2025
90e1c00
Changes to program option defaults for record type (issue 1414)
jeffriley Aug 8, 2025
fe383df
don't use totalMassEvolvedPerZ in star_forming_mass_per_bin, this is …
LiekeVanSon Aug 8, 2025
521f7c2
cleaned up some print statements
LiekeVanSon Aug 8, 2025
9e04db7
Merge pull request #1419 from TeamCOMPAS/issue-1413
ilyamandel Aug 8, 2025
573e9bc
Issue 1211 + minor fixes
jeffriley Aug 9, 2025
530fe84
fix typo
jeffriley Aug 9, 2025
4df6970
Missed a couple of docs edits
jeffriley Aug 9, 2025
e2f36f8
it matters what m_min1 is?
LiekeVanSon Aug 9, 2025
2bf48db
Update changelog.h
ilyamandel Aug 10, 2025
63474b7
Documentation fixes, new yaml file
jeffriley Aug 10, 2025
f18ef19
changelog
jeffriley Aug 10, 2025
be9d348
Merge branch 'minor_fixes' of https://github.com/TeamCOMPAS/COMPAS in…
jeffriley Aug 10, 2025
52c8d75
Merge pull request #1420 from TeamCOMPAS/minor_fixes
jeffriley Aug 10, 2025
0d73617
move test values to separate so generate_mock_bbh_population_file is …
LiekeVanSon Aug 11, 2025
3660ba1
enabled the get_COMPAS_fraction to handle sharp edges of binary bin e…
LiekeVanSon Aug 11, 2025
3025992
MALTSEV and Piersanti fixes
Aug 18, 2025
c179069
Update GiantBranch.cpp - formatting
jeffriley Aug 18, 2025
887c20d
Update WhiteDwarfs.cpp minor formatting
jeffriley Aug 18, 2025
bdef735
Merge pull request #1422 from TeamCOMPAS/Matlab
ilyamandel Aug 18, 2025
532d6f2
some minor changes to ci syntax
avivajpeyi Aug 19, 2025
42b58b1
remove matrix
avivajpeyi Aug 19, 2025
597e89b
remove matrix in steps
avivajpeyi Aug 19, 2025
eba8ca3
attempt at fixing commenter
avivajpeyi Aug 19, 2025
44d0562
Merge pull request #1426 from TeamCOMPAS/ci_fix_attempt
jeffriley Aug 19, 2025
1662b87
Modifications to Maltsev prescription (#1423)
reinhold-willcox Aug 19, 2025
80fee92
Klencki+ 2025 AM loss prescription (#1425)
reinhold-willcox Aug 19, 2025
f0ab925
fix: removing redundant makefile.docker, streamline makefile (#1416)
avivajpeyi Aug 20, 2025
806c263
add: github image deployment (#1418)
avivajpeyi Aug 20, 2025
92cf4e6
fix: fix buildpath
avivajpeyi Aug 20, 2025
a7eed61
docker image ubuntu:18.04 -> ubuntu:22.04 (#1429)
avivajpeyi Aug 20, 2025
fe1e5ff
Merge pull request #1430 from TeamCOMPAS/fix_compas_build_path
jeffriley Aug 20, 2025
30e0328
Corrected calculations for Hurley A(n) and B(n) coefficients (see Hur…
jeffriley Aug 20, 2025
bab97ed
Corrected calculations for Hurley A(n) and B(n) coefficients (see Hur…
jeffriley Aug 20, 2025
4941c41
Merge pull request #1431 from TeamCOMPAS/coeffs
ilyamandel Aug 20, 2025
8578b92
Defect repairs
jeffriley Aug 21, 2025
0809c37
Fix changelog comments
jeffriley Aug 21, 2025
68f6ec3
Additional minor fixes
jeffriley Aug 21, 2025
4c5ad6b
Correct version this time...
jeffriley Aug 21, 2025
d224356
Merge pull request #1432 from TeamCOMPAS/minor-fix
jeffriley Aug 23, 2025
6557a80
First implementation of HAMSTARS mass transfer efficiency
Sep 2, 2025
d3790b5
Corrected errors in combining OB and WR winds in CH::CalculateMassLos…
Sep 9, 2025
326930c
Typo fixes
Sep 9, 2025
0192277
Merge pull request #1433 from TeamCOMPAS/Hamstars
ilyamandel Sep 10, 2025
428dc2d
Use compas docker image to avoid linux installs on ci (#1428)
avivajpeyi Sep 11, 2025
4be6cf0
Added COMPAS paper 2 ref
Sep 24, 2025
be9ca2a
Bibliography updates
Sep 25, 2025
17a86e4
Renamed MS core prescription option
brcekadam Oct 23, 2025
c780a50
Merge pull request #1436 from brcekadam/rename_MS_core_option
ilyamandel Oct 24, 2025
a932eef
USSN simple tweak
Oct 24, 2025
ac979fd
Clean
Oct 24, 2025
3661fa9
Partial commit
Oct 26, 2025
e721e90
Small tweaks
Oct 26, 2025
ada32c7
Updated rotational velocity solver to use boost root finder
Oct 26, 2025
21b1e07
Docs update
Oct 26, 2025
5790d01
Cleaning
Oct 26, 2025
fabf40f
Doc typo fix
Oct 26, 2025
00ab7c2
Update BaseStar.cpp - fix comment
jeffriley Oct 26, 2025
73a4281
Update whats-new.rst - fix typo
jeffriley Oct 26, 2025
5427634
Merge pull request #1435 from TeamCOMPAS/docs
jeffriley Oct 26, 2025
fdff67f
Merge pull request #1437 from TeamCOMPAS/USSN
ilyamandel Oct 26, 2025
b3eab7c
Defect repairs:
jeffriley Oct 27, 2025
64cb1d7
homogenise capitalisation of mandel-muller
Oct 27, 2025
e47dcad
Merge pull request #1438 from TeamCOMPAS/minor-repairs
jeffriley Oct 27, 2025
412256e
fix: add extra flags based on clang and some additional flags
avivajpeyi Oct 28, 2025
417c8c8
forget about differnt clang versions -- lets just assume we need only…
avivajpeyi Oct 28, 2025
d95ea70
forget about differnt clang versions -- lets just assume we need only…
avivajpeyi Oct 28, 2025
8cdd114
remove comment
avivajpeyi Oct 28, 2025
88d4832
Simplify warning suppressions in Makefile
avivajpeyi Oct 28, 2025
c18a089
Merge pull request #1439 from TeamCOMPAS/fix_buid_warnings
jeffriley Oct 28, 2025
e6b18ed
bug fixes, change of default value
brcekadam Dec 4, 2025
562b0c2
Apply mass loss scaling only to CHE
brcekadam Dec 9, 2025
c80ef28
Merge pull request #1445 from brcekadam/bug_fixes
ilyamandel Dec 9, 2025
baed521
Fix to kick direction bug
Dec 15, 2025
266dc47
Merge pull request #1447 from TeamCOMPAS/BugFix
jeffriley Dec 16, 2025
2d64b1a
starting to add WDWD mergers in CI
melanie-santiago26 Jan 22, 2025
2a8082f
more changes to FCI and ClassCOMPAS
melanie-santiago26 Jan 22, 2025
e856195
fixed redhsift and rates to match maxz
melanie-santiago26 Jan 23, 2025
bab93b3
making the binary fraction mass dependent
melanie-santiago26 Jan 23, 2025
c756e2e
changing fbin to be mass-dependent
melanie-santiago26 Jan 23, 2025
8ef0149
updating binary fraction calculation
melanie-santiago26 Feb 26, 2025
8237939
changed the analytical function for star forming mass per binary
melanie-santiago26 Apr 7, 2025
8344454
changed assert to reflect fbin changing with mass
melanie-santiago26 Apr 7, 2025
3d2bddb
Allowed the argument f_bin to be None
melanie-santiago26 Apr 7, 2025
5ab15a5
fixing inconsistent naming BBH, and adding NSWD, WDBH options
LiekeVanSon Apr 22, 2025
6708a6e
fix typo in arg parser help
LiekeVanSon Apr 22, 2025
17bd64d
fixed the commented out imports and few typos
LiekeVanSon Apr 22, 2025
d154a02
Added chekcs for empty DCO, or no systems left after masking
LiekeVanSon Apr 22, 2025
a110bc9
added dco_type warning to compute_snr_and_detection_grids
LiekeVanSon Apr 22, 2025
3fd136b
don't use totalMassEvolvedPerZ in star_forming_mass_per_bin, this is …
LiekeVanSon Aug 8, 2025
cd8023b
cleaned up some print statements
LiekeVanSon Aug 8, 2025
841070c
it matters what m_min1 is?
LiekeVanSon Aug 9, 2025
4aabb40
move test values to separate so generate_mock_bbh_population_file is …
LiekeVanSon Aug 11, 2025
c5cb2b7
enabled the get_COMPAS_fraction to handle sharp edges of binary bin e…
LiekeVanSon Aug 11, 2025
51fbde5
debugging MC sampler and fbin variable analytic
LiekeVanSon Dec 29, 2025
ecfbdb8
debugging
LiekeVanSon Dec 30, 2025
fe82a30
debugging
LiekeVanSon Dec 30, 2025
79ce13c
quick fix bug in analytic function
LiekeVanSon Dec 30, 2025
1f057a9
Fixed analytical derivation to handle variable fbin values
LiekeVanSon Jan 3, 2026
708d065
added some comments and fixed small error in integrand_compas in get_…
LiekeVanSon Jan 5, 2026
bd26fde
testing different values
LiekeVanSon Jan 5, 2026
4ea8b9e
Merge remote-tracking branch 'melanie/cosmic_integration_edits' into …
LiekeVanSon Jan 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
135 changes: 98 additions & 37 deletions .github/workflows/compas-compile-ci.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
name: COMPAS compile test
'on':
workflow_dispatch: null

on:
workflow_dispatch:
pull_request:
branches:
- dev
Expand All @@ -12,7 +13,7 @@ name: COMPAS compile test
push:
branches:
- dev
-

# Ensures only the latest workflow run for the same branch is active, canceling any in-progress runs.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand All @@ -25,71 +26,131 @@ jobs:
ARTIFACT_PATH: py_tests/test_artifacts

name: Build COMPAS
runs-on: '${{ matrix.os}}'
container: '${{matrix.container}}'
strategy:
fail-fast: false
matrix:
os:
- ubuntu-22.04
runs-on: ubuntu-22.04
container: teamcompas/compas:latest
# TODO: Switch to GHCR when package is made public
# container: ghcr.io/teamcompas/compas:latest

steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.9'
cache: pip
cache-dependency-path: setup.py
# - name: Install TeXLive
# uses: teatimeguest/setup-texlive-action@v3.3.4
- name: Install dependencies on ubuntu
if: 'startsWith(matrix.os, ''ubuntu-2'')'
run: |
cd misc/cicd-scripts
chmod 755 linux-dependencies
./linux-dependencies
- name: Build Compas
- name: Checkout repository
uses: actions/checkout@v4

- name: Build COMPAS from source
run: |
cd src && make -j $(nproc) -f Makefile
echo "Building COMPAS from source..."
cd src
make clean 2>/dev/null || echo 'No existing build to clean'
make -j $(nproc) -f Makefile
./COMPAS -v
- name: Install python utils
echo "COMPAS build completed successfully!"

- name: Install Python dependencies
run: |
pip install --upgrade pip
echo "Installing Python dependencies..."
python3 -m pip install --upgrade pip
pip install -e .[dev]
echo "Python dependencies installed!"

- name: Run example COMPAS job
run: |
echo "Running example COMPAS job..."
export COMPAS_EXECUTABLE_PATH=${GITHUB_WORKSPACE}/src/COMPAS
cd ${GITHUB_WORKSPACE}/py_tests/test_data/
chmod 755 run.sh
echo "Contents of run.sh:"
cat run.sh
./run.sh
- name: Run pytests
echo "Example job completed!"

- name: Run pytest suite
run: |
echo "Running pytest suite..."
cd ${GITHUB_WORKSPACE}
export COMPAS_ROOT_DIR=${GITHUB_WORKSPACE}
jupyter-kernelspec list

if command -v jupyter-kernelspec &> /dev/null; then
echo "Available Jupyter kernels:"
jupyter-kernelspec list
fi

pytest --cov=compas_python_utils/ py_tests/ -m 'not webtest'
pytest --cov=compas_python_utils/ --cov-append py_tests/ -m webtest
ls py_tests/test_artifacts

echo "Test artifacts:"
ls py_tests/test_artifacts/ 2>/dev/null || echo "No test artifacts found"

coverage html
coverage-badge -o coverage_badge.svg -f
echo "All tests completed successfully!"

- name: Archive code coverage results
uses: actions/upload-artifact@v4
with:
name: code-coverage
path: |
htmlcov/
coverage_badge.svg

- name: Archive COMPAS detailed-evolution plot
id: upload
uses: actions/upload-artifact@v4
with:
name: '${{ env.ARTIFACT_NAME }}'
path: '${{ env.ARTIFACT_PATH }}/${{ env.ARTIFACT_NAME }}'
name: evolution-plot-${{ github.run_number }}
path: ${{ env.ARTIFACT_PATH }}/${{ env.ARTIFACT_NAME }}
if-no-files-found: error

- name: Test Summary
run: |
echo "### Test Results" >> $GITHUB_STEP_SUMMARY
echo "- Compas Build: Success" >> $GITHUB_STEP_SUMMARY
echo "- Python Utils Installation: Success" >> $GITHUB_STEP_SUMMARY
echo "### COMPAS CI Results" >> $GITHUB_STEP_SUMMARY
echo "- COMPAS Build: Success" >> $GITHUB_STEP_SUMMARY
echo "- Python Dependencies: Success" >> $GITHUB_STEP_SUMMARY
echo "- Example COMPAS Job: Success" >> $GITHUB_STEP_SUMMARY
echo "- Pytest Execution: Success" >> $GITHUB_STEP_SUMMARY
echo "- Pytest Suite: Success" >> $GITHUB_STEP_SUMMARY

comment-with-plot:
name: Comment PR with Evolution Plot
runs-on: ubuntu-22.04
container: docker://ghcr.io/iterative/cml:0-dvc2-base1
needs: compas
if: github.event_name == 'pull_request'

env:
ARTIFACT_NAME: detailedEvolutionPlot.png

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Download evolution plot
uses: actions/download-artifact@v4
with:
name: evolution-plot-${{ github.run_number }}

- name: Create report with evolution plot
env:
REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
echo "## ✅ COMPAS Build Successful!" >> report.md
echo "" >> report.md
echo "| Item | Value |" >> report.md
echo "|------|-------|" >> report.md
echo "| **Commit** | [\`$(echo $GITHUB_SHA | cut -c1-7)\`](${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/commit/${GITHUB_SHA}) |" >> report.md
echo "| **Logs** | [View workflow](${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}) |" >> report.md
echo "" >> report.md

if [ -f "${{ env.ARTIFACT_NAME }}" ]; then
echo "### Detailed Evolution Plot" >> report.md
echo "<details><summary>Click to view evolution plot</summary>" >> report.md
echo "" >> report.md
echo "![](./${{ env.ARTIFACT_NAME }})" >> report.md
echo "</details>" >> report.md
else
echo "### ⚠️ Evolution plot not found" >> report.md
fi

echo "" >> report.md
echo "---" >> report.md
echo "<sub>Generated by COMPAS CI </sub>" >> report.md

# Post the report using CML
cml comment create report.md
26 changes: 22 additions & 4 deletions .github/workflows/dockerhub-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@ on:
branches: [ dev ]
workflow_dispatch: null

# Add permissions for the built-in GITHUB_TOKEN
permissions:
contents: read
packages: write

# Ensures only the latest workflow run for the same branch is active, canceling any in-progress runs.
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand All @@ -23,11 +28,23 @@ jobs:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Get release version
run: echo "COMPAS_VERSION=$(sed -n '/const std::string VERSION_STRING/,/^$/p' ./src/changelog.h | sed 's/.*"\(.*\)"[^"]*$/\1/')" >> $GITHUB_ENV

- name: Print version
run: echo $COMPAS_VERSION
- name: Set lowercase repository name
run: echo "REPO_LC=${GITHUB_REPOSITORY,,}" >> $GITHUB_ENV

- name: Print version and repo
run: |
echo "Version: $COMPAS_VERSION"
echo "Lowercase repo: $REPO_LC"

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
Expand All @@ -40,6 +57,7 @@ jobs:
tags: |
teamcompas/compas:${{ env.COMPAS_VERSION }}
teamcompas/compas:latest
ghcr.io/${{ env.REPO_LC }}:${{ env.COMPAS_VERSION }}
ghcr.io/${{ env.REPO_LC }}:latest
cache-from: type=gha
cache-to: type=gha,mode=max

cache-to: type=gha,mode=max
75 changes: 0 additions & 75 deletions .github/workflows/pr_artifact_url_commenter.yml

This file was deleted.

17 changes: 10 additions & 7 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,19 +1,22 @@
FROM ubuntu:18.04
FROM ubuntu:22.04

WORKDIR /app/COMPAS

# Prevent interactive prompts during package installation
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y \
g++ \
libhdf5-serial-dev \
libboost-all-dev \
libgsl-dev \
python3 \
python3-pip \
zip
zip \
&& rm -rf /var/lib/apt/lists/*

# RUN pip install numpy awscli
RUN pip3 install numpy
RUN pip3 install pyyaml
# Install Python packages
RUN pip3 install numpy pyyaml

# Copy only the source required to compile COMPAS
COPY src/ src/
Expand All @@ -23,7 +26,7 @@ RUN mkdir obj bin logs
ENV COMPAS_ROOT_DIR /app/COMPAS

# Compile COMPAS
RUN cd src && make -f Makefile.docker -j $(nproc)
RUN cd src && make DOCKER_BUILD=1 -j $(nproc)

# Run COMPAS
# CMD [ "python", "src/pythonSubmitDefault.py" ]
# CMD [ "python", "src/pythonSubmitDefault.py" ]
Loading