steep 1.9.3 → 1.9.4

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: 02b4d30c83adaf9c3784371edd9f014f772273cec3ea72e9befeb3d882a897c6
4
- data.tar.gz: 1146ee79d9b908d96f3079de416ba2d10b43e8b2a32ee440d4a2b7519a29558c
3
+ metadata.gz: b23b392399196d67221acd72708ebe27ee3b7bbb7b54e4b5922e8ecbb6ceb5e3
4
+ data.tar.gz: a315e09c38f8736bc66aad3a57275f8546c28c75845fa33a9de375387cc63a13
5
5
  SHA512:
6
- metadata.gz: 23ab3d323a5395ab7fe9ac37c98c657c780a949637ff4126ea2b0c320f27031fba615239eeaeaa028409cbf9b22dc1016c4299c31a545b387bec61785321a3fa
7
- data.tar.gz: 6e94877bc417d187f49f7f8dc105058835785146ad4172d7d98751e790ea05b42f191db588a516fb0151949f68664a16c5ddb2a6220915613cc98f1be824ab0f
6
+ metadata.gz: 1fe50cd4df36c00affa8868857d55deeea0e58c36372260209d95fabec69eb9f005d37581c5184c0b44e3a5fb1d42bd5bb25a5630c5dfafa4552b08a8fb87377
7
+ data.tar.gz: bc41b2386db2d9a97dabf2c81ff2079c6fac875decc01ba223d1475473048945d81ba43cc17f0db24f6ba2da285954dff83e10910b5f3831716781698b458d9e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 1.9.4 (2025-02-04)
4
+
5
+ ### Language server
6
+
7
+ * Set up file watcher for groups ([#1485](https://github.com/soutaro/steep/pull/1485), Backported)
8
+
9
+ ### Miscellaneous
10
+
11
+ * Fix CI ([#1486](https://github.com/soutaro/steep/pull/1486), Backported)
12
+
3
13
  ## 1.9.3 (2024-12-26)
4
14
 
5
15
  ### Miscellaneous
@@ -413,49 +413,7 @@ module Steep
413
413
  end
414
414
 
415
415
  if file_system_watcher_supported?
416
- patterns = [] #: Array[String]
417
- project.targets.each do |target|
418
- target.source_pattern.patterns.each do |pat|
419
- path = project.base_dir + pat
420
- patterns << path.to_s unless path.directory?
421
- end
422
- target.source_pattern.prefixes.each do |pat|
423
- path = project.base_dir + pat
424
- patterns << (path + "**/*.rb").to_s unless path.file?
425
- end
426
- target.signature_pattern.patterns.each do |pat|
427
- path = project.base_dir + pat
428
- patterns << path.to_s unless path.directory?
429
- end
430
- target.signature_pattern.prefixes.each do |pat|
431
- path = project.base_dir + pat
432
- patterns << (path + "**/*.rbs").to_s unless path.file?
433
- end
434
- end
435
- patterns.sort!
436
- patterns.uniq!
437
-
438
- Steep.logger.info { "Setting up didChangeWatchedFiles with pattern: #{patterns.inspect}" }
439
-
440
- enqueue_write_job SendMessageJob.to_client(
441
- message: {
442
- id: SecureRandom.uuid,
443
- method: "client/registerCapability",
444
- params: {
445
- registrations: [
446
- {
447
- id: SecureRandom.uuid,
448
- method: "workspace/didChangeWatchedFiles",
449
- registerOptions: {
450
- watchers: patterns.map do |pattern|
451
- { globPattern: pattern }
452
- end
453
- }
454
- }
455
- ]
456
- }
457
- }
458
- )
416
+ setup_file_system_watcher()
459
417
  end
460
418
 
461
419
  controller.changed_paths.clear()
@@ -635,7 +593,7 @@ module Steep
635
593
  enqueue_write_job SendMessageJob.to_client(
636
594
  message: {
637
595
  id: message[:id],
638
- result: []
596
+ result: [] #: Array[untyped]
639
597
  }
640
598
  )
641
599
  end
@@ -800,7 +758,7 @@ module Steep
800
758
  Steep.logger.info "Starting new progress..."
801
759
 
802
760
  @current_type_check_request = request
803
-
761
+
804
762
  if progress
805
763
  # If `request:` keyword arg is not given
806
764
  request.work_done_progress.begin("Type checking", request_id: fresh_request_id)
@@ -907,6 +865,58 @@ module Steep
907
865
  )
908
866
  end
909
867
  end
868
+
869
+ def setup_file_system_watcher()
870
+ patterns = [] #: Array[String]
871
+
872
+ project.targets.each do |target|
873
+ patterns.concat(paths_to_watch(target.source_pattern, extname: ".rb"))
874
+ patterns.concat(paths_to_watch(target.signature_pattern, extname: ".rbs"))
875
+ target.groups.each do |group|
876
+ patterns.concat(paths_to_watch(group.source_pattern, extname: ".rb"))
877
+ patterns.concat(paths_to_watch(group.signature_pattern, extname: ".rbs"))
878
+ end
879
+ end
880
+ patterns.sort!
881
+ patterns.uniq!
882
+
883
+ Steep.logger.info { "Setting up didChangeWatchedFiles with pattern: #{patterns.inspect}" }
884
+
885
+ enqueue_write_job SendMessageJob.to_client(
886
+ message: {
887
+ id: SecureRandom.uuid,
888
+ method: "client/registerCapability",
889
+ params: {
890
+ registrations: [
891
+ {
892
+ id: SecureRandom.uuid,
893
+ method: "workspace/didChangeWatchedFiles",
894
+ registerOptions: {
895
+ watchers: patterns.map do |pattern|
896
+ { globPattern: pattern }
897
+ end
898
+ }
899
+ }
900
+ ]
901
+ }
902
+ }
903
+ )
904
+ end
905
+
906
+ def paths_to_watch(pattern, extname:)
907
+ result = [] #: Array[String]
908
+
909
+ pattern.patterns.each do |pat|
910
+ path = project.base_dir + pat
911
+ result << path.to_s unless path.directory?
912
+ end
913
+ pattern.prefixes.each do |pat|
914
+ path = project.base_dir + pat
915
+ result << (path + "**/*#{extname}").to_s unless path.file?
916
+ end
917
+
918
+ result
919
+ end
910
920
  end
911
921
  end
912
922
  end
data/lib/steep/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Steep
2
- VERSION = "1.9.3"
2
+ VERSION = "1.9.4"
3
3
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: steep
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.3
4
+ version: 1.9.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Soutaro Matsumoto
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2024-12-26 00:00:00.000000000 Z
10
+ date: 2025-02-04 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: parser