소스 검색

Merge pull request #7980 from ThomasWaldmann/drop-py38-1.4

require python >= 3.9, drop py38, fixes #6383
TW 1 년 전
부모
커밋
121c870242
8개의 변경된 파일16개의 추가작업 그리고 20개의 파일을 삭제
  1. 4 7
      .github/workflows/ci.yml
  2. 1 1
      .github/workflows/codeql-analysis.yml
  3. 1 1
      Vagrantfile
  4. 1 1
      docs/development.rst
  5. 4 4
      docs/installation.rst
  6. 1 2
      setup.py
  7. 3 3
      src/borg/archiver.py
  8. 1 1
      tox.ini

+ 4 - 7
.github/workflows/ci.yml

@@ -39,7 +39,7 @@ jobs:
     - name: Set up Python
       uses: actions/setup-python@v4
       with:
-        python-version: 3.8
+        python-version: 3.9
     - name: Lint with flake8
       run: |
         pip install flake8
@@ -52,12 +52,9 @@ jobs:
       fail-fast: false
       matrix:
         include:
-            - os: ubuntu-20.04
-              python-version: '3.8'
-              toxenv: py38-fuse2
             - os: ubuntu-20.04
               python-version: '3.9'
-              toxenv: py39-fuse3
+              toxenv: py39-fuse2
             - os: ubuntu-20.04
               python-version: '3.10'
               toxenv: py310-fuse3
@@ -68,8 +65,8 @@ jobs:
               python-version: '3.12'
               toxenv: py312-fuse3
             - os: macos-12
-              python-version: '3.8'
-              toxenv: py38-none  # note: no fuse testing, due to #6099, see also #6196.
+              python-version: '3.9'
+              toxenv: py39-none  # note: no fuse testing, due to #6099, see also #6196.
 
     env:
       # Configure pkg-config to use OpenSSL from Homebrew

+ 1 - 1
.github/workflows/codeql-analysis.yml

@@ -36,7 +36,7 @@ jobs:
     - name: Set up Python
       uses: actions/setup-python@v4
       with:
-        python-version: 3.8
+        python-version: 3.9
     - name: Cache pip
       uses: actions/cache@v3
       with:

+ 1 - 1
Vagrantfile

@@ -440,6 +440,6 @@ Vagrant.configure(2) do |config|
     b.vm.provision "run tests", :type => :shell, :privileged => false, :inline => run_tests("openindiana64", ".*fuse.*")
   end
 
-  # TODO: create more VMs with python 3.8+ and openssl 1.1.
+  # TODO: create more VMs with python 3.9+ and openssl 1.1.
   # See branch 1.1-maint for a better equipped Vagrantfile (but still on py35 and openssl 1.0).
 end

+ 1 - 1
docs/development.rst

@@ -186,7 +186,7 @@ Some more advanced examples::
   # verify a changed tox.ini (run this after any change to tox.ini):
   fakeroot -u tox --recreate
 
-  fakeroot -u tox -e py38  # run all tests, but only on python 3.8
+  fakeroot -u tox -e py39  # run all tests, but only on python 3.9
 
   fakeroot -u tox borg.testsuite.locking  # only run 1 test module
 

+ 4 - 4
docs/installation.rst

@@ -159,7 +159,7 @@ Dependencies
 To install Borg from a source package (including pip), you have to install the
 following dependencies first:
 
-* `Python 3`_ >= 3.8.0, plus development headers.
+* `Python 3`_ >= 3.9.0, plus development headers.
 * OpenSSL_ >= 1.0.0, plus development headers.
 * libacl_ (which depends on libattr_), both plus development headers.
 * We have bundled code of the following packages, but borg by default (see
@@ -414,9 +414,9 @@ If you need to use a different version of Python you can install this using ``py
 
     ...
     # create a virtual environment
-    pyenv install 3.8.0  # minimum, preferably use something more recent!
-    pyenv global 3.8.0
-    pyenv local 3.8.0
+    pyenv install 3.9.0  # minimum, preferably use something more recent!
+    pyenv global 3.9.0
+    pyenv local 3.9.0
     virtualenv --python=${pyenv which python} borg-env
     source borg-env/bin/activate   # always before using!
     ...

+ 1 - 2
setup.py

@@ -281,7 +281,6 @@ setup(
         'Operating System :: POSIX :: Linux',
         'Programming Language :: Python',
         'Programming Language :: Python :: 3',
-        'Programming Language :: Python :: 3.8',
         'Programming Language :: Python :: 3.9',
         'Programming Language :: Python :: 3.10',
         'Programming Language :: Python :: 3.11',
@@ -310,5 +309,5 @@ setup(
     setup_requires=['setuptools_scm>=1.7'],
     install_requires=install_requires,
     extras_require=extras_require,
-    python_requires='>=3.8',
+    python_requires='>=3.9',
 )

+ 3 - 3
src/borg/archiver.py

@@ -2584,11 +2584,11 @@ class Archiver:
 
         {now}
             The current local date and time, by default in ISO-8601 format.
-            You can also supply your own `format string <https://docs.python.org/3.8/library/datetime.html#strftime-and-strptime-behavior>`_, e.g. {now:%Y-%m-%d_%H:%M:%S}
+            You can also supply your own `format string <https://docs.python.org/3.9/library/datetime.html#strftime-and-strptime-behavior>`_, e.g. {now:%Y-%m-%d_%H:%M:%S}
 
         {utcnow}
             The current UTC date and time, by default in ISO-8601 format.
-            You can also supply your own `format string <https://docs.python.org/3.8/library/datetime.html#strftime-and-strptime-behavior>`_, e.g. {utcnow:%Y-%m-%d_%H:%M:%S}
+            You can also supply your own `format string <https://docs.python.org/3.9/library/datetime.html#strftime-and-strptime-behavior>`_, e.g. {utcnow:%Y-%m-%d_%H:%M:%S}
 
         {user}
             The user name (or UID, if no name is available) of the user running borg.
@@ -4514,7 +4514,7 @@ class Archiver:
         +++++++++++++++++++++++++++
 
         The ``--format`` option uses python's `format string syntax
-        <https://docs.python.org/3.8/library/string.html#formatstrings>`_.
+        <https://docs.python.org/3.9/library/string.html#formatstrings>`_.
 
         Examples:
         ::

+ 1 - 1
tox.ini

@@ -2,7 +2,7 @@
 # fakeroot -u tox --recreate
 
 [tox]
-envlist = py{38,39,310,311,312}-{none,fuse2,fuse3}
+envlist = py{39,310,311,312}-{none,fuse2,fuse3}
 requires =
 	pkgconfig
 	cython