I don't think this is a good idea. We make no effort to ensure that the auto-generated Python code is usable. It's mainly for reference. Anyone can take the spec and generate code if that's what they want to do, so I don't think the project needs to be responsible for it.
On Fri, Sep 5, 2025 at 4:37 PM Alex Stephen <alexstep...@google.com.invalid> wrote: > Hi all, > > I noticed that we generate a set of Python models > <https://github.com/apache/iceberg/blob/main/open-api/rest-catalog-open-api.py> > containing Request/Response objects for the REST Catalog. > > PyIceberg has recreated many of these models > <https://github.com/apache/iceberg-python/blob/main/pyiceberg/catalog/rest/__init__.py> > albeit > with less detail in many cases. > > I'd like to propose that we publish the rest-catalog-open-api.py > <https://github.com/apache/iceberg/blob/main/open-api/rest-catalog-open-api.py> > file > as a Python package that PyIceberg can import. This would allow us to keep > the REST Catalog models + the Python models in sync. It would also allow > other Python packages to pick up the REST Catalog schema while staying in > sync with any changes that we make to the REST Catalog. > > We could publish this new Python package out of the standard Iceberg repo. > Preferably, we'd release it separately from the Java library so that Java + > Python can develop concurrently. > > Any thoughts? > > Thanks! > > -- Alex Stephen >