Skip to content
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

Apply explicit chunked encoding #95

Merged
merged 13 commits into from
Feb 7, 2024
Merged

Conversation

julik
Copy link
Contributor

@julik julik commented Feb 3, 2024

otherwise it falls on Puma/other Rack server to determine whether chunking has to be applied. While a good-natured webserver is supposed to chunk automatically, why not do it ourselves if we can?

This is a backport from the changes I am preparing for zip_tricks (the maintenance situation there is a bit unclear ATM but will hopefully improve soon).

julik added 13 commits February 3, 2024 11:18
otherwise it falls on Puma/other Rack server to determine whether chunking has to be applied. While a good-natured webserver is supposed to chunk automatically, why not do it ourselves if we can?
similar to zip_tricks "next" branch
so that specs may run again. Also relocate dev deps into the gemspec, as
keeping them in the Gemfile makes sense only when using Appraisal or the like
Tabs to spaces and all that. Also - nothing prevents us testing with a real ActionController
If the version of ZipTricks already has a buffering enumerator it will be used
Mocking things is great and all, but then it turns into debugging rspec-mocks
@julik
Copy link
Contributor Author

julik commented Feb 3, 2024

...well, and clean a few things up 🤷‍♂️ but everything works

@freesteph freesteph mentioned this pull request Feb 4, 2024
@julik
Copy link
Contributor Author

julik commented Feb 7, 2024

@fringd mind taking a look? I did take a liberty with buffering into a Tempfile if no streaming is possible but I think it is justified as the buffering won't be in memory and the zip block would be iterated only once

@fringd
Copy link
Owner

fringd commented Feb 7, 2024

hey this is a great improvement. having it gracefully degrade and log when streaming isn't possible. thanks so much for the PR!

@fringd fringd merged commit 8cef8c2 into fringd:master Feb 7, 2024
3 checks passed
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.

2 participants