From 0916b37a723ec04f50d4263072eb07815879a7f8 Mon Sep 17 00:00:00 2001
From: finswimmer <finswimmer77@gmail.com>
Date: Fri, 7 Feb 2025 10:38:36 +0100
Subject: [PATCH 01/10] blog: announce Poetry 2.1.0

---
 .../2025-02-xx-announcing-poetry-2-1-0.md     | 76 +++++++++++++++++++
 content/history.md                            |  7 +-
 2 files changed, 82 insertions(+), 1 deletion(-)
 create mode 100644 content/blog/2025-02-xx-announcing-poetry-2-1-0.md

diff --git a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
new file mode 100644
index 0000000..62ecf07
--- /dev/null
+++ b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
@@ -0,0 +1,76 @@
+---
+layout: single
+title: "Announcing Poetry 2.1.0"
+date: 2025-02-xx
+categories: [ releases ]
+tags: [ "2.x", "2.1" ]
+---
+
+The Poetry team is pleased to announce the immediate availability of Poetry **2.1.0**.
+
+<!--more-->
+
+If you have a previous version of Poetry installed via `pipx`,
+getting Poetry **2.1.0** is as easy as:
+
+```bash
+$ pipx upgrade poetry
+```
+
+If you used the [official installer](/docs/#installation), you can run:
+
+```bash
+$ poetry self update
+```
+
+## Highlights
+
+### Support for Alternative Build Backends in Poetry
+
+Poetry now supports customizable build backends, allowing greater flexibility based on your project's needs. Previously,
+Poetry exclusively used its own build backend, `poetry-core`, when creating packages via the `poetry build` command.
+Thanks to [PEP 621](https://peps.python.org/pep-0621/), this limitation is being lifted.
+
+With this change, the `poetry build` command will fully respect the `[build-system]` section defined in your
+`pyproject.toml` file. If the specified build backend differs from the version of `poetry-core` bundled with Poetry, the
+build will take place in an isolated environment.
+
+#### Defining Custom Build Backends
+
+You can define the build backend in your `pyproject.toml`. For example, to use `maturin` as your build system, specify
+it like this:
+
+```toml
+[build-system]
+requires = ["maturin>=0.8.1,<0.9"]
+build-backend = "maturin"
+```
+
+When running `poetry build`, Poetry will create an isolated environment with the specified requirements.
+
+#### Passing Configuration to Build Systems
+
+If your chosen build system supports custom configuration settings, these can be passed via the new `--config-settings`
+parameter. Use the format `--config-settings <key>=<value>`. You can pass multiple settings by using the parameter
+repeatedly.
+
+For example, `poetry-core` allows you to specify a local version identifier during the build:
+
+```bash
+poetry build --config-settings local-version=some-local
+```
+
+This parameter ensures compatibility with advanced use cases and third-party build backends.
+
+#### Default Behavior When No Build System Is Defined
+
+Per [PEP 517](https://peps.python.org/pep-0517/), a build tool should fall back to `setuptools` if no build system is
+defined in the `[build-system]` section of `pyproject.toml`. However, to avoid immediate disruption, Poetry will
+currently issue a **warning** in such cases and continue using the built-in `poetry-core` backend by default.
+
+**Note:** This behavior will change in the next minor release of Poetry. When a `[build-system]` section is not defined,
+Poetry will then default to using `setuptools`.
+
+## Changelog
+
+TODO
diff --git a/content/history.md b/content/history.md
index 8e9ae27..e995c28 100644
--- a/content/history.md
+++ b/content/history.md
@@ -4,6 +4,10 @@ layout: single
 title: History
 ---
 
+## [2.1.0] - 2025-02-xx
+
+TODO
+
 ## [2.0.1] - 2025-01-11
 
 ### Added
@@ -2268,7 +2272,8 @@ This release **must** be downloaded via the `get-poetry.py` script and not via t
 
 Initial release
 
-[Unreleased]: https://github.com/python-poetry/poetry/compare/2.0.1...main
+[Unreleased]: https://github.com/python-poetry/poetry/compare/2.1.0...main
+[2.1.0]: https://github.com/python-poetry/poetry/releases/tag/2.1.0
 [2.0.1]: https://github.com/python-poetry/poetry/releases/tag/2.0.1
 [2.0.0]: https://github.com/python-poetry/poetry/releases/tag/2.0.0
 [1.8.5]: https://github.com/python-poetry/poetry/releases/tag/1.8.5

From 979161741adc25f93d9f26bf305e99ec8bbab6c2 Mon Sep 17 00:00:00 2001
From: "pre-commit-ci[bot]"
 <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Date: Sun, 9 Feb 2025 14:36:47 +0000
Subject: [PATCH 02/10] [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci
---
 content/blog/2025-02-xx-announcing-poetry-2-1-0.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
index 62ecf07..bc65cf6 100644
--- a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
+++ b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
@@ -2,8 +2,8 @@
 layout: single
 title: "Announcing Poetry 2.1.0"
 date: 2025-02-xx
-categories: [ releases ]
-tags: [ "2.x", "2.1" ]
+categories: [releases]
+tags: ["2.x", "2.1"]
 ---
 
 The Poetry team is pleased to announce the immediate availability of Poetry **2.1.0**.

From 73b193fe4ce3acf3975906ad8f7279ab8399831d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Randy=20D=C3=B6ring?=
 <30527984+radoering@users.noreply.github.com>
Date: Sun, 9 Feb 2025 15:45:23 +0100
Subject: [PATCH 03/10] Add dummy date for website preview

---
 content/blog/2025-02-xx-announcing-poetry-2-1-0.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
index bc65cf6..afd0f11 100644
--- a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
+++ b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
@@ -1,7 +1,7 @@
 ---
 layout: single
 title: "Announcing Poetry 2.1.0"
-date: 2025-02-xx
+date: 2025-02-01
 categories: [releases]
 tags: ["2.x", "2.1"]
 ---

From fc240b76a63442f18f05d779d8faa1829058dc42 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Randy=20D=C3=B6ring?=
 <30527984+radoering@users.noreply.github.com>
Date: Fri, 14 Feb 2025 12:51:03 +0100
Subject: [PATCH 04/10] add note about build configuration for dependencies,
 fix style

---
 .../blog/2025-02-xx-announcing-poetry-2-1-0.md | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
index afd0f11..567044e 100644
--- a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
+++ b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
@@ -25,7 +25,7 @@ $ poetry self update
 
 ## Highlights
 
-### Support for Alternative Build Backends in Poetry
+### Support for alternative build backends in Poetry
 
 Poetry now supports customizable build backends, allowing greater flexibility based on your project's needs. Previously,
 Poetry exclusively used its own build backend, `poetry-core`, when creating packages via the `poetry build` command.
@@ -35,7 +35,7 @@ With this change, the `poetry build` command will fully respect the `[build-syst
 `pyproject.toml` file. If the specified build backend differs from the version of `poetry-core` bundled with Poetry, the
 build will take place in an isolated environment.
 
-#### Defining Custom Build Backends
+#### Defining custom build backends
 
 You can define the build backend in your `pyproject.toml`. For example, to use `maturin` as your build system, specify
 it like this:
@@ -48,7 +48,7 @@ build-backend = "maturin"
 
 When running `poetry build`, Poetry will create an isolated environment with the specified requirements.
 
-#### Passing Configuration to Build Systems
+#### Passing configuration to build systems
 
 If your chosen build system supports custom configuration settings, these can be passed via the new `--config-settings`
 parameter. Use the format `--config-settings <key>=<value>`. You can pass multiple settings by using the parameter
@@ -62,14 +62,22 @@ poetry build --config-settings local-version=some-local
 
 This parameter ensures compatibility with advanced use cases and third-party build backends.
 
-#### Default Behavior When No Build System Is Defined
+{{% note %}}
+You can pass configuration settings when building a dependency from source.
+Since such configuration settings are often platform-dependent this is done via a
+[config setting](docs/configuration/#installerbuild-config-settingspackage-name).
+{{% /note %}}
+
+#### Default behavior when no build system is defined
 
 Per [PEP 517](https://peps.python.org/pep-0517/), a build tool should fall back to `setuptools` if no build system is
 defined in the `[build-system]` section of `pyproject.toml`. However, to avoid immediate disruption, Poetry will
 currently issue a **warning** in such cases and continue using the built-in `poetry-core` backend by default.
 
-**Note:** This behavior will change in the next minor release of Poetry. When a `[build-system]` section is not defined,
+{{% warning %}}
+This behavior will change in the next minor release of Poetry. When a `[build-system]` section is not defined,
 Poetry will then default to using `setuptools`.
+{{% /warning %}}
 
 ## Changelog
 

From 867c398b0791b62e852b2816232a18fdd9c6d848 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Randy=20D=C3=B6ring?=
 <30527984+radoering@users.noreply.github.com>
Date: Fri, 14 Feb 2025 13:06:22 +0100
Subject: [PATCH 05/10] add paragraph about python commands

---
 .../blog/2025-02-xx-announcing-poetry-2-1-0.md   | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
index 567044e..1a3a52b 100644
--- a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
+++ b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
@@ -79,6 +79,22 @@ This behavior will change in the next minor release of Poetry. When a `[build-sy
 Poetry will then default to using `setuptools`.
 {{% /warning %}}
 
+### Experimental commands to manage Python installations
+
+Poetry now includes experimental [commands](docs/cli/#python) to manage Python installations.
+You can install, list and remove Python versions, which you can use afterward to create project environments.
+For example, if you want to use Python 3.13 for your project, but you do not have it installed yet, you can run:
+
+```bash
+poetry python install 3.13
+poetry env use 3.13
+```
+
+{{% note %}}
+The `python install` command uses [python-build-standalone](https://gregoryszorc.com/docs/python-build-standalone/main/),
+which has some quirks compared to standard Python installations. See their documentation for more information.
+{{% /note %}}
+
 ## Changelog
 
 TODO

From 9be07d646ad8b85969b25d8ac7075ef74cd49341 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Randy=20D=C3=B6ring?=
 <30527984+radoering@users.noreply.github.com>
Date: Fri, 14 Feb 2025 13:07:06 +0100
Subject: [PATCH 06/10] todos

---
 pyproject.toml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pyproject.toml b/pyproject.toml
index e97d4f3..148dfed 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -63,7 +63,7 @@ tags = "/blog/tag/:title/"
 description = "Python dependency management and packaging made easy"
 
 [tool.website.config.params.documentation]
-defaultVersion = "2.0"
+defaultVersion = "2.0"  # TODO: 2.1
 
 [tool.website.config.markup.goldmark.renderer]
 unsafe = true
@@ -72,7 +72,7 @@ unsafe = true
 keepWhitespace = true
 
 [tool.website.versions]
-"2.0" = "2.0"
+"2.0" = "2.0"  # TODO: 2.1
 "1.8" = "1.8"
 
 [build-system]

From 1392b2ab1f6f0eed9543a026a280f08d3dffe0d2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Randy=20D=C3=B6ring?=
 <30527984+radoering@users.noreply.github.com>
Date: Fri, 14 Feb 2025 13:16:38 +0100
Subject: [PATCH 07/10] add upcoming changes section

---
 .../blog/2025-02-xx-announcing-poetry-2-1-0.md  | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
index 1a3a52b..f1a0e16 100644
--- a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
+++ b/content/blog/2025-02-xx-announcing-poetry-2-1-0.md
@@ -75,8 +75,8 @@ defined in the `[build-system]` section of `pyproject.toml`. However, to avoid i
 currently issue a **warning** in such cases and continue using the built-in `poetry-core` backend by default.
 
 {{% warning %}}
-This behavior will change in the next minor release of Poetry. When a `[build-system]` section is not defined,
-Poetry will then default to using `setuptools`.
+This behavior will change in a future minor release so that Poetry will default to `setuptools`
+if no `[build-system]` section is defined.
 {{% /warning %}}
 
 ### Experimental commands to manage Python installations
@@ -92,9 +92,20 @@ poetry env use 3.13
 
 {{% note %}}
 The `python install` command uses [python-build-standalone](https://gregoryszorc.com/docs/python-build-standalone/main/),
-which has some quirks compared to standard Python installations. See their documentation for more information.
+which has some quirks compared to standard Python installations.
+See their [documentation](https://gregoryszorc.com/docs/python-build-standalone/main/quirks.html) for more information.
 {{% /note %}}
 
+## Upcoming Changes
+
+### Defaulting to `setuptools` instead of `poetry-core` if no build system is defined
+
+Per [PEP 517](https://peps.python.org/pep-0517/), a build tool should fall back to `setuptools` if no build system is
+defined in the `[build-system]` section of `pyproject.toml`. However, to avoid immediate disruption, Poetry will
+currently issue a **warning** in such cases and continue using the built-in `poetry-core` backend by default.
+This behavior will change in a future minor release so that Poetry will default to `setuptools`
+if no `[build-system]` section is defined.
+
 ## Changelog
 
 TODO

From b7f309a75f7843de84a768df60ed798d3baf5086 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Randy=20D=C3=B6ring?=
 <30527984+radoering@users.noreply.github.com>
Date: Sat, 15 Feb 2025 15:14:11 +0100
Subject: [PATCH 08/10] rename file

---
 ...cing-poetry-2-1-0.md => 2025-02-15-announcing-poetry-2-1-0.md} | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename content/blog/{2025-02-xx-announcing-poetry-2-1-0.md => 2025-02-15-announcing-poetry-2-1-0.md} (100%)

diff --git a/content/blog/2025-02-xx-announcing-poetry-2-1-0.md b/content/blog/2025-02-15-announcing-poetry-2-1-0.md
similarity index 100%
rename from content/blog/2025-02-xx-announcing-poetry-2-1-0.md
rename to content/blog/2025-02-15-announcing-poetry-2-1-0.md

From 5bd0a27ff84850df5ec7b734e2e74a4b87fa348a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Randy=20D=C3=B6ring?=
 <30527984+radoering@users.noreply.github.com>
Date: Sat, 15 Feb 2025 15:16:55 +0100
Subject: [PATCH 09/10] do todos

---
 .../2025-02-15-announcing-poetry-2-1-0.md     | 67 ++++++++++++++++++-
 content/history.md                            | 67 ++++++++++++++++++-
 pyproject.toml                                |  4 +-
 3 files changed, 132 insertions(+), 6 deletions(-)

diff --git a/content/blog/2025-02-15-announcing-poetry-2-1-0.md b/content/blog/2025-02-15-announcing-poetry-2-1-0.md
index f1a0e16..0c3713e 100644
--- a/content/blog/2025-02-15-announcing-poetry-2-1-0.md
+++ b/content/blog/2025-02-15-announcing-poetry-2-1-0.md
@@ -1,7 +1,7 @@
 ---
 layout: single
 title: "Announcing Poetry 2.1.0"
-date: 2025-02-01
+date: 2025-02-15
 categories: [releases]
 tags: ["2.x", "2.1"]
 ---
@@ -108,4 +108,67 @@ if no `[build-system]` section is defined.
 
 ## Changelog
 
-TODO
+### Added
+
+- **Make `build` command build-system agnostic** ([#10059](https://github.com/python-poetry/poetry/pull/10059),
+  [#10092](https://github.com/python-poetry/poetry/pull/10092)).
+- Add a `--config-settings` option to `poetry build` ([#10059](https://github.com/python-poetry/poetry/pull/10059)).
+- Add support for defining `config-settings` when building dependencies ([#10129](https://github.com/python-poetry/poetry/pull/10129)).
+- **Add (experimental) commands to manage Python installations** ([#10112](https://github.com/python-poetry/poetry/pull/10112)).
+- Use `findpython` to find the Python interpreters ([#10097](https://github.com/python-poetry/poetry/pull/10097)).
+- Add a `--no-truncate` option to `poetry show` ([#9580](https://github.com/python-poetry/poetry/pull/9580)).
+- Re-add support for passwords with empty usernames ([#10088](https://github.com/python-poetry/poetry/pull/10088)).
+- Add better error messages ([#10053](https://github.com/python-poetry/poetry/pull/10053),
+  [#10065](https://github.com/python-poetry/poetry/pull/10065),
+  [#10126](https://github.com/python-poetry/poetry/pull/10126),
+  [#10127](https://github.com/python-poetry/poetry/pull/10127),
+  [#10132](https://github.com/python-poetry/poetry/pull/10132)).
+
+### Changed
+
+- **`poetry new` defaults to "src" layout by default** ([#10135](https://github.com/python-poetry/poetry/pull/10135)).
+- Improve performance of locking dependencies ([#10111](https://github.com/python-poetry/poetry/pull/10111),
+  [#10114](https://github.com/python-poetry/poetry/pull/10114),
+  [#10138](https://github.com/python-poetry/poetry/pull/10138),
+  [#10146](https://github.com/python-poetry/poetry/pull/10146)).
+- Deprecate adding sources without specifying `--priority` ([#10134](https://github.com/python-poetry/poetry/pull/10134)).
+
+### Fixed
+
+- Fix an issue where global options were not handled correctly when positioned after command options ([#10021](https://github.com/python-poetry/poetry/pull/10021),
+  [#10067](https://github.com/python-poetry/poetry/pull/10067),
+  [#10128](https://github.com/python-poetry/poetry/pull/10128)).
+- Fix an issue where building a dependency from source failed because of a conflict between build-system dependencies that were not required for the target environment ([#10048](https://github.com/python-poetry/poetry/pull/10048)).
+- Fix an issue where `poetry init` was not able to find a package on PyPI while adding dependencies interactively ([#10055](https://github.com/python-poetry/poetry/pull/10055)).
+- Fix an issue where the `@latest` descriptor was incorrectly passed to the core requirement parser ([#10069](https://github.com/python-poetry/poetry/pull/10069)).
+- Fix an issue where Boolean environment variables set to `True` (in contrast to `true`) were interpreted as `false` ([#10080](https://github.com/python-poetry/poetry/pull/10080)).
+- Fix an issue where `poetry env activate` reported a misleading error message ([#10087](https://github.com/python-poetry/poetry/pull/10087)).
+- Fix an issue where adding an optional dependency with `poetry add --optional` would not correctly update the lock file ([#10076](https://github.com/python-poetry/poetry/pull/10076)).
+- Fix an issue where `pip` was not installed/updated before other dependencies resulting in a race condition ([#10102](https://github.com/python-poetry/poetry/pull/10102)).
+- Fix an issue where Poetry freezes when multiple threads attempt to unlock the `keyring` simultaneously ([#10062](https://github.com/python-poetry/poetry/pull/10062)).
+- Fix an issue where markers with extras were not locked correctly ([#10119](https://github.com/python-poetry/poetry/pull/10119)).
+- Fix an issue where self-referential extras were not resolved correctly ([#10106](https://github.com/python-poetry/poetry/pull/10106)).
+- Fix an issue where Poetry could not be run from a `zipapp` ([#10074](https://github.com/python-poetry/poetry/pull/10074)).
+- Fix an issue where installation failed with a permission error when using the system environment as a user without write access to system site packages ([#9014](https://github.com/python-poetry/poetry/pull/9014)).
+- Fix an issue where a version of a dependency that is not compatible with the project's python constraint was locked. ([#10141](https://github.com/python-poetry/poetry/pull/10141)).
+- Fix an issue where Poetry wrongly reported that the current project's supported Python range is not compatible with some of the required packages Python requirement ([#10157](https://github.com/python-poetry/poetry/pull/10157)).
+- Fix an issue where the requested extras of a dependency were ignored if the same dependency (with same extras) was specified in multiple groups ([#10158](https://github.com/python-poetry/poetry/pull/10158)).
+
+### Docs
+
+- Sort commands by name in the CLI reference ([#10035](https://github.com/python-poetry/poetry/pull/10035)).
+- Add missing documentation for `env` commands ([#10027](https://github.com/python-poetry/poetry/pull/10027)).
+- Clarify that the `name` and `version` fields are always required if the `project` section is specified ([#10033](https://github.com/python-poetry/poetry/pull/10033)).
+- Add a note about restarting the shell for tab completion changes to take effect ([#10070](https://github.com/python-poetry/poetry/pull/10070)).
+- Fix the example for `project.gui-scripts` [#10121](https://github.com/python-poetry/poetry/pull/10121).
+- Explain how to include files as scripts in the project configuration ([#9572](https://github.com/python-poetry/poetry/pull/9572),
+  [#10133](https://github.com/python-poetry/poetry/pull/10133)).
+- Add additional information on specifying required python versions ([#10104](https://github.com/python-poetry/poetry/pull/10104)).
+
+### poetry-core ([`2.1.0`](https://github.com/python-poetry/poetry-core/releases/tag/2.1.0))
+
+- Fix an issue where inclusive ordering with post releases was inconsistent with PEP 440 ([#379](https://github.com/python-poetry/poetry-core/pull/379)).
+- Fix an issue where invalid URI tokens in PEP 508 requirement strings were silently discarded ([#817](https://github.com/python-poetry/poetry-core/pull/817)).
+- Fix an issue where wrong markers were calculated when removing parts covered by the project's python constraint ([#824](https://github.com/python-poetry/poetry-core/pull/824)).
+- Fix an issue where optional dependencies that are not part of an extra were included in the wheel metadata ([#830](https://github.com/python-poetry/poetry-core/pull/830)).
+- Fix an issue where the `__pycache__` directory and `*.pyc` files were included in sdists and wheels ([#835](https://github.com/python-poetry/poetry-core/pull/835)).
diff --git a/content/history.md b/content/history.md
index e995c28..3a21174 100644
--- a/content/history.md
+++ b/content/history.md
@@ -4,9 +4,72 @@ layout: single
 title: History
 ---
 
-## [2.1.0] - 2025-02-xx
+## [2.1.0] - 2025-02-15
 
-TODO
+### Added
+
+- **Make `build` command build-system agnostic** ([#10059](https://github.com/python-poetry/poetry/pull/10059),
+  [#10092](https://github.com/python-poetry/poetry/pull/10092)).
+- Add a `--config-settings` option to `poetry build` ([#10059](https://github.com/python-poetry/poetry/pull/10059)).
+- Add support for defining `config-settings` when building dependencies ([#10129](https://github.com/python-poetry/poetry/pull/10129)).
+- **Add (experimental) commands to manage Python installations** ([#10112](https://github.com/python-poetry/poetry/pull/10112)).
+- Use `findpython` to find the Python interpreters ([#10097](https://github.com/python-poetry/poetry/pull/10097)).
+- Add a `--no-truncate` option to `poetry show` ([#9580](https://github.com/python-poetry/poetry/pull/9580)).
+- Re-add support for passwords with empty usernames ([#10088](https://github.com/python-poetry/poetry/pull/10088)).
+- Add better error messages ([#10053](https://github.com/python-poetry/poetry/pull/10053),
+  [#10065](https://github.com/python-poetry/poetry/pull/10065),
+  [#10126](https://github.com/python-poetry/poetry/pull/10126),
+  [#10127](https://github.com/python-poetry/poetry/pull/10127),
+  [#10132](https://github.com/python-poetry/poetry/pull/10132)).
+
+### Changed
+
+- **`poetry new` defaults to "src" layout by default** ([#10135](https://github.com/python-poetry/poetry/pull/10135)).
+- Improve performance of locking dependencies ([#10111](https://github.com/python-poetry/poetry/pull/10111),
+  [#10114](https://github.com/python-poetry/poetry/pull/10114),
+  [#10138](https://github.com/python-poetry/poetry/pull/10138),
+  [#10146](https://github.com/python-poetry/poetry/pull/10146)).
+- Deprecate adding sources without specifying `--priority` ([#10134](https://github.com/python-poetry/poetry/pull/10134)).
+
+### Fixed
+
+- Fix an issue where global options were not handled correctly when positioned after command options ([#10021](https://github.com/python-poetry/poetry/pull/10021),
+  [#10067](https://github.com/python-poetry/poetry/pull/10067),
+  [#10128](https://github.com/python-poetry/poetry/pull/10128)).
+- Fix an issue where building a dependency from source failed because of a conflict between build-system dependencies that were not required for the target environment ([#10048](https://github.com/python-poetry/poetry/pull/10048)).
+- Fix an issue where `poetry init` was not able to find a package on PyPI while adding dependencies interactively ([#10055](https://github.com/python-poetry/poetry/pull/10055)).
+- Fix an issue where the `@latest` descriptor was incorrectly passed to the core requirement parser ([#10069](https://github.com/python-poetry/poetry/pull/10069)).
+- Fix an issue where Boolean environment variables set to `True` (in contrast to `true`) were interpreted as `false` ([#10080](https://github.com/python-poetry/poetry/pull/10080)).
+- Fix an issue where `poetry env activate` reported a misleading error message ([#10087](https://github.com/python-poetry/poetry/pull/10087)).
+- Fix an issue where adding an optional dependency with `poetry add --optional` would not correctly update the lock file ([#10076](https://github.com/python-poetry/poetry/pull/10076)).
+- Fix an issue where `pip` was not installed/updated before other dependencies resulting in a race condition ([#10102](https://github.com/python-poetry/poetry/pull/10102)).
+- Fix an issue where Poetry freezes when multiple threads attempt to unlock the `keyring` simultaneously ([#10062](https://github.com/python-poetry/poetry/pull/10062)).
+- Fix an issue where markers with extras were not locked correctly ([#10119](https://github.com/python-poetry/poetry/pull/10119)).
+- Fix an issue where self-referential extras were not resolved correctly ([#10106](https://github.com/python-poetry/poetry/pull/10106)).
+- Fix an issue where Poetry could not be run from a `zipapp` ([#10074](https://github.com/python-poetry/poetry/pull/10074)).
+- Fix an issue where installation failed with a permission error when using the system environment as a user without write access to system site packages ([#9014](https://github.com/python-poetry/poetry/pull/9014)).
+- Fix an issue where a version of a dependency that is not compatible with the project's python constraint was locked. ([#10141](https://github.com/python-poetry/poetry/pull/10141)).
+- Fix an issue where Poetry wrongly reported that the current project's supported Python range is not compatible with some of the required packages Python requirement ([#10157](https://github.com/python-poetry/poetry/pull/10157)).
+- Fix an issue where the requested extras of a dependency were ignored if the same dependency (with same extras) was specified in multiple groups ([#10158](https://github.com/python-poetry/poetry/pull/10158)).
+
+### Docs
+
+- Sort commands by name in the CLI reference ([#10035](https://github.com/python-poetry/poetry/pull/10035)).
+- Add missing documentation for `env` commands ([#10027](https://github.com/python-poetry/poetry/pull/10027)).
+- Clarify that the `name` and `version` fields are always required if the `project` section is specified ([#10033](https://github.com/python-poetry/poetry/pull/10033)).
+- Add a note about restarting the shell for tab completion changes to take effect ([#10070](https://github.com/python-poetry/poetry/pull/10070)).
+- Fix the example for `project.gui-scripts` [#10121](https://github.com/python-poetry/poetry/pull/10121).
+- Explain how to include files as scripts in the project configuration ([#9572](https://github.com/python-poetry/poetry/pull/9572),
+  [#10133](https://github.com/python-poetry/poetry/pull/10133)).
+- Add additional information on specifying required python versions ([#10104](https://github.com/python-poetry/poetry/pull/10104)).
+
+### poetry-core ([`2.1.0`](https://github.com/python-poetry/poetry-core/releases/tag/2.1.0))
+
+- Fix an issue where inclusive ordering with post releases was inconsistent with PEP 440 ([#379](https://github.com/python-poetry/poetry-core/pull/379)).
+- Fix an issue where invalid URI tokens in PEP 508 requirement strings were silently discarded ([#817](https://github.com/python-poetry/poetry-core/pull/817)).
+- Fix an issue where wrong markers were calculated when removing parts covered by the project's python constraint ([#824](https://github.com/python-poetry/poetry-core/pull/824)).
+- Fix an issue where optional dependencies that are not part of an extra were included in the wheel metadata ([#830](https://github.com/python-poetry/poetry-core/pull/830)).
+- Fix an issue where the `__pycache__` directory and `*.pyc` files were included in sdists and wheels ([#835](https://github.com/python-poetry/poetry-core/pull/835)).
 
 ## [2.0.1] - 2025-01-11
 
diff --git a/pyproject.toml b/pyproject.toml
index 148dfed..d5a9421 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -63,7 +63,7 @@ tags = "/blog/tag/:title/"
 description = "Python dependency management and packaging made easy"
 
 [tool.website.config.params.documentation]
-defaultVersion = "2.0"  # TODO: 2.1
+defaultVersion = "2.1"
 
 [tool.website.config.markup.goldmark.renderer]
 unsafe = true
@@ -72,7 +72,7 @@ unsafe = true
 keepWhitespace = true
 
 [tool.website.versions]
-"2.0" = "2.0"  # TODO: 2.1
+"2.1" = "2.1"
 "1.8" = "1.8"
 
 [build-system]

From 25946f0aac8c21c903a69fb8638f8be54a59a158 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Randy=20D=C3=B6ring?=
 <30527984+radoering@users.noreply.github.com>
Date: Sat, 15 Feb 2025 15:22:36 +0100
Subject: [PATCH 10/10] fix links

---
 content/blog/2025-02-15-announcing-poetry-2-1-0.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/content/blog/2025-02-15-announcing-poetry-2-1-0.md b/content/blog/2025-02-15-announcing-poetry-2-1-0.md
index 0c3713e..47dcaa5 100644
--- a/content/blog/2025-02-15-announcing-poetry-2-1-0.md
+++ b/content/blog/2025-02-15-announcing-poetry-2-1-0.md
@@ -65,7 +65,7 @@ This parameter ensures compatibility with advanced use cases and third-party bui
 {{% note %}}
 You can pass configuration settings when building a dependency from source.
 Since such configuration settings are often platform-dependent this is done via a
-[config setting](docs/configuration/#installerbuild-config-settingspackage-name).
+[config setting](/docs/configuration/#installerbuild-config-settingspackage-name).
 {{% /note %}}
 
 #### Default behavior when no build system is defined
@@ -81,7 +81,7 @@ if no `[build-system]` section is defined.
 
 ### Experimental commands to manage Python installations
 
-Poetry now includes experimental [commands](docs/cli/#python) to manage Python installations.
+Poetry now includes experimental [commands](/docs/cli/#python) to manage Python installations.
 You can install, list and remove Python versions, which you can use afterward to create project environments.
 For example, if you want to use Python 3.13 for your project, but you do not have it installed yet, you can run:
 
