فهرست منبع

Merge pull request #7809 from ThomasWaldmann/move-to-pyprojecttoml-master

Move to pyproject.toml
TW 1 سال پیش
والد
کامیت
0ac750dcd5
4فایلهای تغییر یافته به همراه81 افزوده شده و 99 حذف شده
  1. 78 0
      pyproject.toml
  2. 0 96
      setup.cfg
  3. 2 2
      src/borg/helpers/msgpack.py
  4. 1 1
      src/borg/manifest.py

+ 78 - 0
pyproject.toml

@@ -1,3 +1,57 @@
+[project]
+name = "borgbackup"
+dynamic = ["version"]
+authors = [{name="The Borg Collective (see AUTHORS file)"}]
+maintainers = [
+    {name="Thomas Waldmann", email="tw@waldmann-edv.de"},
+]
+description = "Deduplicated, encrypted, authenticated and compressed backups"
+readme = "README.rst"
+requires-python = ">=3.9"
+keywords = ["backup", "borgbackup"]
+classifiers = [
+    "Development Status :: 4 - Beta",
+    "Environment :: Console",
+    "Intended Audience :: System Administrators",
+    "License :: OSI Approved :: BSD License",
+    "Operating System :: POSIX :: BSD :: FreeBSD",
+    "Operating System :: POSIX :: BSD :: OpenBSD",
+    "Operating System :: POSIX :: BSD :: NetBSD",
+    "Operating System :: MacOS :: MacOS X",
+    "Operating System :: POSIX :: Linux",
+    "Programming Language :: Python",
+    "Programming Language :: Python :: 3",
+    "Programming Language :: Python :: 3.9",
+    "Programming Language :: Python :: 3.10",
+    "Programming Language :: Python :: 3.11",
+    "Topic :: Security :: Cryptography",
+    "Topic :: System :: Archiving :: Backup",
+]
+license = {text="BSD"}
+dependencies = [
+  "msgpack >=1.0.3, <=1.0.5",
+  "packaging",
+  "platformdirs >=3.0.0, <4.0.0; sys_platform == 'darwin'",  # for macOS: breaking changes in 3.0.0,
+  "platformdirs >=2.6.0, <4.0.0; sys_platform != 'darwin'",  # for others: 2.6+ works consistently.
+  "argon2-cffi",
+]
+
+[project.optional-dependencies]
+llfuse = ["llfuse >= 1.3.8"]
+pyfuse3 = ["pyfuse3 >= 3.1.1"]
+nofuse = []
+
+[project.urls]
+"Homepage" = "https://borgbackup.org/"
+"Bug Tracker" = "https://github.com/borgbackup/borg/issues"
+"Documentation" = "https://borgbackup.readthedocs.io/"
+"Repository" = "https://github.com/borgbackup/borg"
+"Changelog" = "https://github.com/borgbackup/borg/blob/master/docs/changes.rst"
+
+[project.scripts]
+borg = "borg.archiver:main"
+borgfs = "borg.archiver:main"
+
 [build-system]
 [build-system]
 requires = ["setuptools", "pkgconfig", "Cython", "setuptools_scm[toml]>=6.2"]
 requires = ["setuptools", "pkgconfig", "Cython", "setuptools_scm[toml]>=6.2"]
 build-backend = "setuptools.build_meta"
 build-backend = "setuptools.build_meta"
@@ -67,3 +121,27 @@ dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
 "src/borg/testsuite/archiver/return_codes.py" = ["F811"]
 "src/borg/testsuite/archiver/return_codes.py" = ["F811"]
 "src/borg/testsuite/benchmark.py" = ["F811"]
 "src/borg/testsuite/benchmark.py" = ["F811"]
 "src/borg/testsuite/platform.py" = ["F811"]
 "src/borg/testsuite/platform.py" = ["F811"]
+
+[tool.pytest.ini_options]
+python_files = "testsuite/*.py"
+markers = [
+    "allow_cache_wipe",
+]
+
+[tool.mypy]
+python_version = "3.9"
+strict_optional = false
+local_partial_types = true
+show_error_codes = true
+files = "src/borg/**/*.py"
+
+[[tool.mypy.overrides]]
+module = [
+    "msgpack.*",
+    "llfuse",
+    "pyfuse3",
+    "trio",
+    "borg.crypto.low_level",
+    "borg.platform.*",
+]
+ignore_missing_imports = true

+ 0 - 96
setup.cfg

