Missed a point.

Not to mention the tons of things it broke :)

It took almost 2-3 days to get the tests working, compat, providers etc :)

Thanks to Ash for patiently reviewing it!!

Thanks & Regards,
Amogh Desai


On Tue, 25 Mar 2025 at 5:20 PM, Amogh Desai <amoghdesai....@gmail.com>
wrote:

> Not to disregard any PRs in the list, but I'd like to self-nominate one of
> my PRs for PR of the month:: https://github.com/apache/airflow/pull/47339.
>
> XComs as we know is a simple concept but when it comes to internals --
> covering the model, serialization, deserialization, forward compatibility
> with Airflow 3,
> and multiple interaction points (TaskFlow API, core API, ti.xcom_push,
> etc.).
>
> This PR adds some key improvements:
> 1. Refactoring the BaseXCom class
> - It splits BaseXCom into XComModel and BaseXCom.
> - XComModel now strictly handles database/ORM operations.
> - BaseXCom serves as the base for custom XCom backends.
>
> 2. Uses the above definition with task SDK
> - BaseXCom now acts as an interface for interacting with XComs (set, get,
> etc.) from the Task SDK to the execution API.
>
> This has a few advantages now:
> 1. Now its explicit what belongs in XComModel (ORM-related) and what
> belongs in custom XCom backends.
> 2. Instead of going through wrappers on BaseXCom while performing API
> actions, API calls now directly interact with the ORM, making the code
> easier to grok.
> 3. Improved backward compat with respect to Xcoms:
> - XComModel handles serialization and deserialization consistently with
> task SDK (uses *airflow.serialization.serde* module)
> - Task SDK follows the same logic, eliminating any ambiguity across them.
> - The DB stores JSON compliant objects, with clients responsible for their
> own ser/deser now (task SDK will send serialised xcom to the execution api
> server, and upon receiving xcoms, will deser them if needed)
>
>
>
> Thanks & Regards,
> Amogh Desai
>
>
> On Tue, Mar 25, 2025 at 10:34 AM Abhishek Bhakat
> <abhishek.bha...@astronomer.io.invalid> wrote:
>
>> +1 for 47320
>>
>> - Avi
>>
>> On Mon, Mar 24, 2025 at 10:57 PM Briana Okyere
>> <briana.oky...@astronomer.io.invalid> wrote:
>>
>> > Hey All,
>> >
>> > It’s once again time to vote for the PR of the Month!
>> >
>> > With the help of the `get_important_pr_candidates` script in dev/stats,
>> > we've identified the following candidates:
>> >
>> > PR #47320: Disable ORM access from Tasks, DAG processing and Triggers <
>> > https://github.com/apache/airflow/pull/47320
>> > <https://github.com/apache/airflow/pull/44332>>
>> >
>> > PR #47433: AIP-84 | Add Auth for Dags <
>> > https://github.com/apache/airflow/pull/47433
>> > <https://github.com/apache/airflow/pull/44972>>
>> >
>> > PR #45300: AIP-81 - API Communication Mechanism <
>> > https://github.com/apache/airflow/pull/45300
>> > <https://github.com/apache/airflow/pull/44712>>
>> >
>> > PR #45960: feat(task_sdk): add support for inlet_events in Task Context
>> <
>> > https://github.com/apache/airflow/pull/45960
>> > <https://github.com/apache/airflow/pull/45106>>
>> >
>> > PR #47432: Set JWT token to localStorage from cookies <
>> > https://github.com/apache/airflow/pull/47432
>> > <https://github.com/apache/airflow/pull/44899>>
>> >
>> > Please reply to this thread with your selection or offer your own
>> > nominee(s).
>> >
>> > Voting will close on Friday, March 28th at 10 AM PST. The winner(s)
>> will be
>> > featured in the next issue of the Airflow newsletter.
>> >
>> > Also, if there’s an article or event that you think should be included
>> in
>> > this or a future issue of the newsletter, please drop me a line at <
>> > briana.oky...@astronomer.io>
>> >
>> > --
>> > Briana Okyere
>> >
>>
>

Reply via email to