Changes since v0.22.1.
Early release. In SemVer terms, anything may change before 1.0, including file formats, the HTTP API and settings, though changes to
.ochxand.ochfiles will come with conversions.
Security
- Two ways to make a server unresponsive are fixed.
- Server times: a server now limits how many digits a time may have, counted before any arithmetic. Times in the editor, the desktop app and the offline file stay unbounded.
- Save order: a save checks that the account may write the timeline before reading the document.
- Markdown tables and excerpts: they now take linear time on any input.
- Advisories: details will follow once servers have upgraded.
TIME_DIGIT_LIMIT(new, optional) sets a server's limit as<numerator>/<denominator>digits of a time's exact fraction.- Default:
1000/65, from 10^-64 to below 10^1000 of the timeline's unit. The largest real timelines use 18 and 7 digits. unlimited: keeps times unbounded on the server as well, where everyone who may save a timeline is trusted (administration).
Added
- Explore covers your own timelines and favorites (#464). The dashboard's separate Your timelines and Your favorites lists are gone. Explore's filters, signed in, now offer:
- My timelines;
- Only timelines I starred;
- Visibility, to show public, private or both.
These apply to timelines and events alike. + New timeline and Your public profile sit beside the page's heading.
- Which events search engines list (#467). A timeline's Sharing & settings → Search engines chooses between three options:
- Automatically: events with notes and titles of their own, and none when the notes are templated, as a log import's are.
- All of them.
- None.
Unlisted events keep their pages, marked noindex, and are left out of the sitemap and IndexNow.
llms.txtandllms-full.txt(#482): the site for AI engines and agents, generated from the help, linked from the footer.- Link-preview cards for the site's own pages, drawn by each server with its name and address, and one per audience page.
Changed
- Event pages describe their time as the timeline writes it ("539 BCE", not a timestamp), in plain text without Markdown (#466). Their structured data's
temporalCoverageis valid ISO 8601 (#468), and they carry a breadcrumb trail (#474). - Page titles fit what search results show (#469).
- Help pages have descriptions of their own (#470). The FAQ carries
FAQPagestructured data (#483), and the page's own heading now comes before the help's navigation (#484). - Explore and profiles describe how much they hold (#471).
- Names: the site's structured data names it with the software it runs (#472), and the home page and FAQ say what OpenChronology is in one sentence (#481).
Upgrading
Install the new package and run openchronology-migrate as usual. The migration adds each timeline's search-engine setting (index_events, automatic by default). TIME_DIGIT_LIMIT is a new optional setting; left empty, a server accepts times up to 1000/65 digits.