diff --git a/odoo-stubs/__init__.pyi b/odoo-stubs/__init__.pyi index e69de29..b7c3df8 100644 --- a/odoo-stubs/__init__.pyi +++ b/odoo-stubs/__init__.pyi @@ -0,0 +1,32 @@ +# Stubs for odoo (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +__path__: Any +evented: bool + +def gevent_wait_callback(conn: Any, timeout: Optional[Any] = ...) -> None: ... + +multi_process: bool +SUPERUSER_ID: int + +def registry(database_name: Optional[Any] = ...): ... + +from . import addons +from . import conf +from . import loglevels +from . import modules +from . import netsvc +from . import osv +from . import release +from . import service +from . import sql_db +from . import tools +from . import models +from . import fields +from . import api +from . import cli +from . import http +from .tools.translate import _ as _ diff --git a/odoo-stubs/addons/__init__.pyi b/odoo-stubs/addons/__init__.pyi new file mode 100644 index 0000000..e69de29 diff --git a/odoo-stubs/api.pyi b/odoo-stubs/api.pyi index 9f24c72..59133d2 100644 --- a/odoo-stubs/api.pyi +++ b/odoo-stubs/api.pyi @@ -1,3 +1,7 @@ +# Stubs for odoo.api (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + from collections import Mapping from typing import Any, Optional diff --git a/odoo-stubs/cli/__init__.pyi b/odoo-stubs/cli/__init__.pyi new file mode 100644 index 0000000..212123c --- /dev/null +++ b/odoo-stubs/cli/__init__.pyi @@ -0,0 +1,5 @@ +# Stubs for odoo.cli (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from .command import Command, main diff --git a/odoo-stubs/cli/command.pyi b/odoo-stubs/cli/command.pyi new file mode 100644 index 0000000..d92d13a --- /dev/null +++ b/odoo-stubs/cli/command.pyi @@ -0,0 +1,17 @@ +# Stubs for odoo.cli.command (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +commands: Any + +class CommandType(type): + def __init__(cls, name: Any, bases: Any, attrs: Any) -> None: ... + +Command: Any + +class Help(Command): + def run(self, args: Any) -> None: ... + +def main() -> None: ... diff --git a/odoo-stubs/cli/deploy.pyi b/odoo-stubs/cli/deploy.pyi new file mode 100644 index 0000000..a4c8ae1 --- /dev/null +++ b/odoo-stubs/cli/deploy.pyi @@ -0,0 +1,16 @@ +# Stubs for odoo.cli.deploy (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +from . import Command + + +class Deploy(Command): + session: Any = ... + def __init__(self) -> None: ... + def deploy_module(self, module_path: Any, url: Any, login: Any, password: Any, db: str = ..., force: bool = ...): ... + def login_upload_module(self, module_file: Any, url: Any, login: Any, password: Any, db: Any, force: bool = ...): ... + def zip_module(self, path: Any): ... + def run(self, cmdargs: Any) -> None: ... diff --git a/odoo-stubs/cli/scaffold.pyi b/odoo-stubs/cli/scaffold.pyi new file mode 100644 index 0000000..b2d3b21 --- /dev/null +++ b/odoo-stubs/cli/scaffold.pyi @@ -0,0 +1,30 @@ +# Stubs for odoo.cli.scaffold (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +from . import Command + + +class Scaffold(Command): + def run(self, cmdargs: Any) -> None: ... + def epilog(self): ... + +builtins: Any + +def snake(s: Any): ... +def pascal(s: Any): ... +def directory(p: Any, create: bool = ...): ... + +env: Any + +class template: + id: Any = ... + path: Any = ... + def __init__(self, identifier: Any) -> None: ... + def files(self) -> None: ... + def render_to(self, modname: Any, directory: Any, params: Optional[Any] = ...) -> None: ... + +def die(message: Any, code: int = ...) -> None: ... +def warn(message: Any) -> None: ... diff --git a/odoo-stubs/cli/server.pyi b/odoo-stubs/cli/server.pyi new file mode 100644 index 0000000..4851f6f --- /dev/null +++ b/odoo-stubs/cli/server.pyi @@ -0,0 +1,20 @@ +# Stubs for odoo.cli.server (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +from . import Command + + +def check_root_user() -> None: ... +def check_postgres_user() -> None: ... +def report_configuration() -> None: ... +def rm_pid_file(main_pid: Any) -> None: ... +def setup_pid_file() -> None: ... +def export_translation() -> None: ... +def import_translation() -> None: ... +def main(args: Any) -> None: ... + +class Server(Command): + def run(self, args: Any) -> None: ... diff --git a/odoo-stubs/cli/shell.pyi b/odoo-stubs/cli/shell.pyi new file mode 100644 index 0000000..3965a92 --- /dev/null +++ b/odoo-stubs/cli/shell.pyi @@ -0,0 +1,25 @@ +# Stubs for odoo.cli.shell (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +import code +from typing import Any, Optional + +from . import Command + + +def raise_keyboard_interrupt(*a: Any) -> None: ... + +class Console(code.InteractiveConsole): + def __init__(self, locals: Optional[Any] = ..., filename: str = ...) -> None: ... + +class Shell(Command): + supported_shells: Any = ... + def init(self, args: Any) -> None: ... + def console(self, local_vars: Any): ... + def ipython(self, local_vars: Any) -> None: ... + def ptpython(self, local_vars: Any) -> None: ... + def bpython(self, local_vars: Any) -> None: ... + def python(self, local_vars: Any) -> None: ... + def shell(self, dbname: Any) -> None: ... + def run(self, args: Any): ... diff --git a/odoo-stubs/cli/start.pyi b/odoo-stubs/cli/start.pyi new file mode 100644 index 0000000..4cb110e --- /dev/null +++ b/odoo-stubs/cli/start.pyi @@ -0,0 +1,14 @@ +# Stubs for odoo.cli.start (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +from . import Command + + +class Start(Command): + def get_module_list(self, path: Any): ... + def run(self, cmdargs: Any): ... + +def die(message: Any, code: int = ...) -> None: ... diff --git a/odoo-stubs/conf/__init__.pyi b/odoo-stubs/conf/__init__.pyi new file mode 100644 index 0000000..0c7947d --- /dev/null +++ b/odoo-stubs/conf/__init__.pyi @@ -0,0 +1,8 @@ +# Stubs for odoo.conf (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +addons_paths: Any +server_wide_modules: Any diff --git a/odoo-stubs/exceptions.pyi b/odoo-stubs/exceptions.pyi new file mode 100644 index 0000000..cf1b3b2 --- /dev/null +++ b/odoo-stubs/exceptions.pyi @@ -0,0 +1,43 @@ +# Stubs for odoo.exceptions (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +class except_orm(Exception): + name: Any = ... + value: Any = ... + args: Any = ... + def __init__(self, name: Any, value: Optional[Any] = ...) -> None: ... + +class UserError(except_orm): + def __init__(self, msg: Any) -> None: ... +Warning = UserError + +class RedirectWarning(Exception): + @property + def name(self): ... + +class AccessDenied(Exception): + __cause__: Any = ... + traceback: Any = ... + def __init__(self, message: str = ...) -> None: ... + +class AccessError(except_orm): + def __init__(self, msg: Any) -> None: ... + +class CacheMiss(except_orm, KeyError): + def __init__(self, record: Any, field: Any) -> None: ... + +class MissingError(except_orm): + def __init__(self, msg: Any) -> None: ... + +class ValidationError(except_orm): + def __init__(self, msg: Any) -> None: ... + +class DeferredException(Exception): + message: Any = ... + traceback: Any = ... + def __init__(self, msg: Any, tb: Any) -> None: ... + +class QWebException(Exception): ... diff --git a/odoo-stubs/fields.pyi b/odoo-stubs/fields.pyi index 906fcb5..7f9f729 100644 --- a/odoo-stubs/fields.pyi +++ b/odoo-stubs/fields.pyi @@ -1,3 +1,9 @@ +# Stubs for odoo.fields (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from .sql_db import LazyCursor +from .tools.mimetypes import guess_mimetype from typing import Any, Optional DATE_LENGTH: Any @@ -15,7 +21,7 @@ class MetaField(type): def __new__(meta: Any, name: Any, bases: Any, attrs: Any): ... def __init__(cls, name: Any, bases: Any, attrs: Any) -> None: ... -class Field(MetaField('DummyField', (object,), {})): +class Field: type: Any = ... relational: bool = ... translate: bool = ... @@ -54,7 +60,7 @@ class Field(MetaField('DummyField', (object,), {})): def read(self, records: Any): ... def create(self, record_values: Any) -> None: ... def write(self, records: Any, value: Any): ... - # def __get__(self, record: Any, owner: Any): ... + def __get__(self, record: Any, owner: Any): ... def __set__(self, record: Any, value: Any) -> None: ... def compute_value(self, records: Any) -> None: ... def determine_value(self, record: Any) -> None: ... diff --git a/odoo-stubs/http.pyi b/odoo-stubs/http.pyi new file mode 100644 index 0000000..1ae394d --- /dev/null +++ b/odoo-stubs/http.pyi @@ -0,0 +1,163 @@ +from typing import Any, Optional, Union + +import werkzeug.wsgi + +rpc_request: Any +rpc_response: Any +STATIC_CACHE: Any +request: Union['WebRequest', 'HttpRequest'] + +def replace_request_password(args: Any): ... + +NO_POSTMORTEM: Any + +def dispatch_rpc(service_name: Any, method: Any, params: Any): ... +def local_redirect(path: Any, query: Optional[Any] = ..., keep_hash: bool = ..., forward_debug: bool = ..., code: int = ...): ... +def redirect_with_hash(url: Any, code: int = ...): ... + +class WebRequest: + httprequest: Any = ... + httpresponse: Any = ... + disable_db: bool = ... + endpoint: Any = ... + endpoint_arguments: Any = ... + auth_method: Any = ... + def __init__(self, httprequest: Any) -> None: ... + @property + def cr(self): ... + @property + def uid(self): ... + @uid.setter + def uid(self, val: Any) -> None: ... + @property + def context(self): ... + @context.setter + def context(self, val: Any) -> None: ... + @property + def env(self): ... + context: Any = ... + def lang(self): ... + def session(self): ... + def __enter__(self): ... + uid: Any = ... + def __exit__(self, exc_type: Any, exc_value: Any, traceback: Any) -> None: ... + def set_handler(self, endpoint: Any, arguments: Any, auth: Any) -> None: ... + @property + def debug(self): ... + def registry_cr(self) -> None: ... + @property + def registry(self): ... + @property + def db(self): ... + def csrf_token(self, time_limit: int = ...): ... + def validate_csrf(self, csrf: Any): ... + +def route(route: Optional[Any] = ..., **kw: Any): ... + +class JsonRequest(WebRequest): + jsonp_handler: Any = ... + params: Any = ... + jsonp: Any = ... + jsonrequest: Any = ... + context: Any = ... + def __init__(self, *args: Any) -> None: ... + def dispatch(self): ... + +def serialize_exception(e: Any): ... + +class HttpRequest(WebRequest): + params: Any = ... + def __init__(self, *args: Any) -> None: ... + def dispatch(self): ... + def make_response(self, data: Any, headers: Optional[Any] = ..., cookies: Optional[Any] = ...): ... + def render(self, template: Any, qcontext: Optional[Any] = ..., lazy: bool = ..., **kw: Any): ... + def not_found(self, description: Optional[Any] = ...): ... + +addons_manifest: Any +controllers_per_module: Any + +class ControllerType(type): + def __init__(cls, name: Any, bases: Any, attrs: Any) -> None: ... + +Controller: Any + +class EndPoint: + method: Any = ... + original: Any = ... + routing: Any = ... + arguments: Any = ... + def __init__(self, method: Any, routing: Any) -> None: ... + @property + def first_arg_is_req(self): ... + def __call__(self, *args: Any, **kw: Any): ... + +def routing_map(modules: Any, nodb_only: Any, converters: Optional[Any] = ...): ... + +class AuthenticationError(Exception): ... +class SessionExpiredException(Exception): ... + +class OpenERPSession(werkzeug.contrib.sessions.Session): + inited: bool = ... + modified: bool = ... + rotate: bool = ... + def __init__(self, *args: Any, **kwargs: Any) -> None: ... + def __getattr__(self, attr: Any): ... + def __setattr__(self, k: Any, v: Any): ... + db: Any = ... + uid: Any = ... + login: Any = ... + session_token: Any = ... + def authenticate(self, db: Any, login: Optional[Any] = ..., password: Optional[Any] = ..., uid: Optional[Any] = ...): ... + def check_security(self) -> None: ... + def logout(self, keep_db: bool = ...) -> None: ... + context: Any = ... + def get_context(self): ... + def save_action(self, action: Any): ... + def get_action(self, key: Any): ... + def save_request_data(self) -> None: ... + def load_request_data(self) -> None: ... + +def session_gc(session_store: Any) -> None: ... + +class Response(werkzeug.wrappers.Response): + default_mimetype: str = ... + def __init__(self, *args: Any, **kw: Any) -> None: ... + template: Any = ... + qcontext: Any = ... + uid: Any = ... + def set_default(self, template: Optional[Any] = ..., qcontext: Optional[Any] = ..., uid: Optional[Any] = ...) -> None: ... + @property + def is_qweb(self): ... + def render(self): ... + def flatten(self) -> None: ... + +class DisableCacheMiddleware: + app: Any = ... + def __init__(self, app: Any) -> None: ... + def __call__(self, environ: Any, start_response: Any): ... + +class Root: + def __init__(self) -> None: ... + def session_store(self): ... + def nodb_routing_map(self): ... + def __call__(self, environ: Any, start_response: Any): ... + dispatch: Any = ... + def load_addons(self) -> None: ... + def setup_session(self, httprequest: Any): ... + def setup_db(self, httprequest: Any) -> None: ... + def setup_lang(self, httprequest: Any) -> None: ... + def get_request(self, httprequest: Any): ... + def get_response(self, httprequest: Any, result: Any, explicit_session: Any): ... + def dispatch(self, environ: Any, start_response: Any): ... + def get_db_router(self, db: Any): ... + +def db_list(force: bool = ..., httprequest: Optional[Any] = ...): ... +def db_filter(dbs: Any, httprequest: Optional[Any] = ...): ... +def db_monodb(httprequest: Optional[Any] = ...): ... +def send_file(filepath_or_fp: Any, mimetype: Optional[Any] = ..., as_attachment: bool = ..., filename: Optional[Any] = ..., mtime: Optional[Any] = ..., add_etags: bool = ..., cache_timeout: Any = ..., conditional: bool = ...): ... +def content_disposition(filename: Any): ... + +class CommonController(Controller): + def gen_session_id(self): ... + +root: Any diff --git a/odoo-stubs/loglevels.pyi b/odoo-stubs/loglevels.pyi new file mode 100644 index 0000000..b18cf3c --- /dev/null +++ b/odoo-stubs/loglevels.pyi @@ -0,0 +1,19 @@ +# Stubs for odoo.loglevels (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +LOG_NOTSET: str +LOG_DEBUG: str +LOG_INFO: str +LOG_WARNING: str +LOG_ERROR: str +LOG_CRITICAL: str + +def get_encodings(hint_encoding: str = ...) -> None: ... + +text_type: Any + +def ustr(value: Any, hint_encoding: str = ..., errors: str = ...): ... +def exception_to_unicode(e: Any): ... diff --git a/odoo-stubs/models.pyi b/odoo-stubs/models.pyi index a97f7e8..56c2545 100644 --- a/odoo-stubs/models.pyi +++ b/odoo-stubs/models.pyi @@ -1,7 +1,8 @@ -from . import api, fields from collections import MutableMapping from typing import Any, Optional, List, Union, Sequence, Tuple, Dict, Generator +from . import api, fields + SearchDomain = List[Union[str, Sequence[str]]] RecordValue = Dict[str, Any] diff --git a/odoo-stubs/modules/__init__.pyi b/odoo-stubs/modules/__init__.pyi new file mode 100644 index 0000000..d61dcde --- /dev/null +++ b/odoo-stubs/modules/__init__.pyi @@ -0,0 +1,4 @@ +# Stubs for odoo.modules (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + diff --git a/odoo-stubs/modules/db.pyi b/odoo-stubs/modules/db.pyi new file mode 100644 index 0000000..8562402 --- /dev/null +++ b/odoo-stubs/modules/db.pyi @@ -0,0 +1,10 @@ +# Stubs for odoo.modules.db (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +def is_initialized(cr: Any): ... +def initialize(cr: Any) -> None: ... +def create_categories(cr: Any, categories: Any): ... +def has_unaccent(cr: Any): ... diff --git a/odoo-stubs/modules/graph.pyi b/odoo-stubs/modules/graph.pyi new file mode 100644 index 0000000..0aa66f1 --- /dev/null +++ b/odoo-stubs/modules/graph.pyi @@ -0,0 +1,29 @@ +# Stubs for odoo.modules.graph (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +class Graph(dict): + def add_node(self, name: Any, info: Any): ... + def update_from_db(self, cr: Any) -> None: ... + def add_module(self, cr: Any, module: Any, force: Optional[Any] = ...) -> None: ... + def add_modules(self, cr: Any, module_list: Any, force: Optional[Any] = ...): ... + def __iter__(self) -> None: ... + +class Node: + def __new__(cls, name: Any, graph: Any, info: Any): ... + name: Any = ... + graph: Any = ... + info: Any = ... + children: Any = ... + depth: int = ... + def __init__(self, name: Any, graph: Any, info: Any) -> None: ... + @property + def data(self): ... + def add_child(self, name: Any, info: Any): ... + def __setattr__(self, name: Any, value: Any) -> None: ... + def __iter__(self): ... + def should_have_demo(self): ... + @property + def parents(self): ... diff --git a/odoo-stubs/modules/loading.pyi b/odoo-stubs/modules/loading.pyi new file mode 100644 index 0000000..b029c11 --- /dev/null +++ b/odoo-stubs/modules/loading.pyi @@ -0,0 +1,13 @@ +# Stubs for odoo.modules.loading (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +def load_data(cr: Any, idref: Any, mode: Any, kind: Any, package: Any, report: Any): ... +def load_demo(cr: Any, package: Any, idref: Any, mode: Any, report: Optional[Any] = ...): ... +def force_demo(cr: Any) -> None: ... +def load_module_graph(cr: Any, graph: Any, status: Optional[Any] = ..., perform_checks: bool = ..., skip_modules: Optional[Any] = ..., report: Optional[Any] = ..., models_to_check: Optional[Any] = ...): ... +def load_marked_modules(cr: Any, graph: Any, states: Any, force: Any, progressdict: Any, report: Any, loaded_modules: Any, perform_checks: Any, models_to_check: Optional[Any] = ...): ... +def load_modules(db: Any, force_demo: bool = ..., status: Optional[Any] = ..., update_module: bool = ...): ... +def reset_modules_state(db_name: Any) -> None: ... diff --git a/odoo-stubs/modules/migration.pyi b/odoo-stubs/modules/migration.pyi new file mode 100644 index 0000000..4967484 --- /dev/null +++ b/odoo-stubs/modules/migration.pyi @@ -0,0 +1,14 @@ +# Stubs for odoo.modules.migration (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +def load_script(path: Any, module_name: Any): ... + +class MigrationManager: + cr: Any = ... + graph: Any = ... + migrations: Any = ... + def __init__(self, cr: Any, graph: Any) -> None: ... + def migrate_module(self, pkg: Any, stage: Any): ... diff --git a/odoo-stubs/modules/module.pyi b/odoo-stubs/modules/module.pyi new file mode 100644 index 0000000..b375b38 --- /dev/null +++ b/odoo-stubs/modules/module.pyi @@ -0,0 +1,48 @@ +# Stubs for odoo.modules.module (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +MANIFEST_NAMES: Any +README: Any +ad_paths: Any +hooked: bool +loaded: Any + +class AddonsHook: + def find_module(self, name: Any, path: Optional[Any] = ...): ... + def load_module(self, name: Any): ... + +class OdooHook: + def find_module(self, name: Any, path: Optional[Any] = ...): ... + def load_module(self, name: Any): ... + +def initialize_sys_path() -> None: ... +def get_module_path(module: Any, downloaded: bool = ..., display_warning: bool = ...): ... +def get_module_filetree(module: Any, dir: str = ...): ... +def get_resource_path(module: Any, *args: Any): ... +get_module_resource = get_resource_path + +def get_resource_from_path(path: Any): ... +def get_module_icon(module: Any): ... +def module_manifest(path: Any): ... +def get_module_root(path: Any): ... +def load_information_from_description_file(module: Any, mod_path: Optional[Any] = ...): ... +def load_openerp_module(module_name: Any) -> None: ... +def get_modules(): ... +def get_modules_with_version(): ... +def adapt_version(version: Any): ... +def get_test_modules(module: Any): ... + +class TestStream: + logger: Any = ... + r: Any = ... + def __init__(self, logger_name: str = ...) -> None: ... + def flush(self) -> None: ... + def write(self, s: Any) -> None: ... + +current_test: Any + +def run_unit_tests(module_name: Any, dbname: Any, position: str = ...): ... +def unwrap_suite(test: Any) -> None: ... diff --git a/odoo-stubs/netsvc.pyi b/odoo-stubs/netsvc.pyi new file mode 100644 index 0000000..15b76f5 --- /dev/null +++ b/odoo-stubs/netsvc.pyi @@ -0,0 +1,46 @@ +# Stubs for odoo.netsvc (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +import logging.handlers +from typing import Any, Optional + +def log(logger: Any, level: Any, prefix: Any, msg: Any, depth: Optional[Any] = ...) -> None: ... + +path_prefix: Any + +class PostgreSQLHandler(logging.Handler): + def emit(self, record: Any) -> None: ... + +BLACK: Any +RED: Any +GREEN: Any +YELLOW: Any +BLUE: Any +MAGENTA: Any +CYAN: Any +WHITE: Any +DEFAULT: Any +RESET_SEQ: str +COLOR_SEQ: str +BOLD_SEQ: str +COLOR_PATTERN: Any +LEVEL_COLOR_MAPPING: Any + +class PerfFilter(logging.Filter): + def format_perf(self, query_count: Any, query_time: Any, remaining_time: Any): ... + def filter(self, record: Any): ... + +class ColoredPerfFilter(PerfFilter): + def format_perf(self, query_count: Any, query_time: Any, remaining_time: Any): ... + +class DBFormatter(logging.Formatter): + def format(self, record: Any): ... + +class ColoredFormatter(DBFormatter): + def format(self, record: Any): ... + +def init_logger(): ... + +DEFAULT_LOG_CONFIGURATION: Any +PSEUDOCONFIG_MAPPER: Any diff --git a/odoo-stubs/osv/__init__.pyi b/odoo-stubs/osv/__init__.pyi new file mode 100644 index 0000000..7e9a630 --- /dev/null +++ b/odoo-stubs/osv/__init__.pyi @@ -0,0 +1,4 @@ +# Stubs for odoo.osv (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + diff --git a/odoo-stubs/osv/expression.pyi b/odoo-stubs/osv/expression.pyi new file mode 100644 index 0000000..1c09c86 --- /dev/null +++ b/odoo-stubs/osv/expression.pyi @@ -0,0 +1,62 @@ +# Stubs for odoo.osv.expression (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +NOT_OPERATOR: str +OR_OPERATOR: str +AND_OPERATOR: str +DOMAIN_OPERATORS: Any +TERM_OPERATORS: Any +NEGATIVE_TERM_OPERATORS: Any +DOMAIN_OPERATORS_NEGATION: Any +TERM_OPERATORS_NEGATION: Any +TRUE_LEAF: Any +FALSE_LEAF: Any +TRUE_DOMAIN: Any +FALSE_DOMAIN: Any + +def normalize_domain(domain: Any): ... +def is_false(model: Any, domain: Any): ... +def combine(operator: Any, unit: Any, zero: Any, domains: Any): ... +def AND(domains: Any): ... +def OR(domains: Any): ... +def distribute_not(domain: Any): ... +def generate_table_alias(src_table_alias: Any, joined_tables: Any = ...): ... +def get_alias_from_query(from_query: Any): ... +def normalize_leaf(element: Any): ... +def is_operator(element: Any): ... +def is_leaf(element: Any, internal: bool = ...): ... +def select_from_where(cr: Any, select_field: Any, from_table: Any, where_field: Any, where_ids: Any, where_operator: Any): ... +def select_distinct_from_where_not_null(cr: Any, select_field: Any, from_table: Any): ... +def get_unaccent_wrapper(cr: Any): ... + +class ExtendedLeaf: + join_context: Any = ... + leaf: Any = ... + model: Any = ... + def __init__(self, leaf: Any, model: Any, join_context: Optional[Any] = ..., internal: bool = ...) -> None: ... + def generate_alias(self): ... + def add_join_context(self, model: Any, lhs_col: Any, table_col: Any, link: Any) -> None: ... + def get_join_conditions(self): ... + def get_tables(self): ... + def check_leaf(self, internal: bool = ...) -> None: ... + def is_operator(self): ... + def is_true_leaf(self): ... + def is_false_leaf(self): ... + def is_leaf(self, internal: bool = ...): ... + def normalize_leaf(self): ... + +def create_substitution_leaf(leaf: Any, new_elements: Any, new_model: Optional[Any] = ..., internal: bool = ...): ... + +class expression: + joins: Any = ... + root_model: Any = ... + expression: Any = ... + def __init__(self, domain: Any, model: Any) -> None: ... + def get_tables(self): ... + result: Any = ... + stack: Any = ... + def parse(self): ... + def to_sql(self): ... diff --git a/odoo-stubs/osv/orm.pyi b/odoo-stubs/osv/orm.pyi new file mode 100644 index 0000000..e832c30 --- /dev/null +++ b/odoo-stubs/osv/orm.pyi @@ -0,0 +1,27 @@ +# Stubs for odoo.osv.orm (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +from ..models import BaseModel + +browse_record_list = BaseModel + +class BRM(type): + def __instancecheck__(self, inst: Any): ... + +browse_record: Any + +class NBM(type): + def __instancecheck__(self, inst: Any): ... + +browse_null: Any + +def transfer_field_to_modifiers(field: Any, modifiers: Any) -> None: ... +def transfer_node_to_modifiers(node: Any, modifiers: Any, context: Optional[Any] = ..., in_tree_view: bool = ...) -> None: ... +def simplify_modifiers(modifiers: Any) -> None: ... +def transfer_modifiers_to_node(modifiers: Any, node: Any) -> None: ... +def setup_modifiers(node: Any, field: Optional[Any] = ..., context: Optional[Any] = ..., in_tree_view: bool = ...) -> None: ... +def test_modifiers(what: Any, expected: Any) -> None: ... +def modifiers_tests() -> None: ... diff --git a/odoo-stubs/osv/osv.pyi b/odoo-stubs/osv/osv.pyi new file mode 100644 index 0000000..c47c683 --- /dev/null +++ b/odoo-stubs/osv/osv.pyi @@ -0,0 +1,11 @@ +# Stubs for odoo.osv.osv (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from ..exceptions import except_orm +from .orm import AbstractModel, Model, TransientModel + +except_osv = except_orm +osv = Model +osv_memory = TransientModel +osv_abstract = AbstractModel diff --git a/odoo-stubs/osv/query.pyi b/odoo-stubs/osv/query.pyi new file mode 100644 index 0000000..f7e83a8 --- /dev/null +++ b/odoo-stubs/osv/query.pyi @@ -0,0 +1,15 @@ +# Stubs for odoo.osv.query (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +class Query: + tables: Any = ... + where_clause: Any = ... + where_clause_params: Any = ... + joins: Any = ... + extras: Any = ... + def __init__(self, tables: Optional[Any] = ..., where_clause: Optional[Any] = ..., where_clause_params: Optional[Any] = ..., joins: Optional[Any] = ..., extras: Optional[Any] = ...) -> None: ... + def add_join(self, connection: Any, implicit: bool = ..., outer: bool = ..., extra: Optional[Any] = ..., extra_params: Any = ...): ... + def get_sql(self): ... diff --git a/odoo-stubs/release.pyi b/odoo-stubs/release.pyi new file mode 100644 index 0000000..b33fb50 --- /dev/null +++ b/odoo-stubs/release.pyi @@ -0,0 +1,26 @@ +# Stubs for odoo.release (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +RELEASE_LEVELS: Any +ALPHA: Any +BETA: Any +RELEASE_CANDIDATE: Any +FINAL: Any +RELEASE_LEVELS_DISPLAY: Any +version_info: Any +version: Any +series: Any +serie: Any +major_version: Any +product_name: str +description: str +long_desc: str +classifiers: str +url: str +author: str +author_email: str +license: str +nt_service_name: Any diff --git a/odoo-stubs/service/__init__.pyi b/odoo-stubs/service/__init__.pyi new file mode 100644 index 0000000..c704b79 --- /dev/null +++ b/odoo-stubs/service/__init__.pyi @@ -0,0 +1,4 @@ +# Stubs for odoo.service (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + diff --git a/odoo-stubs/service/common.pyi b/odoo-stubs/service/common.pyi new file mode 100644 index 0000000..8094d9d --- /dev/null +++ b/odoo-stubs/service/common.pyi @@ -0,0 +1,14 @@ +# Stubs for odoo.service.common (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +RPC_VERSION_1: Any + +def exp_login(db: Any, login: Any, password: Any): ... +def exp_authenticate(db: Any, login: Any, password: Any, user_agent_env: Any): ... +def exp_version(): ... +def exp_about(extended: bool = ...): ... +def exp_set_loglevel(loglevel: Any, logger: Optional[Any] = ...): ... +def dispatch(method: Any, params: Any): ... diff --git a/odoo-stubs/service/db.pyi b/odoo-stubs/service/db.pyi new file mode 100644 index 0000000..fa2e7c8 --- /dev/null +++ b/odoo-stubs/service/db.pyi @@ -0,0 +1,29 @@ +# Stubs for odoo.service.db (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +class DatabaseExists(Warning): ... + +def check_db_management_enabled(method: Any): ... +def check_super(passwd: Any): ... +def exp_create_database(db_name: Any, demo: Any, lang: Any, user_password: str = ..., login: str = ..., country_code: Optional[Any] = ..., phone: Optional[Any] = ...): ... +def exp_duplicate_database(db_original_name: Any, db_name: Any): ... +def exp_drop(db_name: Any): ... +def exp_dump(db_name: Any, format: Any): ... +def dump_db_manifest(cr: Any): ... +def dump_db(db_name: Any, stream: Any, backup_format: str = ...): ... +def exp_restore(db_name: Any, data: Any, copy: bool = ...): ... +def restore_db(db: Any, dump_file: Any, copy: bool = ...) -> None: ... +def exp_rename(old_name: Any, new_name: Any): ... +def exp_change_admin_password(new_password: Any): ... +def exp_migrate_databases(databases: Any): ... +def exp_db_exist(db_name: Any): ... +def list_dbs(force: bool = ...): ... +def list_db_incompatible(databases: Any): ... +def exp_list(document: bool = ...): ... +def exp_list_lang(): ... +def exp_list_countries(): ... +def exp_server_version(): ... +def dispatch(method: Any, params: Any): ... diff --git a/odoo-stubs/service/model.pyi b/odoo-stubs/service/model.pyi new file mode 100644 index 0000000..1ac52e9 --- /dev/null +++ b/odoo-stubs/service/model.pyi @@ -0,0 +1,14 @@ +# Stubs for odoo.service.model (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +PG_CONCURRENCY_ERRORS_TO_RETRY: Any +MAX_TRIES_ON_CONCURRENCY_FAILURE: int + +def dispatch(method: Any, params: Any): ... +def check(f: Any): ... +def execute_cr(cr: Any, uid: Any, obj: Any, method: Any, *args: Any, **kw: Any): ... +def execute_kw(db: Any, uid: Any, obj: Any, method: Any, args: Any, kw: Optional[Any] = ...): ... +def execute(db: Any, uid: Any, obj: Any, method: Any, *args: Any, **kw: Any): ... diff --git a/odoo-stubs/service/security.pyi b/odoo-stubs/service/security.pyi new file mode 100644 index 0000000..20a7ddb --- /dev/null +++ b/odoo-stubs/service/security.pyi @@ -0,0 +1,10 @@ +# Stubs for odoo.service.security (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +def login(db: Any, login: Any, password: Any): ... +def check(db: Any, uid: Any, passwd: Any): ... +def compute_session_token(session: Any, env: Any): ... +def check_session(session: Any, env: Any): ... diff --git a/odoo-stubs/service/server.pyi b/odoo-stubs/service/server.pyi new file mode 100644 index 0000000..66d8f74 --- /dev/null +++ b/odoo-stubs/service/server.pyi @@ -0,0 +1,169 @@ +# Stubs for odoo.service.server (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +import werkzeug.serving + +INOTIFY_LISTEN_EVENTS: Any +SLEEP_INTERVAL: int + +def memory_info(process: Any): ... +def set_limit_memory_hard() -> None: ... +def empty_pipe(fd: Any) -> None: ... + +class LoggingBaseWSGIServerMixIn: + def handle_error(self, request: Any, client_address: Any) -> None: ... + +class BaseWSGIServerNoBind(LoggingBaseWSGIServerMixIn, werkzeug.serving.BaseWSGIServer): + def __init__(self, app: Any) -> None: ... + def server_activate(self) -> None: ... + +class RequestHandler(werkzeug.serving.WSGIRequestHandler): + timeout: int = ... + def setup(self) -> None: ... + +class ThreadedWSGIServerReloadable(LoggingBaseWSGIServerMixIn, werkzeug.serving.ThreadedWSGIServer): + daemon_threads: bool = ... + def __init__(self, host: Any, port: Any, app: Any) -> None: ... + reload_socket: bool = ... + socket: Any = ... + def server_bind(self) -> None: ... + def server_activate(self) -> None: ... + def process_request(self, request: Any, client_address: Any) -> None: ... + +class FSWatcherBase: + def handle_file(self, path: Any): ... + +class FSWatcherWatchdog(FSWatcherBase): + observer: Any = ... + def __init__(self) -> None: ... + def dispatch(self, event: Any) -> None: ... + def start(self) -> None: ... + def stop(self) -> None: ... + +class FSWatcherInotify(FSWatcherBase): + started: bool = ... + watcher: Any = ... + def __init__(self) -> None: ... + def run(self) -> None: ... + thread: Any = ... + def start(self) -> None: ... + def stop(self) -> None: ... + +class CommonServer: + app: Any = ... + interface: Any = ... + port: Any = ... + pid: Any = ... + def __init__(self, app: Any) -> None: ... + def close_socket(self, sock: Any) -> None: ... + +class ThreadedServer(CommonServer): + main_thread_id: Any = ... + quit_signals_received: int = ... + httpd: Any = ... + limits_reached_threads: Any = ... + limit_reached_time: Any = ... + def __init__(self, app: Any) -> None: ... + def signal_handler(self, sig: Any, frame: Any) -> None: ... + def process_limit(self) -> None: ... + def cron_thread(self, number: Any) -> None: ... + def cron_spawn(self) -> None: ... + def http_thread(self): ... + def http_spawn(self) -> None: ... + def start(self, stop: bool = ...): ... + def stop(self) -> None: ... + def run(self, preload: Optional[Any] = ..., stop: bool = ...): ... + def reload(self) -> None: ... + +class GeventServer(CommonServer): + port: Any = ... + httpd: Any = ... + def __init__(self, app: Any) -> None: ... + def process_limits(self) -> None: ... + ppid: Any = ... + def watchdog(self, beat: int = ...) -> None: ... + def start(self) -> None: ... + def stop(self) -> None: ... + def run(self, preload: Any, stop: Any) -> None: ... + +class PreforkServer(CommonServer): + address: Any = ... + population: Any = ... + timeout: Any = ... + limit_request: Any = ... + cron_timeout: Any = ... + beat: int = ... + app: Any = ... + pid: Any = ... + socket: Any = ... + workers_http: Any = ... + workers_cron: Any = ... + workers: Any = ... + generation: int = ... + queue: Any = ... + long_polling_pid: Any = ... + def __init__(self, app: Any) -> None: ... + def pipe_new(self): ... + def pipe_ping(self, pipe: Any) -> None: ... + def signal_handler(self, sig: Any, frame: Any) -> None: ... + def worker_spawn(self, klass: Any, workers_registry: Any): ... + def long_polling_spawn(self) -> None: ... + def worker_pop(self, pid: Any) -> None: ... + def worker_kill(self, pid: Any, sig: Any) -> None: ... + def process_signals(self) -> None: ... + def process_zombie(self) -> None: ... + def process_timeout(self) -> None: ... + def process_spawn(self) -> None: ... + def sleep(self) -> None: ... + pipe: Any = ... + def start(self) -> None: ... + def stop(self, graceful: bool = ...) -> None: ... + def run(self, preload: Any, stop: Any): ... + +class Worker: + multi: Any = ... + watchdog_time: Any = ... + watchdog_pipe: Any = ... + eintr_pipe: Any = ... + watchdog_timeout: Any = ... + ppid: Any = ... + pid: Any = ... + alive: bool = ... + request_max: Any = ... + request_count: int = ... + def __init__(self, multi: Any) -> None: ... + def setproctitle(self, title: str = ...) -> None: ... + def close(self) -> None: ... + def signal_handler(self, sig: Any, frame: Any) -> None: ... + def sleep(self) -> None: ... + def check_limits(self) -> None: ... + def set_limits(self) -> None: ... + def process_work(self) -> None: ... + def start(self) -> None: ... + def stop(self) -> None: ... + def run(self) -> None: ... + +class WorkerHTTP(Worker): + def process_request(self, client: Any, addr: Any) -> None: ... + def process_work(self) -> None: ... + server: Any = ... + def start(self) -> None: ... + +class WorkerCron(Worker): + db_index: int = ... + watchdog_timeout: Any = ... + def __init__(self, multi: Any) -> None: ... + def sleep(self) -> None: ... + def process_work(self) -> None: ... + def start(self) -> None: ... + +server: Any + +def load_server_wide_modules() -> None: ... +def load_test_file_py(registry: Any, test_file: Any) -> None: ... +def preload_registries(dbnames: Any): ... +def start(preload: Optional[Any] = ..., stop: bool = ...): ... +def restart() -> None: ... diff --git a/odoo-stubs/service/wsgi_server.pyi b/odoo-stubs/service/wsgi_server.pyi new file mode 100644 index 0000000..e3b6e66 --- /dev/null +++ b/odoo-stubs/service/wsgi_server.pyi @@ -0,0 +1,16 @@ +# Stubs for odoo.service.wsgi_server (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +RPC_FAULT_CODE_CLIENT_ERROR: int +RPC_FAULT_CODE_APPLICATION_ERROR: int +RPC_FAULT_CODE_WARNING: int +RPC_FAULT_CODE_ACCESS_DENIED: int +RPC_FAULT_CODE_ACCESS_ERROR: int + +def xmlrpc_handle_exception_int(e: Any): ... +def xmlrpc_handle_exception_string(e: Any): ... +def application_unproxied(environ: Any, start_response: Any): ... +def application(environ: Any, start_response: Any): ... diff --git a/odoo-stubs/sql_db.pyi b/odoo-stubs/sql_db.pyi new file mode 100644 index 0000000..d6fbdcd --- /dev/null +++ b/odoo-stubs/sql_db.pyi @@ -0,0 +1,85 @@ +# Stubs for odoo.sql_db (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +import psycopg2.extensions +from .tools.func import frame_codeinfo +from typing import Any, Optional + +def unbuffer(symb: Any, cr: Any): ... +def undecimalize(symb: Any, cr: Any): ... +def adapt_string(adapted: Any): ... + +re_from: Any +re_into: Any +sql_counter: int + +class Cursor: + IN_MAX: int = ... + def check(f: Any): ... + sql_from_log: Any = ... + sql_into_log: Any = ... + sql_log: Any = ... + sql_log_count: int = ... + dbname: Any = ... + cache: Any = ... + def __init__(self, pool: Any, dbname: Any, dsn: Any, serialized: bool = ...) -> None: ... + def dictfetchone(self): ... + def dictfetchmany(self, size: Any): ... + def dictfetchall(self): ... + def __del__(self) -> None: ... + def execute(self, query: Any, params: Optional[Any] = ..., log_exceptions: Optional[Any] = ...): ... + def split_for_in_conditions(self, ids: Any, size: Optional[Any] = ...): ... + def print_log(self): ... + def close(self): ... + def autocommit(self, on: Any) -> None: ... + def after(self, event: Any, func: Any) -> None: ... + def commit(self): ... + def rollback(self): ... + def __enter__(self): ... + def __exit__(self, exc_type: Any, exc_value: Any, traceback: Any) -> None: ... + def savepoint(self) -> None: ... + def __getattr__(self, name: Any): ... + @property + def closed(self): ... + +class TestCursor: + def __init__(self, cursor: Any, lock: Any) -> None: ... + def close(self) -> None: ... + def autocommit(self, on: Any) -> None: ... + def commit(self) -> None: ... + def rollback(self) -> None: ... + def __enter__(self): ... + def __exit__(self, exc_type: Any, exc_value: Any, traceback: Any) -> None: ... + def __getattr__(self, name: Any): ... + +class LazyCursor: + def __init__(self, dbname: Optional[Any] = ...) -> None: ... + @property + def dbname(self): ... + def __getattr__(self, name: Any): ... + def __enter__(self): ... + def __exit__(self, exc_type: Any, exc_value: Any, traceback: Any) -> None: ... + +class PsycoConnection(psycopg2.extensions.connection): ... + +class ConnectionPool: + def locked(fun: Any): ... + def __init__(self, maxconn: int = ...) -> None: ... + def borrow(self, connection_info: Any): ... + def give_back(self, connection: Any, keep_in_pool: bool = ...) -> None: ... + def close_all(self, dsn: Optional[Any] = ...) -> None: ... + +class Connection: + dbname: Any = ... + dsn: Any = ... + def __init__(self, pool: Any, dbname: Any, dsn: Any) -> None: ... + def cursor(self, serialized: bool = ...): ... + serialized_cursor: Any = ... + def __bool__(self) -> None: ... + __nonzero__: Any = ... + +def connection_info_for(db_or_uri: Any): ... +def db_connect(to: Any, allow_uri: bool = ...): ... +def close_db(db_name: Any) -> None: ... +def close_all() -> None: ... diff --git a/odoo-stubs/tests/__init__.pyi b/odoo-stubs/tests/__init__.pyi new file mode 100644 index 0000000..23ac763 --- /dev/null +++ b/odoo-stubs/tests/__init__.pyi @@ -0,0 +1,5 @@ +# Stubs for odoo.tests (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from .common import * diff --git a/odoo-stubs/tests/common.pyi b/odoo-stubs/tests/common.pyi new file mode 100644 index 0000000..8346df3 --- /dev/null +++ b/odoo-stubs/tests/common.pyi @@ -0,0 +1,157 @@ +# Stubs for odoo.tests.common (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +import collections +import unittest +from typing import Any, Optional + +ADDONS_PATH: Any +HOST: str +PORT: Any +ADMIN_USER_ID: Any + +def get_db_name(): ... + +DB: Any + +def at_install(flag: Any): ... +def post_install(flag: Any): ... +def new_test_user(env: Any, login: str = ..., groups: str = ..., context: Optional[Any] = ..., **kwargs: Any): ... + +class TreeCase(unittest.TestCase): + def __init__(self, methodName: str = ...) -> None: ... + def assertTreesEqual(self, n1: Any, n2: Any, msg: Optional[Any] = ...) -> None: ... + +class MetaCase(type): + def __init__(cls, name: Any, bases: Any, attrs: Any) -> None: ... + +class BaseCase(TreeCase): + longMessage: bool = ... + warm: bool = ... + def cursor(self): ... + @property + def uid(self): ... + env: Any = ... + @uid.setter + def uid(self, user: Any) -> None: ... + def ref(self, xid: Any): ... + def browse_ref(self, xid: Any): ... + def assertRaises(self, exception: Any, func: Optional[Any] = ..., *args: Any, **kwargs: Any): ... + def assertQueryCount(self, default: int = ..., **counters: Any): ... + def assertRecordValues(self, records: Any, expected_values: Any): ... + def shortDescription(self): ... + def assertItemsEqual(self, a: Any, b: Any, msg: Optional[Any] = ...) -> None: ... + +class TransactionCase(BaseCase): + registry: Any = ... + cr: Any = ... + env: Any = ... + def setUp(self): ... + def patch(self, obj: Any, key: Any, val: Any) -> None: ... + def patch_order(self, model: Any, order: Any) -> None: ... + +class SingleTransactionCase(BaseCase): + @classmethod + def setUpClass(cls) -> None: ... + @classmethod + def tearDownClass(cls) -> None: ... + +savepoint_seq: Any + +class SavepointCase(SingleTransactionCase): + def setUp(self) -> None: ... + def tearDown(self) -> None: ... + +class ChromeBrowser: + devtools_port: Any = ... + ws_url: str = ... + ws: Any = ... + request_id: int = ... + user_data_dir: Any = ... + chrome_process: Any = ... + screencast_frames: Any = ... + sigxcpu_handler: Any = ... + def __init__(self, logger: Any) -> None: ... + def signal_handler(self, sig: Any, frame: Any) -> None: ... + def stop(self) -> None: ... + @property + def executable(self): ... + def take_screenshot(self, prefix: str = ...) -> None: ... + def start_screencast(self) -> None: ... + def set_cookie(self, name: Any, value: Any, path: Any, domain: Any): ... + def navigate_to(self, url: Any, wait_stop: bool = ...) -> None: ... + def clear(self) -> None: ... + +class HttpCase(TransactionCase): + registry_test_mode: bool = ... + browser: Any = ... + xmlrpc_url: Any = ... + xmlrpc_common: Any = ... + xmlrpc_db: Any = ... + xmlrpc_object: Any = ... + def __init__(self, methodName: str = ...) -> None: ... + @classmethod + def start_browser(cls, logger: Any) -> None: ... + @classmethod + def tearDownClass(cls) -> None: ... + session: Any = ... + session_id: Any = ... + opener: Any = ... + def setUp(self) -> None: ... + def url_open(self, url: Any, data: Optional[Any] = ..., timeout: int = ...): ... + def authenticate(self, user: Any, password: Any) -> None: ... + def browser_js(self, url_path: Any, code: Any, ready: str = ..., login: Optional[Any] = ..., timeout: int = ..., **kw: Any) -> None: ... + phantom_js: Any = ... + +def users(*logins: Any): ... +def warmup(func: Any, *args: Any, **kwargs: Any) -> None: ... +def can_import(module: Any): ... + +ref_re: Any + +class Form: + def __init__(self, recordp: Any, view: Optional[Any] = ...) -> None: ... + def __getattr__(self, field: Any): ... + def __setattr__(self, field: Any, value: Any) -> None: ... + def __enter__(self): ... + def __exit__(self, etype: Any, _evalue: Any, _etb: Any) -> None: ... + def save(self): ... + +class O2MForm(Form): + def __init__(self, proxy: Any, index: Optional[Any] = ...) -> None: ... + def save(self) -> None: ... + +class UpdateDict(dict): + def __init__(self, *args: Any, **kwargs: Any) -> None: ... + def changed_items(self): ... + def update(self, *args: Any, **kw: Any) -> None: ... + +class X2MProxy: ... + +class O2MProxy(X2MProxy): + def __init__(self, parent: Any, field: Any) -> None: ... + def __len__(self): ... + def new(self): ... + def edit(self, index: Any): ... + def remove(self, index: Any) -> None: ... + +class M2MProxy(X2MProxy, collections.Sequence): + def __init__(self, parent: Any, field: Any) -> None: ... + def __getitem__(self, it: Any): ... + def __len__(self): ... + def __iter__(self): ... + def __contains__(self, record: Any): ... + def add(self, record: Any) -> None: ... + def remove(self, id: Optional[Any] = ..., index: Optional[Any] = ...) -> None: ... + def clear(self) -> None: ... + +def record_to_values(fields: Any, record: Any): ... +def tagged(*tags: Any): ... + +class TagsSelector: + filter_spec_re: Any = ... + exclude: Any = ... + include: Any = ... + def __init__(self, spec: Any) -> None: ... + def check(self, test: Any): ... diff --git a/odoo-stubs/tools/__init__.pyi b/odoo-stubs/tools/__init__.pyi new file mode 100644 index 0000000..86d691a --- /dev/null +++ b/odoo-stubs/tools/__init__.pyi @@ -0,0 +1,17 @@ +# Stubs for odoo.tools (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from .misc import * +from .convert import * +from .translate import * +from .image import * +from .sql import * +from .float_utils import * +from .mail import * +from .func import * +from .debugger import * +from .xml_utils import * +from .date_utils import * +from .config import config +from .graph import graph diff --git a/odoo-stubs/tools/appdirs.pyi b/odoo-stubs/tools/appdirs.pyi new file mode 100644 index 0000000..c4e43e4 --- /dev/null +++ b/odoo-stubs/tools/appdirs.pyi @@ -0,0 +1,34 @@ +# Stubs for odoo.tools.appdirs (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +__version_info__: Any + +def user_data_dir(appname: Optional[Any] = ..., appauthor: Optional[Any] = ..., version: Optional[Any] = ..., roaming: bool = ...): ... +def site_data_dir(appname: Optional[Any] = ..., appauthor: Optional[Any] = ..., version: Optional[Any] = ..., multipath: bool = ...): ... +def user_config_dir(appname: Optional[Any] = ..., appauthor: Optional[Any] = ..., version: Optional[Any] = ..., roaming: bool = ...): ... +def site_config_dir(appname: Optional[Any] = ..., appauthor: Optional[Any] = ..., version: Optional[Any] = ..., multipath: bool = ...): ... +def user_cache_dir(appname: Optional[Any] = ..., appauthor: Optional[Any] = ..., version: Optional[Any] = ..., opinion: bool = ...): ... +def user_log_dir(appname: Optional[Any] = ..., appauthor: Optional[Any] = ..., version: Optional[Any] = ..., opinion: bool = ...): ... + +class AppDirs: + appname: Any = ... + appauthor: Any = ... + version: Any = ... + roaming: Any = ... + multipath: Any = ... + def __init__(self, appname: Any, appauthor: Optional[Any] = ..., version: Optional[Any] = ..., roaming: bool = ..., multipath: bool = ...) -> None: ... + @property + def user_data_dir(self): ... + @property + def site_data_dir(self): ... + @property + def user_config_dir(self): ... + @property + def site_config_dir(self): ... + @property + def user_cache_dir(self): ... + @property + def user_log_dir(self): ... diff --git a/odoo-stubs/tools/assertion_report.pyi b/odoo-stubs/tools/assertion_report.pyi new file mode 100644 index 0000000..3fb733d --- /dev/null +++ b/odoo-stubs/tools/assertion_report.pyi @@ -0,0 +1,13 @@ +# Stubs for odoo.tools.assertion_report (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +class assertion_report: + successes: int = ... + failures: int = ... + def __init__(self) -> None: ... + def record_success(self) -> None: ... + def record_failure(self) -> None: ... + def record_result(self, result: Any) -> None: ... diff --git a/odoo-stubs/tools/cache.pyi b/odoo-stubs/tools/cache.pyi new file mode 100644 index 0000000..bb9910f --- /dev/null +++ b/odoo-stubs/tools/cache.pyi @@ -0,0 +1,52 @@ +# Stubs for odoo.tools.cache (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +unsafe_eval = eval + +class ormcache_counter: + hit: int = ... + miss: int = ... + err: int = ... + def __init__(self) -> None: ... + @property + def ratio(self): ... + +STAT: Any + +class ormcache: + args: Any = ... + skiparg: Any = ... + def __init__(self, *args: Any, **kwargs: Any) -> None: ... + method: Any = ... + def __call__(self, method: Any): ... + key: Any = ... + def determine_key(self): ... + def lru(self, model: Any): ... + def lookup(self, method: Any, *args: Any, **kwargs: Any): ... + def clear(self, model: Any, *args: Any) -> None: ... + +class ormcache_context(ormcache): + keys: Any = ... + def __init__(self, *args: Any, **kwargs: Any) -> None: ... + key: Any = ... + def determine_key(self) -> None: ... + +class ormcache_multi(ormcache): + multi: Any = ... + def __init__(self, *args: Any, **kwargs: Any) -> None: ... + key_multi: Any = ... + multi_pos: Any = ... + def determine_key(self) -> None: ... + def lookup(self, method: Any, *args: Any, **kwargs: Any): ... + +class dummy_cache: + def __init__(self, *l: Any, **kw: Any) -> None: ... + def __call__(self, fn: Any): ... + def clear(self, *l: Any, **kw: Any) -> None: ... + +def log_ormcache_stats(sig: Optional[Any] = ..., frame: Optional[Any] = ...): ... +def get_cache_key_counter(bound_method: Any, *args: Any, **kwargs: Any): ... +cache = ormcache diff --git a/odoo-stubs/tools/config.pyi b/odoo-stubs/tools/config.pyi new file mode 100644 index 0000000..62c5601 --- /dev/null +++ b/odoo-stubs/tools/config.pyi @@ -0,0 +1,40 @@ +# Stubs for odoo.tools.config (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +import optparse +from typing import Any, Optional + +crypt_context: Any + +class MyOption(optparse.Option): + my_default: Any = ... + def __init__(self, *opts: Any, **attrs: Any) -> None: ... + +DEFAULT_LOG_HANDLER: str + +class configmanager: + options: Any = ... + blacklist_for_save: Any = ... + casts: Any = ... + misc: Any = ... + config_file: Any = ... + parser: Any = ... + def __init__(self, fname: Optional[Any] = ...) -> None: ... + def parse_config(self, args: Optional[Any] = ...) -> None: ... + def load(self) -> None: ... + def save(self) -> None: ... + def get(self, key: Any, default: Optional[Any] = ...): ... + def pop(self, key: Any, default: Optional[Any] = ...): ... + def get_misc(self, sect: Any, key: Any, default: Optional[Any] = ...): ... + def __setitem__(self, key: Any, value: Any) -> None: ... + def __getitem__(self, key: Any): ... + @property + def addons_data_dir(self): ... + @property + def session_dir(self): ... + def filestore(self, dbname: Any): ... + def set_admin_password(self, new_password: Any) -> None: ... + def verify_admin_password(self, password: Any): ... + +config: Any diff --git a/odoo-stubs/tools/convert.pyi b/odoo-stubs/tools/convert.pyi new file mode 100644 index 0000000..b5ca451 --- /dev/null +++ b/odoo-stubs/tools/convert.pyi @@ -0,0 +1,48 @@ +# Stubs for odoo.tools.convert (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from .translate import _ +from typing import Any, Optional + +safe_eval: Any + +class ParseError(Exception): + msg: Any = ... + text: Any = ... + filename: Any = ... + lineno: Any = ... + def __init__(self, msg: Any, text: Any, filename: Any, lineno: Any) -> None: ... + +class RecordDictWrapper(dict): + record: Any = ... + def __init__(self, record: Any) -> None: ... + def __getitem__(self, key: Any): ... + +def str2bool(value: Any): ... + +class xml_import: + @staticmethod + def nodeattr2bool(node: Any, attr: Any, default: bool = ...): ... + def isnoupdate(self, data_node: Optional[Any] = ...): ... + def get_context(self, data_node: Any, node: Any, eval_dict: Any): ... + def get_uid(self, data_node: Any, node: Any): ... + def make_xml_id(self, xml_id: Any): ... + def id_get(self, id_str: Any, raise_if_not_found: bool = ...): ... + def model_id_get(self, id_str: Any, raise_if_not_found: bool = ...): ... + def parse(self, de: Any, mode: Optional[Any] = ...): ... + mode: Any = ... + module: Any = ... + env: Any = ... + cr: Any = ... + uid: Any = ... + idref: Any = ... + assertion_report: Any = ... + noupdate: Any = ... + xml_filename: Any = ... + def __init__(self, cr: Any, module: Any, idref: Any, mode: Any, report: Optional[Any] = ..., noupdate: bool = ..., xml_filename: Optional[Any] = ...) -> None: ... + +def convert_file(cr: Any, module: Any, filename: Any, idref: Any, mode: str = ..., noupdate: bool = ..., kind: Optional[Any] = ..., report: Optional[Any] = ..., pathname: Optional[Any] = ...) -> None: ... +def convert_sql_import(cr: Any, fp: Any) -> None: ... +def convert_csv_import(cr: Any, module: Any, fname: Any, csvcontent: Any, idref: Optional[Any] = ..., mode: str = ..., noupdate: bool = ...) -> None: ... +def convert_xml_import(cr: Any, module: Any, xmlfile: Any, idref: Optional[Any] = ..., mode: str = ..., noupdate: bool = ..., report: Optional[Any] = ...): ... diff --git a/odoo-stubs/tools/date_utils.pyi b/odoo-stubs/tools/date_utils.pyi new file mode 100644 index 0000000..ecf9dc0 --- /dev/null +++ b/odoo-stubs/tools/date_utils.pyi @@ -0,0 +1,16 @@ +# Stubs for odoo.tools.date_utils (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +def get_month(date: Any): ... +def get_quarter_number(date: Any): ... +def get_quarter(date: Any): ... +def get_fiscal_year(date: Any, day: int = ..., month: int = ...): ... +def start_of(value: Any, granularity: Any): ... +def end_of(value: Any, granularity: Any): ... +def add(value: Any, *args: Any, **kwargs: Any): ... +def subtract(value: Any, *args: Any, **kwargs: Any): ... +def json_default(obj: Any): ... +def date_range(start: Any, end: Any, step: Any = ...): ... diff --git a/odoo-stubs/tools/debugger.pyi b/odoo-stubs/tools/debugger.pyi new file mode 100644 index 0000000..39bad32 --- /dev/null +++ b/odoo-stubs/tools/debugger.pyi @@ -0,0 +1,9 @@ +# Stubs for odoo.tools.debugger (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +SUPPORTED_DEBUGGER: Any + +def post_mortem(config: Any, info: Any) -> None: ... diff --git a/odoo-stubs/tools/float_utils.pyi b/odoo-stubs/tools/float_utils.pyi new file mode 100644 index 0000000..215195c --- /dev/null +++ b/odoo-stubs/tools/float_utils.pyi @@ -0,0 +1,15 @@ +# Stubs for odoo.tools.float_utils (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +def round(f: Any): ... +round = round + +def float_round(value: Any, precision_digits: Optional[Any] = ..., precision_rounding: Optional[Any] = ..., rounding_method: str = ...): ... +def float_is_zero(value: Any, precision_digits: Optional[Any] = ..., precision_rounding: Optional[Any] = ...): ... +def float_compare(value1: Any, value2: Any, precision_digits: Optional[Any] = ..., precision_rounding: Optional[Any] = ...): ... +def float_repr(value: Any, precision_digits: Any): ... +def float_split_str(value: Any, precision_digits: Any): ... +def float_split(value: Any, precision_digits: Any): ... diff --git a/odoo-stubs/tools/func.pyi b/odoo-stubs/tools/func.pyi new file mode 100644 index 0000000..03f61b9 --- /dev/null +++ b/odoo-stubs/tools/func.pyi @@ -0,0 +1,110 @@ +# Stubs for odoo.tools.func (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +class lazy_property: + fget: Any = ... + def __init__(self, fget: Any) -> None: ... + def __get__(self, obj: Any, cls: Any): ... + @property + def __doc__(self): ... + @staticmethod + def reset_all(obj: Any) -> None: ... + +class lazy_classproperty(lazy_property): + def __get__(self, obj: Any, cls: Any): ... + +def conditional(condition: Any, decorator: Any): ... +def synchronized(lock_attr: str = ...): ... + +class _ClassProperty(property): + def __get__(self, cls: Any, owner: Any): ... + +def classproperty(func: Any): ... + +class lazy: + def __init__(self, func: Any, *args: Any, **kwargs: Any) -> None: ... + def __getattr__(self, name: Any): ... + def __setattr__(self, name: Any, value: Any): ... + def __delattr__(self, name: Any): ... + def __bytes__(self): ... + def __format__(self, format_spec: Any): ... + def __lt__(self, other: Any): ... + def __le__(self, other: Any): ... + def __eq__(self, other: Any): ... + def __ne__(self, other: Any): ... + def __gt__(self, other: Any): ... + def __ge__(self, other: Any): ... + def __hash__(self): ... + def __bool__(self): ... + def __call__(self, *args: Any, **kwargs: Any): ... + def __len__(self): ... + def __getitem__(self, key: Any): ... + def __missing__(self, key: Any): ... + def __setitem__(self, key: Any, value: Any) -> None: ... + def __delitem__(self, key: Any) -> None: ... + def __iter__(self): ... + def __reversed__(self): ... + def __contains__(self, key: Any): ... + def __add__(self, other: Any): ... + def __sub__(self, other: Any): ... + def __mul__(self, other: Any): ... + def __matmul__(self, other: Any): ... + def __truediv__(self, other: Any): ... + def __floordiv__(self, other: Any): ... + def __mod__(self, other: Any): ... + def __divmod__(self, other: Any): ... + def __pow__(self, other: Any): ... + def __lshift__(self, other: Any): ... + def __rshift__(self, other: Any): ... + def __and__(self, other: Any): ... + def __xor__(self, other: Any): ... + def __or__(self, other: Any): ... + def __radd__(self, other: Any): ... + def __rsub__(self, other: Any): ... + def __rmul__(self, other: Any): ... + def __rmatmul__(self, other: Any): ... + def __rtruediv__(self, other: Any): ... + def __rfloordiv__(self, other: Any): ... + def __rmod__(self, other: Any): ... + def __rdivmod__(self, other: Any): ... + def __rpow__(self, other: Any): ... + def __rlshift__(self, other: Any): ... + def __rrshift__(self, other: Any): ... + def __rand__(self, other: Any): ... + def __rxor__(self, other: Any): ... + def __ror__(self, other: Any): ... + def __iadd__(self, other: Any): ... + def __isub__(self, other: Any): ... + def __imul__(self, other: Any): ... + def __imatmul__(self, other: Any): ... + def __itruediv__(self, other: Any): ... + def __ifloordiv__(self, other: Any): ... + def __imod__(self, other: Any): ... + def __ipow__(self, other: Any): ... + def __ilshift__(self, other: Any): ... + def __irshift__(self, other: Any): ... + def __iand__(self, other: Any): ... + def __ixor__(self, other: Any): ... + def __ior__(self, other: Any): ... + def __neg__(self): ... + def __pos__(self): ... + def __abs__(self): ... + def __invert__(self): ... + def __complex__(self): ... + def __int__(self): ... + def __float__(self): ... + def __index__(self): ... + def __round__(self): ... + def __trunc__(self): ... + def __floor__(self): ... + def __ceil__(self): ... + def __enter__(self): ... + def __exit__(self, exc_type: Any, exc_value: Any, traceback: Any): ... + def __await__(self): ... + def __aiter__(self): ... + def __anext__(self): ... + def __aenter__(self): ... + def __aexit__(self, exc_type: Any, exc_value: Any, traceback: Any): ... diff --git a/odoo-stubs/tools/graph.pyi b/odoo-stubs/tools/graph.pyi new file mode 100644 index 0000000..4ee82cd --- /dev/null +++ b/odoo-stubs/tools/graph.pyi @@ -0,0 +1,57 @@ +# Stubs for odoo.tools.graph (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +class graph: + nodes: Any = ... + edges: Any = ... + no_ancester: Any = ... + transitions: Any = ... + result: Any = ... + def __init__(self, nodes: Any, transitions: Any, no_ancester: Optional[Any] = ...) -> None: ... + edge_wt: Any = ... + def init_rank(self) -> None: ... + reachable_nodes: Any = ... + tree_edges: Any = ... + def tight_tree(self): ... + def reachable_node(self, node: Any) -> None: ... + cut_edges: Any = ... + head_nodes: Any = ... + def init_cutvalues(self) -> None: ... + def head_component(self, node: Any, rest_edges: Any) -> None: ... + def process_ranking(self, node: Any, level: int = ...) -> None: ... + def make_acyclic(self, parent: Any, node: Any, level: Any, tree: Any): ... + def rev_edges(self, tree: Any): ... + def exchange(self, e: Any, f: Any) -> None: ... + def enter_edge(self, edge: Any): ... + def leave_edge(self): ... + def finalize_rank(self, node: Any, level: Any) -> None: ... + def normalize(self) -> None: ... + def make_chain(self) -> None: ... + def init_order(self, node: Any, level: Any) -> None: ... + def order_heuristic(self) -> None: ... + def wmedian(self) -> None: ... + def median_value(self, node: Any, adj_rank: Any): ... + def adj_position(self, node: Any, adj_rank: Any): ... + levels: Any = ... + def preprocess_order(self) -> None: ... + def graph_order(self) -> None: ... + def tree_order(self, node: Any, last: int = ...): ... + max_order: Any = ... + def process_order(self) -> None: ... + partial_order: Any = ... + def find_starts(self) -> None: ... + critical_edges: Any = ... + links: Any = ... + Is_Cyclic: bool = ... + def rank(self) -> None: ... + order: Any = ... + def order_in_rank(self): ... + start_nodes: Any = ... + tree_list: Any = ... + start: Any = ... + def process(self, starting_node: Any) -> None: ... + def scale(self, maxx: Any, maxy: Any, nwidth: int = ..., nheight: int = ..., margin: int = ...) -> None: ... + def result_get(self): ... diff --git a/odoo-stubs/tools/image.pyi b/odoo-stubs/tools/image.pyi new file mode 100644 index 0000000..fd8c220 --- /dev/null +++ b/odoo-stubs/tools/image.pyi @@ -0,0 +1,19 @@ +# Stubs for odoo.tools.image (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +FILETYPE_BASE64_MAGICWORD: Any + +def image_resize_image(base64_source: Any, size: Any = ..., encoding: str = ..., filetype: Optional[Any] = ..., avoid_if_small: bool = ..., upper_limit: bool = ...): ... +def image_resize_and_sharpen(image: Any, size: Any, preserve_aspect_ratio: bool = ..., factor: float = ..., upper_limit: bool = ...): ... +def image_save_for_web(image: Any, fp: Optional[Any] = ..., format: Optional[Any] = ...): ... +def image_resize_image_big(base64_source: Any, size: Any = ..., encoding: str = ..., filetype: Optional[Any] = ..., avoid_if_small: bool = ...): ... +def image_resize_image_medium(base64_source: Any, size: Any = ..., encoding: str = ..., filetype: Optional[Any] = ..., avoid_if_small: bool = ...): ... +def image_resize_image_small(base64_source: Any, size: Any = ..., encoding: str = ..., filetype: Optional[Any] = ..., avoid_if_small: bool = ...): ... +def crop_image(data: Any, type: str = ..., ratio: bool = ..., size: Optional[Any] = ..., image_format: Optional[Any] = ...): ... +def image_colorize(original: Any, randomize: bool = ..., color: Any = ...): ... +def image_get_resized_images(base64_source: Any, return_big: bool = ..., return_medium: bool = ..., return_small: bool = ..., big_name: str = ..., medium_name: str = ..., small_name: str = ..., avoid_resize_big: bool = ..., avoid_resize_medium: bool = ..., avoid_resize_small: bool = ..., sizes: Any = ...): ... +def image_resize_images(vals: Any, big_name: str = ..., medium_name: str = ..., small_name: str = ..., sizes: Any = ...) -> None: ... +def image_data_uri(base64_source: Any): ... diff --git a/odoo-stubs/tools/lru.pyi b/odoo-stubs/tools/lru.pyi new file mode 100644 index 0000000..a79d15c --- /dev/null +++ b/odoo-stubs/tools/lru.pyi @@ -0,0 +1,32 @@ +# Stubs for odoo.tools.lru (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +class LRUNode: + prev: Any = ... + me: Any = ... + next: Any = ... + def __init__(self, prev: Any, me: Any) -> None: ... + +class LRU: + count: Any = ... + d: Any = ... + first: Any = ... + last: Any = ... + def __init__(self, count: Any, pairs: Any = ...) -> None: ... + def __contains__(self, obj: Any): ... + def get(self, obj: Any, val: Optional[Any] = ...): ... + def __getitem__(self, obj: Any): ... + def __setitem__(self, obj: Any, val: Any) -> None: ... + def __delitem__(self, obj: Any) -> None: ... + def __iter__(self) -> None: ... + def __len__(self): ... + def iteritems(self) -> None: ... + items: Any = ... + def iterkeys(self): ... + def itervalues(self): ... + def keys(self): ... + def pop(self, key: Any): ... + def clear(self) -> None: ... diff --git a/odoo-stubs/tools/mail.pyi b/odoo-stubs/tools/mail.pyi new file mode 100644 index 0000000..c1f1578 --- /dev/null +++ b/odoo-stubs/tools/mail.pyi @@ -0,0 +1,42 @@ +# Stubs for odoo.tools.mail (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +from lxml.html import clean + +tags_to_kill: Any +tags_to_remove: Any +allowed_tags: Any +safe_attrs: Any + +class _Cleaner(clean.Cleaner): + strip_classes: bool = ... + sanitize_style: bool = ... + def __call__(self, doc: Any) -> None: ... + def tag_quote(self, el: Any): ... + def strip_class(self, el: Any) -> None: ... + def parse_style(self, el: Any) -> None: ... + def allow_element(self, el: Any): ... + +def html_sanitize(src: Any, silent: bool = ..., sanitize_tags: bool = ..., sanitize_attributes: bool = ..., sanitize_style: bool = ..., strip_style: bool = ..., strip_classes: bool = ...): ... +def html_keep_url(text: Any): ... +def html2plaintext(html: Any, body_id: Optional[Any] = ..., encoding: str = ...): ... +def plaintext2html(text: Any, container_tag: bool = ...): ... +def append_content_to_html(html: Any, content: Any, plaintext: bool = ..., preserve: bool = ..., container_tag: bool = ...): ... + +email_re: Any +single_email_re: Any +reference_re: Any +discussion_re: Any +mail_header_msgid_re: Any + +def generate_tracking_message_id(res_id: Any): ... +def email_send(email_from: Any, email_to: Any, subject: Any, body: Any, email_cc: Optional[Any] = ..., email_bcc: Optional[Any] = ..., reply_to: bool = ..., attachments: Optional[Any] = ..., message_id: Optional[Any] = ..., references: Optional[Any] = ..., openobject_id: bool = ..., debug: bool = ..., subtype: str = ..., headers: Optional[Any] = ..., smtp_server: Optional[Any] = ..., smtp_port: Optional[Any] = ..., ssl: bool = ..., smtp_user: Optional[Any] = ..., smtp_password: Optional[Any] = ..., cr: Optional[Any] = ..., uid: Optional[Any] = ...): ... +def email_split(text: Any): ... +def email_split_and_format(text: Any): ... +def email_escape_char(email_address: Any): ... +def email_references(references: Any): ... +def decode_smtp_header(smtp_header: Any): ... +def decode_message_header(message: Any, header: Any, separator: str = ...): ... diff --git a/odoo-stubs/tools/mimetypes.pyi b/odoo-stubs/tools/mimetypes.pyi new file mode 100644 index 0000000..20e0202 --- /dev/null +++ b/odoo-stubs/tools/mimetypes.pyi @@ -0,0 +1,12 @@ +# Stubs for odoo.tools.mimetypes (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from collections import namedtuple +from typing import Any + +_Entry = namedtuple('_Entry', ['mimetype', 'signatures', 'discriminants']) + +def guess_mimetype(bin_data: Any, default: str = ...): ... + +guess_mimetype: Any diff --git a/odoo-stubs/tools/misc.pyi b/odoo-stubs/tools/misc.pyi new file mode 100644 index 0000000..0dadc9f --- /dev/null +++ b/odoo-stubs/tools/misc.pyi @@ -0,0 +1,165 @@ +# Stubs for odoo.tools.misc (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +import pickle as pickle_ +from collections import Mapping, MutableMapping, MutableSet, defaultdict +from typing import Any, Optional + +import xlsxwriter +import xlwt + +SKIPPED_ELEMENT_TYPES: Any + +def find_in_path(name: Any): ... +def exec_command_pipe(name: Any, *args: Any): ... +def find_pg_tool(name: Any): ... +def exec_pg_environ(): ... +def exec_pg_command(name: Any, *args: Any) -> None: ... +def exec_pg_command_pipe(name: Any, *args: Any): ... +def file_open(name: Any, mode: str = ..., subdir: str = ..., pathinfo: bool = ...): ... +def flatten(list: Any): ... +def reverse_enumerate(l: Any): ... +def partition(pred: Any, elems: Any): ... +def topological_sort(elems: Any): ... + +class PatchedWorkbook(xlwt.Workbook): + def add_sheet(self, name: Any, cell_overwrite_ok: bool = ...): ... + +class PatchedXlsxWorkbook(xlsxwriter.Workbook): + def add_worksheet(self, name: Optional[Any] = ..., **kw: Any): ... + +def to_xml(s: Any): ... +def get_iso_codes(lang: Any): ... +def scan_languages(): ... +def get_user_companies(cr: Any, user: Any): ... +def mod10r(number: Any): ... +def str2bool(s: Any, default: Optional[Any] = ...): ... +def human_size(sz: Any): ... +def logged(f: Any): ... + +class profile: + fname: Any = ... + def __init__(self, fname: Optional[Any] = ...) -> None: ... + def __call__(self, f: Any): ... + +def detect_ip_addr(): ... + +DEFAULT_SERVER_DATE_FORMAT: str +DEFAULT_SERVER_TIME_FORMAT: str +DEFAULT_SERVER_DATETIME_FORMAT: Any +DATE_LENGTH: Any +DATETIME_FORMATS_MAP: Any +POSIX_TO_LDML: Any + +def posix_to_ldml(fmt: Any, locale: Any): ... +def split_every(n: Any, iterable: Any, piece_maker: Any = ...) -> None: ... +def get_and_group_by_field(cr: Any, uid: Any, obj: Any, ids: Any, field: Any, context: Optional[Any] = ...): ... +def get_and_group_by_company(cr: Any, uid: Any, obj: Any, ids: Any, context: Optional[Any] = ...): ... +def resolve_attr(obj: Any, attr: Any): ... +def attrgetter(*items: Any): ... +def remove_accents(input_str: Any): ... + +class unquote(str): ... + +class UnquoteEvalContext(defaultdict): + def __init__(self, *args: Any, **kwargs: Any) -> None: ... + def __missing__(self, key: Any): ... + +class mute_logger: + loggers: Any = ... + def __init__(self, *loggers: Any) -> None: ... + def filter(self, record: Any): ... + def __enter__(self) -> None: ... + def __exit__(self, exc_type: Optional[Any] = ..., exc_val: Optional[Any] = ..., exc_tb: Optional[Any] = ...) -> None: ... + def __call__(self, func: Any): ... + +class CountingStream: + stream: Any = ... + index: Any = ... + stopped: bool = ... + def __init__(self, stream: Any, start: int = ...) -> None: ... + def __iter__(self): ... + def next(self): ... + __next__: Any = ... + +def stripped_sys_argv(*strip_args: Any): ... + +class ConstantMapping(Mapping): + def __init__(self, val: Any) -> None: ... + def __len__(self): ... + def __iter__(self): ... + def __getitem__(self, item: Any): ... + +def dumpstacks(sig: Optional[Any] = ..., frame: Optional[Any] = ..., thread_idents: Optional[Any] = ...) -> None: ... +def freehash(arg: Any): ... +def clean_context(context: Any): ... + +class frozendict(dict): + def __delitem__(self, key: Any) -> None: ... + def __setitem__(self, key: Any, val: Any) -> None: ... + def clear(self) -> None: ... + def pop(self, key: Any, default: Optional[Any] = ...) -> None: ... + def popitem(self) -> None: ... + def setdefault(self, key: Any, default: Optional[Any] = ...) -> None: ... + def update(self, *args: Any, **kwargs: Any) -> None: ... + def __hash__(self): ... + +class Collector(Mapping): + def __init__(self) -> None: ... + def add(self, key: Any, val: Any) -> None: ... + def __getitem__(self, key: Any): ... + def __iter__(self): ... + def __len__(self): ... + +class StackMap(MutableMapping): + def __init__(self, m: Optional[Any] = ...) -> None: ... + def __getitem__(self, key: Any): ... + def __setitem__(self, key: Any, val: Any) -> None: ... + def __delitem__(self, key: Any) -> None: ... + def __iter__(self): ... + def __len__(self): ... + def pushmap(self, m: Optional[Any] = ...) -> None: ... + def popmap(self): ... + +class OrderedSet(MutableSet): + def __init__(self, elems: Any = ...) -> None: ... + def __contains__(self, elem: Any): ... + def __iter__(self): ... + def __len__(self): ... + def add(self, elem: Any) -> None: ... + def discard(self, elem: Any) -> None: ... + +class LastOrderedSet(OrderedSet): + def add(self, elem: Any) -> None: ... + +def groupby(iterable: Any, key: Optional[Any] = ...): ... +def unique(it: Any) -> None: ... + +class Reverse: + val: Any = ... + def __init__(self, val: Any) -> None: ... + def __eq__(self, other: Any): ... + def __ne__(self, other: Any): ... + def __ge__(self, other: Any): ... + def __gt__(self, other: Any): ... + def __le__(self, other: Any): ... + def __lt__(self, other: Any): ... + +def ignore(*exc: Any) -> None: ... +def html_escape(text: Any): ... +def formatLang(env: Any, value: Any, digits: Optional[Any] = ..., grouping: bool = ..., monetary: bool = ..., dp: bool = ..., currency_obj: bool = ...): ... +def format_date(env: Any, value: Any, lang_code: bool = ..., date_format: bool = ...): ... + +consteq: Any + +class Unpickler(pickle_.Unpickler): + find_global: Any = ... + find_class: Any = ... + +pickle: Any + +def wrap_module(module: Any, attr_list: Any): ... + +class DotDict(dict): + def __getattr__(self, attrib: Any): ... diff --git a/odoo-stubs/tools/osutil.pyi b/odoo-stubs/tools/osutil.pyi new file mode 100644 index 0000000..bbb0a7d --- /dev/null +++ b/odoo-stubs/tools/osutil.pyi @@ -0,0 +1,16 @@ +# Stubs for odoo.tools.osutil (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +import ctypes +import os +from typing import Any, Optional + +def listdir(dir: Any, recursive: bool = ...): ... +def walksymlinks(top: Any, topdown: bool = ..., onerror: Optional[Any] = ...) -> None: ... +def tempdir() -> None: ... +def zip_dir(path: Any, stream: Any, include_dir: bool = ..., fnct_sort: Optional[Any] = ...) -> None: ... +getppid = os.getppid +is_running_as_nt_service: Any + +class _PROCESSENTRY32(ctypes.Structure): ... diff --git a/odoo-stubs/tools/parse_version.pyi b/odoo-stubs/tools/parse_version.pyi new file mode 100644 index 0000000..0c4e7bc --- /dev/null +++ b/odoo-stubs/tools/parse_version.pyi @@ -0,0 +1,10 @@ +# Stubs for odoo.tools.parse_version (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +component_re: Any +replace: Any + +def parse_version(s: Any): ... diff --git a/odoo-stubs/tools/pdf.pyi b/odoo-stubs/tools/pdf.pyi new file mode 100644 index 0000000..12ae42b --- /dev/null +++ b/odoo-stubs/tools/pdf.pyi @@ -0,0 +1,7 @@ +# Stubs for odoo.tools.pdf (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +def merge_pdf(pdf_data: Any): ... diff --git a/odoo-stubs/tools/profiler.pyi b/odoo-stubs/tools/profiler.pyi new file mode 100644 index 0000000..918582a --- /dev/null +++ b/odoo-stubs/tools/profiler.pyi @@ -0,0 +1,17 @@ +# Stubs for odoo.tools.profiler (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +class _LogTracer: + profiles: Any = ... + whitelist: Any = ... + blacklist: Any = ... + files: Any = ... + deep: Any = ... + first_frame: Any = ... + def __init__(self, whitelist: Optional[Any] = ..., blacklist: Optional[Any] = ..., files: Optional[Any] = ..., deep: bool = ...) -> None: ... + def tracer(self, frame: Any, event: Any, arg: Any): ... + +def profile(method: Optional[Any] = ..., whitelist: Optional[Any] = ..., blacklist: Any = ..., files: Optional[Any] = ..., minimum_time: int = ..., minimum_queries: int = ...): ... diff --git a/odoo-stubs/tools/pycompat.pyi b/odoo-stubs/tools/pycompat.pyi new file mode 100644 index 0000000..32029cb --- /dev/null +++ b/odoo-stubs/tools/pycompat.pyi @@ -0,0 +1,30 @@ +# Stubs for odoo.tools.pycompat (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from collections import namedtuple +from typing import Any, Optional + +PY2: Any + +_Writer = namedtuple('_Writer', 'writerow writerows') +unichr = unichr +text_type = unicode +string_types: Any + +def to_native(source: Any, encoding: str = ..., falsy_empty: bool = ...): ... + +integer_types: Any + +def implements_to_string(cls): ... +def implements_iterator(cls): ... +def csv_reader(stream: Any, **params: Any) -> None: ... +def csv_writer(stream: Any, **params: Any): ... +unichr = chr +text_type = str +imap = map +izip = zip +ifilter = filter + +def reraise(tp: Any, value: Any, tb: Optional[Any] = ...) -> None: ... +def to_text(source: Any): ... diff --git a/odoo-stubs/tools/safe_eval.pyi b/odoo-stubs/tools/safe_eval.pyi new file mode 100644 index 0000000..64d1d39 --- /dev/null +++ b/odoo-stubs/tools/safe_eval.pyi @@ -0,0 +1,11 @@ +# Stubs for odoo.tools.safe_eval (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +unsafe_eval = eval + +def test_expr(expr: Any, allowed_codes: Any, mode: str = ...): ... +def const_eval(expr: Any): ... +def safe_eval(expr: Any, globals_dict: Optional[Any] = ..., locals_dict: Optional[Any] = ..., mode: str = ..., nocopy: bool = ..., locals_builtins: bool = ...): ... diff --git a/odoo-stubs/tools/sql.pyi b/odoo-stubs/tools/sql.pyi new file mode 100644 index 0000000..c28433b --- /dev/null +++ b/odoo-stubs/tools/sql.pyi @@ -0,0 +1,30 @@ +# Stubs for odoo.tools.sql (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +def existing_tables(cr: Any, tablenames: Any): ... +def table_exists(cr: Any, tablename: Any): ... +def table_kind(cr: Any, tablename: Any): ... +def create_model_table(cr: Any, tablename: Any, comment: Optional[Any] = ...) -> None: ... +def table_columns(cr: Any, tablename: Any): ... +def column_exists(cr: Any, tablename: Any, columnname: Any): ... +def create_column(cr: Any, tablename: Any, columnname: Any, columntype: Any, comment: Optional[Any] = ...) -> None: ... +def rename_column(cr: Any, tablename: Any, columnname1: Any, columnname2: Any) -> None: ... +def convert_column(cr: Any, tablename: Any, columnname: Any, columntype: Any) -> None: ... +def set_not_null(cr: Any, tablename: Any, columnname: Any) -> None: ... +def drop_not_null(cr: Any, tablename: Any, columnname: Any) -> None: ... +def constraint_definition(cr: Any, tablename: Any, constraintname: Any): ... +def add_constraint(cr: Any, tablename: Any, constraintname: Any, definition: Any) -> None: ... +def drop_constraint(cr: Any, tablename: Any, constraintname: Any) -> None: ... +def add_foreign_key(cr: Any, tablename1: Any, columnname1: Any, tablename2: Any, columnname2: Any, ondelete: Any): ... +def fix_foreign_key(cr: Any, tablename1: Any, columnname1: Any, tablename2: Any, columnname2: Any, ondelete: Any): ... +def index_exists(cr: Any, indexname: Any): ... +def create_index(cr: Any, indexname: Any, tablename: Any, expressions: Any) -> None: ... +def create_unique_index(cr: Any, indexname: Any, tablename: Any, expressions: Any) -> None: ... +def drop_index(cr: Any, indexname: Any, tablename: Any) -> None: ... +def drop_view_if_exists(cr: Any, viewname: Any) -> None: ... +def escape_psql(to_escape: Any): ... +def pg_varchar(size: int = ...): ... +def reverse_order(order: Any): ... diff --git a/odoo-stubs/tools/test_config.pyi b/odoo-stubs/tools/test_config.pyi new file mode 100644 index 0000000..bbab5ba --- /dev/null +++ b/odoo-stubs/tools/test_config.pyi @@ -0,0 +1,8 @@ +# Stubs for odoo.tools.test_config (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +config_file_00: Any +conf: Any diff --git a/odoo-stubs/tools/test_reports.pyi b/odoo-stubs/tools/test_reports.pyi new file mode 100644 index 0000000..1926aeb --- /dev/null +++ b/odoo-stubs/tools/test_reports.pyi @@ -0,0 +1,8 @@ +# Stubs for odoo.tools.test_reports (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +def try_report(cr: Any, uid: Any, rname: Any, ids: Any, data: Optional[Any] = ..., context: Optional[Any] = ..., our_module: Optional[Any] = ..., report_type: Optional[Any] = ...): ... +def try_report_action(cr: Any, uid: Any, action_id: Any, active_model: Optional[Any] = ..., active_ids: Optional[Any] = ..., wiz_data: Optional[Any] = ..., wiz_buttons: Optional[Any] = ..., context: Optional[Any] = ..., our_module: Optional[Any] = ...): ... diff --git a/odoo-stubs/tools/translate.pyi b/odoo-stubs/tools/translate.pyi new file mode 100644 index 0000000..96c6f6f --- /dev/null +++ b/odoo-stubs/tools/translate.pyi @@ -0,0 +1,66 @@ +# Stubs for odoo.tools.translate (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +import csv +from typing import Any, Optional + +WEB_TRANSLATION_COMMENT: str +SKIPPED_ELEMENTS: Any +ENGLISH_SMALL_WORDS: Any + +class UNIX_LINE_TERMINATOR(csv.excel): + lineterminator: str = ... + +def encode(s: Any): ... + +TRANSLATED_ELEMENTS: Any +TRANSLATED_ATTRS: Any +avoid_pattern: Any +node_pattern: Any + +def translate_xml_node(node: Any, callback: Any, parse: Any, serialize: Any): ... +def parse_xml(text: Any): ... +def serialize_xml(node: Any): ... +def parse_html(text: Any): ... +def serialize_html(node: Any): ... +def xml_translate(callback: Any, value: Any): ... +def html_translate(callback: Any, value: Any): ... +def translate(cr: Any, name: Any, source_type: Any, lang: Any, source: Optional[Any] = ...): ... + +class GettextAlias: + def __call__(self, source: Any): ... + +_ = GettextAlias() + +def quote(s: Any): ... + +re_escaped_char: Any +re_escaped_replacements: Any + +def unquote(str: Any): ... + +class PoFile: + buffer: Any = ... + def __init__(self, buffer: Any) -> None: ... + lines: Any = ... + lines_count: Any = ... + first: bool = ... + extra_lines: Any = ... + def __iter__(self): ... + def cur_line(self): ... + def next(self): ... + __next__: Any = ... + def write_infos(self, modules: Any) -> None: ... + def write(self, modules: Any, tnrs: Any, source: Any, trad: Any, comments: Optional[Any] = ...) -> None: ... + +def trans_export(lang: Any, modules: Any, buffer: Any, format: Any, cr: Any) -> None: ... +def trans_parse_rml(de: Any): ... +def in_modules(object_name: Any, modules: Any): ... +def babel_extract_qweb(fileobj: Any, keywords: Any, comment_tags: Any, options: Any): ... +def trans_generate(lang: Any, modules: Any, cr: Any): ... +def trans_load(cr: Any, filename: Any, lang: Any, verbose: bool = ..., module_name: Optional[Any] = ..., context: Optional[Any] = ...): ... +def trans_load_data(cr: Any, fileobj: Any, fileformat: Any, lang: Any, lang_name: Optional[Any] = ..., verbose: bool = ..., module_name: Optional[Any] = ..., context: Optional[Any] = ...) -> None: ... +def get_locales(lang: Optional[Any] = ...) -> None: ... +def resetlocale(): ... +def load_language(cr: Any, lang: Any) -> None: ... diff --git a/odoo-stubs/tools/view_validation.pyi b/odoo-stubs/tools/view_validation.pyi new file mode 100644 index 0000000..b6a0e9b --- /dev/null +++ b/odoo-stubs/tools/view_validation.pyi @@ -0,0 +1,31 @@ +# Stubs for odoo.tools.view_validation (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +def valid_view(arch: Any): ... +def validate(*view_types: Any): ... +def relaxng(view_type: Any): ... +def schema_valid(arch: Any): ... +def valid_page_in_book(arch: Any): ... +def valid_field_in_graph(arch: Any): ... +def valid_field_in_tree(arch: Any): ... +def valid_att_in_field(arch: Any): ... +def valid_att_in_label(arch: Any): ... +def valid_att_in_form(arch: Any): ... +def valid_type_in_colspan(arch: Any): ... +def valid_type_in_col(arch: Any): ... +def valid_alternative_image_text(arch: Any): ... +def valid_alternative_icon_text(arch: Any): ... +def valid_title_icon(arch: Any): ... +def valid_simili_button(arch: Any): ... +def valid_simili_dropdown(arch: Any): ... +def valid_simili_progressbar(arch: Any): ... +def valid_dialog(arch: Any): ... +def valid_simili_tabpanel(arch: Any): ... +def valid_simili_tab(arch: Any): ... +def valid_simili_tablist(arch: Any): ... +def valid_focusable_button(arch: Any): ... +def valid_prohibited_none_role(arch: Any): ... +def valid_alerts(arch: Any): ... diff --git a/odoo-stubs/tools/which.pyi b/odoo-stubs/tools/which.pyi new file mode 100644 index 0000000..0cd1720 --- /dev/null +++ b/odoo-stubs/tools/which.pyi @@ -0,0 +1,14 @@ +# Stubs for odoo.tools.which (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +__docformat__: str +ENOENT: int +windows: Any +seen: Any +defpathext: Any + +def which_files(file: Any, mode: Any = ..., path: Optional[Any] = ..., pathext: Optional[Any] = ...) -> None: ... +def which(file: Any, mode: Any = ..., path: Optional[Any] = ..., pathext: Optional[Any] = ...): ... diff --git a/odoo-stubs/tools/win32.pyi b/odoo-stubs/tools/win32.pyi new file mode 100644 index 0000000..8f36aa1 --- /dev/null +++ b/odoo-stubs/tools/win32.pyi @@ -0,0 +1,7 @@ +# Stubs for odoo.tools.win32 (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any + +def nl_langinfo(param: Any): ... diff --git a/odoo-stubs/tools/xml_utils.pyi b/odoo-stubs/tools/xml_utils.pyi new file mode 100644 index 0000000..5f34ba5 --- /dev/null +++ b/odoo-stubs/tools/xml_utils.pyi @@ -0,0 +1,9 @@ +# Stubs for odoo.tools.xml_utils (Python 3) +# +# NOTE: This dynamically typed stub was automatically generated by stubgen. + +from typing import Any, Optional + +def check_with_xsd(tree_or_str: Any, stream: Any) -> None: ... +def create_xml_node_chain(first_parent_node: Any, nodes_list: Any, last_node_value: Optional[Any] = ...): ... +def create_xml_node(parent_node: Any, node_name: Any, node_value: Optional[Any] = ...): ...