From: Michal Suchanek Date: 2009-02-23T19:48:34+09:00 Subject: [ruby-core:22359] Re: 1.8.7 Specifics 2009/2/23 Akinori MUSHA : > At Mon, 23 Feb 2009 02:48:51 +0900, > Michal Babej wrote: >> Sorry for a little late response... So, i have one small story, from several >> months ago, when i was just starting with ruby. I had a small program written >> (~200 lines), and i decided to give 1.8.7 a try. It failed on Array#index >> change. Thoughts: > > That sets me wondering. ��You might have been either giving both an > argument and a block to #index on 1.8.6 which block was just > meaningless, or giving nothing expecting an ArgumentError to be raised > for some unknown reason. ��Maybe you found a potential bug or logic > error in your code. > >> 1. I didn't expect ruby to have "kernel-like" versioning scheme, so i was >> quite shocked that 1.8.7 changed an important class in such a way. It looked >> like there could be a lot more _big_ changes and i decided to stay with 1.8.6 >> >> 2. I didn't read NEWS. Actually i had no idea there's a NEWS file which >> actually had useful content, and that it's the place where changes to ruby N-1 >> would live. Perhaps it's just me... but it was quite surprising to learn. Well, this file is quite lengthy and not very readable even for those who look in it. The ordering by class rather than by feature make it look like there are *many* changes. A single change is listed multiple times for each class it affects so it is not clear what it affects nor that it's in fact a single concept applied to several classes. > > I think I never missed mentioning the file in any preview or final > release announcement I issued. ��After all, it is your choice to go > with a guidebook or just stay reading nothing... > > Maybe it was not you but a distributor or packager who did not read it > and called attentions of their users, and in that case we'll have to > try harder to call *their* attensions. Note that the GC semantic change which breaks some C extensions (which was pointed out as a response to 1.8.7 preview2 without diagnosing the reason) is not mentioned in the NEWS file. So a distributor who happily packages 1.8.7 then gets a bunch of C extensions that appear to build fine and then segfault at runtime. I tried looking at Changelog as well but gleaning anything useful from there is impossible, at least for me. Thanks Michal