311 karma · joined December 18, 2019
It's lying though when it claims its regexes match the empty parameter cases, right? (The regexes do what's asked, just explanation seems buggy.)
todoAPI conn = getTodo conn <|> getAllTodos conn
with getTodo conn = do
methodGET
pathParam @Text `is` "todos"
todoID <- pathParam @Int
...
so you need to keep in mind both the order of the alternatives in todoAPI as well as the bodies of the individual handlers. That gets unwieldy very quickly.It also seems likely to lead to the same problems with error handling that you tend to get with combinator parsers, where you usually only get details about the last failing branch, while the interesting failure might have been an earlier one.
Quiz question (I don't know the answer): What happens to a request for /todos/foo?
The other part is that I have a good impression of the person/people behind it and could see it sticking, for whatever that's worth.
- https://man7.org/linux/man-pages/man2/sendfile.2.html
- https://man7.org/linux/man-pages/man2/splice.2.html
(Funny how used I've gotten to "hypertext", I was quite irritated I couldn't click those function names.)
This seems to be largely the same pitch that oscoin.io / monadic.xyz / radicle.xyz had back in 2017. They must have burned, what, 10 million dollars by now? I'm really curious what the business model behind an outfit like this is...
Haskell seems to select for people who enjoy going off on puzzling tangents, and it seems like it takes so much learning that for many, meta skills such as good engineering and communication practices fall by the wayside.
So apparently it runs the query against an in-memory sqlite instance. I'm curious what the rough time overhead for that is (compared to, say, the overhead of calling out to grep). Does it feel noticeably slow to run a query on ps output?
And the other thing I'm wondering, can this drop you into a sqlite command line? I.e.,
» ps aux -> select -i
sql> SELECT ...
EDIT: removing link to lifesitenews com article, don't want to give them traffic.
Oh boy.
Alice creates change
A: add file /README (identified by hash x)
Bob creates change
B: add file /README (identified by hash y) C: adds a copyright header to README
Now Bob pulls from Alice, and wants Alice's README contents (change A). Does pijul notice conflicts between A & B? If Bob records a change resolving the conflict between A & B by keeping A, will it be possible to apply C on top of this?
That's quite a bold claim, isn't it? I also don't see how it's an alternative to OP considering it doesn't even mention how to integrate the code with any database, let alone Postgres.
As an aside, how does your approach deal with collisions? Why would the chance of collisions be any lower than with the random approach if you're using what seems to come down to a cryptographically secure hash function?
Create a separate table mapping integers to unique IDs, and join with this. You can generate that in advance, so can avoid gradually building the index.
(I understand there'll still be an index for the public key -- the argument would be that you don't bear the cost for that for most queries.)
My big question: What's behind the name? I find it a bit confusing and not very memorable at first sight, maybe an explanation would help.
But that's also too long and meandering. :/
With git my typical solution for this is to basically keep rebasing them as uncommitted changes with `git stash`, until I inevitably lose them. Or keep a separate branch, and keep explicitly rebasing (and stay on my toes not to accidentally push the commits).