Skip to content

Releases: neopostmodern/structure

0.23.1

20 May 14:34
Compare
Choose a tag to compare

Patch release with bug fixes for Alcoholism 0.23.0, check the original release notes for user-facing info.

Changes

Bug Fixes

  • client: actually calculate notes count for tag sorting (71a35b6)
  • client: actually run client-side migrations, fixes #215 (3f15603)
  • client: add new tag reference directly to query cache, fixes #221 (d6a8538)
  • client: pass autocomplete InputProps to input on LinkNameField, fixes #216 (a98751a)
  • client: reduce pollution of cache by ephemeral queries (3c08433)
  • client: show actual tag name in color picker, fixes #217 (c21b71e)
  • client: show add tag form input while tags load, fixes #220 (8990198)
  • client: text ellipsis for note menu buttons, fixes #218 (5fe5e18)
  • server: only send back minimum version when not fulfilled (45fe6e7)
  • sort notes by createdAt for server cache stability (30460cf)

Alcoholism 0.23.0

18 May 23:36
Compare
Choose a tag to compare

alcohoism (noun) continued excessive or compulsive use of alcoholic drinks

Shared tags (and notes)! What sounded simple ended up requiring significant rewrites.

Hints to get started with sharing:

  • Click on a tag which you want to share, enter the other person's username in the Sharing section and ta-da.
  • A shared tag by default only makes the tag and the notes you tagged with it visible to the other person. You can grant them four granular permissions:
    • Editing all notes with this tag
    • Adding this tag to notes (and removing it)
    • Sharing the tag with other people
    • Editing the tag itself
  • If something doesn't show up immediately you can manually refresh (on the main / notes page) by hitting r
  • Sharing works only via tags, you can't share an individual note.

Also: quite some UI and UX updates, especially an overhauled and extended keyboard/shortcut experience (a quick switcher!) and performance improvements. Bonus: a color picker for tags, based on your existing tag colors!

