-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdescent.gemspec
More file actions
42 lines (34 loc) · 1.46 KB
/
descent.gemspec
File metadata and controls
42 lines (34 loc) · 1.46 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
# frozen_string_literal: true
require_relative 'lib/descent/version'
Gem::Specification.new do |spec|
spec.name = 'descent'
spec.version = Descent::VERSION
spec.authors = ['Joseph Wecker']
spec.email = ['joseph.wecker@gmail.com']
spec.summary = 'Recursive descent parser generator from .desc specifications'
spec.description = <<~DESC
Generates high-performance callback-based recursive descent parsers from
declarative .desc specifications. Supports target language of Rust and will
soon support multiple more target languages (Rust, C, wasm, ruby, go,
elixir...) via Liquid templates. The .desc format is valid UDON, enabling
future bootstrapping where descent can parse its own input format.
DESC
spec.homepage = 'https://github.com/v2-io/descent'
spec.license = 'MIT'
spec.required_ruby_version = '>= 3.3.0'
spec.metadata['homepage_uri'] = spec.homepage
spec.metadata['source_code_uri'] = spec.homepage
spec.metadata['changelog_uri'] = "#{spec.homepage}/blob/main/CHANGELOG.md"
spec.metadata['rubygems_mfa_required'] = 'true'
spec.files = Dir.chdir(__dir__) do
`git ls-files -z`.split("\x0").select do |f|
f.start_with?('lib/', 'exe/') ||
f.match?(/^(README|CHANGELOG|LICENSE|SYNTAX)/)
end
end
spec.bindir = 'exe'
spec.executables = ['descent']
spec.require_paths = ['lib']
spec.add_dependency 'devex', '~> 0.3'
spec.add_dependency 'liquid', '~> 5.0'
end