Agree with both of you. The code (as most auto-generated code) is ugly. But it handles all corner cases, retries, error handling etc. out-of-the-box.
It is good for contributors (no extra effort needed after adding new functionality) - we can release the client pretty much immediately after new Airflow release. It's good for users (they have very convenient API implementation with auto-completion /structures/constants/documentation/IDE integration for their use with all but guarantee of consistency with released Airflow API). And it's clear from the headers the code is auto generated so no risk someone will use it as example or try to modify it. I think for me it does not really matter how ugly the code is in this case as long as it does the job and we can regenerate it any time we need :) J. wt., 20 kwi 2021, 08:44 użytkownik Sumit Maheshwari <[email protected]> napisał: > Completely agree with Ash, the generated python code is ugly. But given > the benefits of using OpenApi vs handwritten code, the generated code > definitely wins over. > > On Tue, Apr 20, 2021 at 5:40 AM Kaxil Naik <[email protected]> wrote: > >> +1 (binding). Thanks Sumit. >> >> On Mon, Apr 19, 2021 at 9:37 PM Ash Berlin-Taylor <[email protected]> wrote: >> >>> Not blocking the release but the wheel contains airflow_lient/tests/* >>> that it shouldn't. >>> >>> The release is fine, checksums check etc. >>> >>> I've just looked at what we are actually releasing. My god.: that >>> generated API is a crime against Python. I am seriously considering a -1 >>> just because it is so damn ugly. >>> >>> I won't, but I considered it. But only because it is under the >>> airflow_client.client module so we can hide that monstrosity in future in >>> the airflow_client module. >>> >>> +1 binding. >>> >>> >>> On Mon, 19 Apr, 2021 at 20:49, Jarek Potiuk <[email protected]> wrote: >>> >>> +1 (binding). Checked the signatures etc. Installed client locally and >>> run it with airflow. All looks good ! >>> >>> On Mon, Apr 19, 2021 at 5:56 PM Sumit Maheshwari <[email protected]> >>> wrote: >>> >>>> Hello everyone, >>>> >>>> I have cut the second release candidate for the Airflow Python Client >>>> 2.0.0rc3. The client consists of APIs corresponding to REST APIs available >>>> in *Apache Airflow 2.0.1* release. This email is calling a vote on the >>>> release, which will last for 72 hours. Consider this my (binding) +1. >>>> >>>> Airflow Client 2.0.0.rc3 is available at: >>>> https://dist.apache.org/repos/dist/dev/airflow/clients/python/2.0.0rc3/ >>>> >>>> Or also available at PyPI: >>>> https://pypi.org/project/apache-airflow-client/2.0.0rc3/ >>>> >>>> *airflow-client-2.0.0rc3-source.tar.gz* is a source release that comes >>>> with INSTALL instructions. >>>> *airflow-client-2.0.0rc3-bin.tar.gz* is the binary Python "sdist" >>>> release. >>>> >>>> Public keys are available at: >>>> https://dist.apache.org/repos/dist/release/airflow/KEYS >>>> >>>> Only votes from PMC members are binding, but the release manager should >>>> encourage members of the community to test the release and vote with >>>> "(non-binding)". >>>> >>>> As this is the first release, there is no changelog. The source code >>>> for this release can be found here: >>>> https://github.com/apache/airflow-client-python/tree/r2.0 >>>> >>>> Thanks, >>>> Sumit Maheshwari >>>> PMC Apache Airflow >>>> >>> >>> >>> -- >>> +48 660 796 129 >>> >>>
