Org Roam Versions Save

Rudimentary Roam replica with Org-mode

v2.2.2

2 years ago

2.2.2

Breaking

Added

  • #2138 export: add new module
  • #2170 log: add new module for working with org logs
  • #2158 db: support emacsql-sqlite-builtin and emacsql-sqlite-module
  • #2160 core: support a list of org-roam-file-exclude-regexp

Removed

Fixed

  • #2091 node: fix org-roam-promote-entire-buffer structural errors
  • #2130 buffer: unlinked-references section now also searches within symlinked directories
  • #2152 org-roam-preview-default-function: doesn't copy copy content of next heading node when current node's content is empty
  • #2159 db: fix db syncs on narrowed buffers
  • #2156 capture: templates with functions are handled correctly to avoid signaling char-or-string-p

Changed

  • #2160 core: ignore files in org-attach-id-dir by default

v2.2.1

2 years ago

2.2.1

Just a minor release, with no huge changes.

Breaking

  • #2054 node: simplify default org-roam-node-display-template. This was done so completions work fine by default on all completion systems. To restore the tabular vertical completion interface, set this in your configuration:

    (setq org-roam-node-display-template
          (concat "${title:*} "
                  (propertize "${tags:10}" 'face 'org-tag)))
    

Added

  • #2042 db: add org-roam-db-extra-links-elements and org-roam-db-extra-links-exclude-keys for fine-grained control over additional link parsing
  • #2049 capture: allow ID to be used as part of org-roam-capture-templates
  • #2050 core: add FILTER-FN to org-roam-node-random
  • #2065 dailies: add keys argument to the remaining dailies functions org-roam-dailies-goto-yesterday/-today/-tomorrow/-date and org-roam-dailies-capture-yesterday/-tomorrow/-date to give the abilty to get into a capture buffer bypassing the selection screen in all dailies commands. Extension of #2055
  • #2079 capture: ensure that :ref info captured in all cases.
  • #2121 buffer: add unique option to org-roam-backlinks-section

Removed

Fixed

  • #2086 capture: correctly update org-id-locations on capture
  • #2082 buffer: don't destroy window if org-roam-node-toggle reuses window
  • #2080 dailies: prevent multiple "dailies/" subdir expansions
  • #2055 dailies: removed stray f require, which was causing require and compilation errors
  • #2117 capture: preserve trailing whitespace content in capture templates

Changed

  • #2060 node: added double acute accent normalization for Unicode characters in titles
  • #2040 completions: fix completions display-width for Helm users
  • #2025 chore: removed the dependencies on f.el and s.el
  • #2109 capture: org-roam-node-insert places cursor after inserted link where appropriate
  • #2123, #2124 buffer: org-roam-mode-section-functions renamed to org-roam-mode-sections, supports passing args into the section-rendering function

v2.2.0

2 years ago

2.2.0

Added

  • #1806, #2017 db: support caching and usage of Org 9.5's in-built citations
  • #1963 db: cache file title into files table
  • #1977 db: support Org-ref v3 citations
  • #1907, #2009, #2018 db: support sqlite3
  • #2028 dailies: add keys argument to org-roam-dailies-capture-today and org-roam-dailies--capture functions to give the abilty to get into a capture buffer bypassing the selection screen

Removed

Changed

  • #1795 buffer: optimized reflinks fetch
  • #1809 capture: the mandatory :if-new property of each capture template is now renamed to :target
  • #1829 perf: file sql updates are now wrapped in a transaction
  • #1877 dailies: stop asking for time, only date
  • #1949 db: check for property drawers are now case-insensitive

Fixed

  • #1798 org-roam-node-at-point: do not skip invisible headings
  • #1807 capture: always trigger :if-new template for existing nodes
  • #1813 db: prevent empty ROAM_ALIASES from crashing db updates
  • #1816 db: prevent invalid ROAM_REFS from crashing db updates
  • #1893, #1896, #1901, #1895, #1904 completions: various mini-buffer related completion fixes
  • #1931 utils: org-roam-set-keyword now skips over all drawers
  • #1947 db: links in ROAM_REFS are no longer considered as links
  • #1948 completions: fix same-line completions
  • #1953 db: refresh CATEGORY before writing to db
  • #1946, #1946, #1958 various performance improvements
  • #1980 utils: fix org-roam-with-file changing the minor-mode
  • #2016 db: fix node caching being affected by agenda variables
  • #2033 db: respect local variables during db parsing

