Skip to content
Permalink

Comparing changes

This is a direct comparison between two commits made in this repository or its related repositories. View the default comparison for this range or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: Shopify/ruby-lsp
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 7b8ff80b435cbe41a6be0b63a0c5aa1c3e6a5d0c
Choose a base ref
..
head repository: Shopify/ruby-lsp
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: f8fd63ca123650f2c371280bce77bac1d210e0fa
Choose a head ref
Showing 396 changed files with 37,008 additions and 28,214 deletions.
46 changes: 46 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_template_non_vscode.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
name: Ruby LSP bug (non-VS Code editors)
description: File a bug report about the Ruby LSP with non-VS Code editors
labels:
- bug
- non-vscode
- help-wanted
body:
- type: markdown
attributes:
value: |
Thank you for filing a bug report!
Please note that the maintainers only have bandwidth to prioritize VS Code support and lean on the community to assist with supporting other editors.
If you are using a non-VS Code editor, please follow these steps **before submitting a bug report**:
1. Follow the instructions on [troubleshooting](https://shopify.github.io/ruby-lsp/troubleshooting.html)
2. Check if the editor and LSP plugin you use are up to date, and if they support the latest [Language Server Protocol Specification](https://microsoft.github.io/language-server-protocol).
3. Seek help in the [Ruby DX Slack](https://join.slack.com/t/ruby-dx/shared_invite/zt-2c8zjlir6-uUDJl8oIwcen_FS_aA~b6Q).
4. Seek help in the related editor/plugin's issue tracker.
Describing prior discussions and troubleshooting steps will help us understand the issue and respond more quickly.
- type: textarea
attributes:
label: Description
description: Reproduction steps
value: |
### Reproduction steps
<!--
**IMPORTANT NOTE**
Please provide as much detail about your development setup as possible. Often issues with the Ruby LSP are
specific to a combination of operating system, Ruby version, Ruby version manager, the editor being used and
project setup. The easier it is to reproduce the problem, the quicker it will likely take to fix it.
-->
<!-- Suggested structure -->
1. Start the Ruby LSP using a certain editor
2. Open a Ruby file
3. Do something
4. See unexpected behavior
**Code snippet or error message**
```ruby
```
validations:
required: true
Original file line number Diff line number Diff line change
@@ -1,37 +1,39 @@
---
name: Ruby LSP bug
description: File a bug report about the Ruby LSP
name: Ruby LSP bug (VS Code)
description: File a bug report about the Ruby LSP with VS Code
labels:
- bug
- vscode
body:
- type: markdown
attributes:
value: >
Thank you for filing a bug report! Please answer the following questions to help us understand the issue.
- type: textarea
attributes:
label: Description
description: Reproduction steps
value: |
Thank you for filing a bug report! Please answer the following questions to help us understand the issue.
### Before submitting
Please follow the instructions on
[troubleshooting](https://github.com/Shopify/ruby-lsp/blob/main/TROUBLESHOOTING.md) and make sure you
[troubleshooting](https://shopify.github.io/ruby-lsp/troubleshooting.html) and make sure you
are:
1. On the latest version of the Ruby LSP VS Code extension
2. On the latest version of the Ruby LSP server gem
3. On the latest version of VS Code
If the issue persist, please deleted this section and submit the report.
### When submitting
### Reproduction steps
Please run the `Collect Ruby LSP Information for Issue Reporting` command through VS Code's command
palette and paste the result below.
<!--
**IMPORTANT NOTE**
Please provide as much detail about your development setup as possible. Often issues with the Ruby LSP are
specific to a combination of operating system, Ruby version, Ruby version manager, the editor being used and
project setup. The easier it is to reproduce the problem, the quicker it will likely take to fix it.
-->
- type: textarea
attributes:
label: Description
description: Reproduction steps
value: |
### Ruby LSP Information
<!-- Please run `Collect Ruby LSP Information for Issue Reporting` from VS Code's command palette and paste the result here -->
### Reproduction steps
<!-- Suggested structure -->
1. Start the Ruby LSP using a certain editor
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_template.yml
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@ body:
- type: checkboxes
attributes:
label: I have checked that this feature is not already implemented
description: Supported features can be found [here](https://shopify.github.io/ruby-lsp/RubyLsp/Requests.html)
description: Supported features can be found [here](https://shopify.github.io/ruby-lsp/#general-features)
options:
- label: This feature does not exist
required: true
15 changes: 15 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -52,3 +52,18 @@ updates:
- "chore"
- "dependencies"
- "gh-actions"
- package-ecosystem: "bundler"
directory: "jekyll"
schedule:
interval: "weekly"
reviewers:
- "Shopify/ruby-dev-exp"
labels:
- "dependencies"
- "ruby"
groups:
minor-and-patch:
update-types:
- "minor"
- "patch"
open-pull-requests-limit: 100
4 changes: 4 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
<!--
NOTE: If you plan to invest significant effort into a large pull request with multiple decisions that may impact the long term maintenance of the Ruby LSP, please open a [discussion](https://github.com/Shopify/ruby-lsp/discussions/new/choose) first to align on the direction.
-->

### Motivation

<!-- Closes # -->
47 changes: 0 additions & 47 deletions .github/workflows/auto_assign.yml

This file was deleted.

37 changes: 31 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -3,6 +3,22 @@ name: CI
on: [push, pull_request]

jobs:
spelling:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Set up Node
env:
DISABLE_V8_COMPILE_CACHE: "1"
uses: actions/setup-node@v4
with:
node-version: "20.9"

- name: Run cspell
run: |
yarn global add cspell
cspell
lint_ruby:
runs-on: ubuntu-latest
steps:
@@ -15,9 +31,6 @@ jobs:
with:
bundler-cache: true

- name: Check if documentation is up to date
run: bundle exec rake ruby_lsp:check_docs

- name: Typecheck
run: bundle exec srb tc

@@ -46,9 +59,6 @@ jobs:

- name: Run tests
run: bundle exec rake

- name: Run index troubleshooting tool
run: bundle exec ruby-lsp --doctor
lint_node:
runs-on: ubuntu-latest
steps:
@@ -117,3 +127,18 @@ jobs:
yarn --frozen-lockfile
/usr/bin/Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
yarn run test
verify_docs:
runs-on: ubuntu-latest
name: Verify Jekyll website builds
steps:
- uses: actions/checkout@v4

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
working-directory: ./jekyll

- name: Generate documentation
working-directory: ./jekyll
run: bundle exec jekyll build
18 changes: 0 additions & 18 deletions .github/workflows/lsp_check.yml

This file was deleted.

5 changes: 3 additions & 2 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -14,7 +14,9 @@ jobs:
name: Checkout

- uses: actions/setup-node@v4
name: Use Node.js 18.x
name: Use Node.js
env:
DISABLE_V8_COMPILE_CACHE: "1"
with:
node-version: "20.9"
cache: "yarn"
@@ -123,7 +125,6 @@ jobs:
- name: Copy files needed for release
run: |
cp CODE_OF_CONDUCT.md vscode/CODE_OF_CONDUCT.md
cp TROUBLESHOOTING.md vscode/TROUBLESHOOTING.md
- name: 📦 Install dependencies
working-directory: ./vscode
14 changes: 7 additions & 7 deletions .github/workflows/publish_docs.yml
Original file line number Diff line number Diff line change
@@ -3,6 +3,10 @@ name: Publish docs
on:
push:
branches: [main]
paths:
- 'jekyll/**'
- '.github/workflows/publish_docs.yml'
workflow_dispatch:

jobs:
build:
@@ -16,20 +20,16 @@ jobs:
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
working-directory: ./jekyll

- name: Configure git
run: |
git config user.name github-actions
git config user.email github-actions@github.com
- name: Generate documentation
run: bundle exec rake rdoc

- name: Copy README images to the docs folder
run: |
mkdir docs/vscode
cp vscode/icon.png docs/vscode/icon.png
cp -R vscode/extras docs/vscode/
working-directory: ./jekyll
run: bundle exec jekyll build

- name: Commit to gh-pages
run: |
29 changes: 29 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -20,6 +20,7 @@ AllCops:
- "features/**/*"
- "test/fixtures/**/*"
- "test/expectations/**/*"
- "jekyll/**/*"

Minitest/AssertPredicate:
Enabled: true
@@ -42,6 +43,7 @@ Sorbet/TrueSigil:
- "lib/ruby_indexer/test/**/*.rb"
- "lib/ruby_indexer/lib/ruby_indexer/prefix_tree.rb"
- "lib/ruby_lsp/load_sorbet.rb"
- "lib/ruby_lsp/scripts/compose_bundle.rb"
Exclude:
- "**/*.rake"
- "lib/**/*.rb"
@@ -57,3 +59,30 @@ Sorbet/StrictSigil:
- "lib/ruby-lsp.rb"
- "lib/ruby_indexer/lib/ruby_indexer/prefix_tree.rb"
- "lib/ruby_lsp/load_sorbet.rb"
- "lib/ruby_lsp/scripts/compose_bundle.rb"

Layout/ClassStructure:
Enabled: true
Exclude:
- "test/**/*"
ExpectedOrder:
- module_inclusion
- constants
- public_attribute_macros
- public_class_methods # does not recognize `class << self`
- initializer
- public_methods
- protected_attribute_macros
- protected_methods
- private_attribute_macros
- private_delegate
- private_methods
Categories:
attribute_macros:
- attr_accessor
- attr_reader
- attr_writer
module_inclusion:
- include
- prepend
- extend
Loading