From: shevegen@... Date: 2017-06-29T17:51:10+00:00 Subject: [ruby-core:81838] [Ruby trunk Bug#13698] Sort Methods Differ Issue #13698 has been updated by shevegen (Robert A. Heiler). I get the same for the current ruby on linux (ruby 2.4.1p111 (2017-03-22 revision 58053) [i686-linux]) Perhaps someone with ruby on mac can confirm the result by sherrysarkar. ---------------------------------------- Bug #13698: Sort Methods Differ https://bugs.ruby-lang.org/issues/13698#change-65551 * Author: sherrysarkar (Sherry Sarkar) * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.3.3p222 (2016-11-21 revision 56859) * Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN ---------------------------------------- Hello, **Issue:** Two different machines with the same ruby version return different results for the method "sort". One machine runs macOS and the other runs Linux. More specifically, when I run "ruby --version" in the macOS machine, I get "ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-darwin16]" and when I run "ruby --version" in the Linux machine, I get "ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]". **Reproducibility:** If you run the following script in the two machines described above, you get different results. ~~~ arr = [{"id"=>"549741245", "changed"=>"2015-06-24T22:02:51Z"}, {"id"=>"549760170", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"549760171", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"549760172", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"551080187", "changed"=>"2015-06-29T21:49:24Z"}, {"id"=>"551080188", "changed"=>"2015-06-29T21:49:24Z"}, {"id"=>"551080189", "changed"=>"2015-06-29T21:49:24Z"}] arr.sort { |a, b| b['changed'] <=> a['changed'] } ~~~ **Results** The macOS machine returns ~~~ ruby [{"id"=>"551080189", "changed"=>"2015-06-29T21:49:24Z"}, {"id"=>"551080187", "changed"=>"2015-06-29T21:49:24Z"}, {"id"=>"551080188", "changed"=>"2015-06-29T21:49:24Z"}, {"id"=>"549760172", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"549760170", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"549760171", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"549741245", "changed"=>"2015-06-24T22:02:51Z"}] ~~~ The Linux machine returns ~~~ ruby [{"id"=>"551080187", "changed"=>"2015-06-29T21:49:24Z"}, {"id"=>"551080188", "changed"=>"2015-06-29T21:49:24Z"}, {"id"=>"551080189", "changed"=>"2015-06-29T21:49:24Z"}, {"id"=>"549760170", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"549760171", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"549760172", "changed"=>"2015-06-24T23:15:44Z"}, {"id"=>"549741245", "changed"=>"2015-06-24T22:02:51Z"}] ~~~ I would expect for sort (ruby 2.3.3p222) to return the same results given the same input. Thanks! -- https://bugs.ruby-lang.org/ Unsubscribe: