simvue 2.5.2__tar.gz → 2.5.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- simvue-2.5.4/.github/ISSUE_TEMPLATE/bug_report.md +34 -0
- simvue-2.5.4/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- simvue-2.5.4/.github/PULL_REQUEST_TEMPLATE/bug_fix.md +24 -0
- simvue-2.5.4/.github/PULL_REQUEST_TEMPLATE/feature.md +23 -0
- simvue-2.5.4/.github/dependabot.yml +18 -0
- simvue-2.5.4/.github/pull_request_template.md +5 -0
- simvue-2.5.4/.github/workflows/citation.yml +27 -0
- simvue-2.5.4/.github/workflows/codeql.yml +84 -0
- simvue-2.5.4/.github/workflows/deploy.yaml +115 -0
- simvue-2.5.4/.github/workflows/examples.yml +168 -0
- simvue-2.5.4/.github/workflows/prek.yml +28 -0
- simvue-2.5.4/.github/workflows/test_client_macos_nightlies.yml +259 -0
- simvue-2.5.4/.github/workflows/test_client_ubuntu.yml +254 -0
- simvue-2.5.4/.github/workflows/test_client_ubuntu_nightlies.yml +262 -0
- simvue-2.5.4/.github/workflows/test_client_windows_nightlies.yml +268 -0
- simvue-2.5.4/.github/workflows/test_multiple_python.yml +307 -0
- simvue-2.5.4/.gitignore +154 -0
- simvue-2.5.4/.gitmodules +3 -0
- simvue-2.5.4/CHANGELOG.md +380 -0
- simvue-2.5.4/CITATION.cff +48 -0
- simvue-2.5.4/CODE_OF_CONDUCT.md +128 -0
- simvue-2.5.4/CONTRIBUTING.md +61 -0
- {simvue-2.5.2 → simvue-2.5.4}/PKG-INFO +35 -37
- simvue-2.5.4/examples/Bluemira/README.md +21 -0
- simvue-2.5.4/examples/Bluemira/geometry_optimisation.py +197 -0
- simvue-2.5.4/examples/Geant4/README.md +41 -0
- simvue-2.5.4/examples/Geant4/geant4_simvue.py +109 -0
- simvue-2.5.4/examples/Geant4/requirements.txt +5 -0
- simvue-2.5.4/examples/Logging/README.md +24 -0
- simvue-2.5.4/examples/Logging/logging-to-simvue.py +27 -0
- simvue-2.5.4/examples/Optuna/README.md +34 -0
- simvue-2.5.4/examples/Optuna/requirements.txt +5 -0
- simvue-2.5.4/examples/Optuna/simvue_optuna_pytorch.py +175 -0
- simvue-2.5.4/examples/PyTorch/README.md +25 -0
- simvue-2.5.4/examples/PyTorch/main.py +270 -0
- simvue-2.5.4/examples/PyTorch/requirements.txt +3 -0
- simvue-2.5.4/examples/README.md +25 -0
- simvue-2.5.4/examples/SU2/README.md +38 -0
- simvue-2.5.4/examples/SU2/SU2.py +155 -0
- simvue-2.5.4/examples/SU2/SU2.sh +9 -0
- simvue-2.5.4/notebooks/README.md +36 -0
- simvue-2.5.4/notebooks/basic_example.ipynb +179 -0
- simvue-2.5.4/notebooks/detailed_example.ipynb +308 -0
- simvue-2.5.4/notebooks/non_python_example.ipynb +214 -0
- simvue-2.5.4/notebooks/temperatures.sh +41 -0
- simvue-2.5.4/poetry.lock +2566 -0
- simvue-2.5.4/prek.toml +73 -0
- {simvue-2.5.2 → simvue-2.5.4}/pyproject.toml +22 -20
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/administrator/__init__.py +1 -3
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/administrator/tenant.py +70 -11
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/administrator/user.py +50 -14
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/alert/__init__.py +1 -3
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/alert/base.py +46 -11
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/alert/events.py +40 -13
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/alert/fetch.py +79 -31
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/alert/metrics.py +65 -17
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/alert/user.py +32 -10
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/artifact/__init__.py +2 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/artifact/base.py +45 -27
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/artifact/fetch.py +96 -29
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/artifact/file.py +40 -7
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/artifact/object.py +37 -8
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/base.py +132 -68
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/events.py +91 -12
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/folder.py +33 -7
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/grids.py +83 -24
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/metrics.py +51 -16
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/run.py +69 -12
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/stats.py +22 -11
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/storage/__init__.py +6 -6
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/storage/base.py +22 -7
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/storage/fetch.py +52 -17
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/storage/file.py +25 -11
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/storage/s3.py +40 -24
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/tag.py +51 -13
- {simvue-2.5.2 → simvue-2.5.4}/simvue/client.py +74 -15
- {simvue-2.5.2 → simvue-2.5.4}/simvue/config/parameters.py +1 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/config/simvue_config_schema.json +15 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/config/user.py +12 -1
- {simvue-2.5.2 → simvue-2.5.4}/simvue/executor.py +12 -10
- {simvue-2.5.2 → simvue-2.5.4}/simvue/run.py +78 -47
- {simvue-2.5.2 → simvue-2.5.4}/simvue/sender/actions.py +4 -0
- simvue-2.5.4/simvue-black.png +0 -0
- simvue-2.5.4/tests/cli/test_sender_command.py +27 -0
- simvue-2.5.4/tests/conftest.py +334 -0
- simvue-2.5.4/tests/example_data/Cargo.lock +11 -0
- simvue-2.5.4/tests/example_data/Cargo.toml +29 -0
- simvue-2.5.4/tests/example_data/Project.toml +19 -0
- simvue-2.5.4/tests/example_data/SU2_inv_ONERAM6.cfg +233 -0
- simvue-2.5.4/tests/example_data/package-lock.json +88 -0
- simvue-2.5.4/tests/example_data/pyproject.toml +11 -0
- simvue-2.5.4/tests/example_data/python_conda/environment.yml +40 -0
- simvue-2.5.4/tests/example_data/python_poetry/poetry.lock +388 -0
- simvue-2.5.4/tests/example_data/python_poetry/pyproject.toml +17 -0
- simvue-2.5.4/tests/example_data/python_uv/pyproject.toml +11 -0
- simvue-2.5.4/tests/example_data/python_uv/uv.lock +180 -0
- simvue-2.5.4/tests/functional/test_client.py +550 -0
- simvue-2.5.4/tests/functional/test_config.py +189 -0
- simvue-2.5.4/tests/functional/test_dispatch.py +308 -0
- simvue-2.5.4/tests/functional/test_executor.py +238 -0
- simvue-2.5.4/tests/functional/test_run_artifact_upload.py +42 -0
- simvue-2.5.4/tests/functional/test_run_class.py +1741 -0
- simvue-2.5.4/tests/functional/test_run_execute_process.py +132 -0
- simvue-2.5.4/tests/functional/test_scenarios.py +172 -0
- simvue-2.5.4/tests/functional/test_utilities.py +85 -0
- simvue-2.5.4/tests/unit/test_conversion_to_dataframe.py +52 -0
- simvue-2.5.4/tests/unit/test_ecoclient.py +98 -0
- simvue-2.5.4/tests/unit/test_event_alert.py +174 -0
- simvue-2.5.4/tests/unit/test_events.py +70 -0
- simvue-2.5.4/tests/unit/test_fetch.py +75 -0
- simvue-2.5.4/tests/unit/test_file_artifact.py +222 -0
- simvue-2.5.4/tests/unit/test_file_storage.py +50 -0
- simvue-2.5.4/tests/unit/test_folder.py +181 -0
- simvue-2.5.4/tests/unit/test_grids.py +192 -0
- simvue-2.5.4/tests/unit/test_matplotlib_figure_mime_type.py +21 -0
- simvue-2.5.4/tests/unit/test_metadata.py +81 -0
- simvue-2.5.4/tests/unit/test_metric_range_alert.py +192 -0
- simvue-2.5.4/tests/unit/test_metric_threshold_alert.py +190 -0
- simvue-2.5.4/tests/unit/test_metrics.py +102 -0
- simvue-2.5.4/tests/unit/test_numpy_array_mime_type.py +13 -0
- simvue-2.5.4/tests/unit/test_numpy_array_serialization.py +15 -0
- simvue-2.5.4/tests/unit/test_object_artifact.py +79 -0
- simvue-2.5.4/tests/unit/test_pandas_dataframe_mimetype.py +21 -0
- simvue-2.5.4/tests/unit/test_pandas_dataframe_serialization.py +22 -0
- simvue-2.5.4/tests/unit/test_pickle_serialization.py +13 -0
- simvue-2.5.4/tests/unit/test_plotly_figure_mime_type.py +29 -0
- simvue-2.5.4/tests/unit/test_pytorch_tensor_mime_type.py +20 -0
- simvue-2.5.4/tests/unit/test_pytorch_tensor_serialization.py +21 -0
- simvue-2.5.4/tests/unit/test_run.py +229 -0
- simvue-2.5.4/tests/unit/test_run_init_folder.py +23 -0
- simvue-2.5.4/tests/unit/test_run_init_tags.py +22 -0
- simvue-2.5.4/tests/unit/test_s3_storage.py +95 -0
- simvue-2.5.4/tests/unit/test_sender.py +194 -0
- simvue-2.5.4/tests/unit/test_stats.py +20 -0
- simvue-2.5.4/tests/unit/test_suppress_errors.py +49 -0
- simvue-2.5.4/tests/unit/test_tag.py +137 -0
- simvue-2.5.4/tests/unit/test_tenant.py +75 -0
- simvue-2.5.4/tests/unit/test_user.py +109 -0
- simvue-2.5.4/tests/unit/test_user_alert.py +223 -0
- simvue-2.5.4/uv.lock +2115 -0
- {simvue-2.5.2 → simvue-2.5.4}/LICENSE +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/README.md +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/__init__.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/__init__.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/__init__.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/objects/filter.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/request.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/api/url.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/bin/__init__.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/bin/sender.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/config/__init__.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/config/files.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/converters.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/dispatch/__init__.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/dispatch/base.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/dispatch/direct.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/dispatch/queued.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/eco/__init__.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/eco/api_client.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/eco/config.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/eco/emissions_monitor.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/exception.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/handler.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/metadata.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/metrics.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/models.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/pynvml.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/sender/__init__.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/sender/base.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/serialization.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/simvue_types.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/system.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/utilities.py +0 -0
- {simvue-2.5.2 → simvue-2.5.4}/simvue/version.py +0 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug report
|
|
3
|
+
about: Create a report to help us improve
|
|
4
|
+
title: ''
|
|
5
|
+
labels: bug
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Description of Bug
|
|
11
|
+
A clear and concise description of what the bug is.
|
|
12
|
+
|
|
13
|
+
## Steps To Reproduce
|
|
14
|
+
Steps to reproduce the behavior:
|
|
15
|
+
1. Go to '...'
|
|
16
|
+
2. Click on '....'
|
|
17
|
+
3. Scroll down to '....'
|
|
18
|
+
4. See error
|
|
19
|
+
|
|
20
|
+
## Expected behavior
|
|
21
|
+
A clear and concise description of what you expected to happen.
|
|
22
|
+
|
|
23
|
+
## Actual Behaviour
|
|
24
|
+
A clear and concise description of what you actually see happen.
|
|
25
|
+
|
|
26
|
+
## Screenshots
|
|
27
|
+
If applicable, add screenshots to help explain your problem.
|
|
28
|
+
|
|
29
|
+
## Setup
|
|
30
|
+
- OS: [e.g. Windows 11]
|
|
31
|
+
- Python version [e.g. v3.13.3]
|
|
32
|
+
|
|
33
|
+
## Additional context
|
|
34
|
+
Add any other context about the problem here.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Feature request
|
|
3
|
+
about: Suggest a new feature or enhancement to add to the Python API
|
|
4
|
+
title: ''
|
|
5
|
+
labels: ''
|
|
6
|
+
assignees: ''
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Problem Statement
|
|
11
|
+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
|
12
|
+
|
|
13
|
+
## Solution
|
|
14
|
+
A clear and concise description of what you want to happen.
|
|
15
|
+
|
|
16
|
+
## Alternatives Considered
|
|
17
|
+
A clear and concise description of any alternative solutions or features you've considered.
|
|
18
|
+
|
|
19
|
+
## Additional Context
|
|
20
|
+
Add any other context or screenshots about the feature request here.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# <Title of Bug Fix>
|
|
2
|
+
|
|
3
|
+
**Issue:** Link to the issue relating to this bug.
|
|
4
|
+
|
|
5
|
+
**Python Version(s) Tested:** Python versions this fix has been verified against.
|
|
6
|
+
|
|
7
|
+
**Operating System(s):** Operating systems this fix has been tested in.
|
|
8
|
+
|
|
9
|
+
## 📝 Summary
|
|
10
|
+
|
|
11
|
+
Please provide a summary of the original bug, and the fix implemented to address it.
|
|
12
|
+
|
|
13
|
+
## 🔍 Diagnosis
|
|
14
|
+
|
|
15
|
+
If applicable, please summarise any information relating to how the bug was identified, and the root causes.
|
|
16
|
+
|
|
17
|
+
## 🔄 Changes
|
|
18
|
+
|
|
19
|
+
Provide any additional detail on the changes applied to address the issue.
|
|
20
|
+
|
|
21
|
+
## ✔️ Checklist
|
|
22
|
+
- [ ] Unit and integration tests passing.
|
|
23
|
+
- [ ] Pre-commit hooks passing.
|
|
24
|
+
- [ ] Quality checks passing.
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# <Feature Title>
|
|
2
|
+
|
|
3
|
+
**Issue:** Link to the issue proposing this feature.
|
|
4
|
+
|
|
5
|
+
**Python Version(s) Tested:** Python versions this feature has been tested on.
|
|
6
|
+
|
|
7
|
+
**Operating System(s):** Operating systems this feature has been tested on.
|
|
8
|
+
|
|
9
|
+
**Documentation PR:** Issue on [Docs repo](https://github.com/simvue-io/docs).
|
|
10
|
+
|
|
11
|
+
## 📝 Summary
|
|
12
|
+
|
|
13
|
+
Please provide a summary of the feature including why it is beneficial to other users.
|
|
14
|
+
|
|
15
|
+
## 🔄 Changes
|
|
16
|
+
|
|
17
|
+
Outline the changes/additions made to implement this feature.
|
|
18
|
+
|
|
19
|
+
## ✔️ Checklist
|
|
20
|
+
- [ ] Unit and integration tests passing.
|
|
21
|
+
- [ ] Pre-commit hooks passing.
|
|
22
|
+
- [ ] Quality checks passing.
|
|
23
|
+
- [ ] Updated the [documentation](https://github.com/simvue-io/docs).
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
version: 2
|
|
2
|
+
updates:
|
|
3
|
+
- package-ecosystem: "pip" # See documentation for possible values
|
|
4
|
+
directory: "/" # Location of package manifests
|
|
5
|
+
schedule:
|
|
6
|
+
interval: "daily"
|
|
7
|
+
time: "00:00"
|
|
8
|
+
reviewers:
|
|
9
|
+
- "kzscisoft"
|
|
10
|
+
commit-message:
|
|
11
|
+
prefix: "pip"
|
|
12
|
+
include: "scope"
|
|
13
|
+
open-pull-requests-limit: 5
|
|
14
|
+
target-branch: "dev"
|
|
15
|
+
ignore:
|
|
16
|
+
- dependency-type: all
|
|
17
|
+
match:
|
|
18
|
+
- "tests/**"
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
name: Citation File Validation
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ "main", "dev", "hotfix/update-ci" ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ "main", "dev", "hotfix/update-ci" ]
|
|
8
|
+
|
|
9
|
+
permissions:
|
|
10
|
+
contents: read
|
|
11
|
+
|
|
12
|
+
concurrency:
|
|
13
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
14
|
+
cancel-in-progress: true
|
|
15
|
+
|
|
16
|
+
jobs:
|
|
17
|
+
build:
|
|
18
|
+
runs-on: ubuntu-latest
|
|
19
|
+
timeout-minutes: 30
|
|
20
|
+
steps:
|
|
21
|
+
- uses: actions/checkout@v5
|
|
22
|
+
- name: Set up Python
|
|
23
|
+
uses: actions/setup-python@v6
|
|
24
|
+
- name: Install Checker
|
|
25
|
+
run: python3 -m pip install cffconvert
|
|
26
|
+
- name: Check Citation File
|
|
27
|
+
run: cffconvert --validate
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# For most projects, this workflow file will not need changing; you simply need
|
|
2
|
+
# to commit it to your repository.
|
|
3
|
+
#
|
|
4
|
+
# You may wish to alter this file to override the set of languages analyzed,
|
|
5
|
+
# or to provide custom queries or build logic.
|
|
6
|
+
#
|
|
7
|
+
# ******** NOTE ********
|
|
8
|
+
# We have attempted to detect the languages in your repository. Please check
|
|
9
|
+
# the `language` matrix defined below to confirm you have the correct set of
|
|
10
|
+
# supported CodeQL languages.
|
|
11
|
+
#
|
|
12
|
+
name: "CodeQL"
|
|
13
|
+
|
|
14
|
+
on:
|
|
15
|
+
push:
|
|
16
|
+
branches: [ "dev", "main" ]
|
|
17
|
+
pull_request:
|
|
18
|
+
branches: [ "dev", "main" ]
|
|
19
|
+
schedule:
|
|
20
|
+
- cron: '35 15 * * 5'
|
|
21
|
+
|
|
22
|
+
jobs:
|
|
23
|
+
analyze:
|
|
24
|
+
name: Analyze
|
|
25
|
+
# Runner size impacts CodeQL analysis time. To learn more, please see:
|
|
26
|
+
# - https://gh.io/recommended-hardware-resources-for-running-codeql
|
|
27
|
+
# - https://gh.io/supported-runners-and-hardware-resources
|
|
28
|
+
# - https://gh.io/using-larger-runners
|
|
29
|
+
# Consider using larger runners for possible analysis time improvements.
|
|
30
|
+
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
|
|
31
|
+
timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }}
|
|
32
|
+
permissions:
|
|
33
|
+
# required for all workflows
|
|
34
|
+
security-events: write
|
|
35
|
+
|
|
36
|
+
# only required for workflows in private repositories
|
|
37
|
+
actions: read
|
|
38
|
+
contents: read
|
|
39
|
+
|
|
40
|
+
strategy:
|
|
41
|
+
fail-fast: false
|
|
42
|
+
matrix:
|
|
43
|
+
language: [ 'python' ]
|
|
44
|
+
# CodeQL supports [ 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'swift' ]
|
|
45
|
+
# Use only 'java-kotlin' to analyze code written in Java, Kotlin or both
|
|
46
|
+
# Use only 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
|
|
47
|
+
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
|
|
48
|
+
|
|
49
|
+
steps:
|
|
50
|
+
- name: Checkout repository
|
|
51
|
+
uses: actions/checkout@v4
|
|
52
|
+
|
|
53
|
+
# Initializes the CodeQL tools for scanning.
|
|
54
|
+
- name: Initialize CodeQL
|
|
55
|
+
uses: github/codeql-action/init@v3
|
|
56
|
+
with:
|
|
57
|
+
languages: ${{ matrix.language }}
|
|
58
|
+
# If you wish to specify custom queries, you can do so here or in a config file.
|
|
59
|
+
# By default, queries listed here will override any specified in a config file.
|
|
60
|
+
# Prefix the list here with "+" to use these queries and those in the config file.
|
|
61
|
+
|
|
62
|
+
# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
|
|
63
|
+
# queries: security-extended,security-and-quality
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, Java, or Swift).
|
|
67
|
+
# If this step fails, then you should remove it and run the build manually (see below)
|
|
68
|
+
- name: Autobuild
|
|
69
|
+
uses: github/codeql-action/autobuild@v3
|
|
70
|
+
|
|
71
|
+
# ℹ️ Command-line programs to run using the OS shell.
|
|
72
|
+
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
|
|
73
|
+
|
|
74
|
+
# If the Autobuild fails above, remove it and uncomment the following three lines.
|
|
75
|
+
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
|
|
76
|
+
|
|
77
|
+
# - run: |
|
|
78
|
+
# echo "Run, Build Application using script"
|
|
79
|
+
# ./location_of_script_within_repo/buildscript.sh
|
|
80
|
+
|
|
81
|
+
- name: Perform CodeQL Analysis
|
|
82
|
+
uses: github/codeql-action/analyze@v3
|
|
83
|
+
with:
|
|
84
|
+
category: "/language:${{matrix.language}}"
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
name: Deploy to PyPi
|
|
2
|
+
on:
|
|
3
|
+
push:
|
|
4
|
+
tags:
|
|
5
|
+
- "v*"
|
|
6
|
+
jobs:
|
|
7
|
+
build:
|
|
8
|
+
name: Build Wheels and Package 🛠️
|
|
9
|
+
runs-on: ubuntu-latest
|
|
10
|
+
steps:
|
|
11
|
+
- name: Checkout Code
|
|
12
|
+
uses: actions/checkout@v5
|
|
13
|
+
- name: Set up Python 3.x
|
|
14
|
+
uses: actions/setup-python@v6
|
|
15
|
+
with:
|
|
16
|
+
python-version: "3.x"
|
|
17
|
+
- name: Install Poetry
|
|
18
|
+
run: python -m pip install poetry
|
|
19
|
+
- name: Build Module
|
|
20
|
+
run: poetry build
|
|
21
|
+
- name: Store the distribution packages
|
|
22
|
+
uses: actions/upload-artifact@v4
|
|
23
|
+
with:
|
|
24
|
+
retention-days: 1
|
|
25
|
+
if-no-files-found: error
|
|
26
|
+
name: python-package-distributions
|
|
27
|
+
path: dist/
|
|
28
|
+
publish_test:
|
|
29
|
+
name: Publish to TestPyPi 🧪
|
|
30
|
+
needs:
|
|
31
|
+
- build
|
|
32
|
+
runs-on: ubuntu-latest
|
|
33
|
+
environment:
|
|
34
|
+
name: test_pypi
|
|
35
|
+
url: https://test.pypi.org/p/simvue
|
|
36
|
+
permissions:
|
|
37
|
+
id-token: write
|
|
38
|
+
steps:
|
|
39
|
+
- name: Download all the dists
|
|
40
|
+
uses: actions/download-artifact@v4
|
|
41
|
+
with:
|
|
42
|
+
name: python-package-distributions
|
|
43
|
+
path: dist/
|
|
44
|
+
- name: Publish to TestPyPi
|
|
45
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
46
|
+
with:
|
|
47
|
+
repository-url: https://test.pypi.org/legacy/
|
|
48
|
+
publish:
|
|
49
|
+
name: Publish to PyPi 🐍📦
|
|
50
|
+
needs:
|
|
51
|
+
- publish_test
|
|
52
|
+
if: "!contains(github.ref, 'rc') && !contains(github.ref, 'beta') && !contains(github.ref, 'alpha')"
|
|
53
|
+
runs-on: ubuntu-latest
|
|
54
|
+
environment:
|
|
55
|
+
name: pypi
|
|
56
|
+
url: https://pypi.org/p/simvue
|
|
57
|
+
permissions:
|
|
58
|
+
id-token: write
|
|
59
|
+
steps:
|
|
60
|
+
- name: Download all the dists
|
|
61
|
+
uses: actions/download-artifact@v4
|
|
62
|
+
with:
|
|
63
|
+
name: python-package-distributions
|
|
64
|
+
path: dist/
|
|
65
|
+
- name: Publish to PyPi
|
|
66
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
67
|
+
github-release:
|
|
68
|
+
name: Create Signed GitHub Release 🔏
|
|
69
|
+
needs:
|
|
70
|
+
- publish
|
|
71
|
+
runs-on: ubuntu-latest
|
|
72
|
+
permissions:
|
|
73
|
+
contents: write
|
|
74
|
+
id-token: write
|
|
75
|
+
steps:
|
|
76
|
+
- name: Download all the dists
|
|
77
|
+
uses: actions/download-artifact@v4
|
|
78
|
+
with:
|
|
79
|
+
name: python-package-distributions
|
|
80
|
+
path: dist/
|
|
81
|
+
- name: Sign the dists with Sigstore
|
|
82
|
+
uses: sigstore/gh-action-sigstore-python@v3.0.0
|
|
83
|
+
with:
|
|
84
|
+
inputs: >-
|
|
85
|
+
./dist/*.tar.gz
|
|
86
|
+
./dist/*.whl
|
|
87
|
+
- name: Create GitHub Release
|
|
88
|
+
env:
|
|
89
|
+
GITHUB_TOKEN: ${{ github.token }}
|
|
90
|
+
run: >-
|
|
91
|
+
LATESTCHANGES=$(awk '
|
|
92
|
+
BEGIN { header_found = 0 }
|
|
93
|
+
/^## / {
|
|
94
|
+
if (header_found == 0) {
|
|
95
|
+
header = $0
|
|
96
|
+
header_found = 1
|
|
97
|
+
next
|
|
98
|
+
} else {
|
|
99
|
+
exit
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
header_found == 1 && /^\- / { print }
|
|
103
|
+
' CHANGELOG.md)
|
|
104
|
+
gh release create
|
|
105
|
+
'${{ github.ref_name }}'
|
|
106
|
+
--notes "$LATESTCHANGES"
|
|
107
|
+
--title 'Simvue ${{ github.ref_name }}'
|
|
108
|
+
--repo '${{ github.repository }}'
|
|
109
|
+
- name: Upload artifact signatures to GitHub Release
|
|
110
|
+
env:
|
|
111
|
+
GITHUB_TOKEN: ${{ github.token }}
|
|
112
|
+
run: >-
|
|
113
|
+
gh release upload
|
|
114
|
+
'${{ github.ref_name }}' dist/**
|
|
115
|
+
--repo '${{ github.repository }}'
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
name: Simvue Examples
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: ["main", "dev", "hotfix/update-ci"]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ "main", "dev", "hotfix/update-ci" ]
|
|
8
|
+
workflow_dispatch:
|
|
9
|
+
|
|
10
|
+
permissions:
|
|
11
|
+
contents: read
|
|
12
|
+
|
|
13
|
+
concurrency:
|
|
14
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
15
|
+
cancel-in-progress: true
|
|
16
|
+
|
|
17
|
+
jobs:
|
|
18
|
+
GeometryOptimisation:
|
|
19
|
+
runs-on: ubuntu-latest
|
|
20
|
+
if: false # deactivate for now
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
- name: Download BlueMira
|
|
24
|
+
uses: actions/checkout@v4
|
|
25
|
+
with:
|
|
26
|
+
repository: Fusion-Power-Plant-Framework/bluemira
|
|
27
|
+
ref: v1.10.0
|
|
28
|
+
path: blue_mira
|
|
29
|
+
- uses: conda-incubator/setup-miniconda@v3
|
|
30
|
+
with:
|
|
31
|
+
activate-environment: bluemira
|
|
32
|
+
environment-file: blue_mira/conda/environment.yml
|
|
33
|
+
miniforge-version: "latest"
|
|
34
|
+
use-only-tar-bz2: false
|
|
35
|
+
miniforge-variant: Mambaforge
|
|
36
|
+
use-mamba: true
|
|
37
|
+
python-version: "3.11"
|
|
38
|
+
- name: Install bluemira
|
|
39
|
+
shell: bash -l {0}
|
|
40
|
+
run: pip install -e blue_mira
|
|
41
|
+
- name: Install Simvue
|
|
42
|
+
shell: bash -l {0}
|
|
43
|
+
run: pip install -e .
|
|
44
|
+
- name: Run Example
|
|
45
|
+
shell: bash -l {0}
|
|
46
|
+
run: python ./examples/GeometryOptimisation/bluemira_simvue_geometry_optimisation.py
|
|
47
|
+
Logging:
|
|
48
|
+
runs-on: ubuntu-latest
|
|
49
|
+
if: false # deactivate for now
|
|
50
|
+
steps:
|
|
51
|
+
- uses: actions/checkout@v4
|
|
52
|
+
- name: Setup Python
|
|
53
|
+
uses: actions/setup-python@v6
|
|
54
|
+
with:
|
|
55
|
+
python-version: "3.11"
|
|
56
|
+
- name: Install Simvue
|
|
57
|
+
run: python3 -m pip install .
|
|
58
|
+
- name: Run Example
|
|
59
|
+
run: |
|
|
60
|
+
export SIMVUE_URL=${{ secrets.SIMVUE_URL }}
|
|
61
|
+
export SIMVUE_TOKEN=${{ secrets.SIMVUE_TOKEN }}
|
|
62
|
+
python3 examples/Logging/logging-to-simvue.py --ci
|
|
63
|
+
Optuna:
|
|
64
|
+
runs-on: ubuntu-latest
|
|
65
|
+
if: false # deactivate for now
|
|
66
|
+
steps:
|
|
67
|
+
- uses: actions/checkout@v4
|
|
68
|
+
- name: Setup Python
|
|
69
|
+
uses: actions/setup-python@v6
|
|
70
|
+
with:
|
|
71
|
+
python-version: "3.11"
|
|
72
|
+
- name: Install Simvue
|
|
73
|
+
run: python3 -m pip install .
|
|
74
|
+
- name: Install Dependencies
|
|
75
|
+
run: |
|
|
76
|
+
python3 -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
|
|
77
|
+
python3 -m pip install -r examples/Optuna/PyTorch/requirements.txt
|
|
78
|
+
- name: Run Example
|
|
79
|
+
run: |
|
|
80
|
+
export SIMVUE_URL=${{ secrets.SIMVUE_URL }}
|
|
81
|
+
export SIMVUE_TOKEN=${{ secrets.SIMVUE_TOKEN }}
|
|
82
|
+
python3.11 ./examples/Optuna/PyTorch/simvue_optuna_pytorch.py --ci
|
|
83
|
+
PyTorch:
|
|
84
|
+
runs-on: ubuntu-latest
|
|
85
|
+
if: false # deactivate for now
|
|
86
|
+
steps:
|
|
87
|
+
- uses: actions/checkout@v4
|
|
88
|
+
- name: Setup Python
|
|
89
|
+
uses: actions/setup-python@v6
|
|
90
|
+
with:
|
|
91
|
+
python-version: "3.11"
|
|
92
|
+
- name: Install Simvue
|
|
93
|
+
run: python3 -m pip install .
|
|
94
|
+
- name: Install Dependencies
|
|
95
|
+
run: |
|
|
96
|
+
python3 -m pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu
|
|
97
|
+
python3 -m pip install -r examples/PyTorch/requirements.txt
|
|
98
|
+
- name: Run Example
|
|
99
|
+
run: |
|
|
100
|
+
export SIMVUE_URL=${{ secrets.SIMVUE_URL }}
|
|
101
|
+
export SIMVUE_TOKEN=${{ secrets.SIMVUE_TOKEN }}
|
|
102
|
+
python3.11 ./examples/PyTorch/main.py --ci
|
|
103
|
+
SU2:
|
|
104
|
+
runs-on: ubuntu-latest
|
|
105
|
+
if: false # deactivate for now
|
|
106
|
+
steps:
|
|
107
|
+
- uses: actions/checkout@v4
|
|
108
|
+
- name: Setup Python
|
|
109
|
+
uses: actions/setup-python@v6
|
|
110
|
+
with:
|
|
111
|
+
python-version: "3.11"
|
|
112
|
+
- name: Download SU2
|
|
113
|
+
run: |
|
|
114
|
+
wget https://github.com/su2code/SU2/releases/download/v8.0.1/SU2-v8.0.1-linux64.zip
|
|
115
|
+
unzip SU2-v8.0.1-linux64.zip
|
|
116
|
+
- name: Install dependencies
|
|
117
|
+
run: |
|
|
118
|
+
python -m pip install ukaea-multiparser
|
|
119
|
+
python -m pip install .
|
|
120
|
+
- name: Run Example
|
|
121
|
+
run: |
|
|
122
|
+
export SIMVUE_URL=${{ secrets.SIMVUE_URL }}
|
|
123
|
+
export SIMVUE_TOKEN=${{ secrets.SIMVUE_TOKEN }}
|
|
124
|
+
python examples/SU2/SU2.py bin --config tests/example_data/SU2_inv_ONERAM6.cfg --ci
|
|
125
|
+
TensorFlow:
|
|
126
|
+
if: false # deactivate for now
|
|
127
|
+
runs-on: ubuntu-latest
|
|
128
|
+
steps:
|
|
129
|
+
- uses: actions/checkout@v4
|
|
130
|
+
- name: Setup Python
|
|
131
|
+
uses: actions/setup-python@v6
|
|
132
|
+
with:
|
|
133
|
+
python-version: "3.11"
|
|
134
|
+
- name: Install Simvue
|
|
135
|
+
run: python3 -m pip install .
|
|
136
|
+
- name: Install Dependencies
|
|
137
|
+
run: python3 -m pip install -r examples/Tensorflow/requirements.txt
|
|
138
|
+
- name: Run Example
|
|
139
|
+
run: |
|
|
140
|
+
export SIMVUE_URL=${{ secrets.SIMVUE_URL }}
|
|
141
|
+
export SIMVUE_TOKEN=${{ secrets.SIMVUE_TOKEN }}
|
|
142
|
+
python3.11 ./examples/Tensorflow/dynamic_rnn.py --ci
|
|
143
|
+
GEANT4:
|
|
144
|
+
if: false # deactivate for now
|
|
145
|
+
runs-on: ubuntu-latest
|
|
146
|
+
container:
|
|
147
|
+
image: artemisbeta/geant4:11.2.1
|
|
148
|
+
steps:
|
|
149
|
+
- uses: actions/checkout@v4
|
|
150
|
+
with:
|
|
151
|
+
submodules: recursive
|
|
152
|
+
- name: Setup Python
|
|
153
|
+
uses: actions/setup-python@v6
|
|
154
|
+
with:
|
|
155
|
+
python-version: "3.11"
|
|
156
|
+
- name: Install Simvue
|
|
157
|
+
run: python3 -m pip install .
|
|
158
|
+
- name: Install Dependencies
|
|
159
|
+
run: python3 -m pip install -r examples/Geant4/requirements.txt
|
|
160
|
+
- name: Build Example
|
|
161
|
+
run: |
|
|
162
|
+
cmake -DCMAKE_PREFIX_PATH=/usr/local/share/geant4/install/4.11.2/ -Bbuild examples/Geant4/FixedTarget/
|
|
163
|
+
cmake --build build
|
|
164
|
+
- name: Run Example
|
|
165
|
+
run: |
|
|
166
|
+
export SIMVUE_URL=${{ secrets.SIMVUE_URL }}
|
|
167
|
+
export SIMVUE_TOKEN=${{ secrets.SIMVUE_TOKEN }}
|
|
168
|
+
python examples/Geant4/geant4_simvue.py build/MaterialTesting --ci --events 10
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
name: Prek Hooks
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: ["main", "dev", "hotfix/update-ci", "*prek*"]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: ["main", "dev", "hotfix/update-ci", "*prek*"]
|
|
8
|
+
workflow_dispatch:
|
|
9
|
+
|
|
10
|
+
permissions:
|
|
11
|
+
contents: read
|
|
12
|
+
|
|
13
|
+
concurrency:
|
|
14
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
15
|
+
cancel-in-progress: true
|
|
16
|
+
|
|
17
|
+
jobs:
|
|
18
|
+
prek:
|
|
19
|
+
name: Run Prek Hooks
|
|
20
|
+
runs-on: ubuntu-latest
|
|
21
|
+
timeout-minutes: 30
|
|
22
|
+
steps:
|
|
23
|
+
- name: Checkout Code
|
|
24
|
+
uses: actions/checkout@v6
|
|
25
|
+
- name: Run Prek
|
|
26
|
+
uses: j178/prek-action@v2
|
|
27
|
+
with:
|
|
28
|
+
extra-args: '--all-files --skip no-commit-to-branch'
|