diff --git a/.circleci/config.yml b/.circleci/config.yml index 9b58dab0e..e1a428b44 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,14 +1,7 @@ version: 2.1 executors: - python-35: - docker: - - image: circleci/python:3.5 - working_directory: ~/repo - python-36: - docker: - - image: circleci/python:3.6 - working_directory: ~/repo + python-37: docker: - image: circleci/python:3.7 @@ -17,6 +10,10 @@ executors: docker: - image: circleci/python:3.8 working_directory: ~/repo + python-39: + docker: + - image: circleci/python:3.9 + working_directory: ~/repo commands: build: @@ -97,22 +94,6 @@ commands: poetry run twine upload dist/* jobs: - build-35: - executor: python-35 - steps: - - build - test-35: - executor: python-35 - steps: - - test - build-36: - executor: python-36 - steps: - - build - test-36: - executor: python-36 - steps: - - test build-37: executor: python-37 steps: @@ -129,6 +110,14 @@ jobs: executor: python-38 steps: - test + build-39: + executor: python-39 + steps: + - build + test-39: + executor: python-39 + steps: + - test lint-37: executor: python-37 steps: @@ -143,15 +132,13 @@ workflows: version: 2 build_and_test: jobs: - - build-35 - - test-35 - - build-36 - - test-36 - build-37 - test-37 - lint-37 - build-38 - test-38 + - build-39 + - test-39 build_and_deploy: jobs: - build-37: diff --git a/CHANGELOG.md b/CHANGELOG.md index 7936ba143..8bdbb33b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,8 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Added +* CI tests Python 3.9 now. [#367](https://github.com/greenbone/python-gvm/pull/367) + ### Changed ### Deprecated +* Dropped Python 3.5 and Python 3.6 support. Python 3.7+ is required now. [#367](https://github.com/greenbone/python-gvm/pull/367) + ### Removed ### Fixed * Add missing types and functions to "latest" GMP [#369](https://github.com/greenbone/python-gvm/pull/369) diff --git a/README.md b/README.md index fb826c50e..689b357a7 100644 --- a/README.md +++ b/README.md @@ -45,7 +45,7 @@ The current release of `python-gvm` can be used with all supported GOS versions. ### Requirements -Python 3.5 and later is supported. +Python 3.7 and later is supported. ### Install using pip diff --git a/gvm/connections.py b/gvm/connections.py index c5f9cf822..0b8a2be36 100644 --- a/gvm/connections.py +++ b/gvm/connections.py @@ -189,7 +189,7 @@ def __init__( hostname: Optional[str] = DEFAULT_HOSTNAME, port: Optional[int] = DEFAULT_SSH_PORT, username: Optional[str] = DEFAULT_SSH_USERNAME, - password: Optional[str] = DEFAULT_SSH_PASSWORD + password: Optional[str] = DEFAULT_SSH_PASSWORD, ): super().__init__(timeout=timeout) @@ -294,7 +294,7 @@ def __init__( hostname: Optional[str] = DEFAULT_HOSTNAME, port: Optional[int] = DEFAULT_GVM_PORT, password: Optional[str] = None, - timeout: Optional[int] = DEFAULT_TIMEOUT + timeout: Optional[int] = DEFAULT_TIMEOUT, ): super().__init__(timeout=timeout) @@ -348,7 +348,7 @@ def __init__( self, *, path: Optional[str] = DEFAULT_UNIX_SOCKET_PATH, - timeout: Optional[int] = DEFAULT_TIMEOUT + timeout: Optional[int] = DEFAULT_TIMEOUT, ): super().__init__(timeout=timeout) diff --git a/gvm/errors.py b/gvm/errors.py index dfff10b37..1c84a86b5 100644 --- a/gvm/errors.py +++ b/gvm/errors.py @@ -111,7 +111,7 @@ def __init__( message: Optional[str] = None, *, argument: Optional[str] = None, - function: Optional[str] = None + function: Optional[str] = None, ): super().__init__(message, argument, function) self.argument = argument @@ -146,7 +146,7 @@ def __init__( argument: str = None, arg_type: str = None, *, - function: Optional[str] = None + function: Optional[str] = None, ): # pylint: disable=super-init-not-called self.argument = argument @@ -180,7 +180,7 @@ def __init__( message: Optional[str] = None, *, argument: Optional[str] = None, - function: Optional[str] = None + function: Optional[str] = None, ): super().__init__(message, argument, function) self.argument = argument diff --git a/gvm/protocols/base.py b/gvm/protocols/base.py index a3774f083..70d0e1ab9 100644 --- a/gvm/protocols/base.py +++ b/gvm/protocols/base.py @@ -39,7 +39,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): self._connection = connection diff --git a/gvm/protocols/gmp.py b/gvm/protocols/gmp.py index 3ee93a30a..19b379927 100644 --- a/gvm/protocols/gmp.py +++ b/gvm/protocols/gmp.py @@ -76,7 +76,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=EtreeCheckCommandTransform()) self._gmp_transform = transform diff --git a/gvm/protocols/gmpv208/__init__.py b/gvm/protocols/gmpv208/__init__.py index fdb8725e4..1ebf34071 100644 --- a/gvm/protocols/gmpv208/__init__.py +++ b/gvm/protocols/gmpv208/__init__.py @@ -48,7 +48,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) diff --git a/gvm/protocols/gmpv208/gmpv208.py b/gvm/protocols/gmpv208/gmpv208.py index 8c8e0ba47..defdb21c6 100644 --- a/gvm/protocols/gmpv208/gmpv208.py +++ b/gvm/protocols/gmpv208/gmpv208.py @@ -53,7 +53,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) @@ -68,7 +68,7 @@ def create_agent( *, comment: Optional[str] = None, howto_install: Optional[str] = None, - howto_use: Optional[str] = None + howto_use: Optional[str] = None, ) -> None: # pylint: disable=unused-argument deprecation( @@ -94,7 +94,7 @@ def modify_agent( agent_id: str, *, name: Optional[str] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> None: # pylint: disable=unused-argument deprecation( @@ -147,7 +147,7 @@ def get_info_list( filter: Optional[str] = None, filter_id: Optional[str] = None, name: Optional[str] = None, - details: Optional[bool] = None + details: Optional[bool] = None, ) -> Any: """Request a list of security information @@ -244,7 +244,7 @@ def create_target( reverse_lookup_only: Optional[bool] = None, reverse_lookup_unify: Optional[bool] = None, port_range: Optional[str] = None, - port_list_id: Optional[str] = None + port_list_id: Optional[str] = None, ) -> Any: """Create a new target diff --git a/gvm/protocols/gmpv214/__init__.py b/gvm/protocols/gmpv214/__init__.py index 472be38ac..f6720593e 100644 --- a/gvm/protocols/gmpv214/__init__.py +++ b/gvm/protocols/gmpv214/__init__.py @@ -50,7 +50,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) diff --git a/gvm/protocols/gmpv214/gmpv214.py b/gvm/protocols/gmpv214/gmpv214.py index 8bd213a3a..a4ec1d85b 100644 --- a/gvm/protocols/gmpv214/gmpv214.py +++ b/gvm/protocols/gmpv214/gmpv214.py @@ -55,7 +55,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) @@ -73,7 +73,7 @@ def create_note( result_id: Optional[str] = None, severity: Optional[Severity] = None, task_id: Optional[str] = None, - threat: Optional[SeverityLevel] = None + threat: Optional[SeverityLevel] = None, ) -> Any: """Create a new note @@ -149,7 +149,7 @@ def create_override( new_severity: Optional[Severity] = None, task_id: Optional[str] = None, threat: Optional[SeverityLevel] = None, - new_threat: Optional[SeverityLevel] = None + new_threat: Optional[SeverityLevel] = None, ) -> Any: """Create a new override @@ -237,7 +237,7 @@ def modify_note( result_id: Optional[str] = None, severity: Optional[Severity] = None, task_id: Optional[str] = None, - threat: Optional[SeverityLevel] = None + threat: Optional[SeverityLevel] = None, ) -> Any: """Modifies an existing note. @@ -312,7 +312,7 @@ def modify_override( new_severity: Optional[Severity] = None, task_id: Optional[str] = None, threat: Optional[SeverityLevel] = None, - new_threat: Optional[SeverityLevel] = None + new_threat: Optional[SeverityLevel] = None, ) -> Any: """Modifies an existing override. @@ -402,7 +402,7 @@ def modify_user( hosts_allow: Optional[bool] = False, ifaces: Optional[List[str]] = None, ifaces_allow: Optional[bool] = False, - group_ids: Optional[List[str]] = None + group_ids: Optional[List[str]] = None, ) -> Any: """Modifies an existing user. Most of the fields need to be supplied diff --git a/gvm/protocols/gmpv7/__init__.py b/gvm/protocols/gmpv7/__init__.py index f8cacde6e..3952609a5 100644 --- a/gvm/protocols/gmpv7/__init__.py +++ b/gvm/protocols/gmpv7/__init__.py @@ -44,7 +44,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) diff --git a/gvm/protocols/gmpv7/gmpv7.py b/gvm/protocols/gmpv7/gmpv7.py index e30196986..8adf70a43 100644 --- a/gvm/protocols/gmpv7/gmpv7.py +++ b/gvm/protocols/gmpv7/gmpv7.py @@ -201,7 +201,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) @@ -265,7 +265,7 @@ def create_agent( *, comment: Optional[str] = None, howto_install: Optional[str] = None, - howto_use: Optional[str] = None + howto_use: Optional[str] = None, ) -> Any: """Create a new agent @@ -341,7 +341,7 @@ def create_alert( event_data: Optional[dict] = None, condition_data: Optional[dict] = None, filter_id: Optional[int] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Create a new alert @@ -551,7 +551,7 @@ def create_credential( auth_algorithm: Optional[SnmpAuthAlgorithm] = None, community: Optional[str] = None, privacy_algorithm: Optional[SnmpPrivacyAlgorithm] = None, - privacy_password: Optional[str] = None + privacy_password: Optional[str] = None, ) -> Any: """Create a new credential @@ -743,7 +743,7 @@ def create_filter( make_unique: Optional[bool] = None, filter_type: Optional[FilterType] = None, comment: Optional[str] = None, - term: Optional[str] = None + term: Optional[str] = None, ) -> Any: """Create a new filter @@ -810,7 +810,7 @@ def create_group( *, comment: Optional[str] = None, special: Optional[bool] = False, - users: Optional[List[str]] = None + users: Optional[List[str]] = None, ) -> Any: """Create a new group @@ -898,7 +898,7 @@ def create_note( result_id: Optional[str] = None, severity: Optional[Severity] = None, task_id: Optional[str] = None, - threat: Optional[SeverityLevel] = None + threat: Optional[SeverityLevel] = None, ) -> Any: """Create a new note @@ -993,7 +993,7 @@ def create_override( new_severity: Optional[Severity] = None, task_id: Optional[str] = None, threat: Optional[SeverityLevel] = None, - new_threat: Optional[SeverityLevel] = None + new_threat: Optional[SeverityLevel] = None, ) -> Any: """Create a new override @@ -1098,7 +1098,7 @@ def create_permission( *, resource_id: Optional[str] = None, resource_type: Optional[EntityType] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Create a new permission @@ -1244,7 +1244,7 @@ def create_port_range( end: int, port_range_type: PortRangeType, *, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Create new port range @@ -1305,7 +1305,7 @@ def import_report( task_id: Optional[str] = None, task_name: Optional[str] = None, task_comment: Optional[str] = None, - in_assets: Optional[bool] = None + in_assets: Optional[bool] = None, ) -> Any: """Import a Report from XML @@ -1414,7 +1414,7 @@ def create_role( name: str, *, comment: Optional[str] = None, - users: Optional[List[str]] = None + users: Optional[List[str]] = None, ) -> Any: """Create a new role @@ -1470,7 +1470,7 @@ def create_scanner( credential_id: str, *, ca_pub: Optional[str] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Create a new scanner @@ -1567,7 +1567,7 @@ def create_schedule( duration_unit: Optional[TimeUnit] = None, period: Optional[int] = None, period_unit: Optional[TimeUnit] = None, - timezone: Optional[str] = None + timezone: Optional[str] = None, ) -> Any: """Create a new schedule @@ -1772,7 +1772,7 @@ def create_tag( resource_id: Optional[str] = None, value: Optional[str] = None, comment: Optional[str] = None, - active: Optional[bool] = None + active: Optional[bool] = None, ) -> Any: """Create a new tag @@ -1866,7 +1866,7 @@ def create_target( reverse_lookup_only: Optional[bool] = None, reverse_lookup_unify: Optional[bool] = None, port_range: Optional[str] = None, - port_list_id: Optional[str] = None + port_list_id: Optional[str] = None, ) -> Any: """Create a new target @@ -1997,7 +1997,7 @@ def create_task( comment: Optional[str] = None, schedule_periods: Optional[int] = None, observers: Optional[List[str]] = None, - preferences: Optional[dict] = None + preferences: Optional[dict] = None, ) -> Any: """Create a new task @@ -2181,7 +2181,7 @@ def create_user( hosts_allow: Optional[bool] = False, ifaces: Optional[List[str]] = None, ifaces_allow: Optional[bool] = False, - role_ids: Optional[List[str]] = None + role_ids: Optional[List[str]] = None, ) -> Any: """Create a new user @@ -2511,7 +2511,7 @@ def delete_report_format( self, report_format_id: Optional[Union[str, ReportFormatType]] = None, *, - ultimate: Optional[bool] = False + ultimate: Optional[bool] = False, ) -> Any: """Deletes an existing report format @@ -2663,7 +2663,7 @@ def delete_user( *, name: Optional[str] = None, inheritor_id: Optional[str] = None, - inheritor_name: Optional[str] = None + inheritor_name: Optional[str] = None, ) -> Any: """Deletes an existing user @@ -2727,7 +2727,7 @@ def get_agents( filter_id: Optional[str] = None, trash: Optional[bool] = None, details: Optional[bool] = None, - format: Optional[str] = None + format: Optional[str] = None, ) -> Any: """Request a list of agents @@ -2821,7 +2821,7 @@ def get_alerts( filter: Optional[str] = None, filter_id: Optional[str] = None, trash: Optional[bool] = None, - tasks: Optional[bool] = None + tasks: Optional[bool] = None, ) -> Any: """Request a list of alerts @@ -2873,7 +2873,7 @@ def get_assets( asset_type: AssetType, *, filter: Optional[str] = None, - filter_id: Optional[str] = None + filter_id: Optional[str] = None, ) -> Any: """Request a list of assets @@ -2936,7 +2936,7 @@ def get_credentials( filter_id: Optional[str] = None, scanners: Optional[bool] = None, trash: Optional[bool] = None, - targets: Optional[bool] = None + targets: Optional[bool] = None, ) -> Any: """Request a list of credentials @@ -2972,7 +2972,7 @@ def get_credential( *, scanners: Optional[bool] = None, targets: Optional[bool] = None, - credential_format: Optional[CredentialFormat] = None + credential_format: Optional[CredentialFormat] = None, ) -> Any: """Request a single credential @@ -3021,7 +3021,7 @@ def get_configs( details: Optional[bool] = None, families: Optional[bool] = None, preferences: Optional[bool] = None, - tasks: Optional[bool] = None + tasks: Optional[bool] = None, ) -> Any: """Request a list of scan configs @@ -3129,7 +3129,7 @@ def get_filters( filter: Optional[str] = None, filter_id: Optional[str] = None, trash: Optional[bool] = None, - alerts: Optional[bool] = None + alerts: Optional[bool] = None, ) -> Any: """Request a list of filters @@ -3185,7 +3185,7 @@ def get_groups( *, filter: Optional[str] = None, filter_id: Optional[str] = None, - trash: Optional[bool] = None + trash: Optional[bool] = None, ) -> Any: """Request a list of groups @@ -3232,7 +3232,7 @@ def get_info_list( filter: Optional[str] = None, filter_id: Optional[str] = None, name: Optional[str] = None, - details: Optional[bool] = None + details: Optional[bool] = None, ) -> Any: """Request a list of security information @@ -3319,7 +3319,7 @@ def get_notes( filter: Optional[str] = None, filter_id: Optional[str] = None, details: Optional[bool] = None, - result: Optional[bool] = None + result: Optional[bool] = None, ) -> Any: """Request a list of notes @@ -3376,7 +3376,7 @@ def get_nvts( preferences_config_id: Optional[str] = None, family: Optional[str] = None, sort_order: Optional[str] = None, - sort_field: Optional[str] = None + sort_field: Optional[str] = None, ): """Request a list of nvts @@ -3473,7 +3473,7 @@ def get_overrides( filter: Optional[str] = None, filter_id: Optional[str] = None, details: Optional[bool] = None, - result: Optional[bool] = None + result: Optional[bool] = None, ) -> Any: """Request a list of overrides @@ -3525,7 +3525,7 @@ def get_permissions( *, filter: Optional[str] = None, filter_id: Optional[str] = None, - trash: Optional[bool] = None + trash: Optional[bool] = None, ) -> Any: """Request a list of permissions @@ -3572,7 +3572,7 @@ def get_port_lists( filter_id: Optional[str] = None, details: Optional[bool] = None, targets: Optional[bool] = None, - trash: Optional[bool] = None + trash: Optional[bool] = None, ) -> Any: """Request a list of port lists @@ -3655,7 +3655,7 @@ def get_preference( name: str, *, nvt_oid: Optional[str] = None, - config_id: Optional[str] = None + config_id: Optional[str] = None, ) -> Any: """Request a nvt preference @@ -3691,7 +3691,7 @@ def get_reports( filter_id: Optional[str] = None, note_details: Optional[bool] = None, override_details: Optional[bool] = None, - details: Optional[bool] = None + details: Optional[bool] = None, ) -> Any: """Request a list of reports @@ -3736,7 +3736,7 @@ def get_report( delta_report_id: Optional[str] = None, report_format_id: Optional[Union[str, ReportFormatType]] = None, ignore_pagination: Optional[bool] = None, - details: Optional[bool] = True + details: Optional[bool] = True, ) -> Any: """Request a single report @@ -3790,7 +3790,7 @@ def get_report_formats( trash: Optional[bool] = None, alerts: Optional[bool] = None, params: Optional[bool] = None, - details: Optional[bool] = None + details: Optional[bool] = None, ) -> Any: """Request a list of report formats @@ -3824,8 +3824,7 @@ def get_report_formats( return self._send_xml_command(cmd) def get_report_format( - self, - report_format_id: Union[str, ReportFormatType], + self, report_format_id: Union[str, ReportFormatType] ) -> Any: """Request a single report format @@ -3861,7 +3860,7 @@ def get_results( task_id: Optional[str] = None, note_details: Optional[bool] = None, override_details: Optional[bool] = None, - details: Optional[bool] = None + details: Optional[bool] = None, ) -> Any: """Request a list of results @@ -3922,7 +3921,7 @@ def get_roles( *, filter: Optional[str] = None, filter_id: Optional[str] = None, - trash: Optional[bool] = None + trash: Optional[bool] = None, ) -> Any: """Request a list of roles @@ -3967,7 +3966,7 @@ def get_scanners( filter: Optional[str] = None, filter_id: Optional[str] = None, trash: Optional[bool] = None, - details: Optional[bool] = None + details: Optional[bool] = None, ) -> Any: """Request a list of scanners @@ -4021,7 +4020,7 @@ def get_schedules( filter: Optional[str] = None, filter_id: Optional[str] = None, trash: Optional[bool] = None, - tasks: Optional[bool] = None + tasks: Optional[bool] = None, ) -> Any: """Request a list of schedules @@ -4115,7 +4114,7 @@ def get_system_reports( start_time: Optional[str] = None, end_time: Optional[str] = None, brief: Optional[bool] = None, - slave_id: Optional[str] = None + slave_id: Optional[str] = None, ) -> Any: """Request a list of system reports @@ -4164,7 +4163,7 @@ def get_tags( filter: Optional[str] = None, filter_id: Optional[str] = None, trash: Optional[bool] = None, - names_only: Optional[bool] = None + names_only: Optional[bool] = None, ) -> Any: """Request a list of tags @@ -4214,7 +4213,7 @@ def get_targets( filter: Optional[str] = None, filter_id: Optional[str] = None, trash: Optional[bool] = None, - tasks: Optional[bool] = None + tasks: Optional[bool] = None, ) -> Any: """Request a list of targets @@ -4272,7 +4271,7 @@ def get_tasks( filter_id: Optional[str] = None, trash: Optional[bool] = None, details: Optional[bool] = None, - schedules_only: Optional[bool] = None + schedules_only: Optional[bool] = None, ) -> Any: """Request a list of tasks @@ -4406,7 +4405,7 @@ def modify_agent( agent_id: str, *, name: Optional[str] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Modifies an existing agent @@ -4446,7 +4445,7 @@ def modify_alert( condition: Optional[AlertCondition] = None, condition_data: Optional[dict] = None, method: Optional[AlertMethod] = None, - method_data: Optional[dict] = None + method_data: Optional[dict] = None, ) -> Any: """Modifies an existing alert. @@ -4598,7 +4597,7 @@ def modify_config_set_nvt_preference( name: str, nvt_oid: str, *, - value: Optional[str] = None + value: Optional[str] = None, ) -> Any: """Modifies the nvt preferences of an existing scan config. @@ -4655,8 +4654,7 @@ def modify_config_set_name(self, config_id: str, name: str) -> Any: if not name: raise RequiredArgument( - function=self.modify_config_set_name.__name__, - argument='name', + function=self.modify_config_set_name.__name__, argument='name' ) cmd = XmlCommand("modify_config") @@ -4772,7 +4770,7 @@ def modify_config_set_family_selection( config_id: str, families: List[Tuple[str, bool, bool]], *, - auto_add_new_families: Optional[bool] = True + auto_add_new_families: Optional[bool] = True, ) -> Any: """ Selected the NVTs of a scan config at a family level. @@ -4924,7 +4922,7 @@ def modify_credential( auth_algorithm: Optional[SnmpAuthAlgorithm] = None, community: Optional[str] = None, privacy_algorithm: Optional[SnmpPrivacyAlgorithm] = None, - privacy_password: Optional[str] = None + privacy_password: Optional[str] = None, ) -> Any: """Modifies an existing credential. @@ -5020,7 +5018,7 @@ def modify_filter( comment: Optional[str] = None, name: Optional[str] = None, term: Optional[str] = None, - filter_type: Optional[FilterType] = None + filter_type: Optional[FilterType] = None, ) -> Any: """Modifies an existing filter. @@ -5068,7 +5066,7 @@ def modify_group( *, comment: Optional[str] = None, name: Optional[str] = None, - users: Optional[List[str]] = None + users: Optional[List[str]] = None, ) -> Any: """Modifies an existing group. @@ -5111,7 +5109,7 @@ def modify_note( result_id: Optional[str] = None, severity: Optional[Severity] = None, task_id: Optional[str] = None, - threat: Optional[SeverityLevel] = None + threat: Optional[SeverityLevel] = None, ) -> Any: """Modifies an existing note. @@ -5188,7 +5186,7 @@ def modify_override( new_severity: Optional[Severity] = None, task_id: Optional[str] = None, threat: Optional[SeverityLevel] = None, - new_threat: Optional[SeverityLevel] = None + new_threat: Optional[SeverityLevel] = None, ) -> Any: """Modifies an existing override. @@ -5275,7 +5273,7 @@ def modify_permission( resource_id: Optional[str] = None, resource_type: Optional[EntityType] = None, subject_id: Optional[str] = None, - subject_type: Optional[PermissionSubjectType] = None + subject_type: Optional[PermissionSubjectType] = None, ) -> Any: """Modifies an existing permission. @@ -5356,7 +5354,7 @@ def modify_port_list( port_list_id: str, *, comment: Optional[str] = None, - name: Optional[str] = None + name: Optional[str] = None, ) -> Any: """Modifies an existing port list. @@ -5391,7 +5389,7 @@ def modify_report_format( name: Optional[str] = None, summary: Optional[str] = None, param_name: Optional[str] = None, - param_value: Optional[str] = None + param_value: Optional[str] = None, ) -> Any: """Modifies an existing report format. @@ -5444,7 +5442,7 @@ def modify_role( *, comment: Optional[str] = None, name: Optional[str] = None, - users: Optional[List[str]] = None + users: Optional[List[str]] = None, ) -> Any: """Modifies an existing role. @@ -5486,7 +5484,7 @@ def modify_scanner( comment: Optional[str] = None, name: Optional[str] = None, ca_pub: Optional[str] = None, - credential_id: Optional[str] = None + credential_id: Optional[str] = None, ) -> Any: """Modifies an existing scanner. @@ -5558,7 +5556,7 @@ def modify_schedule( duration_unit: Optional[TimeUnit] = None, period: Optional[int] = None, period_unit: Optional[TimeUnit] = None, - timezone: Optional[str] = None + timezone: Optional[str] = None, ) -> Any: """Modifies an existing schedule. @@ -5786,7 +5784,7 @@ def modify_tag( value: Optional[str] = None, active: Optional[bool] = None, resource_id: Optional[str] = None, - resource_type: Optional[EntityType] = None + resource_type: Optional[EntityType] = None, ) -> Any: """Modifies an existing tag. @@ -5865,7 +5863,7 @@ def modify_target( alive_test: Optional[AliveTest] = None, reverse_lookup_only: Optional[bool] = None, reverse_lookup_unify: Optional[bool] = None, - port_list_id: Optional[str] = None + port_list_id: Optional[str] = None, ) -> Any: """Modifies an existing target. @@ -5967,7 +5965,7 @@ def modify_task( comment: Optional[str] = None, alert_ids: Optional[List[str]] = None, observers: Optional[List[str]] = None, - preferences: Optional[dict] = None + preferences: Optional[dict] = None, ) -> Any: """Modifies an existing task. @@ -6093,7 +6091,7 @@ def modify_user( hosts_allow: Optional[bool] = False, ifaces: Optional[List[str]] = None, ifaces_allow: Optional[bool] = False, - group_ids: Optional[List[str]] = None + group_ids: Optional[List[str]] = None, ) -> Any: """Modifies an existing user. Most of the fields need to be supplied for changing a single field even if no change is wanted for those. @@ -6336,7 +6334,7 @@ def trigger_alert( filter: Optional[str] = None, filter_id: Optional[str] = None, report_format_id: Optional[Union[str, ReportFormatType]] = None, - delta_report_id: Optional[str] = None + delta_report_id: Optional[str] = None, ) -> Any: """Run an alert by ignoring its event and conditions @@ -6411,8 +6409,7 @@ def verify_agent(self, agent_id: str) -> Any: return self._send_xml_command(cmd) def verify_report_format( - self, - report_format_id: Union[str, ReportFormatType], + self, report_format_id: Union[str, ReportFormatType] ) -> Any: """Verify an existing report format diff --git a/gvm/protocols/gmpv8/__init__.py b/gvm/protocols/gmpv8/__init__.py index 9a5fa3d5e..4ce3748fe 100644 --- a/gvm/protocols/gmpv8/__init__.py +++ b/gvm/protocols/gmpv8/__init__.py @@ -44,7 +44,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) diff --git a/gvm/protocols/gmpv8/gmpv8.py b/gvm/protocols/gmpv8/gmpv8.py index 34db42d6a..40794e5ef 100644 --- a/gvm/protocols/gmpv8/gmpv8.py +++ b/gvm/protocols/gmpv8/gmpv8.py @@ -46,7 +46,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) @@ -69,7 +69,7 @@ def create_credential( community: Optional[str] = None, privacy_algorithm: Optional[SnmpPrivacyAlgorithm] = None, privacy_password: Optional[str] = None, - public_key: Optional[str] = None + public_key: Optional[str] = None, ) -> Any: """Create a new credential @@ -319,7 +319,7 @@ def modify_credential( community: Optional[str] = None, privacy_algorithm: Optional[SnmpPrivacyAlgorithm] = None, privacy_password: Optional[str] = None, - public_key: Optional[str] = None + public_key: Optional[str] = None, ) -> Any: """Modifies an existing credential. @@ -426,7 +426,7 @@ def create_tag( resource_ids: Optional[List[str]] = None, value: Optional[str] = None, comment: Optional[str] = None, - active: Optional[bool] = None + active: Optional[bool] = None, ) -> Any: """Create a tag. @@ -509,7 +509,7 @@ def modify_tag( resource_action: Optional[str] = None, resource_type: Optional[EntityType] = None, resource_filter: Optional[str] = None, - resource_ids: Optional[List[str]] = None + resource_ids: Optional[List[str]] = None, ) -> Any: """Modifies an existing tag. @@ -597,7 +597,7 @@ def create_target( reverse_lookup_only: Optional[bool] = None, reverse_lookup_unify: Optional[bool] = None, port_range: Optional[str] = None, - port_list_id: Optional[str] = None + port_list_id: Optional[str] = None, ) -> Any: """Create a new target @@ -674,7 +674,7 @@ def create_ticket( result_id: str, assigned_to_user_id: str, note: str, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Create a new ticket @@ -744,7 +744,7 @@ def get_tickets( *, trash: Optional[bool] = None, filter: Optional[str] = None, - filter_id: Optional[str] = None + filter_id: Optional[str] = None, ) -> Any: """Request a list of tickets @@ -826,7 +826,7 @@ def modify_ticket( status: Optional[TicketStatus] = None, note: Optional[str] = None, assigned_to_user_id: Optional[str] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Modify a single ticket @@ -886,7 +886,7 @@ def create_filter( *, filter_type: Optional[FilterType] = None, comment: Optional[str] = None, - term: Optional[str] = None + term: Optional[str] = None, ) -> Any: """Create a new filter @@ -932,7 +932,7 @@ def modify_filter( comment: Optional[str] = None, name: Optional[str] = None, term: Optional[str] = None, - filter_type: Optional[FilterType] = None + filter_type: Optional[FilterType] = None, ) -> Any: """Modifies an existing filter. @@ -980,7 +980,7 @@ def create_schedule( icalendar: str, timezone: str, *, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Create a new schedule based in `iCalendar`_ data. @@ -1060,7 +1060,7 @@ def modify_schedule( name: Optional[str] = None, icalendar: Optional[str] = None, timezone: Optional[str] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Modifies an existing schedule diff --git a/gvm/protocols/gmpv9/__init__.py b/gvm/protocols/gmpv9/__init__.py index 44d2f0625..345c224f2 100644 --- a/gvm/protocols/gmpv9/__init__.py +++ b/gvm/protocols/gmpv9/__init__.py @@ -47,7 +47,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) diff --git a/gvm/protocols/gmpv9/gmpv9.py b/gvm/protocols/gmpv9/gmpv9.py index 6844f470d..e8d82a9b5 100644 --- a/gvm/protocols/gmpv9/gmpv9.py +++ b/gvm/protocols/gmpv9/gmpv9.py @@ -146,7 +146,7 @@ def __init__( self, connection: GvmConnection, *, - transform: Optional[Callable[[str], Any]] = None + transform: Optional[Callable[[str], Any]] = None, ): super().__init__(connection, transform=transform) @@ -164,7 +164,7 @@ def create_alert( event_data: Optional[dict] = None, condition_data: Optional[dict] = None, filter_id: Optional[int] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Create a new alert @@ -281,7 +281,7 @@ def create_audit( comment: Optional[str] = None, schedule_periods: Optional[int] = None, observers: Optional[List[str]] = None, - preferences: Optional[dict] = None + preferences: Optional[dict] = None, ) -> Any: """Create a new audit task @@ -375,7 +375,7 @@ def create_permission( *, resource_id: Optional[str] = None, resource_type: Optional[EntityType] = None, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: """Create a new permission @@ -484,7 +484,7 @@ def create_tag( resource_ids: Optional[List[str]] = None, value: Optional[str] = None, comment: Optional[str] = None, - active: Optional[bool] = None + active: Optional[bool] = None, ) -> Any: """Create a tag. @@ -575,7 +575,7 @@ def create_task( comment: Optional[str] = None, schedule_periods: Optional[int] = None, observers: Optional[List[str]] = None, - preferences: Optional[dict] = None + preferences: Optional[dict] = None, ) -> Any: """Create a new scan task @@ -621,7 +621,7 @@ def create_tls_certificate( certificate: str, *, comment: Optional[str] = None, - trust: Optional[bool] = None + trust: Optional[bool] = None, ) -> Any: """Create a new TLS certificate @@ -672,7 +672,7 @@ def get_aggregates( first_group: Optional[int] = None, max_groups: Optional[int] = None, mode: Optional[int] = None, - **kwargs + **kwargs, ) -> Any: """Request aggregated information on a resource / entity type @@ -827,7 +827,7 @@ def get_tls_certificates( filter: Optional[str] = None, filter_id: Optional[str] = None, include_certificate_data: Optional[bool] = None, - details: Optional[bool] = None + details: Optional[bool] = None, ) -> Any: """Request a list of TLS certificates @@ -894,7 +894,7 @@ def modify_alert( condition: Optional[AlertCondition] = None, condition_data: Optional[dict] = None, method: Optional[AlertMethod] = None, - method_data: Optional[dict] = None + method_data: Optional[dict] = None, ) -> Any: """Modifies an existing alert. @@ -1005,7 +1005,7 @@ def modify_audit( comment: Optional[str] = None, alert_ids: Optional[List[str]] = None, observers: Optional[List[str]] = None, - preferences: Optional[dict] = None + preferences: Optional[dict] = None, ) -> Any: """Modifies an existing task. @@ -1053,7 +1053,7 @@ def modify_permission( resource_id: Optional[str] = None, resource_type: Optional[EntityType] = None, subject_id: Optional[str] = None, - subject_type: Optional[PermissionSubjectType] = None + subject_type: Optional[PermissionSubjectType] = None, ) -> Any: """Modifies an existing permission. @@ -1140,7 +1140,7 @@ def modify_policy_set_nvt_preference( name: str, nvt_oid: str, *, - value: Optional[str] = None + value: Optional[str] = None, ) -> Any: """Modifies the nvt preferences of an existing policy. @@ -1152,10 +1152,7 @@ def modify_policy_set_nvt_preference( and to use the default instead. """ self.modify_config_set_nvt_preference( - config_id=policy_id, - name=name, - nvt_oid=nvt_oid, - value=value, + config_id=policy_id, name=name, nvt_oid=nvt_oid, value=value ) def modify_policy_set_name(self, policy_id: str, name: str) -> Any: @@ -1165,10 +1162,7 @@ def modify_policy_set_name(self, policy_id: str, name: str) -> Any: config_id: UUID of policy to modify. name: New name for the config. """ - self.modify_config_set_name( - config_id=policy_id, - name=name, - ) + self.modify_config_set_name(config_id=policy_id, name=name) def modify_policy_set_comment( self, policy_id: str, comment: Optional[str] = "" @@ -1179,10 +1173,7 @@ def modify_policy_set_comment( policy_id: UUID of policy to modify. comment: Comment to set on a config. Default: '' """ - self.modify_config_set_comment( - config_id=policy_id, - comment=comment, - ) + self.modify_config_set_comment(config_id=policy_id, comment=comment) def modify_policy_set_scanner_preference( self, policy_id: str, name: str, *, value: Optional[str] = None @@ -1197,9 +1188,7 @@ def modify_policy_set_scanner_preference( """ self.modify_config_set_scanner_preference( - config_id=policy_id, - name=name, - value=value, + config_id=policy_id, name=name, value=value ) def modify_policy_set_nvt_selection( @@ -1216,9 +1205,7 @@ def modify_policy_set_nvt_selection( nvt_oids: List of NVTs to select for the family. """ self.modify_config_set_nvt_selection( - config_id=policy_id, - family=family, - nvt_oids=nvt_oids, + config_id=policy_id, family=family, nvt_oids=nvt_oids ) def modify_policy_set_family_selection( @@ -1226,7 +1213,7 @@ def modify_policy_set_family_selection( policy_id: str, families: List[Tuple[str, bool, bool]], *, - auto_add_new_families: Optional[bool] = True + auto_add_new_families: Optional[bool] = True, ) -> Any: """ Selected the NVTs of a policy at a family level. @@ -1258,7 +1245,7 @@ def modify_tag( resource_action: Optional[str] = None, resource_type: Optional[EntityType] = None, resource_filter: Optional[str] = None, - resource_ids: Optional[List[str]] = None + resource_ids: Optional[List[str]] = None, ) -> Any: """Modifies an existing tag. @@ -1339,7 +1326,7 @@ def modify_tls_certificate( *, name: Optional[str] = None, comment: Optional[str] = None, - trust: Optional[bool] = None + trust: Optional[bool] = None, ) -> Any: """Modifies an existing TLS certificate. @@ -1402,7 +1389,7 @@ def get_configs( details: Optional[bool] = None, families: Optional[bool] = None, preferences: Optional[bool] = None, - tasks: Optional[bool] = None + tasks: Optional[bool] = None, ) -> Any: """Request a list of scan configs @@ -1441,7 +1428,7 @@ def get_policies( details: Optional[bool] = None, families: Optional[bool] = None, preferences: Optional[bool] = None, - trash: Optional[bool] = None + trash: Optional[bool] = None, ) -> Any: """Request a list of policies @@ -1508,7 +1495,7 @@ def get_tasks( filter_id: Optional[str] = None, trash: Optional[bool] = None, details: Optional[bool] = None, - schedules_only: Optional[bool] = None + schedules_only: Optional[bool] = None, ) -> Any: """Request a list of tasks @@ -1539,7 +1526,7 @@ def get_audits( filter_id: Optional[str] = None, trash: Optional[bool] = None, details: Optional[bool] = None, - schedules_only: Optional[bool] = None + schedules_only: Optional[bool] = None, ) -> Any: """Request a list of audits @@ -1694,7 +1681,7 @@ def __create_task( comment: Optional[str] = None, schedule_periods: Optional[int] = None, observers: Optional[List[str]] = None, - preferences: Optional[dict] = None + preferences: Optional[dict] = None, ) -> Any: if not name: raise RequiredArgument(function=function, argument='name') @@ -1797,7 +1784,7 @@ def __create_config( usage_type: UsageType, function: str, *, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: if not name: raise RequiredArgument(function=function, argument='name') @@ -1820,7 +1807,7 @@ def __create_config_from_osp_scanner( usage_type: UsageType, function: str, *, - comment: Optional[str] = None + comment: Optional[str] = None, ) -> Any: if not name: raise RequiredArgument(function=function, argument='name') @@ -1846,7 +1833,7 @@ def __get_configs( details: Optional[bool] = None, families: Optional[bool] = None, preferences: Optional[bool] = None, - tasks: Optional[bool] = None + tasks: Optional[bool] = None, ) -> Any: cmd = XmlCommand("get_configs") cmd.set_attribute("usage_type", usage_type.value) @@ -1875,7 +1862,7 @@ def __get_config( config_id: str, usage_type: UsageType, *, - tasks: Optional[bool] = None + tasks: Optional[bool] = None, ) -> Any: if not config_id: raise RequiredArgument( @@ -1903,7 +1890,7 @@ def __get_tasks( filter_id: Optional[str] = None, trash: Optional[bool] = None, details: Optional[bool] = None, - schedules_only: Optional[bool] = None + schedules_only: Optional[bool] = None, ) -> Any: cmd = XmlCommand("get_tasks") cmd.set_attribute("usage_type", usage_type.value) diff --git a/gvm/protocols/gmpv9/types.py b/gvm/protocols/gmpv9/types.py index 9ff33f8d9..4c38abf4f 100644 --- a/gvm/protocols/gmpv9/types.py +++ b/gvm/protocols/gmpv9/types.py @@ -505,8 +505,7 @@ def get_sort_order_from_string( return SortOrder[sort_order.upper()] except KeyError: raise InvalidArgument( - argument='sort_order', - function=get_sort_order_from_string.__name__, + argument='sort_order', function=get_sort_order_from_string.__name__ ) from None diff --git a/gvm/xml.py b/gvm/xml.py index d96ba8619..e1d91816d 100644 --- a/gvm/xml.py +++ b/gvm/xml.py @@ -44,7 +44,7 @@ def add_element( name: str, text: Optional[str] = None, *, - attrs: Optional[dict] = None + attrs: Optional[dict] = None, ): node = etree.SubElement(self._element, name, attrib=attrs) node.text = text diff --git a/poetry.lock b/poetry.lock index f1789af5d..a635263b1 100644 --- a/poetry.lock +++ b/poetry.lock @@ -78,11 +78,11 @@ pytz = ">=2015.7" [[package]] name = "bcrypt" -version = "3.1.7" +version = "3.2.0" description = "Modern password hashing for your software and your servers" category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.6" [package.dependencies] cffi = ">=1.1" @@ -90,6 +90,7 @@ six = ">=1.4.1" [package.extras] tests = ["pytest (>=3.2.1,!=3.3.0)"] +typecheck = ["mypy"] [[package]] name = "black" @@ -102,7 +103,6 @@ python-versions = ">=3.6" [package.dependencies] appdirs = "*" click = ">=7.1.2" -dataclasses = {version = ">=0.6", markers = "python_version < \"3.7\""} mypy-extensions = ">=0.4.3" pathspec = ">=0.6,<1" regex = ">=2020.1.8" @@ -135,11 +135,11 @@ pycparser = "*" [[package]] name = "chardet" -version = "3.0.4" +version = "4.0.0" description = "Universal encoding detector for Python 2 and 3" category = "dev" optional = false -python-versions = "*" +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "click" @@ -181,14 +181,14 @@ toml = ["toml"] [[package]] name = "cryptography" -version = "3.2.1" +version = "3.3.1" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." category = "main" optional = false -python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*" +python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*" [package.dependencies] -cffi = ">=1.8,<1.11.3 || >1.11.3" +cffi = ">=1.12" six = ">=1.4.1" [package.extras] @@ -198,14 +198,6 @@ pep8test = ["black", "flake8", "flake8-import-order", "pep8-naming"] ssh = ["bcrypt (>=3.1.5)"] test = ["pytest (>=3.6.0,!=3.9.0,!=3.9.1,!=3.9.2)", "pretend", "iso8601", "pytz", "hypothesis (>=1.11.4,!=3.79.2)"] -[[package]] -name = "dataclasses" -version = "0.7" -description = "A backport of the dataclasses module for Python 3.6" -category = "dev" -optional = false -python-versions = ">=3.6, <3.7" - [[package]] name = "defusedxml" version = "0.6.0" @@ -240,17 +232,16 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "isort" -version = "4.3.21" +version = "5.7.0" description = "A Python utility / library to sort Python imports." category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.6,<4.0" [package.extras] -pipfile = ["pipreqs", "requirementslib"] -pyproject = ["toml"] -requirements = ["pipreqs", "pip-api"] -xdg_home = ["appdirs (>=1.4.0)"] +pipfile_deprecated_finder = ["pipreqs", "requirementslib"] +requirements_deprecated_finder = ["pipreqs", "pip-api"] +colors = ["colorama (>=0.4.3,<0.5.0)"] [[package]] name = "jinja2" @@ -352,7 +343,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" [[package]] name = "pontos" -version = "0.3.0" +version = "0.3.1" description = "Common utilities and tools maintained by Greenbone Networks" category = "dev" optional = false @@ -470,7 +461,7 @@ python-versions = "*" [[package]] name = "sphinx" -version = "3.4.1" +version = "3.4.2" description = "Python documentation generator" category = "dev" optional = false @@ -640,8 +631,8 @@ python-versions = "*" [metadata] lock-version = "1.1" -python-versions = "^3.5.2" -content-hash = "b6e07b32f0d46ac0af636c02dfc6acfa817713939723fbae34d1895a23daab8e" +python-versions = "^3.7.0" +content-hash = "472fb78d5a666e22d67d3b77b7705ede60f330da0a714114827cca114592a1ef" [metadata.files] alabaster = [ @@ -673,27 +664,16 @@ babel = [ {file = "Babel-2.9.0.tar.gz", hash = "sha256:da031ab54472314f210b0adcff1588ee5d1d1d0ba4dbd07b94dba82bde791e05"}, ] bcrypt = [ - {file = "bcrypt-3.1.7-cp27-cp27m-macosx_10_6_intel.whl", hash = "sha256:d7bdc26475679dd073ba0ed2766445bb5b20ca4793ca0db32b399dccc6bc84b7"}, - {file = "bcrypt-3.1.7-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:69361315039878c0680be456640f8705d76cb4a3a3fe1e057e0f261b74be4b31"}, - {file = "bcrypt-3.1.7-cp27-cp27m-win32.whl", hash = "sha256:5432dd7b34107ae8ed6c10a71b4397f1c853bd39a4d6ffa7e35f40584cffd161"}, - {file = "bcrypt-3.1.7-cp27-cp27m-win_amd64.whl", hash = "sha256:9fe92406c857409b70a38729dbdf6578caf9228de0aef5bc44f859ffe971a39e"}, - {file = "bcrypt-3.1.7-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:763669a367869786bb4c8fcf731f4175775a5b43f070f50f46f0b59da45375d0"}, - {file = "bcrypt-3.1.7-cp34-abi3-macosx_10_6_intel.whl", hash = "sha256:a190f2a5dbbdbff4b74e3103cef44344bc30e61255beb27310e2aec407766052"}, - {file = "bcrypt-3.1.7-cp34-abi3-manylinux1_x86_64.whl", hash = "sha256:c9457fa5c121e94a58d6505cadca8bed1c64444b83b3204928a866ca2e599105"}, - {file = "bcrypt-3.1.7-cp34-cp34m-win32.whl", hash = "sha256:8b10acde4e1919d6015e1df86d4c217d3b5b01bb7744c36113ea43d529e1c3de"}, - {file = "bcrypt-3.1.7-cp34-cp34m-win_amd64.whl", hash = "sha256:cb93f6b2ab0f6853550b74e051d297c27a638719753eb9ff66d1e4072be67133"}, - {file = "bcrypt-3.1.7-cp35-abi3-manylinux2014_aarch64.whl", hash = "sha256:436a487dec749bca7e6e72498a75a5fa2433bda13bac91d023e18df9089ae0b8"}, - {file = "bcrypt-3.1.7-cp35-cp35m-win32.whl", hash = "sha256:6fe49a60b25b584e2f4ef175b29d3a83ba63b3a4df1b4c0605b826668d1b6be5"}, - {file = "bcrypt-3.1.7-cp35-cp35m-win_amd64.whl", hash = "sha256:a595c12c618119255c90deb4b046e1ca3bcfad64667c43d1166f2b04bc72db09"}, - {file = "bcrypt-3.1.7-cp36-cp36m-win32.whl", hash = "sha256:74a015102e877d0ccd02cdeaa18b32aa7273746914a6c5d0456dd442cb65b99c"}, - {file = "bcrypt-3.1.7-cp36-cp36m-win_amd64.whl", hash = "sha256:0258f143f3de96b7c14f762c770f5fc56ccd72f8a1857a451c1cd9a655d9ac89"}, - {file = "bcrypt-3.1.7-cp37-cp37m-win32.whl", hash = "sha256:19a4b72a6ae5bb467fea018b825f0a7d917789bcfe893e53f15c92805d187294"}, - {file = "bcrypt-3.1.7-cp37-cp37m-win_amd64.whl", hash = "sha256:ff032765bb8716d9387fd5376d987a937254b0619eff0972779515b5c98820bc"}, - {file = "bcrypt-3.1.7-cp38-cp38-win32.whl", hash = "sha256:ce4e4f0deb51d38b1611a27f330426154f2980e66582dc5f438aad38b5f24fc1"}, - {file = "bcrypt-3.1.7-cp38-cp38-win_amd64.whl", hash = "sha256:6305557019906466fc42dbc53b46da004e72fd7a551c044a827e572c82191752"}, - {file = "bcrypt-3.1.7.tar.gz", hash = "sha256:0b0069c752ec14172c5f78208f1863d7ad6755a6fae6fe76ec2c80d13be41e42"}, + {file = "bcrypt-3.2.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c95d4cbebffafcdd28bd28bb4e25b31c50f6da605c81ffd9ad8a3d1b2ab7b1b6"}, + {file = "bcrypt-3.2.0-cp36-abi3-manylinux1_x86_64.whl", hash = "sha256:63d4e3ff96188e5898779b6057878fecf3f11cfe6ec3b313ea09955d587ec7a7"}, + {file = "bcrypt-3.2.0-cp36-abi3-manylinux2010_x86_64.whl", hash = "sha256:cd1ea2ff3038509ea95f687256c46b79f5fc382ad0aa3664d200047546d511d1"}, + {file = "bcrypt-3.2.0-cp36-abi3-manylinux2014_aarch64.whl", hash = "sha256:cdcdcb3972027f83fe24a48b1e90ea4b584d35f1cc279d76de6fc4b13376239d"}, + {file = "bcrypt-3.2.0-cp36-abi3-win32.whl", hash = "sha256:a67fb841b35c28a59cebed05fbd3e80eea26e6d75851f0574a9273c80f3e9b55"}, + {file = "bcrypt-3.2.0-cp36-abi3-win_amd64.whl", hash = "sha256:81fec756feff5b6818ea7ab031205e1d323d8943d237303baca2c5f9c7846f34"}, + {file = "bcrypt-3.2.0.tar.gz", hash = "sha256:5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29"}, ] black = [ + {file = "black-20.8b1-py3-none-any.whl", hash = "sha256:70b62ef1527c950db59062cda342ea224d772abdf6adc58b86a45421bab20a6b"}, {file = "black-20.8b1.tar.gz", hash = "sha256:1c02557aa099101b9d21496f8a914e9ed2222ef70336404eeeac8edba836fbea"}, ] certifi = [ @@ -722,13 +702,11 @@ cffi = [ {file = "cffi-1.14.4-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a7711edca4dcef1a75257b50a2fbfe92a65187c47dab5a0f1b9b332c5919a3fb"}, {file = "cffi-1.14.4-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:00e28066507bfc3fe865a31f325c8391a1ac2916219340f87dfad602c3e48e5d"}, {file = "cffi-1.14.4-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:798caa2a2384b1cbe8a2a139d80734c9db54f9cc155c99d7cc92441a23871c03"}, - {file = "cffi-1.14.4-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:a5ed8c05548b54b998b9498753fb9cadbfd92ee88e884641377d8a8b291bcc01"}, {file = "cffi-1.14.4-cp37-cp37m-win32.whl", hash = "sha256:00a1ba5e2e95684448de9b89888ccd02c98d512064b4cb987d48f4b40aa0421e"}, {file = "cffi-1.14.4-cp37-cp37m-win_amd64.whl", hash = "sha256:9cc46bc107224ff5b6d04369e7c595acb700c3613ad7bcf2e2012f62ece80c35"}, {file = "cffi-1.14.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:df5169c4396adc04f9b0a05f13c074df878b6052430e03f50e68adf3a57aa28d"}, {file = "cffi-1.14.4-cp38-cp38-manylinux1_i686.whl", hash = "sha256:9ffb888f19d54a4d4dfd4b3f29bc2c16aa4972f1c2ab9c4ab09b8ab8685b9c2b"}, {file = "cffi-1.14.4-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:8d6603078baf4e11edc4168a514c5ce5b3ba6e3e9c374298cb88437957960a53"}, - {file = "cffi-1.14.4-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:d5ff0621c88ce83a28a10d2ce719b2ee85635e85c515f12bac99a95306da4b2e"}, {file = "cffi-1.14.4-cp38-cp38-win32.whl", hash = "sha256:b4e248d1087abf9f4c10f3c398896c87ce82a9856494a7155823eb45a892395d"}, {file = "cffi-1.14.4-cp38-cp38-win_amd64.whl", hash = "sha256:ec80dc47f54e6e9a78181ce05feb71a0353854cc26999db963695f950b5fb375"}, {file = "cffi-1.14.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:840793c68105fe031f34d6a086eaea153a0cd5c491cde82a74b420edd0a2b909"}, @@ -739,8 +717,8 @@ cffi = [ {file = "cffi-1.14.4.tar.gz", hash = "sha256:1a465cbe98a7fd391d47dce4b8f7e5b921e6cd805ef421d04f5f66ba8f06086c"}, ] chardet = [ - {file = "chardet-3.0.4-py2.py3-none-any.whl", hash = "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691"}, - {file = "chardet-3.0.4.tar.gz", hash = "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"}, + {file = "chardet-4.0.0-py2.py3-none-any.whl", hash = "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5"}, + {file = "chardet-4.0.0.tar.gz", hash = "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa"}, ] click = [ {file = "click-7.1.2-py2.py3-none-any.whl", hash = "sha256:dacca89f4bfadd5de3d7489b7c8a566eee0d3676333fbb50030263894c38c0dc"}, @@ -806,32 +784,20 @@ coverage = [ {file = "coverage-5.3.1.tar.gz", hash = "sha256:38f16b1317b8dd82df67ed5daa5f5e7c959e46579840d77a67a4ceb9cef0a50b"}, ] cryptography = [ - {file = "cryptography-3.2.1-cp27-cp27m-macosx_10_10_x86_64.whl", hash = "sha256:6dc59630ecce8c1f558277ceb212c751d6730bd12c80ea96b4ac65637c4f55e7"}, - {file = "cryptography-3.2.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:75e8e6684cf0034f6bf2a97095cb95f81537b12b36a8fedf06e73050bb171c2d"}, - {file = "cryptography-3.2.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:4e7268a0ca14536fecfdf2b00297d4e407da904718658c1ff1961c713f90fd33"}, - {file = "cryptography-3.2.1-cp27-cp27m-win32.whl", hash = "sha256:7117319b44ed1842c617d0a452383a5a052ec6aa726dfbaffa8b94c910444297"}, - {file = "cryptography-3.2.1-cp27-cp27m-win_amd64.whl", hash = "sha256:a733671100cd26d816eed39507e585c156e4498293a907029969234e5e634bc4"}, - {file = "cryptography-3.2.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:a75f306a16d9f9afebfbedc41c8c2351d8e61e818ba6b4c40815e2b5740bb6b8"}, - {file = "cryptography-3.2.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:5849d59358547bf789ee7e0d7a9036b2d29e9a4ddf1ce5e06bb45634f995c53e"}, - {file = "cryptography-3.2.1-cp35-abi3-macosx_10_10_x86_64.whl", hash = "sha256:bd717aa029217b8ef94a7d21632a3bb5a4e7218a4513d2521c2a2fd63011e98b"}, - {file = "cryptography-3.2.1-cp35-abi3-manylinux1_x86_64.whl", hash = "sha256:efe15aca4f64f3a7ea0c09c87826490e50ed166ce67368a68f315ea0807a20df"}, - {file = "cryptography-3.2.1-cp35-abi3-manylinux2010_x86_64.whl", hash = "sha256:32434673d8505b42c0de4de86da8c1620651abd24afe91ae0335597683ed1b77"}, - {file = "cryptography-3.2.1-cp35-abi3-manylinux2014_aarch64.whl", hash = "sha256:7b8d9d8d3a9bd240f453342981f765346c87ade811519f98664519696f8e6ab7"}, - {file = "cryptography-3.2.1-cp35-cp35m-win32.whl", hash = "sha256:d3545829ab42a66b84a9aaabf216a4dce7f16dbc76eb69be5c302ed6b8f4a29b"}, - {file = "cryptography-3.2.1-cp35-cp35m-win_amd64.whl", hash = "sha256:a4e27ed0b2504195f855b52052eadcc9795c59909c9d84314c5408687f933fc7"}, - {file = "cryptography-3.2.1-cp36-abi3-win32.whl", hash = "sha256:13b88a0bd044b4eae1ef40e265d006e34dbcde0c2f1e15eb9896501b2d8f6c6f"}, - {file = "cryptography-3.2.1-cp36-abi3-win_amd64.whl", hash = "sha256:07ca431b788249af92764e3be9a488aa1d39a0bc3be313d826bbec690417e538"}, - {file = "cryptography-3.2.1-cp36-cp36m-win32.whl", hash = "sha256:a035a10686532b0587d58a606004aa20ad895c60c4d029afa245802347fab57b"}, - {file = "cryptography-3.2.1-cp36-cp36m-win_amd64.whl", hash = "sha256:d26a2557d8f9122f9bf445fc7034242f4375bd4e95ecda007667540270965b13"}, - {file = "cryptography-3.2.1-cp37-cp37m-win32.whl", hash = "sha256:545a8550782dda68f8cdc75a6e3bf252017aa8f75f19f5a9ca940772fc0cb56e"}, - {file = "cryptography-3.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:55d0b896631412b6f0c7de56e12eb3e261ac347fbaa5d5e705291a9016e5f8cb"}, - {file = "cryptography-3.2.1-cp38-cp38-win32.whl", hash = "sha256:3cd75a683b15576cfc822c7c5742b3276e50b21a06672dc3a800a2d5da4ecd1b"}, - {file = "cryptography-3.2.1-cp38-cp38-win_amd64.whl", hash = "sha256:d25cecbac20713a7c3bc544372d42d8eafa89799f492a43b79e1dfd650484851"}, - {file = "cryptography-3.2.1.tar.gz", hash = "sha256:d3d5e10be0cf2a12214ddee45c6bd203dab435e3d83b4560c03066eda600bfe3"}, -] -dataclasses = [ - {file = "dataclasses-0.7-py3-none-any.whl", hash = "sha256:3459118f7ede7c8bea0fe795bff7c6c2ce287d01dd226202f7c9ebc0610a7836"}, - {file = "dataclasses-0.7.tar.gz", hash = "sha256:494a6dcae3b8bcf80848eea2ef64c0cc5cd307ffc263e17cdf42f3e5420808e6"}, + {file = "cryptography-3.3.1-cp27-cp27m-macosx_10_10_x86_64.whl", hash = "sha256:c366df0401d1ec4e548bebe8f91d55ebcc0ec3137900d214dd7aac8427ef3030"}, + {file = "cryptography-3.3.1-cp27-cp27m-manylinux1_x86_64.whl", hash = "sha256:9f6b0492d111b43de5f70052e24c1f0951cb9e6022188ebcb1cc3a3d301469b0"}, + {file = "cryptography-3.3.1-cp27-cp27m-manylinux2010_x86_64.whl", hash = "sha256:a69bd3c68b98298f490e84519b954335154917eaab52cf582fa2c5c7efc6e812"}, + {file = "cryptography-3.3.1-cp27-cp27m-win32.whl", hash = "sha256:84ef7a0c10c24a7773163f917f1cb6b4444597efd505a8aed0a22e8c4780f27e"}, + {file = "cryptography-3.3.1-cp27-cp27m-win_amd64.whl", hash = "sha256:594a1db4511bc4d960571536abe21b4e5c3003e8750ab8365fafce71c5d86901"}, + {file = "cryptography-3.3.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:0003a52a123602e1acee177dc90dd201f9bb1e73f24a070db7d36c588e8f5c7d"}, + {file = "cryptography-3.3.1-cp27-cp27mu-manylinux2010_x86_64.whl", hash = "sha256:83d9d2dfec70364a74f4e7c70ad04d3ca2e6a08b703606993407bf46b97868c5"}, + {file = "cryptography-3.3.1-cp36-abi3-macosx_10_10_x86_64.whl", hash = "sha256:dc42f645f8f3a489c3dd416730a514e7a91a59510ddaadc09d04224c098d3302"}, + {file = "cryptography-3.3.1-cp36-abi3-manylinux1_x86_64.whl", hash = "sha256:788a3c9942df5e4371c199d10383f44a105d67d401fb4304178020142f020244"}, + {file = "cryptography-3.3.1-cp36-abi3-manylinux2010_x86_64.whl", hash = "sha256:69e836c9e5ff4373ce6d3ab311c1a2eed274793083858d3cd4c7d12ce20d5f9c"}, + {file = "cryptography-3.3.1-cp36-abi3-manylinux2014_aarch64.whl", hash = "sha256:9e21301f7a1e7c03dbea73e8602905a4ebba641547a462b26dd03451e5769e7c"}, + {file = "cryptography-3.3.1-cp36-abi3-win32.whl", hash = "sha256:b4890d5fb9b7a23e3bf8abf5a8a7da8e228f1e97dc96b30b95685df840b6914a"}, + {file = "cryptography-3.3.1-cp36-abi3-win_amd64.whl", hash = "sha256:0e85aaae861d0485eb5a79d33226dd6248d2a9f133b81532c8f5aae37de10ff7"}, + {file = "cryptography-3.3.1.tar.gz", hash = "sha256:7e177e4bea2de937a584b13645cab32f25e3d96fc0bc4a4cf99c27dc77682be6"}, ] defusedxml = [ {file = "defusedxml-0.6.0-py2.py3-none-any.whl", hash = "sha256:6687150770438374ab581bb7a1b327a847dd9c5749e396102de3fad4e8a3ef93"}, @@ -850,8 +816,8 @@ imagesize = [ {file = "imagesize-1.2.0.tar.gz", hash = "sha256:b1f6b5a4eab1f73479a50fb79fcf729514a900c341d8503d62a62dbc4127a2b1"}, ] isort = [ - {file = "isort-4.3.21-py2.py3-none-any.whl", hash = "sha256:6e811fcb295968434526407adb8796944f1988c5b65e8139058f2014cbe100fd"}, - {file = "isort-4.3.21.tar.gz", hash = "sha256:54da7e92468955c4fceacd0c86bd0ec997b0e1ee80d97f67c35a78b719dccab1"}, + {file = "isort-5.7.0-py3-none-any.whl", hash = "sha256:fff4f0c04e1825522ce6949973e83110a6e907750cd92d128b0d14aaaadbffdc"}, + {file = "isort-5.7.0.tar.gz", hash = "sha256:c729845434366216d320e936b8ad6f9d681aab72dc7cbc2d51bedc3582f3ad1e"}, ] jinja2 = [ {file = "Jinja2-2.11.2-py2.py3-none-any.whl", hash = "sha256:f0a4641d3cf955324a89c04f3d94663aa4d638abe8f733ecd3582848e1c37035"}, @@ -975,8 +941,8 @@ pathspec = [ {file = "pathspec-0.8.1.tar.gz", hash = "sha256:86379d6b86d75816baba717e64b1a3a3469deb93bb76d613c9ce79edc5cb68fd"}, ] pontos = [ - {file = "pontos-0.3.0-py3-none-any.whl", hash = "sha256:78b56667e56916d9b1bddef97571f4229e4b9f9b19f90214192b5abadb798a91"}, - {file = "pontos-0.3.0.tar.gz", hash = "sha256:c040e32acc3bcd123b351d76ddfcbb320292621db89e5c507522903ae209000a"}, + {file = "pontos-0.3.1-py3-none-any.whl", hash = "sha256:b210fbada72003326537f0e7ebd105614b6a9c5d3cc0aee0d3f2e8b4da00322f"}, + {file = "pontos-0.3.1.tar.gz", hash = "sha256:7a9e0f5abbc0de0ee973e9b23c70385dd6b9833a74a4c16193141ebeae76e198"}, ] pycparser = [ {file = "pycparser-2.20-py2.py3-none-any.whl", hash = "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705"}, @@ -998,8 +964,6 @@ pynacl = [ {file = "PyNaCl-1.4.0-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:7757ae33dae81c300487591c68790dfb5145c7d03324000433d9a2c141f82af7"}, {file = "PyNaCl-1.4.0-cp35-abi3-macosx_10_10_x86_64.whl", hash = "sha256:757250ddb3bff1eecd7e41e65f7f833a8405fede0194319f87899690624f2122"}, {file = "PyNaCl-1.4.0-cp35-abi3-manylinux1_x86_64.whl", hash = "sha256:30f9b96db44e09b3304f9ea95079b1b7316b2b4f3744fe3aaecccd95d547063d"}, - {file = "PyNaCl-1.4.0-cp35-abi3-win32.whl", hash = "sha256:4e10569f8cbed81cb7526ae137049759d2a8d57726d52c1a000a3ce366779634"}, - {file = "PyNaCl-1.4.0-cp35-abi3-win_amd64.whl", hash = "sha256:c914f78da4953b33d4685e3cdc7ce63401247a21425c16a39760e282075ac4a6"}, {file = "PyNaCl-1.4.0-cp35-cp35m-win32.whl", hash = "sha256:06cbb4d9b2c4bd3c8dc0d267416aaed79906e7b33f114ddbf0911969794b1cc4"}, {file = "PyNaCl-1.4.0-cp35-cp35m-win_amd64.whl", hash = "sha256:511d269ee845037b95c9781aa702f90ccc36036f95d0f31373a6a79bd8242e25"}, {file = "PyNaCl-1.4.0-cp36-cp36m-win32.whl", hash = "sha256:11335f09060af52c97137d4ac54285bcb7df0cef29014a1a4efe64ac065434c4"}, @@ -1074,8 +1038,8 @@ snowballstemmer = [ {file = "snowballstemmer-2.0.0.tar.gz", hash = "sha256:df3bac3df4c2c01363f3dd2cfa78cce2840a79b9f1c2d2de9ce8d31683992f52"}, ] sphinx = [ - {file = "Sphinx-3.4.1-py3-none-any.whl", hash = "sha256:aeef652b14629431c82d3fe994ce39ead65b3fe87cf41b9a3714168ff8b83376"}, - {file = "Sphinx-3.4.1.tar.gz", hash = "sha256:e450cb205ff8924611085183bf1353da26802ae73d9251a8fcdf220a8f8712ef"}, + {file = "Sphinx-3.4.2-py3-none-any.whl", hash = "sha256:b8aa4eb5502c53d3b5ca13a07abeedacd887f7770c198952fd5b9530d973e767"}, + {file = "Sphinx-3.4.2.tar.gz", hash = "sha256:77dec5ac77ca46eee54f59cf477780f4fb23327b3339ef39c8471abb829c1285"}, ] sphinx-autodoc-typehints = [ {file = "sphinx-autodoc-typehints-1.11.1.tar.gz", hash = "sha256:244ba6d3e2fdb854622f643c7763d6f95b6886eba24bec28e86edf205e4ddb20"}, diff --git a/pyproject.toml b/pyproject.toml index 929757bf8..d614ed1e7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,10 +18,9 @@ classifiers = [ "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Environment :: Console", "Intended Audience :: Developers", - "Programming Language :: Python :: 3.5", - "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", "Operating System :: OS Independent", "Topic :: Software Development :: Libraries :: Python Modules", ] @@ -31,7 +30,7 @@ packages = [ ] [tool.poetry.dependencies] -python = "^3.5.2" +python = "^3.7.0" paramiko = "^2.7.1" lxml = "^4.5.0" defusedxml = "^0.6.0" @@ -44,13 +43,13 @@ sphinx = "^3.4.1" sphinx-autodoc-typehints = "^1.11.1" autohooks = "^2.2.0" autohooks-plugin-pylint = "^1.2.0" -autohooks-plugin-black = {version = "^1.2.0", python = "^3.6"} -black = {version = "20.8b1", python = "^3.6"} -pontos = {version = "^0.3.0", python = "^3.7"} +autohooks-plugin-black = "^1.2.0" +black = "20.8b1" +pontos = "^0.3.1" [tool.black] line-length = 80 -target-version = ['py35', 'py36', 'py37', 'py38'] +target-version = ['py37', 'py38'] skip-string-normalization = true exclude = ''' /(