Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The stable risen release after the Github's intentional malicious disaster. We have migrated to a reliable trusted infrastructure ----------------------------------------------------- The origin for now is at [GitFlic](https://gitflic.ru/project/erthink/libmdbx) since on 2022-04-15 the Github administration, without any warning nor explanation, deleted _libmdbx_ along with a lot of other projects, simultaneously blocking access for many developers. For the same reason ~~Github~~ is blacklisted forever. GitFlic already support Russian and English languages, plan to support more, including 和 中文. You are welcome! New: ---- - Added the `tools-static` make target to build statically linked MDBX tools. - Support for Microsoft Visual Studio 2022. - Support build by MinGW' make from command line without CMake. - Added `mdbx::filesystem` C++ API namespace that corresponds to `std::filesystem` or `std::experimental::filesystem`. - Created [website](https://libmdbx.website.yandexcloud.net/) for online auto-generated documentation. - Used `todo4recovery://erased_by_github/` for dead (or temporarily lost) resources deleted by ~~Github~~. - Added `--loglevel=` command-line option to the `mdbx_test` tool. - Added few fast smoke-like tests into CMake builds. Fixes: ------ - Fixed a race between starting a transaction and creating a DBI descriptor that could lead to `SIGSEGV` in the cursor tracking code. - Clarified description of `MDBX_EPERM` error returned from `mdbx_env_set_geometry()`. - Fixed non-promoting the parent transaction to be dirty in case the undo of the geometry update failed during abortion of a nested transaction. - Resolved linking issues with `libstdc++fs`/`libc++fs`/`libc++experimental` for C++ `std::filesystem` or `std::experimental::filesystem` for legacy compilers. - Added workaround for GNU Make 3.81 and earlier. - Added workaround for Elbrus/LCC 1.25 compiler bug of class inline `static constexpr` member field. - [Fixed](erigontech/erigon#3874) minor assertion regression (only debug builds were affected). - Fixed detection of `C++20` concepts accessibility. - Fixed detection of Clang's LTO availability for Android. - Fixed build for ARM/ARM64 by MSVC. - Fixed non-x86 Windows builds with `MDBX_WITHOUT_MSVC_CRT=ON` and `MDBX_BUILD_SHARED_LIBRARY=ON`. Minors: ------- - Resolve minor MSVC warnings: avoid `/INCREMENTAL[:YES]` with `/LTCG`, `/W4` with `/W3`, the `C5105` warning. - Switched to using `MDBX_EPERM` instead of `MDBX_RESULT_TRUE' to indicate that the geometry cannot be updated. - Added `NULL` checking during memory allocation inside `mdbx_chk`. - Resolved all warnings from MinGW while used without CMake. - Added inheretable `target_include_directories()` to `CMakeLists.txt` for easy integration. - Added build-time checks and paranoid runtime assertions for the `off_t` arguments of `fcntl()` which are used for locking. - Added `-Wno-lto-type-mismatch` to avoid false-positive warnings from old GCC during LTO-enabled builds. - Added checking for TID (system thread id) to avoid hang on 32-bit Bionic/Android within `pthread_mutex_lock()`. - Reworked `MDBX_BUILD_TARGET` of CMake builds. - Added `CMAKE_HOST_ARCH` and `CMAKE_HOST_CAN_RUN_EXECUTABLES_BUILT_FOR_TARGET`. Signed-off-by: Леонид Юрьев (Leonid Yuriev) <[email protected]> # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCgAdFiEE9IGHqvPZe++T6rYHUYvRC5J+hoYFAmJjEN8ACgkQUYvRC5J+ # hobyZA//ffV40fOGfbMItW2C1CyYiXF8qGnEwBAoLqAgn1rAeEtMK4OSDj0IhI5f # Vn2Mg3I4pqr9wnz7cxLVJ8CgaQ6hSg8Fk0VCGMARJdR6zcxAly2oSCBbxKcqhhbR # hGP8YxOG6Y3z6iCQil0rmu65dHWlZcfunRvYs2lcLnC9IfqeXuB6VGN5q08NLLkC # uqAAVO22bijs+mkeagRd+AQmS7upABtz4OAfxymJ+5s46k730xa+nqubEA4b+iQ0 # 9bjRkDj73HR/I7okBeEiNpXBMimKNhtppvU/DyrYDZIcVSxpFTbSpPejo8uvDQjz # eanhU5NOfJ4z9B0Ti+dcj5+cs+vzq6//Qw8JeZEOj0OYzAYDM9cKaH+NUo7Yg0Eb # RdQxogR5kn8pgMohnz+oBO10RWiydeL5+Cot8FrdA7s9IwU0mleFx+XAx1JiQvfy # P33yHEkcYi9blFB7kIu1S1AjLMH/hFl9kVngi+bjdZc8lp2ZqqeimDl6GCvg1Lp4 # 5nkGTNURXNuKXtE04U11GnrLj9iYr+nVA+Er3e0HwmO2bklvdJUAGHl3WOY55RC+ # 09ZY21GBi8thDa3Lso6Su6pKmoO1TVXNw7E52O1C1XX4IAwH+5biedYUIyj5/06+ # uZ28NHxvKdx9ZYHgjz0P8tvZMlFvCITw8Cj2umqDWgIfJ9iVtsI= # =wCqa # -----END PGP SIGNATURE----- # gpg: Signature made Fri Apr 22 22:32:31 2022 WEDT # gpg: using RSA key F48187AAF3D97BEF93EAB607518BD10B927E8686 # gpg: Can't check signature: No public key
- Loading branch information