catzilla 0.0.2__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 (697) hide show
  1. catzilla-0.0.2/CMakeLists.txt +637 -0
  2. catzilla-0.0.2/LICENSE +21 -0
  3. catzilla-0.0.2/MANIFEST.in +17 -0
  4. catzilla-0.0.2/PKG-INFO +529 -0
  5. catzilla-0.0.2/README.md +455 -0
  6. catzilla-0.0.2/catzilla.egg-info/SOURCES.txt +694 -0
  7. catzilla-0.0.2/debug_import.py +105 -0
  8. catzilla-0.0.2/deps/libuv/.github/ISSUE_TEMPLATE.md +13 -0
  9. catzilla-0.0.2/deps/libuv/.github/dependabot.yml +7 -0
  10. catzilla-0.0.2/deps/libuv/.github/workflows/CI-docs.yml +25 -0
  11. catzilla-0.0.2/deps/libuv/.github/workflows/CI-sample.yml +33 -0
  12. catzilla-0.0.2/deps/libuv/.github/workflows/CI-unix.yml +182 -0
  13. catzilla-0.0.2/deps/libuv/.github/workflows/CI-win.yml +128 -0
  14. catzilla-0.0.2/deps/libuv/.github/workflows/sanitizer.yml +128 -0
  15. catzilla-0.0.2/deps/libuv/.mailmap +71 -0
  16. catzilla-0.0.2/deps/libuv/.readthedocs.yaml +15 -0
  17. catzilla-0.0.2/deps/libuv/AUTHORS +606 -0
  18. catzilla-0.0.2/deps/libuv/CMakeLists.txt +816 -0
  19. catzilla-0.0.2/deps/libuv/CONTRIBUTING.md +171 -0
  20. catzilla-0.0.2/deps/libuv/ChangeLog +6522 -0
  21. catzilla-0.0.2/deps/libuv/LICENSE +19 -0
  22. catzilla-0.0.2/deps/libuv/LICENSE-docs +396 -0
  23. catzilla-0.0.2/deps/libuv/LICENSE-extra +36 -0
  24. catzilla-0.0.2/deps/libuv/LINKS.md +112 -0
  25. catzilla-0.0.2/deps/libuv/MAINTAINERS.md +56 -0
  26. catzilla-0.0.2/deps/libuv/Makefile.am +563 -0
  27. catzilla-0.0.2/deps/libuv/README.md +355 -0
  28. catzilla-0.0.2/deps/libuv/SECURITY.md +27 -0
  29. catzilla-0.0.2/deps/libuv/SUPPORTED_PLATFORMS.md +68 -0
  30. catzilla-0.0.2/deps/libuv/autogen.sh +75 -0
  31. catzilla-0.0.2/deps/libuv/cmake-toolchains/cross-mingw32.cmake +17 -0
  32. catzilla-0.0.2/deps/libuv/configure.ac +92 -0
  33. catzilla-0.0.2/deps/libuv/docs/Makefile +183 -0
  34. catzilla-0.0.2/deps/libuv/docs/code/CMakeLists.txt +51 -0
  35. catzilla-0.0.2/deps/libuv/docs/code/cgi/main.c +81 -0
  36. catzilla-0.0.2/deps/libuv/docs/code/cgi/tick.c +13 -0
  37. catzilla-0.0.2/deps/libuv/docs/code/default-loop/main.c +12 -0
  38. catzilla-0.0.2/deps/libuv/docs/code/detach/main.c +31 -0
  39. catzilla-0.0.2/deps/libuv/docs/code/dns/main.c +80 -0
  40. catzilla-0.0.2/deps/libuv/docs/code/helloworld/main.c +15 -0
  41. catzilla-0.0.2/deps/libuv/docs/code/idle-basic/main.c +24 -0
  42. catzilla-0.0.2/deps/libuv/docs/code/idle-compute/main.c +43 -0
  43. catzilla-0.0.2/deps/libuv/docs/code/interfaces/main.c +33 -0
  44. catzilla-0.0.2/deps/libuv/docs/code/locks/main.c +57 -0
  45. catzilla-0.0.2/deps/libuv/docs/code/multi-echo-server/hammer.js +20 -0
  46. catzilla-0.0.2/deps/libuv/docs/code/multi-echo-server/main.c +114 -0
  47. catzilla-0.0.2/deps/libuv/docs/code/multi-echo-server/worker.c +88 -0
  48. catzilla-0.0.2/deps/libuv/docs/code/onchange/main.c +44 -0
  49. catzilla-0.0.2/deps/libuv/docs/code/pipe-echo-server/main.c +94 -0
  50. catzilla-0.0.2/deps/libuv/docs/code/plugin/hello.c +5 -0
  51. catzilla-0.0.2/deps/libuv/docs/code/plugin/main.c +38 -0
  52. catzilla-0.0.2/deps/libuv/docs/code/plugin/plugin.h +7 -0
  53. catzilla-0.0.2/deps/libuv/docs/code/proc-streams/main.c +49 -0
  54. catzilla-0.0.2/deps/libuv/docs/code/proc-streams/test.c +8 -0
  55. catzilla-0.0.2/deps/libuv/docs/code/progress/main.c +47 -0
  56. catzilla-0.0.2/deps/libuv/docs/code/queue-cancel/main.c +59 -0
  57. catzilla-0.0.2/deps/libuv/docs/code/queue-work/main.c +44 -0
  58. catzilla-0.0.2/deps/libuv/docs/code/ref-timer/main.c +29 -0
  59. catzilla-0.0.2/deps/libuv/docs/code/signal/main.c +66 -0
  60. catzilla-0.0.2/deps/libuv/docs/code/spawn/main.c +36 -0
  61. catzilla-0.0.2/deps/libuv/docs/code/tcp-echo-server/main.c +87 -0
  62. catzilla-0.0.2/deps/libuv/docs/code/thread-create/main.c +35 -0
  63. catzilla-0.0.2/deps/libuv/docs/code/tty/main.c +31 -0
  64. catzilla-0.0.2/deps/libuv/docs/code/tty-gravity/main.c +48 -0
  65. catzilla-0.0.2/deps/libuv/docs/code/udp-dhcp/main.c +128 -0
  66. catzilla-0.0.2/deps/libuv/docs/code/uvcat/main.c +62 -0
  67. catzilla-0.0.2/deps/libuv/docs/code/uvstop/main.c +33 -0
  68. catzilla-0.0.2/deps/libuv/docs/code/uvtee/main.c +79 -0
  69. catzilla-0.0.2/deps/libuv/docs/code/uvwget/main.c +166 -0
  70. catzilla-0.0.2/deps/libuv/docs/make.bat +243 -0
  71. catzilla-0.0.2/deps/libuv/docs/requirements.txt +36 -0
  72. catzilla-0.0.2/deps/libuv/docs/src/api.rst +36 -0
  73. catzilla-0.0.2/deps/libuv/docs/src/async.rst +65 -0
  74. catzilla-0.0.2/deps/libuv/docs/src/check.rst +54 -0
  75. catzilla-0.0.2/deps/libuv/docs/src/conf.py +348 -0
  76. catzilla-0.0.2/deps/libuv/docs/src/design.rst +141 -0
  77. catzilla-0.0.2/deps/libuv/docs/src/dll.rst +44 -0
  78. catzilla-0.0.2/deps/libuv/docs/src/dns.rst +108 -0
  79. catzilla-0.0.2/deps/libuv/docs/src/errors.rst +388 -0
  80. catzilla-0.0.2/deps/libuv/docs/src/fs.rst +727 -0
  81. catzilla-0.0.2/deps/libuv/docs/src/fs_event.rst +144 -0
  82. catzilla-0.0.2/deps/libuv/docs/src/fs_poll.rst +77 -0
  83. catzilla-0.0.2/deps/libuv/docs/src/guide/about.rst +22 -0
  84. catzilla-0.0.2/deps/libuv/docs/src/guide/basics.rst +236 -0
  85. catzilla-0.0.2/deps/libuv/docs/src/guide/eventloops.rst +50 -0
  86. catzilla-0.0.2/deps/libuv/docs/src/guide/filesystem.rst +349 -0
  87. catzilla-0.0.2/deps/libuv/docs/src/guide/introduction.rst +73 -0
  88. catzilla-0.0.2/deps/libuv/docs/src/guide/networking.rst +256 -0
  89. catzilla-0.0.2/deps/libuv/docs/src/guide/processes.rst +424 -0
  90. catzilla-0.0.2/deps/libuv/docs/src/guide/threads.rst +397 -0
  91. catzilla-0.0.2/deps/libuv/docs/src/guide/utilities.rst +450 -0
  92. catzilla-0.0.2/deps/libuv/docs/src/guide.rst +22 -0
  93. catzilla-0.0.2/deps/libuv/docs/src/handle.rst +286 -0
  94. catzilla-0.0.2/deps/libuv/docs/src/idle.rst +62 -0
  95. catzilla-0.0.2/deps/libuv/docs/src/index.rst +62 -0
  96. catzilla-0.0.2/deps/libuv/docs/src/loop.rst +263 -0
  97. catzilla-0.0.2/deps/libuv/docs/src/metrics.rst +71 -0
  98. catzilla-0.0.2/deps/libuv/docs/src/migration_010_100.rst +244 -0
  99. catzilla-0.0.2/deps/libuv/docs/src/misc.rst +940 -0
  100. catzilla-0.0.2/deps/libuv/docs/src/pipe.rst +182 -0
  101. catzilla-0.0.2/deps/libuv/docs/src/poll.rst +150 -0
  102. catzilla-0.0.2/deps/libuv/docs/src/prepare.rst +54 -0
  103. catzilla-0.0.2/deps/libuv/docs/src/process.rst +291 -0
  104. catzilla-0.0.2/deps/libuv/docs/src/request.rst +121 -0
  105. catzilla-0.0.2/deps/libuv/docs/src/signal.rst +101 -0
  106. catzilla-0.0.2/deps/libuv/docs/src/sphinx-plugins/manpage.py +45 -0
  107. catzilla-0.0.2/deps/libuv/docs/src/static/architecture.png +0 -0
  108. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/Data/st0-311.jpg +0 -0
  109. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/Data/st1-475.jpg +0 -0
  110. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/Index.zip +0 -0
  111. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/Metadata/BuildVersionHistory.plist +8 -0
  112. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/Metadata/DocumentIdentifier +1 -0
  113. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/Metadata/Properties.plist +0 -0
  114. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/preview-micro.jpg +0 -0
  115. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/preview-web.jpg +0 -0
  116. catzilla-0.0.2/deps/libuv/docs/src/static/diagrams.key/preview.jpg +0 -0
  117. catzilla-0.0.2/deps/libuv/docs/src/static/favicon.ico +0 -0
  118. catzilla-0.0.2/deps/libuv/docs/src/static/logo.png +0 -0
  119. catzilla-0.0.2/deps/libuv/docs/src/static/loop_iteration.png +0 -0
  120. catzilla-0.0.2/deps/libuv/docs/src/stream.rst +258 -0
  121. catzilla-0.0.2/deps/libuv/docs/src/tcp.rst +190 -0
  122. catzilla-0.0.2/deps/libuv/docs/src/threading.rst +284 -0
  123. catzilla-0.0.2/deps/libuv/docs/src/threadpool.rst +74 -0
  124. catzilla-0.0.2/deps/libuv/docs/src/timer.rst +92 -0
  125. catzilla-0.0.2/deps/libuv/docs/src/tty.rst +145 -0
  126. catzilla-0.0.2/deps/libuv/docs/src/udp.rst +501 -0
  127. catzilla-0.0.2/deps/libuv/docs/src/upgrading.rst +11 -0
  128. catzilla-0.0.2/deps/libuv/docs/src/version.rst +60 -0
  129. catzilla-0.0.2/deps/libuv/img/banner.png +0 -0
  130. catzilla-0.0.2/deps/libuv/img/logos.svg +152 -0
  131. catzilla-0.0.2/deps/libuv/include/uv/aix.h +32 -0
  132. catzilla-0.0.2/deps/libuv/include/uv/bsd.h +34 -0
  133. catzilla-0.0.2/deps/libuv/include/uv/darwin.h +61 -0
  134. catzilla-0.0.2/deps/libuv/include/uv/errno.h +483 -0
  135. catzilla-0.0.2/deps/libuv/include/uv/linux.h +34 -0
  136. catzilla-0.0.2/deps/libuv/include/uv/os390.h +33 -0
  137. catzilla-0.0.2/deps/libuv/include/uv/posix.h +31 -0
  138. catzilla-0.0.2/deps/libuv/include/uv/sunos.h +44 -0
  139. catzilla-0.0.2/deps/libuv/include/uv/threadpool.h +37 -0
  140. catzilla-0.0.2/deps/libuv/include/uv/tree.h +521 -0
  141. catzilla-0.0.2/deps/libuv/include/uv/unix.h +512 -0
  142. catzilla-0.0.2/deps/libuv/include/uv/version.h +43 -0
  143. catzilla-0.0.2/deps/libuv/include/uv/win.h +698 -0
  144. catzilla-0.0.2/deps/libuv/include/uv.h +1990 -0
  145. catzilla-0.0.2/deps/libuv/libuv-static.pc.in +12 -0
  146. catzilla-0.0.2/deps/libuv/libuv.pc.in +13 -0
  147. catzilla-0.0.2/deps/libuv/m4/as_case.m4 +21 -0
  148. catzilla-0.0.2/deps/libuv/m4/ax_pthread.m4 +485 -0
  149. catzilla-0.0.2/deps/libuv/m4/libuv-check-flags.m4 +336 -0
  150. catzilla-0.0.2/deps/libuv/m4/libuv-check-versions.m4 +7 -0
  151. catzilla-0.0.2/deps/libuv/src/fs-poll.c +290 -0
  152. catzilla-0.0.2/deps/libuv/src/heap-inl.h +245 -0
  153. catzilla-0.0.2/deps/libuv/src/idna.c +560 -0
  154. catzilla-0.0.2/deps/libuv/src/idna.h +31 -0
  155. catzilla-0.0.2/deps/libuv/src/inet.c +298 -0
  156. catzilla-0.0.2/deps/libuv/src/queue.h +90 -0
  157. catzilla-0.0.2/deps/libuv/src/random.c +123 -0
  158. catzilla-0.0.2/deps/libuv/src/strscpy.c +38 -0
  159. catzilla-0.0.2/deps/libuv/src/strscpy.h +39 -0
  160. catzilla-0.0.2/deps/libuv/src/strtok.c +52 -0
  161. catzilla-0.0.2/deps/libuv/src/strtok.h +27 -0
  162. catzilla-0.0.2/deps/libuv/src/thread-common.c +175 -0
  163. catzilla-0.0.2/deps/libuv/src/threadpool.c +419 -0
  164. catzilla-0.0.2/deps/libuv/src/timer.c +199 -0
  165. catzilla-0.0.2/deps/libuv/src/unix/aix-common.c +89 -0
  166. catzilla-0.0.2/deps/libuv/src/unix/aix.c +1321 -0
  167. catzilla-0.0.2/deps/libuv/src/unix/async.c +418 -0
  168. catzilla-0.0.2/deps/libuv/src/unix/bsd-ifaddrs.c +164 -0
  169. catzilla-0.0.2/deps/libuv/src/unix/bsd-proctitle.c +99 -0
  170. catzilla-0.0.2/deps/libuv/src/unix/core.c +2104 -0
  171. catzilla-0.0.2/deps/libuv/src/unix/cygwin.c +93 -0
  172. catzilla-0.0.2/deps/libuv/src/unix/darwin-proctitle.c +176 -0
  173. catzilla-0.0.2/deps/libuv/src/unix/darwin-stub.h +97 -0
  174. catzilla-0.0.2/deps/libuv/src/unix/darwin-syscalls.h +17 -0
  175. catzilla-0.0.2/deps/libuv/src/unix/darwin.c +237 -0
  176. catzilla-0.0.2/deps/libuv/src/unix/dl.c +80 -0
  177. catzilla-0.0.2/deps/libuv/src/unix/freebsd.c +290 -0
  178. catzilla-0.0.2/deps/libuv/src/unix/fs.c +2303 -0
  179. catzilla-0.0.2/deps/libuv/src/unix/fsevents.c +906 -0
  180. catzilla-0.0.2/deps/libuv/src/unix/getaddrinfo.c +252 -0
  181. catzilla-0.0.2/deps/libuv/src/unix/getnameinfo.c +121 -0
  182. catzilla-0.0.2/deps/libuv/src/unix/haiku.c +172 -0
  183. catzilla-0.0.2/deps/libuv/src/unix/hurd.c +172 -0
  184. catzilla-0.0.2/deps/libuv/src/unix/ibmi.c +545 -0
  185. catzilla-0.0.2/deps/libuv/src/unix/internal.h +530 -0
  186. catzilla-0.0.2/deps/libuv/src/unix/kqueue.c +667 -0
  187. catzilla-0.0.2/deps/libuv/src/unix/linux.c +2761 -0
  188. catzilla-0.0.2/deps/libuv/src/unix/loop-watcher.c +68 -0
  189. catzilla-0.0.2/deps/libuv/src/unix/loop.c +240 -0
  190. catzilla-0.0.2/deps/libuv/src/unix/netbsd.c +264 -0
  191. catzilla-0.0.2/deps/libuv/src/unix/no-fsevents.c +42 -0
  192. catzilla-0.0.2/deps/libuv/src/unix/no-proctitle.c +45 -0
  193. catzilla-0.0.2/deps/libuv/src/unix/openbsd.c +253 -0
  194. catzilla-0.0.2/deps/libuv/src/unix/os390-proctitle.c +136 -0
  195. catzilla-0.0.2/deps/libuv/src/unix/os390-syscalls.c +536 -0
  196. catzilla-0.0.2/deps/libuv/src/unix/os390-syscalls.h +75 -0
  197. catzilla-0.0.2/deps/libuv/src/unix/os390.c +1070 -0
  198. catzilla-0.0.2/deps/libuv/src/unix/pipe.c +555 -0
  199. catzilla-0.0.2/deps/libuv/src/unix/poll.c +159 -0
  200. catzilla-0.0.2/deps/libuv/src/unix/posix-hrtime.c +36 -0
  201. catzilla-0.0.2/deps/libuv/src/unix/posix-poll.c +385 -0
  202. catzilla-0.0.2/deps/libuv/src/unix/process.c +1123 -0
  203. catzilla-0.0.2/deps/libuv/src/unix/procfs-exepath.c +45 -0
  204. catzilla-0.0.2/deps/libuv/src/unix/proctitle.c +157 -0
  205. catzilla-0.0.2/deps/libuv/src/unix/qnx.c +142 -0
  206. catzilla-0.0.2/deps/libuv/src/unix/random-devurandom.c +93 -0
  207. catzilla-0.0.2/deps/libuv/src/unix/random-getentropy.c +57 -0
  208. catzilla-0.0.2/deps/libuv/src/unix/random-getrandom.c +86 -0
  209. catzilla-0.0.2/deps/libuv/src/unix/random-sysctl-linux.c +99 -0
  210. catzilla-0.0.2/deps/libuv/src/unix/signal.c +581 -0
  211. catzilla-0.0.2/deps/libuv/src/unix/stream.c +1567 -0
  212. catzilla-0.0.2/deps/libuv/src/unix/sunos.c +915 -0
  213. catzilla-0.0.2/deps/libuv/src/unix/sysinfo-loadavg.c +36 -0
  214. catzilla-0.0.2/deps/libuv/src/unix/sysinfo-memory.c +42 -0
  215. catzilla-0.0.2/deps/libuv/src/unix/tcp.c +673 -0
  216. catzilla-0.0.2/deps/libuv/src/unix/thread.c +975 -0
  217. catzilla-0.0.2/deps/libuv/src/unix/tty.c +510 -0
  218. catzilla-0.0.2/deps/libuv/src/unix/udp.c +1434 -0
  219. catzilla-0.0.2/deps/libuv/src/uv-common.c +1051 -0
  220. catzilla-0.0.2/deps/libuv/src/uv-common.h +474 -0
  221. catzilla-0.0.2/deps/libuv/src/uv-data-getter-setters.c +119 -0
  222. catzilla-0.0.2/deps/libuv/src/version.c +45 -0
  223. catzilla-0.0.2/deps/libuv/src/win/async.c +98 -0
  224. catzilla-0.0.2/deps/libuv/src/win/atomicops-inl.h +61 -0
  225. catzilla-0.0.2/deps/libuv/src/win/core.c +683 -0
  226. catzilla-0.0.2/deps/libuv/src/win/detect-wakeup.c +56 -0
  227. catzilla-0.0.2/deps/libuv/src/win/dl.c +135 -0
  228. catzilla-0.0.2/deps/libuv/src/win/error.c +183 -0
  229. catzilla-0.0.2/deps/libuv/src/win/fs-event.c +620 -0
  230. catzilla-0.0.2/deps/libuv/src/win/fs-fd-hash-inl.h +200 -0
  231. catzilla-0.0.2/deps/libuv/src/win/fs.c +3774 -0
  232. catzilla-0.0.2/deps/libuv/src/win/getaddrinfo.c +388 -0
  233. catzilla-0.0.2/deps/libuv/src/win/getnameinfo.c +146 -0
  234. catzilla-0.0.2/deps/libuv/src/win/handle-inl.h +180 -0
  235. catzilla-0.0.2/deps/libuv/src/win/handle.c +162 -0
  236. catzilla-0.0.2/deps/libuv/src/win/internal.h +335 -0
  237. catzilla-0.0.2/deps/libuv/src/win/loop-watcher.c +122 -0
  238. catzilla-0.0.2/deps/libuv/src/win/pipe.c +2725 -0
  239. catzilla-0.0.2/deps/libuv/src/win/poll.c +586 -0
  240. catzilla-0.0.2/deps/libuv/src/win/process-stdio.c +419 -0
  241. catzilla-0.0.2/deps/libuv/src/win/process.c +1407 -0
  242. catzilla-0.0.2/deps/libuv/src/win/req-inl.h +214 -0
  243. catzilla-0.0.2/deps/libuv/src/win/signal.c +282 -0
  244. catzilla-0.0.2/deps/libuv/src/win/snprintf.c +42 -0
  245. catzilla-0.0.2/deps/libuv/src/win/stream-inl.h +54 -0
  246. catzilla-0.0.2/deps/libuv/src/win/stream.c +252 -0
  247. catzilla-0.0.2/deps/libuv/src/win/tcp.c +1674 -0
  248. catzilla-0.0.2/deps/libuv/src/win/thread.c +568 -0
  249. catzilla-0.0.2/deps/libuv/src/win/tty.c +2460 -0
  250. catzilla-0.0.2/deps/libuv/src/win/udp.c +1162 -0
  251. catzilla-0.0.2/deps/libuv/src/win/util.c +1750 -0
  252. catzilla-0.0.2/deps/libuv/src/win/winapi.c +144 -0
  253. catzilla-0.0.2/deps/libuv/src/win/winapi.h +4831 -0
  254. catzilla-0.0.2/deps/libuv/src/win/winsock.c +575 -0
  255. catzilla-0.0.2/deps/libuv/src/win/winsock.h +160 -0
  256. catzilla-0.0.2/deps/libuv/test/benchmark-async-pummel.c +120 -0
  257. catzilla-0.0.2/deps/libuv/test/benchmark-async.c +142 -0
  258. catzilla-0.0.2/deps/libuv/test/benchmark-fs-stat.c +138 -0
  259. catzilla-0.0.2/deps/libuv/test/benchmark-getaddrinfo.c +92 -0
  260. catzilla-0.0.2/deps/libuv/test/benchmark-list.h +173 -0
  261. catzilla-0.0.2/deps/libuv/test/benchmark-loop-count.c +134 -0
  262. catzilla-0.0.2/deps/libuv/test/benchmark-million-async.c +113 -0
  263. catzilla-0.0.2/deps/libuv/test/benchmark-million-timers.c +86 -0
  264. catzilla-0.0.2/deps/libuv/test/benchmark-multi-accept.c +451 -0
  265. catzilla-0.0.2/deps/libuv/test/benchmark-ping-pongs.c +221 -0
  266. catzilla-0.0.2/deps/libuv/test/benchmark-ping-udp.c +169 -0
  267. catzilla-0.0.2/deps/libuv/test/benchmark-pound.c +351 -0
  268. catzilla-0.0.2/deps/libuv/test/benchmark-pump.c +478 -0
  269. catzilla-0.0.2/deps/libuv/test/benchmark-queue-work.c +71 -0
  270. catzilla-0.0.2/deps/libuv/test/benchmark-sizes.c +46 -0
  271. catzilla-0.0.2/deps/libuv/test/benchmark-spawn.c +164 -0
  272. catzilla-0.0.2/deps/libuv/test/benchmark-tcp-write-batch.c +144 -0
  273. catzilla-0.0.2/deps/libuv/test/benchmark-thread.c +64 -0
  274. catzilla-0.0.2/deps/libuv/test/benchmark-udp-pummel.c +243 -0
  275. catzilla-0.0.2/deps/libuv/test/blackhole-server.c +122 -0
  276. catzilla-0.0.2/deps/libuv/test/echo-server.c +431 -0
  277. catzilla-0.0.2/deps/libuv/test/fixtures/empty_file +0 -0
  278. catzilla-0.0.2/deps/libuv/test/fixtures/load_error.node +1 -0
  279. catzilla-0.0.2/deps/libuv/test/fixtures/lorem_ipsum.txt +1 -0
  280. catzilla-0.0.2/deps/libuv/test/fixtures/one_file/one_file +0 -0
  281. catzilla-0.0.2/deps/libuv/test/run-benchmarks.c +72 -0
  282. catzilla-0.0.2/deps/libuv/test/run-tests.c +269 -0
  283. catzilla-0.0.2/deps/libuv/test/runner-unix.c +457 -0
  284. catzilla-0.0.2/deps/libuv/test/runner-unix.h +36 -0
  285. catzilla-0.0.2/deps/libuv/test/runner-win.c +348 -0
  286. catzilla-0.0.2/deps/libuv/test/runner-win.h +41 -0
  287. catzilla-0.0.2/deps/libuv/test/runner.c +457 -0
  288. catzilla-0.0.2/deps/libuv/test/runner.h +172 -0
  289. catzilla-0.0.2/deps/libuv/test/task.h +388 -0
  290. catzilla-0.0.2/deps/libuv/test/test-active.c +84 -0
  291. catzilla-0.0.2/deps/libuv/test/test-async-null-cb.c +64 -0
  292. catzilla-0.0.2/deps/libuv/test/test-async.c +134 -0
  293. catzilla-0.0.2/deps/libuv/test/test-barrier.c +160 -0
  294. catzilla-0.0.2/deps/libuv/test/test-callback-stack.c +209 -0
  295. catzilla-0.0.2/deps/libuv/test/test-close-fd.c +84 -0
  296. catzilla-0.0.2/deps/libuv/test/test-close-order.c +80 -0
  297. catzilla-0.0.2/deps/libuv/test/test-condvar.c +248 -0
  298. catzilla-0.0.2/deps/libuv/test/test-connect-unspecified.c +60 -0
  299. catzilla-0.0.2/deps/libuv/test/test-connection-fail.c +161 -0
  300. catzilla-0.0.2/deps/libuv/test/test-cwd-and-chdir.c +57 -0
  301. catzilla-0.0.2/deps/libuv/test/test-default-loop-close.c +58 -0
  302. catzilla-0.0.2/deps/libuv/test/test-delayed-accept.c +189 -0
  303. catzilla-0.0.2/deps/libuv/test/test-dlerror.c +65 -0
  304. catzilla-0.0.2/deps/libuv/test/test-eintr-handling.c +96 -0
  305. catzilla-0.0.2/deps/libuv/test/test-embed.c +79 -0
  306. catzilla-0.0.2/deps/libuv/test/test-emfile.c +129 -0
  307. catzilla-0.0.2/deps/libuv/test/test-env-vars.c +178 -0
  308. catzilla-0.0.2/deps/libuv/test/test-error.c +82 -0
  309. catzilla-0.0.2/deps/libuv/test/test-fail-always.c +29 -0
  310. catzilla-0.0.2/deps/libuv/test/test-fork.c +769 -0
  311. catzilla-0.0.2/deps/libuv/test/test-fs-copyfile.c +232 -0
  312. catzilla-0.0.2/deps/libuv/test/test-fs-event.c +1220 -0
  313. catzilla-0.0.2/deps/libuv/test/test-fs-fd-hash.c +133 -0
  314. catzilla-0.0.2/deps/libuv/test/test-fs-open-flags.c +435 -0
  315. catzilla-0.0.2/deps/libuv/test/test-fs-poll.c +292 -0
  316. catzilla-0.0.2/deps/libuv/test/test-fs-readdir.c +548 -0
  317. catzilla-0.0.2/deps/libuv/test/test-fs.c +4922 -0
  318. catzilla-0.0.2/deps/libuv/test/test-get-currentexe.c +109 -0
  319. catzilla-0.0.2/deps/libuv/test/test-get-loadavg.c +35 -0
  320. catzilla-0.0.2/deps/libuv/test/test-get-memory.c +53 -0
  321. catzilla-0.0.2/deps/libuv/test/test-get-passwd.c +211 -0
  322. catzilla-0.0.2/deps/libuv/test/test-getaddrinfo.c +215 -0
  323. catzilla-0.0.2/deps/libuv/test/test-gethostname.c +58 -0
  324. catzilla-0.0.2/deps/libuv/test/test-getnameinfo.c +116 -0
  325. catzilla-0.0.2/deps/libuv/test/test-getsockname.c +362 -0
  326. catzilla-0.0.2/deps/libuv/test/test-getters-setters.c +114 -0
  327. catzilla-0.0.2/deps/libuv/test/test-gettimeofday.c +39 -0
  328. catzilla-0.0.2/deps/libuv/test/test-handle-fileno.c +125 -0
  329. catzilla-0.0.2/deps/libuv/test/test-homedir.c +81 -0
  330. catzilla-0.0.2/deps/libuv/test/test-hrtime.c +65 -0
  331. catzilla-0.0.2/deps/libuv/test/test-idle.c +125 -0
  332. catzilla-0.0.2/deps/libuv/test/test-idna.c +232 -0
  333. catzilla-0.0.2/deps/libuv/test/test-iouring-pollhup.c +111 -0
  334. catzilla-0.0.2/deps/libuv/test/test-ip-name.c +65 -0
  335. catzilla-0.0.2/deps/libuv/test/test-ip4-addr.c +55 -0
  336. catzilla-0.0.2/deps/libuv/test/test-ip6-addr.c +175 -0
  337. catzilla-0.0.2/deps/libuv/test/test-ipc-heavy-traffic-deadlock-bug.c +159 -0
  338. catzilla-0.0.2/deps/libuv/test/test-ipc-send-recv.c +435 -0
  339. catzilla-0.0.2/deps/libuv/test/test-ipc.c +857 -0
  340. catzilla-0.0.2/deps/libuv/test/test-list.h +1269 -0
  341. catzilla-0.0.2/deps/libuv/test/test-loop-alive.c +68 -0
  342. catzilla-0.0.2/deps/libuv/test/test-loop-close.c +77 -0
  343. catzilla-0.0.2/deps/libuv/test/test-loop-configure.c +38 -0
  344. catzilla-0.0.2/deps/libuv/test/test-loop-handles.c +337 -0
  345. catzilla-0.0.2/deps/libuv/test/test-loop-oom.c +62 -0
  346. catzilla-0.0.2/deps/libuv/test/test-loop-stop.c +83 -0
  347. catzilla-0.0.2/deps/libuv/test/test-loop-time.c +69 -0
  348. catzilla-0.0.2/deps/libuv/test/test-metrics.c +390 -0
  349. catzilla-0.0.2/deps/libuv/test/test-multiple-listen.c +109 -0
  350. catzilla-0.0.2/deps/libuv/test/test-mutexes.c +182 -0
  351. catzilla-0.0.2/deps/libuv/test/test-not-readable-nor-writable-on-read-error.c +104 -0
  352. catzilla-0.0.2/deps/libuv/test/test-not-writable-after-shutdown.c +69 -0
  353. catzilla-0.0.2/deps/libuv/test/test-osx-select.c +140 -0
  354. catzilla-0.0.2/deps/libuv/test/test-pass-always.c +28 -0
  355. catzilla-0.0.2/deps/libuv/test/test-ping-pong.c +439 -0
  356. catzilla-0.0.2/deps/libuv/test/test-pipe-bind-error.c +215 -0
  357. catzilla-0.0.2/deps/libuv/test/test-pipe-close-stdout-read-stdin.c +122 -0
  358. catzilla-0.0.2/deps/libuv/test/test-pipe-connect-error.c +97 -0
  359. catzilla-0.0.2/deps/libuv/test/test-pipe-connect-multiple.c +178 -0
  360. catzilla-0.0.2/deps/libuv/test/test-pipe-connect-prepare.c +83 -0
  361. catzilla-0.0.2/deps/libuv/test/test-pipe-getsockname.c +370 -0
  362. catzilla-0.0.2/deps/libuv/test/test-pipe-pending-instances.c +59 -0
  363. catzilla-0.0.2/deps/libuv/test/test-pipe-sendmsg.c +172 -0
  364. catzilla-0.0.2/deps/libuv/test/test-pipe-server-close.c +94 -0
  365. catzilla-0.0.2/deps/libuv/test/test-pipe-set-fchmod.c +92 -0
  366. catzilla-0.0.2/deps/libuv/test/test-pipe-set-non-blocking.c +131 -0
  367. catzilla-0.0.2/deps/libuv/test/test-platform-output.c +259 -0
  368. catzilla-0.0.2/deps/libuv/test/test-poll-close-doesnt-corrupt-stack.c +114 -0
  369. catzilla-0.0.2/deps/libuv/test/test-poll-close.c +73 -0
  370. catzilla-0.0.2/deps/libuv/test/test-poll-closesocket.c +92 -0
  371. catzilla-0.0.2/deps/libuv/test/test-poll-multiple-handles.c +104 -0
  372. catzilla-0.0.2/deps/libuv/test/test-poll-oob.c +214 -0
  373. catzilla-0.0.2/deps/libuv/test/test-poll.c +730 -0
  374. catzilla-0.0.2/deps/libuv/test/test-process-priority.c +83 -0
  375. catzilla-0.0.2/deps/libuv/test/test-process-title-threadsafe.c +108 -0
  376. catzilla-0.0.2/deps/libuv/test/test-process-title.c +135 -0
  377. catzilla-0.0.2/deps/libuv/test/test-queue-foreach-delete.c +205 -0
  378. catzilla-0.0.2/deps/libuv/test/test-random.c +94 -0
  379. catzilla-0.0.2/deps/libuv/test/test-readable-on-eof.c +110 -0
  380. catzilla-0.0.2/deps/libuv/test/test-ref.c +445 -0
  381. catzilla-0.0.2/deps/libuv/test/test-run-nowait.c +46 -0
  382. catzilla-0.0.2/deps/libuv/test/test-run-once.c +48 -0
  383. catzilla-0.0.2/deps/libuv/test/test-semaphore.c +111 -0
  384. catzilla-0.0.2/deps/libuv/test/test-shutdown-close.c +108 -0
  385. catzilla-0.0.2/deps/libuv/test/test-shutdown-eof.c +188 -0
  386. catzilla-0.0.2/deps/libuv/test/test-shutdown-simultaneous.c +135 -0
  387. catzilla-0.0.2/deps/libuv/test/test-shutdown-twice.c +85 -0
  388. catzilla-0.0.2/deps/libuv/test/test-signal-multiple-loops.c +325 -0
  389. catzilla-0.0.2/deps/libuv/test/test-signal-pending-on-close.c +116 -0
  390. catzilla-0.0.2/deps/libuv/test/test-signal.c +325 -0
  391. catzilla-0.0.2/deps/libuv/test/test-socket-buffer-size.c +77 -0
  392. catzilla-0.0.2/deps/libuv/test/test-spawn.c +2112 -0
  393. catzilla-0.0.2/deps/libuv/test/test-stdio-over-pipes.c +299 -0
  394. catzilla-0.0.2/deps/libuv/test/test-strscpy.c +53 -0
  395. catzilla-0.0.2/deps/libuv/test/test-strtok.c +90 -0
  396. catzilla-0.0.2/deps/libuv/test/test-tcp-alloc-cb-fail.c +123 -0
  397. catzilla-0.0.2/deps/libuv/test/test-tcp-bind-error.c +317 -0
  398. catzilla-0.0.2/deps/libuv/test/test-tcp-bind6-error.c +176 -0
  399. catzilla-0.0.2/deps/libuv/test/test-tcp-close-accept.c +198 -0
  400. catzilla-0.0.2/deps/libuv/test/test-tcp-close-after-read-timeout.c +183 -0
  401. catzilla-0.0.2/deps/libuv/test/test-tcp-close-reset.c +340 -0
  402. catzilla-0.0.2/deps/libuv/test/test-tcp-close-while-connecting.c +97 -0
  403. catzilla-0.0.2/deps/libuv/test/test-tcp-close.c +136 -0
  404. catzilla-0.0.2/deps/libuv/test/test-tcp-connect-error-after-write.c +98 -0
  405. catzilla-0.0.2/deps/libuv/test/test-tcp-connect-error.c +73 -0
  406. catzilla-0.0.2/deps/libuv/test/test-tcp-connect-timeout.c +196 -0
  407. catzilla-0.0.2/deps/libuv/test/test-tcp-connect6-error.c +129 -0
  408. catzilla-0.0.2/deps/libuv/test/test-tcp-create-socket-early.c +213 -0
  409. catzilla-0.0.2/deps/libuv/test/test-tcp-flags.c +59 -0
  410. catzilla-0.0.2/deps/libuv/test/test-tcp-oob.c +146 -0
  411. catzilla-0.0.2/deps/libuv/test/test-tcp-open.c +407 -0
  412. catzilla-0.0.2/deps/libuv/test/test-tcp-read-stop-start.c +136 -0
  413. catzilla-0.0.2/deps/libuv/test/test-tcp-read-stop.c +76 -0
  414. catzilla-0.0.2/deps/libuv/test/test-tcp-reuseport.c +248 -0
  415. catzilla-0.0.2/deps/libuv/test/test-tcp-rst.c +110 -0
  416. catzilla-0.0.2/deps/libuv/test/test-tcp-shutdown-after-write.c +138 -0
  417. catzilla-0.0.2/deps/libuv/test/test-tcp-try-write-error.c +109 -0
  418. catzilla-0.0.2/deps/libuv/test/test-tcp-try-write.c +135 -0
  419. catzilla-0.0.2/deps/libuv/test/test-tcp-unexpected-read.c +117 -0
  420. catzilla-0.0.2/deps/libuv/test/test-tcp-write-after-connect.c +77 -0
  421. catzilla-0.0.2/deps/libuv/test/test-tcp-write-fail.c +115 -0
  422. catzilla-0.0.2/deps/libuv/test/test-tcp-write-in-a-row.c +143 -0
  423. catzilla-0.0.2/deps/libuv/test/test-tcp-write-queue-order.c +139 -0
  424. catzilla-0.0.2/deps/libuv/test/test-tcp-write-to-half-open-connection.c +141 -0
  425. catzilla-0.0.2/deps/libuv/test/test-tcp-writealot.c +185 -0
  426. catzilla-0.0.2/deps/libuv/test/test-test-macros.c +42 -0
  427. catzilla-0.0.2/deps/libuv/test/test-thread-affinity.c +154 -0
  428. catzilla-0.0.2/deps/libuv/test/test-thread-equal.c +51 -0
  429. catzilla-0.0.2/deps/libuv/test/test-thread-name.c +193 -0
  430. catzilla-0.0.2/deps/libuv/test/test-thread-priority.c +105 -0
  431. catzilla-0.0.2/deps/libuv/test/test-thread.c +306 -0
  432. catzilla-0.0.2/deps/libuv/test/test-threadpool-cancel.c +418 -0
  433. catzilla-0.0.2/deps/libuv/test/test-threadpool.c +76 -0
  434. catzilla-0.0.2/deps/libuv/test/test-timer-again.c +141 -0
  435. catzilla-0.0.2/deps/libuv/test/test-timer-from-check.c +80 -0
  436. catzilla-0.0.2/deps/libuv/test/test-timer.c +453 -0
  437. catzilla-0.0.2/deps/libuv/test/test-tmpdir.c +89 -0
  438. catzilla-0.0.2/deps/libuv/test/test-tty-duplicate-key.c +381 -0
  439. catzilla-0.0.2/deps/libuv/test/test-tty-escape-sequence-processing.c +1632 -0
  440. catzilla-0.0.2/deps/libuv/test/test-tty.c +468 -0
  441. catzilla-0.0.2/deps/libuv/test/test-udp-alloc-cb-fail.c +196 -0
  442. catzilla-0.0.2/deps/libuv/test/test-udp-bind.c +93 -0
  443. catzilla-0.0.2/deps/libuv/test/test-udp-connect.c +196 -0
  444. catzilla-0.0.2/deps/libuv/test/test-udp-connect6.c +199 -0
  445. catzilla-0.0.2/deps/libuv/test/test-udp-create-socket-early.c +139 -0
  446. catzilla-0.0.2/deps/libuv/test/test-udp-dgram-too-big.c +91 -0
  447. catzilla-0.0.2/deps/libuv/test/test-udp-ipv6.c +259 -0
  448. catzilla-0.0.2/deps/libuv/test/test-udp-mmsg.c +150 -0
  449. catzilla-0.0.2/deps/libuv/test/test-udp-multicast-interface.c +104 -0
  450. catzilla-0.0.2/deps/libuv/test/test-udp-multicast-interface6.c +108 -0
  451. catzilla-0.0.2/deps/libuv/test/test-udp-multicast-join.c +199 -0
  452. catzilla-0.0.2/deps/libuv/test/test-udp-multicast-join6.c +224 -0
  453. catzilla-0.0.2/deps/libuv/test/test-udp-multicast-ttl.c +94 -0
  454. catzilla-0.0.2/deps/libuv/test/test-udp-open.c +350 -0
  455. catzilla-0.0.2/deps/libuv/test/test-udp-options.c +160 -0
  456. catzilla-0.0.2/deps/libuv/test/test-udp-recv-in-a-row.c +128 -0
  457. catzilla-0.0.2/deps/libuv/test/test-udp-reuseport.c +287 -0
  458. catzilla-0.0.2/deps/libuv/test/test-udp-send-and-recv.c +212 -0
  459. catzilla-0.0.2/deps/libuv/test/test-udp-send-hang-loop.c +99 -0
  460. catzilla-0.0.2/deps/libuv/test/test-udp-send-immediate.c +148 -0
  461. catzilla-0.0.2/deps/libuv/test/test-udp-send-unreachable.c +201 -0
  462. catzilla-0.0.2/deps/libuv/test/test-udp-sendmmsg-error.c +75 -0
  463. catzilla-0.0.2/deps/libuv/test/test-udp-try-send.c +149 -0
  464. catzilla-0.0.2/deps/libuv/test/test-uname.c +69 -0
  465. catzilla-0.0.2/deps/libuv/test/test-walk-handles.c +77 -0
  466. catzilla-0.0.2/deps/libuv/test/test-watcher-cross-stop.c +112 -0
  467. catzilla-0.0.2/deps/libuv/tools/make_dist_html.py +122 -0
  468. catzilla-0.0.2/deps/libuv/tools/vswhere_usability_wrapper.cmd +33 -0
  469. catzilla-0.0.2/deps/libuv/tsansupp.txt +2 -0
  470. catzilla-0.0.2/deps/libuv/uv_win_longpath.manifest +8 -0
  471. catzilla-0.0.2/deps/unity/.editorconfig +27 -0
  472. catzilla-0.0.2/deps/unity/.github/FUNDING.yml +13 -0
  473. catzilla-0.0.2/deps/unity/.github/workflows/main.yml +35 -0
  474. catzilla-0.0.2/deps/unity/CMakeLists.txt +172 -0
  475. catzilla-0.0.2/deps/unity/LICENSE.txt +21 -0
  476. catzilla-0.0.2/deps/unity/README.md +234 -0
  477. catzilla-0.0.2/deps/unity/auto/__init__.py +7 -0
  478. catzilla-0.0.2/deps/unity/auto/colour_prompt.rb +120 -0
  479. catzilla-0.0.2/deps/unity/auto/colour_reporter.rb +40 -0
  480. catzilla-0.0.2/deps/unity/auto/extract_version.py +22 -0
  481. catzilla-0.0.2/deps/unity/auto/generate_config.yml +43 -0
  482. catzilla-0.0.2/deps/unity/auto/generate_module.rb +318 -0
  483. catzilla-0.0.2/deps/unity/auto/generate_test_runner.rb +631 -0
  484. catzilla-0.0.2/deps/unity/auto/parse_output.rb +390 -0
  485. catzilla-0.0.2/deps/unity/auto/run_test.erb +37 -0
  486. catzilla-0.0.2/deps/unity/auto/stylize_as_junit.py +161 -0
  487. catzilla-0.0.2/deps/unity/auto/stylize_as_junit.rb +253 -0
  488. catzilla-0.0.2/deps/unity/auto/test_file_filter.rb +28 -0
  489. catzilla-0.0.2/deps/unity/auto/type_sanitizer.rb +13 -0
  490. catzilla-0.0.2/deps/unity/auto/unity_test_summary.py +140 -0
  491. catzilla-0.0.2/deps/unity/auto/unity_test_summary.rb +140 -0
  492. catzilla-0.0.2/deps/unity/auto/yaml_helper.rb +23 -0
  493. catzilla-0.0.2/deps/unity/docs/CODE_OF_CONDUCT.md +138 -0
  494. catzilla-0.0.2/deps/unity/docs/CONTRIBUTING.md +238 -0
  495. catzilla-0.0.2/deps/unity/docs/MesonGeneratorRunner.md +18 -0
  496. catzilla-0.0.2/deps/unity/docs/ThrowTheSwitchCodingStandard.md +187 -0
  497. catzilla-0.0.2/deps/unity/docs/UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf +0 -0
  498. catzilla-0.0.2/deps/unity/docs/UnityAssertionsReference.md +860 -0
  499. catzilla-0.0.2/deps/unity/docs/UnityChangeLog.md +110 -0
  500. catzilla-0.0.2/deps/unity/docs/UnityConfigurationGuide.md +654 -0
  501. catzilla-0.0.2/deps/unity/docs/UnityGettingStartedGuide.md +242 -0
  502. catzilla-0.0.2/deps/unity/docs/UnityHelperScriptsGuide.md +549 -0
  503. catzilla-0.0.2/deps/unity/docs/UnityKnownIssues.md +13 -0
  504. catzilla-0.0.2/deps/unity/examples/example_1/makefile +73 -0
  505. catzilla-0.0.2/deps/unity/examples/example_1/meson.build +48 -0
  506. catzilla-0.0.2/deps/unity/examples/example_1/readme.txt +12 -0
  507. catzilla-0.0.2/deps/unity/examples/example_1/src/ProductionCode.c +30 -0
  508. catzilla-0.0.2/deps/unity/examples/example_1/src/ProductionCode.h +9 -0
  509. catzilla-0.0.2/deps/unity/examples/example_1/src/ProductionCode2.c +17 -0
  510. catzilla-0.0.2/deps/unity/examples/example_1/src/ProductionCode2.h +8 -0
  511. catzilla-0.0.2/deps/unity/examples/example_1/subprojects/unity.wrap +3 -0
  512. catzilla-0.0.2/deps/unity/examples/example_1/test/TestProductionCode.c +68 -0
  513. catzilla-0.0.2/deps/unity/examples/example_1/test/TestProductionCode2.c +37 -0
  514. catzilla-0.0.2/deps/unity/examples/example_1/test/test_runners/TestProductionCode2_Runner.c +53 -0
  515. catzilla-0.0.2/deps/unity/examples/example_1/test/test_runners/TestProductionCode_Runner.c +57 -0
  516. catzilla-0.0.2/deps/unity/examples/example_2/makefile +72 -0
  517. catzilla-0.0.2/deps/unity/examples/example_2/readme.txt +5 -0
  518. catzilla-0.0.2/deps/unity/examples/example_2/src/ProductionCode.c +30 -0
  519. catzilla-0.0.2/deps/unity/examples/example_2/src/ProductionCode.h +9 -0
  520. catzilla-0.0.2/deps/unity/examples/example_2/src/ProductionCode2.c +17 -0
  521. catzilla-0.0.2/deps/unity/examples/example_2/src/ProductionCode2.h +8 -0
  522. catzilla-0.0.2/deps/unity/examples/example_2/test/TestProductionCode.c +71 -0
  523. catzilla-0.0.2/deps/unity/examples/example_2/test/TestProductionCode2.c +40 -0
  524. catzilla-0.0.2/deps/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +16 -0
  525. catzilla-0.0.2/deps/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +18 -0
  526. catzilla-0.0.2/deps/unity/examples/example_2/test/test_runners/all_tests.c +19 -0
  527. catzilla-0.0.2/deps/unity/examples/example_3/helper/UnityHelper.c +17 -0
  528. catzilla-0.0.2/deps/unity/examples/example_3/helper/UnityHelper.h +19 -0
  529. catzilla-0.0.2/deps/unity/examples/example_3/rakefile.rb +45 -0
  530. catzilla-0.0.2/deps/unity/examples/example_3/rakefile_helper.rb +255 -0
  531. catzilla-0.0.2/deps/unity/examples/example_3/readme.txt +13 -0
  532. catzilla-0.0.2/deps/unity/examples/example_3/src/ProductionCode.c +30 -0
  533. catzilla-0.0.2/deps/unity/examples/example_3/src/ProductionCode.h +9 -0
  534. catzilla-0.0.2/deps/unity/examples/example_3/src/ProductionCode2.c +17 -0
  535. catzilla-0.0.2/deps/unity/examples/example_3/src/ProductionCode2.h +8 -0
  536. catzilla-0.0.2/deps/unity/examples/example_3/target_gcc_32.yml +54 -0
  537. catzilla-0.0.2/deps/unity/examples/example_3/test/TestProductionCode.c +68 -0
  538. catzilla-0.0.2/deps/unity/examples/example_3/test/TestProductionCode2.c +37 -0
  539. catzilla-0.0.2/deps/unity/examples/example_4/meson.build +12 -0
  540. catzilla-0.0.2/deps/unity/examples/example_4/readme.txt +15 -0
  541. catzilla-0.0.2/deps/unity/examples/example_4/src/ProductionCode.c +30 -0
  542. catzilla-0.0.2/deps/unity/examples/example_4/src/ProductionCode.h +9 -0
  543. catzilla-0.0.2/deps/unity/examples/example_4/src/ProductionCode2.c +17 -0
  544. catzilla-0.0.2/deps/unity/examples/example_4/src/ProductionCode2.h +8 -0
  545. catzilla-0.0.2/deps/unity/examples/example_4/src/meson.build +16 -0
  546. catzilla-0.0.2/deps/unity/examples/example_4/subprojects/unity.wrap +6 -0
  547. catzilla-0.0.2/deps/unity/examples/example_4/test/TestProductionCode.c +69 -0
  548. catzilla-0.0.2/deps/unity/examples/example_4/test/TestProductionCode2.c +41 -0
  549. catzilla-0.0.2/deps/unity/examples/example_4/test/meson.build +7 -0
  550. catzilla-0.0.2/deps/unity/examples/example_4/test/test_runners/TestProductionCode2_Runner.c +53 -0
  551. catzilla-0.0.2/deps/unity/examples/example_4/test/test_runners/TestProductionCode_Runner.c +57 -0
  552. catzilla-0.0.2/deps/unity/examples/example_4/test/test_runners/meson.build +13 -0
  553. catzilla-0.0.2/deps/unity/examples/unity_config.h +251 -0
  554. catzilla-0.0.2/deps/unity/extras/bdd/readme.md +40 -0
  555. catzilla-0.0.2/deps/unity/extras/bdd/src/unity_bdd.h +44 -0
  556. catzilla-0.0.2/deps/unity/extras/bdd/test/meson.build +9 -0
  557. catzilla-0.0.2/deps/unity/extras/bdd/test/test_bdd.c +129 -0
  558. catzilla-0.0.2/deps/unity/extras/eclipse/error_parsers.txt +26 -0
  559. catzilla-0.0.2/deps/unity/extras/fixture/readme.md +26 -0
  560. catzilla-0.0.2/deps/unity/extras/fixture/src/meson.build +10 -0
  561. catzilla-0.0.2/deps/unity/extras/fixture/src/unity_fixture.c +347 -0
  562. catzilla-0.0.2/deps/unity/extras/fixture/src/unity_fixture.h +94 -0
  563. catzilla-0.0.2/deps/unity/extras/fixture/src/unity_fixture_internals.h +53 -0
  564. catzilla-0.0.2/deps/unity/extras/fixture/test/Makefile +72 -0
  565. catzilla-0.0.2/deps/unity/extras/fixture/test/main/AllTests.c +20 -0
  566. catzilla-0.0.2/deps/unity/extras/fixture/test/template_fixture_tests.c +39 -0
  567. catzilla-0.0.2/deps/unity/extras/fixture/test/unity_fixture_Test.c +290 -0
  568. catzilla-0.0.2/deps/unity/extras/fixture/test/unity_fixture_TestRunner.c +35 -0
  569. catzilla-0.0.2/deps/unity/extras/memory/readme.md +42 -0
  570. catzilla-0.0.2/deps/unity/extras/memory/src/meson.build +9 -0
  571. catzilla-0.0.2/deps/unity/extras/memory/src/unity_memory.c +203 -0
  572. catzilla-0.0.2/deps/unity/extras/memory/src/unity_memory.h +61 -0
  573. catzilla-0.0.2/deps/unity/extras/memory/test/Makefile +85 -0
  574. catzilla-0.0.2/deps/unity/extras/memory/test/unity_memory_Test.c +326 -0
  575. catzilla-0.0.2/deps/unity/extras/memory/test/unity_memory_TestRunner.c +50 -0
  576. catzilla-0.0.2/deps/unity/extras/memory/test/unity_output_Spy.c +57 -0
  577. catzilla-0.0.2/deps/unity/extras/memory/test/unity_output_Spy.h +17 -0
  578. catzilla-0.0.2/deps/unity/library.json +25 -0
  579. catzilla-0.0.2/deps/unity/meson.build +80 -0
  580. catzilla-0.0.2/deps/unity/meson_options.txt +3 -0
  581. catzilla-0.0.2/deps/unity/platformio-build.py +24 -0
  582. catzilla-0.0.2/deps/unity/src/meson.build +17 -0
  583. catzilla-0.0.2/deps/unity/src/unity.c +2501 -0
  584. catzilla-0.0.2/deps/unity/src/unity.h +698 -0
  585. catzilla-0.0.2/deps/unity/src/unity_internals.h +1183 -0
  586. catzilla-0.0.2/deps/unity/test/.rubocop.yml +83 -0
  587. catzilla-0.0.2/deps/unity/test/Makefile +167 -0
  588. catzilla-0.0.2/deps/unity/test/expectdata/testsample_cmd.c +61 -0
  589. catzilla-0.0.2/deps/unity/test/expectdata/testsample_def.c +57 -0
  590. catzilla-0.0.2/deps/unity/test/expectdata/testsample_head1.c +55 -0
  591. catzilla-0.0.2/deps/unity/test/expectdata/testsample_head1.h +15 -0
  592. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_cmd.c +80 -0
  593. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_def.c +76 -0
  594. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_head1.c +75 -0
  595. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_head1.h +13 -0
  596. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_new1.c +89 -0
  597. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_new2.c +89 -0
  598. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_param.c +77 -0
  599. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_run1.c +89 -0
  600. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_run2.c +89 -0
  601. catzilla-0.0.2/deps/unity/test/expectdata/testsample_mock_yaml.c +90 -0
  602. catzilla-0.0.2/deps/unity/test/expectdata/testsample_new1.c +67 -0
  603. catzilla-0.0.2/deps/unity/test/expectdata/testsample_new2.c +70 -0
  604. catzilla-0.0.2/deps/unity/test/expectdata/testsample_param.c +58 -0
  605. catzilla-0.0.2/deps/unity/test/expectdata/testsample_run1.c +67 -0
  606. catzilla-0.0.2/deps/unity/test/expectdata/testsample_run2.c +70 -0
  607. catzilla-0.0.2/deps/unity/test/expectdata/testsample_yaml.c +71 -0
  608. catzilla-0.0.2/deps/unity/test/rakefile +164 -0
  609. catzilla-0.0.2/deps/unity/test/rakefile_helper.rb +316 -0
  610. catzilla-0.0.2/deps/unity/test/spec/generate_module_existing_file_spec.rb +164 -0
  611. catzilla-0.0.2/deps/unity/test/targets/ansi.yml +51 -0
  612. catzilla-0.0.2/deps/unity/test/targets/clang_file.yml +79 -0
  613. catzilla-0.0.2/deps/unity/test/targets/clang_strict.yml +79 -0
  614. catzilla-0.0.2/deps/unity/test/targets/gcc_32.yml +52 -0
  615. catzilla-0.0.2/deps/unity/test/targets/gcc_64.yml +53 -0
  616. catzilla-0.0.2/deps/unity/test/targets/gcc_auto_limits.yml +50 -0
  617. catzilla-0.0.2/deps/unity/test/targets/gcc_auto_stdint.yml +62 -0
  618. catzilla-0.0.2/deps/unity/test/targets/gcc_manual_math.yml +50 -0
  619. catzilla-0.0.2/deps/unity/test/targets/hitech_picc18.yml +98 -0
  620. catzilla-0.0.2/deps/unity/test/targets/iar_arm_v4.yml +105 -0
  621. catzilla-0.0.2/deps/unity/test/targets/iar_arm_v5.yml +99 -0
  622. catzilla-0.0.2/deps/unity/test/targets/iar_arm_v5_3.yml +99 -0
  623. catzilla-0.0.2/deps/unity/test/targets/iar_armcortex_LM3S9B92_v5_4.yml +97 -0
  624. catzilla-0.0.2/deps/unity/test/targets/iar_cortexm3_v5.yml +101 -0
  625. catzilla-0.0.2/deps/unity/test/targets/iar_msp430.yml +119 -0
  626. catzilla-0.0.2/deps/unity/test/targets/iar_sh2a_v6.yml +106 -0
  627. catzilla-0.0.2/deps/unity/test/testdata/CException.h +18 -0
  628. catzilla-0.0.2/deps/unity/test/testdata/Defs.h +16 -0
  629. catzilla-0.0.2/deps/unity/test/testdata/cmock.h +21 -0
  630. catzilla-0.0.2/deps/unity/test/testdata/mockMock.h +20 -0
  631. catzilla-0.0.2/deps/unity/test/testdata/testRunnerGenerator.c +204 -0
  632. catzilla-0.0.2/deps/unity/test/testdata/testRunnerGeneratorSmall.c +73 -0
  633. catzilla-0.0.2/deps/unity/test/testdata/testRunnerGeneratorWithMocks.c +200 -0
  634. catzilla-0.0.2/deps/unity/test/tests/self_assessment_utils.h +151 -0
  635. catzilla-0.0.2/deps/unity/test/tests/test_generate_test_runner.rb +1341 -0
  636. catzilla-0.0.2/deps/unity/test/tests/test_unity_arrays.c +2941 -0
  637. catzilla-0.0.2/deps/unity/test/tests/test_unity_core.c +375 -0
  638. catzilla-0.0.2/deps/unity/test/tests/test_unity_doubles.c +1285 -0
  639. catzilla-0.0.2/deps/unity/test/tests/test_unity_floats.c +1395 -0
  640. catzilla-0.0.2/deps/unity/test/tests/test_unity_integers.c +2863 -0
  641. catzilla-0.0.2/deps/unity/test/tests/test_unity_integers_64.c +783 -0
  642. catzilla-0.0.2/deps/unity/test/tests/test_unity_memory.c +82 -0
  643. catzilla-0.0.2/deps/unity/test/tests/test_unity_parameterized.c +309 -0
  644. catzilla-0.0.2/deps/unity/test/tests/test_unity_parameterizedDemo.c +28 -0
  645. catzilla-0.0.2/deps/unity/test/tests/test_unity_strings.c +330 -0
  646. catzilla-0.0.2/deps/unity/test/tests/types_for_test.h +21 -0
  647. catzilla-0.0.2/deps/unity/unityConfig.cmake +1 -0
  648. catzilla-0.0.2/examples/c_router_demo/README.md +170 -0
  649. catzilla-0.0.2/examples/c_router_demo/main.py +356 -0
  650. catzilla-0.0.2/examples/error_handling/README.md +60 -0
  651. catzilla-0.0.2/examples/error_handling/comprehensive_error_handling.py +150 -0
  652. catzilla-0.0.2/examples/error_handling/production_vs_development.py +54 -0
  653. catzilla-0.0.2/examples/error_handling_demo.py +156 -0
  654. catzilla-0.0.2/examples/hello_world/hello_world.py +56 -0
  655. catzilla-0.0.2/examples/hello_world/main.py +431 -0
  656. catzilla-0.0.2/examples/router_groups/README.md +249 -0
  657. catzilla-0.0.2/examples/router_groups/main.py +385 -0
  658. catzilla-0.0.2/examples/router_groups/simple_blog.py +257 -0
  659. catzilla-0.0.2/examples/test_advanced_routing.py +56 -0
  660. catzilla-0.0.2/pyproject.toml +311 -0
  661. catzilla-0.0.2/python/catzilla/__init__.py +22 -0
  662. catzilla-0.0.2/python/catzilla/app.py +359 -0
  663. catzilla-0.0.2/python/catzilla/c_router.py +334 -0
  664. catzilla-0.0.2/python/catzilla/fast_router.py +261 -0
  665. catzilla-0.0.2/python/catzilla/logging.py +109 -0
  666. catzilla-0.0.2/python/catzilla/response.py +144 -0
  667. catzilla-0.0.2/python/catzilla/routing.py +594 -0
  668. catzilla-0.0.2/python/catzilla/types.py +408 -0
  669. catzilla-0.0.2/scripts/build.bat +191 -0
  670. catzilla-0.0.2/scripts/build.sh +45 -0
  671. catzilla-0.0.2/scripts/build_wheels_local.sh +79 -0
  672. catzilla-0.0.2/scripts/bump_version.sh +303 -0
  673. catzilla-0.0.2/scripts/release.py +346 -0
  674. catzilla-0.0.2/scripts/run_example.bat +124 -0
  675. catzilla-0.0.2/scripts/run_example.sh +122 -0
  676. catzilla-0.0.2/scripts/run_tests.bat +199 -0
  677. catzilla-0.0.2/scripts/run_tests.sh +160 -0
  678. catzilla-0.0.2/scripts/test_windows_wheels.ps1 +66 -0
  679. catzilla-0.0.2/scripts/version.py +299 -0
  680. catzilla-0.0.2/setup.cfg +4 -0
  681. catzilla-0.0.2/setup.py +69 -0
  682. catzilla-0.0.2/src/core/logging.h +106 -0
  683. catzilla-0.0.2/src/core/main.c +52 -0
  684. catzilla-0.0.2/src/core/router.c +668 -0
  685. catzilla-0.0.2/src/core/router.h +207 -0
  686. catzilla-0.0.2/src/core/server.c +1284 -0
  687. catzilla-0.0.2/src/core/server.h +246 -0
  688. catzilla-0.0.2/src/core/windows_compat.h +123 -0
  689. catzilla-0.0.2/src/python/module.c +584 -0
  690. catzilla-0.0.2/tests/c/test_advanced_router.c +246 -0
  691. catzilla-0.0.2/tests/c/test_router.c +50 -0
  692. catzilla-0.0.2/tests/c/test_server_integration.c +163 -0
  693. catzilla-0.0.2/tests/python/test_advanced_routing.py +448 -0
  694. catzilla-0.0.2/tests/python/test_basic.py +222 -0
  695. catzilla-0.0.2/tests/python/test_http_responses.py +364 -0
  696. catzilla-0.0.2/tests/python/test_request.py +288 -0
  697. catzilla-0.0.2/tests/python/test_router_groups.py +1040 -0
