Repository navigation
Ibis 0.2.0
Ibis 0.2.0 has no downloads. Its build failed, so no packages were published, and its changes first shipped in Ibis 0.2.2.
Changes
⚠ BREAKING CHANGES
- Citation items and locators reject unknown JSON fields; empty locators are errors.
Features
- Accept complete citation intent through the cli (#1060)
- Add a copy tick, touch row press and soft link underlines (#1058)
- Add an accessible interactive citation demo (#1046)
- Add controlled chip keyboard and removal behavior (#826)
- Add ibis toggle for system keyboard shortcuts (#1102)
- Add privacy-preserving website search metadata (#1051)
- Add responsive website navigation and appearance controls (#1045)
- Add small website delights and tidy focus and drag (#1054)
- Add the accessible toolbar menu foundation (#589)
- Add the bounded global shortcuts portal client (#924)
- Add typed locators and safely expand citation outputs (#1344)
- Carry typed locators through search and copy (#1061)
- Citations: add natbib key output
- Clarify empty result states and idle instructions (#801)
- Cli: serve search and citations to AI agents over MCP (#1296)
- Cli: speak to people and take per-key locators and affixes (#1306)
- Close the website with Star and Share, and give sections a lead (#1052)
- Core: decide output and paste safety from the target app (#1272)
- Core: define the shared engine contract (#1212)
- Core: render key outputs from the shared citation contract (#1213)
- Csl: format citations in the shared engine
- Define the website rhythm and chip system (#1044)
- Deliver macOS login reapproval beside the picker (#982)
- Derive picker radii and spacing from one geometry chain (#702)
- Desktop: change the shortcut that opens Ibis from Settings (#1355)
- Desktop: copy citations as text, HTML and RTF in one write (#1328)
- Desktop: guide macOS paste permission in a new Settings window (#1309)
- Desktop: one shared scroll area with native bars and edge fade (#1081)
- Desktop: paste into the app the picker was opened from on macOS (#1277)
- Desktop: paste into the app the picker was opened from on Windows (#1349)
- Desktop: read Zotero through the shared engine
- Desktop: remember output per app and offer a one-copy override
- Desktop: use the canonical engine for file picker citations
- Discover configured Zotero data directories (#1063)
- Drain shortcut portal signals during consent (#966)
- Engine: drive file CLI through typed methods
- Engine: expose formatted citations through the cli
- Expose citation key preview ownership (#1032)
- Find a reference by pasting its DOI, ISBN, PubMed or arXiv ID (#448)
- First run, setup and recovery as choice screens (#1071)
- Follow the design for the picker header and per-platform looks (#499)
- Give the macOS picker the agreed glass look (#528)
- Introduce the canonical public website page (#1021)
- Keep all brand artwork in sync (#1001)
- Keep the quick picker out of the taskbar, select rows by pointer, and guard full-screen apps (#506)
- Lead result rows with a type tile that adds and removes (#540)
- Let people show the Ibis mark in search (#1076)
- Move keep-open controls to More and the footer (#819)
- Name starting at login in each system's own words (#734)
- Offer choices for empty and missing libraries (#1188)
- Offer to start Ibis when the user logs in (#530)
- Polish the website header, buttons and phone demo row (#1056)
- Prepare bounded shortcut suggestions (#805)
- Preview key citations without copying (#807)
- Quiet dividers, filled key caps and one search underline (#710)
- Release: ship the ibis command line for every system (#1267)
- Replace scaffold app icons with the B/G1 ibis (#658)
- Replace the picker format selector with a toolbar menu (#728)
- Restore controlled chip keyboard and removal behavior (#846)
- Retain ownership in formatted citation previews (#1036)
- Retain the kind of a Zotero best attachment in core (#624)
- Say Copied after the picker hides, and copy on row click (#517)
- Say what Enter does, list every key, and offer next steps on no match (#500)
- Scope searches to loaded library sources (#586)
- Search: cite pasted lists in order (#1334)
- Search: find other spellings and give closest matches (#1316)
- Search: forgive one typo, read field hints, rank by ordered rules (#1301)
- Select rows with a full accent fill and hide the key (C4) (#1069)
- Show footer hints as the action first, then its keys (#784)
- Show progress during agreed update downloads (#1002)
- Show what Enter pastes on a citation shelf above the footer (#816)
- Show where the library comes from and when it was last updated (#531)
- Sign Why with the key alone and steady the touch demo (#1057)
- Size the picker to its content (#1073)
- Sources: load files into engine snapshots
- Sources: map neutral Zotero items to CSL (#1220)
- Tell similar result rows apart by container and type (#502)
- Toggle and remember citation output (#852)
- Use checked acrylic on supported windows (#1009)
- Use Fluent and Adwaita type and neutrals, spacing on a 4 px grid (#717)
- Use liquid glass on supported macos (#1013)
- Use the permanent Ibis app identity (#1187)
- Zotero: read Better BibTeX keys from a closed Zotero (#1274)
- Zotero: read Better BibTeX keys outside Zotero's key field (#1270)
- Zotero: read Better BibTeX keys while Zotero runs or is closed (#1283)
- Zotero: read chosen group libraries through the engine and CLI (#1295)
- Zotero: read closed libraries through private copies
- Zotero: read live and closed libraries through the engine
Bug Fixes
- Add a website 404 page and keep previews out of search (#1050)
- Align picker menus with canvas decisions (#1019)
- Align picker radii with Canvas C15 (#1011)
- Align picker tile and title columns (#1007)
- Align platform shape and overlay tokens (#849)
- Attach macOS update consent to the picker (#979)
- Bind picker actions to the displayed library snapshot (#598)
- Bind updater signatures to their advertised version (#927)
- Bound aggregate Zotero reads across libraries (#1065)
- Bound stalled update manifest checks (#635)
- Bound update downloads and release busy state on exit (#1160)
- Bridge the macos system accent into shared roles (#909)
- Cancel pending row copies when the format changes (#596)
- Centre the year in each result row (#912)
- Citation: preserve literal affixes and locators (#1219)
- Citations: keep suffix-only postnotes literal
- Clarify first-run library and writing choices (#822)
- Cli: keep source flags from both positions and warn for old BBT (#1332)
- Coalesce library imports and cancel stale loads (#1157)
- Coalesce repeated search terms and poll cancellation (#937)
- Compare the file-size ratchet with main, not an exact baseline (#1172)
- Contain large citation selections inside the picker (#644)
- Copy the IEEE reference entry instead of a number that cannot match (#1154)
- Core: refuse to cite a key that another record shares (#1118)
- Correct macOS first-launch instructions (#836)
- Csl: drop edge line breaks; cite authors despite truncated editors (#1279)
- Csl: preserve valid citations across formatter requests #1228 #1229
- Csl: refuse unsupported truncated name lists
- Csl: refuse year-only when the year is not printed (#1353)
- Decide library errors from typed values, not their wording (#729)
- Decode native helper output in the caller thread (#629)
- Derive tray warnings from library provenance (#907)
- Describe filtered picker suggestions to assistive technology (#485)
- Desktop: an update offer never opens the picker by itself (#1362)
- Desktop: describe today's Ibis, open CSL-JSON, show closest matches (#1359)
- Desktop: Enter waits for the citation preview instead of refusing (#1093)
- Desktop: footer dot at the edge, shared close glyph, no menu halo (#1078)
- Desktop: hover only tints a row; a click selects it (#1097)
- Desktop: keep a clicked row from being scrolled by a late effect (#1179)
- Desktop: keep library status true across reloads and engine events (#1333)
- Desktop: keep the revision when a reread brings equal references (#1111)
- Desktop: make the Settings window fill and scroll like macOS (#1356)
- Desktop: menus fit the footer, native checks, grouped shortcuts (#1072)
- Desktop: move a macOS shortcut letter to the key that types it (#1146)
- Desktop: never paste into a password field on macOS (#1360)
- Desktop: offer update controls in More on every desktop (#1155)
- Desktop: preserve citation notices and refusal explanations
- Desktop: preserve Settings choices and wrap narrow controls (#1340)
- Desktop: restore selected Zotero group libraries (#1346)
- Desktop: use the macOS picker design on every system
- Desktop: veil the macOS picker glass so the desktop never shows through (#1321)
- Draw selection as a fill and focus rings for the keyboard only (#535)
- End portal sessions when their owner changes (#980)
- Explain website features in plain language (#1047)
- Fit footer actions before wrapping (#870)
- Flush settings before replacing them and keep unknown fields (#694)
- Generate neutral website colours from the brand source (#1043)
- Give the release pull request CI through the release app (#1100)
- Guard Windows update offer activation by capability (#657)
- Identify failing Windows snapshot provider operations (#662)
- Identify invalid Zotero settings list entries (#488)
- Include the year in older library check dates (#879)
- Isolate English picker phrases in RTL layouts (#928)
- Keep a neutral pin in the header (#891)
- Keep appearance diagnostics from interrupting recovery (#851)
- Keep breathing room around a wrapped picker footer (#730)
- Keep corner diagnostics from interrupting recovery (#862)
- Keep feedback browser diagnostics private (#558)
- Keep folded footer hints at their intrinsic width (#877)
- Keep maintainer agent identities public (#1183)
- Keep menus contained and shortcuts as plain text (#934)
- Keep More stationary across footer focus changes (#661)
- Keep native dialogs protected by their own leases (#813)
- Keep rapidly reopened menus keyboard usable (#794)
- Keep readable files usable without live watches
- Keep retained freshness in library status details (#634)
- Keep the focus ring off menu rows (#1028)
- Keep the unsaved-choice warning after a refresh (#898)
- Keep white selected text on the macos native accent (#1027)
- Keep Zotero pagination snapshots complete (#618)
- Keep Zotero scans stable when items are edited mid-scan (#693)
- Let the picker hide while independent messages wait (#904)
- Make fallback overlays opaque (#1025)
- Match letter shortcuts by physical key on Greek and Hebrew layouts (#732)
- Match picker shortcuts from the key table and list repeated warnings (#690)
- Narrow click fixture compiler references (#983)
- Observe macOS control roles before activation (#651)
- Pair native macOS selection background and text (#632)
- Parent macOS update recovery to the picker (#993)
- Picker: show whole chip rows in the tray (#751)
- Picker: show whole chip rows in the tray and test that regions never overlap
- Polish the website citation example and controls (#1048)
- Polish the website header, buttons and phone demo row
- Precompile Windows smoke helpers before timed checks (#1098)
- Preserve decomposed Korean name order
- Preserve decomposed Korean name order
- Preserve footer order on right-to-left pages (#818)
- Preserve Linux startup choices across app identities (#988)
- Preserve literal comparisons while normalizing rich-text tags (#621)
- Preserve native portal activation tokens (#985)
- Preserve newer picker interactions when a copy completes (#599)
- Preserve settings before the app identity changes (#834)
- Preserve settings symlinks and clean migration staging (#916)
- Preserve the Windows installer manufacturer (#963)
- Recognize native stale window error fields (#823)
- Recover backup-only settings without losing preferences (#1145)
- Recover damaged settings from the backup (#1101)
- Refuse blank command-line page locators (#623)
- Reject distrusted TLS certificate keys (#595)
- Release: preserve macOS signing identity safely (#1341)
- Release: put the signing keychain on the search list while signing (#1350)
- Report login registration refresh failures (#866)
- Report native menu check failures (#864)
- Report pending approval after failed login registration (#588)
- Respect explicit debug preview placement (#1006)
- Restore Search focus after More menu actions (#791)
- Restore Search focus after selected-reference removal (#665)
- Restrict desktop commands to their owning windows (#845)
- Retain all Zotero libraries when a refresh fails (#1185)
- Retain failed browser gallery attempts (#1018)
- Retain macOS login notice acknowledgement (#974)
- Retain verified Windows picker identity for menu actions (#792)
- Retry failed Zotero choices when the picker regains focus (#630)
- Return typing immediately after a format pick (#973)
- Return typing immediately after leaving More (#960)
- Save picker preferences on a blocking worker (#910)
- Scale nested geometry insets for larger text (#856)
- Search: find PMID identifiers kept in Zotero Extra (#1348)
- Select rows before copying and offer native actions (#1016)
- Serialize toolbar commands after menu exit (#804)
- Share button states for footer and dialog actions (#958)
- Share citation shelf button states (#977)
- Share composition guards across picker controls (#1017)
- Share copy warning dismissal button states (#986)
- Share empty-state recovery button states (#981)
- Share first-run setup button states (#989)
- Share footer unpin button states (#992)
- Share search clear button states (#990)
- Share toolbar button states and retain hit targets (#969)
- Skip stale Linux accessibility discovery entries (#911)
- Sources: hide brace-wrapped note paths and read larger libraries (#1278)
- Sources: read .bibtex as BibTeX even when it starts with a bracket (#1395)
- Sources: remove private URL tails and bound file records
- Stage the macOS login reapproval receipt (#967)
- Stop citation chip fitting feedback (#876)
- Stop Dvorak's Ctrl+' from quitting the picker (#1068)
- Time formatting from worker start and drop replaced previews (#677)
- Unify chip and result pointer states (#997)
- Unify picker spacing across platforms (#1000)
- Use native windows actions for update consent (#935)
- Use one default shortcut across platforms (#1186)
- Use the beak quote mark in the citation shelf (#920)
- Validate Windows memory process identities (#814)
- Wait for an explicit library search on first run (#999)
- Warn for a BibTeX day that cannot be used and keep a valid one (#1158)
- Write truncated author lists as et al (#1156)
- Zotero: keep closed libraries readable
- Zotero: skip malformed items and restore old title rules (#1331)
Performance
- Borrow Zotero text and bound warning labels (#1062)
- Csl: register citation items once per request
- Engine: reuse unchanged records and hold one snapshot copy (#1391)
- Engine: share prepared objects and drop unused raw copies (#1310)
- Move references out of loaded files in the CLI (#900)
- Skip the key preview while the preview is hidden (#899)
Documentation
- Align public messaging with the Ibis brand headline (#1040)
- Align user and developer guides with current behavior (#645)
- Bring the picker spec in line with prototype rounds seven and eight (#565)
- Bring the Settings, design-system and preview specs into the repo (#796)
- Build the desktop interface on React Aria Components and layered CSS tokens (#542)
- Clarify platform fullscreen shortcut rules (#1012)
- Clarify reference and writing workflow coverage (#1342)
- Count only the required check as red main and restore work limits (#887)
- Cut harness internals from the testing guide (#1141)
- Cut process text to what agents need (#1302)
- Cut the release guide to what a release needs (#1149)
- Cut the testing guide to the strategy and drop per-PR images (#683)
- Describe local storage and per-platform cleanup (#929)
- Design: record the design canvas decisions (#953)
- Drop done roadmap items and mark unbuilt architecture parts (#682)
- Focus the roadmap, keep one tracking issue and freeze the look (#1084)
- Give the code of conduct its reporting address (#1150)
- Keep one brand master and its exports in brand/ (#996)
- Keep the website demo in step with the app (#1053)
- Keep website guidance in the shared rule book (#1041)
- Let hosted CI replace the local full check (#917)
- Link release permission guidance to its standing authority
- Link release permission guidance to its standing authority
- List the start-at-login entry and all settings in PRIVACY (#680)
- Locate unfamiliar repository files before use (#987)
- Make roles, pausing and resuming the same for every agent (#786)
- Match public claims to what has shipped (#1120)
- Merge the design rules into one rule book (#1039)
- Move the unbuilt Settings spec to its issue (#1095)
- Offer only what Ibis can get right (#1151)
- Persist the free-first review procedure (#1010)
- Plan selection search, ibis:// links and the agent pack (#1323)
- Plan the engine-first rebuild (#1191)
- Point changelog commit links at the rewritten history (#1140)
- Put both demo features in 0.3 and size pull requests by feature (#1167)
- Record macos login reapproval in the identity adr (#961)
- Record safe verification target reuse (#978)
- Record the maintainer's product role and release approval (#1137)
- Record the plan from the product review (#1388)
- Record which design steps are done and the agreed corrections (#494)
- Remove stale process and internal notes (#1126)
- Remove stale process and internal notes from public docs
- Require current evidence before recovery reverts (#850)
- Restore the bird's eye in the brand master (#1004)
- Roadmap: open PDFs linked from .bib files in the 0.5 reader (#1255)
- Route ideas to Discussions and state the AI policy (#1134)
- Say a conflicted pull request gets no CI run (#1319)
- Say what the README's stable and Nightly builds do and how to start (#681)
- Say which systems Ibis works with and how (#1135)
- Separate the picker spec from rollout status (#684)
- Shorten the contribution rules to what prevents damage (#800)
- Shorten the contributor guides and plan signing for 1.0 (#1114)
- Shorten the focused harness and screenshot notes in testing (#1103)
- Show the Ibis logo at the top of the README (#957)
- Specify the picker header, footer, empty states and first run (#759)
- State shipped platform behavior and installation limits (#926)
- Surface the review evidence format (#975)
- Tighten the design rule book (#1117)
- Trim the development guide to the rules people use (#1147)
- Use the macOS design on every system for now (#1210)
- Verify evidence links against GitHub metadata
- Verify GitHub evidence links before publishing (#867)
- Write one contribution standard for issues, pull requests and labels (#705)