Skip to content
Snippets Groups Projects

model: Add new classes to improve interface typing

Merged Antoine Lambert requested to merge anlambert/swh-scheduler:interface-improve-typing into master

I started working on Release a Bulk On-demand Archival feature roadmap item and got my head back into swh-scheduler code to analyze how the feature could be implemented.

I noticed that many methods from the scheduler interface were missing typing information which makes the code hard to read.

So I took some time to add these missing typing info.

As I did not want to break other SWH packages using the related scheduler API (deposit, vault, web), I decided to use TypedDict classes instead of attr.s ones. The migration from TypedDict to attr.s can still be done later.

As with other scheduler models, the newly introduced ones are based on the use of the attr package. It introduces some breaking API changes as methods modified in interface now return objects instead of dicts so all SWH packages client of these methods should also be updated, this has been done in the following MRs:

The docker tests have also been executed with all the changes above by pushing docker!23 (closed) and they still pass.

Related to #2977 (closed).

Edited by Antoine Lambert

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading