Skip to content

Commit

Permalink
Remove tornado fork from source code and add python-tornado as run de…
Browse files Browse the repository at this point in the history
…pendency (#317)

Release only for kinetic+
  • Loading branch information
MBlistein authored and jihoonl committed Feb 1, 2018
1 parent 2150e26 commit 791261c
Show file tree
Hide file tree
Showing 89 changed files with 4 additions and 31,639 deletions.
2 changes: 1 addition & 1 deletion rosbridge_server/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 2.8.3)
project(rosbridge_server)

find_package(catkin REQUIRED COMPONENTS rosbridge_library rosapi rospy)
find_package(catkin REQUIRED)

catkin_python_setup()

Expand Down
5 changes: 2 additions & 3 deletions rosbridge_server/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,8 @@
<maintainer email="jihoonlee.in@gmail.com">Jihoon Lee</maintainer>

<buildtool_depend>catkin</buildtool_depend>
<build_depend>rosbridge_library</build_depend>
<build_depend>rosapi</build_depend>
<build_depend>rospy</build_depend>
<run_depend>python-backports.ssl-match-hostname</run_depend>
<run_depend>python-tornado</run_depend>

This comment has been minimized.

Copy link
@awesomebytes

awesomebytes Apr 24, 2018

In Gentoo python-tornado and python-twisted-core are incompatible, cause python-tornado needs python-twisted.

twisted package ebuild (line 53, means it blocks twisted-core): https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-python/twisted/twisted-17.9.0.ebuild#n53

twisted-core package ebuild (line 23, means it blocks twisted): https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-python/twisted-core/twisted-core-15.2.1.ebuild#n23

I don't know what's the solution yet, but I think not declaring python-twisted-core is working. I'll keep testing & reporting, just wanted to give a warning.

This comment has been minimized.

Copy link
@jihoonl

This comment has been minimized.

Copy link
@awesomebytes

awesomebytes Apr 24, 2018

I'm workarounding it in Gentoo with this patch ros/ros-overlay#578

I changed python-twisted-core to python-twisted. rosbridge_server runs with that and I get no more collisions when emerging the packages. Seems like in Gentoo python-twisted contains all the twisted stuff... and you can't install any other twisted package if you have it.

I checked the Ubuntu package dependencies (on Xenial) and they rightly don't have any conflict in between python-twisted and python-twisted-core just cause... python-twisted depends on python-twisted-core as seen here.

<run_depend>python-twisted-core</run_depend>
<run_depend>rosbridge_library</run_depend>
<run_depend>rosapi</run_depend>
Expand Down
84 changes: 1 addition & 83 deletions rosbridge_server/setup.py
Original file line number Diff line number Diff line change
@@ -1,96 +1,14 @@
#!/usr/bin/env python

import os
import platform
import sys
import warnings

from distutils.core import setup, Extension
from distutils.core import setup
from catkin_pkg.python_setup import generate_distutils_setup

d = generate_distutils_setup(
packages=[
'rosbridge_server',
'backports',
'backports.ssl_match_hostname',
'tornado',
'tornado.platform'
],
package_dir={'': 'src'}
)

# The following code is copied from
# https://github.com/mongodb/mongo-python-driver/blob/master/setup.py
# to support installing without the extension on platforms where
# no compiler is available.
from distutils.command.build_ext import build_ext

class custom_build_ext(build_ext):
"""Allow C extension building to fail.
The C extension speeds up websocket masking, but is not essential.
"""

warning_message = """
********************************************************************
WARNING: %s could not
be compiled. No C extensions are essential for Tornado to run,
although they do result in significant speed improvements for
websockets.
%s
Here are some hints for popular operating systems:
If you are seeing this message on Linux you probably need to
install GCC and/or the Python development package for your
version of Python.
Debian and Ubuntu users should issue the following command:
$ sudo apt-get install build-essential python-dev
RedHat, CentOS, and Fedora users should issue the following command:
$ sudo yum install gcc python-devel
********************************************************************
"""

def run(self):
try:
build_ext.run(self)
except Exception:
e = sys.exc_info()[1]
sys.stdout.write('%s\n' % str(e))
warnings.warn(self.warning_message % ("Extension modules",
"There was an issue with "
"your platform configuration"
" - see above."))

def build_extension(self, ext):
name = ext.name
try:
build_ext.build_extension(self, ext)
except Exception:
e = sys.exc_info()[1]
sys.stdout.write('%s\n' % str(e))
warnings.warn(self.warning_message % ("The %s extension "
"module" % (name,),
"The output above "
"this warning shows how "
"the compilation "
"failed."))

if (platform.python_implementation() == 'CPython' and
os.environ.get('TORNADO_EXTENSION') != '0'):
# This extension builds and works on pypy as well, although pypy's jit
# produces equivalent performance.
d['ext_modules'] = [
Extension('tornado.speedups', sources=['src/tornado/speedups.c']),
]

if os.environ.get('TORNADO_EXTENSION') != '1':
# Unless the user has specified that the extension is mandatory,
# fall back to the pure-python implementation on any build failure.
d['cmdclass'] = {'build_ext': custom_build_ext}

setup(**d)
3 changes: 0 additions & 3 deletions rosbridge_server/src/backports/__init__.py

This file was deleted.

51 changes: 0 additions & 51 deletions rosbridge_server/src/backports/ssl_match_hostname/LICENSE.txt

This file was deleted.

52 changes: 0 additions & 52 deletions rosbridge_server/src/backports/ssl_match_hostname/README.txt

This file was deleted.

102 changes: 0 additions & 102 deletions rosbridge_server/src/backports/ssl_match_hostname/__init__.py

This file was deleted.

29 changes: 0 additions & 29 deletions rosbridge_server/src/tornado/__init__.py

This file was deleted.

Loading

0 comments on commit 791261c

Please sign in to comment.