-
Notifications
You must be signed in to change notification settings - Fork 6
ckanext-datajson Py3 + CKAN 2.9 support #564
Comments
Updated the issue description. |
caniusepython3 output. Take this with a grain of salt because I don't think our requirements.txt is a complete view of the extensions' dependencies.
|
Default branch has been renamed. Don't forget to run:
|
@FuhuXia I guess there's some flakiness in the CircleCI tests. It looks like main is mostly passing minus the test suites that we're planning on removing anyway. |
@FuhuXia I've got 2 PRs for you: Please check them out and merge them if ready. I'll sync up with you tomorrow. |
|
On branch feature/py3, re-ran the caniusepython3 command and it returned this..
|
We have decided that the 2 blocking tests are better implemented as integration tests on catalog and inventory respectively. We will remove these unit tests, and this should be ready for merging. Deployment to production will be dependent on implementing the integration tests: |
There was a bug found related to changes in this upgrade; however, that bug was not being explicitly tested for and we are considering ckanext-datajson py3 upgrade complete. It runs on py3 and will continue to have bugs pop up as every code does. |
User Story
As a data.gov developer, I want ckanext-datajson running with CKAN 2.9 and Python 3 so that we can move out of CKAN 2.8 and reduce our technical debt and meet compliance standards.
Acceptance Criteria
THEN I see a successful job testing the extension under CKAN 2.9
AND I see a successful job testing the extension under CKAN 2.8
AND I see a successful job testing the extension under the legacy test environment
THEN I see CI fail due to test coverage being below a threshold
Background
CKAN 2.9 extension tracker.
Details / tasks
The goal is to support running this extension against CKAN 2.9 (Python 3) and CKAN 2.8 (Python 2) environments.
Please refer to the main CKAN documentation for Python 3 extensions migration. We're not following this guide exactly. Instead of creating a long-lived py3 branch, we should be merging often. New CI test suites don't need to required or to be fully passing in order to merge. It's only important that changes don't introduce new failures or break the existing test suites.
Below are a list of tasks. Depending on the extension's functionality, not all tasks will be actionable.
Tasks:
main
.check_ckan_version
caniusepython3 -r requirements.txt
from within the virtualenv) and post the results to this issue (docs)tests
dir totests/nose
in order to preserve existing test environment (example)futurize --both-stages --write ckanext
git grep -w 'paste\|pylons'
should return no imports) (docs)controller='package'
->controller='dataset'
orcontroller='resource'
Additional resources:
The text was updated successfully, but these errors were encountered: