Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
93 commits
Select commit Hold shift + click to select a range
8790aca
work in progress on pvanim
olastrz Nov 6, 2024
70c0523
Vtk exporter fix to save more than one product
olastrz Nov 25, 2024
1f07237
Merge branch 'main' into vtk_exporter_fix
slayoo Dec 7, 2024
619772d
add a (hacky) unit test that fails without the adeed .copy()
slayoo Dec 7, 2024
13719f2
address NumPy deprecation
slayoo Dec 8, 2024
d887327
Merge branch 'open-atmos:main' into vtk_exporter_fix
olastrz Jan 9, 2025
0cfe5c5
Add files via upload
olastrz Jan 9, 2025
53c0329
Update finalanimation.py
olastrz Jan 10, 2025
32b1de9
Add files via upload
olastrz Jan 10, 2025
46babc3
Full text description of arrows update
olastrz Jan 11, 2025
cd60847
exclude paraview scripts from pdoc scan
olastrz Jan 13, 2025
f32763b
one global var less
olastrz Jan 13, 2025
a49a47b
pre-commit changes
olastrz Jan 13, 2025
4e9868e
change from import * to import as pvs
olastrz Jan 13, 2025
24ab252
pvpython script clean up and command line argument handling
olastrz Mar 6, 2025
9a3902c
Merge pull request #1 from olastrz/pvanim
olastrz Mar 6, 2025
714dfbc
Merge branch 'main' into vtk_exporter_fix
olastrz Mar 6, 2025
8513493
Delete examples/PySDM_examples/utils/finalanimation.py
olastrz Mar 6, 2025
a524b1a
Notebook Paraview scrypt in Paraview_hello_world_how_to with executio…
olastrz Mar 13, 2025
a1d0be5
Color change of axis description
olastrz Mar 13, 2025
82dd02d
Changes due to file rename
olastrz Mar 13, 2025
208f4d5
Precommit fix
olastrz Mar 13, 2025
beae4d9
Merge remote-tracking branch 'origin/vtk_exporter_fix' into HEAD
olastrz Mar 13, 2025
ff2892a
Uploading paraview animation in tests.yml
olastrz Mar 13, 2025
8294f27
Tentative fix for non-unique cell id error
olastrz Mar 19, 2025
3067665
Merge branch 'main' into vtk_exporter_fix
olastrz Mar 19, 2025
840e2b4
pvanim.py script now checks if ran with pvpython
olastrz Mar 20, 2025
6ad58a1
Merge branch 'main' into vtk_exporter_fix
olastrz Mar 20, 2025
e80c11d
Black formatter compliance
olastrz Mar 20, 2025
a848f74
Fix for tests to run on pvpython
olastrz Mar 21, 2025
35ff19b
Update test to not have conflict with pvpython
olastrz Mar 21, 2025
ca71dae
add try-except block to pvpython call
olastrz Mar 21, 2025
0fce098
Code fix up to standard(black)
olastrz Mar 21, 2025
61594df
address pylint hints
slayoo Mar 21, 2025
24649af
temporarily limit CI jobs to pvpython-related ones
olastrz Mar 21, 2025
0e4d843
further focus CI on paraview codeo (temporarily)
olastrz Mar 21, 2025
5e25879
disable test_completeness
olastrz Mar 21, 2025
3b1543f
Tentative fix for error in subprocess.run call
olastrz Mar 23, 2025
8fde434
Tentative fix for error in subprocess.run call
olastrz Mar 23, 2025
15c9f3c
Tentative fix for error in subprocess.run call
olastrz Mar 23, 2025
aad9d39
shh log in
olastrz Mar 24, 2025
bb7e969
Update tests.yml
olastrz Mar 24, 2025
80c5af0
path to arguments edit
olastrz Mar 24, 2025
96959cd
Add imports
olastrz Mar 24, 2025
124d664
edit paraview hello world error output
olastrz Mar 24, 2025
c1c11f3
output location option
olastrz Mar 24, 2025
d21cb97
pass output folder location
olastrz Mar 24, 2025
71186df
prepare files for upload also if not merging
olastrz Mar 24, 2025
13173b9
fix conflict
slayoo Apr 4, 2025
f8aec75
add artifact upload
slayoo Apr 4, 2025
0833716
Update pvanim.py with new saving options
olastrz Apr 6, 2025
46b7c37
Debugging tests.yml
olastrz Apr 9, 2025
666b4c9
Fix artifact upload, tip realese and other
olastrz Apr 9, 2025
b5d4bca
Update to tests.yml
olastrz Apr 9, 2025
bf4b656
Pylint update
olastrz Apr 9, 2025
e4a47fc
Pre-commit update
olastrz Apr 9, 2025
99aea85
Update to artifact paths
olastrz Apr 11, 2025
755541a
Fix to artifact path
olastrz Apr 11, 2025
0fd3832
Merge branch 'main' into vtk_exporter_fix
olastrz Apr 11, 2025
bec55ed
cleanup upload code + add debug dir listings
slayoo Apr 19, 2025
9646a03
missing "|"
slayoo Apr 19, 2025
768a27f
fix paths
slayoo Apr 20, 2025
231ccf5
debug ls
slayoo Apr 20, 2025
ea39d65
enable debug ssh access via tmate
slayoo Apr 20, 2025
a12a27b
add --force-offscreen-rendering
slayoo Apr 25, 2025
411de60
Merge branch 'main' into vtk_exporter_fix
slayoo Apr 26, 2025
14b6897
generate .ogv, and convert to .mp4 on CI
slayoo Apr 29, 2025
ff5b9e1
try other path spec
slayoo May 1, 2025
37bd19d
add printing default values to help; add print of pvanim help in note…
AgnieszkaZaba May 9, 2025
f5a3a27
change platform from ubuntu to macos for paraview animations on CI
AgnieszkaZaba May 9, 2025
b6d2bfa
elaborate in comment
AgnieszkaZaba May 9, 2025
8f45d44
remove output with warning
AgnieszkaZaba May 9, 2025
b9bf652
fix macos version specifcation for animations
slayoo May 9, 2025
94d39ee
comment out tmate, add installation of ffmpeg on macos
slayoo May 10, 2025
b3c78ae
make paths Ubuntu and macOS compatible
slayoo May 10, 2025
a34e02b
introduce common opts for pytest, use /tmp as tempdir on macos-13, te…
slayoo May 11, 2025
105079c
Merge branch 'main' into vtk_exporter_fix
slayoo May 11, 2025
013cacb
limit timeout hanling to tests as it was before
slayoo May 11, 2025
28a92e5
temporarily skip unit tests
slayoo May 11, 2025
c1967f6
temporarily disable testsuite-completeness check
slayoo May 11, 2025
349fd9a
path fix (so that pytest can remove the basetemp dir)
slayoo May 11, 2025
61f4560
fix paths
slayoo May 11, 2025
d4bfc58
upload pdf and mp4 for both paraview-ok platforms
slayoo May 12, 2025
125b862
re-enable Linux CI jobs
slayoo May 13, 2025
8e80e0a
fix home|Users path
slayoo May 13, 2025
744bd66
path fixes
slayoo May 13, 2025
fc15987
change anim file name
slayoo May 13, 2025
b976d37
replace embedded wiki-stored .gif with the tip-release mp4 file
slayoo May 13, 2025
f4dac6f
update pyevtk to 1.6.0 version
AgnieszkaZaba May 19, 2025
3156531
try with tilde
slayoo May 19, 2025
555d51a
revert temporary test disabling
slayoo May 19, 2025
d2cf4a4
fix indentation
slayoo May 19, 2025
3bac537
fix indentation again
slayoo May 19, 2025
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
4 changes: 4 additions & 0 deletions .github/workflows/pdoc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ jobs:
- uses: actions/[email protected]
with:
python-version: "3.12"

