From 95b6600e5e87cdafdef7d731f6e9ce1e82cd5762 Mon Sep 17 00:00:00 2001 From: Veit Schiele Date: Tue, 10 Sep 2024 17:45:23 +0200 Subject: [PATCH] :construction_worker: Build docs and check links * Configure linkcheck * Fix external links --- .github/workflows/docs.yml | 27 +++++++ .python-version | 1 + README.rst | 31 +++---- docs/clean-prep/bulwark.ipynb | 2 +- docs/clean-prep/dask-pipeline.ipynb | 2 +- docs/clean-prep/deduplicate.ipynb | 4 +- docs/clean-prep/index.rst | 4 +- .../scikit-learn-reprocessing.ipynb | 2 +- docs/conf.py | 81 +++++++++++++++---- .../apis/fastapi/extensions.rst | 18 ++--- docs/data-processing/apis/fastapi/index.rst | 6 +- docs/data-processing/apis/fastapi/tips.rst | 2 +- docs/data-processing/apis/grpc/example.rst | 2 - docs/data-processing/apis/index.rst | 6 +- docs/data-processing/geodata.rst | 9 +-- docs/data-processing/glossary.rst | 2 +- .../httpx/install-example.ipynb | 4 +- docs/data-processing/intake/index.rst | 2 +- .../nosql/column-oriented-db.rst | 6 +- .../nosql/document-oriented-db.rst | 14 ++-- docs/data-processing/nosql/graph-db.rst | 6 +- .../data-processing/nosql/key-value-store.rst | 16 ++-- docs/data-processing/nosql/object-db.rst | 4 +- docs/data-processing/nosql/xml-db.rst | 4 +- docs/data-processing/opendata.rst | 6 +- docs/data-processing/postgresql/alembic.rst | 7 +- docs/data-processing/postgresql/db-api.rst | 9 +-- docs/data-processing/postgresql/fdw.rst | 12 +-- .../postgresql/ipython-sql.rst | 2 +- .../postgresql/postgis/index.rst | 4 +- .../postgresql/postgis/load.rst | 11 +-- docs/data-processing/remote-file-systems.rst | 6 +- .../serialisation-formats/csv/example.ipynb | 2 +- .../serialisation-formats/csv/index.rst | 2 +- .../serialisation-formats/json/index.rst | 6 +- .../serialisation-formats/others.rst | 12 +-- .../serialisation-formats/pickle/index.rst | 2 +- .../serialisation-formats/protobuf.rst | 6 +- .../serialisation-formats/toml/index.rst | 2 +- .../serialisation-formats/xml-html/index.rst | 2 +- .../serialisation-formats/yaml/index.rst | 2 +- docs/performance/dask.ipynb | 4 +- docs/performance/index.rst | 4 +- docs/performance/parallelise-pandas.rst | 8 +- docs/performance/threading-example.ipynb | 2 +- docs/productive/cite/data.rst | 12 +-- docs/productive/cite/index.rst | 2 +- docs/productive/cite/journals.rst | 18 ++--- docs/productive/cite/software/git2prov.rst | 2 +- docs/productive/cite/software/hermes.rst | 8 +- docs/productive/cite/software/index.rst | 8 +- docs/productive/dvc/dag.rst | 2 +- docs/productive/dvc/index.rst | 2 +- docs/productive/dvc/init.rst | 4 +- docs/productive/dvc/metrics.rst | 8 +- docs/productive/dvc/pipeline.rst | 4 +- docs/productive/envs/pipenv/install.rst | 2 +- docs/productive/envs/pipenv/use.rst | 10 +-- docs/productive/envs/spack/index.rst | 4 +- .../git/advanced/gitlab/github-migration.rst | 4 +- docs/productive/git/advanced/gitlab/index.rst | 12 +-- docs/productive/git/advanced/hooks/ci.rst | 2 +- docs/productive/git/advanced/hooks/hooks.rst | 6 +- docs/productive/git/advanced/internals.rst | 12 +-- .../git/advanced/jupyter-notebooks.rst | 9 ++- .../vs-code/gitlab-vscode-extension.rst | 6 +- docs/productive/git/best-practices.rst | 10 +-- docs/productive/git/index.rst | 2 +- docs/productive/git/install-config.rst | 21 ++--- docs/productive/git/review.rst | 2 +- .../git/workflows/feature-branches.rst | 10 +-- docs/productive/git/workflows/git-flow.rst | 6 +- docs/productive/git/workflows/monorepos.rst | 18 ++--- docs/productive/index.rst | 4 +- docs/productive/licensing.rst | 42 +++++----- docs/productive/logging/index.rst | 6 +- docs/productive/qa/code-smells.rst | 2 +- docs/productive/qa/isort.rst | 4 +- docs/productive/qa/mypy.rst | 6 +- docs/productive/qa/prettier.rst | 2 +- docs/productive/qa/pysa.rst | 7 +- docs/productive/qa/pytype.rst | 12 +-- docs/productive/qa/wily.rst | 2 +- docs/productive/security.rst | 6 +- docs/workspace/numpy/transpose.ipynb | 2 +- .../pandas/descriptive-statistics.ipynb | 2 +- docs/workspace/pandas/index.rst | 2 +- .../pandas/string-manipulation.ipynb | 2 +- 88 files changed, 376 insertions(+), 297 deletions(-) create mode 100644 .github/workflows/docs.yml create mode 100644 .python-version diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 000000000..d1cc64073 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,27 @@ +# SPDX-FileCopyrightText: 2023 Veit Schiele +# +# SPDX-License-Identifier: BSD-3-Clause + +name: ci + +on: + pull_request: + push: + branches: [main] + +jobs: + docs: + name: Build docs and check links + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: pandoc/actions/setup@v1 + - uses: ts-graphviz/setup-graphviz@v2 + - uses: actions/setup-python@v5 + with: + cache: pip + # Keep in sync with .readthedocs.yaml + python-version-file: .python-version + - run: python -m pip install -e ".[docs]" + - run: python -m sphinx -nb html docs/ docs/_build/html + - run: python -m sphinx -b linkcheck docs/ docs/_build/html diff --git a/.python-version b/.python-version new file mode 100644 index 000000000..e4fba2183 --- /dev/null +++ b/.python-version @@ -0,0 +1 @@ +3.12 diff --git a/README.rst b/README.rst index 1791b0fce..d1b51ce8c 100644 --- a/README.rst +++ b/README.rst @@ -10,20 +10,20 @@ Quick start Status ------ -.. image:: https://img.shields.io/github/contributors/veit/python4datascience.svg +.. image:: https://img.shields.io/github/contributors/cusyio/python4datascience.svg :alt: Contributors - :target: https://github.com/veit/python4datascience/graphs/contributors -.. image:: https://img.shields.io/github/license/veit/Python4DataScience.svg + :target: https://github.com/cusyio/python4datascience/graphs/contributors +.. image:: https://img.shields.io/github/license/cusyio/Python4DataScience.svg :alt: License - :target: https://github.com/veit/python4datascience/blob/main/LICENSE -.. image:: https://results.pre-commit.ci/badge/github/veit/Python4DataScience/main.svg - :target: https://results.pre-commit.ci/latest/github/veit/python4datascience/main + :target: https://github.com/cusyio/python4datascience/blob/main/LICENSE +.. image:: https://results.pre-commit.ci/badge/github/cusyio/Python4DataScience/main.svg + :target: https://results.pre-commit.ci/repo/github/649815375 :alt: pre-commit.ci status .. image:: https://readthedocs.org/projects/python4datascience/badge/?version=latest :alt: Docs - :target: https://python4datascience.readthedocs.io/en/latest/ + :target: https://www.python4data.science/en/latest/ .. image:: https://zenodo.org/badge/DOI/10.5281/zenodo..12593850.svg - :target: https://doi.org/10.5281/zenodo..12593850 + :target: https://doi.org/10.5281/zenodo.12593850 .. image:: https://img.shields.io/badge/dynamic/json?label=Mastodon&query=totalItems&url=https%3A%2F%2Fmastodon.social%2F@Python4DataScience%2Ffollowers.json&logo=mastodon :alt: Mastodon :target: https://mastodon.social/@Python4DataScience @@ -48,7 +48,7 @@ Installation .. code-block:: console - $ curl -O https://codeload.github.com/veit/python4datascience/zip/main + $ curl -O https://codeload.github.com/cusyio/python4datascience/zip/main $ unzip main Archive: main … @@ -160,20 +160,21 @@ Installation Follow us --------- -* `GitHub `_ +* `GitHub `_ * `Mastodon `_ Pull-Requests ------------- If you have suggestions for improvements and additions, I recommend that you -create a `Fork `_ of my `GitHub -Repository `_ and make your changes -there. . You are also welcome to make a *pull request*. If the changes -contained therein are small and atomic, I’ll be happy to look at your +create a `Fork `_ of my +`GitHub Repository `_ and make +your changes there. You are also welcome to make a *pull request*. If the +changes contained therein are small and atomic, I’ll be happy to look at your suggestions. -The following guidelines help us to maintain the German translation of the tutorial: +The following guidelines help us to maintain the German translation of the +tutorial: * Write commit messages in Englisch * Start commit messages with a `Gitmoji `__ diff --git a/docs/clean-prep/bulwark.ipynb b/docs/clean-prep/bulwark.ipynb index 152f47890..aefd5367d 100644 --- a/docs/clean-prep/bulwark.ipynb +++ b/docs/clean-prep/bulwark.ipynb @@ -17,7 +17,7 @@ "source": [ "## 1. Installation\n", "\n", - "``` bash\n", + "``` console\n", "$ pipenv install bulwark\n", "Installing bulwark…\n", "Adding bulwark to Pipfile's [packages]…\n", diff --git a/docs/clean-prep/dask-pipeline.ipynb b/docs/clean-prep/dask-pipeline.ipynb index adba4cf3f..7a82f38a6 100644 --- a/docs/clean-prep/dask-pipeline.ipynb +++ b/docs/clean-prep/dask-pipeline.ipynb @@ -16,7 +16,7 @@ "In this notebook we will use two APIs:\n", "\n", "1. [Google Maps Geocoder](https://developers.google.com/maps/documentation/geocoding/overview)\n", - "2. [Open Notify API for ISS location](http://api.open-notify.org/)\n", + "2. [Open Notify API for ISS location](http://api.open-notify.org)\n", "\n", "We will use them to track ISS location and next transit time with respect to a list of cities. To create our charts and parallelise data intelligently, we will use Dask, specifically [Dask Delayed](../performance/dask.ipynb)." ] diff --git a/docs/clean-prep/deduplicate.ipynb b/docs/clean-prep/deduplicate.ipynb index b699ccf25..10f6274de 100644 --- a/docs/clean-prep/deduplicate.ipynb +++ b/docs/clean-prep/deduplicate.ipynb @@ -6,7 +6,7 @@ "source": [ "# Deduplicating data\n", "\n", - "In this notebook, we deduplicate data using the [Dedupe](https://docs.dedupe.io/) library, which uses a flat neural network to learn from a little training.\n", + "In this notebook, we deduplicate data using the [Dedupe](https://docs.dedupe.io/en/latest/) library, which uses a flat neural network to learn from a little training.\n", "\n", "
\n", "\n", @@ -961,7 +961,7 @@ "source": [ "## 3. dedupe\n", "\n", - "Alternatively, we can detect the duplicated data with the [Dedupe](https://docs.dedupe.io/) library, which uses a flat neural network to learn from a small training.\n", + "Alternatively, we can detect the duplicated data with the [Dedupe](https://docs.dedupe.io/en/latest/) library, which uses a flat neural network to learn from a small training.\n", "\n", "
\n", "\n", diff --git a/docs/clean-prep/index.rst b/docs/clean-prep/index.rst index 26833f138..b37e328c2 100644 --- a/docs/clean-prep/index.rst +++ b/docs/clean-prep/index.rst @@ -32,13 +32,13 @@ Overview "`TDDA `_",".. image:: https://raster.shields.io/github/stars/tdda/tdda",".. image:: https://raster.shields.io/github/contributors/tdda/tdda",".. image:: https://raster.shields.io/github/commit-activity/y/tdda/tdda",".. image:: https://raster.shields.io/github/license/tdda/tdda" "`Voluptuous `_",".. image:: https://raster.shields.io/github/stars/alecthomas/voluptuous",".. image:: https://raster.shields.io/github/contributors/alecthomas/voluptuous",".. image:: https://raster.shields.io/github/commit-activity/y/alecthomas/voluptuous",".. image:: https://raster.shields.io/github/license/alecthomas/voluptuous" "`scikit-learn `_",".. image:: https://raster.shields.io/github/stars/scikit-learn/scikit-learn",".. image:: https://raster.shields.io/github/contributors/scikit-learn/scikit-learn",".. image:: https://raster.shields.io/github/commit-activity/y/scikit-learn/scikit-learn",".. image:: https://raster.shields.io/github/license/scikit-learn/scikit-learn" - "`pandera `_",".. image:: https://raster.shields.io/github/stars/pandera-dev/pandera",".. image:: https://raster.shields.io/github/contributors/pandera-dev/pandera",".. image:: https://raster.shields.io/github/commit-activity/y/pandera-dev/pandera",".. image:: https://raster.shields.io/github/license/pandera-dev/pandera" + "`pandera `_",".. image:: https://raster.shields.io/github/stars/unionai-oss/pandera",".. image:: https://raster.shields.io/github/contributors/unionai-oss/pandera",".. image:: https://raster.shields.io/github/commit-activity/y/unionai-oss/pandera",".. image:: https://raster.shields.io/github/license/unionai-oss/pandera" "`Validr `_",".. image:: https://raster.shields.io/github/stars/guyskk/validr",".. image:: https://raster.shields.io/github/contributors/guyskk/validr",".. image:: https://raster.shields.io/github/commit-activity/y/guyskk/validr",".. image:: https://raster.shields.io/github/license/guyskk/validr" "`marshmallow `_",".. image:: https://raster.shields.io/github/stars/marshmallow-code/marshmallow",".. image:: https://raster.shields.io/github/contributors/marshmallow-code/marshmallow",".. image:: https://raster.shields.io/github/commit-activity/y/marshmallow-code/marshmallow",".. image:: https://raster.shields.io/github/license/marshmallow-code/marshmallow" "`datacleaner `_",".. image:: https://raster.shields.io/github/stars/rhiever/datacleaner",".. image:: https://raster.shields.io/github/contributors/rhiever/datacleaner",".. image:: https://raster.shields.io/github/commit-activity/y/rhiever/datacleaner",".. image:: https://raster.shields.io/github/license/rhiever/datacleaner" "`Probatus `_",".. image:: https://raster.shields.io/github/stars/ing-bank/probatus",".. image:: https://raster.shields.io/github/contributors/ing-bank/probatus",".. image:: https://raster.shields.io/github/commit-activity/y/ing-bank/probatus",".. image:: https://raster.shields.io/github/license/ing-bank/probatus" "`popmon `_",".. image:: https://raster.shields.io/github/stars/ing-bank/popmon",".. image:: https://raster.shields.io/github/contributors/ing-bank/popmon",".. image:: https://raster.shields.io/github/commit-activity/y/ing-bank/popmon",".. image:: https://raster.shields.io/github/license/ing-bank/popmon" - "`Pandas Profiling `_",".. image:: https://raster.shields.io/github/stars/ydataai/pandas-profiling",".. image:: https://raster.shields.io/github/contributors/ydataai/pandas-profiling",".. image:: https://raster.shields.io/github/commit-activity/y/ydataai/pandas-profiling",".. image:: https://raster.shields.io/github/license/ydataai/pandas-profiling" + "ydata-profiling `_",".. image:: https://raster.shields.io/github/stars/ydataai/ydata-profiling",".. image:: https://raster.shields.io/github/contributors/ydataai/ydata-profiling",".. image:: https://raster.shields.io/github/commit-activity/y/ydataai/ydata-profiling",".. image:: https://raster.shields.io/github/license/ydataai/ydata-profiling" "`pandas-validation `_",".. image:: https://raster.shields.io/github/stars/jmenglund/pandas-validation",".. image:: https://raster.shields.io/github/contributors/jmenglund/pandas-validation",".. image:: https://raster.shields.io/github/commit-activity/y/jmenglund/pandas-validation",".. image:: https://raster.shields.io/github/license/jmenglund/pandas-validation" "`PandasSchema `_",".. image:: https://raster.shields.io/github/stars/multimeric/PandasSchema",".. image:: https://raster.shields.io/github/contributors/multimeric/PandasSchema",".. image:: https://raster.shields.io/github/commit-activity/y/multimeric/PandasSchema",".. image:: https://raster.shields.io/github/license/multimeric/PandasSchema" "`Opulent-Pandas `_",".. image:: https://raster.shields.io/github/stars/danielvdende/opulent-pandas",".. image:: https://raster.shields.io/github/contributors/danielvdende/opulent-pandas",".. image:: https://raster.shields.io/github/commit-activity/y/danielvdende/opulent-pandas",".. image:: https://raster.shields.io/github/license/danielvdende/opulent-pandas" diff --git a/docs/clean-prep/scikit-learn-reprocessing.ipynb b/docs/clean-prep/scikit-learn-reprocessing.ipynb index a168d9c8a..1a7382b3a 100644 --- a/docs/clean-prep/scikit-learn-reprocessing.ipynb +++ b/docs/clean-prep/scikit-learn-reprocessing.ipynb @@ -258,7 +258,7 @@ "source": [ "### 3. Attribute the mean value to missing values\n", "\n", - "For this we use the `mean` strategy of [sklearn.impute.SimpleImputer](https://scikit-learn.org/stable/modules/generated/sklearn.impute.SimpleImputer.html#sklearn-impute-simpleimputer):" + "For this we use the `mean` strategy of [sklearn.impute.SimpleImputer](https://scikit-learn.org/stable/modules/generated/sklearn.impute.SimpleImputer.html#simpleimputer):" ] }, { diff --git a/docs/conf.py b/docs/conf.py index d5e703afa..edf0fa17f 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -150,37 +150,86 @@ intersphinx_mapping = { "jupyter-tutorial": ( - "https://jupyter-tutorial.readthedocs.io/en/latest/", + "https://jupyter-tutorial.readthedocs.io/en/latest", None, ), "python": ("https://docs.python.org/3", None), - "ipython": ("https://ipython.readthedocs.io/en/latest/", None), - "pytest": ("https://docs.pytest.org/en/latest/", None), + "ipython": ("https://ipython.readthedocs.io/en/latest", None), + "pytest": ("https://docs.pytest.org/en/latest", None), "jupyter-notebook": ( - "https://jupyter-notebook.readthedocs.io/en/stable/", + "https://jupyter-notebook.readthedocs.io/en/stable", None, ), - "jupyterhub": ("https://jupyterhub.readthedocs.io/en/stable/", None), - "nbconvert": ("https://nbconvert.readthedocs.io/en/latest/", None), + "jupyterhub": ("https://jupyterhub.readthedocs.io/en/stable", None), + "nbconvert": ("https://nbconvert.readthedocs.io/en/latest", None), "jupyter-contrib-nbextensions": ( - "https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/", + "https://jupyter-contrib-nbextensions.readthedocs.io/en/latest", None, ), - "sphinx": ("https://www.sphinx-doc.org/en/master/", None), - "nbsphinx": ("https://nbsphinx.readthedocs.io/en/0.4.2/", None), - "pipenv": ("https://pipenv.pypa.io/en/latest/", None), - "spack": ("https://spack-tutorial.readthedocs.io/en/latest/", None), - "ipyparallel": ("https://ipyparallel.readthedocs.io/en/latest/", None), - "bokeh": ("https://docs.bokeh.org/en/latest/", None), - "pandas": ("https://pandas.pydata.org/pandas-docs/stable/", None), - "pyviz": ("https://pyviz-tutorial.readthedocs.io/de/latest/", None), + "sphinx": ("https://www.sphinx-doc.org/en/master", None), + "nbsphinx": ("https://nbsphinx.readthedocs.io/en/0.4.2", None), + "pipenv": ("https://pipenv.pypa.io/en/latest", None), + "spack": ("https://spack-tutorial.readthedocs.io/en/latest", None), + "ipyparallel": ("https://ipyparallel.readthedocs.io/en/latest", None), + "bokeh": ("https://docs.bokeh.org/en/latest", None), + "pandas": ("https://pandas.pydata.org/pandas-docs/stable", None), + "pyviz": ("https://pyviz-tutorial.readthedocs.io/de/latest", None), "python-basics": ( - "https://python-basics-tutorial.readthedocs.io/en/latest/", + "https://python-basics-tutorial.readthedocs.io/en/latest", None, ), } +# All HTTP redirections from the source URI to the canonical URI will be treated# as "working". +linkcheck_allowed_redirects = { + r"https://app.pganalyze.com/": r"https://app.pganalyze.com/users/sign_in", + r"https://doi.org/10.5281/zenodo.12593850": r"https://zenodo.org/records/12593850", + r"https://itsdangerous.palletsprojects.com/": r"https://itsdangerous.palletsprojects.com/en/2.2.x/", + r"https://jinja.palletsprojects.com/": r"https://jinja.palletsprojects.com/en/3.1.x/", + r"https://www.monetdb.org/Documentation": r"https://www.monetdb.org/documentation-Aug2024/", + r"https://ohwr.org/cern_ohl_p_v2.txt": r"https://ohwr.org/project/cernohl/-/wikis/uploads/3eff4154d05e7a0459f3ddbf0674cae4/cern_ohl_p_v2.txt", + r"https://ohwr.org/cern_ohl_s_v2.txt": r"https://ohwr.org/project/cernohl/-/wikis/uploads/819d71bea3458f71fba6cf4fb0f2de6b/cern_ohl_s_v2.txt", + r"https://ohwr.org/cern_ohl_w_v2.txt": r"https://ohwr.org/project/cernohl/-/wikis/uploads/82b567f43ce515395f7ddbfbad7a8806/cern_ohl_w_v2.txt", + r"https://proj.org/": r"https://proj.org/en/9.5/", + r"https://sqlalchemy-imageattach.readthedocs.io/": r"https://sqlalchemy-imageattach.readthedocs.io/en/1.1.0/", +} + +linkcheck_ignore = [ + r".*/_sources/.*/*.txt", + r"http://127.0.0.1:8000/", + r"https://docs.arangodb.com/", + r"https://github.com/cusyio/python4datascience/fork", + r"https://iopscience.iop.org/journal/*", + r"https://sandbox.zenodo.org/account/settings/applications/tokens/new/", + # Anchor not found + r"https://github.com/facebook/sapp/blob/main/README.md#command-line-interface", + r"https://github.com/github/codeql-action/blob/main/README.md#usage", + r"https://github.com/ohmyzsh/ohmyzsh/blob/master/plugins/git/README.md#aliases", + r"https://github.com/spring-projects/spring-framework/blob/30bce7/CONTRIBUTING.md#format-commit-messages", + r"https://github.com/torvalds/subsurface-for-dirk/blob/master/README.md#contributing", + # 403 Client Error: Forbidden for url + r"https://codebeautify.org/yaml-validator", + r"https://collections.plos.org/collection/software/", + r"https://currentprotocols.onlinelibrary.wiley.com/journal/1934340x", + r"https://data.unicef.org/", + r"https://direct.mit.edu/artl", + r"https://besjournals.onlinelibrary.wiley.com/journal/*", + r"https://journals.sagepub.com/home/*", + r"https://doi.org/10.1002/asi.23538", + r"https://linux.die.net/man/", + r"https://onlinelibrary.wiley.com/", + r"https://pubs.acs.org/journal/", + r"https://www.cell.com/", + r"https://www.journals.elsevier.com/", + r"https://www.psychonomic.org/", + r"https://www.reddit.com/r/datasets/", + r"https://www.sciencedirect.com/journal/", + r"https://www.siam.org/publications/journals/", + r"https://www.tandfonline.com/", +] + + def setup(app): # from sphinx.ext.autodoc import cut_lines # app.connect('autodoc-process-docstring', cut_lines(4, what=['module'])) diff --git a/docs/data-processing/apis/fastapi/extensions.rst b/docs/data-processing/apis/fastapi/extensions.rst index f455a6e34..82f6145ba 100644 --- a/docs/data-processing/apis/fastapi/extensions.rst +++ b/docs/data-processing/apis/fastapi/extensions.rst @@ -100,7 +100,7 @@ Authentication ORMs ---- -`SQLModel `_ +`SQLModel `_ Library for the interaction of SQL databases with Python objects .. image:: https://raster.shields.io/pypi/dm/sqlmodel @@ -144,11 +144,11 @@ ORMs `ormar `_ Asynchronous mini-ORM, with which you only need to maintain one set of models and migrate them with :doc:`/data-processing/postgresql/alembic` if - necessary (→ `example `__); it is - also supported by `fastapi-users - `_, `fastapi-crudrouter - `_ and `fastapi-pagination - `_ + necessary (→ `example + `__); it is also supported + by `fastapi-users `_, + `fastapi-crudrouter `_ and + `fastapi-pagination `_ .. image:: https://raster.shields.io/pypi/dm/ormar :alt: Downloads @@ -252,10 +252,10 @@ ODMs .. image:: https://raster.shields.io/github/license/MongoEngine/mongoengine :alt: License -`Beanie `_ +`Beanie `_ Asynchronous Python object document mapper (ODM) for MongoDB, based on `Motor `_ and `Pydantic - `__ + `__ .. image:: https://raster.shields.io/pypi/dm/beanie :alt: Downloads @@ -268,7 +268,7 @@ ODMs `ODMantic `_ Asynchronous ODM (Object Document Mapper) for MongoDB based on Python type - hints and `pydantic `__ + hints and `pydantic `__ .. image:: https://raster.shields.io/pypi/dm/odmantic :alt: Downloads diff --git a/docs/data-processing/apis/fastapi/index.rst b/docs/data-processing/apis/fastapi/index.rst index f55ae2ddd..2f8049bf5 100644 --- a/docs/data-processing/apis/fastapi/index.rst +++ b/docs/data-processing/apis/fastapi/index.rst @@ -10,7 +10,7 @@ FastAPI is a web framework for building APIs with Python 3.6+ based type hints. Key features are: * very high performance thanks to `pydantic - `_ for the data part and `Starlette + `_ for the data part and `Starlette `_ for the web part. * fast and easy to code @@ -28,11 +28,11 @@ Key features are: * robust, production-ready code with automatic interactive documentation * based on the open standards for APIs: `OpenAPI `_ - formerly known as Swagger) and `JSON Schema `_ + formerly known as Swagger) and `JSON Schema `_ .. seealso:: * `Home `_ - * `GitHub `_ + * `GitHub `_ .. toctree:: :hidden: diff --git a/docs/data-processing/apis/fastapi/tips.rst b/docs/data-processing/apis/fastapi/tips.rst index 9e6e1e0af..60e5bf896 100644 --- a/docs/data-processing/apis/fastapi/tips.rst +++ b/docs/data-processing/apis/fastapi/tips.rst @@ -12,7 +12,7 @@ If you want to use * `SQLModel `_ for Python database interaction (ORM) -* `Pydantic `_ for data validation +* `Pydantic `_ for data validation * `PostgreSQL `_ for data storage the data structure could look like this: diff --git a/docs/data-processing/apis/grpc/example.rst b/docs/data-processing/apis/grpc/example.rst index 4b94fc20c..c3b8ac5b7 100644 --- a/docs/data-processing/apis/grpc/example.rst +++ b/docs/data-processing/apis/grpc/example.rst @@ -18,7 +18,6 @@ simple example :download:`accounts.proto`: .. literalinclude:: accounts.proto :caption: accounts.proto - :name: accounts.proto :language: proto :lines: 1-7 @@ -42,7 +41,6 @@ parameters and return types specified as protocol buffer messages: .. literalinclude:: accounts.proto :caption: accounts.proto - :name: accounts.proto :language: proto :lines: 8- diff --git a/docs/data-processing/apis/index.rst b/docs/data-processing/apis/index.rst index f99c1ae31..83c98a6fc 100644 --- a/docs/data-processing/apis/index.rst +++ b/docs/data-processing/apis/index.rst @@ -7,7 +7,7 @@ APIs can be used to provide the data. :doc:`fastapi/index` is a library that can generate APIs and documentation based on `OpenAPI `_ -and `JSON Schema `_. :doc:`grpc/index`, on the other +and `JSON Schema `_. :doc:`grpc/index`, on the other hand, is a modern open source RPC framework that uses HTTP/2 and QUIC. To determine the design of your API, you can follow `Zalando’s API Styleguide @@ -15,7 +15,7 @@ To determine the design of your API, you can follow `Zalando’s API Styleguide `Zally `_ to automatically check the quality of your API. You can also define your own rules for Zally, see `Rule Development Manual -`_. +`_. .. seealso:: * `REST API Design – Resource Modeling @@ -28,7 +28,7 @@ Manual `_ * `Build APIs You Won’t Hate `_ * `Representational State Transfer (REST) - `_ + `_ .. toctree:: :hidden: diff --git a/docs/data-processing/geodata.rst b/docs/data-processing/geodata.rst index 38dbd7389..20b81a880 100644 --- a/docs/data-processing/geodata.rst +++ b/docs/data-processing/geodata.rst @@ -28,7 +28,7 @@ Software Reading and writing ~~~~~~~~~~~~~~~~~~~ -`Geospatial Data Abstraction Library (GDAL) `_ +`Geospatial Data Abstraction Library (GDAL) `_ provides a low-level but more powerful API for reading and writing hundreds of data formats. @@ -138,11 +138,10 @@ Reading and writing Remote sensing ~~~~~~~~~~~~~~ -`Satpy `_ +`Satpy `_ Easy to use API for sensors of satellite images like `MODIS `_, `Sentinel-2 - `_ :abbr:`etc - (et cetera)`. + `_ :abbr:`etc (et cetera)`. .. image:: https://raster.shields.io/github/stars/pytroll/satpy @@ -223,7 +222,7 @@ General purposes .. image:: https://raster.shields.io/github/license/symerio/pgeocode -`Arcpy `_ +`Arcpy `_ is used by `Esri ArcGIS `_ to perform geographic data analysis, data conversion, data management, and map automation. diff --git a/docs/data-processing/glossary.rst b/docs/data-processing/glossary.rst index c225b0c8f..374c0d5a6 100644 --- a/docs/data-processing/glossary.rst +++ b/docs/data-processing/glossary.rst @@ -94,7 +94,7 @@ Glossary Cassandra provides two different APIs: `Thrift `_ and `CQL (Cassandra Query Language) - `_. + `_. Column Family Column families correspond to tables in relational databases. They group diff --git a/docs/data-processing/httpx/install-example.ipynb b/docs/data-processing/httpx/install-example.ipynb index 36c0ca48b..a624f16ac 100644 --- a/docs/data-processing/httpx/install-example.ipynb +++ b/docs/data-processing/httpx/install-example.ipynb @@ -33,7 +33,7 @@ "source": [ "## Example OSM Nominatim API\n", "\n", - "In this example we get our data from the [OpenStreetMap Nominatim API](https://nominatim.org/release-docs/develop/api/Overview/#nominatim-api). This can be reached via the URL `https://nominatim.openstreetmap.org/search?`. To e.g. receive information about the Berlin Congress Center in Berlin in JSON format, the URL `https://nominatim.openstreetmap.org/search.php?q=Alexanderplatz+Berlin&format=json` should be given, and if you want to display the corresponding map section you just have to leave out `&format=json`.\n", + "In this example we get our data from the [OpenStreetMap Nominatim API](https://nominatim.org/release-docs/develop/api/Overview/). This can be reached via the URL `https://nominatim.openstreetmap.org/search?`. To e.g. receive information about the Berlin Congress Center in Berlin in JSON format, the URL `https://nominatim.openstreetmap.org/search.php?q=Alexanderplatz+Berlin&format=json` should be given, and if you want to display the corresponding map section you just have to leave out `&format=json`.\n", "\n", "Then we define the search URL and the parameters. Nominatim expects at least the following two parameters\n", "\n", @@ -381,7 +381,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "However, `lru_cache` only saves the results during a session. If a script terminates because of a timeout or an exception, the results are lost. If the data is to be saved more permanently, tools such as [joblib](https://joblib.readthedocs.io/) or [python-diskcache](http://www.grantjenks.com/docs/diskcache/) can be used." + "However, `lru_cache` only saves the results during a session. If a script terminates because of a timeout or an exception, the results are lost. If the data is to be saved more permanently, tools such as [joblib](https://joblib.readthedocs.io/en/stable/) or [python-diskcache](https://grantjenks.com/docs/diskcache/) can be used." ] } ], diff --git a/docs/data-processing/intake/index.rst b/docs/data-processing/intake/index.rst index b5786a49e..798e0835d 100644 --- a/docs/data-processing/intake/index.rst +++ b/docs/data-processing/intake/index.rst @@ -10,7 +10,7 @@ is not only interesting for data scientists and engineers, but also for data providers. .. seealso:: - * `Docs `_ + * `Docs `_ * `GitHub `_ * `Intake: Taking the Pain out of Data Access `_ diff --git a/docs/data-processing/nosql/column-oriented-db.rst b/docs/data-processing/nosql/column-oriented-db.rst index 1c5aa4e00..456385e52 100644 --- a/docs/data-processing/nosql/column-oriented-db.rst +++ b/docs/data-processing/nosql/column-oriented-db.rst @@ -54,8 +54,8 @@ Examples of column-oriented database systems are :term:`Cassandra`, | | | DFS or GlusterFS | | +------------------------+--------------------------------+--------------------------------+--------------------------------+ -.. _`Cassandra`: https://cassandra.apache.org/ -.. _`Hypertable`: https://hypertable.org/ +.. _`Cassandra`: https://cassandra.apache.org/_/index.html +.. _`Hypertable`: https://hypertable.com .. _`HBase`: https://hbase.apache.org/ .. _`apache/cassandra`: https://github.com/apache/cassandra .. _`vicaya/hypertable`: https://github.com/vicaya/hypertable @@ -63,5 +63,5 @@ Examples of column-oriented database systems are :term:`Cassandra`, .. _`cassandra.apache.org/doc/`: https://cassandra.apache.org/doc/latest/ .. _`hypertable.com/documentation`: https://hypertable.com/documentation/ .. _`hbase.apache.org/book.html`: https://hbase.apache.org/book.html -.. _`Cassandra Query Language (CQL)`: https://cassandra.apache.org/doc/latest/cql/ +.. _`Cassandra Query Language (CQL)`: https://cassandra.apache.org/doc/stable/cassandra/cql/ .. _`Hypertable Query Language (HQL)`: https://hypertable.com/documentation/reference_manual/hql/ diff --git a/docs/data-processing/nosql/document-oriented-db.rst b/docs/data-processing/nosql/document-oriented-db.rst index 3c27bcfb3..38cf6786a 100644 --- a/docs/data-processing/nosql/document-oriented-db.rst +++ b/docs/data-processing/nosql/document-oriented-db.rst @@ -19,7 +19,7 @@ OrientDB and ArangoDB. +------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+ | **GitHub** | `mongodb/mongo`_ | `apache/couchdb`_ | `basho/riak`_ | `orientechnologies/orientdb`_ | `arangodb/arangodb`_ | +------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+ -| **Docs** | `docs.mongodb.com`_ | `docs.couchdb.org`_ | `docs.riak.com`_ | `www.orientdb.com/docs`_ | `arangodb.com/documentation/`_ | +| **Docs** | `www.mongodb.com/docs`_ | `docs.couchdb.org`_ | `docs.riak.com`_ | `orientdb.dev/docs`_ | `docs.arangodb.com/`_ | +------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+ | **Application areas** | IoT, Mobile apps, CMS, | Mobile, CRM, CMS, … | Session storage, Log data, | Master data management, social | Fraud Detection, IoT, | | | `simple geospatial data`_, … | | Sensor data, CMS | networks, `Time Series`_, | identity management, | @@ -56,21 +56,21 @@ OrientDB and ArangoDB. .. _`CouchDB`: https://couchdb.apache.org/ .. _`Riak`: https://riak.com/ .. _`OrientDB`: https://orientdb.dev -.. _`ArangoDB`: https://www.arangodb.com/ +.. _`ArangoDB`: https://arangodb.com .. _`mongodb/mongo`: https://github.com/mongodb/mongo .. _`apache/couchdb`: https://github.com/apache/couchdb .. _`basho/riak`: https://github.com/basho/riak .. _`orientechnologies/orientdb`: https://github.com/orientechnologies/orientdb .. _`arangodb/arangodb`: https://github.com/arangodb/arangodb -.. _`docs.mongodb.com`: https://docs.mongodb.com/ -.. _`docs.couchdb.org`: https://docs.couchdb.org/ +.. _`www.mongodb.com/docs`: https://www.mongodb.com/docs/ +.. _`docs.couchdb.org`: https://docs.couchdb.org/en/stable/ .. _`docs.riak.com`: https://docs.riak.com/ .. _`orientdb.dev/docs`: https://orientdb.dev/docs/3.2.x/index.html -.. _`arangodb.com/documentation/`: https://arangodb.com/documentation/ +.. _`docs.arangodb.com`: https://docs.arangodb.com/stable/ .. _`Time Series`: https://orientdb.dev/docs/3.2.x/gettingstarted/Time-series-use-case.html .. _`Key Value`: https://orientdb.dev/docs/3.2.x/gettingstarted/Key-Value-use-case.html .. _`Chat`: https://orientdb.dev/docs/3.2.x/gettingstarted/Chat-use-case.html .. _`Gremlin`: https://github.com/tinkerpop/gremlin/wiki -.. _`ArangoDB Query Language (AQL)`: https://www.arangodb.com/docs/stable/aql/ -.. _`simple geospatial data`: https://docs.mongodb.com/manual/core/geospatial-indexes/ +.. _`ArangoDB Query Language (AQL)`: https://docs.arangodb.com/3.11/aql/ +.. _`simple geospatial data`: https://www.mongodb.com/docs/manual/core/indexes/index-types/geospatial/2d/internals/ .. _`BSON`: http://www.bsonspec.org/ diff --git a/docs/data-processing/nosql/graph-db.rst b/docs/data-processing/nosql/graph-db.rst index b200a741b..3632da9c5 100644 --- a/docs/data-processing/nosql/graph-db.rst +++ b/docs/data-processing/nosql/graph-db.rst @@ -55,7 +55,7 @@ Typical graph databases are Neo4j, OrientDB and ArangoDB. +------------------------+--------------------------------+--------------------------------+--------------------------------+ | **GitHub** | `neo4j/neo4j`_ | `orientechnologies/orientdb`_ | `arangodb/arangodb`_ | +------------------------+--------------------------------+--------------------------------+--------------------------------+ -| **Docs** | `neo4j.com/docs/`_ | `orientdb.dev/docs/`_ | `arangodb.com/documentation/`_ | +| **Docs** | `neo4j.com/docs/`_ | `orientdb.dev/docs/`_ | `docs.arangodb.com`_ | +------------------------+--------------------------------+--------------------------------+--------------------------------+ | **Application areas** | CMS, social networks, | Master data management, social | Fraud Detection, IoT, | | | GIS systems, ERP, … | networks, `time series`_, | identity management,, | @@ -106,14 +106,14 @@ Typical graph databases are Neo4j, OrientDB and ArangoDB. .. _`Neo4j`: https://neo4j.com .. _`OrientDB`: https://orientdb.dev .. _`neo4j/neo4j`: https://github.com/neo4j/neo4j -.. _`ArangoDB`: https://www.arangodb.com/ +.. _`ArangoDB`: https://arangodb.com .. _`orientechnologies/orientdb`: https://github.com/orientechnologies/orientdb .. _`arangodb/arangodb`: https://github.com/arangodb/arangodb .. _`time series`: https://orientdb.dev/docs/3.2.x/gettingstarted/Time-series-use-case.html .. _`key value`: https://orientdb.dev/docs/3.2.x/gettingstarted/Key-Value-use-case.html .. _`neo4j.com/docs/`: https://neo4j.com/docs/ .. _`orientdb.dev/docs/`: https://orientdb.dev/docs/3.2.x/index.html -.. _`arangodb.com/documentation/`: https://arangodb.com/documentation/ +.. _`docs.arangodb.com`: https://docs.arangodb.com/ .. _`Extended SQL`: https://orientdb.dev/docs/3.2.x/sql/index.html .. _`Cypher`: https://neo4j.com/docs/1.4/cypher-query-lang.html .. _`Gremlin`: https://github.com/tinkerpop/gremlin/wiki diff --git a/docs/data-processing/nosql/key-value-store.rst b/docs/data-processing/nosql/key-value-store.rst index 0eea3dc0b..aeee43d14 100644 --- a/docs/data-processing/nosql/key-value-store.rst +++ b/docs/data-processing/nosql/key-value-store.rst @@ -18,10 +18,10 @@ Key/value database systems are e.g. Riak, Cassandra, Redis and MongoDB. +------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+ | **GitHub** | `basho/riak`_ | `apache/cassandra`_ | `redis/redis`_ | `mongodb/mongo`_ | +------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+ -| **Docs** | `docs.riak.com`_ | `cassandra.apache.org/doc/`_ | `redis.io/documentation`_ | `docs.mongodb.com`_ | +| **Docs** | `docs.riak.com`_ | `cassandra.apache.org/doc/`_ | `redis.io/docs`_ | `www.mongodb.com/docs`_ | +------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+ | **Application areas** | Session storage, Log data, | Georedundancy, high writing | Session Cache, Full Page | IoT, Mobile apps, CMS, | -| | Sensor data, CMS | speed, democratic peer-to-peer | Cache (FPC), Queues, Pub/Sub | `simple geospatial data`_, … | +| | Sensor data, CMS | speed, democratic peer-to-peer | Cache (FPC), Queues, Pub/Sub | `2d Index Internals`_, … | | | | (P2P) architecture, data with | | | | | | a defined lifetime | | | +------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+ @@ -61,7 +61,7 @@ Key/value database systems are e.g. Riak, Cassandra, Redis and MongoDB. +------------------------+--------------------------------+--------------------------------+--------------------------------+--------------------------------+ .. _`Riak`: https://riak.com/ -.. _`Cassandra`: https://cassandra.apache.org/ +.. _`Cassandra`: https://cassandra.apache.org/_/index.html .. _`Redis`: https://redis.io/ .. _`MongoDB`: https://www.mongodb.com/ .. _`basho/riak`: https://github.com/basho/riak @@ -70,12 +70,12 @@ Key/value database systems are e.g. Riak, Cassandra, Redis and MongoDB. .. _`mongodb/mongo`: https://github.com/mongodb/mongo .. _`docs.riak.com`: https://docs.riak.com/ .. _`cassandra.apache.org/doc/`: https://cassandra.apache.org/doc/latest/ -.. _`redis.io/documentation`: https://redis.io/documentation -.. _`docs.mongodb.com`: https://docs.mongodb.com/ -.. _`simple geospatial data`: https://docs.mongodb.com/manual/core/geospatial-indexes/ -.. _`Cassandra Query Language (CQL)`: https://cassandra.apache.org/doc/latest/cql/ +.. _`redis.io/docs`: https://redis.io/docs/latest/ +.. _`www.mongodb.com/docs`: https://www.mongodb.com/docs/ +.. _`2d Index Internals`: https://www.mongodb.com/docs/manual/core/indexes/index-types/geospatial/2d/internals/ +.. _`Cassandra Query Language (CQL)`: https://cassandra.apache.org/doc/stable/cassandra/cql/ .. _`Scylla`: https://www.scylladb.com/ -.. _`KeyDB`: https://github.com/JohnSully/KeyDB +.. _`KeyDB`: https://github.com/Snapchat/KeyDB .. _`Redict`: https://redict.io/ .. _`Valkey`: https://www.linuxfoundation.org/press/linux-foundation-launches-open-source-valkey-community .. _`BSON`: http://www.bsonspec.org/ diff --git a/docs/data-processing/nosql/object-db.rst b/docs/data-processing/nosql/object-db.rst index c6a57f959..0894c6c77 100644 --- a/docs/data-processing/nosql/object-db.rst +++ b/docs/data-processing/nosql/object-db.rst @@ -57,7 +57,7 @@ Examples of object database systems are ZODB. +------------------------+----------------------------------------+ | **GitHub** | `zopefoundation/ZODB`_ | +------------------------+----------------------------------------+ -| **Docs** | `www.zodb.org/en/latest/tutorial.html`_| +| **Docs** | `zodb.org/en/latest/tutorial.html`_ | +------------------------+----------------------------------------+ | **Application areas** | Plone, Pyramid, BTrees, volatile data | | | | @@ -84,5 +84,5 @@ Examples of object database systems are ZODB. .. _`ZODB`: hhttp://www.zodb.org/ .. _`Objectivity/DB`: https://www.objectivity.com/products/objectivitydb/ .. _`zopefoundation/ZODB`: https://github.com/zopefoundation/ZODB -.. _`www.zodb.org/en/latest/tutorial.html`: http://www.zodb.org/en/latest/tutorial.html +.. _`zodb.org/en/latest/tutorial.html`: https://zodb.org/en/latest/tutorial.html .. _`ZODB Replication Services (ZRS)`: https://pypi.org/project/zc.zrs/ diff --git a/docs/data-processing/nosql/xml-db.rst b/docs/data-processing/nosql/xml-db.rst index 0fa87abf5..f3dc0ce2d 100644 --- a/docs/data-processing/nosql/xml-db.rst +++ b/docs/data-processing/nosql/xml-db.rst @@ -42,7 +42,7 @@ Examples of XML database systems are eXist and MonetDB. | | | at the database level. | | +------------------------+------------------------------------------------+------------------------------------------------+------------------------------------------------+ -.. _`eXist`: https://exist-db.org/ +.. _`eXist`: http://exist-db.org/exist/apps/homepage/index.html .. _`MonetDB`: https://www.monetdb.org/ .. _`BaseX`: https://basex.org/ .. _`eXist-db/exist`: https://github.com/eXist-db/exist @@ -50,4 +50,4 @@ Examples of XML database systems are eXist and MonetDB. .. _`BaseXdb/basex`: https://github.com/BaseXdb/basex .. _`exist-db.org/exist/apps/doc/documentation`: https://exist-db.org/exist/apps/doc/documentation .. _`www.monetdb.org/Documentation`: https://www.monetdb.org/Documentation -.. _`docs.basex.org`: https://docs.basex.org/wiki/Main_Page +.. _`docs.basex.org`: https://docs.basex.org/main/Main_Page diff --git a/docs/data-processing/opendata.rst b/docs/data-processing/opendata.rst index e8797cbdb..36713eea4 100644 --- a/docs/data-processing/opendata.rst +++ b/docs/data-processing/opendata.rst @@ -23,7 +23,7 @@ You can get an overview of public repositories with research data e.g. in * `European data `_ * `GovData.de `_ * `US Census Bureau `_ -* `data.gov `_ +* `data.gov `_ * `Google Dataset Search `_ * `Google Public Data Search `_ * `Registry of Open Data on AWS `_ @@ -34,11 +34,11 @@ You can get an overview of public repositories with research data e.g. in * `Open Data Impact Map `_ * `CKAN `_ * `UC Irvine Machine Learning Repository - `_ + `_ * `Hugging Face Datasets `_ * `Dataverse Project `_ * `Open Data Kit `_ * `LODUM University of Münster‘s Open Data initiative - `_ + `_ * `freeCodeCamp open-data `_ * `Reddit Datasets Community `_ diff --git a/docs/data-processing/postgresql/alembic.rst b/docs/data-processing/postgresql/alembic.rst index 8da0275a2..9355a28ea 100644 --- a/docs/data-processing/postgresql/alembic.rst +++ b/docs/data-processing/postgresql/alembic.rst @@ -5,8 +5,8 @@ Alembic ======= -`Alembic `_ is based on SQLAlchemy and serves -as a database migration tool with the following functions: +`Alembic `_ is based on SQLAlchemy +and serves as a database migration tool with the following functions: * ``ALTER`` statements to a database to change the structure of tables and other constructs @@ -15,7 +15,8 @@ as a database migration tool with the following functions: * The scripts are executed in a specific order. .. seealso:: - `Auto Generating Migrations `_ + `Auto Generating Migrations + `_ Create migration environment ---------------------------- diff --git a/docs/data-processing/postgresql/db-api.rst b/docs/data-processing/postgresql/db-api.rst index f2bac9f57..985ec2262 100644 --- a/docs/data-processing/postgresql/db-api.rst +++ b/docs/data-processing/postgresql/db-api.rst @@ -9,9 +9,8 @@ The Python API for database connectors is easy to use and understand. The two main concepts are: Connection - `Connection Objects - `_ allow the - following methods: + `Connection Objects `_ + allow the following methods: ``connect(parameters…)`` opens the connection to the database @@ -47,8 +46,8 @@ Connection conn.close() Cursor - `Cursor objects `_ - are used to manage the context of a ``.fetch*()`` method. + `Cursor objects `_ are + used to manage the context of a ``.fetch*()`` method. Cursors that are created in the same connection are not isolated from one another. diff --git a/docs/data-processing/postgresql/fdw.rst b/docs/data-processing/postgresql/fdw.rst index 7e0304102..76c062147 100644 --- a/docs/data-processing/postgresql/fdw.rst +++ b/docs/data-processing/postgresql/fdw.rst @@ -25,7 +25,7 @@ ODBC Multicorn `Multicorn `_ makes it easy to develop FDWs. For - example, `SQLAlchemy `_ uses Multicorn to save + example, `SQLAlchemy `_ uses Multicorn to save your data in PostgreSQL. * `GitHub `__ @@ -75,7 +75,7 @@ NoSQL database wrappers ----------------------- Cassandra - FDW für `Cassandra `_ + FDW für `Cassandra `_ * `GitHub `__ * `rankactive `_ @@ -115,7 +115,7 @@ JSON XML FDW for XML files - * `GitHub `__ + * `GitHub `__ * `PGXN `__ .. _geo-wrappers: @@ -124,9 +124,9 @@ Geo wrappers ------------ GDAL/OGR - FDW for the `GDAL/OGR `_ driver including databases - like Oracle and SQLite as well as file formats like MapInfo, CSV, Excel, - OpenOffice, OpenStreetMap PBF and XML. + FDW for the `GDAL/OGR `_ driver including + databases like Oracle and SQLite as well as file formats like MapInfo, CSV, + Excel, OpenOffice, OpenStreetMap PBF and XML. * `GitHub `__ diff --git a/docs/data-processing/postgresql/ipython-sql.rst b/docs/data-processing/postgresql/ipython-sql.rst index 9fa2b7718..914619943 100644 --- a/docs/data-processing/postgresql/ipython-sql.rst +++ b/docs/data-processing/postgresql/ipython-sql.rst @@ -27,7 +27,7 @@ First steps In [1]: %load_ext sql #. The `SQLAlchemy URL - `_ is + `_ is used to connect to the database: .. code-block:: python diff --git a/docs/data-processing/postgresql/postgis/index.rst b/docs/data-processing/postgresql/postgis/index.rst index ee4783d9d..5002a1a2e 100644 --- a/docs/data-processing/postgresql/postgis/index.rst +++ b/docs/data-processing/postgresql/postgis/index.rst @@ -7,8 +7,8 @@ PostGIS `PostGIS `_ is an extension for PostgreSQL that includes geographic objects and functions. The extension implements i.a. the `Simple -Feature Access `_ specification of the `Open -Geospatial Consortium `_. Although PostgreSQL already +Feature Access `_ specification of the `Open +Geospatial Consortium `_. Although PostgreSQL already supports geometry types, these are insufficient for geographic tasks. Therefore, PostGIS creates its own data types that are better suited for geographic tasks. The following geometry types are supported: diff --git a/docs/data-processing/postgresql/postgis/load.rst b/docs/data-processing/postgresql/postgis/load.rst index 35e54f453..1e1ea589c 100644 --- a/docs/data-processing/postgresql/postgis/load.rst +++ b/docs/data-processing/postgresql/postgis/load.rst @@ -40,10 +40,11 @@ this data is in the public domain: The files ``.dbf``, ``.prj``, ``.shp`` and ``.shp`` form a so-called ShapeFile, a popular geospatial data format that is used by GIS software. To - load this into our database, we also need `GDAL `_, the - *Geospatial Data Abstraction Library*. When we install GDAL we also get OGR, - *OpenGIS Simple Features Reference Implementation*, a vector data translation - library that we can use to translate the shapefile into data. + load this into our database, we also need `GDAL + `_, the *Geospatial Data Abstraction Library*. + When we install GDAL we also get OGR, *OpenGIS Simple Features Reference + Implementation*, a vector data translation library that we can use to + translate the shapefile into data. #. GDAL can be easily installed with the package manager: @@ -86,7 +87,7 @@ this data is in the public domain: specifies the path to the input file .. seealso:: - * `ogr2ogr `_ + * `ogr2ogr `_ #. Check the import with ``ogrinfo`` diff --git a/docs/data-processing/remote-file-systems.rst b/docs/data-processing/remote-file-systems.rst index 4c2c6c9b5..843a55099 100644 --- a/docs/data-processing/remote-file-systems.rst +++ b/docs/data-processing/remote-file-systems.rst @@ -7,11 +7,11 @@ Remote file systems `boto3 `_ S3 -`azure-storage-blob `_ +`azure-storage-blob `_ Azure -`pydrive2 `_ +`pydrive2 `_ Google Drive -`paramiko `_ +`paramiko `_ SSH `PyArrow `_ HDFS diff --git a/docs/data-processing/serialisation-formats/csv/example.ipynb b/docs/data-processing/serialisation-formats/csv/example.ipynb index 78db9a407..736983c36 100644 --- a/docs/data-processing/serialisation-formats/csv/example.ipynb +++ b/docs/data-processing/serialisation-formats/csv/example.ipynb @@ -1832,7 +1832,7 @@ "id": "610e6ddf", "metadata": {}, "source": [ - "Then we can create a Dict with data columns by using [Dict Comprehensions](https://www.python.org/dev/peps/pep-0274/) and iterating over the values from `values` with [zip](https://docs.python.org/3/library/functions.html#zip). Note that this requires a lot of storage space for large files, as the rows are converted into columns:" + "Then we can create a Dict with data columns by using [Dict Comprehensions](https://peps.python.org/pep-0274/) and iterating over the values from `values` with [zip](https://docs.python.org/3/library/functions.html#zip). Note that this requires a lot of storage space for large files, as the rows are converted into columns:" ] }, { diff --git a/docs/data-processing/serialisation-formats/csv/index.rst b/docs/data-processing/serialisation-formats/csv/index.rst index 3e1bb8265..53dbeae3d 100644 --- a/docs/data-processing/serialisation-formats/csv/index.rst +++ b/docs/data-processing/serialisation-formats/csv/index.rst @@ -62,7 +62,7 @@ Example .. _`csv`: https://docs.python.org/3/library/csv.html .. _`pandas`: https://pandas.pydata.org/ .. _`read_excel`: https://pandas.pydata.org/docs/user_guide/io.html#io-excel-reader -.. _`iris.csv`: https://sourceforge.net/projects/irisdss/files/IRIS.csv +.. _`iris.csv`: https://sourceforge.net/projects/irisdss/files/latest/download .. toctree:: :hidden: diff --git a/docs/data-processing/serialisation-formats/json/index.rst b/docs/data-processing/serialisation-formats/json/index.rst index a682931c0..649ff690e 100644 --- a/docs/data-processing/serialisation-formats/json/index.rst +++ b/docs/data-processing/serialisation-formats/json/index.rst @@ -129,13 +129,13 @@ Response of the :ref:`OSM-Nominatim-API .. _`standard`: https://www.json.org/json-en.html .. _`JSON_Checker`: http://www.json.org/JSON_checker/ -.. _`JSON Schema Proposal`: http://json-schema.org/ +.. _`JSON Schema Proposal`: https://json-schema.org .. _`JSON Encoding Rules (JER)`: https://www.itu.int/rec/T-REC-X.697-201710-I/ .. _`Kwalify`: http://www.kuwata-lab.com/kwalify/ -.. _`Rx`: http://rx.codesimply.com/ +.. _`Rx`: https://rx.codesimply.com .. _`JSON-LD`: https://json-ld.org# .. _`JMESPath`: https://jmespath.org/ -.. _`validators`: https://json-schema.org/implementations.html#validators +.. _`validators`: https://json-schema.org/tools?query=&sortBy=name&sortOrder=ascending&groupBy=toolingTypes&licenses=&languages=&drafts=&toolingTypes=#validator .. toctree:: :hidden: diff --git a/docs/data-processing/serialisation-formats/others.rst b/docs/data-processing/serialisation-formats/others.rst index 5455db0b9..5a8fd016c 100644 --- a/docs/data-processing/serialisation-formats/others.rst +++ b/docs/data-processing/serialisation-formats/others.rst @@ -13,16 +13,16 @@ Other Formats * `Data Serialization and Deserialization `__ -`BSON `_ +`BSON `_ Short for *Binary JSON*. A binary data format mainly for :term:`MongoDB` .. seealso:: - * `Specification `__ + * `Specification `__ * `MongoDB Extended JSON - `_ + `_ * `bsondump - `_ + `_ `Cap’n Proto `_ A fast data interchange format. @@ -66,8 +66,8 @@ Other Formats .. seealso:: * `Language Guide - `_ - * `GitHub `__ + `_ + * `GitHub `__ XDR (:rfc:`4506`) Short for *External Data Representation Standard*. Useful for transferring diff --git a/docs/data-processing/serialisation-formats/pickle/index.rst b/docs/data-processing/serialisation-formats/pickle/index.rst index 27cb85449..9bf2c4177 100644 --- a/docs/data-processing/serialisation-formats/pickle/index.rst +++ b/docs/data-processing/serialisation-formats/pickle/index.rst @@ -16,7 +16,7 @@ Overview | | | Recursive objects are also possible. | +-----------------------+-------+-------------------------------------------------------+ | Standardisation | ++ | Pickle is defined in the Python Enhancement Proposals | -| | | Proposals :pep:`307`, :pep:`3154` and :pep:``574`. | +| | | Proposals :pep:`307`, :pep:`3154` and :pep:`574`. | +-----------------------+-------+-------------------------------------------------------+ | Schema IDL | -\- | No | +-----------------------+-------+-------------------------------------------------------+ diff --git a/docs/data-processing/serialisation-formats/protobuf.rst b/docs/data-processing/serialisation-formats/protobuf.rst index 173dc1aff..6a4af2bc9 100644 --- a/docs/data-processing/serialisation-formats/protobuf.rst +++ b/docs/data-processing/serialisation-formats/protobuf.rst @@ -29,14 +29,14 @@ Overview .. seealso:: - * `Home `__ + * `Home `__ * `GitHub `__ * `Language Guide (proto3) - `_ + `_ * Buf * `Home `__ - * `Docs `_ + * `Docs `_ * `GitHub `__ * :doc:`../apis/grpc/index` diff --git a/docs/data-processing/serialisation-formats/toml/index.rst b/docs/data-processing/serialisation-formats/toml/index.rst index 2f92b042a..928512cca 100644 --- a/docs/data-processing/serialisation-formats/toml/index.rst +++ b/docs/data-processing/serialisation-formats/toml/index.rst @@ -44,7 +44,7 @@ Overview .. seealso:: - * `Home `_ + * `Home `_ * `GitHub `_ * `Wiki `_ * `What is wrong with TOML? diff --git a/docs/data-processing/serialisation-formats/xml-html/index.rst b/docs/data-processing/serialisation-formats/xml-html/index.rst index 674cffbac..72ce61eef 100644 --- a/docs/data-processing/serialisation-formats/xml-html/index.rst +++ b/docs/data-processing/serialisation-formats/xml-html/index.rst @@ -44,7 +44,7 @@ Example * `Home `_ * `Specification `_ - * `Validator `_ + * `Validator `_ * `The XML FAQ `_ .. _`XML schema`: https://www.w3.org/TR/xmlschema-0/ diff --git a/docs/data-processing/serialisation-formats/yaml/index.rst b/docs/data-processing/serialisation-formats/yaml/index.rst index bead73964..333b3431d 100644 --- a/docs/data-processing/serialisation-formats/yaml/index.rst +++ b/docs/data-processing/serialisation-formats/yaml/index.rst @@ -42,7 +42,7 @@ Overview * `noyaml.com `_ .. _`Kwalify`: http://www.kuwata-lab.com/kwalify/ -.. _`Rx`: http://rx.codesimply.com/ +.. _`Rx`: https://rx.codesimply.com .. toctree:: :hidden: diff --git a/docs/performance/dask.ipynb b/docs/performance/dask.ipynb index ecc02dd9b..2b3271c2f 100644 --- a/docs/performance/dask.ipynb +++ b/docs/performance/dask.ipynb @@ -8,7 +8,7 @@ "# Dask\n", "\n", "Dask performs two different tasks:\n", - "1. it optimizes dynamic task scheduling, similar to [Airflow](https://airflow.apache.org/), [Luigi](https://github.com/spotify/luigi) or [Celery](https://docs.celeryproject.org/).\n", + "1. it optimizes dynamic task scheduling, similar to [Airflow](https://airflow.apache.org/), [Luigi](https://github.com/spotify/luigi) or [Celery](https://docs.celeryq.dev/en/stable/).\n", "2. it performs parallel data like arrays, dataframes, and lists with dynamic task scheduling." ] }, @@ -223,7 +223,7 @@ "source": [ "### Dask Bag\n", "\n", - "… imitates [iterators](https://docs.python.org/3/library/itertools.html), [Toolz](https://toolz.readthedocs.io/en/latest/index.html) und [PySpark](http://spark.apache.org/docs/latest/api/python/)." + "… imitates [iterators](https://docs.python.org/3/library/itertools.html), [Toolz](https://toolz.readthedocs.io/en/latest/index.html) und [PySpark](https://spark.apache.org/docs/latest/api/python/)." ] }, { diff --git a/docs/performance/index.rst b/docs/performance/index.rst index 30f4ce144..3ba1c8339 100644 --- a/docs/performance/index.rst +++ b/docs/performance/index.rst @@ -259,8 +259,8 @@ Task planner ------------ :doc:`jupyter-tutorial:hub/ipyparallel/index`, :doc:`dask` and `Ray -`_ can distribute tasks in a cluster. In doing so, they -have different focuses: +`_ can distribute tasks in a cluster. In doing +so, they have different focuses: * ``ipyparallel`` simply integrates into a :doc:`jupyter-tutorial:hub/index`. * :doc:`dask` imitates pandas, NumPy iterators, Toolz und PySpark when it diff --git a/docs/performance/parallelise-pandas.rst b/docs/performance/parallelise-pandas.rst index f3392f4c9..7f8aada93 100644 --- a/docs/performance/parallelise-pandas.rst +++ b/docs/performance/parallelise-pandas.rst @@ -44,11 +44,9 @@ The restrictions refer to ``pd.read_json``, which is only implemented for Dask ---- -`Dask DataFrame -`_ -is a large parallel DataFrame made up of multiple pandas DataFrames. Here, the -``dask.dataframe`` API is a subset of the pandas API, although there are minor -changes. +:ref:`Dask DataFrame ` is a large parallel DataFrame made up of +multiple pandas DataFrames. Here, the ``dask.dataframe`` API is a subset of the +pandas API, although there are minor changes. .. seealso:: diff --git a/docs/performance/threading-example.ipynb b/docs/performance/threading-example.ipynb index 11f3d63e9..817fdc0df 100644 --- a/docs/performance/threading-example.ipynb +++ b/docs/performance/threading-example.ipynb @@ -258,7 +258,7 @@ "\n", "The following rules must be observed:\n", "\n", - "1. All shared resources should be executed in exactly one thread. All communication with this thread should be done with only one atomic message queue – usually with the [queue module](https://docs.python.org/3/library/queue.html), email or message queues such as [RabbitMQ](https://www.rabbitmq.com/) or [ZeroMQ](http://zeromq.org/).\n", + "1. All shared resources should be executed in exactly one thread. All communication with this thread should be done with only one atomic message queue – usually with the [queue module](https://docs.python.org/3/library/queue.html), email or message queues such as [RabbitMQ](https://www.rabbitmq.com/) or [ZeroMQ](https://zeromq.org).\n", "\n", " Resources that require this technology include global variables, user inputs, output devices, files, sockets, etc.\n", "\n", diff --git a/docs/productive/cite/data.rst b/docs/productive/cite/data.rst index 8bd136a15..e5bcf69c3 100644 --- a/docs/productive/cite/data.rst +++ b/docs/productive/cite/data.rst @@ -10,8 +10,8 @@ DataCite Metadata Schema The DataCite Metadata Working Group published the DataCite Metadata Schema Documentation for the publication and citation of research data in 2019: -`DataCite Metadata Schema 4.3 `_ together -with a XSD (XML Schema Definition): `metadata.xsd +`DataCite Metadata Schema 4.3 `_ +together with a XSD (XML Schema Definition): `metadata.xsd `_. A simple datacite example can look like this: @@ -81,13 +81,13 @@ necessary to be able to exchange provenance information interoperably. Python prov ~~~~~~~~~~~ -With `prov `_, a Python3 library is available that -supports the import and export of the `PROV data model +With `prov `_, a Python3 library is +available that supports the import and export of the `PROV data model `_ into the following serialisation formats: * `PROV-O (RDF) `_ * `PROV-XML `_ -* `PROV-JSON `_ +* `PROV-JSON `_ In addition, PROV documents can be created with :doc:`pyviz:matplotlib/networkx` `MultiDiGraph @@ -100,4 +100,4 @@ PNG and SVG formats. `_ by Dong Huynh * `PROV Tutorial.ipynb - `_ + `_ diff --git a/docs/productive/cite/index.rst b/docs/productive/cite/index.rst index 88a31f5c8..da0b70f52 100644 --- a/docs/productive/cite/index.rst +++ b/docs/productive/cite/index.rst @@ -18,7 +18,7 @@ architects*, *technical writers* and *maintainers* can also be defined. .. seealso:: * `ICMJE: Defining the Role of Authors and Contributors - `_ + `_ * `Bot Recognize All Contributors `_ .. toctree:: diff --git a/docs/productive/cite/journals.rst b/docs/productive/cite/journals.rst index bdbd6c5ba..c04923cf1 100644 --- a/docs/productive/cite/journals.rst +++ b/docs/productive/cite/journals.rst @@ -29,7 +29,7 @@ Image processing ---------------- * `Image Processing On Line `_ -* `Insight Journal `_ +* `Insight Journal `_ Biology ------- @@ -52,7 +52,7 @@ Biology * `Database: The Journal of Biological Databases and Curation `_ * `Ecography `_ -* `eLife `_ +* `eLife `_ * `Epidemiology `_ * `Evolutionary Bioinformatics `_ @@ -63,7 +63,7 @@ Biology * `Nature Methods `_ * `Neurocomputing `_ * `Neuroinformatics - `_ + `_ * `Nucleic Acids Research `_ * `PeerJ - Life and Environment `_ * `PLoS Computational Biology: Software collection @@ -94,7 +94,7 @@ Human and social sciences * `Digital Humanities Quarterly `_ * `Journal of Artificial Societies and Social Simulation - `_ + `_ * `Journal of Economic Dynamics and Control `_ @@ -126,7 +126,7 @@ Computer science, mathematics and statistics * `Journal of Software for Algebra and Geometry `_ * `Journal of Statistical Software - `_ + `_ * `Knowledge-Based Systems `_ * `LMS Journal of Computation and Mathematics @@ -134,9 +134,9 @@ Computer science, mathematics and statistics * `The Mathematica Journal `_ * `Mathematical Programming Computation - `_ + `_ * `Numerical Algorithms - `_ + `_ * `PeerJ Computer Science `_ * `The R Journal `_ @@ -148,7 +148,7 @@ Physics and Earth Sciences -------------------------- * `AAS: The Astronomy Journal `_ -* `AAS: The Astrophysical Journal `_ +* `AAS: The Astrophysical Journal `_ * `AAS: The Astrophysical Journal Supplement Series `_ * `Astronomy and Computing `_ @@ -160,7 +160,7 @@ Physics and Earth Sciences * `Computers and Geosciences `_ * `Computing and Software for Big Science - `_ + `_ * `Environmental Modelling & Software `_ * `Geoscientific Model Development diff --git a/docs/productive/cite/software/git2prov.rst b/docs/productive/cite/software/git2prov.rst index 03e03c525..21899f210 100644 --- a/docs/productive/cite/software/git2prov.rst +++ b/docs/productive/cite/software/git2prov.rst @@ -35,5 +35,5 @@ Alternatively, Git2PROV also provides a web server with: .. seealso:: * `Git2PROV: Exposing Version Control System Content as W3C PROV - `_ + `_ * `GitHub-Repository `_ diff --git a/docs/productive/cite/software/hermes.rst b/docs/productive/cite/software/hermes.rst index 7e755cc6a..669fd474b 100644 --- a/docs/productive/cite/software/hermes.rst +++ b/docs/productive/cite/software/hermes.rst @@ -50,7 +50,7 @@ repositories. :alt: Zenodo: Neues persönliches Zugangstoken #. Copy the newly created token to a new `GitHub secret - `_ + `_ named :samp:`ZENODO_SANDBOX` in your repository: `Settings --> Secrets and Variables --> Actions --> New repository secret`: @@ -60,10 +60,10 @@ repositories. #. Configure the GitHub action The HERMES project provides templates for continuous integration in a special - repository: `hermes-hmc/ci-templates - `_. Copy the template file + repository: `softwarepub/ci-templates + `_. Copy the template file `TEMPLATE_hermes_github_to_zenodo.yml - `_ + `_ into the :file:`.github/workflows/` directory of your repository and rename it, for example to :file:`hermes_github_to_zenodo.yml`. diff --git a/docs/productive/cite/software/index.rst b/docs/productive/cite/software/index.rst index 67b279a24..5f0a33521 100644 --- a/docs/productive/cite/software/index.rst +++ b/docs/productive/cite/software/index.rst @@ -37,12 +37,12 @@ citation information for software. user-oriented software citation? `_ * `Neil Chue Hong: How to cite software: current best practice - `_ + `_ * `Recognizing the value of software: a software citation guide `_ * Stephan Druskat, Radovan Bast, Neil Chue Hong, Alexander Konovalov, Andrew Rowley, Raniere Silva: `A standard format for CITATION files - `_ + `_ * `Module-5-Open-Research-Software-and-Open-Source `_ * Software Heritage: `Save and reference research software @@ -66,10 +66,10 @@ citation information for software. Metadata formats ---------------- -The `FORCE11 `_ +The `FORCE11 `_ working group has published a paper in which the principles of scientific software citation are presented: `FORCE11 Software Citation Working Group -`_ by Arfon Smith, Daniel Katz and Kyle +`_ by Arfon Smith, Daniel Katz and Kyle Niemeyer 2016. Two projects are currently emerging for structured metadata: :doc:`codemeta` diff --git a/docs/productive/dvc/dag.rst b/docs/productive/dvc/dag.rst index e45fc7e9a..3a39b8c55 100644 --- a/docs/productive/dvc/dag.rst +++ b/docs/productive/dvc/dag.rst @@ -47,7 +47,7 @@ Such data pipelines can be displayed or represented as a dependency graph with evaluate.dvc * With ``dvc dag --dot`` a ``.dot`` file for `Graphviz - `_ is generated: + `_ is generated: .. graphviz:: diff --git a/docs/productive/dvc/index.rst b/docs/productive/dvc/index.rst index 7e302b500..24fbb725a 100644 --- a/docs/productive/dvc/index.rst +++ b/docs/productive/dvc/index.rst @@ -41,7 +41,7 @@ External dependencies can also be specified with :ref:`dvc remote `. `_ .. seealso:: - * `Tutorial `_ + * `Tutorial `_ * `Documentation `_ * `Git Repository `_ diff --git a/docs/productive/dvc/init.rst b/docs/productive/dvc/init.rst index 6f1e37803..9d79f8f5c 100644 --- a/docs/productive/dvc/init.rst +++ b/docs/productive/dvc/init.rst @@ -82,8 +82,8 @@ results with Git without having to check the file content into Git: This will add the file ``data/data.xml`` in ``data/.gitignore`` and write the meta information in ``data/data.xml.dvc``. Further information on the file -format of the ``*.dvc`` can be found under `DVC-File Format -`_. +format of the ``*.dvc`` can be found in `DVC Project Structure +`_. In order to be able to manage different versions of your project data with Git, you only have to add the CVS file: diff --git a/docs/productive/dvc/metrics.rst b/docs/productive/dvc/metrics.rst index 6e13e5ab9..6fb16ca51 100644 --- a/docs/productive/dvc/metrics.rst +++ b/docs/productive/dvc/metrics.rst @@ -5,8 +5,8 @@ Trial metrics ============= -With the `dvc metrics `_ -command, DVC is also a framework for recording and comparing the performance of +With the `dvc metrics `_ command, +DVC is also a framework for recording and comparing the performance of experiments. `evaluate.py @@ -14,8 +14,8 @@ experiments. calculates the AUC (**A** rea **U** nder the **C** urve). It uses the test data set, reads the features from the file ``features/test.pkl`` and creates the metrics file ``auc.metric``. It can be identified as a DVC metric with the -``-M`` option of `dvc run `_, in our -example with: +``-M`` option of `dvc run `_, +in our example with: .. code-block:: console diff --git a/docs/productive/dvc/pipeline.rst b/docs/productive/dvc/pipeline.rst index 21cfdfc02..e335cd6e9 100644 --- a/docs/productive/dvc/pipeline.rst +++ b/docs/productive/dvc/pipeline.rst @@ -89,5 +89,5 @@ Then the changed data only has to be transferred to Git or DVC: $ dvc push If several phases are now created with ``dvc run`` and the output of one command -being specified as a dependency of another, a `DVC Pipeline -`_ is created. +being specified as a dependency of another, a `DVC dag +`_ is created. diff --git a/docs/productive/envs/pipenv/install.rst b/docs/productive/envs/pipenv/install.rst index 0fd118060..9fac86627 100644 --- a/docs/productive/envs/pipenv/install.rst +++ b/docs/productive/envs/pipenv/install.rst @@ -107,7 +107,7 @@ overwritten: .. seealso:: Further information on user-specific installations can be found in `User Installs - `_. + `_. Create virtual environments --------------------------- diff --git a/docs/productive/envs/pipenv/use.rst b/docs/productive/envs/pipenv/use.rst index d7beff899..b9323b8ba 100644 --- a/docs/productive/envs/pipenv/use.rst +++ b/docs/productive/envs/pipenv/use.rst @@ -175,10 +175,10 @@ Example: hardened for production use and should be used only as a development aid. .. note:: - :term:`Pipenv` embeds an API client key from `pyup.io `_, - instead of including a full copy of the `CC BY-NC-SA - `_ licensed - database. + :term:`Pipenv` embeds an API client key from `safetycli.com + `_, instead of including a full copy of the `CC + BY-NC-SA `_ + licensed database. In order to install the complete database you can check it out with: @@ -267,7 +267,7 @@ compatible :term:`Wheel`. Requirement specifier ~~~~~~~~~~~~~~~~~~~~~ -`Requirement specifier `_ specify the +`Requirement specifier `_ specify the respective package. * The latest version can be installed, for example: diff --git a/docs/productive/envs/spack/index.rst b/docs/productive/envs/spack/index.rst index 35db27c74..eb603c219 100644 --- a/docs/productive/envs/spack/index.rst +++ b/docs/productive/envs/spack/index.rst @@ -13,8 +13,8 @@ Modeling and simulation environments are very heterogeneous. :doc:`Spack * Resolving different versions of dependencies .. seealso:: - * `Docs `_ - * `Tutorial `_ + * `Docs `_ + * `Tutorial `_ * `Spack Encyclopedia `_ * `GitHub `_ diff --git a/docs/productive/git/advanced/gitlab/github-migration.rst b/docs/productive/git/advanced/gitlab/github-migration.rst index c06f2d582..af974511a 100644 --- a/docs/productive/git/advanced/gitlab/github-migration.rst +++ b/docs/productive/git/advanced/gitlab/github-migration.rst @@ -156,8 +156,8 @@ Besides ``if``, GitLab also offers other rules such as ``changes``, ``exists``, .. seealso:: * `rules `_ - * `Complex rules - `_ + * `Specify when jobs run with rules + `_ Dependencies between jobs ------------------------- diff --git a/docs/productive/git/advanced/gitlab/index.rst b/docs/productive/git/advanced/gitlab/index.rst index 5353e01c4..4adde7f20 100644 --- a/docs/productive/git/advanced/gitlab/index.rst +++ b/docs/productive/git/advanced/gitlab/index.rst @@ -5,12 +5,12 @@ GitLab ====== -`GitLab `_ is a web application for version management based -on Git. Later, further functions were added such as an issue tracking system -with Kanban board, a system for `Continuous Integration and Continuous Delivery -(CI/CD) `_ as well as -a Wiki and Snippets. The GitLab Community Edition (CE) is developed as open -source software under the MIT licence and can be installed on-premises. +`GitLab `_ is a web application for version management +based on Git. Later, further functions were added such as an issue tracking +system with Kanban board, a system for `Continuous Integration and Continuous +Delivery (CI/CD) `_ +as well as a Wiki and Snippets. The GitLab Community Edition (CE) is developed +as open source software under the MIT licence and can be installed on-premises. The GitLab CI tools enable automated builds and deployments without the need for external integrations, for example building a Docker container with the Python diff --git a/docs/productive/git/advanced/hooks/ci.rst b/docs/productive/git/advanced/hooks/ci.rst index be15c54b5..413898ee1 100644 --- a/docs/productive/git/advanced/hooks/ci.rst +++ b/docs/productive/git/advanced/hooks/ci.rst @@ -21,7 +21,7 @@ Examples for GitHub Actions up to date. You can add further installations under `Install pre-commit ci - `_. + `_. :file:`.github/workflows/pre-commit.yml` Alternative configuration as a GitHub workflow, for example: diff --git a/docs/productive/git/advanced/hooks/hooks.rst b/docs/productive/git/advanced/hooks/hooks.rst index e9a0c3366..627038feb 100644 --- a/docs/productive/git/advanced/hooks/hooks.rst +++ b/docs/productive/git/advanced/hooks/hooks.rst @@ -93,11 +93,11 @@ Python Code Quality Authority conventions `docformatter `_ formats docstrings according to :pep:`257` - `pylint `_ + `pylint `_ Python linter `doc8 `_ executes doc8 for linting documents - `prospector `_ + `prospector `_ analyses Python code with prospector `isort `_ sorts Python imports @@ -137,7 +137,7 @@ Miscellaneous `pyupgrade `_ automatically updates the syntax for newer versions -`reorder-python-imports `_ +`reorder-python-imports `_ reorders imports into Python files `dead `_ detects dead Python code diff --git a/docs/productive/git/advanced/internals.rst b/docs/productive/git/advanced/internals.rst index d5a930f62..06653fb9a 100644 --- a/docs/productive/git/advanced/internals.rst +++ b/docs/productive/git/advanced/internals.rst @@ -7,16 +7,16 @@ Git’s database internals .. seealso:: * `Commits are snapshots, not diffs - `_ + `_ * Git’s database internals * `Part I: packed object store - `_ + `_ * `Part II: commit history queries - `_ + `_ * `Part III: file history queries - `_ + `_ * `Part IV: distributed synchronization - `_ + `_ * `Part V: scalability - `_ + `_ diff --git a/docs/productive/git/advanced/jupyter-notebooks.rst b/docs/productive/git/advanced/jupyter-notebooks.rst index 6b2cec15a..c318fde22 100644 --- a/docs/productive/git/advanced/jupyter-notebooks.rst +++ b/docs/productive/git/advanced/jupyter-notebooks.rst @@ -236,8 +236,8 @@ For this purpose ReviewNB is perfect. ``nbdime`` ---------- -`nbdime `_ is a GUI for `nbformat -`_ diffs and replaces `nbdiff +`nbdime `_ is a GUI for `nbformat +`_ diffs and replaces `nbdiff `_. It attempts content-aware diffing locally as well as merging notebooks, is not limited to displaying diffs, but also prevents unnecessary changes from being checked in. However, it is not @@ -249,8 +249,9 @@ compatible with ``nbdev2``. -------------- `nbstripout `_ automates *Clear all -outputs*. It uses `nbformat `_ and a few auto -magic to set up ``.git config``. In my opinion, however, it has two drawbacks: +outputs*. It uses `nbformat `_ and a +few auto magic to set up ``.git config``. In my opinion, however, it has two +drawbacks: * it is limited to the problematic metadata section * it is slow. diff --git a/docs/productive/git/advanced/vs-code/gitlab-vscode-extension.rst b/docs/productive/git/advanced/vs-code/gitlab-vscode-extension.rst index b6fba0104..54c726200 100644 --- a/docs/productive/git/advanced/vs-code/gitlab-vscode-extension.rst +++ b/docs/productive/git/advanced/vs-code/gitlab-vscode-extension.rst @@ -15,9 +15,9 @@ Display GitLab issues and merge requests `_. Create and review merge requests Issues can be commented directly in VS Code, and `GitLab Slash Commands - `_ are also - supported. You can create, edit and delete comments in the diff view of a - merge request. + `_ + are also supported. You can create, edit and delete comments in the diff + view of a merge request. Configuring and validating GitLab CI/CD You can edit the :file:`gitlab-ci.yml` file, which automatically completes the variables. You can also validate the file locally. diff --git a/docs/productive/git/best-practices.rst b/docs/productive/git/best-practices.rst index eb04fc4e5..78ca3b810 100644 --- a/docs/productive/git/best-practices.rst +++ b/docs/productive/git/best-practices.rst @@ -42,9 +42,9 @@ list of paths that git will not add unless you ask for it explicitly. You can find a template ``.gitignore`` file for Python projects in the `dotfiles `_ repository. -The `gitignore.io `_ website contains :file:`.gitignore` -files for other programming languages. -The :file:`.gitignore` file itself should be checked in, too: +The `gitignore.io `_ website +contains :file:`.gitignore` files for other programming languages. The +:file:`.gitignore` file itself should be checked in, too: .. code-block:: console @@ -316,8 +316,8 @@ with ``git stash drop``. Check your repositories for unwanted files ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -With `Gitleaks `_ you can regularly -check your repositories for unintentionally saved access data. +With `Gitleaks `_ you can regularly check +your repositories for unintentionally saved access data. You can also run Gitleaks automatically as a GitLab action. To do this, you need to include the `Secret-Detection.gitlab-ci.yml diff --git a/docs/productive/git/index.rst b/docs/productive/git/index.rst index 75171da9a..81297a720 100644 --- a/docs/productive/git/index.rst +++ b/docs/productive/git/index.rst @@ -80,7 +80,7 @@ Read more * `Flight rules for Git `_ * `First Aid git `_ * `git-tips `_ - * `Pro Git book `_ + * `Pro Git book `_ * `Git reference `_ Essentially, in this tutorial, I show on the one hand how :doc:`Jupyter diff --git a/docs/productive/git/install-config.rst b/docs/productive/git/install-config.rst index d6dc1df47..d2c60e043 100644 --- a/docs/productive/git/install-config.rst +++ b/docs/productive/git/install-config.rst @@ -110,7 +110,7 @@ However, aliases can also be specified in the :file:`~/.gitconfig` file: * `oh-my-zsh `_ * `Git plugin aliases - `_ + `_ * `zsh-you-should-use `_ @@ -267,11 +267,11 @@ If necessary, the timeout can be increased, for example with: .. tab:: Windows For Windows, `Git Credential Manager (GCM) - `_ is - available. It is integrated in `Git for Windows - `_ and is installed by default. However, - there is also a standalone Installer in `Releases - `_. + `_ is available. It + is integrated in `Git for Windows `_ and + is installed by default. However, there is also a standalone Installer in + `Releases + `_. It is configured with @@ -307,7 +307,7 @@ If necessary, the timeout can be increased, for example with: .. seealso:: * `Git Credential Manager: authentication for everyone - `_ + `_ .. _gitignore: @@ -460,9 +460,10 @@ purpose, you can set ``excludesfile`` in the :file:`~/.gitconfig` file: … .. note:: - You can find helpful templates in my `dotfiles - `__ repository or - on the `gitignore.io `_ website. + You can find helpful templates in my `dotfiles + `__ repository or + on the `gitignore.io `_ + website. Ignoring a file from the repository ::::::::::::::::::::::::::::::::::: diff --git a/docs/productive/git/review.rst b/docs/productive/git/review.rst index e42776e1d..2bc9ad71f 100644 --- a/docs/productive/git/review.rst +++ b/docs/productive/git/review.rst @@ -10,7 +10,7 @@ Review .. seealso:: * `Git’s Database Internals III: File History Queries - `_ + `_ Filter and sort ~~~~~~~~~~~~~~~ diff --git a/docs/productive/git/workflows/feature-branches.rst b/docs/productive/git/workflows/feature-branches.rst index 37590bf5e..73385c01e 100644 --- a/docs/productive/git/workflows/feature-branches.rst +++ b/docs/productive/git/workflows/feature-branches.rst @@ -57,7 +57,7 @@ repository. GitHub Flow ----------- -`GitHub Flow `_ +`GitHub Flow `_ was intended to be a greatly simplified alternative to :doc:`git-flow`, with only different feature branches in addition to the ``main`` branch. The lifecycle of a Git feature branch could then look like this: @@ -124,10 +124,10 @@ Simple Git workflow ------------------- Atlassian also recommends a `similar strategy -`_, but they -recommend :doc:`rebasing <../rebase>` the feature branches. This gives you a -linear progression by moving the changes in the feature branch to the top of the -``main`` branch before merging with a fast-forward merge. +`_, +but they recommend :doc:`rebasing <../rebase>` the feature branches. This gives +you a linear progression by moving the changes in the feature branch to the top +of the ``main`` branch before merging with a fast-forward merge. #. Use ``rebase`` to keep your feature branch up to date with ``main``: diff --git a/docs/productive/git/workflows/git-flow.rst b/docs/productive/git/workflows/git-flow.rst index 37e1b2f76..554ea4c37 100644 --- a/docs/productive/git/workflows/git-flow.rst +++ b/docs/productive/git/workflows/git-flow.rst @@ -24,9 +24,9 @@ While Git Flow is a well-defined but complex standard, it creates two practical which should only bring advantages in the rarest of cases. In response to the problems of Git Flow, `GitHub -`_ and `Atlassian -`_ developed -simpler alternatives that are mostly limited to so-called +`_ and +`Atlassian `_ +developed simpler alternatives that are mostly limited to so-called :doc:`feature-branches`. .. seealso:: diff --git a/docs/productive/git/workflows/monorepos.rst b/docs/productive/git/workflows/monorepos.rst index 7b5efb4b0..09e73f3d0 100644 --- a/docs/productive/git/workflows/monorepos.rst +++ b/docs/productive/git/workflows/monorepos.rst @@ -111,7 +111,7 @@ There are also helper scripts to identify large items: :samp:`git filter-branch .. seealso:: * `How to tear apart a repository: the Git way - `_ + `_ .. _git-clone-branch: @@ -130,12 +130,12 @@ much difference with this. Git LFS ~~~~~~~ -`Git LFS `_ is an extension that stores pointers to -large files in your repository rather than the files themselves; these are -stored on a remote server, drastically reducing the time it takes to clone your -repository. Git LFS accesses Git’s native push, pull, checkout and fetch -operations to transfer and replace objects, meaning you can work with large -files in your repository as usual. +`Git LFS `_ is an extension that stores pointers to large +files in your repository rather than the files themselves; these are stored on a +remote server, drastically reducing the time it takes to clone your repository. +Git LFS accesses Git’s native push, pull, checkout and fetch operations to +transfer and replace objects, meaning you can work with large files in your +repository as usual. You can install Git LFS with @@ -253,9 +253,9 @@ the search: .. seealso:: * `Improve Git monorepo performance with a file system monitor - `_ + `_ * `Scaling monorepo maintenance - `_ + `_ Scalar ------ diff --git a/docs/productive/index.rst b/docs/productive/index.rst index da568054a..d46cacb46 100644 --- a/docs/productive/index.rst +++ b/docs/productive/index.rst @@ -39,14 +39,14 @@ and :doc:`creating packages `. .. seealso:: * `Dustin Boswell, Trevor Foucher: The Art of Readable Code - `_ + `_ * TIB workshop «FAIR Data and Software» * `GitHub Page `_ * `GitHub Repository `_ - * `Slides `_ + * `Slides `_ * `Dryad: Best practices for creating reusable data publications `_ diff --git a/docs/productive/licensing.rst b/docs/productive/licensing.rst index 616b684b7..832c1ef60 100644 --- a/docs/productive/licensing.rst +++ b/docs/productive/licensing.rst @@ -19,7 +19,7 @@ required. * `The Whys and Hows of Licensing Scientific Code `_ * `A Quick Guide to Software Licensing for the Scientist-Programmer - `_ + `_ * Karl Fogel: `Producing Open Source Software `_ * `Forschungsdaten veröffentlichen `_ @@ -103,8 +103,9 @@ open licences used for non-software material, from datasets to videos. However, they are `not recommended for software `_. -The `Open Knowledge Foundation `_ has also published a set of -`Open Data Commons `_ licences for data/databases: +The `Open Knowledge Foundation `_ has also published a set +of `Open Data Commons `_ licences for +data/databases: `Open Data Commons Open Database License (ODbL) v1.0 `_ Attribution and sharing under equal terms. @@ -148,7 +149,7 @@ specifically for free documentation. Fonts ~~~~~ -`SIL Open Font License 1.1 `_ +`SIL Open Font License 1.1 `_ Font licence that can be freely used in other works. `GNU General Public License 3 `_ It can also be used for fonts, but it may only be included in documents with @@ -189,9 +190,10 @@ Choosing a suitable license Overviews of possible licenses can be found in the `SPDX License List `_ or `OSI Open Source Licenses by Category -`_. When choosing suitable licences, -the websites `Choose an open source license `_ and -`Comparison of free and open-source software licenses +`_. When choosing +suitable licences, the websites `Choose an open source license +`_ and `Comparison of free and open-source software +licenses `_ will help you. @@ -267,17 +269,17 @@ in your repository. #. After you have given a commit message, for example ``Add license``, you can click on *Commit new file*. -If you’ve already added a ``/LICENSE`` file to your repository, GitHub uses +If you’ve already added a :file:`/LICENSE` file to your repository, GitHub uses `licensee `_ to compare the file with a -short `list of open source licenses `_. -If GitHub can’t detect your repository’s license, it might contain multiple +short `list of open source licenses `_. If +GitHub can’t detect your repository’s license, it might contain multiple licenses or be too complex. Then consider whether you can simplify the license, -for example by outsourcing complexity to the ``/README`` file. +for example by outsourcing complexity to the :file:`/README` file. Conversely, you can also search for repositories with specific licenses or license families on GitHub. You can get an overview of the license keywords in `Searching GitHub by license type -`_. +`_. Finally, you can have `Shields.io `_ generate a license badge for you, which you can include in your ``README`` file, for example @@ -287,12 +289,12 @@ badge for you, which you can include in your ``README`` file, for example |License| .. |License| image:: https://img.shields.io/github/license/veit/python4datascience.svg - :target: https://github.com/veit/python4datascience/blob/main/LICENSE + :target: https://github.com/cusyio/Python4DataScience/blob/main/LICENSE |License| .. |License| image:: https://img.shields.io/github/license/veit/python4datascience.svg - :target: https://github.com/veit/python4datascience/blob/main/LICENSE + :target: https://github.com/cusyio/Python4DataScience/blob/main/LICENSE .. _standard_format_licensing: @@ -426,24 +428,24 @@ Alternatives copyright clarity, but sets higher requirements to achieve full compliance. It is based on `OpenChain Specification 2.1 - `_ + `_ and is an international standard on software supply chains, simplified procurement, and open source license compliance. .. seealso:: - * `OpenChain project `_ + * `OpenChain project `_ * `OpenChain Self Certification - `_ + `_ * `Reference-Material `_ -`ScanCode `_ +`ScanCode `_ offers a range of tools and applications for scanning software codebases and packages to determine the origin and licence (provenance) of open source software (and other third-party software). - `DeltaCode `_ + `DeltaCode `_ compares two codebase scans to detect significant changes. `ClearlyDefined `_ @@ -475,7 +477,7 @@ Alternatives .. seealso:: * `GitHub Action for ORT `_ - * `ORT for GitLab `_ + * `ORT for GitLab `_ `licensechecker `_ A command line tool that scans installation directories for licences. diff --git a/docs/productive/logging/index.rst b/docs/productive/logging/index.rst index d7753eb68..2bfe5bbbd 100644 --- a/docs/productive/logging/index.rst +++ b/docs/productive/logging/index.rst @@ -15,7 +15,7 @@ Logging usually serves two different purposes: * Diagnosis: * You can display the context of certain events. - * Tools like `Sentry `_ group related events and + * Tools like `Sentry `_ group related events and facilitate user identification, etc., so that developers can find the cause of the error more quickly. @@ -41,8 +41,8 @@ What are the advantages of ``logging`` over ``print``? * `loguru `_, which makes logging almost as easy as using print instructions. - * `structlog `_ adds structure to your log - entries. + * `structlog `_ adds structure to your + log entries. .. toctree:: :hidden: diff --git a/docs/productive/qa/code-smells.rst b/docs/productive/qa/code-smells.rst index 5d5c50431..a8a8aa937 100644 --- a/docs/productive/qa/code-smells.rst +++ b/docs/productive/qa/code-smells.rst @@ -101,7 +101,7 @@ Nested code *«Flat is better than nested.»* -– Tim Peters, `Zen of Python `_ +– Tim Peters, `Zen of Python `_ Nested code makes it difficult to read and understand. You need to understand and remember the conditions as you go through the nestings. Objectively, the diff --git a/docs/productive/qa/isort.rst b/docs/productive/qa/isort.rst index f07564743..353ba7f9c 100644 --- a/docs/productive/qa/isort.rst +++ b/docs/productive/qa/isort.rst @@ -5,8 +5,8 @@ ``isort`` ========= -`isort `_ formats your ``import`` -statements in separate and sorted blocks. +`isort `_ formats your ``import`` statements in +separate and sorted blocks. Installation ------------ diff --git a/docs/productive/qa/mypy.rst b/docs/productive/qa/mypy.rst index 939faee5b..6fdc17753 100644 --- a/docs/productive/qa/mypy.rst +++ b/docs/productive/qa/mypy.rst @@ -5,12 +5,12 @@ Mypy ==== -With `Mypy `_ you can do a static type check. +With `Mypy `_ you can do a static type check. .. seealso:: - * `Home `_ + * `Home `_ * `GitHub `_ - * `Docs `_ + * `Docs `_ * `PyPI `_ * `Using Mypy in production at Spring `_ diff --git a/docs/productive/qa/prettier.rst b/docs/productive/qa/prettier.rst index 0e6f090af..0d4f0d9d7 100644 --- a/docs/productive/qa/prettier.rst +++ b/docs/productive/qa/prettier.rst @@ -9,7 +9,7 @@ types, including `TypeScript `_, `JSON `_, `Vue `_, `YAML `_, `TOML -`_ +`_ and `XML `_. Installation diff --git a/docs/productive/qa/pysa.rst b/docs/productive/qa/pysa.rst index 9efeb180b..505d85dc1 100644 --- a/docs/productive/qa/pysa.rst +++ b/docs/productive/qa/pysa.rst @@ -15,7 +15,8 @@ and identifies vulnerable code. `_ * `How Pysa works `_ * `Running Pysa `_ - * `Pysa Tutorial `_ + * `Pysa Tutorial + `_ Configuration ------------- @@ -39,7 +40,7 @@ Pysa uses two file types for configuration: ``taint_models_path`` in your ``.pyre_configuration`` file. You can find practical examples in the `Pyre repository -`_. +`_. Use --- @@ -96,4 +97,4 @@ Use jumps to the first call and shows the source code Further commands can be found in the `SAPP Command-Line Interface -`_. +`_. diff --git a/docs/productive/qa/pytype.rst b/docs/productive/qa/pytype.rst index db3242b5c..ca43a117a 100644 --- a/docs/productive/qa/pytype.rst +++ b/docs/productive/qa/pytype.rst @@ -7,11 +7,11 @@ Pytype Pytype is a static analysis tool that derives types from your Python code without the need for type annotations. However, it can also enforce `type -annotations `_ that are in the code. -Although annotations are optional for Pytype, they are checked and applied if -they are present. The type annotations generated by Pytype are stored in -standalone ``.pyi`` files, which can be merged back into Python using `merge-pyi -`_. +annotations `_ that are in the code. Although +annotations are optional for Pytype, they are checked and applied if they are +present. The type annotations generated by Pytype are stored in standalone +``.pyi`` files, which can be merged back into Python using `merge-pyi +`_. Finally, it flags common errors such as misspelled attribute names or function calls and much more, even across file boundaries. @@ -27,7 +27,7 @@ Requirements * All common Linux distributions are supported * macOS ≥ 10.7 and Xcode ≥ 8 -* Windows with `WSL `_. +* Windows with `WSL `_. In addition, the following libraries must be installed: .. code-block:: console diff --git a/docs/productive/qa/wily.rst b/docs/productive/qa/wily.rst index 21dc0329e..abd7e8bd9 100644 --- a/docs/productive/qa/wily.rst +++ b/docs/productive/qa/wily.rst @@ -202,6 +202,6 @@ can also specify other references, for example ``HEAD^1`` with .. [#] :pep:`20` – The Zen of Python .. [#] `C4 Software Technology Reference Guide, S. 147 - `_ + `_ .. [#] `Using Metrics to Evaluate Software System Maintainability `_ diff --git a/docs/productive/security.rst b/docs/productive/security.rst index b53e072ef..12daf81c3 100644 --- a/docs/productive/security.rst +++ b/docs/productive/security.rst @@ -52,8 +52,8 @@ Risk: High Outdated dependencies make a project vulnerable to attacks on known vulnerabilities. Therefore, the process of updating dependencies should be automated by checking for outdated or insecure requirements and updating them if -necessary. You can use `dependabot `_ or `PyUp -`_ for this purpose. +necessary. You can use `dependabot `_ or `Safety +CLI `_ for this purpose. You can also update your :doc:`/productive/envs/pipenv/index` environments automatically with :ref:`pipenv update `. @@ -194,7 +194,7 @@ You can also use :doc:`/productive/qa/pysa` for `taint `_ analyses. For GitHub repositories you can also use `CodeQL `_; -see `codeql-action `_. +see `codeql-action `_. Risk assessment of the source code ---------------------------------- diff --git a/docs/workspace/numpy/transpose.ipynb b/docs/workspace/numpy/transpose.ipynb index 64b9f2ba3..d4483b3bf 100644 --- a/docs/workspace/numpy/transpose.ipynb +++ b/docs/workspace/numpy/transpose.ipynb @@ -146,7 +146,7 @@ "id": "9748f100", "metadata": {}, "source": [ - "The `@` infix operator is another way to perform matrix multiplication. It implements the semantics of the `@` operator introduced in Python 3.5 with [PEP 465](https://www.python.org/dev/peps/pep-0465/) and is an abbreviation of [np.matmul](https://numpy.org/doc/stable/reference/generated/numpy.matmul.html)." + "The `@` infix operator is another way to perform matrix multiplication. It implements the semantics of the `@` operator introduced in Python 3.5 with [PEP 465](https://peps.python.org/pep-0465/) and is an abbreviation of [np.matmul](https://numpy.org/doc/stable/reference/generated/numpy.matmul.html)." ] }, { diff --git a/docs/workspace/pandas/descriptive-statistics.ipynb b/docs/workspace/pandas/descriptive-statistics.ipynb index d607b6e73..1ad64816a 100644 --- a/docs/workspace/pandas/descriptive-statistics.ipynb +++ b/docs/workspace/pandas/descriptive-statistics.ipynb @@ -1037,7 +1037,7 @@ "source": [ "#### 4 Concurrency\n", "\n", - "Currently work is being done on a scalable Spark backend for pandas-profiling, see [Spark Profiling Development](https://github.com/ydataai/pandas-profiling/projects/3)." + "Currently work is being done on a scalable Spark backend for pandas-profiling, see [Spark profiling support](https://github.com/orgs/ydataai/projects/16/views/2)." ] } ], diff --git a/docs/workspace/pandas/index.rst b/docs/workspace/pandas/index.rst index 66f727e77..b27eff4e2 100644 --- a/docs/workspace/pandas/index.rst +++ b/docs/workspace/pandas/index.rst @@ -19,7 +19,7 @@ builds on Cython and NumPy, making it less memory intensive and faster than pure Python code. Mostly pandas is used to * replace :doc:`/data-processing/serialisation-formats/excel` and `Power BI - `_ + `_ * implement an `ETL `_ process * process :doc:`/data-processing/serialisation-formats/csv/index` or diff --git a/docs/workspace/pandas/string-manipulation.ipynb b/docs/workspace/pandas/string-manipulation.ipynb index bb2a43cc4..2dbd8e3eb 100644 --- a/docs/workspace/pandas/string-manipulation.ipynb +++ b/docs/workspace/pandas/string-manipulation.ipynb @@ -13,7 +13,7 @@ "\n", "**See also:**\n", "\n", - "* [string](https://python-basics-tutorial.readthedocs.io/en/latest/types/strings.html#string)\n", + "* [Strings](https://python-basics-tutorial.readthedocs.io/en/latest/types/strings.html)\n", "* [re](https://python-basics-tutorial.readthedocs.io/en/latest/types/strings.html#re)\n", "
" ]