rubocop-sketchup 0.16.0 → 0.19.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f9a3e76b336cbd3c4f546ed720f01116a897e0c370271d3b45c02dc257b95aa5
4
- data.tar.gz: 55184414f9c339106d42edd1ada1740695b423f945e6540c8596c1e73dd71adb
3
+ metadata.gz: 0ece47daae3428b0918e22ceb77535ad907220f4ea8d6b8a0df1f1f375fcc389
4
+ data.tar.gz: efde5166fd6546561d536e7681869ef40684aed0e2d69104d4fab6372fa2ff01
5
5
  SHA512:
6
- metadata.gz: 3010b0a10a8b5f26885f30f9dca591ede4352c18461098700018ab6a83a1e34dbc314e1606017eea942429de098b73be91cdae04c15769d9d5f792013ca3ba83
7
- data.tar.gz: 7f5ec70140c89953bc9049879751a9139822828f2aa5da95bf327ace633ced39d14fc888fe1913bbcff57bb2915fe2f4bf18460bdbe4fcf147392eb9de650039
6
+ metadata.gz: b7118c5bf98cfdabeae09fce334e2fc92bac56394b8acd09c5398dc9726cc647d5b828a722d4525b0889d35ec7da5536c1bdfc04e75d3da4e33dac876c0cabdd
7
+ data.tar.gz: 2dc355ae4f59fa71275a56f5dba47cfce54e736f157fc51ac736c936c74d7bd1a4cf5e1e66f76ac92f6e67cc054d6f7fb407575490738adefec12374e54514a7
data/Gemfile CHANGED
@@ -8,12 +8,12 @@ group :test do
8
8
  gem 'appveyor-worker', '~> 0.2', require: false
9
9
  gem 'rake', '~> 12.0', require: false
10
10
  gem 'rspec', '~> 3.7', require: false
11
+ gem 'rubocop-performance', '~> 1.7.0', require: false
12
+ gem 'simplecov', '~> 0.10', require: false
11
13
  end
12
14
 
13
15
  group :development do
14
16
  gem 'bump', '~> 0.5', require: false
15
- gem 'rubocop-performance', require: false
16
- gem 'simplecov', '~> 0.10', require: false
17
17
  gem 'solargraph', '~> 0.34', require: false
18
18
  gem 'thor', '~> 0.20', require: false
19
19
  gem 'yard', '~> 0.9', require: false
data/config/default.yml CHANGED
@@ -18,7 +18,7 @@ AllCops:
18
18
  ExtensionBinaries: []
19
19
  # You can set up exclude pattens for all SketchUp departments.
20
20
  Exclude: []
21
- # Alternativly you can set up department wide exclusion.
21
+ # Alternatively you can set up department wide exclusion.
22
22
  SketchupBugs:
23
23
  Exclude: []
24
24
  SketchupDeprecations:
@@ -156,7 +156,7 @@ SketchupRequirements/ExtensionNamespace:
156
156
  Description: Confine extensions to a single root namespace.
157
157
  Details: >-
158
158
  To avoid clashing with other extensions a single root namespace
159
- should all the extension's code.
159
+ should contain all the extension's code.
160
160
  Reference: https://github.com/SketchUp/rubocop-sketchup/tree/master/manual/cops_requirements.md#extensionnamespace
161
161
  Exceptions: []
162
162
  Enabled: true
@@ -39,7 +39,7 @@ end
39
39
 
40
40
  # Make it easier to explore available methods on a method.
41
41
  class Object
42
- def methods!(queries = true)
42
+ def methods!(queries = true) # rubocop:disable Style/OptionalBooleanParameter
43
43
  sorted = methods.sort - Object.class.instance_methods
44
44
  sorted.reject! { |m| m.to_s.end_with?('?') } unless queries
45
45
  sorted
@@ -12,7 +12,7 @@ module RuboCop
12
12
  # class will invoke the inherited hook instead
13
13
  class << self
14
14
  undef inherited
15
- def inherited(*) end
15
+ def inherited(*) end # rubocop:disable Lint/MissingSuper
16
16
  end
