Open masoudd opened 4 years ago
https://github.com/tldr-pages/tldr/blob/master/CLIENT-SPECIFICATION.md says nothing about it, but we will take a look. Your reasoning makes perfect sense.
@MasterOdin Wanna take a look at this?
I would probably just make it the default that we construct the list of possible page locations, check if the page exists in any of them, and if it does, display it (assuming page is not too old), else start making http calls. I plan to work on this on a broader clean-up of the process to determine this information (as well as start adding some unit tests to the library).
common vs specific platform
Take for example the command:
tldr tldr
on linux (Let's assume I already have the filecommon/tldr.md
in my cache directory and it is newer thanTLDR_CACHE_MAX_AGE
).One might reasonably assume that no https requests will be made. But in fact, the program first looks for
linux/tldr.md
, since it's not in the cache, it first requests it fromPAGES_SOURCE_LOCATION/linux/tldr.md
which returns a 404. then after all this, it looks forcommon/tldr.md
and shows the contents.Solution
I suggest checking the common cache directory before making an https connection for platform specific files. Or to avoid changing default behavior, at least put this behavior behind an option like
--common-before-net