4954f6de54
fix: Resolve Mopidy v4 ModuleNotFoundError on startup
...
The Mopidy v4.0 development versions have removed the `mopidy.models.serialize` module, which causes a `ModuleNotFoundError` in Iris on startup.
This commit introduces a check to detect the Mopidy version. It conditionally uses the new Pydantic `.model_dump()` method for serialization on v4 while falling back to the legacy `ModelJSONEncoder` for older versions. This makes Iris compatible with both Mopidy v3 and the new v4 pre-releases.
2025-09-06 10:10:03 +00:00
7718bd2bf9
Flake8 QA
...
- Ignoring raising BaseExceptions; we can't raise an exception here as it will abort the rest of the execution (in this case, the HTTP or WS request)
2024-03-25 20:30:26 +13:00
e561cce2af
Refactor of modals and storing server-side
2022-05-08 20:33:53 +12:00
f76e985fad
Adding shared_config to main config
2022-03-28 21:18:26 +13:00
4262479c25
Radio added_from stores seeds, rather than building concatenated URI
2021-11-29 20:56:12 +13:00
fc2852ae49
Lint fixing double-space
2021-11-21 11:51:14 +13:00
c2f3154fa2
Constructor, not method call
2021-11-21 11:32:00 +13:00
65ac8dfce3
Adding verify_certificates config to disable cert validation for internal certs, fixes #778
2021-11-21 11:28:53 +13:00
bb8e6dca14
Exposing snapcast_ssl to config
2021-10-27 21:28:38 +13:00
2a846cd4e5
Codecov cleanup
2021-10-25 21:11:19 +13:00
953cee49ca
Black to cleanup whitespace
2021-10-25 20:58:32 +13:00
11cd13f576
Removing control_url, will now be included in stream path itself
2021-10-23 20:42:46 +13:00
6110ef8457
Using snapcast stream params for control_url; SSL explicit for Snapcast connection, fixes #775
2021-10-23 13:46:55 +13:00
c0475ee067
Grouping clients; we can't change a client's stream, just a groups so UI reflects this
2021-10-19 21:39:01 +13:00
dff2b178c4
Sending control_url to snapcast meta so users can jump to Mopidy instance
2021-10-17 13:08:22 +13:00
f1fddc5354
Mopidy to listen to track events and auto-post meta to Snapserver for front-end to consume
2021-10-17 08:13:12 +13:00
758c4ea052
Adding snapcast_stream config to link server with stream
2021-10-12 20:26:01 +13:00
dd6a948ea9
Polishing styles, preparing for playbar switcher
2021-10-11 20:48:14 +13:00
d6a2c6263d
Server switcher modal
2021-10-11 09:21:41 +13:00
e96344d4f2
New internal state for CORS requests, prototype server switcher modal
2021-10-09 16:40:27 +13:00
f9bc7dc2f5
Adding 'Reset Defaults' for Snapcast server-configured values
2021-10-02 13:26:01 +13:00
2264462ed6
Removing unused variable
2020-08-28 21:48:27 +12:00
4cf2cf3a0c
Wrapping ioloop in check for it's existence; load more tracks await to prevent coroutine error
2020-08-27 20:58:35 +12:00
deb75fc54b
Adding catcher for refresh_spotify_token when not enabled; fixes #565 ; Starting translation key migration for exceptions
2020-08-24 21:15:25 +12:00
797fdfe0da
Pinned fallback returns array vs obj
2020-08-23 13:13:17 +12:00
4a8ecba332
Version bump; Load pinned on startup
2020-08-22 17:27:55 +12:00
177dce8797
Black cleanup
2020-08-21 22:38:39 +12:00
c2e55cefae
Moving core functions to internal get/set_data
2020-08-18 21:04:35 +12:00
ea190c2ccd
Black and flake fixups (still no check_manifest working reliably)
2020-06-22 20:50:09 +12:00
d88f66798f
Removing data_dir in favor of Extension.get_data_dir, #547
2020-05-31 21:35:24 +12:00
4099b79ff0
Removing pathlib
2020-02-21 10:28:47 +13:00
152f190857
Using Extension.version to decide current running version, fixes #499
2020-02-18 15:02:15 +13:00
4331e6bbf8
Black take two; Moving excludes into setup.cfg
2020-02-06 10:44:49 +13:00
d07a59a1e7
Autopep8
2020-02-06 10:14:27 +13:00
4ae58cdf9e
Black run
2020-02-06 10:12:28 +13:00
b789d322b3
Formatting
2020-02-03 16:48:39 +13:00
df18eba73c
Running black
2020-02-03 16:14:04 +13:00
64fbcc45b9
Placeholder iris.core.ioloop; Lists handling explicit flag without breaking columns
2020-01-26 14:25:45 +13:00
87aa88a908
Adding mopidy-local back; Consistency with updated events; Notification progress indicator
2020-01-24 13:43:03 +13:00
a70818b88d
Adding consistent ..._updated update event listeners for system tasks
2020-01-24 06:36:07 +13:00
37220ea523
Sharing of settings (including Snapcast); Fixing commands storage
2020-01-23 21:57:57 +13:00
52869390f3
Last async bug in check_for_radio_tracks
2020-01-23 18:03:48 +13:00
b23917dca0
Passing websocket/http ioloop through to iris core methods
2020-01-23 06:57:52 +13:00
f581d683bc
Genius scraping working again
2020-01-22 16:19:57 +13:00
bdd82b1447
Lyrics request to use async client
2020-01-22 14:26:15 +13:00
7da76f3b9c
Radio now functional; Fetching lyrics still triggers 'Cannot run the event loop while another loop is running' error...
2020-01-19 21:21:11 +13:00
169396042a
Theoretical handling of system task updates; stdout straight to logger
2020-01-17 23:14:43 +13:00
0e15a8745e
Attaching Tornado ioloop to SystemThread, handling SystemThread errors with JsonRPC structure
2020-01-17 21:55:12 +13:00
47400bdd8c
Use AsyncHTTPClient instead of HTTPClient.
...
Regarding HTTPClient, Tornado docs state:
"Applications that are running an IOLoop must use AsyncHTTPClient instead."
Also added some HTTP handler tests.
2020-01-17 00:59:52 +00:00
d3cce38832
Use pathlib
2020-01-08 22:22:24 +00:00