If you get following error when trying to parse time:
Time.zone.parse('2019-01-01 11:11:11') Traceback (most recent call last): 16: from /bundler/friendly_errors.rb:124:in `with_friendly_errors' 15: from /bundle:30:in `block in ' 14: from /bundler/cli.rb:18:in `start' 13: from /bundler/vendor/thor/lib/thor/base.rb:466:in `start' 12: from /bundler/cli.rb:27:in `dispatch' 11: from /bundler/vendor/thor/lib/thor.rb:387:in `dispatch' 10: from /bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command' 9: from /bundler/vendor/thor/lib/thor/command.rb:27:in `run' 8: from /bundler/cli.rb:465:in `exec' 7: from /bundler/cli/exec.rb:28:in `run' 6: from /bundler/cli/exec.rb:74:in `kernel_load' 5: from /bundler/cli/exec.rb:74:in `load' 4: from bin/irb:23:in `' 3: from bin/irb:23:in `load' 2: from lib/ruby/gems/2.6.0/gems/irb-1.0.0/exe/irb:11:in `' 1: from (irb):5 NoMethodError (undefined method `parse' for nil:NilClass)
it means you’ve forgotten to set the timezone:
Time.zone = 'UTC'
Also, keep in mind, that each time you spin up a new thread, it won’t have a timezone defined (outside of Rails):
class="brush: ruby; title: ; notranslate"> Time.zone = 'UTC' Time.zone.parse('2019-01-01 11:11:11') # works Thread.abort_on_exception = true # fails Thread.new do Time.zone.parse('2019-01-01 11:11:11') end # NoMethodError: undefined method `parse' for nil:NilClass
In order to fix that, you need to set the time zone in each of your newly created threads:
Time.zone = 'UTC' Time.zone.parse('2019-01-01 11:11:11') # works Thread.abort_on_exception = true # works Thread.new do Time.zone = 'UTC' Time.zone.parse('2019-01-01 11:11:11') end
Cover photo by Alex The Shutter on Attribution-NonCommercial 2.0 Generic (CC BY-NC 2.0) license.
The post NameError: undefined method ‘parse’ for class ‘NilClass’ when doing Time.zone.parse appeared first on Running with Ruby.
The latest interim release of Ubuntu introduces “devpacks” for popular frameworks like Spring, along with…
Ubuntu 25.04, codenamed “Plucky Puffin”, is here. This release continues Ubuntu’s proud tradition of integrating…
Ubuntu released its 20.04 (Focal Fossa) release 5 years ago, on March 23, 2020. As…
Focal Fossa will reach the End of Standard Support in May 2025, also known as…
Ubuntu MATE 25.04 is ready to soar! 🪽 Celebrating our 10th anniversary as an official…
Welcome to the Ubuntu Weekly Newsletter, Issue 887 for the week of April 6 –…