Version 0.10.1 of package Gnosis has just been released in GNU ELPA.
You can now find it in M-x list-packages RET.

Gnosis describes itself as:

  ================
  Knowledge System
  ================

More at https://elpa.gnu.org/packages/gnosis.html

## Summary:

  1 Gnosis
  ════════

  1.1 About
  ─────────

    Gnosis is a GNU Emacs learning tool, with a spaced repetition like
    implementation.

    • Project's Page: <https://thanosapollo.org/projects/gnosis/>
    • User Manual: <https://elpa.nongnu.org/nongnu/doc/gnosis.html>
    ⁃ Demo deck: <https://codeberg.org/thanosapollo/gnosis-demo>
      ⁃ /It's recommended to try out the demo deck for first time users./

## Recent NEWS:

                                        2026/03/26 2026/03/25 2026/03/16


⁃ [Homepage]
⁃ [Upstream]
⁃ [Changelog]


[Homepage] <https://thanosapollo.org/projects/gnosis/>

[Upstream] <https://git.thanosapollo.org/gnosis/>

[Changelog] <https://thanosapollo.org/log/gnosis/>


1 0.10.1
════════

1.1 Algorithm
─────────────

  ⁃ Cap post-failure interval at 7 days to prevent overly lenient
    reschedules for mature cards.


1.2 Bug fixes
─────────────

  ⁃ Fix `gnosis-import-db' initializing review state with wrong values,
    causing errors on first review of imported themata.


1.3 Other
─────────

  ⁃ Demo collection shipped as `.gnosis' instead of org file.


2 0.10.0
════════

2.1 Breaking changes
────────────────────

  ⁃ *Date storage migrated to integers*: review dates are now stored as
    YYYYMMDD integers instead of Lisp lists.  Migration v7 converts
    existing data automatically.
  ⁃ *Export/import rewritten*: export now produces a `.gnosis' SQLite
    database.  Import shows a diff buffer before applying.
    ⁃ Old org-file exports are no longer supported.


2.2 New features
────────────────

  ⁃ *Anki GUID-based duplicate detection*: re-importing the same deck
    skips already-imported notes (migration v8).
  ⁃ *Review progress header*: header-line shows reviewed/total as a live
    counter.
  ⁃ *Import diff buffer*: `gnosis-import-db' shows NEW/CHANGED entries
    with detail view on `RET' before applying.
  ⁃ *Anki import improvements*: template-aware field resolution,
    NFC-normalized tags, system tag stripping (`marked', `leech'), git
    commit after import.


2.3 Performance
───────────────

  ⁃ Due/overdue queries use integer comparison in SQL instead of Elisp
    filtering.
  ⁃ New indexes on `review_log', `thema_tag', `thema_links',
    `node_links', and `activity_log'.
  ⁃ N+1 queries eliminated in review session and Anki model parsing.


2.4 Bug fixes
─────────────

  ⁃ Fix proto phase failures computing amnesia-based interval instead of
    resetting to 0.
  ⁃ Fix bulk-link matching to be case-insensitive.
  ⁃ Fix duplicate node-link insertion for files.
  ⁃ Fix overdue exclusion: unreviewed themata (n=0) no longer counted as
    overdue.


3 0.9.0
═══════

3.1 Breaking changes
────────────────────

  ⁃ *Dropped emacsql dependency*: gnosis now uses Emacs's built-in
    `sqlite' module (requires Emacs 29+).  The new `gnosis-sqlite'
    backend handles all database access.
  ⁃ *Unified database*: org-gnosis has been merged into gnosis.  A
    single `gnosis.db' stores both themata and nodes.  Existing
    org-gnosis data is migrated automatically.
  ⁃ *Decks removed*: the deck abstraction is gone.  Existing deck names
    are automatically converted into tags during the v6 migration, so no
    data is lost.  Export and import are now thema-centric with tag
    filtering.


3.2 New features
────────────────

  ⁃ *Anki import*: import Anki decks or user collections directly with
    `gnosis-anki-import'.
  ⁃ *Tag filtering*: `gnosis-tags-filter-prompt' supports `+tag -tag'
    syntax for include/exclude filtering.  Used in export and
    `gnosis-collect-thema-ids'.
  ⁃ *Day start hour*: `gnosis-algorithm-day-start-hour' (default 3) lets
    you define when a new review day begins.
  ⁃ *Tag bulk operations*: rename, regex bulk rename (`R'), merge case
    duplicates (`C'), bulk delete, and suspend/unsuspend from the
    dashboard tags view.  Tag renames are merge-safe (handles UNIQUE
    conflicts when target tag already exists).
  ⁃ *Elapsed time intervals*: the algorithm uses actual elapsed time for
    interval calculation.
  ⁃ *Review transient menu*: `gnosis-review' uses transient instead of
    completing-read.
  ⁃ *Template expansion*: `{*}' heading markers in templates are
    expanded relative to insertion context via
    `gnosis-org-expand-headings'.
  ⁃ *Export with tag filtering*: `gnosis-export-themata' supports tag
    filtering and node export.


3.3 Dashboard
─────────────

  ⁃ Tags view with regex filter (`l'), regex search (`SPC'), and tag
    counts.
  ⁃ Bulk tag rename via regex pattern (`R') using a temp-table approach
    for O(1) SQL statements regardless of batch size.
  ⁃ Anki import keybinding in the dashboard menu.
  ⁃ Merge case-duplicate tags (`C'): groups tags by case, keeps the
    most-used variant as canonical.
    ⁃ Meant to simplify imports from anki decks hierarchical tag
      structure
  …  …

Reply via email to