Pyflarum

Latest version: v1.0.2

Safety actively analyzes 681775 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

1.0.11beta

This update adds support for database manipulations. This is more of an "experimental" release - bugs will be squashed before v1.1 (stable) is released.

pyFlarum was basically split into two things: `client` and `database`
- `client` has all the stuff that you already know. It allows you to manipulate with Flarum's REST API.
- `database` is new and allows you to connect to a database server-side & query it.

**Disclaimer:** Database support is still new and in beta (as the rest of this library anyways).

Database has no support for extensions that are not included in Flarum by default. This is because it is very difficult to maintain the support
for all the different columns that extensions create - when pyFlarum defines/doesn't define a column that is not/is in the database, it breaks.

It is also technically not possible to monkey-patch database properties the same way it is possible to do in `FlarumUser`.

My vision about the database support is to provide an easy way to create migration scripts to Flarum. You can see my [other repository](https://github.com/CWKevo/pyflarum-migrations) for my upcoming migration scripts.

Contributions to both the migrations and this project are welcome!

**Full Changelog**: https://github.com/CWKevo/pyflarum/compare/v1.0.10-beta...v1.0.11-beta

1.0.10beta

• Fix 1 (untested on other version than Python 3.9.6)
• Fix 2 (untested on other version than Python 3.9.6)
• Use `import typing as t` instead of `from typing import ...`

1.0.9.3beta

- Fix documentation README
- Update pdoc
- Fix `content` available only in `PostFromNotification`, when it's available in all posts (under certain circumstances, e. g. post is renamed, then that post has a `content` property with `dict` as metadata - what was renamed, etc.)
- Other tweaks

1.0.9.2beta

Hotfix:
- Exclude `tests` directory from the package
- Fix `pyflarum` import

1.0.9beta

- Add `__all__` to all core imports
- Installation will now finish normally, even if `requests` isn't installed. Before, it would fail because the `requests` package wasn't installed before.
- **Note:** pyFlarum still depends on the `requests` library.
- `forum_url` is now parsed by the `urllib` module. pyFlarum now checks whether the URL uses a `https://` or `http://` protocol - if not, a `TypeError` is raised when initializing `FlarumUser`.
- This removes the requirement that `forum_url` mustn't end with slash - now, it can, as the URL will always be parsed to the root one (e. g. `forum_url = "https://forum.com/abc/def"` is now valid)
- Added ability to scrap all posts from a long discussion that doesn't contain complete data for all posts
- This feature wasn't properly tested yet, but possible improvements will be made in the future
- This uses the new `ids` parameter to speed things up and fetch multiple posts by their IDs, in chunks
- [See an example](https://github.com/CWKevo/pyflarum/blob/ffd54ff1b598cb9abc6302085ea5fab8da4d32fd/tests/absolutely_all_posts_from_discussion.py)

- `Filter`:
- Improved/added docstring
- Added `ids` parameter to `Filter` to fetch multiple entries with specific IDs at once in the API
- Added a warning when a `Filter` with `limit` above 50 is created - Flarum can only fetch max. 50 entires from API by default, and there is no reason to go above that.

v1.1.x will be a stable one. All that is left is making posts' and users' data more complete. No ETA.

1.0.8beta

- Better docs & type hints
- Prepare for Python 3.10 Union syntax (just strings for now for backwards compatibility)
- Fix disabling extension

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.