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.
Kolla Ansible provides production-ready containers (here, Docker) and deployment tools for operating OpenStack clouds. This…
This public beta enables the full Ubuntu Desktop experience on the Qualcomm Dragonwing™ QCS6490 and…
Time is running out to be in full compliance with the EU Cyber Resilience Act,…
Identity management is vitally important in cybersecurity. Every time someone tries to access your networks,…
Welcome to the Ubuntu Weekly Newsletter, Issue 889 for the week of April 20 –…
Introduction I just returned from RubyKaigi 2025, which ran from April 16th to 18th at…