<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/ruby-gems/chef.git, branch lcg/multipackage-api-improvement</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>add CHANGELOG</title>
<updated>2015-11-18T02:10:36+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2015-11-18T02:10:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=135a863a41a5594ae866fb255dc63d667475efbe'/>
<id>135a863a41a5594ae866fb255dc63d667475efbe</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>base package provider fixes</title>
<updated>2015-11-18T02:05:06+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2015-11-18T02:04:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=4e292e9c40b396c370ede42d49c75a7d20981e73'/>
<id>4e292e9c40b396c370ede42d49c75a7d20981e73</id>
<content type='text'>
* removes the mutation of the new_resource.version
* adds package_class_supports_arrays for multipackage providers
* cleans up the package resource initializer and sets the package_name
  correctly through the accessor method.

By mutating new_resource.version we were destroying the original intent
of what the user was requesting.  This is a bug that must be fixed.
Generally, subclasses will be able to get the correct information they
need through either the version argument they were passed in
install_package(name, version) instead, or through their
`#target_version_array` method.  If this breaks anything then those
providers need bugfixes as well (since this is a change to an internal
API accessible only to subclassing, and there are backwards compatible
and correct ways to get the information, this is *not* a SemVer
violating change).  See the fix I made to the OpenBSD provider to
preserve the same semantics, avoid using new_resource.version where it
was inappropriate, and make the code more symmetrical where before
substantially different looking code in install_package and
remove_package had exactly the same ultimate effect.

The package_class_supports_arrays 'DSL' for writing multipackage
providers coerces the arguments to the virtual methods (e.g.
install_package) into arrays, even if the user is only requesting a
single package install.  This removes most of the `is_a?(Array)`
checks from the implementation subclasses.

The cleanup of the initializer is similarly necessary so that we can
use Chef 12.5 coercions to make the package_name and version arguments
accept string, but always be Arrays.  This should eliminate the rest
of the need to write `is_a?(Array)` code all over the package provider
implementations.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* removes the mutation of the new_resource.version
* adds package_class_supports_arrays for multipackage providers
* cleans up the package resource initializer and sets the package_name
  correctly through the accessor method.

By mutating new_resource.version we were destroying the original intent
of what the user was requesting.  This is a bug that must be fixed.
Generally, subclasses will be able to get the correct information they
need through either the version argument they were passed in
install_package(name, version) instead, or through their
`#target_version_array` method.  If this breaks anything then those
providers need bugfixes as well (since this is a change to an internal
API accessible only to subclassing, and there are backwards compatible
and correct ways to get the information, this is *not* a SemVer
violating change).  See the fix I made to the OpenBSD provider to
preserve the same semantics, avoid using new_resource.version where it
was inappropriate, and make the code more symmetrical where before
substantially different looking code in install_package and
remove_package had exactly the same ultimate effect.

The package_class_supports_arrays 'DSL' for writing multipackage
providers coerces the arguments to the virtual methods (e.g.
install_package) into arrays, even if the user is only requesting a
single package install.  This removes most of the `is_a?(Array)`
checks from the implementation subclasses.

The cleanup of the initializer is similarly necessary so that we can
use Chef 12.5 coercions to make the package_name and version arguments
accept string, but always be Arrays.  This should eliminate the rest
of the need to write `is_a?(Array)` code all over the package provider
implementations.
</pre>
</div>
</content>
</entry>
<entry>
<title>Restore rspec 3.4 by setting project_source_dirs</title>
<updated>2015-11-18T01:40:10+00:00</updated>
<author>
<name>John Keiser</name>
<email>john@johnkeiser.com</email>
</author>
<published>2015-11-18T00:53:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=0e9c4382e9d58fbcf53ed67043b8de0bda01da21'/>
<id>0e9c4382e9d58fbcf53ed67043b8de0bda01da21</id>
<content type='text'>
to be the cookbooks (see http://rspec.info/blog/2015/11/rspec-3-4-has-been-released/, Better Failure Source Detection, for more info)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
to be the cookbooks (see http://rspec.info/blog/2015/11/rspec-3-4-has-been-released/, Better Failure Source Detection, for more info)
</pre>
</div>
</content>
</entry>
<entry>
<title>Raise an error when a command fails</title>
<updated>2015-11-17T17:20:34+00:00</updated>
<author>
<name>John Keiser</name>
<email>john@johnkeiser.com</email>
</author>
<published>2015-11-17T03:24:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=2d786b751c2a35902fdc7611249d02f42829455c'/>
<id>2d786b751c2a35902fdc7611249d02f42829455c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove bundler cache so external tests will run</title>
<updated>2015-11-17T17:20:34+00:00</updated>
<author>
<name>John Keiser</name>
<email>john@johnkeiser.com</email>
</author>
<published>2015-11-17T03:23:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=d75e3ed39d4e0bcfe00a962bd46a4c2e870bb877'/>
<id>d75e3ed39d4e0bcfe00a962bd46a4c2e870bb877</id>
<content type='text'>
(the --path bundle/vendor screws up our ability to run bundle install)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(the --path bundle/vendor screws up our ability to run bundle install)
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #4177 from chef/lcg/pin-rspec</title>
<updated>2015-11-16T21:26:40+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2015-11-16T21:26:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=45877e9320bd6881caafb6ab338373589b7659c8'/>
<id>45877e9320bd6881caafb6ab338373589b7659c8</id>
<content type='text'>
rspec 3.4.0 broke master</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
rspec 3.4.0 broke master</pre>
</div>
</content>
</entry>
<entry>
<title>rspec 3.4.0 broke master</title>
<updated>2015-11-16T20:02:58+00:00</updated>
<author>
<name>Lamont Granquist</name>
<email>lamont@scriptkiddie.org</email>
</author>
<published>2015-11-16T20:02:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=a88b470f9e744262d0b4780e28c6ea03e97da3d0'/>
<id>a88b470f9e744262d0b4780e28c6ea03e97da3d0</id>
<content type='text'>
pinning to 3.3.x as a temp fix
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
pinning to 3.3.x as a temp fix
</pre>
</div>
</content>
</entry>
<entry>
<title>remove repeated first line in 12.5.1 changelog</title>
<updated>2015-11-14T16:39:40+00:00</updated>
<author>
<name>Julian C. Dunn</name>
<email>jdunn@aquezada.com</email>
</author>
<published>2015-11-14T16:39:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=cb5353823348dee90d3ddc2296b000648ea1a021'/>
<id>cb5353823348dee90d3ddc2296b000648ea1a021</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #4040 from chef/tm/live_execute_streaming</title>
<updated>2015-11-12T10:15:28+00:00</updated>
<author>
<name>Thom May</name>
<email>thom@may.lt</email>
</author>
<published>2015-11-12T10:15:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=ac58788c4c5d010fca13fe65e58e0c3f178ab6eb'/>
<id>ac58788c4c5d010fca13fe65e58e0c3f178ab6eb</id>
<content type='text'>
Implement live streaming for execute resources</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implement live streaming for execute resources</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #3991 from chef/jdm/remote-file-sha2</title>
<updated>2015-11-12T10:10:04+00:00</updated>
<author>
<name>Thom May</name>
<email>thom@may.lt</email>
</author>
<published>2015-11-12T10:10:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/ruby-gems/chef.git/commit/?id=880f744ce9f6cef12b7bdbd746641b87a27f5809'/>
<id>880f744ce9f6cef12b7bdbd746641b87a27f5809</id>
<content type='text'>
Modify remote_file cache_control_data to use sha256 for its name </content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Modify remote_file cache_control_data to use sha256 for its name </pre>
</div>
</content>
</entry>
</feed>
