Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
1d00662
Adding requirements.txt into MANIFEST.in
cfuentes-dbx Dec 17, 2025
96a8f3d
Updating coverage.yml
cfuentes-dbx Dec 17, 2025
f5fa12b
Fixing python version for Integration Coverage
cfuentes-dbx Dec 17, 2025
171afed
Updating macos in ci.yml
cfuentes-dbx Dec 17, 2025
1f4c5da
Updating Workflows to deprecate all version of pythons & macos
cfuentes-dbx Dec 17, 2025
a1ba3a7
Updating Workflows to deprecate all version of pythons & macos: ci.yml
cfuentes-dbx Dec 17, 2025
3598daa
Updating Workflows to deprecate all version of pythons & macos: ci.yml
cfuentes-dbx Dec 17, 2025
afc7651
Updating Workflows to deprecate all version of pythons & macos: ci.ym…
cfuentes-dbx Dec 17, 2025
3dd8695
ci.yml going back to ubuntu 20.04 for 3.7
cfuentes-dbx Dec 17, 2025
1d97bb2
ci.yml going back to ubuntu 20.04 for Docs
cfuentes-dbx Dec 17, 2025
f74dae2
Reverting setup-python
cfuentes-dbx Dec 17, 2025
24590fb
Changing actions to Ubuntu 22.04 as 20.04 is deprecated
cfuentes-dbx Dec 18, 2025
830f5a3
Removing python2.7
cfuentes-dbx Dec 18, 2025
05c0151
Changing actions versions
cfuentes-dbx Dec 18, 2025
4269ce8
Changing actions versions
cfuentes-dbx Dec 18, 2025
7806bed
Changing actions versions
cfuentes-dbx Dec 18, 2025
e04ec35
Changing actions versions
cfuentes-dbx Dec 18, 2025
6677bec
Changing actions versions
cfuentes-dbx Dec 18, 2025
3176fd7
Changing actions versions
cfuentes-dbx Dec 18, 2025
67a50ad
Changing actions versions
cfuentes-dbx Dec 18, 2025
fb0a38d
Changing actions versions
cfuentes-dbx Dec 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
171 changes: 97 additions & 74 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,104 +6,127 @@ jobs:
CI:
continue-on-error: true
runs-on: ${{ matrix.os }}
# Supported Versions:
# https://github.com/actions/python-versions/blob/main/versions-manifest.json

strategy:
fail-fast: false
matrix:
os: [macos-13, windows-latest]
python-version: [3.6, 3.7, 3.8, pypy-3.7]
exclude:
- os: windows-latest
python-version: 3.6
include:
- os: ubuntu-20.04
python-version: 3.7
- os: ubuntu-20.04
python-version: 2.7
os: [macos-15-intel, macos-latest, windows-latest, ubuntu-latest]
python-version: ["3.9", "3.10", "3.11"]

steps:
- uses: actions/checkout@v2
- if: ${{ matrix.python-version == '2.7' }}
name: Setup Python environment (2.7)
run: |
sudo apt-get install python-is-python2
curl -sSL https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
python get-pip.py
- if: ${{ matrix.python-version != '2.7' }}
name: Setup Python environment
uses: actions/setup-python@v3.1.4
- uses: actions/checkout@v5

- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install Requirements
cache: "pip"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8 pytest
pip install -r requirements.txt
pip install -r test/requirements.txt
python setup.py install --user
- name: Run Linter
python -m pip install -U pip
python -m pip install -U build flake8 pytest
python -m pip install -r requirements.txt
python -m pip install -r test/requirements.txt

- name: Build wheel
run: python -m build --wheel

- name: Show dist contents
run: ls -la dist
shell: bash

- name: Install package from wheel (robust)
shell: bash
run: |
WHEEL="$(python -c "import glob; w=glob.glob('dist/*.whl'); print(w[0] if w else '')")"
if [ -z "$WHEEL" ]; then
echo "No wheel was built. dist contains:"
ls -la dist || true
exit 1
fi
python -m pip install "$WHEEL"

- name: Run linter
run: |
flake8 setup.py dropbox example test
- name: Run Unit Tests

- name: Run unit tests
run: |
pytest -v test/unit/test_dropbox_unit.py
Docs:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Python environment
uses: actions/setup-python@v3.1.4
- uses: actions/checkout@v5

- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.7'
- name: Install Requirements
python-version: "3.9"
cache: "pip"

- name: Install build and doc tooling
run: |
python -m pip install --upgrade pip
pip install twine sphinx
pip install -r requirements.txt
pip install -r test/requirements.txt
python setup.py install
- name: Test Doc Generation
python -m pip install -U pip
python -m pip install build twine sphinx
python -m pip install -r requirements.txt
python -m pip install -r test/requirements.txt

