Drop python2 support

Remove all compatibility code for python2.

All scripts are already python 3 compatible since
I80e5850a8978d78cda793e2192ef4bd3fd54a121 and
I1b4a629f12863c498a8681b555f57b4e255cebfb.

dpkg-buildpackage shows that it is still invoking setup.py with python
in addition to python3, on debian stretch. But after spending quite some
time on trying to convince it to not care about python2 without success
(trying different variables, overrides, --without python2 flags etc.),
I'm leaving it as is. The resulting package is the python3 package, which
is what we want.

Related: OS#2819
Change-Id: Iabda95073faa2191fd117e9637e0858c589e9d9e
changes/00/16500/1
Oliver Smith 3 years ago
parent fb4b813d4d
commit fb1dc7c405
  1. 10
      contrib/jenkins.sh
  2. 16
      debian/control
  3. 6
      debian/rules
  4. 2
      osmopy/__init__.py
  5. 1
      osmopy/obscvty.py
  6. 2
      osmopy/osmo_interact/__init__.py
  7. 5
      osmopy/osmo_interact/common.py
  8. 3
      osmopy/osmoutil.py
  9. 3
      scripts/osmodumpdoc.py
  10. 3
      scripts/osmotestconfig.py
  11. 3
      scripts/osmotestvty.py
  12. 32
      setup.py
  13. 7
      tests/test_py2.py

@ -4,16 +4,6 @@ set -ex
COM_FLAGS='-m compileall'
# FIXME: remove once python 2 support is deprecated
PY2=python2
PY2_LIST="osmopy scripts/osmodumpdoc.py scripts/osmotestvty.py scripts/osmotestconfig.py"
$PY2 ./setup.py install
$PY2 tests/test_py2.py
for f in $PY2_LIST
do
$PY2 $COM_FLAGS $f
done
rm -rf ./build
PY3=python3
PY3_LIST="osmopy scripts/osmo_ctrl.py scripts/osmo_rate_ctr2csv.py scripts/osmodumpdoc.py scripts/osmotestvty.py scripts/osmotestconfig.py scripts/osmo_interact_ctrl.py scripts/osmo_interact_vty.py scripts/osmo_verify_transcript_ctrl.py scripts/osmo_verify_transcript_vty.py scripts/soap.py scripts/twisted_ipa.py"

16
debian/control vendored

@ -2,26 +2,12 @@ Source: osmo-python-tests
Section: python
Priority: optional
Maintainer: Harald Welte <laforge@gnumonks.org>
Build-Depends: debhelper (>= 9), python, dh-python, python-setuptools, python3, python3-setuptools
Build-Depends: debhelper (>= 9), dh-python, python3, python3-setuptools
Standards-Version: 3.9.8
Homepage: http://git.osmocom.org/python/osmo-python-tests/
Vcs-Git: git://git.osmocom.org/python/osmo-python-tests
Vcs-Browser: http://git.osmocom.org/python/osmo-python-tests/
Package: python2-osmopy-libs
Architecture: all
Depends: ${python:Depends}, ${misc:Depends}
Description: Python code (not only) for testing of Osmocom programs
.
This package contains the Python 2 version of osmopy libraries.
Package: python2-osmopy-utils
Architecture: all
Depends: ${python:Depends}, ${misc:Depends}, python2-osmopy-libs
Description: Python code (not only) for testing of Osmocom programs
.
This package contains the Python 2 version of osmopy utils.
Package: python3-osmopy-libs
Architecture: all
Depends: ${python3:Depends}, ${misc:Depends}

6
debian/rules vendored

