Commit graph

3,831 commits

Author SHA1 Message Date
099c0e1b8b Merge pull request '[MTM] Upgrade to Laravel 13' (#91) from develop into main v0.79
Reviewed-on: #91
2026-04-07 10:20:32 +02:00
9f012b01e4
Upgrade to Laravel 13 2026-04-07 09:01:19 +01:00
f588f4a4ca Merge pull request 'MTM Fix UpdateHandler error from OwnYourSwarm checkin' (#84) from develop into main v0.78.1
Reviewed-on: #84
2026-03-18 18:46:38 +01:00
e8e2bff5e4
Fix UpdateHandler crash when replace.content is a rich-text object
OwnYourSwarm sends content as an array of objects with `value` and `html`
keys per the Micropub spec. The handler now handles both forms: plain
strings and rich objects, preferring `html` over `value`.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 17:43:57 +00:00
91ab9baa96 Merge pull request 'MTM Fox OwnYourSwarm checkins' (#82) from develop into main v0.78
Reviewed-on: #82
2026-03-14 20:23:19 +01:00
4451fc247e
Fix OwnYourSwarm checkin parsing to read from properties.checkin
Real OwnYourSwarm requests send the checkin h-card inside
properties.checkin (as an array), not at the top level. The code
was reading from the top-level key so no Place was ever created,
leaving checkin notes blank.

Update tests to match the real request format.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-14 19:18:00 +00:00
d27d4918df Merge pull request 'MTM Micropub improvements and WebMention fix' (#79) from develop into main v0.77
Reviewed-on: #79
2026-03-14 17:39:58 +01:00
0a13d27d6f
Expand webmentions source and target columns to text
Long brid.gy Bluesky source URLs exceed 255 characters, causing
SQLSTATE[22001] errors. Changed source and target from varchar(255)
to text (no performance impact in PostgreSQL).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-14 16:32:22 +00:00
1137d2a07e
Move request parsing into DTOs via fromRequest(), expand update handler
Each DTO now owns its own parsing logic via fromRequest(), removing
the normalization layer from MicropubRequest entirely. UpdateHandler
gains delete support and allows replace/add/delete to compose in a
single request rather than being mutually exclusive.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-13 20:39:50 +00:00
ad15b36f4d
Introduce typed DTOs and sub-namespaces for Micropub handlers
Each handler now declares the data class it needs via dataClass(). The
controller builds the appropriate typed DTO from the raw request array
before calling handle(), giving handlers typed property access instead
of raw array lookups.

Handlers moved to App\Services\Micropub\Handlers, data objects to
App\Services\Micropub\Data. MicropubHandlerRegistry and the interface
are documented with flow diagrams and guidance for adding new types.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-22 10:41:33 +00:00
24cb6d61aa
Implement micropub update support with clean exception-based error handling
- Add MicropubUnsupportedModelException for non-note update attempts
- Refactor UpdateHandler to throw exceptions instead of returning JsonResponse objects; extract applySyndication() to DRY up duplicated syndication URL mapping
- Fix MicropubController: InvalidTokenScopeException now returns 401 + insufficient_scope; add catches for ModelNotFoundException (404) and MicropubUnsupportedModelException (500); updates return 200 not 201
- Slim MicropubRequest.normalizeMicropubJson() to branch on action type, keeping update and create fields cleanly separated
- Update tests to match corrected status codes and error keys; remove markTestSkipped() from all update tests

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-22 10:15:35 +00:00
d89c3f6543 Merge pull request 'MTM Update dependencies' (#75) from develop into main v0.76.3
Reviewed-on: #75
2026-02-21 18:22:07 +01:00
a342b432d4
Update dependencies 2026-02-21 17:06:37 +00:00
b4fbc27abe Merge pull request 'MTM Allow migrate media command to be re-run' (#72) from develop into main v0.76.2
Reviewed-on: #72
2026-01-09 17:35:28 +01:00
a5f146125b
Allow migrate media command to be re-run 2026-01-09 14:21:37 +00:00
c1f2066b07 Merge pull request 'MTM Fix issue with migrating old S3 media' (#70) from develop into main v0.76.1
Reviewed-on: #70
2026-01-08 19:23:18 +01:00
4dd4977dd9
Fix issue with migrating old S3 media 2026-01-08 18:21:28 +00:00
bc8d535b24 Merge pull request 'MTM Micropub Media support' (#68) from develop into main v0.76
Reviewed-on: #68
2026-01-04 11:37:18 +01:00
d31a59cbbe Merge branch 'main' into develop 2026-01-04 11:29:54 +01:00
51780523b4
Fix unit tests 2026-01-04 10:22:32 +00:00
9e788e0fe8
Images can be uploaded with alt text
This means associating images to notes via a pivot table, we also finish
off the migration of medai from S3.
2026-01-04 10:07:25 +00:00
76db869af5
Allow files to be added to notes
This is specifically when a Micropub client is using the JSON syntax and
initially uploads the photo via the media endpoint
2025-12-27 17:58:43 +00:00
d3d6913474
Switch local setup to PHP8.5
Also pull in config changes from upstream laravel/laravel
2025-12-13 15:53:00 +00:00
69e11d0799 Merge pull request 'MTM Small mobile layout tweaks' (#63) from develop into main v0.75.2
Reviewed-on: #63
2025-12-11 21:13:47 +01:00
6b4607e4f9
Small mobile layout tweaks 2025-12-11 19:58:17 +00:00
aef76e023a Merge pull request 'MTM Fix layout of note metadata' (#61) from develop into main
Reviewed-on: #61
2025-12-11 18:54:12 +01:00
f85085c34f
Fix layout of note metadata v0.75.1
Especially the syndication links
2025-12-11 17:48:42 +00:00
4409e42029 Merge pull request 'MTM Redesign 2025.1' (#57) from develop into main v0.75
Reviewed-on: #57
2025-12-11 18:20:26 +01:00
a8cb30456c
Redesign v2025.1 2025-12-11 17:17:01 +00:00
a46a760669
Fix code style of flare’s config.php 2025-10-30 12:01:46 +00:00
273bdbbb49
Update dependencies 2025-10-30 11:49:54 +00:00
6183a065e9 Merge pull request 'MTM Micropub fixes' (#52) from develop into main v0.74.1
Reviewed-on: #52
2025-08-17 12:18:06 +02:00
9efde2708e
Dependency updates 2025-08-17 11:12:55 +01:00
363254d13c
Some fixes related to developing my Micropub client 2025-08-17 11:05:38 +01:00
0ef822de0c Merge pull request 'MTM No snow' (#49) from develop into main v0.74
Reviewed-on: #49
2025-07-01 17:57:22 +02:00
8eaca85fe0
Update dependencies 2025-06-30 19:43:28 +01:00
fe48864f39
Laravel Sail dependency updates
Update PHP to v8.4
Update PostgreSQL to v17
2025-06-30 19:27:39 +01:00
83d10e1a70
Refactor of micropub request handling
Trying to organise the code better. It now temporarily doesn’t support
update requests. Thought the spec defines them as SHOULD features and
not MUST features. So safe for now :)
2025-04-27 16:38:25 +01:00
23c275945a
Refactor micropub token verification 2025-04-12 11:47:30 +01:00
70f90dd456
Remove un-needed config files 2025-04-10 21:03:22 +01:00
cd5c97afd3
Remove psalm annotations 2025-04-10 20:09:36 +01:00
97f3848b66
Use esbuild 2025-04-10 17:08:19 +01:00
540bd17792
Use lightningcss 2025-04-10 16:53:23 +01:00
1fe9a42d8d
Remove GitHub config 2025-04-07 19:47:48 +01:00
cf978cd749
Fix PasskeysController with new webauthn library version
Some checks failed
PHP Unit / PHPUnit test suite (pull_request) Has been cancelled
Laravel Pint / Laravel Pint (pull_request) Has been cancelled
2025-04-07 19:44:13 +01:00
126bb29ae2
Laravel Pint fixes
Some checks failed
PHP Unit / PHPUnit test suite (pull_request) Has been cancelled
Laravel Pint / Laravel Pint (pull_request) Has been cancelled
2025-04-06 17:25:06 +01:00
7a58287b34
Remove references to short domain 2025-04-06 17:22:36 +01:00
328c9badb4
Remove snow fall
Some checks failed
PHP Unit / PHPUnit test suite (pull_request) Has been cancelled
Laravel Pint / Laravel Pint (pull_request) Has been cancelled
2025-04-06 14:33:45 +01:00
07db68882b Merge pull request 'MTM Laravel v12' (#31) from develop into main
Some checks failed
Deploy / Deploy (release) Has been cancelled
v0.73
Reviewed-on: #31
2025-04-04 18:10:46 +02:00
1dfa17abca
Update Laravel to v12
Some checks failed
PHP Unit / PHPUnit test suite (pull_request) Has been cancelled
Laravel Pint / Laravel Pint (pull_request) Has been cancelled
2025-04-01 21:10:30 +01:00