Skip to content

Commit

Permalink
v1.8.5 (#48)
Browse files Browse the repository at this point in the history
  • Loading branch information
shnizzedy authored Jan 15, 2024
2 parents aa73ce2 + 4556106 commit 9e2bab0
Show file tree
Hide file tree
Showing 32 changed files with 2,812 additions and 1,125 deletions.
11 changes: 11 additions & 0 deletions .github/dependabot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: github-actions # https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot
directory: /
schedule:
interval: monthly
12 changes: 6 additions & 6 deletions .github/workflows/pythonpublish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,15 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v1
with:
python-version: '3.x'
python-version: 3.x
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install setuptools wheel twine
pip install poetry
- name: Build and publish
env:
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
run: |
python setup.py sdist bdist_wheel
twine upload dist/*
poetry config pypi-token.pypi "${PYPI_PASSWORD}"
poetry build
poetry publish
25 changes: 6 additions & 19 deletions .github/workflows/test_cpac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ on:
push:
paths-ignore:
- README.rst
pull_request:

jobs:
test_cpac:
Expand All @@ -22,7 +21,7 @@ jobs:
platform: [docker]
tag: [latest, nightly]
go: [1.14]
python: [3.7, 3.8, 3.9, "3.10", 3.11]
python: [3.8, 3.9, '3.10', 3.11, 3.12]
singularity: [3.6.4]

steps:
Expand All @@ -45,20 +44,8 @@ jobs:
- name: Prepare Singularity cache and tmp directories
if: ${{ matrix.platform == 'singularity' }}
run: mkdir -p ${SINGULARITY_CACHEDIR} && mkdir -p ${SINGULARITY_TMPDIR}
- name: Install dependencies
run: |
sudo apt-get install libffi-dev \
flawfinder \
libgpgme11-dev \
libseccomp-dev \
squashfs-tools \
libssl1.1 libssl-dev \
libuuid1 uuid-dev
pip install -r requirements.txt
pip install -r requirements-dev.txt
pip install coverage coveralls nipype
- name: Install cpac
run: cd $GITHUB_WORKSPACE && pip install -e .
run: cd $GITHUB_WORKSPACE && pip install -e ".[dev,testing]"
- name: Test cpac, platform and tag specified
run: |
coverage run --append -m pytest --basetemp=${PWD}/tmp --doctest-modules --platform ${{ matrix.platform }} --tag ${{ matrix.tag }} .
Expand All @@ -81,12 +68,12 @@ jobs:
- name: Report coverage
uses: AndreMiras/coveralls-python-action@v20201129
with:
parallel: True
parallel: true
flag-name: Test cpac ${{ matrix.platform }} with Python ${{ matrix.python }}
continue-on-error: true
finalize_coverage-report:
needs:
- test_cpac
needs:
- test_cpac
runs-on: ubuntu-latest
steps:
- name: Finalize coverage report
Expand All @@ -97,7 +84,7 @@ jobs:
update_README:
# Only update README if tests succeed
needs:
- test_cpac
- test_cpac
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
Expand Down
57 changes: 57 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
fail_fast: false

repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.1.8
hooks:
- id: ruff
args: [--fix]
- id: ruff-format

- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.4.1
hooks:
- id: mypy
additional_dependencies:
- types-tabulate
- types-PyYAML
args: [--python-version=3.8, --ignore-missing-imports]
- repo: https://github.com/macisamuele/language-formatters-pre-commit-hooks
rev: v2.11.0
hooks:
- id: pretty-format-yaml
args:
- --autofix
- --indent=2
- id: pretty-format-toml
exclude: ^poetry.lock$
args:
- --autofix
- --indent=2
- --no-sort

- repo: https://github.com/python-poetry/poetry
rev: 1.6.0
hooks:
- id: poetry-check
- id: poetry-lock
args: [--no-update]

- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.1.0
hooks:
- id: check-case-conflict
- id: end-of-file-fixer
- id: mixed-line-ending
args:
- --fix=lf
- id: trailing-whitespace
- id: pretty-format-json
args:
- --autofix
- --indent=4
- --no-sort-keys
- id: check-merge-conflict
- id: check-yaml
- id: check-json
- id: check-toml
16 changes: 11 additions & 5 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
=========
Changelog
=========
`Version 0.6.0: Support for C-PAC v1.8.5 <https://github.com/FCP-INDI/cpac/releases/tag/v0.6.0>`_
===============

`Version 1.8.5: Support for C-PAC v1.8.5 <https://github.com/FCP-INDI/cpac/releases/tag/v1.8.5>`_
=====================================================================================================

* Changes versioning scheme to match supported C-PAC version
* Handles relocation of default pipeline in C-PAC 1.8.5
* Fixes a bug preventing default bindings in Mac OS ≥ 10.15
* Replaces ``setup.cfg`` with ``pyproject.toml``
* Replaces ``setuptools`` with ``poetry``
* Adds pre-commit hooks for linting and formatting
* Require Python ≥ 3.8

`Version 0.5.0: Parse Resources <https://github.com/FCP-INDI/cpac/releases/tag/v0.5.0>`_
========================================================================================
Expand Down Expand Up @@ -50,11 +56,11 @@ Changelog
========================================================================
* 📚 Update the main usage string to better articulate functionality
* 📢🐳 Provide a clearer error message if package cannot connect to Docker.
* 🐳 Fix a bug introduced in `v0.2.4 <https://github.com/shnizzedy/cpac/releases/tag/v0.2.4>` where some crashfiles would print for ``cpac --platform singularity crash`` but not for ``cpac --platform docker crash``
* 🚑 Fix some installation issues:
* 🐳 Fix a bug introduced in `v0.2.4 <https://github.com/shnizzedy/cpac/releases/tag/v0.2.4>` where some crashfiles would print for ``cpac --platform singularity crash`` but not for ``cpac --platform docker crash``
* 🚑 Fix some installation issues:
* All required packages are now installed with ``pip install cpac``
* Version is now set correctly
* 🐳 Fix a bug introduced in `v0.2.4 <https://github.com/shnizzedy/cpac/releases/tag/v0.2.4>`_ where some crashfiles would print for ``cpac --platform singularity crash`` but not for ``cpac --platform docker crash``
* 🐳 Fix a bug introduced in `v0.2.4 <https://github.com/shnizzedy/cpac/releases/tag/v0.2.4>`_ where some crashfiles would print for ``cpac --platform singularity crash`` but not for ``cpac --platform docker crash``
* 🔬 Set `coverage reports <http://coveralls.io/github/shnizzedy/cpac>`_ to report local paths

`Version 0.2.4 <https://github.com/shnizzedy/cpac/releases/tag/v0.2.4>`_
Expand Down
11 changes: 8 additions & 3 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,16 @@ A Python package that wraps `C-PAC <http://fcp-indi.github.io>`_, enabling users
Description
===========

C-PAC Python Package is a lightweight Python package that handles interfacing a user's machine and a C-PAC container through a command line interface.
cpac Python Package is a lightweight Python package that handles interfacing a user's machine and a C-PAC container through a command line interface.

.. admonition:: Note about cpac versioning

This package's versioning scheme changed in version 1.8.5 to match C-PAC's versioning. From cpac v1.8.5 forward, the version of cpac indicates the newest supported version of C-PAC.

Dependencies
============

* `Python <https://www.python.org>`_ ≥3.7
* `Python <https://www.python.org>`_ ≥ 3.8
* `pip <https://pip.pypa.io>`_
* At least one of:

Expand Down Expand Up @@ -86,6 +90,8 @@ Usage
enter (bash, shell)
Enter a new C-PAC container via BASH.
parse-resources (parse_resources)
.
When provided with a `callback.log` file, this utility can sort through
the memory `runtime` usage, `estimate`, and associated `efficiency`, to
identify the `n` tasks with the `highest` or `lowest` of each of these
Expand Down Expand Up @@ -145,4 +151,3 @@ Usage
.. |upload| image:: https://github.com/FCP-INDI/cpac/workflows/Upload%20Python%20Package/badge.svg
:target: https://pypi.org/project/cpac/
:alt: upload Python package to PyPI
Loading

0 comments on commit 9e2bab0

Please sign in to comment.