Skip to content
This repository has been archived by the owner on Oct 28, 2024. It is now read-only.

Commit

Permalink
Flatten changelog, fix some broken links (#91)
Browse files Browse the repository at this point in the history
* Flatten changelog, fix some broken links

Fix frictionlessdata/datapackage#949

* Remove overview title, move up Table Dialect

* Pluralize constraints where useful
  • Loading branch information
peterdesmet authored Jun 26, 2024
1 parent 47d6c10 commit 5a5f31e
Showing 1 changed file with 36 additions and 60 deletions.
96 changes: 36 additions & 60 deletions content/docs/overview/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,69 +10,61 @@ This document includes all meaningful changes made to the **Data Package standar

> June 26, 2024
### Data Package

##### `$schema` (new)
##### `package.$schema` (new)

[`$schema`](/standard/glossary/#profile) replaced `profile` property with new extensions semantics ([#47](https://github.com/frictionlessdata/datapackage/pull/47)).

### Data Resource

##### `$schema` (new)
##### `resource.$schema` (new)

[`$schema`](/standard/glossary/#profile) replaced `profile` property with new extensions semantics ([#47](https://github.com/frictionlessdata/datapackage/pull/47)).

##### `sources` (updated)
##### `resource.sources` (updated)

[`sources`](/standard/resource/#sources) now inherits from a containing data package ([#57](https://github.com/frictionlessdata/datapackage/pull/57)).

##### `type` (new)
##### `resource.type` (new)

[`type`](/standard/data-resource/#type) allows to specify the resource type ([#51](https://github.com/frictionlessdata/datapackage/pull/51)).

### Table Dialect

##### `$schema` (new)
##### `dialect.$schema` (new)

[`$schema`](/standard/glossary/#profile) replaced `profile` property with new extensions semantics ([#47](https://github.com/frictionlessdata/datapackage/pull/47)).

##### `table` (new)
##### `dialect.table` (new)

[`table`](/standard/table-dialect/#table) allows to specify a table in a database ([#64](https://github.com/frictionlessdata/datapackage/pull/64)).

### Table Schema

##### `$schema` (new)
##### `schema.$schema` (new)

[`$schema`](/standard/glossary/#profile) replaced `profile` property with new extensions semantics ([#47](https://github.com/frictionlessdata/datapackage/pull/47)).

##### `missingValues` (updated)
##### `schema.missingValues` (updated)

[`missingValues`](/standard/table-schema/#missingValues) now allow to specify labeled missingness ([#68](https://github.com/frictionlessdata/datapackage/pull/68)).

##### `categories` (new)
##### `schema.categories` (new)

[`categories`](/standard/table-schema/#categories) adds suport for categorical data for the `string` and `integer` field types ([#68](https://github.com/frictionlessdata/datapackage/pull/68)).
[`categories`](/standard/table-schema/#categories) adds support for categorical data for the `string` and `integer` field types ([#68](https://github.com/frictionlessdata/datapackage/pull/68)).

##### `categoriesOrdered` (new)
##### `schema.categoriesOrdered` (new)

[`categoriesOrdered`](/standard/table-schema/#categoriesOrdered) adds suport for ordered categorical data for the `string` and `integer` field types ([#68](https://github.com/frictionlessdata/datapackage/pull/68)).

## v2.0-draft

> April 1, 2024
### Overview

The Data Package (v2) draft release includes a rich set of the specification improvements accepted by the Data Package Working Group during the active phase of the Data Package (v2) work.

### Data Package
##### Table Dialect (new)

[Table Dialect](/standard/table-dialect) is a new specification that superseeds and extends the CSV Dialect specification. It support other formats like JSON or Excel ([#41](https://github.com/frictionlessdata/datapackage/pull/41)).

##### `version` (updated)
##### `package.version` (updated)

[`version`](/standard/data-package/#version) is now included in the specification, while in Data Package v1 it was erroneously only part of the documentation ([#3](https://github.com/frictionlessdata/datapackage/pull/3)).

##### `contributors` (updated)
##### `package.contributors` (updated)

[`contributors`](/standard/data-package/#contributors) was updated:

Expand All @@ -81,95 +73,79 @@ The Data Package (v2) draft release includes a rich set of the specification imp
- `contributor.role` has been deprecated in favour of `contributor.roles`, see further ([#18](https://github.com/frictionlessdata/datapackage/pull/18)).
- `contributor.roles` is a new property that allows to specify multiple roles per contributor, rather than having to duplicate the contributor. It recommendeds to follow an established vocabulary and has suggested values that are different from the deprecated `contributor.role` ([#18](https://github.com/frictionlessdata/datapackage/pull/18)).

##### `sources` (updated)
##### `package.sources` (updated)

[`sources`](/standard/data-package/#sources) was updated:

- `source.title` is no longer required ([#7](https://github.com/frictionlessdata/datapackage/pull/7)).
- `source.version` is a new property to specify which version of a source was used ([#10](https://github.com/frictionlessdata/datapackage/pull/10)).

### Data Resource

##### `name` (updated)
##### `resource.name` (updated)

[name](/standard/data-resource/#name) now allows any string. It previously required the name to only consist of lowercase alphanumeric characters plus `.`, `-` and `_`. The property is still required and must be unique among resources ([#27](https://github.com/frictionlessdata/datapackage/pull/27)).

##### `path` (updated)
##### `resource.path` (updated)

[path](/standard/data-resource/#path-or-data-required) now explicitely forbids hidden folders (starting with dot `.`) ([#19](https://github.com/frictionlessdata/datapackage/pull/19)).

##### `encoding` (updated)
##### `resource.encoding` (updated)

[encoding](/standard/data-resource/#encoding)'s definition has been updated to support binary formats like Parquet ([#15](https://github.com/frictionlessdata/datapackage/pull/15)).

### Table Dialect

[Table Dialect](/standard/table-dialect) is a new specification that superseeds and extends the CSV Dialect specification. It support other formats like JSON or Excel ([#41](https://github.com/frictionlessdata/datapackage/pull/41)).

### Table Schema

#### Schema

##### `fieldsMatch` (new)
##### `schema.fieldsMatch` (new)

[fieldsMatch](/standard/table-schema/#fieldsMatch) allows to specify how fields in a Table Schema match the fields in the data source. The default (`exact`) matches the Data Package v1 behaviour, but other values (e.g. `subset`, `superset`) allow to define fewer or more fields and match on field names. This new property extends and makes explicit the `schema_sync` option in Frictionless Framework ([#39](https://github.com/frictionlessdata/datapackage/pull/39)).

##### `primaryKey` (updated)
##### `schema.primaryKey` (updated)

[`primaryKey`](/standard/table-schema/#primaryKey) should now always be an array of strings, not a string ([#28](https://github.com/frictionlessdata/datapackage/pull/28)).

##### `uniqueKeys` (new)
##### `schema.uniqueKeys` (new)

[`uniqueKeys`](/standard/table-schema/#uniqueKeys) allows to specify which fields are required to have unique logical values. It is an alternative to `field.contraints.unique` and is modelled after the corresponding SQL feature ([#30](https://github.com/frictionlessdata/datapackage/pull/30)).

##### `foreignKeys` (updated)
##### `schema.foreignKeys` (updated)

[`foreignKeys`](/standard/table-schema/#foreignKeys) was updated:

- It should now always be an array of strings, not a string ([#28](https://github.com/frictionlessdata/datapackage/pull/28)).
- `foreignKeys.reference.resource` can now be omitted for self-referencing foreign keys. Previously it required setting `resource` to an empty string ([#29](https://github.com/frictionlessdata/datapackage/pull/29)).

#### Fields

##### `missingValues` (new)
##### `field.missingValues` (new)

[`missingValues`](/standard/table-schema/#missingValues) allows to specify missing values per field, and overwrites `missingValues` specified at a resource level ([#24](https://github.com/frictionlessdata/datapackage/pull/24)).
[`missingValues`](/standard/table-schema/#field-missingValues) allows to specify missing values per field, and overwrites `missingValues` specified at a resource level ([#24](https://github.com/frictionlessdata/datapackage/pull/24)).

#### Field Types

##### `integer` (updated)
##### `integer` field type (updated)

[`integer`](/standard/table-schema/#integer) now has a `groupChar` property. It was already available for `number` ([#6](https://github.com/frictionlessdata/datapackage/pull/6)).

##### `list` (new)
##### `list` field type (new)

[`list`](/standard/table-schema/#list) allows to specify fields containing collections of primary values separated by a delimiter (e.g. `value1,value2`) ([#38](https://github.com/frictionlessdata/datapackage/pull/38)).

##### `datetime` (updated)
##### `datetime` field type (updated)

[`datetime`](/standard/table-schema/#datetime)'s default `format` is now extended to allow optional milliseconds and timezone parts ([#23](https://github.com/frictionlessdata/datapackage/pull/23)).

##### `geopoint` (updated)
##### `geopoint` field type (updated)

[`geopoint`](/standard/table-schema/#geopoint)'s definition now clarifies that floating point numbers can be used for coordinate definitions ([#14](https://github.com/frictionlessdata/datapackage/pull/14)).

##### `any` (updated)
##### `any` field type (updated)

[`any`](/standard/table-schema/#any) is now the default field type and clarifies that the field type should not be inferred if not provided ([#13](https://github.com/frictionlessdata/datapackage/pull/13)).

#### Field Constraints

##### `minimum` and `maximum` (updated)
##### `minimum` and `maximum` field constraints (updated)

[`minimum`](/standard/table-schema/#minimum) and [`maximum`](/standard/table-schema/#maximum) are now extended to support the `duration` field type ([#8](https://github.com/frictionlessdata/datapackage/pull/8)).

##### `exclusiveMinimum` and `exclusiveMaximum` (new)
##### `exclusiveMinimum` and `exclusiveMaximum` field constraints (new)

[`exclusiveMinimum`](/specifications/table-schema/#exclusiveMinimum) and [`exclusiveMaximum`](/specifications/table-schema/#exclusiveMaximum) can be used to specify exclusive minimum and maximum values ([#11](https://github.com/frictionlessdata/datapackage/pull/11)).
[`exclusiveMinimum`](/standard/table-schema/#exclusiveMinimum) and [`exclusiveMaximum`](/standard/table-schema/#exclusiveMaximum) can be used to specify exclusive minimum and maximum values ([#11](https://github.com/frictionlessdata/datapackage/pull/11)).

##### `jsonschema` (new)
##### `jsonschema` field constraint (new)

[`jsonSchema`](/specifications/table-schema/#jsonSchema) can be used for the `object` and `array` field types ([#32](https://github.com/frictionlessdata/datapackage/pull/32)).
[`jsonSchema`](/standard/table-schema/#jsonSchema) can be used for the `object` and `array` field types ([#32](https://github.com/frictionlessdata/datapackage/pull/32)).

## v1.0

Expand Down

0 comments on commit 5a5f31e

Please sign in to comment.