pocketpy-numpy 0.1.0__tar.gz

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 (331) hide show
  1. pocketpy_numpy-0.1.0/.github/workflows/npm-publish.yml +55 -0
  2. pocketpy_numpy-0.1.0/.github/workflows/pip.yml +30 -0
  3. pocketpy_numpy-0.1.0/.github/workflows/wheels.yml +93 -0
  4. pocketpy_numpy-0.1.0/.gitignore +39 -0
  5. pocketpy_numpy-0.1.0/.pre-commit-config.yaml +59 -0
  6. pocketpy_numpy-0.1.0/3rd/lz4/CMakeLists.txt +16 -0
  7. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.circleci/config.yml +75 -0
  8. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.circleci/images/primary/Dockerfile +12 -0
  9. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.cirrus.yml +9 -0
  10. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.clang-format +132 -0
  11. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.gitattributes +21 -0
  12. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.github/ISSUE_TEMPLATE/bug_report.md +32 -0
  13. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  14. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.github/dependabot.yaml +7 -0
  15. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.github/workflows/README.md +49 -0
  16. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.github/workflows/ci.yml +828 -0
  17. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.github/workflows/scorecard.yml +65 -0
  18. pocketpy_numpy-0.1.0/3rd/lz4/lz4/.gitignore +52 -0
  19. pocketpy_numpy-0.1.0/3rd/lz4/lz4/CODING_STYLE +57 -0
  20. pocketpy_numpy-0.1.0/3rd/lz4/lz4/INSTALL +16 -0
  21. pocketpy_numpy-0.1.0/3rd/lz4/lz4/LICENSE +12 -0
  22. pocketpy_numpy-0.1.0/3rd/lz4/lz4/Makefile +274 -0
  23. pocketpy_numpy-0.1.0/3rd/lz4/lz4/Makefile.inc +113 -0
  24. pocketpy_numpy-0.1.0/3rd/lz4/lz4/NEWS +366 -0
  25. pocketpy_numpy-0.1.0/3rd/lz4/lz4/README.md +131 -0
  26. pocketpy_numpy-0.1.0/3rd/lz4/lz4/SECURITY.md +17 -0
  27. pocketpy_numpy-0.1.0/3rd/lz4/lz4/appveyor.yml +141 -0
  28. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/changelog +10 -0
  29. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/compat +1 -0
  30. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/control +23 -0
  31. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/copyright +9 -0
  32. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/dirs +1 -0
  33. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/docs +0 -0
  34. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/liblz4-dev.install +2 -0
  35. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/liblz4.install +2 -0
  36. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/debian/rules +7 -0
  37. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/djgpp/LICENSE +24 -0
  38. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/djgpp/Makefile +130 -0
  39. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/djgpp/README.MD +21 -0
  40. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/gen_manual/.gitignore +2 -0
  41. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/gen_manual/Makefile +76 -0
  42. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/gen_manual/README.md +31 -0
  43. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/gen_manual/gen-lz4-manual.sh +10 -0
  44. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/gen_manual/gen_manual.cpp +248 -0
  45. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/snap/README.md +29 -0
  46. pocketpy_numpy-0.1.0/3rd/lz4/lz4/contrib/snap/snapcraft.yaml +32 -0
  47. pocketpy_numpy-0.1.0/3rd/lz4/lz4/doc/lz4_Block_format.md +244 -0
  48. pocketpy_numpy-0.1.0/3rd/lz4/lz4/doc/lz4_Frame_format.md +438 -0
  49. pocketpy_numpy-0.1.0/3rd/lz4/lz4/doc/lz4_manual.html +683 -0
  50. pocketpy_numpy-0.1.0/3rd/lz4/lz4/doc/lz4frame_manual.html +508 -0
  51. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/.gitignore +12 -0
  52. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/COPYING +83 -0
  53. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/Makefile +95 -0
  54. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/README.md +11 -0
  55. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/bench_functions.c +373 -0
  56. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/blockStreaming_doubleBuffer.c +202 -0
  57. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/blockStreaming_doubleBuffer.md +100 -0
  58. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/blockStreaming_lineByLine.c +211 -0
  59. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/blockStreaming_lineByLine.md +122 -0
  60. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/blockStreaming_ringBuffer.c +190 -0
  61. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/dictionaryRandomAccess.c +280 -0
  62. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/dictionaryRandomAccess.md +67 -0
  63. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/fileCompress.c +233 -0
  64. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/frameCompress.c +489 -0
  65. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/print_version.c +13 -0
  66. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/simple_buffer.c +99 -0
  67. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/streamingHC_ringBuffer.c +232 -0
  68. pocketpy_numpy-0.1.0/3rd/lz4/lz4/examples/streaming_api_basics.md +87 -0
  69. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/.gitignore +2 -0
  70. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/LICENSE +24 -0
  71. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/Makefile +244 -0
  72. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/README.md +193 -0
  73. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/dll/example/Makefile +63 -0
  74. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/dll/example/README.md +69 -0
  75. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/dll/example/fullbench-dll.sln +25 -0
  76. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/dll/example/fullbench-dll.vcxproj +182 -0
  77. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/liblz4-dll.rc.in +35 -0
  78. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/liblz4.pc.in +14 -0
  79. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4.c +2829 -0
  80. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4.h +884 -0
  81. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4file.c +341 -0
  82. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4file.h +93 -0
  83. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4frame.c +2136 -0
  84. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4frame.h +751 -0
  85. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4frame_static.h +47 -0
  86. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4hc.c +2192 -0
  87. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/lz4hc.h +414 -0
  88. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/xxhash.c +1030 -0
  89. pocketpy_numpy-0.1.0/3rd/lz4/lz4/lib/xxhash.h +328 -0
  90. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/.gitignore +8 -0
  91. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/Makefile +79 -0
  92. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/compress_frame_fuzzer.c +48 -0
  93. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/compress_fuzzer.c +58 -0
  94. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/compress_hc_fuzzer.c +64 -0
  95. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/decompress_frame_fuzzer.c +75 -0
  96. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/decompress_fuzzer.c +78 -0
  97. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/fuzz.h +48 -0
  98. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/fuzz_data_producer.c +77 -0
  99. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/fuzz_data_producer.h +36 -0
  100. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/fuzz_helpers.h +95 -0
  101. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/lz4_helpers.c +51 -0
  102. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/lz4_helpers.h +13 -0
  103. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/ossfuzz.sh +23 -0
  104. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/round_trip_frame_fuzzer.c +43 -0
  105. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/round_trip_frame_uncompressed_fuzzer.c +134 -0
  106. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/round_trip_fuzzer.c +117 -0
  107. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/round_trip_hc_fuzzer.c +44 -0
  108. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/round_trip_stream_fuzzer.c +302 -0
  109. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/standaloneengine.c +74 -0
  110. pocketpy_numpy-0.1.0/3rd/lz4/lz4/ossfuzz/travisoss.sh +26 -0
  111. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/.gitignore +22 -0
  112. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/COPYING +83 -0
  113. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/Makefile +236 -0
  114. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/README.md +114 -0
  115. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/bench.c +865 -0
  116. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/bench.h +54 -0
  117. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lorem.c +366 -0
  118. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lorem.h +46 -0
  119. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lz4-exe.rc.in +26 -0
  120. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lz4.1 +264 -0
  121. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lz4.1.md +273 -0
  122. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lz4cli.c +887 -0
  123. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lz4conf.h +71 -0
  124. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lz4io.c +2897 -0
  125. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/lz4io.h +135 -0
  126. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/platform.h +157 -0
  127. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/threadpool.c +430 -0
  128. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/threadpool.h +68 -0
  129. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/timefn.c +175 -0
  130. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/timefn.h +72 -0
  131. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/util.c +165 -0
  132. pocketpy_numpy-0.1.0/3rd/lz4/lz4/programs/util.h +567 -0
  133. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/.gitignore +28 -0
  134. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/COPYING +83 -0
  135. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/Makefile +397 -0
  136. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/README.md +71 -0
  137. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/abiTest.c +218 -0
  138. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/checkFrame.c +312 -0
  139. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/checkTag.c +79 -0
  140. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/check_liblz4_version.sh +6 -0
  141. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/cmake/CMakeLists.txt +28 -0
  142. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/datagen.c +188 -0
  143. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/datagen.h +42 -0
  144. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/datagencli.c +155 -0
  145. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/decompress-partial-usingDict.c +103 -0
  146. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/decompress-partial.c +49 -0
  147. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/frametest.c +1483 -0
  148. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/freestanding.c +238 -0
  149. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/fullbench.c +998 -0
  150. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/fuzzer.c +1904 -0
  151. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/goldenSamples/skip.bin +0 -0
  152. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/loremOut.c +62 -0
  153. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/loremOut.h +30 -0
  154. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/roundTripTest.c +248 -0
  155. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-abi.py +188 -0
  156. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-basic.sh +85 -0
  157. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-contentSize.sh +27 -0
  158. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-dict.sh +46 -0
  159. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-fast-hugefile.sh +21 -0
  160. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-frame-concatenation.sh +21 -0
  161. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-list.py +267 -0
  162. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-multiple-legacy.sh +51 -0
  163. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-multiple.sh +58 -0
  164. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-opt-parser.sh +16 -0
  165. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-skippable.sh +19 -0
  166. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-sparse.sh +42 -0
  167. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-speed.py +351 -0
  168. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-testmode.sh +38 -0
  169. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4-versions.py +186 -0
  170. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test-lz4hc-hugefile.sh +6 -0
  171. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test_custom_block_sizes.sh +72 -0
  172. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/test_install.sh +28 -0
  173. pocketpy_numpy-0.1.0/3rd/lz4/lz4/tests/unicode_lint.sh +48 -0
  174. pocketpy_numpy-0.1.0/3rd/msgpack/CMakeLists.txt +15 -0
  175. pocketpy_numpy-0.1.0/3rd/msgpack/include/mpack.h +8207 -0
  176. pocketpy_numpy-0.1.0/3rd/msgpack/src/bindings.c +174 -0
  177. pocketpy_numpy-0.1.0/3rd/msgpack/src/mpack.c +7304 -0
  178. pocketpy_numpy-0.1.0/CLAUDE.md +81 -0
  179. pocketpy_numpy-0.1.0/CMakeLists.txt +104 -0
  180. pocketpy_numpy-0.1.0/LICENSE +21 -0
  181. pocketpy_numpy-0.1.0/Makefile +42 -0
  182. pocketpy_numpy-0.1.0/PKG-INFO +49 -0
  183. pocketpy_numpy-0.1.0/README.md +29 -0
  184. pocketpy_numpy-0.1.0/build_wasm.sh +53 -0
  185. pocketpy_numpy-0.1.0/docs/index.html +251 -0
  186. pocketpy_numpy-0.1.0/docs/lib/package.json +19 -0
  187. pocketpy_numpy-0.1.0/docs/lib/pocketpy.js +1 -0
  188. pocketpy_numpy-0.1.0/docs/lib/pocketpy.wasm +0 -0
  189. pocketpy_numpy-0.1.0/docs/test_sources.js +1 -0
  190. pocketpy_numpy-0.1.0/include/Eigen/Core +82374 -0
  191. pocketpy_numpy-0.1.0/include/Eigen/SparseCore +11369 -0
  192. pocketpy_numpy-0.1.0/include/pkbind/eigen.h +225 -0
  193. pocketpy_numpy-0.1.0/include/pkbind/embed.h +3 -0
  194. pocketpy_numpy-0.1.0/include/pkbind/internal/accessor.h +190 -0
  195. pocketpy_numpy-0.1.0/include/pkbind/internal/builtins.h +214 -0
  196. pocketpy_numpy-0.1.0/include/pkbind/internal/cast.h +200 -0
  197. pocketpy_numpy-0.1.0/include/pkbind/internal/class.h +222 -0
  198. pocketpy_numpy-0.1.0/include/pkbind/internal/error.h +132 -0
  199. pocketpy_numpy-0.1.0/include/pkbind/internal/function.h +700 -0
  200. pocketpy_numpy-0.1.0/include/pkbind/internal/instance.h +112 -0
  201. pocketpy_numpy-0.1.0/include/pkbind/internal/kernel.h +140 -0
  202. pocketpy_numpy-0.1.0/include/pkbind/internal/module.h +73 -0
  203. pocketpy_numpy-0.1.0/include/pkbind/internal/object.h +290 -0
  204. pocketpy_numpy-0.1.0/include/pkbind/internal/type_traits.h +238 -0
  205. pocketpy_numpy-0.1.0/include/pkbind/internal/types.h +376 -0
  206. pocketpy_numpy-0.1.0/include/pkbind/ndarray_binding.hpp +3457 -0
  207. pocketpy_numpy-0.1.0/include/pkbind/numpy.hpp +1086 -0
  208. pocketpy_numpy-0.1.0/include/pkbind/operators.h +207 -0
  209. pocketpy_numpy-0.1.0/include/pkbind/pkbind.h +3 -0
  210. pocketpy_numpy-0.1.0/include/pkbind/pybind11.h +50 -0
  211. pocketpy_numpy-0.1.0/include/pkbind/stl.h +157 -0
  212. pocketpy_numpy-0.1.0/include/pocketpy.h +1150 -0
  213. pocketpy_numpy-0.1.0/include/xtensor/chunk/xchunked_array.hpp +638 -0
  214. pocketpy_numpy-0.1.0/include/xtensor/chunk/xchunked_assign.hpp +317 -0
  215. pocketpy_numpy-0.1.0/include/xtensor/chunk/xchunked_view.hpp +242 -0
  216. pocketpy_numpy-0.1.0/include/xtensor/containers/xadapt.hpp +868 -0
  217. pocketpy_numpy-0.1.0/include/xtensor/containers/xarray.hpp +636 -0
  218. pocketpy_numpy-0.1.0/include/xtensor/containers/xbuffer_adaptor.hpp +1137 -0
  219. pocketpy_numpy-0.1.0/include/xtensor/containers/xcontainer.hpp +1105 -0
  220. pocketpy_numpy-0.1.0/include/xtensor/containers/xfixed.hpp +953 -0
  221. pocketpy_numpy-0.1.0/include/xtensor/containers/xscalar.hpp +983 -0
  222. pocketpy_numpy-0.1.0/include/xtensor/containers/xstorage.hpp +1696 -0
  223. pocketpy_numpy-0.1.0/include/xtensor/containers/xtensor.hpp +921 -0
  224. pocketpy_numpy-0.1.0/include/xtensor/core/xaccessible.hpp +322 -0
  225. pocketpy_numpy-0.1.0/include/xtensor/core/xassign.hpp +1179 -0
  226. pocketpy_numpy-0.1.0/include/xtensor/core/xeval.hpp +170 -0
  227. pocketpy_numpy-0.1.0/include/xtensor/core/xexpression.hpp +667 -0
  228. pocketpy_numpy-0.1.0/include/xtensor/core/xexpression_traits.hpp +159 -0
  229. pocketpy_numpy-0.1.0/include/xtensor/core/xfunction.hpp +1102 -0
  230. pocketpy_numpy-0.1.0/include/xtensor/core/xiterable.hpp +1364 -0
  231. pocketpy_numpy-0.1.0/include/xtensor/core/xiterator.hpp +1031 -0
  232. pocketpy_numpy-0.1.0/include/xtensor/core/xlayout.hpp +97 -0
  233. pocketpy_numpy-0.1.0/include/xtensor/core/xmath.hpp +3085 -0
  234. pocketpy_numpy-0.1.0/include/xtensor/core/xmultiindex_iterator.hpp +103 -0
  235. pocketpy_numpy-0.1.0/include/xtensor/core/xnoalias.hpp +195 -0
  236. pocketpy_numpy-0.1.0/include/xtensor/core/xoperation.hpp +939 -0
  237. pocketpy_numpy-0.1.0/include/xtensor/core/xsemantic.hpp +749 -0
  238. pocketpy_numpy-0.1.0/include/xtensor/core/xshape.hpp +458 -0
  239. pocketpy_numpy-0.1.0/include/xtensor/core/xstrides.hpp +805 -0
  240. pocketpy_numpy-0.1.0/include/xtensor/core/xtensor_config.hpp +137 -0
  241. pocketpy_numpy-0.1.0/include/xtensor/core/xtensor_forward.hpp +204 -0
  242. pocketpy_numpy-0.1.0/include/xtensor/core/xvectorize.hpp +95 -0
  243. pocketpy_numpy-0.1.0/include/xtensor/generators/xbuilder.hpp +1078 -0
  244. pocketpy_numpy-0.1.0/include/xtensor/generators/xgenerator.hpp +491 -0
  245. pocketpy_numpy-0.1.0/include/xtensor/generators/xrandom.hpp +911 -0
  246. pocketpy_numpy-0.1.0/include/xtensor/io/xcsv.hpp +228 -0
  247. pocketpy_numpy-0.1.0/include/xtensor/io/xinfo.hpp +121 -0
  248. pocketpy_numpy-0.1.0/include/xtensor/io/xio.hpp +668 -0
  249. pocketpy_numpy-0.1.0/include/xtensor/io/xjson.hpp +171 -0
  250. pocketpy_numpy-0.1.0/include/xtensor/io/xmime.hpp +334 -0
  251. pocketpy_numpy-0.1.0/include/xtensor/io/xnpy.hpp +677 -0
  252. pocketpy_numpy-0.1.0/include/xtensor/misc/xcomplex.hpp +216 -0
  253. pocketpy_numpy-0.1.0/include/xtensor/misc/xexpression_holder.hpp +234 -0
  254. pocketpy_numpy-0.1.0/include/xtensor/misc/xfft.hpp +215 -0
  255. pocketpy_numpy-0.1.0/include/xtensor/misc/xhistogram.hpp +549 -0
  256. pocketpy_numpy-0.1.0/include/xtensor/misc/xmanipulation.hpp +998 -0
  257. pocketpy_numpy-0.1.0/include/xtensor/misc/xpad.hpp +279 -0
  258. pocketpy_numpy-0.1.0/include/xtensor/misc/xset_operation.hpp +201 -0
  259. pocketpy_numpy-0.1.0/include/xtensor/misc/xsort.hpp +1204 -0
  260. pocketpy_numpy-0.1.0/include/xtensor/misc/xtl_concepts.hpp +31 -0
  261. pocketpy_numpy-0.1.0/include/xtensor/optional/xoptional.hpp +1216 -0
  262. pocketpy_numpy-0.1.0/include/xtensor/optional/xoptional_assembly.hpp +683 -0
  263. pocketpy_numpy-0.1.0/include/xtensor/optional/xoptional_assembly_base.hpp +1035 -0
  264. pocketpy_numpy-0.1.0/include/xtensor/optional/xoptional_assembly_storage.hpp +547 -0
  265. pocketpy_numpy-0.1.0/include/xtensor/reducers/xaccumulator.hpp +327 -0
  266. pocketpy_numpy-0.1.0/include/xtensor/reducers/xblockwise_reducer.hpp +446 -0
  267. pocketpy_numpy-0.1.0/include/xtensor/reducers/xblockwise_reducer_functors.hpp +385 -0
  268. pocketpy_numpy-0.1.0/include/xtensor/reducers/xnorm.hpp +597 -0
  269. pocketpy_numpy-0.1.0/include/xtensor/reducers/xreducer.hpp +1575 -0
  270. pocketpy_numpy-0.1.0/include/xtensor/utils/xexception.hpp +303 -0
  271. pocketpy_numpy-0.1.0/include/xtensor/utils/xtensor_simd.hpp +248 -0
  272. pocketpy_numpy-0.1.0/include/xtensor/utils/xutils.hpp +899 -0
  273. pocketpy_numpy-0.1.0/include/xtensor/views/index_mapper.hpp +491 -0
  274. pocketpy_numpy-0.1.0/include/xtensor/views/xaxis_iterator.hpp +322 -0
  275. pocketpy_numpy-0.1.0/include/xtensor/views/xaxis_slice_iterator.hpp +332 -0
  276. pocketpy_numpy-0.1.0/include/xtensor/views/xbroadcast.hpp +450 -0
  277. pocketpy_numpy-0.1.0/include/xtensor/views/xdynamic_view.hpp +688 -0
  278. pocketpy_numpy-0.1.0/include/xtensor/views/xfunctor_view.hpp +1586 -0
  279. pocketpy_numpy-0.1.0/include/xtensor/views/xindex_view.hpp +775 -0
  280. pocketpy_numpy-0.1.0/include/xtensor/views/xmasked_view.hpp +653 -0
  281. pocketpy_numpy-0.1.0/include/xtensor/views/xoffset_view.hpp +76 -0
  282. pocketpy_numpy-0.1.0/include/xtensor/views/xrepeat.hpp +620 -0
  283. pocketpy_numpy-0.1.0/include/xtensor/views/xslice.hpp +1421 -0
  284. pocketpy_numpy-0.1.0/include/xtensor/views/xstrided_view.hpp +860 -0
  285. pocketpy_numpy-0.1.0/include/xtensor/views/xstrided_view_base.hpp +860 -0
  286. pocketpy_numpy-0.1.0/include/xtensor/views/xview.hpp +2112 -0
  287. pocketpy_numpy-0.1.0/include/xtensor/views/xview_utils.hpp +211 -0
  288. pocketpy_numpy-0.1.0/include/xtl/xany.hpp +424 -0
  289. pocketpy_numpy-0.1.0/include/xtl/xbase64.hpp +71 -0
  290. pocketpy_numpy-0.1.0/include/xtl/xbasic_fixed_string.hpp +2566 -0
  291. pocketpy_numpy-0.1.0/include/xtl/xclosure.hpp +380 -0
  292. pocketpy_numpy-0.1.0/include/xtl/xcompare.hpp +137 -0
  293. pocketpy_numpy-0.1.0/include/xtl/xcomplex.hpp +1235 -0
  294. pocketpy_numpy-0.1.0/include/xtl/xcomplex_sequence.hpp +529 -0
  295. pocketpy_numpy-0.1.0/include/xtl/xdynamic_bitset.hpp +1230 -0
  296. pocketpy_numpy-0.1.0/include/xtl/xfunctional.hpp +38 -0
  297. pocketpy_numpy-0.1.0/include/xtl/xhalf_float.hpp +28 -0
  298. pocketpy_numpy-0.1.0/include/xtl/xhalf_float_impl.hpp +5185 -0
  299. pocketpy_numpy-0.1.0/include/xtl/xhash.hpp +209 -0
  300. pocketpy_numpy-0.1.0/include/xtl/xhierarchy_generator.hpp +61 -0
  301. pocketpy_numpy-0.1.0/include/xtl/xiterator_base.hpp +358 -0
  302. pocketpy_numpy-0.1.0/include/xtl/xmasked_value.hpp +536 -0
  303. pocketpy_numpy-0.1.0/include/xtl/xmasked_value_meta.hpp +32 -0
  304. pocketpy_numpy-0.1.0/include/xtl/xmeta_utils.hpp +462 -0
  305. pocketpy_numpy-0.1.0/include/xtl/xmultimethods.hpp +307 -0
  306. pocketpy_numpy-0.1.0/include/xtl/xoptional.hpp +1312 -0
  307. pocketpy_numpy-0.1.0/include/xtl/xoptional_meta.hpp +113 -0
  308. pocketpy_numpy-0.1.0/include/xtl/xoptional_sequence.hpp +593 -0
  309. pocketpy_numpy-0.1.0/include/xtl/xplatform.hpp +34 -0
  310. pocketpy_numpy-0.1.0/include/xtl/xproxy_wrapper.hpp +38 -0
  311. pocketpy_numpy-0.1.0/include/xtl/xsequence.hpp +175 -0
  312. pocketpy_numpy-0.1.0/include/xtl/xspan.hpp +20 -0
  313. pocketpy_numpy-0.1.0/include/xtl/xspan_impl.hpp +703 -0
  314. pocketpy_numpy-0.1.0/include/xtl/xsystem.hpp +111 -0
  315. pocketpy_numpy-0.1.0/include/xtl/xtl_config.hpp +46 -0
  316. pocketpy_numpy-0.1.0/include/xtl/xtype_traits.hpp +349 -0
  317. pocketpy_numpy-0.1.0/include/xtl/xvariant.hpp +177 -0
  318. pocketpy_numpy-0.1.0/include/xtl/xvariant_impl.hpp +2721 -0
  319. pocketpy_numpy-0.1.0/include/xtl/xvisitor.hpp +156 -0
  320. pocketpy_numpy-0.1.0/pyproject.toml +41 -0
  321. pocketpy_numpy-0.1.0/src/main.cpp +179 -0
  322. pocketpy_numpy-0.1.0/src/numpy.cpp +1119 -0
  323. pocketpy_numpy-0.1.0/src/pocketpy.c +31273 -0
  324. pocketpy_numpy-0.1.0/src/pocketpy_numpy/__init__.py +3 -0
  325. pocketpy_numpy-0.1.0/src/pocketpy_numpy/__main__.py +9 -0
  326. pocketpy_numpy-0.1.0/src/pybind.cpp +87 -0
  327. pocketpy_numpy-0.1.0/src/rdp.hpp +162 -0
  328. pocketpy_numpy-0.1.0/tests/primes.py +121 -0
  329. pocketpy_numpy-0.1.0/tests/test_numpy.py +1096 -0
  330. pocketpy_numpy-0.1.0/tests/test_numpy_simple.py +3 -0
  331. pocketpy_numpy-0.1.0/tests/test_rdp.py +18 -0
