Skip to content

Latest commit

 

History

History
1458 lines (1091 loc) · 58.4 KB

File metadata and controls

1458 lines (1091 loc) · 58.4 KB

General

All user visible changes to organice will be documented in this file.

When there are updates to the changelog, you will be notified and see a ‘gift’ icon appear on the top right corner.

[2026-02-27 Fri]

Added

Long-press drag and drop reordering for headers

  • Long-press a header to drag and drop it with clear drop indicators on desktop and mobile
  • Moving a parent header now keeps its subtree together and prevents dropping top-level headers into nested child lists
  • PR: #1108

[2026-02-26 Thu]

Fixed

Help/Sample modal for authenticated users

  • Fixed an issue where clicking the question-mark help icon could show an empty Sample screen or get stuck on Syncing ...
  • PR: #1106

Unseen changelog gift icon in authenticated header

  • Fixed the gift icon so opening changelog updates from the header renders the changelog modal correctly for logged-in users
  • PR: #1107

Added

Auto-continue lists with checkboxes in description editor

  • When pressing Enter in an (unordered) checkbox list, the list will be continued with a checkbox
  • The new line has a checkbox with the same checked state as the previous one (unchecked, checked, partially checked).

See orgmode manual for more information on checkboxes.

[2026-02-12 Thu]

Changed

Migrated search parser from pegjs to peggy

  • pegjs is end of life (last commit 7+ years ago); peggy is the maintained fork
  • PR: #1101

Added

Auto-continue lists in description editor

  • When editing a header description, pressing Enter after a list item (- item or 1. item) automatically starts the next list item
  • Ordered lists increment the number (1.2.3.)
  • Pressing Enter on an empty list prefix removes it, exiting the list
  • Works with both dash (-) and plus (+) unordered lists, and dot (1.) and paren (1)) ordered lists

[2026-02-11 Wed]

Added

Harmonize modals for managing headers

  • For capture templates, the ‘+’ button or editing a header, now all modals have the same functionality
  • Removes the old TitleEditorModal and DescriptionEditorModal components
  • PR: #1099

[2026-02-10 Mon]

Fixed

Theme/color scheme flash on startup

  • Fixed a bug where the app would briefly show dark mode before switching to the configured light mode
  • The color scheme is now applied immediately from localStorage before React renders, eliminating the visual flash

Capture template crash when used before sync completes

  • Fixed a crash where opening a capture template immediately after starting organice could cause the entire UI to go blank
  • This happened because settings reloading from the sync backend regenerated template IDs, invalidating the open modal’s reference

[2026-01-08 Thu]

Added

UI for editing slash syntax in SCHEDULED timestamp repeaters

  • When editing a SCHEDULED timestamp with a repeater, you can now set a deadline range using the slash syntax (e.g., .+2d/3d)
  • This means “do this task at most every 2 days, but at least every 3 days”
  • The slash UI only appears for SCHEDULED timestamps, not DEADLINE timestamps
  • The deadline part can be removed by setting the value to 0
  • Upstream documentation: https://orgmode.org/manual/Tracking-your-habits.html
  • The parser already supported this syntax, but now you can edit it visually in the timestamp editor

[2026-01-07 Tue]

Added

Org Habits consistency graph

  • Visual consistency graph showing habit completion over time
  • Color-coded status indicators matching Emacs org-mode:
    • Green: Completed on this day
    • Blue: Not due yet (in grace period)
    • Yellow: Scheduled for this day, or due tomorrow
    • Red: Overdue (you missed this day)
  • Habits sorted before non-habits in agenda view
  • Settings for graph configuration:
    • Org habit preceding days (default: 21)
    • Org habit following days (default: 7)
    • Show all habits today
  • Habits identified by STYLE: habit property
  • Uses :LOGBOOK: entries to track completion history
  • Automatically sets LAST_REPEAT property on completion

See the documentation for more details on habit configuration and usage.

Fixed

Settings reset to defaults when config file is missing fields

Base settings (including Org habits settings) were being overwritten with undefined values when the sync backend config file didn’t contain those fields. This happened when using an older config file or when settings were added after the initial config file was created.

Settings now correctly persist from localStorage even when the config file is missing specific fields.

PWA updates not applying on iOS Safari

When deploying new versions of organice, iOS Safari users often didn’t receive updates and had to remove/reinstall the PWA from their home screen.

Fixed by:

  • Adding skipWaiting() to force immediate service worker activation
  • Adding clients.claim() to ensure new service worker controls all clients immediately
  • Adding proper fetch event handler for cache-first strategy
  • Adding cache headers in .htaccess to prevent service worker file from being cached

[2025-12-01 Mon]

Added

Add “#” and “%” as valid characters for tag searches

PR: #1055

Thank you cperl82 for the PR🙏

Fixed

Dropbox sorting

