Changelog¶
v0.2.0 (2019-04-24)¶
- Make
.calcs.pearsonraise aZeroDivisionErrorwhen the standard deviation of one/both sets of data is zero. This will be caught byAniffinity.calculate_affinityand will then raise the usualNoAffinityError, so scripts using this package will not need to be modified. - Fix the faulty URL resolving in the resolving function. Valid usernames starting with “http” will now be handled correctly, instead of having an exception raised when no accompanying service is specified.
- Move the user/service resolving functions to
resolver.py, and rename these functions to more meaningful names. Additionally, make these functions non-protected, adding in official support for them. - Change the repr of the
Aniffinityclass to make it more accurate. - Update various docstrings to make more sense and be more accurate.
- Bump the version for the dependency
json-api-doctov0.7.x. - Handle the
Decimalhandling in.calcs.pearsonbetter, by converting all of the values in each list to strings before passing them todecimal.Decimal. - Round affinity values by default to 10dp, so floating-point issues no longer need to be accounted for. This can be bypassed by the user, should they wish to do so.
- Don’t convert the scores lists to
list-s to make them non-lazy, as this is already done. - Allow the username & service to be specified as a string, in the
form
service:username. - Resolve the
userbefore raising exceptions, allowing the exception messages to include the service as well as the username. - Include the relevant usernames in the “standard deviation is zero”
exception message in
NoAffinityError.
v0.1.2 (2019-04-15)¶
- No code changes have been made. This release is to confirm that Travis has been fixed. (third time lucky, hopefully)
v0.1.1 (2019-04-15)¶
- No code changes have been made. This release is to confirm that Travis has been fixed.
v0.1.0 (2019-04-15)¶
- Discontinue Python 2 support.
- Rename this package to
Aniffinityand replace all occurances with this. - Add AniList and Kitsu endpoints and support.
- Rename exception
MALRateLimitExceededErrortoRateLimitExceededError. - Add in a way to specify which service to use, either through the
serviceparam, using a tuple with the username and service, or passing the URL to a users’ profile. - Create the
Usernamedtuple. - Make AniList the default service to use (as it’s the most stable).
- Rename the
affinityfield in theAffinitynamedtuple tovalue. - Rename exception
InvalidUsernameErrortoInvalidUserError. - Force the
_base_scoresidkeys to strings. - Change the MyAnimeList API to an official-yet-unofficial semi-working one.
- Speed up the creation of the
comparisondict. - Add the service name to all service-specific exceptions.
- Add the
wait_timearg to theAniffinityclass to slow down paginated requests.
For older changes, read the changelog at erkghlerngm44/malaffinity.