mime-types 2.0 → 2.1
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 +9 -9
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +1 -5
- data/.travis.yml +24 -13
- data/Contributing.rdoc +19 -9
- data/Gemfile +3 -15
- data/History-Types.rdoc +209 -0
- data/History.rdoc +19 -1
- data/Manifest.txt +3 -1
- data/README.rdoc +43 -9
- data/Rakefile +8 -15
- data/data/mime-types.json +1 -1
- data/lib/mime.rb +2 -1
- data/lib/mime/type.rb +56 -18
- data/lib/mime/types.rb +1 -1
- data/lib/mime/types/cache.rb +1 -1
- data/support/apache_mime_types.rb +97 -0
- data/support/iana_registry.rb +148 -0
- data/test/test_mime_type.rb +11 -3
- data/test/test_mime_types_class.rb +4 -4
- metadata +29 -33
- metadata.gz.sig +0 -0
- data/support/iana_downloader.rb +0 -201
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YzY3MzFkN2FjY2E2YTQ4NDZkNTE3YzBhMWJlMzQ4ZjJiMDNhYjIyNA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
7
|
-
|
6
|
+
ODFhNGZkNDMyZGEwM2Y3NzA0ZjYxZTQwZDU2NWUxZDVlNTdmNjlmOA==
|
7
|
+
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YmVmYzE3Mjg5YzgzNDg3NGE3NDQ4YjQyMDM3NTE1YjI1MmI1MmM0MmQ1MGM2
|
10
|
+
ZDJlZjQyYWJkNTZmMGVlOTAxMjEzYjAzNGY2MDhhYTRlNjBmNGM0Zjg5ZmI4
|
11
|
+
NzdmYjFkNDU0MWIwNmM0MzI3MjM2MDJiYjEyZjIyNmIzM2FlZmI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MDY1MTg3MjljNjA0OWMxMjYwNzc3YjI2NTFjZDQxMjI0NWNlYTgzNTM1MGFm
|
14
|
+
NjljNjMyMDRhNmM1NGNhODhkZWYwMmYyMzcxNzgxYWQ2MWIyMTJmMzEzYWIw
|
15
|
+
NTY2NGU3OWE0ODFiZGU0MTk4ZGQzYWYxZTYyNmQ1YWVmZTcxZTY=
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
@@ -1,5 +1 @@
|
|
1
|
-
|
2
|
-
0♜sF�M�
|
3
|
-
:]Ēݢנ���l�����r.
|
4
|
-
�M�x"��`_���EA�vq�w։.LME�i��0p!��?���q����h�z6W!�p�SY0S�Fs����=>�
|
5
|
-
)y^(�����BGu��r|2��@��~�{"N�u��B�Z���;3�V��e��U���S�{+7���n��Z���,���,�f�(�Ϥu(�ʨ�Yye�Vk��'�jzѳw,�h��M
|
1
|
+
o��eY!�`���eL5��w����|��u3(�u(V6����AyyV@�==D�G��/�\_/����.�K}*�N7c.P��MZ��G������A������m��6^�VP�~��f?ga,t��t�s%"Pu��d�d�/�V�m�<7��E���Ȗ���N1��H�|�s1�X�}يҶZ�9Q��C���O9��c�W]��1��0�KUn��
|
data/.travis.yml
CHANGED
@@ -1,23 +1,34 @@
|
|
1
1
|
---
|
2
|
-
after_script:
|
3
|
-
- rake travis:after -t
|
4
|
-
before_script:
|
5
|
-
- gem install hoe-travis --no-rdoc --no-ri
|
6
|
-
- rake travis:before -t
|
7
2
|
language: ruby
|
8
|
-
notifications:
|
9
|
-
email: true
|
10
3
|
rvm:
|
4
|
+
- 2.1.0
|
11
5
|
- 2.0.0
|
12
6
|
- 1.9.3
|
13
7
|
- 1.9.2
|
8
|
+
- ruby-head
|
14
9
|
- jruby-19mode
|
15
|
-
-
|
16
|
-
|
17
|
-
# - jruby-head
|
10
|
+
- jruby-head
|
11
|
+
- rbx
|
18
12
|
matrix:
|
19
13
|
allow_failures:
|
20
|
-
- rvm:
|
21
|
-
|
22
|
-
|
14
|
+
- rvm: rbx
|
15
|
+
gemfile:
|
16
|
+
- Gemfile
|
17
|
+
before_script:
|
18
|
+
- |
|
19
|
+
case "${TRAVIS_RUBY_VERSION}" in
|
20
|
+
rbx*)
|
21
|
+
gem install psych
|
22
|
+
gem install -v '~> 2.0' rubysl
|
23
|
+
;;
|
24
|
+
esac
|
25
|
+
- rake travis:before -t
|
23
26
|
script: rake travis
|
27
|
+
after_script:
|
28
|
+
- rake travis:after -t
|
29
|
+
notifications:
|
30
|
+
recipients:
|
31
|
+
- austin@rubyforge.org
|
32
|
+
email:
|
33
|
+
- on_success: change
|
34
|
+
- on_failure: always
|
data/Contributing.rdoc
CHANGED
@@ -6,7 +6,8 @@ request, or code contributions.
|
|
6
6
|
As mime-types is a complex codebase, there are a few guidelines:
|
7
7
|
|
8
8
|
* Changes (aside from new MIME types) *will* *not* be accepted
|
9
|
-
without tests. The test suite is written with
|
9
|
+
without tests. The test suite is written with
|
10
|
+
{Minitest}[https://github.com/seattlerb/minitest].
|
10
11
|
* Match my coding style.
|
11
12
|
* Use a thoughtfully-named topic branch that contains your change. Rebase your
|
12
13
|
commits into logical chunks as necessary.
|
@@ -18,14 +19,9 @@ As mime-types is a complex codebase, there are a few guidelines:
|
|
18
19
|
|
19
20
|
=== Test Dependencies
|
20
21
|
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
$ bundle install
|
25
|
-
|
26
|
-
mime-types uses Ryan Davis’s excellent {Hoe}[https://github.com/seattlerb/hoe]
|
27
|
-
to manage the release process, and it adds a number of rake tasks. You will
|
28
|
-
mostly be interested in:
|
22
|
+
mime-types uses Ryan Davis’s {Hoe}[https://github.com/seattlerb/hoe] to manage
|
23
|
+
the release process, and it adds a number of rake tasks. You will mostly be
|
24
|
+
interested in:
|
29
25
|
|
30
26
|
$ rake
|
31
27
|
|
@@ -36,6 +32,20 @@ which runs the tests the same way that:
|
|
36
32
|
|
37
33
|
will do.
|
38
34
|
|
35
|
+
To assist with the installation of the development dependencies for mime-types,
|
36
|
+
I have provided the simplest possible Gemfile pointing to the (generated)
|
37
|
+
+mime-types.gemspec+ file. This will permit you to do:
|
38
|
+
|
39
|
+
$ bundle install
|
40
|
+
|
41
|
+
to get the development dependencies. If you aleady have +hoe+ installed, you
|
42
|
+
can accomplish the same thing with:
|
43
|
+
|
44
|
+
$ rake newb
|
45
|
+
|
46
|
+
This task will install any missing dependencies, run the tests/specs, and
|
47
|
+
generate the RDoc.
|
48
|
+
|
39
49
|
=== Workflow
|
40
50
|
|
41
51
|
Here's the most direct way to get your work merged into the project:
|
data/Gemfile
CHANGED
@@ -1,21 +1,9 @@
|
|
1
1
|
# -*- ruby -*-
|
2
2
|
|
3
|
-
#
|
3
|
+
# NOTE: This file is present to keep Travis CI happy. Edits to it will not
|
4
|
+
# be accepted.
|
4
5
|
|
5
6
|
source "https://rubygems.org/"
|
6
|
-
|
7
|
-
|
8
|
-
gem "rubyforge", ">=2.0.4", :group => [:development, :test]
|
9
|
-
gem "minitest", "~>5.0", :group => [:development, :test]
|
10
|
-
gem "rdoc", "~>4.0", :group => [:development, :test]
|
11
|
-
gem "hoe-bundler", "~>1.2", :group => [:development, :test]
|
12
|
-
gem "hoe-doofus", "~>1.0", :group => [:development, :test]
|
13
|
-
gem "hoe-gemspec2", "~>1.1", :group => [:development, :test]
|
14
|
-
gem "hoe-git", "~>1.5", :group => [:development, :test]
|
15
|
-
gem "hoe-rubygems", "~>1.0", :group => [:development, :test]
|
16
|
-
gem "hoe-travis", "~>1.2", :group => [:development, :test]
|
17
|
-
gem "rake", "~>10.0", :group => [:development, :test]
|
18
|
-
gem "simplecov", "~>0.7", :group => [:development, :test]
|
19
|
-
gem "hoe", "~>3.7", :group => [:development, :test]
|
7
|
+
gemspec
|
20
8
|
|
21
9
|
# vim: syntax=ruby
|
data/History-Types.rdoc
ADDED
@@ -0,0 +1,209 @@
|
|
1
|
+
= MIME Types Changes by Version
|
2
|
+
|
3
|
+
== 2.1 / 2014-01-25
|
4
|
+
|
5
|
+
* The IANA media type registry format changed, resulting in updates to most of
|
6
|
+
the 1,427 registered MIME types.
|
7
|
+
* Many registered MIME types have had some metadata updates due to the change
|
8
|
+
in the IANA registry format.
|
9
|
+
* MIME types having a publicly available registry application now include a
|
10
|
+
link to that file in references.
|
11
|
+
* Added +xrefs+ data as discovered (see the API changes noted above).
|
12
|
+
* The Apache mime types configuration has been added to track additional common
|
13
|
+
but unregistered MIME types and known extensions for those MIME types. This
|
14
|
+
has affected many of the available MIME types.
|
15
|
+
* Added newly registered MIME types:
|
16
|
+
* application/emotionml\+xml
|
17
|
+
* application/ODX
|
18
|
+
* application/prs.hpub\+zip
|
19
|
+
* application/vcard\+json
|
20
|
+
* application/vnd.bekitzur-stech\+json
|
21
|
+
* application/vnd.etsi.timestamp-token
|
22
|
+
* application/vnd.oma.cab-feature-handler\+xml
|
23
|
+
* application/vnd.openeye.oeb
|
24
|
+
* application/vnd.tcpdump.pcap
|
25
|
+
* audio/amr-wb
|
26
|
+
* model/x3d\+xml
|
27
|
+
* model/x3d-vrml
|
28
|
+
* Added 180 unregistered MIME types from the Apache list:
|
29
|
+
* application/applixware
|
30
|
+
* application/cu-seeme
|
31
|
+
* application/docbook\+xml
|
32
|
+
* application/gml\+xml
|
33
|
+
* application/gpx\+xml
|
34
|
+
* application/gxf
|
35
|
+
* application/java-archive
|
36
|
+
* application/java-serialized-object
|
37
|
+
* application/java-vm
|
38
|
+
* application/jsonml\+json
|
39
|
+
* application/metalink\+xml
|
40
|
+
* application/omdoc\+xml
|
41
|
+
* application/onenote
|
42
|
+
* application/pics-rules
|
43
|
+
* application/rsd\+xml
|
44
|
+
* application/ssdl\+xml
|
45
|
+
* application/vnd.3m.post-it-notes
|
46
|
+
* application/vnd.amazon.ebook
|
47
|
+
* application/vnd.anser-web-funds-transfer-initiation
|
48
|
+
* application/vnd.curl.car
|
49
|
+
* application/vnd.curl.pcurl
|
50
|
+
* application/vnd.dolby.mlp
|
51
|
+
* application/vnd.ds-keypoint
|
52
|
+
* application/vnd.flographit
|
53
|
+
* application/vnd.handheld-entertainment\+xml
|
54
|
+
* application/vnd.hp-hpgl
|
55
|
+
* application/vnd.hp-pcl
|
56
|
+
* application/vnd.hp-pclxl
|
57
|
+
* application/vnd.ibm.minipay
|
58
|
+
* application/vnd.kinar
|
59
|
+
* application/vnd.mfer
|
60
|
+
* application/vnd.mobius.daf
|
61
|
+
* application/vnd.mobius.dis
|
62
|
+
* application/vnd.mobius.mbk
|
63
|
+
* application/vnd.mobius.mqy
|
64
|
+
* application/vnd.mobius.msl
|
65
|
+
* application/vnd.mobius.plc
|
66
|
+
* application/vnd.mobius.txf
|
67
|
+
* application/vnd.ms-excel.addin.macroenabled.12
|
68
|
+
* application/vnd.ms-excel.sheet.binary.macroenabled.12
|
69
|
+
* application/vnd.ms-excel.sheet.macroenabled.12
|
70
|
+
* application/vnd.ms-excel.template.macroenabled.12
|
71
|
+
* application/vnd.ms-pki.seccat
|
72
|
+
* application/vnd.ms-pki.stl
|
73
|
+
* application/vnd.ms-powerpoint.addin.macroenabled.12
|
74
|
+
* application/vnd.ms-powerpoint.presentation.macroenabled.12
|
75
|
+
* application/vnd.ms-powerpoint.slide.macroenabled.12
|
76
|
+
* application/vnd.ms-powerpoint.slideshow.macroenabled.12
|
77
|
+
* application/vnd.ms-powerpoint.template.macroenabled.12
|
78
|
+
* application/vnd.ms-word.document.macroenabled.12
|
79
|
+
* application/vnd.ms-word.template.macroenabled.12
|
80
|
+
* application/vnd.novadigm.edm
|
81
|
+
* application/vnd.novadigm.edx
|
82
|
+
* application/vnd.novadigm.ext
|
83
|
+
* application/vnd.quark.quarkxpress
|
84
|
+
* application/vnd.rim.cod
|
85
|
+
* application/vnd.rn-realmedia-vbr
|
86
|
+
* application/vnd.simtech-mindmapper
|
87
|
+
* application/vnd.symbian.install
|
88
|
+
* application/winhlp
|
89
|
+
* application/x-abiword
|
90
|
+
* application/x-ace-compressed
|
91
|
+
* application/x-authorware-bin
|
92
|
+
* application/x-authorware-map
|
93
|
+
* application/x-authorware-seg
|
94
|
+
* application/x-bittorrent
|
95
|
+
* application/x-blorb
|
96
|
+
* application/x-bzip
|
97
|
+
* application/x-cbr
|
98
|
+
* application/x-cfs-compressed
|
99
|
+
* application/x-chat
|
100
|
+
* application/x-conference
|
101
|
+
* application/x-dgc-compressed
|
102
|
+
* application/x-doom
|
103
|
+
* application/x-dtbncx\+xml
|
104
|
+
* application/x-dtbook\+xml
|
105
|
+
* application/x-dtbresource\+xml
|
106
|
+
* application/x-envoy
|
107
|
+
* application/x-eva
|
108
|
+
* application/x-font-bdf
|
109
|
+
* application/x-font-ghostscript
|
110
|
+
* application/x-font-linux-psf
|
111
|
+
* application/x-font-otf
|
112
|
+
* application/x-font-pcf
|
113
|
+
* application/x-font-snf
|
114
|
+
* application/x-font-ttf
|
115
|
+
* application/x-font-type1
|
116
|
+
* application/x-freearc
|
117
|
+
* application/x-gca-compressed
|
118
|
+
* application/x-glulx
|
119
|
+
* application/x-gnumeric
|
120
|
+
* application/x-gramps-xml
|
121
|
+
* application/x-install-instructions
|
122
|
+
* application/x-iso9660-image
|
123
|
+
* application/x-lzh-compressed
|
124
|
+
* application/x-mie
|
125
|
+
* application/x-ms-application
|
126
|
+
* application/x-ms-shortcut
|
127
|
+
* application/x-ms-xbap
|
128
|
+
* application/x-msbinder
|
129
|
+
* application/x-mscardfile
|
130
|
+
* application/x-msclip
|
131
|
+
* application/x-msmediaview
|
132
|
+
* application/x-msmetafile
|
133
|
+
* application/x-msmoney
|
134
|
+
* application/x-mspublisher
|
135
|
+
* application/x-msschedule
|
136
|
+
* application/x-msterminal
|
137
|
+
* application/x-mswrite
|
138
|
+
* application/x-nzb
|
139
|
+
* application/x-pkcs12
|
140
|
+
* application/x-pkcs7-certificates
|
141
|
+
* application/x-pkcs7-certreqresp
|
142
|
+
* application/x-research-info-systems
|
143
|
+
* application/x-silverlight-app
|
144
|
+
* application/x-sql
|
145
|
+
* application/x-stuffitx
|
146
|
+
* application/x-subrip
|
147
|
+
* application/x-t3vm-image
|
148
|
+
* application/x-tads
|
149
|
+
* application/x-tex-tfm
|
150
|
+
* application/x-tgif
|
151
|
+
* application/x-xfig
|
152
|
+
* application/x-xliff\+xml
|
153
|
+
* application/x-xz
|
154
|
+
* application/x-zmachine
|
155
|
+
* application/xaml\+xml
|
156
|
+
* application/xproc\+xml
|
157
|
+
* application/xspf\+xml
|
158
|
+
* audio/adpcm
|
159
|
+
* audio/amr-wb
|
160
|
+
* audio/AMR-WB
|
161
|
+
* audio/midi
|
162
|
+
* audio/s3m
|
163
|
+
* audio/silk
|
164
|
+
* audio/x-caf
|
165
|
+
* audio/x-flac
|
166
|
+
* audio/x-matroska
|
167
|
+
* audio/x-mpegurl
|
168
|
+
* audio/xm
|
169
|
+
* chemical/x-cdx
|
170
|
+
* chemical/x-cif
|
171
|
+
* chemical/x-cmdf
|
172
|
+
* chemical/x-cml
|
173
|
+
* chemical/x-csml
|
174
|
+
* image/sgi
|
175
|
+
* image/vnd.ms-photo
|
176
|
+
* image/x-3ds
|
177
|
+
* image/x-cmx
|
178
|
+
* image/x-freehand
|
179
|
+
* image/x-icon
|
180
|
+
* image/x-mrsid-image
|
181
|
+
* image/x-pcx
|
182
|
+
* image/x-tga
|
183
|
+
* model/x3d\+binary
|
184
|
+
* model/x3d\+vrml
|
185
|
+
* text/plain
|
186
|
+
* text/vnd.curl.dcurl
|
187
|
+
* text/vnd.curl.mcurl
|
188
|
+
* text/vnd.curl.scurl
|
189
|
+
* text/x-asm
|
190
|
+
* text/x-c
|
191
|
+
* text/x-fortran
|
192
|
+
* text/x-java-source
|
193
|
+
* text/x-nfo
|
194
|
+
* text/x-opml
|
195
|
+
* text/x-pascal
|
196
|
+
* text/x-sfv
|
197
|
+
* text/x-uuencode
|
198
|
+
* video/h261
|
199
|
+
* video/h263
|
200
|
+
* video/h264
|
201
|
+
* video/jpeg
|
202
|
+
* video/jpm
|
203
|
+
* video/mj2
|
204
|
+
* video/x-f4v
|
205
|
+
* video/x-m4v
|
206
|
+
* video/x-mng
|
207
|
+
* video/x-ms-vob
|
208
|
+
* video/x-smv
|
209
|
+
* Merged the non-standard VMS platform text/plain with the standard text/plain.
|
data/History.rdoc
CHANGED
@@ -1,4 +1,22 @@
|
|
1
|
-
== 2.
|
1
|
+
== 2.1 / 2014-01-25
|
2
|
+
|
3
|
+
* API Changes (MIME::Type):
|
4
|
+
* Added MIME::Type#xrefs and MIME::Type#xref_urls that have better handling
|
5
|
+
of types of reference information. MIME::Type#references= has been
|
6
|
+
deprecated. In a future release, both MIME::Type#references will be turned
|
7
|
+
into a short-hand view on MIME::Type#xrefs, MIME::Type#urls will be an
|
8
|
+
alias for MIME::Type#xref_urls, and MIME::Type#references= will be removed.
|
9
|
+
* New or Updated MIME Types:
|
10
|
+
* This information is now tracked in History-Types.rdoc.
|
11
|
+
* MIME Type Development Tools
|
12
|
+
* The IANA registry format changed, breaking the IANA registry tool
|
13
|
+
previously used. Rewrote IANADownloader and IANADownloader::Parser as
|
14
|
+
IANARegistryParser using the XML form.
|
15
|
+
* The LTSW list has been dropped as it has not been updated since 2002.
|
16
|
+
* The default Apache MIME types configuration list is now used to enrich MIME
|
17
|
+
type data with additional extension information.
|
18
|
+
|
19
|
+
== 2.0 / 2013-10-27
|
2
20
|
|
3
21
|
* API Changes (General):
|
4
22
|
* mime-types is no longer compatible with Ruby 1.8. Additionally, for its
|
data/Manifest.txt
CHANGED
@@ -5,6 +5,7 @@
|
|
5
5
|
.travis.yml
|
6
6
|
Contributing.rdoc
|
7
7
|
Gemfile
|
8
|
+
History-Types.rdoc
|
8
9
|
History.rdoc
|
9
10
|
Licence.rdoc
|
10
11
|
Manifest.txt
|
@@ -20,9 +21,10 @@ lib/mime/types.rb
|
|
20
21
|
lib/mime/types/cache.rb
|
21
22
|
lib/mime/types/loader.rb
|
22
23
|
lib/mime/types/loader_path.rb
|
24
|
+
support/apache_mime_types.rb
|
23
25
|
support/benchmarker.rb
|
24
26
|
support/convert.rb
|
25
|
-
support/
|
27
|
+
support/iana_registry.rb
|
26
28
|
test/fixture/json.json
|
27
29
|
test/fixture/old-data
|
28
30
|
test/fixture/yaml.yaml
|
data/README.rdoc
CHANGED
@@ -24,18 +24,22 @@ add additional type definitions (see Contributing.rdoc). The primary sources
|
|
24
24
|
for MIME type definitions found in mime-types is the IANA collection of
|
25
25
|
registrations (see below for the link), RFCs, and W3C recommendations.
|
26
26
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
27
|
+
This is release 2.1, mostly changing how the MIME type registry is updated from
|
28
|
+
the IANA registry (the format of which was incompatibly changed shortly before
|
29
|
+
this release) and taking advantage of the extra data available from IANA
|
30
|
+
registry in the form of MIME::Type#xrefs. In addition, the {LTSW
|
31
|
+
list}[http://www.ltsw.se/knbase/internet/mime.htp] has been dropped as a
|
32
|
+
supported list.
|
33
|
+
|
34
|
+
As a reminder, mime-types 2.x is no longer compatible with Ruby 1.8 and
|
35
|
+
mime-types 1.x is only being maintained for security issues. No new MIME types
|
36
|
+
or features will be added.
|
31
37
|
|
32
38
|
mime-types (previously called MIME::Types for Ruby) was originally based on
|
33
39
|
MIME::Types for Perl by Mark Overmeer, copyright 2001 - 2009. It is built to
|
34
|
-
conform to the MIME types of RFCs 2045 and 2231. It tracks the {IANA
|
35
|
-
registry}[
|
36
|
-
|
37
|
-
added from the {LTSW collection}[http://www.ltsw.se/knbase/internet/mime.htp]
|
38
|
-
and added by the users of mime-types.
|
40
|
+
conform to the MIME types of RFCs 2045 and 2231. It tracks the {IANA Media
|
41
|
+
Types registry}[https://www.iana.org/assignments/media-types/media-types.xhtml]
|
42
|
+
with some types added by the users of mime-types.
|
39
43
|
|
40
44
|
== Synopsis
|
41
45
|
|
@@ -68,6 +72,36 @@ files). A MIME::Type stores the known information about one MIME type.
|
|
68
72
|
puts MIME::Types.all?(&:registered?)
|
69
73
|
# => false
|
70
74
|
|
75
|
+
== mime-types Modified Semantic Versioning
|
76
|
+
|
77
|
+
The mime-types library has one version number, but this single version number
|
78
|
+
tracks both API changes and registry data changes; this is not wholly
|
79
|
+
compatible with all aspects of {Semantic Versioning}[http://semver.org/];
|
80
|
+
removing a MIME type from the registry *could* be considered a breaking change
|
81
|
+
under some interpretations of semantic versioning (as lookups for that
|
82
|
+
particular type would no longer work by default).
|
83
|
+
|
84
|
+
mime-types uses a modified semantic versioning scheme. Given the version
|
85
|
+
MAJOR.MINOR:
|
86
|
+
|
87
|
+
1. If an incompatible API (code) change is made, the MAJOR version will be
|
88
|
+
incremented, MINOR will be set to zero, and PATCH will be reset to the
|
89
|
+
implied zero.
|
90
|
+
|
91
|
+
2. If an API (code) feature is added that does not break compatibilty OR if
|
92
|
+
there are MIME types added, removed, or changed in the registry, the MINOR
|
93
|
+
version will be incremented and PATCH will be reset to the implied zero.
|
94
|
+
|
95
|
+
3. If there is a bugfix to a feature added in the most recent MAJOR.MINOR
|
96
|
+
release, OR if purely typographical errors are fixed in MIME types, the
|
97
|
+
implied PATCH value will be incremented resulting in MAJOR.MINOR.PATCH.
|
98
|
+
|
99
|
+
In practical terms, there should be a MINOR release roughly monthly to track
|
100
|
+
updated or changed MIME types from the official IANA registry. This does not
|
101
|
+
indicate when new API features have been added, but all minor versions of
|
102
|
+
mime-types 2.x will be backwards compatible; the interfaces marked deprecated
|
103
|
+
will not be removed until at least mime-types 3.x or possibly later.
|
104
|
+
|
71
105
|
:include: Contributing.rdoc
|
72
106
|
|
73
107
|
:include: Licence.rdoc
|