The old Dropbox sorting could do the wrong thing when the sort comparator is called with the first argument being a file and the second argument being a folder.

PR: #1054

Thank you cperl82 for the PR🙏

On Chrome > 137: GitLab sign-in for private repository fails with “Unexpected sign in error, please try again”

PR: #1061

Thank you mcwitt for the PR and dtvillafana for support and testing🙏

[2025-10-22 Wed]

Changed

“Set scheduled datetime” action uses two different icons

Issue: #1052

Fixed

Components/OrgFile/TimestampEditor: Incorrect Timestamp Format

PR: #1053 Thank you vHugoObject for the PR🙏

[2025-08-11 Mon]

Changed

Refactored TableEditorModal from class to functional component

  • Converted TableEditorModal to a functional component for better maintainability
  • This refactor lays the groundwork for future table enhancements, including touch scrolling support
  • No functional changes to the TableEditorModal’s behavior

PR: #1043 Thank you vHugoObject for the PR🙏

[2025-07-26 Sat]

Fixed

Action Drawer buttons not clickable

The fix from yesterday introduced a regression. Now, we have a fix for the regression and the initial bug report.

[2025-07-24 Thu]

Fixed

Cannot open files at bottom of screen on mobile

[2025-06-22 Sun]

Fixed

When exporting to email, don’t just export the selected headline, but sub-headlines

Added

Users can now share their headlines (including sub-headlines) to any app - with a fallback to mail.

[2025-06-18 Wed]

Fixed

Made it harder to accidentally swipe left or right on headers

  • Changed swipe detection from fixed distance to relative distance (2x)
  • This reduces accidental swipes while maintaining intentional swipe functionality
  • PR: #1034
  • Thank you vHugoObject for the PR🙏

[2025-06-06 Fri]

Fixed

Repeater state changes will now always be filed to the correct header

  • updatePlanningItemsWithRepeaters now selects the header it intends to update

PR: #1029

[2025-05-24 Sat]

Added

Duplicate header via long-press on ‘+’ icon

  • Long-pressing the ‘+’ icon in the header action drawer now duplicates the current header and its entire subtree.
  • Visual feedback for the long-press interaction has been significantly enhanced with larger surrounding shadows for better visibility, especially on touch devices.
  • Short-press on the ‘+’ icon continues to add a new, empty header.

PR: #1025

Fixed

Table add/remove button inverted

PR: #1024

[2025-05-22 Thu]

Changed

Refactor and unify Docker setup for improved development and production builds

  • Introduce a multi-stage Dockerfile. This file defines distinct stages for base, development, build, and production, ensuring optimized layers and dependencies.
  • The production Docker image is lean, containing only necessary built assets and runtime dependencies.

This significantly simplifies Docker configuration management, enhances the developer experience when using Docker, and builds upon earlier work by @rogueai to create lean production images.

The PR is: #1023

[2025-05-06 Tue]

Added

Add visual cue for overdue headers when displaying headers

  • Before this change: When enabling the setting “Show Deadline Display”, the respective deadline will be displayed on each header line.
  • After this change, in the deadline will show in grey if not overdue and in red if overdue.

This change was originally proposed and implemented by @dmorlitz: #970

The merged PR is: #1019

Fixed

Resolved issue where search input field could scroll off-screen on iOS devices

  • The search input in popups (like Search, Task List) will no longer attempt to automatically focus on iOS. This prevents the field from being pushed out of view by the virtual keyboard. iOS users will now need to tap the input to activate it.
  • On non-iOS platforms, the search input will now auto-focus with a slight delay to improve usability.
  • PR: #1018

CI Tasks: docker build/push and deploy-prod

  • Building the docker image has been broken for some time.
  • Deploying to prod via CI had an issue since switching to parcel.

Both seem to be working as of commit e72d01081863e69f7410be87f09aeb2ac68e3c1d. There’s no PR, because I made these changes directly to the master branch, because these CI tasks should only run for production ready code.

[2025-04-11 Fri]

Changed

Switch from CRA to parcel

PR: #1014

This is a big one.

We’ve used Create React App as the main build tool which abstracted stuff like Babel config away from us. In a recent release, we upgraded from CRA v3 to v4 so we were able to upgrade some other dependencies. However, CRA is EOL: https://react.dev/blog/2025/02/14/sunsetting-create-react-app

Fixed

  • Upgrades: When upgrading from CRA v3 to v4, the upgrade process broke. Clients that once started an old version of organice would forever cache that one.
    • Changing to Parcel (see above) also got rid of quite a bit of complexity:
      • Parcel has upstream capability to build scss which means we could delete a good bit of code.
      • Changelog Files are loaded not only at build time, but can be changed while running the dev server.

[2025-04-05 Sat]

Fixed

  • Create a static /manifest.json
    • This improves the PWA experience for people self hosting organice
    • PR: #1013

[2025-04-04 Fri]

Fixed

  • Prevent accidental horizontal swipes during vertical scrolling on iOS
    • Improved touch handling to detect vertical scrolling intent and prevent unwanted horizontal swipe actions
    • PR: #1012

[2024-11-11 Mon]

Changed

  • No UI/UX changes, but lots of tooling upgrades
  • Major version technical upgrades
    • nodejs (from 12 to 20)
    • Create React App (from 3 to 4)
    • eslint (from 6 to 7)
    • node-sass to sass
  • Minor version technical upgrades
    • redux-undo
    • React

PRs:

[2024-11-09 Sat]

Fixed

  • Prevent app crash when deleting a list item immediately after exiting edit mode

Changed

  • doc: Clarify where to find docs (interactive tutorial vs. manual)

[2024-09-19 Thu]

Added

  • Add a flake.nix file to provide a development shell for Nix users.

[2023-11-15 Wed]

Added

  • Ability to print all content (including below the fold)

[2023-08-29 Tue]

Added

  • Capture template variable %y expanding to the raw year

Fixed

  • Using a capture template that is available from all Org files, but should always capture to just one file (not necessarily the currently open one).

[2023-04-11 Tue]

Changed

  • Ticking a checkbox should only tick the checkbox, not enable the list item manipulating functions from handleListItemSelect.

[2023-04-10 Mon]

Fixed

  • Color of unchecked checkbox in a list

[2023-04-03 Mon]

Added

  • Implements list manipulation functions

[2023-01-28 Sat]

Fixed

  • On a header, don’t cancel swipe due to vertical movements

[2023-01-09 Mon]

Fixed

  • Checking or unchecking a checkbox discards text with markup
  • Don’t replace all leading * in the description
    • Only when followed by a space, it would become a headline. Otherwise it’s markup for bold text.
    • PR: #931

[2023-01-05 Thu]

Fixed

  • Deadline overlay UI improvements

[2023-01-04 Wed]

Added

  • Configuration option for a default Org file on startup.
    • By default, when you start organice, it will display your root file directory. If you prefer to display a specific Org file instead, you can select it in the file settings.
  • Option to display DEADLINE values (near the clocking value) on each headline
    • The default for this option is false - so there is no change to the default behavior - until you enable this option via Settings.
    • PR: #891
    • Thank you dmorlitz for the PR🙏

Fixed

  • Rotation of table editor icons to reflect their action.
  • Prevent the user from invalidating her Org file by entering a description that leads with *
    • If the user starts any line with a *, wanting to start a new list, it is immediately converted to a -.
    • PR: #920
    • Thank you saikiransathpadi for the PR🙏

Changed

  • Disable auto-capitalization for search
    • Before:
      • When using the search or task list text inputs the Android/iOS keyboards automatically apply the shift key, meaning that the first character is capitalized.
      • 99% of the time this is not what we want because:
        • Having mixed case triggers a case sensitive search. This is quite confusing when I did not intentionally use capitalization, but it was added anyway. For example, I type “and”, and it actually inputs and searches for “And”, which yields no results.
        • Many of the keywords in the search grammar are lower case, e.g., deadline:, desc:.
    • Now: Auto-capitalization is turned off
    • PR: #914
    • Thank you neildavidforrest for the PR🙏

[2022-12-03 Sat]

Fixed

  • Improve parser to read lines with multiple inline markup statements

[2022-12-02 Fri]

Added

[2022-11-02 Wed]

Fixed

  • Use correct HTML anchor tag inside public.html <noscript>

[2022-07-08 Fri]

Fixed

  • When opening an Org file, show it from the top
  • Changelog has a Back button in the HeaderBar

[2022-07-06 Wed]

Fixed

  • Change log renders above previously opened view component
  • Make HeaderBar sticky

[2022-07-04 Mon]

Added

  • Setting to change textbox height in the description editor

[2022-06-30 Thu]

Changed

  • Upgrade Dropbox authentication flow: switch from OAuth to OAuth 2 and PKCE
    • Rationale: Dropbox switched OAuth from long lived tokens to short lived tokens.
    • PR: #851

[2022-06-29 Wed]

Fixed

  • Undo looks like it is persisting changes, but it persisted old state. Hence, reloading the file was bringing back the version of the file before undoing.

Changed

  • Simplify UX in task modal
    • “Change todo keyword set” is now an explicit button. Also, it’s only shown when there is more than one todo keyword set configured for the current Org file.
    • Todo keywords can be selected and unselected on the same button. No trash can necessary to unselect a todo keyword..
    • PR: #862

Added

  • Ability to delete header from task modal.

[2022-06-22 Wed]

Added

  • Ability to handle empty files
    • This takes care of a big UX problem for users who solely rely on organice. So far, we’ve shown a parser error if the file is empty or if the file did not contain a headline.
    • Now, if the user opens a file that is empty, or has no headlines, she will see the call to action to create a new headline.
    • PR: #853

[2022-06-16 Thu]

Added

  • Capture template variables %r and %R expanding to raw timestamps

[2022-06-14 Tue]

Added

  • Create new file from file browser

[2022-06-13 Mon]

Added

  • Specify default webDAV URL in .env file
  • Docker image recognizes env vars
    • PR: #835
    • see doc for more information

[2022-06-03 Fri]

Removed

[2022-06-01 Wed]

Added

  • Proper Landing Page

[2022-02-23 Wed]

Fixed

  • In-buffer settings can be in lowercase or uppercase. Before, they had to be in uppercase.
  • Manifest for PWAs
    • Before, the ‘install’ button did not appear for Android devices and both Chrome and Firefox showed warnings for the manifest.
    • Issue: #779
    • PR: #781
    • Thank you tbruckmaier for the PR🙏

[2021-12-09 Thu]

Fixed

  • Title editor text loss.
    • Since the introduction of the semantic Title editor on [2021-11-22 Mon], if you modified the text of a title and then click a todo, the todo keyword got saved which triggers a rerender before the text got saved. Therefore the text is reset to the state it was in when the title editor was opened.
    • This is fixed, now.

[2021-12-05 Sun]

Added

  • EPIC Bookmark functionality for search
    • After entering a search string, you can bookmark it using the ⭐ button.
    • Bookmarked search strings populate the suggestions if no search string is entered into the input field.
    • Bookmarks are saved by context, so there are separate bookmarks for search, task-list, and refile.
    • There are at most ten bookmarks for a context. Newly saved bookmarks are inserted at the top of the list. If the list gets too long, the last search strings are dropped. Duplicate bookmarks are dropped too. The list of bookmarks is ordered by last used.
    • Bookmarks are unaware of file context. Therefore, you always have the same bookmarks.
    • Relevant PR: #758

[2021-11-22 Mon]

Changed

  • Title and Description fields are not edited as raw text by default.
    • Instead, a semantic editor comes up when editing them.
    • To edit raw values, click the ‘edit’ icon, again.
  • Search and Task List open in one modal with tabs.
    • Modal opens to “Search” by default, but remembers what was opened last.
  • If there are open clocks, a third modal “Clock List” is added that looks like “Search” for clock:now without the search input field.
  • Notes can be multi-line and are properly indented.

[2021-11-09 Tue]

Added

  • Setting to respect OS light/dark-mode preferences
    • organice already queried the OS for light/dark-mode preference. But changing the setting in organice would override the OS preference.
    • Relevant PR: #749

Fixed

  • Fix repeater adjusting time of date when using .+
    • When repeaterUnit is not “h”, hour and minutes are never touched.
    • When repeaterUnit is “h”, hour and minutes are set to n hour(s) from now (as it was already implemented before this fix).
  • Relevant PR: #746

[2021-11-03 Wed]

Fixed

  • Fix GitLab OAuth token refresh

[2021-11-01 Mon]

Added

  • EPIC Add GitLab as a sync back-end

[2021-10-29 Fri]

Fixed

  • Loading settings when using WebDAV as synchronization back-end

[2021-05-16 Sun]

Added

  • Parse and preserve habit timestamp ranges

[2021-05-13 Thu]

Changed

  • Agenda starts on Monday by default (as it does in Emacs Org mode)

Added

  • Ability to set the “Start of week for weekly agenda” in the Settings
    • Akin to the Emacs org mode variable org-agenda-start-on-weekday
  • Relevant PRs:

[2020-12-29 Tue]

Added

  • EPIC: Multiple file support
    • Agenda, Search, Task List, Refile and Capture Templates have the ability to work on multiple files.
    • You can adjust the behavior for these on a file per file basis by creating “file settings” in the settings menu.
  • EPIC: Offline file support
    • Every file opened in organice will automatically be cached on your device.
    • When visiting the file, again, it will immediately be loaded from the local storage and then loaded from the remote back-end.
    • That makes loading and switching between files instant and gives you the ability to work on multiple files when being offline.
  • Relevant PRs:

[2020-11-21 Sat]

Added

  • When going to the Agenda view, the selected tab is persisted - meaning it will be pre-selected when you go to the Agenda next time.

Fixed

  • Having an active timestamp with a repeater was broken.
    • When the TODO state changes for a header that has a repeater (either as SCHEDULED, DEADLINE or active timestamp), a log entry is written and the timestamp is updated.
    • Relevant PR: #568
  • Removing an active timestamp was broken.

[2020-11-20 Fri]

