Solderpunk
62972c0228
Restore cert prompt functionality.
2023-11-18 19:27:42 +01:00
Solderpunk
2a70985176
General tidy-up of entire av98.py file.
...
Most a matter of rearranging the order of methods to flow
sensibly, as well writing or updating docstrings, getting rid of
old unused return values, and fixing a few very minor defects.
2023-11-18 15:59:36 +01:00
Solderpunk
247f01e3e7
Update bookmarks to reflect permanent redirects upon exiting.
2023-11-18 14:23:56 +01:00
Solderpunk
de7e5dc254
Factor out client certificate management into its own class/file.
2023-11-18 14:22:32 +01:00
Solderpunk
607223c25a
Get real persnickety about nice option/blackbox alignment.
2023-11-17 20:08:48 +01:00
Solderpunk
a9b34278a8
Don't hardcode black box spacing values.
2023-11-17 19:59:12 +01:00
Solderpunk
4f354ab291
Nicely align setting names and values.
2023-11-17 19:56:47 +01:00
Solderpunk
bd7c5c2110
Log network errors a little more carefully.
2023-11-17 19:44:06 +01:00
Solderpunk
71f8a3dc86
Gracefully handle requests for file:// URLs which point at a directory.
2023-11-16 19:18:30 +01:00
Solderpunk
0ce09f37a6
Gracefully handle requests for file:// URLs where the file does not exist.
2023-11-16 19:14:22 +01:00
Solderpunk
681b11b8a4
Include local file and cached resource handling inside nice try/except error printing.
2023-11-16 19:13:20 +01:00
Solderpunk
50c43c75b4
Provider progress animation when downloading files > 100 KiB.
2023-11-15 19:46:01 +01:00
Solderpunk
f78b6ff780
Move handling of permanent redirects inside of _fetch_over_network().
2023-11-15 19:45:36 +01:00
Solderpunk
9e2cce7ce0
Print full tracebacks from exceptions when debugging is enabled.
2023-11-15 19:38:45 +01:00
Solderpunk
23b0597b6d
Update email address and copyright years.
2023-11-15 19:38:13 +01:00
Solderpunk
67729fb711
Count redirects in black box recorder.
2023-11-15 18:40:48 +01:00
Solderpunk
480f2cc15f
Rejig how do_bookmark() handles an argument to simplify go_to_gi().
2023-11-15 18:29:52 +01:00
Solderpunk
d2fe381c3e
Change Cache to use a TemporaryDirectory for its storage to
...
ensure and simplify thorough cleanups upon shutdown.
Thanks to Ghost for making me aware of this possibility!
2023-11-15 18:21:11 +01:00
Solderpunk
048b04bed2
Extensively refactor the way temporary files are used.
...
Instead of littering /tmp with one file per download plus one per
rendered gemtext file, just reuse the same two files over and
over. If enabled, caching creates separate copies.
Pretty sure this solves Issue #35 , but I'll test and close that
after also improving the use of cache files...
2023-11-15 18:06:33 +01:00
Solderpunk
713616d556
Refactor of networking logic.
...
1. Move client certificate handling stuff inside of _send_request().
2. Change _fetch_over_network() to not be recursive, by just looping
through calls to _send_request(). This facilitates moving the
redirect-tracking state inside _fetch_over_network(), instead of
keeping it in GeminiClient.
3. Also allow _fetch_over_network() to save response to a provided
filename, and use this to implement do_save(), rather than
_go_to_gi(). This avoids the need for awkward gymnastics with
the internal state.
2023-11-14 19:40:40 +01:00
Solderpunk
01da844141
Pull response parsing inside of _send_request().
2023-11-14 08:56:39 +01:00
Solderpunk
7f1aa5cbf3
Remove unused imports.
2023-11-14 00:38:00 +01:00
Solderpunk
33e66b439b
Test for saveability against a fetched GI, not a tempfile.
2023-11-14 00:36:43 +01:00
Solderpunk
d689cbd04f
Fix _get_active_tmpfile to handle local file GIs.
2023-11-14 00:35:47 +01:00
Solderpunk
3aedd549e5
Remove unecessary duplication of handling code between _handle_gemtext() and _go_to_gi().
2023-11-14 00:33:48 +01:00
Solderpunk
e4a44679dc
Fix saving of local files.
2023-11-14 00:29:59 +01:00
Solderpunk
588d599cb4
Add actual support for reading local files, use it for bookmarks.
2023-11-14 00:15:32 +01:00
Solderpunk
c6886d7eb9
Don't clutter go_to_gi() with error logging.
2023-11-13 23:58:12 +01:00
Solderpunk
053dcb7254
Factor out certificate validation into its own class/file.
2023-11-12 15:36:54 +01:00
Solderpunk
79a6187eac
Restore debugging output from cache using logging module.
2023-11-12 15:14:05 +01:00
Solderpunk
e678bca089
Factor out caching functionality into own class/file.
2023-11-12 14:49:01 +01:00
Solderpunk
87473fee1b
Acknowledge contributors of recently merged PRs.
2023-11-12 14:19:23 +01:00
Solderpunk
522047a209
Merge pull request 'Pass extra information to _handle_cert_request' ( #29 ) from govynnus/AV-98:fix-cert-request into master
...
Reviewed-on: #29
2023-11-12 10:37:28 +00:00
Solderpunk
b9d0633f38
Merge pull request 'Add support for touring a range where the start index is bigger than the end index' ( #25 ) from rmgr/AV-98:reverse-range into master
...
Reviewed-on: #25
2023-11-12 10:33:10 +00:00
Solderpunk
24b02327b0
Merge pull request 'Add support for http/https -> gemini proxy' ( #24 ) from rmgr/AV-98:http into master
...
Reviewed-on: #24
2023-11-12 10:28:52 +00:00
Solderpunk
d5666c9c19
Merge pull request 'Swap GUS for geminispace.info' ( #36 ) from sario528/AV-98:search-fix into master
...
Reviewed-on: #36
2023-11-12 10:22:39 +00:00
Solderpunk
a1cb220113
Merge pull request 'improve compatibility with Python 3.10' ( #40 ) from nic/AV-98:master into master
...
Reviewed-on: #40
2023-11-12 10:18:29 +00:00
Aleksey Ryndin
22c7efce7c
Fix: ValueError if MIME is empty string (like a #20 )
2023-08-27 16:49:36 +03:00
Nic Waller
6ee2a0716d
improve compatibility with Python 3.10
2022-06-29 20:57:34 -07:00
sario528
5dfe62fc63
Swap GUS for geminispace.info
2021-04-15 05:04:58 -05:00
Callum Brown
92da876795
Pass extra information to _handle_cert_request
...
This fixes a bug introduced in f45630 when handling a certificate request was
factored out of _fetch_over_network.
Also make the options consistent in terms of grammar.
2021-01-03 11:07:22 +00:00
rmgr
ab913ebf54
Add support for touring a range where the start index is bigger than the end index
2020-09-15 20:19:32 +09:30
rmgr
20395cb826
Add support for http/https -> gemini proxy
2020-09-15 20:02:29 +09:30
Solderpunk
129c56c1d4
Fix another hasty cache hack bug.
2020-09-03 21:21:04 +02:00
Solderpunk
ba0f707669
Ignore the cache when reloading a page.
2020-09-01 23:27:59 +02:00
Solderpunk
67f9c662b3
Add option to disable caching.
2020-09-01 23:11:55 +02:00
Solderpunk
545d5f917d
Count cache hits in black box output.
2020-09-01 21:14:17 +02:00
Solderpunk
f45630450f
Make sure early terminations of _fetch_over_network happen via an exception, not by returning None. Factor out certificate handling interface.
2020-08-31 21:18:15 +02:00
Solderpunk
4e8f3dcd05
Fix variable name bug introduced by hasty hacking of cache system.
2020-08-31 21:17:06 +02:00
Solderpunk
08c60e202b
Turn some magic numbers into constants.
2020-08-30 23:17:21 +02:00