steep 1.9.3 → 1.9.4

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: 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