Fixed

  • organice understands :PROPERTIES: drawers and smartly parses the values in case one of the values is a timestamp.
    • However, parsing all the values and saving the parsed result in any case will lead to wrong results. Most values of properties are just plain text and non-interactive things in Org mode.
    • For example, a value like something_with_underscores would have been treated as ‘underlined text’ which doesn’t make sense for a property drawer. When saving the value back, organice would have squashed the underlines.
    • Now, the values are used and preserved as they are. Timestamps still work, of course.
    • Relevant PR: #578

[2020-11-15 Sun]

Fixed

  • When repeating a task, an active date timestamp was logged instead of an inactive datetime timestamp.

[2020-11-14 Sat]

Fixed

  • The task list was not scrollable on Android.

[2020-11-08 Sun]

Changed

  • Safeguard against selecting text by accident.
    • Before this change, it was possible to select text when doing a ‘swipe’.
    • Now, selecting/copying text is only possible in ‘edit mode’, effectively safeguarding against accidentally selecting text.
    • Thank you tarnung for your PR 🙏

[2020-11-06 Fri]

Added

  • Additional themes. You now can choose between:
    • Solarized
    • One
    • Gruvbox
    • Smyck
    • Code
  • All of these are themes work in light and dark mode!

[2020-11-01 Sun]

Changed

  • We have enabled some default settings by default, because they are reasonable for a new user:
    • shouldStoreSettingsInSyncBackend, because it enables using organice on multiple clients.
    • shouldLiveSync, because it reduces the chance to have a conflict in the open Org file.
    • shouldSyncOnBecomingVisibile, because it reduces the chance to have a conflict in the open Org file.
  • bulletStyle is set to “Fancy”, because it looks more visually pleasing than an asterisk (*) and hence makes organice look better on a first test run.
  • If you personally do not want them enabled, you can disable them separately in the settings any time.

Fixed

  • organice has various settings that the user can configure. Before manual configuration, there organice loads sane defaults. Loading and persisting some of these defaults was buggy before.
    • Loading and persisting of defaults works now.
    • Previously saved wrong values are removed from localStorage to reduce future bug potential.
    • Changing this is - strictly speaking - not visible to the end-user, so it wouldn’t ordinarily show up in this changelog. However, since it makes changes to the already saved settings (in cleaning up old faulty values), it theoretically could introduce a bug in the settings. Hence, the change is added to the changelog.
    • Related PRs:

[2020-10-25 Sun]

Changed

  • The ‘focus header’ feature is renamed.
    • Narrowing means focusing on this header, making the rest temporarily inaccessible.
    • Canceling the narrowing, which makes all headers once again accessible, is called widening.

[2020-10-23 Fri]

Added

  • Add ‘dark mode’ next to ‘light mode’ as a setting.
    • Both themes are based on the popular Solarized color palette.
    • Thank you tarnung for your PR 🙏
  • Add ‘recursive clock times in search’.
    • The clock: search term now includes headers that have time logged on their children.
    • Thank you tarnung for your PR 🙏

[2020-10-20 Tue]

Added

  • Add ‘time range’ queries to search for planning items (SCHEDULED and DEADLINE), plain active timestamps or clocked work time.

[2020-10-19 Mon]

Added

  • When a header is focused, and the user uses the ‘search’ or ‘task list’ feature, then the searched header list is automatically narrowed to only subheaders of the originally focused header.

[2020-10-10 Sat]

Added

  • Display time summaries for clock entries in each subtree

Changed

  • Improve header stickiness
    • The header bar was not always sticky for longer documents and the therefore some functionality was hard to reach (the user had to scroll to the top to reach it).
    • Thank you tarnung for your PR 🙏

[2020-10-07 Wed]

Added

  • Added Documentation on repeaters and delays to sample.org and to mouseovers for the relevant buttons.

[2020-09-20 Sun]

Added

  • Recognize US and Swiss phone numbers and make them clickable
  • Next to ‘canonical’ phone numbers like +49123456789, also recognize:
    • US phone numbers:
      • 123-456-7890
      • (123) 456-7890
      • 123 456 7890
      • 123.456.7890
      • +91 (123) 456-7890
    • Swiss phone numbers:
      • 0783268674
      • 078 326 86 74
      • 041783268675
      • 0041783268674
      • +41783268676
      • +41783268677

[2020-09-07 Mon]

Added

[2020-09-05 Sat]

Fixed

  • Search and Todo List modals could be moved off screen on iOS since [2020-08-30 Sun]. The fix is to disable autoFocus on iOS. The rationale for that documented here: #462

[2020-08-30 Sun]

Added

  • Add note to header (M-x org-add-note)
    • This adds a button for taking notes to tasks (org-add-note). They will be prepended to the header contents after :PROPERTIES: and before the :LOGBOOK:
  • Auto-focus filter input fields (search and task-list)

[2020-08-29 Sat]

