diff --git a/.deny.toml b/.deny.toml index 8a379fa55..7a575fc25 100644 --- a/.deny.toml +++ b/.deny.toml @@ -5,9 +5,6 @@ db-path = "~/.cargo/advisory-db" db-urls = ["https://github.com/rustsec/advisory-db"] ignore = [ - # pyoxidizer is stuck on an old ring version - "RUSTSEC-2025-0009", - "RUSTSEC-2025-0010", # burn depends on an unmaintained package 'paste' "RUSTSEC-2024-0436", ] @@ -19,10 +16,8 @@ allow = [ "Apache-2.0 WITH LLVM-exception", "ISC", "MPL-2.0", - "Unicode-DFS-2016", "BSD-2-Clause", "BSD-3-Clause", - "OpenSSL", "CC0-1.0", "Unlicense", "Zlib", diff --git a/build/configure/src/rust.rs b/build/configure/src/rust.rs index 717d086ea..1ff0fc97c 100644 --- a/build/configure/src/rust.rs +++ b/build/configure/src/rust.rs @@ -247,7 +247,7 @@ pub fn check_minilints(build: &mut Build) -> Result<()> { let files = inputs![ glob![ "**/*.{py,rs,ts,svelte,mjs,md}", - "{node_modules,qt/bundle/PyOxidizer,ts/.svelte-kit}/**" + "{node_modules,ts/.svelte-kit}/**" ], "Cargo.lock" ]; diff --git a/docs/development.md b/docs/development.md index a057b5c10..c963aec02 100644 --- a/docs/development.md +++ b/docs/development.md @@ -190,13 +190,10 @@ in the collection2.log file will also be printed on stdout. If ANKI_PROFILE_CODE is set, Python profiling data will be written on exit. -# Binary Bundles +# Installer/launcher -Anki's official binary packages are created with `./ninja bundle`. The bundling -process was created specifically for the official builds, and is provided as-is; -we are unfortunately not able to provide assistance with any issues you may run -into when using it. You'll need to run -`git submodule update --checkout qt/bundle/PyOxidizer` first. +- The anki-release package is created/published with the scripts in qt/release. +- The installer/launcher is created with the build scripts in qt/launcher/{platform}. ## Mixing development and study diff --git a/qt/launcher/release/pyproject.toml b/qt/launcher/release/pyproject.toml deleted file mode 100644 index 9af7e2fb6..000000000 --- a/qt/launcher/release/pyproject.toml +++ /dev/null @@ -1,81 +0,0 @@ -[project] -name = "anki-release" -version = "0.1.2" -description = "A package to lock Anki's dependencies" -requires-python = ">=3.9" -dependencies = [ - "anki==0.1.2", - "aqt==0.1.2", - "anki-audio==0.1.0 ; sys_platform == 'darwin' or sys_platform == 'win32'", - "attrs==25.3.0", - "beautifulsoup4==4.12.3", - "blinker==1.9.0", - "certifi==2025.4.26", - "charset-normalizer==3.4.2", - "click==8.1.8 ; python_full_version < '3.10'", - "click==8.2.1 ; python_full_version >= '3.10'", - "colorama==0.4.6 ; sys_platform == 'win32'", - "decorator==5.2.1", - "distro==1.9.0 ; sys_platform != 'darwin' and sys_platform != 'win32'", - "flask==3.1.1", - "flask-cors==6.0.0", - "idna==3.10", - "importlib-metadata==8.7.0 ; python_full_version < '3.10'", - "itsdangerous==2.2.0", - "jinja2==3.1.6", - "jsonschema==4.24.0", - "jsonschema-specifications==2025.4.1", - "markdown==3.8", - "markupsafe==3.0.2", - "mock==5.2.0", - "orjson==3.10.18", - "pip-system-certs==4.0", - "protobuf==6.31.1", - "psutil==7.0.0 ; sys_platform == 'win32'", - "pyqt6==6.7.1", - "pyqt6-qt6==6.7.3", - "pyqt6-sip==13.10.2", - "pyqt6-webengine==6.7.0", - "pyqt6-webengine-qt6==6.7.3", - "pyqt6-webenginesubwheel-qt6==6.7.3", - "pysocks==1.7.1", - "pywin32==310 ; sys_platform == 'win32'", - "referencing==0.36.2", - "requests==2.32.3", - "rpds-py==0.25.1", - "send2trash==1.8.3", - "soupsieve==2.7", - "types-click==7.1.8", - "types-decorator==5.2.0.20250324", - "types-flask==1.1.6", - "types-flask-cors==6.0.0.20250520", - "types-jinja2==2.11.9", - "types-markdown==3.8.0.20250415", - "types-markupsafe==1.1.10", - "types-orjson==3.6.2", - "types-protobuf==6.30.2.20250516", - "types-pywin32==310.0.0.20250516", - "types-requests==2.32.0.20250602", - "types-waitress==3.0.1.20241117", - "types-werkzeug==1.0.9", - "typing-extensions==4.14.0", - "urllib3==2.4.0", - "waitress==3.0.2", - "werkzeug==3.1.3", - "wrapt==1.17.2", - "zipp==3.23.0 ; python_full_version < '3.10'", -] - -[[tool.uv.index]] -name = "testpypi" -url = "https://test.pypi.org/simple/" -publish-url = "https://test.pypi.org/legacy/" -explicit = true - -[build-system] -requires = ["hatchling"] -build-backend = "hatchling.build" - -# hatch throws an error if nothing is included -[tool.hatch.build.targets.wheel] -include = ["no-such-file"] diff --git a/qt/release/publish-release.sh b/qt/release/publish.sh similarity index 100% rename from qt/release/publish-release.sh rename to qt/release/publish.sh diff --git a/qt/release/update-release.sh b/qt/release/update.sh similarity index 97% rename from qt/release/update-release.sh rename to qt/release/update.sh index 5fe815c7d..126214248 100755 --- a/qt/release/update-release.sh +++ b/qt/release/update.sh @@ -2,7 +2,7 @@ set -e -test -f update-release.sh || { +test -f update.sh || { echo "run from release folder" exit 1 }