setup.cfg 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. [metadata]
  2. name = borgbackup
  3. author = The Borg Collective (see AUTHORS file)
  4. description = Deduplicated, encrypted, authenticated and compressed backups
  5. url = https://borgbackup.org
  6. keywords =
  7. backup
  8. borgbackup
  9. classifiers =
  10. Development Status :: 4 - Beta
  11. Environment :: Console
  12. Intended Audience :: System Administrators
  13. License :: OSI Approved :: BSD License
  14. Operating System :: POSIX :: BSD :: FreeBSD
  15. Operating System :: POSIX :: BSD :: OpenBSD
  16. Operating System :: POSIX :: BSD :: NetBSD
  17. Operating System :: MacOS :: MacOS X
  18. Operating System :: POSIX :: Linux
  19. Programming Language :: Python
  20. Programming Language :: Python :: 3
  21. Programming Language :: Python :: 3.9
  22. Programming Language :: Python :: 3.10
  23. Programming Language :: Python :: 3.11
  24. Topic :: Security :: Cryptography
  25. Topic :: System :: Archiving :: Backup
  26. platforms = Linux, MacOS X, FreeBSD, OpenBSD, NetBSD
  27. license = BSD
  28. license_files = LICENSE
  29. project_urls =
  30. Bug Tracker = https://github.com/borgbackup/borg/issues
  31. Documentation = https://borgbackup.readthedocs.io
  32. Source Code = https://github.com/borgbackup/borg
  33. [options]
  34. packages = find_namespace:
  35. package_dir =
  36. =src
  37. python_requires = >=3.9
  38. install_requires =
  39. msgpack >=1.0.3, <=1.0.5
  40. packaging
  41. platformdirs >=3.0.0, <4.0.0; sys_platform == 'darwin' # for macOS: breaking changes in 3.0.0,
  42. platformdirs >=2.6.0, <4.0.0; sys_platform != 'darwin' # for others: 2.6+ works consistently.
  43. argon2-cffi
  44. tests_require =
  45. pytest
  46. zip_safe = False
  47. # See also the MANIFEST.in file.
  48. # We want to install all the files in the package directories...
  49. include_package_data = true
  50. # ...except the source files which have been compiled (C extensions):
  51. [options.exclude_package_data]
  52. * =
  53. *.c
  54. *.h
  55. *.pyx
  56. [options.packages.find]
  57. where = src
  58. [options.entry_points]
  59. console_scripts =
  60. borg = borg.archiver:main
  61. borgfs = borg.archiver:main
  62. [options.extras_require]
  63. llfuse = llfuse >= 1.3.8
  64. pyfuse3 = pyfuse3 >= 3.1.1
  65. nofuse =
  66. [tool:pytest]
  67. python_files = testsuite/*.py
  68. markers =
  69. allow_cache_wipe
  70. [flake8]
  71. # for reference ...
  72. # E402 module level import not at top
  73. # E501 line too long
  74. # F401 import unused
  75. # F405 undefined or defined from star imports
  76. # F811 redef of unused var
  77. # #### Pick either W503, or W504 - latest recommendation from pep8 is to ignore W503
  78. # W503 line break before binary operator
  79. # W504 line break after binary operator
  80. # borg code style guidelines:
  81. # Ignoring E203 due to https://github.com/PyCQA/pycodestyle/issues/373
  82. ignore = W503, E203, F405, E402
  83. # Code style violation exceptions:
  84. # please note that the values are adjusted so that they do not cause failures
  85. # with existing code. if you want to change them, you should first fix all
  86. # flake8 failures that appear with your change.
  87. per_file_ignores =
  88. src/borg/archive.py:E501
  89. src/borg/archiver/help_cmd.py:E501
  90. src/borg/cache.py:E501
  91. src/borg/helpers/__init__.py:F401
  92. src/borg/platform/__init__.py:F401
  93. src/borg/testsuite/archiver/disk_full.py:F811
  94. src/borg/testsuite/archiver/return_codes.py:F811
  95. src/borg/testsuite/benchmark.py:F811
  96. src/borg/testsuite/platform.py:F811
  97. max_line_length = 120
  98. exclude = build,dist,.git,.idea,.cache,.tox
  99. [mypy]
  100. python_version = 3.9
  101. strict_optional = False
  102. local_partial_types = True
  103. show_error_codes = True
  104. files = src/borg/**/*.py
  105. [mypy-msgpack.*]
  106. ignore_missing_imports = True
  107. [mypy-llfuse]
  108. ignore_missing_imports = True
  109. [mypy-pyfuse3]
  110. ignore_missing_imports = True
  111. [mypy-trio]
  112. ignore_missing_imports = True
  113. [mypy-borg.crypto.low_level]
  114. ignore_missing_imports = True
  115. [mypy-borg.platform.*]
  116. ignore_missing_imports = True