- name: exclude pvpython scripts
run: rm examples/PySDM_examples/utils/pvanim.py

- run: pip install pdoc nbformat gitpython
- run: pip install -e .
- run: pip install -e examples
Expand Down
64 changes: 50 additions & 14 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ defaults:
run:
shell: bash

env:
# arbitrarily selected runs for generating animation
anim_python-version: '3.12'
anim_test-suite: 'multi-process_a'
# common options for pytest
pytest_options: "--durations=10 -v -s -We -p no:unraisableexception"

on:
push:
branches: [ main ]
Expand Down Expand Up @@ -67,7 +74,7 @@ jobs:
- run: pip install -r tests/devops_tests/requirements.txt
- env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: pytest --durations=10 -v -s -We -p no:unraisableexception -k "not test_run_notebooks" tests/devops_tests
run: pytest ${{ env.pytest_options }} -k "not test_run_notebooks" tests/devops_tests

zenodo_json:
runs-on: ubuntu-24.04
Expand Down Expand Up @@ -96,7 +103,7 @@ jobs:
pip install -e .[tests]
pip install -e ./examples
pip install pytest-cov
pytest --durations=10 -We tests/unit_tests --cov-report=xml --cov=PySDM
pytest ${{ env.pytest_options }} tests/unit_tests --cov-report=xml --cov=PySDM
- uses: codecov/[email protected]
with:
fail_ci_if_error: true
Expand Down Expand Up @@ -164,12 +171,7 @@ jobs:
NUMBA_OPT: 1
run: |
shopt -s extglob
pytest --durations=10 --timeout=900 --timeout_method=thread -p no:unraisableexception -We tests/${{ matrix.test-suite }}

# - if: ${{ failure() }}
# uses: mxschmitt/action-tmate@v3
# with:
# limit-access-to-actor: true
pytest ${{ env.pytest_options }} --timeout=900 --timeout_method=thread tests/${{ matrix.test-suite }}

