about summary refs log tree commit diff
path: root/main.py
AgeCommit message (Collapse)Author
2024-08-24Change client handlingUltraQbik
Previously _client_thread was checking for new data from client, which is very much useless, because the client will not send any data back twice. This commit removes the useless while loop that was there, as well as the thread that was started So currently, it's 1 thread per 1 request, which is how it should probably be
2024-08-24More advanced path mappingUltraQbik
2024-08-24Add HTML minimizerUltraQbik
2024-08-24Update to data streamsUltraQbik
Instead of sending full files, and therefore storing them in ram (which is not always possible), send data in chunks of 64KiB
2024-08-23Delete old codeUltraQbik
2024-08-23remove timeoutUltraQbik
Removed timeout because it interrupts client's downloads
2024-08-23Update compression thingUltraQbik
2024-08-23Working website (I think)UltraQbik
2024-08-23Add request handler methodUltraQbik
2024-08-23Basic responses workingUltraQbik
2024-08-23Check received message length to prevent infinite loop in _recv_request methodUltraQbik
2024-08-23Add timeout to prevent client thread from running foreverUltraQbik
2024-08-23More graceful shutdownUltraQbik
There is a weird issue when a user tries to load a page, doesn't get a response (because that wasn't implemented yet), and when the webserver is attempted to be shutdown, it still tries to fetch user's request
2024-08-23Add start methodUltraQbik
2024-08-23Add basic stuffUltraQbik
2024-08-23Change path map a bitUltraQbik
2024-08-23Ditch asyncio, threading actually works much betterUltraQbik
Problem was that I wanted to do things actually in parallel, and wanted to launch a task but without blocking the thread, asyncio was for whatever reason blocking the thread which was causing issues when 1 user was downloading a file and trying to do something else on the page (like load a new page or something) Threading ACTUALLY does do exactly what I want via `threading.Thread(...).start()`, so that will be used going forward Also, it seems to 3x faster that way, because with asyncio the page took 1 sec to load, with threading it takes 280 ms, which is weird even if we are doing things one at a time
2024-08-22esUltraQbik
2024-08-22Tweak a thingUltraQbik
2024-08-22Add Content-Length headerUltraQbik
2024-08-22Update things slightlyUltraQbik
2024-08-22Update path handling and API partUltraQbik
2024-08-22API seems to workUltraQbik
2024-08-22Massive refactoring addition of APIUltraQbik
2024-08-22Fix broken centering add testing pageUltraQbik
2024-08-22Add brotli as a better compressionUltraQbik
2024-08-22Add simple HTML minimizer for gooder compressionUltraQbik
2024-08-21change /about.html to /about cuz prettyUltraQbik
2024-08-21Better code now closes gracefully (I hope)UltraQbik
2024-08-21A bit more asynchronous code?UltraQbik
I have refactored some code and got rid of a few libraries Disabled logging as it's not very important at the time
2024-08-21Carry Request class to a separate .py fileUltraQbik
2024-08-21Add simple response.html pageUltraQbik
2024-08-20Add gzip compressionUltraQbik
Also changed 400 error to 404 error in get request handler removed json import (might be temporary)
2024-08-20Update to use HTTPS instead of HTTPUltraQbik
That was very painful, but it does seem to work now with https using ssl standard library
2024-08-20Add loggingUltraQbik
2024-08-20Add commentsUltraQbik
2024-08-20Exception handling (kind of)UltraQbik
2024-08-20Return 400 response when path is incorrectUltraQbik
2024-08-20Working websiteUltraQbik
2024-08-20Get rid of htmlmin (use just gzip)UltraQbik
2024-08-20Path mapping and get requests startUltraQbik
2024-08-20Working message receivingUltraQbik
2024-08-20Path length checkUltraQbik
2024-08-20Change file dislocationUltraQbik
2024-08-19initialUltraQbik