Skip to content

Releases: gabriel-vasile/mimetype

v1.4.10-rc2 XHTML, Lotus, KML, VSDX, OneNote, shell scripts

20 Aug 09:38
Compare
Choose a tag to compare

This release adds support for XHTML, Lotus-1-2-3, KML, and shell scripts. Changes were made to make mimetype behave more file linux $ file --mime utility

https://github.com/gabriel-vasile/mimetype_tests repo is now used for running comparisons betweem mimetype and $ file --mime. It contains 50 000 samples and mimetype identifies the same format as $ file --mime for ~97% of them.

What's Changed

  • charset: remove dependency on x/net for parsing html in #669
  • CSV: replace stdlib reader with a parser that allocates less in #672
  • svg: make detection harder in #674
  • pdf: relax check to match file in #677
  • csv: stop mutating input byte slices; for #680 in #681
  • charset: remove dependency on mime in #684
  • mso_office: increase limit of checked entries from 4 to 100 in #685
  • jar: replace application/jar with application/java-archive in #686
  • Zip container improvements in #687
  • Jar first entry inside a zip in #688
  • svg+html: better handling for comments in #689
  • xhtml: add support in #690
  • misc: behave more like file in #691
  • lotus-1-2-3: add support in #695
  • Add support for zipped KML files by @dmlambea in #693
  • shell: add support by @scop in #694
  • ruby: add support by @scop in #700
  • python: associate with python2 and python3 shebangs by @scop in #699
  • vsdx: add support in #702
  • oneNote: add support in #703

New Contributors

Full Changelog: v1.4.9...v1.4.10-rc1

v1.4.10-rc1 XHTML, Lotus, KML and shell scripts

09 Aug 12:05
Compare
Choose a tag to compare

This release adds support for XHTML, Lotus-1-2-3, KML, and shell scripts. Changes were made to make mimetype behave more file linux $ file --mime utility

https://github.com/gabriel-vasile/mimetype_tests repo is now used for running comparisons betweem mimetype and $ file --mime. It contains 50 000 samples and mimetype identifies the same format as $ file --mime for ~97% of them.

What's Changed

  • charset: remove dependency on x/net for parsing html in #669
  • CSV: replace stdlib reader with a parser that allocates less in #672
  • svg: make detection harder in #674
  • pdf: relax check to match file in #677
  • csv: stop mutating input byte slices; for #680 in #681
  • charset: remove dependency on mime in #684
  • mso_office: increase limit of checked entries from 4 to 100 in #685
  • jar: replace application/jar with application/java-archive in #686
  • Zip container improvements in #687
  • Jar first entry inside a zip in #688
  • svg+html: better handling for comments in #689
  • xhtml: add support in #690
  • misc: behave more like file in #691
  • lotus-1-2-3: add support in #695
  • Add support for zipped KML files by @dmlambea in #693
  • shell: add support by @scop in #694

New Contributors

Full Changelog: v1.4.9...v1.4.10-rc1

v1.4.9 GLTF support and performance improvements

17 Apr 23:56
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.4.8...v1.4.9

v1.4.8 Add support for APK

04 Jan 09:31
66d56c2
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.4.7...v1.4.8

v1.4.7

20 Nov 14:14
575b761
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.4.6...v1.4.7

v1.4.6

14 Oct 14:18
2998a94
Compare
Choose a tag to compare

What's Changed

  • Improve ftyp detection in #564
  • CSV/TSV use a pool of buffered readers to avoid allocs by in #573
  • feat: Add parquet file detection by @kwkelly in #578
  • add application/xml as alias of text/xml in #581
  • retract v1.4.4; closes #575 in #591
  • action for benchmarking detectors in #590
  • Remove GPL file by @canadacow in #583

New Contributors

Full Changelog: v1.4.5...v1.4.6

v1.4.5

26 Jul 07:29
b36b70f
Compare
Choose a tag to compare

What's Changed

  • json: improve performance by using a pool of scanners in #535
  • tar: remove strconv dependency for tar checksum octal numbers in #536
  • zip: use []byte instead of string to prevent allocs in #537
  • remove tarbomb from testdata folder in #540
  • Updating RTF Magic number to match https://www.iana.org/assignments/media-types/application/rtf by @zdiff in #544
  • alias text/rtf to application/rtf in #547
  • reduce project size by moving mimetype.gif to testdata in #548
  • Bump golang.org/x/net from 0.25.0 to 0.27.0 in the gomod group across 1 directory by @dependabot in #552
  • remove exe from testdata in #561

New Contributors

Full Changelog: v1.4.4...v1.4.5

v1.4.4

24 May 06:51
43192c8
Compare
Choose a tag to compare

What's Changed

Security fixes:

Update golang.org/x/net to latest. Fixes: CVE-2023-45288

Performance improvements:

  • Change tar detection to use checksum instead of legal ranges of values in #466
  • ftyp: exit asap to prevent mem allocs in #517
  • Improve x-subrip detection performance in #524
  • improve performance for text detection in #532
  • Using io.ReadAll instead of ioutil.ReadAll by @phihungtf in #525

Benchmarks:

before:
BenchmarkText/application/x-ndjson-8              663314              2027 ns/op            4306 B/op          6 allocs/op
BenchmarkSliceRand-8                              688160              1690 ns/op             728 B/op         75 allocs/op
BenchmarkSrt-8                                    946042              1089 ns/op            4240 B/op          5 allocs/op
after:
BenchmarkText/application/x-ndjson-8             1930292               678.6 ns/op           160 B/op          4 allocs/op
BenchmarkSliceRand-8                             1232066              1173 ns/op             160 B/op          4 allocs/op
BenchmarkSrt-8                                   3235448               368.8 ns/op            64 B/op          2 allocs/op

New Contributors

Full Changelog: v1.4.3...v1.4.4

v1.4.3

12 Oct 14:05
e64d6bd
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.4.2...v1.4.3

v1.4.2

08 Mar 14:02
6f575b3
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.4.1...v1.4.2