CVE and update status of the FreeBSD ports tree3,456 unaddressed CVEs in 716 portsAll times are CET
Port details

games/anki 26.09.3

Flashcard trainer with spaced repetition

Port info

Maintainer
kai@FreeBSD.org
Packages
latest: 26.09.3
Upstream
up to date
Last update
to 26.09.3 · bad42c6df5
Quarterly
not in the 2026Q4 packages
Formerly
games/py-anki until 2013-01-16
WWW
https://apps.ankiweb.net/
Links
cgit · VuXML · Report wrong data

Install

Package
# pkg install anki
installs 26.09.3 from latest
Port
# cd /usr/ports/games/anki && make install clean
# make -C /usr/ports/games/anki config  # change options first
Size
8.6 MiB download · 36 MiB installed
License
AGPLv3+
Options
1 of 2 on in the package: MPV
Show the 1 options that are off
MPLAYER
pkg-message
Shown after upgrading
The V1 scheduler is no longer supported.  If you have not yet updated to V2 or
V3, you will be prompted to update when you attempt to review cards in 2.1.50+.
Shown after upgrading
The 2.1.58 release fixes an issue in 2.1.57 that caused cards and deck
  presets to be reset to the default ease, if you exported a .colpkg with
  compatibility with older clients enabled, or used the downgrade and quit
  option, then opened the collection again.

  For the former issue, this occurred to the collection you were exporting
  from, and not just the .colpkg file. If you were affected by this, running
  the following in the debug console after updating should restore your cards
  to the ease they were at when you last reviewed them, if they were not
  reviewed after the problem occurred. Please make a backup before proceeding.

  updated = 0
  for cid, old, new in mw.col.db.all("select id, factor, (select factor from revlog where cid=cards.id order by id desc limit 1) as factor2 from cards where type=2"):
    if new and old != new:
      card = mw.col.get_card(cid)
      card.factor = new
      mw.col.update_card(card)
      updated += 1
  print("updated", updated)

  It will print the number of updated cards.  Instructions how to use the debug
  console can be found here:

  https://docs.ankiweb.net/misc.html#debug-console

Packages by version and architecture

latest

FreeBSD versionamd64aarch64i386
FreeBSD 1626.09.3✗–
FreeBSD 15✗✗–
FreeBSD 1426.09.3✗✗

quarterly (2026Q4)

FreeBSD versionamd64aarch64i386
FreeBSD 1526.09.3✗–
FreeBSD 1426.09.3✗✗

version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.

Dependencies

Depends on 23

Run and library dependencies of the package on latest. Build dependencies are not in the package index.

Required by 0

No package on latest depends on it.

Packages on latest that depend on it directly.

Unaddressed and VuXML only (0)

No unaddressed CVE and nothing reported by pkg audit for the packaged version 26.09.3.

Fixed (2)

Show 2 fixed
VuXML entries whose affected range the packaged version has left.

Problem reports (1) · open in Bugzilla, most recently changed first

PRSummaryStatusChanged
297031maintainer-feedback+ games/anki: Very unstable after update to py312Open2026-10-18

Commits (229)

Christos Longros (longros) · 26.09.3 MFH 2026Q4 ✓
games/anki: Update to 26.09.3

Release notes:	https://github.com/ankitects/anki/releases/tag/26.09.3
Changes:	https://github.com/ankitects/anki/compare/26.09...26.09.3

Approved by:		jrm (mentor)
Security:		e1e332d7-cbe2-11f1-8d05-74563cf85f9d
MFH:			2026Q4
Differential Revision:	https://reviews.freebsd.org/D60853
bad42c6df5
Mikael Urankar (mikael) · 26.09_2
lang/rust: Bump revisions after 1.99.0

