924 Commits

Author SHA1 Message Date
Klaas van Schelven 1351f1a30d Version: show on settings page 0.1.14 2024-10-14 20:23:40 +02:00
Klaas van Schelven 98e666e3ff Remove dashses from displayed DSN
Fixes #7

I could not find any documentation on what the "standard" is, but I know that
we'll pick it up just fine either way (because Django's UUID field does the
magic for us).

Given that it's impossible to setup your JS client with the dashes, they should
simply be removed.
2024-10-14 20:15:45 +02:00
Klaas van Schelven 2506e9e65f Add pull_requests_template.md to discourage contributions via PRs 2024-10-14 20:03:47 +02:00
Klaas van Schelven 679cf8134a fix: HTTP_TRANSFER_ENCODING header: read it only if given 2024-10-14 18:07:15 +02:00
Klaas van Schelven 3f31fc4c00 No need for CHUKED_TE_HANDLED setting
in the end I noticed that Gunicorn and mod_wsgi have extended
the wsgi spec, and I decided to use that instead
2024-10-14 17:06:35 +02:00
Klaas van Schelven a9f6218ae6 Support Chunked Transfer-Encoding Requests
Fixes #9
2024-10-14 16:49:34 +02:00
Klaas van Schelven 1755fa32c0 Envelope parsing: push exception about lack of errors up into parser
fail-fast, rather than return-none-fail-later
2024-10-14 16:15:45 +02:00
Klaas van Schelven 1ca7a1ecd9 Envelope-parser parameter rename for clarity
the error is about whether an EOF can happen _right after_ the
header is parsed.
2024-10-14 11:34:11 +02:00
Klaas van Schelven 333f1de22e pyproject project.urls 2024-10-14 10:13:49 +02:00
Klaas van Schelven 8594fa2b50 Remove EXPOSE from Dockerfile
it doesn't actually take runtime vars ('-e') into account
https://stackoverflow.com/questions/50178013/docker-expose-using-run-time-environment-variables

we'll just recommend '-p xxxx:xxxx' instead
0.1.13
2024-10-09 10:11:53 +02:00
Klaas van Schelven c56611bc82 Note that MySQL supports DELETE w/ LIMIT too 2024-10-09 09:58:47 +02:00
Klaas van Schelven 782bb81b82 Envelope is not actually json; let's reflect that in the filename 2024-10-09 09:38:00 +02:00
Klaas van Schelven cba2eb3584 Envelope-store logging: point to exact location for download 2024-10-09 09:36:17 +02:00
Klaas van Schelven a929c9d574 Python support: drop 3.8, introduce 3.13
why: simply motivated by Python's own EOL-cycle; i.e. I'm not
actively going to use any 3.13 or 3.9 features now.