Breaking changes

  • The signature of the entitiesUpdatedSince query has changed and is not backwards compatible (the old approach doesn't work with shared tags)

Known issues

  • If you have thousands of notes and tags some actions, such as opening the tag search but also loading the app unfortunately, sometimes take a while despite a variety of new optimizations. Maybe the future will bring even more performance tweaks.
  • Opening the tag search for the first time on a device can be really slow, be patient.

Next up

v0.24 a maintenance release (refactoring, rewriting)

Changes

Bug Fixes

  • always allow users to unshare another user's tag from themselves (490c1c0)
  • client: accept quick submit shortcut from within other input fields (make "global") (cc0c0e9)
  • client: check sortBy when reading extended filtered notes cache (bc795ee)
  • client: clear localStorage on logout (b549b1f)
  • client: correct select-all logic for notes list (c5e69d2)
  • client: don't treat everything with a colon as a URL, fixes #208 (6b3f589)
  • client: ensure ErrorSnackbar is visible (d385bae)
  • client: ensure light text color in light-mode shortcuts (76ab641)
  • client: ensure proper cache-removal of deleted note (4cabfb9)
  • client: ensure tag autocomplete renders on top of other elements (d2f6071)
  • client: filter out tags without 'use' permission for add tag form (1a41e06)
  • client: focus and shortcut management for ctrl+tab (0d5eb6b)
  • client: hide internal tags from tags page (a39d112)
  • client: increase space between text notes and secondary actions on mobile, fixes #211 (66b1643)
  • client: prevent visual content jumps (159aa3d)
  • client: proper read-only form field props and styles (8b0c4ff)
  • client: remove electron-store (87c7c82)
  • client: remove unshared tag from cached notes (87df758)
  • client: run visibility check and note list length expansion also when 5-10 notes are to be displayed, closes #210 (023e342)
  • client: show errors in UI when deleting tag (c68a6c0)
  • client: wait for apollo cache to mount react app (9a30b43)
  • server: add ownership tag to created URL notes (links) (3f4d280)
  • server: pass redirect as callback to .logout, fixes #209 (298b58d)
  • server: retain local GraphQL playground (74454d8)
  • server: simplify data export, also making it compatible with new data structure (b0c4014)

Features

  • client: (re-)add shortcut 'r' to refresh notes (de5c45d)
  • client: add web shortcut for last visited notes + show in tooltip (e3d73ba)
  • client: color picker for tags, closes #188 (0656820)
  • client: copy URL button and menu item for note, closes #189 (a0e1354)
  • client: design improvements for tag sharing (4526c1f)
  • client: don't show search tooltip when focused (8d00531)
  • client: intersection observer for infinite scroll and decreased initial rendering (b4d68ac)
  • client: memoize sorted and filtered notes across (un)mounts (c30b8a5)
  • client: more manual cache mappings for apollo (b9d1dd6)
  • client: more manual cache mappings for apollo (0a48f7d)
  • client: only save forms if the value was changed (76b61bb)
  • client: pass keyboard event to bindShortcut / useShortcut (4253d2f)
  • client: persist last visited notes locally across page (re)loads (0257197)
  • client: read-only UI for notes without write permissions (e7cf204)
  • client: replace custom TextField with MUI TextField (c69932d)
  • client: shortcut for accessing last visited notes, closes #205 (760e477)
  • client: shortcut for adding URL from clipboard, closes #185 (83b4223)
  • client: shortcut to open first through ninth note in list (cb3ff54)
  • client: shortcuts for title suggestions, closes #206 (b6003ae)
  • client: show basic metadata for notes and tags on their page (3c53b79)
  • client: show indicators if tags and notes are shared (97a0b6c)
  • client: some note typogr...
Read more

Albinism 0.22.1

16 Dec 18:27
Compare
Choose a tag to compare

albinism (noun) the condition of an albino

A new logo! Minor UI update, especially for mobile. Improved tagging experience and search performance. Some bug fixes.
Heads up: notes are now sorted by last edited instead of last created – but there's a new switch to change the behavior, too.

Known issues

  • the new tag sorting might take some usage before it 'warms up'

Next up

v0.23 new features, but still evaluating which. Maybe #43 or #49 finally.

Changes

0.22.1 (2022-12-16)

Bug Fixes

  • client: don't treat key presses on textarea as shortcuts (1380e07)

0.22.0 (2022-12-13)

Bug Fixes

  • client: completely close app even on macOS when window is closed, workaround for #182 (28c3256)
  • client: fetch notes on tag when untagging, updates cache (7967881)
  • client: workaround to fit notes menu in a single line on even smaller displays (8673f05)
  • ensure migrations pass on a new/clean database (f24cab4)
  • include a smaller icon for macOS, fixes #132 (62551d0)
  • prevent crash on accounts with no notes or tags (8865d8d)

Features

  • add browser-compatible hotkeys/keyboard shortcuts, remove refresh shortcut (68b56d0)
  • client: compact notes page menu on mobile (535e7e9)
  • client: option to change 'sort by', closes #125 (dcecb4e)
  • client: secondary sort tags by usage (09f0e7c)
  • delete tags, closes #136 (0e78333)
  • display nicer pages when there is no content to show, closes #147 (39c5e79)
  • new logo, closes #46 (a752f6b)
  • proper error handling when single entities are not found (2e613ba)
  • replace custom tag search with @mui's autocomplete, closes #141 (166bf32)
  • rudimentary importer (f8c25fb)
  • server: log apollo errors on server (8cd7bf1)
  • sort tags with match-sorter (7cdad45)
  • user data-export self-service, closes #47 (7f1ed24)

Alarmism (0.21.0)

03 Sep 12:37
Compare
Choose a tag to compare

alarmism (noun) the often unwarranted exciting of fears or warning of danger

Mostly bug fixes, TWA support.

Known issues

None

Next up

v0.22 new features

Changes

  • feat: add links and text by sharing to PWA, closes #57 (54e03e6)
  • feat: redesign add note page clipboard & url input, closes #171 (3f43e8d)
  • deps: bump top-level dependencies (lerna, prettier, typescript) (4bfcbd1)
  • deps: update dependencies (3d7d7c0)
  • fix(client): add migration to new backend URL for electron app (009831e)
  • fix(client): base cache reconciliation in useEntitiesUpdatedSince on received entity (119c00f)
  • fix(client): correct checklist rendering in markdown, fixes #165 (5ab4775)
  • fix(client): correct merging of incoming newly created notes and tags, fixes #170 (cf3e6e9)
  • fix(client): disable sandboxing for preload script (78c6e72)
  • fix(client): fetch updatedAt on note when adding tag, fixes #164 (c39fc4a)
  • fix(client): fetch entire tag fragment on added tags, fixes #161 (f4e885e)
  • fix(client): include 512px icon in web build (67a8fbb)
  • fix(client): re-allow tag, fixes #167 (5d1a405)
  • fix(config): correct config entry key (f67ad7d)
  • fix(server): read config with arrays as field values for deploy (7b2796c)
  • fix(server): trim title suggestions, fixes #162 (a8a6402)
  • chore: add assetlinks.json files (a907467)
  • chore: change domains, closes #163 (6e091ee)
  • chore: fix config reading in backup script (9514edd)
  • ci: drop collections before restoring (staging only) (15d12a3)

Agrarianism (0.20.2)

15 Aug 07:43
Compare
Choose a tag to compare

agrarianism (noun) a social or political movement designed to bring about land reforms or to improve the economic status of the farmer

Mostly performance improvements, some UI/UX polishing and minor bug fixes.

Known issues

#161 Sometimes: Searching tags to add crashes app
#164 Can't edit note after adding a tag
#165 Markdown checklists render incorrectly

Next up

v0.21 with bug fixes & finalized TWA support
v0.22 with new features

Changes

  • v0.20.2 (cb6d2e2)
  • chore(client): add short_name and larger icon to webmanifest (35cf39f)
  • chore(client): bump @apollo/client (ef220fa)
  • chore(client): dynamic allowed hosts & web socket URL from config for webpack dev server (349da48)
  • feat: only fetch data since last fetch, closes #122 (882fa52)
  • feat: reject saves when updatedAt is stale, closes #155 (b1cd50c)
  • feat(client): useIsOffline hook with reactive network status (ba3ba27)
  • feat(client): add advanced setting to change network mode (88d5936)
  • feat(client): add error color to 'Save failed!' warning (88d6d73)
  • feat(client): adjust theme color with dark-mode preference, closes #139 (12e7930)
  • feat(client): advanced settings section, ability to clear cache (c1e2b7e)
  • feat(client): replace marked with react-markdown, closes #142 (7fe51f7)
  • feat(client): respect env(safe-area-inset-bottom), closes #127 (1964018)
  • fix: use cached tags in AddTagForm (95531e3)
  • fix(client): adapt to new media query structure in MUI theme object (f6b8ba7)
  • fix(client): always close notes list action menu after any action, closes #149 (2ef6ccf)
  • fix(client): ensure spinner displays properly under load, fixes #144 (43c882e)
  • fix(client): fit apollo error message on small screen (e7675aa)
  • fix(client): forgiving access to navigator.permissions API, closes #153 (a9fb8b9)
  • fix(client): only used cached profile data in ComplexLayout (maybe related to #138) (e98568e)
  • fix(client): prevent double submission and display of notes added through bookmarklet to web or desk (9723ae2)
  • fix(client): show errors in UI on TagPage (a846b33)
  • fix(client): sync all forms when receiving prop (e.g. after mutation), fixes #160 (19fb53c)
  • fix(client): use default export of package.json (689b4c4)
  • refactor(client): improve shared fragments (62479e9)
  • refactor(client): migrate from apollo client:codegen to graphql-codegen, closes #159 (76ee424)
  • deps(client): update react to v18 and misc other packages, closes #143 (39dc907)

Full Changelog: v0.20.1...v0.20.2

Agnosticism (0.20.1)

13 May 07:06
Compare
Choose a tag to compare

Ageism (0.20.0)

10 May 13:17
Compare
Choose a tag to compare

ageism / agism (noun) prejudice or discrimination against a particular age-group and especially the elderly

Major update on several levels:

  • overhauled user interface
    • layout, much more responsive
    • look-and-feel (based on Material UI)
    • dark mode
  • usability improvements
    • error handling
    • reflect network state in UI (offline, saving, background fetching)
    • server-side title suggestion generation (works in browser now too!)
  • repository restructure
    • start from scratch, archive all old commits in v0.19.x branch
    • mono-repo (with lerna)

Tech changes:

  • rely on mongoDB 4.2+
  • prefer volta
  • electron 18

Up next

0.20.1 performance and stability improvements, bug fixes
0.21.0 new features

Aestheticism (0.19.2)

10 May 11:13
Compare
Choose a tag to compare

Description missing

Aeroembolism

27 Jan 19:03
Compare
Choose a tag to compare

aeroembolism (noun) decompression sickness especially when caused by rapid ascent to high altitudes and resulting exposure to rapidly lowered air pressure

A series of (mainly) user experience improvements

  • feat: add desktop & web app based bookmarklets
  • feat: stay logged in for 30 days (after last usage)
  • feat: add ctrl+r/cmd+r for refetching the main note view
  • feat(design): naïve tag wrapping
  • feat(design): center loading indicator on link editing page
  • feat: exclude tags from autocomplete that are already present on note
  • feat: improve automatic focus placement in autocomplete

and some fixes

  • fix: text note form saving functionality restored
  • fix: sort notes by created at locally
  • fix: add new tags to cache

and technical things

  • build: set TypeScript moduleResolution to 'node'
  • build: use port 8000 for development frontend

Adventurism

14 Jan 11:34
Compare
Choose a tag to compare

adventurism (noun) improvisation or experimentation (as in politics or military or foreign affairs) in the absence or in defiance of accepted plans or principles

A very technical overhaul, (hopefully) no user-facing changes

  • major refactor
    • TypeScript (replaces Flow)
    • styled-components (replaces imported CSS classnames)
    • React Hook Form (replaces Redux Form)
    • hooks in most places
  • improved builds/CI
    • server runs without building/bundling (removed rollup+babel), taking advantage of new native node capabilities
    • more robust deploy mechanism for backend
    • automated Electron app builds