Fixed

  • If a user folds a header, all its subheaders should collapse as well, so that when the user reopens it, they stay closed.
    • The previous behavior is buggy in a way that it keeps the subheaders open as they were, restoring their openness when the header is unfolded.
    • The previous behavior is useful, though. So this change introduces a user setting to toggle the behaviour.
  • Thank you necto for your PR 🙏

[2020-08-25 Tue]

Fixed

  • Updating table cell values and removing table rows or colums was not undoable

[2020-07-28 Tue]

Fixed

  1. Sync stuck when working in the background
    • When the user put organice into the background during a sync and comes back, organice was stuck in sync mode, but doesn’t actually sync anymore. This means that any new changes to the Org file will not be persisted. This is due to mobile browsers cutting off most resources to browser apps in the background, so organice cannot guarantee that a sync happens properly in the background.
    • It’s not trivial to find out if the job is stuck
      • Time is not a good indicator as bigger files on slower connections will always take longer.
      • There’s no JS API to reliably find out if the browser just got back from the background or is put into the foreground. The =visibilitychange= API just triggers for both these events.
    • Hence, the implementation is generic in nature: Whenever the user hits the ‘sync’ button, an actual ‘sync’ is forced - even if organice thinks there’s currently a sync in progress or that it should be debounced. That makes sense, because manual actions by the user should always be obeyed.
    • Closes issue #252

[2020-07-08 Wed]

Added

  • Allow template-variables in the header-path in a capture template

[2020-06-14 Sun]

Added

  • Allow capture templates to insert at beginning or end of file

[2020-06-05 Fri]

Fixed

  • file: links are sanity checked before opened
    • file: links opened in iOS from the PWA view will not open Mobile Safari
    • Open issue: Some links will be opened as directories when the link is not really going towards a directory.
    • Thank you aspiers for your PR 🙏

[2020-06-03 Wed]

Added

  • TODO keyword sets can now be anywhere in the file

[2020-05-30 Sat]

Added

  • Make local file:... links navigate to the relevant file

[2020-05-06 Wed]

Fixed

  • Planning items now respect the new hard-indent setting.

[2020-05-05 Tue]

Fixed

  • Append new tags correctly to title.
    • If a header didn’t have tags before, the first tags were erroneously appended without a space.

[2020-04-06 Mon]

Added

  • Support org-adapt-indentation
    • By default, the metadata body (including deadlines and drawers) of an exported org heading is indented according to its level. If instead you prefer to keep your body text flush-left, i.e.{’ ‘}
    • Thank you cpbotha for your PR 🙏

[2020-04-05 Sun]

Added

  • Support for org-log-into-drawer TODO state logging

Fixed

  • Settings screen has proper title and “back” button

[2020-03-27 Fri]

Fixed

  • Help texts for widen/narrow were reversed

[2020-02-29 Sat]

Fixed

  • As a user, when I visit Search, Task List or Agenda whilst having a dirty file, I’m not getting a pop up a dialogue notifying me about unpushed changes

[2020-02-17 Mon]

Added

  • Headers with active timestamps in the header or description appear in agenda

Fixed

  • ‘Insert timestamp’ for headers and descriptions

[2020-02-09 Sun]

Added

[2020-01-27 Mon]

Fixed

  • When editing a :LOGBOOK: drawer within a headers description, the relevant logbook entries are updated (which might entail them being deleted).

[2020-01-20 Mon]

Fixed

  • When refiling a header, don’t show subheaders in the refile drawer
  • When doing a ‘Search’ or ‘Refile’, the action is reflected in the name of the opening drawer.
  • In the agenda view, fix relative time distance for future dates

[2020-01-15 Wed]

Fixed

  • Put Floating Action Button “Move a header” into the middle of the screen, so that it has enough space to render all arrows on mobile devices.

[2020-01-14 Tue]

Added

  • Notify on changes for changelog
    • This is done with a similar UX than other productivity apps (like Slack) do it. The user will see a ‘gift’ icon whenever there’s a change to the changelog she has not seen, yet.

[2020-01-13 Mon]

Added

  • “Show Org filename in Header” is configurable in settings and off by default

Fixed

  • Show error message when using a capture template with a badly configured header path

[2020-01-12 Sun]

Added

  • Make HeaderBar sticky
    • Making undo/redo, file browser and help always available (before it was required to scroll all the way to the top)
  • Deselect headline by clicking into the title (or empty space) in the HeaderBar
  • Show Org filename in Header

Fixed

  • Major synchronization improvements
    1. After undo/redo, synchronize Org file
    2. Debounce Sync
      1. When a user changes things quickly (which happens easily when having ‘live sync’ enabled and using undo/redo for example), multiple syncs ran in parallel. The back-ends will either get confused or fail with errors (429 too many write operations). In any case, likely the last written state would not have been the state of the Org file in organice.
    3. Safeguard against concurrent sync requests to the back-end
    4. In case of synchronization error, show the error to the user and retry synchronization
    5. Don’t actually sync a whole Org file for an empty header. When the user adds some data and triggers UPDATE_HEADER_TITLE, then it makes sense to save it.

[2020-01-11 Sat]

Added

  • All HeaderActionItems are undoable and redoable

Fixed

  • Parsing planning items followed by a checkbox

[2020-01-07 Tue]

Added

  • Refile
    • When reviewing the captured data, you may want to refile or to copy some of the entries into a different list, for example into a project.
  • Add button in HeaderActionBar to open property editor

Changed

  • All HeaderActionDrawer actions have icons. The icons are documented in sample.org and have a mouseover title.

[2020-01-04 Sat]

Added

  • Ability to search headlines
    • It has the same syntax as the search field in the Task List feature

Fixed

  • Sort order in Task List
    • Tasks were only ordered by their planning item dates. This implied that tasks that were long DONE would be shown first.
    • Now, tasks in the Task list are sorted by state and then date.
    • Thank you @schoettl for the PR 🙏

[2020-01-02 Thu]

Added

  • Place cursor after the TODO keyword when creating a new header
  • Highlight verbatim markup

Changes

  • Highlight cookies and cookie percentages according to Solarized color scheme

Fixed

  • Don’t update search results when using an invalid search filter
  • On mobile: Styling of Search / Task List drawer when searching all headlines
  • On mobile: Ability to scroll Search / Task List
  • Teach #+TODO parser to understand (..) suffix

[2020-01-01 Wed]

Added

  • Support single- and double-quoted strings in the search filter
  • Trim whitespace for entered or updated headlines

Fixed

  • Capture templates in iOS 13.3 are positioned properly
    • iOS 13 introduced a styling regression when setting focus without user interaction. iOS 13.3 reverts to the way other browsers do it.

Changed

  • Revert “Move HeaderActionDrawer before headline”
    • As per #188, the changes introduced in #100 didn’t fare well with the community. Hence, as a first step to improve UX, we’re reverting to the previous state.

[2019-12-31 Tue]

Added

  • Searching of headlines/todos with a composable query language
  • Routing for Settings (/settings) and Sample (/sample)
  • Routing for Agenda and TaskList

Changes

  • The action for capture templates now uses a more idiomatic ‘plus’ icon instead of a ‘list’ icon

[2019-12-28 Sat]

Added

  • Proper coloring of DONE todoKeywords from custom todo sequences
  • Place TODO keyword of previous header in the new header

Changed

  • Refactor current Org parser and regex

[2019-12-26 Thu]

Added

  • “Share” button for headlines (sharing via email)
  • Automatically render links for URLs with www prefix, but without protocol

[2019-12-25 Wed]

Added

  • Suggestion list for inputs in property editor
    • To minimize typing and typos, add smart completion for property names and values in the PropertyListEditorModal.
    • Thank you schoettl for your PR!

[2019-12-24 Tue]

Added

  • Automatically render links for URLs, e-mail addresses and phone numbers
  • Suggestion list for inputs in tag editor

[2019-12-17 Tue]

Changed

  • Improve webdav url input

Fixed

  • Make “privacy policy” sticky to the bottom of the landing page

[2019-12-15 Sun]

Changed

  • UX: Move Org header actions before selected headline
  • Thank you dotcs for your PR!

