<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/test/prism/snapshots, branch v3_3_11</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>Update prism test snapshots.</title>
<updated>2025-04-06T04:42:21+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@ruby-lang.org</email>
</author>
<published>2025-04-06T04:42:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=5640fea8aada2380145375a7f9eac2b979fe1258'/>
<id>5640fea8aada2380145375a7f9eac2b979fe1258</id>
<content type='text'>
This is follow-up for 7c315e23983a35d29108d9ba8c914d6320254d43.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is follow-up for 7c315e23983a35d29108d9ba8c914d6320254d43.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert all of commits after Prism 0.19.0 release</title>
<updated>2023-12-16T03:08:51+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2023-12-16T03:05:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d242e8416e99eaee4465e2681210ae8b7ecd6d34'/>
<id>d242e8416e99eaee4465e2681210ae8b7ecd6d34</id>
<content type='text'>
  We should bundle released version of Prism for Ruby 3.3.0
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  We should bundle released version of Prism for Ruby 3.3.0
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] String literal hash keys should be frozen</title>
<updated>2023-12-15T20:55:13+00:00</updated>
<author>
<name>eileencodes</name>
<email>eileencodes@gmail.com</email>
</author>
<published>2023-12-15T18:44:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2e8cfcac9129ed8680c4b916bc5b4c535ae6e8c8'/>
<id>2e8cfcac9129ed8680c4b916bc5b4c535ae6e8c8</id>
<content type='text'>
String literal hash keys can't be mutated by the user so we should mark
them as frozen. We were seeing instructions for hashes with string
literal keys using two `putstring` instructions when it should be a
`putobject` and `putstring`.

Code example:

```ruby
{ "a" =&gt; "b" }
```

Instructions before:

```
"********* Ruby *************"
== disasm: #&lt;ISeq:&lt;compiled&gt;@&lt;compiled&gt;:1 (1,0)-(2,14)&gt;
0000 putobject                              "a"                       (   2)[Li]
0002 putstring                              "b"
0004 newhash                                2
0006 leave
"********* PRISM *************"
== disasm: #&lt;ISeq:&lt;compiled&gt;@&lt;compiled&gt;:1 (1,0)-(1,14)&gt;
0000 putstring                              "a"                       (   1)[Li]
0002 putstring                              "b"
0004 newhash                                2
0006 leave
```

Instructions after:

```
"********* Ruby *************"
== disasm: #&lt;ISeq:&lt;compiled&gt;@&lt;compiled&gt;:1 (1,0)-(2,14)&gt;
0000 putobject                              "a"                       (   2)[Li]
0002 putstring                              "b"
0004 newhash                                2
0006 leave

"********* PRISM *************"
== disasm: #&lt;ISeq:&lt;compiled&gt;@&lt;compiled&gt;:1 (1,0)-(1,14)&gt;
0000 putobject                              "a"                       (   1)[Li]
0002 putstring                              "b"
0004 newhash                                2
0006 leave
```

https://github.com/ruby/prism/commit/b14ae55385
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
String literal hash keys can't be mutated by the user so we should mark
them as frozen. We were seeing instructions for hashes with string
literal keys using two `putstring` instructions when it should be a
`putobject` and `putstring`.

Code example:

```ruby
{ "a" =&gt; "b" }
```

Instructions before:

```
"********* Ruby *************"
== disasm: #&lt;ISeq:&lt;compiled&gt;@&lt;compiled&gt;:1 (1,0)-(2,14)&gt;
0000 putobject                              "a"                       (   2)[Li]
0002 putstring                              "b"
0004 newhash                                2
0006 leave
"********* PRISM *************"
== disasm: #&lt;ISeq:&lt;compiled&gt;@&lt;compiled&gt;:1 (1,0)-(1,14)&gt;
0000 putstring                              "a"                       (   1)[Li]
0002 putstring                              "b"
0004 newhash                                2
0006 leave
```

Instructions after:

```
"********* Ruby *************"
== disasm: #&lt;ISeq:&lt;compiled&gt;@&lt;compiled&gt;:1 (1,0)-(2,14)&gt;
0000 putobject                              "a"                       (   2)[Li]
0002 putstring                              "b"
0004 newhash                                2
0006 leave

"********* PRISM *************"
== disasm: #&lt;ISeq:&lt;compiled&gt;@&lt;compiled&gt;:1 (1,0)-(1,14)&gt;
0000 putobject                              "a"                       (   1)[Li]
0002 putstring                              "b"
0004 newhash                                2
0006 leave
```

