From 22f02f0a54f64b5578a14916c92dc98daf525708 Mon Sep 17 00:00:00 2001 From: Aliaksandr Yakutovich Date: Tue, 7 May 2024 13:29:07 +0200 Subject: [PATCH 1/2] Add a section on different package managers. --- manage_python_project.ipynb | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/manage_python_project.ipynb b/manage_python_project.ipynb index 08973d3d..7d6a0e56 100644 --- a/manage_python_project.ipynb +++ b/manage_python_project.ipynb @@ -1495,6 +1495,26 @@ "cell_type": "markdown", "id": "61", "metadata": {}, + "source": [ + "## Package managers\n", + "\n", + "There are several package managers that can be used to release the package on PyPI.\n", + "In this tutorial, we have used [`flit`](https://flit.pypa.io/).\n", + "However, there are other package managers that can be used, such as [`setuptools`](https://setuptools.pypa.io/), [`poetry`](https://python-poetry.org/), [`hatch`](https://hatch.pypa.io/), etc.\n", + "\n", + "In this tutorial we will not go into the details of the package managers, as they are well documented.\n", + "We also don't want to start a flame war on which package manager is the best and why.\n", + "The choice is essentially up to the developers.\n", + "One can always switch between managers if the current one does not satisfy the needs.\n", + "\n", + "\n", + "If you want to deep dive into the topic, we recommend looking at the [Python Packaging User Guide](https://packaging.python.org/)." + ] + }, + { + "cell_type": "markdown", + "id": "62", + "metadata": {}, "source": [ "# Automate things\n", "\n", @@ -1508,7 +1528,7 @@ }, { "cell_type": "markdown", - "id": "62", + "id": "63", "metadata": {}, "source": [ "## Testing\n", @@ -1560,7 +1580,7 @@ }, { "cell_type": "markdown", - "id": "63", + "id": "64", "metadata": {}, "source": [ "## Exercise on testing automation\n", @@ -1571,7 +1591,7 @@ }, { "cell_type": "markdown", - "id": "64", + "id": "65", "metadata": {}, "source": [ "## Version update\n", @@ -1625,7 +1645,7 @@ }, { "cell_type": "markdown", - "id": "65", + "id": "66", "metadata": {}, "source": [ "## Exercise on version update automation\n", @@ -1637,7 +1657,7 @@ }, { "cell_type": "markdown", - "id": "66", + "id": "67", "metadata": {}, "source": [ "## Releasing\n", @@ -1731,7 +1751,7 @@ }, { "cell_type": "markdown", - "id": "67", + "id": "68", "metadata": {}, "source": [ "## Exercises on releasing automation\n", From 561b97cd6fb2daffb15cec2c8c243c21651077d3 Mon Sep 17 00:00:00 2001 From: Aliaksandr Yakutovich Date: Wed, 8 May 2024 12:08:49 +0200 Subject: [PATCH 2/2] Update TOC. --- manage_python_project.ipynb | 1 + 1 file changed, 1 insertion(+) diff --git a/manage_python_project.ipynb b/manage_python_project.ipynb index 7d6a0e56..8a426bbc 100644 --- a/manage_python_project.ipynb +++ b/manage_python_project.ipynb @@ -61,6 +61,7 @@ " - [Changelog](#Changelog)\n", " - [CHANGELOG.md](#CHANGELOG.md)\n", " - [GitHub releases](#GitHub-releases)\n", + " - [Package managers](#Package-managers)\n", " - [Automate things](#Automate-things)\n", " - [Testing](#Testing)\n", " - [Exercise on testing automation](#Exercise-on-testing-automation)\n",