sexpr 1.0.0 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +18 -9
- data/lib/sexpr/grammar/options.rb +2 -2
- data/lib/sexpr/parser/citrus.rb +2 -2
- data/lib/sexpr/version.rb +1 -1
- data/lib/sexpr.rb +2 -2
- data/spec/unit/parser/test_input_text.rb +2 -2
- metadata +8 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7443a85e9707b7dda46f8ad3114a60b0dde2e1d79d109e0f9c035032c7ff7076
|
4
|
+
data.tar.gz: 44aa06026a8e7109aa341a8dfa33520ababa941b3c1b2a59c6f459f98c69361a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 863dd88e82ba1d50cc4c83c18f0aceed3415b7dc3ef5a448e95878ac78bba3561a806e3ad2d4a6e2f8ed4561a810851b1d24831ab782dc97418b05ecc5d9d688
|
7
|
+
data.tar.gz: 678512db91ae099f49129aed7672ea3e5d236b1f34539c467497bdf4959bd264fec74631963e01e1aad92b6baee78d66eedb7c3d6b09b84623469cca58d23d67
|
data/CHANGELOG.md
CHANGED
@@ -1,10 +1,19 @@
|
|
1
|
-
|
1
|
+
## 1.1.0 / 2023-06-09
|
2
|
+
|
3
|
+
* Removed (tested) support for ruby < 2.7. No breaking change though,
|
4
|
+
but those versions are no longer supported
|
5
|
+
|
6
|
+
* Bumped path dependency to 2.1.x
|
7
|
+
|
8
|
+
* Fix File.exists? usages not working under ruby 3.2
|
9
|
+
|
10
|
+
## 1.0.0 / 2021-12-11
|
2
11
|
|
3
12
|
* Upgrade project structure to modern Enspirit practices
|
4
13
|
|
5
14
|
* Citrus dependency upgraded to 3.x and code fixed accordingly
|
6
15
|
|
7
|
-
|
16
|
+
## 0.6.0 / 2012-09-13
|
8
17
|
|
9
18
|
* Major enhancements (possibly breaking changes)
|
10
19
|
|
@@ -20,7 +29,7 @@
|
|
20
29
|
module used to tag a given grammar rule production.
|
21
30
|
* `Grammar#looks_a_sexpr?(arg)` became public.
|
22
31
|
|
23
|
-
|
32
|
+
## 0.5.1 / 2012-03-13
|
24
33
|
|
25
34
|
* Minor enhancements
|
26
35
|
|
@@ -33,7 +42,7 @@
|
|
33
42
|
* Use `reference.const_get(name, *false*)` when looking for tagging modules to avoid
|
34
43
|
finding ruby classes such as Array when tagging sexpr such as [:array, ...].
|
35
44
|
|
36
|
-
|
45
|
+
## 0.5.0 / 2012-02-25
|
37
46
|
|
38
47
|
* Major enhancements
|
39
48
|
|
@@ -72,7 +81,7 @@
|
|
72
81
|
* The `Processor#main_processor` feature (undocumented and unused in examples) has been
|
73
82
|
removed. Using preprocessors is much cleaner that linking processors to each other.
|
74
83
|
|
75
|
-
|
84
|
+
## 0.4.0 / 2012-02-23
|
76
85
|
|
77
86
|
* Major enhancements
|
78
87
|
|
@@ -101,7 +110,7 @@
|
|
101
110
|
tracking markers (see enhancements). To palliate to this, default parsing options can
|
102
111
|
now be specified through `Grammar#default_parse_options` (see enhancements).
|
103
112
|
|
104
|
-
|
113
|
+
## 0.3.0 / 2012-02-21
|
105
114
|
|
106
115
|
* Breaking changes
|
107
116
|
|
@@ -124,7 +133,7 @@
|
|
124
133
|
to module names. That convention may however be overridden with specific grammar
|
125
134
|
methods (see the BoolExpr example).
|
126
135
|
|
127
|
-
|
136
|
+
## 0.2.0 / 2012-02-21
|
128
137
|
|
129
138
|
* Enhancements
|
130
139
|
|
@@ -132,8 +141,8 @@
|
|
132
141
|
* The root rule to use can now be specified in the options hash taken as second argument
|
133
142
|
of `SexpGrammar.grammar(..., :root => :some_rule_name)`
|
134
143
|
|
135
|
-
|
144
|
+
## 0.1.0 / 2012-02-20
|
136
145
|
|
137
146
|
* Enhancements
|
138
147
|
|
139
|
-
* Birthday!
|
148
|
+
* Birthday!
|
@@ -38,7 +38,7 @@ module Sexpr
|
|
38
38
|
|
39
39
|
def install_parser
|
40
40
|
@parser = option(:parser)
|
41
|
-
if @parser.is_a?(String) && !File.
|
41
|
+
if @parser.is_a?(String) && !File.exist?(@parser)
|
42
42
|
unless path
|
43
43
|
raise Errno::ENOENT, "#{@parser} (no main path)"
|
44
44
|
end
|
@@ -53,4 +53,4 @@ module Sexpr
|
|
53
53
|
|
54
54
|
end # module Options
|
55
55
|
end # module Grammar
|
56
|
-
end # module Sexpr
|
56
|
+
end # module Sexpr
|
data/lib/sexpr/parser/citrus.rb
CHANGED
@@ -12,7 +12,7 @@ module Sexpr
|
|
12
12
|
|
13
13
|
def looks_a_citrus_file?(arg)
|
14
14
|
arg = arg.to_path if arg.respond_to?(:to_path)
|
15
|
-
arg.is_a?(String) && File.
|
15
|
+
arg.is_a?(String) && File.exist?(arg) && (File.extname(arg) == ".citrus")
|
16
16
|
end
|
17
17
|
|
18
18
|
def looks_a_citrus_grammar?(arg)
|
@@ -53,4 +53,4 @@ module Sexpr
|
|
53
53
|
Sexpr::Parser.register self
|
54
54
|
end # class Citrus
|
55
55
|
end # module Parser
|
56
|
-
end # module Sexpr
|
56
|
+
end # module Sexpr
|
data/lib/sexpr/version.rb
CHANGED
data/lib/sexpr.rb
CHANGED
@@ -16,7 +16,7 @@ module Sexpr
|
|
16
16
|
YAML_OPTIONS = { :permitted_classes => %w[Regexp], :aliases => true }
|
17
17
|
|
18
18
|
PathLike = lambda{|x|
|
19
|
-
x.respond_to?(:to_path) or (x.is_a?(String) and File.
|
19
|
+
x.respond_to?(:to_path) or (x.is_a?(String) and File.exist?(x))
|
20
20
|
}
|
21
21
|
|
22
22
|
def self.load(input, options = {})
|
@@ -50,4 +50,4 @@ module Sexpr
|
|
50
50
|
YAML.load(source)
|
51
51
|
end
|
52
52
|
end
|
53
|
-
end # module Sexpr
|
53
|
+
end # module Sexpr
|
@@ -8,7 +8,7 @@ module Sexpr
|
|
8
8
|
end
|
9
9
|
|
10
10
|
it 'accepts a path' do
|
11
|
-
input_text(Path.
|
11
|
+
input_text(Path.file).should eq(File.read(__FILE__))
|
12
12
|
end
|
13
13
|
|
14
14
|
it 'accepts an IO' do
|
@@ -24,4 +24,4 @@ module Sexpr
|
|
24
24
|
end
|
25
25
|
|
26
26
|
end
|
27
|
-
end
|
27
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sexpr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bernard Lambeau
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-06-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: path
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '1
|
19
|
+
version: '2.1'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '1
|
26
|
+
version: '2.1'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: citrus
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -170,7 +170,7 @@ files:
|
|
170
170
|
homepage: https://github.com/blambeau/sexp
|
171
171
|
licenses: []
|
172
172
|
metadata: {}
|
173
|
-
post_install_message:
|
173
|
+
post_install_message:
|
174
174
|
rdoc_options: []
|
175
175
|
require_paths:
|
176
176
|
- lib
|
@@ -185,8 +185,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
185
|
- !ruby/object:Gem::Version
|
186
186
|
version: '0'
|
187
187
|
requirements: []
|
188
|
-
rubygems_version: 3.1.
|
189
|
-
signing_key:
|
188
|
+
rubygems_version: 3.1.6
|
189
|
+
signing_key:
|
190
190
|
specification_version: 4
|
191
191
|
summary: A compilation framework around s-expressions
|
192
192
|
test_files: []
|