From cf893cb49226c646efaecfb23b446e35070c19de Mon Sep 17 00:00:00 2001 From: scverse-bot Date: Thu, 22 Feb 2024 18:40:20 +0000 Subject: [PATCH] Update template to v0.3.1 --- .cruft.json | 7 +- .github/workflows/release.yaml | 2 +- .pre-commit-config.yaml.rej | 128 ++++++++------------------------- pyproject.toml | 13 ++-- pyproject.toml.rej | 59 ++++++++------- 5 files changed, 72 insertions(+), 137 deletions(-) diff --git a/.cruft.json b/.cruft.json index b1a3305..382a2df 100644 --- a/.cruft.json +++ b/.cruft.json @@ -1,7 +1,7 @@ { "template": "https://github.com/scverse/cookiecutter-scverse", - "commit": "8e96abb5c3e2d5078c44713958da672711cf2a48", - "checkout": "v0.3.0", + "commit": "586b1652162ff7994b0070a034023d64289ae416", + "checkout": "v0.3.1", "context": { "cookiecutter": { "project_name": "biolord", @@ -13,7 +13,8 @@ "project_repo": "https://github.com/nitzanlab/biolord", "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..a7eca09 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/biolord 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 c0a8e7c..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.11.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: v3.1.0 -- 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.1.6 -- hooks: -- - id: ruff -- args: [--fix, --exit-non-zero-on-fix] -- - repo: https://github.com/pre-commit/pre-commit-hooks -- rev: v4.5.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.11.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: v3.1.0 -+ 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.1.6 -+ hooks: -+ - id: ruff -+ args: [--fix, --exit-non-zero-on-fix] -+ - repo: https://github.com/pre-commit/pre-commit-hooks -+ rev: v4.5.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/pyproject.toml b/pyproject.toml index 9ad7a53..ebd587c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -62,12 +62,15 @@ addopts = [ "--import-mode=importlib", # allow using test files with same name ] -[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 @@ -82,7 +85,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", diff --git a/pyproject.toml.rej b/pyproject.toml.rej index 41a4b5a..45273ff 100644 --- a/pyproject.toml.rej +++ b/pyproject.toml.rej @@ -1,40 +1,37 @@ diff a/pyproject.toml b/pyproject.toml (rejected hunks) -@@ -7,7 +7,7 @@ name = "biolord" - version = "0.0.1" - description = "A deep generative framework for disentangling known and unknown attributes in single-cell data." - readme = "README.md" --requires-python = ">=3.8" -+requires-python = ">=3.9" - license = {file = "LICENSE"} - authors = [ - {name = "Zoe Piran"}, -@@ -26,25 +26,26 @@ dependencies = [ +@@ -21,13 +21,13 @@ urls.Home-page = "https://github.com/nitzanlab/biolord" + dependencies = [ + "anndata", + # for debug logging (referenced from the issue template) +- "session-info" ++ "session-info", + ] [project.optional-dependencies] dev = [ -- # CLI for bumping the version number -- "bump2version", "pre-commit", - "twine>=4.0.2" +- "twine>=4.0.2" ++ "twine>=4.0.2", ] doc = [ -+ "docutils>=0.8,!=0.18.*,!=0.19.*", - "sphinx>=4", - "sphinx-book-theme>=1.0.0", - "myst-nb", - "sphinxcontrib-bibtex>=1.0.0", - "sphinx-autodoc-typehints", -+ "sphinxext-opengraph", - # For notebooks - "ipykernel", - "ipython", - "sphinx-copybutton", -+ "pandas", - ] - test = [ - "pytest", -- "pytest-cov", -+ "coverage", + "docutils>=0.8,!=0.18.*,!=0.19.*", +@@ -108,10 +111,10 @@ ignore = [ + "D213", ] - [tool.coverage.run] +-[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", + ]