From 9cd872ce65df7ad2cabd81c6d73de806d12c386c Mon Sep 17 00:00:00 2001 From: "Suraj N. Kurapati" Date: Sat, 16 May 2020 12:38:40 -0700 Subject: [PATCH] Version 2.4.0 (2020-05-16) --- README.md | 4 +-- VERSION.md | 59 ++++++++++++++++++++++++++++++++ bin/dasht | 2 +- bin/dasht-docsets | 2 +- bin/dasht-docsets-extract | 2 +- bin/dasht-docsets-install | 2 +- bin/dasht-docsets-remove | 2 +- bin/dasht-docsets-update | 2 +- bin/dasht-query-exec | 2 +- bin/dasht-query-html | 2 +- bin/dasht-query-line | 2 +- bin/dasht-server | 2 +- bin/dasht-server-http | 2 +- man/man1/dasht-docsets-extract.1 | 2 +- man/man1/dasht-docsets-install.1 | 2 +- man/man1/dasht-docsets-remove.1 | 2 +- man/man1/dasht-docsets-update.1 | 2 +- man/man1/dasht-docsets.1 | 2 +- man/man1/dasht-query-exec.1 | 2 +- man/man1/dasht-query-html.1 | 2 +- man/man1/dasht-query-line.1 | 2 +- man/man1/dasht-server-http.1 | 2 +- man/man1/dasht-server.1 | 42 +---------------------- man/man1/dasht.1 | 2 +- 24 files changed, 83 insertions(+), 64 deletions(-) diff --git a/README.md b/README.md index c87a0a8..1fb3b07 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,8 @@ # Search API docs offline, in your terminal or browser dasht is a collection of shell scripts for searching, browsing, and managing -API documentation (in the form of [150+ offline documentation sets][docsets], -courtesy of [Dash for OS X][Dash]) all from the comfort of your own terminal! +API documentation (in the form of [200+ offline documentation sets][docsets], +courtesy of [Dash for macOS][Dash]) all from the comfort of your own terminal! The name "dasht" is a portmanteau of [Dash] and the letter "t", for terminal. Etymologically, "dasht" is Persian for _plain_, as in an flat expanse of land, diff --git a/VERSION.md b/VERSION.md index 034b3c0..f3b5d2e 100644 --- a/VERSION.md +++ b/VERSION.md @@ -1,3 +1,62 @@ +## Version 2.4.0 (2020-05-16) + +This release drops special Web browser requirements to access dasht-server(1), +improves error messages in dasht-docset-install(1), ensures clean up of stale +files that contain whitespace in their names, and resolves a few other issues. + +### Minor: + + * dasht-server-http(1): serve local `file://` URLs through `http://` URLs. + + Users no longer have to use special browsers or special configurations + that allow the loading of `file://` links from `http://127.0.0.1` URLs. + All browsers can now natively access the dasht-server(1) search engine. + + See https://github.com/sunaku/dasht/issues/45 + +### Patch: + + * dasht-docsets-update(1): remove stale files with whitespace in names. + + Thanks to @frodeaa for reporting this issue and contributing a patch: + + > Replace `xargs` with `while read` and avoid globbing. The same could be + > achived by using `xargs -0` (GNU/BSD) if newline is replaced with `\0`. + > + > tr '\n' '\0' | xargs -0 sh -e -u -c ' + + See https://github.com/sunaku/dasht/issues/35 + + * dasht-server-http(1): escape "C++" docset name as `^C\+\+$` regex. + + When the "C++" docset was selected from the "in docsets" dropdown menu in + dasht-server(1), the plus signs weren't properly escaped per regex syntax. + + See https://github.com/sunaku/dasht/issues/49 + + * dasht-docsets-install(1): validate gzip(1) integrity before extraction. + + This avoids cryptic errors from tarball extraction: + + gzip: stdin: unexpected end of file + tar: Child returned status 1 + tar: Error is not recoverable: exiting now + + By pointing out the cause of the error to the user: + + gzip: Apple_Guides_and_Sample_Code.tgz: unexpected end of file + + * dasht-docsets-install(1): restore support for older wget(1) versions. + + Older wget versions don't support the `--show-progress` option: + + wget: unrecognized option '--show-progress' + Usage: wget [OPTION]... [URL]... + + Try ‘wget --help’ for more options. + + * dasht-query-line(1): update URI fragments for HTML and CSS docsets. + ## Version 2.3.0 (2018-10-09) This release provides better error messaging for first-time users who try to diff --git a/bin/dasht b/bin/dasht index 5173e30..39b3d22 100755 --- a/bin/dasht +++ b/bin/dasht @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT 1 2018-10-09 2.3.0 +# # DASHT 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-docsets b/bin/dasht-docsets index 3b51544..9d543f6 100755 --- a/bin/dasht-docsets +++ b/bin/dasht-docsets @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-DOCSETS 1 2018-10-09 2.3.0 +# # DASHT-DOCSETS 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-docsets-extract b/bin/dasht-docsets-extract index 602197c..2df43ea 100755 --- a/bin/dasht-docsets-extract +++ b/bin/dasht-docsets-extract @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-DOCSETS-EXTRACT 1 2018-10-09 2.3.0 +# # DASHT-DOCSETS-EXTRACT 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-docsets-install b/bin/dasht-docsets-install index 36420b3..216bba2 100755 --- a/bin/dasht-docsets-install +++ b/bin/dasht-docsets-install @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-DOCSETS-INSTALL 1 2018-10-09 2.3.0 +# # DASHT-DOCSETS-INSTALL 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-docsets-remove b/bin/dasht-docsets-remove index 5054b87..046bb73 100755 --- a/bin/dasht-docsets-remove +++ b/bin/dasht-docsets-remove @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-DOCSETS-REMOVE 1 2018-10-09 2.3.0 +# # DASHT-DOCSETS-REMOVE 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-docsets-update b/bin/dasht-docsets-update index 85b8335..e899b68 100755 --- a/bin/dasht-docsets-update +++ b/bin/dasht-docsets-update @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-DOCSETS-UPDATE 1 2018-10-09 2.3.0 +# # DASHT-DOCSETS-UPDATE 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-query-exec b/bin/dasht-query-exec index 672808c..967ee1a 100755 --- a/bin/dasht-query-exec +++ b/bin/dasht-query-exec @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-QUERY-EXEC 1 2018-10-09 2.3.0 +# # DASHT-QUERY-EXEC 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-query-html b/bin/dasht-query-html index 030483a..8030dfe 100755 --- a/bin/dasht-query-html +++ b/bin/dasht-query-html @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-QUERY-HTML 1 2018-10-09 2.3.0 +# # DASHT-QUERY-HTML 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-query-line b/bin/dasht-query-line index 5eac9e0..a389384 100755 --- a/bin/dasht-query-line +++ b/bin/dasht-query-line @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-QUERY-LINE 1 2018-10-09 2.3.0 +# # DASHT-QUERY-LINE 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-server b/bin/dasht-server index f4eb03d..81edf80 100755 --- a/bin/dasht-server +++ b/bin/dasht-server @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-SERVER 1 2018-10-09 2.3.0 +# # DASHT-SERVER 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/bin/dasht-server-http b/bin/dasht-server-http index 94e50d5..d3ef023 100755 --- a/bin/dasht-server-http +++ b/bin/dasht-server-http @@ -1,6 +1,6 @@ #!/bin/sh -e # -# # DASHT-SERVER-HTTP 1 2018-10-09 2.3.0 +# # DASHT-SERVER-HTTP 1 2020-05-16 2.4.0 # # ## NAME # diff --git a/man/man1/dasht-docsets-extract.1 b/man/man1/dasht-docsets-extract.1 index 68d90ef..dcfc42c 100644 --- a/man/man1/dasht-docsets-extract.1 +++ b/man/man1/dasht-docsets-extract.1 @@ -1,4 +1,4 @@ -.TH DASHT\-DOCSETS\-EXTRACT 1 2018\-10\-09 2.3.0 +.TH DASHT\-DOCSETS\-EXTRACT 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-docsets\-extract \- extracts Dash \[la]https://kapeli.com/dash\[ra] docset archives (\fB\fC*.tgz\fR files) diff --git a/man/man1/dasht-docsets-install.1 b/man/man1/dasht-docsets-install.1 index b79d2dc..0fa5f8d 100644 --- a/man/man1/dasht-docsets-install.1 +++ b/man/man1/dasht-docsets-install.1 @@ -1,4 +1,4 @@ -.TH DASHT\-DOCSETS\-INSTALL 1 2018\-10\-09 2.3.0 +.TH DASHT\-DOCSETS\-INSTALL 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-docsets\-install \- installs new Dash \[la]https://kapeli.com/dash\[ra] docsets diff --git a/man/man1/dasht-docsets-remove.1 b/man/man1/dasht-docsets-remove.1 index e4e2b13..37fd259 100644 --- a/man/man1/dasht-docsets-remove.1 +++ b/man/man1/dasht-docsets-remove.1 @@ -1,4 +1,4 @@ -.TH DASHT\-DOCSETS\-REMOVE 1 2018\-10\-09 2.3.0 +.TH DASHT\-DOCSETS\-REMOVE 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-docsets\-remove \- removes installed Dash \[la]https://kapeli.com/dash\[ra] docsets diff --git a/man/man1/dasht-docsets-update.1 b/man/man1/dasht-docsets-update.1 index d054300..85e3835 100644 --- a/man/man1/dasht-docsets-update.1 +++ b/man/man1/dasht-docsets-update.1 @@ -1,4 +1,4 @@ -.TH DASHT\-DOCSETS\-UPDATE 1 2018\-10\-09 2.3.0 +.TH DASHT\-DOCSETS\-UPDATE 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-docsets\-update \- updates installed Dash \[la]https://kapeli.com/dash\[ra] docsets diff --git a/man/man1/dasht-docsets.1 b/man/man1/dasht-docsets.1 index 4ae76fd..b3796c5 100644 --- a/man/man1/dasht-docsets.1 +++ b/man/man1/dasht-docsets.1 @@ -1,4 +1,4 @@ -.TH DASHT\-DOCSETS 1 2018\-10\-09 2.3.0 +.TH DASHT\-DOCSETS 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-docsets \- lists installed Dash \[la]https://kapeli.com/dash\[ra] docsets diff --git a/man/man1/dasht-query-exec.1 b/man/man1/dasht-query-exec.1 index 58ff2a1..4083699 100644 --- a/man/man1/dasht-query-exec.1 +++ b/man/man1/dasht-query-exec.1 @@ -1,4 +1,4 @@ -.TH DASHT\-QUERY\-EXEC 1 2018\-10\-09 2.3.0 +.TH DASHT\-QUERY\-EXEC 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-query\-exec \- searches a Dash \[la]https://kapeli.com/dash\[ra] docset's SQLite3 database file diff --git a/man/man1/dasht-query-html.1 b/man/man1/dasht-query-html.1 index 2c711b4..4947b48 100644 --- a/man/man1/dasht-query-html.1 +++ b/man/man1/dasht-query-html.1 @@ -1,4 +1,4 @@ -.TH DASHT\-QUERY\-HTML 1 2018\-10\-09 2.3.0 +.TH DASHT\-QUERY\-HTML 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-query\-html \- searches Dash \[la]https://kapeli.com/dash\[ra] docsets and emits HTML table rows diff --git a/man/man1/dasht-query-line.1 b/man/man1/dasht-query-line.1 index c631376..e76dbe7 100644 --- a/man/man1/dasht-query-line.1 +++ b/man/man1/dasht-query-line.1 @@ -1,4 +1,4 @@ -.TH DASHT\-QUERY\-LINE 1 2018\-10\-09 2.3.0 +.TH DASHT\-QUERY\-LINE 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-query\-line \- searches Dash \[la]https://kapeli.com/dash\[ra] docsets and emits groups of lines diff --git a/man/man1/dasht-server-http.1 b/man/man1/dasht-server-http.1 index 200483b..86a2e26 100644 --- a/man/man1/dasht-server-http.1 +++ b/man/man1/dasht-server-http.1 @@ -1,4 +1,4 @@ -.TH DASHT\-SERVER\-HTTP 1 2018\-10\-09 2.3.0 +.TH DASHT\-SERVER\-HTTP 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-server\-http \- simple search engine that powers diff --git a/man/man1/dasht-server.1 b/man/man1/dasht-server.1 index 7cb6877..08d5899 100644 --- a/man/man1/dasht-server.1 +++ b/man/man1/dasht-server.1 @@ -1,4 +1,4 @@ -.TH DASHT\-SERVER 1 2018\-10\-09 2.3.0 +.TH DASHT\-SERVER 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht\-server \- runs a local search engine for your web browser @@ -26,46 +26,6 @@ which can be used to launch a web browser along with the search engine: dasht\-server | xargs \-n1 w3m .fi .RE -.SS Browser refuses to load \fB\fCfile://\fR links -.PP -Some browsers refuse to load \fB\fCfile://\fR links from \fB\fChttp://127.0.0.1\fR URLs. -However, the following browsers do not suffer from this limitation and are -thereby recommended for use with the search engine provided by this script. -.PP -Recommended terminal web browsers: -.RS -.IP \(bu 2 -w3m \[la]http://w3m.sourceforge.net\[ra] -.IP \(bu 2 -elinks \[la]http://elinks.or.cz\[ra] -.IP \(bu 2 -lynx \[la]http://lynx.invisible-island.net\[ra] -.RE -.PP -Recommended graphical web browsers: -.RS -.IP \(bu 2 -Dillo \[la]http://www.dillo.org\[ra] -.IP \(bu 2 -NetSurf \[la]http://www.netsurf-browser.org\[ra] -.IP \(bu 2 -Chrome \[la]https://www.google.com/chrome/\[ra] using the LocalLinks extension \[la]https://chrome.google.com/webstore/detail/locallinks/jllpkdkcdjndhggodimiphkghogcpida\[ra] -.IP \(bu 2 -Firefox \[la]http://www.mozilla.org/firefox\[ra] using the following workaround -.RE -.SS Firefox -.PP -The workaround for Firefox is to add this snippet to your \fB\fCprefs.js\fR file: -.PP -.RS -.nf -user_pref("capability.policy.policynames", "localfilelinks"); -user_pref("capability.policy.localfilelinks.sites", "http://127.0.0.1:54321"); -user_pref("capability.policy.localfilelinks.checkloaduri.enabled", "allAccess"); -.fi -.RE -.PP -See \[la]http://kb.mozillazine.org/Links_to_local_pages_do_not_work\[ra] for details. .SH ENVIRONMENT .TP \fB\fCDASHT_DOCSETS_DIR\fR diff --git a/man/man1/dasht.1 b/man/man1/dasht.1 index 158d322..04c5c30 100644 --- a/man/man1/dasht.1 +++ b/man/man1/dasht.1 @@ -1,4 +1,4 @@ -.TH DASHT 1 2018\-10\-09 2.3.0 +.TH DASHT 1 2020\-05\-16 2.4.0 .SH NAME .PP dasht \- API documentation in your terminal