@@ -1,96 +0,0 @@
-[metadata]
-name = borgbackup
-author = The Borg Collective (see AUTHORS file)
-description = Deduplicated, encrypted, authenticated and compressed backups
-url = https://borgbackup.org
-keywords =
-  backup
-  borgbackup
-classifiers =
-    Development Status :: 4 - Beta
-    Environment :: Console
-    Intended Audience :: System Administrators
-    License :: OSI Approved :: BSD License
-    Operating System :: POSIX :: BSD :: FreeBSD
-    Operating System :: POSIX :: BSD :: OpenBSD
-    Operating System :: POSIX :: BSD :: NetBSD
-    Operating System :: MacOS :: MacOS X
-    Operating System :: POSIX :: Linux
-    Programming Language :: Python
-    Programming Language :: Python :: 3
-    Programming Language :: Python :: 3.9
-    Programming Language :: Python :: 3.10
-    Programming Language :: Python :: 3.11
-    Topic :: Security :: Cryptography
-    Topic :: System :: Archiving :: Backup
-platforms = Linux, MacOS X, FreeBSD, OpenBSD, NetBSD
-license = BSD
-license_files = LICENSE
-project_urls =
-    Bug Tracker = https://github.com/borgbackup/borg/issues
-    Documentation = https://borgbackup.readthedocs.io
-    Source Code = https://github.com/borgbackup/borg
-
-[options]
-packages = find_namespace:
-package_dir =
-    =src
-python_requires = >=3.9
-install_requires =
-  msgpack >=1.0.3, <=1.0.5
-  packaging
-  platformdirs >=3.0.0, <4.0.0; sys_platform == 'darwin'  # for macOS: breaking changes in 3.0.0,
-  platformdirs >=2.6.0, <4.0.0; sys_platform != 'darwin'  # for others: 2.6+ works consistently.
-  argon2-cffi
-tests_require =
-  pytest
-zip_safe = False
-# See also the MANIFEST.in file.
-# We want to install all the files in the package directories...
-include_package_data = true
-
-# ...except the source files which have been compiled (C extensions):
-[options.exclude_package_data]
-* =
-    *.c
-    *.h
-    *.pyx
-
-[options.packages.find]
-where = src
-
-[options.entry_points]
-console_scripts =
-    borg = borg.archiver:main
-    borgfs = borg.archiver:main
-
-[options.extras_require]
-llfuse = llfuse >= 1.3.8
-pyfuse3 = pyfuse3 >= 3.1.1
-nofuse =
-
-[tool:pytest]
-python_files = testsuite/*.py
-markers =
-    allow_cache_wipe
-
-[mypy]
-python_version = 3.9
-strict_optional = False
-local_partial_types = True
-show_error_codes = True
-files = src/borg/**/*.py
-
-[mypy-msgpack.*]
-ignore_missing_imports = True
-[mypy-llfuse]
-ignore_missing_imports = True
-[mypy-pyfuse3]
-ignore_missing_imports = True
-[mypy-trio]
-ignore_missing_imports = True
-
-[mypy-borg.crypto.low_level]
-ignore_missing_imports = True
-[mypy-borg.platform.*]
-ignore_missing_imports = True

+ 2 - 2
src/borg/helpers/msgpack.py

@@ -84,7 +84,7 @@ class Packer(mp_Packer):
         use_single_float=False,
         use_single_float=False,
         autoreset=True,
         autoreset=True,
         use_bin_type=USE_BIN_TYPE,
         use_bin_type=USE_BIN_TYPE,
-        strict_types=False
+        strict_types=False,
     ):
     ):
         assert unicode_errors == UNICODE_ERRORS
         assert unicode_errors == UNICODE_ERRORS
         super().__init__(
         super().__init__(
@@ -133,7 +133,7 @@ class Unpacker(mp_Unpacker):
         unicode_errors=UNICODE_ERRORS,
         unicode_errors=UNICODE_ERRORS,
         max_buffer_size=0,
         max_buffer_size=0,
         ext_hook=ExtType,
         ext_hook=ExtType,
-        strict_map_key=False
+        strict_map_key=False,
     ):
     ):
         assert raw == RAW
         assert raw == RAW
         assert unicode_errors == UNICODE_ERRORS
         assert unicode_errors == UNICODE_ERRORS

+ 1 - 1
src/borg/manifest.py

@@ -113,7 +113,7 @@ class Archives(abc.MutableMapping):
         older=None,
         older=None,
         newer=None,
         newer=None,
         oldest=None,
         oldest=None,
-        newest=None
+        newest=None,
     ):
     ):
         """
         """
         Return list of ArchiveInfo instances according to the parameters.
         Return list of ArchiveInfo instances according to the parameters.