Anki is a smart spaced repetition flashcard program
Find a file
RumovZ e759885734
Backend colpkg exporting (#1719)
* Implement colpkg exporting on backend

* Use exporting logic in backup.rs

* Refactor exporting.rs

* Add backend function to export collection

* Refactor backend/collection.rs

* Use backend for colpkg exporting

* Don't use default zip compression for media

* Add exporting progress

* Refactor media file writing

* Write dummy collections

* Localize dummy collection note

* Minimize dummy db size

* Use `NamedTempFile::new()` instead of `new_in`

* Drop redundant v2 dummy collection

* COLLECTION_VERSION -> PACKAGE_VERSION

* Split `lock_collection()` into two to drop flag

* Expose new colpkg in GUI

* Improve dummy collection message

* Please type checker

* importing-colpkg-too-new -> exporting-...

* Compress the media map in the v3 package (dae)

On collections with lots of media, it can grow into megabytes.

Also return an error in extract_media_file_names(), instead of masking
it as an optional.

* Store media map as a vector in the v3 package (dae)

This compresses better (eg 280kb original, 100kb hashmap, 42kb vec)

In the colpkg import case we don't need random access. When importing
an apkg, we will need to be able to fetch file data for a given media
filename, but the existing map doesn't help us there, as we need
filename->index, not index->filename.

* Ensure folders in the media dir don't break the file mapping (dae)
2022-03-15 16:48:02 +10:00
.buildkite Make build step optional in Linux docker containers 2022-03-09 18:20:13 +10:00
.github/ISSUE_TEMPLATE update bug report template 2021-11-12 12:20:02 +10:00
.vscode Don't warn about missing .py files in VS Code 2022-03-07 11:54:41 +10:00
cargo Backups (#1685) 2022-03-07 15:11:31 +10:00
docs Automatically clean up stale files on TS build error 2022-02-25 12:25:55 +10:00
ftl Backend colpkg exporting (#1719) 2022-03-15 16:48:02 +10:00
platforms use x86 binaries for clang format/protobuf on Mac 2021-10-16 18:07:39 +10:00
proto Backend colpkg exporting (#1719) 2022-03-15 16:48:02 +10:00
pylib Backend colpkg exporting (#1719) 2022-03-15 16:48:02 +10:00
python Update Python deps, including stable Black 2022-02-25 15:26:16 +10:00
qt Move custom study tag and limit gathering+saving into the backend 2022-03-10 16:23:03 +10:00
rslib Backend colpkg exporting (#1719) 2022-03-15 16:48:02 +10:00
sass Fix bury count (more) (#1712) 2022-03-07 11:03:14 +10:00
tools Automatically clean up stale files on TS build error 2022-02-25 12:25:55 +10:00
ts Extend maximum answer time... (#1698) 2022-03-15 10:06:45 +10:00
.bazelignore updates to the build process and binary bundles 2022-02-10 19:23:07 +10:00
.bazelrc updates to the build process and binary bundles 2022-02-10 19:23:07 +10:00
.bazelversion updates to the build process and binary bundles 2022-02-10 19:23:07 +10:00
.gitattributes try again to improve GitHub's language stats 2021-01-20 13:20:45 +10:00
.gitignore updates to the build process and binary bundles 2022-02-10 19:23:07 +10:00
.prettierignore Improved add-on extension API (#1626) 2022-02-03 14:52:11 +10:00
.prettierrc Mathjax editor improvements (#1502) 2021-11-23 10:27:32 +10:00
.user.bazelrc move Bazel convenience symlinks outside of repo folder 2022-01-23 19:18:44 +10:00
BUILD.bazel updates to the build process and binary bundles 2022-02-10 19:23:07 +10:00
Cargo.lock Backups (#1685) 2022-03-07 15:11:31 +10:00
Cargo.toml updates to the build process and binary bundles 2022-02-10 19:23:07 +10:00
CONTRIBUTORS Extend maximum answer time... (#1698) 2022-03-15 10:06:45 +10:00
defs.bzl Update to latest rules_rust, which unblocks the tokio upgrade 2022-03-03 19:48:17 +10:00
late_deps.bzl download wheels using rules_python 2021-10-15 16:02:26 +10:00
LICENSE move aqt_data into source folder; implement wheel building 2020-11-04 12:14:03 +10:00
package.json Update prettier-plugin-svelte (#1711) 2022-03-05 14:27:47 +10:00
pkgkey.asc add public key for release signing 2018-09-18 10:40:45 +10:00
pyrightconfig.json updates to the build process and binary bundles 2022-02-10 19:23:07 +10:00
README.md fix build badge 2021-06-24 09:21:56 +10:00
repos.bzl Update translations 2022-03-09 18:06:58 +10:00
run get PyQt working directly with ./run on macOS 2021-10-16 18:07:29 +10:00
run.bat updates to the build process and binary bundles 2022-02-10 19:23:07 +10:00
SECURITY.md add SECURITY.md 2021-09-22 22:55:19 +10:00
WORKSPACE move node_modules into root folder [action required] 2021-10-07 11:42:27 +10:00
yarn.lock Update prettier-plugin-svelte (#1711) 2022-03-05 14:27:47 +10:00

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.