medpy icon indicating copy to clipboard operation
medpy copied to clipboard

Release 0.5.0

Open loli opened this issue 2 years ago • 0 comments

Pre:

  • [X] Write a pre-release checklist for future releases and add to repo as documentation

TODO

  • [X] Bump-up library version
  • [X] Supported formats
    • python3 tests/support.py > myformats.log fails due to random package in scipy
  • [X] Depreciation and error fixes
    • scipy. => numpy.*
    • list(slice) => tuple(slice)
  • [X] Run tests and fix errors:
    • switch from nose to pytest
    • add test requirements.txt: pytest-7.4.3 & hypothesis-6.92.0
    • fix errors
  • [x] Error in saving an image that is of type bool, at least for .nii format: fix
  • [x] Run all notebooks, to test the code
    • fix all error that occurr
  • [x] Check Readme.md
    • check consistency and update
  • [x] Update setup.py
  • [ ] Check & improve documentation
    • [x] check https://loli.github.io/medpy/#
    • [x] generate and improve
    • [ ] Add graphcut help for https://github.com/loli/medpy/issues/103 CentOs
      • Add note that, under Debian / Ubuntu, lib can be found under /usr/lib/x86_64-linux-gnu/libboost_python* if linker error
      • Generally, write better error handling for GraphCut installation and link in open issues on the topic for people to find (keep open)
        • e.g. add install -v for more info to http://loli.github.io/medpy/installation/graphcutsupport.html [x]- Issue of broken links and notebooks: https://github.com/loli/medpy/issues/97
  • [x] Check badges in README.md
  • [ ] Bioconda / conda
    • Now in conda-forge: https://anaconda.org/conda-forge/medpy
      • [ ] Add badge from here to Readme
    • test install and update docu (e.g. https://loli.github.io/medpy/installation/conda.html) accordingly
    • edit recipes to ppoint to 0.5.0?
      • maybe this: https://github.com/conda-forge/medpy-feedstock ?
      • seem like it, version is here: https://github.com/conda-forge/medpy-feedstock/blob/main/recipe/meta.yaml
    • [ ] fork & PR for file https://github.com/conda-forge/medpy-feedstock/blob/main/recipe/meta.yaml plus see Readme of that repo
  • [x] Remove travis build
    • move to github builds, if possible
  • [x] Check config files:
    • .bettercodehub
    • .gitmodules
  • [x] Try installation on different systems
    • with different library versions to figure out minimal
    • with graph cut support and without
    • use pip install -v -e . to see installation logs for graphcut
  • [x] check why they exists and remove/ edit requirements-dev.* files in root folder
  • [x] Dockerfiles: won't do anymore
    • remove linked repo
    • remove from documentation
  • [x] Others:
    • Maybe write a short docu / docstring comment on this: https://github.com/loli/medpy/issues/76
  • [ ] Auto-build and auto-tests: Introduce appropriate gituhub actions
    • [x] test for pre-commit hook usage on commit
    • [x] run install and test
      • [x] linux
      • [x] MacOs
      • [ ] Windows (won't do)
    • [x] run graphcut install and test
      • ubuntu22.10 with p3.10 & ubuntu20.04 with p3.8
    • [x] trigger build & upload to test.pypi on release
    • [ ] manually trigger release to pypi [needs: build]
    • [ ] manually trigger doc release [needs: build]

new minimal dependency versions

  • [x] old dtypes depreciates from numpy >= 1.24
  • [x] inspect.getfullargspec recommended since python >= 3.4
  • [x] dump minima dependencies in setup.py

Optional (rather for v0.6)

  • [ ] Introduce new build system (e.g. poetry)
    • interesting, but would be quite some effort to get the c++ compiled extension running
    • maybe for the next release?
    • https://towardsdatascience.com/setuptools-python-571e7d5500f2
    • https://packaging.python.org/en/latest/guides/writing-pyproject-toml/
  • [ ] Adapt GitHib actions to also build wheels
    • https://github.com/pypa/manylinux
    • for MacOs
    • for windows
  • [ ] Harmonize imports, aka "import numpy" > "import numpy as np"
  • [ ] Switch to more modern documentation builder

Release TODO

  • [ ] Generate docs and place to upload
  • [x] Update setup.py
  • [ ] Update CHANGES.txt
  • [ ] Update github-pages
  • [ ] create package and upload to pypi

Post-Release to do

  • [ ] Update conda-forge recipe

loli avatar Dec 15 '23 17:12 loli