mime-types 1.25.1 → 2.0

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.
Files changed (61) hide show
  1. checksums.yaml +8 -8
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/.autotest +5 -0
  5. data/.minitest.rb +2 -0
  6. data/.travis.yml +0 -4
  7. data/Contributing.rdoc +13 -14
  8. data/Gemfile +1 -0
  9. data/History.rdoc +100 -7
  10. data/Licence.rdoc +1 -1
  11. data/Manifest.txt +17 -24
  12. data/README.rdoc +26 -47
  13. data/Rakefile +42 -185
  14. data/data/mime-types.json +1 -0
  15. data/docs/COPYING.txt +339 -339
  16. data/docs/artistic.txt +127 -127
  17. data/lib/mime.rb +50 -0
  18. data/lib/mime/type.rb +634 -0
  19. data/lib/mime/types.rb +254 -912
  20. data/lib/mime/types/cache.rb +73 -0
  21. data/lib/mime/types/loader.rb +248 -0
  22. data/lib/mime/types/loader_path.rb +16 -0
  23. data/support/benchmarker.rb +55 -0
  24. data/support/convert.rb +130 -0
  25. data/support/iana_downloader.rb +201 -0
  26. data/test/fixture/json.json +1 -0
  27. data/test/fixture/old-data +9 -0
  28. data/test/fixture/yaml.yaml +75 -0
  29. data/test/minitest_helper.rb +22 -0
  30. data/test/test_mime_type.rb +337 -143
  31. data/test/test_mime_types.rb +75 -84
  32. data/test/test_mime_types_cache.rb +30 -29
  33. data/test/test_mime_types_class.rb +135 -0
  34. data/test/test_mime_types_lazy.rb +3 -2
  35. data/test/test_mime_types_loader.rb +42 -0
  36. metadata +61 -90
  37. metadata.gz.sig +0 -0
  38. data/lib/mime/types/application +0 -1010
  39. data/lib/mime/types/application.mac +0 -3
  40. data/lib/mime/types/application.nonstandard +0 -132
  41. data/lib/mime/types/application.obsolete +0 -41
  42. data/lib/mime/types/audio +0 -138
  43. data/lib/mime/types/audio.nonstandard +0 -11
  44. data/lib/mime/types/audio.obsolete +0 -1
  45. data/lib/mime/types/image +0 -46
  46. data/lib/mime/types/image.nonstandard +0 -20
  47. data/lib/mime/types/image.obsolete +0 -5
  48. data/lib/mime/types/message +0 -18
  49. data/lib/mime/types/message.obsolete +0 -2
  50. data/lib/mime/types/model +0 -15
  51. data/lib/mime/types/multipart +0 -14
  52. data/lib/mime/types/multipart.nonstandard +0 -1
  53. data/lib/mime/types/multipart.obsolete +0 -7
  54. data/lib/mime/types/other.nonstandard +0 -8
  55. data/lib/mime/types/text +0 -61
  56. data/lib/mime/types/text.nonstandard +0 -7
  57. data/lib/mime/types/text.obsolete +0 -8
  58. data/lib/mime/types/text.vms +0 -1
  59. data/lib/mime/types/video +0 -75
  60. data/lib/mime/types/video.nonstandard +0 -16
  61. data/lib/mime/types/video.obsolete +0 -3
