geyanggang opened a new pull request, #13596:
URL: https://github.com/apache/gravitino/pull/13596
### What changes were proposed in this pull request?
- `mcp-server/pyproject.toml`: move `pylint`, `pytest` and `parameterized`
from
`[project].dependencies` into a `[dependency-groups] dev` group.
- `dev/docker/mcp-server/Dockerfile`: `uv sync` → `uv sync --no-dev`, and pin
`ghcr.io/astral-sh/uv` to `0.12.14`.
- `dev/docker/mcp-server/start-mcp-server.sh`: `uv run` → `uv run --no-dev`.
- `mcp-server/build.gradle.kts`: add an `installDevTools` task that installs
pinned pylint/pytest/parameterized into the venv, and have `pylint` and
`testPython` depend on it (they previously relied on these being runtime
deps).
- Regenerate `mcp-server/uv.lock`.
### Why are the changes needed?
The three packages are only used for linting and tests, but being listed as
runtime dependencies they ship in the MCP server image — including `pylint`
(GPL-2.0-or-later) and its transitive `astroid` (LGPL). Excluding them keeps
GPL/LGPL and unused test tooling out of the distributed image.
Fix: #13595
### Does this PR introduce _any_ user-facing change?
No. Developers still get the tools via `uv sync`.
### How was this patch tested?
- `uv sync --no-dev` installs none of pylint/astroid/pytest/parameterized;
the
default `uv sync` still installs them.
- `./gradlew :mcp-server:testPython :mcp-server:pylint` passes (269 tests,
pylint 10.00/10).
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]