Skip to content

Commit 8b30997

Browse files
tpeulentpeulenThomas-Otavio PeulenAdministrator
authored
Development (#29)
* cmake update * submodule update * Fix pip build * Update license * Update license * license update * fix license issue * Test AVX * Ignore .vscode folder * Cleanup pip build * Cleanup pip build * Try building with cibuildwheel * Build wheel * wheel build * build wheel * Improve imports * Fix compilation * Update author list * Fix pip build * Add option to build library * Add license * Add license * Gitlab build wheel * Add missing dependency * Add reference * Add wheel build * Update .gitlab-ci.yml file * Gitlab build * Update .gitlab-ci.yml file * Update submodule in wheel build * Update submodule * twine upload * add build tags * Twine * Fix pyi classifier * upgrade pip * Upload linux wheels * Upload non master to testpypi * Add windows wheel * windows wheel * windows wheel * Windows wheel * Skip existing wheels * Use prebuild docker img for windows * Windows wheels * skip win32 and pypy * FFTW dir in windows build * Compiler flags for HDF5 and fftw * Use fftw only with ICS * Add swig * Mask hdf5 dependency * Mask hdf5 * Fix if close * Hdf5 issue * Static boost linking * Windows boost linking * win boost * remove boost system * static boost * boost exception issue * Use vcpkg on win * Static boost builds * avoid boost * Fix typo * auto link * linking * Build photon hdf by default * Remove openmp dependency * remove boost::filesystem and locale depency * remove boost:locale * Enable language * remove vcpkg * only boost header * remove pip swig cmake boost * add cmake * Use cmake findpython * switch findpzthon3 for findpython * Set DPython_ROOT_DIR in setup.py * Add swig * remove cmake swig * remove cmake submodule * move cmake files from submodule to folder * remove cmake submodule * Add pocketfft * Reduce boost dependency * Remove unused import * Move other peoples code to external * Move other peoples code to external * Move to external * Refactoring * refactor * Add itlib * Restore * Add aglib * Add aglib * Add optimization wrapper * Add optimization wrapper * Add msstl * use itlib flat_set * Cleanup * Cleanup * bump version * separate external include files * cleanup * Add documentation * win issue * Use BUILD_PYTHON_DOCS * Win issue * win build issue * Move external thirdparty code to highlight other projects code external third party code is moved to thirdparty folder. * Remove boost dependency * Static linking of boost remove uneeded boost dependency and link (just in case) boost statically * switch fftw for pocketfftw * switch fftw for pocketfftw * fftw -> pocketfft * Fix typos * remove boost fftw * update license info * remote fftw * cleanup namespace * Add windows wheel Dockerfile * Add wheel:win build * Remove unused config * fix indentation * Fix typo * use cmd.exe for wheel:win * use cmd for whee:win * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Simplify test * fix skip on linux * fix wheel:win pypi upload * Add pwsh to docker * Update .gitlab-ci.yml file * fix * xx * ff * hfd * Update file .gitlab-ci.yml * Update file pocketfft_hdronly.h * Add example writing CLSM data * Windows * new c++ on osx * Dynamic hdf5 lib * fix call * wheel build * add header setter * doc fixes * add windows wheel * docs * docs * add osx:wheel * macos wheel * osx fixes * macos wheel * use modern c++ on osx * wheel osx fix * doc fix * Fix badges and license * Removed TODO * doc fixes * DOC FIX * Also upload development docs * doc build fix * Docs buil * docs building * fix doc * fix doc * Redirect RTD page to docs * Support more py versions * docs deposit * pin boost * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Compile wheel for py311 * Set min macos version * Update .gitlab-ci.yml * Update .gitlab-ci.yml * Specify mmacosx version * Update .gitlab-ci.yml * Cleanup * Cleanup * Add read clsm settings method * Add mask flip * Fix typo * Add option for mask * Change default masking. * Bump version * Pypi 2fa requires tokens * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Replace old np.float types * Replace old np.float types * Fix TTTRMask issue need to flip * Improved documentation * Separate doc from doc-tttrlib env * Fix typo * Fix typo * Fix bixtex issue * Fix doxygen issue * Bump version * Improve docstrings * Additional sphinx modules * Fix typo * Fix typo * Fix issue of deprecated std * Remove missing sphinx-extension * Fix windows build * Fix doc deploy * Fix doc deploy * Fix doc deploy * Fix doc deploy * Fix Pda histogram_function * fix wrong path * CI gitlab github sync * Fix doc issues * Add stubs for doc * Add stubs for doc * Fix wrong path * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml file * Update .gitlab-ci.yml * Update pyproject.toml * Add github action * Remove gitlab webide config * Remove gitlab webide config * Remove github action demo --------- Co-authored-by: tpeulen <thomas.peulen@posteo.de> Co-authored-by: Thomas-Otavio Peulen <tpeulen@peulen.xyz> Co-authored-by: Administrator <admin@example.com>
1 parent fe5d1ad commit 8b30997

File tree

258 files changed

+41785
-5856
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

258 files changed

+41785
-5856
lines changed

.github/workflows/gitlab-sync.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: GitlabSync
2+
3+
on:
4+
- push
5+
- delete
6+
7+
jobs:
8+
sync:
9+
runs-on: ubuntu-latest
10+
name: Git Repo Sync
11+
steps:
12+
- uses: actions/checkout@v2
13+
with:
14+
fetch-depth: 0
15+
- uses: wangchucheng/git-repo-sync@v0.1.0
16+
with:
17+
# Such as https://github.com/wangchucheng/git-repo-sync.git
18+
target-url: ${{ secrets.TARGET_URL }}
19+
# Such as wangchucheng
20+
target-username: ${{ secrets.TARGET_USERNAME }}
21+
# You can store token in your project's 'Setting > Secrets' and reference the name here. Such as ${{ secrets.ACCESS\_TOKEN }}
22+
target-token: ${{ secrets.TARGET_TOKEN }}

.gitignore

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
build/
22
bld-dir/
33
dist/
4-
doc/examples
4+
doc/auto_examples
55
tmp/
6+
.vscode
7+
.vs
68
.ipynb_checkpoints
79
cmake-build-*/
810
temp/
@@ -11,8 +13,8 @@ __pycache__
1113
.vscode/
1214
tttr-data
1315
.idea/
14-
cmake/
1516
tools/
17+
leftovers/
1618

1719
# Documentation and tools
1820
doc/_*

.gitlab-ci.yml

Lines changed: 130 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,115 +1,205 @@
1+
variables:
2+
GIT_SSL_NO_VERIFY: "1"
3+
14
stages:
2-
- build
3-
- test
4-
- deploy
5+
# - sync
6+
- build
7+
- test
8+
- deploy
9+
10+
# github:push:
11+
# stage: sync
12+
# image: condaforge/mambaforge
13+
# tags:
14+
# - linux
15+
# before_script:
16+
# - git submodule update --init --recursive --remote
17+
# script:
18+
# - git switch -c ${CI_COMMIT_REF_NAME}
19+
# - git push --force https://${GITHUB_TOKEN}@github.com/fluorescence-tools/imp.bff
20+
521

22+
# general definitions
623
.build: &build
724
stage: build
825
artifacts:
926
paths:
1027
- bld-dir/
11-
.build_posix: &build_posix
12-
<<: *build
28+
.conda:build:posix: &conda_build_posix
29+
<<: *build
1330
script:
1431
- ./tools/build.sh
15-
.build:lnx: &build_lnx
16-
<<: *build_posix
32+
.conda:build:lnx: &conda_build_lnx
33+
<<: *conda_build_posix
1734
before_script:
1835
- source "/opt/conda/etc/profile.d/conda.sh"
1936
- conda activate /opt/conda/
37+
- git config --global safe.directory '*'
2038
- git submodule update --init --recursive --remote
21-
build:lnx_x86:
22-
<<: *build_lnx
39+
40+
# linux conda builds
41+
conda:build:lnx:x86:
42+
<<: *conda_build_lnx
2343
image:
24-
name: condaforge/linux-anvil-cos7-x86_64
2544
entrypoint: [ "/bin/bash", "-i", "-c" ]
45+
name: condaforge/linux-anvil-cos7-x86_64
2646
tags:
47+
- linux
2748
- x86_64
28-
build:lnx_ppc64le:
29-
<<: *build_lnx
49+
conda:build:lnx:ppc64le:
50+
<<: *conda_build_lnx
3051
image:
31-
name: condaforge/linux-anvil-ppc64le
3252
entrypoint: [ "/bin/bash", "-i", "-c" ]
53+
name: condaforge/linux-anvil-ppc64le
3354
tags:
55+
- linux
3456
- ppc64le
35-
build:lnx_aarch64:
36-
<<: *build_lnx
57+
conda:build:lnx:aarch64:
58+
<<: *conda_build_lnx
3759
image:
38-
name: condaforge/linux-anvil-aarch64
3960
entrypoint: [ "/bin/bash", "-i", "-c" ]
61+
name: condaforge/linux-anvil-aarch64
4062
tags:
63+
- linux
4164
- aarch64
42-
build:osx:
43-
<<: *build
44-
<<: *build_posix
65+
66+
conda:build:osx:
67+
<<: *conda_build_posix
4568
tags:
4669
- osx
4770
before_script:
4871
- git submodule update --init --recursive --remote
49-
build:windows:
72+
73+
conda:build:windows:
5074
<<: *build
51-
image: mambaforge:vs16
5275
tags:
5376
- win
5477
script:
55-
- cmd.exe
5678
- conda activate base
57-
- cd tools && git pull --force && cd..
5879
- .\tools\build.bat
5980

60-
test:linux:
81+
conda:test:linux:
6182
stage: test
6283
tags:
63-
- local
84+
- local # go for a server marked as local
6485
- linux
6586
image: condaforge/mambaforge
66-
needs: ["build:lnx_x86"]
87+
needs: ["conda:build:lnx:x86"]
6788
before_script:
6889
- |
6990
export DEBIAN_FRONTEND=interactive
7091
export TZ=Europe/Berlin
7192
apt-get update -qy && apt-get install -qy git nfs-common # sshfs
7293
script:
7394
- |
74-
# requires runner in privileged mode see (https://gitlab.com/gitlab-org/gitlab-runner/-/issues/4122)
7595
source activate base
7696
conda config --add channels "file://`pwd`/bld-dir"
77-
git clone --depth 1 https://gitlab.peulen.xyz/skf/tttrlib && cd tttrlib && git fetch && git switch $CI_COMMIT_REF_NAME
97+
git clone https://gitlab.peulen.xyz/skf/tttrlib && cd tttrlib && git fetch && git switch $CI_COMMIT_REF_NAME
7898
mamba install python tttrlib nose scipy
79-
mount.nfs -o nolock 192.168.124.254:tank/www /srv
99+
# requires runner in privileged mode see
100+
mount.nfs -o nolock 192.168.124.254:/mnt/user/www /srv
80101
# sshfs -o password_stdin -oStrictHostKeyChecking=no -o Ciphers=aes128-ctr -o Compression=yes -p 2222 $FTP_USERNAME@peulen.xyz:/www www <<< $FTP_PASSWORD
81102
ln -s /srv/tttr-data tttr-data
82103
nosetests test
83104
84-
deploy:conda:
105+
conda:deploy:
85106
stage: deploy
86107
image: condaforge/mambaforge
87108
tags:
88-
- x86_64
89109
- linux
90110
before_script:
91111
- git submodule update --init --recursive --remote
92112
script:
93113
- ./tools/deploy.sh
94114

95115
deploy:doc:
96-
# requires runner in privileged mode (setup in config.toml)
116+
# requires runner in privileged mode (setup in config.toml)
97117
stage: deploy
98118
image: condaforge/mambaforge
99119
tags:
100120
- local
101121
- linux
102-
needs: ["build:lnx_x86"]
122+
needs: ["conda:build:lnx:x86"]
103123
before_script:
104124
- |
105125
export DEBIAN_FRONTEND=interactive
106126
export TZ=Europe/Berlin
107127
apt-get update -qy && apt-get install -qy git nfs-common make
108128
script:
109-
- |
110-
source activate base
111-
git clone --depth 1 https://gitlab.peulen.xyz/skf/tttrlib && cd tttrlib && git fetch && git switch $CI_COMMIT_REF_NAME
112-
mount.nfs -o nolock 192.168.124.254:tank/www /srv && ln -s /srv/tttr-data tttr-data
113-
cd doc && mamba env update --file environment.yml && conda activate doc
114-
make html
115-
if [[ "$CI_COMMIT_REF_NAME" == "master" ]]; then rm -rf /srv/docs.peulen.xyz/tttrlib && mv -v _build/html/stable /srv/docs.peulen.xyz/tttrlib; fi
129+
- conda config --add channels "file://`pwd`/bld-dir"
130+
- mount.nfs -o nolock 192.168.124.254:/mnt/user/www /srv
131+
- ln -s /srv/tttr-data tttr-data
132+
- cd doc
133+
- source activate base
134+
- mamba env create -f environment.yml
135+
- conda activate doc-tttrlib
136+
- mamba install tttrlib --use-local
137+
- make html
138+
- rm -rf /srv/docs.peulen.xyz/project/$CI_PROJECT_TITLE/$CI_COMMIT_REF_NAME
139+
- mv -v _build/html/stable /srv/docs.peulen.xyz/project/$CI_PROJECT_TITLE/$CI_COMMIT_REF_NAME
140+
141+
wheel:linux:
142+
stage: build
143+
tags:
144+
- linux
145+
image: python:3.8
146+
# make a docker daemon available for cibuildwheel to use
147+
services:
148+
- name: docker:dind
149+
entrypoint: ["env", "-u", "DOCKER_HOST"]
150+
command: ["dockerd-entrypoint.sh"]
151+
variables:
152+
DOCKER_HOST: tcp://docker:2375/
153+
DOCKER_DRIVER: overlay2
154+
# See https://github.com/docker-library/docker/pull/166
155+
DOCKER_TLS_CERTDIR: ""
156+
script:
157+
- curl -sSL https://get.docker.com/ | sh
158+
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
159+
- python -m pip install cibuildwheel==2.12.1
160+
- git submodule update --init --recursive --remote
161+
- cibuildwheel --output-dir bld-dir --platform linux
162+
- python -m pip install --upgrade pip
163+
- pip install twine
164+
- export TWINE_PASSWORD="$PYPI_TOKEN"
165+
- if [ "$CI_COMMIT_REF_NAME" != "master" ]; then export TWINE_REPOSITORY=testpypi; export TWINE_PASSWORD="$PYPI_TEST_TOKEN"; fi
166+
- twine upload --skip-existing bld-dir/*.whl
167+
artifacts:
168+
paths:
169+
- bld-dir/
170+
171+
wheel:osx:
172+
stage: build
173+
tags:
174+
- osx
175+
script:
176+
- conda deactivate
177+
- python3 -m pip install cibuildwheel==2.12.1
178+
- git submodule update --init --recursive --remote
179+
- cibuildwheel --output-dir bld-dir --platform macos
180+
- python3 -m pip install --upgrade pip
181+
- python3 -m pip install twine
182+
- export TWINE_PASSWORD="$PYPI_TOKEN"
183+
- if [ "$CI_COMMIT_REF_NAME" != "master" ]; then export TWINE_REPOSITORY=testpypi; export TWINE_PASSWORD="$PYPI_TEST_TOKEN"; fi
184+
- python3 -m twine upload --skip-existing bld-dir/*.whl
185+
artifacts:
186+
paths:
187+
- bld-dir/
188+
189+
wheel:windows:
190+
<<: *build
191+
image: wheel:win
192+
script:
193+
- |
194+
conda deactivate
195+
set-content $env:public\inline.cmd -Value @'
196+
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"
197+
py -m cibuildwheel --output-dir bld-dir --platform windows
198+
set TWINE_PASSWORD=%PYPI_TOKEN%
199+
if %CI_COMMIT_REF_NAME% NEQ master set TWINE_REPOSITORY=testpypi
200+
if %CI_COMMIT_REF_NAME% NEQ master set TWINE_PASSWORD=%PYPI_TEST_TOKEN%
201+
twine upload --skip-existing bld-dir/*.whl
202+
'@
203+
CMD.EXE /C $env:public\inline.cmd
204+
tags:
205+
- win

.gitlab/.gitlab-webide.yml

Lines changed: 0 additions & 9 deletions
This file was deleted.

.gitmodules

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
11
[submodule "tools"]
22
path = tools
33
url = https://gitlab.peulen.xyz/build/tools
4-
[submodule "cmake"]
5-
path = cmake
6-
url = https://gitlab.peulen.xyz/build/cmake

.readthedocs.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# .readthedocs.yaml
2+
# Read the Docs configuration file
3+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4+
5+
# Required
6+
version: 2
7+
8+
# Set the version of Python and other tools you might need
9+
build:
10+
os: ubuntu-22.04
11+
tools:
12+
python: "3.11"
13+
14+
# Build documentation in the docs/ directory with Sphinx
15+
sphinx:
16+
configuration: doc/rtd/conf.py

AUTHORS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
# source control.
77

88
Sali Lab, UCSF
9+
Heinze Lab, University Wuerzburg
910
Thomas-Otavio Peulen
1011

1112
AG Seidel Lab, HHU Dueseldorf

0 commit comments

Comments
 (0)