Commit Graph

521 Commits

Author SHA1 Message Date
Klaas van Schelven
3e2b6965f9 settings/development.py and create_example_conf working 2024-05-14 11:24:59 +02:00
Klaas van Schelven
0863284a50 WIP (midway checkin): create_example_conf.py 2024-05-13 23:07:20 +02:00
Klaas van Schelven
f2de61b273 Use app_settings for Bugsink-specific stuff
something about consistency
2024-05-13 15:09:35 +02:00
Klaas van Schelven
24917b3324 Rename for clarity 2024-05-13 14:57:47 +02:00
Klaas van Schelven
de6bb90385 Clarify a comment 2024-05-13 14:47:12 +02:00
Klaas van Schelven
f72b2522b8 Use tailwind_preload_css
> The tag generates a preload directive for your stylesheet, which improves
> loading performance in production. Place it above the {% tailwind_css %} tag:

See e.g. https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/rel/preload

For a brief moment I thought that this was malfunctioning, because it is missing
the ?v=... part, but that part is DEBUG-only, so we don't care about it for real
use-cases
2024-05-13 14:33:25 +02:00
Klaas van Schelven
1a264675c2 'python manage.py tailwind build' as a pre-commit hook 2024-05-13 14:25:53 +02:00
Klaas van Schelven
86b775aabc In non-debug, make sure logging ends up on stdout too 2024-04-27 22:09:59 +02:00
Klaas van Schelven
46220f97ea Snappea: 'ensure' it is running as a singleton 2024-04-27 21:59:20 +02:00
Klaas van Schelven
1d18bdd9ed Preserve design-thought about snappea 2024-04-27 21:44:34 +02:00
Klaas van Schelven
12acd2c950 Add test for digest-non-immediate 2024-04-27 21:39:56 +02:00
Klaas van Schelven
ab791941ed Add test for envelope ingestion 2024-04-27 21:24:25 +02:00
Klaas van Schelven
7e32893b78 Fix the store endpoint (but always DIGEST_IMMEDIATELY) 2024-04-27 21:13:29 +02:00
Klaas van Schelven
2ddb773c6b Remove temp files after delayed digestion 2024-04-27 20:48:43 +02:00
Klaas van Schelven
4b509ac13b Stress test: print some stats 2024-04-27 20:45:59 +02:00
Klaas van Schelven
8d23239526 Be more strict about usage of TransactionTestCase in tests 2024-04-27 20:35:35 +02:00
Klaas van Schelven
2e6be5cbe7 Wrap Task.objects.all() call in a transaction 2024-04-27 11:07:23 +02:00
Klaas van Schelven
4a6196c267 Leave TODO about pc_registry and multi-process setups 2024-04-26 20:56:56 +02:00
Klaas van Schelven
b261c21a61 Clarify the meaning of Django's savepoint argument 2024-04-26 20:51:19 +02:00
Klaas van Schelven
653f4381c1 Add comment on transaction serializability 2024-04-26 20:45:55 +02:00
Klaas van Schelven
61d5615d5d Add stress-test command (using copy/paste from send_json) 2024-04-26 16:11:38 +02:00
Klaas van Schelven
40fecc20fd Remove old setting name 2024-04-26 16:11:20 +02:00
Klaas van Schelven
c87582fba6 Don't fsync
It's (very, in the order of 10ms) costly.
As I understand it now: the reason is for durability in case of power outages. But that's not
what we're looking for here. We merely want "available in another process". Which I think should
just be the case after a flush().
2024-04-26 15:26:41 +02:00
Klaas van Schelven
58435754e0 Digest immediately implemented 2024-04-26 14:48:07 +02:00
Klaas van Schelven
c8053bfec4 Do not allow immediate_atomic to run in non-Transactional testcase 2024-04-26 13:40:19 +02:00
Klaas van Schelven
6b5ed1268a Add missing file 2024-04-26 12:21:25 +02:00
Klaas van Schelven
7bfad36376 Implement brotli decompression 2024-04-25 15:56:11 +02:00
Klaas van Schelven
41e5331f35 Comment about relative performance of some key steps in Envelope unpacking 2024-04-25 15:34:51 +02:00
Klaas van Schelven
f3b090a859 Document why we do streaming parsing 2024-04-25 15:25:15 +02:00
Klaas van Schelven
d3ac2d0568 (configurable) max header size (both envelope and item header) 2024-04-25 15:07:25 +02:00
Klaas van Schelven
234008bee3 Don't subject non-event types to event-type size limit 2024-04-25 14:59:24 +02:00
Klaas van Schelven
58d448350a Implement MAX sizes for event & envelope 2024-04-25 14:56:11 +02:00
Klaas van Schelven
a19f1ff712 MaxDataReader more generic and precise 2024-04-25 13:58:26 +02:00
Klaas van Schelven
387234b847 Read the Envelope specification once more, implement some more details 2024-04-25 13:39:52 +02:00
Klaas van Schelven
fb2ddc718c Log non-event items 2024-04-25 13:09:07 +02:00
Klaas van Schelven
4d996e0c51 Use my own impl. of conent_encoding based decompress
In the process: make it read-read rather than read-write
2024-04-25 12:10:15 +02:00
Klaas van Schelven
c3af388461 envelope endpoint: use StreamingEnvelopeParser
in the process, the DRF was removed (it's non-streaming)
2024-04-25 11:39:19 +02:00
Klaas van Schelven
d099d43418 send_json: ability to send envelopes 2024-04-25 11:38:29 +02:00
Klaas van Schelven
1ad14e72fd Check that an item is present when a header is given
Refactor: NewlineFinder always accepts EOF as an implicit ending
2024-04-25 10:41:43 +02:00
Klaas van Schelven
13913c37c4 Implement EnvelopeParser (at least all examples implemented) 2024-04-25 10:20:45 +02:00
Klaas van Schelven
5d874f7a46 EnvelopeParser's read_until: reimplement using output-stream; write tests 2024-04-25 08:54:01 +02:00
Klaas van Schelven
5d5c49899e WIP: implement envelope parsing myself, and actually according to spec 2024-04-24 21:46:33 +02:00
Klaas van Schelven
605603a9e1 Simplify vendored middleware for understanding gained
I'll probably remove it soon anyway, but this whole retrying logic was funny
so I removed it. If specified as deflate, parse as deflate
2024-04-24 15:45:06 +02:00
Klaas van Schelven
5a0195c533 Add 'deflate' as an option to send_json command 2024-04-24 15:44:02 +02:00
Klaas van Schelven
59bc105457 Tools for gzip/deflate and max-size reading/writing 2024-04-24 15:30:12 +02:00
Klaas van Schelven
483aca6802 send_json: ability to send gzipped 2024-04-24 15:29:39 +02:00
Klaas van Schelven
52f720bf4f Add missing file 2024-04-24 12:30:25 +02:00
Klaas van Schelven
66a24a60b6 Remove unused vendored middlewares 2024-04-24 08:25:47 +02:00
Klaas van Schelven
0855299c97 Robustness of Task -> actual running thread mechanism 2024-04-23 15:28:21 +02:00
Klaas van Schelven
8ca2388c45 Factor out wakeup_server 2024-04-23 15:27:57 +02:00