17
17
 
18
18
  # Special case `Module#<` so that the rspec support rubocop exports
@@ -42,8 +42,16 @@ module RuboCop
42
42
 
43
43
  include SketchUp::Config
44
44
 
45
+ SKETCHUP_DEPARTMENT_SEVERITY = {
46
+ SketchupRequirements: :error,
47
+ SketchupDeprecations: :warning,
48
+ SketchupPerformance: :warning,
49
+ SketchupBugs: :warning,
50
+ SketchupSuggestions: :convention,
51
+ }.freeze
52
+
45
53
  # Invoke the original inherited hook so our cops are recognized
46
- def self.inherited(subclass)
54
+ def self.inherited(subclass) # rubocop:disable Lint/MissingSuper
47
55
  RuboCop::Cop::Cop.inherited(subclass)
48
56
  end
49
57
 
@@ -58,16 +66,7 @@ module RuboCop
58
66
  end
59
67
 
60
68
  def sketchup_severity
61
- case self.class.department
62
- when :SketchupRequirements
63
- :error
64
- when :SketchupDeprecations
65
- :warning
66
- when :SketchupPerformance
67
- :warning
68
- when :SketchupSuggestions
69
- :convention
70
- end
69
+ SKETCHUP_DEPARTMENT_SEVERITY[self.class.department]
71
70
  end
72
71
 
73
72
  def department_name
@@ -41,6 +41,85 @@ module RuboCop
41
41
 
