<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/ruby-gems/chef.git/lib/chef/node, branch mount_array</title>
<subtitle>github.com: opscode/chef.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/'/>
<entry>
<title>Node Attributes: Build ImmutableMash properly in deep_merge!</title>
<updated>2018-10-16T00:06:54+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-10-16T00:06:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=598146da16425de86b42732f2e6a9078435bf5e7'/>
<id>598146da16425de86b42732f2e6a9078435bf5e7</id>
<content type='text'>
closes #7738

The root cause here is that there's a difference between doing

Chef::Node::VividMash.new( &lt;another VividMash&gt; )

And:

Chef::Node::ImmutableMash.new( &lt;a VividMash&gt; )

The former short circuits and does no work in convert_value.  The
latter will not short circuit and does the proper work to dup
and convert the value argument.

Since we build an ImmutableMash now, we do not need to wrap it
with the extra immutablize() call.

This should be perf neutral or very, very slightly better perf.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
closes #7738

The root cause here is that there's a difference between doing

Chef::Node::VividMash.new( &lt;another VividMash&gt; )

And:

Chef::Node::ImmutableMash.new( &lt;a VividMash&gt; )

The former short circuits and does no work in convert_value.  The
latter will not short circuit and does the proper work to dup
and convert the value argument.

Since we build an ImmutableMash now, we do not need to wrap it
with the extra immutablize() call.

This should be perf neutral or very, very slightly better perf.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fix Style/MutableConstant</title>
<updated>2018-07-03T01:20:06+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-07-03T01:20:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=2da413fe65595e95b16e9e01afa240d5c668a03a'/>
<id>2da413fe65595e95b16e9e01afa240d5c668a03a</id>
<content type='text'>
Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fix Style/PreferredHashMethods</title>
<updated>2018-07-02T22:08:43+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-07-02T21:55:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=21189d25a9385aa9ff3368716824b8333475a08b'/>
<id>21189d25a9385aa9ff3368716824b8333475a08b</id>
<content type='text'>
absolutely hard requirement on the fixes that went into chef-config 2.2.11, so the
floor of that gem is bumped up.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
absolutely hard requirement on the fixes that went into chef-config 2.2.11, so the
floor of that gem is bumped up.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Whitelist some additional Hash/Array methods</title>
<updated>2018-04-27T21:45:44+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-04-27T21:45:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=ae72d0fbe4dbbfa081d0befb61cd6c1a74f58b75'/>
<id>ae72d0fbe4dbbfa081d0befb61cd6c1a74f58b75</id>
<content type='text'>
these get monkeypatched in by gems which are included in ChefDK
and cause those tests to break.

kind of unpleasant workflow, but this is doing its job correctly.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
these get monkeypatched in by gems which are included in ChefDK
and cause those tests to break.

kind of unpleasant workflow, but this is doing its job correctly.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "Per-container deep merge caching"</title>
<updated>2018-02-23T19:20:50+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-02-23T19:20:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=c60c5009e887e650c747581f90b6c68dfae44234'/>
<id>c60c5009e887e650c747581f90b6c68dfae44234</id>
<content type='text'>
This reverts commit 0c29acc106ca774e230c8ef45694c8bffd166b69.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 0c29acc106ca774e230c8ef45694c8bffd166b69.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "turbo attribute merging"</title>
<updated>2018-02-23T19:09:43+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-02-23T19:09:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=a50bfb54e2d570c73cf44cd021432e689e8efbe8'/>
<id>a50bfb54e2d570c73cf44cd021432e689e8efbe8</id>
<content type='text'>
This reverts commit 5b17173847fe3e6d2a976fecad065952c801522e.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 5b17173847fe3e6d2a976fecad065952c801522e.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "turboize arrays"</title>
<updated>2018-02-23T19:09:32+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-02-23T19:09:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=88a20c2096ef32140e10a7da862853bd486f70f5'/>
<id>88a20c2096ef32140e10a7da862853bd486f70f5</id>
<content type='text'>
This reverts commit e24565b571e97275d39fcf7c97afc7dd6e1a37c4.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit e24565b571e97275d39fcf7c97afc7dd6e1a37c4.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "remove comments + debugging"</title>
<updated>2018-02-23T19:09:18+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-02-23T19:09:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=12cbb07a4275058476a4618813963a945fde2451'/>
<id>12cbb07a4275058476a4618813963a945fde2451</id>
<content type='text'>
This reverts commit 9fe57c38a57135c7bd29ff05a1c7839a4d30c38c.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 9fe57c38a57135c7bd29ff05a1c7839a4d30c38c.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "fix node assignment of ImmutableArrays to VividMashes/AttrArrays"</title>
<updated>2018-02-23T19:07:05+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-02-23T19:07:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=87079d5014b331da6d55125a2d91c283c395a038'/>
<id>87079d5014b331da6d55125a2d91c283c395a038</id>
<content type='text'>
This reverts commit e56f8d58b80334256085907961aac9ca9f56f125.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit e56f8d58b80334256085907961aac9ca9f56f125.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix node assignment of ImmutableArrays to VividMashes/AttrArrays</title>
<updated>2018-01-25T20:52:13+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2018-01-25T20:52:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=e56f8d58b80334256085907961aac9ca9f56f125'/>
<id>e56f8d58b80334256085907961aac9ca9f56f125</id>
<content type='text'>
node.default['foo'] = node['bar'] need to have node['bar'] have its
cache vivified otherwise we potentially get an empty hash or array.

in the case of hashes, the assignment must have been walking though
the values with #each or something which poked the cache on the target
hash which caused it to vivify, so this bug only affected Arrays
where the AttrArray initializer likely did a quick-n-dirty copy of
the internal structure of the ImmutableArray which was empty.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
node.default['foo'] = node['bar'] need to have node['bar'] have its
cache vivified otherwise we potentially get an empty hash or array.

in the case of hashes, the assignment must have been walking though
the values with #each or something which poked the cache on the target
hash which caused it to vivify, so this bug only affected Arrays
where the AttrArray initializer likely did a quick-n-dirty copy of
the internal structure of the ImmutableArray which was empty.

Signed-off-by: Lamont Granquist &lt;lamont@scriptkiddie.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
