Skip to content

A brand new interface

Choose a tag to compare

@daffidwilde daffidwilde released this 22 Jan 11:07

Here is the first stable and "proper" release for matching. A lot has changed in the API with this release, and I am striving towards this being a library that is useful for as many people as possible -- as opposed to a collection of functions meant for me. So, please, if there is anything you want to see included or improved in the library then open a PR or raise an issue.

The main changes are as follows:

  • Instead of passing dictionaries to an algorithm function, lists of matching.Player instances must be created for the two matching parties
  • Each of these instances have a few attributes but, most importantly, they take a name (this should be unique to the party) and a list (or tuple) ranking their preferences of the names of the other party's members.
  • With these lists of Player instances, each type of matching game now has its own solver class (e.g. the hospital-resident assignment problem uses matching.HospitalResident) with various methods to solve the game and then check the stability/validity of a matching.

Further details on the usage are given in the README and full documentation is yet to come.

Thank you to everyone for using this library, with particular thanks to @justinrporter for their extensive issue which prompted me to commit myself to this refactoring.

Henry