Skip to content

Commit c28af1c

Browse files
committed
chore: Refresh multi subclass patch
1 parent a913894 commit c28af1c

1 file changed

Lines changed: 46 additions & 17 deletions

File tree

multi-subclass.patch

Lines changed: 46 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
src/lxml-stubs/cssselect.pyi | 10 ++---
33
src/lxml-stubs/etree/_element.pyi | 74 +++++++++++++++++-----------------
44
src/lxml-stubs/etree/_factory_func.pyi | 7 ++--
5-
src/lxml-stubs/html/_element.pyi | 24 +++++------
6-
src/lxml-stubs/objectify/_element.pyi | 6 +--
5+
src/lxml-stubs/html/_element.pyi | 36 +++++++++++------
6+
src/lxml-stubs/objectify/_element.pyi | 9 +++--
77
tests/runtime/_testutils/common.py | 2 +-
8-
7 files changed, 62 insertions(+), 63 deletions(-)
8+
7 files changed, 77 insertions(+), 63 deletions(-)
99

1010
diff --git a/pyproject.toml b/pyproject.toml
11-
index bb3ff5c..7309657 100644
11+
index c638ef7..0f5bfa3 100644
1212
--- a/pyproject.toml
1313
+++ b/pyproject.toml
1414
@@ -5,7 +5,7 @@ requires = ['pdm-backend ~= 2.4']
@@ -55,7 +55,7 @@ index a37ec88..6ee9a2c 100644
5555
- ) -> list[_ET]: ...
5656
+ ) -> list[_Element]: ...
5757
diff --git a/src/lxml-stubs/etree/_element.pyi b/src/lxml-stubs/etree/_element.pyi
58-
index f9e4b37..2e1f903 100644
58+
index 98dba20..7357598 100644
5959
--- a/src/lxml-stubs/etree/_element.pyi
6060
+++ b/src/lxml-stubs/etree/_element.pyi
6161
@@ -27,9 +27,9 @@ else:
@@ -389,65 +389,83 @@ index 60f92a4..b670190 100644
389389
-) -> _ET: ...
390390
+) -> _Element: ...
391391
diff --git a/src/lxml-stubs/html/_element.pyi b/src/lxml-stubs/html/_element.pyi
392-
index 77c1b61..6d37ab9 100644
392+
index 77c1b61..9284edd 100644
393393
--- a/src/lxml-stubs/html/_element.pyi
394394
+++ b/src/lxml-stubs/html/_element.pyi
395-
@@ -133,7 +133,7 @@ class HtmlElement(etree.ElementBase):
395+
@@ -133,7 +133,8 @@ class HtmlElement(etree.ElementBase):
396396
# Subclassing of _Element should not go beyond HtmlElement. For example,
397397
# while children of HtmlElement are mostly HtmlElement, FormElement never
398398
# contains FormElement as child.
399399
- @overload
400400
+ @overload # type: ignore[override]
401+
+ # pyrefly: ignore[bad-override]
401402
def __getitem__(
402403
self,
403404
__x: int,
404-
@@ -143,7 +143,7 @@ class HtmlElement(etree.ElementBase):
405+
@@ -143,7 +144,8 @@ class HtmlElement(etree.ElementBase):
405406
self,
406407
__x: slice,
407408
) -> list[HtmlElement]: ...
408409
- @overload
409410
+ @overload # type: ignore[override]
411+
+ # pyrefly: ignore[bad-override]
410412
def __setitem__(
411413
self,
412414
__x: int,
413-
@@ -159,7 +159,7 @@ class HtmlElement(etree.ElementBase):
415+
@@ -157,12 +159,14 @@ class HtmlElement(etree.ElementBase):
416+
) -> None: ...
417+
def __iter__(self) -> Iterator[HtmlElement]: ...
414418
def __reversed__(self) -> Iterator[HtmlElement]: ...
419+
+ # pyrefly: ignore[bad-override]
415420
def append( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
416421
self,
417422
- element: HtmlElement,
418423
+ element: HtmlElement, # type: ignore[override]
419424
) -> None: ...
420425
@overload
421426
@deprecated("Expects iterable of elements as value, not single element")
422-
@@ -175,30 +175,30 @@ class HtmlElement(etree.ElementBase):
427+
+ # pyrefly: ignore[bad-override]
428+
def extend(
429+
self,
430+
elements: etree._Element,
431+
@@ -172,33 +176,39 @@ class HtmlElement(etree.ElementBase):
432+
self,
433+
elements: Iterable[HtmlElement],
434+
) -> None: ...
435+
+ # pyrefly: ignore[bad-override]
423436
def insert( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
424437
self,
425438
index: int,
426439
- element: HtmlElement,
427440
+ element: HtmlElement, # type: ignore[override]
428441
) -> None: ...
442+
+ # pyrefly: ignore[bad-override]
429443
def remove( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
430444
self,
431445
- element: HtmlElement,
432446
+ element: HtmlElement, # type: ignore[override]
433447
) -> None: ...
448+
+ # pyrefly: ignore[bad-override]
434449
def index( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
435450
self,
436451
- child: HtmlElement,
437452
+ child: HtmlElement, # type: ignore[override]
438453
start: int | None = None,
439454
stop: int | None = None,
440455
) -> int: ...
456+
+ # pyrefly: ignore[bad-override]
441457
def addnext( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
442458
self,
443459
- element: HtmlElement,
444460
+ element: HtmlElement, # type: ignore[override]
445461
) -> None: ...
462+
+ # pyrefly: ignore[bad-override]
446463
def addprevious( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
447464
self,
448465
- element: HtmlElement,
449466
+ element: HtmlElement, # type: ignore[override]
450467
) -> None: ...
468+
+ # pyrefly: ignore[bad-override]
451469
def replace( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
452470
self,
453471
- old_element: HtmlElement,
@@ -457,51 +475,62 @@ index 77c1b61..6d37ab9 100644
457475
) -> None: ...
458476
def getparent(self) -> HtmlElement | None: ...
459477
def getnext(self) -> HtmlElement | None: ...
460-
@@ -279,7 +279,7 @@ class HtmlElement(etree.ElementBase):
478+
@@ -273,13 +283,15 @@ class HtmlElement(etree.ElementBase):
479+
*,
480+
with_tail: bool = True,
481+
) -> Iterator[str]: ...
482+
+ # pyrefly: ignore[bad-override]
483+
makeelement: type[HtmlElement] # pyright: ignore[reportIncompatibleVariableOverride]
484+
def find(
485+
self,
461486
path: _ElemPathArg,
462487
namespaces: _StrOnlyNSMap | None = None,
463488
) -> HtmlElement | None: ...
464489
- def findall( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
490+
+ # pyrefly: ignore[bad-override]
465491
+ def findall( # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
466492
self,
467493
path: _ElemPathArg,
468494
namespaces: _StrOnlyNSMap | None = None,
469-
@@ -289,7 +289,7 @@ class HtmlElement(etree.ElementBase):
495+
@@ -289,7 +301,7 @@ class HtmlElement(etree.ElementBase):
470496
path: _ElemPathArg,
471497
namespaces: _StrOnlyNSMap | None = None,
472498
) -> Iterator[HtmlElement]: ...
473499
- def cssselect( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
474-
+ def cssselect( # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
500+
+ def cssselect( # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override] # pyrefly: ignore[bad-override]
475501
self,
476502
expr: str,
477503
*,
478504
diff --git a/src/lxml-stubs/objectify/_element.pyi b/src/lxml-stubs/objectify/_element.pyi
479-
index 0a18dc8..c8c6c26 100644
505+
index 58a59fa..c6f04ee 100644
480506
--- a/src/lxml-stubs/objectify/_element.pyi
481507
+++ b/src/lxml-stubs/objectify/_element.pyi
482-
@@ -59,7 +59,7 @@ class ObjectifiedElement(ElementBase):
508+
@@ -60,7 +60,8 @@ class ObjectifiedElement(ElementBase):
483509
def addattr(self, tag: _TagName, value: object) -> None: ...
484510
def countchildren(self) -> int: ...
485511
def descendantpaths(self, prefix: str | list[str] | None = None) -> list[str]: ...
486512
- def getchildren( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
513+
+ # pyrefly: ignore[bad-override]
487514
+ def getchildren( # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
488515
self,
489516
) -> list[ObjectifiedElement]: ...
490517
def __iter__(self) -> Iterator[ObjectifiedElement]: ...
491-
@@ -70,7 +70,7 @@ class ObjectifiedElement(ElementBase):
518+
@@ -71,7 +72,8 @@ class ObjectifiedElement(ElementBase):
492519
def __delattr__(self, __name: str) -> None: ...
493520
# elem['foo'] is equivalent to elem.foo, but allows for
494521
# special attribute names (like 'text' or 'tail')
495522
- @overload
496523
+ @overload # type: ignore[override]
524+
+ # pyrefly: ignore[bad-override]
497525
def __getitem__(self, key: int | str | bytes, /) -> ObjectifiedElement: ...
498526
@overload
499527
def __getitem__( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
500-
@@ -86,7 +86,7 @@ class ObjectifiedElement(ElementBase):
528+
@@ -87,7 +89,8 @@ class ObjectifiedElement(ElementBase):
501529
# TODO Check if _Element methods need overriding
502530
# CSS selector is not a normal use case for objectified
503531
# element (and unnecessary), but still usable nonetheless
504532
- def cssselect( # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
533+
+ # pyrefly: ignore[bad-override]
505534
+ def cssselect( # type: ignore[override] # pyright: ignore[reportIncompatibleMethodOverride] # ty: ignore[invalid-method-override]
506535
self,
507536
expr: str,

0 commit comments

Comments
 (0)