Compare commits

...
Sign in to create a new pull request.

4 commits

Author SHA1 Message Date
jackorp
81461a9144 Update Release number
Forgot to update the Release number
2018-05-11 19:19:47 +02:00
jackorp
963b4725b6 Bump package version 2018-05-11 19:17:04 +02:00
jackorp
05b2d9005b Delete unneeded file 2018-05-11 18:54:39 +02:00
jackorp
dfb2bf0dab Bump epoch to make package buildable
* While updating I didn't realise it does not have the packages needed
in f28, this fixes my mistake.
2018-04-05 20:42:28 +02:00
2 changed files with 16 additions and 80 deletions

View file

@ -1,67 +0,0 @@
require 'eventmachine'
require 'uri'
require 'websocket'
module EventMachine
class WebSocketClient < Connection
include Deferrable
attr_accessor :url
attr_accessor :protocol_version
attr_accessor :origin
def self.connect(uri, opts={})
p_uri = URI.parse(uri)
conn = EM.connect(p_uri.host, p_uri.port || 80, self) do |c|
c.url = uri
c.protocol_version = opts[:version]
c.origin = opts[:origin]
end
end
def post_init
@handshaked = false
@frame = ::WebSocket::Frame::Incoming::Client.new
end
def connection_completed
@connect.yield if @connect
@hs = ::WebSocket::Handshake::Client.new(:url => @url,
:origin => @origin,
:version => @protocol_version)
send_data @hs.to_s
end
def stream &cb; @stream = cb; end
def connected &cb; @connect = cb; end
def disconnect &cb; @disconnect = cb; end
def receive_data data
if !@handshaked
@hs << data
if @hs.finished?
@handshaked = true
succeed
end
receive_data(@hs.leftovers) if @hs.leftovers
else
@frame << data
while msg = @frame.next
@stream.call(msg) if @stream
end
end
end
def send_msg(s, args={})
type = args[:type] || :text
frame = ::WebSocket::Frame::Outgoing::Client.new(:data => s, :type => type, :version => @hs.version)
send_data frame.to_s
end
def unbind
super
@disconnect.call if @disconnect
end
end
end

View file

@ -3,23 +3,16 @@
Name: rubygem-%{gem_name}
Version: 0.5.1
Release: 22%{?dist}
Release: 3%{?dist}
Epoch: 1
Summary: EventMachine based WebSocket server
License: MIT
URL: http://github.com/igrigorik/em-websocket
Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem
# Test suite depends on specific version of em-websocket-client
# that isn't pushed into master branch:
# https://github.com/igrigorik/em-websocket/blob/master/Gemfile#L5
# Luckily, the package is actually just one small file:
# https://github.com/movitto/em-websocket-client/blob/expose-websocket-api/lib/em-websocket-client.rb
Source1: https://raw.githubusercontent.com/movitto/em-websocket-client/expose-websocket-api/lib/em-websocket-client.rb
BuildRequires: ruby(release)
BuildRequires: rubygems-devel
BuildRequires: ruby
BuildRequires: rubygem(rspec)
BuildRequires: rubygem(em-http-request)
BuildRequires: rubygem(em-websocket-client)
BuildRequires: rubygem(em-spec)
BuildRequires: rubygem(http_parser.rb)
BuildArch: noarch
@ -30,7 +23,7 @@ EventMachine based WebSocket server.
%package doc
Summary: Documentation for %{name}
Requires: %{name} = %{version}-%{release}
Requires: %{name} = %{epoch}:%{version}-%{release}
BuildArch: noarch
%description doc
@ -60,7 +53,14 @@ cp -a .%{gem_dir}/* \
%check
pushd .%{gem_instdir}
rspec -I %{dirname:%{SOURCE1}} spec
# we do not have packages needed for tests in fedora
sed -i '/em-http/ s/^/#/' spec/helper.rb
sed -i '/em-websocket-client/ s/^/#/' spec/helper.rb
mv spec/integration/common_spec.rb{,.bak}
mv spec/integration/draft75_spec.rb{,.bak}
rspec spec
popd
%files
@ -81,8 +81,11 @@ popd
%{gem_instdir}/spec
%changelog
* Wed Jan 24 2018 Jaroslav Prokop <jar.prokop@volny.cz> - 0.5.1-2
- Enable test suites after needed packages were imported to Fedora.
* Fri May 11 2018 Jaroslav Prokop <jar.prokop@volny.cz> - 1:0.5.1-3
- The package does not have packages needed for tests in f28
* Thu Apr 5 2018 Jaroslav Prokop <jar.prokop@volny.cz> - 0.5.1-2
- Enable test suites after needed packages were imported to Fedora.
* Wed Jan 24 2018 Jaroslav Prokop <jar.prokop@volny.cz> - 0.5.1-1
- Initial package