Changelog

v0.12.4

Released on 2023-06-07 - GitHub - PyPI

What's Changed

New Contributors

Full Changelog: v0.12.3...v0.12.4

v0.12.3

Released on 2023-01-09 - GitHub - PyPI

What's Changed

Full Changelog: v0.12.2...v0.12.3

v0.12.2

Released on 2022-11-13 - GitHub - PyPI

What's Changed

  • Remove useless code, everything is already taken care in mediawiki_api_call(). by @LeMyst in #410
  • Use getLogger instead of directly logging by @LeMyst in #411
  • Remove pkg_resources dependency by @LeMyst in #430
  • Add Python 3.11 as default by @LeMyst in #443
  • Update to latest mypy / Python 3.11 by @LeMyst in #446
  • Add fulltext_search function by @LeMyst in #436
  • Add snaktype when creating a claim by @LeMyst in #420

Full Changelog: v0.12.1...v0.12.2

v0.12.1

Released on 2022-09-04 - GitHub - PyPI

What's Changed

Full Changelog: v0.12.0...v0.12.1

v0.12.0

Released on 2022-07-14 - GitHub - PyPI

Complete rewrite of the library

  • Add support for manipulating Property, Lexeme and Wikimedia Commons MediaInfo
  • Rewrite the wbi_login module, each authentification method has now is own class.
  • Add support for Structured Data on Commons (SDC).
  • Replace custom debug with logging module.
  • Add type hints.
  • Remove WikibaseIntegrator.wbi_helpers property. Use directly wbi_helpers module instead.
  • Improve datatypes code by removing redundant parts
  • Improve useragent support.

Thanks to @dpriskorn , @pgrond , @jmformenti

v0.11.3

Released on 2022-07-07 - GitHub - PyPI

What's Changed

  • Adding support for localMedia type by @LeMyst in #47
  • README.md: Fix the readability of readability by @cclauss in #337
  • Fix typos discovered by codespell by @cclauss in #338
  • Convert to Python f-strings with flynt by @cclauss in #339
  • Update multiple dependencies

New Contributors

Full Changelog: v0.11.2...v0.11.3

v0.12.0rc5

Released on 2022-07-03 - GitHub - PyPI

What's Changed

  • [Breaking changes] Change ActionIfExists.REPLACE by ActionIfExists.REPLACE_ALL and ActionIfExists.APPEND by ActionIfExists.APPEND_OR_REPLACE
  • Add wbi_enums.WikibaseDatatype to consistently reference data types.
  • Add support for long entity name like "Item:Q582"
  • Add Github Workflow paths by @LeMyst in #356
  • Rework Exceptions handling by @LeMyst in #357
  • Remove .idea folder by @LeMyst in #364
  • Reintroduce getting the conflicting entity id and the language by @dpriskorn in #361

Full Changelog: v0.12.0rc4...v0.12.0rc5

v0.12.0rc4

Released on 2022-06-02 - GitHub - PyPI

