-
Notifications
You must be signed in to change notification settings - Fork 597
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove all walkers
#3502
Labels
Comments
/label refactor |
This was referenced Oct 7, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
What is the problem you're trying to solve
We do have a number of
walkers
abstractions around (for network, images, etc.).They may have seemed like a good abstraction at the time, but they are more trouble than anything, because they just hide the fact that resources come and go - and by the time they call the handler, the corresponding resource may have disappeared - unless the caller does enforce locking around the walker, which defeats the purpose of a simple functional abstraction.
At this point, it feels like
walkers
are just over-engineering with no purpose: a pattern that does not deliver any concrete value, while making issues harder to debug.Describe the solution you'd like
Remove walkers and replace them with simple functions returning slices.
If the consumer wants a walker, they can implement it themselves very easily.
While looking at concurrency issues again (#3501) it is clear they are part of the problem.
Additional context
No response
The text was updated successfully, but these errors were encountered: