-
Couldn't load subscription status.
- Fork 33
Description
DP+ was forked from DP which uses ckanserviceprovider.
ckanserviceprovider was meant to be a general library for CKAN for making web services, and was originally created in 2013.
Right now, DP and DP+ are really the only users of the library, and in the 10 years since, a lot has changed.
DP+ 0.x will continue to use ckanserviceprovider so older CKAN installations using DataPusher can still use it.
However, especially now that CKAN v2.9 uses Python 3.8+ which DP+ requires to call qsv using subprocess options only available in Python 3.7+, v1.x of DP+ will work as a CKAN extension.
This has the following benefits:
- easier to maintain as it just works as a regular extension
- no need to maintain a separate web service running in its own virtualenv
- we can drop the ckanserviceprovider dependency
- we can use the ckan_default database to store DP+ job history instead of creating our own DP+ database
- we can add additional UI elements beyond the existing Datastore tab. Here are some examples of what a DP+ extension can do:
- Have the ability to set resource-specific DP+ job settings on the UI
- Have the ability to see how the resource is stored in the Datastore (with datastore_info API)
- Have a more advanced Data Dictionary interface that goes beyond setting label/description and overriding types
This is already WIP in the https://github.com/dathere/datapusher-plus/tree/dev-v1.0 branch and we hope to the make the first release summer 2023.
EDIT: