Minor fixes
Declare event sources in init.py
Make logs/stats as typesafe
FreeNAS/freenas 9ee3d29 — src/middlewared/middlewared/common/attachment certificate.py, src/middlewared/middlewared/plugins/apps schema_construction_utils.py
Make schema_construction_utils typesafe
Mark app service as generic
Convert schema validation to new typesafe pattern
Complete remove old upgrade.py
FreeNAS/freenas af5933c — src/middlewared/middlewared/api/v27_0_0 app.py, src/middlewared/middlewared/plugins/apps app_scale.py __init__.py
Move app_scale methods to be typesafe
Add query/get_instance impl
Barebones crud.py
Rename crud file
Fix integration tests
More fixes
FreeNAS/freenas 035a074 — src/middlewared/middlewared/plugins/apps crud.py available_apps_info.py, src/middlewared/middlewared/plugins/zfs_ utils.py
Mypy fixes
Remove usages of old schema normalization
FreeNAS/freenas ff62cc0 — src/middlewared/middlewared/plugins/apps schema_action_context.py schema_normalization.py
Convert app.schema.actions to be typesafe
FreeNAS/freenas 5589aad — src/middlewared/middlewared/api/v27_0_0 app.py, src/middlewared/middlewared/plugins/apps crud_old.py crud.py
Complete crud methods to be typeafe
Make get_app_volume_ds typesafe
FreeNAS/freenas 2e490fc — src/middlewared/middlewared main.py, src/middlewared/middlewared/plugins/apps metadata.py __init__.py
Convert metadata to typesafe impl
Convert ix_volume service to typesafe
Make various app related util files typesafe
FreeNAS/freenas 56743d7 — src/middlewared/middlewared/plugins/apps available_apps_info.py __init__.py, src/middlewared/middlewared/plugins/catalog apps.py
Complete removing app service from catalog/
Initial pass at moving app related endpoitns from catalog plugin
FreeNAS/freenas 9fd125f — src/middlewared/middlewared/plugins/apps crud.py __init__.py, src/middlewared/middlewared/service crud_service.py base.py
Fix serialization of app.query
FreeNAS/freenas 3a5c094 — src/middlewared/middlewared/plugins/apps __init__.py, src/middlewared/middlewared/pytest/unit/api/base test_decorator.py
Allow filterable api method to pass check annotations
FreeNAS/freenas 47ad49d — src/middlewared/middlewared/pytest/unit/plugins/apps test_normalize_questions.py test_upgrade_values.py
More fixes
FreeNAS/freenas 500f9bb — src/middlewared/middlewared/api/v27_0_0 app.py, src/middlewared/middlewared/plugins/apps upgrade.py upgrade_old.py
Add initial code to covert upgrade.py
Convert resources.py to typesafe imple
FreeNAS/freenas 0e9add0 — src/middlewared/middlewared/plugins/apps/ix_apps metadata.py lifecycle.py, src/middlewared/middlewared/plugins/apps/ix_apps/docker stats.py
Address reviews
Fix app.latest/app.available models mismatch