Skip to content

Commit 906a593

Browse files
committed
Update stubs
1 parent 07f933c commit 906a593

File tree

4 files changed

+24
-9
lines changed

4 files changed

+24
-9
lines changed

odoo-stubs/http.pyi

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,8 @@ class Request:
181181
_cr: Cursor
182182
@property
183183
def geoip(self) -> dict[str, Any]: ...
184+
@property
185+
def best_lang(self) -> str | None: ...
184186
def csrf_token(self, time_limit: int | None = ...) -> str: ...
185187
def validate_csrf(self, csrf: str) -> bool: ...
186188
def default_context(self) -> dict: ...

odoo-stubs/models.pyi

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ regex_private: Pattern[str]
3131

3232
def check_method_name(name: str) -> None: ...
3333
def fix_import_export_id_paths(fieldname: str) -> list[str]: ...
34-
def merge_trigger_trees(trees: list, select: Callable[[Any], bool] = ...) -> dict: ...
3534

3635
class MetaModel(api.Meta):
3736
module_to_models: defaultdict[str, list[type[BaseModel]]]
@@ -309,8 +308,6 @@ class BaseModel(metaclass=MetaModel):
309308
def _recompute_model(self, fnames: Iterable[str] | None = ...) -> None: ...
310309
def _recompute_recordset(self, fnames: Iterable[str] | None = ...) -> None: ...
311310
def _recompute_field(self, field: Field, ids: Iterable[int] | None = ...) -> None: ...
312-
@classmethod
313-
def _dependent_fields(cls, field: Field) -> Iterator[Field]: ...
314311
def _has_onchange(self, field: Field, other_fields: Container[Field]) -> bool: ...
315312
def _onchange_eval(self, field_name: str, onchange: str, result: dict) -> None: ...
316313
def onchange(self, values: dict[str, Any], field_name: str | list[str] | bool, field_onchange: dict[str, str]) -> dict: ...

odoo-stubs/modules/registry.pyi

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ from ..models import BaseModel
99
from ..fields import Field
1010
from ..sql_db import Connection, Cursor
1111
from ..tests.runner import OdooTestResult
12-
from ..tools import Collector, ignore as ignore
12+
from ..tools import Collector
1313
from ..tools.lru import LRU
1414

1515
class Registry(Mapping[str, type[BaseModel]]):
@@ -39,6 +39,8 @@ class Registry(Mapping[str, type[BaseModel]]):
3939
field_depends: Collector
4040
field_depends_context: Collector
4141
field_inverses: Collector
42+
_field_trigger_trees: dict[Field, TriggerTree]
43+
_is_modifying_relations: dict[Field, bool]
4244
registry_sequence: int | None
4345
cache_sequence: int | None
4446
_invalidation_flags: threading.local
@@ -62,10 +64,13 @@ class Registry(Mapping[str, type[BaseModel]]):
6264
def setup_models(self, cr: Cursor) -> None: ...
6365
@property
6466
def field_computed(self) -> dict[Field, list[Field]]: ...
67+
def get_trigger_tree(self, fields: list, select: Callable = ...) -> TriggerTree: ...
68+
def get_dependent_fields(self, field: Field) -> Iterator[Field]: ...
69+
def _discard_fields(self, fields: list[Field]) -> None: ...
70+
def get_field_trigger_tree(self, field: Field) -> TriggerTree: ...
6571
@property
66-
def field_triggers(self) -> dict[Field, Any]: ...
67-
@property
68-
def fields_modifying_relations(self) -> set[Field]: ...
72+
def _field_triggers(self) -> defaultdict[Field, Any]: ...
73+
def is_modifying_relations(self, field: Field) -> bool: ...
6974
def post_init(self, func: Callable, *args, **kwargs) -> None: ...
7075
def post_constraint(self, func: Callable, *args, **kwargs) -> None: ...
7176
def finalize_constraints(self) -> None: ...
@@ -103,3 +108,13 @@ class DummyRLock:
103108
def release(self) -> None: ...
104109
def __enter__(self) -> None: ...
105110
def __exit__(self, type, value, traceback) -> None: ...
111+
112+
class TriggerTree(dict):
113+
__slots__ = ['root']
114+
root: Any
115+
def __init__(self, root: Any = ..., *args, **kwargs) -> None: ...
116+
def __bool__(self) -> bool: ...
117+
def increase(self, key) -> TriggerTree: ...
118+
def depth_first(self) -> Iterator[TriggerTree]: ...
119+
@classmethod
120+
def merge(cls, trees: list[TriggerTree], select: Callable = ...) -> TriggerTree: ...

odoo-stubs/tools/mail.pyi

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
from email.message import Message
22
from re import Pattern
3-
from typing import Collection, FrozenSet, Literal
3+
from typing import Callable, Collection, FrozenSet, Literal
44

55
from lxml.etree import _Element
66
from lxml.html import clean
@@ -15,10 +15,11 @@ class _Cleaner(clean.Cleaner):
1515
strip_classes: bool
1616
sanitize_style: bool
1717
def __call__(self, doc: _Element) -> None: ...
18-
def tag_quote(self, el: _Element) -> None: ...
1918
def strip_class(self, el: _Element) -> None: ...
2019
def parse_style(self, el: _Element) -> None: ...
2120

21+
def tag_quote(el: _Element) -> None: ...
22+
def html_normalize(src: str, filter_callback: Callable[[_Element], _Element] | None = ...) -> str: ...
2223
def html_sanitize(src: str, silent: bool = ..., sanitize_tags: bool = ..., sanitize_attributes: bool = ..., sanitize_style: bool = ...,
2324
sanitize_form: bool = ..., strip_style: bool = ..., strip_classes: bool = ...) -> Markup: ...
2425

0 commit comments

Comments
 (0)