Build: Update Poetry to v2.1.1 (#1945)

<!--
Thanks for opening a pull request!
-->

<!-- In the case this PR will resolve an issue, please replace
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
<!-- Closes #${GITHUB_ISSUE_ID} -->

# Rationale for this change
[`poetry.lock`
file](https://github.com/apache/iceberg-python/blob/59742e01e8d190aa759e0154b03300bd81a28d02/poetry.lock#L1)
is generated with poetry 2.1.1
I suspect this is from dependabot. I couldn't find a way to control the
version of poetry dependabot uses, so let's just match the version its
using.
This way updating the lock file locally wont create a bunch of unrelated
changed


# Are these changes tested?

# Are there any user-facing changes?

<!-- In the case of user-facing changes, please add the changelog label.
-->
diff --git a/Makefile b/Makefile
index 95266b6..62c0425 100644
--- a/Makefile
+++ b/Makefile
@@ -19,7 +19,7 @@
 help:  ## Display this help
 	@awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n  make \033[36m\033[0m\n"} /^[a-zA-Z_-]+:.*?##/ { printf "  \033[36m%-20s\033[0m %s\n", $$1, $$2 } /^##@/ { printf "\n\033[1m%s\033[0m\n", substr($$0, 5) } ' $(MAKEFILE_LIST)
 
-POETRY_VERSION = 2.0.1
+POETRY_VERSION = 2.1.1
 install-poetry:  ## Ensure Poetry is installed and the correct version is being used.
 	@if ! command -v poetry &> /dev/null; then \
 		echo "Poetry could not be found. Installing..."; \