https://github.com/ruby/prism/commit/b14ae55385
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Finish keyword hash node flag refactor by renaming flag</title>
<updated>2023-12-15T18:45:36+00:00</updated>
<author>
<name>Ufuk Kayserilioglu</name>
<email>ufuk.kayserilioglu@shopify.com</email>
</author>
<published>2023-12-15T18:03:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=0a31cb1a37f184daa7c2839abd6a827793fdd2f3'/>
<id>0a31cb1a37f184daa7c2839abd6a827793fdd2f3</id>
<content type='text'>
https://github.com/ruby/prism/commit/7f812389f8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/7f812389f8
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Invalid pinned locals in pattern matching</title>
<updated>2023-12-15T15:03:49+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2023-12-15T13:48:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=fe9b42f024eb3724b0853c914916ea7a97fd30a6'/>
<id>fe9b42f024eb3724b0853c914916ea7a97fd30a6</id>
<content type='text'>
https://github.com/ruby/prism/commit/3a67b37a56
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/3a67b37a56
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Fix parse result for nesting pattern matching</title>
<updated>2023-12-14T18:54:46+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2023-12-14T17:48:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=019fff3a8656cadad93ba8d6db476428bd8d7a5e'/>
<id>019fff3a8656cadad93ba8d6db476428bd8d7a5e</id>
<content type='text'>
https://github.com/ruby/prism/commit/ee6fc9ee87
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/ee6fc9ee87
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Fix the implementation of the flag on keyword hash nodes</title>
<updated>2023-12-14T18:05:54+00:00</updated>
<author>
<name>Ufuk Kayserilioglu</name>
<email>ufuk.kayserilioglu@shopify.com</email>
</author>
<published>2023-12-13T22:14:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=01f21d57297f1e6820a6a374ccf9c432c6178038'/>
<id>01f21d57297f1e6820a6a374ccf9c432c6178038</id>
<content type='text'>
The previous implementation was incorrect since it was just checking for all keys in assoc nodes to be static literals but the actual check is that all keys in assoc nodes must be symbol nodes.

This commit fixes that implementation, and, also, aliases the flag to `PM_KEYWORD_HASH_NODE_FLAGS_SYMBOL_KEYS` so that ruby/ruby can start using the new flag name.

I intend to later change the real flag name to `PM_KEYWORD_HASH_NODE_FLAGS_SYMBOL_KEYS` and remove the alias.

https://github.com/ruby/prism/commit/f5099c79ce
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The previous implementation was incorrect since it was just checking for all keys in assoc nodes to be static literals but the actual check is that all keys in assoc nodes must be symbol nodes.

This commit fixes that implementation, and, also, aliases the flag to `PM_KEYWORD_HASH_NODE_FLAGS_SYMBOL_KEYS` so that ruby/ruby can start using the new flag name.

I intend to later change the real flag name to `PM_KEYWORD_HASH_NODE_FLAGS_SYMBOL_KEYS` and remove the alias.

https://github.com/ruby/prism/commit/f5099c79ce
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Fix hash pattern rest</title>
<updated>2023-12-14T02:43:32+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2023-12-14T02:35:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b7e89d4b175a88be333134066b595d1e34c33fd3'/>
<id>b7e89d4b175a88be333134066b595d1e34c33fd3</id>
<content type='text'>
https://github.com/ruby/prism/commit/43c4232cfc
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/43c4232cfc
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Flag for attribute write on calls</title>
<updated>2023-12-12T15:55:54+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2023-12-12T15:39:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=278ce27ee4063dec5b8967563d58e32ea087a380'/>
<id>278ce27ee4063dec5b8967563d58e32ea087a380</id>
<content type='text'>
https://github.com/ruby/prism/commit/465731969c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/465731969c
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Update tests and snapshots</title>
<updated>2023-12-12T13:05:09+00:00</updated>
<author>
<name>Ufuk Kayserilioglu</name>
<email>ufuk.kayserilioglu@shopify.com</email>
</author>
<published>2023-12-11T20:28:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d313c82f797852037012138284d4e49fdaf284c4'/>
<id>d313c82f797852037012138284d4e49fdaf284c4</id>
<content type='text'>
https://github.com/ruby/prism/commit/0663e2bcfa
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/0663e2bcfa
</pre>
</div>
</content>
</entry>
</feed>
