<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/prism/templates/src/serialize.c.erb, branch v4.0.3</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>[ruby/prism] Avoid undefined int overflow behaviour</title>
<updated>2025-12-05T20:21:28+00:00</updated>
<author>
<name>Steven Johnstone</name>
<email>steven.james.johnstone@gmail.com</email>
</author>
<published>2025-12-05T17:44:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=be12e19856c95ac722efa944af74122a9b2a6bef'/>
<id>be12e19856c95ac722efa944af74122a9b2a6bef</id>
<content type='text'>
Fixes https://github.com/ruby/prism/pull/3786.

https://github.com/ruby/prism/commit/b72b664675
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes https://github.com/ruby/prism/pull/3786.

https://github.com/ruby/prism/commit/b72b664675
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Include nodeId in Java Node only if necessary</title>
<updated>2025-03-22T17:06:46+00:00</updated>
<author>
<name>Benoit Daloze</name>
<email>eregontp@gmail.com</email>
</author>
<published>2025-03-22T09:50:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=13e6f715ef766eb04ba6862d1d716eb03fea6396'/>
<id>13e6f715ef766eb04ba6862d1d716eb03fea6396</id>
<content type='text'>
* See https://github.com/ruby/prism/issues/3502

https://github.com/ruby/prism/commit/b7aedfe696
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* See https://github.com/ruby/prism/issues/3502

https://github.com/ruby/prism/commit/b7aedfe696
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Add node_id to Java serialization</title>
<updated>2025-03-21T14:18:57+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2025-03-21T14:12:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=93ac342afc5e42c0361c8fccf378ca14b2e8b0dd'/>
<id>93ac342afc5e42c0361c8fccf378ca14b2e8b0dd</id>
<content type='text'>
https://github.com/ruby/prism/commit/93e768bd18
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/93e768bd18
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Do not serialize common flags when PRISM_SERIALIZE_ONLY_SEMANTICS_FIELDS is set</title>
<updated>2024-07-25T11:39:05+00:00</updated>
<author>
<name>Benoit Daloze</name>
<email>eregontp@gmail.com</email>
</author>
<published>2024-07-24T19:57:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=53f0d3b1f7ee9d1f1068b44ef856c557177704a5'/>
<id>53f0d3b1f7ee9d1f1068b44ef856c557177704a5</id>
<content type='text'>
* Note that we could shift the flags by 2 on serialize &amp; deserialize
  but it does not seems worth it as it does not save serialized size
  in any significant amount, i.e. average was 0.799 before #2924.
* $ bundle exec rake serialized_size:topgems
Before:
Total sizes for top 100 gems:
total source size:      90207647
total serialized size:  69477115
total serialized/total source: 0.770

Stats of ratio serialized/source per file:
average: 0.844
median:  0.825
1st quartile: 0.597
3rd quartile: 1.064
min - max: 0.078 - 3.792

After:
Total sizes for top 100 gems:
total source size:      90207647
total serialized size:  66150209
total serialized/total source: 0.733

Stats of ratio serialized/source per file:
average: 0.800
median:  0.779
1st quartile: 0.568
3rd quartile: 1.007
min - max: 0.076 - 3.675

https://github.com/ruby/prism/commit/e012072f70
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Note that we could shift the flags by 2 on serialize &amp; deserialize
  but it does not seems worth it as it does not save serialized size
  in any significant amount, i.e. average was 0.799 before #2924.
* $ bundle exec rake serialized_size:topgems
Before:
Total sizes for top 100 gems:
total source size:      90207647
total serialized size:  69477115
total serialized/total source: 0.770

Stats of ratio serialized/source per file:
average: 0.844
median:  0.825
1st quartile: 0.597
3rd quartile: 1.064
min - max: 0.078 - 3.792

After:
Total sizes for top 100 gems:
total source size:      90207647
total serialized size:  66150209
total serialized/total source: 0.733

Stats of ratio serialized/source per file:
average: 0.800
median:  0.779
1st quartile: 0.568
3rd quartile: 1.007
min - max: 0.076 - 3.675

