mirror of
https://github.com/ankitects/anki.git
synced 2025-09-23 16:26:40 -04:00

Running and testing should be working on the three platforms, but there's still a fair bit that needs to be done: - Wheel building + testing in a venv still needs to be implemented. - Python requirements still need to be compiled with piptool and pinned; need to compile on all platforms then merge - Cargo deps in cargo/ and rslib/ need to be cleaned up, and ideally unified into one place - Currently using rustls to work around openssl compilation issues on Linux, but this will break corporate proxies with custom SSL authorities; need to conditionally use openssl or use https://github.com/seanmonstar/reqwest/pull/1058 - Makefiles and docs still need cleaning up - It may make sense to reparent ts/* to the top level, as we don't nest the other modules under a specific language. - rspy and pylib must always be updated in lock-step, so merging rspy into pylib as a private module would simplify things. - Merging desktop-ftl and mobile-ftl into the core ftl would make managing and updating translations easier. - Obsolete scripts need removing. - And probably more.
136 lines
2.5 KiB
Text
136 lines
2.5 KiB
Text
load("@rules_python//python:defs.bzl", "py_binary", "py_test")
|
|
load("@py_deps//:requirements.bzl", "requirement")
|
|
|
|
py_binary(
|
|
name = "genhooks_gui",
|
|
srcs = [
|
|
"tools/genhooks_gui.py",
|
|
],
|
|
imports = ["."],
|
|
visibility = [":__subpackages__"],
|
|
deps = [
|
|
"//pylib:hookslib",
|
|
requirement("black"),
|
|
requirement("stringcase"),
|
|
],
|
|
)
|
|
|
|
py_binary(
|
|
name = "extract_sass_colors",
|
|
srcs = [
|
|
"tools/extract_sass_colors.py",
|
|
],
|
|
imports = ["."],
|
|
visibility = [":__subpackages__"],
|
|
)
|
|
|
|
py_test(
|
|
name = "pytest",
|
|
srcs = glob(["tests/*.py"]),
|
|
data = [
|
|
"//qt/aqt_data",
|
|
"//rspy:ankirspy",
|
|
],
|
|
main = "tests/run_pytest.py",
|
|
deps = [
|
|
"//pylib/anki",
|
|
"//qt/aqt",
|
|
requirement("pytest"),
|
|
requirement("mock"),
|
|
],
|
|
)
|
|
|
|
py_test(
|
|
name = "mypy",
|
|
srcs = [
|
|
"tests/run_mypy.py",
|
|
],
|
|
args = [
|
|
"aqt",
|
|
"$(location mypy.ini)",
|
|
"$(location @pyqt5//:__init__.py)",
|
|
],
|
|
data = [
|
|
"mypy.ini",
|
|
"@pyqt5//:__init__.py",
|
|
],
|
|
main = "tests/run_mypy.py",
|
|
deps = [
|
|
"//pylib/anki",
|
|
"//qt/aqt",
|
|
"@pyqt5//:pkg",
|
|
requirement("mypy"),
|
|
],
|
|
)
|
|
|
|
py_test(
|
|
name = "pylint",
|
|
srcs = [
|
|
"tests/run_pylint.py",
|
|
],
|
|
args = [
|
|
"aqt",
|
|
"$(location .pylintrc)",
|
|
"foo", #$(location PyQt5/__init__.py)",
|
|
],
|
|
data = [
|
|
".pylintrc",
|
|
# "PyQt5-stubs",
|
|
#"PyQt5/__init__.py",
|
|
],
|
|
main = "tests/run_pylint.py",
|
|
deps = [
|
|
"//pylib/anki",
|
|
"//qt/aqt",
|
|
requirement("pylint"),
|
|
"@pyqt5//:pkg",
|
|
],
|
|
)
|
|
|
|
py_test(
|
|
name = "format",
|
|
srcs = glob([
|
|
"**/*.py",
|
|
]),
|
|
args = [
|
|
"$(location .isort.cfg)",
|
|
],
|
|
data = [".isort.cfg"],
|
|
main = "tests/run_format.py",
|
|
deps = [
|
|
"//qt/aqt",
|
|
requirement("black"),
|
|
requirement("isort"),
|
|
],
|
|
)
|
|
|
|
py_binary(
|
|
name = "format_fix",
|
|
srcs = [
|
|
"tests/run_format.py",
|
|
],
|
|
args = [
|
|
"$(location .isort.cfg)",
|
|
"fix",
|
|
],
|
|
data = [".isort.cfg"],
|
|
main = "tests/run_format.py",
|
|
tags = ["manual"],
|
|
deps = [
|
|
requirement("black"),
|
|
requirement("isort"),
|
|
],
|
|
)
|
|
|
|
py_binary(
|
|
name = "runanki",
|
|
srcs = ["runanki.py"],
|
|
data = [
|
|
"//qt/aqt_data",
|
|
],
|
|
imports = ["."],
|
|
deps = [
|
|
"//pylib/anki",
|
|
"//qt/aqt",
|
|
],
|
|
)
|