|  | @@ -37,7 +37,7 @@ jobs:
 | 
	
		
			
				|  |  |      timeout-minutes: 5
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      steps:
 | 
	
		
			
				|  |  | -    - uses: actions/checkout@v3
 | 
	
		
			
				|  |  | +    - uses: actions/checkout@v4
 | 
	
		
			
				|  |  |      - uses: chartboost/ruff-action@v1
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    linux:
 | 
	
	
		
			
				|  | @@ -73,7 +73,7 @@ jobs:
 | 
	
		
			
				|  |  |      timeout-minutes: 120
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      steps:
 | 
	
		
			
				|  |  | -    - uses: actions/checkout@v3
 | 
	
		
			
				|  |  | +    - uses: actions/checkout@v4
 | 
	
		
			
				|  |  |        with:
 | 
	
		
			
				|  |  |          # just fetching 1 commit is not enough for setuptools-scm, so we fetch all
 | 
	
		
			
				|  |  |          fetch-depth: 0
 | 
	
	
		
			
				|  | @@ -129,29 +129,29 @@ jobs:
 | 
	
		
			
				|  |  |        fail-fast: true
 | 
	
		
			
				|  |  |        matrix:
 | 
	
		
			
				|  |  |          include:
 | 
	
		
			
				|  |  | -            - os: macos-12
 | 
	
		
			
				|  |  | +            - os: macos-14
 | 
	
		
			
				|  |  |                python-version: '3.11'
 | 
	
		
			
				|  |  |                toxenv: py311-none  # note: no fuse testing, due to #6099, see also #6196.
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      env:
 | 
	
		
			
				|  |  |        # Configure pkg-config to use OpenSSL from Homebrew
 | 
	
		
			
				|  |  | -      PKG_CONFIG_PATH: "/usr/local/opt/openssl@1.1/lib/pkgconfig:$PKG_CONFIG_PATH"
 | 
	
		
			
				|  |  | +      PKG_CONFIG_PATH: "/usr/local/opt/openssl@3.0/lib/pkgconfig:$PKG_CONFIG_PATH"
 | 
	
		
			
				|  |  |        TOXENV: ${{ matrix.toxenv }}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      runs-on: ${{ matrix.os }}
 | 
	
		
			
				|  |  |      timeout-minutes: 180
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      steps:
 | 
	
		
			
				|  |  | -    - uses: actions/checkout@v3
 | 
	
		
			
				|  |  | +    - uses: actions/checkout@v4
 | 
	
		
			
				|  |  |        with:
 | 
	
		
			
				|  |  |          # just fetching 1 commit is not enough for setuptools-scm, so we fetch all
 | 
	
		
			
				|  |  |          fetch-depth: 0
 | 
	
		
			
				|  |  |      - name: Set up Python ${{ matrix.python-version }}
 | 
	
		
			
				|  |  | -      uses: actions/setup-python@v4
 | 
	
		
			
				|  |  | +      uses: actions/setup-python@v5
 | 
	
		
			
				|  |  |        with:
 | 
	
		
			
				|  |  |          python-version: ${{ matrix.python-version }}
 | 
	
		
			
				|  |  |      - name: Cache pip
 | 
	
		
			
				|  |  | -      uses: actions/cache@v3
 | 
	
		
			
				|  |  | +      uses: actions/cache@v4
 | 
	
		
			
				|  |  |        with:
 | 
	
		
			
				|  |  |          path: ~/.cache/pip
 | 
	
		
			
				|  |  |          key: ${{ runner.os }}-pip-${{ hashFiles('requirements.d/development.txt') }}
 | 
	
	
		
			
				|  | @@ -170,21 +170,21 @@ jobs:
 | 
	
		
			
				|  |  |        env:
 | 
	
		
			
				|  |  |          # we already have that in the global env, but something is broken and overwrites that.
 | 
	
		
			
				|  |  |          # so, set it here, again.
 | 
	
		
			
				|  |  | -        PKG_CONFIG_PATH: "/usr/local/opt/openssl@1.1/lib/pkgconfig:$PKG_CONFIG_PATH"
 | 
	
		
			
				|  |  | +        PKG_CONFIG_PATH: "/usr/local/opt/openssl@3.0/lib/pkgconfig:$PKG_CONFIG_PATH"
 | 
	
		
			
				|  |  |        run: |
 | 
	
		
			
				|  |  | -        pip install -e .
 | 
	
		
			
				|  |  | +        pip install -ve .
 | 
	
		
			
				|  |  |      - name: run tox env
 | 
	
		
			
				|  |  |        env:
 | 
	
		
			
				|  |  |          # we already have that in the global env, but something is broken and overwrites that.
 | 
	
		
			
				|  |  |          # so, set it here, again.
 | 
	
		
			
				|  |  | -        PKG_CONFIG_PATH: "/usr/local/opt/openssl@1.1/lib/pkgconfig:$PKG_CONFIG_PATH"
 | 
	
		
			
				|  |  | +        PKG_CONFIG_PATH: "/usr/local/opt/openssl@3.0/lib/pkgconfig:$PKG_CONFIG_PATH"
 | 
	
		
			
				|  |  |          XDISTN: "6"
 | 
	
		
			
				|  |  |        run: |
 | 
	
		
			
				|  |  |          # do not use fakeroot, but run as root. avoids the dreaded EISDIR sporadic failures. see #2482.
 | 
	
		
			
				|  |  |          #sudo -E bash -c "tox -e py"
 | 
	
		
			
				|  |  |          tox --skip-missing-interpreters
 | 
	
		
			
				|  |  |      - name: Upload coverage to Codecov
 | 
	
		
			
				|  |  | -      uses: codecov/codecov-action@v3
 | 
	
		
			
				|  |  | +      uses: codecov/codecov-action@v4
 | 
	
		
			
				|  |  |        env:
 | 
	
		
			
				|  |  |          OS: ${{ runner.os }}
 | 
	
		
			
				|  |  |          python: ${{ matrix.python-version }}
 | 
	
	
		
			
				|  | @@ -207,7 +207,7 @@ jobs:
 | 
	
		
			
				|  |  |          shell: msys2 {0}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      steps:
 | 
	
		
			
				|  |  | -      - uses: actions/checkout@v3
 | 
	
		
			
				|  |  | +      - uses: actions/checkout@v4
 | 
	
		
			
				|  |  |          with:
 | 
	
		
			
				|  |  |            fetch-depth: 0
 | 
	
		
			
				|  |  |        - uses: msys2/setup-msys2@v2
 | 
	
	
		
			
				|  | @@ -223,7 +223,7 @@ jobs:
 | 
	
		
			
				|  |  |            pyinstaller -y scripts/borg.exe.spec
 | 
	
		
			
				|  |  |            # build sdist and wheel in dist/...
 | 
	
		
			
				|  |  |            SETUPTOOLS_USE_DISTUTILS=stdlib python -m build
 | 
	
		
			
				|  |  | -      - uses: actions/upload-artifact@v3
 | 
	
		
			
				|  |  | +      - uses: actions/upload-artifact@v4
 | 
	
		
			
				|  |  |          with:
 | 
	
		
			
				|  |  |            name: borg-windows
 | 
	
		
			
				|  |  |            path: dist/borg.exe
 |