Skip to content

Commit 8df792f

Browse files
authored
Merge pull request #83 from stac-extensions/fix-md-lint-format
adjust remark config to aligh `check-markdown` with `format-markdown` outputs
2 parents 631979d + 57ad319 commit 8df792f

File tree

9 files changed

+207
-85
lines changed

9 files changed

+207
-85
lines changed

.github/remark.yaml

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
settings:
2+
listItemIndent: '1'
3+
emphasis: '*'
4+
spacedTable: false
5+
paddedTable: true
6+
stringify:
7+
entities: false
8+
escape: false
19
plugins:
210
# Check links
311
- validate-links
@@ -14,8 +22,11 @@ plugins:
1422
- remark-lint-no-consecutive-blank-lines
1523
- - remark-lint-maximum-line-length
1624
- 120
25+
- remark-lint-no-literal-urls
1726
# GFM - autolink literals, footnotes, strikethrough, tables, tasklist
1827
- remark-gfm
28+
# Math Expression
29+
- remark-math
1930
# Code
2031
- remark-lint-fenced-code-flag
2132
- remark-lint-fenced-code-marker
@@ -33,14 +44,17 @@ plugins:
3344
- - remark-lint-no-shortcut-reference-link
3445
- false
3546
# Lists
36-
- remark-lint-list-item-bullet-indent
47+
- - remark-lint-list-item-bullet-indent
48+
- 'one'
3749
- remark-lint-ordered-list-marker-style
3850
- remark-lint-ordered-list-marker-value
3951
- remark-lint-checkbox-character-style
4052
- - remark-lint-unordered-list-marker-style
4153
- '-'
54+
- - remark-lint-list-item-content-indent
55+
- 1
4256
- - remark-lint-list-item-indent
43-
- space
57+
- 'space'
4458
# Tables
4559
- remark-lint-table-pipes
46-
- remark-lint-no-literal-urls
60+
- remark-lint-table-cell-padding

CHANGELOG.md

Lines changed: 41 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,29 +8,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
88
## [Unreleased](https://github.com/stac-extensions/mlm/tree/main)
99

