Commit 58da73a2 authored by Kerri Miller's avatar Kerri Miller

Merge branch 'development-solargraph-dependency' into 'master'

Add solargraph to development dependencies

See merge request gitlab-org/gitlab!59015
parents a046d9dc 27c3ab77
...@@ -105,3 +105,4 @@ ee/changelogs/unreleased-ee ...@@ -105,3 +105,4 @@ ee/changelogs/unreleased-ee
tags.lock tags.lock
tags.temp tags.temp
.stylelintcache .stylelintcache
.solargraph.yml
---
include:
- "**/*.rb"
exclude:
- "**/spec/**/*"
- qa/qa/specs/features/**/*
- vendor/**/*
- ".bundle/**/*"
require: []
domains: []
reporters:
- rubocop
- require_not_found
require_paths: []
plugins: []
max_files: 15000
...@@ -346,6 +346,7 @@ end ...@@ -346,6 +346,7 @@ end
group :development do group :development do
gem 'lefthook', '~> 0.7.0', require: false gem 'lefthook', '~> 0.7.0', require: false
gem 'solargraph', '~> 0.40.4', require: false
gem 'letter_opener_web', '~> 1.4.0' gem 'letter_opener_web', '~> 1.4.0'
......
...@@ -133,10 +133,12 @@ GEM ...@@ -133,10 +133,12 @@ GEM
net-http-persistent (~> 4.0) net-http-persistent (~> 4.0)
nokogiri (~> 1.11.0.rc2) nokogiri (~> 1.11.0.rc2)
babosa (1.0.2) babosa (1.0.2)
backport (1.1.2)
base32 (0.3.2) base32 (0.3.2)
batch-loader (2.0.1) batch-loader (2.0.1)
bcrypt (3.1.16) bcrypt (3.1.16)
bcrypt_pbkdf (1.0.0) bcrypt_pbkdf (1.0.0)
benchmark (0.1.1)
benchmark-ips (2.3.0) benchmark-ips (2.3.0)
benchmark-memory (0.1.2) benchmark-memory (0.1.2)
memory_profiler (~> 0.9) memory_profiler (~> 0.9)
...@@ -306,6 +308,7 @@ GEM ...@@ -306,6 +308,7 @@ GEM
dry-equalizer (~> 0.3) dry-equalizer (~> 0.3)
dry-inflector (~> 0.1, >= 0.1.2) dry-inflector (~> 0.1, >= 0.1.2)
dry-logic (~> 1.0, >= 1.0.2) dry-logic (~> 1.0, >= 1.0.2)
e2mmap (0.1.0)
ecma-re-validator (0.2.1) ecma-re-validator (0.2.1)
regexp_parser (~> 1.2) regexp_parser (~> 1.2)
ed25519 (1.2.4) ed25519 (1.2.4)
...@@ -633,6 +636,7 @@ GEM ...@@ -633,6 +636,7 @@ GEM
jaeger-client (1.1.0) jaeger-client (1.1.0)
opentracing (~> 0.3) opentracing (~> 0.3)
thrift thrift
jaro_winkler (1.5.4)
jira-ruby (2.1.4) jira-ruby (2.1.4)
activesupport activesupport
atlassian-jwt atlassian-jwt
...@@ -1194,6 +1198,20 @@ GEM ...@@ -1194,6 +1198,20 @@ GEM
slop (3.6.0) slop (3.6.0)
snowplow-tracker (0.6.1) snowplow-tracker (0.6.1)
contracts (~> 0.7, <= 0.11) contracts (~> 0.7, <= 0.11)
solargraph (0.40.4)
backport (~> 1.1)
benchmark
bundler (>= 1.17.2)
e2mmap
jaro_winkler (~> 1.5)
kramdown (~> 2.3)
kramdown-parser-gfm (~> 1.1)
parser (~> 3.0)
reverse_markdown (>= 1.0.5, < 3)
rubocop (>= 0.52)
thor (~> 1.0)
tilt (~> 2.0)
yard (~> 0.9, >= 0.9.24)
spring (2.1.1) spring (2.1.1)
spring-commands-rspec (1.0.4) spring-commands-rspec (1.0.4)
spring (>= 0.9.1) spring (>= 0.9.1)
...@@ -1334,6 +1352,7 @@ GEM ...@@ -1334,6 +1352,7 @@ GEM
xpath (3.2.0) xpath (3.2.0)
nokogiri (~> 1.8) nokogiri (~> 1.8)
yajl-ruby (1.4.1) yajl-ruby (1.4.1)
yard (0.9.26)
zeitwerk (2.4.2) zeitwerk (2.4.2)
PLATFORMS PLATFORMS
...@@ -1587,6 +1606,7 @@ DEPENDENCIES ...@@ -1587,6 +1606,7 @@ DEPENDENCIES
simplecov-cobertura (~> 1.3.1) simplecov-cobertura (~> 1.3.1)
slack-messenger (~> 2.3.4) slack-messenger (~> 2.3.4)
snowplow-tracker (~> 0.6.1) snowplow-tracker (~> 0.6.1)
solargraph (~> 0.40.4)
spring (~> 2.1.0) spring (~> 2.1.0)
spring-commands-rspec (~> 1.0.4) spring-commands-rspec (~> 1.0.4)
sprockets (~> 3.7.0) sprockets (~> 3.7.0)
......
...@@ -100,6 +100,9 @@ Our codebase style is defined and enforced by [RuboCop](https://github.com/ruboc ...@@ -100,6 +100,9 @@ Our codebase style is defined and enforced by [RuboCop](https://github.com/ruboc
You can check for any offenses locally with `bundle exec rubocop --parallel`. You can check for any offenses locally with `bundle exec rubocop --parallel`.
On the CI, this is automatically checked by the `static-analysis` jobs. On the CI, this is automatically checked by the `static-analysis` jobs.
In addition, you can [integrate RuboCop](../developing_with_solargraph.md) into
supported IDEs using the [solargraph](https://github.com/castwide/solargraph) gem.
For RuboCop rules that we have not taken a decision on yet, we follow the For RuboCop rules that we have not taken a decision on yet, we follow the
[Ruby Style Guide](https://github.com/rubocop-hq/ruby-style-guide), [Ruby Style Guide](https://github.com/rubocop-hq/ruby-style-guide),
[Rails Style Guide](https://github.com/rubocop-hq/rails-style-guide), and [Rails Style Guide](https://github.com/rubocop-hq/rails-style-guide), and
......
---
stage: Create
group: Source code
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments
---
# Using Solargraph
Gemfile packages [Solargraph](https://github.com/castwide/solargraph) language server for additional IntelliSense and code formatting capabilities with editors that support it.
Example configuration for solargraph can be found in [.solargraph.yml.example](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.solargraph.yml.example) file. Copy the contents of this file to `.solargraph.yml` file for language server to pick this configuration up. Since `.solargraph.yml` configuration file is ignored by Git, it's possible to adjust configuration according to your needs.
Refer to particular IDE plugin documentation on how to integrate it with solargraph language server:
- **Visual Studio Code**
- GitHub: [vscode-solargraph](https://github.com/castwide/vscode-solargraph)
- **Atom**
- GitHub: [atom-solargraph](https://github.com/castwide/atom-solargraph)
- **Vim**
- GitHub: [LanguageClient-neovim](https://github.com/autozimu/LanguageClient-neovim)
- **Emacs**
- GitHub: [emacs-solargraph](https://github.com/guskovd/emacs-solargraph)
- **Eclipse**
- GitHub: [eclipse-solargraph](https://github.com/PyvesB/eclipse-solargraph)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment