steep 1.0.1 → 1.0.2

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: 1d153db54fad9f22a3b38fe9a1a2539c11d50b6efc34cea1cba69b2849c69c1e
4
- data.tar.gz: 98dfeb1b9a044c6ef30d880d5deda10fb97143e82807743c9f06c4e7aeff6663
3
+ metadata.gz: 8317c379e5b7e85cca4a22c9133248a77a112e7687c3cf553ddb90f96ab31236
4
+ data.tar.gz: cd9c06372e29c009b4af99a5f0c252dcdbdcc9d2905cbd601cffb7210f809c93
5
5
  SHA512:
6
- metadata.gz: 6c7b1f95050bf14a7fbf1c521318648c3d99fd6750fff30c79d1bb84a55582dc4f74da0aec91f7ddfc7736c2a571caa99bc462865b42c1335659a6a1e44fe684
7
- data.tar.gz: 7708ef12ea5754f432a2c71e347400ebd24cbcab9e69fab21783c1be00c000b3420c8f88db1f83bb2ed58a525a3a6f34f044ea421c2be8f53becf64dfbc7fdda
6
+ metadata.gz: 7b0cfaee1dac3cdc8a69d9ef50714615647c1049783d6406d6ee3246c11a5cb2b5e4287f42a896d13e9ed6411e092acf15406199a0f6f0e3bad412f0ae12e250
7
+ data.tar.gz: a8b8192a8e6217eff958d30ac12c9aa1cbf9608626c892c9ae9585e33c9241d5a75e760060271e15f60f9869ceab41e9ff2fab38920db9692aa4f1ec296d1257
data/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  ## master
4
4
 
5
+ ## 1.0.2 (2022-07-19)
6
+
7
+ This is another patch release for Steep 1.0.
8
+
9
+ ### Type checker
10
+
11
+ * Fix type application validation ([#607](https://github.com/soutaro/steep/pull/607))
12
+
5
13
  ## 1.0.1 (2022-06-16)
6
14
 
7
15
  This is the first patch release for Steep 1.0.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- steep (1.0.1)
4
+ steep (1.0.2)
5
5
  activesupport (>= 5.1)
6
6
  language_server-protocol (>= 3.15, < 4.0)
7
7
  listen (~> 3.0)
@@ -24,7 +24,7 @@ PATH
24
24
  GEM
25
25
  remote: https://rubygems.org/
26
26
  specs:
27
- activesupport (7.0.3)
27
+ activesupport (7.0.3.1)
28
28
  concurrent-ruby (~> 1.0, >= 1.0.2)
29
29
  i18n (>= 1.6, < 2)
30
30
  minitest (>= 5.1)
@@ -32,7 +32,7 @@ GEM
32
32
  ast (2.4.2)
33
33
  concurrent-ruby (1.1.10)
34
34
  ffi (1.15.5)
35
- i18n (1.10.0)
35
+ i18n (1.12.0)
36
36
  concurrent-ruby (~> 1.0)
37
37
  language_server-protocol (3.16.0.3)
38
38
  listen (3.7.1)
@@ -51,13 +51,13 @@ GEM
51
51
  rb-fsevent (0.11.1)
52
52
  rb-inotify (0.10.1)
53
53
  ffi (~> 1.0)
54
- rbs (2.5.1)
54
+ rbs (2.6.0)
55
55
  stackprof (0.2.19)
56
56
  terminal-table (3.0.2)
57
57
  unicode-display_width (>= 1.1.1, < 3)
58
58
  tzinfo (2.0.4)
59
59
  concurrent-ruby (~> 1.0)
60
- unicode-display_width (2.1.0)
60
+ unicode-display_width (2.2.0)
61
61
 
62
62
  PLATFORMS
63
63
  ruby
@@ -58,9 +58,14 @@ module Steep
58
58
 
59
59
  def validate_type_application_constraints(type_name, type_params, type_args, location:)
60
60
  if type_params.size == type_args.size
61
+ subst = Interface::Substitution.build(
62
+ type_params.map(&:name),
63
+ type_args.map {|type| factory.type(type) }
64
+ )
65
+
61
66
  type_params.zip(type_args).each do |param, arg|
62
67
  if param.upper_bound
63
- upper_bound_type = factory.type(param.upper_bound)
68
+ upper_bound_type = factory.type(param.upper_bound).subst(subst)
64
69
  arg_type = factory.type(arg)
65
70
 
66
71
  constraints = Subtyping::Constraints.empty
data/lib/steep/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Steep
2
- VERSION = "1.0.1"
2
+ VERSION = "1.0.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: steep
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Soutaro Matsumoto
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-06-22 00:00:00.000000000 Z
11
+ date: 2022-07-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parser