What's Changed

  • Add a NonExistentEntityError exception (Thanks to @dpriskorn)
  • Improve MediaWiki 1.35 compatibility. (Thanks to @dpriskorn)
  • Replace print() with logging methods. (Thanks to @dpriskorn)
  • Add wbi_helpers.delete_page()
  • Add BaseEntity.delete() to easily delete an entity with the page ID or the page title. (#309)
  • Add BaseEntity.title and BaseEntity.pageid attributes.
  • More docstring
  • Typo fixes

Full Changelog: v0.12.0rc3...v0.12.0rc4

v0.11.2

Released on 2022-04-25 - GitHub - PyPI

What's Changed

  • Add python 3.11 pytest by @LeMyst in #244
  • Wrong GlobeCoordinate SPARQL representation by @LeMyst in #247
  • Fix typo in GlobeCoordinate SPARQL representation by @LeMyst in #248
  • Adding support for EDTF datatype by @LeMyst in #143
  • Fix README for wikibase-release-pipeline docker-compose by @LeMyst in #310

Full Changelog: v0.11.1...v0.11.2

v0.12.0rc3

Released on 2022-03-24 - GitHub - PyPI

What's Changed

  • Partial fix compatibility with Wikibase 1.35 (Thanks @jmformenti)
  • Fix and improve SDC support
  • Improve bot support when writing to instance
  • Improve session support

Full Changelog: v0.12.0rc2...v0.12.0rc3

v0.12.0rc2

Released on 2022-02-18 - GitHub - PyPI

What's Changed

  • [Breaking changes] Add suffixes to entities classes (entities.Item become entities.ItemEntity) (Thanks to @dpriskorn)
  • All HTTP requests will now use the same requests.Session
  • Fix issue when comparing qualifiers #295 (Thanks to @pgrond)
  • Improve datatypes.Time format validator
  • Allow integer for datatypes.Time precision
  • Improve BaseEntity attributes (Thanks to @dpriskorn)
  • Improve typing
  • Fix/Improve models.Claims action_if_exists parameter
  • Add wbi_fastrun.get_items() to retrieve multiple IDs
  • Update docs requirements

Full Changelog: v0.12.0rc1...v0.12.0rc2

v0.12.0rc1

Released on 2022-01-28 - GitHub - PyPI

What's Changed

  • Add Enum WikibaseDatePrecision, thanks to @dpriskorn #277
  • Update README.md
  • Update dependencies versions
  • Update and improve Notebooks
  • and multiple bugfixes

Full Changelog: v0.12.0.dev7...v0.12.0rc1

v0.12.0.dev7

Released on 2022-01-10 - GitHub - PyPI

What's Changed

  • Rewrite the wbi_login module, each authentification method has now is own class. (there's no backward support with old Login class)
    • wbi_login.OAuth2 (recommended)
    • wbi_login.OAuth1
    • wbi_login.ClientLogin
    • wbi_login.Login
  • Replace custom debug with logging module
  • Replace simplejson with ujson
  • Avoid recreating the anonymous session at each request
  • Improve docs, available at https://wikibaseintegrator.readthedocs.io/

Full Changelog: v0.12.0.dev6...v0.12.0.dev7

v0.12.0.dev6

Released on 2021-11-17 - GitHub - PyPI

What's Changed

  • Bump actions/checkout from 2.3.5 to 2.4.0 by @dependabot in #242
  • Add python 3.11 pytest by @LeMyst in #244
  • Exclude folder "wikibaseintegrator.egg-info" by @LeMyst in #245
  • Duplicate metadata for Github weird dependency graph by @LeMyst in #246
  • Wrong GlobeCoordinate SPARQL representation by @LeMyst in #247
  • Fix typo in GlobeCoordinate SPARQL representation by @LeMyst in #248
  • Rework FastRun for using WBI DataModel by @LeMyst in #249
  • Update simplejson requirement from ~=3.17.5 to ~=3.17.6 by @dependabot in #250
  • Add notebook "Create a new Item"
  • Remove frozendict dependency
  • Replace load_item() with get_item()
  • Move some fastrun function from baseentity to wbi_fastrun

Full Changelog: v0.12.0.dev5...v0.12.0.dev6

v0.11.1

Released on 2021-10-23 - GitHub - PyPI

What's Changed

  • Only reset specific language when replacing description (#164) (Thanks @pgrond)
  • Improves the error message if the operator are trying to use a writing function without setting allow_anonymous or having a valid login object. (Thanks @dpriskorn)
  • init(): Give the user back the prop_nr so they can better understand why the check failed. (#178) (Thanks @dpriskorn)
  • Simplify qualifiers/references support (#212) (Thanks @dpriskorn)
  • Add the keyword "now" to Time datatype to set the value to the current UTC time (#213) (Thanks @dpriskorn)
  • Add retry for HTTP Code 500, 502 and 504 (#234) (Thanks @dpriskorn)
  • Implement PEP 498 (Thanks @dpriskorn)
  • Update unit tests
  • Update dependencies

New Contributors

Full Changelog: v0.11.0...v0.11.1

v0.12.0.dev5

Released on 2021-09-27 - GitHub - PyPI

Changes since v0.12.0.dev4

  • Add type hints
  • Remove WikibaseIntegrator.wbi_helpers property. Use directly wbi_helpers module instead.
  • Add GitHub Actions for isort/mypy and pylint
  • Improve datatypes code by removing redundant parts
  • Use f-string (Suggestion of @dpriskorn)
  • Correct api parameter in entity classes
  • Change references handling in Claim/BaseDataType classes
  • Add retry if remote server return 500, 502, 503 or 504 http code
  • Better support of bot flag in wbi_helpers functions
  • and more...

v0.12.0.dev4

Released on 2021-09-13 - GitHub - PyPI

Changes since v0.12.0.dev3

  • Fix missing frozendict dependency
  • Clean the code

v0.12.0.dev3

Released on 2021-09-09 - GitHub - PyPI

Changes since v0.12.0.dev2

  • Update README.md
  • Update notebooks
  • Change datatype.Quantity parameter quantity to amount
  • Rename parameter if_exists to action_if_exists and change it to use ActionIfExists enum instead of string
  • Fix issue with endpoint parameter with wbi_helpers.execute_sparql_query
  • Change paramaters for wbi_login.Login (default auth_method is oauth2):
    • wbi_login.Login(auth_method='clientlogin', user, password)
    • wbi_login.Login(auth_method='login', user, password)
    • wbi_login.Login(auth_method='oauth1', consumer_token, consumer_secret)
    • wbi_login.Login(auth_method='oauth1', consumer_token, consumer_secret, access_token, access_secret)
    • wbi_login.Login(auth_method='oauth2', consumer_token, consumer_secret)
  • Add extra datatype:
    • datatype.extra.EDTF
    • datatype.extra.LocalMedia
  • and more...

v0.12.0.dev2

Released on 2021-08-26 - GitHub - PyPI

Fix packaging issues.

v0.11.0

Released on 2021-06-06 - GitHub - PyPI

  • Only send changes when writing to Wikibase.
  • Add Exception if format is set to something else than json when using FunctionsEngine.mediawiki_api_call().
  • Add Python 3.10 CI workflow.
  • Remove pandas as a dependency.
  • Fix issue when core_prop id is and ItemID (#155 thanks to @maximearmstrong)

BREAKING CHANGES

  • Replace wbi_core.FunctionsEngine by wbi_functions.
  • Remove FunctionsEngine.get_linked_by() and FunctionsEngine.delete_item(). WikibaseIntegrator will only support wikibase-oriented functions. Directly use wbi_functions.mediawiki_api_call_helper instead.
  • Rename FunctionsEngine.delete_statement() to wbi_functions.remove_claims().
    • revision parameter in now optional.
    • Add summary parameter.
    • Change parameters order.
  • Rename FunctionsEngine.get_search_results() to wbi_functions.search_entities().
  • Remove dataframe support in wbi_functions.execute_sparql_query, use sparqldataframe package instead.
  • Move format force to json to wbi_functions.mediawiki_api_call().
  • Move all datatypes from wbi_core to wbi_datatype.
  • Move wbi_core.JsonParser to wbi_jsonparser.JsonParser

v0.10.1

Released on 2021-05-01 - GitHub - PyPI

  • Add OAuth 1.0a and OAuth 2.0 owner-only consumer support. It's now the best methods to securely authenticate against a MediaWiki instance.
  • Automatically disable unit support in fastrun query if datatype is not quantity.
  • Fix wbi_core.set_label() which replaced all labels. Allow delete of label with parameter label as None.
  • Update the format validator for Url property.
  • Ignore maxlag parameter if maxlag is 0 or less.
  • Add maxlag support to more functions.
  • Add documentation for wbi_core.FunctionsEngine.mediawiki_api_call_helper() in the README.md.

v0.10.0

Released on 2021-02-11 - GitHub - PyPI

  • Add support for unitless wd:Q199 in wbi_core.Quantity()
  • wbi_core.ItemEngine() allow wbi_core.BaseDataType() as parameter data value type
  • wbi_core.Time() accept new parameter before and after
  • wbi_core.BaseDataType() allow an integer for prop_nr parameter
  • Fix missing self.value for wbi_core.Sense() and wbi_core.Form()
  • Fix TypeError for wbi_core.GeoShape() and wbi_core.TabularData() if value is None
  • Add more check if BaseDataType value is None
  • Improve handle of wbi_core.BaseDataType.is_reference and wbi_core.BaseDataType.is_qualifier when used in references= or qualifiers=
  • Improve wbi_login with more warning and error messages from the API
  • Replace wbi_core.BaseDataType() parameters by kwargs
  • Add allow_anonymous parameter to:
    • wbi_core.write(). Default is false
    • wbi_core.FunctionsEngine.merge_items(). Default is false
    • wbi_core.FunctionsEngine.delete_item(). Default is false
    • wbi_core.FunctionsEngine.get_search_results(). Default is true
    • wbi_core.FunctionsEngine.generate_item_instances(). Default is true
  • Fix an issue with wbi_core.ItemEngine methods set_label and set_description only worked in "fast run" mode
  • wbi_core.ItemEngine.set_aliases() now accept string and list
  • Add Python 3.9 support

BREAKING CHANGES

  • Drop Python 3.6 support
  • Move wbi_core.ItemEngine.mediawiki_api_call to wbi_core.FunctionsEngine.mediawiki_api_call
  • Move wbi_core.ItemEngine.get_linked_by to wbi_core.FunctionsEngine.get_linked_by
  • Move wbi_core.ItemEngine.execute_sparql_query to wbi_core.FunctionsEngine.execute_sparql_query
  • Move wbi_core.ItemEngine.merge_items to wbi_core.FunctionsEngine.merge_items
  • Move wbi_core.ItemEngine.delete_item to wbi_core.FunctionsEngine.delete_item
  • Move wbi_core.ItemEngine.delete_statement to wbi_core.FunctionsEngine.delete_statement
  • Move wbi_core.ItemEngine.get_search_results to wbi_core.FunctionsEngine.get_search_results
  • wbi_core.Quantity() change parameter from value to quantity
  • wbi_core.MonolingualText() change parameter from value to text
  • wbi_core.FunctionsEngine.get_search_results() change parameter from dict_id_label to dict_result
  • Remove wbi_core.BaseDataType.is_reference() and wbi_core.BaseDataType.is_qualifier(), use attribute instead
  • Remove parameter append_value from wbi_core.ItemEngine(). Use if_exists parameter from wbi_core.BaseDataType()

v0.9.0

Released on 2020-10-09 - GitHub - PyPI

  • Improve _query_data function to correctly retrieve value, unit, quantifier, quantifier value and quantifier unit (Thanks to Dipsacus fullonum)
  • Remove wikidata prefixes in queries and only use IRI
  • In ItemEngine class will not try to load item data if the parameter search_only is set to true
  • Improve fastrun's base filter by supporting the SequencePath
  • Add parameter if_exists for set_label (with default value REPLACE)
  • Change append to if_exists (with default value APPEND) for set_aliases
  • Add parameter if_exists for set_description (with default value REPLACE)
  • Change default config
    • Remove CONCEPT_BASE_URI. it's now derivated from WIKIBASE_URL
    • Add DEFAULT_LANGUAGE with a default value 'en'
  • Remove shexer, pyshex and rdflib dependencies
    • Remove all shex and rdf related functions. Please use your own
  • Set default lang to None in functions parameters. If lang is set to None, use global DEFAULT_LANGUAGE
  • Remove logging functions. Please use your own
  • Improve unit tests
    • Move from httpstat.us to httpbin.org
    • Improve some tests with decimal value instead of simple integer
    • Add unit testing for some
    • Adapt tests with new parameters

v0.8.2

Released on 2020-08-07 - GitHub - PyPI

Move from WikidataIntegrator to WikibaseIntegrator

  • Module name changes :
    • wdi_backoff -> wbi_backoff
    • wdi_config -> wbi_config
    • wdi_core -> wbi_core
    • wdi_fastrun -> wbi_fastrun
    • wdi_login -> wbi_login
  • Classe name changes:
    • WDLogin -> Login
    • WDItemEngine -> ItemEngine
    • WDBaseDataType -> BaseDataType
    • WDCommonsMedia -> CommonsMedia
    • WDExternalID -> ExternalID
    • WDForm -> Form
    • WDGeoShape -> GeoShape
    • WDGlobeCoordinate -> GlobeCoordinate
    • WDItemID -> ItemID
    • WDLexeme -> Lexeme
    • WDMath -> Math
    • WDMonolingualText -> MonolingualText
    • WDMusicalNotation -> MusicalNotation
    • WDProperty -> Property
    • WDQuantity -> Quantity
    • WDSense -> Sense
    • WDString -> String
    • WDTabularData -> TabularData
    • WDTime -> Time
    • WDUrl -> Url
  • ItemEngine parameter changes:
    • wd_item_id -> item_id
  • ItemEngine attribute changes:
    • wd_item_id -> item_id

v0.8.1

Released on 2020-08-05 - GitHub - PyPI

  • Fork and rename project from WikidataIntegrator to WikibaseIntegrator
  • Add Github Action to publish to PyPi
  • Remove notebook/, doc/ and docs/ folder
  • Remove wdi_helpers
  • Update requirements.txt with versions and remove useless package
  • Improve FastRunContainer
  • Improve search_only mode