whaffman
d360728b18
feat: enhance logging by changing info logs to debug level for detailed tracing
2025-09-30 11:26:05 +02:00
whaffman
a3e9699eb9
feat: reorder include statements to ensure corresponding headers are placed first
2025-09-30 11:17:43 +02:00
whaffman
4ff7a03597
feat: add script to reorder includes in .cpp files and ensure corresponding header is at the top
2025-09-30 11:13:56 +02:00
whaffman
7322360650
feat: update IWYU fix script to default to aggressive mode and clean up option prompts and add to format script
2025-09-30 10:57:53 +02:00
whaffman
ab2db513c0
iwyu
2025-09-30 10:54:50 +02:00
whaffman
b7f8947440
feat: add custom 400 error page and update configuration for error handling
2025-09-30 10:41:53 +02:00
whaffman
949c788259
feat: preliminary error handling with custom error pages and response generation
2025-09-29 17:39:53 +02:00
whaffman
787432ff0c
refactor: simplify Client and HttpRequest constructors, add status code management
2025-09-29 16:09:40 +02:00
whaffman
ae1b10c60b
feat: implement comprehensive unit testing framework with Google Test integration
2025-09-29 16:09:22 +02:00
whaffman
124c831800
refactor: improve location path extraction and add getValueAs template method
2025-09-26 18:50:40 +02:00
whaffman
6abe64f9b7
includes <>
2025-09-26 18:10:41 +02:00
whaffman
e5ad795917
fix: apply IWYU suggestions and format
2025-09-26 18:08:52 +02:00
whaffman
143498315b
fix: apply IWYU suggestions
2025-09-26 18:08:32 +02:00
whaffman
c841142e79
Refactor configuration handling and directive parsing
...
- Introduced AConfig class to handle common configuration functionalities.
- Added GlobalConfig class to manage multiple ServerConfig instances.
- Updated ServerConfig to utilize the new AConfig base class.
- Refactored directive parsing logic to improve clarity and maintainability.
- Enhanced utility functions for removing comments and empty lines from configuration blocks.
- Updated directive classes to use consistent naming for value retrieval methods.
- Improved logging for better traceability during configuration parsing.
- Removed unused includes and cleaned up code for better readability.
2025-09-26 18:06:37 +02:00
whaffman
d3d1445264
refactor(DirectiveValue): simplify toString implementation using visitor overload pattern
2025-09-26 08:12:16 +02:00
whaffman
17b69afd2c
feat(directives): implement DirectiveValue class and IntStringDirective for enhanced directive handling and use std::variant instead of any
2025-09-25 21:57:02 +02:00
Quinten
1e80839864
refactor(ServerConfig): update directive parsing and improve server socket binding
2025-09-25 17:51:37 +02:00
Quinten
c9e74ca508
feat(directives): implement directive parsing and factory pattern for configuration
2025-09-25 17:33:14 +02:00
Quinten
a54cdaa841
feat(validation): just an outline
2025-09-25 11:26:55 +02:00
whaffman
571625bbbf
refactor(HttpHeaders): add logging for header operations and clean up includes
2025-09-24 22:37:44 +02:00
whaffman
feeadb0a21
refactor: streamline build directory detection and update Makefile for environment handling
2025-09-24 22:34:20 +02:00
whaffman
b145a6eef2
refactor: update includes to use cstdint and cstddef for consistency
2025-09-24 22:34:12 +02:00
Quinten Mennen
93079cd8bd
Merge remote-tracking branch 'origin/willem'
2025-09-24 15:54:57 +02:00
Quinten Mennen
33c82490f0
fix(HttpRequest): simplify debug log message for waiting data in request line
2025-09-24 15:54:48 +02:00
whaffman
89e8dcd34d
refactor(iwyu): remove deprecated IWYU scripts for improved maintenance
2025-09-24 13:26:12 +00:00
whaffman
15d749eae9
refactor(devcontainer): streamline Dockerfile and update VS Code settings for Clang 12
2025-09-24 13:15:24 +00:00
Quinten Mennen
64f5c39fb3
feat(request): catch parse errors
2025-09-24 13:34:07 +02:00
whaffman
878fe4790a
feat(docker): update Dockerfile to install Clang 12 and set it as default
2025-09-24 11:12:50 +00:00
Quinten Mennen
36961fc468
fix: add utils namespace to functions
2025-09-24 13:01:27 +02:00
Quinten Mennen
f611ace342
fix(server config): remove server_fd
2025-09-24 13:01:05 +02:00
Quinten Mennen
5214ed3af1
feat(utils): utils namespace and custom stoul
2025-09-24 13:00:45 +02:00
Quinten Mennen
04e8292009
fix(headers): better content-length evaluation
2025-09-24 13:00:02 +02:00
whaffman
94085917ab
feat(format): add script for formatting and checking header files
2025-09-24 12:55:40 +02:00
whaffman
ba831957d4
clang-format
2025-09-24 12:04:43 +02:00
whaffman
901f766599
ran iwyu
2025-09-24 12:03:40 +02:00
Quinten Mennen
7270ee1812
feat(request): add parse error state
2025-09-24 11:52:31 +02:00
Quinten Mennen
e32b963689
fix(headers): remove unused log include
2025-09-24 11:22:41 +02:00
Quinten Mennen
e43bf72cd6
feat(headers): getContentType and getHost
2025-09-24 11:22:21 +02:00
Quinten Mennen
e921290d8f
format(request)
2025-09-24 11:20:26 +02:00
Quinten Mennen
21b19b248c
fix(headers): retrieval also case-insensitive
2025-09-24 11:20:15 +02:00
Quinten Mennen
5485a5a839
fix(request): check header size
2025-09-24 11:12:03 +02:00
Quinten Mennen
ff5221c2d5
fix(headers): make headers case-insensitive
2025-09-24 11:11:49 +02:00
whaffman
20b49e4e45
feat(iwyu): enhance IWYU mappings and add automatic fix scripts
2025-09-24 11:01:50 +02:00
whaffman
b7dc3dd38d
feat(iwyu): add scripts for Include What You Use analysis and results review
2025-09-24 09:57:48 +02:00
whaffman
169bcf96c4
feat(setup): add setup script for development environment and build directory management
2025-09-23 20:35:04 +00:00
Quinten Mennen
a279e92408
reactor(config): change some of the logs
2025-09-23 21:01:16 +02:00
Quinten Mennen
595ba9e8a6
fix(channel): add extra indents for level-1 nested objects
2025-09-23 21:01:07 +02:00
Quinten Mennen
d7a074cbba
format(client): extra logging
2025-09-23 21:00:44 +02:00
Quinten Mennen
221cc710a8
feat(http): add headers class and allow for chunked data
2025-09-23 21:00:26 +02:00
whaffman
dfc4bc7dd0
feat(devcontainer): add Dockerfile and devcontainer.json for C++ development setup
2025-09-23 16:09:53 +00:00