Skip to content

style: Isortifying the repo and adding pyproject.toml #1526

New issue

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

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

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Jul 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/linters/tox.ini
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ exclude =
venv*,
scripts

max-line-length = 80
max-line-length = 88

per-file-ignores =
# import not used
Expand Down
2 changes: 0 additions & 2 deletions .isort.cfg

This file was deleted.

6 changes: 2 additions & 4 deletions azure_functions_worker/_thirdparty/typing_inspect.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,9 @@

# NOTE: This module must support Python 2.7 in addition to Python 3.x

import sys
import collections.abc
from typing import (
Generic, Callable, Union, TypeVar, ClassVar, Tuple, _GenericAlias
)
import sys
from typing import Callable, ClassVar, Generic, Tuple, TypeVar, Union, _GenericAlias

NEW_39_TYPING = sys.version_info[:3] >= (3, 9, 0) # PEP 560
if NEW_39_TYPING:
Expand Down
24 changes: 14 additions & 10 deletions azure_functions_worker/bindings/__init__.py
Original file line number Diff line number Diff line change
@@ -1,18 +1,22 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
from .tracecontext import TraceContext
from .retrycontext import RetryContext
from .retrycontext import RetryContext # isort: skip
from .tracecontext import TraceContext # isort: skip
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Skipping these two for preventing cyclic import issue when importing from .context import Context

from .context import Context
from .meta import check_input_type_annotation
from .meta import check_output_type_annotation
from .meta import has_implicit_output
from .meta import is_trigger_binding, load_binding_registry
from .meta import from_incoming_proto, to_outgoing_proto, \
to_outgoing_param_binding, check_deferred_bindings_enabled, \
get_deferred_raw_bindings
from .meta import (
check_deferred_bindings_enabled,
check_input_type_annotation,
check_output_type_annotation,
from_incoming_proto,
get_deferred_raw_bindings,
has_implicit_output,
is_trigger_binding,
load_binding_registry,
to_outgoing_param_binding,
to_outgoing_proto,
)
from .out import Out


__all__ = (
'Out', 'Context',
'is_trigger_binding',
Expand Down
3 changes: 1 addition & 2 deletions azure_functions_worker/bindings/context.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@
import threading
from typing import Type

from . import TraceContext
from . import RetryContext
from . import RetryContext, TraceContext


class Context:
Expand Down
17 changes: 12 additions & 5 deletions azure_functions_worker/bindings/datumdef.py
Original file line number Diff line number Diff line change
@@ -1,19 +1,26 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
import logging
from typing import Any, Optional
import json
import logging
from typing import Any, List, Optional

from .. import protos
from ..logging import logger
from typing import List

try:
from http.cookies import SimpleCookie
except ImportError:
from Cookie import SimpleCookie

from dateutil import parser
from dateutil.parser import ParserError
from .nullable_converters import to_nullable_bool, to_nullable_string, \
to_nullable_double, to_nullable_timestamp

from .nullable_converters import (
to_nullable_bool,
to_nullable_double,
to_nullable_string,
to_nullable_timestamp,
)


class Datum:
Expand Down
2 changes: 1 addition & 1 deletion azure_functions_worker/bindings/generic.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.
import typing
from typing import Any, Optional

from . import datumdef
from typing import Any, Optional


class GenericBinding:
Expand Down
16 changes: 8 additions & 8 deletions azure_functions_worker/bindings/meta.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@
import sys
import typing


from .. import protos
from . import datumdef
from . import generic

from .shared_memory_data_transfer import SharedMemoryManager
from ..constants import (
BASE_EXT_SUPPORTED_PY_MINOR_VERSION,
CUSTOMER_PACKAGES_PATH,
HTTP,
HTTP_TRIGGER,
)
from ..http_v2 import HttpV2Registry
from ..constants import CUSTOMER_PACKAGES_PATH, HTTP, HTTP_TRIGGER, \
BASE_EXT_SUPPORTED_PY_MINOR_VERSION
from ..logging import logger

from . import datumdef, generic
from .shared_memory_data_transfer import SharedMemoryManager

PB_TYPE = 'rpc_data'
PB_TYPE_DATA = 'data'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,12 @@
https://github.com/Azure/azure-functions-host/issues/6791
"""

from .file_accessor_factory import FileAccessorFactory
from .file_accessor import FileAccessor
from .file_accessor_factory import FileAccessorFactory
from .shared_memory_constants import SharedMemoryConstants
from .shared_memory_exception import SharedMemoryException
from .shared_memory_map import SharedMemoryMap
from .shared_memory_manager import SharedMemoryManager
from .shared_memory_map import SharedMemoryMap

__all__ = (
'FileAccessorFactory', 'FileAccessor', 'SharedMemoryConstants',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
import mmap
from abc import ABCMeta, abstractmethod
from typing import Optional

from .shared_memory_constants import SharedMemoryConstants as consts


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
import os
import sys

from ...constants import FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED
from ...utils.common import is_envvar_true
from .file_accessor import DummyFileAccessor
from .file_accessor_unix import FileAccessorUnix
from .file_accessor_windows import FileAccessorWindows
from ...constants import FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED
from ...utils.common import is_envvar_true


class FileAccessorFactory:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.

from azure_functions_worker import constants
import os
import mmap
from typing import Optional, List
import os
from io import BufferedRandom
from typing import List, Optional

from azure_functions_worker import constants

from ...logging import logger
from ...utils.common import get_app_setting
from .file_accessor import FileAccessor
from .shared_memory_constants import SharedMemoryConstants as consts
from .shared_memory_exception import SharedMemoryException
from .file_accessor import FileAccessor
from ...utils.common import get_app_setting
from ...logging import logger


class FileAccessorUnix(FileAccessor):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@

import mmap
from typing import Optional
from .shared_memory_exception import SharedMemoryException
from .file_accessor import FileAccessor

from ...logging import logger
from .file_accessor import FileAccessor
from .shared_memory_exception import SharedMemoryException


class FileAccessorWindows(FileAccessor):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,15 @@

import uuid
from typing import Dict, Optional
from .shared_memory_constants import SharedMemoryConstants as consts
from .file_accessor_factory import FileAccessorFactory
from .shared_memory_metadata import SharedMemoryMetadata
from .shared_memory_map import SharedMemoryMap
from ..datumdef import Datum

from ...constants import FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED
from ...logging import logger
from ...utils.common import is_envvar_true
from ...constants import FUNCTIONS_WORKER_SHARED_MEMORY_DATA_TRANSFER_ENABLED
from ..datumdef import Datum
from .file_accessor_factory import FileAccessorFactory
from .shared_memory_constants import SharedMemoryConstants as consts
from .shared_memory_map import SharedMemoryMap
from .shared_memory_metadata import SharedMemoryMetadata


class SharedMemoryManager:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,11 @@
import struct
import sys
from typing import Optional

from ...logging import logger
from .file_accessor import FileAccessor
from .shared_memory_constants import SharedMemoryConstants as consts
from .shared_memory_exception import SharedMemoryException
from .file_accessor import FileAccessor
from ...logging import logger


class SharedMemoryMap:
Expand Down
55 changes: 35 additions & 20 deletions azure_functions_worker/dispatcher.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,29 +19,43 @@
from typing import List, Optional

import grpc

from . import bindings, constants, functions, loader, protos
from .bindings.shared_memory_data_transfer import SharedMemoryManager
from .constants import (PYTHON_ROLLBACK_CWD_PATH,
PYTHON_THREADPOOL_THREAD_COUNT,
PYTHON_THREADPOOL_THREAD_COUNT_DEFAULT,
PYTHON_THREADPOOL_THREAD_COUNT_MAX_37,
PYTHON_THREADPOOL_THREAD_COUNT_MIN,
PYTHON_ENABLE_DEBUG_LOGGING,
PYTHON_SCRIPT_FILE_NAME,
PYTHON_SCRIPT_FILE_NAME_DEFAULT,
PYTHON_LANGUAGE_RUNTIME, PYTHON_ENABLE_INIT_INDEXING,
METADATA_PROPERTIES_WORKER_INDEXED,
PYTHON_ENABLE_OPENTELEMETRY,
PYTHON_ENABLE_OPENTELEMETRY_DEFAULT)
from .constants import (
METADATA_PROPERTIES_WORKER_INDEXED,
PYTHON_ENABLE_DEBUG_LOGGING,
PYTHON_ENABLE_INIT_INDEXING,
PYTHON_ENABLE_OPENTELEMETRY,
PYTHON_ENABLE_OPENTELEMETRY_DEFAULT,
PYTHON_LANGUAGE_RUNTIME,
PYTHON_ROLLBACK_CWD_PATH,
PYTHON_SCRIPT_FILE_NAME,
PYTHON_SCRIPT_FILE_NAME_DEFAULT,
PYTHON_THREADPOOL_THREAD_COUNT,
PYTHON_THREADPOOL_THREAD_COUNT_DEFAULT,
PYTHON_THREADPOOL_THREAD_COUNT_MAX_37,
PYTHON_THREADPOOL_THREAD_COUNT_MIN,
)
from .extension import ExtensionManager
from .http_v2 import http_coordinator, initialize_http_server, HttpV2Registry, \
sync_http_request, HttpServerInitError
from .logging import disable_console_logging, enable_console_logging
from .logging import (logger, error_logger, is_system_log_category,
CONSOLE_LOG_PREFIX, format_exception)
from .http_v2 import (
HttpServerInitError,
HttpV2Registry,
http_coordinator,
initialize_http_server,
sync_http_request,
)
from .logging import (
CONSOLE_LOG_PREFIX,
disable_console_logging,
enable_console_logging,
error_logger,
format_exception,
is_system_log_category,
logger,
)
from .utils.app_setting_manager import get_python_appsetting_state
from .utils.common import (get_app_setting, is_envvar_true,
validate_script_file_name)
from .utils.common import get_app_setting, is_envvar_true, validate_script_file_name
from .utils.dependency import DependencyManager
from .utils.tracing import marshall_exception_trace
from .utils.wrappers import disable_feature_by
Expand Down Expand Up @@ -280,7 +294,8 @@ def update_opentelemetry_status(self):
try:
from opentelemetry import context as context_api
from opentelemetry.trace.propagation.tracecontext import (
TraceContextTextMapPropagator)
TraceContextTextMapPropagator,
)

self._context_api = context_api
self._trace_context_propagator = TraceContextTextMapPropagator()
Expand Down
12 changes: 4 additions & 8 deletions azure_functions_worker/extension.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,13 @@
from typing import Any, Callable, List, Optional

from .constants import (
PYTHON_ISOLATE_WORKER_DEPENDENCIES,
PYTHON_ENABLE_WORKER_EXTENSIONS,
PYTHON_ENABLE_WORKER_EXTENSIONS_DEFAULT,
PYTHON_ENABLE_WORKER_EXTENSIONS_DEFAULT_39
)
from .logging import logger, SYSTEM_LOG_PREFIX
from .utils.common import (
is_python_version,
get_sdk_from_sys_path,
get_sdk_version
PYTHON_ENABLE_WORKER_EXTENSIONS_DEFAULT_39,
PYTHON_ISOLATE_WORKER_DEPENDENCIES,
)
from .logging import SYSTEM_LOG_PREFIX, logger
from .utils.common import get_sdk_from_sys_path, get_sdk_version, is_python_version
from .utils.wrappers import enable_feature_by

# Extension Hooks
Expand Down
2 changes: 1 addition & 1 deletion azure_functions_worker/functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
import typing
import uuid

from .constants import HTTP_TRIGGER
from . import bindings as bindings_utils
from . import protos
from ._thirdparty import typing_inspect
from .constants import HTTP_TRIGGER
from .protos import BindingInfo


Expand Down
7 changes: 5 additions & 2 deletions azure_functions_worker/http_v2.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,11 @@
import sys
from typing import Dict

from azure_functions_worker.constants import X_MS_INVOCATION_ID, \
BASE_EXT_SUPPORTED_PY_MINOR_VERSION, PYTHON_ENABLE_INIT_INDEXING
from azure_functions_worker.constants import (
BASE_EXT_SUPPORTED_PY_MINOR_VERSION,
PYTHON_ENABLE_INIT_INDEXING,
X_MS_INVOCATION_ID,
)
from azure_functions_worker.logging import logger
from azure_functions_worker.utils.common import is_envvar_false

Expand Down
Loading
Loading