Actions
Bug #16973
closedRails Active Support unit test fails since 41582d5866
Status:
Third Party's Issue
Assignee:
-
Target version:
-
ruby -v:
ruby 2.8.0dev (2020-06-18T15:18:31Z master 41582d5866) [x86_64-linux]
Description
Recently Rails CI against Ruby 2.8.0dev has been failing since https://buildkite.com/rails/rails/builds/70219#79d96882-6c51-4854-8cab-28f50ac8bca1 .
The last successful one is https://buildkite.com/rails/rails/builds/70207#ff70c57d-1d72-493b-be63-0ac1827ea44d .
Compared Ruby commit https://github.com/ruby/ruby/compare/41a4c80d284a24360d3a6c5b6e5ca408ccca6efc...adbdf11f94afd52d276c7891515e0eb808f6003f then Based on git bisect
between 41a4c80d284a24360d3a6c5b6e5ca408ccca6efc
and adbdf11f94afd52d276c7891515e0eb808f6003f
, I've found commit 41582d5866 triggers these failures.
Script to reproduce. saved as "rep.rb"¶
# frozen_string_literal: true
require "bundler/inline"
gemfile(true) do
source "https://rubygems.org"
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
gem "activesupport"
end
require 'active_support/all'
require "minitest/autorun"
require "logger"
class ToJsonTest < Minitest::Test
def test_json_time_format
ActiveSupport::JSON::Encoding.use_standard_json_time_format = false
assert_equal '{"time":"2009/01/01 00:00:00 +0000"}', { time: Time.utc(2009) }.to_json
end
end
Actual result with Ruby 2.8.0dev 41582d5866¶
$ ruby -v
ruby 2.8.0dev (2020-06-18T15:18:31Z master 41582d5866) [x86_64-linux]
$ ruby rep.rb
Fetching gem metadata from https://rubygems.org/........
Resolving dependencies...
Using minitest 5.14.1
Using concurrent-ruby 1.1.6
Using thread_safe 0.3.6
Using zeitwerk 2.3.0
Using bundler 2.2.0.dev
Using tzinfo 1.2.7
Using i18n 1.8.3
Using activesupport 6.0.3.2
Run options: --seed 43482
# Running:
F
Finished in 0.004782s, 209.1063 runs/s, 209.1063 assertions/s.
1) Failure:
ToJsonTest#test_json_time_format [rep.rb:20]:
--- expected
+++ actual
@@ -1 +1 @@
-"{\"time\":\"2009/01/01 00:00:00 +0000\"}"
+"{\"time\":\"2009-01-01 00:00:00 UTC\"}"
1 runs, 1 assertions, 1 failures, 0 errors, 0 skips
$
Expected result with Ruby 2.8.0dev 750203c514¶
$ ruby -v rep.rb
ruby 2.8.0dev (2020-06-18T14:43:48Z master 750203c514) [x86_64-linux]
/home/yahonda/.rbenv/versions/2.8.0-dev/lib/ruby/2.8.0/bundler/vendored_persistent.rb:34: warning: instance variable @socket not initialized
Fetching gem metadata from https://rubygems.org/........
Resolving dependencies...
Using minitest 5.14.1
Using zeitwerk 2.3.0
Using concurrent-ruby 1.1.6
Using thread_safe 0.3.6
Using bundler 2.2.0.dev
Using i18n 1.8.3
Using tzinfo 1.2.7
Using activesupport 6.0.3.2
/home/yahonda/.rbenv/versions/2.8.0-dev/lib/ruby/gems/2.8.0/gems/activesupport-6.0.3.2/lib/active_support/core_ext/hash/except.rb:12: warning: method redefined; discarding old except
Run options: --seed 11397
# Running:
.
Finished in 0.002117s, 472.3315 runs/s, 472.3315 assertions/s.
1 runs, 1 assertions, 0 failures, 0 errors, 0 skips
$
Actions
Like0
Like0Like0Like0Like0Like0Like0Like0