1010
### Added
11+
1112
- Add [`huggingface/safetensors`](https://github.com/huggingface/safetensors)
12-
recommendations for `mlm:artifact_type` and corresponding ``mlm:framework`` values
13+
recommendations for `mlm:artifact_type` and corresponding `mlm:framework` values
1314
(fixes [#68](https://github.com/stac-extensions/mlm/issues/68)).
1415
- Add [`Flax`](https://github.com/google/flax) to the list of `mlm:framework` and
1516
the corresponding `mlm:artifact_type` SafeTensors backend in the JSON schema examples.
1617
- Add [`Paddle`](https://github.com/PaddlePaddle/Paddle) to the list of `mlm:framework`
1718
(fixes [#69](https://github.com/stac-extensions/mlm/issues/69)).
1819

1920
### Changed
21+
2022
- Update `stac-model==0.3.0` to provide `ValueScalingObject` from installed package.
2123

2224
### Deprecated
25+
2326
- n/a
2427

2528
### Removed
29+
2630
- n/a
2731

2832
### Fixed
33+
2934
- n/a
3035

3136
## [v1.4.0](https://github.com/stac-extensions/mlm/tree/v1.4.0)
3237

3338
### Added
39+
3440
- Add better descriptions about required and recommended *MLM Asset Roles* and
3541
their implications (fixes
3642
[#54](https://github.com/stac-extensions/mlm/issues/54)).
@@ -44,6 +50,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4450
for Ahead of Time Compilation, `jit` for Just-In Time Compilation.
4551

4652
### Changed
53+
4754
- Explicitly disallow `mlm:name`, `mlm:input`, `mlm:output` and `mlm:hyperparameters` at the Asset level.
4855
These fields describe the model as a whole and should therefore be defined in Item properties.
4956
- Moved `norm_type` to `value_scaling` object to better reflect the expected operation, which could be another
@@ -54,9 +61,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
5461
- expanded suggested `mlm:artifact_type` values to include Tensorflow/Keras.
5562

5663
### Deprecated
64+
5765
- n/a
5866

5967
### Removed
68+
6069
- Removed `norm_type` enum values that were ambiguous regarding their expected result.
6170
Instead, a `processing:expression` should be employed to explicitly define the calculation they represent.
6271
- Removed `norm_clip` property. It is now represented under `value_scaling` objects with a
@@ -66,6 +75,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
6675
Otherwise, the amount of `value_scaling` objects should match the number of bands or channels involved in the input.
6776

6877
### Fixed
78+
6979
- Fix missing `mlm:artifact_type` property check for a Model Asset definition
7080
(fixes <https://github.com/stac-extensions/mlm/issues/42>).
7181
The `mlm:artifact_type` is now mutually and exclusively required by the corresponding Asset with `mlm:model` role.
@@ -75,27 +85,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7585
## [v1.3.0](https://github.com/stac-extensions/mlm/tree/v1.3.0)
7686

7787
### Added
88+
7889
- Add `raster:bands` required property `name` for describing `mlm:input` bands
7990
(see [README - Bands and Statistics](README.md#bands-and-statistics) for details).
8091
- Add README warnings about new extension `eo` and `raster` versions.
8192

8293
### Changed
94+
8395
- Split `ModelBands` and `AnyBandsRef` definitions in the JSON schema to allow them to be referenced individually.
8496
- Move `AnyBandsRef` definition explicitly to STAC Item JSON schema, rather than implicitly inferred via `mlm:input`.
8597
- Modified the JSON schema to use a `if` check of the `type` (STAC Item or Collection) prior to validating further
8698
properties. This allows some validators (e.g. `pystac`) to better report the *real* error that causes the schema
8799
to fail, rather than reporting the first mismatching `type` case with a poor error description to debug the issue.
88100

89101
### Deprecated
102+
90103
- n/a
91104

92105
### Removed
106+
93107
- Removed `$comment` entries from the JSON schema that are considered as invalid by some parsers.
94108
- When `mlm:input` objects do **NOT** define band references (i.e.: `bands: []` is used), the JSON schema will not
95109
fail if an Asset with the `mlm:model` role contains a band definition. This is to allow MLM model definitions to
96110
simultaneously use some inputs with `bands` reference names while others do not.
97111

98112
### Fixed
113+
99114
- Band checks against [`eo`](https://github.com/stac-extensions/eo), [`raster`](https://github.com/stac-extensions/eo)
100115
or STAC Core 1.1 [`bands`](https://github.com/radiantearth/stac-spec/blob/master/commons/common-metadata.md#bands)
101116
when a `mlm:input` references names in `bands` are now properly validated.
@@ -110,47 +125,57 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
110125
## [v1.2.0](https://github.com/stac-extensions/mlm/tree/v1.2.0)
111126

112127
### Added
128+
113129
- Add the missing JSON schema `item_assets` definition under a Collection to ensure compatibility with
114130
the [Item Assets](https://github.com/stac-extensions/item-assets) extension, as mentioned this specification.
115131
- Add `ModelBand` representation using `name`, `format` and `expression` properties to allow derived band references
116132
(fixes [crim-ca/mlm-extension#7](https://github.com/stac-extensions/mlm/discussions/7)).
117133

118134
### Changed
135+
119136
- Adds a job to `.github/workflows/publish.yaml` to publish the `stac-model` package to PyPI.
120137

121138
### Deprecated
139+
122140
- n/a
123141

124142
### Removed
143+
125144
- Field `mlm:name` requirement to be unique. There is no way to guarantee this from a single Item's definition
126145
and their JSON schema validation. For uniqueness requirement, users should instead rely on the `id` property
127146
of the Item, which is ensured to be unique under the corresponding Collection, since it would not be retrievable
128147
otherwise (i.e.: `collections/{collectionID}/items/{itemID}`).
129148

130149
### Fixed
150+
131151
- Fix the validation strategy of the `mlm:model` role required by at least one Asset under a STAC Item.
132152
Although the role requirement was validated, the definition did not allow for other Assets without it to exist.
133153
- Correct `stac-model` version in code and publish matching release on PyPI.
134154

135155
## [v1.1.0](https://github.com/stac-extensions/mlm/tree/v1.1.0)
136156

137157
### Added
158+
138159
- Add pattern for `mlm:framework`, needing at least one alphanumeric character,
139160
without leading or trailing non-alphanumeric characters.
140161
- Add [`examples/item_eo_and_raster_bands.json`](examples/item_eo_and_raster_bands.json) demonstrating the original
141162
use case represented by the previous [`examples/item_eo_bands.json`](examples/item_eo_bands.json) contents.
142163
- Add a `description` field for `mlm:input` and `mlm:output` definitions.
143164

144165
### Changed
166+
145167
- Adjust `scikit-learn` and `Hugging Face` framework names to match the format employed by the official documentation.
146168

147169
### Deprecated
170+
148171
- n/a
149172

150173
### Removed
174+
151175
- Removed combination of `mlm:input` with `bands: null` that could never occur due to pre-requirement of `type: array`.
152176

153177
### Fixed
178+
154179
- Fix `AnyBands` definition and use in the JSON schema to better consider possible use cases with `eo` extension.
155180
- Fix [`examples/item_eo_bands.json`](examples/item_eo_bands.json) that was incorrectly also using `raster` extension.
156181
This is not fundamentally wrong, but it did not allow to validate the `eo` extension use case properly, since
@@ -159,6 +184,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
159184
## [v1.0.0](https://github.com/stac-extensions/mlm/tree/v1.0.0)
160185

161186
### Added
187+
162188
- more [Task Enum](README.md#task-enum) tasks
163189
- [Model Output Object](README.md#model-output-object)
164190
- `batch_size` and hardware summary
@@ -172,6 +198,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
172198
pixel-wise and patch-based classification
173199

174200
### Changed
201+
175202
- `disk_size` replaced by `file:size` (see [Best Practices - File Extension](best-practices.md#file-extension))
176203
- `memory_size` under `dlm:architecture` moved directly under Item properties as `mlm:memory_size`
177204
- replaced all hardware/accelerator/runtime definitions into distinct `mlm` fields directly under the
@@ -191,23 +218,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
191218
- updated JSON schema to reflect changes of MLM fields
192219

193220
### Deprecated
221+
194222
- any `dlm`-prefixed field or property
195223

196224
### Removed
225+
197226
- Data Object, replaced with [Model Input Object](./README.md#model-input-object) that uses the `name` field from
198227
the [common metadata band object][stac-bands] which also records `data_type` and `nodata` type
199228

200229
### Fixed
230+
201231
- n/a
202232

203233
[stac-bands]: https://github.com/radiantearth/stac-spec/blob/f9b3c59ba810541c9da70c5f8d39635f8cba7bcd/item-spec/common-metadata.md#bands
204234

205235
## [v1.0.0-beta3](https://github.com/crim-ca/dlm-extension/tree/v1.0.0-beta3)
206236

207237
### Added
238+
208239
- Added example model architecture summary text.
209240

210241
### Changed
242+
211243
- Modified `$id` if the extension schema to refer to the expected location when eventually released
212244
(`https://schemas.stacspec.org/v1.0.0-beta.3/extensions/dl-model/json-schema/schema.json`).
213245
- Replaced `dtype` field by `data_type` to better align with the corresponding field of
@@ -223,33 +255,41 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
223255
[raster-band-object]: https://github.com/stac-extensions/raster/#raster-band-object
224256

225257
### Deprecated
258+
226259
- Specifying `class_name_mapping` by array is deprecated.
227260
Direct mapping as an object of index to class name should be used.
228261
For backward compatibility, mapping as array and using nested objects with `index` and `class_name` properties
229262
is still permitted, although overly verbose compared to the direct mapping.
230263

231264
### Removed
265+
232266
- Field `nodata_value`.
233267
- Field `dtype`.
234268

235269
### Fixed
270+
236271
- Fixed references to other STAC extensions to use the official schema links on `https://stac-extensions.github.io/`.
237272
- Fixed examples to refer to local files.
238273
- Fixed formatting of tables and descriptions in README.
239274

240275
## [v1.0.0-beta2](https://github.com/crim-ca/dlm-extension/tree/v1.0.0-beta2)
241276

242277
### Added
278+
243279
- Initial release of the extension description and schema.
244280

245281
### Changed
282+
246283
- n/a
247284

248285
### Deprecated
286+
249287
- n/a
250288

251289
### Removed
290+
252291
- n/a
253292

254293
### Fixed
294+
255295
- n/a

0 commit comments

Comments
 (0)