Jordan Bancino
5dbaf3c223
Apply #65 , remove printf() in Db, and make tt show login messages.
2023-03-15 13:36:49 +00:00
Jordan Bancino
afc7667737
Begin prototyping Stream API.
2023-03-15 02:40:23 +00:00
Jordan Bancino
ae97d8116c
Apply #64 : Registration tokens.
2023-03-14 00:37:24 +00:00
Jordan Bancino
76bfa120ee
Fix CPU pin if clients don't shutdown() their socket properly.
...
If we haven't read any bytes yet, then we try a few times a few ms apart
to see if we get anything. If not, treat it as an EOF. Otherwise, read
bytes until we get an EOF or EAGAIN. EAGAIN after a consistent read of
bytes is treaded as an EOF immediately.
2023-03-12 15:08:50 +00:00
Jordan Bancino
62cd1cdc98
Misc changes.
2023-03-12 03:37:57 +00:00
Jordan Bancino
7fa982a16f
Fix bug in Uia
2023-03-12 03:36:40 +00:00
Jordan Bancino
aba1ef9251
Add some more documentation.
2023-03-12 03:36:19 +00:00
Jordan Bancino
b4a394c44b
Move send-patch and td to section one of the manual.
...
I think they fit there better.
2023-03-10 23:02:09 +00:00
Jordan Bancino
64add9c9ab
Fix unused variable warning.
2023-03-10 20:12:25 +00:00
Jordan Bancino
3037f12907
Add tt and http-debug-server tools.
2023-03-10 18:48:52 +00:00
Jordan Bancino
2d9b706f38
Fix I/O in JsonConsumeWhitespace() and UtilStreamCopy().
...
These functions previously operated on the assumption that fgetc() would
block; however it will not block on HttpServer streams because those are
non-blocking. They now check error conditions properly before failing
prematurely.
2023-03-10 18:46:03 +00:00
Jordan Bancino
fd12dee62e
Make sure a newline is printed after JSON object is pretty-printed.
2023-03-10 04:30:56 +00:00
Jordan Bancino
8ead9cc93a
Apply #63 , make some general bug fixes.
2023-03-10 03:24:04 +00:00
Jordan Bancino
3af2d3d12b
Format code, update TODO items.
2023-03-09 03:35:40 +00:00
Jordan Bancino
7344d4fa46
Apparently some shells interpret the - in a string as an argument delimiter???
2023-03-09 02:49:14 +00:00
Jordan Bancino
ca053a12b1
Break out main() into Main.c, fix some compile warnings on Cygwin.
2023-03-09 02:46:04 +00:00
Jordan Bancino
9a1300ff2e
Make sure input is initialized.
2023-03-09 02:22:13 +00:00
Jordan Bancino
c32c3abfd6
Update TODO
2023-03-09 00:10:32 +00:00
Jordan Bancino
012c334ee5
Make send-patch use json instead of jq.
2023-03-09 00:06:15 +00:00
Jordan Bancino
20ebeb9c32
Switch tp from using jq to json; format td
2023-03-08 22:47:40 +00:00
Jordan Bancino
76413f834e
Make json use ^ for removing fields, instead of !
...
Room IDs start with '!', we want to be able to access these.
2023-03-08 22:47:07 +00:00
Jordan Bancino
efdf168085
Allow encoding user-provided strings.
2023-03-08 20:31:49 +00:00
Jordan Bancino
50e599f1cd
Implement a mostly-functional query language for JSON.
2023-03-08 19:49:06 +00:00
Jordan Bancino
7b22fb02a2
Implement pretty-printing option in Json.
...
Telodendria itself doesn't use it, but the json CLI tool does.
2023-03-08 17:15:43 +00:00
Jordan Bancino
cb8c4fceb5
Begin working on JSON CLI tool.
...
This is a similar situation to the HTTP CLI tool: since we have the
Json API anyway, we might as well have a little command line tool to
replace jq.
2023-03-08 04:06:43 +00:00
Jordan Bancino
19e89110cd
Bump version number to v0.3.0
2023-03-08 03:46:38 +00:00
Jordan Bancino
1a169d1a2e
Fix usage message.
2023-03-08 03:31:34 +00:00
Jordan Bancino
8d75d8a023
Add simple HTTP CLI tool that uses the HttpClient API.
...
You might be asking why I would just write a simple curl replacement
when curl does the job just fine. Well, the most immediate reason is
to test the HttpClient API, but since Telodendria's goal is to not
be dependent on any third-party code if at all possible, it makes
sense to have a simple HTTP client to use not only for testing
Telodendria, but also for configuring it. When we move the
configuration to the database, we'll ship a script that uses this
tool to allow admins to easily submit API requests.
Do not be concerned that HttpClient does not support TLS yet. TLS
support is necessary for federation to work, so it is coming
eventually.
2023-03-08 03:30:36 +00:00
Jordan Bancino
7e144ae488
Clean up a few bugs in HttpClient and Uri
2023-03-08 02:53:47 +00:00
Jordan Bancino
3e42da279c
Make improvements to HttpClient, add Uri
2023-03-08 01:54:33 +00:00
Jordan Bancino
313f0e2e73
Add HttpClient API
2023-03-07 23:10:06 +00:00
Jordan Bancino
fc8fbc9a70
I forgot to set the date in the changelog.
2023-03-07 00:51:16 +00:00
Jordan Bancino
7e41251f07
Update README
2023-03-07 00:50:59 +00:00
Jordan Bancino
cfba96edee
Prepare for v0.2.0 release.
2023-03-07 00:44:53 +00:00
Jordan Bancino
04bf8ca1a1
Document Uia API.
2023-03-07 00:28:52 +00:00
Jordan Bancino
17734c90e8
This is unnecessary.
2023-03-06 23:54:55 +00:00
Jordan Bancino
154e5b82df
Looks like CVS is being weird with Mdocdate strings.
2023-03-06 23:51:55 +00:00
Jordan Bancino
7750963c29
Something weird is going on here.
2023-03-06 23:49:30 +00:00
Jordan Bancino
eae8fc5c79
Update Matrix documentation.
2023-03-06 22:49:21 +00:00
Jordan Bancino
f2c2888c87
Document DbList() and DbListFree()
2023-03-06 22:29:46 +00:00
Jordan Bancino
f1e565ef7b
Update Json man page.
2023-03-06 22:21:56 +00:00
Jordan Bancino
0ac21d430a
Document User API
2023-03-06 22:09:57 +00:00
Jordan Bancino
e73cea64b7
Apply modified #60
2023-03-04 21:43:41 +00:00
Jordan Bancino
c8c4c705a5
Convert proposals to man pages.
2023-03-04 20:26:16 +00:00
Jordan Bancino
8c2ed1c8f1
Apply #59
2023-03-04 15:34:44 +00:00
Jordan Bancino
0cbdb5f615
Multi-stage flows should theoretically work now.
2023-03-04 01:53:33 +00:00
Jordan Bancino
e4ec250d8f
Apply modified #57 : Implement logout all.
2023-03-03 22:49:37 +00:00
Jordan Bancino
97990c5009
Get some more of my thoughts in the TODO file.
2023-03-03 18:56:36 +00:00
Jordan Bancino
5d590df83d
Remove DB_MIN_CACHE because that's dumb.
...
You should be able to totally disable the cache if you so please. This
should ensure Telodendria uses less memory on constrained systems.
2023-03-03 14:26:10 +00:00
Jordan Bancino
1770789333
Fix leak in DbList()
2023-03-03 03:11:49 +00:00