627 Commits

Author SHA1 Message Date
Mose Müller
5d8471fd47 disallows clients to add class attributes (through the state manager)
Note that adding dictionary keys still works. You can also append to lists.
2024-07-30 09:18:22 +02:00
Mose Müller
b148d6919a StateManager: replaces _data_service_cache with cache_manager
- _data_service_cache -> cache_manager
2024-07-30 08:28:37 +02:00
Mose Müller
74ebbc6223 http api: replaces post endpoints with put endpoints 2024-07-30 08:28:37 +02:00
Mose Müller
554d6f7daa changes http API (reflected in openapi specification) 2024-07-30 08:28:37 +02:00
Mose Müller
95d29ee4e8 return method results over http 2024-07-30 08:28:37 +02:00
Mose Müller
0e73239d08 adds API versioning 2024-07-30 08:28:37 +02:00
Mose Müller
eaf76a7211 fixing logging for aiohttp and SocketIOHandler 2024-07-30 08:28:37 +02:00
Mose Müller
aa55ac772e using api application as web server api endpoint 2024-07-30 08:28:37 +02:00
Mose Müller
755a303239 creates api definition, using that in sio_setup 2024-07-30 08:28:37 +02:00
Mose Müller
8bf0b771fa replace deprecated object from pint package 2024-07-30 06:56:59 +02:00
Mose Müller
36d3a7becc restructure StateManager to allow extending dictionaries through clients 2024-07-29 15:02:47 +02:00
Mose Müller
d54eed8a58 get_object_by_path_parts and get_object_attr_from_path do not catch exceptions any more 2024-07-29 15:02:47 +02:00
Mose Müller
817afc610a StateManager: replaces _data_service_cache with cache_manager
- _data_service_cache -> cache_manager
- removes cache property
- replaces get_nested_dict_by_path with cache_manager.get_value_dict_from_cache where possible
2024-07-29 15:02:47 +02:00
Mose Müller
ad0f9420d9 get_value_dict_from_cache does not catch exceptions any more 2024-07-29 14:59:02 +02:00
Mose Müller
6d786cd0f8 removes unused SerializationValueError exception 2024-07-29 14:59:02 +02:00
Mose Müller
7286017715 removes unused imports 2024-07-25 08:28:33 +02:00
Mose Müller
1a23206f42 adds example to helper function 2024-07-25 08:25:28 +02:00
Mose Müller
fdb17e44e2 replaces fastapi with aiohttp 2024-07-25 08:25:10 +02:00
Mose Müller
fc738e2743 using aiohttp as socketio async_mode 2024-07-25 08:22:12 +02:00
Mose Müller
9de4071120 updates logging to remove uvicorn dependency 2024-07-25 07:48:22 +02:00
Mose Müller
369d0b1126 adds handle for server shutdown, removes uvicorn dependency from server.py 2024-07-25 07:47:59 +02:00
Mose Müller
9d387944ef npm run build 2024-07-24 14:58:47 +02:00
Mose Müller
c07efe056b npm run build 2024-07-22 07:05:16 +02:00
Mose Müller
e31af9ae31 moves log_config out of setup_logging method to make it configurable, removes argument from function 2024-07-11 17:04:11 +02:00
Mose Müller
60c671eb0d configures pydase's logger (not root logger anymore) 2024-07-11 16:53:12 +02:00
Mose Müller
e7f9ad799c uses loads instead of Deserializer, allows for monkey-patching loads and dump 2024-07-09 16:25:35 +02:00
Mose Müller
cf0780b2ca adds support for datetime serialization 2024-07-09 15:41:30 +02:00
Mose Müller
6e4e000c28 serializer: converting staticmethods to classmethods
This helps developers that want to add functionality to the serializer.
2024-07-09 15:15:30 +02:00
Mose Müller
44d5a98449 removes Pillow dependency, updates Image component 2024-07-09 07:52:18 +02:00
Mose Müller
f9be97a910 npm run build 2024-07-08 15:16:32 +02:00
Mose Müller
cddb83451a observer: first check if full access path contains private or protected attributes
As protected and private attributes are not stored in the cache, it does not make sense to
compare the cached value against the new value.
2024-07-04 17:26:32 +02:00
Mose Müller
6ffb068f47 npm run build 2024-07-04 16:45:05 +02:00
Mose Müller
b91eaaaf90 npm run build 2024-07-04 12:49:28 +02:00
Mose Müller
25459949a0 npm run build 2024-07-04 12:44:46 +02:00
Mose Müller
3c48a23277 fix: ruff warning 2024-07-04 12:23:58 +02:00
Mose Müller
bfcf72fec7 npm run build 2024-07-04 12:20:07 +02:00
Mose Müller
7fdd08021a ignore mypy error 2024-05-28 12:56:43 +02:00
Mose Müller
052bf79487 adds setattr validation to observable if validate_set decorator is used 2024-05-28 11:22:18 +02:00
Mose Müller
203cc0f0f5 adds validate_set decorator 2024-05-28 11:22:18 +02:00
Mose Müller
94cef50e03 combines two lines in _ObservableList.append 2024-05-27 15:22:30 +02:00
Mose Müller
84abd63d56 Merge branch 'main' into feature/ignore_coroutine 2024-05-27 15:08:14 +02:00
Mose Müller
999a6016ff using __future__.annotations instead of quoted types 2024-05-27 14:51:49 +02:00
Mose Müller
19f91b7cf3 removes TaskDefinitionError 2024-05-27 14:42:54 +02:00
Mose Müller
d7e604992d updates wording and formatting 2024-05-27 14:42:26 +02:00
Mose Müller
ba9dbc03f1 removes attribute key from observers dict if list of observers is empty 2024-05-21 14:03:21 +02:00
Mose Müller
f9a5352efe moves lines adding weakref to mapping dict into _initialise_new_objects
This groups together all the lines that add elements to or get elements from the mapping dicts.
2024-05-21 13:42:25 +02:00
Mose Müller
9c5d133d65 fixes types 2024-05-21 10:51:13 +02:00
Martin Stadler
eacd5bc6b1 Skip coroutines with arguments instead of raising an exception 2024-05-20 17:41:57 +02:00
Martin Stadler
314e89ba38 Use weak references in dict/list mappping to avoid memory leak 2024-05-20 17:25:35 +02:00
Mose Müller
82b9c14af3 ignores mypy overrides error 2024-04-30 15:46:50 +02:00