how: updating test-matrixes; but no actual local testing done yet
2024-10-09 09:16:17 +02:00
Klaas van Schelven 6c586e64f7 Downgrade tailwind to 3.6
(this is the last version that supports Python 3.9, which we want to
support as it's not EOL for a full more year)
https://github.com/timonweb/django-tailwind/issues/210

Afterwards, I went through a full cycle of:

```
rm theme/static_src/package-lock.json theme/static_src/node_modules/ -rf
python manage.py tailwind install
python manage.py tailwind build
```

but this did not change any of our generated stuff.
2024-10-09 09:10:47 +02:00
Klaas van Schelven 21b6ab2f48 Upgrade tailwind deps
As outlined in
https://github.com/timonweb/django-tailwind/issues/209
2024-10-09 08:53:05 +02:00
Klaas van Schelven d60b59002e Add VALIDATE_ON_DIGEST and KEEP_ENVELOPES as docker env settings 2024-10-08 22:26:22 +02:00
Klaas van Schelven 55e077e974 Document a finding 2024-10-08 22:09:26 +02:00
Klaas van Schelven b1d2ec37fa Update the sentry-sdk we use
recommended by dependabot; 'should not be a problem' (i.e. we just
use this for dogfooding, not in our actual code-paths)
2024-10-08 13:25:56 +02:00
Klaas van Schelven 98776ebdfb Storing of envelopes: added as a debugging tool 2024-10-08 13:19:07 +02:00
Klaas van Schelven 0e48f346d1 Avoid cross-transaction pollution
in IMMEDIATE mode, project was passed from an (implicit) read transaction to
the immediate_atomic-wrapped code; this meant that it was possible to miscount
project.digested_event_count
2024-10-08 11:53:31 +02:00
Klaas van Schelven 91f7338abe Small clarification in comment about transactions 2024-10-08 11:28:02 +02:00
Klaas van Schelven f0006a63f5 raise_exception helper: tag should be string
> Tags are key/value string pairs that are both indexed and searchable.
2024-10-08 11:00:57 +02:00
Klaas van Schelven 99420216f2 verbose CSRF middleware: be explicit about X-Forwarded-Proto 2024-10-08 09:01:59 +02:00
Klaas van Schelven 0f7e174499 'reminder about build-wheel-first 0.1.12 2024-10-04 09:20:26 +02:00
Klaas van Schelven 4fb14df090 Docker: Port configurable as an env variable 2024-10-03 22:11:50 +02:00
Klaas van Schelven fb2ca1ab95 Add buildxdocker.bash
copy/pasta with modifications
2024-10-03 13:32:56 +02:00
Klaas van Schelven 26276a4a01 Check-before-migrate
do the fast thing, and the read-only thing, first
2024-10-02 23:10:04 +02:00
Klaas van Schelven 83834b8e4b git commit -m "Dockerfile: don't complain about migrations, just migrate
Our goal with having Docker in the first place is to make it easy to
deploy the application. 'just migrating' is a good idea for that goal
in general, but the more so because running migration commands when
the container isn't running yet, while the container refuses to run
without them having run putch you in a catch-22.

(the above may not be strictly true when you run with a database that's
external to your image, i.e. with mysql, because then you can use 'run'
rather than 'exec', but even that feels a bit 'wrongish', because run
starts a container that is then left around for `docker ps -a` to see)

for sqlite containers it's even more pressing, because the writes-to-db
go to different databases for each of the incantations of run (including
server-start). Even if I get this to work (I can't find the solution
in 15 minutes) it will be so clunky to be unworkable.

Theoretical concerns about not migrating on-server-start (but rather,
as part of some CI/CD script or something) will have take take a back-seat
to the reasoning above... if they even hold up at all).
2024-10-02 22:58:42 +02:00
Klaas van Schelven 00214dfc26 clarify a comment in builddocker.bash 2024-10-02 22:51:45 +02:00
Klaas van Schelven 7e142f406d Docker build: use 'fully qualified name' 2024-10-02 22:44:37 +02:00
Klaas van Schelven 57e0dd3747 System check for CsrfViewMiddleware: turn off; we have our own 0.1.11 2024-10-02 16:39:22 +02:00
Klaas van Schelven 8c09c68ecd Users: some interface to edit/view them 2024-10-02 15:41:42 +02:00
Klaas van Schelven 8ee526776e Show 'no version' on a button when this applies 2024-09-30 21:22:34 +02:00
Klaas van Schelven 10f63830ba Implement version-string sanitizing 2024-09-30 21:11:42 +02:00
Klaas van Schelven 19e07a93ce remove part of comment
this part of the comment is well-covered by the current version of the
docs (https://www.bugsink.com/docs/releases/)
2024-09-30 21:06:58 +02:00
Klaas van Schelven 87a9fb99ac Faulty newline in docker.py.template 0.1.10 2024-09-30 13:13:18 +02:00
Klaas van Schelven f2cd88032e Use verbose_csrf_middleware
this should make it so that you get the debug information right at the moment
you're experiencing the problem (rather than having to go to a special page)
2024-09-29 20:19:32 +02:00
Klaas van Schelven a169c201c0 Add note about HTTP_X_FORWARDED_PROTO
As per https://code.djangoproject.com/ticket/35800
2024-09-28 00:10:36 +02:00
Klaas van Schelven 53ea7eb3d7 Don't recommend USE_X_FORWARD_HOST
As in the website, where we said "Don't recommend X-Forwarded-Host"

We recommend just setting 'Host' in the production-installation guide,
so using X-Forward-Host is actually _wrong_.

I'd rather use Host than X-Forward-Host, it's much more straightforward.
here's a question on SO, which has answers, but I don't see any reason
there to not just use Host (in fact I understand none of the answers):
https://stackoverflow.com/questions/19084340/real-life-usage-of-the-x-forwarded-host-header
2024-09-28 00:09:02 +02:00
Klaas van Schelven f67ca08080 Document what a 'sort_epoch' is 2024-09-27 21:27:44 +02:00
Klaas van Schelven 5e5b53abed Remove a false comment
(groupings do imply issues, it's a FK)
2024-09-27 18:14:51 +02:00
Klaas van Schelven b6b4083ac1 Move vendored code into explicitly licenced dir 2024-09-27 18:03:51 +02:00
Klaas van Schelven 390048e2cd Comments/docstrings 2024-09-27 17:56:42 +02:00
Klaas van Schelven 6f0493f685 Resolved issues: italic & checkbox
in the lists; this is easier to read than a strikethrough.
I experimented with text-decoration-style and text-decoration-style but that
didn't make it better.
Our big brother doesn't bother to reveal the resolvedness of issues in lists
_at all_, btw. Surprising!
2024-09-27 12:16:25 +02:00
Klaas van Schelven a899be8cd5 Order events on event_list page
Paginator's Warning inspired me to do so
2024-09-26 16:18:29 +02:00
Klaas van Schelven 9db0b121ec Further HTML correctness checks; by not going through Firefox a few more issues were unhidden 2024-09-26 16:14:51 +02:00
Klaas van Schelven 35292d0ceb Replace "<a name" elements w/ id=...
Multiple problems w/ <a name

* in itself deprecated
* my approach of self-closing <a is illegal too

replaced w/ spans where necessary.

Further notes:

'topp' was never used; '#top' is taken too, so I went with first-frame (stil unused, 'maybe later')

The fixes in this and preceding commits were inspired by running "Nu Html Checker"

docker run -it --rm -p 8888:8888 ghcr.io/validator/validator:latest

files were simply saved in Firefox and then uploaded; make sure to ignore the warning which is caused by Firefox:

> A document must not include both a meta element with an http-equiv attribute whose value is content-type, and a meta element with a charset attribute.

I limited checking to the issue-list and various event-detail pages.
2024-09-26 15:58:42 +02:00
Klaas van Schelven b43d1cfa05 action must be non-empty 2024-09-26 15:27:46 +02:00
Klaas van Schelven f450bf6c29 Add 'alt' to img 2024-09-26 15:25:18 +02:00