Changelog
v0.12.4
Released on 2023-06-07 - GitHub - PyPI
What's Changed
- Add concept URI as value by @LeMyst in #508
- Fix regex for time value by @eloiferrer in #512
- Generalize len() support by @LeMyst in #517
- Add more explicit information about differences between WBI/WDI by @LeMyst in #466
- Add SubClasses registration to BaseEntity by @LeMyst in #532
- Fix qualifiers when passing Qualifiers in set() by @LeMyst in #533
- Fix BaseEntity subclasses by @LeMyst in #535
- Add get_entity_url() by @LeMyst in #537
- Add JSON format helper to WBI Entity by @LeMyst in #534
- Improve datatype Time by @LeMyst in #542
- Add limit_claims to baseentity._write() by @LeMyst in #544
- Add Qualifiers.remove() and Qualifiers.clear() by @LeMyst in #545
- Fix exception if qualifier is not in list by @LeMyst in #546
- Check lexeme language format by @LeMyst in #554
New Contributors
- @eloiferrer made their first contribution in #512
Full Changelog: v0.12.3...v0.12.4
v0.12.3
Released on 2023-01-09 - GitHub - PyPI
What's Changed
- Add time doc by @LeMyst in #423
- Improve/Fix Exceptions by @LeMyst in #450
- Allow to write an entity as a new one by @LeMyst in #457
- Update setup.cfg python version by @LeMyst in #476
- Try python 3.12-dev by @LeMyst in #477
- Add wbi_helpers.edit_entity() by @LeMyst in #475
- Add lexeme helpers by @LeMyst in #478
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
- Update README.md by @LeMyst in #375
- Improve claims.add() docstring by @dpriskorn in #387
- Comment to avoid double MR by @LeMyst in #392
- Improve MWApiError by @LeMyst in #397
- Create auto-assign-issue.yaml by @LeMyst in #402
- Rename .yml to .yaml by @LeMyst in #401
- Update README.md by @LeMyst in #403
- Fix codespell errors by @LeMyst in #405
- Add test_invalid_claim by @LeMyst in #404
- Bump version to v0.12.1 by @LeMyst in #406
- Update readthedocs-sphinx-ext requirement from ~=2.1.5 to ~=2.1.8 by @dependabot in #372
- Bump pypa/gh-action-pypi-publish from 1.5.0 to 1.5.1 by @dependabot in #383
- Update sphinx requirement from ~=4.5.0 to ~=5.1.1 by @dependabot in #384
- Bump sphinx-autodoc-typehints from 1.18.1 to 1.19.2 by @dependabot in #396
- Update m2r2 requirement from ~=0.3.2 to ~=0.3.3 by @dependabot in #400
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
byActionIfExists.REPLACE_ALL
andActionIfExists.APPEND
byActionIfExists.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()
withlogging
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
andBaseEntity.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
becomeentities.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
withujson
- 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
parameterquantity
toamount
- Rename parameter
if_exists
toaction_if_exists
and change it to useActionIfExists
enum instead of string - Fix issue with
endpoint
parameter withwbi_helpers.execute_sparql_query
- Change paramaters for
wbi_login.Login
(defaultauth_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
bywbi_functions
. - Remove
FunctionsEngine.get_linked_by()
andFunctionsEngine.delete_item()
. WikibaseIntegrator will only support wikibase-oriented functions. Directly usewbi_functions.mediawiki_api_call_helper
instead. - Rename
FunctionsEngine.delete_statement()
towbi_functions.remove_claims()
.revision
parameter in now optional.- Add
summary
parameter. - Change parameters order.
- Rename
FunctionsEngine.get_search_results()
towbi_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()
allowwbi_core.BaseDataType()
as parameterdata
value typewbi_core.Time()
accept new parameterbefore
andafter
wbi_core.BaseDataType()
allow an integer forprop_nr
parameter- Fix missing
self.value
forwbi_core.Sense()
andwbi_core.Form()
- Fix
TypeError
forwbi_core.GeoShape()
andwbi_core.TabularData()
ifvalue
isNone
- Add more check if
BaseDataType
value is None - Improve handle of
wbi_core.BaseDataType.is_reference
andwbi_core.BaseDataType.is_qualifier
when used inreferences=
orqualifiers=
- 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 isfalse
wbi_core.FunctionsEngine.merge_items()
. Default isfalse
wbi_core.FunctionsEngine.delete_item()
. Default isfalse
wbi_core.FunctionsEngine.get_search_results()
. Default istrue
wbi_core.FunctionsEngine.generate_item_instances()
. Default istrue
- Fix an issue with
wbi_core.ItemEngine
methodsset_label
andset_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
towbi_core.FunctionsEngine.mediawiki_api_call
- Move
wbi_core.ItemEngine.get_linked_by
towbi_core.FunctionsEngine.get_linked_by
- Move
wbi_core.ItemEngine.execute_sparql_query
towbi_core.FunctionsEngine.execute_sparql_query
- Move
wbi_core.ItemEngine.merge_items
towbi_core.FunctionsEngine.merge_items
- Move
wbi_core.ItemEngine.delete_item
towbi_core.FunctionsEngine.delete_item
- Move
wbi_core.ItemEngine.delete_statement
towbi_core.FunctionsEngine.delete_statement
- Move
wbi_core.ItemEngine.get_search_results
towbi_core.FunctionsEngine.get_search_results
wbi_core.Quantity()
change parameter fromvalue
toquantity
wbi_core.MonolingualText()
change parameter fromvalue
totext
wbi_core.FunctionsEngine.get_search_results()
change parameter fromdict_id_label
todict_result
- Remove
wbi_core.BaseDataType.is_reference()
andwbi_core.BaseDataType.is_qualifier()
, use attribute instead - Remove parameter
append_value
fromwbi_core.ItemEngine()
. Useif_exists
parameter fromwbi_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