sundapeng opened a new pull request, #10623:
URL: https://github.com/apache/paimon/pull/10623
### Purpose
Split from #10599, which makes `docs/static/rest-*-open-api.yaml` the REST
contract and checks the Java `RESTApi` and `DLFOpenApiActions` against it. This
PR puts pypaimon under the same checks.
It is stacked on #10599: only the last three commits belong here, and I will
rebase once #10599 is merged.
- **Action table**: pypaimon's `dlf_openapi_actions.py` registers the same
74 actions as `DLFOpenApiActions`, in the same order. It had 53, so
`list_function_details` and `list_functions_globally` were signed without
`x-acs-action`.
- **CI checks**:
- `rest_api_coverage_test.py` sends every pypaimon `RESTApi` request,
including the constructor's config request, to a local server. It fails when a
request is not in the spec or lacks `x-acs-action`, or when a method sends
nothing. pypaimon may implement a subset of the spec.
- `dlf_signer_test.py` fails when the table differs from
`DLFOpenApiActions.java` or reuses an action name.
- `tools/ci/plan.py` runs the core Java suite and the Python tests for
spec changes, and the Python tests for `DLFOpenApiActions.java` changes.
### Tests
- pypaimon's rest, api, branch and CLI tests, flake8 and
`tools/ci/test_plan.py` pass.
- Dropping a route from the spec, renaming a pypaimon action or skipping the
config request fails the Python tests.
--
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]