Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

testpaths = A A/B doesn't test folder A (used to work in v7.4.4) #12605

Open
Famlam opened this issue Jul 13, 2024 · 2 comments
Open

testpaths = A A/B doesn't test folder A (used to work in v7.4.4) #12605

Famlam opened this issue Jul 13, 2024 · 2 comments
Labels
topic: collection related to the collection phase type: regression indicates a problem that was introduced in a release which was working previously

Comments

@Famlam
Copy link

Famlam commented Jul 13, 2024

In the project Osmose we have the following configuration:

[pytest]
# Note that some files are excluded in "conftest.py"
norecursedirs = *
testpaths = . plugins plugins/tests modules analysers
python_files = *.py
python_classes = Test
python_functions = test test*

# Suppress warnings from shapely.affinity, which are fixed on a latter version
filterwarnings =
  ignore:.*invalid escape sequence.*:DeprecationWarning

Note especially the testpaths = . plugins plugins/tests modules analysers line together with norecursedirs = *

In version 7.4.4 this meant:

  • Check the main folder
  • Check the plugins folder
  • Check the plugins/tests folder
  • Check the modules folder
  • Check the analysers folder

In version 8.2.2 however this skips the files in the plugins folder, e.g.

  • Check the main folder
  • Check the plugins folder
  • Check the plugins/tests folder
  • Check the modules folder
  • Check the analysers folder

The header line when running the pytest command still mentions testpaths: ., plugins, plugins/tests, modules, analysers