v2.1.0

2 years ago

Org-roam v2.1.0

Org-roam v2.1.0 is the first release since Org-roam v2.0. It contains fixes for many issues users have faced during migration. In addition, the codebase has undergone major refactorings, making it easier to navigate and contribute to (thanks @Wetlize).

Added

  • #1709 added ability to specify default value in org-roam capture templates
  • #1710 added org-roam-extract-subtree
  • #1720 added org-roam-db-update-on-save
  • #1758 added org-roam-db-autosync-mode, replacing org-roam-setup and org-roam-teardown

Removed

  • #1716 helper function org-roam-get-keyword is now obsolete: prefer org-collect-keywords

Changed

  • #1595, #1724 Major refactoring and restructuring of the codebase
  • #1655 improved org-roam contents preview
  • #1741 expose org-roam-capture- keys in interactive commands
  • #1786 org-roam-version now outputs commit hash if found
  • #1788 the point is not moved if the node is already visited

Fixed

  • #1608 migration: empty ROAM_REFS are now removed
  • #1609 migration: fixed file-link replacement
  • #1653 migration: fixed tags migration
  • #1694 core: nodes with no title are now skipped
  • #1637 core: fix org-ref multi-cite links not being split
  • #1651 core: fix org-roam-file-p crashing when there is no corresponding file
  • #1705 core: fix for add/remove of file-level tags
  • #1769 core: gracefully handle absence of org-id-locations-file
  • #1713 capture: check for file-existence before template insertion
  • #1725 db: always compute hash of encrypted file to prevent re-processing of encrypted files

v2.0.0

2 years ago

Org-roam v2.0.0

This is the first official release of Org-roam v2. Org-roam v2 is not backwards compatible with v1!

Please read the wiki for more information on the changes. For some internal insights, the author has also written a post on this release.

2.0.0a1

3 years ago

Org-roam v2.0.0a1

This is the first alpha release of Org-roam v2.

Why should you migrate to v2?

  • only v2 is in active development
  • the v2 codebase is greatly simplified and should provide a much smoother experience
  • Experience the upgraded Org-roam buffer

For more information about migrating, see the wiki

Sample configuration:

(use-package org-roam
  :custom
  (org-roam-directory "/path/to/org-files/")
  :bind (("C-c n l" . org-roam-buffer-toggle)
         ("C-c n f" . org-roam-node-find))
  :config
  (org-roam-setup))

Read more about Org-roam v2 here

How do I migrate to v2?

You should be able to (for the most part) convert your v1 files to the v2 format as follows:

https://gist.github.com/jethrokuan/02f41028fb4a6f81787dc420fb99b6e4

roam: links, and roam_tags are not automatically converted.

Should you hold off on the migration?

Stick to Org-roam v1 if:

  • You dislike using ID links
  • You rely on external packages like org-roam-server and org-roam-bibtex
  • You rely on org-roam graphing

v1.2.4

3 years ago

Org-roam v1.2.4

Final release of Org-roam prior to Org-roam v2.

Mostly just small bug fixes I guess.

v1.2.3

3 years ago

Org-roam v1.2.3 (13-11-2020)

Primarily a stabilization and bug-fix release.

Org-roam-dailies has also been revamped to include new features, see this video for a quick overview.

Added

  • #978 Revamp org-roam-dailies
  • #1183 Interactive functions for managing aliases and tags in Org-roam file, namely org-roam-alias-add, org-roam-alias-delete, org-roam-tag-add, and org-roam-tag-delete.
  • #1215 Multiple ROAM_KEY keywords can now be specified in one file. This allows bibliographical entries to share the same note file.
  • #1238 Add org-roam-prefer-id-links variable to select linking method
  • #1239 Allow org-roam-protocol to capture the webpage's selection, and add a toggle for storing the links to the pages
  • #1264 add org-roam-db-update-method to control when the cache is rebuilt.

Changed

  • #1264 renamed org-roam-update-db-idle-seconds to org-roam-db-idle-idle-seconds

