494be7b4dc
Merge pull request 'Fast memory allocation' ( #36 ) from lda/Cytoplasm:mem-moment into master
...
Reviewed-on: Telodendria/Cytoplasm#36
2024-08-23 16:26:12 -04:00
b6b915530c
Merge pull request 'Getting optional LMDB support into Cytoplasm' ( #43 ) from lda/Cytoplasm:lmdbwerk into master
...
Reviewed-on: Telodendria/Cytoplasm#43
2024-08-23 16:19:59 -04:00
56257fb3da
Merge pull request 'remove use of install in Makefile' ( #46 ) from Levitating/Cytoplasm:remove-install into master
...
Reviewed-on: Telodendria/Cytoplasm#46
2024-08-23 16:15:00 -04:00
1d0eb9d49a
remove use of install in Makefile
...
not posix
2024-08-22 03:49:43 +02:00
39c25e5a17
Merge pull request 'Copy filename into preallocated field with Cytoplasm's Memory API' ( #33 ) from lda/Cytoplasm:direct-filenames into master
...
Reviewed-on: Telodendria/Cytoplasm#33
2024-08-18 19:26:18 -04:00
LDA
cf1b78b224
Merge branch 'lmdbwerk' of https://git.telodendria.io/lda/Cytoplasm into lmdbwerk
2024-08-11 15:29:16 +02:00
LDA
e133eebef3
[MOD/WIP] Use one shared DBI
...
Yeah, I was stupid for not doing that earlier.
2024-08-11 15:28:21 +02:00
LDA
3df1e4ab7b
[ADD/WIP] Start rolling in intents
2024-08-11 12:46:49 +02:00
LDA
f32cdb7d89
[MOD/WIP] Mark listing transactions as readonly
...
May want to sprinkle in "hinting" on the nature of operations done the
database, which could allow LMDB to deal with those far more efficiently
(for example, a read-only transaction can just be done as soon as the
JSON itself is parsed out, as we don't really need the former anymore!)
2024-08-10 23:58:41 +02:00
LDA
20bb7a20ad
[FIX/WIP] Fix mutex issues around LMDB
...
Currently doing a test run on another project of mine to find out how
stable it is.
Next up(more long-termed): Faster JSON parsing than just plaintext!
2024-08-10 10:33:50 +02:00
LDA
f6af2cd782
[FIX/WIP] Temporary fix to the database system
...
It used to crash, my bad.
2024-08-10 09:24:42 +02:00
LDA
2b061f1226
Merge branch 'master' of https://git.telodendria.io/Telodendria/Cytoplasm into lmdbwerk
2024-08-09 21:08:16 +02:00
4903c075e8
Merge pull request 'Pre-emptively free out the key' ( #41 ) from lda/Cytoplasm:hashmap-del-leak into master
...
Reviewed-on: Telodendria/Cytoplasm#41
2024-08-09 09:26:49 -04:00
LDA
a90c66736c
[MOD/WIP] Disable thread-local storage for LMDB
...
DB locks ought to be enough...
2024-08-09 12:03:09 +02:00
LDA
004c53a028
[ADD/WIP] Listing in LMDB
...
I need to start entering a LMDB test run.
2024-08-09 11:44:16 +02:00
LDA
0743401955
[ADD/WIP] Most DB operations for LMDB
...
Somewhat untested. I want to go on a test run soon.
Next up: aargh... listing... The one thing LMDB may suck at.
2024-08-08 16:25:09 +02:00
LDA
5cb51a4d58
[ADD/WIP] Start to add LMDB operations
2024-08-08 14:38:23 +02:00
LDA
59dbfae1ae
[MOD/WIP] Separate all DB operations
...
Somewhat untested, but I fail to see how it could fail, right?
Next up: Getting the basics of LMDB up and running.
2024-08-08 09:53:51 +02:00
LDA
b87979e9a2
[MOD/WIP] Start separating the main DB API
...
Not everything is available as of now, I'm still working on it, but it
builds and seems to work, and its 9PM, so that's worthapush.
2024-08-07 20:45:53 +02:00
LDA
87d9421f11
[ADD/WIP] Start adding a lmdb flag to configure
...
Start of my work to get out LMDB support. I want to make it optional, as
some environments just can't use LMDB(due to mapped RAM limits, or
places where mmap is unavailable (a rather cursed platform!)).
Next up: Start separating Db to allow multiple subimplementations
instead of being expressly for nested-dir JSON ops.
2024-08-07 12:48:33 +02:00
LDA
da857a3d53
[FIX] Pre-emptively free out the key
...
I fail to see a reason why this shouldn't be done, to be fair, and it
fixes a memory leakage with a Cytoplasm-based project I'm making.
2024-07-19 16:08:25 +02:00
LDA
0d122976d4
Merge branch 'master' of https://git.telodendria.io/Telodendria/Cytoplasm into mem-moment
2024-07-18 13:20:17 +02:00
c3646294f5
Merge pull request 'Fix HTTP header leakage' ( #39 ) from lda/Cytoplasm:fix-duplicate-leak into master
...
Reviewed-on: Telodendria/Cytoplasm#39
2024-07-02 11:56:18 -04:00
61b5430efe
Merge pull request 'Fix TLS build issue' ( #40 ) from lda/Cytoplasm:fix-tls into master
...
Reviewed-on: Telodendria/Cytoplasm#40
2024-07-02 11:55:53 -04:00
LDA
b3be10e112
[FIX] Last TLS oopsie!
...
We should actually consider bringing back CI when possible.
2024-06-27 16:53:56 +02:00
LDA
b284fb607a
[FIX] Fix HTTP leakage
2024-06-27 16:45:32 +02:00
LDA
402d73c866
Merge branch 'master' of https://git.telodendria.io/Telodendria/Cytoplasm into mem-moment
2024-06-27 16:43:38 +02:00
dd99759e39
Merge pull request 'Fix stringification.' ( #37 ) from lda/Cytoplasm:fix-stringify into master
...
Reviewed-on: Telodendria/Cytoplasm#37
2024-06-24 14:19:26 -05:00
bd310e62ac
Merge pull request 'Fix TLS, again...' ( #38 ) from lda/Cytoplasm:fix-tls into master
...
Reviewed-on: Telodendria/Cytoplasm#38
2024-06-24 14:18:43 -05:00
LDA
d7faff734c
[FIX] Actually apply serverName
...
As it turns out, it *was* odd. Not doing that will cause *someone* to
spend several hours fixing a SSL problem around a bridge they're making,
which needs to download media from a server and can't from *some* for an
undiscernable reason, causing said person to start going insane before
realising that Cytoplasm didn't set the server name properly.
2024-06-23 07:52:32 +02:00
LDA
bec672c92c
[MOD] Use a different constant
2024-06-19 17:51:13 +02:00
LDA
5dc1ec49eb
[FIX] Actually set fd.
...
I *should* have seen that one coming, oops!
2024-06-19 17:40:06 +02:00
LDA
eca717d90c
Merge branch 'master' of https://git.telodendria.io/Telodendria/Cytoplasm into fix-tls
2024-06-19 17:39:37 +02:00
LDA
5fac67a674
[MOD] Fix stringification of version number
...
It just kept bothering me.
2024-06-15 13:54:49 +02:00
LDA
8b2bdbe220
[FIX] Actually do proper stringification.
...
It just kept bothering me.
2024-06-15 13:48:39 +02:00
LDA
1ad6f0d976
Merge branch 'mem-moment' of https://git.telodendria.io/lda/Cytoplasm into mem-moment
2024-06-15 13:44:13 +02:00
LDA
9f706102c4
Merge branch 'master' of https://git.telodendria.io/Telodendria/Cytoplasm into mem-moment
2024-06-15 13:43:45 +02:00
5003ddc281
Merge branch 'master' of https://git.telodendria.io/Telodendria/Cytoplasm into mem-moment
2024-06-08 12:08:30 +02:00
b9dc169917
Merge pull request 'Fix file descriptor leakage' ( #35 ) from lda/Cytoplasm:tls-file-leak into master
...
Reviewed-on: Telodendria/Cytoplasm#35
2024-06-07 14:00:44 -05:00
d983296dd2
[MOD] As it turns out, you do need to free thr fd.
2024-06-03 19:42:09 +02:00
007b8f6d43
[MOD/WIP] Blazing-fast memory allocator 🚀 🚀 🚀 🚀 🚀 🚀 🚀 🚀 🚀 🚀
...
This still however removes `MemoryIterate' from allocations, because
it's a real performance pickle. From my tests parsing large sync
replies, this commit is near instant(pv reports 23MiB/s on a 2MB sync).
Still need a good compromise along MemoryIterate(like maybe find out a
clever way to only make it run on a small subset, or maybe just randomly
run it from time to time, or maybe just roll without it except on some
soft of debug mode????)
2024-06-03 16:18:29 +02:00
9108fef701
Fix inconsistent sanitation with the database ( #32 )
...
Cytoplasm's Db currently doesn't sanitate database entries consistently, and this PR should be a quick fix for this.
Reviewed-on: Telodendria/Cytoplasm#32
Co-authored-by: lda <lda@freetards.xyz>
Co-committed-by: lda <lda@freetards.xyz>
2024-05-26 15:31:14 -05:00
138ea1c8e9
[FIX] Oops.
2024-05-26 22:06:56 +02:00
cdf4430a9e
[FIX] Fix issue with const strings which may be invalidated
2024-05-26 22:01:06 +02:00
346b912a06
ArraySort(): Fix bound checking bug.
...
Closes #31 .
2024-05-18 10:50:18 -04:00
5d87da31cd
j2s generated code is now C99.
...
It also no longer requires on the now-defunct Int64.h.
2024-01-13 18:55:31 -05:00
461357b526
Move headers from src/include
to include/Cytoplasm
.
...
This makes it easier to build Cytoplasm as a component of another
program (for example, Telodendria), or as a standalone system library.
2024-01-13 18:40:31 -05:00
cd7df7bbb4
Enable higher optimization on fancy compilers.
2024-01-13 18:22:37 -05:00
c489eff517
Set -Wextra on fancy compilers.
2024-01-13 18:11:44 -05:00
039a487bdf
Merge branch 'master' of https://git.telodendria.io/Telodendria/Cytoplasm
2024-01-13 17:57:31 -05:00