============================= test session starts ==============================
platform linux -- Python 3.11.[9](https://github.com/osm-fr/osmose-backend/actions/runs/9844396084/job/27177682389#step:10:10), pytest-8.2.2, pluggy-1.5.0
rootdir: /__w/osmose-backend/osmose-backend
configfile: pytest.ini
testpaths: ., plugins, plugins/tests, modules, analysers
plugins: pylama-8.4.1
collected 68 items

I therefore think this change in behavior is likely not intended.

The directory structure, simplified, is:

root
|- analysers
| |- subfolders (to skip)
|- modules
| |- subfolders (to skip)
|- other folders
| |- subfolders (to skip)
|- plugins
| |- tests
| |- other subfolders (to skip)

Environment:

  • Pytest: 8.2.2 (also confirmed to fail on 8.0.2)
  • Operating System: Debian GNU/Linux 11 (bullseye)
pip list
Package                   Version
------------------------- ---------------
antlr4-python3-runtime    4.13.1
anyio                     4.4.0
argon2-cffi               23.1.0
argon2-cffi-bindings      21.2.0
arrow                     1.3.0
asttokens                 2.4.1
async-lru                 2.0.4
attrs                     23.2.0
Babel                     2.15.0
beautifulsoup4            4.12.3
bleach                    6.1.0
branca                    0.7.2
certifi                   2024.7.4
cffi                      1.16.0
charset-normalizer        3.3.2
click                     8.1.7
comm                      0.2.2
debugpy                   1.8.2
decorator                 5.1.1
defusedxml                0.7.1
exceptiongroup            1.2.2
executing                 2.0.1
fastjsonschema            2.20.0
fqdn                      1.5.1
future                    1.0.0
geojson                   3.1.0
h11                       0.14.0
httpcore                  1.0.5
httpx                     0.27.0
idna                      3.7
importlib-metadata        8.0.0
iniconfig                 2.0.0
ipykernel                 6.29.5
ipyleaflet                0.19.1
ipython                   8.18.1
ipywidgets                8.1.3
isoduration               20.11.0
jedi                      0.19.1
jinja2                    3.1.4
json5                     0.9.25
jsonpointer               3.0.0
jsonschema                4.23.0
jsonschema-specifications 2023.12.1
jupyter-client            8.6.2
jupyter-core              5.7.2
jupyter-events            0.10.0
jupyter-leaflet           0.19.1
jupyter-lsp               2.2.5
jupyter-server            2.14.2
jupyter-server-terminals  0.5.3
jupyterlab                4.2.3
jupyterlab-pygments       0.3.0
jupyterlab-server         2.27.2
jupyterlab-widgets        3.0.11
libarchive                0.4.8
lockfile                  0.12.2
mapbox-vector-tile        1.2.1
MarkupSafe                2.1.5
matplotlib-inline         0.1.7
mccabe                    0.7.0
mistune                   3.0.2
mypy                      1.10.1
mypy-extensions           1.0.0
nbclient                  0.10.0
nbconvert                 7.16.4
nbformat                  5.10.4
nest-asyncio              1.6.0
nose2                     0.15.1
notebook                  7.2.1
notebook-shim             0.2.4
numpy                     2.0.0
osmium                    3.7.0
overrides                 7.7.0
packaging                 24.1
pandas                    2.2.2
pandocfilters             1.5.1
parso                     0.8.4
pexpect                   4.9.0
pip                       20.3.4
pkg-resources             0.0.0
platformdirs              4.2.2
pluggy                    1.5.0
polib                     1.2.0
prometheus-client         0.20.0
prompt-toolkit            3.0.47
protobuf                  3.20.3
psutil                    6.0.0
psycopg2-binary           2.9.9
ptyprocess                0.7.0
pure-eval                 0.2.2
pyclipper                 1.3.0.post5
pycodestyle               2.12.0
pycparser                 2.22
pydocstyle                6.3.0
pyflakes                  3.2.0
pygments                  2.18.0
PyKOpeningHours           1.6.0
pylama                    8.4.1
pyproj                    3.6.1
pytest                    8.2.2
python-dateutil           2.9.0.post0
python-json-logger        2.0.7
pytz                      2024.1
PyYAML                    6.0.1
pyzmq                     26.0.3
referencing               0.35.1
regex                     2024.5.15
requests                  2.32.3
rfc3339-validator         0.1.4
rfc3986-validator         0.1.1
rpds-py                   0.19.0
scipy                     1.13.1
Send2Trash                1.8.3
sentry-sdk                2.9.0
setuptools                44.1.1
shapely                   2.0.5
six                       1.16.0
sniffio                   1.3.1
snowballstemmer           2.2.0
soupsieve                 2.5
stack-data                0.6.3
termcolor                 2.4.0
terminado                 0.18.1
tiletanic                 1.1.0
tinycss2                  1.3.0
tomli                     2.0.1
tornado                   6.4.1
traitlets                 5.14.3
traittypes                0.2.1
transporthours            0.0.4
types-certifi             2021.10.8.3
types-pkg-resources       0.1.3
types-python-dateutil     2.9.0.20240316
types-requests            2.32.0.20240712
types-termcolor           1.1.6.2
types-toml                0.10.8.20240310
typing-extensions         4.12.2
tzdata                    2024.1
Unidecode                 1.3.8
uri-template              1.3.0
urllib3                   2.2.2
vt2geojson                0.2.1
wcwidth                   0.2.13
webcolors                 24.6.0
webencodings              0.5.1
websocket-client          1.8.0
wheel                     0.34.2
widgetsnbextension        4.0.11
xmltodict                 0.13.0
xyzservices               2024.6.0
zipp                      3.19.2

Note that if I remove either plugins or plugins/tests from testpaths, everything behaves as expected (except that the removed directory isn't checked of course)

Related issue: osm-fr/osmose-backend#2266

@RonnyPfannschmidt
Copy link
Member

@bluetech my first rough idea for verification would be that the culling of test-path parent directories for the Directory collection may be overzealous if one of the parent folders is path of the testdirs

it should be gracefully handled, and perhaps warn that the extra subdir entry is of no consequence
we also should note that completely disabling recursion is currently a edge case we haven't worked with

@Zac-HD Zac-HD added topic: collection related to the collection phase type: regression indicates a problem that was introduced in a release which was working previously labels Jul 21, 2024
potiuk added a commit to potiuk/airflow that referenced this issue Aug 15, 2024
This test missed the mark and it has not been detected because of
a bugggy pytest behaviour pytest-dev/pytest#12605
that we had to workaround in apache#41499
@potiuk
Copy link

potiuk commented Aug 15, 2024

We stumbled upon the same issue in Airflow - we have a way to make selective checks (based on what has changed in the incoming commit we select folders to run tests on (but we want to recursively search them).

In some cases the selective checks resulted in (roughly):

pytest tests/providers tests/providers/amazon tests/providers/google

In pytest 7.* that collected all tests/providers tests recursively (including many other subfolders of tests/providers - including amazon, google tests recursively as well). However with Pytest 8.3.2 that we have currently this only collects "amazon" and "google".

I downgraded pytest and checked that (as expected) the behaviour changed in Pytest 8.0.0.

I workarounded it in apache/airflow#41499 - (I remove provider subfolders from the list) when I see I have the parent "tests/providers" also added), however, I think that behaviour is a bit unexpected - I guess it is a side effect of one of the changes in https://docs.pytest.org/en/stable/changelog.html#collection-changes, but it might be pretty disruptive if somoene had similar case - because it does not give an indication that only a subset of tests are run.

Possibly restoring old behaviour should be considered if possible.

vincbeck pushed a commit to apache/airflow that referenced this issue Aug 15, 2024
This test missed the mark and it has not been detected because of
a bugggy pytest behaviour pytest-dev/pytest#12605
that we had to workaround in #41499
potiuk added a commit to potiuk/airflow that referenced this issue Aug 15, 2024
Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605
potiuk added a commit to apache/airflow that referenced this issue Aug 15, 2024
Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605
potiuk added a commit to potiuk/airflow that referenced this issue Aug 16, 2024
Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605

(cherry picked from commit d489826)
potiuk added a commit to apache/airflow that referenced this issue Aug 16, 2024
Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605

(cherry picked from commit d489826)
Artuz37 pushed a commit to Artuz37/airflow that referenced this issue Aug 19, 2024
This test missed the mark and it has not been detected because of
a bugggy pytest behaviour pytest-dev/pytest#12605
that we had to workaround in apache#41499
Artuz37 pushed a commit to Artuz37/airflow that referenced this issue Aug 19, 2024
Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605
romsharon98 pushed a commit to romsharon98/airflow that referenced this issue Aug 20, 2024
This test missed the mark and it has not been detected because of
a bugggy pytest behaviour pytest-dev/pytest#12605
that we had to workaround in apache#41499
romsharon98 pushed a commit to romsharon98/airflow that referenced this issue Aug 20, 2024
Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605
utkarsharma2 added a commit to apache/airflow that referenced this issue Aug 22, 2024
…41610)

* Enable pull requests to be run from v*test branches (#41474) (#41476)

Since we switch from direct push of cherry-picking to open PRs
against v*test branch, we should enable PRs to run for the target
branch.

(cherry picked from commit a9363e6)

* Prevent provider lowest-dependency tests to run in non-main branch (#41478) (#41481)

When running tests in v2-10-test branch, lowest depenency tests
are run for providers - because when calculating separate tests,
the "skip_provider_tests" has not been used to filter them out.

This PR fixes it.

(cherry picked from commit 75da507)

* Make PROD image building works in non-main PRs (#41480) (#41484)

The PROD image building fails currently in non-main because it
attempts to build source provider packages rather than use them from
PyPi when PR is run against "v-test" branch.

This PR fixes it:

* PROD images in non-main-targetted build will pull providers from
  PyPI rather than build them
* they use PyPI constraints to install the providers
* they use UV - which should speed up building of the images

(cherry picked from commit 4d5f1c4)

* Add WebEncoder for trigger page rendering to avoid render failure (#41350) (#41485)

Co-authored-by: M. Olcay Tercanlı <[email protected]>

* Incorrect try number subtraction producing invalid span id for OTEL airflow (issue #41501) (#41502) (#41535)

* Fix for issue #39336

* removed unnecessary import

(cherry picked from commit dd3c3a7)

Co-authored-by: Howard Yoo <[email protected]>

* Fix failing pydantic v1 tests (#41534) (#41541)

We need to exclude some versions of Pydantic v1 because it conflicts
with aws provider.

(cherry picked from commit a033c5f)

* Fix Non-DB test calculation for main builds (#41499) (#41543)

Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605

(cherry picked from commit d489826)

* Add changelog for airflow python client 2.10.0 (#41583) (#41584)

* Add changelog for airflow python client 2.10.0

* Update client version

(cherry picked from commit 317a28e)

* Make all test pass in Database Isolation mode (#41567)

This adds dedicated "DatabaseIsolation" test to airflow v2-10-test
branch..

The DatabaseIsolation test will run all "db-tests" with enabled
DB isolation mode and running `internal-api` component - groups
of tests marked with "skip-if-database-isolation" will be skipped.

* Upgrade build and chart dependencies (#41570) (#41588)

(cherry picked from commit c88192c)

Co-authored-by: Jarek Potiuk <[email protected]>

* Limit watchtower as depenendcy as 3.3.0 breaks moin. (#41612)

(cherry picked from commit 1b602d5)

* Enable running Pull Requests against v2-10-stable branch (#41624)

(cherry picked from commit e306e7f)

* Fix tests/models/test_variable.py for database isolation mode (#41414)

* Fix tests/models/test_variable.py for database isolation mode

* Review feedback

(cherry picked from commit 736ebfe)

* Make latest botocore tests green (#41626)

The latest botocore tests are conflicting with a few requirements
and until apache-beam upcoming version is released we need to do
some manual exclusions. Those exclusions should make latest botocore
test green again.

(cherry picked from commit a13ccbb)

* Simpler task retrieval for taskinstance test (#41389)

The test has been updated for DB isolation but the retrieval of
task was not intuitive and it could lead to flaky tests possibly

(cherry picked from commit f25adf1)

* Skip  database isolation case for task mapping taskinstance tests (#41471)

Related: #41067
(cherry picked from commit 7718bd7)

* Skipping tests for db isolation because similar tests were skipped (#41450)

(cherry picked from commit e94b508)

---------

Co-authored-by: Jarek Potiuk <[email protected]>
Co-authored-by: Brent Bovenzi <[email protected]>
Co-authored-by: M. Olcay Tercanlı <[email protected]>
Co-authored-by: Howard Yoo <[email protected]>
Co-authored-by: Jens Scheffler <[email protected]>
Co-authored-by: Bugra Ozturk <[email protected]>
utkarsharma2 added a commit to apache/airflow that referenced this issue Aug 30, 2024
…41610)

* Enable pull requests to be run from v*test branches (#41474) (#41476)

Since we switch from direct push of cherry-picking to open PRs
against v*test branch, we should enable PRs to run for the target
branch.

(cherry picked from commit a9363e6)

* Prevent provider lowest-dependency tests to run in non-main branch (#41478) (#41481)

When running tests in v2-10-test branch, lowest depenency tests
are run for providers - because when calculating separate tests,
the "skip_provider_tests" has not been used to filter them out.

This PR fixes it.

(cherry picked from commit 75da507)

* Make PROD image building works in non-main PRs (#41480) (#41484)

The PROD image building fails currently in non-main because it
attempts to build source provider packages rather than use them from
PyPi when PR is run against "v-test" branch.

This PR fixes it:

* PROD images in non-main-targetted build will pull providers from
  PyPI rather than build them
* they use PyPI constraints to install the providers
* they use UV - which should speed up building of the images

(cherry picked from commit 4d5f1c4)

* Add WebEncoder for trigger page rendering to avoid render failure (#41350) (#41485)

Co-authored-by: M. Olcay Tercanlı <[email protected]>

* Incorrect try number subtraction producing invalid span id for OTEL airflow (issue #41501) (#41502) (#41535)

* Fix for issue #39336

* removed unnecessary import

(cherry picked from commit dd3c3a7)

Co-authored-by: Howard Yoo <[email protected]>

* Fix failing pydantic v1 tests (#41534) (#41541)

We need to exclude some versions of Pydantic v1 because it conflicts
with aws provider.

(cherry picked from commit a033c5f)

* Fix Non-DB test calculation for main builds (#41499) (#41543)

Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605

(cherry picked from commit d489826)

* Add changelog for airflow python client 2.10.0 (#41583) (#41584)

* Add changelog for airflow python client 2.10.0

* Update client version

(cherry picked from commit 317a28e)

* Make all test pass in Database Isolation mode (#41567)

This adds dedicated "DatabaseIsolation" test to airflow v2-10-test
branch..

The DatabaseIsolation test will run all "db-tests" with enabled
DB isolation mode and running `internal-api` component - groups
of tests marked with "skip-if-database-isolation" will be skipped.

* Upgrade build and chart dependencies (#41570) (#41588)

(cherry picked from commit c88192c)

Co-authored-by: Jarek Potiuk <[email protected]>

* Limit watchtower as depenendcy as 3.3.0 breaks moin. (#41612)

(cherry picked from commit 1b602d5)

* Enable running Pull Requests against v2-10-stable branch (#41624)

(cherry picked from commit e306e7f)

* Fix tests/models/test_variable.py for database isolation mode (#41414)

* Fix tests/models/test_variable.py for database isolation mode

* Review feedback

(cherry picked from commit 736ebfe)

* Make latest botocore tests green (#41626)

The latest botocore tests are conflicting with a few requirements
and until apache-beam upcoming version is released we need to do
some manual exclusions. Those exclusions should make latest botocore
test green again.

(cherry picked from commit a13ccbb)

* Simpler task retrieval for taskinstance test (#41389)

The test has been updated for DB isolation but the retrieval of
task was not intuitive and it could lead to flaky tests possibly

(cherry picked from commit f25adf1)

* Skip  database isolation case for task mapping taskinstance tests (#41471)

Related: #41067
(cherry picked from commit 7718bd7)

* Skipping tests for db isolation because similar tests were skipped (#41450)

(cherry picked from commit e94b508)

---------

Co-authored-by: Jarek Potiuk <[email protected]>
Co-authored-by: Brent Bovenzi <[email protected]>
Co-authored-by: M. Olcay Tercanlı <[email protected]>
Co-authored-by: Howard Yoo <[email protected]>
Co-authored-by: Jens Scheffler <[email protected]>
Co-authored-by: Bugra Ozturk <[email protected]>
utkarsharma2 added a commit to apache/airflow that referenced this issue Aug 30, 2024
…41610)

* Enable pull requests to be run from v*test branches (#41474) (#41476)

Since we switch from direct push of cherry-picking to open PRs
against v*test branch, we should enable PRs to run for the target
branch.

(cherry picked from commit a9363e6)

* Prevent provider lowest-dependency tests to run in non-main branch (#41478) (#41481)

When running tests in v2-10-test branch, lowest depenency tests
are run for providers - because when calculating separate tests,
the "skip_provider_tests" has not been used to filter them out.

This PR fixes it.

(cherry picked from commit 75da507)

* Make PROD image building works in non-main PRs (#41480) (#41484)

The PROD image building fails currently in non-main because it
attempts to build source provider packages rather than use them from
PyPi when PR is run against "v-test" branch.

This PR fixes it:

* PROD images in non-main-targetted build will pull providers from
  PyPI rather than build them
* they use PyPI constraints to install the providers
* they use UV - which should speed up building of the images

(cherry picked from commit 4d5f1c4)

* Add WebEncoder for trigger page rendering to avoid render failure (#41350) (#41485)

Co-authored-by: M. Olcay Tercanlı <[email protected]>

* Incorrect try number subtraction producing invalid span id for OTEL airflow (issue #41501) (#41502) (#41535)

* Fix for issue #39336

* removed unnecessary import

(cherry picked from commit dd3c3a7)

Co-authored-by: Howard Yoo <[email protected]>

* Fix failing pydantic v1 tests (#41534) (#41541)

We need to exclude some versions of Pydantic v1 because it conflicts
with aws provider.

(cherry picked from commit a033c5f)

* Fix Non-DB test calculation for main builds (#41499) (#41543)

Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605

(cherry picked from commit d489826)

* Add changelog for airflow python client 2.10.0 (#41583) (#41584)

* Add changelog for airflow python client 2.10.0

* Update client version

(cherry picked from commit 317a28e)

* Make all test pass in Database Isolation mode (#41567)

This adds dedicated "DatabaseIsolation" test to airflow v2-10-test
branch..

The DatabaseIsolation test will run all "db-tests" with enabled
DB isolation mode and running `internal-api` component - groups
of tests marked with "skip-if-database-isolation" will be skipped.

* Upgrade build and chart dependencies (#41570) (#41588)

(cherry picked from commit c88192c)

Co-authored-by: Jarek Potiuk <[email protected]>

* Limit watchtower as depenendcy as 3.3.0 breaks moin. (#41612)

(cherry picked from commit 1b602d5)

* Enable running Pull Requests against v2-10-stable branch (#41624)

(cherry picked from commit e306e7f)

* Fix tests/models/test_variable.py for database isolation mode (#41414)

* Fix tests/models/test_variable.py for database isolation mode

* Review feedback

(cherry picked from commit 736ebfe)

* Make latest botocore tests green (#41626)

The latest botocore tests are conflicting with a few requirements
and until apache-beam upcoming version is released we need to do
some manual exclusions. Those exclusions should make latest botocore
test green again.

(cherry picked from commit a13ccbb)

* Simpler task retrieval for taskinstance test (#41389)

The test has been updated for DB isolation but the retrieval of
task was not intuitive and it could lead to flaky tests possibly

(cherry picked from commit f25adf1)

* Skip  database isolation case for task mapping taskinstance tests (#41471)

Related: #41067
(cherry picked from commit 7718bd7)

* Skipping tests for db isolation because similar tests were skipped (#41450)

(cherry picked from commit e94b508)

---------

Co-authored-by: Jarek Potiuk <[email protected]>
Co-authored-by: Brent Bovenzi <[email protected]>
Co-authored-by: M. Olcay Tercanlı <[email protected]>
Co-authored-by: Howard Yoo <[email protected]>
Co-authored-by: Jens Scheffler <[email protected]>
Co-authored-by: Bugra Ozturk <[email protected]>
kosteev pushed a commit to GoogleCloudPlatform/composer-airflow that referenced this issue Nov 9, 2024
…41610)

* Enable pull requests to be run from v*test branches (#41474) (#41476)

Since we switch from direct push of cherry-picking to open PRs
against v*test branch, we should enable PRs to run for the target
branch.

(cherry picked from commit a9363e6a30d73a647ed7d45c92d46d1f6f98513f)

* Prevent provider lowest-dependency tests to run in non-main branch (#41478) (#41481)

When running tests in v2-10-test branch, lowest depenency tests
are run for providers - because when calculating separate tests,
the "skip_provider_tests" has not been used to filter them out.

This PR fixes it.

(cherry picked from commit 75da5074969ec874040ea094d5afe00b7f02be76)

* Make PROD image building works in non-main PRs (#41480) (#41484)

The PROD image building fails currently in non-main because it
attempts to build source provider packages rather than use them from
PyPi when PR is run against "v-test" branch.

This PR fixes it:

* PROD images in non-main-targetted build will pull providers from
  PyPI rather than build them
* they use PyPI constraints to install the providers
* they use UV - which should speed up building of the images

(cherry picked from commit 4d5f1c42a7873329b1b6b8b9b39db2c3033b46df)

* Add WebEncoder for trigger page rendering to avoid render failure (#41350) (#41485)

Co-authored-by: M. Olcay Tercanlı <[email protected]>

* Incorrect try number subtraction producing invalid span id for OTEL airflow (issue #41501) (#41502) (#41535)

* Fix for issue #39336

* removed unnecessary import

(cherry picked from commit dd3c3a7a43102c967d76cdcfe1f2f8ebeef4e212)

Co-authored-by: Howard Yoo <[email protected]>

* Fix failing pydantic v1 tests (#41534) (#41541)

We need to exclude some versions of Pydantic v1 because it conflicts
with aws provider.

(cherry picked from commit a033c5f15a033c751419506ea77ffdbacdd37705)

* Fix Non-DB test calculation for main builds (#41499) (#41543)

Pytest has a weird behaviour that it will not collect tests
from parent folder when subfolder of it is specified after the
parent folder. This caused some non-db tests from providers folder
have been skipped during main build.

The issue in Pytest 8.2 (used to work before) is tracked at
pytest-dev/pytest#12605

(cherry picked from commit d48982692c54d024d7c05e1efb7cd2adeb7d896c)

* Add changelog for airflow python client 2.10.0 (#41583) (#41584)

* Add changelog for airflow python client 2.10.0

* Update client version

(cherry picked from commit 317a28ed435960e7184e357a2f128806c34612fa)

* Make all test pass in Database Isolation mode (#41567)

This adds dedicated "DatabaseIsolation" test to airflow v2-10-test
branch..

The DatabaseIsolation test will run all "db-tests" with enabled
DB isolation mode and running `internal-api` component - groups
of tests marked with "skip-if-database-isolation" will be skipped.

* Upgrade build and chart dependencies (#41570) (#41588)

(cherry picked from commit c88192c466cb91842310f82a61eaa48b39439bef)

Co-authored-by: Jarek Potiuk <[email protected]>

* Limit watchtower as depenendcy as 3.3.0 breaks moin. (#41612)

(cherry picked from commit 1b602d50266184d118db52a674baeab29b1f5688)

* Enable running Pull Requests against v2-10-stable branch (#41624)

(cherry picked from commit e306e7f7bc1ef12aeab0fc09e018accda3684a2f)

* Fix tests/models/test_variable.py for database isolation mode (#41414)

* Fix tests/models/test_variable.py for database isolation mode

* Review feedback

(cherry picked from commit 736ebfe3fe2bd67406d5a50dacbfa1e43767d4ce)

* Make latest botocore tests green (#41626)

The latest botocore tests are conflicting with a few requirements
and until apache-beam upcoming version is released we need to do
some manual exclusions. Those exclusions should make latest botocore
test green again.

(cherry picked from commit a13ccbbdec8e59f30218f604fca8cbb999fcb757)

* Simpler task retrieval for taskinstance test (#41389)

The test has been updated for DB isolation but the retrieval of
task was not intuitive and it could lead to flaky tests possibly

(cherry picked from commit f25adf14ad486bac818fe3fdcd61eb3355e8ec9b)

* Skip  database isolation case for task mapping taskinstance tests (#41471)

Related: #41067
(cherry picked from commit 7718bd7a6ed7fb476e4920315b6d11f1ac465f44)

* Skipping tests for db isolation because similar tests were skipped (#41450)

(cherry picked from commit e94b508b946471420488cc466d92301b54b4c5ae)

---------

Co-authored-by: Jarek Potiuk <[email protected]>
Co-authored-by: Brent Bovenzi <[email protected]>
Co-authored-by: M. Olcay Tercanlı <[email protected]>
Co-authored-by: Howard Yoo <[email protected]>
Co-authored-by: Jens Scheffler <[email protected]>
Co-authored-by: Bugra Ozturk <[email protected]>
GitOrigin-RevId: 91f8265b6820eca747634dce39ae0d70aada2640
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: collection related to the collection phase type: regression indicates a problem that was introduced in a release which was working previously
Projects
None yet
Development

No branches or pull requests

4 participants