Commit graph

4398 commits

Author SHA1 Message Date
bf5aece08b
Bumped version in setup.py (for some reason bumpversion missed it) 2024-05-26 00:44:20 +02:00
2f20580498
[CI/CD] Remove git remote rm/add logic from sync-stable-branch. 2024-05-26 00:39:51 +02:00
1911c05afe
Bump version: 0.50.3 → 0.99.0 2024-05-26 00:25:34 +02:00
cac256af08
Updated CHANGELOG 2024-05-26 00:21:40 +02:00
a784a6fe23
The index symlink is not needed. 2024-05-25 23:23:15 +02:00
0baae01ab7
[README and wiki changes]
- Renamed _Post-installation_ README section as _Configuration_.

- Docs style tweaks for the latest version of the Sphinx theme.

- Adapted the docs index to the new structure of the wiki.
2024-05-25 23:17:12 +02:00
f70d352cd7
[README] Added database, workdir and device ID sections. 2024-05-25 22:14:15 +02:00
7c7e488867
Added example with return to the webhook handler. 2024-05-25 22:05:09 +02:00
baee33b88f
README.
- Added/restyled badges.

- Added sections on the scripts directory and YAML `include` directive.
2024-05-25 21:43:44 +02:00
6de0b2e041
[Automatic] Updated components cache 2024-05-25 18:12:49 +00:00
35751da068
Added web hooks section to README. 2024-05-25 20:11:07 +02:00
0479c37d64
Full rewrite of the README. 2024-05-25 18:13:58 +02:00
3a4d7afcf0
Clean up all package manager caches after Docker build. 2024-05-25 14:15:13 +02:00
e071e99dab
Remove all cached/compiled Python files after Docker build. 2024-05-25 13:36:52 +02:00
2e0246413c
Replaced an old for ... in ... yield loop with yield from ... 2024-05-25 10:35:23 +02:00
b1dd484704
A more corner-case-proof logic for wants_break_system_packages. 2024-05-25 10:33:05 +02:00
303b11613b
s/Dockerfile.default/Dockerfile.alpine/ 2024-05-25 10:30:53 +02:00
05c6449d8b
Always add --break-system-packages to pip when the Docker context is active.
This fixes the case where Platydock is called within the context of a
virtual environment, but it needs to generate a Docker image - and
therefore, unless the host virtual environment, it needs
--break-system-packages to write to /usr.
2024-05-25 10:30:52 +02:00
5e52741986
[Automatic] Updated components cache 2024-05-25 08:19:19 +00:00
7d8a00696c
Adapted Platydock to the new Dockerfile format. 2024-05-25 10:17:45 +02:00
254604e404
py3-vlc has not been merged upstream in Alpine Linux yet. 2024-05-25 10:17:19 +02:00
8f0002ae40
Moved /Dockerfile to /Dockerfile.default.
It can mess up the Alpine Dockerfile if platydock is run from the source
directory.
2024-05-25 10:16:29 +02:00
8e05a7f4c9
Make Dockerfiles work both within and outside a Platypush source dir.
If the Platypush setup.py is found in the current directory, then use
that directory as the base for the new image.

Otherwise, clone the repo on the fly and build the image from there.
2024-05-25 00:42:30 +02:00
0fd2992894
Added platypush.events alias for platypush.message.event package. 2024-05-24 23:16:15 +02:00
efd97f7186
Added a docker-compose.yml. 2024-05-24 23:15:37 +02:00
3ccdd4d179
Updated pip ... --break-system-packages configuration.
All the latest versions of Alpine, Debian, Ubuntu and Fedora now require
`--break-system-packages` when installing packages via `pip` outside of
a virtual environment, even if it's within a container.
2024-05-24 22:59:42 +02:00
d20cd4b058
Added a nice ASCII-art logo at application startup. 2024-05-24 22:57:50 +02:00
c49b4ca273
platypush.run should also support procedures in the format procedure.<name>. 2024-05-24 20:20:25 +02:00
5c2204f99d
Allow for custom procedure names on the @procedure decorator.
```
@procedure("foo")
def bar():
    ...
```

