Documented breaking changes within the chef 10 releases?


#1

Anyone know if there’s a list of breaking changes and major improvements
between 0.10.6 and now (10.16.2)?

So far I’ve discovered:

  • an array of nodes (returned from search) used to be able to be sorted
    with .sort, now that fails. Not in any release notes I’ve found, not sure
    when it changed.
  • value_for_platform_family (added in 0.10.10) not listed in the release
    notes for 0.10.10

Wondering what else I may get bitten by?

(A note on the first one here: I realize that comparing node objects
doesn’t make much sense, and instead comparing the names of the nodes
should be done, but other devs in my group didn’t think of that, and now
their recipes are breaking)


#2

On Friday, December 21, 2012 at 7:50 AM, Jesse Campbell wrote:

Anyone know if there’s a list of breaking changes and major improvements between 0.10.6 and now (10.16.2)?
In general there shouldn’t be any. We consider breaking changes in minor/patch versions to be regressions and fix them as we find them.

So far I’ve discovered:

  • an array of nodes (returned from search) used to be able to be sorted with .sort, now that fails. Not in any release notes I’ve found, not sure when it changed.
    I’m not sure how this ever worked for you. I checked out 0.10.6 in my git repo and was unable to sort nodes with a simple #sort call.
  • value_for_platform_family (added in 0.10.10) not listed in the release notes for 0.10.10
    This is a new feature, so not a breaking change. Not sure why it was not mentioned in the release blog post.

Wondering what else I may get bitten by?

(A note on the first one here: I realize that comparing node objects doesn’t make much sense, and instead comparing the names of the nodes should be done, but other devs in my group didn’t think of that, and now their recipes are breaking)
Could you have had a monkey patch in a library file that has since been removed?


Daniel DeLeo


#3

On 12/21/12 8:29 AM, Daniel DeLeo wrote:

On Friday, December 21, 2012 at 7:50 AM, Jesse Campbell wrote:

Anyone know if there’s a list of breaking changes and major
improvements between 0.10.6 and now (10.16.2)?
In general there shouldn’t be any. We consider breaking changes in
minor/patch versions to be regressions and fix them as we find them.

So far I’ve discovered:

  • an array of nodes (returned from search) used to be able to be
    sorted with .sort, now that fails. Not in any release notes I’ve
    found, not sure when it changed.
    I’m not sure how this ever worked for you. I checked out 0.10.6 in my
    git repo and was unable to sort nodes with a simple #sort call.

https://gist.github.com/18e7bb1d74075c47f750

It appears this behaves differently on different Ruby versions. On Ruby
1.9.2 I get the error Dan posted. On Ruby 1.8.7, no error is raised.

Cheers,

Steve


Steven Danna
Systems Engineer, Opscode, Inc
GPG Key: http://stevendanna.github.com/downloads/code/public.key


#4

Aah. that explains. I went from RBEL provided chef 0.10.6 on ruby 1.8.7 to
omnibus provided chef 10.16.2 (which should come with 1.9.1 or 1.9.2)

Thanks Steven, I was wondering if I was losing my mind here :smiley:

On Fri, Dec 21, 2012 at 12:04 PM, Steven Danna steve@opscode.com wrote:

On 12/21/12 8:29 AM, Daniel DeLeo wrote:

On Friday, December 21, 2012 at 7:50 AM, Jesse Campbell wrote:

Anyone know if there’s a list of breaking changes and major
improvements between 0.10.6 and now (10.16.2)?
In general there shouldn’t be any. We consider breaking changes in
minor/patch versions to be regressions and fix them as we find them.

So far I’ve discovered:

  • an array of nodes (returned from search) used to be able to be
    sorted with .sort, now that fails. Not in any release notes I’ve
    found, not sure when it changed.
    I’m not sure how this ever worked for you. I checked out 0.10.6 in my
    git repo and was unable to sort nodes with a simple #sort call.

https://gist.github.com/18e7bb1d74075c47f750

It appears this behaves differently on different Ruby versions. On Ruby
1.9.2 I get the error Dan posted. On Ruby 1.8.7, no error is raised.

Cheers,

Steve


Steven Danna
Systems Engineer, Opscode, Inc
GPG Key: http://stevendanna.github.com/downloads/code/public.key