Hi all I'm canceling this vote due to issues discovered. RC2 will follow On Wed, Jun 14, 2023 at 11:53 AM Jarek Potiuk <ja...@potiuk.com> wrote:
> -1 [BINDING] -> I tested airflow works, verified checksums and signatures, > and licences. And they all work fine, and I would normally vote +1. BUT. > > I got inspired by some recent discussions on the ASF member list and I > actually went on for a more thorough check this time. And I found out that > our `-source.tar.gz` package is wrong - and contains wrong sources. > > I would love to have others to verify my findings, but it looks like that > airflow sources in the *apache-airflow-2.6.2-source.tar.gz * is different > than the ones in .whl and in our > https://github.com/apache/airflow/tree/2.6.2rc1 repository tree. > > I looked at 2.6.1 and it seems there, everything is fine and sources are > matching the tag / wheel files. > > This likely comes from some bugs in our tooling that prepares the package > and our process and we need to track it down and fix it before the release. > > Also we likely need to update our verification methods. > > J. > > > ⌁0% [jarek:~/asf-dist/dev/airflow/2.6.2rc1/apache-airflow-2.6.2] 3s % diff > ./airflow/api/common/mark_tasks.py > /home/jarek/code/airflow/airflow/api/common/mark_tasks.py > 24c24 > < from sqlalchemy import or_, select > --- > > from sqlalchemy import or_ > 151c151 > < tis_altered = session.scalars(qry_dag.with_for_update()).all() > --- > > tis_altered = qry_dag.with_for_update().all() > 154c154 > < tis_altered += > session.scalars(qry_sub_dag.with_for_update()).all() > --- > > tis_altered += qry_sub_dag.with_for_update().all() > 163c163 > < tis_altered = session.scalars(qry_dag).all() > --- > > tis_altered = qry_dag.all() > 166c166 > < tis_altered += session.scalars(qry_sub_dag).all() > --- > > tis_altered += qry_sub_dag.all() > 178,180c178,180 > < select(TaskInstance) > < .where(TaskInstance.dag_id.in_(sub_dag_run_ids), > TaskInstance.execution_date.in_(confirmed_dates)) > < .where(or_(TaskInstance.state.is_(None), TaskInstance.state != > state)) > --- > > session.query(TaskInstance) > > .filter(TaskInstance.dag_id.in_(sub_dag_run_ids), > TaskInstance.execution_date.in_(confirmed_dates)) > > .filter(or_(TaskInstance.state.is_(None), TaskInstance.state != > state)) > 193c193 > < qry_dag = select(TaskInstance).where( > --- > > qry_dag = session.query(TaskInstance).filter( > 199c199 > < qry_dag = qry_dag.where(or_(TaskInstance.state.is_(None), > TaskInstance.state != state)).options( > --- > > qry_dag = qry_dag.filter(or_(TaskInstance.state.is_(None), > TaskInstance.state != state)).options( > 258a259 > > :return: > 327,328c328,332 > < first_dagrun = session.scalar( > < select(DagRun).filter(DagRun.dag_id == > dag.dag_id).order_by(DagRun.execution_date.asc()).limit(1) > --- > > first_dagrun = ( > > session.query(DagRun) > > .filter(DagRun.dag_id == dag.dag_id) > > .order_by(DagRun.execution_date.asc()) > > .first() > 361,363c365 > < dag_run = session.execute( > < select(DagRun).where(DagRun.dag_id == dag_id, DagRun.run_id == > run_id) > < ).scalar_one() > --- > > dag_run = session.query(DagRun).filter(DagRun.dag_id == dag_id, > DagRun.run_id == run_id).one() > 466,472c468,472 > < tis = session.scalars( > < select(TaskInstance).where( > < TaskInstance.dag_id == dag.dag_id, > < TaskInstance.run_id == run_id, > < TaskInstance.task_id.in_(task_ids), > < TaskInstance.state.in_([State.RUNNING, State.DEFERRED, > State.UP_FOR_RESCHEDULE]), > < ) > --- > > tis = session.query(TaskInstance).filter( > > TaskInstance.dag_id == dag.dag_id, > > TaskInstance.run_id == run_id, > > TaskInstance.task_id.in_(task_ids), > > TaskInstance.state.in_([State.RUNNING, State.DEFERRED, > State.UP_FOR_RESCHEDULE]), > 474d473 > < > 485,491c484,488 > < tis = session.scalars( > < select(TaskInstance).filter( > < TaskInstance.dag_id == dag.dag_id, > < TaskInstance.run_id == run_id, > < TaskInstance.state.not_in(State.finished), > < TaskInstance.state.not_in([State.RUNNING, State.DEFERRED, > State.UP_FOR_RESCHEDULE]), > < ) > --- > > tis = session.query(TaskInstance).filter( > > TaskInstance.dag_id == dag.dag_id, > > TaskInstance.run_id == run_id, > > TaskInstance.state.not_in(State.finished), > > TaskInstance.state.not_in([State.RUNNING, State.DEFERRED, > State.UP_FOR_RESCHEDULE]), > > On Wed, Jun 14, 2023 at 7:39 AM Phani Kumar > <phani.ku...@astronomer.io.invalid> wrote: > > > + non-binding. Ran our example DAGs successfully > > > > On Wed, Jun 14, 2023 at 5:34 AM Oliveira, Niko > <oniko...@amazon.com.invalid > > > > > wrote: > > > > > +1 (non-binding) > > > > > > checked files, licenses, signatures, checksums, installation, and a few > > > example dags. > > > > > > Cheers, > > > Niko > > > > > > ________________________________ > > > From: Beck, Vincent <vincb...@amazon.com.INVALID> > > > Sent: Tuesday, June 13, 2023 12:32:39 PM > > > To: dev@airflow.apache.org > > > Subject: RE: [EXTERNAL][VOTE] Release Airflow 2.6.2 from 2.6.2rc1 > > > > > > 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. > > > > > > > > > > > > +1 (non-binding) > > > > > > Tested against my testing DAGs. > > > > > > On 2023-06-13, 12:04 PM, "Pankaj Koti" <pankaj.k...@astronomer.io > .INVA > > > <mailto:pankaj.k...@astronomer.io.inva>LID> wrote: > > > > > > > > > > > > > > > +1 (non-binding) > > > > > > > > > Tested my set of changes and additionally ran a few DAGs. > > > > > > > > > Regards, > > > > > > > > > > > > > > > > > > > > > Pankaj Koti > > > > > > > > > *Senior Software Engineer, *OSS Engineering Team. > > > Location: Pune, India > > > > > > > > > Timezone: Indian Standard Time (IST) > > > > > > > > > Email: pankaj.k...@astronomer.io <mailto:pankaj.k...@astronomer.io> > > > > > > > > > Mobile: +91 9730079985 > > > > > > > > > > > > > > > On Tue, Jun 13, 2023 at 1:45 PM Elad Kalif <elad...@apache.org > <mailto: > > > elad...@apache.org>> wrote: > > > > > > > > > > Hey fellow Airflowers, > > > > > > > > I have cut Airflow 2.6.2rc1. This email is calling a vote on the > > release, > > > > which will last at least 72 hours, from Tuesday, June 13, 2023 at > 08:15 > > > AM > > > > UTC > > > > until Friday, June 16, 2023 at 08:15 AM UTC ,and until 3 binding +1 > > votes > > > > have been received. > > > > > > > > Vote countdown timer: > > > > https://www.timeanddate.com/countdown/to?iso=20230616T0815&p0=1440 < > > > https://www.timeanddate.com/countdown/to?iso=20230616T0815&p0=1440 > > > > > > > > > > Status of testing of the release is kept at > > > > https://github.com/apache/airflow/issues/31867 < > > > https://github.com/apache/airflow/issues/31867> > > > > > > > > Consider this my (binding) +1. > > > > > > > > Airflow 2.6.2rc1 is available at: > > > > https://dist.apache.org/repos/dist/dev/airflow/2.6.2rc1/ < > > > https://dist.apache.org/repos/dist/dev/airflow/2.6.2rc1/> > > > > > > > > *apache-airflow-2.6.2-source.tar.gz* is a source release that comes > > with > > > > INSTALL instructions. > > > > *apache-airflow-2.6.2.tar.gz* is the binary Python "sdist" release. > > > > *apache_airflow-2.6.2-py3-none-any.whl* is the binary Python wheel > > > "binary" > > > > release. > > > > > > > > Public keys are available at: > > > > https://dist.apache.org/repos/dist/release/airflow/KEYS < > > > https://dist.apache.org/repos/dist/release/airflow/KEYS> > > > > > > > > Please vote accordingly: > > > > > > > > [ ] +1 approve > > > > [ ] +0 no opinion > > > > [ ] -1 disapprove with the reason > > > > > > > > Only votes from PMC members are binding, but all members of the > > community > > > > are encouraged to test the release and vote with "(non-binding)". > > > > > > > > The test procedure for PMCs and Contributors who would like to test > > this > > > RC > > > > are described in > > > > > > > > > > > > > > https://github.com/apache/airflow/blob/main/dev/README_RELEASE_AIRFLOW.md > > > < > > > https://github.com/apache/airflow/blob/main/dev/README_RELEASE_AIRFLOW.md > > > >\#verify-the-release-candidate-by-pmcs > > > > > > > > Please note that the version number excludes the `rcX` string, so > it's > > > now > > > > simply 2.6.2. This will allow us to rename the artifact without > > modifying > > > > the artifact checksums when we actually release. > > > > > > > > Release Notes: > > > > https://github.com/apache/airflow/blob/2.6.2rc1/RELEASE_NOTES.rst < > > > https://github.com/apache/airflow/blob/2.6.2rc1/RELEASE_NOTES.rst> > > > > > > > > Changes since 2.6.1: > > > > *Bug Fixes*: > > > > > > > > - Cascade update of TaskInstance to TaskMap table (#31445) > > > > - Fix Kubernetes executors detection of deleted pods (#31274) > > > > - Use keyword parameters for migration methods for mssql (#31309) > > > > - Control permissibility of driver config in extra from airflow.cfg > > > > (#31754) > > > > - Fixing broken links in openapi/v1.yaml (#31619) > > > > - Hide old alert box when testing connection with different value > > > (#31606) > > > > - Add TriggererStatus to OpenAPI spec (#31579) > > > > - Resolving issue where Grid won't un-collapse when Details is > > > > collapsed (#31561) > > > > - Fix sorting of tags (#31553) > > > > - Add the missing ``map_index`` to the xcom key when skipping > > > > downstream tasks (#31541) > > > > - Fix airflow users delete CLI command (#31539) > > > > - Include triggerer health status in Airflow ``/health`` endpoint > > > (#31529) > > > > - Remove dependency already registered for this task warning (#31502) > > > > - Use kube_client over default CoreV1Api for deleting pods (#31477) > > > > - Ensure min backoff in base sensor is at least 1 (#31412) > > > > - Fix ``max_active_tis_per_dagrun`` for Dynamic Task Mapping (#31406) > > > > - Fix error handling when pre-importing modules in DAGs (#31401) > > > > - Fix dropdown default and adjust tutorial to use 42 as default for > > > > proof (#31400) > > > > - Fix crash when clearing run with task from normal to mapped > (#31352) > > > > - Make BaseJobRunner a generic on the job class (#31287) > > > > - Fix ``url_for_asset`` fallback and 404 on DAG Audit Log (#31233) > > > > - Don't present an undefined execution date (#31196) > > > > - Added spinner activity while the logs load (#31165) > > > > - Include rediss to the list of supported URL schemes (#31028) > > > > - Optimize scheduler by skipping "non-schedulable" DAGs (#30706) > > > > - Save scheduler execution time during search for queued dag_runs > > > (#30699) > > > > - Fix ExternalTaskSensor to work correctly with task groups (#30742) > > > > - Fix DAG.access_control can't sync when clean access_control > (#30340) > > > > - Fix failing get_safe_url tests for latest Python 3.8 and 3.9 > (#31766) > > > > - Fix typing for POST user endpoint (#31767) > > > > - Fix wrong update for nested group default args (#31776) > > > > - Fix overriding ``default_args`` in nested task groups (#31608) > > > > - Mark ``[secrets] backend_kwargs`` as a sensitive config (#31788) > > > > - Executor events are not always "exited" here (#30859) > > > > - Validate connection IDs (#31140) > > > > > > > > > > > > *Misc/Internal*: > > > > > > > > - Add Python 3.11 support (#27264) > > > > - Replace unicodecsv with standard csv library (#31693) > > > > - Bring back unicodecsv as dependency of Airflow (#31814) > > > > - Remove found_descendents param from get_flat_relative_ids (#31559) > > > > - Fix typing in external task triggers (#31490) > > > > - Wording the next and last run DAG columns better (#31467) > > > > - Skip auto-document things with :meta private: (#31380) > > > > - Add an example for sql_alchemy_connect_args conf (#31332) > > > > - Convert dask upper-binding into exclusion (#31329) > > > > - Upgrade FAB to 4.3.1 (#31203) > > > > - Added metavar and choices to --state flag in airflow dags list-jobs > > > > CLI for suggesting valid state arguments. (#31308) > > > > - Use only one line for tmp dir log (#31170) > > > > - Rephrase comment in setup.py (#31312) > > > > - Add fullname to owner on logging (#30185) > > > > - Make connection id validation consistent across interface (#31282) > > > > - Use single source of truth for sensitive config items (#31820) > > > > > > > > > > > > *Doc only changes* > > > > > > > > - Add docstring and signature for _read_remote_logs (#31623) > > > > - Remove note about triggerer being 3.7+ only (#31483) > > > > - Fix version support information (#31468) > > > > - Add missing BashOperator import to documentation example (#31436) > > > > - Fix task.branch error caused by incorrect initial parameter > (#31265) > > > > - Update callbacks documentation (errors and context) (#31116) > > > > - Add an example for dynamic task mapping with non-TaskFlow operator > > > > (#29762) > > > > - Few doc fixes - links, grammar and wording (#31719) > > > > - Add description in a few more places about adding airflow to pip > > > > install (#31448) > > > > > > > > > > > > Cheers, > > > > Elad Kalif > > > > > > > > > > > > > > > > > > B�KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKCB� > > > � [��X��ܚX�K K[XZ[ � ]�][��X��ܚX�P Z\�� �˘\ X� K�ܙ�B��܈ Y ] [ۘ[ > > ��[X[� > > > � K[XZ[ � ]�Z [ Z\�� �˘\ X� K�ܙ�B > > > > > >