PR:		299016
9c878207a1
Alan Somers (asomers) · 26.09_1
*/*: Fix many Rust ports to run without COMPAT11

RISCV does not include COMPAT11 by default.  But Rust's libc bound the
compat-11 symbols until version 0.2.176.  Patch a great many Rust ports
to use a newer version of libc, to eliminate the dependency on COMPAT11.
Explicitly patching Cargo.lock isn't usually necessarily, since within
the build jail cargo is forced to use whichever crates Makefile.crates
installs there.

Notes on specific ports:

* textproc/bookokrat: Rework bookokrat's existing patch to be more
  robust.  Also, report the issue upstream:
  https://github.com/bugzmanov/bookokrat/issues/182

* security/sequoia-chameleon-gnupg security/sequoia-sq
  "cargo update -p libc" insisted on updating some other crates, too.

* devel/cargo-generate finance/tickrs net-im/gurk-rs
  net-p2p/oura textproc/mdbook-linkcheck www/lychee
	These creates contained an extra entry in CARGO_CRATES for
	openssl-src.  I don't know why.  Remove it.

* www/tuifeed
	Alone among all the crates touched, this one uses cargo's
	--locked argument.  So I had to create a patch-Cargo.lock file
	for it.

There are several other ports that still use old versions of libc.  But
for various reasons, each needs more attention that I can afford in this
already-large commit.

PR:		297814
exp-run:	antoine
Approved by:	portmgr timeout (2+ weeks)
396c159306
Kai Knoblich (kai) · 26.09 MFH 2026Q3 ✓
games/anki: Update to 26.09

* Migrate to Yarn v4 to be in sync with upstream.  To ensure that the
  preinstalled Yarn v4 is actually used, a few minor workarounds and a
  new variable PREINSTALLED_YARN are required.

  The latter is necessary because, with Yarn v2 and newer, environment
  variables prefixed with YARN_ can no longer be used.

* Sort pkg-plist while I'm here.

Changelog:

https://github.com/ankitects/anki/releases/tag/26.09

MFH:		2026Q3
Security:	ce54d883-b060-11f1-b187-901b0edee044
65434f7121
Mikael Urankar (mikael) · 26.08.1_2
lang/rust: Bump revisions after 1.98.1

PR:		298139
7316461925
Michael Osipov (michaelo) · 26.08.1_1
*/*: Bump consumers of www/beautifulsoup4 after port rename

PR:		297837
Approved by:	wen (maintainer via email)
45ea4cf85c
Kai Knoblich (kai) · 26.08.1 MFH 2026Q3 ✓
games/anki: Update to 26.08.1

Changelog:

https://github.com/ankitects/anki/releases/tag/26.08.1
129eb038c9
Kai Knoblich (kai) · 26.08 MFH 2026Q3 ✓
games/anki: Update to 26.08

* Switch to USES=npm and adjust/remove the relevant parts.

  Although Yarn v4 is already being used according to "package.json",
  stick with Yarn v1 for now to complete a 1:1 migration from the before
  to the after state with respect to the used tools during build.

Changelog:

https://github.com/ankitects/anki/releases/tag/26.08
9b3e128970
Mikael Urankar (mikael) · 26.05_1
lang/rust: Bump revisions after 1.97.1

PR:		296645
9c892d2601
Kai Knoblich (kai) · 26.05
games/anki: Update to 26.05

Changelog:

https://github.com/ankitects/anki/releases/tag/26.05

MFH:		No (feature release)
1daedf38b5
Mikael Urankar (mikael) · 25.09.4_1
lang/rust: Bump revisions after 1.96.0

PR:		295694
e29b5eeec3
Kai Knoblich (kai) · 25.09.4
games/anki: Update to 25.09.4

Changelogs since 25.09.2:

https://github.com/ankitects/anki/releases/tag/25.09.4
https://github.com/ankitects/anki/releases/tag/25.09.3

MFH:		2026Q2
efaffca6de
Rene Ladan (rene) · 25.09.2_7
all: drop support for FreeBSD 13, mips and risc64sf

Reviewed by:            many (*)
Differential Revision:  https://reviews.freebsd.org/D55624
Differential Revision:  https://reviews.freebsd.org/D55642 (merged in from bofh)

many (*)
  acm arrowd brooks cmt dch decke dinoex eduardo fluffy fuz gahr garga
  jbeich joerg jrm kai kenrap martymac matthew mfechner michaelo mizhka
  nobutaka pkubaj se tagattie thj

  Anton Saietskii
  GenericRikka
  Gert Doering
  Jan Bramkamp
  Oleh Hushchenkov
  Oleksandr Kryvulia
  Ralf van der Enden
  Yamagi

  desktop kde python tcltk office
2a7c056120
Mikael Urankar (mikael) · 25.09.2_7
lang/rust: Bump revisions after 1.95.0

PR:		294615
17bf498fd2
Kai Knoblich (kai) · 25.09.2_6
games/anki: Extend memory usage of NodeJS during build

* Set a higher value for V8's old memory to fix OOM issues during build:

[...]
vite v6.3.6 building for production...
transforming...

<--- Last few GCs --->