42
42
  FEATURES = [
43
43
 
44
+ {
45
+ version: 'SketchUp 2021.1',
46
+ types: {
47
+ method: [
48
+ 'Sketchup.focus',
49
+ 'Sketchup::DefinitionList#import',
50
+ 'Sketchup::Face#clear_texture_projection',
51
+ 'Sketchup::Face#texture_positioned?',
52
+ 'Sketchup::Face#texture_projected?',
53
+ 'Sketchup::Face#uv_tile_at',
54
+ 'Sketchup::Group#glued_to',
55
+ 'Sketchup::Group#glued_to=',
56
+ 'Sketchup::Image#glued_to',
57
+ 'Sketchup::Image#glued_to=',
58
+ 'UI::HtmlDialog#get_content_size',
59
+ 'UI::HtmlDialog#get_position',
60
+ 'UI::HtmlDialog#get_size',
61
+ 'UI::HtmlDialog#set_content_size',
62
+ ],
63
+ },
64
+ },
65
+
66
+ {
67
+ version: 'SketchUp 2021.0',
68
+ types: {
69
+ class: [
70
+ 'Sketchup::LayerFolder',
71
+ ],
72
+ method: [
73
+ 'Sketchup.redo',
74
+ 'Sketchup::ComponentDefinition#live_component?',
75
+ 'Sketchup::Layer#folder',
76
+ 'Sketchup::Layer#folder=',
77
+ 'Sketchup::LayerFolder#<=>',
78
+ 'Sketchup::LayerFolder#==',
79
+ 'Sketchup::LayerFolder#add_folder',
80
+ 'Sketchup::LayerFolder#add_layer',
81
+ 'Sketchup::LayerFolder#count_folders',
82
+ 'Sketchup::LayerFolder#count_layers',
83
+ 'Sketchup::LayerFolder#display_name',
84
+ 'Sketchup::LayerFolder#each',
85
+ 'Sketchup::LayerFolder#each_folder',
86
+ 'Sketchup::LayerFolder#each_layer',
87
+ 'Sketchup::LayerFolder#folder',
88
+ 'Sketchup::LayerFolder#folder=',
89
+ 'Sketchup::LayerFolder#folders',
90
+ 'Sketchup::LayerFolder#layers',
91
+ 'Sketchup::LayerFolder#length',
92
+ 'Sketchup::LayerFolder#name',
93
+ 'Sketchup::LayerFolder#name=',
94
+ 'Sketchup::LayerFolder#remove_folder',
95
+ 'Sketchup::LayerFolder#remove_layer',
96
+ 'Sketchup::LayerFolder#size',
97
+ 'Sketchup::LayerFolder#visible=',
98
+ 'Sketchup::LayerFolder#visible?',
99
+ 'Sketchup::LayerFolder#visible_on_new_pages=',
100
+ 'Sketchup::LayerFolder#visible_on_new_pages?',
101
+ 'Sketchup::Layers#add_folder',
102
+ 'Sketchup::Layers#count_folders',
103
+ 'Sketchup::Layers#count_layers',
104
+ 'Sketchup::Layers#each_folder',
105
+ 'Sketchup::Layers#each_layer',
106
+ 'Sketchup::Layers#folders',
107
+ 'Sketchup::Layers#layers',
108
+ 'Sketchup::Layers#purge_unused_folders',
109
+ 'Sketchup::Layers#remove_folder',
110
+ 'Sketchup::LayersObserver#onLayerFolderAdded',
111
+ 'Sketchup::LayersObserver#onLayerFolderChanged',
112
+ 'Sketchup::LayersObserver#onLayerFolderRemoved',
113
+ 'Sketchup::LayersObserver#onParentFolderChanged',
114
+ 'Sketchup::Page#layer_folders',
115
+ 'Sketchup::Skp.read_guid',
116
+ ],
117
+ module: [
118
+ 'Sketchup::Skp',
119
+ ],
120
+ },
121
+ },
122
+
44
123
  {
45
124
  version: 'LayOut 2020.1',
46
125
  types: {
@@ -93,6 +172,7 @@ module RuboCop
93
172
  'Sketchup::Model#drawing_element_visible?',
94
173
  'Sketchup::Page#get_drawingelement_visibility',
95
174
  'Sketchup::Page#set_drawingelement_visibility',
175
+ 'Sketchup::View#load_texture',
96
176
  'Sketchup::View#text_bounds',
97
177
  ],
98
178
  },
@@ -1137,6 +1217,8 @@ module RuboCop
1137
1217
  add_classification
1138
1218
  add_dimension_linear
1139
1219
  add_dimension_radial
1220
+ add_folder
1221
+ add_layer
1140
1222
  add_matchphoto_page
1141
1223
  add_section_plane
1142
1224
  aligned_text_position
@@ -1154,10 +1236,14 @@ module RuboCop
1154
1236
  colorize_deltas
1155
1237
  colorize_type
1156
1238
  colorize_type=
1239
+ count_folders
1240
+ count_layers
1157
1241
  count_used_instances
1158
1242
  dash_scale
1159
1243
  days_remaining
1160
1244
  drawing_element_visible?
1245
+ each_folder
1246
+ each_layer
1161
1247
  edit_transform
1162
1248
  effects_modified?
1163
1249
  end_attached_to
@@ -1188,6 +1274,7 @@ module RuboCop
1188
1274
  instance_path_from_pid_path
1189
1275
  is_polygon?
1190
1276
  large_icon
1277
+ layer_folders
1191
1278
  layers_modified?
1192
1279
  leader_break_point
1193
1280
  leader_break_point=
@@ -1195,6 +1282,7 @@ module RuboCop
1195
1282
  line_style
1196
1283
  line_style=
1197
1284
  line_styles
1285
+ live_component?
1198
1286
  load_from_url
1199
1287
  load_on_start?
1200
1288
  load_schema
@@ -1221,6 +1309,7 @@ module RuboCop
1221
1309
  persistent_id_path
1222
1310
  refresh_thumbnail
1223
1311
  remove_classification
1312
+ remove_folder
1224
1313
  reset_camera
1225
1314
  reset_effects
1226
1315
  reset_layers
@@ -1251,6 +1340,8 @@ module RuboCop
1251
1340
  unload_schema
1252
1341
  upper_left
1253
1342
  upper_right
1343
+ visible_on_new_pages?
1344
+ visible_on_new_pages=
1254
1345
  winding
1255
1346
  window_pick
1256
1347
  ].freeze
@@ -1263,6 +1354,10 @@ module RuboCop
1263
1354
  onElementModified