- name: Build sdist and wheel (PEP 517)
run: python -m build

- name: Validate distribution metadata
run: twine check dist/*

- name: Build wheel
run: python -m build --wheel

- name: Install package from wheel
run: |
sphinx-build -b html docs build/html
- name: Test Dist Generation
python -c "import glob,sys; w=glob.glob('dist/*.whl'); assert w, f'No wheel built. dist contains: {glob.glob(\"dist/*\")}'; print(w[0])"
python -c "import glob; print(glob.glob('dist/*.whl')[0])" > wheel_path.txt
python -m pip install "$(cat wheel_path.txt)"
shell: bash


- name: Test documentation generation
run: |
python setup.py sdist bdist_wheel
twine check dist/*
sphinx-build -b html docs build/html

Integration:
continue-on-error: true
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-13, windows-latest]
python-version: [3.6, 3.7, 3.8, pypy-3.7]
exclude:
- os: windows-latest
python-version: 3.6
include:
- os: ubuntu-20.04
python-version: 3.7
- os: ubuntu-20.04
python-version: 2.7
os: [macos-15-intel, macos-latest, windows-latest, ubuntu-latest]
python-version: ["3.9", "3.10", "3.11"]

steps:
- uses: actions/checkout@v2.3.4
- if: ${{ matrix.python-version == '2.7' }}
name: Setup Python environment (2.7)
run: |
sudo apt-get install python-is-python2
curl -sSL https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
python get-pip.py
- if: ${{ matrix.python-version != '2.7' }}
name: Setup Python environment
uses: actions/setup-python@v3.1.4
- uses: actions/checkout@v5

- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install Requirements
cache: "pip"

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8 pytest
pip install -r requirements.txt
pip install -r test/requirements.txt
python setup.py install --user
- name: Run Integration Tests
python -m pip install -U pip
python -m pip install -U build pytest
python -m pip install -r requirements.txt
python -m pip install -r test/requirements.txt

- name: Build wheel
run: python -m build --wheel

- name: Install package from wheel (cross-platform)
shell: bash
run: |
python -m pip install "$(python -c "import glob,sys; w=glob.glob('dist/*.whl'); assert w, f'No wheel built. dist contains: {glob.glob(\"dist/*\")}'; print(w[0])")"

- name: Run integration tests
env:
LEGACY_USER_DROPBOX_TOKEN: ${{ secrets.LEGACY_USER_DROPBOX_TOKEN }}
LEGACY_USER_CLIENT_ID: ${{ secrets.LEGACY_USER_CLIENT_ID }}
Expand All @@ -119,4 +142,4 @@ jobs:
SCOPED_TEAM_REFRESH_TOKEN: ${{ secrets.SCOPED_TEAM_REFRESH_TOKEN }}
DROPBOX_SHARED_LINK: ${{ secrets.DROPBOX_SHARED_LINK }}
run: |
pytest -v test/integration/test_dropbox.py
pytest -v test/integration/test_dropbox.py
18 changes: 14 additions & 4 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,16 @@ jobs:
Coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Setup Python environment
uses: actions/setup-python@v3.1.4
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: '3.9'
- name: Setup virtual environment
run: |
python -m venv venv
source venv/bin/activate
python -m pip install --upgrade pip
- name: Install Requirements
run: |
python -m pip install --upgrade pip
Expand All @@ -40,7 +45,12 @@ jobs:
- name: Setup Python environment
uses: actions/setup-python@v3.1.4
with:
python-version: '3.7'
python-version: '3.9'
- name: Setup virtual environment
run: |
python -m venv venv
source venv/bin/activate
python -m pip install --upgrade pip
- name: Install Requirements
run: |
python -m pip install --upgrade pip
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/pypiupload.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ on:

jobs:
deploy:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [2.7, 3.7]
python-version: [2.7, 3.x]

steps:
- uses: actions/checkout@v2.3.4
Expand All @@ -24,7 +24,7 @@ jobs:
python get-pip.py
- if: ${{ matrix.python-version != '2.7' }}
name: Setup Python environment
uses: actions/setup-python@v3.1.4
uses: actions/setup-python@vv3.1.4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/spec_update.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ jobs:
Update:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: Setup Python environment
uses: actions/setup-python@v3.1.4
with:
python-version: 3.7
python-version: 3.9
- name: Get current time
uses: 1466587594/get-current-time@v2
id: current-time
Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
include ez_setup.py
include LICENSE
include *.rst
include requirements.txt
include test/requirements.txt
1 change: 1 addition & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: PyPy',
'Topic :: Software Development :: Libraries :: Python Modules',
Expand Down