Changelog

Version 0.9.0

Released on October 31, 2025.

  • Extended Python version support to 3.8–3.14.

  • Added user_agent parameter to Client constructor. Now API requests include a User-Agent header to comply with Wikidata API authentication requirements. [#64]

  • Migrated build configuration from setup.py/setup.cfg to pyproject.toml following modern Python packaging standards (PEP 518, PEP 621).

  • Updated mypy configuration to use Python 3.9 as the target version for type checking.

  • Fixed typing annotation for user_agent parameter in Client constructor to be non-optional.

  • Improved code style and import organization throughout the codebase.

Version 0.8.0 & 0.8.1

Released on July 7, 2024.

  • Python 3.4–3.7 are no more supported. The minimum supported Python version is Python 3.8. Instead, now it’s tested with Python 3.8–3.11.

  • Entity and Client became possible to be serialized using pickle. [#31]

  • Fixed a typing bug that Entity.label and Entity.description properties were incorrectly typed.

  • wikidata.multilingual.MultilingualText’s constructor became to take only Locale for parameter locale.

  • Added date precision 7 in wikidata.datavalue.decoder. [#59 by Baptiste Bayche]

  • Added date precision 10 in wikidata.datavalue.decoder. [#60 by David Doukhan]

Version 0.7.0

Released on July 31, 2020.

Version 0.6.1

Released on September 18, 2017.

Version 0.6.0

Released on September 12, 2017.

Version 0.5.4

Released on September 18, 2017.

Version 0.5.3

Released on June 30, 2017.

  • Fixed ValueError from Entity.label/Entity.description with languages ISO 639-1 doesn’t cover (e.g. cbk-zam). [#2]

    Although this fix prevents these properties from raising ValueError, it doesn’t completely fix the problem. babel.core.Locale type, which Wikidata depends on, currently doesn’t supprot languages other than ISO 639-1. In order to completely fix the problem, we need to patch Babel to support them, or make Wikidata independent from Babel.

Version 0.5.2

Released on June 28, 2017.

Version 0.5.1

Released on June 28, 2017.

Version 0.5.0

Released on June 13, 2017.

  • Wikidata API calls over network became possible to be cached.

    • Client now has cache_policy attribute and constructor option. Nothing is cached by default.

    • Added wikidata.cache module and CachePolicy interface in it. Two built-in implementation of the interface were added:

      NullCachePolicy

      No-op.

      MemoryCachePolicy

      LRU cache in memory.

      ProxyCachePolicy

      Proxy/adapter to another proxy object. Useful for utilizing third-party cache libraries.

    • wikidata.client.Client.request logger became to record logs about cache hits as DEBUG level.

Version 0.4.4

Released on June 30, 2017.

  • Fixed ValueError from Entity.label/Entity.description with languages ISO 639-1 doesn’t cover (e.g. cbk-zam). [#2]

    Although this fix prevents these properties from raising ValueError, it doesn’t completely fix the problem. babel.core.Locale type, which Wikidata depends on, currently doesn’t supprot languages other than ISO 639-1. In order to completely fix the problem, we need to patch Babel to support them, or make Wikidata independent from Babel.

Version 0.4.3

Released on June 28, 2017.

Version 0.4.2

Released on June 28, 2017.

Version 0.4.1

Released on April 30, 2017.

Version 0.4.0

Released on April 24, 2017.

  • Monolingual texts became able to be handled.

Version 0.3.0

Released on February 23, 2017.

  • Now Client became able to customize how it decodes datavalues to Python objects.

  • Now files on Wikimeda Commons became able to be handled.

    • New decoder became able to parse Wikimedia Commons files e.g. images.

    • Added wikidata.commonsmedia module and File class inside it.

  • The meaning of Client constructor’s base_url prameter beccame not to contain the trailing path wiki/ from https://www.wikidata.org/wiki/. As its meaning changed, the value of WIKIDATA_BASE_URL constant also changed to not have the trailing path.

  • Added load option to Client.get() method.

Version 0.2.0

Released on February 19, 2017.

Version 0.1.0

Initial version. Released on February 15, 2017.