1264
1355
  onExplode
1265
1356
  onLayerChanged
1357
+ onLayerFolderAdded
1358
+ onLayerFolderChanged
1359
+ onLayerFolderRemoved
1360
+ onParentFolderChanged
1266
1361
  onPidChanged
1267
1362
  onPlaceComponent
1268
1363
  onPostSaveModel
@@ -207,7 +207,7 @@ module RuboCop
207
207
  end
208
208
 
209
209
  # Make Kernel#binding public.
210
- def binding
210
+ def binding # rubocop:disable Lint/UselessMethodDefinition
211
211
  super
212
212
  end
213
213
 
@@ -17,9 +17,10 @@ module RuboCop
17
17
  # @param [Integer, Float] version
18
18
  # @param [Integer] maintenance
19
19
  def initialize(*args)
20
- if args.size == 1
20
+ case args.size
21
+ when 1
21
22
  @version, @maintenance = parse_version(args.first)
22
- elsif args.size == 2
23
+ when 2
23
24
  validate(args)
24
25
  @version, @maintenance = args
25
26
  else
@@ -66,6 +67,8 @@ module RuboCop
66
67
  #
67
68
  # The second item in the array is maintenance annotation
68
69
  VALID_VERSIONS = [
70
+ [2021.1, 0],
71
+ [2021.0, 0],
69
72
  [2020.1, 0],
70
73
  [2020.0, 0],
71
74
  [2019.2, 0],
@@ -93,7 +96,8 @@ module RuboCop
93
96
  def parse_version(version)
94
97
  v = 0
95
98
  m = 0
96
- if version.is_a?(String)
99
+ case version
100
+ when String
97
101
  # Treat all LayOut versions as SketchUp versions for now.
98
102
  normalized_version = version.gsub('LayOut', 'SketchUp')
99
103
  result = normalized_version.match(VERSION_NUMBER_REGEX)
@@ -101,7 +105,7 @@ module RuboCop
101
105
  v = result.captures[0].to_f
102
106
  m = (result.captures[1] || '0').to_i
103
107
  end
104
- elsif version.is_a?(Numeric)
108
+ when Numeric
105
109
  v = version
106
110
  m = 0
107
111
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module RuboCop
4
4
  module SketchUp
5
- VERSION = '0.16.0'
5
+ VERSION = '0.19.0'
6
6
  end
7
7
  end
@@ -24,6 +24,6 @@ Gem::Specification.new do |spec|
24
24
  'Gemfile'
25
25
  ]
26
26
 
27
- spec.add_dependency 'rubocop', '>= 0.82', '<= 0.82'
27
+ spec.add_dependency 'rubocop', '>= 0.82', '<= 0.93'
28
28
  spec.add_development_dependency 'bundler', '>= 1.13', '< 3.0'
29
29
  end
metadata CHANGED
@@ -1,35 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-sketchup
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.0
4
+ version: 0.19.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Trimble Inc, SketchUp Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-08 00:00:00.000000000 Z
11
+ date: 2021-06-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rubocop
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "<="
18
- - !ruby/object:Gem::Version
19
- version: '0.82'
20
17
  - - ">="
21
18
  - !ruby/object:Gem::Version
22
19
  version: '0.82'
20
+ - - "<="
21
+ - !ruby/object:Gem::Version
22
+ version: '0.93'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
- - - "<="
28
- - !ruby/object:Gem::Version
29
- version: '0.82'
30
27
  - - ">="
31
28
  - !ruby/object:Gem::Version
32
29
  version: '0.82'
30
+ - - "<="
31
+ - !ruby/object:Gem::Version
32
+ version: '0.93'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: bundler
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -144,7 +144,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
144
144
  - !ruby/object:Gem::Version
145
145
  version: '0'
146
146
  requirements: []
147
- rubygems_version: 3.0.3
147
+ rubygems_version: 3.2.15
148
148
  signing_key:
149
149
  specification_version: 4
150
150
  summary: RuboCop rules for SketchUp extensions.