Commit graph

4870 commits

Author SHA1 Message Date
c54269e3d2
[#341] Added utility procedures.to_yaml action. 2024-09-05 01:13:30 +02:00
e39e36e5f6
[CI/CD] A more resilient github-mirror script.
- Fail immediately if no branches are checked out.

- Rebase only if we're pushing on master (don't bother for feature
  branches).

- Do a push force to Github.
2024-09-02 02:31:11 +02:00
c5c872eb68
[chore] Removed unused file re-added upon rebase. 2024-09-02 02:27:33 +02:00
26f491025a
[#341] Improvements on procedures.save.
- Update the cached representation of the procedure asynchronously on
  the `publish_entities` callback. This prevents stale records from
  being loaded from the db before the entities engine has persisted the
  new ones.

- Don't re-publish all entities when calling `procedures.status` at the
  end of `procedures.save`. This is both for performance reasons and to
  avoid sending to the entities engine stale representation of the data.
2024-09-02 02:24:43 +02:00
90a953b738
[WIP] 2024-09-02 02:24:42 +02:00
981ae3479e
An empty commit to re-trigger the CI/CD pipelines 2024-09-02 02:24:42 +02:00
bca340ebc1
An empty commit to re-trigger the CI/CD pipelines 2024-09-02 02:24:42 +02:00
9aff704444
An empty commit to re-trigger the CI/CD pipelines 2024-09-02 02:24:42 +02:00
5061c5290c
An empty commit to re-trigger the CI/CD pipelines 2024-09-02 02:24:42 +02:00
c68cf4b585
An empty commit to re-trigger the CI/CD pipelines 2024-09-02 02:24:41 +02:00
b53c4c5c18
An empty commit to re-trigger the CI/CD pipelines 2024-09-02 02:24:41 +02:00
e01782c344
An empty commit to re-trigger the CI/CD pipelines 2024-09-02 02:24:41 +02:00
6df699359c
Merge branch 'master' into 341/procedure-entities 2024-09-01 20:00:41 +02:00
861e7e7c52
[#341] More improvements on the procedures plugin.
- `procedures.status` should always sync with the db to ensure that the
  action returns the most up-to-date version of the procedures.

- Store, return and propagate entity procedure metadata.
2024-09-01 18:13:06 +02:00
1369848114
[#341] More procedures features.
- `procedures.exec` now supports running procedures "on the fly" given a
  definition with a list of actions.

- Fixed procedure renaming/overwrite logic.

- Access to `_all_procedures` should always be guarded by a lock.
2024-09-01 01:47:39 +02:00
9d086a4a10
[system] Don't use is_defined macro for system plugin entities.
It seems to clash with something and cause plugin actions to return
random `ImportError`.
2024-09-01 01:34:58 +02:00
7cc7009d08
[db] Always run PRAGMA foreign_keys = ON on SQLite connections.
This is the default behaviour on basically any other supported RDBMS.
2024-09-01 01:04:12 +02:00
a3eedc6adc
[core] Fix support for custom SQLAlchemy engine options on db conf.
Earlier any extra parameters passed to the `db` configuration other than
`engine` where ignored.

This enables engine-level configurations such as:

```yaml
db:
  # Display all SQL queries
  echo: true
```
2024-08-31 21:55:19 +02:00
740e35bd5e
Moved full dump of requests+responses+events to log debug level.
Messages can be quite big and verbose, and they can anyway be subscribed
over Websockets.

Full dumps are anyway enabled when Platypush is started in verbose mode.

This commit replaces the dumps on INFO level with a quick summary
containing the message ID, request/event type and response time.
2024-08-31 21:47:44 +02:00
457333929f
[#341] Added procedures.save and procedures.delete actions. 2024-08-30 02:08:42 +02:00
e593264eab
[#341] Added ProcedureType enum. 2024-08-30 02:05:02 +02:00
cb9244964c
[Automatic] Updated components cache 2024-08-27 22:19:09 +00:00
62980cc9e2 [procedures] Store actions for YAML procedures. 2024-08-27 22:18:15 +00:00
42d672ab5e 🐛 Fixed import error 2024-08-27 22:18:15 +00:00
ef524fa388 [config] Added config.get_config_dir method. 2024-08-27 22:18:15 +00:00
dea72fbfdb [#341] Support for procedure reconciliation.
If some procedures are removed either from the configuration or from the
loaded scripts, then their associated entities should also be removed
from the database when the `procedures` plugin is loaded.
2024-08-27 22:18:15 +00:00
99909c73ab [#341] Backend implementation of the new procedure entities architecture. 2024-08-27 22:18:15 +00:00
1ee8055597 [WIP] 2024-08-27 22:18:15 +00:00
d9916873cb
[procedures] Store actions for YAML procedures. 2024-08-28 00:14:54 +02:00
234963b069
🐛 Fixed import error 2024-08-28 00:14:21 +02:00
ffc3fe218d
[config] Added config.get_config_dir method. 2024-08-28 00:13:46 +02:00
0f186c44ef
[#341] Support for procedure reconciliation.
If some procedures are removed either from the configuration or from the
loaded scripts, then their associated entities should also be removed
from the database when the `procedures` plugin is loaded.
2024-08-25 23:45:11 +02:00
06781cd72c
[#341] Backend implementation of the new procedure entities architecture. 2024-08-25 16:06:56 +02:00
24f7d4a789
Merge branch 'master' into 341/procedure-entities 2024-08-25 14:29:43 +02:00
c788f2d858
[Automatic] Updated components cache 2024-08-25 01:25:37 +00:00
f6b1f92a88
🐛 file.bookmarks must be optional. 2024-08-25 03:24:02 +02:00
9f8fe60cdf
An empty commit to re-trigger the CI/CD pipelines 2024-08-25 03:20:38 +02:00
83d21d3f04
[media] Media played from live streams should be at least 5MB before playback starts. 2024-08-25 03:16:59 +02:00
54a6b34a64
[file] Added support for UI bookmarks on the file plugin. 2024-08-25 03:16:59 +02:00
377b2c2425
[Automatic] Updated UI files 2024-08-25 01:15:10 +00:00
a152b0d734
[#333] Added file browser UI panel.
Closes: #333
2024-08-25 03:13:05 +02:00
496dfdb50b
[Media UI] Adapted media browser to the new file browser plugin. 2024-08-25 03:13:04 +02:00
9493445af6
[Media UI] Renamed play-cache event to play-with-opts.
As we're likely to add more play options in the future, this approach is
much more scalable.
2024-08-25 03:13:04 +02:00
0657c80a5c
[#333] Enhanced file browser component.
- Added support for file/directory add/copy/move/rename/remove
  operations.

- Added automatic detection of MIME types.

- Added support for file view/download.

- Added file uploader component.

- Added custom sorting and other visualization options.

- Added custom `Home` component to show configurable bookmarks above the
  filesystem root level.

- Added file editor with automatic syntax highlight.
2024-08-25 03:13:04 +02:00
e672a7fb5c
[Media UI] Always normalize the duration field to float. 2024-08-25 03:13:04 +02:00
e8acf8615f
[UI] Added disabled property to FloatingButton. 2024-08-25 03:13:04 +02:00
336cb18cb3
[UI] New features for the Modal element.
- Added `uppercase` property (default: true) for the modal title. This
  makes it possible to override the default case of the modal title.

- Added support for custom buttons in the modal titlebar.
2024-08-25 03:13:03 +02:00
342df0eeec
[UI] Added common disabled style to buttons. 2024-08-25 03:13:03 +02:00
e6a358fe27
[UI] Added quick String.hashCode function.
This is needed in several places in the code where we need to compare if
two strings differ, but either the strings are too long (e.g. content of
large files) or we don't want to pass the original values (e.g.
credentials, session tokens etc.).
2024-08-25 03:13:03 +02:00
818f60a468
[UI] Better parsing of the parameter types in getUrlArgs and setUrlArgs. 2024-08-25 03:13:03 +02:00