chore: sync main into develop - #52
Closed
noneandundefined wants to merge 51 commits into
Closed
noneandundefined wants to merge 51 commits into
noneandundefined wants to merge 51 commits into
Conversation
* added test beta wsocket function * added test beta wsocket function
…ew feature (#28) * added test beta wsocket function * added test beta wsocket function * refactor: refactor code, fixed bugs with memory and added new feature * refactor: refactor code, fixed bugs with memory and added new feature
* added test beta wsocket function * added test beta wsocket function * refactor: refactor code, fixed bugs with memory and added new feature * refactor: refactor code, fixed bugs with memory and added new feature * added Dockerfile build and publish to docker-hub
* fix: stream multipart uploads to disk * ci: verify streamed multipart uploads * ci: compile Linux tests with GNU C APIs * docs: describe streamed multipart uploads in Russian * ci: ignore pre-existing response truncation warning * fix: stream chunked multipart chunks incrementally * test: cover chunked streamed multipart * fix: bound multipart part count and form memory * fix: make buffered multipart bounds explicit * fix: make buffered multipart boundary check explicit * fix: correct multipart bounds formatting * fix: correct buffered multipart offset check * ci: suppress false-positive multipart pointer warning * fix: correct cppcheck suppression formatting * fix: apply cppcheck suppression to validated pointer offset * ci: remove temporary multipart verification workflow
fix: harden HTTP parsing, memory ownership and server lifecycle
* docs: add modular library documentation * docs: add Russian module documentation
* refactor: expose one public header and move internals to src * refactor: prefix internal headers with cHTTPX * refactor: finish cHTTPX header naming * refactor: prefix source files with cHTTPX * refactor: finish cHTTPX source naming * test: use cHTTPX internal header names * refactor: align public header sections with cHTTPX naming
* feat: add server network mode * feat: expose server network mode * feat: add dual-stack IPv4 and IPv6 listeners * fix: normalize IPv4-mapped IPv6 client addresses * test: verify dual-stack IPv4 and IPv6 requests * test: verify IPv4 and IPv6 client address normalization * docs: document IPv4 and IPv6 server modes * docs: document dual-stack server mode in Russian
* feat(site): add shared light website styles * feat(site): add navigation, copy and GitHub stats scripts * feat(site): add landing page * feat(site): add documentation page * feat(site): add examples page * feat(site): add project updates page * feat(site): add support page * feat(site): add about page * docs(site): add local preview instructions * chore(site): disable Jekyll processing * ci(site): deploy docs site to GitHub Pages
* docs(site): add app module content * docs(site): add server module content * docs(site): add routing module content * docs(site): add middleware module content * docs(site): add request module content * docs(site): add responses module content * docs(site): add json module content * docs(site): add memory module content * docs(site): add uploads module content * docs(site): add cors module content * docs(site): add cookies module content * docs(site): add i18n module content * docs(site): add logging module content * docs(site): add rate-limiting module content * docs(site): add websocket module content * style(site): update font and documentation article styles * feat(site): add internal module documentation page * feat(site): render module docs without leaving website * feat(site): keep module documentation inside website * docs(site): document local module pages * fix(site): write module page files with real newlines * fix(site): write module page files with real newlines
* feat(packaging): add native Linux package definitions * ci(packaging): add reusable Linux package builder * ci(packaging): validate native packages on pull requests * fix(build): link Linux shared library dependencies * docs: document native Linux package installation * docs: add native Linux package installation in Russian * ci(release): publish native Linux packages * ci(release): attach native Linux packages to releases * fix(ci): keep pkg-config generation valid YAML * fix(ci): escape pkg-config variables from Actions expressions
* ci(pages): publish APT repository with website * docs(site): add APT installation instructions
* chore(packaging): remove legacy Debian control file * chore(packaging): remove legacy Debian control file * chore(ci): update packaging label paths * docs: document APT repository installation * docs: describe APT repository installation in Russian * docs(site): expand APT install and update instructions * ci(release): publish APT repository automatically * ci(release): sync APT repository for manual releases
* feat(tls): add transport interface * feat(tls): add optional OpenSSL backend * build(tls): add optional pkg-config metadata * feat(tls): expose TLS configuration * feat(tls): attach transport state to requests * feat(tls): add HTTPS remote configuration API * feat(tls): publish TLS API in umbrella header * feat(tls): initialize HTTPS listeners * feat(tls): route request and response IO through transport * feat(tls): support encrypted request bodies * feat(tls): support encrypted upload streams * feat(tls): support verified HTTPS remote calls * build(tls): make OpenSSL support opt-in * test(tls): add local HTTPS integration coverage * docs(tls): add native HTTPS server example * ci(tls): test OpenSSL build and local HTTPS * docs(tls): document HTTPS in English * docs(tls): document HTTPS in Russian * docs(app): document HTTPS remote calls * docs(app): document HTTPS remote calls in Russian * docs(tls): add TLS documentation to index * docs(tls): add TLS documentation to Russian index * docs(tls): add HTTPS build quick start * docs(tls): add Russian HTTPS build quick start * docs(api): describe HTTPS remote calls * docs(api): describe HTTPS in public header * refactor(tls): expose transport error logging helper * feat(tls): route transport failures through logger * feat(tls): log encrypted server IO failures * feat(tls): log encrypted body read failures * feat(tls): log encrypted upload read failures * build(tls): package OpenSSL metadata only for TLS builds
* feat(compression): add response compression API * feat(compression): add provider-based compression middleware * feat(compression): allow per-response opt-out * feat(compression): add server and route compression state * feat(compression): clean compression state on shutdown * feat(compression): honor route compression opt-out * feat(api): expose response compression * build(compression): add optional zlib gzip build * build(compression): add zlib pkg-config metadata * build(compression): add TLS and zlib pkg-config metadata * test(compression): cover gzip negotiation and response policy * docs(compression): add gzip server example * perf(compression): add gzip CPU bandwidth benchmark * fix(compression): parse encoding quality values * docs(compression): add English guide * docs(compression): add Russian guide * docs(compression): add module to documentation index * docs(compression): add module to Russian index * docs(compression): document optional gzip build * docs(compression): document optional gzip build in Russian * ci(compression): test zlib response compression * refactor(compression): keep custom provider levels generic * build(compression): make zlib part of the standard build * refactor(compression): make gzip provider always available * docs(compression): remove build-time gzip wording * build(pkgconfig): declare zlib dependency * build(pkgconfig): link zlib with TLS builds * ci(compression): test gzip in standard builds * build(packaging): include zlib dependency * build(packaging): declare zlib runtime dependency * build(docker): include zlib * build(installer): install zlib dependency * build(windows): bundle zlib runtime when available * docs(compression): describe runtime-only enablement * docs(compression): describe runtime enablement in Russian * docs(compression): remove separate gzip build mode * docs(compression): remove separate gzip build mode in Russian * docs(compression): update example error message * build(compression): remove obsolete compression pkg-config variant * build(compression): remove obsolete TLS compression pkg-config variant * ci(codeql): install zlib dependency * refactor(compression): remove redundant gzip availability API * refactor(compression): remove redundant gzip availability declaration * refactor(api): remove redundant gzip availability helper * test(compression): assume standard gzip support * docs(compression): remove obsolete build flag name in Russian * docs(compression): remove obsolete build flag name
* docs(site): build module content from canonical docs * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * docs(site): remove duplicated generated module content * ci(release): use conventional commits for semver * ci(release): install zlib dependency * feat(metrics): add metrics public API * feat(metrics): add per-server metrics and Prometheus exporter * feat(metrics): add server configuration and state * feat(metrics): wire connection metrics into server lifecycle * feat(metrics): collect request latency and failures * feat(metrics): count rate-limit rejections * fix(metrics): keep exporter portable across C11 builds * feat(metrics): expose metrics in public header * feat(metrics): add monitoring example * test(metrics): cover concurrency and Prometheus output * build(metrics): add metrics tests and remove benchmark target * chore: remove benchmarks directory * docs(metrics): add Prometheus documentation * docs(metrics): add Russian monitoring documentation * docs(metrics): add module to documentation index * docs(metrics): add module to Russian documentation index * docs: document metrics and remove benchmark command * docs: document metrics in Russian * docs(compression): remove benchmark section * docs(compression): remove benchmark section in Russian * docs(site): explain generated canonical content * docs(site): expose TLS compression and metrics modules * docs(site): update quick start and module cards * docs(site): surface new runtime features * ci: remove deleted compression benchmark * docs(server): document metrics configuration * docs(server): document metrics config in Russian * fix(metrics): use stable route method labels * test(metrics): cover disabled configuration * test(metrics): use fixed-size response for byte counters * docs(site): ignore generated module content
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Синхронизация
developс текущимmainперед дальнейшей разработкой. Сохраняет отдельную веткуdevelopкак базовую для feature PR.