Claudio Ortolina
86584845de
Update tailwind to 4.2.2
2026-03-18 16:41:29 +00:00
Claudio Ortolina
5cc8013d1a
Update dependencies
...
live_debugger 0.6.1 => 0.7.0 (minor)
2026-03-18 14:58:52 +00:00
Claudio Ortolina
1ee4d3465a
Move /dev/maintenance to /maintenance
2026-03-18 07:44:22 +00:00
Claudio Ortolina
5afb5f9533
Inline similar records in collection show view
2026-03-18 07:30:45 +00:00
Claudio Ortolina
16bcb1f36e
Use patch instead of navigate for similar records
2026-03-18 07:25:38 +00:00
Claudio Ortolina
2463f4f379
Update swoosh to 1.23.1
2026-03-17 16:19:39 +00:00
Claudio Ortolina
49aef5a4cb
Update architecture docs
2026-03-17 14:31:52 +00:00
Claudio Ortolina
63c95ff1e2
Move all chat related code under chats
2026-03-17 14:30:24 +00:00
Claudio Ortolina
5eb7ccd837
Fix overlapping buttons in chat
2026-03-17 14:10:31 +00:00
Claudio Ortolina
0f0d90d84e
Increase busy_timeout in test to avoid intermittent failures on CI
...
Running ExUnit with seed: 849711, max_cases: 4
........................................................................................................................................................................................................................................................................................................................................................................................................................................................
1) test count_record_sets/0 and count_record_sets/1 returns total count (MusicLibrary.RecordSetsTest)
Error: test/music_library/record_sets_test.exs:97
** (Exqlite.Error) Database busy
INSERT INTO "record_sets" ("name","description","inserted_at","updated_at","id") VALUES (?1,?2,?3,?4,?5)
code: record_set(%{name: "One"})
stacktrace:
(ecto_sql 3.13.5) lib/ecto/adapters/sql.ex:1113: Ecto.Adapters.SQL.raise_sql_call_error/1
(ecto 3.13.5) lib/ecto/repo/schema.ex:1000: Ecto.Repo.Schema.apply/4
(ecto 3.13.5) lib/ecto/repo/schema.ex:500: anonymous fn/15 in Ecto.Repo.Schema.do_insert/4
(music_library 0.1.0) lib/music_library/record_sets.ex:71: MusicLibrary.RecordSets.create_record_set/1
(music_library 0.1.0) test/support/fixtures/music_library/record_sets.ex:16: MusicLibrary.Fixtures.RecordSets.record_set/1
test/music_library/record_sets_test.exs💯 (test)
................................................................................................................................
Finished in 25.5 seconds (3.4s async, 22.1s sync)
37 doctests, 532 tests, 1 failure
2026-03-17 14:02:57 +00:00
Claudio Ortolina
3f95aee7a7
Cap message content
2026-03-17 13:51:38 +00:00
Claudio Ortolina
a86c9ad6fc
Remove dead code
2026-03-17 13:50:34 +00:00
Claudio Ortolina
8fd8dde73d
Persist chat history
2026-03-17 13:50:01 +00:00
Claudio Ortolina
bcef30eb52
Document production oban plugins
2026-03-17 11:55:36 +00:00
Claudio Ortolina
490a3a562f
Add Oban operational maintenance configuration
2026-03-17 11:53:12 +00:00
Claudio Ortolina
ca3c32c804
Add project convention around using the icon class
2026-03-16 19:43:30 +00:00
Claudio Ortolina
5a418248ad
Use same gaps in stats page
...
Closes #120
2026-03-16 19:30:52 +00:00
Claudio Ortolina
270762cdb6
Move maintenance menu item, remove redundant title
2026-03-16 19:28:47 +00:00
Claudio Ortolina
a459666126
Autosize all icon buttons
2026-03-16 15:09:05 +00:00
Claudio Ortolina
62359092d8
Uniform play icon sizes
...
Closes #121
2026-03-16 14:54:54 +00:00
Claudio Ortolina
3bae241d74
Uniform card corners/shadows
...
Closes #119
2026-03-16 14:51:04 +00:00
Claudio Ortolina
244e7734a5
Unify genre tag styling in record edit form
...
Use Fluxon .badge component instead of custom spans to match
the read view styling.
Closes #115
2026-03-16 14:34:35 +00:00
Claudio Ortolina
4370391265
Remove useless space-y directive
2026-03-16 14:15:45 +00:00
Claudio Ortolina
cd062c84f2
Update architecture docs
2026-03-16 12:53:32 +00:00
Claudio Ortolina
74a2b9bce8
Update and uniform styles for scrobble rules and online templates lists
2026-03-16 12:43:07 +00:00
Claudio Ortolina
f1e3b22f91
Make online store templates searchable
2026-03-16 11:56:39 +00:00
Claudio Ortolina
654b172ddb
Fix UI inconsistencies across templates
...
- Replace .separator with .dropdown_separator in 4 dropdown menus
- Change gray-* to zinc-* color classes in online store templates
- Wrap hardcoded page titles in gettext() in online store templates
- Add consistent dark:text-zinc-200 to maintenance h3 subsections
- Add text-zinc-900 dark:text-zinc-200 to scrobble section headers
- Fix heading hierarchy (h1/h2 → h2/h3) in record set items
- Align artist form modal header to text-lg font-semibold
- Use size="xs" prop instead of class override on format badge
- Add external link icon to wishlist online store buttons
2026-03-16 11:37:29 +00:00
Claudio Ortolina
028f111300
Stabilize rate limiter tests by using dependency injection
2026-03-16 11:21:24 +00:00
Claudio Ortolina
4a2b7f4e03
Extract dropdown_nav/1 component in Layouts
2026-03-16 11:13:45 +00:00
Claudio Ortolina
d59ee157db
Add current section border to top right menu sections
2026-03-16 11:09:31 +00:00
Claudio Ortolina
48859582d7
Update elixir to 1.20.0-rc.3
2026-03-16 10:34:57 +00:00
Claudio Ortolina
00037f0aa8
Update architecture docs
2026-03-16 08:07:09 +00:00
Claudio Ortolina
5752d1fe27
Add tests for scrobble rules search/sort
2026-03-16 08:06:48 +00:00
Claudio Ortolina
3fb6c93d9d
Add sorting optoins to scrobble rules page
2026-03-16 08:03:47 +00:00
Claudio Ortolina
6d6cf21047
Uniform scrobble rules layout
2026-03-16 08:00:17 +00:00
Claudio Ortolina
43b054b34a
Search scrobble rules, improved layout
2026-03-16 07:58:21 +00:00
Claudio Ortolina
c4b2f00996
Update dependencies
...
igniter 0.7.4 => 0.7.6
2026-03-16 07:33:24 +00:00
Claudio Ortolina
ac2758aabf
Fix more margins
2026-03-15 21:09:52 +00:00
Claudio Ortolina
805f93cd3c
Improve wording and layout of scrobbled tracks order buttons
2026-03-15 21:03:11 +00:00
Claudio Ortolina
d2cccce9dc
Uniform margins
2026-03-15 20:58:50 +00:00
Claudio Ortolina
d815928f91
Fix SearchParser catch-all wiping valid filters
...
The `_, %{}` catch-all in `normalize/1` matched any map, so an
invalid filter (e.g. `format:vin`) would reset the accumulator
even when valid filters were already collected. Add a `map_size`
guard so it only returns `%{query: ""}` for a truly empty
accumulator. Also update the moduledoc.
2026-03-15 18:56:30 +00:00
Claudio Ortolina
abb6a5f8f4
Update dependencies
...
fluxon 2.3.4 => 2.3.5
Includes a test fix due to some internal changes in Fluxon.
2026-03-15 10:18:07 +00:00
Claudio Ortolina
4fb148e9db
Simplify signatures of scrobbling functions
2026-03-14 22:22:41 +00:00
Claudio Ortolina
0a26891575
Update project conventions
2026-03-14 18:33:34 +00:00
Claudio Ortolina
69ff926aba
Allow WASM evaluation on prod
2026-03-14 18:02:27 +00:00
Claudio Ortolina
2dd6f10a7f
Fix CSP error for barcode detection
2026-03-14 17:38:04 +00:00
Claudio Ortolina
4d1ac9652c
Link the scrobbled count in stats
2026-03-14 09:59:09 +00:00
Claudio Ortolina
7cdd502701
Streamline print/scrobble buttons
2026-03-14 08:51:19 +00:00
Claudio Ortolina
3d66d7a6d7
Remove unnecessary spacing in the application footer
2026-03-14 07:17:08 +00:00
Claudio Ortolina
1dd7974cc7
Use socket assigns instead of threading IDs via JS.push
...
Extends the same optimization from the previous commit to
all remaining show page handlers across collection, wishlist,
and artist LiveViews. Also simplifies bare JS.push() calls
to plain phx-click strings.
2026-03-13 16:48:12 +00:00