mime-types-data 3.2024.1203 → 3.2025.0220
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/{History.md → CHANGELOG.md} +81 -39
- data/CONTRIBUTING.md +150 -0
- data/CONTRIBUTORS.md +54 -0
- data/{Licence.md → LICENCE.md} +1 -1
- data/Manifest.txt +5 -19
- data/README.md +31 -30
- data/Rakefile +42 -116
- data/SECURITY.md +1 -1
- data/data/mime-types.json +1 -1
- data/data/mime.content_type.column +13 -0
- data/data/mime.docs.column +13 -0
- data/data/mime.encoding.column +13 -0
- data/data/mime.flags.column +13 -0
- data/data/mime.friendly.column +13 -0
- data/data/mime.pext.column +13 -0
- data/data/mime.use_instead.column +13 -0
- data/data/mime.xrefs.column +49 -36
- data/lib/mime/types/data.rb +1 -1
- metadata +20 -91
- data/Contributing.md +0 -203
- data/types/application.yaml +0 -19098
- data/types/audio.yaml +0 -1753
- data/types/chemical.yaml +0 -71
- data/types/conference.yaml +0 -9
- data/types/drawing.yaml +0 -15
- data/types/example.yaml +0 -1
- data/types/font.yaml +0 -65
- data/types/haptics.yaml +0 -28
- data/types/image.yaml +0 -1329
- data/types/message.yaml +0 -247
- data/types/model.yaml +0 -454
- data/types/multipart.yaml +0 -187
- data/types/text.yaml +0 -1281
- data/types/video.yaml +0 -1158
- data/types/world.yaml +0 -8
- /data/{Code-of-Conduct.md → CODE_OF_CONDUCT.md} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 335e91bdeffdddf816f95c795c8181d90054c62ab203da8e9fc7bba4d401cd32
|
4
|
+
data.tar.gz: e134b524974d525e0bd986038913f80ccdb22732e7e3ad90dd2ecd605882e709
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 35ba10a184bd975861f12d56876e2a942c8cceb5b6cf35bb0922265fdd6899202db9692ea2c4288c39ac65065cecb6a20138b87b64c0b2e4e84eae1e4670938b
|
7
|
+
data.tar.gz: 6ff470db525f3f5f68e81272ce9fc56d56ea5a5dd4f80c7ff00c1bf610dbecf41c0697a1cfcc117e24c396810cac65b470fa4f05e67909210e00463399c01789
|
data/{History.md → CHANGELOG.md}
RENAMED
@@ -2,6 +2,44 @@
|
|
2
2
|
|
3
3
|
<!-- automatic-release -->
|
4
4
|
|
5
|
+
## 3.2025.0220 / 2025-02-20
|
6
|
+
|
7
|
+
- Updated the Apache and IANA media registry entries as of release date
|
8
|
+
|
9
|
+
- Added [trusted publishing][tp] for fully automated releases. Developed by
|
10
|
+
Samuel Giddins in [#109][pull-109], merged manually with some updates.
|
11
|
+
|
12
|
+
## 3.2025.0204 / 2025-02-04
|
13
|
+
|
14
|
+
- Updated the Apache and IANA media registry entries as of release date
|
15
|
+
|
16
|
+
- Added the Changelog URL to the README so that RubyGems.org is updated with the
|
17
|
+
`changelog_uri` on release. Contributed by Mark Young in [#96][pull-96].
|
18
|
+
|
19
|
+
- Fixed an issue with automated releases that added thousands of files because
|
20
|
+
`vendor/` was no longer ignored.
|
21
|
+
|
22
|
+
- Fixed the automated release builder process to handle the case when the
|
23
|
+
`automatic-release` tag is followed by a `## NEXT / YYYY-MM-DD` header so that
|
24
|
+
changes merged normally are picked up on automatic releases. [#98][pull-98]
|
25
|
+
|
26
|
+
## 3.2025.0107 / 2025-01-07
|
27
|
+
|
28
|
+
- Updated the Apache and IANA media registry entries as of release date
|
29
|
+
- Restructured documentation for how I prefer to manage Hoe projects now.
|
30
|
+
- Reworked the Rakefile because all data updates are now managed by GitHub
|
31
|
+
Actions and should not be managed manually any longer.
|
32
|
+
|
33
|
+
- `rake release:prepare` now does the same work as `rake release:gha`, but
|
34
|
+
does not commit or create a pull request.
|
35
|
+
|
36
|
+
- `rake convert` no longer has any subtasks.
|
37
|
+
|
38
|
+
- `rake update` has been removed with no replacement.
|
39
|
+
|
40
|
+
- Updated `.hoerc` to properly exclude `support/` and `types/` from the
|
41
|
+
manifest.
|
42
|
+
|
5
43
|
## 3.2024.1203 / 2024-12-03
|
6
44
|
|
7
45
|
- Updated the Apache and IANA media registry entries as of release date
|
@@ -23,7 +61,7 @@
|
|
23
61
|
- Updated the Apache and IANA media registry entries as of release date.
|
24
62
|
|
25
63
|
- Added `.jxl` extension for `image/jxl`. Contributed by Shane Eskritt in
|
26
|
-
[#81][
|
64
|
+
[#81][pull-81].
|
27
65
|
|
28
66
|
## 3.2024.0806 / 2024-08-06
|
29
67
|
|
@@ -38,7 +76,7 @@
|
|
38
76
|
- This update adds a new `haptics/` group with three media types defined.
|
39
77
|
|
40
78
|
- Moved extensions from `audio/x-aac` to `audio/aac` and mark `audio/x-aac` as
|
41
|
-
obsolete. Based on [#77][
|
79
|
+
obsolete. Based on [#77][pull-77] by Samuel Williams.
|
42
80
|
|
43
81
|
- Made the same changes for `audio/flac` and `audio/matroska`.
|
44
82
|
|
@@ -101,8 +139,8 @@
|
|
101
139
|
information available to deprecate `text/javascript` in favour of
|
102
140
|
`application/javascript`. Since the previous update (2022-01-05), IANA has
|
103
141
|
officially deprecated `application/javascript` in favour of `text/javascript`.
|
104
|
-
Samuel Williams discovered this in [#55][
|
105
|
-
were marked obsolete in version 3.2023.0218.
|
142
|
+
Samuel Williams discovered this in [#55][issue-55] by noting that all `js`
|
143
|
+
types were marked obsolete in version 3.2023.0218.
|
106
144
|
|
107
145
|
A hotfix has been applied to resolve this. However, note that
|
108
146
|
`application/javascript` will not be returned by default, only
|
@@ -113,15 +151,15 @@
|
|
113
151
|
- Updated the Apache and IANA media registry entries as of release date.
|
114
152
|
|
115
153
|
- Mohammed Gad added the `jfif` file extension for `image/jpeg` text format.
|
116
|
-
[#52][
|
154
|
+
[#52][pull-52]
|
117
155
|
|
118
156
|
- Reworked the loading of IANA provisional media registries to merge them into
|
119
157
|
the top-level media-type registries instead of a standalone registry file.
|
120
|
-
[#53][
|
158
|
+
[#53][pull-53] originally identified by Chris Salzberg in [#50][pull-50].
|
121
159
|
|
122
160
|
It is worth noting that this is an _imperfect_ solution as if a media type is
|
123
161
|
provisionally registered and withdrawn, it will linger in the registry with no
|
124
|
-
clean way of identifying them at the moment. See [#54][
|
162
|
+
clean way of identifying them at the moment. See [#54][issue-54].
|
125
163
|
|
126
164
|
This release also fixes [ruby-mime-types#163][ruby-mime-types#163], where logs
|
127
165
|
show "Type application/netcdf is already registered as a variant of
|
@@ -132,25 +170,25 @@
|
|
132
170
|
- Updated the Apache and IANA media registry entries as of release date.
|
133
171
|
|
134
172
|
- Fixed an incorrect definition of `image/bmp`, which had been marked obsolete
|
135
|
-
and later registered. Fixed [#48][
|
173
|
+
and later registered. Fixed [#48][issue-48], found by William T. Nelson.
|
136
174
|
|
137
175
|
## 3.2021.1115 / 2021-11-15
|
138
176
|
|
139
177
|
- Updated the Apache and IANA media registry entries as of release date.
|
140
178
|
|
141
179
|
- Added conversion utilities that support the `mini_mime` data format. These
|
142
|
-
have been ported from the [
|
180
|
+
have been ported from the [mini\_mime][mini_mime] repository. [#47][pull-47]
|
143
181
|
|
144
|
-
- Added IANA provisional media registries. Added some notes to
|
182
|
+
- Added IANA provisional media registries. Added some notes to CONTRIBUTING.md
|
145
183
|
about the transient nature of the provisional registration data. This was
|
146
|
-
triggered in part by a pull request by Jon Sneyers. Thanks! [#45][
|
147
|
-
[#43][
|
184
|
+
triggered in part by a pull request by Jon Sneyers. Thanks! [#45][pull-45],
|
185
|
+
[#43][pull-43]
|
148
186
|
|
149
187
|
## 3.2021.0901 / 2021-09-01
|
150
188
|
|
151
189
|
- Updated the Apache and IANA media registry entries as of release date.
|
152
190
|
|
153
|
-
- Added file extension for WebVTT text format. [#46][
|
191
|
+
- Added file extension for WebVTT text format. [#46][pull-46]
|
154
192
|
|
155
193
|
## 3.2021.0704 / 2021-07-04
|
156
194
|
|
@@ -160,7 +198,7 @@
|
|
160
198
|
|
161
199
|
- Updated the Apache and IANA media registry entries as of release date.
|
162
200
|
|
163
|
-
- Added file extension for AVIF video format. [#40][
|
201
|
+
- Added file extension for AVIF video format. [#40][pull-40]
|
164
202
|
|
165
203
|
## 3.2021.0212 / 2021-02-12
|
166
204
|
|
@@ -175,67 +213,68 @@
|
|
175
213
|
|
176
214
|
- Updated the IANA media registry entries as of release date.
|
177
215
|
|
178
|
-
- Added `application/x-zip-compressed`. [#36][
|
216
|
+
- Added `application/x-zip-compressed`. [#36][pull-36]
|
179
217
|
|
180
218
|
- Updated the contributing guide to include information about the release
|
181
|
-
process as described in [#18][
|
219
|
+
process as described in [#18][issue-18]
|
182
220
|
|
183
|
-
- Corrected a misspelling of Yoran Brondsema
|
221
|
+
- Corrected a misspelling of Yoran Brondsema's name. Sorry, Yoran.
|
222
|
+
[#35][pull-35]
|
184
223
|
|
185
224
|
## 3.2020.0512 / 2020-05-12
|
186
225
|
|
187
226
|
- Updated the IANA media registry entries as of release date.
|
188
227
|
|
189
|
-
- Added file extensions for HEIC image types. [#34][
|
228
|
+
- Added file extensions for HEIC image types. [#34][pull-34]
|
190
229
|
|
191
230
|
## 3.2020.0425 / 2020-04-25
|
192
231
|
|
193
232
|
- Updated the IANA media registry entries as of release date.
|
194
233
|
|
195
234
|
- Added several RAW image types based on data from GNOME RAW Thumbnailer.
|
196
|
-
[#33][
|
235
|
+
[#33][pull-33] fixing [#32][issue-32]
|
197
236
|
|
198
|
-
- Added `audio/wav`. [#31][
|
237
|
+
- Added `audio/wav`. [#31][pull-31]
|
199
238
|
|
200
|
-
- Added a type for Smarttech notebook files. [#30][
|
239
|
+
- Added a type for Smarttech notebook files. [#30][pull-30]
|
201
240
|
|
202
|
-
- Added an alias for audio/m4a files. [#29][
|
241
|
+
- Added an alias for audio/m4a files. [#29][pull-29]
|
203
242
|
|
204
|
-
- Added application/x-ms-dos-executable. [#28][
|
243
|
+
- Added application/x-ms-dos-executable. [#28][pull-28]
|
205
244
|
|
206
245
|
## 3.2019.1009 / 2019-10-09
|
207
246
|
|
208
247
|
- Updated the IANA media registry entries as of release date.
|
209
248
|
|
210
249
|
- Reordered the `.ai` extension so that it is not the preferred extension for
|
211
|
-
`application/pdf` [#24][
|
250
|
+
`application/pdf` [#24][pull-24]
|
212
251
|
|
213
252
|
## 3.2019.0904 / 2019-09-04
|
214
253
|
|
215
254
|
- Updated the IANA media registry entries as of release date.
|
216
255
|
|
217
256
|
- Moved the `.ai` extension from `application/postscript` to `application/pdf`.
|
218
|
-
[#23][
|
257
|
+
[#23][pull-23] fixing [#22][issue-22]
|
219
258
|
|
220
259
|
## 3.2019.0331 / 2019-03-31
|
221
260
|
|
222
261
|
- Updated the IANA media registry entries as of release date.
|
223
262
|
|
224
|
-
- Added support for `application/wasm` with extension `.wasm`. [#21][
|
263
|
+
- Added support for `application/wasm` with extension `.wasm`. [#21][pull-21]
|
225
264
|
|
226
|
-
- Fixed `application/ecmascript` extensions. [#20][
|
265
|
+
- Fixed `application/ecmascript` extensions. [#20][pull-20]
|
227
266
|
|
228
267
|
## 3.2018.0812 / 2018-08-12
|
229
268
|
|
230
|
-
- Added `.xsd` extension to `text/xml`. [#10][
|
269
|
+
- Added `.xsd` extension to `text/xml`. [#10][pull-10]
|
231
270
|
|
232
271
|
- Added `.js` and `.mjs` extensions to `text/ecmascript` and `text/javascript`.
|
233
|
-
[#11][
|
272
|
+
[#11][pull-11]
|
234
273
|
|
235
|
-
- Added `.ipa` extension to `application/octet-stream`. [#12][
|
274
|
+
- Added `.ipa` extension to `application/octet-stream`. [#12][pull-12]
|
236
275
|
|
237
276
|
- Moved extensions `.markdown` and `.md` and added `.mkd` extension to
|
238
|
-
`text/markdown`. [#13][
|
277
|
+
`text/markdown`. [#13][pull-13]
|
239
278
|
|
240
279
|
- Because of a bug found with mime-types 3 before 3.2.1, this version requires
|
241
280
|
mime-types 3.1 or later to manage data.
|
@@ -254,7 +293,7 @@
|
|
254
293
|
- Updated the known extension list for application/octet-stream and
|
255
294
|
application/pgp-encrypted to include gpg as an extension. Fixes
|
256
295
|
[#3](https://github.com/mime-types/mime-types-data/pull/3) by Tao Guo
|
257
|
-
(@taoza).
|
296
|
+
([@taoza](https://github.com/taoza)).
|
258
297
|
- Updated the IANA media registry entries as of release date:
|
259
298
|
|
260
299
|
- Updated metadata for application/EmergencyCallData.Comment+xml,
|
@@ -307,7 +346,7 @@
|
|
307
346
|
## 3.2015.1120 / 2015-11-20
|
308
347
|
|
309
348
|
- Extracted from [ruby-mime-types][rmt].
|
310
|
-
- Added a [Code of Conduct].
|
349
|
+
- Added a [Code of Conduct][Code of Conduct].
|
311
350
|
- The versioning has changed to be semantic on format plus date in two parts.
|
312
351
|
|
313
352
|
- All registry formats have been updated to remove deprecated data.
|
@@ -348,7 +387,7 @@
|
|
348
387
|
|
349
388
|
## 2.6 / 2015-05-25
|
350
389
|
|
351
|
-
- Steven Michael Thomas (@stevenmichaelthomas) added `woff2` as an extension to
|
390
|
+
- Steven Michael Thomas ([@stevenmichaelthomas](https://github.com/stevenmichaelthomas)) added `woff2` as an extension to
|
352
391
|
application/font-woff, [ruby-mime-types#99][ruby-mime-types#99].
|
353
392
|
- Updated the IANA media registry entries as of release date:
|
354
393
|
- Updated metadata for application/jose, application/jose+json,
|
@@ -380,17 +419,17 @@
|
|
380
419
|
(RFC7396), application/smil, application/vnd.arastra.swi,
|
381
420
|
application/vnd.geocube+xml, application/vnd.gmx, application/xhtml+xml,
|
382
421
|
text/directory.
|
383
|
-
- Andy Brody (@ab) fixed a pair of embarrassing typos in text/csv and
|
422
|
+
- Andy Brody ([@ab](https://github.com/ab)) fixed a pair of embarrassing typos in text/csv and
|
384
423
|
text/tab-separated-values,
|
385
424
|
[ruby-mime-types#89](https://github.com/mime-types/ruby-mime-types/pull/89).
|
386
|
-
- Aggelos Avgerinos (@eavgerinos) added the unregistered MIME type
|
425
|
+
- Aggelos Avgerinos ([@eavgerinos](https://github.com/eavgerinos)) added the unregistered MIME type
|
387
426
|
image/x-ms-bmp with the extension `bmp`,
|
388
427
|
[ruby-mime-types#90](https://github.com/mime-types/ruby-mime-types/pull/90).
|
389
428
|
|
390
429
|
## 2.4.2 / 2014-10-15
|
391
430
|
|
392
431
|
- Added application/vnd.ms-outlook as an unregistered MIME type with the
|
393
|
-
extension `msg`. Provided by @keerthisiv in
|
432
|
+
extension `msg`. Provided by [@keerthisiv](https://github.com/keerthisiv) in
|
394
433
|
[ruby-mime-types#72](https://github.com/mime-types/ruby-mime-types/pull/72).
|
395
434
|
|
396
435
|
## 2.4.1 / 2014-10-07
|
@@ -448,7 +487,7 @@
|
|
448
487
|
## 2.2 / 2014-03-14
|
449
488
|
|
450
489
|
- Added <tt>.sj</tt> to `application/javascript` as provided by Brandon
|
451
|
-
Galbraith (@brandongalbraith) in
|
490
|
+
Galbraith ([@brandongalbraith](https://github.com/brandongalbraith)) in
|
452
491
|
[ruby-mime-types#58](https://github.com/mime-types/ruby-mime-types/pull/58).
|
453
492
|
- Marked application/excel and application/x-excel as obsolete in favour of
|
454
493
|
application/vnd.ms-excel per
|
@@ -612,8 +651,11 @@
|
|
612
651
|
[#55]: https://github.com/mime-types/mime-types-data/issues/55
|
613
652
|
[#77]: https://github.com/mime-types/mime-types-data/pull/77
|
614
653
|
[#81]: https://github.com/mime-types/mime-types-data/pull/81
|
654
|
+
[#96]: https://github.com/mime-types/mime-types-data/pull/96
|
655
|
+
[#98]: https://github.com/mime-types/mime-types-data/pull/98
|
615
656
|
[rmt]: https://github.com/mime-types/ruby-mime-types
|
616
|
-
[code of conduct]:
|
657
|
+
[code of conduct]: CODE_OF_CONDUCT.md
|
617
658
|
[mini_mime]: https://github.com/discourse/mini_mime/issues/41
|
618
659
|
[ruby-mime-types#99]: https://github.com/mime-types/ruby-mime-types/pull/99
|
619
660
|
[ruby-mime-types#163]: https://github.com/mime-types/ruby-mime-types/issues/163
|
661
|
+
[tp]: https://guides.rubygems.org/trusted-publishing/
|
data/CONTRIBUTING.md
ADDED
@@ -0,0 +1,150 @@
|
|
1
|
+
# Contributing
|
2
|
+
|
3
|
+
Contribution to mime-types-data is encouraged in any form: a bug report, new
|
4
|
+
MIME type definitions, or additional code to help manage the MIME types. There
|
5
|
+
are a few DOs and DON'Ts for contributions.
|
6
|
+
|
7
|
+
- DO:
|
8
|
+
|
9
|
+
- Keep the coding style that already exists for any updated Ruby code (support
|
10
|
+
or otherwise). I use [Standard Ruby][standardrb] for linting and formatting.
|
11
|
+
|
12
|
+
- Use thoughtfully-named topic branches for contributions. Rebase your commits
|
13
|
+
into logical chunks as necessary.
|
14
|
+
|
15
|
+
- Use [quality commit messages][qcm].
|
16
|
+
|
17
|
+
- Add your name or GitHub handle to `CONTRIBUTORS.md` and a record in the
|
18
|
+
`CHANGELOG.md` as a separate commit from your main change. (Follow the style
|
19
|
+
in the `CHANGELOG.md` and provide a link to your PR.)
|
20
|
+
|
21
|
+
- DO NOT:
|
22
|
+
|
23
|
+
- Modify `VERSION` in `lib/mime/types/data.rb`. When your patch is accepted
|
24
|
+
and a release is made, the version will be updated at that point. Most
|
25
|
+
likely, once merged, your release will be rolled into the next automatic
|
26
|
+
release.
|
27
|
+
|
28
|
+
- Modify `mime-types-data.gemspec`; it is a generated file. (You _may_ use
|
29
|
+
`rake gemspec` to regenerate it if your change involves metadata related to
|
30
|
+
gem itself).
|
31
|
+
|
32
|
+
- Modify the `Gemfile`.
|
33
|
+
|
34
|
+
- Modify any files in `data/`. Any changes to be captured here will be
|
35
|
+
automatically updated on the next release.
|
36
|
+
|
37
|
+
Although mime-types-data was extracted from the [Ruby mime-types][rmt] gem and
|
38
|
+
the support files are written in Ruby, the _target_ of mime-types-data is any
|
39
|
+
implementation that wishes to use the data as a MIME types registry, so I am
|
40
|
+
particularly interested in tools that will create a mime-types-data package for
|
41
|
+
other languages.
|
42
|
+
|
43
|
+
## Adding or Modifying MIME Types
|
44
|
+
|
45
|
+
The Ruby mime-types gem loads its data from files encoded in the `data`
|
46
|
+
directory in this gem by loading `mime-types-data` and reading
|
47
|
+
MIME::Types::Data::PATH. These files are compiled files from the collection of
|
48
|
+
data in the `types` directory.
|
49
|
+
|
50
|
+
> [!WARNING]
|
51
|
+
>
|
52
|
+
> Pull requests that include changes to files in `data/` will require amendment
|
53
|
+
> to revert these files.
|
54
|
+
|
55
|
+
New or modified MIME types should be edited in the appropriate YAML file under
|
56
|
+
`types`. The format is as shown below for the `application/xml` MIME type in
|
57
|
+
`types/application.yml`.
|
58
|
+
|
59
|
+
```yaml
|
60
|
+
- !ruby/object:MIME::Type
|
61
|
+
content-type: application/xml
|
62
|
+
encoding: 8bit
|
63
|
+
extensions:
|
64
|
+
- xml
|
65
|
+
- xsl
|
66
|
+
references:
|
67
|
+
- IANA
|
68
|
+
- RFC3023
|
69
|
+
xrefs:
|
70
|
+
rfc:
|
71
|
+
- rfc3023
|
72
|
+
registered: true
|
73
|
+
```
|
74
|
+
|
75
|
+
There are other fields that can be added, matching the fields discussed in the
|
76
|
+
documentation for MIME::Type. Pull requests for MIME types should just contain
|
77
|
+
the changes to the YAML files for the new or modified MIME types; I will convert
|
78
|
+
the YAML files to JSON prior to a new release. I would rather not have to verify
|
79
|
+
that the JSON matches the YAML changes, which is why it is not necessary to
|
80
|
+
convert for the pull request.
|
81
|
+
|
82
|
+
If you are making a change for a private fork, use `rake convert:yaml:json` to
|
83
|
+
convert the YAML to JSON, or `rake convert:yaml:columnar` to convert it to the
|
84
|
+
new columnar format.
|
85
|
+
|
86
|
+
### Updating Types from the IANA or Apache Lists
|
87
|
+
|
88
|
+
If you are maintaining a private fork and wish to update your copy of the MIME
|
89
|
+
types registry used by this gem, you can do this with the rake tasks:
|
90
|
+
|
91
|
+
```sh
|
92
|
+
$ rake mime:iana
|
93
|
+
$ rake mime:apache
|
94
|
+
```
|
95
|
+
|
96
|
+
#### A Note on Provisional Types
|
97
|
+
|
98
|
+
Provisionally registered types from IANA are contained in the `types/*.yaml`
|
99
|
+
files. Per IANA,
|
100
|
+
|
101
|
+
> This registry, unlike some other provisional IANA registries, is only for
|
102
|
+
> temporary use. Entries in this registry are either finalized and moved to the
|
103
|
+
> main media types registry or are abandoned and deleted. Entries in this
|
104
|
+
> registry are suitable for use for development and test purposes only.
|
105
|
+
|
106
|
+
Provisional types are rewritten when updated, so pull requests to manually
|
107
|
+
customize provisional types (such as with extensions) are considered lower
|
108
|
+
priority. It is recommended that any updates required to the data be performed
|
109
|
+
in your application if you require provisional types.
|
110
|
+
|
111
|
+
## The Release Process
|
112
|
+
|
113
|
+
The release process is almost completely automated, where upstream MIME types
|
114
|
+
will be updated weekly (on Tuesdays) and be presented in a reviewable pull
|
115
|
+
request. Once merged, I need to perform a release and the update is complete.
|
116
|
+
|
117
|
+
With the addition of [trusted publishing][tp], there should no longer be a need
|
118
|
+
for manual releases outside of the update cycle. Pull requests merged between
|
119
|
+
cycles will be released on the next cycle.
|
120
|
+
|
121
|
+
If it becomes necessary to perform a manual release, IANA updates should be
|
122
|
+
performed manually.
|
123
|
+
|
124
|
+
1. Review any outstanding issues or pull requests to see if anything needs to be
|
125
|
+
addressed. This is necessary because there is no automated source for
|
126
|
+
extensions for the thousands of MIME entries. (Suggestions and/or pull
|
127
|
+
requests for same would be deeply appreciated.)
|
128
|
+
2. `bundle install`
|
129
|
+
3. Review the changes to make sure that the changes are sane. The IANA data
|
130
|
+
source changes from time to time, resulting in big changes or even a broken
|
131
|
+
step 4. (The most recent change was the addition of the `font/*` top-level
|
132
|
+
category.)
|
133
|
+
4. Write up the changes in `CHANGELOG.md`. If any PRs have been merged, these
|
134
|
+
should be noted specifically and contributions should be added in
|
135
|
+
`Contributing.md`.
|
136
|
+
5. Ensure that the `VERSION` in `lib/mime/types/data.rb` is updated with the
|
137
|
+
current date UTC.
|
138
|
+
6. Run `rake gemspec` to ensure that `mime-types.gemspec` has been updated.
|
139
|
+
7. Commit the changes and push to GitHub. The automated trusted publishing
|
140
|
+
workflow will pick up the changes.
|
141
|
+
|
142
|
+
This is based on an issue [#18][issue-18].
|
143
|
+
|
144
|
+
[issue-18]: https://github.com/mime-types/mime-types-data/issues/18
|
145
|
+
[hoe]: https://github.com/seattlerb/hoe
|
146
|
+
[qcm]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
|
147
|
+
[release-gem]: https://github.com/rubygems/release-gem
|
148
|
+
[rmt]: https://github.com/mime-types/ruby-mime-types/
|
149
|
+
[standardrb]: https://github.com/standardrb/standard
|
150
|
+
[tp]: https://guides.rubygems.org/trusted-publishing/
|
data/CONTRIBUTORS.md
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
# Contributors
|
2
|
+
|
3
|
+
- Austin Ziegler created mime-types.
|
4
|
+
|
5
|
+
Thanks to everyone else who has contributed to mime-types:
|
6
|
+
|
7
|
+
- Aaron Patterson
|
8
|
+
- Aggelos Avgerinos
|
9
|
+
- Alessio Parma
|
10
|
+
- Alex Balhatchet
|
11
|
+
- Andre Pankratz
|
12
|
+
- Andrey Eremin
|
13
|
+
- Andy Brody
|
14
|
+
- Arnaud Meuret
|
15
|
+
- Bradley Meck
|
16
|
+
- Brandon Galbraith
|
17
|
+
- Chris Gat
|
18
|
+
- Chris Salzberg
|
19
|
+
- David Genord
|
20
|
+
- Eric Marden
|
21
|
+
- Garret Alfert
|
22
|
+
- Godfrey Chan
|
23
|
+
- Greg Brockman
|
24
|
+
- Hans de Graaff
|
25
|
+
- Henrik Hodne
|
26
|
+
- Jeremy Evans
|
27
|
+
- John Gardner
|
28
|
+
- Jon Sneyers
|
29
|
+
- Jonas Petersen
|
30
|
+
- Juanito Fatas
|
31
|
+
- Keerthi Siva
|
32
|
+
- Ken Ip
|
33
|
+
- Łukasz Śliwa
|
34
|
+
- Lucia
|
35
|
+
- Mark Young
|
36
|
+
- Martin d'Allens
|
37
|
+
- Mauricio Linhares
|
38
|
+
- Mohammed Gad
|
39
|
+
- Myk Klemme
|
40
|
+
- nycvotes-dev
|
41
|
+
- Postmodern
|
42
|
+
- Richard Hirner
|
43
|
+
- Richard Hurt
|
44
|
+
- Richard Schneeman
|
45
|
+
- Robert Buchberger
|
46
|
+
- Samuel Giddins
|
47
|
+
- Samuel Williams
|
48
|
+
- Sergio Baptista
|
49
|
+
- Shane Eskritt
|
50
|
+
- Tao Guo
|
51
|
+
- Thomas Leese
|
52
|
+
- Tibor Szolár
|
53
|
+
- Todd Carrico
|
54
|
+
- Yoran Brondsema
|
data/{Licence.md → LICENCE.md}
RENAMED
data/Manifest.txt
CHANGED
@@ -1,7 +1,8 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
1
|
+
CHANGELOG.md
|
2
|
+
CODE_OF_CONDUCT.md
|
3
|
+
CONTRIBUTING.md
|
4
|
+
CONTRIBUTORS.md
|
5
|
+
LICENCE.md
|
5
6
|
Manifest.txt
|
6
7
|
README.md
|
7
8
|
Rakefile
|
@@ -19,18 +20,3 @@ data/mime.use_instead.column
|
|
19
20
|
data/mime.xrefs.column
|
20
21
|
lib/mime-types-data.rb
|
21
22
|
lib/mime/types/data.rb
|
22
|
-
types/application.yaml
|
23
|
-
types/audio.yaml
|
24
|
-
types/chemical.yaml
|
25
|
-
types/conference.yaml
|
26
|
-
types/drawing.yaml
|
27
|
-
types/example.yaml
|
28
|
-
types/font.yaml
|
29
|
-
types/haptics.yaml
|
30
|
-
types/image.yaml
|
31
|
-
types/message.yaml
|
32
|
-
types/model.yaml
|
33
|
-
types/multipart.yaml
|
34
|
-
types/text.yaml
|
35
|
-
types/video.yaml
|
36
|
-
types/world.yaml
|
data/README.md
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
# mime-types-data
|
2
2
|
|
3
3
|
- home :: https://github.com/mime-types/mime-types-data/
|
4
|
-
- code :: https://github.com/mime-types/mime-types-data/
|
5
4
|
- issues :: https://github.com/mime-types/mime-types-data/issues
|
5
|
+
- code :: https://github.com/mime-types/mime-types-data/
|
6
|
+
- changelog :: https://github.com/mime-types/mime-types-data/blob/main/CHANGELOG.md
|
6
7
|
|
7
8
|
## Description
|
8
9
|
|
@@ -13,11 +14,11 @@ extensions to look up the likely MIME type definitions.
|
|
13
14
|
|
14
15
|
### About MIME Media Types
|
15
16
|
|
16
|
-
MIME media types are used in MIME-compliant communications, as in e-mail or
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
17
|
+
MIME media types are used in MIME-compliant communications, as in e-mail or HTTP
|
18
|
+
traffic, to indicate the type of content which is transmitted. The registry
|
19
|
+
provided in mime-types-data contains detailed information about MIME entities.
|
20
|
+
There are many types defined by RFCs and vendors, so the list is long but
|
21
|
+
invariably; don't hesitate to offer additional type definitions for
|
21
22
|
consideration. MIME type definitions found in mime-types are from RFCs, W3C
|
22
23
|
recommendations, the [IANA Media Types registry][registry], and user
|
23
24
|
contributions. It conforms to RFCs 2045 and 2231.
|
@@ -26,20 +27,20 @@ contributions. It conforms to RFCs 2045 and 2231.
|
|
26
27
|
|
27
28
|
This registry contains the MIME media types in four formats:
|
28
29
|
|
29
|
-
- A YAML format matching the Ruby mime-types library objects (MIME::Type).
|
30
|
-
|
31
|
-
|
30
|
+
- A YAML format matching the Ruby mime-types library objects (MIME::Type). This
|
31
|
+
is the primary user-editable format for developers. It is _not_ shipped with
|
32
|
+
the gem due to size considerations.
|
32
33
|
- A JSON format converted from the YAML format. Prior to Ruby mime-types 3.0,
|
33
34
|
this was the main consumption format and is still recommended for any
|
34
|
-
implementation that does not wish to implement the columnar format, which
|
35
|
-
|
36
|
-
- An encoded text format splitting the data for each MIME type across
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
- An encoded text format for use with [`mini_mime`][]
|
42
|
-
|
35
|
+
implementation that does not wish to implement the columnar format, which has
|
36
|
+
a significant implementation effort cost.
|
37
|
+
- An encoded text format splitting the data for each MIME type across multiple
|
38
|
+
files. This columnar data format reduces the minimal data load substantially,
|
39
|
+
resulting in a performance improvement at the cost of more complex code for
|
40
|
+
loading the data on-demand. This is the default format for Ruby mime-types
|
41
|
+
3.0.
|
42
|
+
- An encoded text format for use with [`mini_mime`][minimime]. This can be
|
43
|
+
enabled with:
|
43
44
|
|
44
45
|
```ruby
|
45
46
|
MiniMime::Configuration.ext_db_path =
|
@@ -50,24 +51,24 @@ This registry contains the MIME media types in four formats:
|
|
50
51
|
|
51
52
|
## mime-types-data Modified Semantic Versioning
|
52
53
|
|
53
|
-
mime-types-data uses a heavily modified [Semantic Versioning][] scheme to
|
54
|
-
indicate that the data formats compatibility based on a `SCHEMA` version and
|
55
|
-
|
54
|
+
mime-types-data uses a heavily modified [Semantic Versioning][semver] scheme to
|
55
|
+
indicate that the data formats compatibility based on a `SCHEMA` version and the
|
56
|
+
date of the data update: `SCHEMA.YEAR.MONTHDAY`.
|
56
57
|
|
57
58
|
1. If an incompatible data format change is made to any of the supported
|
58
|
-
|
59
|
+
formats, `SCHEMA` will be incremented. The current `SCHEMA` is 3, supporting
|
59
60
|
the YAML, JSON, and columnar formats required for Ruby mime-types 3.0.
|
60
61
|
|
61
|
-
2. When the data is updated, the `YEAR.MONTHDAY` combination will be updated.
|
62
|
-
|
62
|
+
2. When the data is updated, the `YEAR.MONTHDAY` combination will be updated. An
|
63
|
+
update on the last day of October 2015 would be written as `2015.1031`,
|
63
64
|
resulting in the full version of `3.2015.1031`.
|
64
65
|
|
65
66
|
3. If multiple versions of the data need to be released on the same day due to
|
66
|
-
error, there will be an additional `REVISION` field incremented on the end
|
67
|
-
|
68
|
-
|
69
|
-
|
67
|
+
error, there will be an additional `REVISION` field incremented on the end of
|
68
|
+
the version. Thus, if three revisions need to be published on October 31st,
|
69
|
+
2015, the last release would be `3.2015.1031.2` (remember that the first
|
70
|
+
release has an implied `0`.)
|
70
71
|
|
71
72
|
[registry]: https://www.iana.org/assignments/media-types/media-types.xhtml
|
72
|
-
[
|
73
|
-
[
|
73
|
+
[semver]: http://semver.org/
|
74
|
+
[minimime]: https://github.com/discourse/mini_mime
|