richiebachala commented on issue #2044:
URL: https://github.com/apache/iceberg-go/issues/2044#issuecomment-6435839076

   I'd like to help with the testkit (step 1). With #2060 (optional SigV4) and 
#2061 (pterm removal) merged, it looks like the remaining unstarted piece here. 
@slachiewicz, are you already working on it? If you are, I'm happy to review 
and take the conformance wiring. If not, I can pick it up.
   
   Where I'm coming from: I've been building out `catalog/catalogtest` (#2165, 
#2173, #2237, #2248) and the external-REST conformance run with Polaris in CI 
(#2190). Today `TestRestCatalogConformance` is behind `//go:build integration` 
and needs a container. An in-process server would let the same 
`catalogtest.RunCatalogTests` run in plain `go test`.
   
   Proposed shape:
   - **Package:** `catalog/rest/resttest`, which exposes `NewHandler(opts...) 
http.Handler` plus a `NewServer(t)` helper built on `httptest`. It's importable 
by downstream projects.
   - **First PR:** `GET /v1/config`, namespaces (CRUD plus properties), and 
tables (create, load, exists, drop, rename, register). Also commits that 
validate requirements, where a stale requirement returns 409 so the client 
surfaces `ErrCommitFailed`, as the commit conformance tests from #2248 expect. 
State is held in memory, behind a mutex.
   - **Out of scope for the first PR:** views, scan planning, credential 
vending, multi-table transactions, and auth. Each can be its own follow-up.
   - **Dependencies:** it reuses the existing `table` metadata builder and the 
requirement/update types, so it adds no new dependency edges.
   - **Acceptance bar:** a conformance test that runs the full `catalogtest` 
suite against the handler.
   
   @zeroshade @laskoviymishka @nssalian, does that placement and scope fit the 
v1.0 package layout you're planning (#2062)? I'll keep the first PR small.
   


-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to