https://github.com/ruby/prism/commit/e012072f70
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Do not serialize node_id when PRISM_SERIALIZE_ONLY_SEMANTICS_FIELDS is set</title>
<updated>2024-07-25T11:39:04+00:00</updated>
<author>
<name>Benoit Daloze</name>
<email>eregontp@gmail.com</email>
</author>
<published>2024-07-24T19:32:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=9cc2747ebbbe33315751873f8dc24b7c32c26ad0'/>
<id>9cc2747ebbbe33315751873f8dc24b7c32c26ad0</id>
<content type='text'>
* $ bundle exec rake serialized_size:topgems
Before:
Total sizes for top 100 gems:
total source size:      90207647
total serialized size:  86284647
total serialized/total source: 0.957

Stats of ratio serialized/source per file:
average: 0.952
median:  0.937
1st quartile: 0.669
3rd quartile: 1.206
min - max: 0.080 - 4.065

After:
Total sizes for top 100 gems:
total source size:      90207647
total serialized size:  69477115
total serialized/total source: 0.770

Stats of ratio serialized/source per file:
average: 0.844
median:  0.825
1st quartile: 0.597
3rd quartile: 1.064
min - max: 0.078 - 3.792

https://github.com/ruby/prism/commit/cf90fe5759
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* $ bundle exec rake serialized_size:topgems
Before:
Total sizes for top 100 gems:
total source size:      90207647
total serialized size:  86284647
total serialized/total source: 0.957

Stats of ratio serialized/source per file:
average: 0.952
median:  0.937
1st quartile: 0.669
3rd quartile: 1.206
min - max: 0.080 - 4.065

After:
Total sizes for top 100 gems:
total source size:      90207647
total serialized size:  69477115
total serialized/total source: 0.770

Stats of ratio serialized/source per file:
average: 0.844
median:  0.825
1st quartile: 0.597
3rd quartile: 1.064
min - max: 0.078 - 3.792

https://github.com/ruby/prism/commit/cf90fe5759
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Add node ids to nodes</title>
<updated>2024-07-11T18:25:54+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2024-07-03T14:42:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2bf9ae3fa1b5dec1c63176f39db84d697ede3581'/>
<id>2bf9ae3fa1b5dec1c63176f39db84d697ede3581</id>
<content type='text'>
https://github.com/ruby/prism/commit/bf16ade7f9
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/bf16ade7f9
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Expose flags on every node type</title>
<updated>2024-07-11T18:25:54+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2024-07-02T19:43:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=687be43c79a6fb119e52b09ea561cf958a9aabf2'/>
<id>687be43c79a6fb119e52b09ea561cf958a9aabf2</id>
<content type='text'>
https://github.com/ruby/prism/commit/9f12a56fd6
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/9f12a56fd6
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Set `#line" directives to respect the path in ruby/ruby repo</title>
<updated>2024-06-20T12:36:18+00:00</updated>
<author>
<name>Yusuke Endoh</name>
<email>mame@ruby-lang.org</email>
</author>
<published>2024-06-20T03:15:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=c3b5b98e15e9a893aaca46e53d2c8931bf13e322'/>
<id>c3b5b98e15e9a893aaca46e53d2c8931bf13e322</id>
<content type='text'>
ruby/ruby measures test coverage of C code, but the `#line` directive
generated by prism points to a file that does not exist, so coverage is
not taken properly.

This changeset specifies the location of the source files as a relative
path in terms of ruby/ruby repo.

https://github.com/ruby/prism/commit/1a2626be27
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ruby/ruby measures test coverage of C code, but the `#line` directive
generated by prism points to a file that does not exist, so coverage is
not taken properly.

This changeset specifies the location of the source files as a relative
path in terms of ruby/ruby repo.

https://github.com/ruby/prism/commit/1a2626be27
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Ensure deserialization works with errors+warnings&gt;256</title>
<updated>2024-03-28T16:04:35+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2024-03-28T14:47:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d583616f32795de61ecd4efd60346c278873da7f'/>
<id>d583616f32795de61ecd4efd60346c278873da7f</id>
<content type='text'>
https://github.com/ruby/prism/commit/f540e830b5
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/f540e830b5
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/prism] Provide options for reducing size</title>
<updated>2024-03-20T21:32:03+00:00</updated>
<author>
<name>Kevin Newton</name>
<email>kddnewton@gmail.com</email>
</author>
<published>2024-03-20T14:08:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=af7bf9e0d8fd5e542781ca7ac9550e3011913924'/>
<id>af7bf9e0d8fd5e542781ca7ac9550e3011913924</id>
<content type='text'>
https://github.com/ruby/prism/commit/592128de4d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/ruby/prism/commit/592128de4d
</pre>
</div>
</content>
</entry>
</feed>
