mdbxmou 0.3.7 → 0.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/README.md +1 -1
  2. package/deps/libmdbx/.clang-format-ignore +8 -0
  3. package/deps/libmdbx/.github/workflows/ci-android.yml +38 -0
  4. package/deps/libmdbx/.github/workflows/ci-mingw.yml +40 -0
  5. package/deps/libmdbx/.github/workflows/ci-posix.yml +34 -0
  6. package/deps/libmdbx/.github/workflows/ci-wincxx.yml +45 -0
  7. package/deps/libmdbx/.github/workflows/ci-windows.yml +32 -0
  8. package/deps/libmdbx/CMakeLists.txt +67 -337
  9. package/deps/libmdbx/COPYRIGHT +1 -1
  10. package/deps/libmdbx/ChangeLog.md +163 -106
  11. package/deps/libmdbx/GNUmakefile +64 -539
  12. package/deps/libmdbx/NOTICE +13 -9
  13. package/deps/libmdbx/README.md +143 -480
  14. package/deps/libmdbx/VERSION.json +1 -0
  15. package/deps/libmdbx/ci.sh +86 -0
  16. package/deps/libmdbx/cmake/compiler.cmake +1 -1
  17. package/deps/libmdbx/cmake/profile.cmake +1 -1
  18. package/deps/libmdbx/cmake/utils.cmake +15 -197
  19. package/deps/libmdbx/{src/config.h.in → config.h.in} +11 -3
  20. package/deps/libmdbx/{src/man1 → man1}/mdbx_chk.1 +1 -1
  21. package/deps/libmdbx/{src/man1 → man1}/mdbx_copy.1 +1 -1
  22. package/deps/libmdbx/{src/man1 → man1}/mdbx_drop.1 +1 -1
  23. package/deps/libmdbx/{src/man1 → man1}/mdbx_dump.1 +1 -1
  24. package/deps/libmdbx/{src/man1 → man1}/mdbx_load.1 +1 -1
  25. package/deps/libmdbx/{src/man1 → man1}/mdbx_stat.1 +1 -1
  26. package/deps/libmdbx/mdbx.c +37619 -0
  27. package/deps/libmdbx/mdbx.c++ +5074 -0
  28. package/deps/libmdbx/mdbx.h +85 -16
  29. package/deps/libmdbx/mdbx.h++ +429 -253
  30. package/deps/libmdbx/mdbx_chk.c +3997 -0
  31. package/deps/libmdbx/mdbx_copy.c +3490 -0
  32. package/deps/libmdbx/mdbx_drop.c +3523 -0
  33. package/deps/libmdbx/mdbx_dump.c +3839 -0
  34. package/deps/libmdbx/mdbx_load.c +4155 -0
  35. package/deps/libmdbx/mdbx_stat.c +3840 -0
  36. package/deps/libmdbx/packages/archlinux/.SRCINFO +16 -0
  37. package/deps/libmdbx/packages/archlinux/PKGBUILD +38 -0
  38. package/deps/libmdbx/packages/buildroot/0001-package-libmdbx.patch +75 -0
  39. package/deps/libmdbx/ut_and_examples/CMakeLists.txt +39 -0
  40. package/deps/libmdbx/ut_and_examples/README.md +11 -0
  41. package/deps/libmdbx/{example → ut_and_examples}/example-mdbx.c +17 -4
  42. package/deps/libmdbx/ut_and_examples/example-mdbx.c++ +99 -0
  43. package/deps/libmdbx/{test/extra/pcrf/pcrf_test.c → ut_and_examples/pcrf/pcrf_simulator.c} +3 -16
  44. package/package.json +1 -1
  45. package/src/txnmou.cpp +3 -7
  46. package/deps/libmdbx/.clang-format +0 -3
  47. package/deps/libmdbx/.cmake-format.yaml +0 -3
  48. package/deps/libmdbx/.le.ini +0 -40
  49. package/deps/libmdbx/TODO.md +0 -43
  50. package/deps/libmdbx/conanfile.py +0 -323
  51. package/deps/libmdbx/docs/Doxyfile.in +0 -2734
  52. package/deps/libmdbx/docs/_preface.md +0 -47
  53. package/deps/libmdbx/docs/_restrictions.md +0 -248
  54. package/deps/libmdbx/docs/_starting.md +0 -245
  55. package/deps/libmdbx/docs/_toc.md +0 -34
  56. package/deps/libmdbx/docs/header.html +0 -96
  57. package/deps/libmdbx/example/CMakeLists.txt +0 -6
  58. package/deps/libmdbx/example/README.md +0 -1
  59. package/deps/libmdbx/example/sample-bdb.txt +0 -77
  60. package/deps/libmdbx/packages/buildroot/0001-package-libmdbx-new-package-library-database.patch +0 -173
  61. package/deps/libmdbx/src/alloy.c +0 -54
  62. package/deps/libmdbx/src/api-cold.c +0 -543
  63. package/deps/libmdbx/src/api-copy.c +0 -912
  64. package/deps/libmdbx/src/api-cursor.c +0 -754
  65. package/deps/libmdbx/src/api-dbi.c +0 -315
  66. package/deps/libmdbx/src/api-env.c +0 -1434
  67. package/deps/libmdbx/src/api-extra.c +0 -165
  68. package/deps/libmdbx/src/api-key-transform.c +0 -197
  69. package/deps/libmdbx/src/api-misc.c +0 -286
  70. package/deps/libmdbx/src/api-opts.c +0 -575
  71. package/deps/libmdbx/src/api-range-estimate.c +0 -365
  72. package/deps/libmdbx/src/api-txn-data.c +0 -454
  73. package/deps/libmdbx/src/api-txn.c +0 -921
  74. package/deps/libmdbx/src/atomics-ops.h +0 -364
  75. package/deps/libmdbx/src/atomics-types.h +0 -97
  76. package/deps/libmdbx/src/audit.c +0 -109
  77. package/deps/libmdbx/src/bits.md +0 -34
  78. package/deps/libmdbx/src/chk.c +0 -1796
  79. package/deps/libmdbx/src/cogs.c +0 -309
  80. package/deps/libmdbx/src/cogs.h +0 -506
  81. package/deps/libmdbx/src/coherency.c +0 -170
  82. package/deps/libmdbx/src/cursor.c +0 -2396
  83. package/deps/libmdbx/src/cursor.h +0 -391
  84. package/deps/libmdbx/src/dbi.c +0 -717
  85. package/deps/libmdbx/src/dbi.h +0 -142
  86. package/deps/libmdbx/src/debug_begin.h +0 -36
  87. package/deps/libmdbx/src/debug_end.h +0 -15
  88. package/deps/libmdbx/src/dpl.c +0 -486
  89. package/deps/libmdbx/src/dpl.h +0 -134
  90. package/deps/libmdbx/src/dxb.c +0 -1335
  91. package/deps/libmdbx/src/env.c +0 -607
  92. package/deps/libmdbx/src/essentials.h +0 -125
  93. package/deps/libmdbx/src/gc-get.c +0 -1345
  94. package/deps/libmdbx/src/gc-put.c +0 -970
  95. package/deps/libmdbx/src/gc.h +0 -40
  96. package/deps/libmdbx/src/global.c +0 -474
  97. package/deps/libmdbx/src/internals.h +0 -585
  98. package/deps/libmdbx/src/layout-dxb.h +0 -288
  99. package/deps/libmdbx/src/layout-lck.h +0 -289
  100. package/deps/libmdbx/src/lck-posix.c +0 -859
  101. package/deps/libmdbx/src/lck-windows.c +0 -607
  102. package/deps/libmdbx/src/lck.c +0 -174
  103. package/deps/libmdbx/src/lck.h +0 -110
  104. package/deps/libmdbx/src/logging_and_debug.c +0 -250
  105. package/deps/libmdbx/src/logging_and_debug.h +0 -159
  106. package/deps/libmdbx/src/mdbx.c++ +0 -1837
  107. package/deps/libmdbx/src/meta.c +0 -656
  108. package/deps/libmdbx/src/meta.h +0 -168
  109. package/deps/libmdbx/src/mvcc-readers.c +0 -414
  110. package/deps/libmdbx/src/node.c +0 -365
  111. package/deps/libmdbx/src/node.h +0 -102
  112. package/deps/libmdbx/src/options.h +0 -534
  113. package/deps/libmdbx/src/osal.c +0 -3485
  114. package/deps/libmdbx/src/osal.h +0 -587
  115. package/deps/libmdbx/src/page-get.c +0 -483
  116. package/deps/libmdbx/src/page-iov.c +0 -185
  117. package/deps/libmdbx/src/page-iov.h +0 -34
  118. package/deps/libmdbx/src/page-ops.c +0 -744
  119. package/deps/libmdbx/src/page-ops.h +0 -142
  120. package/deps/libmdbx/src/pnl.c +0 -236
  121. package/deps/libmdbx/src/pnl.h +0 -146
  122. package/deps/libmdbx/src/preface.h +0 -990
  123. package/deps/libmdbx/src/proto.h +0 -105
  124. package/deps/libmdbx/src/refund.c +0 -212
  125. package/deps/libmdbx/src/sort.h +0 -484
  126. package/deps/libmdbx/src/spill.c +0 -431
  127. package/deps/libmdbx/src/spill.h +0 -74
  128. package/deps/libmdbx/src/table.c +0 -107
  129. package/deps/libmdbx/src/tls.c +0 -551
  130. package/deps/libmdbx/src/tls.h +0 -43
  131. package/deps/libmdbx/src/tools/chk.c +0 -673
  132. package/deps/libmdbx/src/tools/copy.c +0 -166
  133. package/deps/libmdbx/src/tools/drop.c +0 -199
  134. package/deps/libmdbx/src/tools/dump.c +0 -515
  135. package/deps/libmdbx/src/tools/load.c +0 -831
  136. package/deps/libmdbx/src/tools/stat.c +0 -516
  137. package/deps/libmdbx/src/tools/wingetopt.c +0 -87
  138. package/deps/libmdbx/src/tools/wingetopt.h +0 -30
  139. package/deps/libmdbx/src/tree-ops.c +0 -1554
  140. package/deps/libmdbx/src/tree-search.c +0 -140
  141. package/deps/libmdbx/src/txl.c +0 -99
  142. package/deps/libmdbx/src/txl.h +0 -26
  143. package/deps/libmdbx/src/txn.c +0 -1083
  144. package/deps/libmdbx/src/unaligned.h +0 -205
  145. package/deps/libmdbx/src/utils.c +0 -32
  146. package/deps/libmdbx/src/utils.h +0 -76
  147. package/deps/libmdbx/src/version.c.in +0 -44
  148. package/deps/libmdbx/src/walk.c +0 -290
  149. package/deps/libmdbx/src/walk.h +0 -20
  150. package/deps/libmdbx/src/windows-import.c +0 -152
  151. package/deps/libmdbx/src/windows-import.h +0 -128
  152. package/deps/libmdbx/test/CMakeLists.txt +0 -317
  153. package/deps/libmdbx/test/append.c++ +0 -237
  154. package/deps/libmdbx/test/base.h++ +0 -92
  155. package/deps/libmdbx/test/battery-tmux.sh +0 -64
  156. package/deps/libmdbx/test/cases.c++ +0 -118
  157. package/deps/libmdbx/test/chrono.c++ +0 -134
  158. package/deps/libmdbx/test/chrono.h++ +0 -85
  159. package/deps/libmdbx/test/config.c++ +0 -643
  160. package/deps/libmdbx/test/config.h++ +0 -334
  161. package/deps/libmdbx/test/copy.c++ +0 -62
  162. package/deps/libmdbx/test/dead.c++ +0 -39
  163. package/deps/libmdbx/test/dump-load.sh +0 -40
  164. package/deps/libmdbx/test/extra/crunched_delete.c++ +0 -409
  165. package/deps/libmdbx/test/extra/cursor_closing.c++ +0 -410
  166. package/deps/libmdbx/test/extra/dbi.c++ +0 -229
  167. package/deps/libmdbx/test/extra/doubtless_positioning.c++ +0 -253
  168. package/deps/libmdbx/test/extra/dupfix_addodd.c +0 -94
  169. package/deps/libmdbx/test/extra/dupfix_multiple.c++ +0 -311
  170. package/deps/libmdbx/test/extra/early_close_dbi.c++ +0 -137
  171. package/deps/libmdbx/test/extra/hex_base64_base58.c++ +0 -118
  172. package/deps/libmdbx/test/extra/maindb_ordinal.c++ +0 -61
  173. package/deps/libmdbx/test/extra/open.c++ +0 -96
  174. package/deps/libmdbx/test/extra/pcrf/README.md +0 -2
  175. package/deps/libmdbx/test/extra/probe.c++ +0 -10
  176. package/deps/libmdbx/test/extra/txn.c++ +0 -407
  177. package/deps/libmdbx/test/extra/upsert_alldups.c +0 -193
  178. package/deps/libmdbx/test/fork.c++ +0 -263
  179. package/deps/libmdbx/test/hill.c++ +0 -447
  180. package/deps/libmdbx/test/jitter.c++ +0 -197
  181. package/deps/libmdbx/test/keygen.c++ +0 -393
  182. package/deps/libmdbx/test/keygen.h++ +0 -130
  183. package/deps/libmdbx/test/log.c++ +0 -358
  184. package/deps/libmdbx/test/log.h++ +0 -91
  185. package/deps/libmdbx/test/main.c++ +0 -706
  186. package/deps/libmdbx/test/nested.c++ +0 -318
  187. package/deps/libmdbx/test/osal-unix.c++ +0 -647
  188. package/deps/libmdbx/test/osal-windows.c++ +0 -440
  189. package/deps/libmdbx/test/osal.h++ +0 -41
  190. package/deps/libmdbx/test/stochastic.sh +0 -690
  191. package/deps/libmdbx/test/stub/LICENSE +0 -24
  192. package/deps/libmdbx/test/stub/README.md +0 -8
  193. package/deps/libmdbx/test/stub/pthread_barrier.c +0 -104
  194. package/deps/libmdbx/test/stub/pthread_barrier.h +0 -77
  195. package/deps/libmdbx/test/test.c++ +0 -1551
  196. package/deps/libmdbx/test/test.h++ +0 -298
  197. package/deps/libmdbx/test/tmux.conf +0 -3
  198. package/deps/libmdbx/test/try.c++ +0 -30
  199. package/deps/libmdbx/test/ttl.c++ +0 -240
  200. package/deps/libmdbx/test/utils.c++ +0 -203
  201. package/deps/libmdbx/test/utils.h++ +0 -326
  202. package/deps/libmdbx/test/valgrind_suppress.txt +0 -536
  203. /package/deps/libmdbx/{src/ntdll.def → ntdll.def} +0 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # mdbxmou