@@ -0,0 +1,55 @@
1
+ name: Publish npm package
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+ workflow_dispatch:
7
+ inputs:
8
+ version:
9
+ description: "Version to publish (e.g. 0.1.0). Leave empty to use package.json version."
10
+ required: false
11
+
12
+ jobs:
13
+ publish:
14
+ runs-on: ubuntu-latest
15
+ permissions:
16
+ contents: read
17
+ id-token: write
18
+ steps:
19
+ - uses: actions/checkout@v4
20
+
21
+ - uses: actions/setup-node@v4
22
+ with:
23
+ node-version: 20
24
+ registry-url: https://registry.npmjs.org
25
+
26
+ - name: Set version from release tag
27
+ if: github.event_name == 'release'
28
+ working-directory: docs/lib
29
+ run: |
30
+ VERSION="${GITHUB_REF_NAME#v}"
31
+ npm version "$VERSION" --no-git-tag-version --allow-same-version
32
+
33
+ - name: Set version from input
34
+ if: github.event_name == 'workflow_dispatch' && github.event.inputs.version != ''
35
+ working-directory: docs/lib
36
+ run: |
37
+ npm version "${{ github.event.inputs.version }}" --no-git-tag-version --allow-same-version
38
+
39
+ - name: Check if version already published
40
+ id: check
41
+ working-directory: docs/lib
42
+ run: |
43
+ PKG_NAME=$(node -p "require('./package.json').name")
44
+ PKG_VERSION=$(node -p "require('./package.json').version")
45
+ if npm view "${PKG_NAME}@${PKG_VERSION}" version 2>/dev/null; then
46
+ echo "Version ${PKG_VERSION} already exists, skipping publish."
47
+ echo "skip=true" >> "$GITHUB_OUTPUT"
48
+ else
49
+ echo "skip=false" >> "$GITHUB_OUTPUT"
50
+ fi
51
+
52
+ - name: Publish to npm
53
+ if: steps.check.outputs.skip != 'true'
54
+ working-directory: docs/lib
55
+ run: npm publish --access public --provenance
@@ -0,0 +1,30 @@
1
+ name: "Pip"
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ pull_request:
6
+ push:
7
+ branches:
8
+ - master
9
+
10
+ jobs:
11
+ build:
12
+ name: Build with Pip
13
+ runs-on: ${{ matrix.platform }}
14
+ strategy:
15
+ fail-fast: false
16
+ matrix:
17
+ platform: [macos-latest, ubuntu-latest]
18
+ python-version: ["3.9", "3.11"]
19
+
20
+ steps:
21
+ - uses: actions/checkout@v4
22
+ with:
23
+ submodules: true
24
+
25
+ - uses: actions/setup-python@v5
26
+ with:
27
+ python-version: ${{ matrix.python-version }}
28
+
29
+ - name: Build and install
30
+ run: pip install --verbose .
@@ -0,0 +1,93 @@
1
+ name: Wheels
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ pull_request:
6
+ push:
7
+ branches:
8
+ - master
9
+ release:
10
+ types:
11
+ - published
12
+
13
+ env:
14
+ FORCE_COLOR: 3
15
+
16
+ concurrency:
17
+ group: ${{ github.workflow }}-${{ github.ref }}
18
+ cancel-in-progress: true
19
+
20
+ jobs:
21
+ build_sdist:
22
+ name: Build SDist
23
+ runs-on: ubuntu-latest
24
+ steps:
25
+ - uses: actions/checkout@v4
26
+ with:
27
+ submodules: true
28
+
29
+ - name: Build SDist
30
+ run: pipx run build --sdist
31
+
32
+ - name: Check metadata
33
+ run: pipx run twine check dist/*
34
+
35
+ - uses: actions/upload-artifact@v4
36
+ with:
37
+ name: cibw-sdist
38
+ path: dist/*.tar.gz
39
+
40
+
41
+ build_wheels:
42
+ name: Wheels on ${{ matrix.os }}
43
+ runs-on: ${{ matrix.os }}
44
+ strategy:
45
+ fail-fast: false
46
+ matrix:
47
+ os: [ubuntu-latest, ubuntu-24.04-arm, macos-14]
48
+
49
+ steps:
50
+ - uses: actions/checkout@v4
51
+ with:
52
+ submodules: true
53
+
54
+ - uses: pypa/cibuildwheel@v3.3.1
55
+ env:
56
+ CIBW_ARCHS_MACOS: universal2
57
+ CIBW_SKIP: "pp* *musllinux* *_i686 cp314t-win*"
58
+ CIBW_TEST_SKIP: "*"
59
+ CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=10.14
60
+
61
+ - name: Verify clean directory
62
+ run: git diff --exit-code
63
+ shell: bash
64
+
65
+ - uses: actions/upload-artifact@v4
66
+ with:
67
+ name: cibw-wheels-${{ matrix.os }}
68
+ path: wheelhouse/*.whl
69
+
70
+
71
+ upload_all:
72
+ name: Upload if release
73
+ needs: [build_wheels, build_sdist]
74
+ runs-on: ubuntu-latest
75
+ if: github.event_name == 'release' && github.event.action == 'published'
76
+ environment: pypi
77
+ permissions:
78
+ id-token: write
79
+
80
+ steps:
81
+ - uses: actions/setup-python@v5
82
+ with:
83
+ python-version: "3.x"
84
+
85
+ - uses: actions/download-artifact@v4
86
+ with:
87
+ pattern: cibw-*
88
+ merge-multiple: true
89
+ path: dist
90
+
91
+ - uses: pypa/gh-action-pypi-publish@release/v1
92
+ with:
93
+ password: ${{ secrets.pypi_password }}
@@ -0,0 +1,39 @@
1
+ # Prerequisites
2
+ *.d
3
+
4
+ # Compiled Object files
5
+ *.slo
6
+ *.lo
7
+ *.o
8
+ *.obj
9
+
10
+ # Precompiled Headers
11
+ *.gch
12
+ *.pch
13
+
14
+ # Compiled Dynamic libraries
15
+ *.so
16
+ *.dylib
17
+ *.dll
18
+
19
+ # Fortran module files
20
+ *.mod
21
+ *.smod
22
+
23
+ # Compiled Static libraries
24
+ *.lai
25
+ *.la
26
+ *.a
27
+ *.lib
28
+
29
+ # Executables
30
+ *.exe
31
+ *.out
32
+ *.app
33
+
34
+ build/
35
+ .cache
36
+ profiler_report.json
37
+ __pycache__/
38
+ *.pyc
39
+ dist
@@ -0,0 +1,59 @@
1
+ # To use:
2
+ #
3
+ # pre-commit run -a
4
+ #
5
+ # Or:
6
+ #
7
+ # pre-commit install # (runs every time you commit in git)
8
+ #
9
+ # To update this file:
10
+ #
11
+ # pre-commit autoupdate
12
+ #
13
+ # See https://github.com/pre-commit/pre-commit
14
+
15
+ ci:
16
+ autoupdate_commit_msg: "chore: update pre-commit hooks"
17
+ autofix_commit_msg: "style: pre-commit fixes"
18
+
19
+ exclude: (src/rapidjson/|pythonic_eval_vm/pocketpy.*|cli/pocketpy_cli.c|3rd)
20
+
21
+ repos:
22
+ # Standard hooks
23
+ - repo: https://github.com/pre-commit/pre-commit-hooks
24
+ rev: v4.1.0
25
+ hooks:
26
+ - id: check-case-conflict
27
+ - id: check-merge-conflict
28
+ - id: check-symlinks
29
+ - id: check-yaml
30
+ - id: debug-statements
31
+ - id: end-of-file-fixer
32
+ - id: mixed-line-ending
33
+ - id: requirements-txt-fixer
34
+ - id: trailing-whitespace
35
+ - id: end-of-file-fixer
36
+
37
+ # Check linting and style issues
38
+ - repo: https://github.com/astral-sh/ruff-pre-commit
39
+ rev: "v0.12.2"
40
+ hooks:
41
+ - id: ruff
42
+ args: ["--fix", "--show-fixes"]
43
+ - id: ruff-format
44
+ exclude: ^(docs)
45
+
46
+ # CMake formatting
47
+ - repo: https://github.com/cheshirekow/cmake-format-precommit
48
+ rev: v0.6.13
49
+ hooks:
50
+ - id: cmake-format
51
+ additional_dependencies: [pyyaml]
52
+ types: [file]
53
+ files: (\.cmake|CMakeLists.txt)(.in)?$
54
+
55
+ # Suggested hook if you add a .clang-format file
56
+ - repo: https://github.com/pre-commit/mirrors-clang-format
57
+ rev: v13.0.0
58
+ hooks:
59
+ - id: clang-format
@@ -0,0 +1,16 @@
1
+ cmake_minimum_required(VERSION 3.10)
2
+
3
+ project(lz4)
4
+
5
+ set(CMAKE_C_STANDARD 11)
6
+ set(CMAKE_C_STANDARD_REQUIRED ON)
7
+
8
+ add_library(${PROJECT_NAME} STATIC lz4/lib/lz4.c)
9
+
10
+ target_include_directories(${PROJECT_NAME} PRIVATE
11
+ ${CMAKE_CURRENT_LIST_DIR}/lz4/lib
12
+ )
13
+
14
+ target_include_directories(${PROJECT_NAME} INTERFACE
15
+ ${CMAKE_CURRENT_LIST_DIR}
16
+ )
@@ -0,0 +1,75 @@
1
+ # This configuration was automatically generated from a CircleCI 1.0 config.
2
+ # It should include any build commands you had along with commands that CircleCI
3
+ # inferred from your project structure. We strongly recommend you read all the
4
+ # comments in this file to understand the structure of CircleCI 2.0, as the idiom
5
+ # for configuration has changed substantially in 2.0 to allow arbitrary jobs rather
6
+ # than the prescribed lifecycle of 1.0. In general, we recommend using this generated
7
+ # configuration as a reference rather than using it in production, though in most
8
+ # cases it should duplicate the execution of your original 1.0 config.
9
+ version: 2
10
+ jobs:
11
+ build:
12
+ working_directory: ~/lz4/lz4
13
+ # Parallelism is broken in this file : it just plays the same tests twice.
14
+ # The script will have to be modified to support parallelism properly
15
+ # In the meantime, set it to 1.
16
+ parallelism: 1
17
+ shell: /bin/bash --login
18
+ # CircleCI 2.0 does not support environment variables that refer to each other the same way as 1.0 did.
19
+ # If any of these refer to each other, rewrite them so that they don't or see https://circleci.com/docs/2.0/env-vars/#interpolating-environment-variables-to-set-other-environment-variables .
20
+ environment:
21
+ CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
22
+ CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
23
+ # In CircleCI 1.0 we used a pre-configured image with a large number of languages and other packages.
24
+ # In CircleCI 2.0 you can now specify your own image, or use one of our pre-configured images.
25
+ # The following configuration line tells CircleCI to use the specified docker image as the runtime environment for you job.
26
+ # We have selected a pre-built image that mirrors the build environment we use on
27
+ # the 1.0 platform, but we recommend you choose an image more tailored to the needs
28
+ # of each job. For more information on choosing an image (or alternatively using a
29
+ # VM instead of a container) see https://circleci.com/docs/2.0/executor-types/
30
+ # To see the list of pre-built images that CircleCI provides for most common languages see
31
+ # https://circleci.com/docs/2.0/circleci-images/
32
+ docker:
33
+ - image: fbopensource/lz4-circleci-primary:0.0.4
34
+ steps:
35
+ # Machine Setup
36
+ # If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
37
+ # The following `checkout` command checks out your code to your working directory. In 1.0 we did this implicitly. In 2.0 you can choose where in the course of a job your code should be checked out.
38
+ - checkout
39
+ # Prepare for artifact and test results collection equivalent to how it was done on 1.0.
40
+ # In many cases you can simplify this from what is generated here.
41
+ # 'See docs on artifact collection here https://circleci.com/docs/2.0/artifacts/'
42
+ - run: mkdir -p $CIRCLE_ARTIFACTS $CIRCLE_TEST_REPORTS
43
+ # Test
44
+ # This would typically be a build job when using workflows, possibly combined with build
45
+ # This is based on your 1.0 configuration file or project settings
46
+ - run: CC=clang CFLAGS="-Werror -O0" make all && make clean
47
+ - run: c++ -v; make cxxtest && make clean
48
+ - run: cc -v; c++ -v; make ctocxxtest && make clean
49
+ - run: gcc-5 -v; CC=gcc-5 CFLAGS="-O2 -Werror" make check && make clean
50
+ - run: gcc-5 -v; CC=gcc-5 CFLAGS="-O2 -m32 -Werror" CPPFLAGS=-I/usr/include/x86_64-linux-gnu make check && make clean
51
+ - run: gcc-6 -v; CC=gcc-6 CFLAGS="-O2 -Werror" make check && make clean
52
+ - run: make cmakebuild && make clean
53
+ - run: make -C tests test-lz4
54
+ - run: make -C tests test-lz4c
55
+ - run: make -C tests test-frametest
56
+ - run: make -C tests test-fuzzer && make clean
57
+ - run: make -C lib all && make clean
58
+ - run: pyenv global 3.4.4; CPPFLAGS=-I/usr/include/x86_64-linux-gnu make versionsTest && make clean
59
+ - run: make test-install && make clean
60
+ - run: gcc -v; CFLAGS="-O2 -m32 -Werror" CPPFLAGS=-I/usr/include/x86_64-linux-gnu make check && make clean
61
+ - run: clang -v; make staticAnalyze && make clean
62
+ - run: make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc-static V=1 && make clean
63
+ - run: CFLAGS=-m64 LDFLAGS=-m64 make platformTest CC=powerpc-linux-gnu-gcc QEMU_SYS=qemu-ppc64-static V=1 && make clean
64
+ - run: make platformTest CC=arm-linux-gnueabi-gcc QEMU_SYS=qemu-arm-static V=1 && make clean
65
+ - run: make platformTest CC=aarch64-linux-gnu-gcc QEMU_SYS=qemu-aarch64-static V=1 && make clean
66
+ # Teardown
67
+ # If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
68
+ # Save test results
69
+ - store_test_results:
70
+ path: /tmp/circleci-test-results
71
+ # Save artifacts
72
+ - store_artifacts:
73
+ path: /tmp/circleci-artifacts
74
+ - store_artifacts:
75
+ path: /tmp/circleci-test-results
@@ -0,0 +1,12 @@
1
+ FROM circleci/buildpack-deps:bionic
2
+
3
+ RUN sudo apt-get -y -qq update
4
+ RUN sudo apt-get -y install software-properties-common
5
+ RUN sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
6
+ RUN sudo apt-get -y install cmake
7
+ RUN sudo apt-get -y install qemu-system-ppc qemu-user-static qemu-system-arm
8
+ RUN sudo apt-get -y install libc6-dev-armel-cross libc6-dev-arm64-cross libc6-dev-i386
9
+ RUN sudo apt-get -y install clang clang-tools
10
+ RUN sudo apt-get -y install gcc-5 gcc-5-multilib gcc-6
11
+ RUN sudo apt-get -y install valgrind
12
+ RUN sudo apt-get -y install gcc-multilib-powerpc-linux-gnu gcc-powerpc-linux-gnu gcc-arm-linux-gnueabi gcc-aarch64-linux-gnu
@@ -0,0 +1,9 @@
1
+ task:
2
+ name: FreeBSD
3
+ freebsd_instance:
4
+ matrix:
5
+ image_family: freebsd-14-0
6
+ install_script: pkg install -y gmake
7
+ script: |
8
+ cc -v
9
+ gmake test
@@ -0,0 +1,132 @@
1
+ # This is the configuration file for clang-format, an automatic code formatter.
2
+ # Introduction: https://clang.llvm.org/docs/ClangFormat.html
3
+ # Supported options: https://clang.llvm.org/docs/ClangFormatStyleOptions.html
4
+
5
+ Language: Cpp
6
+ Standard: Latest
7
+
8
+ ColumnLimit: 110
9
+
10
+ UseTab: Never
11
+ IndentWidth: 4
12
+ PPIndentWidth: 2
13
+ ContinuationIndentWidth: 4
14
+
15
+ LineEnding: LF
16
+ InsertNewlineAtEOF: true
17
+ KeepEmptyLinesAtTheStartOfBlocks: false
18
+ MaxEmptyLinesToKeep: 1
19
+
20
+ IndentCaseBlocks: false
21
+ IndentCaseLabels: false
22
+ IndentGotoLabels: false
23
+ IndentPPDirectives: AfterHash
24
+ IndentWrappedFunctionNames: false
25
+
26
+ AlignAfterOpenBracket: Align
27
+ AlignArrayOfStructures: Right
28
+ AlignEscapedNewlines: Left
29
+ AlignOperands: Align
30
+ AlignConsecutiveAssignments:
31
+ Enabled: true
32
+ AcrossEmptyLines: false
33
+ AcrossComments: false
34
+ AlignCompound: false
35
+ PadOperators: false
36
+ AlignConsecutiveBitFields:
37
+ Enabled: true
38
+ AcrossEmptyLines: false
39
+ AcrossComments: false
40
+ AlignConsecutiveDeclarations:
41
+ Enabled: true
42
+ AcrossEmptyLines: false
43
+ AcrossComments: false
44
+ AlignConsecutiveMacros:
45
+ Enabled: true
46
+ AcrossEmptyLines: false
47
+ AcrossComments: false
48
+ AlignTrailingComments:
49
+ Kind: Leave
50
+ OverEmptyLines: 0
51
+
52
+ BinPackArguments: true
53
+ BinPackParameters: false
54
+ AllowAllArgumentsOnNextLine: true
55
+ AllowAllParametersOfDeclarationOnNextLine: false
56
+
57
+ AllowShortBlocksOnASingleLine: Never
58
+ AllowShortCaseLabelsOnASingleLine: false
59
+ AllowShortEnumsOnASingleLine: true
60
+ AllowShortFunctionsOnASingleLine: None
61
+ AllowShortIfStatementsOnASingleLine: AllIfsAndElse
62
+ AllowShortLoopsOnASingleLine: false
63
+
64
+ AlwaysBreakAfterReturnType: None
65
+ AlwaysBreakBeforeMultilineStrings: false
66
+ BraceWrapping:
67
+ AfterCaseLabel: false
68
+ AfterControlStatement: Never
69
+ AfterEnum: false
70
+ AfterExternBlock: false
71
+ AfterFunction: true
72
+ AfterStruct: false
73
+ AfterUnion: false
74
+ BeforeElse: false
75
+ BeforeWhile: false
76
+ IndentBraces: false
77
+ SplitEmptyFunction: false
78
+ SplitEmptyRecord: false
79
+ BreakAfterAttributes: Never
80
+ BreakBeforeBinaryOperators: None
81
+ BreakBeforeBraces: Custom
82
+ BreakBeforeInlineASMColon: OnlyMultiline
83
+ BreakBeforeTernaryOperators: true
84
+
85
+ DerivePointerAlignment: false
86
+ PointerAlignment: Left
87
+
88
+ QualifierAlignment: Custom
89
+ QualifierOrder: ["inline", "static", "volatile", "restrict", "const", "type"]
90
+
91
+ ReflowComments: false
92
+ BreakStringLiterals: false
93
+ RemoveSemicolon: true
94
+ RemoveParentheses: ReturnStatement
95
+ InsertBraces: false
96
+ SeparateDefinitionBlocks: Always
97
+
98
+ SpaceAfterCStyleCast: false
99
+ SpaceAfterLogicalNot: false
100
+ SpaceAroundPointerQualifiers: Default
101
+ SpaceBeforeAssignmentOperators: true
102
+ SpaceBeforeCaseColon: false
103
+ SpaceBeforeParens: ControlStatements
104
+ BitFieldColonSpacing: Both
105
+ SpaceBeforeSquareBrackets: false
106
+ SpaceInEmptyBlock: false
107
+ SpacesBeforeTrailingComments: 1
108
+ SpacesInSquareBrackets: false
109
+ SpacesInLineCommentPrefix:
110
+ Minimum: 1
111
+ Maximum: -1
112
+
113
+ SortIncludes: Never
114
+ IncludeBlocks: Preserve
115
+ IncludeIsMainRegex: ""
116
+ IncludeCategories:
117
+ - {Regex: "<.*>", Priority: -2, CaseSensitive: true}
118
+ - {Regex: "\".*\"", Priority: -1, CaseSensitive: true}
119
+
120
+ AttributeMacros: ["__capability"]
121
+ StatementAttributeLikeMacros: []
122
+ StatementMacros: []
123
+
124
+ PenaltyBreakAssignment: 200
125
+ PenaltyBreakBeforeFirstCallParameter: 19
126
+ PenaltyBreakComment: 300
127
+ PenaltyBreakFirstLessLess: 120
128
+ PenaltyBreakOpenParenthesis: 0
129
+ PenaltyBreakString: 1000
130
+ PenaltyExcessCharacter: 10
131
+ PenaltyIndentedWhitespace: 0
132
+ PenaltyReturnTypeOnItsOwnLine: 60
@@ -0,0 +1,21 @@
1
+ # Set the default behavior
2
+ * text eol=lf
3
+
4
+ # Explicitly declare source files
5
+ *.c text eol=lf
6
+ *.h text eol=lf
7
+
8
+ # Denote files that should not be modified.
9
+ *.odt binary
10
+ *.png binary
11
+
12
+ # Visual Studio
13
+ *.sln text eol=crlf
14
+ *.vcxproj* text eol=crlf
15
+ *.vcproj* text eol=crlf
16
+ *.suo binary
17
+ *.rc text eol=crlf
18
+
19
+ # Windows
20
+ *.bat text eol=crlf
21
+ *.cmd text eol=crlf
@@ -0,0 +1,32 @@
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Describe the bug**
11
+ A clear and concise description of what the bug is.
12
+
13
+ **Expected behavior**
14
+ Please describe what you expected to happen.
15
+
16
+ **To Reproduce**
17
+ Steps to reproduce the behavior:
18
+ 1. Go to '...'
19
+ 2. Click on '....'
20
+ 3. Scroll down to '....'
21
+ 4. See error '...'
22
+ If applicable, add screenshots to help explain your problem.
23
+
24
+ **System (please complete the following information):**
25
+ - OS: [e.g. Mac]
26
+ - Version [e.g. 22]
27
+ - Compiler [e.g. gcc]
28
+ - Build System [e.g. Makefile]
29
+ - Other hardware specs [e.g. Core 2 duo...]
30
+
31
+ **Additional context**
32
+ Add any other context about the problem here.
@@ -0,0 +1,20 @@
1
+ ---
2
+ name: Feature request
3
+ about: Suggest an idea for this project
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Is your feature request related to a problem? Please describe.**
11
+ A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12
+
13
+ **Describe the solution you'd like**
14
+ A clear and concise description of what you want to happen.
15
+
16
+ **Describe alternatives you've considered**
17
+ A clear and concise description of any alternative solutions or features you've considered.
18
+
19
+ **Additional context**
20
+ Add any other context or screenshots about the feature request here.
@@ -0,0 +1,7 @@
1
+ version: 2
2
+
3
+ updates:
4
+ - package-ecosystem: github-actions
5
+ directory: /
6
+ schedule:
7
+ interval: weekly
@@ -0,0 +1,49 @@
1
+ This directory contains [GitHub Actions](https://github.com/features/actions) workflow files.
2
+
3
+ # Known issues
4
+
5
+ ## USAN, ASAN (`lz4-ubsan-x64`, `lz4-ubsan-x86`, `lz4-asan-x64`)
6
+
7
+ For now, `lz4-ubsan-*` uses the `-fsanitize-recover=pointer-overflow` flag:
8
+ there are known cases of pointer overflow arithmetic within `lz4.c` fast compression.
9
+ These cases are not dangerous with known architecture,
10
+ but they are not guaranteed to work by the C standard,
11
+ which means that, in some future, some new architecture or some new compiler
12
+ may decide to do something funny that could break this behavior.
13
+ Hence, in anticipation, it's better to remove them.
14
+ This has been already achieved in `lz4hc.c`.
15
+ However, the same attempt in `lz4.c` resulted in massive speed losses,
16
+ which is not an acceptable cost for preemptively solving a "potential future" problem
17
+ not active anywhere today.
18
+ Therefore, a more acceptable work-around will have to be found first.
19
+
20
+
21
+
22
+ ## cppcheck (`lz4-cppcheck`)
23
+
24
+ This test script ignores the exit code of `make cppcheck`.
25
+ Because this project doesn't 100% follow their recommendation.
26
+ Also sometimes it reports false positives.
27
+
28
+
29
+
30
+ # Notes
31
+
32
+ - You can investigate various information at the right pane of GitHub
33
+ Actions report page.
34
+
35
+ | Item | Section in the right pane |
36
+ | ------------------------- | ------------------------------------- |
37
+ | OS, VM | Set up job |
38
+ | git repo, commit hash | Run actions/checkout@v2 |
39
+ | Version of tools | Environment info |
40
+
41
+
42
+
43
+ # Difference with `.travis.yml`
44
+
45
+ The following tests are not be included due to limitation of GH-Actions.
46
+
47
+ - name: aarch64 real-hw tests
48
+ - name: PPC64LE real-hw tests
49
+ - name: IBM s390x real-hw tests