Commit Graph

23 Commits

Author SHA1 Message Date
Jordan Bancino 31c9bc7f1c Update Cytoplasm license text for 2024. 2024-01-13 17:56:58 -05:00
Jordan Bancino 662696ce12 C99 Compliance (#29)
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 11s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 17s Details
This pull request brings Cytoplasm up from C89 to C99, which makes it much more portable across platforms. In particular, this pull request solves a number of issues with 32-bit platforms.

Closes #28.
Closes #12.
Closes #20.

Reviewed-on: #29
2024-01-13 17:13:45 -05:00
Jordan Bancino ba1ac5b42b Add `JsonMerge()`.
Closes #15.
2023-11-06 19:59:46 -05:00
Jordan Bancino 8ffade37b1 Add a meta header.
This allows programs to print the name and version of the library that
is currently in use.
2023-11-01 11:26:27 -04:00
Jordan Bancino 3a683dbb70 Fix includes in headers.
These are installed to the system and some compilers may not  find the
headers in the current directory if we don't do this, even though
according to the C standard, either should work.
2023-10-30 12:10:41 -04:00
Jordan Bancino 8e8342528f Apply #72 2023-09-04 13:30:22 +00:00
Jordan Bancino 4e58b41049 Update documentation on UtilServerTs(). 2023-08-17 18:09:20 +00:00
Jordan Bancino a1da7c7b4a Json now uses Int64 for integers.
This should fix all timestamp errors on 32-bit systems in Cytoplasm and
Telodendria.
2023-08-13 03:11:40 +00:00
Jordan Bancino 2c715c6e72 Make all timestamps use UInt64. 2023-08-12 23:02:06 +00:00
Jordan Bancino e9af54e4c7 Allow forcing the emulation mode for testing purposes. 2023-08-12 21:51:51 +00:00
Jordan Bancino 63f835d006 Add signed 64-bit integer support. 2023-08-12 19:59:16 +00:00
Jordan Bancino 92b1e60c4c Add 64-bit emulation for platforms that don't have a native 64-bit type. 2023-08-12 16:30:24 +00:00
Jordan Bancino ee267b077d Add HashMapKeys() and HashMapValues() functions for convenience. 2023-07-18 00:15:29 +00:00
Jordan Bancino e592cd8e5c Add basic Graph API.
This is going to be useful with state resolution and dependency ordering,
both of which will be crutial components of Telodendria.
2023-07-16 01:12:56 +00:00
Jordan Bancino c4ef6d4ddc Apply #71: Add ArrayUnique() function. 2023-07-15 22:27:24 +00:00
Jordan Bancino c4121d2dba Fix Unicode handling in Json, don't sign-extend bytes in Stream. 2023-07-15 17:57:21 +00:00
Jordan Bancino f5abcf5e50 Refactor Sha API to return raw bytes, added Sha1() function. 2023-06-17 17:36:11 +00:00
Jordan Bancino 179e16ed24 Apply #70: Add StrLower() function. 2023-06-12 14:10:59 +00:00
Jordan Bancino c5cfdb9894 Show human-readable thread ID in log messages.
This helps debug some multithreading issues.
2023-05-27 17:10:07 +00:00
Jordan Bancino 061d9df739 Add sane default memory hook to Cytoplasm, fix more leaks in json. 2023-05-23 22:43:37 +00:00
Jordan Bancino 2aa74e3156 Add some basic heap memory bounds protection. 2023-05-21 13:24:00 +00:00
Jordan Bancino 767c8728f7 Fix memory leaks in hdoc. 2023-05-15 22:38:52 +00:00
Jordan Bancino 40eac30b5c Import new Cytoplasm library based off of code from Telodendria.
Telodendria doesn't use this library yet, but it will soon.
2023-05-13 17:30:09 +00:00