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.
Welcome to the Ubuntu Weekly Newsletter, Issue 883 for the week of March 9 –…
In this article, we will see how to install nvidia-smi on Ubuntu or Debian Linux.…
In this article, we will see how to install clang tool on Ubuntu or Debian…
When working with Docker containers on Raspberry Pi devices, you might encounter frustrating signature verification…
You’ve recently upgraded to Ubuntu 18.04 and found that your OpenVPN connection no longer resolves…
Have you ever tried to open System Monitor on your Ubuntu 18.04 system only to…