Remix.run Logo
hu3 5 days ago

Hi! Looks great. I might use this to fan out/in my RSS reader HTTP calls.

How would I implement timeout? In case a HTTP call takes too long?

mariusor 4 days ago | parent | next [-]

You might be interested by something that has been designed specifically for this problem. I created a state machine library for Go on top of which I mapped retry[1] and some other patterns. And funnily enough one of the first applications I implemented is an RSS reader[2]

[1] https://pkg.go.dev/git.sr.ht/~mariusor/ssm#example-Retry

[2] https://git.sr.ht/~mariusor/frankenjack/tree/master/item/sou...

destel 4 days ago | parent | prev | next [-]

For now, the library is context-agnostic by design. For HTTP timeouts, you'd use Go's standard approaches: either set the HTTP client timeout or pass a context with timeout to each request. Please let me know more about your use case - I'll let you know if Rill isn't a good fit.

lsaferite 5 days ago | parent | prev [-]

Based on the examples and documentation, rill doesn't manage context for you. You'd simply set the client timeout or give each http call a timeout context.