Yeah. Removing them from IDE is PRECISELY the goal :).

On Fri, Aug 5, 2022 at 11:01 AM Ash Berlin-Taylor <a...@apache.org> wrote:

> And by removing them/making them dynamic the ide will think they don't
> even exist anymore.
>
> (Also: these have been showing as deprecated in IDEs for ~2 years; If
> someone was going to update their code they would have already)
>
> On 5 August 2022 09:58:38 BST, Ash Berlin-Taylor <a...@apache.org> wrote:
>>
>> I think the _goal_ is to not have the deprecated classes show up in IDEs
>> - i.e. we want to discourage people from using them.
>>
>> On 5 August 2022 09:44:42 BST, "Kamil Breguła" <dzaku...@gmail.com>
>> wrote:
>>>
>>> I am concerned that the use of dynamic attributes will prevent the IDE
>>> from recognizing these deprecated modules and marking them in the IDE.
>>> This is what it looks like in my IDE now: https://imgur.com/a/OnRjiKs
>>>
>>> pt., 5 sie 2022 o 00:28 Ferruzzi, Dennis <ferru...@amazon.com.invalid>
>>> napisał(a):
>>>
>>>> >  add dynamic attributes to __init__ of airflow.contrib,
>>>> airflow.operators, airflow.hooks. (to resolve to provider operators).
>>>>
>>>> This sounds promising to me.
>>>>
>>>> ------------------------------
>>>> *From:* Jarek Potiuk <ja...@potiuk.com>
>>>> *Sent:* Thursday, August 4, 2022 6:52 AM
>>>> *To:* dev@airflow.apache.org
>>>> *Subject:* RE: [EXTERNAL][DISCUSS] Move "contrib" and all old classes
>>>> to a separate package
>>>>
>>>>
>>>> *CAUTION*: This email originated from outside of the organization. Do
>>>> not click links or open attachments unless you can confirm the sender and
>>>> know the content is safe.
>>>>
>>>> > This is the issue though. apache-airflow does not depend on
>>>> apache-airflow-providers-google >= 8.0, so you can still be on the same
>>>> version of the provider on 2.3 and 2.4, but by _only_ upgrading
>>>> apache-airflow package your DAG now breaks.
>>>>
>>>> Correct. The difference is that by only upgrading apache-airflow alone
>>>> you will break it. And I see why this might be seen as "problematic".
>>>>
>>>> But I have another idea. Why - rather than keeping the deprecations in
>>>> the code we load such deprecated  we add dynamic attributes to __init__ of
>>>> airflow.contrib, airflow.operators, airflow.hooks. (to resolve to provider
>>>> operators).
>>>>
>>>> Such dynamic attributes will be invisible to autocompletion, will not
>>>> be documented with APIs nor visible in the source code (Except deep
>>>> inspection of __init__ in those packages).
>>>>
>>>> This has no compatibility breaking potential whatsoever
>>>>
>>>>
>>>> J.
>>>>
>>>>
>>>> On Thu, Aug 4, 2022 at 3:47 PM Ash Berlin-Taylor <a...@apache.org>
>>>> wrote:
>>>>
>>>>> On Thu, Aug 4 2022 at 13:59:23 +02:00:00, Jarek Potiuk <
>>>>> ja...@potiuk.com> wrote:
>>>>>
>>>>> When you migrate to Airflow 2.4 and it links to the 8.0 version of
>>>>> Google provider (assume 2.3 linked to 7) you have to make changes to make
>>>>> it work in backwards incompatible way - you have to downgrade google
>>>>> provider to 7.0. You still can do it, but it is not "out-of-the-box".
>>>>>
>>>>>
>>>>> This is the issue though. apache-airflow does not depend on
>>>>> apache-airflow-providers-google >= 8.0, so you can still be on the same
>>>>> version of the provider on 2.3 and 2.4, but by _only_ upgrading
>>>>> apache-airflow package your DAG now breaks.
>>>>>
>>>>>
>>>>>

Reply via email to