Releases: JustAn0therDev/black-marlin
First official release!
First official release!
- Better logs;
- Fixed exception message in logs;
- Fixed error message in "invalid port";
- No official Windows support as of now. Might come back in future releases.
Files are opened only once for the whole program's lifetime
Files are now opened only once for the program's lifetime using the C stdio
library instead of C++'s.
Support for TLS/SSL
This pre-release now supports SSL certificates. The docs have been updated with how to configure it with Black Marlin and activate this new feature.
The only binary that is currently available in this release works on Linux.
Major Refactoring
Small fixes and major code refactoring to ensure less memory usage and best practices.
Configurations do not depend on an IDE or tools like that anymore (as it used to with Visual Studio). CMake configs have also been fixed.
In the assets section, there are both versions for Windows and Linux. The Windows version has a .exe
extension.
Small optimization on the main library
Small optimization on the main library and using more references. This should make the memory usage just a little bit better.
Logs
- New log feature;
- Linux and Windows can use the same binary file;
- Optimized bits to ensure speed and that the errors are being logged.
Improvements and new optional configurations
This new release includes a downloadable version for testing in both Windows and Linux and new configurations described in the docs!
Refactoring part of the code base
No feature has been added in this release. Part of the code base has been refactored to make big changes harder to occur, allowing for a lower level of entropy when breaking changes happen.
The changes are targeting unintended copying (and value overwriting) as well, in an attempt to remove most hard-to-catch bugs.
New feature: expiring keys
- Adding new feature to make a key expire in an amount of seconds specified by a new optional
expiresin
query parameter; - The main library now uses threads;
- An expiring key can be overwritten or deleted if desired;
- Creating new bash scripts for compiling the program and its unit tests;
- Adding new
Util
class and tests.
Fixes memory management problems in cleaning routes
The routes flush
, delete
and overwrite
would throw errors, catch or have undefined behavior when called. This has been fixed in the current version and a test with 20000 requests made to ensure that all routes work as intended.