2020-06-22 00:53:56 +03:00
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog ](https://keepachangelog.com/en/1.0.0/ ),
and this project adheres to [Semantic Versioning ](https://semver.org/spec/v2.0.0.html ).
2021-02-20 23:24:09 +03:00
## [Unreleased]
2021-04-18 19:20:43 +03:00
### Added
- Support for version 1.1 JSON feeds
2021-04-21 00:02:59 +03:00
- Copy current URL or selected URL to clipboard (#220, #225 )
- Uses < kbd > C</ kbd > and < kbd > c</ kbd > by default
2021-04-22 05:02:51 +03:00
- Configurable keybindings for scrolling on pages (#211, #222 )
2021-05-13 23:40:50 +03:00
- Ability to save `about:` pages (#210, #236 )
2021-05-15 01:18:03 +03:00
- `bind_beginning` and `bind_end` keybindings
2021-06-25 07:01:58 +03:00
- Display gemtext from stdin (#205, #242 )
2021-08-10 22:07:47 +03:00
- Specifying `default` in the theme config uses the terminal's default background color, including transparency (#244, #245 )
2021-12-03 18:01:14 +03:00
- Redirects occur automatically if it only adds a trailing slash (#271)
2021-12-03 19:45:36 +03:00
- Non-gemini links are underlined by default to help color blind users (#189)
2021-12-08 04:29:44 +03:00
- Text and element colors of default theme change to be black on terminals with light backgrounds (#181)
2021-12-07 23:56:12 +03:00
- Support paths with spaces in `[url-handlers]` config settings (#214)
- Display info modal when opening URL with custom application
2021-12-08 03:35:12 +03:00
- Files can be opened by relative path on the commandline (#231, #257 )
2021-04-18 19:20:43 +03:00
2021-02-23 01:41:48 +03:00
### Changed
2021-02-27 08:13:11 +03:00
- Bookmarks are stored using XML in the XBEL format, old bookmarks are transferred (#68)
2021-12-03 19:45:36 +03:00
- Text no longer disappears under the left margin when scrolling (regression in v1.8.0) (#197)
2021-03-08 22:23:49 +03:00
- Default search engine changed to geminispace.info from gus.guru
2021-12-03 22:58:02 +03:00
- The user's terminal theme colors are used by default (#181)
2021-12-07 23:28:34 +03:00
- By default, non-gemini URI schemes are opened in the default application. This requires a config change for previous users, see the [wiki ](https://github.com/makeworld-the-better-one/amfora/wiki/Handling-Other-URL-Schemes ) (#207)
2021-12-08 01:40:50 +03:00
- Windows uses paths set by `XDG` variables over `APPDATA` if they are set (#255)
2021-12-08 03:07:20 +03:00
- Treat status codes like 22 as equivalent to 20 as per the latest spec (#266)
2021-12-08 03:57:11 +03:00
- Show minimal loading page instead of `about:newtab` when loading a URL in a new tab (#272)
2021-02-23 01:41:48 +03:00
2021-12-03 19:45:36 +03:00
## Removed
2021-12-04 01:58:16 +03:00
- Favicon support (#199)
2021-12-03 22:58:02 +03:00
- The default Amfora theme, get it back [here ](https://github.com/makeworld-the-better-one/amfora/blob/master/contrib/themes/amfora.toml )
2021-12-03 19:45:36 +03:00
2021-02-20 23:24:09 +03:00
### Fixed
- Help text is now the same color as `regular_text` in the theme config
2021-02-21 18:39:40 +03:00
- Non-ASCII (multibyte) characters can now be used as keybindings (#198, #200 )
2021-02-27 08:13:11 +03:00
- Possible subscription update race condition on startup
2021-12-03 19:45:36 +03:00
- Plaintext documents are escaped properly (regression in v1.8.0)
2021-03-03 06:13:56 +03:00
- Help page scrollbar color matches what's in the theme config
2021-05-07 05:28:21 +03:00
- Regression where lists would not appear if `bullets = false` (#234, #235 )
2021-05-15 01:45:41 +03:00
- Support multiple bookmarks with the same name
2021-12-07 03:08:38 +03:00
- Cert change message grammar: "an security" -> "a security" (#274)
2021-12-08 03:07:20 +03:00
- Display an error modal for status codes that can't be handled
2021-12-08 04:20:08 +03:00
- Prevent user from getting trapped in the help menu when keybindings are pressed (#241, #261 )
2021-02-20 23:24:09 +03:00
2021-02-17 23:31:06 +03:00
## [1.8.0] - 2021-02-17
2020-12-25 00:15:19 +03:00
### Added
2020-12-26 00:26:03 +03:00
- **Media type handlers** - open non-text files in another application (#121, #134 )
2020-12-25 00:15:19 +03:00
- Ability to set custom keybindings in config (#135)
2021-02-17 22:17:13 +03:00
- Added scrollbar, by default only appears on pages that go off-screen (#89, #107 )
2021-02-17 23:37:36 +03:00
- More internal about pages, see `about:about` (#160, #187 )
2020-12-25 00:15:19 +03:00
2021-02-17 22:17:13 +03:00
### Changed
- Update cview to `d776e728ef6d2a9990a5cd86a70b31f0678613e2` for large performance and feature updates (#107)
- Update to tcell v2 (dependency of cview)
2021-02-17 22:58:55 +03:00
- Display page even if mediatype params are malformed (#141)
- Sensitive input fields (status code 11) display with asterisks over the text (#106)
2021-02-17 22:17:13 +03:00
2020-12-25 00:25:39 +03:00
### Fixed
- Don't use cache when URL is typed in bottom bar (#159)
2020-12-25 07:40:55 +03:00
- Fix downloading of pages that are too large or timed out
2021-01-11 18:06:21 +03:00
- `about:` URLs can be typed into the bottom bar (#167)
2021-02-05 01:33:49 +03:00
- Bookmarks modal closes on ESC like the others (#173)
2021-02-05 02:06:56 +03:00
- Handle empty META string (#176)
2021-02-08 05:55:30 +03:00
- Whitespace around the URL entered in the bottom bar is stripped (#184)
2021-02-17 17:25:02 +03:00
- Don't break visiting IPv6 hosts when port 1965 is specified (#195)
2021-02-17 22:17:13 +03:00
- More reliable start, no more flash of unindented text, or text that stays unindented (#107)
- Pages with ANSI resets don't use the terminal's default text and background colors (#107)
- ANSI documents don't leak color into the left margin (#107)
- Rendering very long documents is now ~96% faster, excluding gemtext parsing (#26, #107 )
- Due to that same change, less memory is used per-page (#26, #107 )
2020-12-25 07:40:55 +03:00
2020-12-25 00:15:19 +03:00
2020-12-24 07:57:18 +03:00
## [1.7.2] - 2020-12-21
### Fixed
- Viewing subscriptions after subscribing to a certain user page won't crash Amfora (#157)
2020-12-21 20:42:43 +03:00
## [1.7.1] - 2020-12-21
### Fixed
- Fixed bug that caused Amfora to crash when subscribing to a page (#151)
2020-12-21 01:26:39 +03:00
## [1.7.0] - 2020-12-20
2020-11-23 00:27:34 +03:00
### Added
2020-12-07 23:18:47 +03:00
- **Subscriptions** to feeds and page changes (#61)
2020-11-23 00:27:34 +03:00
- Opening local files with `file://` URIs (#103, #117 )
2020-12-01 22:01:59 +03:00
- `show_link` option added in config to optionally see the URL (#133)
2020-12-20 03:41:25 +03:00
- Support for Unicode in domain names (IDNs)
- Unnecessarily encoded characters in URLs will be decoded (#138)
- URLs are NFC-normalized before any processing (#138)
2020-12-20 08:31:14 +03:00
- Links to the wiki in the new tab
2020-12-20 23:54:47 +03:00
- Cache times out after 30 minutes by default (#110)
2020-12-21 00:39:33 +03:00
- `about:version` page (#126)
2020-11-23 00:27:34 +03:00
2020-11-10 22:53:54 +03:00
### Changed
2020-12-20 03:41:25 +03:00
- Updated [go-gemini ](https://github.com/makeworld-the-better-one/go-gemini ) to v0.11.0
2020-11-24 05:09:48 +03:00
- Supports CN-only wildcard certs
- Time out when header takes too long
2020-11-19 08:07:56 +03:00
- Preformatted text is now light yellow by default
2020-12-17 19:29:03 +03:00
- Downloading a file no longer uses a second request
2020-12-20 04:19:47 +03:00
- You can go back to the new tab page in history (#96)
2020-11-10 22:53:54 +03:00
2020-11-20 04:49:16 +03:00
### Fixed
- Single quotes are used in the default config for commands and paths so that Windows paths with backslashes will be parsed correctly
2020-11-24 05:09:48 +03:00
- Downloading now uses proxies when appropriate
2020-12-20 03:41:25 +03:00
- User-entered URLs with invalid characters will be percent-encoded (#138)
2020-12-20 23:23:00 +03:00
- Custom downloads dir is actually used (#148)
2020-12-21 01:52:06 +03:00
- Empty quote lines no longer disappear
2020-11-20 04:49:16 +03:00
2020-11-10 22:53:54 +03:00
2020-11-06 08:00:07 +03:00
## [1.6.0] - 2020-11-04
2020-09-05 03:42:29 +03:00
### Added
2020-11-05 02:38:08 +03:00
- **Support client certificates** through config (#112)
2020-09-05 03:42:29 +03:00
- `ansi` config setting, to disable ANSI colors in pages (#79, #86 )
2020-09-05 22:41:58 +03:00
- Edit current URL with < kbd > e</ kbd > (#87)
2020-09-19 00:47:02 +03:00
- If `emoji_favicons` is enabled, new bookmarks will have the domain's favicon prepended (#69, #90 )
2020-10-09 03:56:28 +03:00
- The `BROWSER` env var is now also checked when opening web links on Unix (#93)
2020-11-05 04:55:34 +03:00
- More accurate error messages based on server response code
2020-09-05 03:42:29 +03:00
### Changed
- Disabling the `color` config setting also disables ANSI colors in pages (#79, #86 )
2020-10-01 01:04:59 +03:00
- Updated [go-isemoji ](https://github.com/makeworld-the-better-one/go-isemoji ) to v1.1.0 to support Emoji 13.1 for favicons
2020-10-02 00:10:14 +03:00
- The web browser code doesn't check for Xorg anymore, just display variables (#93)
2020-10-02 00:28:31 +03:00
- Bookmarks can be made to non-gemini URLs (#94)
2020-10-12 21:49:21 +03:00
- Remove pointless directory fallbacks (#101)
2020-11-05 05:11:33 +03:00
- Don't load page from cache when redirected to it (#114)
2020-09-02 02:55:06 +03:00
2020-10-09 03:56:28 +03:00
### Fixed
- XDG user dir file is parsed instead of looking for XDG env vars (#97, #100 )
2020-11-05 02:38:08 +03:00
- Support paths with spaces in HTTP browser config setting (#77)
2020-11-05 03:54:58 +03:00
- Clicking "Change" on an existing bookmark without changing the text no longer removes it (#91)
2020-11-05 04:01:11 +03:00
- Display HTTP Error if "Open In Portal" fails (#81)
2020-11-05 04:31:04 +03:00
- Support ANSI color codes again, but only in preformatted blocks (#59)
2020-11-05 04:41:09 +03:00
- Make the `..` command work lke it used to in v1.4.0
2020-10-09 03:56:28 +03:00
2020-09-02 02:55:06 +03:00
2020-11-06 08:00:07 +03:00
## [1.5.0] - 2020-09-01
2020-08-05 03:44:43 +03:00
### Added
2020-09-01 21:55:52 +03:00
- **Proxy support** - see the `[proxies]` section in the config (#66, #80 )
2020-08-29 19:08:26 +03:00
- **Emoji favicons** can now be seen if `emoji_favicons` is enabled in the config (#62)
2020-09-02 02:55:06 +03:00
- `shift_numbers` key in the config was added, so that non US keyboard users can navigate tabs (#64)
2020-08-06 22:08:19 +03:00
- < kbd > F1</ kbd > and < kbd > F2</ kbd > keys for navigating to the previous and next tabs (#64)
2020-09-02 02:55:06 +03:00
- Resolving any relative path (starts with a `.` ) in the bottom bar is supported, not just `..` (#71)
- You can now set external programs in the config to open other schemes, like `gopher://` or `magnet:` (#74)
2020-08-28 02:02:12 +03:00
- Auto-redirecting can be enabled - redirect within Gemini up to 5 times automatically (#75)
2020-09-02 02:55:06 +03:00
- Help page now documents paging keys (#78)
2020-09-01 21:17:45 +03:00
- The new tab page can be customized by creating a gemtext file called `newtab.gmi` in the config directory (#67, #83 )
2020-08-05 03:44:43 +03:00
### Changed
2020-08-21 21:59:51 +03:00
- Update to [go-gemini ](https://github.com/makeworld-the-better-one/go-gemini ) v0.8.4
2020-08-05 03:44:43 +03:00
### Fixed
- Two digit (and higher) link texts are now in line with one digit ones (#60)
2020-09-02 02:55:06 +03:00
- Race condition when reloading pages that could have caused the cache to still be used
2020-08-22 18:19:09 +03:00
- Prevent panic (crash) when the server sends an error with an empty meta string (#73)
2020-08-28 02:57:06 +03:00
- URLs with with colon-only schemes (like `mailto:` ) are properly recognized
2020-09-01 21:17:45 +03:00
- You can no longer navigate through the history when the help page is open (#55, #78 )
2020-08-05 03:44:43 +03:00
2020-07-29 02:33:00 +03:00
## [1.4.0] - 2020-07-28
2020-07-19 18:09:33 +03:00
### Added
2020-07-29 03:18:38 +03:00
- **Theming** - check out [default-config.toml ](./default-config.toml ) for details (#46)
2020-07-19 18:09:33 +03:00
- < kbd > Tab</ kbd > now also enters link selecting mode, like < kbd > Enter</ kbd > (#48)
2020-07-19 18:27:39 +03:00
- Number keys can be pressed to navigate to links 1 through 10 (#47)
2020-07-26 03:26:40 +03:00
- Permanent redirects are cached for the session (#22)
2020-07-28 23:58:32 +03:00
- `.ansi` is also supported for `text/x-ansi` files, as well as the already supported `.ans`
2020-07-19 18:09:33 +03:00
2020-07-26 23:25:37 +03:00
### Changed
2020-07-29 02:33:00 +03:00
- Documented < kbd > Ctrl-C</ kbd > as "Hard quit"
2020-07-28 23:58:32 +03:00
- Updated [cview ](https://gitlab.com/tslocum/cview/ ) to latest commit: `cc7796c4ca44e3908f80d93e92e73694562d936a`
- The bottom bar label now uses the same color as the tabs at the top
- Tab and blue link colors were changed very slightly to be part of the 256 Xterm colors, for better terminal support
2020-07-26 23:25:37 +03:00
2020-07-11 02:49:17 +03:00
### Fixed
- You can't change link selection while the page is loading
2020-07-26 18:31:13 +03:00
- Only one request is made for each URL - `v1.3.0` accidentally made two requests each time (#50)
2020-07-26 18:33:59 +03:00
- Using the `..` command doesn't keep the query string (#49)
2020-07-28 23:58:32 +03:00
- Any error that occurs when downloading a file will be displayed, and the partially downloaded file will be deleted
2020-07-29 00:16:57 +03:00
- Allow for opening a new tab while the current one is loading
2020-07-29 02:06:00 +03:00
- Pressing Escape after typing in the bottom bar no longer jumps you back to the top of the page
2020-07-29 02:17:15 +03:00
- Repeated redirects where the last one is cancelled by the user doesn't leave the `Loading...` text in the bottom bar (#53)
2020-07-11 02:49:17 +03:00
2020-07-11 02:16:13 +03:00
## [1.3.0] - 2020-07-10
2020-07-03 21:02:33 +03:00
### Added
2020-07-11 02:16:13 +03:00
- **Downloading content** (#38)
2020-07-10 22:55:35 +03:00
- Configurable page size limit - `page_max_size` in config (#30)
- Configurable page timeout - `page_max_time` in config
2020-07-03 21:02:33 +03:00
- Link and heading lines are wrapped just like regular text lines
- Wrapped list items are indented to stay behind the bullet (#35)
2020-07-04 03:32:37 +03:00
- Certificate expiry date is stored when the cert IDs match (#39)
2020-07-08 04:13:45 +03:00
- What link was selected is remembered as you browse through history
2020-07-11 02:16:13 +03:00
- Render ANSI codes in `text/x-ansi` pages, or text pages that end with `.ans` (#45)
2020-07-03 21:02:33 +03:00
2020-07-03 06:55:24 +03:00
### Changed
- Pages are rewrapped dynamically, whenever the terminal size changes (#33)
2020-07-11 01:59:51 +03:00
- TOFU warning message mentions how long the previous cert was still valid for (#34)
2020-07-03 06:55:24 +03:00
2020-07-08 04:13:45 +03:00
### Fixed
- Many potential network and display race conditions eliminated
- Whether a tab is loading stays indicated when you switch away from it and go back
- Plain text documents are displayed faithfully (there were some edge conditions)
2020-07-08 04:51:20 +03:00
- Opening files in portal.mozz.us uses the `http` setting in the config (#42)
2020-07-08 04:13:45 +03:00
2020-07-29 02:06:00 +03:00
2020-07-02 21:54:18 +03:00
## [1.2.0] - 2020-07-02
2020-06-29 04:06:58 +03:00
### Added
- Alt-Left and Alt-Right for history navigation (#23)
2020-06-29 20:56:27 +03:00
- You can type `..` in the bottom bar to go up a directory in the URL (#21)
2020-06-29 21:25:25 +03:00
- Error popup for when input string would result in a too long out-of-spec URL (#25)
2020-06-29 22:01:41 +03:00
- Paging, using < kbd > d</ kbd > and < kbd > u</ kbd > , as well as < kbd > Page Up</ kbd > and < kbd > Page Down</ kbd > (#19)
2020-06-29 22:20:24 +03:00
- < kbd > Esc</ kbd > can exit link highlighting mode (#24)
- Selected link URL is displayed in the bottom bar (#24)
2020-07-01 20:39:13 +03:00
- Pressing < kbd > Ctrl-T</ kbd > with a link selected opens it in a new tab (#27)
- Writing `new:N` in the bottom bar will open link number N in a new tab (#27)
2020-07-02 21:36:41 +03:00
- Quote lines are now in italics (#28)
2020-06-29 04:06:58 +03:00
2020-06-29 20:39:47 +03:00
### Changed
- Bottom bar now says `URL/Num./Search: ` when space is pressed
2020-06-29 21:35:09 +03:00
- Update to [go-gemini ](https://github.com/makeworld-the-better-one/go-gemini ) v0.6.0
2020-07-02 03:08:07 +03:00
- Help layout doesn't have borders anymore
2020-07-02 18:55:41 +03:00
- Pages with query strings are still cached (#29)
- URLs or searches typed in the bottom bar are not loaded from the cache (#29)
2020-06-29 20:39:47 +03:00
2020-06-29 01:09:52 +03:00
### Fixed
- Actual unicode bullet symbol is used for lists: U+2022
- Performance when loading very long cached pages improved (#26)
2020-06-29 19:54:36 +03:00
- Doesn't crash when wrapping certain complex lines (#20)
2020-06-29 20:30:20 +03:00
- Input fields are always in focus when they appear (#5)
2020-07-01 20:39:13 +03:00
- Reloading the new tab page doesn't cause an error popup
2020-07-02 03:08:07 +03:00
- Help table cells are hardwrapped so the text can still be read entirely on an 80-column terminal
2020-07-02 03:38:53 +03:00
- New tab text is wrapped to terminal width like other pages (#31)
2020-07-02 21:36:41 +03:00
- TOFU "continue anyway" popup has a question mark at the end
2020-06-27 18:22:45 +03:00
2020-07-29 02:06:00 +03:00
2020-06-24 20:52:44 +03:00
## [1.1.0] - 2020-06-24
2020-06-22 00:53:56 +03:00
### Added
2020-06-24 03:07:25 +03:00
- **Bookmarks** (#10)
- **Support over 55 charsets** (#3)
- **Search using the bottom bar**
- Add titles to all modals
2020-06-22 00:53:56 +03:00
- Store ports in TOFU database (#7)
- Search from bottom bar
- Wrapping based on terminal width (#1)
2020-06-24 03:07:25 +03:00
- `left_margin` config option (#1)
2020-06-22 00:53:56 +03:00
- Right margin for text (#1)
2020-06-22 02:16:05 +03:00
- Desktop entry file
2020-06-22 03:37:27 +03:00
- Option to continue anyway when cert doesn't match TOFU database
2020-06-22 06:49:43 +03:00
- Display all `text/*` documents, not just gemini and plain (#12)
2020-06-22 18:56:55 +03:00
- Prefer XDG environment variables if they're set, to specify config dir, etc (#11)
2020-06-24 03:23:28 +03:00
- Version and help commands - `-v` , `--version` , `--help` , `-h` (#14)
2020-06-22 00:53:56 +03:00
2020-06-22 02:51:19 +03:00
### Changed
2020-06-22 00:53:56 +03:00
- Connection timeout is 15 seconds (was 5s)
- Hash `SubjectPublicKeyInfo` for TOFU instead (#7)
2020-06-24 03:07:25 +03:00
- `wrap_width` config option became `max_width` (#1)
- Make the help table look better
2020-06-22 00:53:56 +03:00
2020-06-22 06:39:33 +03:00
### Removed
2020-06-24 20:18:23 +03:00
- Opening multiple URLs from the command line
2020-06-22 06:39:33 +03:00
2020-06-22 00:53:56 +03:00
### Fixed
- Reset bottom bar on error / invalid URL
- Side scrolling doesn't cut off text on the left side (#1)
2020-06-22 06:39:33 +03:00
- Mark status code 21 as invalid
2020-06-24 03:07:25 +03:00
- Bottom bar is not in focus after clicking Enter
- Badly formed links on pages can no longer crash the browser
2020-06-24 18:37:32 +03:00
- Disabling color in config affects UI elements (#16)
2020-06-24 19:01:09 +03:00
- Keep bold for headings even with color disabled
- Don't make whole link text bold when color is disabled
2020-06-24 20:31:01 +03:00
- Get domain from URL for TOFU, not from certificate
2020-06-22 00:53:56 +03:00
## [1.0.0] - 2020-06-18
Initial release.
2020-06-22 02:51:19 +03:00
### Added
2020-06-22 00:53:56 +03:00
- Tabbed browsing
- TOFU
- Styled content
- Basic history for each tab
- Input