Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
1eb0985
chore: bump version to 1.2.10.dev0 (#155)
jdhughes-dev Feb 12, 2024
71427c3
update(mf6): v6.4.4 (#157)
jdhughes-dev Feb 13, 2024
3ab2ddc
feat(cli): add --double option to make-program (#156)
jdhughes-dev Feb 14, 2024
7c3f779
fix(_usgs_src_update.py): fix function lookup in _build_replace() (#158)
wpbonelli Feb 14, 2024
e229973
feat(zip): allow appending to an existing zip file using --keep (#159)
jdhughes-dev Feb 14, 2024
a913477
readme: update readme and installation.md (#160)
jdhughes-dev Feb 15, 2024
0685bc8
refactor(pymake): limit zip file targets to new targets with --keep (…
jdhughes-dev Feb 15, 2024
22756c5
feat(double): restore double switch in usgsprograms.txt (#162)
jdhughes-dev Feb 16, 2024
5f1064a
feat(code.json): add features to control code.json output (#163)
jdhughes-dev Feb 16, 2024
4b1563d
feat(export_json): add appdir kwarg (#164)
jdhughes-dev Feb 17, 2024
77a159e
chore(dependencies): restrict yanked pytest version 8.1.0 (#165)
wpbonelli Mar 8, 2024
b8c5588
chore(formatting): switch to ruff (#166)
wpbonelli Apr 1, 2024
5a727a1
chore(format): update rules, split long comment lines (#167)
wpbonelli Apr 4, 2024
44d3d7a
ci(release): add automated release workflow (#168)
wpbonelli May 3, 2024
25e98ee
build(deps): bump actions/checkout from 3 to 4 (#169)
dependabot[bot] May 6, 2024
51313b0
build(deps): bump actions/setup-python from 4 to 5 (#170)
dependabot[bot] May 6, 2024
a0c5388
fix(mac/gcc/g++): use classic linker with gnu compilers on c/c++ file…
wpbonelli May 26, 2024
200cf7d
build(deps): bump dawidd6/action-download-artifact from 2 to 5 (#175)
dependabot[bot] Jun 4, 2024
4460311
update(mf6): update mf6 version (#174)
jdhughes-dev Jun 9, 2024
3948fab
fix(gsflow): remove gsflow as a possible target (#176)
jdhughes-dev Jun 9, 2024
9251505
ci: add pixi to CI workflow (#177)
jdhughes-dev Jun 11, 2024
5e9e1b9
update(mfusg): update gsi mfusg version (#178)
jdhughes-dev Jun 11, 2024
2032150
build(deps): bump dawidd6/action-download-artifact from 5 to 6 (#179)
dependabot[bot] Jun 12, 2024
b70dce7
ci(triggers): add concurrency groups to prevent duplicate runs (#180)
wpbonelli Jun 12, 2024
b79af98
ci(macos): use xcode clt 14.3.1 for intel c++ compiler compatibility …
wpbonelli Jun 12, 2024
6e8dd7b
ci: update workflows (#183)
jdhughes-dev Jun 16, 2024
76d3003
Version 1.2.10 (#185)
jdhughes-dev Jun 17, 2024
eb5ed7c
Update release.yml
jdhughes-dev Jun 17, 2024
c41d601
ci(release): set version to 1.2.10
github-actions[bot] Jun 17, 2024
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
29 changes: 0 additions & 29 deletions .flake8

This file was deleted.

192 changes: 192 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,192 @@
name: pymake continuous integration

on:
schedule:
- cron: '0 7 * * *' # run at 7 AM UTC every day
push:
paths-ignore:
- 'README.md'
- 'docs/*.md'
pull_request:
branches:
- master
- develop
paths-ignore:
- 'README.md'
- 'docs/*.md'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:

pymake-os-compiler:
name: pymake CI on different OSs with gcc and intel-classic
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
# test latest gcc and python
- {os: ubuntu-latest, FC: gcc, FC_V: 13}
- {os: macos-latest, FC: gcc, FC_V: 13}
- {os: windows-latest, FC: gcc, FC_V: 13}
# test latest python and intel-classic
- {os: ubuntu-latest, FC: intel-classic, FC_V: 2021.7}
- {os: macos-13, FC: intel-classic, FC_V: 2021.7}
- {os: windows-2019, FC: intel-classic, FC_V: 2021.7}
# test latest python and previous gcc
- {os: ubuntu-latest, FC: gcc, FC_V: 12}
- {os: ubuntu-latest, FC: gcc, FC_V: 11}
defaults:
run:
shell: bash

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

- uses: maxim-lobanov/setup-xcode@v1
if: ${{ (runner.os == 'macOS') && (matrix.FC == 'intel-classic') }}
with:
xcode-version: "14.3.1"

- name: Setup Graphviz on Linux
if: runner.os == 'Linux'
uses: ts-graphviz/setup-graphviz@v2

- name: Setup pixi
uses: prefix-dev/setup-pixi@v0.8.1
with:
pixi-version: v0.19.1
manifest-path: "pixi.toml"

- name: pixi post-install
working-directory: pymake
run: |
pixi run postinstall

- name: Setup ${{ matrix.FC }} ${{ matrix.FC_V }} on ${{ matrix.os }}
uses: fortran-lang/setup-fortran@main
with:
compiler: ${{ matrix.FC }}
version: ${{ matrix.FC_V }}

- name: Download examples for pytest runs
run: |
pixi run download-examples

- name: Install make
if: runner.os == 'Windows'
run: choco install make

- name: test on Linux
if: runner.os == 'Linux'
run: |
pixi run autotest

- name: test on MacOS
if: runner.os == 'macOS'
run: |
pixi run autotest-base

- name: test on Windows
if: runner.os == 'Windows'
shell: pwsh
run: |
pixi run autotest-base

- name: Upload failed test output
if: failure()
uses: actions/upload-artifact@v4
with:
name: failed-${{ matrix.os }}-${{ matrix.FC }}-${{ matrix.FC_V }}
path: ./autotest/.failed

- name: Print coverage report before upload
run: |
pixi run coverage-report

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
file: ./autotest/coverage.xml

pymake-schedule:
name: pymake scheduled CI different OSs with gcc and intel-classic
if: ${{ github.event_name == 'schedule' }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
# test latest gcc and python
- {os: ubuntu-latest, FC: gcc, FC_V: 13}
- {os: macos-latest, FC: gcc, FC_V: 13}
- {os: windows-latest, FC: gcc, FC_V: 13}
# test latest python and intel
- {os: ubuntu-latest, FC: intel-classic, FC_V: 2021.7}
- {os: macos-13, FC: intel-classic, FC_V: 2021.7}
- {os: windows-2019, FC: intel-classic, FC_V: 2021.7}
defaults:
run:
shell: bash

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

- uses: maxim-lobanov/setup-xcode@v1
if: ${{ (runner.os == 'macOS') && (matrix.FC == 'intel-classic') }}
with:
xcode-version: "14.3.1"

- name: Setup Graphviz on Linux
if: runner.os == 'Linux'
uses: ts-graphviz/setup-graphviz@v2

- name: Setup pixi
uses: prefix-dev/setup-pixi@v0.8.1
with:
pixi-version: v0.19.1
manifest-path: "pixi.toml"

- name: pixi post-install
working-directory: pymake
run: |
pixi run postinstall

- name: Setup ${{ matrix.FC }} ${{ matrix.FC_V }} on ${{ matrix.os }}
uses: fortran-lang/setup-fortran@main
with:
compiler: ${{ matrix.FC }}
version: ${{ matrix.FC_V }}

- name: Install make
if: runner.os == 'Windows'
run: choco install make

- name: Run scheduled tests
run: |
pixi run autotest-schedule

- name: Upload failed test output
if: failure()
uses: actions/upload-artifact@v4
with:
name: failed-schedule-${{ matrix.os }}-${{ matrix.FC }}-${{ matrix.FC_V }}
path: ./autotest/.failed

- name: Print coverage report before upload
run: |
pixi run coverage-report

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
file: ./autotest/coverage.xml


80 changes: 0 additions & 80 deletions .github/workflows/main.yml

This file was deleted.

80 changes: 0 additions & 80 deletions .github/workflows/pymake-gcc.yml

This file was deleted.

Loading