dudle icon indicating copy to clipboard operation
dudle copied to clipboard

Atom feed apparently not compatible with Ruby > 1.9

Open rohieb opened this issue 4 years ago • 0 comments

Browsing the feed URL for a poll only results in a HTTP/500 Bad Gateway, and in the nginx error log I get:

2020/06/20 20:58:03 [error] 13619#13619: *68 FastCGI sent in stderr: "/srv/www/dudle/gems/gems/atom-0.1/lib/xmlmapping.rb:34:in `initialize': wrong number of arguments (given 0, expected 1) (ArgumentError)
	from /srv/www/dudle/testestestestestes/atom.cgi:31:in `new'
	from /srv/www/dudle/testestestestestes/atom.cgi:31:in `<main>'" while reading response header from upstream, client: 192.168.122.2, server: [redacted], request: "GET /testestestestestes/atom.cgi HTTP/1.0", upstream: "fastcgi://unix:/run/fcgiwrap.socket:"

When I try to run atom.rb manually, this results in parser errors:

$ ruby /srv/www/dudle/atom.rb 
Traceback (most recent call last):
	3: from /srv/www/dudle/atom.rb:23:in `<main>'
	2: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:39:in `require'
	1: from /usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
/usr/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:135:in `require': /srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:41: syntax error, unexpected ':', expecting keyword_then or ',' or ';' or '\n' (SyntaxError)
					when 'text': 'text/plain'
					           ^
/srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:42: syntax error, unexpected keyword_when, expecting keyword_end
					when 'html': 'text/html'
					^~~~
/srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:42: syntax error, unexpected ':', expecting keyword_end
					when 'html': 'text/html'
					           ^
/srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:43: syntax error, unexpected keyword_when, expecting keyword_end
					when 'xhtml': 'text/xhtml'
					^~~~
/srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:43: syntax error, unexpected ':', expecting keyword_end
					when 'xhtml': 'text/xhtml'
					            ^
/srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:49: syntax error, unexpected tLABEL_END, expecting tSTRING_CONTENT or tSTRING_DBEG or tSTRING_DVAR or tSTRING_END
...when 'text/plain', 'text/html': element.texts.map {|t| t.val...
...                             ^~
/srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:50: syntax error, unexpected keyword_when, expecting keyword_end
				when 'text/xhtml' :
				^~~~
/srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:50: syntax error, unexpected ':', expecting keyword_end
				when 'text/xhtml' :
				                  ^
/srv/www/dudle/gems/gems/atom-0.3/lib/atom.rb:57: syntax error, unexpected keyword_end, expecting end-of-input

According to this Stack Overflow post the atom module is not compatible with Ruby 2.5? I don't know if https://github.com/sr/atom is the canonical source for it, but also the last release on rubygems is from 2009, sothe module looks unmaintained.

Possibly the code should be ported to a more recent gem.

rohieb avatar Jun 20 '20 19:06 rohieb