Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-ospd-openvas for
openSUSE:Factory checked in at 2026-03-09 16:11:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-ospd-openvas (Old)
and /work/SRC/openSUSE:Factory/.python-ospd-openvas.new.8177 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-ospd-openvas"
Mon Mar 9 16:11:23 2026 rev:4 rq:1337515 version:22.10.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-ospd-openvas/python-ospd-openvas.changes
2026-01-06 17:47:14.092168872 +0100
+++
/work/SRC/openSUSE:Factory/.python-ospd-openvas.new.8177/python-ospd-openvas.changes
2026-03-09 16:11:52.850264040 +0100
@@ -1,0 +2,6 @@
+Sun Mar 8 20:29:12 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 22.10.1:
+ * warnings from docker file (#1080) 91f89b91
+
+-------------------------------------------------------------------
Old:
----
ospd-openvas-22.10.0.tar.gz
ospd-openvas-v22.10.0.tar.gz.asc
New:
----
ospd-openvas-22.10.1.tar.gz
ospd-openvas-v22.10.1.tar.gz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-ospd-openvas.spec ++++++
--- /var/tmp/diff_new_pack.EOzxbS/_old 2026-03-09 16:11:53.450288843 +0100
+++ /var/tmp/diff_new_pack.EOzxbS/_new 2026-03-09 16:11:53.454289009 +0100
@@ -17,7 +17,7 @@
Name: python-ospd-openvas
-Version: 22.10.0
+Version: 22.10.1
Release: 0
Summary: An OSP server implementation
License: AGPL-3.0-or-later
++++++ ospd-openvas-22.10.0.tar.gz -> ospd-openvas-22.10.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/.docker/prod.Dockerfile
new/ospd-openvas-22.10.1/.docker/prod.Dockerfile
--- old/ospd-openvas-22.10.0/.docker/prod.Dockerfile 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/.docker/prod.Dockerfile 2026-01-30
14:26:26.000000000 +0100
@@ -5,7 +5,7 @@
WORKDIR /usr/local/src
RUN make build-cmds
-FROM debian:stable-slim as builder
+FROM debian:stable-slim AS builder
COPY . /source
@@ -25,9 +25,9 @@
FROM registry.community.greenbone.net/community/openvas-scanner:${VERSION}
-ENV PYTHONDONTWRITEBYTECODE 1
-ENV PYTHONUNBUFFERED 1
-ENV PIP_NO_CACHE_DIR off
+ENV PYTHONDONTWRITEBYTECODE=1
+ENV PYTHONUNBUFFERED=1
+ENV PIP_NO_CACHE_DIR=off
COPY --from=tools /usr/local/src/bin/ospd-scans /usr/local/bin/
COPY ./config/ospd-openvas.conf /etc/gvm/ospd-openvas.conf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/.github/workflows/ci-python.yml
new/ospd-openvas-22.10.1/.github/workflows/ci-python.yml
--- old/ospd-openvas-22.10.0/.github/workflows/ci-python.yml 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/.github/workflows/ci-python.yml 2026-01-30
14:26:26.000000000 +0100
@@ -18,7 +18,7 @@
- "3.11"
steps:
- - uses: actions/checkout@v5
+ - uses: actions/checkout@v6
- name: Check with black, pylint and pontos.version
uses: greenbone/actions/lint-python@v3
with:
@@ -37,7 +37,7 @@
- "3.11"
steps:
- - uses: actions/checkout@v5
+ - uses: actions/checkout@v6
- name: Install poetry and dependencies
uses: greenbone/actions/poetry@v3
with:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ospd-openvas-22.10.0/.github/workflows/codeql-analysis-python.yml
new/ospd-openvas-22.10.1/.github/workflows/codeql-analysis-python.yml
--- old/ospd-openvas-22.10.0/.github/workflows/codeql-analysis-python.yml
2025-12-22 12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/.github/workflows/codeql-analysis-python.yml
2026-01-30 14:26:26.000000000 +0100
@@ -24,7 +24,7 @@
steps:
- name: Checkout repository
- uses: actions/checkout@v5
+ uses: actions/checkout@v6
- name: Initialize CodeQL
uses: github/codeql-action/init@v4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/.github/workflows/container.yml
new/ospd-openvas-22.10.1/.github/workflows/container.yml
--- old/ospd-openvas-22.10.0/.github/workflows/container.yml 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/.github/workflows/container.yml 2026-01-30
14:26:26.000000000 +0100
@@ -14,7 +14,7 @@
runs-on: self-hosted-generic
steps:
- name: Checkout repository
- uses: actions/checkout@v5
+ uses: actions/checkout@v6
- uses: greenbone/actions/is-latest-tag@v3
id: latest
- name: Set container build options
@@ -59,7 +59,7 @@
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Set up Go modules cache
- uses: actions/cache@v3
+ uses: actions/cache@v5
with:
path: |
~/.cache/go-build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ospd-openvas-22.10.0/.github/workflows/detect-hidden-unicode.yml
new/ospd-openvas-22.10.1/.github/workflows/detect-hidden-unicode.yml
--- old/ospd-openvas-22.10.0/.github/workflows/detect-hidden-unicode.yml
1970-01-01 01:00:00.000000000 +0100
+++ new/ospd-openvas-22.10.1/.github/workflows/detect-hidden-unicode.yml
2026-01-30 14:26:26.000000000 +0100
@@ -0,0 +1,12 @@
+name: Detect hidden unicode
+
+on:
+ pull_request:
+
+jobs:
+ detect-hidden-unicode:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: greenbone/actions/detect-hidden-unicode@v3
+ with:
+ github-token: ${{ secrets.GREENBONE_BOT_TOKEN }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/.github/workflows/release.yml
new/ospd-openvas-22.10.1/.github/workflows/release.yml
--- old/ospd-openvas-22.10.0/.github/workflows/release.yml 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/.github/workflows/release.yml 2026-01-30
14:26:26.000000000 +0100
@@ -71,7 +71,7 @@
else
echo "RELEASE_REF=${{ github.base_ref }}" >> $GITHUB_ENV
fi
- - uses: actions/checkout@v5
+ - uses: actions/checkout@v6
with:
token: ${{ secrets.GREENBONE_BOT_TOKEN }}
fetch-depth: '0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ospd-openvas-22.10.0/.github/workflows/smoketests.yml
new/ospd-openvas-22.10.1/.github/workflows/smoketests.yml
--- old/ospd-openvas-22.10.0/.github/workflows/smoketests.yml 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/.github/workflows/smoketests.yml 2026-01-30
14:26:26.000000000 +0100
@@ -12,7 +12,7 @@
runs-on: 'ubuntu-latest'
steps:
- - uses: actions/checkout@v5
+ - uses: actions/checkout@v6
- uses: docker/login-action@v3
with:
username: greenbonebot
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/README.md
new/ospd-openvas-22.10.1/README.md
--- old/ospd-openvas-22.10.0/README.md 2025-12-22 12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/README.md 2026-01-30 14:26:26.000000000 +0100
@@ -17,7 +17,7 @@
### Requirements
-Python 3.7 and later is supported.
+Python 3.9 and later is supported.
`ospd-openvas` has dependencies on the following Python packages:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/docs/ospd-openvas.8
new/ospd-openvas-22.10.1/docs/ospd-openvas.8
--- old/ospd-openvas-22.10.0/docs/ospd-openvas.8 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/docs/ospd-openvas.8 2026-01-30
14:26:26.000000000 +0100
@@ -57,7 +57,7 @@
.TP
.BI "-m " SOCKET_MODE ", --socket-mode "SOCKET_MODE
-Unix file socket mode. Default: 0o700
+Unix file socket mode. Default: 0o770
.TP
.BI "--pid-file "PID_FILE
@@ -87,7 +87,7 @@
.TP
.BI "-f, --foreground"
-Run in foreground and logs all messages to console.
+Run in foreground and log all messages to console.
.TP
.BI "-l " LOG_FILE ", --log-file "LOG_FILE
@@ -148,6 +148,14 @@
Enable feed signature check.
.TP
+.BI "--notus-feed-dir "DIRECTORY
+Directory where notus feed is placed. Default: /var/lib/notus/advisories
+
+.TP
+.BI "--disable-notus-hashsum-verification "BOOLEAN
+Disable hashsum verification for notus advisories. Default: false
+
+.TP
.BI "--list-commands"
Display all protocol commands.
@@ -159,48 +167,92 @@
.I ~/.config/ospd.conf
contains these options under the section [OSPD - openvas]:
-.IP log_level
-Wished level of logging.
+.IP log_config
+Log configuration file path.
-.IP socket_mode
-This option defines the permissions on a socket.
-It must be set in octal format. E.g. socket_mode = 0o770
+.IP port
+TCP port to listen on.
+
+.IP address
+Address to listen on (this corresponds to --bind-address).
.IP unix_socket
This option specifies the socket path.
+.IP socket_mode
+This option defines the permissions on a socket.
+It must be set in octal format. E.g. socket_mode = 0o770
+
.IP pid_file
Location of the file for the process ID.
+.IP lock_file_dir
+Directory where the feed lock file is placed.
+
+.IP key_file
+Server key file.
+
+.IP cert_file
+Server cert file.
+
+.IP ca_file
+CA cert file.
+
+.IP log_level
+Desired level of logging.
+
+.IP foreground
+Set to true to run in foreground and log all messages to console.
+
.IP log_file
Path to the log file. If no log file is given, the system log
facility is used by default.
-.IP foreground
-If this option is set to yes, the daemon logs to the standard output instead
of logging
-to a file or syslog.
+.IP stream_timeout
+Set a timeout on socket operations. Default 10 seconds
.IP niceness
Start the scan with the given niceness. Default 10
-.IP stream_timeout
-Set a timeout on socket operations. Default 10 seconds
-
.IP scaninfo_store_time
Time in hours a scan is stored before being considered forgotten and being
delete from
the scan table. Default 0, disabled.
.IP max_scans
-Max. amount of parallel task that can be started. Default 0, disabled.
-
-.IP min_free_mem_scan_queue
-Minimum free memory in MB required to run the scan. If no enough free memory is
-available, the scan is queued. Default 0, disabled.
+Maximum amount of parallel task that can be started. Default 0, disabled.
.IP max_queued_scans
Maximum number allowed of queued scans before starting to reject new scans.
Default 0, disabled.
+.IP min_free_mem_scan_queue
+Minimum free memory in MB required to run the scan. If insufficient free
memory is
+available, the scan is queued. Default 0, disabled.
+
+.IP mqtt_broker_address
+Broker address to connect to for MQTT communication.
+
+.IP mqtt_broker_port
+Broker port to connect to for MQTT communication.
+
+.IP mqtt_broker_username
+Username to connect to MQTT broker for MQTT communication.
+
+.IP mqtt_broker_password
+Password to connect to MQTT broker for MQTT communication.
+
+.IP feed_updater
+Sets the method of updating the feed.
+
+.IP signature_check
+Set to true to enable feed signature check.
+
+.IP notus_feed_dir
+Directory where notus feed is placed.
+
+.IP disable_notus_hashsum_verification
+Set to true to disable hashsum verification for notus advisories.
+
.SH SEE ALSO
\fBopenvas(8)\f1, \fBgsad(8)\f1, \fBgvmd(8)\f1, \fBgreenbone-nvt-sync(8)\f1,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/ospd/config.py
new/ospd-openvas-22.10.1/ospd/config.py
--- old/ospd-openvas-22.10.0/ospd/config.py 2025-12-22 12:26:40.000000000
+0100
+++ new/ospd-openvas-22.10.1/ospd/config.py 2026-01-30 14:26:26.000000000
+0100
@@ -15,6 +15,32 @@
logger = logging.getLogger(__name__)
+booleankeys = [
+ 'foreground',
+ 'signature_check',
+ 'disable_notus_hashsum_verification',
+]
+
+
+def strtoboolean(value: str) -> bool:
+ """Convert string *value* to boolean.
+
+ "True", "yes", "on" and "1" are converted to True.
+
+ "False", "no", "off" and "0" are converted to False.
+
+ Comparison is done case insensitive.
+
+ Other values cause ValueError.
+ """
+ trues = set(element.casefold() for element in ["true", "yes", "on", "1"])
+ falses = set(element.casefold() for element in ["false", "no", "off", "0"])
+ if value.casefold() in trues:
+ return True
+ if value.casefold() in falses:
+ return False
+ raise ValueError(f"{value} could not be converted to boolean")
+
class Config:
def __init__(self, section: str = 'main') -> None:
@@ -29,7 +55,11 @@
with path.open() as f:
parser.read_file(f)
- self._defaults.update(parser.defaults())
+ for key, value in parser.defaults().items():
+ if key in booleankeys:
+ self._defaults[key] = strtoboolean(value)
+ else:
+ self._defaults[key] = value
for key, value in parser.items(def_section):
self._config.setdefault(def_section, dict())[key] = value
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/ospd/parser.py
new/ospd-openvas-22.10.1/ospd/parser.py
--- old/ospd-openvas-22.10.0/ospd/parser.py 2025-12-22 12:26:40.000000000
+0100
+++ new/ospd-openvas-22.10.1/ospd/parser.py 2026-01-30 14:26:26.000000000
+0100
@@ -119,7 +119,7 @@
'--log-level',
default='INFO',
type=self.log_level,
- help='Wished level of logging. Default: %(default)s',
+ help='Desired level of logging. Default: %(default)s',
)
parser.add_argument(
'-f',
@@ -163,7 +163,7 @@
default=DEFAULT_MAX_SCAN,
type=int,
help=(
- 'Max. amount of parallel task that can be started. '
+ 'Maximum amount of parallel task that can be started. '
'Default %(default)s, disabled'
),
)
@@ -173,7 +173,7 @@
type=int,
help=(
'Minimum free memory in MB required to run the scan. '
- 'If no enough free memory is available, the scan is queued. '
+ 'If insufficient free memory is available, the scan is queued.
'
'Default %(default)s, disabled'
),
)
@@ -204,7 +204,7 @@
help=(
'Broker port to connect to for MQTT communication.'
' Neccessary to get results from Notus-Scanner.'
- 'Default %(default)s'
+ ' Default %(default)s'
),
)
parser.add_argument(
@@ -213,7 +213,7 @@
type=str,
help=(
'Username to connect to MQTT broker for MQTT communication.'
- 'Default %(default)s'
+ ' Default %(default)s'
),
)
parser.add_argument(
@@ -221,8 +221,8 @@
default=None,
type=str,
help=(
- 'PASSWORD to connect to MQTT broker for MQTT communication.'
- 'Default %(default)s'
+ 'Password to connect to MQTT broker for MQTT communication.'
+ ' Default %(default)s'
),
)
@@ -241,7 +241,7 @@
'--signature-check',
default=False,
action='store_true',
- help=('Enable feed signature check.' ' Default: %(default)s.'),
+ help=('Enable feed signature check. Default: %(default)s.'),
)
self.parser = parser
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/ospd_openvas/__version__.py
new/ospd-openvas-22.10.1/ospd_openvas/__version__.py
--- old/ospd-openvas-22.10.0/ospd_openvas/__version__.py 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/ospd_openvas/__version__.py 2026-01-30
14:26:26.000000000 +0100
@@ -2,4 +2,4 @@
# THIS IS AN AUTOGENERATED FILE. DO NOT TOUCH!
-__version__ = "22.10.0"
+__version__ = "22.10.1"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/ospd-openvas-22.10.0/ospd_openvas/gpg_sha_verifier.py
new/ospd-openvas-22.10.1/ospd_openvas/gpg_sha_verifier.py
--- old/ospd-openvas-22.10.0/ospd_openvas/gpg_sha_verifier.py 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/ospd_openvas/gpg_sha_verifier.py 2026-01-30
14:26:26.000000000 +0100
@@ -31,7 +31,7 @@
def __default_gpg_home() -> GPG:
"""
- __defaultGpgHome tries to load the variable 'GNUPGHOME' or to guess it
+ __default_gpg_home tries to load the variable 'GNUPGHOME' or to guess it
"""
manual = os.getenv("GNUPGHOME")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/ospd_openvas/notus.py
new/ospd-openvas-22.10.1/ospd_openvas/notus.py
--- old/ospd-openvas-22.10.0/ospd_openvas/notus.py 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/ospd_openvas/notus.py 2026-01-30
14:26:26.000000000 +0100
@@ -10,6 +10,7 @@
import json
import logging
+from ospd.config import strtoboolean
from ospd.parser import CliParser
from ospd_openvas.messages.result import ResultMessage
from ospd_openvas.db import OpenvasDB, MainDB
@@ -113,12 +114,12 @@
self,
path: Path,
cache: Cache,
- disable_hashsum_verification: bool = False,
+ disable_notus_hashsum_verification: bool = False,
):
self.path = path
self.cache = cache
self._verifier = None
- self.disable_hashsum_verification = disable_hashsum_verification
+ self.disable_hashsum_verification = disable_notus_hashsum_verification
def reload_cache(self):
if self.loading:
@@ -253,9 +254,9 @@
self.parser.add_argument(
'--disable-notus-hashsum-verification',
default=False,
- type=bool,
+ type=strtoboolean,
help=(
- 'Disables hashsum verification for notus advisories.'
+ 'Disable hashsum verification for notus advisories.'
' %(default)s'
),
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/poetry.lock
new/ospd-openvas-22.10.1/poetry.lock
--- old/ospd-openvas-22.10.0/poetry.lock 2025-12-22 12:26:40.000000000
+0100
+++ new/ospd-openvas-22.10.1/poetry.lock 2026-01-30 14:26:26.000000000
+0100
@@ -1,4 +1,4 @@
-# This file is automatically @generated by Poetry 2.2.0 and should not be
changed by hand.
+# This file is automatically @generated by Poetry 2.2.1 and should not be
changed by hand.
[[package]]
name = "anyio"
@@ -103,34 +103,38 @@
[[package]]
name = "black"
-version = "25.9.0"
+version = "25.11.0"
description = "The uncompromising code formatter."
optional = false
python-versions = ">=3.9"
groups = ["dev"]
files = [
- {file = "black-25.9.0-cp310-cp310-macosx_10_9_x86_64.whl", hash =
"sha256:ce41ed2614b706fd55fd0b4a6909d06b5bab344ffbfadc6ef34ae50adba3d4f7"},
- {file = "black-25.9.0-cp310-cp310-macosx_11_0_arm64.whl", hash =
"sha256:2ab0ce111ef026790e9b13bd216fa7bc48edd934ffc4cbf78808b235793cbc92"},
- {file =
"black-25.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:f96b6726d690c96c60ba682955199f8c39abc1ae0c3a494a9c62c0184049a713"},
- {file = "black-25.9.0-cp310-cp310-win_amd64.whl", hash =
"sha256:d119957b37cc641596063cd7db2656c5be3752ac17877017b2ffcdb9dfc4d2b1"},
- {file = "black-25.9.0-cp311-cp311-macosx_10_9_x86_64.whl", hash =
"sha256:456386fe87bad41b806d53c062e2974615825c7a52159cde7ccaeb0695fa28fa"},
- {file = "black-25.9.0-cp311-cp311-macosx_11_0_arm64.whl", hash =
"sha256:a16b14a44c1af60a210d8da28e108e13e75a284bf21a9afa6b4571f96ab8bb9d"},
- {file =
"black-25.9.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:aaf319612536d502fdd0e88ce52d8f1352b2c0a955cc2798f79eeca9d3af0608"},
- {file = "black-25.9.0-cp311-cp311-win_amd64.whl", hash =
"sha256:c0372a93e16b3954208417bfe448e09b0de5cc721d521866cd9e0acac3c04a1f"},
- {file = "black-25.9.0-cp312-cp312-macosx_10_13_x86_64.whl", hash =
"sha256:1b9dc70c21ef8b43248f1d86aedd2aaf75ae110b958a7909ad8463c4aa0880b0"},
- {file = "black-25.9.0-cp312-cp312-macosx_11_0_arm64.whl", hash =
"sha256:8e46eecf65a095fa62e53245ae2795c90bdecabd53b50c448d0a8bcd0d2e74c4"},
- {file =
"black-25.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:9101ee58ddc2442199a25cb648d46ba22cd580b00ca4b44234a324e3ec7a0f7e"},
- {file = "black-25.9.0-cp312-cp312-win_amd64.whl", hash =
"sha256:77e7060a00c5ec4b3367c55f39cf9b06e68965a4f2e61cecacd6d0d9b7ec945a"},
- {file = "black-25.9.0-cp313-cp313-macosx_10_13_x86_64.whl", hash =
"sha256:0172a012f725b792c358d57fe7b6b6e8e67375dd157f64fa7a3097b3ed3e2175"},
- {file = "black-25.9.0-cp313-cp313-macosx_11_0_arm64.whl", hash =
"sha256:3bec74ee60f8dfef564b573a96b8930f7b6a538e846123d5ad77ba14a8d7a64f"},
- {file =
"black-25.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:b756fc75871cb1bcac5499552d771822fd9db5a2bb8db2a7247936ca48f39831"},
- {file = "black-25.9.0-cp313-cp313-win_amd64.whl", hash =
"sha256:846d58e3ce7879ec1ffe816bb9df6d006cd9590515ed5d17db14e17666b2b357"},
- {file = "black-25.9.0-cp39-cp39-macosx_10_9_x86_64.whl", hash =
"sha256:ef69351df3c84485a8beb6f7b8f9721e2009e20ef80a8d619e2d1788b7816d47"},
- {file = "black-25.9.0-cp39-cp39-macosx_11_0_arm64.whl", hash =
"sha256:e3c1f4cd5e93842774d9ee4ef6cd8d17790e65f44f7cdbaab5f2cf8ccf22a823"},
- {file =
"black-25.9.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:154b06d618233fe468236ba1f0e40823d4eb08b26f5e9261526fde34916b9140"},
- {file = "black-25.9.0-cp39-cp39-win_amd64.whl", hash =
"sha256:e593466de7b998374ea2585a471ba90553283fb9beefcfa430d84a2651ed5933"},
- {file = "black-25.9.0-py3-none-any.whl", hash =
"sha256:474b34c1342cdc157d307b56c4c65bce916480c4a8f6551fdc6bf9b486a7c4ae"},
- {file = "black-25.9.0.tar.gz", hash =
"sha256:0474bca9a0dd1b51791fcc507a4e02078a1c63f6d4e4ae5544b9848c7adfb619"},
+ {file = "black-25.11.0-cp310-cp310-macosx_10_9_x86_64.whl", hash =
"sha256:ec311e22458eec32a807f029b2646f661e6859c3f61bc6d9ffb67958779f392e"},
+ {file = "black-25.11.0-cp310-cp310-macosx_11_0_arm64.whl", hash =
"sha256:1032639c90208c15711334d681de2e24821af0575573db2810b0763bcd62e0f0"},
+ {file =
"black-25.11.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:0c0f7c461df55cf32929b002335883946a4893d759f2df343389c4396f3b6b37"},
+ {file = "black-25.11.0-cp310-cp310-win_amd64.whl", hash =
"sha256:f9786c24d8e9bd5f20dc7a7f0cdd742644656987f6ea6947629306f937726c03"},
+ {file = "black-25.11.0-cp311-cp311-macosx_10_9_x86_64.whl", hash =
"sha256:895571922a35434a9d8ca67ef926da6bc9ad464522a5fe0db99b394ef1c0675a"},
+ {file = "black-25.11.0-cp311-cp311-macosx_11_0_arm64.whl", hash =
"sha256:cb4f4b65d717062191bdec8e4a442539a8ea065e6af1c4f4d36f0cdb5f71e170"},
+ {file =
"black-25.11.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:d81a44cbc7e4f73a9d6ae449ec2317ad81512d1e7dce7d57f6333fd6259737bc"},
+ {file = "black-25.11.0-cp311-cp311-win_amd64.whl", hash =
"sha256:7eebd4744dfe92ef1ee349dc532defbf012a88b087bb7ddd688ff59a447b080e"},
+ {file = "black-25.11.0-cp312-cp312-macosx_10_13_x86_64.whl", hash =
"sha256:80e7486ad3535636657aa180ad32a7d67d7c273a80e12f1b4bfa0823d54e8fac"},
+ {file = "black-25.11.0-cp312-cp312-macosx_11_0_arm64.whl", hash =
"sha256:6cced12b747c4c76bc09b4db057c319d8545307266f41aaee665540bc0e04e96"},
+ {file =
"black-25.11.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:6cb2d54a39e0ef021d6c5eef442e10fd71fcb491be6413d083a320ee768329dd"},
+ {file = "black-25.11.0-cp312-cp312-win_amd64.whl", hash =
"sha256:ae263af2f496940438e5be1a0c1020e13b09154f3af4df0835ea7f9fe7bfa409"},
+ {file = "black-25.11.0-cp313-cp313-macosx_10_13_x86_64.whl", hash =
"sha256:0a1d40348b6621cc20d3d7530a5b8d67e9714906dfd7346338249ad9c6cedf2b"},
+ {file = "black-25.11.0-cp313-cp313-macosx_11_0_arm64.whl", hash =
"sha256:51c65d7d60bb25429ea2bf0731c32b2a2442eb4bd3b2afcb47830f0b13e58bfd"},
+ {file =
"black-25.11.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:936c4dd07669269f40b497440159a221ee435e3fddcf668e0c05244a9be71993"},
+ {file = "black-25.11.0-cp313-cp313-win_amd64.whl", hash =
"sha256:f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c"},
+ {file = "black-25.11.0-cp314-cp314-macosx_10_15_x86_64.whl", hash =
"sha256:35690a383f22dd3e468c85dc4b915217f87667ad9cce781d7b42678ce63c4170"},
+ {file = "black-25.11.0-cp314-cp314-macosx_11_0_arm64.whl", hash =
"sha256:dae49ef7369c6caa1a1833fd5efb7c3024bb7e4499bf64833f65ad27791b1545"},
+ {file =
"black-25.11.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:5bd4a22a0b37401c8e492e994bce79e614f91b14d9ea911f44f36e262195fdda"},
+ {file = "black-25.11.0-cp314-cp314-win_amd64.whl", hash =
"sha256:aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664"},
+ {file = "black-25.11.0-cp39-cp39-macosx_10_9_x86_64.whl", hash =
"sha256:a3bb5ce32daa9ff0605d73b6f19da0b0e6c1f8f2d75594db539fdfed722f2b06"},
+ {file = "black-25.11.0-cp39-cp39-macosx_11_0_arm64.whl", hash =
"sha256:9815ccee1e55717fe9a4b924cae1646ef7f54e0f990da39a34fc7b264fcf80a2"},
+ {file =
"black-25.11.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:92285c37b93a1698dcbc34581867b480f1ba3a7b92acf1fe0467b04d7a4da0dc"},
+ {file = "black-25.11.0-cp39-cp39-win_amd64.whl", hash =
"sha256:43945853a31099c7c0ff8dface53b4de56c41294fa6783c0441a8b1d9bf668bc"},
+ {file = "black-25.11.0-py3-none-any.whl", hash =
"sha256:e3f562da087791e96cefcd9dda058380a442ab322a02e222add53736451f604b"},
+ {file = "black-25.11.0.tar.gz", hash =
"sha256:9a323ac32f5dc75ce7470501b887250be5005a01602e931a15e45593f70f6e08"},
]
[package.dependencies]
@@ -139,7 +143,7 @@
packaging = ">=22.0"
pathspec = ">=0.9.0"
platformdirs = ">=2"
-pytokens = ">=0.1.10"
+pytokens = ">=0.3.0"
tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""}
typing-extensions = {version = ">=4.0.1", markers = "python_version <
\"3.11\""}
@@ -218,18 +222,18 @@
[[package]]
name = "deprecated"
-version = "1.2.18"
+version = "1.3.1"
description = "Python @deprecated decorator to deprecate old python classes,
functions or methods."
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7"
groups = ["main"]
files = [
- {file = "Deprecated-1.2.18-py2.py3-none-any.whl", hash =
"sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec"},
- {file = "deprecated-1.2.18.tar.gz", hash =
"sha256:422b6f6d859da6f2ef57857761bfb392480502a64c3028ca9bbe86085d72115d"},
+ {file = "deprecated-1.3.1-py2.py3-none-any.whl", hash =
"sha256:597bfef186b6f60181535a29fbe44865ce137a5079f295b479886c82729d5f3f"},
+ {file = "deprecated-1.3.1.tar.gz", hash =
"sha256:b1b50e0ff0c1fddaa5708a2c6b0a6588bb09b892825ab2b214ac9ea9d92a5223"},
]
[package.dependencies]
-wrapt = ">=1.10,<2"
+wrapt = ">=1.10,<3"
[package.extras]
dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "setuptools ;
python_version >= \"3.12\"", "tox"]
@@ -612,14 +616,14 @@
[[package]]
name = "packaging"
-version = "25.0"
+version = "26.0"
description = "Core utilities for Python packages"
optional = false
python-versions = ">=3.8"
groups = ["main", "dev"]
files = [
- {file = "packaging-25.0-py3-none-any.whl", hash =
"sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484"},
- {file = "packaging-25.0.tar.gz", hash =
"sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f"},
+ {file = "packaging-26.0-py3-none-any.whl", hash =
"sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529"},
+ {file = "packaging-26.0.tar.gz", hash =
"sha256:00243ae351a257117b6a241061796684b084ed1c516a08c48a3f7e147a9d80b4"},
]
[[package]]
@@ -689,26 +693,38 @@
[[package]]
name = "psutil"
-version = "7.1.0"
+version = "7.2.2"
description = "Cross-platform lib for process and system monitoring."
optional = false
python-versions = ">=3.6"
groups = ["main"]
files = [
- {file = "psutil-7.1.0-cp36-abi3-macosx_10_9_x86_64.whl", hash =
"sha256:76168cef4397494250e9f4e73eb3752b146de1dd950040b29186d0cce1d5ca13"},
- {file = "psutil-7.1.0-cp36-abi3-macosx_11_0_arm64.whl", hash =
"sha256:5d007560c8c372efdff9e4579c2846d71de737e4605f611437255e81efcca2c5"},
- {file =
"psutil-7.1.0-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl",
hash =
"sha256:22e4454970b32472ce7deaa45d045b34d3648ce478e26a04c7e858a0a6e75ff3"},
- {file =
"psutil-7.1.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
hash =
"sha256:8c70e113920d51e89f212dd7be06219a9b88014e63a4cec69b684c327bc474e3"},
- {file =
"psutil-7.1.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash
= "sha256:7d4a113425c037300de3ac8b331637293da9be9713855c4fc9d2d97436d7259d"},
- {file = "psutil-7.1.0-cp37-abi3-win32.whl", hash =
"sha256:09ad740870c8d219ed8daae0ad3b726d3bf9a028a198e7f3080f6a1888b99bca"},
- {file = "psutil-7.1.0-cp37-abi3-win_amd64.whl", hash =
"sha256:57f5e987c36d3146c0dd2528cd42151cf96cd359b9d67cfff836995cc5df9a3d"},
- {file = "psutil-7.1.0-cp37-abi3-win_arm64.whl", hash =
"sha256:6937cb68133e7c97b6cc9649a570c9a18ba0efebed46d8c5dae4c07fa1b67a07"},
- {file = "psutil-7.1.0.tar.gz", hash =
"sha256:655708b3c069387c8b77b072fc429a57d0e214221d01c0a772df7dfedcb3bcd2"},
+ {file = "psutil-7.2.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash =
"sha256:2edccc433cbfa046b980b0df0171cd25bcaeb3a68fe9022db0979e7aa74a826b"},
+ {file = "psutil-7.2.2-cp313-cp313t-macosx_11_0_arm64.whl", hash =
"sha256:e78c8603dcd9a04c7364f1a3e670cea95d51ee865e4efb3556a3a63adef958ea"},
+ {file =
"psutil-7.2.2-cp313-cp313t-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:1a571f2330c966c62aeda00dd24620425d4b0cc86881c89861fbc04549e5dc63"},
+ {file =
"psutil-7.2.2-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:917e891983ca3c1887b4ef36447b1e0873e70c933afc831c6b6da078ba474312"},
+ {file = "psutil-7.2.2-cp313-cp313t-win_amd64.whl", hash =
"sha256:ab486563df44c17f5173621c7b198955bd6b613fb87c71c161f827d3fb149a9b"},
+ {file = "psutil-7.2.2-cp313-cp313t-win_arm64.whl", hash =
"sha256:ae0aefdd8796a7737eccea863f80f81e468a1e4cf14d926bd9b6f5f2d5f90ca9"},
+ {file = "psutil-7.2.2-cp314-cp314t-macosx_10_15_x86_64.whl", hash =
"sha256:eed63d3b4d62449571547b60578c5b2c4bcccc5387148db46e0c2313dad0ee00"},
+ {file = "psutil-7.2.2-cp314-cp314t-macosx_11_0_arm64.whl", hash =
"sha256:7b6d09433a10592ce39b13d7be5a54fbac1d1228ed29abc880fb23df7cb694c9"},
+ {file =
"psutil-7.2.2-cp314-cp314t-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:1fa4ecf83bcdf6e6c8f4449aff98eefb5d0604bf88cb883d7da3d8d2d909546a"},
+ {file =
"psutil-7.2.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:e452c464a02e7dc7822a05d25db4cde564444a67e58539a00f929c51eddda0cf"},
+ {file = "psutil-7.2.2-cp314-cp314t-win_amd64.whl", hash =
"sha256:c7663d4e37f13e884d13994247449e9f8f574bc4655d509c3b95e9ec9e2b9dc1"},
+ {file = "psutil-7.2.2-cp314-cp314t-win_arm64.whl", hash =
"sha256:11fe5a4f613759764e79c65cf11ebdf26e33d6dd34336f8a337aa2996d71c841"},
+ {file = "psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl", hash =
"sha256:ed0cace939114f62738d808fdcecd4c869222507e266e574799e9c0faa17d486"},
+ {file = "psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl", hash =
"sha256:1a7b04c10f32cc88ab39cbf606e117fd74721c831c98a27dc04578deb0c16979"},
+ {file =
"psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:076a2d2f923fd4821644f5ba89f059523da90dc9014e85f8e45a5774ca5bc6f9"},
+ {file =
"psutil-7.2.2-cp36-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:b0726cecd84f9474419d67252add4ac0cd9811b04d61123054b9fb6f57df6e9e"},
+ {file = "psutil-7.2.2-cp36-abi3-musllinux_1_2_aarch64.whl", hash =
"sha256:fd04ef36b4a6d599bbdb225dd1d3f51e00105f6d48a28f006da7f9822f2606d8"},
+ {file = "psutil-7.2.2-cp36-abi3-musllinux_1_2_x86_64.whl", hash =
"sha256:b58fabe35e80b264a4e3bb23e6b96f9e45a3df7fb7eed419ac0e5947c61e47cc"},
+ {file = "psutil-7.2.2-cp37-abi3-win_amd64.whl", hash =
"sha256:eb7e81434c8d223ec4a219b5fc1c47d0417b12be7ea866e24fb5ad6e84b3d988"},
+ {file = "psutil-7.2.2-cp37-abi3-win_arm64.whl", hash =
"sha256:8c233660f575a5a89e6d4cb65d9f938126312bca76d8fe087b947b3a1aaac9ee"},
+ {file = "psutil-7.2.2.tar.gz", hash =
"sha256:0746f5f8d406af344fd547f1c8daa5f5c33dbc293bb8d6a16d80b4bb88f59372"},
]
[package.extras]
-dev = ["abi3audit", "black", "check-manifest", "coverage", "packaging",
"pylint", "pyperf", "pypinfo", "pyreadline ; os_name == \"nt\"", "pytest",
"pytest-cov", "pytest-instafail", "pytest-subtests", "pytest-xdist", "pywin32 ;
os_name == \"nt\" and platform_python_implementation != \"PyPy\"", "requests",
"rstcheck", "ruff", "setuptools", "sphinx", "sphinx_rtd_theme", "toml-sort",
"twine", "virtualenv", "vulture", "wheel", "wheel ; os_name == \"nt\" and
platform_python_implementation != \"PyPy\"", "wmi ; os_name == \"nt\" and
platform_python_implementation != \"PyPy\""]
-test = ["pytest", "pytest-instafail", "pytest-subtests", "pytest-xdist",
"pywin32 ; os_name == \"nt\" and platform_python_implementation != \"PyPy\"",
"setuptools", "wheel ; os_name == \"nt\" and platform_python_implementation !=
\"PyPy\"", "wmi ; os_name == \"nt\" and platform_python_implementation !=
\"PyPy\""]
+dev = ["abi3audit", "black", "check-manifest", "colorama ; os_name == \"nt\"",
"coverage", "packaging", "psleak", "pylint", "pyperf", "pypinfo", "pyreadline3
; os_name == \"nt\"", "pytest", "pytest-cov", "pytest-instafail",
"pytest-xdist", "pywin32 ; os_name == \"nt\" and implementation_name !=
\"pypy\"", "requests", "rstcheck", "ruff", "setuptools", "sphinx",
"sphinx_rtd_theme", "toml-sort", "twine", "validate-pyproject[all]",
"virtualenv", "vulture", "wheel", "wheel ; os_name == \"nt\" and
implementation_name != \"pypy\"", "wmi ; os_name == \"nt\" and
implementation_name != \"pypy\""]
+test = ["psleak", "pytest", "pytest-instafail", "pytest-xdist", "pywin32 ;
os_name == \"nt\" and implementation_name != \"pypy\"", "setuptools", "wheel ;
os_name == \"nt\" and implementation_name != \"pypy\"", "wmi ; os_name ==
\"nt\" and implementation_name != \"pypy\""]
[[package]]
name = "pygments"
@@ -774,26 +790,66 @@
[[package]]
name = "python-gnupg"
-version = "0.5.5"
+version = "0.5.6"
description = "A wrapper for the Gnu Privacy Guard (GPG or GnuPG)"
optional = false
python-versions = "*"
groups = ["main"]
files = [
- {file = "python-gnupg-0.5.5.tar.gz", hash =
"sha256:3fdcaf76f60a1b948ff8e37dc398d03cf9ce7427065d583082b92da7a4ff5a63"},
- {file = "python_gnupg-0.5.5-py2.py3-none-any.whl", hash =
"sha256:51fa7b8831ff0914bc73d74c59b99c613de7247b91294323c39733bb85ac3fc1"},
+ {file = "python_gnupg-0.5.6-py2.py3-none-any.whl", hash =
"sha256:b5050a55663d8ab9fcc8d97556d229af337a87a3ebebd7054cbd8b7e2043394a"},
+ {file = "python_gnupg-0.5.6.tar.gz", hash =
"sha256:5743e96212d38923fc19083812dc127907e44dbd3bcf0db4d657e291d3c21eac"},
]
[[package]]
name = "pytokens"
-version = "0.1.10"
-description = "A Fast, spec compliant Python 3.12+ tokenizer that runs on
older Pythons."
+version = "0.4.1"
+description = "A Fast, spec compliant Python 3.14+ tokenizer that runs on
older Pythons."
optional = false
python-versions = ">=3.8"
groups = ["dev"]
files = [
- {file = "pytokens-0.1.10-py3-none-any.whl", hash =
"sha256:db7b72284e480e69fb085d9f251f66b3d2df8b7166059261258ff35f50fb711b"},
- {file = "pytokens-0.1.10.tar.gz", hash =
"sha256:c9a4bfa0be1d26aebce03e6884ba454e842f186a59ea43a6d3b25af58223c044"},
+ {file = "pytokens-0.4.1-cp310-cp310-macosx_11_0_arm64.whl", hash =
"sha256:2a44ed93ea23415c54f3face3b65ef2b844d96aeb3455b8a69b3df6beab6acc5"},
+ {file =
"pytokens-0.4.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:add8bf86b71a5d9fb5b89f023a80b791e04fba57960aa790cc6125f7f1d39dfe"},
+ {file =
"pytokens-0.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:670d286910b531c7b7e3c0b453fd8156f250adb140146d234a82219459b9640c"},
+ {file = "pytokens-0.4.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash =
"sha256:4e691d7f5186bd2842c14813f79f8884bb03f5995f0575272009982c5ac6c0f7"},
+ {file = "pytokens-0.4.1-cp310-cp310-win_amd64.whl", hash =
"sha256:27b83ad28825978742beef057bfe406ad6ed524b2d28c252c5de7b4a6dd48fa2"},
+ {file = "pytokens-0.4.1-cp311-cp311-macosx_11_0_arm64.whl", hash =
"sha256:d70e77c55ae8380c91c0c18dea05951482e263982911fc7410b1ffd1dadd3440"},
+ {file =
"pytokens-0.4.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:4a58d057208cb9075c144950d789511220b07636dd2e4708d5645d24de666bdc"},
+ {file =
"pytokens-0.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:b49750419d300e2b5a3813cf229d4e5a4c728dae470bcc89867a9ad6f25a722d"},
+ {file = "pytokens-0.4.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash =
"sha256:d9907d61f15bf7261d7e775bd5d7ee4d2930e04424bab1972591918497623a16"},
+ {file = "pytokens-0.4.1-cp311-cp311-win_amd64.whl", hash =
"sha256:ee44d0f85b803321710f9239f335aafe16553b39106384cef8e6de40cb4ef2f6"},
+ {file = "pytokens-0.4.1-cp312-cp312-macosx_11_0_arm64.whl", hash =
"sha256:140709331e846b728475786df8aeb27d24f48cbcf7bcd449f8de75cae7a45083"},
+ {file =
"pytokens-0.4.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:6d6c4268598f762bc8e91f5dbf2ab2f61f7b95bdc07953b602db879b3c8c18e1"},
+ {file =
"pytokens-0.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:24afde1f53d95348b5a0eb19488661147285ca4dd7ed752bbc3e1c6242a304d1"},
+ {file = "pytokens-0.4.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash =
"sha256:5ad948d085ed6c16413eb5fec6b3e02fa00dc29a2534f088d3302c47eb59adf9"},
+ {file = "pytokens-0.4.1-cp312-cp312-win_amd64.whl", hash =
"sha256:3f901fe783e06e48e8cbdc82d631fca8f118333798193e026a50ce1b3757ea68"},
+ {file = "pytokens-0.4.1-cp313-cp313-macosx_11_0_arm64.whl", hash =
"sha256:8bdb9d0ce90cbf99c525e75a2fa415144fd570a1ba987380190e8b786bc6ef9b"},
+ {file =
"pytokens-0.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:5502408cab1cb18e128570f8d598981c68a50d0cbd7c61312a90507cd3a1276f"},
+ {file =
"pytokens-0.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:29d1d8fb1030af4d231789959f21821ab6325e463f0503a61d204343c9b355d1"},
+ {file = "pytokens-0.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash =
"sha256:970b08dd6b86058b6dc07efe9e98414f5102974716232d10f32ff39701e841c4"},
+ {file = "pytokens-0.4.1-cp313-cp313-win_amd64.whl", hash =
"sha256:9bd7d7f544d362576be74f9d5901a22f317efc20046efe2034dced238cbbfe78"},
+ {file = "pytokens-0.4.1-cp314-cp314-macosx_11_0_arm64.whl", hash =
"sha256:4a14d5f5fc78ce85e426aa159489e2d5961acf0e47575e08f35584009178e321"},
+ {file =
"pytokens-0.4.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:97f50fd18543be72da51dd505e2ed20d2228c74e0464e4262e4899797803d7fa"},
+ {file =
"pytokens-0.4.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:dc74c035f9bfca0255c1af77ddd2d6ae8419012805453e4b0e7513e17904545d"},
+ {file = "pytokens-0.4.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash =
"sha256:f66a6bbe741bd431f6d741e617e0f39ec7257ca1f89089593479347cc4d13324"},
+ {file = "pytokens-0.4.1-cp314-cp314-win_amd64.whl", hash =
"sha256:b35d7e5ad269804f6697727702da3c517bb8a5228afa450ab0fa787732055fc9"},
+ {file = "pytokens-0.4.1-cp314-cp314t-macosx_11_0_arm64.whl", hash =
"sha256:8fcb9ba3709ff77e77f1c7022ff11d13553f3c30299a9fe246a166903e9091eb"},
+ {file =
"pytokens-0.4.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:79fc6b8699564e1f9b521582c35435f1bd32dd06822322ec44afdeba666d8cb3"},
+ {file =
"pytokens-0.4.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:d31b97b3de0f61571a124a00ffe9a81fb9939146c122c11060725bd5aea79975"},
+ {file = "pytokens-0.4.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash =
"sha256:967cf6e3fd4adf7de8fc73cd3043754ae79c36475c1c11d514fc72cf5490094a"},
+ {file = "pytokens-0.4.1-cp314-cp314t-win_amd64.whl", hash =
"sha256:584c80c24b078eec1e227079d56dc22ff755e0ba8654d8383b2c549107528918"},
+ {file = "pytokens-0.4.1-cp38-cp38-macosx_11_0_arm64.whl", hash =
"sha256:da5baeaf7116dced9c6bb76dc31ba04a2dc3695f3d9f74741d7910122b456edc"},
+ {file =
"pytokens-0.4.1-cp38-cp38-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:11edda0942da80ff58c4408407616a310adecae1ddd22eef8c692fe266fa5009"},
+ {file =
"pytokens-0.4.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:0fc71786e629cef478cbf29d7ea1923299181d0699dbe7c3c0f4a583811d9fc1"},
+ {file = "pytokens-0.4.1-cp38-cp38-musllinux_1_2_x86_64.whl", hash =
"sha256:dcafc12c30dbaf1e2af0490978352e0c4041a7cde31f4f81435c2a5e8b9cabb6"},
+ {file = "pytokens-0.4.1-cp38-cp38-win_amd64.whl", hash =
"sha256:42f144f3aafa5d92bad964d471a581651e28b24434d184871bd02e3a0d956037"},
+ {file = "pytokens-0.4.1-cp39-cp39-macosx_11_0_arm64.whl", hash =
"sha256:34bcc734bd2f2d5fe3b34e7b3c0116bfb2397f2d9666139988e7a3eb5f7400e3"},
+ {file =
"pytokens-0.4.1-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:941d4343bf27b605e9213b26bfa1c4bf197c9c599a9627eb7305b0defcfe40c1"},
+ {file =
"pytokens-0.4.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:3ad72b851e781478366288743198101e5eb34a414f1d5627cdd585ca3b25f1db"},
+ {file = "pytokens-0.4.1-cp39-cp39-musllinux_1_2_x86_64.whl", hash =
"sha256:682fa37ff4d8e95f7df6fe6fe6a431e8ed8e788023c6bcc0f0880a12eab80ad1"},
+ {file = "pytokens-0.4.1-cp39-cp39-win_amd64.whl", hash =
"sha256:30f51edd9bb7f85c748979384165601d028b84f7bd13fe14d3e065304093916a"},
+ {file = "pytokens-0.4.1-py3-none-any.whl", hash =
"sha256:26cef14744a8385f35d0e095dc8b3a7583f6c953c2e3d269c7f82484bf5ad2de"},
+ {file = "pytokens-0.4.1.tar.gz", hash =
"sha256:292052fe80923aae2260c073f822ceba21f3872ced9a68bb7953b348e561179a"},
]
[package.extras]
@@ -824,20 +880,21 @@
[[package]]
name = "redis"
-version = "6.4.0"
+version = "7.0.1"
description = "Python client for Redis database and key-value store"
optional = false
python-versions = ">=3.9"
groups = ["main"]
files = [
- {file = "redis-6.4.0-py3-none-any.whl", hash =
"sha256:f0544fa9604264e9464cdf4814e7d4830f74b165d52f2a330a760a88dd248b7f"},
- {file = "redis-6.4.0.tar.gz", hash =
"sha256:b01bc7282b8444e28ec36b261df5375183bb47a07eb9c603f284e89cbc5ef010"},
+ {file = "redis-7.0.1-py3-none-any.whl", hash =
"sha256:4977af3c7d67f8f0eb8b6fec0dafc9605db9343142f634041fb0235f67c0588a"},
+ {file = "redis-7.0.1.tar.gz", hash =
"sha256:c949df947dca995dc68fdf5a7863950bf6df24f8d6022394585acc98e81624f1"},
]
[package.dependencies]
async-timeout = {version = ">=4.0.3", markers = "python_full_version <
\"3.11.3\""}
[package.extras]
+circuit-breaker = ["pybreaker (>=1.4.0)"]
hiredis = ["hiredis (>=3.2.0)"]
jwt = ["pyjwt (>=2.9.0)"]
ocsp = ["cryptography (>=36.0.1)", "pyopenssl (>=20.0.1)", "requests
(>=2.31.0)"]
@@ -1053,4 +1110,4 @@
[metadata]
lock-version = "2.1"
python-versions = "^3.9"
-content-hash =
"cbc7c983c4f0ecb2746d4be5eb12f3e92d33d8009b2c0b0a0a019384b43dc4d5"
+content-hash =
"e65d00b150a2ead5701df90941eac5c473521038f516cf545b5e89d8eb8e53e2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/pyproject.toml
new/ospd-openvas-22.10.1/pyproject.toml
--- old/ospd-openvas-22.10.0/pyproject.toml 2025-12-22 12:26:40.000000000
+0100
+++ new/ospd-openvas-22.10.1/pyproject.toml 2026-01-30 14:26:26.000000000
+0100
@@ -4,7 +4,7 @@
[tool.poetry]
name = "ospd-openvas"
-version = "22.10.0"
+version = "22.10.1"
description = "ospd based scanner for openvas"
authors = ["Greenbone AG <[email protected]>"]
license = "AGPL-3.0-or-later"
@@ -46,7 +46,7 @@
python = "^3.9"
redis = ">=4.5.0"
psutil = ">=5.5.1,<8.0.0"
-packaging = ">=20.4,<26.0"
+packaging = ">=20.4,<27.0"
lxml = ">=4.5.2,<7.0.0"
defusedxml = ">=0.6,<0.8"
deprecated = "^1.2.10"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/tests/test_argument_parser.py
new/ospd-openvas-22.10.1/tests/test_argument_parser.py
--- old/ospd-openvas-22.10.0/tests/test_argument_parser.py 2025-12-22
12:26:40.000000000 +0100
+++ new/ospd-openvas-22.10.1/tests/test_argument_parser.py 2026-01-30
14:26:26.000000000 +0100
@@ -85,6 +85,12 @@
)
self.assertEqual(args.disable_notus_hashsum_verification, True)
+ def test_explicitly_enable_notus_hashsum_verification(self):
+ args = self.parse_args(
+ '--disable-notus-hashsum-verification false'.split()
+ )
+ self.assertEqual(args.disable_notus_hashsum_verification, False)
+
def test_defaults(self):
args = self.parse_args([])
@@ -101,6 +107,7 @@
self.assertEqual(args.mqtt_broker_address, DEFAULT_MQTT_BROKER_ADDRESS)
self.assertEqual(args.mqtt_broker_port, DEFAULT_MQTT_BROKER_PORT)
self.assertEqual(args.disable_notus_hashsum_verification, False)
+ self.assertEqual(args.signature_check, False)
class ArgumentParserConfigTestCase(unittest.TestCase):
@@ -114,19 +121,35 @@
config_file = str(here / 'testing.conf')
args = self.parse_args(['--config', config_file])
+ self.assertEqual(args.config, config_file)
+
self.assertEqual(args.key_file, '/foo/key.pem')
+ self.assertEqual(args.cert_file, '/foo/cert.pem')
+ self.assertEqual(args.ca_file, '/foo/ca.pem')
self.assertEqual(args.niceness, 666)
self.assertEqual(args.log_level, 'DEBUG')
+ self.assertEqual(args.log_config, '/foo/ospd-logging.conf')
+ self.assertEqual(args.log_file, '/foo/ospd-openvas.log')
self.assertEqual(args.address, '6.6.6.6')
self.assertEqual(args.port, 6666)
self.assertEqual(args.scaninfo_store_time, 123)
- self.assertEqual(args.config, config_file)
self.assertEqual(args.unix_socket, '/foo/ospd-openvas.sock')
self.assertEqual(args.pid_file, '/foo/ospd-openvas.pid')
self.assertEqual(args.lock_file_dir, '/foo/openvas')
self.assertEqual(args.mqtt_broker_address, 'foo.bar.com')
self.assertEqual(args.mqtt_broker_port, 1234)
+ self.assertEqual(args.mqtt_broker_username, 'ospd')
+ self.assertEqual(args.mqtt_broker_password, 'secret')
self.assertEqual(args.notus_feed_dir, '/foo/advisories')
+ self.assertEqual(args.foreground, True)
+ self.assertEqual(args.socket_mode, '0o700')
+ self.assertEqual(args.stream_timeout, 20)
+ self.assertEqual(args.max_scans, 20)
+ self.assertEqual(args.max_queued_scans, 5)
+ self.assertEqual(args.min_free_mem_scan_queue, 200)
+ self.assertEqual(args.feed_updater, 'nasl-cli')
+ self.assertEqual(args.disable_notus_hashsum_verification, True)
+ self.assertEqual(args.signature_check, True)
@patch('sys.stderr', new_callable=StringIO)
def test_not_existing_config(self, _mock):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/tests/test_config.py
new/ospd-openvas-22.10.1/tests/test_config.py
--- old/ospd-openvas-22.10.0/tests/test_config.py 1970-01-01
01:00:00.000000000 +0100
+++ new/ospd-openvas-22.10.1/tests/test_config.py 2026-01-30
14:26:26.000000000 +0100
@@ -0,0 +1,44 @@
+# -*- coding: utf-8 -*-
+# SPDX-FileCopyrightText: 2014-2023 Greenbone AG
+#
+# SPDX-License-Identifier: AGPL-3.0-or-later
+
+"""Test module for configuration."""
+
+import unittest
+
+from ospd.config import strtoboolean
+
+
+class StrtobooleanTestCase(unittest.TestCase):
+ def test_trues(self) -> None:
+ self.assertEqual(True, strtoboolean("true"))
+ self.assertEqual(True, strtoboolean("True"))
+ self.assertEqual(True, strtoboolean("TRUE"))
+ self.assertEqual(True, strtoboolean("yes"))
+ self.assertEqual(True, strtoboolean("Yes"))
+ self.assertEqual(True, strtoboolean("YES"))
+ self.assertEqual(True, strtoboolean("on"))
+ self.assertEqual(True, strtoboolean("On"))
+ self.assertEqual(True, strtoboolean("ON"))
+ self.assertEqual(True, strtoboolean("1"))
+
+ def test_falses(self) -> None:
+ self.assertEqual(False, strtoboolean("false"))
+ self.assertEqual(False, strtoboolean("False"))
+ self.assertEqual(False, strtoboolean("FALSE"))
+ self.assertEqual(False, strtoboolean("no"))
+ self.assertEqual(False, strtoboolean("No"))
+ self.assertEqual(False, strtoboolean("NO"))
+ self.assertEqual(False, strtoboolean("off"))
+ self.assertEqual(False, strtoboolean("Off"))
+ self.assertEqual(False, strtoboolean("OFF"))
+ self.assertEqual(False, strtoboolean("0"))
+
+ def test_illegals(self) -> None:
+ with self.assertRaises(ValueError):
+ strtoboolean("fudge")
+ with self.assertRaises(ValueError):
+ strtoboolean("lemon")
+ with self.assertRaises(ValueError):
+ strtoboolean("melon")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/ospd-openvas-22.10.0/tests/testing.conf
new/ospd-openvas-22.10.1/tests/testing.conf
--- old/ospd-openvas-22.10.0/tests/testing.conf 2025-12-22 12:26:40.000000000
+0100
+++ new/ospd-openvas-22.10.1/tests/testing.conf 2026-01-30 14:26:26.000000000
+0100
@@ -1,15 +1,28 @@
[OSPD - openvas]
log_level = DEBUG
-socket_mode = 0o770
+socket_mode = 0o700
unix_socket = /foo/ospd-openvas.sock
pid_file = /foo/ospd-openvas.pid
+log_config = /foo/ospd-logging.conf
log_file = /foo/ospd-openvas.log
lock_file_dir = /foo/openvas
niceness = 666
key_file = /foo/key.pem
+cert_file = /foo/cert.pem
+ca_file = /foo/ca.pem
address = 6.6.6.6
port = 6666
mqtt_broker_address = foo.bar.com
mqtt_broker_port = 1234
+mqtt_broker_username = ospd
+mqtt_broker_password = secret
notus_feed_dir = /foo/advisories
scaninfo_store_time = 123
+foreground = true
+stream_timeout = 20
+max_scans = 20
+max_queued_scans = 5
+min_free_mem_scan_queue = 200
+feed_updater = nasl-cli
+disable_notus_hashsum_verification = true
+signature_check = true