File: Rakefile

package info (click to toggle)
ruby-mime-types-data 3.2025.0924-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 1,324 kB
  • sloc: ruby: 9; makefile: 7
file content (105 lines) | stat: -rw-r--r-- 2,468 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# frozen_string_literal: true

require "rubygems"
require "hoe"
require "rake/clean"

$LOAD_PATH.unshift("lib", "support")

Hoe.plugin :halostatue

Hoe.plugins.delete :debug
Hoe.plugins.delete :newb
Hoe.plugins.delete :publish
Hoe.plugins.delete :signing

Hoe.spec "mime-types-data" do
  developer("Austin Ziegler", "halostatue@gmail.com")

  self.trusted_release = ENV["rubygems_release_gem"] == "true"

  require_ruby_version ">= 2.0"

  license "MIT"

  spec_extras[:metadata] = ->(val) {
    val.merge!({"rubygems_mfa_required" => "true"})
  }

  extra_dev_deps << ["hoe", "~> 4.0"]
  extra_dev_deps << ["hoe-halostatue", "~> 2.0"]
  extra_dev_deps << ["mime-types", "> 3.6.2", "< 5"]
  extra_dev_deps << ["nokogiri", "~> 1.6"]
  extra_dev_deps << ["rake", ">= 10.0", "< 14"]
  extra_dev_deps << ["standard", "~> 1.0"]
end

namespace :mime do
  desc "Download the current MIME type registrations from IANA."
  task :iana, [:destination] do |_, args|
    require "iana_registry"
    IANARegistry.download(to: args.destination)
  end

  desc "Download the current MIME type configuration from Apache httpd."
  task :apache, [:destination] do |_, args|
    require "apache_mime_types"
    ApacheMIMETypes.download(to: args.destination)
  end

  desc "Download the current MIME type configuration from Apache Tika."
  task :tika, [:destination] do |_, args|
    require "tika_mime_types"
    TikeMIMETypes.download(to: args.destination)
  end
end

task :version do
  require "mime/types/data"
  puts MIME::Types::Data::VERSION
end

namespace :release do
  desc "Prepare a new release"
  task :prepare do
    require "prepare_release"

    PrepareRelease.new
      .download_and_convert
      .write_updated_version
      .write_updated_history
      .rake_git_manifest
      .rake_gemspec
  end

  desc "Prepare a new release for use with GitHub Actions"
  task :gha do
    require "prepare_release"

    PrepareRelease.new
      .download_and_convert
      .write_updated_version
      .write_updated_history
      .rake_git_manifest
      .rake_gemspec
      .as_gha_vars
  end
end

desc "Full data conversion for release"
task :convert do
  require "prepare_release"

  PrepareRelease.new.convert_types
end

task "convert:upgrade" do
  require "convert"
  Convert.from_yaml_to_yaml
end

Rake::Task["gem"].prerequisites.unshift("convert")
Rake::Task["gem"].prerequisites.unshift("git:manifest")
Rake::Task["gem"].prerequisites.unshift("gemspec")

# vim: syntax=ruby