Go to file
Damien Elmes c8458fce16
Update to Svelte 4, and update most other JS deps (#2565)
* eslint-plugin-svelte3 -> eslint-plugin-svelte

The former is deprecated, and blocks an update to Svelte 4.

Also drop unused svelte2tsx and types package.

* Drop unused symbols code for now

It may be added back in the future, but for now dropping it will save
200k from our editor bundle.

* Remove sass and caniuse-lite pins

The latter no longer seems to be required. The former was added to
suppress deprecation warnings when compiling the old bootstrap version
we have pinned. Those are hidden by the build tool now (though we really
need to address them at one point: https://github.com/ankitects/anki/issues/1385)

Also removed unused files section.

* Prevent proto compile from looking in node_modules/@types/sass

When deps are updated, tsc aborts because @types/sass is a dummy package
without an index.d.ts file.

* Filter Svelte warnings out of ./run

* Update to latest Bootstrap

This fixes the deprecation warnings we were getting during build:
bootstrap doesn't accept runtime CSS variables being set in Sass, as
it wants to apply transforms to the colors.

Closes #1385

* Start port to Svelte 4

- svelte-check tests have a bunch of failures; ./run works
- Svelte no longer exposes internals, so we can't use create_in_transition
- Also update esbuild and related components like esbuild-svelte

* Fix test failures

Had to add some more a11y warning ignores - have added
https://github.com/ankitects/anki/issues/2564 to address that in the
future.

* Remove some dependency pins

+ Remove sass, we don't need it directly

* Bump remaining JS deps that have a current semver

* Upgrade dprint/license-checker/marked

The new helper method avoids marked printing deprecation warnings to
the console.

Also remove unused lodash/long types, and move lodahs-es to devdeps

* Upgrade eslint and fluent packages

* Update @floating-ui/dom

The only dependencies remaining are currently blocked:

- Jest 29 gives some error about require vs import; may not be worth
investigating if we switch to Deno for the tests
- CodeMirror 6 is a big API change and will need work.

* Roll dprint back to an earlier version

GitHub dropped support for Ubuntu 18 runners, causing dprint's artifacts
to require a glibc version greater than what Anki CI currently has.
2023-07-01 16:21:53 +10:00
.buildkite Migrate pylib/anki qt/aqt to group syntax (eg pylib:anki) 2023-06-15 17:17:55 +10:00
.cargo Move protobuf generation into a separate crate; write .py interface in Rust 2023-06-12 09:52:00 +10:00
.config Drop workspace-hack in favor of workspace deps 2023-06-23 17:41:31 +10:00
.github/ISSUE_TEMPLATE Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
.vscode.dist Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
build Update to Svelte 4, and update most other JS deps (#2565) 2023-07-01 16:21:53 +10:00
cargo Add must_use annotations to generated protobufs 2023-06-30 17:02:36 +10:00
docs Bump n2 rev for CI fix, and mention it in development.md 2023-06-19 15:34:03 +10:00
ftl Update translations 2023-06-30 17:06:47 +10:00
proto Rework RenderCardOutput::question/answer 2023-06-27 00:37:41 +10:00
pylib Support more mime types for add_extension_based_on_mime (#2562) 2023-06-29 15:22:04 +10:00
python Bump Mac and Windows builds to Qt 6.5.1 2023-06-22 09:46:09 +10:00
qt Update to Svelte 4, and update most other JS deps (#2565) 2023-07-01 16:21:53 +10:00
rslib Add must_use annotations to generated protobufs 2023-06-30 17:02:36 +10:00
sass Update to Svelte 4, and update most other JS deps (#2565) 2023-07-01 16:21:53 +10:00
tools Tweaks to web-watch 2023-06-26 15:50:34 +10:00
ts Update to Svelte 4, and update most other JS deps (#2565) 2023-07-01 16:21:53 +10:00
.deny.toml Update Rust deps (#2332) 2023-01-18 22:24:29 +10:00
.dprint.json Experiment with disabling prettier whitespace sensitivity 2023-06-01 11:11:26 +10:00
.eslintrc.js Update to Svelte 4, and update most other JS deps (#2565) 2023-07-01 16:21:53 +10:00
.gitattributes try again to improve GitHub's language stats 2021-01-20 13:20:45 +10:00
.gitignore Add support for using n2 instead of ninja 2023-06-15 17:17:56 +10:00
.gitmodules Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
.isort.cfg Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
.mypy.ini Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
.pylintrc Add ability to restore a notetype to its original configuration (#2472) 2023-04-18 14:07:51 +10:00
.rustfmt-empty.toml Move away from Bazel (#2202) 2022-11-27 15:24:20 +10:00
.rustfmt.toml Move ascii_percent_encoding into a separate repo 2023-04-12 08:45:23 +10:00
.version Bump version 2023-06-05 09:20:00 +10:00
CONTRIBUTORS Support more mime types for add_extension_based_on_mime (#2562) 2023-06-29 15:22:04 +10:00
Cargo.lock Add must_use annotations to generated protobufs 2023-06-30 17:02:36 +10:00
Cargo.toml Remove some unused Rust dependencies 2023-06-24 19:30:29 +10:00
LICENSE move aqt_data into source folder; implement wheel building 2020-11-04 12:14:03 +10:00
README.md Add link to website in README 2023-05-31 13:49:19 +10:00
SECURITY.md add SECURITY.md 2021-09-22 22:55:19 +10:00
ninja Add ability to skip runner build 2023-06-23 17:41:31 +10:00
package.json Update to Svelte 4, and update most other JS deps (#2565) 2023-07-01 16:21:53 +10:00
pkgkey.asc add public key for release signing 2018-09-18 10:40:45 +10:00
run Use 127.0.0.1 instead of localhost 2023-06-27 16:45:31 +10:00
run.bat Migrate pylib/anki qt/aqt to group syntax (eg pylib:anki) 2023-06-15 17:17:55 +10:00
rust-toolchain.toml Update to Rust 1.70 2023-06-07 14:52:31 +10:00
yarn.lock Update to Svelte 4, and update most other JS deps (#2565) 2023-07-01 16:21:53 +10:00

README.md

Anki

Build status

This repo contains the source code for the computer version of Anki.

If you'd like to try development builds of Anki but don't feel comfortable building the code, please see https://betas.ankiweb.net/

For more information on building, please see Development.