diff --git a/CHANGELOG.md b/CHANGELOG.md index 46560b22fb..479c3935cb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,9 @@ Please visit [cucumber/CONTRIBUTING.md](https://github.com/cucumber/cucumber/blo ### Changed * Update dependency cucumber-gherkin to v26 ([#1688](https://github.com/cucumber/cucumber-ruby/pull/1688)) +* Replace dependency [mime-types](https://rubygems.org/gems/mime-types) + with [mini_mime](https://rubygems.org/gems/mini_mime) + ([#1695](https://github.com/cucumber/cucumber-ruby/pull/1695)) ### Deprecated diff --git a/cucumber.gemspec b/cucumber.gemspec index ce0e3c4e2b..8a79dc34a1 100644 --- a/cucumber.gemspec +++ b/cucumber.gemspec @@ -27,7 +27,7 @@ Gem::Specification.new do |s| s.add_dependency 'cucumber-html-formatter', '>= 19.1', '< 21.0' s.add_dependency 'cucumber-messages', '>= 18', '< 22' s.add_dependency 'diff-lcs', '~> 1.5', '>= 1.5.0' - s.add_dependency 'mime-types', '~> 3.4', '>= 3.4.1' + s.add_dependency 'mini_mime', '~> 1.0' s.add_dependency 'multi_test', '~> 1.1', '>= 1.1.0' s.add_dependency 'sys-uname', '~> 1.2', '>= 1.2.2' diff --git a/lib/cucumber/glue/proto_world.rb b/lib/cucumber/glue/proto_world.rb index 0a371b53df..40bb779832 100644 --- a/lib/cucumber/glue/proto_world.rb +++ b/lib/cucumber/glue/proto_world.rb @@ -3,7 +3,7 @@ require 'cucumber/gherkin/formatter/ansi_escapes' require 'cucumber/core/test/data_table' require 'cucumber/deprecate' -require 'mime/types' +require 'mini_mime' module Cucumber module Glue @@ -92,7 +92,7 @@ def attach(file, media_type = nil) return super unless File.file?(file) content = File.read(file, mode: 'rb') - media_type = MIME::Types.type_for(file).first if media_type.nil? + media_type = MiniMime.lookup_by_filename(file)&.content_type if media_type.nil? super(content, media_type.to_s) rescue StandardError