richardlehane / siegfried

signature-based file format identification
http://www.itforarchivists.com/siegfried
Apache License 2.0
223 stars 30 forks source link

Enable users to configure a custom Wikibase #177

Closed ross-spencer closed 2 years ago

ross-spencer commented 2 years ago

This commit sees the code added that is needed for users to specify a custom Wikibase endpoint.

Given a custom endpoint, the caller will require a new SPARQL query that can be specified in Siegfried %HOME% under wikibase.sparql.

A custom properties file is needed as well for properties to be configured at runtime. Similarly, this can be configured in Siegfried %HOME% in wikibase.json.

Significant testing has been put in place to ensure that both Wikidata and Wikibase pathways are handled inuitively for the user.

Mock tests have been put in place to properly test a custom Wikibase harvest from building signatures to verifying results returned via Siegfried's identification API.

Wikibase functionality will be better documented in the Siegfried docs.


@richardlehane this is looking good now. I am pretty happy with the more comprehensive testing around the feature, and outside of that, the user experience feels sensible. More end-user testing I am sure will be welcome!

Notes on docs

I intend to add this information here to the docs: https://github.com/ross-spencer/siegfried/pull/2#issuecomment-1030884282

Just quickly written this evening. I'll re-read them and add info where needed. I also intend to record at least one tutorial before I delete my Wikibase instance which I'll link to.

Notes on the release notes

I am not sure how you document these.

A few thoughts on these additions:

(And I think with that, the only other addition this next release will be the revision history and permalink features. Permalinks being returned in Siegfried results, and Revision history visible through roy inspect.)

ross-spencer commented 2 years ago

NB. I recognize appveyor has failed here. I'm not sure if that's related to this PR though?

richardlehane commented 2 years ago

NB. I recognize appveyor has failed here. I'm not sure if that's related to this PR though?

I think it's because I been swapping appveyor out for actions - appveyor is angry

richardlehane commented 2 years ago

thanks heaps for this work Ross. I think the "develop" branch is all good to go know. I've updated the changelog/readme with those additions. Have a look and let me know if anything else needs doing. Will hopefully be able to push the release button tomorrow night

ross-spencer commented 2 years ago

LGTM Richard!!! I've closed partially connected PRs with notes. I think it's all taken care of. Must be a release to have the release out! πŸŽ‰πŸŽ‰πŸŽ‰

richardlehane commented 2 years ago

the open issue count was making me anxious, v. happy we trimmed it back down to 10!