Fixed

  • #1074 fix org-roam--extract-links to handle content boundaries.
  • #1193 fix org-roam-db-build-cache by not killing temporary buffer in org-roam--extract-links.
  • #1195 fix ID face showing as invalid if within Org ID files, but not Org-roam's.
  • #1199 make Org-roam link insertions respect org-roam-link-title-format everywhere.
  • #1201 fix org-roam-db-build-cache failing in scenarios involving duplicate IDs and deleted files.
  • #1226 only update relative path of file links
  • #1232 fix incorrect title extractions from narrowed buffers
  • #1233 fixes bug where descriptive file links become plain links during update for relative paths
  • #1252 respect original link type during automatic replacement

v1.2.2

3 years ago

Org-roam v1.2.2 (06-10-2020)

In this release we support fuzzy links of the form [[roam:Title]], [[roam:*Headline]] and [[roam:Title*Headline]]. Completion for these fuzzy links is supported via completion-at-point.

Org-roam now does not resolve symlinks. This significantly speeds up cache builds, but may result in some workflows breaking. In particular, Org-roam now cannot figure out if two distinct file paths in the Org-roam directory are the same file, and both files will be processed as if they were different files. This error seems to be unavoidable now that symlinks are not resolved, but this workflow is rare and should not affect most users.

This change requires you to set org-roam-directory to the resolved path of a folder. That is:

(setq org-roam-directory (file-truename "/path/to/directory/"))

Breaking Changes

  • #1164 Org-roam now stores the database in the user's Emacs directory by default
  • #910 Deprecate company-org-roam, using completion-at-point instead. To use this with company, add the company-capf backend instead.
  • #1109 Org-roam now does not resolve symlinks.

Features

  • #1163 Support file-level IDs introduced in Org 9.4
  • #1093 Add vanilla org-roam-tag-source to extract buffer Org tags
  • #1079 Add org-roam-tag-face to customize appearance of tags in interactive commands
  • #1073 Rename file on title change, when org-roam-rename-file-on-title-change is non-nil.
  • #1071 Update link descriptions on title changes, and clean-up rename file advice
  • #1061 Speed up the extraction of file properties, headlines, and titles
  • #1046 New user option to exclude files from Org-roam
  • #1032 File changes are now propagated to the database on idle timer. This prevents large wait times during file saves.
  • #974 Protect region targeted by org-roam-insert
  • #994 Simplify org-roam-store-link
  • #1062 Variable org-roam-completions-everywhere allows for completions everywhere from word at point
  • #910, #1105 Support fuzzy links of the form [[roam:Title]], [[roam:Headline]] and [[roam:TitleHeadline]]

Bugfixes

  • #1057 Improve performance of database builds by preventing generation of LaTeX and image previews.
  • #1103 Fix long build-times for Windows on files with URL links

v1.2.1

3 years ago

Org-roam v1.2.1 (27-07-2020)

This release consisted of a big deal of refactoring and bug fixes. Notably, we fixed several catastrophic failures on db builds with bad setups (#854), and modularized tag and title extractions.

We also added some new features that had been a long time coming:

  1. We made the backlinks more outline-friendly by also showing the outline hierarchy for a backlink (#863)
  2. We now support nested captures, which is crucial for org-roam-protocol (#966)

Breaking Changes

  • #908 Normalized titles in database. May break external packages that rely on unnormalized titles.

Features

  • #814 Implement org-roam-insert-immediate
  • #833 Add customization of file titles with org-roam-title-to-slug-function.
  • #839 Return selected file from org-roam-insert
  • #847 Add GC threshold org-roam-db-gc-threshold to temporarily change the threshold on expensive operations.
  • #847 Use sqlite3 transactions instead of storing the values to be inserted.
  • #851 Add 'first-directory' option for org-roam-tag-sources
  • #863 Display outline hierarchy in backlinks buffer
  • #898 Add org-roam-random-note to browse a random note.
  • #900 Support and index all valid org links
  • #966 Enable nested captures

Bugfixes

  • #854 Warn instead of fail when duplicate refs and IDs exist.
  • #857 Fix tag extraction for symlinked directories.
  • #894 Perform link fixes on all Org-roam files
  • #952 Cache ${foo} template variables so they do not need to be re-entered twice