2
2
 
3
- High-performance Node.js binding for libmdbx — a fast, lightweight, embedded key-value database.
3
+ High-performance Node.js binding for [libmdbx](https://github.com/erthink/libmdbx) — a fast, lightweight, embedded key-value database.
4
4
 
5
5
  ## Features
6
6
 
@@ -0,0 +1,8 @@
1
+ mdbx.c
2
+ mdbx.c++
3
+ mdbx_chk.c
4
+ mdbx_copy.c
5
+ mdbx_drop.c
6
+ mdbx_dump.c
7
+ mdbx_load.c
8
+ mdbx_stat.c
@@ -0,0 +1,38 @@
1
+ name: ci-android
2
+
3
+ env:
4
+ CI: GITHUB
5
+
6
+ concurrency:
7
+ group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
8
+ cancel-in-progress: true
9
+
10
+ on: [push]
11
+
12
+ jobs:
13
+ ci-job:
14
+ runs-on: ${{ matrix.os }}
15
+ strategy:
16
+ fail-fast: false
17
+ matrix:
18
+ ndk: [r26d, r27c]
19
+ target: [arm64-v8a, "armeabi-v7a with NEON", x86_64]
20
+ build-type: [Debug, Release]
21
+ os: [ubuntu-latest]
22
+ exclude:
23
+ - ndk: r26d
24
+ build-type: Debug
25
+ steps:
26
+ - uses: actions/checkout@v4
27
+ - uses: nttld/setup-ndk@v1
28
+ id: setup-ndk
29
+ with:
30
+ ndk-version: ${{ matrix.ndk }}
31
+ add-to-path: true
32
+ - name: ci-step
33
+ env:
34
+ ANDROID_NDK_HOME: ${{ steps.setup-ndk.outputs.ndk-path }}
35
+ CI_MAKE_TARGET: ""
36
+ shell: bash
37
+ run: |
38
+ . ci.sh "-DANDROID_ABI=${{ matrix.target }}|-DCMAKE_TOOLCHAIN_FILE:PATH=${{ steps.setup-ndk.outputs.ndk-path }}/build/cmake/android.toolchain.cmake|-DCMAKE_BUILD_TYPE=${{ matrix.build-type }}"
@@ -0,0 +1,40 @@
1
+ name: ci-mingw
2
+
3
+ env:
4
+ CI: GITHUB
5
+
6
+ concurrency:
7
+ group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
8
+ cancel-in-progress: true
9
+
10
+ on: [push]
11
+
12
+ jobs:
13
+ ci-job:
14
+ runs-on: ${{ matrix.os }}
15
+ strategy:
16
+ fail-fast: false
17
+ matrix:
18
+ build-type: [Debug, Release]
19
+ dll: [ON, OFF]
20
+ without_crt: [ON, OFF]
21
+ os: [windows-latest]
22
+ exclude:
23
+ - build-type: Debug
24
+ dll: OFF
25
+ - build-type: Release
26
+ without_crt: ON
27
+ steps:
28
+ - uses: actions/checkout@v4
29
+ # - name: Update mingw64
30
+ # run: choco upgrade mingw -y --no-progress
31
+ - name: ci-step
32
+ shell: bash
33
+ env:
34
+ CI_MAKE_TARGET: smoke
35
+ run: |
36
+ echo "initial-PATH=$PATH" && \
37
+ export "PATH=/c/mingw64/bin:/c/programdata/mingw64/mingw64/bin:$PATH" && \
38
+ export MDBX_BUILD_OPTIONS=$(if [ "${{ matrix.build-type }}" = 'Debug' ]; then echo '-DMDBX_FORCE_ASSERTIONS=1'; else echo '-DNDEBUG=1'; fi) && \
39
+ export MDBX_BUILD_CXX=$(if [ "${{ matrix.without_crt }}" = 'OFF' ]; then echo 'YES'; else echo 'NO'; fi) && \
40
+ . ci.sh "-G|MinGW Makefiles|-DCMAKE_BUILD_TYPE=${{ matrix.build-type }}|-DMDBX_BUILD_SHARED_LIBRARY:BOOL=${{ matrix.dll }}|-DMDBX_WITHOUT_MSVC_CRT:BOOL=${{ matrix.without_crt }}"
@@ -0,0 +1,34 @@
1
+ name: ci-posix
2
+
3
+ env:
4
+ CI: GITHUB
5
+
6
+ concurrency:
7
+ group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
8
+ cancel-in-progress: true
9
+
10
+ on: [push]
11
+
12
+ jobs:
13
+ ci-job:
14
+ runs-on: ${{ matrix.os }}
15
+ strategy:
16
+ fail-fast: false
17
+ matrix:
18
+ os: [ubuntu-24.04, macos-14, macos-26]
19
+ build-type: [Debug, Release]
20
+ # alloy: [ON, OFF]
21
+ cxx: [ON, OFF]
22
+ # exclude:
23
+ # - os: macos-14
24
+ # cxx: OFF
25
+ # alloy: ON
26
+ steps:
27
+ - uses: actions/checkout@v4
28
+ - name: ci-step
29
+ shell: bash
30
+ run: |
31
+ export CI_MAKE_TARGET=$(if [ "$(uname)" = 'Linux' ]; then echo 'check'; elif [ "${{ matrix.build-type }}" != 'Debug' ]; then echo 'test'; else echo 'smoke'; fi) && \
32
+ export MDBX_BUILD_OPTIONS=$(if [ "${{ matrix.build-type }}" = 'Debug' ]; then echo '-DMDBX_FORCE_ASSERTIONS=1'; else echo '-DNDEBUG=1'; fi) && \
33
+ export MDBX_BUILD_CXX=$(if [ "${{ matrix.cxx }}" = 'ON' ]; then echo 'YES'; else echo 'NO'; fi) && \
34
+ . ci.sh "-DCMAKE_BUILD_TYPE=${{ matrix.build-type }}|-DMDBX_BUILD_CXX:BOOL=${{ matrix.cxx }}"
@@ -0,0 +1,45 @@
1
+ name: ci-wincxx
2
+
3
+ env:
4
+ CI: GITHUB
5
+
6
+ concurrency:
7
+ group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
8
+ cancel-in-progress: true
9
+
10
+ on: [push]
11
+
12
+ jobs:
13
+ ci-job:
14
+ strategy:
15
+ fail-fast: false
16
+ matrix:
17
+ toolset: [v142, v143]
18
+ cxx: [11, 14, 17, 20]
19
+ target: [Win32, x64, ARM64]
20
+ build-type: [Debug, Release]
21
+ os: [windows-latest, windows-2022]
22
+ exclude:
23
+ - os: windows-latest
24
+ toolset: v142
25
+ - os: windows-latest
26
+ cxx: 11
27
+ - os: windows-2022
28
+ toolset: v143
29
+ - os: windows-2022
30
+ cxx: 20
31
+ # - target: x64
32
+ # build-type: Debug
33
+ - target: ARM64
34
+ toolset: v142
35
+ runs-on: ${{ matrix.os }}
36
+ steps:
37
+ - uses: actions/checkout@v4
38
+ - name: ci-step
39
+ env:
40
+ CI_MAKE_TARGET: ""
41
+ CXXSTD: "-std=gnu++${{ matrix.cxx }}"
42
+ shell: bash
43
+ run: |
44
+ . ci.sh "-A|${{ matrix.target }}|-T|${{ matrix.toolset }}|-DCMAKE_BUILD_TYPE=${{ matrix.build-type }}|-DCMAKE_CXX_STANDARD=${{ matrix.cxx }}" \
45
+ "--config|${{ matrix.build-type }}" "--build-config|${{ matrix.build-type }}"
@@ -0,0 +1,32 @@
1
+ name: ci-windows
2
+
3
+ env:
4
+ CI: GITHUB
5
+
6
+ concurrency:
7
+ group: ${{ github.workflow }}-${{ github.head_ref || github.ref }}
8
+ cancel-in-progress: true
9
+
10
+ on: [push]
11
+
12
+ jobs:
13
+ ci-job:
14
+ strategy:
15
+ fail-fast: false
16
+ matrix:
17
+ toolset: [v143]
18
+ dll: [ON, OFF]
19
+ without_crt: [ON, OFF]
20
+ target: [x64, Win32]
21
+ build-type: [Debug, Release]
22
+ os: [windows-latest]
23
+ runs-on: ${{ matrix.os }}
24
+ steps:
25
+ - uses: actions/checkout@v4
26
+ - name: ci-step
27
+ env:
28
+ CI_MAKE_TARGET: ""
29
+ shell: bash
30
+ run: |
31
+ . ci.sh "-A|${{ matrix.target }}|-T|${{ matrix.toolset }}|-DCMAKE_BUILD_TYPE=${{ matrix.build-type }}|-DMDBX_BUILD_SHARED_LIBRARY:BOOL=${{ matrix.dll }}|-DMDBX_WITHOUT_MSVC_CRT:BOOL=${{ matrix.without_crt }}" \
32
+ "--config|${{ matrix.build-type }}" "--build-config|${{ matrix.build-type }}"