diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index c991ddc..79a9e7c 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -14,24 +14,20 @@ on: jobs: check_document: name: Check packaging 📦 - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 20 fetch-tags: true - - name: Set up Python 3.9 - uses: actions/setup-python@v4 + - name: Set up Python 3.12 + uses: actions/setup-python@v5 with: - python-version: '3.9' + python-version: '3.12' - name: Install tools run: | pip install -U pip pip install tox tox-gh-actions coveralls coverage[toml] - - name: Check invocation with Python2 - run: | - ! python2 -m aqt help - [[ $(python2 -m aqt help) == "aqtinstall requires python 3!" ]] - name: Check run: tox env: diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml index 3a1585d..828d911 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis.yml @@ -28,7 +28,7 @@ jobs: steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Initialize CodeQL uses: github/codeql-action/init@v2 diff --git a/.github/workflows/publish-to-pypi.yml b/.github/workflows/publish-to-pypi.yml index eb45262..430490f 100644 --- a/.github/workflows/publish-to-pypi.yml +++ b/.github/workflows/publish-to-pypi.yml @@ -12,18 +12,18 @@ on: jobs: build-n-publish: name: Build and publish Python 🐍 distributions 📦 to PyPI - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Checkout 🛎️ - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 50 - name: Fetch release tag run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* - - name: Set up Python 3.10🐍 - uses: actions/setup-python@v4 + - name: Set up Python 3.12🐍 + uses: actions/setup-python@v5 with: - python-version: '3.10' + python-version: '3.12' - name: Install build and twine run: python -m pip install build twine --user - name: Build release assets diff --git a/.github/workflows/release-note.yml b/.github/workflows/release-note.yml index 9dfa31b..4f22be2 100644 --- a/.github/workflows/release-note.yml +++ b/.github/workflows/release-note.yml @@ -7,7 +7,7 @@ jobs: create-release-notes: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Create Release Notes uses: docker://decathlon/release-notes-generator-action:2.0.0 env: diff --git a/.github/workflows/test-install-qt.yml b/.github/workflows/test-install-qt.yml index bdaa6ae..52a7b30 100644 --- a/.github/workflows/test-install-qt.yml +++ b/.github/workflows/test-install-qt.yml @@ -15,35 +15,31 @@ jobs: strategy: matrix: os: [windows-latest, ubuntu-latest] - py: ["3.9", "3.12"] - qtver: [5.9.9, 6.1.0] + py: ["3.12"] + qtver: [6.5.3, 6.6.3] artifact: [standard] include: - os: windows-latest - py: "3.10" - qtver: 6.1.0 + py: "3.12" + qtver: 6.6.3 artifact: binary - - os: ubuntu-20.04 - py: "3.10" - qtver: 6.1.0 + - os: windows-latest + py: "3.12" + qtver: 6.7.3 artifact: standard - exclude: - os: ubuntu-latest - py: "3.10" - qtver: 6.1.0 + py: "3.12" + qtver: 6.8.0 + artifact: standard steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 20 fetch-tags: true - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.py }} - - name: Run pytest - run: | - python -m pip install tox-gh-actions build - tox - name: Build and install if: matrix.artifact == 'standard' run: | @@ -88,24 +84,22 @@ jobs: bin_path = str(github_workspace / "dist" / "aqt.exe") else: bin_path = (github_workspace / "dist" / "aqt").as_posix() - prefix = [bin_path, "install"] + prefix = [bin_path, "install-qt"] else: - prefix = ["python", "-m", "aqt", "install"] + prefix = ["python", "-m", "aqt", "install-qt"] command_line = [] command_line.extend(prefix) if platform == "windows-latest": - if qtver.startswith('5.15'): - args = [qtver, "windows", "desktop", "win64_msvc2019_64"] - elif qtver.startswith('5.14'): - args = [qtver, "windows", "desktop", "win64_msvc2017_64"] - elif qtver.startswith('6'): - args = [qtver, "windows", "desktop", "win64_mingw81"] + if qtver.startswith('6.6'): + args = ["windows", "desktop", qtver, "win64_mingw"] else: - args = [qtver, "windows", "desktop", "win64_msvc2015_64"] + args = ["windows", "desktop", qtver, "win64_msvc2019_64"] elif platform == "macOS-latest": - args = [qtver, "mac", "desktop", "clang_64"] + args = ["mac", "desktop", qtver, "clang_64"] + elif qtver.startswith('6.8'): + args = ["linux", "desktop", qtver, "linux_gcc_64"] else: - args = [qtver, "linux", "desktop", "gcc_64"] + args = ["linux", "desktop", qtver, "gcc_64"] command_line.extend(args) command_line.extend(["--archives", "qtbase", "icu", "qt"]) env["AQT_CONFIG"] = (github_workspace / "ci" / "settings.ini").as_posix() @@ -116,17 +110,17 @@ jobs: except subprocess.CalledProcessError as cpe: exit(cpe.returncode) assert res.returncode == 0 - if qtver.startswith('6'): + if qtver.startswith('6.6'): command_line6 = [] command_line6.extend(prefix) if platform.startswith("ubuntu"): - command_line6.extend([qtver, "linux", "android", "android_armv7"]) + command_line6.extend(["linux", "android", qtver, "android_armv7"]) timeout = 360 elif platform.startswith("macOS"): - command_line6.extend([qtver, "mac", "ios", "ios"]) + command_line6.extend(["mac", "ios", qtver, "ios"]) timeout = 360 else: - command_line6.extend([qtver, "windows", "android", "android_armv7"]) + command_line6.extend(["windows", "android", qtver, "android_armv7"]) timeout = 360 print("Execute: {}".format(command_line6)) try: @@ -145,14 +139,10 @@ jobs: platform = "${{ matrix.os }}" qtver = "${{ matrix.qtver }}" if platform == "windows-latest": - if qtver.startswith('5.15'): - arch_dir = 'msvc2019_64' - elif qtver.startswith('5.14'): - arch_dir = 'msvc2017_64' - elif qtver.startswith('6'): - arch_dir = 'mingw81_64' + if qtver.startswith('6.6'): + arch_dir = 'mingw_64' else: - arch_dir = 'msvc2015_64' + arch_dir = 'msvc2019_64' elif platform == "macOS-latest": arch_dir = 'clang_64' else: @@ -161,29 +151,35 @@ jobs: res = run([f"{qtver}/{arch_dir}/bin/qmake", "-query"], timeout=15, check=True, stdout=PIPE) except CalledProcessError as cpe: exit(cpe.returncode) - if res.returncode == 0: - qt_prefix_path = pathlib.Path.cwd() / qtver / arch_dir + assert res.returncode == 0 + print('Check prefix path qmake recognized...') + qt_prefix_path = pathlib.Path.cwd() / qtver / arch_dir + for line in res.stdout.splitlines(): + if line.startswith(b'QT_INSTALL_PREFIX'): + result = line[18:].decode('UTF-8') + assert qt_prefix_path.samefile(result) + print('QT_INSTALL_PREFIX {}\nExpected path {}'.format(result, qt_prefix_path)) + if qtver.startswith('6.6'): + print('Check prefix path by android/ios qmake recognized...') + if platform == "windows-latest": + target_dir = 'android_armv7' + qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake.bat') + elif platform == "macOS-latest": + target_dir = 'ios' + qmake = os.path.join(qtver, 'ios', 'bin', 'qmake') + else: + target_dir = 'android_armv7' + qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake') + try: + res = run([qmake, "-query"], timeout=15, check=True, stdout=PIPE) + except CalledProcessError as cpe: + exit(cpe.returncode) + assert res.returncode == 0 + expected_path = pathlib.Path.cwd() / qtver / target_dir for line in res.stdout.splitlines(): if line.startswith(b'QT_INSTALL_PREFIX'): result = line[18:].decode('UTF-8') - assert qt_prefix_path.samefile(result) - print('PREFIX {}'.format(result)) - if qtver.startswith('6'): - if platform == "windows-latest" and qtver.startswith('6'): - qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake.bat') - elif platform == "macOS-latest" and qtver.startswith('6'): - qmake = os.path.join(qtver, 'ios', 'bin', 'qmake') - else: - qmake = os.path.join(qtver, 'android_armv7', 'bin', 'qmake') - try: - res = run([qmake, "-query"], timeout=15, check=True, stdout=PIPE) - except CalledProcessError as cpe: - exit(cpe.returncode) - assert res.returncode == 0 - for line in res.stdout.splitlines(): - if line.startswith(b'QT_INSTALL_PREFIX'): - result = line[18:].decode('UTF-8') - print('PREFIX {}'.format(result)) + print('QT_INATALL_PREFIX {}\nExpected path {}'.format(result, expected_path)) shell: python working-directory: ${{ github.workspace }} - uses: actions/upload-artifact@v4 diff --git a/.github/workflows/upload-release-artifacts.yml b/.github/workflows/upload-release-artifacts.yml index 89a02b6..d395bac 100644 --- a/.github/workflows/upload-release-artifacts.yml +++ b/.github/workflows/upload-release-artifacts.yml @@ -25,12 +25,12 @@ jobs: run: shell: ${{ matrix.system.os == 'windows-latest' && 'pwsh' || 'bash' }} {0} steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 20 - run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.py }} architecture: ${{ matrix.system.arch }} diff --git a/README.rst b/README.rst index 3b265b0..fa6b1b0 100644 --- a/README.rst +++ b/README.rst @@ -56,7 +56,7 @@ Requirements 3.9 - Recommended Python version: - 3.9, 3.12 (frequently tested on) + 3.12 (frequently tested on) - Dependencies: requests diff --git a/azure-pipelines.yml b/azure-pipelines.yml index b1c8441..6318e95 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -1,21 +1,15 @@ -trigger: none -pr: none -schedules: -- cron: '0 12 * * 0' - displayName: Weekly sunday full tests - branches: - include: - - master +trigger: [master] +pr: [master] jobs: - job: MatricesGenerator displayName: Matrices Generator pool: - vmImage: 'ubuntu-20.04' + vmImage: 'ubuntu-22.04' steps: - task: UsePythonVersion@0 inputs: - versionSpec: '3.9' + versionSpec: '3.12' addToPath: true - bash: python ci/generate_azure_pipelines_matrices.py name: mtrx @@ -54,14 +48,14 @@ jobs: steps: - template: ci/steps.yml -- job: Linux_ARM64 - dependsOn: MatricesGenerator - pool: - vmImage: 'ubuntu-22.04' - container: - image: ubuntu:22.04 - options: --platform linux/arm64 - strategy: - matrix: $[ dependencies.MatricesGenerator.outputs['mtrx.linux_arm64'] ] - steps: - - template: ci/steps.yml \ No newline at end of file +#- job: Linux_ARM64 +# dependsOn: MatricesGenerator +# pool: +# vmImage: 'ubuntu-22.04' +# container: +# image: ubuntu:22.04 +# options: --platform linux/arm64 +# strategy: +# matrix: $[ dependencies.MatricesGenerator.outputs['mtrx.linux_arm64'] ] +# steps: +# - template: ci/steps.yml diff --git a/ci/generate_azure_pipelines_matrices.py b/ci/generate_azure_pipelines_matrices.py index d3dfc44..b06994d 100644 --- a/ci/generate_azure_pipelines_matrices.py +++ b/ci/generate_azure_pipelines_matrices.py @@ -60,7 +60,7 @@ class BuildJob: def qt_bindir(self, *, sep='/') -> str: out_dir = f"$(Build.BinariesDirectory){sep}Qt" if not self.output_dir else self.output_dir - version_dir = "5.9" if self.qt_version == "5.9.0" else self.qt_version + version_dir = self.qt_version return f"{out_dir}{sep}{version_dir}{sep}{self.archdir}{sep}bin" def win_qt_bindir(self) -> str: @@ -68,7 +68,7 @@ class BuildJob: def autodesk_qt_bindir(self, *, sep='/') -> str: out_dir = f"$(Build.BinariesDirectory){sep}Qt" if not self.output_dir else self.output_dir - version_dir = "5.9" if self.qt_version == "5.9.0" else self.qt_version + version_dir = self.qt_version return f"{out_dir}{sep}{version_dir}{sep}{self.autodesk_arch_folder or self.archdir}{sep}bin" def win_autodesk_qt_bindir(self) -> str: @@ -87,9 +87,9 @@ class PlatformBuildJobs: self.build_jobs = build_jobs -python_versions = ["3.9", "3.11", "3.12"] +python_versions = ["3.12"] -qt_versions = ["5.12.12", "5.15.14", "6.5.3"] +qt_versions = ["6.5.3"] linux_build_jobs = [] linux_arm64_build_jobs = [] @@ -113,107 +113,25 @@ linux_arm64_build_jobs.append(BuildJob("install-qt", "6.7.0", "linux_arm64", "de # Mac Desktop for qt_version in qt_versions: mac_build_jobs.append( - BuildJob("install-qt", qt_version, "mac", "desktop", "clang_64", "clang_64") + BuildJob("install-qt", qt_version, "mac", "desktop", "clang_64", "macos") ) +mac_build_jobs.append(BuildJob( + "install-qt", + "6.2.0", + "mac", + "desktop", + "clang_64", + "macos", + module="qtcharts qtnetworkauth", )) # Windows Desktop +for qt_version in qt_versions: + windows_build_jobs.append(BuildJob("install-qt", qt_version, "windows", "desktop", "win64_msvc2019_64", "msvc2019_64")) windows_build_jobs.extend( [ BuildJob( "install-qt", - "5.15.2", - "windows", - "desktop", - "win32_msvc2019", - "msvc2019", - mirror=random.choice(MIRRORS), - ), - BuildJob( - "install-qt", - "5.14.2", - "windows", - "desktop", - "win32_mingw73", - "mingw73_32", - mingw_variant="win32_mingw730", - mirror=random.choice(MIRRORS), - ), - BuildJob( - "install-qt", - "5.11.3", - "windows", - "desktop", - "win32_mingw53", - "mingw53_32", - subarchives="qtwinextras qtmultimedia qtbase qttools", - mingw_variant="win32_mingw530", - mirror=random.choice(MIRRORS), - ), - BuildJob( - "install-qt", - "5.13.2", - "windows", - "desktop", - "win64_msvc2015_64", - "msvc2015_64", - mirror=random.choice(MIRRORS), - ), - BuildJob( - "install-qt", - "5.15.2", - "windows", - "desktop", - "win64_mingw81", - "mingw81_64", - mingw_variant="win64_mingw810", - mirror=random.choice(MIRRORS), - ), - # Known issue with Azure-Pipelines environment: it has a pre-installed mingw81 which cause link error. - # BuildJob('install', '5.15.0', 'windows', 'desktop', 'win32_mingw81', 'mingw81_32', mirror=MIRROR), - BuildJob( - "install-qt", - "5.15.2", - "windows", - "desktop", - "win64_msvc2019_64", - "msvc2019_64", - module="qtcharts qtnetworkauth", - mirror=random.choice(MIRRORS), - ), - BuildJob( - "install-qt", - "5.11.3", - "windows", - "desktop", - "win32_msvc2015", - "msvc2015", - subarchives="qtwinextras qtmultimedia qtbase qttools", - mirror=random.choice(MIRRORS), - ), - BuildJob( - "install-qt", - "5.9.0", - "windows", - "desktop", - "win64_msvc2015_64", - "msvc2015_64", - module="qtcharts qtnetworkauth", - mirror=random.choice(MIRRORS), - ), - BuildJob( - "install-qt", - "5.14.2", - "windows", - "desktop", - "win64_mingw73", - "mingw73_64", - mingw_variant="win64_mingw730", - spec=">1,<5.15", # Don't redirect output! Must be wrapped in quotes! - mirror=random.choice(MIRRORS), - ), - BuildJob( - "install-qt", - "6.5.2", + "6.5.3", "windows", "desktop", "win64_msvc2019_arm64", @@ -232,28 +150,7 @@ windows_build_jobs.extend( # Extra modules test linux_build_jobs.extend( [ - BuildJob( - "install-qt", - "5.15.2", - "linux", - "desktop", - "gcc_64", - "gcc_64", - module="qtcharts qtnetworkauth", - ), - BuildJob( - "install-qt", "5.14.2", "linux", "desktop", "gcc_64", "gcc_64", module="all" - ), - BuildJob( - "install-qt", - "5.15.2", - "linux", - "desktop", - "gcc_64", - "gcc_64", - subarchives="qtbase qttools qt icu qttools", - ), - BuildJob( + BuildJob( # Archives stored as .7z "install-src", "6.1.0", "linux", "desktop", "gcc_64", "gcc_64", subarchives="qtlottie", # Fail the job if this path does not exist: @@ -267,54 +164,25 @@ linux_build_jobs.extend( ), # Should install the `qtlottie` module, even though the archive `qtlottieanimation` is not specified: BuildJob( - "install-doc", "6.1.0", "linux", "desktop", "gcc_64", "gcc_64", + "install-doc", "6.1.3", "linux", "desktop", "gcc_64", "gcc_64", subarchives="qtdoc", module="qtlottie", # Fail the job if these paths do not exist: - check_output_cmd="ls -lh ./Docs/Qt-6.1.0/qtdoc/ ./Docs/Qt-6.1.0/qtlottieanimation/", + check_output_cmd="ls -lh ./Docs/Qt-6.1.3/qtdoc/ ./Docs/Qt-6.1.3/qtlottieanimation/", ), # Should install the `qtcharts` module, even though the archive `qtcharts` is not specified: BuildJob( - "install-example", "6.1.0", "linux", "desktop", "gcc_64", "gcc_64", + "install-example", "6.1.3", "linux", "desktop", "gcc_64", "gcc_64", subarchives="qtdoc", module="qtcharts", # Fail the job if these paths do not exist: - check_output_cmd="ls -lh ./Examples/Qt-6.1.0/charts/ ./Examples/Qt-6.1.0/demos/ ./Examples/Qt-6.1.0/tutorials/", + check_output_cmd="ls -lh ./Examples/Qt-6.1.3/charts/ ./Examples/Qt-6.1.3/demos/ ./Examples/Qt-6.1.3/tutorials/", ), # test for list commands - BuildJob('list', '5.15.2', 'linux', 'desktop', 'gcc_64', '', spec="<6", list_options={'HAS_WASM': "True"}), - BuildJob('list', '6.1.0', 'linux', 'desktop', 'gcc_64', '', spec=">6.0,<6.1.1", list_options={'HAS_WASM': "False"}), - BuildJob('list', '6.1.0', 'linux', 'android', 'android_armv7', '', spec=">6.0,<6.1.1", list_options={}), - # tests run on linux but query data about other platforms - BuildJob('list', '5.14.1', 'mac', 'ios', 'ios', '', spec="<=5.14.1", list_options={}), - BuildJob('list', '5.13.1', 'windows', 'winrt', 'win64_msvc2015_winrt_x64', '', spec=">5.13.0,<5.13.2", list_options={}), - ] -) -mac_build_jobs.extend( - [ - BuildJob( - "install-qt", - "6.2.0", - "mac", - "desktop", - "clang_64", - "macos", - module="qtcharts qtnetworkauth", - ), - BuildJob( - "install-qt", - "5.14.2", - "mac", - "desktop", - "clang_64", - "clang_64", - module="qtcharts qtnetworkauth", - ), + BuildJob('list-qt', '6.1.0', 'linux', 'desktop', 'gcc_64', '', spec=">6.0,<6.1.1", list_options={'HAS_WASM': "False"}), + BuildJob('list-qt', '6.1.0', 'linux', 'android', 'android_armv7', '', spec=">6.0,<6.1.1", list_options={}), ] ) # WASM -linux_build_jobs.append( - BuildJob("install-qt", "5.14.2", "linux", "desktop", "wasm_32", "wasm_32") -) linux_build_jobs.append( BuildJob("install-qt", "6.4.0", "linux", "desktop", "wasm_32", "wasm_32", is_autodesktop=True, emsdk_version="sdk-3.1.14-64bit", autodesk_arch_folder="gcc_64") @@ -330,17 +198,11 @@ for job_queue, host, desk_arch in ( is_autodesktop=True, emsdk_version="sdk-3.1.25-64bit", autodesk_arch_folder=desk_arch) ) mac_build_jobs.append( - BuildJob("install-qt", "5.14.2", "mac", "desktop", "wasm_32", "wasm_32") -) -mac_build_jobs.append( - BuildJob("install-qt", "6.4.0", "mac", "desktop", "wasm_32", "wasm_32", + BuildJob("install-qt", "6.4.3", "mac", "desktop", "wasm_32", "wasm_32", is_autodesktop=True, emsdk_version="sdk-3.1.14-64bit", autodesk_arch_folder="clang_64") ) windows_build_jobs.append( - BuildJob("install-qt", "5.14.2", "windows", "desktop", "wasm_32", "wasm_32") -) -windows_build_jobs.append( - BuildJob("install-qt", "6.4.0", "windows", "desktop", "wasm_32", "wasm_32", + BuildJob("install-qt", "6.4.3", "windows", "desktop", "wasm_32", "wasm_32", is_autodesktop=True, emsdk_version="sdk-3.1.14-64bit", autodesk_arch_folder="mingw_64", mingw_variant="win64_mingw900") ) @@ -348,16 +210,15 @@ windows_build_jobs.append( # mobile SDK mac_build_jobs.extend( [ - BuildJob("install-qt", "6.4.0", "mac", "ios", "ios", "ios", module="qtsensors", is_autodesktop=True), + BuildJob("install-qt", "6.4.3", "mac", "ios", "ios", "ios", module="qtsensors", is_autodesktop=True), BuildJob("install-qt", "6.2.4", "mac", "ios", "ios", "ios", module="qtsensors", is_autodesktop=False), - BuildJob("install-qt", "6.4.1", "mac", "android", "android_armv7", "android_armv7", is_autodesktop=True), - BuildJob("install-qt", "6.1.0", "mac", "android", "android_armv7", "android_armv7", is_autodesktop=True), + BuildJob("install-qt", "6.4.3", "mac", "android", "android_armv7", "android_armv7", is_autodesktop=True), ] ) linux_build_jobs.extend( [ - BuildJob("install-qt", "6.1.0", "linux", "android", "android_armv7", "android_armv7", is_autodesktop=True), - BuildJob("install-qt", "6.4.1", "linux", "android", "android_arm64_v8a", "android_arm64_v8a", is_autodesktop=True), + BuildJob("install-qt", "6.1.3", "linux", "android", "android_armv7", "android_armv7", is_autodesktop=True), + BuildJob("install-qt", "6.4.3", "linux", "android", "android_arm64_v8a", "android_arm64_v8a", is_autodesktop=True), ] ) @@ -365,36 +226,8 @@ linux_build_jobs.extend( # This will test that the path to mingw is not hardcoded. windows_build_jobs.extend( [ - BuildJob("install-qt", "6.3.0", "windows", "android", "android_armv7", "android_armv7", is_autodesktop=True), - BuildJob("install-qt", "6.4.1", "windows", "android", "android_x86_64", "android_x86_64", is_autodesktop=True), - ] -) - -# Test binary patch of qmake -linux_build_jobs.extend( - [ - # New output dir is shorter than the default value; qmake could fail to - # locate prefix dir if the value is patched wrong - BuildJob( - "install-qt", - "5.12.11", - "linux", - "desktop", - "gcc_64", - "gcc_64", - output_dir="/t/Q", - ), - # New output dir is longer than the default value. - # This case is meant to work without any bugfix; if this fails, the test is setup wrong - BuildJob( - "install-qt", - "5.12.11", - "linux", - "desktop", - "gcc_64", - "gcc_64", - output_dir="/some/super/long/arbitrary/path/to" * 5, - ), + BuildJob("install-qt", "6.3.2", "windows", "android", "android_armv7", "android_armv7", is_autodesktop=True), + BuildJob("install-qt", "6.4.3", "windows", "android", "android_x86_64", "android_x86_64", is_autodesktop=True), ] ) diff --git a/ci/steps.yml b/ci/steps.yml index 2915b35..dd7742e 100644 --- a/ci/steps.yml +++ b/ci/steps.yml @@ -179,7 +179,7 @@ steps: eq(variables['Agent.OS'], 'Linux'), eq(variables['Agent.OS'], 'Darwin') ), - ne(variables['SUBCOMMAND'], 'list'), + ne(variables['SUBCOMMAND'], 'list-qt'), ne(variables['SUBCOMMAND'], 'install-tool') ) displayName: Build accelbubble example application to test for android diff --git a/pyproject.toml b/pyproject.toml index 04b3348..5469dad 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -111,7 +111,7 @@ exclude_lines = ["if __name__ == .__main__.:", "pragma: no-cover", "@abstract", [tool.black] line-length = 125 -target-version = ['py39'] +target-version = ['py312'] [tool.isort] line_length = 125 @@ -174,7 +174,7 @@ markers = [ [tool.tox] legacy_tox_ini = """ [tox] -envlist = check, docs, py{38,39,310,311,312}, py39d, mprof, fil, mypy +envlist = check, docs, py{39,310,311,312,313}, mprof, fil, mypy isolated_build = True [testenv] @@ -189,14 +189,14 @@ commands = python -m pytest -vv [testenv:check] -basepython = python3.9 +basepython = python3.12 extras = check commands = check-manifest {toxinidir} flake8 aqt tests [testenv:mypy] -basepython = python3.9 +basepython = python3.12 extras = check commands = mypy aqt deps = @@ -205,20 +205,14 @@ deps = types-psutil [testenv:docs] -basepython = python3.9 +basepython = python3.12 extras = docs commands = sphinx-build {posargs:-E} -W -b html docs build/docs sphinx-build -W -b linkcheck docs build/docs -[testenv:py39d] -basepython = python3.9d -extras = test, debug -commands = - python3.9-dbg -m pytest -v --no-cov -R : -k "test_install" - [testenv:mprof] -basepython = python3.9 +basepython = python3.12 extras = debug commands = mprof run --multiprocess python -m aqt install-qt -O /tmp -d /tmp linux desktop 6.2.1 @@ -228,7 +222,7 @@ deps = matplotlib [testenv:fil] -basepython = python3.9 +basepython = python3.12 extras = debug commands = fil-profile run -m aqt install-qt -O /tmp -d /tmp linux desktop 6.2.1 @@ -244,9 +238,9 @@ commands = [gh-actions] python = - 3.8: py38 - 3.9: py39, docs, check, mypy + 3.9: py39 3.10: py310 3.11: py311 - 3.12: py312 + 3.12: py312, docs, check, mypy + 3.13-dev: py313 """