--cache-validity argument added to opnk and netcach (#37)

This commit is contained in:
Ploum 2024-01-31 17:54:50 +01:00
parent 1bf98cf060
commit 0fda6f5623
5 changed files with 15 additions and 6 deletions

View File

@ -12,8 +12,9 @@
- offpunk: "gus" was broken, it is functionnal again - offpunk: "gus" was broken, it is functionnal again
- opnk/offpunk: more informative prompt in less - opnk/offpunk: more informative prompt in less
- ansicat: added support for HTML description elements <dt> and <dd> (by Bert Livens) - ansicat: added support for HTML description elements <dt> and <dd> (by Bert Livens)
- opnk: added "--mode" command-line argument (bug #37) - opnk: added "--mode" command-line argument (bug #39)
- offpunk: support for "preformatted" theming (bug #38) - offpunk: support for "preformatted" theming (bug #38)
- opnk/netcache: added "--cache-validity" command-line argument (bug #37)
## 2.1 - December 15th 2023 ## 2.1 - December 15th 2023
- freshly updated gemtext/rss links are highlighted ("new_link" theme option) - freshly updated gemtext/rss links are highlighted ("new_link" theme option)

View File

@ -56,6 +56,8 @@ The value is expressed in megabytes.
.It Fl \-timeout Ar TIMEOUT .It Fl \-timeout Ar TIMEOUT
time to wait before cancelling connection. time to wait before cancelling connection.
The value is expressed in seconds. The value is expressed in seconds.
.It Fl \-cache-validity CACHE_VALIDITY
Maximum age (in second) of the cached version before redownloading a new version.
.El .El
. .
.Sh EXIT STATUS .Sh EXIT STATUS

View File

@ -39,6 +39,8 @@ path to the file or URL to open.
Show a help message and exit Show a help message and exit
.It Fl \-mode Ar MODE .It Fl \-mode Ar MODE
MODE to use to render to choose between normal (default), full or source MODE to use to render to choose between normal (default), full or source
.It Fl \-cache-validity CACHE_VALIDITY
Maximum age (in second) of the cached version before redownloading a new version.
.El .El
. .
.Sh EXIT STATUS .Sh EXIT STATUS

View File

@ -878,11 +878,12 @@ def main():
help="Cancel download of items above that size (value in Mb).") help="Cancel download of items above that size (value in Mb).")
parser.add_argument("--timeout", type=int, parser.add_argument("--timeout", type=int,
help="Time to wait before cancelling connection (in second).") help="Time to wait before cancelling connection (in second).")
parser.add_argument("--cache-validity",type=int, default=0,
help="maximum age, in second, of the cached version before \
redownloading a new version")
# No argument: write help # No argument: write help
parser.add_argument('url', metavar='URL', nargs='*', parser.add_argument('url', metavar='URL', nargs='*',
help='download URL and returns the content or the path to a cached version') help='download URL and returns the content or the path to a cached version')
# arg = URL: download and returns cached URI
# --cache-validity : do not download if cache is valid
# --validity : returns the date of the cached version, Null if no version # --validity : returns the date of the cached version, Null if no version
# --force-download : download and replace cache, even if valid # --force-download : download and replace cache, even if valid
args = parser.parse_args() args = parser.parse_args()
@ -893,8 +894,8 @@ def main():
if args.offline: if args.offline:
path = get_cache_path(u) path = get_cache_path(u)
else: else:
print("Download URL: %s" %u) path,url = fetch(u,max_size=args.max_size,timeout=args.timeout,\
path,url = fetch(u,max_size=args.max_size,timeout=args.timeout) validity=args.cache_validity)
if args.path: if args.path:
print(path) print(path)
else: else:

View File

@ -285,10 +285,13 @@ def main():
With HTML, the normal mode try to extract the article.") With HTML, the normal mode try to extract the article.")
parser.add_argument("content",metavar="INPUT", nargs="*", parser.add_argument("content",metavar="INPUT", nargs="*",
default=sys.stdin, help="Path to the file or URL to open") default=sys.stdin, help="Path to the file or URL to open")
parser.add_argument("--cache-validity",type=int, default=0,
help="maximum age, in second, of the cached version before \
redownloading a new version")
args = parser.parse_args() args = parser.parse_args()
cache = opencache() cache = opencache()
for f in args.content: for f in args.content:
cache.opnk(f,mode=args.mode) cache.opnk(f,mode=args.mode,validity=args.cache_validity)
if __name__ == "__main__": if __name__ == "__main__":
main() main()