standard 1.41.0 → 1.42.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5783cd76c08f27d6214dd56015875768c2e79633269ab0d69b7306f5f07248ec
4
- data.tar.gz: 020250354ca665d8d04ac7f0b7a4bea6d21d9c0d3c3b249a0f881b4837554e76
3
+ metadata.gz: b9fb783533fee9e2d6aa7aa5392c04da9fb92e875ed51612be774ac8339af5cd
4
+ data.tar.gz: 05d1fa3f071f6343eeb7c3c821fd09af3dd7134e444e357d2c985a879ccf1bae
5
5
  SHA512:
6
- metadata.gz: 9514e93a8088a12131db5d67275ddf7d1f5a28b7db3fff9b77dcb8397d234d48f20da3af8e81ebc80dd6d914a18937595ea3d767d05292833eeb7e4e405b17d3
7
- data.tar.gz: 3eb7c7739a73e29c2f98991a53be149b8cf5bd7defab37759a069832637def6078c9e131acc9201075559d2d0f091af988d9d61eaa9505a5ac307471dd14e9ac
6
+ metadata.gz: 3cf17ec5fdf6d0e111f8fe06cf0cc243efd363d85545aa726963c3431e6a46791651e1846a24874237d5c2f88ab94d55bc0d75d8920dd6199222fe8fa03feb04
7
+ data.tar.gz: 6b15d6d64faca1ebf7e092ad2570c466d017a788e3bdbeb24f008820ae10ca6044b5f1601516bd83ab7f93320d1bc2058bba322bdb7ed5a61a3fbe06d44956ed
data/CHANGELOG.md CHANGED
@@ -2,6 +2,17 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 1.42.0
6
+
7
+ * Updates rubocop to [1.68.0]https://github.com/rubocop/rubocop/tree/v1.68.0)
8
+ * Inherit from `RuboCop::Cop::Base` fixing deprecation warnings.
9
+ * Add new cops
10
+
11
+ ## 1.41.1
12
+
13
+ * Adds a stub method to the Ruby LSP add-on to avoid a potential runtime exception
14
+ for range formatting requests [#655](https://github.com/standardrb/standard/pull/655)
15
+
5
16
  ## 1.41.0
6
17
 
7
18
  * Updates rubocop to [1.66.1](https://github.com/rubocop/rubocop/releases/tag/v1.66.1)
data/Gemfile.lock CHANGED
@@ -1,10 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- standard (1.41.0)
4
+ standard (1.42.0)
5
5
  language_server-protocol (~> 3.17.0.2)
6
6
  lint_roller (~> 1.0)
7
- rubocop (~> 1.66.0)
7
+ rubocop (~> 1.68.0)
8
8
  standard-custom (~> 1.0.0)
9
9
  standard-performance (~> 1.5)
10
10
 
@@ -21,10 +21,10 @@ GEM
21
21
  method_source (>= 0.6.7)
22
22
  rake (>= 0.9.2.2)
23
23
  method_source (1.0.0)
24
- minitest (5.20.0)
24
+ minitest (5.25.1)
25
25
  mutex_m (0.2.0)
26
26
  parallel (1.23.0)
27
- parser (3.3.5.0)
27
+ parser (3.3.6.0)
28
28
  ast (~> 2.4.1)
29
29
  racc
30
30
  prism (0.30.0)
@@ -34,7 +34,7 @@ GEM
34
34
  rbs (3.5.2)
35
35
  logger
36
36
  regexp_parser (2.8.2)
37
- rubocop (1.66.1)
37
+ rubocop (1.68.0)
38
38
  json (~> 2.3)
39
39
  language_server-protocol (>= 3.17.0)
40
40
  parallel (~> 1.10)
@@ -59,7 +59,7 @@ GEM
59
59
  docile (~> 1.1)
60
60
  simplecov-html (~> 0.11)
61
61
  simplecov_json_formatter (~> 0.1)
62
- simplecov-html (0.12.3)
62
+ simplecov-html (0.13.1)
63
63
  simplecov_json_formatter (0.1.4)
64
64
  sorbet-runtime (0.5.11481)
65
65
  standard-custom (1.0.2)
@@ -85,4 +85,4 @@ DEPENDENCIES
85
85
  standard!
86
86
 
87
87
  BUNDLED WITH
88
- 2.4.12
88
+ 2.5.23
data/config/base.yml CHANGED
@@ -512,6 +512,9 @@ Lint/DuplicateRequire:
512
512
  Lint/DuplicateRescueException:
513
513
  Enabled: true
514
514
 
515
+ Lint/DuplicateSetElement:
516
+ Enabled: false
517
+
515
518
  Lint/EachWithObjectArgument:
516
519
  Enabled: true
517
520
 
@@ -798,6 +801,9 @@ Lint/TripleQuotes:
798
801
  Lint/UnderscorePrefixedVariableName:
799
802
  Enabled: true
800
803
 
804
+ Lint/UnescapedBracketInRegexp:
805
+ Enabled: false
806
+
801
807
  Lint/UnexpectedBlockArity:
802
808
  Enabled: false
803
809
 
@@ -980,11 +986,14 @@ Style/Alias:
980
986
  Enabled: true
981
987
  EnforcedStyle: prefer_alias_method
982
988
 
989
+ Style/AmbiguousEndlessMethodDefinition:
990
+ Enabled: false
991
+
983
992
  Style/AndOr:
984
993
  Enabled: true
985
994
 
986
995
  Style/ArgumentsForwarding:
987
- Enabled: true
996
+ Enabled: false
988
997
 
989
998
  Style/ArrayCoercion:
990
999
  Enabled: false
@@ -1017,6 +1026,9 @@ Style/BeginBlock:
1017
1026
  Style/BisectedAttrAccessor:
1018
1027
  Enabled: false
1019
1028
 
1029
+ Style/BitwisePredicate:
1030
+ Enabled: false
1031
+
1020
1032
  Style/BlockComments:
1021
1033
  Enabled: true
1022
1034
 
@@ -1063,6 +1075,9 @@ Style/ColonMethodCall:
1063
1075
  Style/ColonMethodDefinition:
1064
1076
  Enabled: true
1065
1077
 
1078
+ Style/CombinableDefined:
1079
+ Enabled: false
1080
+
1066
1081
  Style/CombinableLoops:
1067
1082
  Enabled: false
1068
1083
 
@@ -1290,6 +1305,9 @@ Style/InvertibleUnlessCondition:
1290
1305
  Style/IpAddresses:
1291
1306
  Enabled: false
1292
1307
 
1308
+ Style/KeywordArgumentsMerging:
1309
+ Enabled: false
1310
+
1293
1311
  Style/KeywordParametersOrder:
1294
1312
  Enabled: true
1295
1313
 
@@ -1655,6 +1673,9 @@ Style/SafeNavigation:
1655
1673
  - try
1656
1674
  - try!
1657
1675
 
1676
+ Style/SafeNavigationChainLength:
1677
+ Emabled: false
1678
+
1658
1679
  Style/Sample:
1659
1680
  Enabled: true
1660
1681
 
data/config/ruby-3.1.yml CHANGED
@@ -7,5 +7,5 @@ Style/DataInheritance:
7
7
  Enabled: false
8
8
 
9
9
  Style/ArgumentsForwarding:
10
- Enabled: true
10
+ Enabled: false
11
11
  AllowOnlyRestArgument: true
@@ -0,0 +1,51 @@
1
+ # Ruby versions
2
+
3
+ ## Handling new releases
4
+
5
+ When a new Ruby version comes out, you shouldn't have to make any immediate
6
+ changes to Standard Ruby. The default configuration is the `base.yml`
7
+ configuration and should continue to work correctly.
8
+
9
+ Often, Rubocop will add new rules to encourage usage of new language features in
10
+ new Ruby versions. When that happens:
11
+
12
+ 1. Add the rule to the `base.yml` file and disable it.
13
+ 1. Assess the new rule and see if it should be added to Standard Ruby. If not,
14
+ you're done. If so, enable it in `base.yml` and read on.
15
+ 1. Add a new config file for the penultimate minor version of Ruby. For example,
16
+ if the new version is `3.1` then the new config file would be for `3.0`.
17
+ 1. In the new config file, make sure it inherits from `base.yml` and disable the
18
+ new rule.
19
+ 1. In what was previously the latest config file, make sure it inherits from
20
+ your new config file.
21
+
22
+ That should add new rules to Standard Ruby safely and gracefully.
23
+
24
+ ## Maintenance and support
25
+
26
+ We will support the actively maintained ruby versions from the [ruby maintenance
27
+ policy](https://www.ruby-lang.org/en/downloads/branches/) along with the most
28
+ recently EOL version for an additional ~9 months, dropping support for EOL
29
+ versions around the time that a new supported ruby version is released and
30
+ added.
31
+
32
+ With the current ruby release cadence (new version near end of year, EOL drop
33
+ around April 1), this means we'll have a release of all the Standard gems around
34
+ the new year which adds support for the new ruby version and drops support for
35
+ what was an already-EOL but still-supported older ruby version.
36
+
37
+ ## Coordination across gems
38
+
39
+ We will align versions/dependencies amongst the Standard gems:
40
+
41
+ - [standard-custom](https://github.com/standardrb/standard-custom)
42
+ - [standard-performance](https://github.com/standardrb/standard-performance)
43
+ - [standard-rails](https://github.com/standardrb/standard-rails)
44
+ - [standard-sorbet](https://github.com/standardrb/standard-sorbet)
45
+ - [standard](https://github.com/standardrb/standard)
46
+
47
+ This means keeping them consistent in regard to:
48
+
49
+ - The minimum required ruby version configured in their `gemspec`
50
+ - Using that version in their internal `.standard.yml` configurations
51
+ - Including the full range of supported rubies in their CI ruby matrix
@@ -20,6 +20,13 @@ module RubyLsp
20
20
  @standardizer.offenses(uri_to_path(uri), document.source, document.encoding)
21
21
  end
22
22
 
23
+ def run_range_formatting(_uri, _partial_source, _base_indentation)
24
+ # Not yet supported. Should return the formatted version of `partial_source` which is a partial selection of the
25
+ # entire document. For example, it should not try to add a frozen_string_literal magic comment and all style
26
+ # corrections should start from the `base_indentation`
27
+ nil
28
+ end
29
+
23
30
  private
24
31
 
25
32
  # duplicated from: lib/standard/lsp/routes.rb
@@ -1,3 +1,3 @@
1
1
  module Standard
2
- VERSION = Gem::Version.new("1.41.0")
2
+ VERSION = Gem::Version.new("1.42.0")
3
3
  end
data/standard.gemspec CHANGED
@@ -1,6 +1,4 @@
1
- lib = File.expand_path("../lib", __FILE__)
2
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
- require "standard/version"
1
+ require_relative "lib/standard/version"
4
2
 
5
3
  Gem::Specification.new do |spec|
6
4
  spec.name = "standard"
@@ -23,7 +21,7 @@ Gem::Specification.new do |spec|
23
21
  spec.require_paths = ["lib"]
24
22
  spec.metadata["rubygems_mfa_required"] = "true"
25
23
 
26
- spec.add_dependency "rubocop", "~> 1.66.0"
24
+ spec.add_dependency "rubocop", "~> 1.68.0"
27
25
 
28
26
  spec.add_dependency "lint_roller", "~> 1.0"
29
27
  spec.add_dependency "standard-custom", "~> 1.0.0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: standard
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.41.0
4
+ version: 1.42.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Searls
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-10-08 00:00:00.000000000 Z
11
+ date: 2024-11-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubocop
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.66.0
19
+ version: 1.68.0
20
20
  type: :runtime
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.66.0
26
+ version: 1.68.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: lint_roller
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -119,8 +119,8 @@ files:
119
119
  - config/ruby-3.2.yml
120
120
  - config/ruby-3.3.yml
121
121
  - docs/ARCHITECTURE.md
122
- - docs/NEW_RUBIES.md
123
122
  - docs/RELEASE.md
123
+ - docs/RUBY_VERSIONS.md
124
124
  - docs/UPGRADING.md
125
125
  - exe/standardrb
126
126
  - lib/ruby_lsp/standard/addon.rb
@@ -188,7 +188,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
188
188
  - !ruby/object:Gem::Version
189
189
  version: '0'
190
190
  requirements: []
191
- rubygems_version: 3.4.10
191
+ rubygems_version: 3.3.27
192
192
  signing_key:
193
193
  specification_version: 4
194
194
  summary: Ruby Style Guide, with linter & automatic code fixer
data/docs/NEW_RUBIES.md DELETED
@@ -1,13 +0,0 @@
1
- # Handling New Ruby Versions
2
-
3
- When a new Ruby version comes out, you shouldn't have to make any immediate changes to StandardRb. The default configuration is the `base.yml` configuration and should continue to work correctly.
4
-
5
- Often, Rubocop will add new rules to encourage usage of new language features in new Ruby versions. When that happens:
6
-
7
- 1. Add the rule to the base.yml file and disable it.
8
- 1. Assess the new rule and see if it should be added to StandardRb. If not, you're done. If so, enable in `base.yml` and read on.
9
- 1. Add a new config file for the penultimate minor version of Ruby, so for example, if the new Ruby version is `3.1` then the new config file would be for `3.0`.
10
- 1. In the new config file, make sure it inherits from `base.yml` and disable the new rule.
11
- 1. In the previous latest config file, make sure it inherits from your new config file.
12
-
13
- And that should add new rules to StandardRb safely and gracefully.