X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=elpher.git;a=blobdiff_plain;f=ISSUES.org;h=60c6a9929b63acf80fa638bc2bf3406d8066e306;hp=cf082d1f679ab217c511614f476a956ebdbe2aee;hb=HEAD;hpb=b535280e99e34e1f018fb97ad6d41ff7564d2334 diff --git a/ISSUES.org b/ISSUES.org index cf082d1..363c25f 100644 --- a/ISSUES.org +++ b/ISSUES.org @@ -1,10 +1,10 @@ #+TITLE: Issues and Dev Notes #+TODO: OPEN(o!) | CLOSED(c!) INVALID(i@) #+STARTUP: logdrawer - + * Open Bugs -** OPEN Sanitize certificate names +** OPEN Sanitize certificate names :gemini: :LOGBOOK: - State "OPEN" from [2020-06-22 Mon 10:32] :END: @@ -24,6 +24,41 @@ user interaction that may appear during the initial connection setup. E.g., asking for approval of uknown TLS certificates. * Closed Bugs + +** CLOSED Downloads failing +:LOGBOOK: +- State "CLOSED" from "OPEN" [2022-08-09 Tue 10:38] +:END: + +Downloads fail when focus is shifted away from +the elpher buffer before the download has completed. + +** CLOSED Relative Gemini links processed improperly +:LOGBOOK: +- State "CLOSED" from "OPEN" [2021-08-04 Wed 15:54] +- State "OPEN" from [2021-08-04 Wed 13:53] +:END: + +Skyjake's gemlog at gemini://skyjake.fi/gemlog/ demonstrate's the +issue. The link back to the root selector in the footer of that page +is a relative link to the parent directory, i.e. "..". For some +reason elpher combines this with the current URL and produces +"gemini://skyjake.fi" as the destination of the link. Such URLs +(i.e. without a filename) are allowed as input, but are assumed +to not appear internally. + +To see why the internal distinction is important, consider a page +where the current URL is gemini://example.com/a_page. The current +directory in this case is "/", meaning a relative link to +"another_page" results in a destination link of +"gemini://example.com/another_page. On the other hand, if the current +URL is gemini://example.com/a_page/, the same relative link is +interpreted as refering to gemini://example.com/a_page/another_page. + +The fix will be to ensure gemini://skyjake.fi/gemlog/.. collapses to +gemini://skyjake.fi/ rather than gemini://skyjake.fi. + + ** CLOSED Org mode faces are not present in recent emacs versions Even 26.1 doesn't seem to have these. This means that, for many @@ -90,6 +125,20 @@ pop the stack, meaning that subsequent "u" commands would succeed. The fix is just to zero out the history list in the `elpher` function just as `elpher-current-page` is cleared. +** CLOSED Improve client certificate scope :gemini: +:LOGBOOK: +- State "CLOSED" from "OPEN" [2023-05-05 Fri 10:09] +- State "OPEN" from [2022-10-12 Wed 09:33] +:END: + +Once activated, elpher continues to use a client certificate +for any connections to the host on which it was activated. +However, it's now common to restrict certificates also to paths +_below_ the path where the certificate was activated. + +I.e. gemini://example.com/~userA/ certificates are not applied +automatically to gemini://example.com/~userB/. + * Open Enhancements ** OPEN Allow multiple elpher buffers [33%] @@ -104,19 +153,6 @@ this can happen: - [ ] make history stack variables buffer-local - [ ] have elpher-with-clean-buffer select appropriate buffer -** OPEN Replace support for user-specified starting pages -This used to be available, but was removed during a refactor. - -** OPEN Make installing existing certificates easier - :LOGBOOK: - - State "OPEN" from "CLOSED" [2020-06-22 Mon 10:34] - :END: - -It's naive to think that people don't have client certificates created -outside of elpher. Thus we need some easy way to "install" these -certificates, either by copying them or by referencing them in some -way. - * Closed Enhancements ** CLOSED Turn on lexical scoping @@ -260,3 +296,39 @@ collapsable hierarchies. :LOGBOOK: - State "CLOSED" from "OPEN" [2021-07-23 Fri 10:09] :END: + +** CLOSED Improve gemeini rendering speed +:LOGBOOK: +- State "CLOSED" from "OPEN" [2021-07-31 Sat 00:18] +:END: + +Currently pages with many links render extremely slowly. + +Example (>2000 links, 15s): gemini://rawtext.club/~sloum/geminilist/ + +It turns out that by far the main contributor to this is the use of +(url-port) in elpher-address-from-gemini-url. I encountered this +problem once before in elpher-remove-redundant-ports. This function +call is just incredibly slow for some bizarre reason. Happily, +(url-portspec) is functionally equivalent and is orders of magnitude +faster. With this replacement, loading the above page takes ~2s +and there aren't any other hotspots. + + +** CLOSED Replace support for user-specified starting pages +:LOGBOOK: +- State "CLOSED" from "OPEN" [2021-08-09 Mon 17:46] +:END: +This used to be available, but was removed during a refactor. + + +** CLOSED Make installing existing certificates easier + :LOGBOOK: + - State "CLOSED" from "OPEN" [2023-05-05 Fri 10:10] + - State "OPEN" from "CLOSED" [2020-06-22 Mon 10:34] + :END: + +It's naive to think that people don't have client certificates created +outside of elpher. Thus we need some easy way to "install" these +certificates, either by copying them or by referencing them in some +way.