Commit Graph

306 Commits

Author SHA1 Message Date
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
Quinten Mennen
c255878b2f feat(log): add printContext method for improved context logging 2025-09-23 16:15:07 +02:00
Quinten Mennen
f119d98c70 fix(log): get rid of source_location 2025-09-23 15:37:32 +02:00
whaffman
c9855fd7e5 Refactor include directives: replace quotes with angle brackets for consistency 2025-09-22 23:04:51 +02:00
whaffman
3eb46dba13 Enhance code formatting and organization:
- Add tasks for code formatting and checking in VSCode
- Update .clang-format for consistent style
- Clean up includes and formatting in various files
2025-09-22 22:59:29 +02:00
whaffman
31014705b1 Refactor HttpRequest: replace hardcoded strings with constants for header parsing 2025-09-22 22:45:00 +02:00
whaffman
e200731306 HttpConstants header file with HTTP methods, versions, status codes, headers, MIME types, and protocol constants 2025-09-22 22:44:52 +02:00
whaffman
7c0ff82b08 Add HttpConstants header file with HTTP methods, versions, status codes, headers, MIME types, and protocol constants 2025-09-22 22:33:37 +02:00
whaffman
2924440e0d Refactor HttpRequest::parseBuffer: extract parsing logic into separate methods for request line, headers, and body 2025-09-22 22:33:27 +02:00
whaffman
799cf250b7 Refactor Client class: replace std::cout with logging calls for read errors and client disconnections, and remove unused header parsing methods 2025-09-22 22:33:17 +02:00
whaffman
90e70f2e82 Added some appropiate nodiscard atributes 2025-09-22 22:32:54 +02:00
whaffman
5264139d49 Set stdout log level to Trace for improved logging detail 2025-09-22 21:49:47 +02:00
whaffman
3dc12fab9d Implemented the recieving part of HttpRequest
and changed client to use HttpRequest
2025-09-22 21:49:38 +02:00
whaffman
6766bd8744 Fix formatting in Log class: adjust pointer declaration style for RESET_COLOR 2025-09-22 13:13:36 +02:00
whaffman
6b85be65b8 Refactor logging system: enhance Channel and FileChannel classes to use getter/setter for log level, improve log context formatting in StdoutChannel, and update main to test logging context 2025-09-22 13:13:29 +02:00
whaffman
6803524989 Refactor logging system: replace LogLevel with Log::Level across multiple files for improved consistency and clarity 2025-09-22 12:33:18 +02:00
whaffman
358b48e407 Refactor logging: replace LOG macros with Log class methods for improved clarity and consistency 2025-09-22 12:00:53 +02:00