Commit Graph

12 Commits

Author SHA1 Message Date
kayvr ba5a14ebbf Add note about Lunar Rover. 2022-08-04 16:35:29 -07:00
kayvr 800df233f3 Minor corrections to URLs in README. 2022-03-31 16:29:48 -07:00
kayvr 4b493aac7b Update README with properly formatted gemini links. 2022-03-31 16:27:57 -07:00
kayvr 93497acc04 Update README to point to updated articles. 2022-03-31 09:41:32 -07:00
kayvr 98d3854779 Add gemini support.
The new subdirectory 'gemini' has been added. It represents everything
required to implement gemini in rover using rover's internal API. The
internal API's usage is detailed in the FileProtocol class in rover.py.

Adding new protocols requires adding a new subdirectory and implementing
rover's internal API. No protocol specific code, other than local
filesystem code, should exist in rover.py.

Includes a fix for 'rover fetch'. If rover fetch encounters an error
then the program's exit code is set to 1.
2022-03-30 11:55:36 -07:00
kayvr ceb78cc641 Add ability to land directories with relative paths.
Minor modification that allows the landing of rover directories using
relative paths only. One must be in a rover directory in order to use
this functionality.

Example:
$ rover land ~/tmp # Lands ~/tmp which contains the directory 'a'
$ cd ~/tmp
$ rover land a

Since '--recursive' was not specified when landing the changes, the
directory 'a' is not populated until the second land command.
2022-03-26 12:24:23 -07:00
kayvr eaaffc0ecc Add mkdir api.
The mkdir api complements 'rover submit'. Mkdir operates on directories
whereas 'rover submit' works only on files.

Alongside this change path_to_url was removed. The code was merged with
rover url handling and completed a pre-existing TODO.
2022-03-25 22:44:29 -07:00
kayvr ae7530d85c Add canonicalize URL API.
Introduces the ability for protocols to normalize in input URL before
further processing.

For example, the file:// API requires that directories are terminated
with a forward slash to ensure proper caching.
2022-03-20 13:54:47 -07:00
kayvr a8624b4e94 Introduce proper support for unread files.
Largely replaces --retour functionality. Unread (-u) marks files as
unread upon first land. Those files do not show up in rover tour (unlike
--retour). Unread files can be fetched using 'rover fetch . -u' while in
a rover directory. This is such a common operation that 'rover fetch' is
a shortcut for 'rover fetch . -u'.

I may remove the 'rover fetch' shortcut in the future as it should be up
to the user to choose aliases.

Other minor changes in this revision:
* Any errors upon land are now propogated out of rover using 'error_occurred'.
* Fix a problem where mark_for_land would err when attempting to delete
  'local_path' when 'local_path' did not exist. This is a problem when
  using the 'rover land -u' feature.
2022-03-19 14:47:41 -07:00
kayvr 137b385087 Change --unread to --retour and add -u placeholder
All tests pass. No functionality changed. As previously implemented
--unread would add files to 'rover tour'. However, when landing a new
directory that can result in a firehose of updates sent to 'rover tour'.

So --unread was renamed to --retour. In it's place -u will implement the
desired 'unread' functionality. Alongside 'rover fetch -u', 'rover land -u'
will implement the spirit of 'unread' updates. One where *you* choose
when to consume updates. Not all at once.
2022-03-17 13:06:31 -07:00
kayvr e5b0e3cc80 Introduce initial commit for rover.
First public commit of rover.
2022-03-17 10:32:36 -07:00
kayvr c7e1c3ccab Initial commit 2022-03-12 18:04:37 +00:00