Fixed

  • Android PWA implementation was broken (issue #134)
    • It required two more icon sizes
  • Thank you dotcs for your PR!

[2019-12-10 Tue]

Added

[2019-12-08 Sun]

Added

  • As a user, when I’m on a headline with a planning item (schedule or deadline), I want to be able to remove it.

[2019-11-29 Fri]

Fixed

  • Clicking the Timestamp in a TODO within the agenda toggles from the date to a human readable timespan

[2019-11-27 Wed]

Added

  • Instructions on configuring Nextcloud+haproxy to allow WebDAV
  • Documentation on how to share from Nextcloud using WebDAV
  • Thank you runejuhl for your PR!

[2019-11-25 Mon]

Added

  • Honor the ‘nologrepeat’ option
    • It can be set via #+STARTUP: or as a property
    • Thank you @jamesnvc for your PR!

[2019-11-22 Fri]

Fixed

[2019-11-21 Thu]

Fixed

  • Safeguard against potential Dropbox SDK Bug

[2019-11-19 Tue]

Changed

  • Don’t put newlines after headers with no content, add newline at EOF

[2019-11-14 Thu]

Added

[2019-10-31 Thu]

Fixed

  • Keep all in-file settings and content lines from top of file

[2019-10-29 Tue]

Added

  • Show login options as clickable links with cursor pointer
  • Also improve wording with regards to login options

[2019-10-26 Sat]

Added

  • WebDAV as a sync backend!
  • As a user, when I swipe a header, I want the icon to contrast the background, so that better see the action taken
  • As a user, when I hover a clickable element, I want my cursor to

change, so that I can see that it is clickable.

Fixed

  • Do not throw an error when clearing a planning item

[2019-10-02 Wed]

Fixed

  • On iOS 13, fix the regression which made capture input fields hide under the keyboard
    • More information and screenshots in the ticket: #46
    • Turns out this issue is non trivial to fix and requires specific rules for every size of iPhone. I tested against the Xs and 6s. If you have a different form factor and the capture template input screen looks off to you, please send me a screenshot of what it looks like and I’ll add the dimensions for your form factor right away!

[2019-09-28 Sat]

Added

  • Implemented a redo Button next to the undo button

[2019-09-21 Sat]

Fixed

  • Parser bug which would interpret bold statements in the beginning of a line as a header.
  • Parser bug which would delete newlines between headers and items

Changed

[2019-09-19 Thu]

Changed

  • Constraining to a max width and centering for tablets and bigger

[2019-09-15 Sun]

Fixed

  • The ‘Sync on application becoming visible’ feature works on iOS and Safari
    • If enabled, the current org file is pulled from the sync backend when the browser tab becomes visible. This prevents you from having a stale file before starting to make changes to it.

[2019-09-08 Sun]

Added

  • Documented how to use organice from a bookmarklet using the capture template feature

[2019-09-06 Fri]

Fixed

  • Removed Google Analytics tracking, because it has no place here

[2019-09-02 Mon]

Added

  • Configure Google Drive for the free community version of organice at https://organice.200ok.ch
  • Documented SPA routing for self-hosting
  • Wrote and publicized a Privacy Policy

[2019-08-27 Tue]

Changed

  • Color scheme has been ported to the popular Solarized (light mode)
    • Whilst doing so, CSS variables have been introduced, so that there’s not a whole lot of repetition of magic rgb values going on
    • The logo has been adapted, too
  • The landing page and settings screens have been de-cluttered

[2019-08-26 Mon]

Added

  • Continuous deployment: Merging to master triggers a build on CI and when successful, it triggers a deploy to https://org.200ok.ch
  • Add a new temporary™ logo: organice.png

[2019-08-25 Sun]

Added

  • Since we want organice to be a community driven project, we have added:
  • Add CircleCI to run the tests on every commit
    • They are also integrated as a check for PRs with the benefit that contributors get automated feedback by running the regression test suite.
  • Add Greenkeeper for automated dependency management
  • Add Codeclimate for automated maintainability analysis

Changed

  • Upgraded to Node 12.9

[2019-08-12 Mon]

Changed

  • The default keybindings (when used from a desktop browser) are now more in line with the defaults in Emacs itself

Fixed

  • The keybindings work on non-macOS operating systems

[2019-08-10 Sat]

Added

  • As a user, when in a directory listing, I want the folders and files to be sorted alphabetically. Furthermore, I only want to see files that organice can open (that is org and org archive files).
  • Note: This is only implemented for the Dropbox back-end at this time.

Changed

  • Filters files from a directory listing down to org files.
  • Sorts folders atop of files.
  • Sorts both folders and files alphabetically.

[2019-08-05 Mon]

Added

  • When the browser tab becomes visible, pull the latest version of the Org file
    • This is rather helpful when the app is used in production. Since the production build supports loading the complete application and org-file from cache, it can be open for a very long time. When the org-file hasn’t been pulled in a “very long time”™, then chances are non-nil that the file has been changed by another client in the meantime.
    • Without this change, when the user opens the app after a while, makes changes to the file and wants to sync to the back-end, there might be the message “Since you last pulled, a newer version of the file has been pushed to the server.”. Now the user has two conflicting versions of the same file and can only chose to keep one (Which in itself is great UX and great error handling for cases in which we do encounter a merge conflict, of course!).
    • This situation is mitigated with this change. Now the user has the option to enable “Sync on application becoming visible” which acts similarly to “Live Sync”. When the user opts to use this feature, whenever the application gets pulled from the background or started through the service worker, the first thing that happens it that a new version of the org-file is pulled from the server. It’s therefore much harder for the user to create conflicts.

[2019-08-04 Sun]

Fixed

  • Parser doesn’t break indentation of existing files in fewer places
  • Planning Items are formatted as in Emacs Org mode
  • Properties are formatted as in Emacs Org mode
  • Tags are formatted as in Emacs Org mode

[2019-08-03 Sat]

Added

  • Documented deployment options
    • People have been asking for tighter access restrictions.
    • Imo the best answer to that request is to make it as easy as possible to host organice.
    • There’s myriads of good options, of course. I picked to document two that will (potentially) be cost-free to the users and which are very easy and quick to set up: Ftp and Heroku.

Fixed

  • Tests on master were red
    • Partly due to obsolete tests
    • Partly because tests weren’t updated according to changes in the code