Skip to content

Conversation

glycerine
Copy link

No description provided.

@glycerine
Copy link
Author

Tube is a subdirectory within my rpc25519 Go package.

Listing only the URL to the top level package would make Tube hard to find, so I've included the more informative URL. It points to a Tube specific introduction and discussion of the Tube package, rather than more generic RPC concerns.

jaten@jbook ~/go/src/github.com/raft/raft.github.io (add_tube) $ ./check.py 
Encountered 2 errors:

'https://github.com/glycerine/rpc25519/tree/master/tube' does not match '^https://github.com/([^/]+)/([^/]+)(?<!.git)$'

Failed validating 'pattern' in schema['properties']['repoURL']:
    {'description': 'URL pointing to base GitHub repo.',
     'type': 'string',
     'pattern': '^https://github.com/([^/]+)/([^/]+)(?<!.git)$',
     'format': 'uri'}

On instance['repoURL']:
    'https://github.com/glycerine/rpc25519/tree/master/tube'

Formatting error:
--- implementations.json (current)
+++ implementations.json (expected formatting)
@@ -1287,7 +1287,7 @@
             "logCompaction": true,
             "persistence": true
         }
-    },
+    },
     {
         "repoURL": "https://github.com/goraft/raft",
         "name": "go-raft",

jaten@jbook ~/go/src/github.com/raft/raft.github.io (add_tube) $ 

I have no idea what that 2nd error is about. The lines look identical to me.
The URL check is a bit to rigid. I could not see where to update it, or I would have tried to provide a fix for that too.

@glycerine
Copy link
Author

glycerine commented Sep 20, 2025

update: I fixed both issues-- there was some trailing whitespace, and the regex now allows the longer URL.

Ken Birman described Virtual Synchrony as "the consensus module" used in his RPC system, and it always made sense to me after see his diagrams that consensus should really be architected as a typical/common component of RPC and of a larger system. Having it be well integrated with an RPC system just makes a ton of sense to me. It should be a common, lightweight, and readily accessible tool in our code toolbox, rather than requiring a heavy set of dependencies; in the case of etcd perhaps whole separate docker container.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant