BTW, when we separate Python API into another repository, we have to handle one
more issue, should we restart the Python API package in the version or continue
to keep
with the current version?
We may have two choices here.
1. Change pypi package name(eg. from `apache-dolphinscheduler` to
`pydolphinscheudler`)
and start with version 0.0.1. Pros are we will have a better version in the
further, and let user
know is it a different package and they should take care of when they use
the Python API.
Cons are users may confuse when they use both packages
`apache-dolphinscheduler` and
`pydolphinscheudler`(although we will add some doc to describe it)
2. Keep package name, but use 4.0.0 as the first version after we separate it.
Pros are we can
Still keep the package name, users can directly upgrade by pip or other
package version manager.
Cons are users may confuse when dolphin scheduler release version 4.x.x (we
will still add some
document to describe it too)
I personally prefer to use the second method, does anyone have other ideas
about it?
> On Nov 7, 2022, at 16:15, Jiajie Zhong <[email protected]> wrote:
>
> Thank Eric for the support, and I will try to separate during this week,
>
> And for the python api version, after we separate Python API from the main
> repo
> It will have a different version number and different release rate from
> apache/dolphinscheudler
>
> We will have a document to tell users the match between Python API to
> dolphinscheudler
> and we will have a version match mechanism when users submit requests from
> Python API
> to dolphinscheudler. When submit requests with wrong API version, will raise
> a warning/error to
> In the console
>
>
>> On Nov 3, 2022, at 10:46, Chufeng Gao <[email protected]> wrote:
>>
>> Hi Jay,
>>
>> I'm definitely +1 to this. Putting py code in another repo will reduce the
>> CI running time of both sides. Just curious, as we discussed before in a
>> community conference, another purpose for separating py code is that we
>> expect a faster iteration of pyds. If we `release Python API as the same
>> version of dolphinscheduler`, how could we achieve that?
>>
>> Thanks.
>>
>> *Best Regards,*
>>
>> *Chufeng (Eric) Gao*
>>
>>
>>
>> On Wed, Nov 2, 2022 at 5:30 PM Jiajie Zhong <[email protected]>
>> wrote:
>>
>>> I propose to separate Python API code into another repository to
>>> maintenance, and release Python API in an independent process with an
>>> independent version
>>>
>>> Currently our Python API code is a module in apache/dolphinscheduler
>>> codebase, each time users change Python API code, they need to run all
>>> requests CI check for dolphinscheduler and Python API, But if the user
>>> does only change Python code, it could be merged if Python API CI pass
>>> and do not dependent on others CI.
>>>
>>> Besides, we release Python API as the same version of
>>> dolphinscheduler. It is easy for user to match Python API version. But
>>> when Python API does not change any code, but dolphinscheduler release
>>> a bugfix version, Python API has to release the new version to match
>>> dolphinscheduler. This happened when we released Python API 2.0.6 and
>>> 2.0.7. 2.0.6 and 2.0.7 is bugfix version, and Python API does not
>>> change any code, so the PyPI package is the same.
>>>
>>> Separate Python API also makes our code more sense, we will have more
>>> distinguished code in dolphinscheduler and Python API new repository.
>>> Have separate
>>> issue tracker and changelog for information to users.
>>>
>>> --
>>> Best Wish
>>> — Jay Chung
>>>
>