[85302:0x40cbfe36a000]    61573 ms: Mark-Compact (reduce) 505.7 (525.0) -> 502.2 (512.8) MB, pooled: 0 MB, 53.70 / 0.00 ms  (+ 530.4 ms in 111 steps since start of marking, biggest step 5.2 ms, walltime since start of marking 659 ms) (average mu = 0.194, [85302:0x40cbfe36a000]    62211 ms: Mark-Compact 503.3 (512.8) -> 498.8 (515.5) MB, pooled: 0 MB, 631.85 / 0.00 ms  (average mu = 0.113, current mu = 0.009) allocation failure; scavenge might not succeed

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
----- Native stack trace -----

 1: 0x19a5b74 node::OOMErrorHandler(char const*, v8::OOMDetails const&) [/usr/local/bin/node]
 2: 0x1be1c44 node::inspector::protocol::IO::DomainDispatcherImpl::~DomainDispatcherImpl() [/usr/local/bin/node]
 3: 0x1e1a6b0 v8::internal::HeapLayout::CheckYoungGenerationConsistency(v8::internal::MemoryChunk const*) [/usr/local/bin/node]
 4: 0x1e1d5f4 v8::internal::HeapLayout::CheckYoungGenerationConsistency(v8::internal::MemoryChunk const*) [/usr/local/bin/node]
 5: 0x1e2dfbc v8::internal::StrongRootAllocatorBase::deallocate_impl(unsigned long*, unsigned long) [/usr/local/bin/node]
error Command failed with signal "SIGABRT".
[...]

Reported by:	pkg-fallout
93e292534b
Kai Knoblich (kai) · 25.09.2_6
games/anki: Remove py-mypy-protobuf from BUILD_DEPENDS

* Prevent type checking (via mypy and related) which generates mypi stub
  files (= .pyi) from protobuf specs because is isn't required from a
  downstream perspective.

* Bump PORTREVISION due changed package contents.
4d8cc6ac90
Kai Knoblich (kai) · 25.09.2_5
games/anki: Remove py-ruff from BUILD_DEPENDS

* devel/py-ruff is used for the generated "hooks.py" to format it
  accordingly, which makes little sense on the downstream side in
  terms of packaging.
04bcfa8008
Mikael Urankar (mikael) · 25.09.2_5
lang/rust: Bump revisions after 1.94.0

PR:		293615
43f5b4a72f
Mikael Urankar (mikael) · 25.09.2_4
lang/rust: Bump revisions after 1.93.0

PR:		292360
3d631100e8
Mikael Urankar (mikael) · 25.09.2_3
lang/rust: Bump revisions after 1.92.0

PR:		291582
5e496c7707
Mikael Urankar (mikael) · 25.09.2_2
lang/rust: Bump revisions after 1.91.1

PR:		290816
d6b6027df6
Mikael Urankar (mikael) · 25.09.2_1
lang/rust: Bump revisions after 1.90.0

PR:		289709
97b5de4ffc
Kai Knoblich (kai) · 25.09.2
games/anki: Update to 25.09.2

* The 25.09.1 release was skipped due a packaging error.

Changelog:

https://github.com/ankitects/anki/releases/tag/25.09.2
ae21d4f50c
Kai Knoblich (kai) · 25.09
games/anki: Update to 25.09

* Adjust the workaround for the py-ruff linter so that it's only used
  on FreeBSD RELEASE builds that have usually GENERIC kernels compiled
  without the debug options.

  Presumably, py-ruff is not absolutely necessary and can be omitted as
  a dependency, but this still needs to be checked more closely.

* Also remove a no longer required patch introduced in 418adc4a2512 as
  the code is now compatible with Rust 1.89.

Changelog:

https://github.com/ankitects/anki/releases/tag/25.09
283e8988ce
Mikael Urankar (mikael) · 25.07.5_1
lang/rust: Bump revisions after 1.89.0

PR:		288923
b21956d7db
Mikael Urankar (mikael) · 25.07.5
games/anki: Fix build with rust 1.89.0

error: unicode codepoint changing visible direction of text present in literal
     --> out/rust/release/build/anki_i18n-646b20c5bb61f5d1/out/strings.rs:49842:22

error: unicode codepoint changing visible direction of text present in literal
     --> rust/release/build/anki_i18n-646b20c5bb61f5d1/out/strings.rs:51313:21

error: unicode codepoint changing visible direction of text present in literal
     --> out/rust/release/build/anki_i18n-646b20c5bb61f5d1/out/strings.rs:52025:22

error: unicode codepoint changing visible direction of text present in literal
     --> rust/release/build/anki_i18n-646b20c5bb61f5d1/out/strings.rs:52129:21

PR:		288923

Approved by:	portmgr (build fix blanket)
418adc4a25
Kai Knoblich (kai) · 25.07.5
games/anki: Update to 25.07.5

Changelog:

https://github.com/ankitects/anki/releases/tag/25.07.5
40988ed2dd
Kai Knoblich (kai) · 25.07.4
games/anki: Update to 25.07.4

Changelog:

https://github.com/ankitects/anki/releases/tag/25.07.4
126bb6faef
Kai Knoblich (kai) · 25.07.3
games/anki: Update to 25.07.3

Changelog:

https://github.com/ankitects/anki/releases/tag/25.07.3
24b33a1057
Kai Knoblich (kai) · 25.07.2
games/anki: Update to 25.07.2

* Since version 25.07, "uv" is required in conjunction with py-hatchling
  for creating the Python wheels.  This replaces the previous Python
  packaging process, which was mainly managed via the supplied "runner"
  build framework.

* Also complete the fix from 3c83809b8fe3 by replacing the remaining
  errorneous SET_ENV with SETENV.

Changelogs since 25.2.7:

https://github.com/ankitects/anki/releases/tag/25.07.2
https://github.com/ankitects/anki/releases/tag/25.07.1
https://github.com/ankitects/anki/releases/tag/25.07

MFH:		No (feature release)
abc8c4e9ae
Mikael Urankar (mikael) · 25.02.7_1
lang/rust: Bump revisions after 1.88.0

PR:		287766
f3f7e555b0
Kai Knoblich (kai) · 25.02.7
games/anki: Update to 25.02.7

Changelog:

https://github.com/ankitects/anki/releases/tag/25.02.7

MFH:		2025Q2
8ef65900e4
Mikael Urankar (mikael) · 25.02.6_1
lang/rust: Bump revisions after 1.87.0

PR:		286829
3ed29b8185
Kai Knoblich (kai) · 25.02.6
games/anki: Update to 25.02.6

Changelog:

https://github.com/ankitects/anki/releases/tag/25.02.6

MFH:		2025Q2
e6aee0eab4
Kai Knoblich (kai) · 25.02.5
games/anki: Update to 25.02.5

Changelog:

https://github.com/ankitects/anki/releases/tag/25.02.5

MFH:		2025Q2
c37e479d7c
Mateusz Piotrowski (0mp) · 25.02.4
*: Replace erroneous SET_ENV with SETENV

Approved by:	portmgr (blanket)
3c83809b8f
Kai Knoblich (kai) · 25.02.4
games/anki: Update to 25.02.4

Changelog since 25.02.1:

https://github.com/ankitects/anki/releases/tag/25.02.4
https://github.com/ankitects/anki/compare/25.02.2...25.02.3
https://github.com/ankitects/anki/compare/25.02.1...25.02.2

MFH:		2025Q2
dc367a2c65
Kai Knoblich (kai) · 25.02.1_1
games/anki: Fix fetch

* The distfiles were re-rolled because an additional commit containing a
  hotfix was added and the tag 25.02.1 was still marked as a pre-release
  at that time.

* Bump PORTREVISION due changed package contents after checking the
  distfile contents.

Reported by:	pkg-fallout
MFH:		2025Q2
b61817e2f0
Kai Knoblich (kai) · 25.02.1
games/anki: Update to 25.02.1

* Adjust USES=python accordingly, because Python 3.8 is no longer
  present in the ports tree after ca15850a2b13 while I'm here.

Changelog:

https://github.com/ankitects/anki/releases/tag/25.02.1

MFH:		2025Q2
f8f93a7781
Mikael Urankar (mikael) · 25.02_2
lang/rust: Bump revisions after 1.86.0

PR:		285840
2a5976aebe
Mikael Urankar (mikael) · 25.02_1
lang/rust: Bump revisions after 1.85.0

PR:		284884
cf7c4b037d
Kai Knoblich (kai) · 25.02
games/anki: Update to 25.02

Changelog:

https://github.com/ankitects/anki/releases/tag/25.02

MFH:		No (feature release)
90066b44f6
Mikael Urankar (mikael) · 24.11_2
lang/rust: Bump revisions after 1.84.0

PR:		283962
fccaa1b326
Mikael Urankar (mikael) · 24.11_1
lang/rust: Bump revisions after 1.83.0

PR:		283000
1d1fd15a3e
Kai Knoblich (kai) · 24.11
games/anki: Update to 24.11

* Remove the Rust 1.80+ compatibility patch for the "time" crate
  introduced in b7bf94fa6c74 which is no longer required now.

Changelog:

https://github.com/ankitects/anki/releases/tag/24.11

MFH:		No (feature release)
5cad8a6dc5
Mikael Urankar (mikael) · 24.06.3_3
lang/rust: Bump revisions after 1.82.0

PR:		282516
ca048c2884
Mikael Urankar (mikael) · 24.06.3_2
lang/rust: Bump revisions after 1.81.0

PR:		281300
89ab81d0e2
Mikael Urankar (mikael) · 24.06.3_1
*/*: remove STRIP_CMD calls in rust based ports

This is not needed after bc4fedc1fec0d359365c04d43be9e32bf101a50e

PR:		246993
Differential Revision:	https://reviews.freebsd.org/D46503
c0d07f1127
Mikael Urankar (mikael) · 24.06.3_1
lang/rust: Bump revisions after 1.80.1

PR:		280490
7a55f95425
Mikael Urankar (mikael) · 24.06.3
games/anki: Fix build with rust 1.80.0

PR:		280490
b7bf94fa6c