Commit Graph

4005 Commits

Author SHA1 Message Date
Fabio Manganiello 39d5c48088
[Automatic] Updated components cache 2024-01-19 20:59:26 +00:00
Fabio Manganiello 746423a113 [#356] Merged `adafruit.io` plugin and backend. 2024-01-19 20:58:35 +00:00
Fabio Manganiello f21a1dd8e6
[Automatic] Updated components cache 2024-01-19 02:15:39 +00:00
Fabio Manganiello eb47f9ded0 [#351] Merged `google.pubsub` plugin and backend.
Closes: #351
2024-01-19 02:14:49 +00:00
Fabio Manganiello 2e9cb44caf
[Automatic] Updated components cache 2024-01-19 00:50:24 +00:00
Fabio Manganiello 1323156838
Fixed `google.credentials` script order of arguments in the docstring. 2024-01-19 01:48:33 +01:00
Fabio Manganiello a5b7e2b52e
[CI/CD] Fixed version format for the `platypush-git` Arch package.
The format should be `<MAJ>.<MIN>.<PATCH>.r<REVISION>.g<HEAD>`.

The `g` prefix was missing.
2024-01-19 01:06:47 +01:00
Fabio Manganiello aceb9b940a
[Automatic] Updated components cache 2024-01-18 23:32:23 +00:00
Fabio Manganiello 6775208b2e Fixed minor docstring typo. 2024-01-18 23:31:27 +00:00
Fabio Manganiello f9bd5b3abc [#350] Merge `google.fit` backend and plugin.
Closes: #350.
2024-01-18 23:31:27 +00:00
Fabio Manganiello e3c04d9316 Fixed bullet points indentation in Google plugins docstrings. 2024-01-18 23:31:27 +00:00
Fabio Manganiello e022712b7b [Google] Updated authorization flow for Google plugins.
The new authorization flow also requires the user to input a code
returned on the browser's authorization page.

Since the Google authentication libraries seem to use a simple `input()`
to read this code, things are likely to fail quite badly if Platypush is
run in non-interactive mode - e.g. through a systemd service or in a
Docker container.

Thus we need to go with Google's automatic flow only if `DISPLAY` or
`BROWSER` are set (thus the interactive flow can proceed), and throw an
`AssertionError` with the command to execute if no display/browser are
detected.
2024-01-18 23:31:27 +00:00
Fabio Manganiello 31de917631 [Google] Updated documentation of Google plugins.
Expanded explanation of the desktop vs. headless authentication process
and where the credential files are supposed to be copied if the user
opts for a non-automatic authentication flow.
2024-01-18 23:31:27 +00:00
Fabio Manganiello dec2a54740
[Automatic] Updated components cache 2024-01-18 23:29:13 +00:00
Fabio Manganiello 998b7be7b8
[media.vlc] Always add `--play-and-exit` to args.
Without this option VLC seems to hang in the background, and it may
cause PulseAudio failures or memory issues after several videos have
been played - each in its own session.
2024-01-18 21:21:15 +01:00
Fabio Manganiello a47f9f1852
[Automatic] Updated components cache 2024-01-18 01:29:46 +00:00
Fabio Manganiello 95c15f3f5f [#347] Merge `kafka` backend and plugin.
Closes: #347
2024-01-18 01:28:56 +00:00
Fabio Manganiello a596ed80a2
[Automatic] Updated components cache 2024-01-17 23:27:34 +00:00
Fabio Manganiello 1c5956c38b
Fixed some docstring warnings. 2024-01-18 00:26:22 +01:00
Fabio Manganiello 85db77bb7b
[#298] Merged `nextcloud` backend and plugin.
Closes: #298
2024-01-18 00:26:22 +01:00
Fabio Manganiello dd5bc7639b
Added `disable_monitor` flag to `RunnablePlugin`.
This is useful when users want to use a runnable plugin in a stateless
way. In some cases (for example systems with high latency or limited
quotas for API calls) the user may want to leverage the actions of a
plugin, but without running monitoring/polling logic nor generating
events.
2024-01-18 00:26:22 +01:00
Fabio Manganiello fb91be7628
[Automatic] Updated components cache 2024-01-15 23:56:02 +00:00
Fabio Manganiello e9d91471ce
[media.mplayer] Plugin rewrite.
Too many things were falling apart, and many others of MPlayer's "API
smells" had never been addressed.

The plugin has now largely been rewritten, and some workarounds (like
accessory monitoring processes) have been added to deal with the fact
that events like end-of-file aren't published by the player, and some
polling is required.
2024-01-16 00:41:01 +01:00
Fabio Manganiello ca25b3a4e6
[Automatic] Updated components cache 2024-01-15 23:39:51 +00:00
Fabio Manganiello 3598253558
Reduced Docker images to a single layer. 2024-01-15 21:54:22 +01:00
Fabio Manganiello bf1b8aaf70
Delete pubsub closure to `_pubsub_close()`.
The Redis channel may be closed, and in that case we need to handle the
exception instead of throwing it - which causes the upstream Tornado
worker to fail too.
2024-01-14 21:27:08 +01:00
Fabio Manganiello 6fe1ed44ad
[media] Fixed base interface of `media.seek` and `media.set_position`. 2024-01-13 22:39:33 +01:00
Fabio Manganiello cf314f2615
[mpv] Refactored plugin.
I hadn't paid attention to this plugin in a while and the newest mpv API
has diverged so much that it was entirely incompatible with recent mpv
versions.
2024-01-13 22:36:42 +01:00
Fabio Manganiello 641a2fd135
Renamed parameter of `volup`/`voldown` for music plugins.
To be consistent with all other media plugins, the parameter name should
be `step`, not `delta`.

A back-compatibility layer has however been introduced for plugins
(namely `music.mpd` and `music.spotify`) that already exposed the old
interface.
2024-01-13 22:35:18 +01:00
Fabio Manganiello f0dcb94862
[pushbullet] Fixed `on_error` callback on the listener.
The `Listener` class from the `pushbullet.py` library is a mess, and it
has two internal functions to handle errors.
2024-01-13 13:24:47 +01:00
Fabio Manganiello 18bba7e3bf
[Automatic] Updated UI files 2024-01-09 23:47:38 +00:00
Fabio Manganiello 9fa5989e21 [#302] Merged `pushbullet` backend and plugin.
Also, added support for more granular Pushbullet events.

Closes: #302
2024-01-09 23:46:07 +00:00
Fabio Manganiello 4e1943d197
[Automatic] Updated components cache 2024-01-08 22:04:48 +00:00
Fabio Manganiello 4505c46071
[Sound] Don't override device index if it's already defined in the info. 2024-01-08 23:03:08 +01:00
Fabio Manganiello b097a4c1f4
Remove also the dist directory in the build-ui step before running npm run build 2024-01-08 22:56:05 +01:00
Fabio Manganiello bb2f86f1a5
An empty commit to re-trigger the CI/CD pipelines 2024-01-08 22:38:31 +01:00
Fabio Manganiello 314e1a98ef
Updated dist files 2024-01-08 22:35:57 +01:00
Fabio Manganiello deaedf2462
[Media UI] Don't display the torrent menu entry if no torrent plugin is enabled. 2024-01-08 22:25:10 +01:00
Fabio Manganiello 5ef7313bdc
[Music UI] Use the `Playlist` component also for playlist editors. 2024-01-08 22:17:04 +01:00
Fabio Manganiello e881fedc59
[Automatic] Updated UI files 2024-01-08 01:46:55 +00:00
Fabio Manganiello 3282588c6e
[Music UI] Many improvements to the interface. 2024-01-08 02:44:53 +01:00
Fabio Manganiello 80c2f0d8dd
[UI] Full restyle of `Slider` component.
The component has been rewritten using only CSS 3 and no JS.
2024-01-08 02:44:52 +01:00
Fabio Manganiello b785609eda
[Music UI] New music nav logic.
Don't display the vertical nav on mobile by default - same logic as the
generic media nav.
2024-01-08 02:44:52 +01:00
Fabio Manganiello f59a276e09
[Media UI] Set `overflow: auto` on the innermost grid div only.
If a parent object of the `grid` DOM element has `overflow: auto` as
well, then it will intercept the `@scroll` events, so `Results` won't be
able to render an infinite scroll.
2024-01-08 02:44:52 +01:00
Fabio Manganiello 9f6ac4acd1
[Automatic] Updated components cache 2024-01-06 23:53:33 +00:00
Fabio Manganiello 3d2ee5d6bb
Replaced some new typing `|` notations with `Union`.
The `|` notation breaks on Python < 3.10.
2024-01-07 00:52:24 +01:00
Fabio Manganiello 1cd328ef44
[Automatic] Updated components cache 2024-01-06 23:32:55 +00:00
Fabio Manganiello c64c28f7a8
(Re)-added `backend/sensor/__init__.py` file.
If the empty file is missing then any remaining backends under that
package won't be indexed.
2024-01-07 00:31:45 +01:00
Fabio Manganiello f9e5117145
[Automatic] Updated components cache 2024-01-06 23:07:31 +00:00
Fabio Manganiello f733c6318f
Moved optional import in constructor block. 2024-01-07 00:05:51 +01:00