klemek
|
c5f3e53d88
|
feat: stapler challenge for self discovery
|
2026-06-03 18:56:07 +02:00 |
|
klemek
|
24b29f5716
|
chore: release 1.4.2
Python Lint CI / ruff (push) Successful in 2m37s
Python Lint CI / ruff-format-check (push) Successful in 2m23s
Docker CI / docker-build (push) Successful in 3m40s
Python Lint CI / ty (push) Successful in 3m19s
Python Test CI / coverage (push) Successful in 2m20s
|
2026-06-03 00:13:05 +02:00 |
|
klemek
|
fa0fab0f15
|
fix(cert_manager): indicate no email in certbot
|
2026-06-03 00:12:03 +02:00 |
|
klemek
|
cc3bd48ddf
|
fix(cert_manager): typo in valid_host
|
2026-06-03 00:00:48 +02:00 |
|
klemek
|
48b52f9fea
|
perf(cert_manager): slightly faster self signed generation
Python Lint CI / ruff-format-check (push) Successful in 1m10s
Python Lint CI / ruff (push) Failing after 1m11s
Docker CI / docker-build (push) Successful in 2m17s
Python Lint CI / ty (push) Failing after 1m56s
Python Test CI / coverage (push) Failing after 4m38s
|
2026-06-02 23:54:51 +02:00 |
|
klemek
|
2040b709d3
|
perf(registry): compute host-based dict
Python Lint CI / ruff-format-check (push) Successful in 1m11s
Python Lint CI / ruff (push) Successful in 1m11s
Python Lint CI / ty (push) Successful in 1m30s
Docker CI / docker-build (push) Successful in 2m31s
Python Test CI / coverage (push) Has been cancelled
|
2026-06-02 23:51:37 +02:00 |
|
klemek
|
e0c8eb1724
|
fix(params): isdecimal instead of isnumeric
Python Lint CI / ruff (push) Successful in 3m42s
Python Lint CI / ruff-format-check (push) Successful in 3m51s
Python Lint CI / ty (push) Successful in 1m13s
Docker CI / docker-build (push) Successful in 5m28s
Python Test CI / coverage (push) Successful in 3m31s
|
2026-06-02 23:41:12 +02:00 |
|
klemek
|
d84c5911b0
|
fix(handlers): handle non integer content-length
Docker CI / docker-build (push) Has been cancelled
Python Lint CI / ty (push) Has been cancelled
Python Lint CI / ruff (push) Has been cancelled
Python Lint CI / ruff-format-check (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-06-02 23:40:12 +02:00 |
|
klemek
|
2bc2593bc9
|
fix(registry): race condition handled with page 'ready'
Python Lint CI / ruff (push) Successful in 1m0s
Python Lint CI / ty (push) Successful in 1m0s
Python Lint CI / ruff-format-check (push) Successful in 1m0s
Docker CI / docker-build (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-06-02 23:36:35 +02:00 |
|
klemek
|
81b3007efd
|
fix(token_manager): race condition for file stat
Python Lint CI / ruff-format-check (push) Successful in 9m32s
Python Lint CI / ruff (push) Successful in 9m33s
Python Lint CI / ty (push) Successful in 9m18s
Docker CI / docker-build (push) Successful in 10m35s
Python Test CI / coverage (push) Successful in 2m20s
|
2026-06-02 23:08:29 +02:00 |
|
klemek
|
c3131acc88
|
refactor(token_manager): use pbkdf2 hmac
Docker CI / docker-build (push) Has been cancelled
Python Lint CI / ruff (push) Has been cancelled
Python Lint CI / ruff-format-check (push) Has been cancelled
Python Lint CI / ty (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-06-02 23:07:30 +02:00 |
|
klemek
|
60b6b0e592
|
fix(data_dir): empty dir check if path exists before remove
Python Lint CI / ty (push) Successful in 2m7s
Docker CI / docker-build (push) Successful in 2m59s
Python Lint CI / ruff-format-check (push) Successful in 2m10s
Python Lint CI / ruff (push) Successful in 2m10s
Python Test CI / coverage (push) Successful in 6m32s
|
2026-06-02 22:41:31 +02:00 |
|
klemek
|
247dd7dda3
|
fix(handlers): keep proxy and redirect case
Docker CI / docker-build (push) Has been cancelled
Python Lint CI / ty (push) Has been cancelled
Python Lint CI / ruff (push) Has been cancelled
Python Lint CI / ruff-format-check (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-06-02 22:37:23 +02:00 |
|
klemek
|
d2a656a839
|
fix(handlers): positive content-length check
Python Lint CI / ruff (push) Successful in 1m8s
Python Lint CI / ty (push) Successful in 1m8s
Python Lint CI / ruff-format-check (push) Successful in 1m8s
Docker CI / docker-build (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-06-02 22:35:03 +02:00 |
|
klemek
|
b234504b49
|
fix(handlers): check certbot challenge
|
2026-06-02 22:35:03 +02:00 |
|
klemek
|
66f7879c0f
|
fix(cert_manager): check host on SNI callback
Python Lint CI / ruff (push) Successful in 1m22s
Python Lint CI / ruff-format-check (push) Successful in 1m23s
Python Lint CI / ty (push) Successful in 1m23s
Docker CI / docker-build (push) Successful in 2m27s
Python Test CI / coverage (push) Successful in 3m4s
|
2026-06-02 22:05:16 +02:00 |
|
klemek
|
ea63c4eeb9
|
chore: release 1.4.1
Python Lint CI / ruff (push) Successful in 3m45s
Docker CI / docker-build (push) Successful in 4m46s
Python Lint CI / ruff-format-check (push) Successful in 1m58s
Python Lint CI / ty (push) Successful in 4m34s
Python Test CI / coverage (push) Successful in 4m1s
|
2026-05-26 11:06:52 +02:00 |
|
klemek
|
8b9ee57260
|
build(uv): lock bounds
Docker CI / docker-build (push) Has been cancelled
Python Lint CI / ruff (push) Has been cancelled
Python Lint CI / ruff-format-check (push) Has been cancelled
Python Lint CI / ty (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-05-26 11:06:35 +02:00 |
|
klemek
|
60e70ea0c0
|
fix: hide python version
Python Lint CI / ruff (push) Successful in 58s
Python Lint CI / ruff-format-check (push) Successful in 1m0s
Python Lint CI / ty (push) Successful in 1m0s
Docker CI / docker-build (push) Successful in 2m52s
Python Test CI / coverage (push) Successful in 2m30s
|
2026-05-26 10:58:16 +02:00 |
|
klemek
|
9cefd6657a
|
feat: send HSTS header
|
2026-05-26 10:58:05 +02:00 |
|
klemek
|
1e5f3ba986
|
chore: release 1.4.0
Python Lint CI / ruff (push) Successful in 2m16s
Docker CI / docker-build (push) Successful in 3m8s
Python Lint CI / ruff-format-check (push) Successful in 2m33s
Python Lint CI / ty (push) Successful in 5m13s
Python Test CI / coverage (push) Successful in 5m6s
|
2026-05-11 17:26:42 +02:00 |
|
klemek
|
d3d98bd9b2
|
feat: handle HEAD requests
|
2026-05-11 17:26:21 +02:00 |
|
klemek
|
b6d751a97a
|
chore: version 1.3.2
Docker CI / docker-build (push) Successful in 3m4s
Python Lint CI / ruff (push) Successful in 2m0s
Python Lint CI / ruff-format-check (push) Successful in 2m0s
Python Lint CI / ty (push) Successful in 3m24s
Python Test CI / coverage (push) Successful in 2m41s
|
2026-05-09 12:27:36 +02:00 |
|
klemek
|
3f0490ebc9
|
fix: use servername callback instead of sni callback
Python Lint CI / ruff (push) Successful in 1m4s
Python Lint CI / ruff-format-check (push) Successful in 1m4s
Python Lint CI / ty (push) Successful in 1m5s
Docker CI / docker-build (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-05-09 12:25:36 +02:00 |
|
klemek
|
04360b42d8
|
chore: release 1.3.1
Python Lint CI / ruff (push) Successful in 2m18s
Docker CI / docker-build (push) Successful in 3m2s
Python Lint CI / ruff-format-check (push) Successful in 1m31s
Python Lint CI / ty (push) Successful in 2m17s
Python Test CI / coverage (push) Successful in 2m5s
|
2026-05-06 16:01:26 +02:00 |
|
klemek
|
4edcc6acc7
|
fix: http/1.1 and force close connection
|
2026-05-06 16:01:15 +02:00 |
|
klemek
|
d9b559d13d
|
chore: release 1.3.0
Python Lint CI / ruff (push) Successful in 2m51s
Docker CI / docker-build (push) Successful in 3m23s
Python Lint CI / ruff-format-check (push) Successful in 1m50s
Python Lint CI / ty (push) Successful in 3m33s
Python Test CI / coverage (push) Successful in 3m4s
|
2026-05-06 14:32:00 +02:00 |
|
klemek
|
b0d98dd48b
|
feat: add robots.txt and favicon by default
|
2026-05-06 14:31:33 +02:00 |
|
klemek
|
64f45e9779
|
fix: dont init certificates with self-signed by default
|
2026-05-06 14:17:34 +02:00 |
|
klemek
|
2dd48042e7
|
chore: release 1.2.8
Python Lint CI / ruff (push) Successful in 1m57s
Python Lint CI / ruff-format-check (push) Successful in 1m52s
Docker CI / docker-build (push) Successful in 3m1s
Python Lint CI / ty (push) Successful in 2m47s
Python Test CI / coverage (push) Successful in 1m49s
|
2026-05-06 14:00:40 +02:00 |
|
klemek
|
74ceb0f677
|
fix: better host detection and cerbot only on valid hosts
|
2026-05-06 14:00:34 +02:00 |
|
klemek
|
e7abe7924f
|
chore: release 1.2.7
Python Lint CI / ruff (push) Successful in 1m27s
Python Lint CI / ruff-format-check (push) Successful in 1m19s
Docker CI / docker-build (push) Successful in 1m43s
Python Lint CI / ty (push) Successful in 4m22s
Python Test CI / coverage (push) Successful in 4m1s
|
2026-05-06 10:50:01 +02:00 |
|
klemek
|
8f7e4c8a91
|
fix: add debug request count
Docker CI / docker-build (push) Has been cancelled
Python Lint CI / ruff (push) Has been cancelled
Python Lint CI / ruff-format-check (push) Has been cancelled
Python Lint CI / ty (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-05-06 10:49:42 +02:00 |
|
klemek
|
ab6879d54f
|
chore: release 1.2.6
Python Lint CI / ruff (push) Successful in 3m52s
Python Lint CI / ruff-format-check (push) Successful in 1m41s
Docker CI / docker-build (push) Successful in 4m7s
Python Lint CI / ty (push) Successful in 2m11s
Python Test CI / coverage (push) Successful in 2m13s
|
2026-05-06 09:36:47 +02:00 |
|
klemek
|
8c93b9a015
|
fix: dont log BrokenPipeError and ConnectionResetError
|
2026-05-06 09:36:31 +02:00 |
|
klemek
|
f77e826490
|
chore: release 1.2.5
Python Lint CI / ruff (push) Successful in 2m59s
Python Lint CI / ruff-format-check (push) Successful in 1m27s
Docker CI / docker-build (push) Successful in 3m44s
Python Lint CI / ty (push) Successful in 1m21s
Python Test CI / coverage (push) Successful in 1m34s
|
2026-05-05 15:31:13 +02:00 |
|
klemek
|
fec5857995
|
tests: more coverage
Python Lint CI / ruff (push) Has been cancelled
Python Lint CI / ruff-format-check (push) Has been cancelled
Python Lint CI / ty (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-05-05 15:30:51 +02:00 |
|
klemek
|
b1ef00b437
|
fix: add request timeout
|
2026-05-05 15:09:54 +02:00 |
|
klemek
|
09ea29d6af
|
fix: better string sanitizing
|
2026-05-05 15:09:39 +02:00 |
|
klemek
|
8855fd0b01
|
fix: force connection close
|
2026-05-05 15:09:20 +02:00 |
|
klemek
|
8854cb393c
|
fix: send connection: close each request
|
2026-05-05 15:09:08 +02:00 |
|
klemek
|
5e5147251f
|
chore: release 1.2.4
Python Lint CI / ruff (push) Successful in 1m8s
Docker CI / docker-build (push) Successful in 2m2s
Python Lint CI / ruff-format-check (push) Successful in 1m40s
Python Lint CI / ty (push) Successful in 1m44s
Python Test CI / coverage (push) Successful in 2m2s
|
2026-05-04 23:02:32 +02:00 |
|
klemek
|
3fe33cb348
|
fix: sanitize requestline
Docker CI / docker-build (push) Has been cancelled
Python Lint CI / ruff (push) Has been cancelled
Python Lint CI / ruff-format-check (push) Has been cancelled
Python Lint CI / ty (push) Successful in 55s
Python Test CI / coverage (push) Has been cancelled
|
2026-05-04 23:02:15 +02:00 |
|
klemek
|
65c6145022
|
chore: release 1.2.3
Python Test CI / coverage (push) Successful in 1m34s
Python Lint CI / ruff (push) Successful in 1m16s
Docker CI / docker-build (push) Successful in 1m51s
Python Lint CI / ruff-format-check (push) Successful in 1m2s
Python Lint CI / ty (push) Successful in 1m41s
|
2026-05-04 22:53:29 +02:00 |
|
klemek
|
4af15b082d
|
fix: fix invalid crontab
|
2026-05-04 22:53:05 +02:00 |
|
klemek
|
9aa84cc2c3
|
fix: don't print raw client address
Python Lint CI / ty (push) Successful in 55s
Python Lint CI / ruff-format-check (push) Successful in 1m0s
Python Lint CI / ruff (push) Successful in 1m2s
Docker CI / docker-build (push) Has been cancelled
Python Test CI / coverage (push) Has been cancelled
|
2026-05-04 22:52:03 +02:00 |
|
klemek
|
658174518a
|
fix: handle error at init level
|
2026-05-04 22:52:03 +02:00 |
|
klemek
|
70aeafd791
|
tools: add .editorconfig
|
2026-05-03 19:02:46 +02:00 |
|
klemek
|
a65c3dd944
|
docs(README): mention fail-with-body in curl
|
2026-05-03 19:01:37 +02:00 |
|
klemek
|
91ea4cee23
|
tests: fix test_get_file_cannot_read
Python Lint CI / ruff (push) Successful in 44s
Python Lint CI / ruff-format-check (push) Successful in 43s
Python Lint CI / ty (push) Successful in 43s
Python Test CI / coverage (push) Successful in 3m30s
Docker CI / docker-build (push) Successful in 1m44s
|
2026-05-03 18:49:54 +02:00 |
|
klemek
|
458104026f
|
ci: separate lint and test workflows
Python Lint CI / ruff (push) Successful in 2m6s
Python Lint CI / ruff-format-check (push) Successful in 2m5s
Python Lint CI / ty (push) Successful in 2m5s
Python Test CI / coverage (push) Failing after 1m57s
|
2026-05-03 18:42:52 +02:00 |
|
klemek
|
a1f5f9f34b
|
ci: use actions/setup-uv
Docker CI / docker-build (push) Failing after 2m1s
|
2026-05-03 18:34:25 +02:00 |
|
klemek
|
7bc30a3f4d
|
docs: add CI status
Python CI / ruff (push) Successful in 8m11s
Python CI / ruff-format-check (push) Successful in 4m43s
Python CI / ty (push) Successful in 5m12s
Docker CI / docker-build (push) Successful in 15m37s
Python CI / coverage (push) Failing after 6m10s
|
2026-05-02 00:26:58 +02:00 |
|
klemek
|
fb08fe30b4
|
tools(make): open html coverage with xdg-open
|
2026-05-02 00:25:32 +02:00 |
|
klemek
|
ccd1ac9ffb
|
fix(ty): check for response status_code type
|
2026-05-02 00:25:32 +02:00 |
|
klemek
|
a02a1ad53b
|
tools: add pytest for more versatility
|
2026-05-02 00:25:32 +02:00 |
|
klemek
|
9ce68c320d
|
ci: fix and document CI
Docker CI / docker-build (push) Has been cancelled
Python CI / ruff (push) Has been cancelled
Python CI / ruff-format-check (push) Has been cancelled
Python CI / ty (push) Has been cancelled
Python CI / coverage (push) Has been cancelled
|
2026-05-02 00:21:02 +02:00 |
|
klemek
|
e9be3c86ae
|
ci(github): fix uv install
Python CI / ty (push) Successful in 46s
Python CI / ruff-format-check (push) Failing after 1m4s
Python CI / ruff (push) Successful in 2m2s
Python CI / coverage (push) Failing after 1m54s
Docker CI / build (push) Failing after 4m5s
|
2026-04-29 09:24:31 +02:00 |
|
klemek
|
0b39313f7e
|
chore: release 1.2.2
Python CI / ruff (push) Failing after 23s
Python CI / ruff-format-check (push) Failing after 25s
Docker CI / build (push) Failing after 40s
Python CI / ty (push) Failing after 22s
Python CI / coverage (push) Failing after 23s
|
2026-04-27 15:24:59 +02:00 |
|
klemek
|
a2e0f9afb9
|
fix: handle all errors
|
2026-04-27 15:24:13 +02:00 |
|
klemek
|
95514f16cb
|
fix: no message on bare curl
|
2026-04-27 15:15:34 +02:00 |
|
klemek
|
6db1b561f0
|
chore: release 1.2.1
Python CI / ruff (push) Failing after 23s
Docker CI / build (push) Failing after 32s
Python CI / ruff-format-check (push) Failing after 34s
Python CI / ty (push) Failing after 30s
Python CI / coverage (push) Failing after 35s
|
2026-04-26 12:35:02 +02:00 |
|
klemek
|
4256398cca
|
fix: spa index.html
|
2026-04-26 12:34:33 +02:00 |
|
klemek
|
1139b92893
|
chore: version 1.2.0
Docker CI / build (push) Failing after 32s
Python CI / ruff-format-check (push) Failing after 23s
Python CI / ty (push) Failing after 22s
Python CI / ruff (push) Successful in 24s
Python CI / coverage (push) Failing after 23s
|
2026-04-25 19:12:12 +02:00 |
|
klemek
|
f4f00a290c
|
feat: SPA sites
|
2026-04-25 19:11:25 +02:00 |
|
klemek
|
46a23d2ed0
|
chore: release 1.1.0
Python CI / ty (push) Failing after 22s
Docker CI / build (push) Failing after 3m6s
Python CI / ruff-format-check (push) Successful in 1m29s
Python CI / ruff (push) Successful in 2m10s
Python CI / coverage (push) Failing after 24s
|
2026-04-21 23:03:51 +02:00 |
|
klemek
|
7c824ff1c0
|
fix(handlers): handle http certbot request
|
2026-04-21 23:02:16 +02:00 |
|
 klemekandGitHub
|
155892a30e
|
Merge pull request #2 from klemek/feat/x-host-only
feat: X-Host-Only
|
2026-04-21 22:52:17 +02:00 |
|
klemek
|
c0c281e25c
|
feat: X-Host-Only
|
2026-04-21 22:51:35 +02:00 |
|
klemek
|
18c718d24a
|
chore(uv): proper packaging
|
2026-04-21 16:10:20 +02:00 |
|
klemek
|
8f0e063ab7
|
fix(compose.yml): add sample extra_hosts for simplicity
|
2026-04-21 15:03:16 +02:00 |
|
klemek
|
5dd4ae4f3d
|
docs(README): add sample publishing
|
2026-04-21 00:02:37 +02:00 |
|
klemek
|
df9ba1fd80
|
chore(release): version 1.0.0
|
2026-04-20 23:36:23 +02:00 |
|
klemek
|
cf8ce93a56
|
fix: redirects
|
2026-04-20 23:34:39 +02:00 |
|
klemek
|
b0b0edcc58
|
fix: redirects
|
2026-04-20 23:32:05 +02:00 |
|
klemek
|
966bbdbdf0
|
fix: redirects
|
2026-04-20 23:28:24 +02:00 |
|
klemek
|
74c4cf45d7
|
fix: add cookies from proxy requests
|
2026-04-20 23:24:04 +02:00 |
|
klemek
|
f0d7da93c1
|
fix: add cookies from proxy requests
|
2026-04-20 23:21:46 +02:00 |
|
klemek
|
ef2aa44dde
|
fix: add cookies from proxy requests
|
2026-04-20 23:19:29 +02:00 |
|
klemek
|
233d7f657b
|
build: add logs handling in compose file
|
2026-04-20 23:04:44 +02:00 |
|
klemek
|
ac94704c9e
|
fix: add X-Forwarded-Proto header
|
2026-04-20 23:04:18 +02:00 |
|
klemek
|
96cf1f394b
|
fix: allow proxy redirects
|
2026-04-20 22:22:53 +02:00 |
|
klemek
|
d0aa8d6413
|
fix: certbot prevails
|
2026-04-20 22:19:40 +02:00 |
|
klemek
|
1b9eed87b9
|
fix: allow args before/after command
|
2026-04-20 21:25:51 +02:00 |
|
klemek
|
e7e8c9f141
|
fix: don't reload cert manager, use only sni callback
|
2026-04-20 21:14:17 +02:00 |
|
klemek
|
d7bca9dc10
|
tests: remove no covers
|
2026-04-20 20:03:33 +02:00 |
|
klemek
|
90742e63f1
|
fix: repeating container
|
2026-04-20 20:00:13 +02:00 |
|
klemek
|
7f02abca1a
|
feat: cert_manager detect file change
|
2026-04-20 19:55:35 +02:00 |
|
klemek
|
5ff397e6d1
|
feat: token_manager detect file change
|
2026-04-20 19:23:03 +02:00 |
|
klemek
|
e8a59c7e65
|
docs: proper docs
|
2026-04-20 19:01:25 +02:00 |
|
klemek
|
3064fe5492
|
build: compose with a crontab
|
2026-04-20 18:58:11 +02:00 |
|
klemek
|
1920fe3a00
|
refactor: rename docker-compose to compose
|
2026-04-20 17:46:46 +02:00 |
|
klemek
|
a1ab8ddd2b
|
fix: make main.py executable
|
2026-04-20 17:23:26 +02:00 |
|
klemek
|
452492a974
|
fix: add x-forwarded-host header
|
2026-04-20 17:21:55 +02:00 |
|
klemek
|
33cfd350a5
|
feat: X-Proxy
|
2026-04-20 17:00:28 +02:00 |
|
klemek
|
fb70638330
|
refactor(handlers): handle all http methods
|
2026-04-20 13:51:19 +02:00 |
|
klemek
|
4e50c42100
|
feat: handler proxy mecanism
|
2026-04-20 13:46:48 +02:00 |
|
klemek
|
5671d68e21
|
feat: X-Redirect pages
|
2026-04-20 11:36:56 +02:00 |
|
klemek
|
5fb10ffb9d
|
refactor: use slots and strongly typed properties
|
2026-04-20 10:48:58 +02:00 |
|
klemek
|
fc7d3cb0e8
|
fix(data_dir): remove dot files everywhere
|
2026-04-20 10:06:48 +02:00 |
|