From ca50cc802e030d3cb17bb3b507254b63dbf37e87 Mon Sep 17 00:00:00 2001 From: scverse-bot Date: Thu, 22 Feb 2024 18:31:58 +0000 Subject: [PATCH] Update template to v0.3.1 --- .cruft.json | 7 +- .github/workflows/release.yaml | 2 +- .pre-commit-config.yaml.rej | 128 ++++++++------------------------- docs/contributing.md | 3 +- pyproject.toml.rej | 72 ++++++++++++++++--- 5 files changed, 100 insertions(+), 112 deletions(-) diff --git a/.cruft.json b/.cruft.json index 5beb302..03479ee 100644 --- a/.cruft.json +++ b/.cruft.json @@ -1,7 +1,7 @@ { "template": "https://github.com/scverse/cookiecutter-scverse", - "commit": "765c25c838914413dd1aee3d7ae37357d890d0de", - "checkout": "v0.3.0", + "commit": "586b1652162ff7994b0070a034023d64289ae416", + "checkout": "v0.3.1", "context": { "cookiecutter": { "project_name": "cellcharter", @@ -13,7 +13,8 @@ "project_repo": "https://github.com/marcovarrone/cellcharter", "license": "BSD 3-Clause License", "_copy_without_render": [ - ".github/workflows/**.yaml", + ".github/workflows/build.yaml", + ".github/workflows/test.yaml", "docs/_templates/autosummary/**.rst" ], "_render_devdocs": false, diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index bd82eb5..b402bff 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest environment: name: pypi - url: https://pypi.org/p/{{ cookiecutter.package_name }} + url: https://pypi.org/p/cellcharter permissions: id-token: write # IMPORTANT: this permission is mandatory for trusted publishing steps: diff --git a/.pre-commit-config.yaml.rej b/.pre-commit-config.yaml.rej index a39f598..831fbdc 100644 --- a/.pre-commit-config.yaml.rej +++ b/.pre-commit-config.yaml.rej @@ -1,100 +1,34 @@ diff a/.pre-commit-config.yaml b/.pre-commit-config.yaml (rejected hunks) -@@ -1,50 +1,53 @@ - fail_fast: false - default_language_version: -- python: python3 -+ python: python3 - default_stages: -- - commit -- - push -+ - commit -+ - push +@@ -6,29 +6,18 @@ default_stages: + - push minimum_pre_commit_version: 2.16.0 repos: -- - repo: https://github.com/psf/black -- rev: "23.7.0" -- hooks: -- - id: black -- - repo: https://github.com/asottile/blacken-docs -- rev: 1.15.0 -- hooks: -- - id: blacken-docs -- - repo: https://github.com/pre-commit/mirrors-prettier -- rev: v3.0.1 -- hooks: -- - id: prettier -- # Newer versions of node don't work on systems that have an older version of GLIBC -- # (in particular Ubuntu 18.04 and Centos 7) -- # EOL of Centos 7 is in 2024-06, we can probably get rid of this then. -- # See https://github.com/scverse/cookiecutter-scverse/issues/143 and -- # https://github.com/jupyterlab/jupyterlab/issues/12675 -- language_version: "17.9.1" -- - repo: https://github.com/charliermarsh/ruff-pre-commit -- rev: v0.0.283 -- hooks: -- - id: ruff -- args: [--fix, --exit-non-zero-on-fix] -- - repo: https://github.com/pre-commit/pre-commit-hooks -- rev: v4.4.0 -- hooks: -- - id: detect-private-key -- - id: check-ast -- - id: end-of-file-fixer -- - id: mixed-line-ending -- args: [--fix=lf] -- - id: trailing-whitespace -- - id: check-case-conflict -- - repo: local -- hooks: -- - id: forbid-to-commit -- name: Don't commit rej files -- entry: | -- Cannot commit .rej files. These indicate merge conflicts that arise during automated template updates. -- Fix the merge conflicts manually and remove the .rej files. -- language: fail -- files: '.*\.rej$' -+ - repo: https://github.com/psf/black -+ rev: "23.7.0" -+ hooks: -+ - id: black -+ - repo: https://github.com/asottile/blacken-docs -+ rev: 1.15.0 -+ hooks: -+ - id: blacken-docs -+ - repo: https://github.com/pre-commit/mirrors-prettier -+ rev: v3.0.1 -+ hooks: -+ - id: prettier -+ # Newer versions of node don't work on systems that have an older version of GLIBC -+ # (in particular Ubuntu 18.04 and Centos 7) -+ # EOL of Centos 7 is in 2024-06, we can probably get rid of this then. -+ # See https://github.com/scverse/cookiecutter-scverse/issues/143 and -+ # https://github.com/jupyterlab/jupyterlab/issues/12675 -+ language_version: "17.9.1" -+ - repo: https://github.com/astral-sh/ruff-pre-commit -+ rev: v0.0.283 -+ hooks: -+ - id: ruff -+ args: [--fix, --exit-non-zero-on-fix] -+ - repo: https://github.com/pre-commit/pre-commit-hooks -+ rev: v4.4.0 -+ hooks: -+ - id: detect-private-key -+ - id: check-ast -+ - id: end-of-file-fixer -+ - id: mixed-line-ending -+ args: [--fix=lf] -+ - id: trailing-whitespace -+ - id: check-case-conflict -+ # Check that there are no merge conflicts (could be generated by template sync) -+ - id: check-merge-conflict -+ args: [--assume-in-merge] -+ - repo: local -+ hooks: -+ - id: forbid-to-commit -+ name: Don't commit rej files -+ entry: | -+ Cannot commit .rej files. These indicate merge conflicts that arise during automated template updates. -+ Fix the merge conflicts manually and remove the .rej files. -+ language: fail -+ files: '.*\.rej$' +- - repo: https://github.com/psf/black +- rev: "24.2.0" +- hooks: +- - id: black +- - repo: https://github.com/asottile/blacken-docs +- rev: 1.16.0 +- hooks: +- - id: blacken-docs + - repo: https://github.com/pre-commit/mirrors-prettier + rev: v4.0.0-alpha.8 + hooks: + - id: prettier +- # Newer versions of node don't work on systems that have an older version of GLIBC +- # (in particular Ubuntu 18.04 and Centos 7) +- # EOL of Centos 7 is in 2024-06, we can probably get rid of this then. +- # See https://github.com/scverse/cookiecutter-scverse/issues/143 and +- # https://github.com/jupyterlab/jupyterlab/issues/12675 +- language_version: "17.9.1" + - repo: https://github.com/astral-sh/ruff-pre-commit + rev: v0.2.2 + hooks: + - id: ruff ++ types_or: [python, pyi, jupyter] + args: [--fix, --exit-non-zero-on-fix] ++ - id: ruff-format ++ types_or: [python, pyi, jupyter] + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v4.5.0 + hooks: diff --git a/docs/contributing.md b/docs/contributing.md index 6b6ff1b..ac525bf 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -93,7 +93,7 @@ Before making a release, you need to update the version number in the `pyproject > Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format. Once you are done, commit and push your changes and navigate to the "Releases" page of this project on GitHub. -Specify `vX.X.X` as a tag name and create a release. For more information, see [managing Github releases][]. This will automatically create a git tag and trigger a Github workflow that creates a release on PyPI. +Specify `vX.X.X` as a tag name and create a release. For more information, see [managing GitHub releases][]. This will automatically create a git tag and trigger a Github workflow that creates a release on PyPI. ## Writing documentation @@ -157,3 +157,4 @@ open _build/html/index.html [numpydoc]: https://numpydoc.readthedocs.io/en/latest/format.html [sphinx autodoc typehints]: https://github.com/tox-dev/sphinx-autodoc-typehints [pypi]: https://pypi.org/ +[managing GitHub releases]: https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository diff --git a/pyproject.toml.rej b/pyproject.toml.rej index 6f0d889..bc224f3 100644 --- a/pyproject.toml.rej +++ b/pyproject.toml.rej @@ -1,14 +1,66 @@ diff a/pyproject.toml b/pyproject.toml (rejected hunks) -@@ -42,10 +41,11 @@ doc = [ - "ipykernel", - "ipython", - "sphinx-copybutton", -+ "pandas", +@@ -21,13 +21,13 @@ urls.Home-page = "https://github.com/marcovarrone/cellcharter" + dependencies = [ + "anndata", + # for debug logging (referenced from the issue template) +- "session-info" ++ "session-info", ] - test = [ - "pytest", -- "pytest-cov", -+ "coverage", + + [project.optional-dependencies] + dev = [ + "pre-commit", +- "twine>=4.0.2" ++ "twine>=4.0.2", + ] + doc = [ + "docutils>=0.8,!=0.18.*,!=0.19.*", +@@ -61,12 +61,15 @@ addopts = [ + "--import-mode=importlib", # allow using test files with same name ] - [tool.coverage.run] +-[tool.black] +-line-length = 120 +- + [tool.ruff] +-src = ["src"] + line-length = 120 ++src = ["src"] ++extend-include = ["*.ipynb"] ++ ++[tool.ruff.format] ++docstring-code-format = true ++ ++[tool.ruff.lint] + select = [ + "F", # Errors detected by Pyflakes + "E", # Error detected by Pycodestyle +@@ -81,7 +84,7 @@ select = [ + "RUF100", # Report unused noqa directives + ] + ignore = [ +- # line too long -> we accept long comment lines; black gets rid of long code lines ++ # line too long -> we accept long comment lines; formatter gets rid of long code lines + "E501", + # Do not assign a lambda expression, use a def -> lambda expression assignments are convenient + "E731", +@@ -108,10 +111,10 @@ ignore = [ + "D213", + ] + +-[tool.ruff.pydocstyle] ++[tool.ruff.lint.pydocstyle] + convention = "numpy" + +-[tool.ruff.per-file-ignores] ++[tool.ruff.lint.per-file-ignores] + "docs/*" = ["I"] + "tests/*" = ["D"] + "*/__init__.py" = ["F401"] +@@ -125,5 +128,5 @@ skip = [ + "docs/changelog.md", + "docs/references.bib", + "docs/references.md", +- "docs/notebooks/example.ipynb" ++ "docs/notebooks/example.ipynb", + ]