mime-types 2.0 → 2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- N2MyNjFiODUzNTEwYmVhMGFkOWQwZmEyMzYyMmMzNWEzMmVlYzM1YQ==
4
+ YzY3MzFkN2FjY2E2YTQ4NDZkNTE3YzBhMWJlMzQ4ZjJiMDNhYjIyNA==
5
5
  data.tar.gz: !binary |-
6
- MmRjNzA1NGFiY2FhNzlmZTkyNGVlNzYwNzViODYxMmY3OGYxNzJhYQ==
7
- !binary "U0hBNTEy":
6
+ ODFhNGZkNDMyZGEwM2Y3NzA0ZjYxZTQwZDU2NWUxZDVlNTdmNjlmOA==
7
+ SHA512:
8
8
  metadata.gz: !binary |-
9
- Y2FjMDNlNTI3MThiZTJhN2JlZTUxN2FiY2MyZWRjNDcxNDg2ZWNjYjgxNjA5
10
- OTczMGNlNDZhZDJlZWY2Zjk4NmZmZDVjMjIxOGRmN2Y5MTdjNDVlMTQ0NThm
11
- ZTg0N2JkNzc1MmVmNzU3ZWEyNDQ0NWVlN2ZkOGQ1ZGEyMWVjYTg=
9
+ YmVmYzE3Mjg5YzgzNDg3NGE3NDQ4YjQyMDM3NTE1YjI1MmI1MmM0MmQ1MGM2
10
+ ZDJlZjQyYWJkNTZmMGVlOTAxMjEzYjAzNGY2MDhhYTRlNjBmNGM0Zjg5ZmI4
11
+ NzdmYjFkNDU0MWIwNmM0MzI3MjM2MDJiYjEyZjIyNmIzM2FlZmI=
12
12
  data.tar.gz: !binary |-
13
- MTc4ZDNlYTc5MGU2OWZhZDQ4YmI0NDhlMzk5ZTM0OTk2Y2VkODYzZTQ1ZTJl
14
- Nzk1YjgzZDYzOTM3Mjc3YWE0ZGUwZTFmZGFlNzY1ZGI2OTdiMjNlNDg1MmFj
15
- ZDEwMjkzZTYwMjNlOWJhNWYyYzcyYzgxOGFkYWU4ZWZlMzA2Mzg=
13
+ MDY1MTg3MjljNjA0OWMxMjYwNzc3YjI2NTFjZDQxMjI0NWNlYTgzNTM1MGFm
14
+ NjljNjMyMDRhNmM1NGNhODhkZWYwMmYyMzcxNzgxYWQ2MWIyMTJmMzEzYWIw
15
+ NTY2NGU3OWE0ODFiZGU0MTk4ZGQzYWYxZTYyNmQ1YWVmZTcxZTY=
Binary file
data.tar.gz.sig CHANGED
@@ -1,5 +1 @@
1
- �l ��bH܍s�S2�X���]c\�
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��dd�/�Vm�<7��E���Ȗ���N1��H�|�s1�X�}يҶZ�9Q��C���O9��c�W]��1��0�KUn��
@@ -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
- - rbx-19mode
16
- # - ruby-head
17
- # - jruby-head
10
+ - jruby-head
11
+ - rbx
18
12
  matrix:
19
13
  allow_failures:
20
- - rvm:
21
- - ruby-head
22
- - jruby-head
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
@@ -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 Minitest.
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
- To run the test suite, you will need to install the development dependencies
22
- for mime-types. If you have Bundler, you can accomplish this easily:
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
- # DO NOT EDIT THIS FILE. Instead, edit Rakefile, and run `rake bundler:gemfile`.
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
@@ -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.
@@ -1,4 +1,22 @@
1
- == 2.0 / 2013-10-DD
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
@@ -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/iana_downloader.rb
27
+ support/iana_registry.rb
26
28
  test/fixture/json.json
27
29
  test/fixture/old-data
28
30
  test/fixture/yaml.yaml
@@ -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
- The mime-types library uses semantic versioning. This is release 2.0; there are
28
- incompatible changes in the API provided by mime-types, mostly around registry
29
- initialization (see History.rdoc for full details), and the removal of support
30
- for Ruby 1.8 interpreters.
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}[http://www.iana.org/assignments/media-types/]
36
- ({ftp}[ftp://ftp.iana.org/assignments/media-types]) with some unofficial types
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