@ -1,13 +1,9 @@
#!/usr/bin/make -f
%:
dh $@ --with python2,python3
dh $@ --with python3
override_dh_auto_install:
python2 setup.py install --install-layout=deb --root=$(CURDIR)/debian/python2-osmopy-libs
rm -rf $(CURDIR)/debian/python2-osmopy-libs/usr/bin
python2 setup.py install --install-layout=deb --root=$(CURDIR)/debian/python2-osmopy-utils
rm -rf $(CURDIR)/debian/python2-osmopy-utils/usr/lib
python3 setup.py install --install-layout=deb --root=$(CURDIR)/debian/python3-osmopy-libs
rm -rf $(CURDIR)/debian/python3-osmopy-libs/usr/bin
python3 setup.py install --install-layout=deb --root=$(CURDIR)/debian/python3-osmopy-utils

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!/usr/bin/env python3
__version__ = '0.1.0'
__all__ = ['obscvty', 'osmoutil', 'osmo_ipa', 'osmo_interact', 'trap_helper', 'twisted_ipa']

@ -16,7 +16,6 @@
#
# VTY helper code for OpenBSC
#
from __future__ import print_function
import re
import socket
import sys, subprocess

@ -1,2 +1,2 @@
#!/usr/bin/env python
#!/usr/bin/env python3
__all__ = ['common', 'vty', 'ctrl']

@ -24,11 +24,6 @@ This implements all of application interaction, piping and verification.
vty.py and ctrl.py plug VTY and CTRL interface specific bits.
'''
# Our setup.py currently wants everything to be parsable by both py2 and py3.
# IMHO that is not a good idea, but until that changes, let's just keep this
# py2 legacy shim in here so we can syntax-check this py3 module with py2.
from __future__ import print_function
import argparse
import sys
import os

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!/usr/bin/env python3
# (C) 2013 by Katerina Barone-Adesi <kat.obsc@gmail.com>
# This program is free software: you can redistribute it and/or modify
@ -14,7 +14,6 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from __future__ import print_function
import subprocess
import os
import sys

@ -1,10 +1,9 @@
#!/usr/bin/env python
#!/usr/bin/env python3
# Make sure this code is in sync with the BTS directory.
# Fixes may need to be applied to both.
"""Start the process and dump the documentation to the doc dir."""
from __future__ import print_function
import subprocess
import time
import os

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!/usr/bin/env python3
# (C) 2013 by Katerina Barone-Adesi <kat.obsc@gmail.com>
# This program is free software: you can redistribute it and/or modify
@ -13,7 +13,6 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from __future__ import print_function
import os
import os.path
import time

@ -1,4 +1,4 @@
#!/usr/bin/env python
#!/usr/bin/env python3
# (C) 2013 by Katerina Barone-Adesi <kat.obsc@gmail.com>
# This program is free software: you can redistribute it and/or modify
@ -13,7 +13,6 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from __future__ import print_function
import os
import time
import unittest

@ -19,24 +19,20 @@ from setuptools import setup, find_packages
from osmopy import __version__
import sys
if sys.version_info.major == 2:
scripts = [
"scripts/osmodumpdoc.py",
"scripts/osmotestconfig.py",
"scripts/osmotestvty.py",
]
elif sys.version_info.major == 3:
scripts = [
"scripts/osmo_ctrl.py",
"scripts/osmo_rate_ctr2csv.py",
"scripts/soap.py",
"scripts/ctrl2cgi.py",
"scripts/osmo_trap2cgi.py",
"scripts/osmo_interact_vty.py",
"scripts/osmo_interact_ctrl.py",
"scripts/osmo_verify_transcript_vty.py",
"scripts/osmo_verify_transcript_ctrl.py",
]
scripts = [
"scripts/osmodumpdoc.py",
"scripts/osmotestvty.py",
"scripts/osmotestconfig.py",
"scripts/osmo_ctrl.py",
"scripts/osmo_rate_ctr2csv.py",
"scripts/soap.py",
"scripts/ctrl2cgi.py",
"scripts/osmo_trap2cgi.py",
"scripts/osmo_interact_vty.py",
"scripts/osmo_interact_ctrl.py",
"scripts/osmo_verify_transcript_vty.py",
"scripts/osmo_verify_transcript_ctrl.py",
]
setup(
name = 'osmopython',

@ -1,7 +0,0 @@
#!/usr/bin/env python2
# just import a smoke test for osmopy
import osmopy
print '[Python2] Smoke test PASSED.'
Loading…
Cancel
Save