Will now be published as `procedure.foo` instead of
`procedure.<module>.bar`.
2024-05-24 20:07:24 +02:00
cbc58c7330
Fix: /var/lib/platypush is still empty at the time of package creation. 2024-05-23 03:37:46 +02:00
7ca2159acb
Fix: missing newline escape 2024-05-23 03:34:00 +02:00
2dd5b6c122
systemd-rpm-macros is a build requirement for the Fedora build. 2024-05-23 03:28:56 +02:00
a51d8978e7
[#319] Added /etc/platypush and /var/lib/platypush to rpm packages. 2024-05-23 03:24:24 +02:00
a5adac9314
[#319] Added /etc and /var/lib dirs to Debian package. 2024-05-23 02:46:38 +02:00
a211e2e2e4
Changed default permissions for /var/lib/platypush from 0755 to 0750. 2024-05-23 01:15:26 +02:00
7fa0dbda7b
Split Drone CI steps into separate shell scripts.
A fully self-contained 1.5k LoC Drone file isn't very maintainable, and
it makes it hard to reuse parts that are shared across multiple steps
(like SSH and git configuration).
2024-05-23 00:17:55 +02:00
snyk-bot
46da373637
fix: upgrade sass from 1.75.0 to 1.76.0
Snyk has created this PR to upgrade sass from 1.75.0 to 1.76.0.

See this package in npm:
sass

See this project in Snyk:
https://app.snyk.io/org/blacklight/project/96bfd125-5816-4d9e-83c6-94d1569ab0f1?utm_source=github&utm_medium=referral&page=upgrade-pr
2024-05-22 12:34:49 +00:00
4038ef3bc1
[#319] Added platypush/config/systemd directory.
It contains both `platypush.service` and the `sysusers.d` and
`tmpfiles.d` configurations used by the package managers.
2024-05-20 22:19:30 +02:00
1cad0394ab
systemd requirements tweak.
`Requires=redis.service` should be commented unless the service is
started as a privileged user.

Also added some comments on how the systemd service usually works.
2024-05-20 21:51:08 +02:00
02a3385638
Tweaked Platypush systemd service.
- A more informative Description
- `s/WantedBy=default.target/WantedBy=multi-user.target/`
- `redis.service` is a strong requirement
2024-05-20 13:02:36 +02:00
c899627eca
[Automatic] Updated components cache 2024-05-20 00:03:25 +00:00
d0f781919d
[#345] Rewritten sun plugin.
Closes: #345
2024-05-20 02:01:40 +02:00
86b4b14112
Added the current running application as a static object.
```python
from platypush import app
```
2024-05-20 01:54:25 +02:00
32b8296244
[#400] Dynamic logic to infer procedures/hooks arguments.
This allows procedures and event hooks to have more flexible signatures.
Along the lines of:

```python
@when(SomeEvent)
def hook(event):
  ...

@when(SomeOtherEvent)
def hook2():
  ...
```

Instead of supporting only the full context spec:

```python
@when(SomeEvent)
def hook(event, **ctx):
  ...
```

Closes: #400
2024-05-19 02:17:42 +02:00
2ab1743bec
[Docs UI] Fix filter bar to the top while scrolling. 2024-05-19 02:17:42 +02:00
70ffe0ec04
[Automatic] Updated components cache 2024-05-17 00:23:06 +00:00
3d5c60e4f4
[UI docs] Added filter bar for integrations and events. 2024-05-17 02:21:57 +02:00
f06233801b
[#394] Dynamically generate setup extras.
Also, convert all code that relied on `manifest.yaml` to use
`manifest.json` instead.

Closes: #394
2024-05-17 02:21:57 +02:00
59c693d6a0
[#394] All manifest.yaml converted to manifest.json.
YAML isn't part of the Python standard library, while JSON is.

If we want `setup.py` to dynamically parse the available integration
manifest files in order to populate the extra dependencies, then it's
better to rely on a JSON format for manifest files - the parser is part
of the standard library and it doesn't require the user to install
`pyyaml` before `platypush`.
2024-05-17 02:21:57 +02:00
79a71d00b4
[Automatic] Updated components cache 2024-05-16 00:44:03 +00:00