You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by "kevinjqliu (via GitHub)" <gi...@apache.org> on 2026/02/01 19:53:08 UTC
[PR] infra: simplify Makefile and uv [iceberg-python]
kevinjqliu opened a new pull request, #2996:
URL: https://github.com/apache/iceberg-python/pull/2996
<!--
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
* Simplify the Makefile by leveraging `uv run --group` to auto-install dependencies on demand, eliminating the need for separate install targets. Dependencies are automatically installed on first use
* Add `.PHONY` declarations - Prevents issues if files with target names exist
* Add `.DEFAULT_GOAL := help` - Running `make` without arguments now shows the help message
## Are these changes tested?
## Are there any user-facing changes?
<!-- In the case of user-facing changes, please add the changelog label. -->
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] infra: simplify Makefile and uv [iceberg-python]
Posted by "geruh (via GitHub)" <gi...@apache.org>.
geruh commented on code in PR #2996:
URL: https://github.com/apache/iceberg-python/pull/2996#discussion_r2751979480
##########
Makefile:
##########
@@ -14,6 +14,13 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
+.PHONY: help install install-uv check-license lint \
+ test test-integration test-integration-setup test-integration-exec test-integration-cleanup test-integration-rebuild \
+ test-s3 test-adls test-gcs test-coverage coverage-report \
+ docs-serve docs-build notebook notebook-infra \
+ clean uv-lock uv-lock-check
+
+.DEFAULT_GOAL := help
Review Comment:
nit: non blocking but add a space after this
##########
Makefile:
##########
@@ -149,29 +156,23 @@ coverage-report: ## Combine and report coverage
##@ Documentation
-docs-install: ## Install docs dependencies (included in default groups)
- uv sync $(PYTHON_ARG) --group docs
-
docs-serve: ## Serve local docs preview (hot reload)
- uv run $(PYTHON_ARG) mkdocs serve -f mkdocs/mkdocs.yml --livereload
+ uv run $(PYTHON_ARG) --group docs mkdocs serve -f mkdocs/mkdocs.yml --livereload
docs-build: ## Build the static documentation site
- uv run $(PYTHON_ARG) mkdocs build -f mkdocs/mkdocs.yml --strict
+ uv run $(PYTHON_ARG) --group docs mkdocs build -f mkdocs/mkdocs.yml --strict
# ========================
# Experimentation
# ========================
##@ Experimentation
-notebook-install: ## Install notebook dependencies
- uv sync $(PYTHON_ARG) --all-extras --group notebook
-
-notebook: notebook-install ## Launch notebook for experimentation
- uv run jupyter lab --notebook-dir=notebooks
+notebook: ## Launch notebook for experimentation
+ uv run $(PYTHON_ARG) --all-extras --group notebook jupyter lab --notebook-dir=notebooks
Review Comment:
nice catch with python_arg
##########
.github/workflows/python-ci-docs.yml:
##########
@@ -41,8 +41,6 @@ jobs:
python-version: 3.12
- name: Install UV
uses: astral-sh/setup-uv@v7
- - name: Install
- run: make docs-install
- name: Build docs
Review Comment:
Now install is included with build step
##########
Makefile:
##########
@@ -149,29 +156,23 @@ coverage-report: ## Combine and report coverage
##@ Documentation
-docs-install: ## Install docs dependencies (included in default groups)
- uv sync $(PYTHON_ARG) --group docs
-
docs-serve: ## Serve local docs preview (hot reload)
- uv run $(PYTHON_ARG) mkdocs serve -f mkdocs/mkdocs.yml --livereload
+ uv run $(PYTHON_ARG) --group docs mkdocs serve -f mkdocs/mkdocs.yml --livereload
docs-build: ## Build the static documentation site
- uv run $(PYTHON_ARG) mkdocs build -f mkdocs/mkdocs.yml --strict
+ uv run $(PYTHON_ARG) --group docs mkdocs build -f mkdocs/mkdocs.yml --strict
Review Comment:
the docs group are in the projects default group here:
https://github.com/apache/iceberg-python/blob/c0e7c6d92259225960dfe4c4163d05e2e19707c3/pyproject.toml#L142-L146
Seems like we can lighten up the base for install!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] infra: simplify Makefile and uv [iceberg-python]
Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on code in PR #2996:
URL: https://github.com/apache/iceberg-python/pull/2996#discussion_r2834956495
##########
Makefile:
##########
@@ -149,29 +156,23 @@ coverage-report: ## Combine and report coverage
##@ Documentation
-docs-install: ## Install docs dependencies (included in default groups)
- uv sync $(PYTHON_ARG) --group docs
-
docs-serve: ## Serve local docs preview (hot reload)
- uv run $(PYTHON_ARG) mkdocs serve -f mkdocs/mkdocs.yml --livereload
+ uv run $(PYTHON_ARG) --group docs mkdocs serve -f mkdocs/mkdocs.yml --livereload
docs-build: ## Build the static documentation site
- uv run $(PYTHON_ARG) mkdocs build -f mkdocs/mkdocs.yml --strict
+ uv run $(PYTHON_ARG) --group docs mkdocs build -f mkdocs/mkdocs.yml --strict
# ========================
# Experimentation
# ========================
##@ Experimentation
-notebook-install: ## Install notebook dependencies
- uv sync $(PYTHON_ARG) --all-extras --group notebook
-
-notebook: notebook-install ## Launch notebook for experimentation
- uv run jupyter lab --notebook-dir=notebooks
+notebook: ## Launch notebook for experimentation
+ uv run $(PYTHON_ARG) --all-extras --group notebook jupyter lab --notebook-dir=notebooks
-notebook-infra: notebook-install test-integration-setup ## Launch notebook with integration test infra (Spark, Iceberg Rest Catalog, object storage, etc.)
- uv run jupyter lab --notebook-dir=notebooks
+notebook-infra: test-integration-setup ## Launch notebook with integration test infra (Spark, Iceberg Rest Catalog, object storage, etc.)
+ uv run $(PYTHON_ARG) --all-extras --group notebook jupyter lab --notebook-dir=notebooks
Review Comment:
Nice catch
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] infra: simplify Makefile and uv [iceberg-python]
Posted by "kevinjqliu (via GitHub)" <gi...@apache.org>.
kevinjqliu commented on code in PR #2996:
URL: https://github.com/apache/iceberg-python/pull/2996#discussion_r2813231886
##########
Makefile:
##########
@@ -14,6 +14,13 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
+.PHONY: help install install-uv check-license lint \
+ test test-integration test-integration-setup test-integration-exec test-integration-cleanup test-integration-rebuild \
+ test-s3 test-adls test-gcs test-coverage coverage-report \
+ docs-serve docs-build notebook notebook-infra \
+ clean uv-lock uv-lock-check
+
+.DEFAULT_GOAL := help
Review Comment:
whats the space for? or do you mean new line?
##########
Makefile:
##########
@@ -149,29 +156,23 @@ coverage-report: ## Combine and report coverage
##@ Documentation
-docs-install: ## Install docs dependencies (included in default groups)
Review Comment:
we could, but i dont think we need to since this is just the Makefile command
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] infra: simplify Makefile and uv [iceberg-python]
Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko merged PR #2996:
URL: https://github.com/apache/iceberg-python/pull/2996
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [PR] infra: simplify Makefile and uv [iceberg-python]
Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on code in PR #2996:
URL: https://github.com/apache/iceberg-python/pull/2996#discussion_r2777979170
##########
Makefile:
##########
@@ -149,29 +156,23 @@ coverage-report: ## Combine and report coverage
##@ Documentation
-docs-install: ## Install docs dependencies (included in default groups)
Review Comment:
Should we emit a deprecation message before removing it?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org