Changelog¶
1.0.0¶
- Massive refactoring. Module is now incompatible with the previous version and it can be installed
via pip install boardgamegeek2
0.13.2¶
- Forgot to bump up version with the previous release
0.13.1¶
Changes
- If
boardgamegeek.games.BoardGame.search()
is called without specifying search_type, this defaults to [“boardgame”]
Fixes
- Correcting negative years that are returned by BGG’s XMLAPI (when doing searches) as very large numbers.
0.13.0¶
Features
- Added the
choose
parameter toboardgamegeek.api.BoardGameGeek.game()
which lets you control how the “right” game is selected when searching by name. One of “first”, “recent” and “best-rank” can be specified in order to select the first search result, the most recently published one or the best ranked.
0.12.1¶
Changes
- Properties which returned lists no longer return
None
in case data is missing, but an empty list (e.g. forboardgamegeek.games.BoardGame
)- Updated documentation
0.12.0¶
Changes
- Deprecated numeric values for the search_type parameter of
boardgamegeek.games.BoardGame.search()
. Accepts list of strings as arguments instead, for consistency with the rest of the functions.
0.11.2¶
Fixes
- Searching for games with spaces in the name didn’t work because of manually replacing the spaces with ‘+’
0.11.0¶
Changes
- URLs for images and thumbnails are converted to proper URLs (the API returns them as “//cf.geekdo-images.com/images/...”)
Features
- The
boardgamegeek.games.BoardGame
has a new integer property (None if missing), boardgame_rank- The boardgamegeek tool: added -i, which allows querying by game id
- The boardgamegeek tool: added –most-recent (default) and –most-popular which allow the -g option to give information on a different game when the “search-by-name” returns multiple results.
0.10.0¶
Features
- Added a mechanism which makes sure the library doesn’t send requests too fast to BGG, triggering their protection (HTTP error 503). It does this by serializing all the requests and making sure there’s enough waiting time between them so that the configured requests_per_minute is respected.
Fixes
- Fixed the retry mechanism, allowing retries=0 (meaning no retries at all). Before, the code would fail if the user specified retires=0
0.9.0¶
Changes
- Since the BoardGameGeek API and site support HTTPS along with HTTP (and will be fully transitioned to HTTPS in the future), this library now uses HTTPS by default. To disable this behaviour, pass disable_ssl=True when creating a
boardgamegeek.api.BoardGameGeek
0.7.1¶
Fixes
- Not expecting the score of a player to be a number anymore (using the string as returned by the BGG API)
0.7.0¶
Changes
- The XML API2 seems to throttle requests by returning HTTP 503 ; added a delay and retry in the code to try to deal with this
Features
- When retrieving the plays, players are also returned, along with their data.
0.6.0¶
Changes
- Improved code in an attempt to prevent exceptions when trying to deal with invalid data coming from the remote XML data
Fixes
- Fixed issue #12 (an edge case which lead to comparing None to int)
0.5.0¶
Features
- Added a new function
boardgamegeek.api.BoardGameGeek.games()
which takes a name as argument and returns a list ofboardgamegeek.games.BoardGame
with all the games with that name.
0.4.3¶
Changes
- When calling
boardgamegeek.api.BoardGameGeek.game()
with a name, return the most recently published result instead of the first one, in case of multiple results.
0.4.0¶
Changes
- The calls to the BGG API will be automatically retried two times, with a timeout of 10 seconds. This behaviour can be controlled via the retries=, timeout= and retry_delay= parameters.
Features
- Added patch from philsstein to automatically increase timeout and retry request on timeout
0.3.0¶
Changes
- Added a property to
boardgamegeek.games.BoardGame
,expansion
which indicates if this item is an expansion or not- Changed the
expansions
property ofboardgamegeek.games.BoardGame
, now it returns a list ofboardgamegeek.things.Thing
for each expansion the game has- Added a property to
boardgamegeek.games.BoardGame
,extends
which returns a list ofboardgamegeek.things.Thing
for each item this game is an extension to
0.2.0 (unreleased)¶
Changes
- Changed the object hierarchy, replaced
BasicUser
,BasicGuild
,BasicGame
with aboardgamegeek.things.Thing
which has a name and an id
Features
- Added support for retrieving the hot lists
0.0.14¶
Changes
- The
.last_login
property of anboardgamegeek.user.User
object now returns adatetime.datetime
Features
- Added support for an user’s top and hot lists
Bugfixes
- Exceptions raised from
get_parsed_xml_response()
where not properly propagated to the calling code
0.0.13¶
Features
- Improved code for fetching an user’s buddies and guilds
- Improved code for fetching guild members
- Added support for listing Plays by user and by game
0.0.12¶
Features
- Added some basic argument validation to prevent pointless calls to BGG’s API
- When some object (game, user name, etc.) is not found, the functions return None instead of raising an exception
0.0.10¶
Features
- Updated documentation
- Improved Python 3.x compatibility (using unicode_literals)
- Added Travis integration
Bugfixes
- Fixed float division for Python 3.x
0.0.9¶
Features
- Added support for retrieving an user’s buddy and guild lists
- Started implementing some basic unit tests
Bugfixes
- Fixed handling of non-existing user names
- Properly returning the maximum number of players for a game