solargraph-rails 0.2.0.pre → 0.2.2.pre.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +17 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +109 -0
- data/README.md +14 -18
- data/assets/solar_rails_associations.gif +0 -0
- data/lib/solargraph-rails.rb +4 -0
- data/lib/solargraph/rails/meta_source/association/belongs_to_matcher.rb +24 -0
- data/lib/solargraph/rails/meta_source/association/has_and_belongs_to_many_matcher.rb +24 -0
- data/lib/solargraph/rails/meta_source/association/has_many_matcher.rb +24 -0
- data/lib/solargraph/rails/meta_source/association/has_one_matcher.rb +24 -0
- data/lib/solargraph/rails/pin_creator.rb +30 -1
- data/lib/solargraph/rails/ruby_parser.rb +7 -0
- data/lib/solargraph/rails/version.rb +1 -1
- data/solargraph-rails.gemspec +3 -2
- metadata +28 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f2ceb38938b95c2d2772c9b863053613a30f91fb6bfdcf3a8373de01b8c95484
|
4
|
+
data.tar.gz: f385b1fd2a0839ba5f8fd9c5476b068c56ddcac510382cd453c3524ce6f50d82
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 11d1095b3e45568950dff2ed39272e282507f093e9021143b0108242b01d4ccd568ec3932f9fdb68f2b7aeea6c95f359fbdb464630238c01e7a92fbcf434fa1e
|
7
|
+
data.tar.gz: 420248dfa30f8da3e279a0e0f77fd48f6e1057ddaa5ab97aeaef96e76aa738cdb64ddb7ef3974594f4edf7cacce912820e0ec260286826808928527f73ab06be
|
data/CHANGELOG.md
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
# solargraph-rails changelog
|
2
|
+
|
3
|
+
## Changes
|
4
|
+
|
5
|
+
### v0.2.2.pre
|
6
|
+
|
7
|
+
* Simplistic support for associations
|
8
|
+
* Added dependency on ActiveSupport 6.1 for helpful String methods like `.camelize` and `.singularize`
|
9
|
+
|
10
|
+
### v0.2.1
|
11
|
+
|
12
|
+
* Update Solargraph to 0.41
|
13
|
+
|
14
|
+
### v0.2.0
|
15
|
+
First released version with no need to use --pre!
|
16
|
+
|
17
|
+
* Updated dependencies with security warnings
|
data/Gemfile
CHANGED
data/Gemfile.lock
ADDED
@@ -0,0 +1,109 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
solargraph-rails (0.2.2.pre.3)
|
5
|
+
activesupport (~> 6.1.3)
|
6
|
+
solargraph (~> 0.42.1)
|
7
|
+
|
8
|
+
GEM
|
9
|
+
remote: https://rubygems.org/
|
10
|
+
specs:
|
11
|
+
activesupport (6.1.3.2)
|
12
|
+
concurrent-ruby (~> 1.0, >= 1.0.2)
|
13
|
+
i18n (>= 1.6, < 2)
|
14
|
+
minitest (>= 5.1)
|
15
|
+
tzinfo (~> 2.0)
|
16
|
+
zeitwerk (~> 2.3)
|
17
|
+
ast (2.4.2)
|
18
|
+
backport (1.2.0)
|
19
|
+
benchmark (0.1.1)
|
20
|
+
bundler-audit (0.8.0)
|
21
|
+
bundler (>= 1.2.0, < 3)
|
22
|
+
thor (~> 1.0)
|
23
|
+
byebug (11.1.3)
|
24
|
+
concurrent-ruby (1.1.9)
|
25
|
+
diff-lcs (1.4.4)
|
26
|
+
e2mmap (0.1.0)
|
27
|
+
i18n (1.8.10)
|
28
|
+
concurrent-ruby (~> 1.0)
|
29
|
+
jaro_winkler (1.5.4)
|
30
|
+
kramdown (2.3.1)
|
31
|
+
rexml
|
32
|
+
kramdown-parser-gfm (1.1.0)
|
33
|
+
kramdown (~> 2.0)
|
34
|
+
mini_portile2 (2.5.3)
|
35
|
+
minitest (5.14.4)
|
36
|
+
nokogiri (1.11.7)
|
37
|
+
mini_portile2 (~> 2.5.0)
|
38
|
+
racc (~> 1.4)
|
39
|
+
parallel (1.20.1)
|
40
|
+
parser (3.0.1.1)
|
41
|
+
ast (~> 2.4.1)
|
42
|
+
racc (1.5.2)
|
43
|
+
rainbow (3.0.0)
|
44
|
+
rake (12.3.3)
|
45
|
+
regexp_parser (2.1.1)
|
46
|
+
reverse_markdown (2.0.0)
|
47
|
+
nokogiri
|
48
|
+
rexml (3.2.5)
|
49
|
+
rspec (3.10.0)
|
50
|
+
rspec-core (~> 3.10.0)
|
51
|
+
rspec-expectations (~> 3.10.0)
|
52
|
+
rspec-mocks (~> 3.10.0)
|
53
|
+
rspec-core (3.10.0)
|
54
|
+
rspec-support (~> 3.10.0)
|
55
|
+
rspec-expectations (3.10.0)
|
56
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
57
|
+
rspec-support (~> 3.10.0)
|
58
|
+
rspec-mocks (3.10.0)
|
59
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
60
|
+
rspec-support (~> 3.10.0)
|
61
|
+
rspec-support (3.10.0)
|
62
|
+
rubocop (1.17.0)
|
63
|
+
parallel (~> 1.10)
|
64
|
+
parser (>= 3.0.0.0)
|
65
|
+
rainbow (>= 2.2.2, < 4.0)
|
66
|
+
regexp_parser (>= 1.8, < 3.0)
|
67
|
+
rexml
|
68
|
+
rubocop-ast (>= 1.7.0, < 2.0)
|
69
|
+
ruby-progressbar (~> 1.7)
|
70
|
+
unicode-display_width (>= 1.4.0, < 3.0)
|
71
|
+
rubocop-ast (1.7.0)
|
72
|
+
parser (>= 3.0.1.1)
|
73
|
+
ruby-progressbar (1.11.0)
|
74
|
+
solargraph (0.42.3)
|
75
|
+
backport (~> 1.2)
|
76
|
+
benchmark
|
77
|
+
bundler (>= 1.17.2)
|
78
|
+
diff-lcs (~> 1.4)
|
79
|
+
e2mmap
|
80
|
+
jaro_winkler (~> 1.5)
|
81
|
+
kramdown (~> 2.3)
|
82
|
+
kramdown-parser-gfm (~> 1.1)
|
83
|
+
parser (~> 3.0)
|
84
|
+
reverse_markdown (>= 1.0.5, < 3)
|
85
|
+
rubocop (>= 0.52)
|
86
|
+
thor (~> 1.0)
|
87
|
+
tilt (~> 2.0)
|
88
|
+
yard (~> 0.9, >= 0.9.24)
|
89
|
+
thor (1.1.0)
|
90
|
+
tilt (2.0.10)
|
91
|
+
tzinfo (2.0.4)
|
92
|
+
concurrent-ruby (~> 1.0)
|
93
|
+
unicode-display_width (2.0.0)
|
94
|
+
yard (0.9.26)
|
95
|
+
zeitwerk (2.4.2)
|
96
|
+
|
97
|
+
PLATFORMS
|
98
|
+
ruby
|
99
|
+
|
100
|
+
DEPENDENCIES
|
101
|
+
bundler (~> 2.2.10)
|
102
|
+
bundler-audit
|
103
|
+
byebug
|
104
|
+
rake (~> 12.3.3)
|
105
|
+
rspec (~> 3.0)
|
106
|
+
solargraph-rails!
|
107
|
+
|
108
|
+
BUNDLED WITH
|
109
|
+
2.2.16
|
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# Solargraph::Rails - Help solargraph with Rails
|
2
2
|
|
3
3
|
## Work in progress - here be dragons
|
4
|
-
There are significant rough edges to this gem still.
|
4
|
+
There are significant rough edges to this gem still.
|
5
5
|
|
6
6
|
## Models
|
7
7
|
Given a typical Rails model like this:
|
@@ -51,8 +51,10 @@ Solargraph won't know about attributes that you add during a session. Restart yo
|
|
51
51
|
|
52
52
|
For my setup with Emacs, that means running `M-x lsp-workspace-restart`, YMMV in other editors.
|
53
53
|
|
54
|
-
## Associations
|
55
|
-
|
54
|
+
## Associations (experimental)
|
55
|
+
There is very hacky and simplistic support for `belongs_to` and `has_many` macros, if you are willing to use `gem install solargraph-rails --pre`:
|
56
|
+
|
57
|
+
![Experimental autocomplete and go to definition of associations](assets/solar_rails_associations.gif)
|
56
58
|
|
57
59
|
## Known issues
|
58
60
|
This project is being used to write production code by the maintainer, but it is still WIP. Check out the issues tab and contribute if you are interested.
|
@@ -61,26 +63,20 @@ This project is being used to write production code by the maintainer, but it is
|
|
61
63
|
|
62
64
|
### Install `solargraph` v0.40+ and `solargraph_rails` locally
|
63
65
|
|
64
|
-
|
65
|
-
|
66
|
-
1. Clone solargraph and update version.rb to 0.40.0
|
67
|
-
2. Run `gem build` in the root of your clone to create `solargraph-0.40.0.gem`
|
68
|
-
3. Clone solargraph_rails
|
69
|
-
4. Run `gem build` in the root of your clone to create `solargraph_rails-0.1.1.gem`
|
70
|
-
5. From the root of your Rails app, install solargraph locally: `gem install --local /path/to/solargraph-0.40.0.gem`
|
71
|
-
6. From the root of your Rails app, install solargraph_rails locally: `gem install --local /path/to/solargraph_rails-0.1.1.gem`
|
66
|
+
Typically gems like these are not installed via the Gemfile, because most projects have more than one contributor and other contributors might have different setups for their editors in mind. Instead you need to use `gem install`.
|
72
67
|
|
73
|
-
|
74
|
-
This is the path described above. typically gems like these are not installed via the Gemfile, because most projects have more than one contributor and other contributors might have different setups for their editors in mind. Instead you need to use `gem install`.
|
68
|
+
`gem install solargraph-rails`
|
75
69
|
|
76
70
|
#### Alternative: using bundler
|
77
|
-
If you do want to use bundler, add `gem
|
71
|
+
If you do want to use bundler, add `gem 'solargraph-rails', '~> 0.2.0'`
|
72
|
+
|
73
|
+
### Add `solargraph-rails` to your `.solargraph.yml`
|
78
74
|
|
79
|
-
|
75
|
+
(if you don't have a `.solargraph.yml` in your project root, you can run `solargraph config` to add one)
|
80
76
|
|
81
77
|
```
|
82
78
|
plugins:
|
83
|
-
-
|
79
|
+
- solargraph-rails
|
84
80
|
```
|
85
81
|
|
86
82
|
### Add annotate
|
@@ -92,9 +88,9 @@ Fork the project, start hacking, put up a PR :).
|
|
92
88
|
|
93
89
|
When you make changes, you probably need to shut down solargraph and restart it (maybe that requires you to shut down your whole editor?). You can speed up the feedback loop by running
|
94
90
|
|
95
|
-
`api_map = Solargraph::ApiMap.load(Rails.root)`
|
91
|
+
`api_map = Solargraph::ApiMap.load(Rails.root.to_s)`
|
96
92
|
|
97
|
-
in the console of the Rails project where
|
93
|
+
in the console of the Rails project where solargraph-rails is installed. This may require restarting the rails console each time, and possibly killing Spring.
|
98
94
|
|
99
95
|
Once you have an instance of `Solargraph::ApiMap`, you can interrogate it with Solargraph code like:
|
100
96
|
|
Binary file
|
data/lib/solargraph-rails.rb
CHANGED
@@ -5,6 +5,10 @@ require 'solargraph/rails/version'
|
|
5
5
|
require_relative 'solargraph/rails/pin_creator'
|
6
6
|
require_relative 'solargraph/rails/ruby_parser'
|
7
7
|
require_relative 'solargraph/rails/files_loader'
|
8
|
+
require_relative 'solargraph/rails/meta_source/association/belongs_to_matcher'
|
9
|
+
require_relative 'solargraph/rails/meta_source/association/has_many_matcher'
|
10
|
+
require_relative 'solargraph/rails/meta_source/association/has_one_matcher'
|
11
|
+
require_relative 'solargraph/rails/meta_source/association/has_and_belongs_to_many_matcher'
|
8
12
|
|
9
13
|
module Solargraph
|
10
14
|
module Rails
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module MetaSource
|
2
|
+
module Association
|
3
|
+
class BelongsToMatcher
|
4
|
+
attr_reader :name
|
5
|
+
|
6
|
+
def match?(line)
|
7
|
+
line =~ /belongs_to\s+:([a-z_]*)/
|
8
|
+
@name = Regexp.last_match(1)
|
9
|
+
|
10
|
+
return unless @name
|
11
|
+
|
12
|
+
return @name unless line =~ /class_name:\s+["']([A-Za-z0-9]+)/
|
13
|
+
|
14
|
+
@type = Regexp.last_match(1)
|
15
|
+
|
16
|
+
@name
|
17
|
+
end
|
18
|
+
|
19
|
+
def type
|
20
|
+
@type || name&.camelize
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module MetaSource
|
2
|
+
module Association
|
3
|
+
class HasAndBelongsToManyMatcher
|
4
|
+
attr_reader :name
|
5
|
+
|
6
|
+
def match?(line)
|
7
|
+
line =~ /has_and_belongs_to_many\s+:([a-z_]*)/
|
8
|
+
@name = Regexp.last_match(1)
|
9
|
+
|
10
|
+
return unless @name
|
11
|
+
|
12
|
+
if line =~ /class_name:\s+["']([A-Za-z0-9]+)/
|
13
|
+
@type = Regexp.last_match(1)
|
14
|
+
end
|
15
|
+
|
16
|
+
@name
|
17
|
+
end
|
18
|
+
|
19
|
+
def type
|
20
|
+
"ActiveRecord::Associations::CollectionProxy<#{@type || name.singularize.camelize}>"
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module MetaSource
|
2
|
+
module Association
|
3
|
+
class HasManyMatcher
|
4
|
+
attr_reader :name
|
5
|
+
|
6
|
+
def match?(line)
|
7
|
+
line =~ /has_many\s+:([a-z_]*)/
|
8
|
+
@name = Regexp.last_match(1)
|
9
|
+
|
10
|
+
return unless @name
|
11
|
+
|
12
|
+
if line =~ /class_name:\s+["']([A-Za-z0-9]+)/
|
13
|
+
@type = Regexp.last_match(1)
|
14
|
+
end
|
15
|
+
|
16
|
+
@name
|
17
|
+
end
|
18
|
+
|
19
|
+
def type
|
20
|
+
"ActiveRecord::Associations::CollectionProxy<#{@type || name.singularize.camelize}>"
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module MetaSource
|
2
|
+
module Association
|
3
|
+
class HasOneMatcher
|
4
|
+
attr_reader :name
|
5
|
+
|
6
|
+
def match?(line)
|
7
|
+
line =~ /has_one\s+:([a-z_]*)/
|
8
|
+
@name = Regexp.last_match(1)
|
9
|
+
|
10
|
+
return unless @name
|
11
|
+
|
12
|
+
if line =~ /class_name:\s+["']([A-Za-z0-9]+)/
|
13
|
+
@type = Regexp.last_match(1)
|
14
|
+
end
|
15
|
+
|
16
|
+
@name
|
17
|
+
end
|
18
|
+
|
19
|
+
def type
|
20
|
+
@type || name.camelize
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -1,5 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require 'active_support/core_ext/string'
|
4
|
+
|
3
5
|
module Solargraph
|
4
6
|
module Rails
|
5
7
|
class PinCreator
|
@@ -50,13 +52,32 @@ module Solargraph
|
|
50
52
|
end
|
51
53
|
end
|
52
54
|
|
55
|
+
parser.on_ruby_line do |line|
|
56
|
+
matcher = ruby_matchers.find do |m|
|
57
|
+
m.match?(line)
|
58
|
+
end
|
59
|
+
|
60
|
+
if matcher
|
61
|
+
loc = Solargraph::Location.new(
|
62
|
+
path,
|
63
|
+
Solargraph::Range.from_to(
|
64
|
+
parser.current_line_number,
|
65
|
+
0,
|
66
|
+
parser.current_line_number,
|
67
|
+
parser.current_line_length - 1
|
68
|
+
)
|
69
|
+
)
|
70
|
+
model_attrs << { name: matcher.name, type: matcher.type, location: loc }
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
53
74
|
parser.parse
|
54
75
|
|
55
76
|
Solargraph::Logging.logger.info "Adding #{model_attrs.count} attributes as pins"
|
56
77
|
model_attrs.map do |attr|
|
57
78
|
Solargraph::Pin::Method.new(
|
58
79
|
name: attr[:name],
|
59
|
-
comments: "@return [#{type_translation[attr[:type]
|
80
|
+
comments: "@return [#{type_translation.fetch(attr[:type], attr[:type])}]",
|
60
81
|
location: attr[:location],
|
61
82
|
closure: Solargraph::Pin::Namespace.new(name: module_names.join('::') + "::#{model_name}"),
|
62
83
|
scope: :instance,
|
@@ -65,6 +86,14 @@ module Solargraph
|
|
65
86
|
end
|
66
87
|
end
|
67
88
|
|
89
|
+
def ruby_matchers
|
90
|
+
[
|
91
|
+
MetaSource::Association::BelongsToMatcher.new,
|
92
|
+
MetaSource::Association::HasManyMatcher.new,
|
93
|
+
MetaSource::Association::HasOneMatcher.new,
|
94
|
+
MetaSource::Association::HasAndBelongsToManyMatcher.new
|
95
|
+
]
|
96
|
+
end
|
68
97
|
def col_with_type(line)
|
69
98
|
line
|
70
99
|
.gsub(/[\(\),:\d]/, '')
|
@@ -6,6 +6,7 @@ module Solargraph
|
|
6
6
|
def initialize(file_contents: '')
|
7
7
|
@lines = file_contents.lines
|
8
8
|
@comment_handlers = []
|
9
|
+
@non_comment_handlers = []
|
9
10
|
@class_handlers = []
|
10
11
|
@module_handlers = []
|
11
12
|
end
|
@@ -22,6 +23,10 @@ module Solargraph
|
|
22
23
|
@module_handlers << blk
|
23
24
|
end
|
24
25
|
|
26
|
+
def on_ruby_line(&blk)
|
27
|
+
@non_comment_handlers << blk
|
28
|
+
end
|
29
|
+
|
25
30
|
def parse
|
26
31
|
@lines
|
27
32
|
.map(&:rstrip)
|
@@ -32,6 +37,8 @@ module Solargraph
|
|
32
37
|
if is_comment?(line)
|
33
38
|
comment_content = line.gsub(/#\s*/, '')
|
34
39
|
@comment_handlers.each { |handler| handler.call(comment_content) }
|
40
|
+
else
|
41
|
+
@non_comment_handlers.each { |handler| handler.call(line) }
|
35
42
|
end
|
36
43
|
|
37
44
|
if is_class?(line)
|
data/solargraph-rails.gemspec
CHANGED
@@ -21,9 +21,10 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
22
|
spec.require_paths = ["lib"]
|
23
23
|
|
24
|
-
spec.add_development_dependency "bundler", "~> 2.
|
24
|
+
spec.add_development_dependency "bundler", "~> 2.2.10"
|
25
25
|
spec.add_development_dependency "rake", "~> 12.3.3"
|
26
26
|
spec.add_development_dependency "rspec", "~> 3.0"
|
27
27
|
|
28
|
-
spec.add_runtime_dependency "solargraph", "~> 0.
|
28
|
+
spec.add_runtime_dependency "solargraph", "~> 0.42.1"
|
29
|
+
spec.add_runtime_dependency "activesupport", "~> 6.1.3"
|
29
30
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: solargraph-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2.pre.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Fritz Meissner
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-06-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.
|
19
|
+
version: 2.2.10
|
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: 2.
|
26
|
+
version: 2.2.10
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,14 +58,28 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0.
|
61
|
+
version: 0.42.1
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0.
|
68
|
+
version: 0.42.1
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: activesupport
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 6.1.3
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 6.1.3
|
69
83
|
description: Add reflection on ActiveModel dynamic attributes that will be created
|
70
84
|
at runtime
|
71
85
|
email:
|
@@ -77,17 +91,24 @@ files:
|
|
77
91
|
- ".gitignore"
|
78
92
|
- ".rspec"
|
79
93
|
- ".travis.yml"
|
94
|
+
- CHANGELOG.md
|
80
95
|
- Gemfile
|
96
|
+
- Gemfile.lock
|
81
97
|
- LICENSE.txt
|
82
98
|
- README.md
|
83
99
|
- Rakefile
|
84
100
|
- assets/peek.png
|
101
|
+
- assets/solar_rails_associations.gif
|
85
102
|
- assets/solar_rails_autocomplete.gif
|
86
103
|
- assets/solar_rails_goto.gif
|
87
104
|
- bin/console
|
88
105
|
- bin/setup
|
89
106
|
- lib/solargraph-rails.rb
|
90
107
|
- lib/solargraph/rails/files_loader.rb
|
108
|
+
- lib/solargraph/rails/meta_source/association/belongs_to_matcher.rb
|
109
|
+
- lib/solargraph/rails/meta_source/association/has_and_belongs_to_many_matcher.rb
|
110
|
+
- lib/solargraph/rails/meta_source/association/has_many_matcher.rb
|
111
|
+
- lib/solargraph/rails/meta_source/association/has_one_matcher.rb
|
91
112
|
- lib/solargraph/rails/pin_creator.rb
|
92
113
|
- lib/solargraph/rails/ruby_parser.rb
|
93
114
|
- lib/solargraph/rails/version.rb
|
@@ -111,7 +132,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
111
132
|
- !ruby/object:Gem::Version
|
112
133
|
version: 1.3.1
|
113
134
|
requirements: []
|
114
|
-
rubygems_version: 3.
|
135
|
+
rubygems_version: 3.2.3
|
115
136
|
signing_key:
|
116
137
|
specification_version: 4
|
117
138
|
summary: Solargraph plugin that adds Rails-specific code through a Convention
|