woodpecker-bot
f1400aaf62
fix(deps): pin dependencies
2025-10-23 00:11:27 +00:00
miyuko
8f8521d697
Don't compress video or audio files.
2025-10-22 17:25:13 +01:00
miyuko
ffedc45a14
Don't send COEP/COOP headers for non-HTML resources.
2025-10-22 17:25:10 +01:00
miyuko
d6a7a72e09
Serve compressed content directly if client indicates support.
2025-10-22 16:59:35 +01:00
miyuko
aa965c5a08
Use s3:GetObject instead of s3:ListObjects for CheckDomain.
2025-10-22 13:45:15 +01:00
Catherine
34db13e603
Simplify observability code. NFC
2025-10-22 10:44:25 +00:00
Simon Kolkmann
d144ea197e
Update README.
2025-10-22 11:53:32 +02:00
Catherine
d1be93919f
Make installable with go install.
2025-10-22 05:24:55 +00:00
Gusted
9f435d6e28
Disable actions/buildah-simple from renovate
2025-10-22 01:37:45 +02:00
miyuko
c39e57a857
Fetch manifests in parallel when handling GET requests.
2025-10-22 00:25:21 +01:00
miyuko
3863f0f134
Revert "Add a GetManifests function."
...
This reverts commit 0a111234f2 .
2025-10-22 00:25:21 +01:00
Catherine
9849bcd498
Renovate: disable abandonmentThreshold.
...
It's fine for a package to stop getting updates if it is feature
complete.
2025-10-21 23:14:15 +00:00
woodpecker-bot
0d7a9aa9eb
chore(deps): add renovate.json
2025-10-21 22:59:59 +00:00
Catherine
5e09a2b2bb
Add a metric for site space saving due to compression.
2025-10-21 03:54:20 +00:00
Catherine
25f7ea08c9
Sniff Content-Type during site update.
...
This isn't yet used in the code responding to GET requests because we
do not yet have a migration path for legacy code.
2025-10-21 03:40:29 +00:00
Catherine
0a111234f2
Add a GetManifests function.
...
Intended as an implementation detail of parallel `getPages`.
2025-10-21 01:40:22 +00:00
Catherine
83c1e564c4
Add stored_size (size after deduplication) to manifest.
2025-10-21 00:49:27 +00:00
Catherine
23b516cf15
Observe timings even for 304 Not Modified responses to manifest loads.
2025-10-21 00:29:42 +00:00
Catherine
99b87226a1
Move update error observation to a single place. NFC
2025-10-18 21:49:54 +00:00
miyuko
fcc6245ce8
Respond to webhook deliveries in under 3 seconds.
2025-10-18 04:38:06 +01:00
miyuko
2ac2aee14a
Use ETags when refreshing cached manifests.
2025-10-17 21:13:58 +01:00
Catherine
d54976e756
Report update errors or timeouts.
...
Looking through Sentry history, `update <domain> err:` is an extremely
high SNR signal of something going wrong; from configuration errors on
our side, to people pushing too-large git repositories and it failing.
Either way we should know.
2025-10-17 10:33:41 +00:00
Catherine
ff6fff2133
Add git_pages_http_request_count metric.
2025-10-17 02:13:06 +00:00
miyuko
e709634906
Add classic buckets to git_pages_s3_get_object_duration_seconds.
2025-10-17 03:07:14 +01:00
miyuko
93b7ad3af8
Add classic buckets to git_pages_http_request_duration_seconds.
2025-10-17 02:33:53 +01:00
miyuko
cfeb2d0dbe
Observe s3:GetObject latency.
2025-10-16 03:23:38 +01:00
miyuko
6fe029238a
Update flake.nix.
2025-10-16 00:50:12 +01:00
miyuko
32109d0db8
Monitor how long it takes us to respond to HTTP requests.
2025-10-16 00:41:23 +01:00
miyuko
eda3e8a791
Add stale-while-revalidate support to the cache.
2025-10-15 23:53:12 +01:00
miyuko
8bb6d0ff28
Unconditionally sample HTTP requests for tracing that take too long.
2025-10-15 18:26:33 +01:00
miyuko
87262e82f0
Swallow DNS allowlist parsing errors if at least one record is valid.
2025-10-15 02:36:14 +01:00
Catherine
afae6e42f3
S3: log blob sizes in human readable form.
2025-10-13 02:39:17 +00:00
miyuko
443e929dea
Respond within 10 seconds when receiving GitHub webhooks.
2025-10-13 00:52:07 +01:00
Catherine
188c66c434
Use an ad-hoc type to deserialize JSON webhook payload.
...
This is both better structured, and avoids crashes on invalid payloads
that would occur before this commit due to a lack of checking for nil
in the maps.
2025-10-09 14:53:01 +00:00
Catherine
5b8cb4ba11
Clean up Caddyfile, removing Fly.io-isms.
...
The grebedoc.dev infrastructure is no longer directly tied to
the container built from this repository, so we don't have to
pollute the configuration with Fly.io-isms.
2025-10-09 14:43:41 +00:00
Catherine
d887ae1602
Allow metadata retrieval with Codeberg Pages v2 authorization method.
2025-10-09 13:48:46 +00:00
Catherine
e0b659f668
Add [limits].allowed-repository-url-prefixes configuration option.
...
This is useful to limit updates to a specific Git forge.
Naturally, enabling this option disables updates from archive.
2025-10-09 13:48:15 +00:00
miyuko
2d603db810
Use the upstream certmagic-s3 Caddy plugin.
...
Merged PR: https://github.com/ss098/certmagic-s3/pull/25
2025-10-08 01:24:12 +01:00
Catherine
15107298b2
Allow a trailing dot in Codeberg Pages v2 DNS TXT authentication method.
2025-10-07 19:00:46 +00:00
miyuko
a85905bd31
Fix time-based cache expiration practically never working.
...
config.MaxAge is now a nanosecond value, and multiplying it by
time.Second (number of nanoseconds in a second) will make it too large
for the cache expiry algorithm to have any effect.
2025-10-05 15:06:33 +01:00
Catherine
0eede0792d
Add hostname and (if present) $PAGES_REGION to Server:.
...
Indispensable when debugging anycast configurations.
2025-10-05 08:11:52 +00:00
Catherine
a14f9e1e6c
Use int64, not uint32, for sizes in the manifest.
...
This change eliminates a number of rather sketchy casts.
This conversion is a no-op for the wire format, explicitly per
Protobuf documentation.
2025-10-03 06:02:21 +00:00
Catherine
1e01a12958
Implement force redirects.
2025-10-02 16:41:23 +00:00
Catherine
157ceb8342
Add an HTTP status code workaround for GitHub.
2025-10-02 12:41:15 +00:00
Catherine
a7c47a798f
Allow running without a configuration TOML file.
...
This is useful if it's more convenient to configure the server via
environment variables only.
2025-10-02 11:33:21 +00:00
miyuko
d5a4ac4098
Fix URL argument validation when using the -update-site CLI option.
2025-09-30 21:59:41 +01:00
Catherine
f0805c9ff5
Revert "Remove redundant bounds check from ExtractTar. NFCI"
...
This reverts commit 485cd4b9b1 .
It wasn't redundant.
2025-09-30 05:20:02 +00:00
Catherine
485cd4b9b1
Remove redundant bounds check from ExtractTar. NFCI
2025-09-30 05:19:07 +00:00
Catherine
277b329e2d
Merge backend_observer.go into observe.go. NFC
2025-09-30 04:40:30 +00:00
Catherine
50e32fedb0
Add logo.
2025-09-30 04:35:06 +00:00