-
Notifications
You must be signed in to change notification settings - Fork 37
Expand file tree
/
Copy pathgovuk_tech_docs.gemspec
More file actions
70 lines (58 loc) · 2.97 KB
/
Copy pathgovuk_tech_docs.gemspec
File metadata and controls
70 lines (58 loc) · 2.97 KB
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
require "English"
lib = File.expand_path("lib", __dir__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require "govuk_tech_docs/version"
if ENV["DEPENDABOT_JOB"] == "true" # dependabot will only evaluate the bundler, and will not allow npm
warn "Skipping npm ci due to DEPENDABOT_JOB=true"
else
system("npm ci")
abort "npm ci failed" unless $CHILD_STATUS.success?
end
unless File.exist?("node_modules/govuk-frontend/dist/govuk/_base.scss")
abort "govuk-frontend npm package not installed"
end
Gem::Specification.new do |spec|
spec.name = "govuk_tech_docs"
spec.version = GovukTechDocs::VERSION
spec.authors = ["Government Digital Service"]
spec.email = ["govuk-dev@digital.cabinet-office.gov.uk"]
spec.summary = "Gem to distribute the GOV.UK Tech Docs Template"
spec.description = "Gem to distribute the GOV.UK Tech Docs Template. See https://github.com/alphagov/tech-docs-gem for the project."
spec.homepage = "https://github.com/alphagov/tech-docs-gem"
spec.license = "MIT"
files_in_git = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
# Include assets from GOV.UK Frontend library in the distributed gem
govuk_frontend_assets = Dir["node_modules/govuk-frontend/**/*.{scss,js,mjs,woff,woff2,png,svg,ico}", "node_modules/govuk-frontend/dist/govuk/assets/**/*.json"]
spec.files = files_in_git + govuk_frontend_assets
spec.bindir = "exe"
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
spec.require_paths = %w[lib]
spec.required_ruby_version = ">= 3.3.0"
spec.add_dependency "autoprefixer-rails"
spec.add_dependency "chronic"
spec.add_dependency "concurrent-ruby"
spec.add_dependency "csv" # TODO: remove once tilt declares this itself.
spec.add_dependency "haml", "~> 6.0" # middleman-core (4.6.3) depends on haml (>= 4.0.5, < 7)
spec.add_dependency "middleman"
spec.add_dependency "middleman-autoprefixer"
spec.add_dependency "middleman-compass"
spec.add_dependency "middleman-livereload"
spec.add_dependency "middleman-search-gds"
# middleman-sprockets is very old and out of date. V4.1.0 has a breaking change. Will look to replace with gem "dartsass-sprockets" or uses sass in the package.json
spec.add_dependency "middleman-sprockets", "4.0.0"
spec.add_dependency "middleman-syntax"
spec.add_dependency "mutex_m" # TODO: remove once activesupport declares this itself.
spec.add_dependency "nokogiri"
spec.add_dependency "openapi3_parser"
spec.add_dependency "redcarpet"
spec.add_dependency "sassc-embedded"
spec.add_dependency "schmooze", "~> 0.2.0"
spec.add_dependency "terser", "~> 1.2.3"
spec.add_development_dependency "benchmark"
spec.add_development_dependency "byebug"
spec.add_development_dependency "capybara"
spec.add_development_dependency "ostruct"
spec.add_development_dependency "rake"
spec.add_development_dependency "rspec"
spec.add_development_dependency "rubocop-govuk"
end