que-web icon indicating copy to clipboard operation
que-web copied to clipboard

Undefined method `utc' for String

Open AlanLattimore opened this issue 5 years ago • 0 comments

Dependencies

PgSQL 12 ruby: 2.6.5 rails: 5.2.3 pg: 1.1.4 que: 1.0.0.beta4 (commit 065981) que-web: HEAD (commit 3f7b7b7)

Reproduce Condition

Visit /que/scheduled

How System Behaves

  • System displays the message:
NoMethodError at /que/scheduled
undefined method `utc' for "2020-09-06 22:17:03":String
in que-web/lib/que/web.rb in relative_time:188
que-web/web/views/scheduled.erb:26

My best guess so far is que-web/lib/que/web.rb:39

scheduled_jobs = Que.execute SQL[:scheduled_jobs], [pager.page_size, pager.offset, search]

returns run_at as a string, example: "2020-09-06 22:17:03"

The relative_time helper expects a Time object at lib/que/web.rb:189

      def relative_time(time)
        %{<time class="timeago" datetime="#{time.utc.iso8601}">#{time.utc}</time>}
      end

and the String class is missing .utc

Notes: I base this fix (loosely) on https://github.com/que-rb/que/commit/87d40e7e1501346f4a92871c789df69863eaf94f.

AlanLattimore avatar Oct 29 '20 19:10 AlanLattimore