cppalliance / http_proto

HTTP/1 parsing and serialization algorithms using C++11
https://develop.http-proto.cpp.al/
Boost Software License 1.0
23 stars 10 forks source link

deflate/gzip compression in serializer #87

Closed cmazakas closed 3 months ago

cmazakas commented 3 months ago

Most of the main logic is in src/serializer.cpp

Restructured the project to have a http_proto_core helper library for common symbols between http_proto and http_proto_zlib

Build files were cleaned up substantially.

Not ready for merging but needs review.

Things to do:

cppalliance-bot commented 3 months ago

Antora version: an automated preview of the documentation is available at https://87.http-proto.prtest.cppalliance.org/site/index.html

cppalliance-bot commented 3 months ago

GCOVR code coverage report https://87.http-proto.prtest.cppalliance.org/gcovr/index.html
LCOV code coverage report https://87.http-proto.prtest.cppalliance.org/genhtml/index.html Coverage Diff https://87.http-proto.prtest.cppalliance.org/gcovr/coverage_diff.txt

codecov[bot] commented 3 months ago

Codecov Report

Attention: Patch coverage is 92.59259% with 20 lines in your changes are missing coverage. Please review.

Project coverage is 89.39%. Comparing base (041e31b) to head (6785ea1).

Additional details and impacted files [![Impacted file tree graph](https://app.codecov.io/gh/cppalliance/http_proto/pull/87/graphs/tree.svg?width=650&height=150&src=pr&token=IoZbqjUnBr&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance)](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) ```diff @@ Coverage Diff @@ ## develop #87 +/- ## =========================================== + Coverage 89.37% 89.39% +0.02% =========================================== Files 77 78 +1 Lines 4348 4669 +321 =========================================== + Hits 3886 4174 +288 - Misses 462 495 +33 ``` | [Files](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) | Coverage Δ | | |---|---|---| | [include/boost/http\_proto/buffered\_base.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fbuffered_base.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL2J1ZmZlcmVkX2Jhc2UuaHBw) | `100.00% <ø> (ø)` | | | [include/boost/http\_proto/detail/except.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fdetail%2Fexcept.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL2RldGFpbC9leGNlcHQuaHBw) | `42.85% <ø> (ø)` | | | [include/boost/http\_proto/detail/impl/workspace.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fdetail%2Fimpl%2Fworkspace.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL2RldGFpbC9pbXBsL3dvcmtzcGFjZS5ocHA=) | `97.87% <ø> (ø)` | | | [include/boost/http\_proto/detail/workspace.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fdetail%2Fworkspace.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL2RldGFpbC93b3Jrc3BhY2UuaHBw) | `100.00% <ø> (ø)` | | | [include/boost/http\_proto/impl/error.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fimpl%2Ferror.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL2ltcGwvZXJyb3IuaHBw) | `100.00% <ø> (ø)` | | | [include/boost/http\_proto/message\_base.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fmessage_base.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL21lc3NhZ2VfYmFzZS5ocHA=) | `100.00% <ø> (ø)` | | | [include/boost/http\_proto/message\_view\_base.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fmessage_view_base.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL21lc3NhZ2Vfdmlld19iYXNlLmhwcA==) | `100.00% <100.00%> (ø)` | | | [include/boost/http\_proto/metadata.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fmetadata.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL21ldGFkYXRhLmhwcA==) | `100.00% <ø> (ø)` | | | [include/boost/http\_proto/serializer.hpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=include%2Fboost%2Fhttp_proto%2Fserializer.hpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-aW5jbHVkZS9ib29zdC9odHRwX3Byb3RvL3NlcmlhbGl6ZXIuaHBw) | `97.56% <100.00%> (+0.12%)` | :arrow_up: | | [src/message\_base.cpp](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree&filepath=src%2Fmessage_base.cpp&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance#diff-c3JjL21lc3NhZ2VfYmFzZS5jcHA=) | `85.36% <100.00%> (+8.03%)` | :arrow_up: | | ... and [9 more](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) | | ... and [2 files with indirect coverage changes](https://app.codecov.io/gh/cppalliance/http_proto/pull/87/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) ------ [Continue to review full report in Codecov by Sentry](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance). > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance) > `Δ = absolute (impact)`, `ø = not affected`, `? = missing data` > Powered by [Codecov](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?dropdown=coverage&src=pr&el=footer&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance). Last update [041e31b...6785ea1](https://app.codecov.io/gh/cppalliance/http_proto/pull/87?dropdown=coverage&src=pr&el=lastupdated&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=cppalliance).
cppalliance-bot commented 3 months ago

Antora version: an automated preview of the documentation is available at https://87.http-proto.prtest.cppalliance.org/site/index.html

cppalliance-bot commented 3 months ago

GCOVR code coverage report https://87.http-proto.prtest.cppalliance.org/gcovr/index.html
LCOV code coverage report https://87.http-proto.prtest.cppalliance.org/genhtml/index.html Coverage Diff https://87.http-proto.prtest.cppalliance.org/gcovr/coverage_diff.txt