Microsoft/playwright-python (playwright)
### [`v1.43.0`](https://togithub.com/microsoft/playwright-python/releases/tag/v1.43.0)
[Compare Source](https://togithub.com/Microsoft/playwright-python/compare/v1.42.0...v1.43.0)
#### New APIs
- Method [BrowserContext.clear_cookies(\[options\])](https://playwright.dev/python/docs/api/class-browsercontext#browser-context-clear-cookies) now supports filters to remove only some cookies.
```python
```
### Clear all cookies.
context.clear_cookies()
### New: clear cookies with a particular name.
context.clear_cookies(name="session-id")
### New: clear cookies for a particular domain.
context.clear_cookies(domain="my-origin.com")
````
- New method [locator.content_frame](https://playwright.dev/python/docs/api/class-locator#locator-content-frame) converts a {@link Locator} object to a [FrameLocator](https://playwright.dev/python/docs/api/class-framelocator). This can be useful when you have a [Locator](https://playwright.dev/python/docs/api/class-locator) object obtained somewhere, and later on would like to interact with the content inside the frame.
```python
locator = page.locator("iframe[name='embedded']")
### ...
frame_locator = locator.content_frame
frame_locator.getByRole("button").click()
````
- New method [frameLocator.owner](https://playwright.dev/python/docs/api/class-framelocator#frame-locator-owner) converts a [FrameLocator](https://playwright.dev/python/docs/api/class-framelocator) object to a [Locator](https://playwright.dev/python/docs/api/class-locator). This can be useful when you have a [FrameLocator](https://playwright.dev/python/docs/api/class-framelocator) object obtained somewhere, and later on would like to interact with the `iframe` element.
```python
frame_locator = page.frame_locator("iframe[name='embedded']")
```
### ...
locator = frame_locator.owner
expect(locator).to_be_visible()
```
- Conda builds are now published for macOS-arm64 and Linux-arm64.
#### Browser Versions
* Chromium 124.0.6367.8
* Mozilla Firefox 124.0
* WebKit 17.4
This version was also tested against the following stable channels:
* Google Chrome 123
* Microsoft Edge 123
```
dateutil/dateutil (python-dateutil)
### [`v2.9.0`](https://togithub.com/dateutil/dateutil/releases/tag/2.9.0)
[Compare Source](https://togithub.com/dateutil/dateutil/compare/2.9.0.post0...2.9.0)
### Version 2.9.0 (2024-02-29)
#### Data updates
- Updated tzdata version to 2024a. (gh pr [#1342](https://togithub.com/dateutil/dateutil/issues/1342))
#### Features
- Made all `dateutil` submodules lazily imported using [PEP 562](https://www.python.org/dev/peps/pep-0562/). On Python 3.7+, things like `import dateutil; dateutil.tz.gettz("America/New_York")` will now work without explicitly importing `dateutil.tz`, with the import occurring behind the scenes on first use. The old behavior remains on Python 3.6 and earlier. Fixed by Orson Adams. (gh issue [#771](https://togithub.com/dateutil/dateutil/issues/771), gh pr [#1007](https://togithub.com/dateutil/dateutil/issues/1007))
#### Bugfixes
- Removed a call to `datetime.utcfromtimestamp`, which is deprecated as of Python 3.12. Reported by Hugo van Kemenade (gh pr [#1284](https://togithub.com/dateutil/dateutil/issues/1284)), fixed by Thomas Grainger (gh pr [#1285](https://togithub.com/dateutil/dateutil/issues/1285)).
#### Documentation changes
- Added note into docs and tests where relativedelta would return last day of the month only if the same day on a different month resolves to a date that doesn't exist. Reported by [@hawkEye-01](https://togithub.com/hawkEye-01) (gh issue [#1167](https://togithub.com/dateutil/dateutil/issues/1167)). Fixed by [@Mifrill](https://togithub.com/Mifrill) (gh pr [#1168](https://togithub.com/dateutil/dateutil/issues/1168))
astral-sh/ruff (ruff)
### [`v0.3.7`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#037)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.6...v0.3.7)
##### Preview features
- \[`flake8-bugbear`] Implement `loop-iterator-mutation` (`B909`) ([#9578](https://togithub.com/astral-sh/ruff/pull/9578))
- \[`pylint`] Implement rule to prefer augmented assignment (`PLR6104`) ([#9932](https://togithub.com/astral-sh/ruff/pull/9932))
##### Bug fixes
- Avoid TOCTOU errors in cache initialization ([#10884](https://togithub.com/astral-sh/ruff/pull/10884))
- \[`pylint`] Recode `nan-comparison` rule to `W0177` ([#10894](https://togithub.com/astral-sh/ruff/pull/10894))
- \[`pylint`] Reverse min-max logic in `if-stmt-min-max` ([#10890](https://togithub.com/astral-sh/ruff/pull/10890))
### [`v0.3.6`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#036)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.5...v0.3.6)
##### Preview features
- \[`pylint`] Implement `bad-staticmethod-argument` (`PLW0211`) ([#10781](https://togithub.com/astral-sh/ruff/pull/10781))
- \[`pylint`] Implement `if-stmt-min-max` (`PLR1730`, `PLR1731`) ([#10002](https://togithub.com/astral-sh/ruff/pull/10002))
- \[`pyupgrade`] Replace `str,Enum` multiple inheritance with `StrEnum` `UP042` ([#10713](https://togithub.com/astral-sh/ruff/pull/10713))
- \[`refurb`] Implement `if-expr-instead-of-or-operator` (`FURB110`) ([#10687](https://togithub.com/astral-sh/ruff/pull/10687))
- \[`refurb`] Implement `int-on-sliced-str` (`FURB166`) ([#10650](https://togithub.com/astral-sh/ruff/pull/10650))
- \[`refurb`] Implement `write-whole-file` (`FURB103`) ([#10802](https://togithub.com/astral-sh/ruff/pull/10802))
- \[`refurb`] Support `itemgetter` in `reimplemented-operator` (`FURB118`) ([#10526](https://togithub.com/astral-sh/ruff/pull/10526))
- \[`flake8_comprehensions`] Add `sum`/`min`/`max` to unnecessary comprehension check (`C419`) ([#10759](https://togithub.com/astral-sh/ruff/pull/10759))
##### Rule changes
- \[`pydocstyle`] Require capitalizing docstrings where the first sentence is a single word (`D403`) ([#10776](https://togithub.com/astral-sh/ruff/pull/10776))
- \[`pycodestyle`] Ignore annotated lambdas in class scopes (`E731`) ([#10720](https://togithub.com/astral-sh/ruff/pull/10720))
- \[`flake8-pyi`] Various improvements to PYI034 ([#10807](https://togithub.com/astral-sh/ruff/pull/10807))
- \[`flake8-slots`] Flag subclasses of call-based `typing.NamedTuple`s as well as subclasses of `collections.namedtuple()` (`SLOT002`) ([#10808](https://togithub.com/astral-sh/ruff/pull/10808))
- \[`pyflakes`] Allow forward references in class bases in stub files (`F821`) ([#10779](https://togithub.com/astral-sh/ruff/pull/10779))
- \[`pygrep-hooks`] Improve `blanket-noqa` error message (`PGH004`) ([#10851](https://togithub.com/astral-sh/ruff/pull/10851))
##### CLI
- Support `FORCE_COLOR` env var ([#10839](https://togithub.com/astral-sh/ruff/pull/10839))
##### Configuration
- Support negated patterns in `[extend-]per-file-ignores` ([#10852](https://togithub.com/astral-sh/ruff/pull/10852))
##### Bug fixes
- \[`flake8-import-conventions`] Accept non-aliased (but correct) import in `unconventional-import-alias` (`ICN001`) ([#10729](https://togithub.com/astral-sh/ruff/pull/10729))
- \[`flake8-quotes`] Add semantic model flag when inside f-string replacement field ([#10766](https://togithub.com/astral-sh/ruff/pull/10766))
- \[`pep8-naming`] Recursively resolve `TypeDicts` for N815 violations ([#10719](https://togithub.com/astral-sh/ruff/pull/10719))
- \[`flake8-quotes`] Respect `Q00*` ignores in `flake8-quotes` rules ([#10728](https://togithub.com/astral-sh/ruff/pull/10728))
- \[`flake8-simplify`] Show negated condition in `needless-bool` diagnostics (`SIM103`) ([#10854](https://togithub.com/astral-sh/ruff/pull/10854))
- \[`ruff`] Use within-scope shadowed bindings in `asyncio-dangling-task` (`RUF006`) ([#10793](https://togithub.com/astral-sh/ruff/pull/10793))
- \[`flake8-pytest-style`] Fix single-tuple conversion in `pytest-parametrize-values-wrong-type` (`PT007`) ([#10862](https://togithub.com/astral-sh/ruff/pull/10862))
- \[`flake8-return`] Ignore assignments to annotated variables in `unnecessary-assign` (`RET504`) ([#10741](https://togithub.com/astral-sh/ruff/pull/10741))
- \[`refurb`] Do not allow any keyword arguments for `read-whole-file` in `rb` mode (`FURB101`) ([#10803](https://togithub.com/astral-sh/ruff/pull/10803))
- \[`pylint`] Don't recommend decorating staticmethods with `@singledispatch` (`PLE1519`, `PLE1520`) ([#10637](https://togithub.com/astral-sh/ruff/pull/10637))
- \[`pydocstyle`] Use section name range for all section-related docstring diagnostics ([#10740](https://togithub.com/astral-sh/ruff/pull/10740))
- Respect `# noqa` directives on `__all__` openers ([#10798](https://togithub.com/astral-sh/ruff/pull/10798))
Configuration
📅 Schedule: Branch creation - "every 1 hour on sunday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
1.42.0
->1.43.0
2.9.0.post0
->2.9.0
0.3.5
->0.3.7
Release Notes
Microsoft/playwright-python (playwright)
### [`v1.43.0`](https://togithub.com/microsoft/playwright-python/releases/tag/v1.43.0) [Compare Source](https://togithub.com/Microsoft/playwright-python/compare/v1.42.0...v1.43.0) #### New APIs - Method [BrowserContext.clear_cookies(\[options\])](https://playwright.dev/python/docs/api/class-browsercontext#browser-context-clear-cookies) now supports filters to remove only some cookies. ```python ``` ### Clear all cookies. context.clear_cookies() ### New: clear cookies with a particular name. context.clear_cookies(name="session-id") ### New: clear cookies for a particular domain. context.clear_cookies(domain="my-origin.com") ```` - New method [locator.content_frame](https://playwright.dev/python/docs/api/class-locator#locator-content-frame) converts a {@link Locator} object to a [FrameLocator](https://playwright.dev/python/docs/api/class-framelocator). This can be useful when you have a [Locator](https://playwright.dev/python/docs/api/class-locator) object obtained somewhere, and later on would like to interact with the content inside the frame. ```python locator = page.locator("iframe[name='embedded']") ### ... frame_locator = locator.content_frame frame_locator.getByRole("button").click() ```` - New method [frameLocator.owner](https://playwright.dev/python/docs/api/class-framelocator#frame-locator-owner) converts a [FrameLocator](https://playwright.dev/python/docs/api/class-framelocator) object to a [Locator](https://playwright.dev/python/docs/api/class-locator). This can be useful when you have a [FrameLocator](https://playwright.dev/python/docs/api/class-framelocator) object obtained somewhere, and later on would like to interact with the `iframe` element. ```python frame_locator = page.frame_locator("iframe[name='embedded']") ``` ### ... locator = frame_locator.owner expect(locator).to_be_visible() ``` - Conda builds are now published for macOS-arm64 and Linux-arm64. #### Browser Versions * Chromium 124.0.6367.8 * Mozilla Firefox 124.0 * WebKit 17.4 This version was also tested against the following stable channels: * Google Chrome 123 * Microsoft Edge 123 ```dateutil/dateutil (python-dateutil)
### [`v2.9.0`](https://togithub.com/dateutil/dateutil/releases/tag/2.9.0) [Compare Source](https://togithub.com/dateutil/dateutil/compare/2.9.0.post0...2.9.0) ### Version 2.9.0 (2024-02-29) #### Data updates - Updated tzdata version to 2024a. (gh pr [#1342](https://togithub.com/dateutil/dateutil/issues/1342)) #### Features - Made all `dateutil` submodules lazily imported using [PEP 562](https://www.python.org/dev/peps/pep-0562/). On Python 3.7+, things like `import dateutil; dateutil.tz.gettz("America/New_York")` will now work without explicitly importing `dateutil.tz`, with the import occurring behind the scenes on first use. The old behavior remains on Python 3.6 and earlier. Fixed by Orson Adams. (gh issue [#771](https://togithub.com/dateutil/dateutil/issues/771), gh pr [#1007](https://togithub.com/dateutil/dateutil/issues/1007)) #### Bugfixes - Removed a call to `datetime.utcfromtimestamp`, which is deprecated as of Python 3.12. Reported by Hugo van Kemenade (gh pr [#1284](https://togithub.com/dateutil/dateutil/issues/1284)), fixed by Thomas Grainger (gh pr [#1285](https://togithub.com/dateutil/dateutil/issues/1285)). #### Documentation changes - Added note into docs and tests where relativedelta would return last day of the month only if the same day on a different month resolves to a date that doesn't exist. Reported by [@hawkEye-01](https://togithub.com/hawkEye-01) (gh issue [#1167](https://togithub.com/dateutil/dateutil/issues/1167)). Fixed by [@Mifrill](https://togithub.com/Mifrill) (gh pr [#1168](https://togithub.com/dateutil/dateutil/issues/1168))astral-sh/ruff (ruff)
### [`v0.3.7`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#037) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.6...v0.3.7) ##### Preview features - \[`flake8-bugbear`] Implement `loop-iterator-mutation` (`B909`) ([#9578](https://togithub.com/astral-sh/ruff/pull/9578)) - \[`pylint`] Implement rule to prefer augmented assignment (`PLR6104`) ([#9932](https://togithub.com/astral-sh/ruff/pull/9932)) ##### Bug fixes - Avoid TOCTOU errors in cache initialization ([#10884](https://togithub.com/astral-sh/ruff/pull/10884)) - \[`pylint`] Recode `nan-comparison` rule to `W0177` ([#10894](https://togithub.com/astral-sh/ruff/pull/10894)) - \[`pylint`] Reverse min-max logic in `if-stmt-min-max` ([#10890](https://togithub.com/astral-sh/ruff/pull/10890)) ### [`v0.3.6`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#036) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.3.5...v0.3.6) ##### Preview features - \[`pylint`] Implement `bad-staticmethod-argument` (`PLW0211`) ([#10781](https://togithub.com/astral-sh/ruff/pull/10781)) - \[`pylint`] Implement `if-stmt-min-max` (`PLR1730`, `PLR1731`) ([#10002](https://togithub.com/astral-sh/ruff/pull/10002)) - \[`pyupgrade`] Replace `str,Enum` multiple inheritance with `StrEnum` `UP042` ([#10713](https://togithub.com/astral-sh/ruff/pull/10713)) - \[`refurb`] Implement `if-expr-instead-of-or-operator` (`FURB110`) ([#10687](https://togithub.com/astral-sh/ruff/pull/10687)) - \[`refurb`] Implement `int-on-sliced-str` (`FURB166`) ([#10650](https://togithub.com/astral-sh/ruff/pull/10650)) - \[`refurb`] Implement `write-whole-file` (`FURB103`) ([#10802](https://togithub.com/astral-sh/ruff/pull/10802)) - \[`refurb`] Support `itemgetter` in `reimplemented-operator` (`FURB118`) ([#10526](https://togithub.com/astral-sh/ruff/pull/10526)) - \[`flake8_comprehensions`] Add `sum`/`min`/`max` to unnecessary comprehension check (`C419`) ([#10759](https://togithub.com/astral-sh/ruff/pull/10759)) ##### Rule changes - \[`pydocstyle`] Require capitalizing docstrings where the first sentence is a single word (`D403`) ([#10776](https://togithub.com/astral-sh/ruff/pull/10776)) - \[`pycodestyle`] Ignore annotated lambdas in class scopes (`E731`) ([#10720](https://togithub.com/astral-sh/ruff/pull/10720)) - \[`flake8-pyi`] Various improvements to PYI034 ([#10807](https://togithub.com/astral-sh/ruff/pull/10807)) - \[`flake8-slots`] Flag subclasses of call-based `typing.NamedTuple`s as well as subclasses of `collections.namedtuple()` (`SLOT002`) ([#10808](https://togithub.com/astral-sh/ruff/pull/10808)) - \[`pyflakes`] Allow forward references in class bases in stub files (`F821`) ([#10779](https://togithub.com/astral-sh/ruff/pull/10779)) - \[`pygrep-hooks`] Improve `blanket-noqa` error message (`PGH004`) ([#10851](https://togithub.com/astral-sh/ruff/pull/10851)) ##### CLI - Support `FORCE_COLOR` env var ([#10839](https://togithub.com/astral-sh/ruff/pull/10839)) ##### Configuration - Support negated patterns in `[extend-]per-file-ignores` ([#10852](https://togithub.com/astral-sh/ruff/pull/10852)) ##### Bug fixes - \[`flake8-import-conventions`] Accept non-aliased (but correct) import in `unconventional-import-alias` (`ICN001`) ([#10729](https://togithub.com/astral-sh/ruff/pull/10729)) - \[`flake8-quotes`] Add semantic model flag when inside f-string replacement field ([#10766](https://togithub.com/astral-sh/ruff/pull/10766)) - \[`pep8-naming`] Recursively resolve `TypeDicts` for N815 violations ([#10719](https://togithub.com/astral-sh/ruff/pull/10719)) - \[`flake8-quotes`] Respect `Q00*` ignores in `flake8-quotes` rules ([#10728](https://togithub.com/astral-sh/ruff/pull/10728)) - \[`flake8-simplify`] Show negated condition in `needless-bool` diagnostics (`SIM103`) ([#10854](https://togithub.com/astral-sh/ruff/pull/10854)) - \[`ruff`] Use within-scope shadowed bindings in `asyncio-dangling-task` (`RUF006`) ([#10793](https://togithub.com/astral-sh/ruff/pull/10793)) - \[`flake8-pytest-style`] Fix single-tuple conversion in `pytest-parametrize-values-wrong-type` (`PT007`) ([#10862](https://togithub.com/astral-sh/ruff/pull/10862)) - \[`flake8-return`] Ignore assignments to annotated variables in `unnecessary-assign` (`RET504`) ([#10741](https://togithub.com/astral-sh/ruff/pull/10741)) - \[`refurb`] Do not allow any keyword arguments for `read-whole-file` in `rb` mode (`FURB101`) ([#10803](https://togithub.com/astral-sh/ruff/pull/10803)) - \[`pylint`] Don't recommend decorating staticmethods with `@singledispatch` (`PLE1519`, `PLE1520`) ([#10637](https://togithub.com/astral-sh/ruff/pull/10637)) - \[`pydocstyle`] Use section name range for all section-related docstring diagnostics ([#10740](https://togithub.com/astral-sh/ruff/pull/10740)) - Respect `# noqa` directives on `__all__` openers ([#10798](https://togithub.com/astral-sh/ruff/pull/10798))Configuration
📅 Schedule: Branch creation - "every 1 hour on sunday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate. View repository job log here.