examples-setup:
needs: [nojit_and_codecov]
Expand Down Expand Up @@ -245,7 +247,7 @@ jobs:
- if: startsWith(matrix.platform, 'ubuntu-') && (matrix.test-suite == 'multi-process_a' || matrix.test-suite == 'multi-process_b')
run: |
sudo apt-get update
sudo apt-get install libegl1 libopengl0 ghostscript
sudo apt-get install libegl1 libopengl0 ghostscript ffmpeg
wget -nv "https://paraview.org/paraview-downloads/download.php?submit=Download&version=v5.13&type=binary&os=Linux&downloadFile=ParaView-5.13.1-egl-MPI-Linux-Python3.10-x86_64.tar.gz" -O paraview.tar.gz
tar xzf paraview.tar.gz
echo `pwd`/`dirname ParaView*/bin/pvpython` >> $GITHUB_PATH
Expand All @@ -254,7 +256,7 @@ jobs:
run: |
brew install --cask paraview
echo `dirname /Applications/ParaView-*.app/Contents/bin/pvpython | head -1` >> $GITHUB_PATH
brew install ghostscript
brew install ghostscript ffmpeg

- if: startsWith(matrix.platform, 'windows-') && (matrix.test-suite == 'multi-process_a' || matrix.test-suite == 'multi-process_b')
run: |
Expand All @@ -268,11 +270,45 @@ jobs:
pvpython -c "from paraview import simple"

- run: |
python -m pytest --durations=10 -v -p no:unraisableexception -We tests/examples_tests/test_tests_completeness.py
python -m pytest ${{ env.pytest_options }} tests/examples_tests/test_tests_completeness.py

# TODO #1207
# TODO #1207
- if: startsWith(matrix.platform, 'macos-13')
run: python -m pytest --durations=10 -v -p no:unraisableexception -We tests/examples_tests/test_run* -k "not Rozanski_and_Sonntag_1982" --suite ${{ matrix.test-suite }}
run: python -m pytest --basetemp=/tmp/pytest ${{ env.pytest_options }} tests/examples_tests/test_run* -k "not Rozanski_and_Sonntag_1982" --suite ${{ matrix.test-suite }}

- if: ( ! startsWith(matrix.platform, 'macos-13') )
run: python -m pytest --durations=10 -v -p no:unraisableexception -We tests/examples_tests/test_run* --suite ${{ matrix.test-suite }}
run: python -m pytest ${{ env.pytest_options }} --basetemp=/tmp/pytest tests/examples_tests/test_run* --suite ${{ matrix.test-suite }}

- if: ( ! startsWith(matrix.platform, 'windows-') ) && matrix.test-suite == env.anim_test-suite && matrix.python-version == env.anim_python-version
run: |
set -x
mkdir -p $HOME/work/_temp/_github_home/figures
rm /tmp/pytest/test_run_notebooks_*current
ls /tmp/pytest/test_run_notebooks_*/
ls /tmp/pytest/test_run_notebooks_*/output/
ffmpeg -i /tmp/pytest/test_run_notebooks_*/output/docs_intro_animation.ogv $HOME/work/_temp/_github_home/figures/docs_intro_animation_${{ matrix.platform }}.mp4
mv /tmp/pytest/test_run_notebooks_*/output/last_animation_frame.pdf $HOME/work/_temp/_github_home/figures/last_animation_frame_${{ matrix.platform }}.pdf
ls $HOME/work/_temp/_github_home/figures

- name: animation movie upload
if: ( ! startsWith(matrix.platform, 'windows-') ) && matrix.test-suite == env.anim_test-suite && matrix.python-version == env.anim_python-version
uses: actions/upload-artifact@v4
with:
name: animation-movie
if-no-files-found: error
path: ~/work/_temp/_github_home/figures/*.mp4

- name: animation frame upload
if: ( ! startsWith(matrix.platform, 'windows-') ) && matrix.test-suite == env.anim_test-suite && matrix.python-version == env.anim_python-version
uses: actions/upload-artifact@v4
with:
name: animation-frame
if-no-files-found: error
path: ~/work/_temp/_github_home/figures/*.pdf

- name: tip release upload
if: github.ref == 'refs/heads/main' && ( ! startsWith(matrix.platform, 'windows-') ) && matrix.test-suite == env.anim_test-suite && matrix.python-version == env.anim_python-version
uses: eine/tip@master
with:
token: ${{ secrets.GITHUB_TOKEN }}
files: /*(home|Users)/runner/work/_temp/_github_home/figures/*.mp4
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
files: '.py'
exclude: '.git'
default_stages: [commit]
default_stages: [pre-commit]

repos:
- repo: https://github.com/psf/black
Expand Down
2 changes: 1 addition & 1 deletion docs/templates/index.html.jinja2
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
<h2>What is PySDM?</h2>
<p>
<video controls style="float:right; width:40%">
<source src="https://github.com/open-atmos/PySDM/wiki/files/animation_save.mp4" type="video/mp4">
<source src="https://github.com/open-atmos/PySDM/releases/download/tip/docs_intro_animation_ubuntu-24.04.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
PySDM is a package for simulating the <mark>dynamics of population of particles undergoing diffusional and collisional growth (and breakage)</mark>.
Expand Down
Loading
Loading