@@ -0,0 +1,637 @@
1
+ cmake_minimum_required(VERSION 3.15)
2
+ project(catzilla VERSION 0.0.2 LANGUAGES C CXX)
3
+
4
+ # Windows-specific configuration for professional Python library handling
5
+ if(WIN32)
6
+ # Professional Windows Python library detection and configuration
7
+ message(STATUS "Windows: Configuring Python library detection...")
8
+
9
+ # Check if Python debug libraries are available
10
+ find_library(PYTHON_DEBUG_LIB
11
+ NAMES python${Python3_VERSION_MAJOR}${Python3_VERSION_MINOR}_d
12
+ PATHS ${Python3_LIBRARY_DIRS}
13
+ NO_DEFAULT_PATH)
14
+
15
+ # Determine optimal build configuration
16
+ if(NOT CMAKE_BUILD_TYPE)
17
+ if(PYTHON_DEBUG_LIB)
18
+ set(CMAKE_BUILD_TYPE Debug CACHE STRING "Default build type" FORCE)
19
+ message(STATUS "Windows: Python debug libraries found - using Debug build")
20
+ else()
21
+ set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING "Default build type" FORCE)
22
+ message(STATUS "Windows: Python debug libraries not found - using RelWithDebInfo")
23
+ endif()
24
+ else()
25
+ # User specified build type - validate it works
26
+ if(CMAKE_BUILD_TYPE STREQUAL "Debug" AND NOT PYTHON_DEBUG_LIB)
27
+ message(WARNING
28
+ "Debug build requested but Python debug libraries not found.\n"
29
+ "This may cause linking errors (python3XX_d.lib not found).\n"
30
+ "Consider using 'RelWithDebInfo' for debugging with release Python libraries,\n"
31
+ "or install Python with debug libraries.\n"
32
+ "Continuing with Debug build as requested...")
33
+ endif()
34
+ endif()
35
+
36
+ message(STATUS "Windows: Using ${CMAKE_BUILD_TYPE} build configuration")
37
+
38
+ # Configure Python library linking based on build type
39
+ if(CMAKE_BUILD_TYPE STREQUAL "Debug" AND PYTHON_DEBUG_LIB)
40
+ # Use debug Python library if available
41
+ set(Python3_LIBRARIES ${PYTHON_DEBUG_LIB})
42
+ message(STATUS "Windows: Using Python debug library: ${PYTHON_DEBUG_LIB}")
43
+ else()
44
+ # Use release Python library (safer default)
45
+ if(Python3_LIBRARY_RELEASE)
46
+ set(Python3_LIBRARIES ${Python3_LIBRARY_RELEASE})
47
+ message(STATUS "Windows: Using Python release library: ${Python3_LIBRARY_RELEASE}")
48
+ elseif(Python3_LIBRARY)
49
+ # Ensure we're not using debug library by accident
50
+ string(REGEX REPLACE "_d\\.lib$" ".lib" Python3_LIBRARIES "${Python3_LIBRARY}")
51
+ message(STATUS "Windows: Modified Python library path: ${Python3_LIBRARIES}")
52
+ endif()
53
+ endif()
54
+ else()
55
+ # Unix-like systems: use Debug by default
56
+ if(NOT CMAKE_BUILD_TYPE)
57
+ set(CMAKE_BUILD_TYPE Debug CACHE STRING "Default build type" FORCE)
58
+ endif()
59
+ endif()
60
+
61
+ # Platform-specific compiler flags
62
+ if(MSVC)
63
+ # MSVC compiler flags
64
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W1")
65
+ set(CMAKE_C_FLAGS_DEBUG "/Od /Zi /RTC1")
66
+ set(CMAKE_C_FLAGS_RELEASE "/O2 /DNDEBUG")
67
+ set(CMAKE_C_FLAGS_RELWITHDEBINFO "/O2 /Zi /DNDEBUG")
68
+
69
+ # Ensure warnings don't cause build failures
70
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /WX-")
71
+
72
+ add_definitions(-D_CRT_SECURE_NO_WARNINGS)
73
+ add_definitions(-DWIN32_LEAN_AND_MEAN)
74
+ add_definitions(-D_WIN32_WINNT=0x0602) # Windows 8 or later
75
+
76
+ # Suppress common Windows warnings
77
+ add_definitions(-D_WINSOCK_DEPRECATED_NO_WARNINGS)
78
+
79
+ # Suppress Unity test function parameter warnings
80
+ add_compile_options(/wd4113) # function parameter list mismatch (Unity test warnings)
81
+ else()
82
+ # GCC/Clang compiler flags (Unix-like systems)
83
+ add_compile_options(-g -O0)
84
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
85
+ endif()
86
+
87
+ set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "")
88
+
89
+ # macOS multi-architecture support
90
+ if(APPLE)
91
+ # Enhanced architecture detection for macOS wheel building
92
+ message(STATUS "macOS: Configuring architecture detection...")
93
+
94
+ # Priority 1: Check environment variables from cibuildwheel/wheel building
95
+ set(TARGET_ARCH "")
96
+
97
+ # Check for cibuildwheel's explicit architecture environment variable
98
+ if(DEFINED ENV{_PYTHON_HOST_PLATFORM})
99
+ string(REGEX MATCH "macosx-[0-9._]+-([a-zA-Z0-9_]+)" ARCH_MATCH $ENV{_PYTHON_HOST_PLATFORM})
100
+ if(CMAKE_MATCH_1)
101
+ set(TARGET_ARCH ${CMAKE_MATCH_1})
102
+ message(STATUS "macOS: Detected architecture from _PYTHON_HOST_PLATFORM: ${TARGET_ARCH}")
103
+ endif()
104
+ endif()
105
+
106
+ # Check CMAKE_OSX_ARCHITECTURES environment variable
107
+ if(NOT TARGET_ARCH AND DEFINED ENV{CMAKE_OSX_ARCHITECTURES})
108
+ set(TARGET_ARCH $ENV{CMAKE_OSX_ARCHITECTURES})
109
+ message(STATUS "macOS: Using architecture from CMAKE_OSX_ARCHITECTURES env: ${TARGET_ARCH}")
110
+ endif()
111
+
112
+ # Check ARCHFLAGS (common in Python extension building)
113
+ if(NOT TARGET_ARCH AND DEFINED ENV{ARCHFLAGS})
114
+ string(REGEX MATCHALL "-arch ([a-zA-Z0-9_]+)" ARCH_MATCHES $ENV{ARCHFLAGS})
115
+ set(PARSED_ARCHS "")
116
+ foreach(ARCH_MATCH ${ARCH_MATCHES})
117
+ string(REGEX REPLACE "-arch " "" ARCH ${ARCH_MATCH})
118
+ list(APPEND PARSED_ARCHS ${ARCH})
119
+ endforeach()
120
+ if(PARSED_ARCHS)
121
+ # Use the first architecture if multiple are specified
122
+ list(GET PARSED_ARCHS 0 TARGET_ARCH)
123
+ message(STATUS "macOS: Using architecture from ARCHFLAGS: ${TARGET_ARCH}")
124
+ endif()
125
+ endif()
126
+
127
+ # Check for platform-specific markers in environment
128
+ if(NOT TARGET_ARCH)
129
+ if(DEFINED ENV{PLAT_NAME})
130
+ if($ENV{PLAT_NAME} MATCHES "arm64")
131
+ set(TARGET_ARCH "arm64")
132
+ message(STATUS "macOS: Detected ARM64 from PLAT_NAME")
133
+ elseif($ENV{PLAT_NAME} MATCHES "x86_64")
134
+ set(TARGET_ARCH "x86_64")
135
+ message(STATUS "macOS: Detected x86_64 from PLAT_NAME")
136
+ endif()
137
+ endif()
138
+ endif()
139
+
140
+ # Fallback to system detection
141
+ if(NOT TARGET_ARCH)
142
+ execute_process(
143
+ COMMAND uname -m
144
+ OUTPUT_VARIABLE SYSTEM_ARCH
145
+ OUTPUT_STRIP_TRAILING_WHITESPACE
146
+ )
147
+ set(TARGET_ARCH ${SYSTEM_ARCH})
148
+ message(STATUS "macOS: Auto-detected system architecture: ${TARGET_ARCH}")
149
+ endif()
150
+
151
+ # Set CMAKE_OSX_ARCHITECTURES to the target architecture
152
+ set(CMAKE_OSX_ARCHITECTURES ${TARGET_ARCH} CACHE STRING "Build architectures for macOS" FORCE)
153
+ message(STATUS "macOS: Final target architecture: ${CMAKE_OSX_ARCHITECTURES}")
154
+
155
+ # Set architecture-specific compiler flags
156
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -arch ${TARGET_ARCH}")
157
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -arch ${TARGET_ARCH}")
158
+ message(STATUS "macOS: Added architecture flags: -arch ${TARGET_ARCH}")
159
+
160
+ # Additional macOS-specific optimizations
161
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-common")
162
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-common")
163
+
164
+ # Ensure proper deployment target handling
165
+ if(NOT CMAKE_OSX_DEPLOYMENT_TARGET)
166
+ set(CMAKE_OSX_DEPLOYMENT_TARGET "10.15" CACHE STRING "Minimum macOS deployment target")
167
+ endif()
168
+ message(STATUS "macOS: Deployment target: ${CMAKE_OSX_DEPLOYMENT_TARGET}")
169
+ endif()
170
+
171
+ # Python support
172
+ # Set Python-related variables to help CMake find Python in containerized environments
173
+ if(DEFINED ENV{Python3_ROOT_DIR})
174
+ set(Python3_ROOT_DIR $ENV{Python3_ROOT_DIR})
175
+ endif()
176
+
177
+ if(DEFINED ENV{Python3_EXECUTABLE})
178
+ set(Python3_EXECUTABLE $ENV{Python3_EXECUTABLE})
179
+ endif()
180
+
181
+ # Use the current Python executable if available
182
+ if(NOT Python3_EXECUTABLE AND DEFINED ENV{PYTHON})
183
+ set(Python3_EXECUTABLE $ENV{PYTHON})
184
+ endif()
185
+
186
+ # For manylinux containers, try to use the active Python
187
+ if(NOT Python3_EXECUTABLE)
188
+ find_program(Python3_EXECUTABLE NAMES python3 python)
189
+ endif()
190
+
191
+ # Platform-specific Python finding strategy for better manylinux compatibility
192
+ if(UNIX AND NOT APPLE)
193
+ # Linux: Be more flexible for manylinux compatibility
194
+ # First try with just Interpreter (always works)
195
+ find_package(Python3 REQUIRED COMPONENTS Interpreter)
196
+
197
+ # Try to find Development.Module (preferred for extensions)
198
+ find_package(Python3 QUIET COMPONENTS Development.Module)
199
+ if(NOT Python3_Development.Module_FOUND)
200
+ # Fallback to basic Development (without .Embed which needs libpython)
201
+ find_package(Python3 QUIET COMPONENTS Development)
202
+ endif()
203
+
204
+ # Get Python info manually if CMake detection fails
205
+ if(NOT Python3_INCLUDE_DIRS)
206
+ execute_process(
207
+ COMMAND ${Python3_EXECUTABLE} -c "import sysconfig; print(sysconfig.get_path('include'))"
208
+ OUTPUT_VARIABLE Python3_INCLUDE_DIRS
209
+ OUTPUT_STRIP_TRAILING_WHITESPACE
210
+ )
211
+ message(STATUS "Python include dirs from sysconfig: ${Python3_INCLUDE_DIRS}")
212
+ endif()
213
+ else()
214
+ # Windows and macOS: use the full approach (libraries are usually available)
215
+ find_package(Python3 REQUIRED COMPONENTS Interpreter Development Development.Embed)
216
+ endif()
217
+
218
+ # Debug Python detection for troubleshooting
219
+ message(STATUS "Python detection results:")
220
+ message(STATUS " Python3_FOUND: ${Python3_FOUND}")
221
+ message(STATUS " Python3_VERSION: ${Python3_VERSION}")
222
+ message(STATUS " Python3_EXECUTABLE: ${Python3_EXECUTABLE}")
223
+ message(STATUS " Python3_INCLUDE_DIRS: ${Python3_INCLUDE_DIRS}")
224
+ message(STATUS " Python3_LIBRARIES: ${Python3_LIBRARIES}")
225
+ message(STATUS " Python3_LIBRARY_DIRS: ${Python3_LIBRARY_DIRS}")
226
+
227
+ # Additional fallback for manylinux containers if libraries are not found
228
+ if(UNIX AND NOT APPLE AND NOT Python3_LIBRARIES)
229
+ message(STATUS "Python3_LIBRARIES not found, attempting comprehensive fallback detection...")
230
+
231
+ # Get Python version info
232
+ execute_process(
233
+ COMMAND ${Python3_EXECUTABLE} -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')"
234
+ OUTPUT_VARIABLE PYTHON_VERSION_SHORT
235
+ OUTPUT_STRIP_TRAILING_WHITESPACE
236
+ )
237
+
238
+ # Try to find Python library directory
239
+ execute_process(
240
+ COMMAND ${Python3_EXECUTABLE} -c "import sysconfig; print(sysconfig.get_config_var('LIBDIR'))"
241
+ OUTPUT_VARIABLE PYTHON_LIB_DIR
242
+ OUTPUT_STRIP_TRAILING_WHITESPACE
243
+ )
244
+
245
+ # Also try the lib directory relative to the Python executable
246
+ get_filename_component(PYTHON_PREFIX ${Python3_EXECUTABLE} DIRECTORY)
247
+ get_filename_component(PYTHON_PREFIX ${PYTHON_PREFIX} DIRECTORY)
248
+
249
+ # Multiple potential library names and locations
250
+ set(PYTHON_LIB_NAMES
251
+ "python${PYTHON_VERSION_SHORT}"
252
+ "python${PYTHON_VERSION_SHORT}m"
253
+ "python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}"
254
+ "python${Python3_VERSION_MAJOR}.${Python3_VERSION_MINOR}m"
255
+ )
256
+
257
+ set(PYTHON_LIB_PATHS
258
+ "${PYTHON_LIB_DIR}"
259
+ "${PYTHON_PREFIX}/lib"
260
+ "${PYTHON_PREFIX}/lib64"
261
+ "/usr/lib64"
262
+ "/usr/lib"
263
+ "/lib64"
264
+ "/lib"
265
+ )
266
+
267
+ # Try to find the Python library
268
+ foreach(LIB_NAME ${PYTHON_LIB_NAMES})
269
+ foreach(LIB_PATH ${PYTHON_LIB_PATHS})
270
+ # Look for shared library first
271
+ find_library(PYTHON_FALLBACK_LIB_${LIB_NAME}
272
+ NAMES ${LIB_NAME}
273
+ PATHS ${LIB_PATH}
274
+ NO_DEFAULT_PATH
275
+ )
276
+
277
+ if(PYTHON_FALLBACK_LIB_${LIB_NAME})
278
+ set(Python3_LIBRARIES ${PYTHON_FALLBACK_LIB_${LIB_NAME}})
279
+ message(STATUS "Fallback: Found Python library: ${Python3_LIBRARIES}")
280
+ break()
281
+ endif()
282
+
283
+ # If shared library not found, look for static library
284
+ find_library(PYTHON_FALLBACK_STATIC_${LIB_NAME}
285
+ NAMES "lib${LIB_NAME}.a"
286
+ PATHS ${LIB_PATH}
287
+ NO_DEFAULT_PATH
288
+ )
289
+
290
+ if(PYTHON_FALLBACK_STATIC_${LIB_NAME})
291
+ set(Python3_LIBRARIES ${PYTHON_FALLBACK_STATIC_${LIB_NAME}})
292
+ message(STATUS "Fallback: Found Python static library: ${Python3_LIBRARIES}")
293
+ break()
294
+ endif()
295
+ endforeach()
296
+
297
+ if(Python3_LIBRARIES)
298
+ break()
299
+ endif()
300
+ endforeach()
301
+
302
+ # If still not found, try creating a minimal library setup
303
+ if(NOT Python3_LIBRARIES)
304
+ message(STATUS "Creating minimal Python library configuration...")
305
+
306
+ # For manylinux containers, we may need to work without explicit libraries
307
+ # Python extensions don't actually need to link against libpython in most cases
308
+ set(Python3_LIBRARIES "")
309
+
310
+ # Try to extract library information from Python itself
311
+ execute_process(
312
+ COMMAND ${Python3_EXECUTABLE} -c "
313
+ import sysconfig
314
+ import os
315
+ libdir = sysconfig.get_config_var('LIBDIR')
316
+ libname = sysconfig.get_config_var('LDLIBRARY')
317
+ if libdir and libname:
318
+ full_path = os.path.join(libdir, libname)
319
+ if os.path.exists(full_path):
320
+ print(full_path)
321
+ else:
322
+ # Try alternative naming
323
+ version = sysconfig.get_config_var('py_version_short')
324
+ alt_name = f'libpython{version}.so'
325
+ alt_path = os.path.join(libdir, alt_name)
326
+ if os.path.exists(alt_path):
327
+ print(alt_path)
328
+ "
329
+ OUTPUT_VARIABLE PYTHON_DETECTED_LIB
330
+ OUTPUT_STRIP_TRAILING_WHITESPACE
331
+ )
332
+
333
+ if(PYTHON_DETECTED_LIB AND EXISTS ${PYTHON_DETECTED_LIB})
334
+ set(Python3_LIBRARIES ${PYTHON_DETECTED_LIB})
335
+ message(STATUS "Python-detected library: ${Python3_LIBRARIES}")
336
+ endif()
337
+ endif()
338
+ endif()
339
+
340
+ # Windows-specific Python library override to prevent debug library linking
341
+ if(WIN32)
342
+ # Override Python library to ensure we use release version
343
+ if(Python3_LIBRARY_RELEASE)
344
+ set(Python3_LIBRARIES ${Python3_LIBRARY_RELEASE})
345
+ message(STATUS "Windows: Using Python release library: ${Python3_LIBRARY_RELEASE}")
346
+ elseif(Python3_LIBRARY)
347
+ # Ensure we're not using debug library
348
+ string(REGEX REPLACE "_d\\.lib$" ".lib" Python3_LIBRARIES "${Python3_LIBRARY}")
349
+ message(STATUS "Windows: Modified Python library path: ${Python3_LIBRARIES}")
350
+ endif()
351
+
352
+ # Additional protection: Set explicit Python library for all configurations
353
+ # This ensures MSBuild doesn't override our Python library choice
354
+ if(Python3_LIBRARY_RELEASE)
355
+ set(PYTHON_LIBRARY_FOR_ALL_CONFIGS ${Python3_LIBRARY_RELEASE})
356
+ else()
357
+ string(REGEX REPLACE "_d\\.lib$" ".lib" PYTHON_LIBRARY_FOR_ALL_CONFIGS "${Python3_LIBRARY}")
358
+ endif()
359
+
360
+ message(STATUS "Windows Python configuration:")
361
+ message(STATUS " Python3_VERSION: ${Python3_VERSION}")
362
+ message(STATUS " Python3_EXECUTABLE: ${Python3_EXECUTABLE}")
363
+ message(STATUS " Python3_INCLUDE_DIRS: ${Python3_INCLUDE_DIRS}")
364
+ message(STATUS " Python3_LIBRARIES: ${Python3_LIBRARIES}")
365
+ message(STATUS " PYTHON_LIBRARY_FOR_ALL_CONFIGS: ${PYTHON_LIBRARY_FOR_ALL_CONFIGS}")
366
+ message(STATUS " CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}")
367
+ endif()
368
+
369
+ # libuv
370
+ # Configure libuv to be less noisy on Windows
371
+ if(WIN32)
372
+ set(LIBUV_BUILD_SHARED OFF CACHE BOOL "Build shared library")
373
+ set(LIBUV_BUILD_BENCH OFF CACHE BOOL "Build benchmarks")
374
+ set(LIBUV_BUILD_TESTS OFF CACHE BOOL "Build tests")
375
+ endif()
376
+
377
+ add_subdirectory(deps/libuv)
378
+
379
+ # Windows helper function to set Python library for all configurations
380
+ if(WIN32)
381
+ function(set_windows_python_library target_name)
382
+ # Use generator expressions to ensure the release Python library is used for all configurations
383
+ if(PYTHON_LIBRARY_FOR_ALL_CONFIGS)
384
+ target_link_libraries(${target_name} PRIVATE
385
+ "$<$<CONFIG:Debug>:${PYTHON_LIBRARY_FOR_ALL_CONFIGS}>"
386
+ "$<$<CONFIG:Release>:${PYTHON_LIBRARY_FOR_ALL_CONFIGS}>"
387
+ "$<$<CONFIG:RelWithDebInfo>:${PYTHON_LIBRARY_FOR_ALL_CONFIGS}>"
388
+ "$<$<CONFIG:MinSizeRel>:${PYTHON_LIBRARY_FOR_ALL_CONFIGS}>"
389
+ )
390
+ message(STATUS "Windows: Set explicit Python library for target ${target_name}: ${PYTHON_LIBRARY_FOR_ALL_CONFIGS}")
391
+ endif()
392
+ endfunction()
393
+ endif()
394
+
395
+ # llhttp
396
+ include(FetchContent)
397
+ FetchContent_Declare(llhttp
398
+ URL "https://github.com/nodejs/llhttp/archive/refs/tags/release/v8.1.0.tar.gz"
399
+ )
400
+ set(BUILD_SHARED_LIBS OFF CACHE INTERNAL "")
401
+ set(BUILD_STATIC_LIBS ON CACHE INTERNAL "")
402
+ FetchContent_MakeAvailable(llhttp)
403
+
404
+ # yyjson for fast JSON parsing
405
+ FetchContent_Declare(yyjson
406
+ URL "https://github.com/ibireme/yyjson/archive/refs/tags/0.8.0.tar.gz"
407
+ )
408
+ FetchContent_MakeAvailable(yyjson)
409
+
410
+ # Core static library
411
+ add_library(catzilla_core STATIC src/core/server.c src/core/router.c)
412
+ target_include_directories(catzilla_core PUBLIC
413
+ src/core
414
+ ${llhttp_SOURCE_DIR}/include
415
+ deps/libuv/include
416
+ ${Python3_INCLUDE_DIRS}
417
+ ${yyjson_SOURCE_DIR}/src
418
+ )
419
+ target_link_libraries(catzilla_core PRIVATE uv_a llhttp_static yyjson)
420
+
421
+ # Windows-specific linking
422
+ if(WIN32)
423
+ target_link_libraries(catzilla_core PRIVATE ws2_32 iphlpapi userenv)
424
+ endif()
425
+
426
+ # ——— Python extension module ———
427
+ add_library(_catzilla SHARED src/python/module.c)
428
+ target_include_directories(_catzilla PRIVATE
429
+ src/python
430
+ ${llhttp_SOURCE_DIR}/include
431
+ deps/libuv/include
432
+ ${Python3_INCLUDE_DIRS}
433
+ ${yyjson_SOURCE_DIR}/src
434
+ )
435
+
436
+ target_link_libraries(_catzilla PRIVATE
437
+ catzilla_core
438
+ llhttp_static
439
+ yyjson
440
+ )
441
+
442
+ # Only link to Python libraries if they exist and are needed (not for manylinux or macOS)
443
+ # macOS Python extensions should not link to Python libraries - symbols are provided at runtime
444
+ if(Python3_LIBRARIES AND NOT (UNIX AND NOT APPLE) AND NOT APPLE)
445
+ target_link_libraries(_catzilla PRIVATE ${Python3_LIBRARIES})
446
+ elseif(APPLE)
447
+ # macOS: Set undefined dynamic lookup for Python symbols (standard for extensions)
448
+ target_link_options(_catzilla PRIVATE "-undefined" "dynamic_lookup")
449
+ message(STATUS "macOS: Using dynamic lookup for Python symbols (no explicit Python linking)")
450
+ endif()
451
+
452
+ # Windows-specific linking for Python extension
453
+ if(WIN32)
454
+ target_link_libraries(_catzilla PRIVATE ws2_32 iphlpapi userenv)
455
+ # Ensure Python extensions use shared Python libraries
456
+ target_compile_definitions(_catzilla PRIVATE Py_ENABLE_SHARED)
457
+ # Set explicit Python library for all configurations
458
+ set_windows_python_library(_catzilla)
459
+ endif()
460
+
461
+ # Force appropriate suffix for Python module based on platform
462
+ if(WIN32)
463
+ set_target_properties(_catzilla PROPERTIES
464
+ PREFIX "" # no "lib" prefix
465
+ OUTPUT_NAME "_catzilla"
466
+ SUFFIX ".pyd" # Windows Python extension
467
+ LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
468
+ )
469
+ else()
470
+ set_target_properties(_catzilla PROPERTIES
471
+ PREFIX "" # no "lib" prefix
472
+ OUTPUT_NAME "_catzilla"
473
+ SUFFIX ".so" # Unix Python extension
474
+ LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
475
+ )
476
+ endif()
477
+
478
+ # ——— Tests ———
479
+ # Only build tests when not in wheel building mode (skip for wheel building environments)
480
+ # Enhanced detection for all wheel building environments including cibuildwheel
481
+ set(WHEEL_BUILD_MODE OFF)
482
+
483
+ # Check for various wheel building environment indicators
484
+ if(DEFINED ENV{AUDITWHEEL_PLAT} OR
485
+ DEFINED ENV{CIBW_BUILD} OR
486
+ DEFINED ENV{CIBUILDWHEEL} OR
487
+ DEFINED ENV{_PYTHON_HOST_PLATFORM} OR
488
+ DEFINED ENV{PLAT_NAME} OR
489
+ (UNIX AND NOT APPLE AND EXISTS "/opt/_internal") OR
490
+ (APPLE AND DEFINED ENV{ARCHFLAGS}) OR
491
+ (APPLE AND DEFINED ENV{CMAKE_OSX_ARCHITECTURES}))
492
+ set(WHEEL_BUILD_MODE ON)
493
+ message(STATUS "Detected wheel building environment - skipping test executables")
494
+
495
+ # Log which indicators were detected for debugging
496
+ if(DEFINED ENV{AUDITWHEEL_PLAT})
497
+ message(STATUS " - AUDITWHEEL_PLAT: $ENV{AUDITWHEEL_PLAT}")
498
+ endif()
499
+ if(DEFINED ENV{CIBW_BUILD})
500
+ message(STATUS " - CIBW_BUILD: $ENV{CIBW_BUILD}")
501
+ endif()
502
+ if(DEFINED ENV{CIBUILDWHEEL})
503
+ message(STATUS " - CIBUILDWHEEL: $ENV{CIBUILDWHEEL}")
504
+ endif()
505
+ if(DEFINED ENV{_PYTHON_HOST_PLATFORM})
506
+ message(STATUS " - _PYTHON_HOST_PLATFORM: $ENV{_PYTHON_HOST_PLATFORM}")
507
+ endif()
508
+ if(DEFINED ENV{PLAT_NAME})
509
+ message(STATUS " - PLAT_NAME: $ENV{PLAT_NAME}")
510
+ endif()
511
+ if(DEFINED ENV{ARCHFLAGS})
512
+ message(STATUS " - ARCHFLAGS: $ENV{ARCHFLAGS}")
513
+ endif()
514
+ if(DEFINED ENV{CMAKE_OSX_ARCHITECTURES})
515
+ message(STATUS " - CMAKE_OSX_ARCHITECTURES: $ENV{CMAKE_OSX_ARCHITECTURES}")
516
+ endif()
517
+ endif()
518
+
519
+ # Additional check: if we're building in a cross-compilation environment for macOS
520
+ # where the host architecture differs from target architecture, skip tests
521
+ if(APPLE AND CMAKE_OSX_ARCHITECTURES)
522
+ execute_process(
523
+ COMMAND uname -m
524
+ OUTPUT_VARIABLE HOST_ARCH
525
+ OUTPUT_STRIP_TRAILING_WHITESPACE
526
+ )
527
+ if(NOT CMAKE_OSX_ARCHITECTURES STREQUAL HOST_ARCH)
528
+ set(WHEEL_BUILD_MODE ON)
529
+ message(STATUS "Cross-compilation detected (host: ${HOST_ARCH}, target: ${CMAKE_OSX_ARCHITECTURES}) - skipping test executables")
530
+ endif()
531
+ endif()
532
+
533
+ # Final check: if CMAKE was called with specific Python extension targets, skip tests
534
+ if(CMAKE_BUILD_TYPE STREQUAL "Release" AND APPLE AND NOT CMAKE_CROSSCOMPILING)
535
+ # In release mode on macOS, prefer skipping tests to avoid architecture conflicts
536
+ get_cmake_property(cache_vars CACHE_VARIABLES)
537
+ foreach(cache_var ${cache_vars})
538
+ if(cache_var MATCHES "Python" OR cache_var MATCHES "_PYTHON_")
539
+ # If many Python-related cache variables are set, we're likely in wheel building
540
+ if(NOT WHEEL_BUILD_MODE)
541
+ set(WHEEL_BUILD_MODE ON)
542
+ message(STATUS "Python extension build mode detected - skipping test executables for compatibility")
543
+ break()
544
+ endif()
545
+ endif()
546
+ endforeach()
547
+ endif()
548
+
549
+ if(NOT WHEEL_BUILD_MODE)
550
+ message(STATUS "Building test executables")
551
+
552
+ # Test framework
553
+ # Add test_router executable
554
+ add_executable(test_router
555
+ tests/c/test_router.c
556
+ deps/unity/src/unity.c
557
+ )
558
+
559
+ target_include_directories(test_router PRIVATE
560
+ src/core
561
+ deps/unity/src
562
+ ${Python3_INCLUDE_DIRS}
563
+ )
564
+
565
+ target_link_libraries(test_router PRIVATE
566
+ catzilla_core
567
+ )
568
+
569
+ # Link Python libraries for tests (needed for symbols in catzilla_core)
570
+ if(Python3_LIBRARIES)
571
+ target_link_libraries(test_router PRIVATE ${Python3_LIBRARIES})
572
+ endif()
573
+
574
+ # Windows-specific linking for tests
575
+ if(WIN32)
576
+ target_link_libraries(test_router PRIVATE ws2_32 iphlpapi userenv)
577
+ set_windows_python_library(test_router)
578
+ endif()
579
+
580
+ # Add test_advanced_router executable
581
+ add_executable(test_advanced_router
582
+ tests/c/test_advanced_router.c
583
+ deps/unity/src/unity.c
584
+ )
585
+
586
+ target_include_directories(test_advanced_router PRIVATE
587
+ src/core
588
+ deps/unity/src
589
+ ${Python3_INCLUDE_DIRS}
590
+ )
591
+
592
+ target_link_libraries(test_advanced_router PRIVATE
593
+ catzilla_core
594
+ )
595
+
596
+ # Link Python libraries for tests (needed for symbols in catzilla_core)
597
+ if(Python3_LIBRARIES)
598
+ target_link_libraries(test_advanced_router PRIVATE ${Python3_LIBRARIES})
599
+ endif()
600
+
601
+ # Windows-specific linking
602
+ if(WIN32)
603
+ target_link_libraries(test_advanced_router PRIVATE ws2_32 iphlpapi userenv)
604
+ set_windows_python_library(test_advanced_router)
605
+ endif()
606
+
607
+ # Add test_server_integration executable
608
+ add_executable(test_server_integration
609
+ tests/c/test_server_integration.c
610
+ deps/unity/src/unity.c
611
+ )
612
+
613
+ target_include_directories(test_server_integration PRIVATE
614
+ src/core
615
+ deps/unity/src
616
+ ${Python3_INCLUDE_DIRS}
617
+ )
618
+
619
+ target_link_libraries(test_server_integration PRIVATE
620
+ catzilla_core
621
+ )
622
+
623
+ # Link Python libraries for tests (needed for symbols in catzilla_core)
624
+ if(Python3_LIBRARIES)
625
+ target_link_libraries(test_server_integration PRIVATE ${Python3_LIBRARIES})
626
+ endif()
627
+
628
+ # Windows-specific linking
629
+ if(WIN32)
630
+ target_link_libraries(test_server_integration PRIVATE ws2_32 iphlpapi userenv)
631
+ set_windows_python_library(test_server_integration)
632
+ endif()
633
+ endif()
634
+
635
+ # Install rules (unused by pip, but here for completeness)
636
+ install(TARGETS _catzilla DESTINATION python/catzilla)
637
+ install(DIRECTORY python/catzilla DESTINATION .)
catzilla-0.0.2/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Rezwan Ahmed Sami
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,17 @@
1
+ include CMakeLists.txt
2
+ include LICENSE
3
+ include debug_import.py
4
+ recursive-include src *
5
+ recursive-include deps *
6
+ recursive-include python/catzilla *
7
+ recursive-include tests *
8
+ recursive-include examples *
9
+ recursive-include scripts *
10
+ global-exclude *.pyc
11
+ global-exclude __pycache__
12
+ global-exclude .git*
13
+ global-exclude *.so
14
+ global-exclude *.dll
15
+ global-exclude *.dylib
16
+ global-exclude build/*
17
+ global-exclude *.egg-info/*