spotmax 1.0.3__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.
- spotmax-1.0.3/.github/ISSUE_TEMPLATE/bug_report.yml +63 -0
- spotmax-1.0.3/.github/ISSUE_TEMPLATE/enhanchement_request.yml +24 -0
- spotmax-1.0.3/.github/ISSUE_TEMPLATE/feature_request.yml +24 -0
- spotmax-1.0.3/.github/ISSUE_TEMPLATE/informal-request.yml +25 -0
- spotmax-1.0.3/.github/workflows/build-macos_pyqt5.yml +43 -0
- spotmax-1.0.3/.github/workflows/build-macos_pyqt6.yml +43 -0
- spotmax-1.0.3/.github/workflows/build-ubuntu_pyqt5.yml +49 -0
- spotmax-1.0.3/.github/workflows/build-windows_pyqt5.yml +42 -0
- spotmax-1.0.3/.github/workflows/build-windows_pyqt6.yml +42 -0
- spotmax-1.0.3/.github/workflows/inactive-issues.yml +50 -0
- spotmax-1.0.3/.gitignore +170 -0
- spotmax-1.0.3/.readthedocs.yaml +19 -0
- spotmax-1.0.3/LICENSE +674 -0
- spotmax-1.0.3/MANIFEST.in +2 -0
- spotmax-1.0.3/PKG-INFO +126 -0
- spotmax-1.0.3/README.rst +87 -0
- spotmax-1.0.3/environment_cli.yml +18 -0
- spotmax-1.0.3/environment_gui.yml +21 -0
- spotmax-1.0.3/envs/conda_env_headless.yml +20 -0
- spotmax-1.0.3/envs/requirements_headless.txt +14 -0
- spotmax-1.0.3/examples/__init__.py +0 -0
- spotmax-1.0.3/examples/images/mitochondria/ASY15-1_0nM-10_s10_mNeon.tif +0 -0
- spotmax-1.0.3/examples/images/mitochondria/ASY15-1_0nM-10_s10_segm.npz +0 -0
- spotmax-1.0.3/examples/ini_config_files_templates/example_config_params_mitochondria.ini +92 -0
- spotmax-1.0.3/examples/ini_config_files_templates/example_config_params_smFISH.ini +60 -0
- spotmax-1.0.3/examples/ini_config_files_templates/mtDNA_yeast_tutorial_parameters.ini +112 -0
- spotmax-1.0.3/examples/ini_config_files_templates/smFISH_yeast_tutorial_parameters.ini +89 -0
- spotmax-1.0.3/examples/notebooks/spots_synthetic_simple.ipynb +1616 -0
- spotmax-1.0.3/examples/scripts/spots_synthetic_simple.py +129 -0
- spotmax-1.0.3/pyproject.toml +84 -0
- spotmax-1.0.3/requirements_gui_pyqt5.txt +4 -0
- spotmax-1.0.3/requirements_gui_pyqt6.txt +5 -0
- spotmax-1.0.3/setup.cfg +4 -0
- spotmax-1.0.3/spotmax/BioImageIO/__init__.py +10 -0
- spotmax-1.0.3/spotmax/BioImageIO/model.py +221 -0
- spotmax-1.0.3/spotmax/Spotiflow/__init__.py +10 -0
- spotmax-1.0.3/spotmax/Spotiflow/spotiflow_smax_model.py +203 -0
- spotmax-1.0.3/spotmax/__init__.py +303 -0
- spotmax-1.0.3/spotmax/__main__.py +119 -0
- spotmax-1.0.3/spotmax/_debug.py +312 -0
- spotmax-1.0.3/spotmax/_docs.py +283 -0
- spotmax-1.0.3/spotmax/_process.py +46 -0
- spotmax-1.0.3/spotmax/_run.py +74 -0
- spotmax-1.0.3/spotmax/_version.py +16 -0
- spotmax-1.0.3/spotmax/_warnings.py +58 -0
- spotmax-1.0.3/spotmax/colors.py +13 -0
- spotmax-1.0.3/spotmax/config.py +1500 -0
- spotmax-1.0.3/spotmax/core.py +6560 -0
- spotmax-1.0.3/spotmax/data.py +191 -0
- spotmax-1.0.3/spotmax/dialogs.py +6848 -0
- spotmax-1.0.3/spotmax/docs/Makefile +21 -0
- spotmax-1.0.3/spotmax/docs/__init__.py +256 -0
- spotmax-1.0.3/spotmax/docs/make.bat +35 -0
- spotmax-1.0.3/spotmax/docs/requirements.txt +9 -0
- spotmax-1.0.3/spotmax/docs/source/__init__.py +0 -0
- spotmax-1.0.3/spotmax/docs/source/api/api.rst +13 -0
- spotmax-1.0.3/spotmax/docs/source/conf.py +103 -0
- spotmax-1.0.3/spotmax/docs/source/features/_background_description.rst +25 -0
- spotmax-1.0.3/spotmax/docs/source/features/_effect_size_Cohen_formula.rst +16 -0
- spotmax-1.0.3/spotmax/docs/source/features/_effect_size_Glass_formula.rst +5 -0
- spotmax-1.0.3/spotmax/docs/source/features/_effect_size_Hedge_formula.rst +9 -0
- spotmax-1.0.3/spotmax/docs/source/features/_effect_size_description.rst +11 -0
- spotmax-1.0.3/spotmax/docs/source/features/aggr_features_description.rst +68 -0
- spotmax-1.0.3/spotmax/docs/source/features/index.rst +9 -0
- spotmax-1.0.3/spotmax/docs/source/features/ref_ch_features_description.rst +77 -0
- spotmax-1.0.3/spotmax/docs/source/features/single_spot_features_description.rst +530 -0
- spotmax-1.0.3/spotmax/docs/source/how_it_works/index.rst +33 -0
- spotmax-1.0.3/spotmax/docs/source/how_it_works/ref_ch_segm.rst +69 -0
- spotmax-1.0.3/spotmax/docs/source/how_it_works/spot_detect.rst +4 -0
- spotmax-1.0.3/spotmax/docs/source/how_it_works/spot_pred.rst +4 -0
- spotmax-1.0.3/spotmax/docs/source/how_it_works/spot_quant.rst +4 -0
- spotmax-1.0.3/spotmax/docs/source/index.rst +107 -0
- spotmax-1.0.3/spotmax/docs/source/install/_conda_create_activate_acdc.rst +66 -0
- spotmax-1.0.3/spotmax/docs/source/install/_gui_packages.rst +27 -0
- spotmax-1.0.3/spotmax/docs/source/install/_install_conda_open_terminal.rst +10 -0
- spotmax-1.0.3/spotmax/docs/source/install/_install_numba.rst +35 -0
- spotmax-1.0.3/spotmax/docs/source/install/cuda.rst +95 -0
- spotmax-1.0.3/spotmax/docs/source/install/hpc.rst +130 -0
- spotmax-1.0.3/spotmax/docs/source/install/index.rst +36 -0
- spotmax-1.0.3/spotmax/docs/source/install/latest.rst +69 -0
- spotmax-1.0.3/spotmax/docs/source/install/source.rst +68 -0
- spotmax-1.0.3/spotmax/docs/source/install/stable.rst +42 -0
- spotmax-1.0.3/spotmax/docs/source/misc/cite.rst +2 -0
- spotmax-1.0.3/spotmax/docs/source/misc/contributing.rst +148 -0
- spotmax-1.0.3/spotmax/docs/source/misc/get_started.rst +121 -0
- spotmax-1.0.3/spotmax/docs/source/misc/logos.rst +2 -0
- spotmax-1.0.3/spotmax/docs/source/misc/output_files.rst +137 -0
- spotmax-1.0.3/spotmax/docs/source/parameters/ai_params.rst +10 -0
- spotmax-1.0.3/spotmax/docs/source/parameters/index.rst +9 -0
- spotmax-1.0.3/spotmax/docs/source/parameters/parameters_description.rst +1405 -0
- spotmax-1.0.3/spotmax/docs/source/parameters/parameters_tuning.rst +302 -0
- spotmax-1.0.3/spotmax/docs/source/run/gui/analysis_parameters_tab.rst +72 -0
- spotmax-1.0.3/spotmax/docs/source/run/gui/index.rst +37 -0
- spotmax-1.0.3/spotmax/docs/source/run/gui/inspect_results_tab.rst +46 -0
- spotmax-1.0.3/spotmax/docs/source/run/gui/tune_parameters_tab.rst +42 -0
- spotmax-1.0.3/spotmax/docs/source/run/index.rst +13 -0
- spotmax-1.0.3/spotmax/docs/source/run/run_cli.rst +38 -0
- spotmax-1.0.3/spotmax/docs/source/run/run_py_pkg.rst +22 -0
- spotmax-1.0.3/spotmax/docs/source/tutorials/_preliminary_segment_cells.rst +14 -0
- spotmax-1.0.3/spotmax/docs/source/tutorials/index.rst +25 -0
- spotmax-1.0.3/spotmax/docs/source/tutorials/mtDNA_yeast.rst +354 -0
- spotmax-1.0.3/spotmax/docs/source/tutorials/smFISH_yeast.rst +321 -0
- spotmax-1.0.3/spotmax/features.py +714 -0
- spotmax-1.0.3/spotmax/filters.py +792 -0
- spotmax-1.0.3/spotmax/gui.py +3497 -0
- spotmax-1.0.3/spotmax/html_files/gui_welcome.html +16 -0
- spotmax-1.0.3/spotmax/html_func.py +379 -0
- spotmax-1.0.3/spotmax/io.py +2910 -0
- spotmax-1.0.3/spotmax/nnet/__init__.py +29 -0
- spotmax-1.0.3/spotmax/nnet/_predict_single_image.py +70 -0
- spotmax-1.0.3/spotmax/nnet/config.yaml +140 -0
- spotmax-1.0.3/spotmax/nnet/data/single_image.tiff +0 -0
- spotmax-1.0.3/spotmax/nnet/data/single_label.tiff +0 -0
- spotmax-1.0.3/spotmax/nnet/data/single_volume.tiff +0 -0
- spotmax-1.0.3/spotmax/nnet/data/single_volume_label.tiff +0 -0
- spotmax-1.0.3/spotmax/nnet/model.py +362 -0
- spotmax-1.0.3/spotmax/nnet/models/__init__.py +0 -0
- spotmax-1.0.3/spotmax/nnet/models/base_model.py +27 -0
- spotmax-1.0.3/spotmax/nnet/models/nd_model.py +148 -0
- spotmax-1.0.3/spotmax/nnet/models/unet2D/__init__.py +1 -0
- spotmax-1.0.3/spotmax/nnet/models/unet2D/dice_score.py +40 -0
- spotmax-1.0.3/spotmax/nnet/models/unet2D/unet_2D_model.py +36 -0
- spotmax-1.0.3/spotmax/nnet/models/unet2D/unet_parts.py +77 -0
- spotmax-1.0.3/spotmax/nnet/models/unet2d_model.py +412 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/__init__.py +1 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/__version__.py +1 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/augment/__init__.py +0 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/augment/transformer-test.ipynb +381 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/augment/transforms.py +737 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/datasets/__init__.py +0 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/datasets/hdf5.py +402 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/datasets/utils.py +371 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/unet3d/__init__.py +0 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/unet3d/buildingblocks.py +425 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/unet3d/losses.py +345 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/unet3d/metrics.py +455 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/unet3d/model.py +153 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/unet3d/predictor.py +491 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/unet3d/trainer.py +444 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D/unet3d/utils.py +365 -0
- spotmax-1.0.3/spotmax/nnet/models/unet3D_model.py +86 -0
- spotmax-1.0.3/spotmax/nnet/preprocess.py +57 -0
- spotmax-1.0.3/spotmax/nnet/transform.py +492 -0
- spotmax-1.0.3/spotmax/palettes.py +15 -0
- spotmax-1.0.3/spotmax/pipe.py +2405 -0
- spotmax-1.0.3/spotmax/prompts.py +66 -0
- spotmax-1.0.3/spotmax/qtworkers.py +606 -0
- spotmax-1.0.3/spotmax/resources/spotMAX_icon.ico +0 -0
- spotmax-1.0.3/spotmax/resources/spotMAX_logo.png +0 -0
- spotmax-1.0.3/spotmax/resources/spotMAX_logo.svg +277 -0
- spotmax-1.0.3/spotmax/resources/spotmax_v1_paramWin.png +0 -0
- spotmax-1.0.3/spotmax/resources/spotmax_v2_parameters.png +0 -0
- spotmax-1.0.3/spotmax/resources.qrc +5 -0
- spotmax-1.0.3/spotmax/scores.py +15 -0
- spotmax-1.0.3/spotmax/transformations.py +1054 -0
- spotmax-1.0.3/spotmax/tune.py +406 -0
- spotmax-1.0.3/spotmax/utils.py +1523 -0
- spotmax-1.0.3/spotmax/widgets.py +3845 -0
- spotmax-1.0.3/spotmax.egg-info/PKG-INFO +126 -0
- spotmax-1.0.3/spotmax.egg-info/SOURCES.txt +163 -0
- spotmax-1.0.3/spotmax.egg-info/dependency_links.txt +1 -0
- spotmax-1.0.3/spotmax.egg-info/entry_points.txt +4 -0
- spotmax-1.0.3/spotmax.egg-info/requires.txt +9 -0
- spotmax-1.0.3/spotmax.egg-info/top_level.txt +2 -0
- spotmax-1.0.3/tests/test_import_spotmax.py +9 -0
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
name: Report a bug
|
|
2
|
+
description: Report an error, problem or unexpected behavior in spotMAX.
|
|
3
|
+
title: "<Comprehensive title summarizing the bug>"
|
|
4
|
+
labels: [":bug: Bug"]
|
|
5
|
+
|
|
6
|
+
body:
|
|
7
|
+
- type: markdown
|
|
8
|
+
attributes:
|
|
9
|
+
value: >
|
|
10
|
+
Thank you for reporting an issue!
|
|
11
|
+
Please, **remember to upload the log file**. You can find the log file from the
|
|
12
|
+
menu `Help --> Show log files...`
|
|
13
|
+
|
|
14
|
+
- type: textarea
|
|
15
|
+
validations:
|
|
16
|
+
required: true
|
|
17
|
+
attributes:
|
|
18
|
+
label: "Description:"
|
|
19
|
+
description: >
|
|
20
|
+
Describe your issue with all necessary detail.
|
|
21
|
+
What kind of behavior are you experiencing?
|
|
22
|
+
What would you expect instead?
|
|
23
|
+
Upload the log file here too. You can find the log file from the
|
|
24
|
+
menu on the top menubar called `Help --> Show log files...`
|
|
25
|
+
placeholder: |
|
|
26
|
+
Your description...
|
|
27
|
+
|
|
28
|
+
- type: textarea
|
|
29
|
+
attributes:
|
|
30
|
+
label: "Way to reproduce:"
|
|
31
|
+
description: >
|
|
32
|
+
Provide a as many details as possible about the process required to
|
|
33
|
+
reproduce the error.
|
|
34
|
+
|
|
35
|
+
- type: textarea
|
|
36
|
+
attributes:
|
|
37
|
+
label: "(Optional) Link to data to reproduce error:"
|
|
38
|
+
description: >
|
|
39
|
+
Many issues are specifically related to the data you are using. If possible,
|
|
40
|
+
consider providing a link to download the data that I can test with.
|
|
41
|
+
You could use Google Drive and share it with me at elpado6872@gmail.com
|
|
42
|
+
|
|
43
|
+
- type: textarea
|
|
44
|
+
attributes:
|
|
45
|
+
label: "Terminal output:"
|
|
46
|
+
description: >
|
|
47
|
+
Paste here the entire terminal session.
|
|
48
|
+
placeholder: |
|
|
49
|
+
Full error or terminal output..
|
|
50
|
+
render: Shell
|
|
51
|
+
|
|
52
|
+
- type: textarea
|
|
53
|
+
attributes:
|
|
54
|
+
label: "Version information:"
|
|
55
|
+
description: |
|
|
56
|
+
After activating the environment where you have spotMAX installed,
|
|
57
|
+
run the following command and paste the output
|
|
58
|
+
```shell
|
|
59
|
+
python -c "import sys; print(sys.version); import platform; print(platform.platform()); import cellacdc; print(f'Cell-ACDC version: {cellacdc.__version__}'); import spotmax; print(f'spotMAX version: {spotmax.__version__}')"
|
|
60
|
+
```
|
|
61
|
+
placeholder: |
|
|
62
|
+
Version information...
|
|
63
|
+
render: Shell
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
name: Suggest an improvement
|
|
2
|
+
description: Suggest an idea on how to improve existing features.
|
|
3
|
+
title: "<Title of the enhancement>"
|
|
4
|
+
labels: [":balloon: Enhancement"]
|
|
5
|
+
|
|
6
|
+
body:
|
|
7
|
+
- type: markdown
|
|
8
|
+
attributes:
|
|
9
|
+
value: >
|
|
10
|
+
Thank you for your suggestion! You can also discuss the enhancement on our
|
|
11
|
+
[discussion forum](https://github.com/SchmollerLab/Cell_ACDC/discussions)
|
|
12
|
+
|
|
13
|
+
- type: textarea
|
|
14
|
+
validations:
|
|
15
|
+
required: true
|
|
16
|
+
attributes:
|
|
17
|
+
label: "Description:"
|
|
18
|
+
description: >
|
|
19
|
+
Describe your suggestion with all necessary detail.
|
|
20
|
+
What is the current feature you would like to see improved?
|
|
21
|
+
Does the feature have a problem?
|
|
22
|
+
Great! Please let us know.
|
|
23
|
+
placeholder: |
|
|
24
|
+
Your suggestion...
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
name: Feature request
|
|
2
|
+
description: Suggest an idea for a new feature for spotMAX.
|
|
3
|
+
title: "<Title of the new feature>"
|
|
4
|
+
labels: [":rocket: New feature"]
|
|
5
|
+
|
|
6
|
+
body:
|
|
7
|
+
- type: markdown
|
|
8
|
+
attributes:
|
|
9
|
+
value: >
|
|
10
|
+
Thank you for your suggestion! You can also discuss the new feature on our
|
|
11
|
+
[discussion forum](https://github.com/SchmollerLab/Cell_ACDC/discussions)
|
|
12
|
+
|
|
13
|
+
- type: textarea
|
|
14
|
+
validations:
|
|
15
|
+
required: true
|
|
16
|
+
attributes:
|
|
17
|
+
label: "Description:"
|
|
18
|
+
description: >
|
|
19
|
+
Describe your suggestion with all necessary detail.
|
|
20
|
+
What kind of behavior would you like to see?
|
|
21
|
+
Is your feature request related to a problem?
|
|
22
|
+
Great! Please let us know.
|
|
23
|
+
placeholder: |
|
|
24
|
+
Your suggestion...
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
name: Informal request/question
|
|
2
|
+
description: Ask a question or post a comment about spotMAX.
|
|
3
|
+
title: "<Title of your question/comment>"
|
|
4
|
+
labels: [":question: Help/question"]
|
|
5
|
+
|
|
6
|
+
body:
|
|
7
|
+
- type: markdown
|
|
8
|
+
attributes:
|
|
9
|
+
value: >
|
|
10
|
+
Thank you for your question! You can also discuss your question/comment on our
|
|
11
|
+
[discussion forum](https://github.com/SchmollerLab/Cell_ACDC/discussions)
|
|
12
|
+
|
|
13
|
+
- type: textarea
|
|
14
|
+
validations:
|
|
15
|
+
required: true
|
|
16
|
+
attributes:
|
|
17
|
+
label: "Description:"
|
|
18
|
+
description: >
|
|
19
|
+
Ask any question or write any comment about spotMAX. Thanks!
|
|
20
|
+
If you had an error, please upload the log file here too.
|
|
21
|
+
You can find the log file from the menu on the top menubar
|
|
22
|
+
called `Help --> Show log files...`
|
|
23
|
+
placeholder: |
|
|
24
|
+
Your question...
|
|
25
|
+
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
|
|
2
|
+
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
|
|
3
|
+
|
|
4
|
+
name: macOS build, lint and test (PyQt5)
|
|
5
|
+
|
|
6
|
+
on:
|
|
7
|
+
push:
|
|
8
|
+
branches: [ main ]
|
|
9
|
+
pull_request:
|
|
10
|
+
branches: [ main ]
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
build:
|
|
14
|
+
|
|
15
|
+
runs-on: macos-latest
|
|
16
|
+
strategy:
|
|
17
|
+
fail-fast: false
|
|
18
|
+
matrix:
|
|
19
|
+
python-version: ["3.9", "3.10", "3.11"]
|
|
20
|
+
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
24
|
+
uses: actions/setup-python@v5
|
|
25
|
+
with:
|
|
26
|
+
python-version: ${{ matrix.python-version }}
|
|
27
|
+
- name: Install dependencies
|
|
28
|
+
run: |
|
|
29
|
+
python -m pip install --upgrade pip
|
|
30
|
+
python -m pip install flake8 pytest
|
|
31
|
+
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
|
|
32
|
+
python -m pip install -e .
|
|
33
|
+
python -m pip install "git+https://github.com/SchmollerLab/Cell_ACDC.git"
|
|
34
|
+
python -m pip install -r requirements_gui_pyqt5.txt
|
|
35
|
+
- name: Lint with flake8
|
|
36
|
+
run: |
|
|
37
|
+
# stop the build if there are Python syntax errors or undefined names
|
|
38
|
+
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
|
39
|
+
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
|
40
|
+
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
|
41
|
+
- name: Test with pytest
|
|
42
|
+
run: |
|
|
43
|
+
pytest
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
|
|
2
|
+
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
|
|
3
|
+
|
|
4
|
+
name: macOS build, lint and test (PyQt6)
|
|
5
|
+
|
|
6
|
+
on:
|
|
7
|
+
push:
|
|
8
|
+
branches: [ main ]
|
|
9
|
+
pull_request:
|
|
10
|
+
branches: [ main ]
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
build:
|
|
14
|
+
|
|
15
|
+
runs-on: macos-latest
|
|
16
|
+
strategy:
|
|
17
|
+
fail-fast: false
|
|
18
|
+
matrix:
|
|
19
|
+
python-version: ["3.9", "3.10", "3.11"]
|
|
20
|
+
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
24
|
+
uses: actions/setup-python@v5
|
|
25
|
+
with:
|
|
26
|
+
python-version: ${{ matrix.python-version }}
|
|
27
|
+
- name: Install dependencies
|
|
28
|
+
run: |
|
|
29
|
+
python -m pip install --upgrade pip
|
|
30
|
+
python -m pip install flake8 pytest
|
|
31
|
+
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
|
|
32
|
+
python -m pip install -e .
|
|
33
|
+
python -m pip install "git+https://github.com/SchmollerLab/Cell_ACDC.git"
|
|
34
|
+
python -m pip install -r requirements_gui_pyqt6.txt
|
|
35
|
+
- name: Lint with flake8
|
|
36
|
+
run: |
|
|
37
|
+
# stop the build if there are Python syntax errors or undefined names
|
|
38
|
+
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
|
39
|
+
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
|
40
|
+
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
|
41
|
+
- name: Test with pytest
|
|
42
|
+
run: |
|
|
43
|
+
pytest
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
|
|
2
|
+
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
|
|
3
|
+
|
|
4
|
+
name: Ubuntu build, lint and test (PyQt5)
|
|
5
|
+
|
|
6
|
+
on:
|
|
7
|
+
push:
|
|
8
|
+
branches: [ main ]
|
|
9
|
+
pull_request:
|
|
10
|
+
branches: [ main ]
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
build:
|
|
14
|
+
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
strategy:
|
|
17
|
+
fail-fast: false
|
|
18
|
+
matrix:
|
|
19
|
+
python-version: ["3.9", "3.10", "3.11"]
|
|
20
|
+
env:
|
|
21
|
+
DISPLAY: ':99.0'
|
|
22
|
+
|
|
23
|
+
steps:
|
|
24
|
+
- uses: actions/checkout@v4
|
|
25
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
26
|
+
uses: actions/setup-python@v5
|
|
27
|
+
with:
|
|
28
|
+
python-version: ${{ matrix.python-version }}
|
|
29
|
+
- name: setup ubuntu-latest
|
|
30
|
+
run: |
|
|
31
|
+
sudo apt install libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 libxcb-xfixes0 x11-utils
|
|
32
|
+
/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -screen 0 1920x1200x24 -ac +extension GLX
|
|
33
|
+
- name: Install dependencies
|
|
34
|
+
run: |
|
|
35
|
+
python -m pip install --upgrade pip
|
|
36
|
+
python -m pip install flake8 pytest
|
|
37
|
+
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
|
|
38
|
+
python -m pip install -e .
|
|
39
|
+
python -m pip install "git+https://github.com/SchmollerLab/Cell_ACDC.git"
|
|
40
|
+
python -m pip install -r requirements_gui_pyqt5.txt
|
|
41
|
+
- name: Lint with flake8
|
|
42
|
+
run: |
|
|
43
|
+
# stop the build if there are Python syntax errors or undefined names
|
|
44
|
+
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
|
45
|
+
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
|
46
|
+
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
|
47
|
+
- name: Test with pytest
|
|
48
|
+
run: |
|
|
49
|
+
pytest
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
|
|
2
|
+
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
|
|
3
|
+
|
|
4
|
+
name: Windows build, lint and test (PyQt5)
|
|
5
|
+
|
|
6
|
+
on:
|
|
7
|
+
push:
|
|
8
|
+
branches: [ main ]
|
|
9
|
+
pull_request:
|
|
10
|
+
branches: [ main ]
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
build:
|
|
14
|
+
|
|
15
|
+
runs-on: windows-latest
|
|
16
|
+
strategy:
|
|
17
|
+
fail-fast: false
|
|
18
|
+
matrix:
|
|
19
|
+
python-version: ["3.9", "3.10", "3.11"]
|
|
20
|
+
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
24
|
+
uses: actions/setup-python@v5
|
|
25
|
+
with:
|
|
26
|
+
python-version: ${{ matrix.python-version }}
|
|
27
|
+
- name: Install dependencies
|
|
28
|
+
run: |
|
|
29
|
+
python -m pip install --upgrade pip
|
|
30
|
+
python -m pip install flake8 pytest
|
|
31
|
+
python -m pip install -e .
|
|
32
|
+
python -m pip install "git+https://github.com/SchmollerLab/Cell_ACDC.git"
|
|
33
|
+
python -m pip install -r requirements_gui_pyqt5.txt
|
|
34
|
+
- name: Lint with flake8
|
|
35
|
+
run: |
|
|
36
|
+
# stop the build if there are Python syntax errors or undefined names
|
|
37
|
+
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
|
38
|
+
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
|
39
|
+
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
|
40
|
+
- name: Test with pytest
|
|
41
|
+
run: |
|
|
42
|
+
pytest
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
|
|
2
|
+
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
|
|
3
|
+
|
|
4
|
+
name: Windows build, lint and test (PyQt6)
|
|
5
|
+
|
|
6
|
+
on:
|
|
7
|
+
push:
|
|
8
|
+
branches: [ main ]
|
|
9
|
+
pull_request:
|
|
10
|
+
branches: [ main ]
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
build:
|
|
14
|
+
|
|
15
|
+
runs-on: windows-latest
|
|
16
|
+
strategy:
|
|
17
|
+
fail-fast: false
|
|
18
|
+
matrix:
|
|
19
|
+
python-version: ["3.9", "3.10", "3.11"]
|
|
20
|
+
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
- name: Set up Python ${{ matrix.python-version }}
|
|
24
|
+
uses: actions/setup-python@v5
|
|
25
|
+
with:
|
|
26
|
+
python-version: ${{ matrix.python-version }}
|
|
27
|
+
- name: Install dependencies
|
|
28
|
+
run: |
|
|
29
|
+
python -m pip install --upgrade pip
|
|
30
|
+
python -m pip install flake8 pytest
|
|
31
|
+
python -m pip install -e .
|
|
32
|
+
python -m pip install "git+https://github.com/SchmollerLab/Cell_ACDC.git"
|
|
33
|
+
python -m pip install -r requirements_gui_pyqt6.txt
|
|
34
|
+
- name: Lint with flake8
|
|
35
|
+
run: |
|
|
36
|
+
# stop the build if there are Python syntax errors or undefined names
|
|
37
|
+
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
|
|
38
|
+
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
|
|
39
|
+
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
|
|
40
|
+
- name: Test with pytest
|
|
41
|
+
run: |
|
|
42
|
+
pytest
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# Mark issues and pull requests without activity as dormant
|
|
2
|
+
# See https://github.com/actions/stale for documentation and configuration
|
|
3
|
+
|
|
4
|
+
name: Mark inactive issues
|
|
5
|
+
on:
|
|
6
|
+
schedule:
|
|
7
|
+
- cron: "15 2 * * *" # trigger every day at 2:15
|
|
8
|
+
workflow_dispatch: # or run manually
|
|
9
|
+
permissions:
|
|
10
|
+
issues: write
|
|
11
|
+
pull-requests: write
|
|
12
|
+
jobs:
|
|
13
|
+
stale:
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/stale@v9.0.0
|
|
17
|
+
with:
|
|
18
|
+
days-before-stale: 180
|
|
19
|
+
days-before-close: -1 # never close
|
|
20
|
+
stale-issue-label: ":sleeping: Inactive"
|
|
21
|
+
stale-pr-label: ":sleeping: Inactive"
|
|
22
|
+
remove-stale-when-updated: true
|
|
23
|
+
stale-issue-message: >
|
|
24
|
+
Hi there, I'm the spotMAX bot :wave:.
|
|
25
|
+
This issue had no activity for more than 180 days.
|
|
26
|
+
For now, we have marked it as "inactive" until there is some
|
|
27
|
+
new activity. If this issue was not solved yet, unfortunately
|
|
28
|
+
we haven't had the time to implement it or it requires more discussion.
|
|
29
|
+
Note that it doesn't mean it has been ignored, but a little reminder
|
|
30
|
+
from your side would help :D.
|
|
31
|
+
Feel free to reach out to us here or on our
|
|
32
|
+
[forum](https://github.com/SchmollerLab/Cell_ACDC/discussions).
|
|
33
|
+
If you think that this issue is no longer relevant,
|
|
34
|
+
you may close it by yourself.
|
|
35
|
+
In any case, we apologise for the inconvenience and we thank you
|
|
36
|
+
for your patience and contributions so far!
|
|
37
|
+
stale-pr-message: >
|
|
38
|
+
Hi there, I'm the Cell-ACDC bot :wave:.
|
|
39
|
+
This pull request had no activity for more than 180 days.
|
|
40
|
+
For now, we have marked it as "inactive" until there is some
|
|
41
|
+
new activity. If this PR was not implemented yet, unfortunately
|
|
42
|
+
we haven't had the time to implement it or it requires more discussion.
|
|
43
|
+
Note that it doesn't mean it has been ignored, but a little reminder
|
|
44
|
+
from your side would help :D.
|
|
45
|
+
Feel free to reach out to us here or on our
|
|
46
|
+
[forum](https://github.com/SchmollerLab/Cell_ACDC/discussions).
|
|
47
|
+
If you think that this issue is no longer relevant,
|
|
48
|
+
you may close it by yourself.
|
|
49
|
+
In any case, we apologise for the inconvenience and we thank you
|
|
50
|
+
for your patience and contributions so far!
|
spotmax-1.0.3/.gitignore
ADDED
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# Custom ignores
|
|
2
|
+
.vscode
|
|
3
|
+
**/.DS_Store
|
|
4
|
+
data/*
|
|
5
|
+
mytests
|
|
6
|
+
notebooks/test.ipynb
|
|
7
|
+
notebooks/Untitled-1.ipynb
|
|
8
|
+
spotmax/qtest.py
|
|
9
|
+
spotmax/test.py
|
|
10
|
+
spotmax/test1.py
|
|
11
|
+
spotmax/deprecated.py
|
|
12
|
+
spotmax/docs/deprecated.py
|
|
13
|
+
spotmax/_version.py
|
|
14
|
+
spotmax/_tests
|
|
15
|
+
spotmax/docs/_build
|
|
16
|
+
spotmax/_nnet
|
|
17
|
+
spotmax/_deprecated
|
|
18
|
+
spotmax/_old_gui.py
|
|
19
|
+
spotmax/mytests/*
|
|
20
|
+
spotmax/_deprecated_qrc_resources_spotmax.py
|
|
21
|
+
spotmax/spotmax_v1_paramWin.png
|
|
22
|
+
spotmax/spotmax_v2_parameters.png
|
|
23
|
+
spotmax/nnet/models/deprecated_pytorch3dunet
|
|
24
|
+
spotmax/docs/source/tutorials/data
|
|
25
|
+
spotmax/docs/source/images/home_carousel/svgs
|
|
26
|
+
spotmax/resources/_deprecated_icons
|
|
27
|
+
examples/notebooks/bioimageio_models
|
|
28
|
+
deprecated
|
|
29
|
+
cuda-keyring_1.1-1_all.deb
|
|
30
|
+
**/checkpoints
|
|
31
|
+
_tests
|
|
32
|
+
.setup.cfg
|
|
33
|
+
setup.cfg
|
|
34
|
+
*.deb
|
|
35
|
+
|
|
36
|
+
spotmax/logs/*
|
|
37
|
+
!spotmax/logs/dummy.txt
|
|
38
|
+
|
|
39
|
+
spotmax/settings/*
|
|
40
|
+
!spotmax/settings/dummy.txt
|
|
41
|
+
|
|
42
|
+
# Byte-compiled / optimized / DLL files
|
|
43
|
+
__pycache__/
|
|
44
|
+
*.py[cod]
|
|
45
|
+
*$py.class
|
|
46
|
+
|
|
47
|
+
# C extensions
|
|
48
|
+
*.so
|
|
49
|
+
|
|
50
|
+
# Distribution / packaging
|
|
51
|
+
.Python
|
|
52
|
+
build/
|
|
53
|
+
develop-eggs/
|
|
54
|
+
dist/
|
|
55
|
+
downloads/
|
|
56
|
+
eggs/
|
|
57
|
+
.eggs/
|
|
58
|
+
lib/
|
|
59
|
+
lib64/
|
|
60
|
+
parts/
|
|
61
|
+
sdist/
|
|
62
|
+
var/
|
|
63
|
+
wheels/
|
|
64
|
+
pip-wheel-metadata/
|
|
65
|
+
share/python-wheels/
|
|
66
|
+
*.egg-info/
|
|
67
|
+
.installed.cfg
|
|
68
|
+
*.egg
|
|
69
|
+
MANIFEST
|
|
70
|
+
|
|
71
|
+
# PyInstaller
|
|
72
|
+
# Usually these files are written by a python script from a template
|
|
73
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
|
74
|
+
*.manifest
|
|
75
|
+
*.spec
|
|
76
|
+
|
|
77
|
+
# Installer logs
|
|
78
|
+
pip-log.txt
|
|
79
|
+
pip-delete-this-directory.txt
|
|
80
|
+
|
|
81
|
+
# Unit test / coverage reports
|
|
82
|
+
htmlcov/
|
|
83
|
+
.tox/
|
|
84
|
+
.nox/
|
|
85
|
+
.coverage
|
|
86
|
+
.coverage.*
|
|
87
|
+
.cache
|
|
88
|
+
nosetests.xml
|
|
89
|
+
coverage.xml
|
|
90
|
+
*.cover
|
|
91
|
+
*.py,cover
|
|
92
|
+
.hypothesis/
|
|
93
|
+
.pytest_cache/
|
|
94
|
+
|
|
95
|
+
# Translations
|
|
96
|
+
*.mo
|
|
97
|
+
*.pot
|
|
98
|
+
|
|
99
|
+
# Django stuff:
|
|
100
|
+
*.log
|
|
101
|
+
local_settings.py
|
|
102
|
+
db.sqlite3
|
|
103
|
+
db.sqlite3-journal
|
|
104
|
+
|
|
105
|
+
# Flask stuff:
|
|
106
|
+
instance/
|
|
107
|
+
.webassets-cache
|
|
108
|
+
|
|
109
|
+
# Scrapy stuff:
|
|
110
|
+
.scrapy
|
|
111
|
+
|
|
112
|
+
# Sphinx documentation
|
|
113
|
+
docs/_build/
|
|
114
|
+
|
|
115
|
+
# PyBuilder
|
|
116
|
+
target/
|
|
117
|
+
|
|
118
|
+
# Jupyter Notebook
|
|
119
|
+
.ipynb_checkpoints
|
|
120
|
+
|
|
121
|
+
# IPython
|
|
122
|
+
profile_default/
|
|
123
|
+
ipython_config.py
|
|
124
|
+
|
|
125
|
+
# pyenv
|
|
126
|
+
.python-version
|
|
127
|
+
|
|
128
|
+
# pipenv
|
|
129
|
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
|
130
|
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
|
131
|
+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
|
132
|
+
# install all needed dependencies.
|
|
133
|
+
#Pipfile.lock
|
|
134
|
+
|
|
135
|
+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
|
|
136
|
+
__pypackages__/
|
|
137
|
+
|
|
138
|
+
# Celery stuff
|
|
139
|
+
celerybeat-schedule
|
|
140
|
+
celerybeat.pid
|
|
141
|
+
|
|
142
|
+
# SageMath parsed files
|
|
143
|
+
*.sage.py
|
|
144
|
+
|
|
145
|
+
# Environments
|
|
146
|
+
.env
|
|
147
|
+
.venv
|
|
148
|
+
env/
|
|
149
|
+
venv/
|
|
150
|
+
ENV/
|
|
151
|
+
env.bak/
|
|
152
|
+
venv.bak/
|
|
153
|
+
|
|
154
|
+
# Spyder project settings
|
|
155
|
+
.spyderproject
|
|
156
|
+
.spyproject
|
|
157
|
+
|
|
158
|
+
# Rope project settings
|
|
159
|
+
.ropeproject
|
|
160
|
+
|
|
161
|
+
# mkdocs documentation
|
|
162
|
+
/site
|
|
163
|
+
|
|
164
|
+
# mypy
|
|
165
|
+
.mypy_cache/
|
|
166
|
+
.dmypy.json
|
|
167
|
+
dmypy.json
|
|
168
|
+
|
|
169
|
+
# Pyre type checker
|
|
170
|
+
.pyre/
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
version: "2"
|
|
2
|
+
|
|
3
|
+
build:
|
|
4
|
+
os: "ubuntu-22.04"
|
|
5
|
+
tools:
|
|
6
|
+
python: "3.11"
|
|
7
|
+
|
|
8
|
+
python:
|
|
9
|
+
install:
|
|
10
|
+
- requirements: spotmax/docs/requirements.txt
|
|
11
|
+
# Install our python package before building the docs
|
|
12
|
+
- method: pip
|
|
13
|
+
path: .
|
|
14
|
+
|
|
15
|
+
sphinx:
|
|
16
|
+
configuration: spotmax/docs/source/conf.py
|
|
17
|
+
|
|
18
|
+
formats:
|
|
19
|
+
- pdf
|