Skip to content

v0.3: Some new stuff

Latest
Compare
Choose a tag to compare
@s-kostyuk s-kostyuk released this 04 May 11:55
3d394e1

What changed for end-user?

  • marked /messages/ REST API endpoint as deprecated;
  • added a new /execute REST API endpoint for Things (#81);
  • introduced the concept of Capabilities for Things (#88);
  • added an optional Zeroconf announcement support (#93);
  • changed the naming format for packages with integrations (#75);
  • doc available at http://everpl.readthedocs.io/en/v0.3.0/.

Everything else is a bunch of under-the-hood changes.

Full Changelog:

Core:

  • nothing changed.

Architecture:

  • added aspects for access control, DB session management and other similar stuff (#63, #64, #65).

Authorization:

  • BREAKING: reworked authorization and access control logic (#59, #76);
  • introduced new classes: User and Session;
  • introduced UserService, SessionService and corresponding repositories;
  • introduced an AuthService #59.

Placements:

  • kept unchanged.

Thing subsystem:

  • introduced Capabilities;
  • reworked 'build_dto' implementation for Thing instances to support new Capabilities (#87);
  • BREAKING: changed the signature of 'select' methods for ThingRepository (2a3e1f7);
  • BREAKING: removed a 'state' property from the base Thing class;
  • BREAKING: moved abstract base implementations of Things from dpl.things to dpl.integrations package;
  • BREAKING: changed the naming format for packages with integrations (#75);
  • BREAKING: moved Dummy integration sample and a corresponding tests to the separate package.

REST API:

  • implemented an '/execute' endpoint for Things (#81);
  • separated REST API provider code into different subapps by resources they control (#78);
  • BREAKING: Removed API Gateway and a legacy REST API implementation (#80).

Other components:

  • introduced LocalDiscovery component (#93);
  • BREAKING: Fixed inconsistency with 'select' methods of Repos (6bd353a);
  • BREAKING: renamed SQLAlchemy-related SessionManager to the DbSessionManager (a655e7a).