@@ -1,14 +0,0 @@
1
- multipart/alternative :8bit 'IANA,RFC2045,RFC2046
2
- multipart/appledouble :8bit 'IANA,[Faltstrom]
3
- multipart/byteranges 'IANA,RFC2616
4
- multipart/digest :8bit 'IANA,RFC2045,RFC2046
5
- multipart/encrypted 'IANA,RFC1847
6
- multipart/example 'IANA,RFC4735
7
- multipart/form-data 'IANA,RFC2388
8
- multipart/header-set 'IANA,[Crocker]
9
- multipart/mixed :8bit 'IANA,RFC2045,RFC2046
10
- multipart/parallel :8bit 'IANA,RFC2045,RFC2046
11
- multipart/related 'IANA,RFC2387
12
- multipart/report 'IANA,RFC6522
13
- multipart/signed 'IANA,RFC1847
14
- multipart/voice-message 'IANA,RFC2421,RFC2423
@@ -1 +0,0 @@
1
- !multipart/x-parallel =use-instead:multipart/parallel
@@ -1,7 +0,0 @@
1
- !multipart/x-parallel =use-instead:multipart/parallel
2
- multipart/x-gzip
3
- multipart/x-mixed-replace
4
- multipart/x-tar
5
- multipart/x-ustar
6
- multipart/x-www-form-urlencoded
7
- multipart/x-zip
@@ -1,8 +0,0 @@
1
- !chemical/x-pdb @pdb =use-instead:x-chemical/x-pdb
2
- !chemical/x-xyz @xyz =use-instead:x-chemical/x-xyz
3
- *!drawing/dwf @dwf =use-instead:x-drawing/dwf
4
- x-chemical/x-pdb @pdb
5
- x-chemical/x-xyz @xyz
6
- x-conference/x-cooltalk @ice
7
- x-drawing/dwf @dwf
8
- x-world/x-vrml @wrl,vrml
@@ -1,61 +0,0 @@
1
- text/1d-interleaved-parityfec 'IANA,RFC6015
2
- text/calendar 'IANA,RFC5545
3
- text/css @css :8bit 'IANA,RFC2318
4
- text/csv @csv :8bit 'IANA,RFC4180
5
- text/dns 'IANA,RFC4027
6
- text/encaprtp 'IANA,RFC6849
7
- text/enriched 'IANA,RFC1896
8
- text/example 'IANA,RFC4735
9
- text/fwdred 'IANA,RFC6354
10
- text/grammar-ref-list 'IANA,RFC6787
11
- text/html @html,htm,htmlx,shtml,htx :8bit 'IANA,[Michael Smith=MSmith],[W3C]
12
- text/jcr-cnd 'IANA,[Piegaze]
13
- text/mizar 'IANA,[Jesse Alama=Jesse_Alama]
14
- text/n3 'IANA,[Prud'hommeaux=Prudhommeaux],[W3C]
15
- text/parityfec 'IANA,RFC5109
16
- text/plain @txt,asc,c,cc,h,hh,cpp,hpp,dat,hlp 'IANA,RFC2046,RFC3676,RFC5147
17
- text/provenance-notation 'IANA,[Herman],[W3C]
18
- text/prs.fallenstein.rst @rst 'IANA,[Fallenstein]
19
- text/prs.lines.tag 'IANA,[Lines]
20
- text/raptorfec 'IANA,RFC6682
21
- text/RED 'IANA,RFC4102
22
- text/rfc822-headers 'IANA,RFC6522
23
- text/richtext @rtx :8bit 'IANA,RFC2045,RFC2046
24
- text/rtf @rtf :8bit 'IANA,[Lindner]
25
- text/rtp-enc-aescm128 'IANA,[3GPP]
26
- text/rtploopback 'IANA,RFC6849
27
- text/rtx 'IANA,RFC4588
28
- text/sgml @sgml,sgm 'IANA,RFC1874
29
- text/t140 'IANA,RFC4103
30
- text/tab-separated-values @tsv 'IANA,[Lindner]
31
- text/troff @t,tr,roff,troff :8bit 'IANA,RFC4263
32
- text/turtle 'IANA,[Prud'hommeaux=Prudhommeaux],[W3C]
33
- text/ulpfec 'IANA,RFC5109
34
- text/uri-list 'IANA,RFC2483
35
- text/vcard 'IANA,RFC6350
36
- text/vnd.abc 'IANA,[Allen]
37
- text/vnd.curl 'IANA,[Byrnes]
38
- text/vnd.debian.copyright 'IANA,[Plessy]
39
- text/vnd.DMClientScript 'IANA,[Bradley]
40
- text/vnd.dvb.subtitle 'IANA,[Siebert],[Lagally]
41
- text/vnd.esmertec.theme-descriptor 'IANA,[Eilemann]
42
- text/vnd.fly 'IANA,[Gurney]
43
- text/vnd.fmi.flexstor 'IANA,[Hurtta]
44
- text/vnd.graphviz 'IANA,[Ellson]
45
- text/vnd.in3d.3dml 'IANA,[Powers]
46
- text/vnd.in3d.spot 'IANA,[Powers]
47
- text/vnd.IPTC.NewsML 'IANA,[IPTC]
48
- text/vnd.IPTC.NITF 'IANA,[IPTC]
49
- text/vnd.latex-z 'IANA,[Lubos]
50
- text/vnd.motorola.reflex 'IANA,[Patton]
51
- text/vnd.ms-mediapackage 'IANA,[Nelson]
52
- text/vnd.net2phone.commcenter.command @ccc 'IANA,[Xie]
53
- text/vnd.radisys.msml-basic-layout 'IANA,RFC5707
54
- text/vnd.sun.j2me.app-descriptor @jad :8bit 'IANA,[G.Adams]
55
- text/vnd.trolltech.linguist 'IANA,[D.Lambert]
56
- text/vnd.wap.si @si 'IANA,[WAP-Forum]
57
- text/vnd.wap.sl @sl 'IANA,[WAP-Forum]
58
- text/vnd.wap.wml @wml 'IANA,[Stark]
59
- text/vnd.wap.wmlscript @wmls 'IANA,[Stark]
60
- text/xml @xml,dtd :8bit 'IANA,RFC3023
61
- text/xml-external-parsed-entity 'IANA,RFC3023
@@ -1,7 +0,0 @@
1
- text/cache-manifest @appcache,manifest
2
- text/x-coffescript @coffee :8bit
3
- text/x-component @htc :8bit
4
- text/x-setext @etx
5
- text/x-vcalendar @vcs :8bit
6
- text/x-vcard @vcf :8bit
7
- text/x-yaml @yaml,yml :8bit
@@ -1,8 +0,0 @@
1
- !text/directory 'IANA,RFC2425,RFC6350
2
- !text/ecmascript 'IANA,RFC4329
3
- !text/javascript @js 'IANA,RFC4329
4
- !text/x-rtf @rtf :8bit =use-instead:text/rtf
5
- !text/x-vnd.flatland.3dml =use-instead:model/vnd.flatland.3dml
6
- *!text/comma-separated-values @csv :8bit =use-instead:text/csv
7
- *!text/vnd.flatland.3dml =use-instead:model/vnd.flatland.3dml
8
- !text/vnd.si.uricatalogue 'IANA,[Parks Young=ParksYoung]
@@ -1 +0,0 @@
1
- vms:text/plain @doc :8bit
@@ -1,75 +0,0 @@
1
- video/1d-interleaved-parityfec 'IANA,RFC6015
2
- video/3gpp @3gp,3gpp 'IANA,RFC3839,RFC6381
3
- video/3gpp-tt 'IANA,RFC4396
4
- video/3gpp2 @3g2,3gpp2 'IANA,RFC4393,RFC6381
5
- video/BMPEG 'IANA,RFC3555
6
- video/BT656 'IANA,RFC3555
7
- video/CelB 'IANA,RFC3555
8
- video/DV 'IANA,RFC6469
9
- video/encaprtp 'IANA,RFC6849
10
- video/example 'IANA,RFC4735
11
- video/H261 'IANA,RFC4587
12
- video/H263 'IANA,RFC3555
13
- video/H263-1998 'IANA,RFC4629
14
- video/H263-2000 'IANA,RFC4629
15
- video/H264 'IANA,RFC6184
16
- video/H264-RCDO 'IANA,RFC6185
17
- video/H264-SVC 'IANA,RFC6190
18
- video/JPEG 'IANA,RFC3555
19
- video/jpeg2000 'IANA,RFC5371,RFC5372
20
- video/MJ2 @mj2,mjp2 'IANA,RFC3745
21
- video/MP1S 'IANA,RFC3555
22
- video/MP2P 'IANA,RFC3555
23
- video/MP2T @ts 'IANA,RFC3555
24
- video/mp4 @mp4,mpg4,f4v,f4p 'IANA,RFC4337,RFC6381,{Adobe=http://www.kaourantin.net/2007/10/new-file-extensions-and-mime-types.html}
25
- video/MP4V-ES 'IANA,RFC6416
26
- video/mpeg @mp2,mp3g,mpe,mpeg,mpg :base64 'IANA,RFC2045,RFC2046
27
- video/mpeg4-generic 'IANA,RFC3640
28
- video/MPV 'IANA,RFC3555
29
- video/nv 'IANA,RFC4856
30
- video/ogg @ogg,ogv 'IANA,RFC5334
31
- video/parityfec 'IANA,RFC5109
32
- video/pointer 'IANA,RFC2862
33
- video/quicktime @qt,mov :base64 'IANA,RFC6381,[Lindner]
34
- video/raptorfec 'IANA,RFC6682
35
- video/raw 'IANA,RFC4175
36
- video/rtp-enc-aescm128 'IANA,[3GPP]
37
- video/rtploopback 'IANA,RFC6849
38
- video/rtx 'IANA,RFC4588
39
- video/SMPTE292M 'IANA,RFC3497
40
- video/ulpfec 'IANA,RFC5109
41
- video/vc1 'IANA,RFC4425
42
- video/vnd.CCTV 'IANA,[Rottmann]
43
- video/vnd.dece.hd 'IANA,[Dolan]
44
- video/vnd.dece.mobile 'IANA,[Dolan]
45
- video/vnd.dece.mp4 'IANA,[Dolan]
46
- video/vnd.dece.pd 'IANA,[Dolan]
47
- video/vnd.dece.sd 'IANA,[Dolan]
48
- video/vnd.dece.video 'IANA,[Dolan]
49
- video/vnd.directv.mpeg 'IANA,[Zerbe]
50
- video/vnd.directv.mpeg-tts 'IANA,[Zerbe]
51
- video/vnd.dlna.mpeg-tts 'IANA,[Heredia]
52
- video/vnd.dvb.file 'IANA,[Siebert],[Murray]
53
- video/vnd.fvt 'IANA,[Fuldseth]
54
- video/vnd.hns.video 'IANA,[Swaminathan]
55
- video/vnd.iptvforum.1dparityfec-1010 'IANA,[Nakamura]
56
- video/vnd.iptvforum.1dparityfec-2005 'IANA,[Nakamura]
57
- video/vnd.iptvforum.2dparityfec-1010 'IANA,[Nakamura]
58
- video/vnd.iptvforum.2dparityfec-2005 'IANA,[Nakamura]
59
- video/vnd.iptvforum.ttsavc 'IANA,[Nakamura]
60
- video/vnd.iptvforum.ttsmpeg2 'IANA,[Nakamura]
61
- video/vnd.motorola.video 'IANA,[McGinty]
62
- video/vnd.motorola.videop 'IANA,[McGinty]
63
- video/vnd.mpegurl @mxu,m4u :8bit 'IANA,[Recktenwald]
64
- video/vnd.ms-playready.media.pyv 'IANA,[DiAcetis]
65
- video/vnd.nokia.interleaved-multimedia @nim 'IANA,[Kangaslampi]
66
- video/vnd.nokia.videovoip 'IANA,[Nokia]
67
- video/vnd.objectvideo @mp4,m4v 'IANA,[Clark]
68
- video/vnd.radgamettools.bink 'IANA,[Andersson]
69
- video/vnd.radgamettools.smacker 'IANA,[Andersson]
70
- video/vnd.sealed.mpeg1 @s11 'IANA,[Petersen]
71
- video/vnd.sealed.mpeg4 @smpg,s14 'IANA,[Petersen]
72
- video/vnd.sealed.swf @sswf,ssw 'IANA,[Petersen]
73
- video/vnd.sealedmedia.softseal.mov @smov,smo,s1q 'IANA,[Petersen]
74
- video/vnd.uvvu.mp4 'IANA,[Dolan]
75
- video/vnd.vivo @viv,vivo 'IANA,[Wolfe]
@@ -1,16 +0,0 @@
1
- video/x-dl @dl :base64
2
- video/x-dv @dv
3
- video/x-fli @fli :base64
4
- video/x-flv @flv :base64
5
- video/x-gl @gl :base64
6
- video/x-ivf @ivf
7
- video/x-matroska @mkv
8
- video/x-motion-jpeg @mjpg,mjpeg
9
- video/x-ms-asf @asf,asx
10
- video/x-ms-wm @wm
11
- video/x-ms-wmv @wmv
12
- video/x-ms-wmx @wmx
13
- video/x-ms-wvx @wvx
14
- video/x-msvideo @avi :base64
15
- video/x-sgi-movie @movie :base64
16
- *video/webm @webm '{WebM=http://www.webmproject.org/code/specs/container/}
@@ -1,3 +0,0 @@
1
- *!video/dl @dl :base64 =use-instead:video/x-dl
2
- *!video/gl @gl :base64 =use-instead:video/x-gl
3
- *!video/vnd.dlna.mpeg-tts 'IANA,[Heredia]