Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Missing JTS Constraints #55

Closed
cspencer51 opened this issue May 1, 2015 · 5 comments
Closed

Implement Missing JTS Constraints #55

cspencer51 opened this issue May 1, 2015 · 5 comments
Assignees
Labels
feature New functionality

Comments

@cspencer51
Copy link

cspencer51 commented May 1, 2015

JSON Table Schema defines several constraints (minLength, maxLength, pattern, minimum, maximum, and oneOf) that are not yet implemented by goodtables. Goodtables should throw warnings until these are implemented (see #54). But long-term, these constraints should also be implemented.

@pwalsh
Copy link
Member

pwalsh commented May 2, 2015

Point taken. We implemented all commonly used parts of the spec first.

Most of the implementation occurs in JTSKit, which was developed alongside goodtables. We have some issues open there for implementing the rest of the spec (JTSKit Issues), and any help would be appreciated.

Some things (e.g: oneOf) are brand new (I added it to the JTS spec a week or two ago), but certainly the goal of JTSKit is to catch up to the current state of the spec, and remain in-step with it as it changes.

@pwalsh pwalsh added this to the Backlog milestone May 2, 2015
@pwalsh pwalsh added general General improvements help wanted labels May 2, 2015
@pwalsh
Copy link
Member

pwalsh commented Mar 15, 2016

What this now actually requires is to use methods in https://github.com/frictionlessdata/jsontableschema-py that now exist, which did not exist when I originally wrote both libs together. The code here performs some of the "jts stuff" directly, and that can now be removed and replaced with those new methods.

@pwalsh pwalsh modified the milestones: Current, Backlog Mar 15, 2016
@roll roll added the current label May 5, 2016
@georgiana-b
Copy link
Contributor

Can someone familiar with both GoodTables and jsontableschema-py give an example? I count identify functionality that appears in both.

@pwalsh
Copy link
Member

pwalsh commented May 9, 2016

@georgiana-b I'm unassigning this for now.

@roll roll removed this from the Current milestone Aug 8, 2016
@roll roll added this to the goodtables-v1 milestone Aug 12, 2016
@roll roll added priority feature New functionality and removed current general General improvements labels Aug 16, 2016
@roll roll self-assigned this Oct 2, 2016
@roll roll added branch-next and removed priority labels Oct 13, 2016
@roll roll added priority and removed priority labels Oct 13, 2016
@roll roll added review and removed current labels Oct 29, 2016
roll pushed a commit that referenced this issue Oct 29, 2016
* updated jsontableschema version

* implemented all constraints except unique

* implemented unique constraint check

* updated to jsontableschema-v0.8.2

* fixed linting
@roll
Copy link
Member

roll commented Oct 29, 2016

Fixed in https://github.com/frictionlessdata/goodtables-py/tree/next

next will be merged onto master soon.

@roll roll closed this as completed Oct 29, 2016
@roll roll removed the review label Oct 29, 2016
roll pushed a commit that referenced this issue Nov 2, 2016
* Rebased on goodtables.next codebase (#118)

* removed current codebase

* added updated codebase

* fixed linting

* updated readme

* updated readme

* updated readme

* fixed source checks

* added dataset checks

* min style change

* removed ecode filter from filter_checks

* renamed cells back to columns + row_number

* added dataset check stubs

* implemented dataset checks

* fixed linting

* moved __inspect_table next to inspect for better reading

* fixed list.clear for python2

* added error limit to dataset errors

* updated readme

* updated readme

* added breaking note to readme

* added custom checks support

* implemented custom profiles

* fixed linting

* added options order_fields and infer_fields

* fixed extra_header

* added comments

* updated spec

* renamed unordered_headers to non_matching_header

* renamed col-number to column-number

* min

* updated added dataset errors to readme

* splitted error and check concpets

* fixed linting

* min

* fixed readme

* updated readme

* updated readme

* fixed readme

* fixed readme

* added guard assertion to checks

* updated custom checks API

* fixed linting, readme

* fixed linting, readme

* updated readme

* updated readme

* typo

* moved table errors to Inspector, deleted checks

* added ability to profilies to return errors

* fixed head checks not columns break

* rebased check on in-place erorrs update

* rebased profiles on in-place errors

* fixed readme

* fixed readme

* fixed readme

* fixed readme

* fixed readme

* no extra-header error if infer_fields is True

* implemented proper non-matching-header without ordering

* added custom_profiles, custom_checks arguments instead of global
registry

* moved default args to signatures

* removed make release (use github releases instead!)

* added return code to cli

* improved cli error formatting

* improved error messages, tests

* updated examples

* added custom examples

* added inspector tests

* added limit tests

* fixed tests

* fixed spec link

* added checks options to cli

* fixed profiles

* added description to setup

* added entry_points, keywords

* moved ckan profile to examples

* removed report from spec

* updated version to v1

* updated install instruction for now

* Fixed jsontableschema-error message (#133)

* Rebased on granular tabulator exceptions (#115)

* updated dependencies

* rebases on new tabulator exceptions

* Renamed profile to preset with simplified API (#124)

* renamed profile to preset

* removed errors, tables arguments from preset

* Added infer_schema option, updated preset API (#128)

* minor improvements

* added infer_schema option false by default

* Added support for schema constraints (#55)

* updated jsontableschema version

* implemented all constraints except unique

* implemented unique constraint check

* updated to jsontableschema-v0.8.2

* fixed linting

* Added tables preset (#125)

* added tables preset

* fixed linting

* added tables test

* Implemented order_fields option (#123)

* fixed column producing for body context

* removed column from schema checks only if name slugs are different

* implemented order_fields algo

* improved comments

* Rebased on external spec (#131)

Rebased on external spec

* Improved tests (#127)

* added prev version data examples

* implemented feature tests

* moved files to data

* updated verson

* added features

* marked spec test as xfail

* Rebased on spec-v1.0.0-alpha1 (#131)

* updated spec, added spec to API

* added config with checks order

* rebased in inspector on updated spec

* updated @check API

* rebased on spec message templates

* fixed cutom checks

* fixed linting

* Updated readme note
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New functionality
Projects
Archived in project
Development

No branches or pull requests

4 participants