summaryrefslogtreecommitdiff
path: root/dev-python/spyder
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-python/spyder
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-python/spyder')
-rw-r--r--dev-python/spyder/Manifest7
-rw-r--r--dev-python/spyder/files/spyder-3.2.4-build.patch130
-rw-r--r--dev-python/spyder/files/spyder-3.2.8-build.patch129
-rw-r--r--dev-python/spyder/metadata.xml26
-rw-r--r--dev-python/spyder/spyder-3.2.4.ebuild63
-rw-r--r--dev-python/spyder/spyder-3.2.8.ebuild82
6 files changed, 437 insertions, 0 deletions
diff --git a/dev-python/spyder/Manifest b/dev-python/spyder/Manifest
new file mode 100644
index 000000000000..06c27c790dda
--- /dev/null
+++ b/dev-python/spyder/Manifest
@@ -0,0 +1,7 @@
+AUX spyder-3.2.4-build.patch 5706 BLAKE2B 60eea8e3dcb3bd6a5b80e2b30322ad7d514ca4011a6edefb325e468d692f790beadb8598f2d24b20d2015e77c9eb10388c3354b3417c96a5a2bdc5e02f4a0c38 SHA512 41fa116652af0b2a93e25e1c39c450c9bc5cc7bf76afde75e8b53845d7fa8be822c6763ca48ea4cbcb64e72cac927c832233bb681c9950a272da517234464123
+AUX spyder-3.2.8-build.patch 5652 BLAKE2B f4d9fca3670d8c2f3e8dc3e58b00ffe1bb49bdb9ded28db865e1005a8cc86755b32bbf53dcb618e759f116c2cc3a13b58b7c501d9dfaf2723e564372934a4d1c SHA512 e1d758be7b9c5221ec317b9e254e959bc0d6ce6bc01259c4291dcffbc0000fbaaca7660cc3b18a7ee14ea49f2addcde2e00bfdf251dcadb34b6cbb35984f95f1
+DIST spyder-3.2.4.tar.gz 3345797 BLAKE2B 2df946f257fee7e87dd922b6ed3b3c0fa02438560cb7fa4087f25498eb134bfc8c342a0a928be37f08448dfea2917380a8521ead13954091b1854616012ace91 SHA512 46e89c68545695d1e64aaafdd2ed724b152a41088f1bfa645b8c66d8ae6bcc2d86e9830cd3f16edfb8027aad5786dfb67f2a8371839dd515df8ebe34446716e6
+DIST spyder-3.2.8.tar.gz 3414627 BLAKE2B 95f85f719eba20eb9fed5183cfac582b040abc93724df512188d14167a1663c5be9906dfc499feda9f8b0d7a713c093dbf98e4f20f732e0e9669397e1b7c8482 SHA512 03dea90632af510cfc8c4cc684068213a54dac9eef671f04c83663dd40eb480a4b818e2d040efa7a78a0d17044018aa76f2931abbf344eb684094fc7a86ddf5e
+EBUILD spyder-3.2.4.ebuild 1722 BLAKE2B 53d5f6cac29c33a278b93e5577544534f1071a959cf39085d799ede4515ed19fd90dfc2180fe3c3de949e40bbfc65fd3738babf0b810c8fa2c986a7cadced5bd SHA512 ad024167972a309ed3d684839217780deee0956a7c9ee9571158389ee0d28584cb3a819f2bb84e3d6b203cef7cd97dcb0e9514d73260f879313091a120ee66c5
+EBUILD spyder-3.2.8.ebuild 2592 BLAKE2B 8928a6e929bd362654bf6b831b9e910930ff3fe08df8b1eb0cd4b509d0159a3d317d1268728afa4b1aaab5a4d2da6fdf5ed7325f49f7be709f105b1f753d5051 SHA512 bb90f993db737cf969b8e163e2bf00617302d22f9d57539184931071e776a2f18aefdd20a066732ded1a8258d2e9033139fa0a3cbf3ad0dcc46fcd0bd83e48d2
+MISC metadata.xml 918 BLAKE2B f83d61b0af59a2bc6b1a704394eb4d84fef9673ff4c7376c07f7e4540ec82c3d9a7e648cf663c7580813523d7f047ecbc61137e93e73b0acd21a96f80c797c64 SHA512 fa3828504ddb519afc8c5fcae824650b6c03d23b2e3b2cbbaf9ffa74f2c0a0e96b799c5aa342aee1606d39957b316348eea5459abbf3c512503b3f330cad3cf6
diff --git a/dev-python/spyder/files/spyder-3.2.4-build.patch b/dev-python/spyder/files/spyder-3.2.4-build.patch
new file mode 100644
index 000000000000..2a1fee52131b
--- /dev/null
+++ b/dev-python/spyder/files/spyder-3.2.4-build.patch
@@ -0,0 +1,130 @@
+--- spyder-3.2.3.orig/setup.py 2017-08-29 00:42:56.000000000 +0200
++++ spyder-3.2.3/setup.py 2017-09-16 20:57:08.610147911 +0200
+@@ -77,13 +77,7 @@
+ def get_data_files():
+ """Return data_files in a platform dependent manner"""
+ if sys.platform.startswith('linux'):
+- if PY3:
+- data_files = [('share/applications', ['scripts/spyder3.desktop']),
+- ('share/pixmaps', ['img_src/spyder3.png']),
+- ('share/metainfo', ['scripts/spyder3.appdata.xml'])]
+- else:
+- data_files = [('share/applications', ['scripts/spyder.desktop']),
+- ('share/pixmaps', ['img_src/spyder.png'])]
++ data_files = [('share/pixmaps', ['img_src/spyder.png'])]
+ elif os.name == 'nt':
+ data_files = [('scripts', ['img_src/spyder.ico',
+ 'img_src/spyder_reset.ico'])]
+@@ -106,102 +100,6 @@
+
+
+ #==============================================================================
+-# Make Linux detect Spyder desktop file
+-#==============================================================================
+-class MyInstallData(install_data):
+- def run(self):
+- install_data.run(self)
+- if sys.platform.startswith('linux'):
+- try:
+- subprocess.call(['update-desktop-database'])
+- except:
+- print("ERROR: unable to update desktop database",
+- file=sys.stderr)
+-CMDCLASS = {'install_data': MyInstallData}
+-
+-
+-#==============================================================================
+-# Sphinx build (documentation)
+-#==============================================================================
+-def get_html_help_exe():
+- """Return HTML Help Workshop executable path (Windows only)"""
+- if os.name == 'nt':
+- hhc_base = r'C:\Program Files%s\HTML Help Workshop\hhc.exe'
+- for hhc_exe in (hhc_base % '', hhc_base % ' (x86)'):
+- if osp.isfile(hhc_exe):
+- return hhc_exe
+- else:
+- return
+-
+-try:
+- from sphinx import setup_command
+-
+- class MyBuild(build):
+- user_options = [('no-doc', None, "Don't build Spyder documentation")] \
+- + build.user_options
+- def __init__(self, *args, **kwargs):
+- build.__init__(self, *args, **kwargs)
+- self.no_doc = False
+- def with_doc(self):
+- setup_dir = os.path.dirname(os.path.abspath(__file__))
+- is_doc_dir = os.path.isdir(os.path.join(setup_dir, 'doc'))
+- install_obj = self.distribution.get_command_obj('install')
+- return (is_doc_dir and not self.no_doc and not install_obj.no_doc)
+- sub_commands = build.sub_commands + [('build_doc', with_doc)]
+- CMDCLASS['build'] = MyBuild
+-
+-
+- class MyInstall(install):
+- user_options = [('no-doc', None, "Don't build Spyder documentation")] \
+- + install.user_options
+- def __init__(self, *args, **kwargs):
+- install.__init__(self, *args, **kwargs)
+- self.no_doc = False
+- CMDCLASS['install'] = MyInstall
+-
+-
+- class MyBuildDoc(setup_command.BuildDoc):
+- def run(self):
+- build = self.get_finalized_command('build')
+- sys.path.insert(0, os.path.abspath(build.build_lib))
+- dirname = self.distribution.get_command_obj('build').build_purelib
+- self.builder_target_dir = osp.join(dirname, 'spyder', 'doc')
+-
+- if not osp.exists(self.builder_target_dir):
+- os.mkdir(self.builder_target_dir)
+-
+- hhc_exe = get_html_help_exe()
+- self.builder = "html" if hhc_exe is None else "htmlhelp"
+-
+- try:
+- setup_command.BuildDoc.run(self)
+- except UnicodeDecodeError:
+- print("ERROR: unable to build documentation because Sphinx "\
+- "do not handle source path with non-ASCII characters. "\
+- "Please try to move the source package to another "\
+- "location (path with *only* ASCII characters).",
+- file=sys.stderr)
+- sys.path.pop(0)
+-
+- # Building chm doc, if HTML Help Workshop is installed
+- if hhc_exe is not None:
+- fname = osp.join(self.builder_target_dir, 'Spyderdoc.chm')
+- subprocess.call('"%s" %s' % (hhc_exe, fname), shell=True)
+- if osp.isfile(fname):
+- dest = osp.join(dirname, 'spyder')
+- try:
+- shutil.move(fname, dest)
+- except shutil.Error:
+- print("Unable to replace %s" % dest)
+- shutil.rmtree(self.builder_target_dir)
+-
+- CMDCLASS['build_doc'] = MyBuildDoc
+-except ImportError:
+- print('WARNING: unable to build documentation because Sphinx '\
+- 'is not installed', file=sys.stderr)
+-
+-
+-#==============================================================================
+ # Main scripts
+ #==============================================================================
+ # NOTE: the '[...]_win_post_install.py' script is installed even on non-Windows
+@@ -261,8 +159,7 @@
+ 'Programming Language :: Python :: 3',
+ 'Development Status :: 5 - Production/Stable',
+ 'Topic :: Scientific/Engineering',
+- 'Topic :: Software Development :: Widget Sets'],
+- cmdclass=CMDCLASS)
++ 'Topic :: Software Development :: Widget Sets'])
+
+
+ #==============================================================================
diff --git a/dev-python/spyder/files/spyder-3.2.8-build.patch b/dev-python/spyder/files/spyder-3.2.8-build.patch
new file mode 100644
index 000000000000..b21c77d660be
--- /dev/null
+++ b/dev-python/spyder/files/spyder-3.2.8-build.patch
@@ -0,0 +1,129 @@
+--- spyder-3.2.8/setup.py 2018-03-23 14:00:00.000000000 +0100
++++ spyder-3.2.8/setup.py 2018-03-23 14:00:00.000000001 +0100
+@@ -77,12 +77,7 @@
+ def get_data_files():
+ """Return data_files in a platform dependent manner"""
+ if sys.platform.startswith('linux'):
+- if PY3:
+- data_files = [('share/applications', ['scripts/spyder3.desktop']),
+- ('share/icons', ['img_src/spyder3.png']),
+- ('share/metainfo', ['scripts/spyder3.appdata.xml'])]
+- else:
+- data_files = [('share/applications', ['scripts/spyder.desktop']),
++ data_files = [('share/applications', ['scripts/spyder.desktop']),
+ ('share/icons', ['img_src/spyder.png'])]
+ elif os.name == 'nt':
+ data_files = [('scripts', ['img_src/spyder.ico',
+@@ -106,102 +101,6 @@
+
+
+ #==============================================================================
+-# Make Linux detect Spyder desktop file
+-#==============================================================================
+-class MyInstallData(install_data):
+- def run(self):
+- install_data.run(self)
+- if sys.platform.startswith('linux'):
+- try:
+- subprocess.call(['update-desktop-database'])
+- except:
+- print("ERROR: unable to update desktop database",
+- file=sys.stderr)
+-CMDCLASS = {'install_data': MyInstallData}
+-
+-
+-#==============================================================================
+-# Sphinx build (documentation)
+-#==============================================================================
+-def get_html_help_exe():
+- """Return HTML Help Workshop executable path (Windows only)"""
+- if os.name == 'nt':
+- hhc_base = r'C:\Program Files%s\HTML Help Workshop\hhc.exe'
+- for hhc_exe in (hhc_base % '', hhc_base % ' (x86)'):
+- if osp.isfile(hhc_exe):
+- return hhc_exe
+- else:
+- return
+-
+-try:
+- from sphinx import setup_command
+-
+- class MyBuild(build):
+- user_options = [('no-doc', None, "Don't build Spyder documentation")] \
+- + build.user_options
+- def __init__(self, *args, **kwargs):
+- build.__init__(self, *args, **kwargs)
+- self.no_doc = False
+- def with_doc(self):
+- setup_dir = os.path.dirname(os.path.abspath(__file__))
+- is_doc_dir = os.path.isdir(os.path.join(setup_dir, 'doc'))
+- install_obj = self.distribution.get_command_obj('install')
+- return (is_doc_dir and not self.no_doc and not install_obj.no_doc)
+- sub_commands = build.sub_commands + [('build_doc', with_doc)]
+- CMDCLASS['build'] = MyBuild
+-
+-
+- class MyInstall(install):
+- user_options = [('no-doc', None, "Don't build Spyder documentation")] \
+- + install.user_options
+- def __init__(self, *args, **kwargs):
+- install.__init__(self, *args, **kwargs)
+- self.no_doc = False
+- CMDCLASS['install'] = MyInstall
+-
+-
+- class MyBuildDoc(setup_command.BuildDoc):
+- def run(self):
+- build = self.get_finalized_command('build')
+- sys.path.insert(0, os.path.abspath(build.build_lib))
+- dirname = self.distribution.get_command_obj('build').build_purelib
+- self.builder_target_dir = osp.join(dirname, 'spyder', 'doc')
+-
+- if not osp.exists(self.builder_target_dir):
+- os.mkdir(self.builder_target_dir)
+-
+- hhc_exe = get_html_help_exe()
+- self.builder = "html" if hhc_exe is None else "htmlhelp"
+-
+- try:
+- setup_command.BuildDoc.run(self)
+- except UnicodeDecodeError:
+- print("ERROR: unable to build documentation because Sphinx "\
+- "do not handle source path with non-ASCII characters. "\
+- "Please try to move the source package to another "\
+- "location (path with *only* ASCII characters).",
+- file=sys.stderr)
+- sys.path.pop(0)
+-
+- # Building chm doc, if HTML Help Workshop is installed
+- if hhc_exe is not None:
+- fname = osp.join(self.builder_target_dir, 'Spyderdoc.chm')
+- subprocess.call('"%s" %s' % (hhc_exe, fname), shell=True)
+- if osp.isfile(fname):
+- dest = osp.join(dirname, 'spyder')
+- try:
+- shutil.move(fname, dest)
+- except shutil.Error:
+- print("Unable to replace %s" % dest)
+- shutil.rmtree(self.builder_target_dir)
+-
+- CMDCLASS['build_doc'] = MyBuildDoc
+-except ImportError:
+- print('WARNING: unable to build documentation because Sphinx '\
+- 'is not installed', file=sys.stderr)
+-
+-
+-#==============================================================================
+ # Main scripts
+ #==============================================================================
+ # NOTE: the '[...]_win_post_install.py' script is installed even on non-Windows
+@@ -261,8 +160,7 @@
+ 'Programming Language :: Python :: 3',
+ 'Development Status :: 5 - Production/Stable',
+ 'Topic :: Scientific/Engineering',
+- 'Topic :: Software Development :: Widget Sets'],
+- cmdclass=CMDCLASS)
++ 'Topic :: Software Development :: Widget Sets'])
+
+
+ #==============================================================================
diff --git a/dev-python/spyder/metadata.xml b/dev-python/spyder/metadata.xml
new file mode 100644
index 000000000000..d43cf6ebe126
--- /dev/null
+++ b/dev-python/spyder/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>grozin@gentoo.org</email>
+ <name>Andrey Grozin</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
+ <longdescription lang="en">
+ Spyder development environment and its PyQt5-based IDE tools:
+ interactive Python shell, Python code editor, workspace
+ (dict/list/string/array editor), doc viewer, history log,
+ environment variables editor, ...
+ </longdescription>
+ <use>
+ <flag name="webengine">Build bindings for the QtWebEngine module</flag>
+ </use>
+ <upstream>
+ <remote-id type="pypi">spyder</remote-id>
+ <remote-id type="bitbucket">spyder-ide/spyderlib</remote-id>
+ <remote-id type="github">spyder-ide/spyder</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/spyder/spyder-3.2.4.ebuild b/dev-python/spyder/spyder-3.2.4.ebuild
new file mode 100644
index 000000000000..361a81f1d082
--- /dev/null
+++ b/dev-python/spyder/spyder-3.2.4.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+
+inherit eutils distutils-r1
+
+DESCRIPTION="Python IDE with matlab-like features"
+HOMEPAGE="
+ https://github.com/spyder-ide/spyder/
+ https://pypi.org/project/spyder/
+ https://pythonhosted.org/spyder/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc hdf5"
+
+RDEPEND="
+ dev-python/PyQt5[${PYTHON_USEDEP},svg,webkit]
+ dev-python/QtPy[${PYTHON_USEDEP},svg,webkit]
+ dev-python/qtconsole[${PYTHON_USEDEP}]
+ >=dev-python/rope-0.10.7[${PYTHON_USEDEP}]
+ dev-python/jedi[${PYTHON_USEDEP}]
+ dev-python/pyflakes[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/pylint[${PYTHON_USEDEP}]
+ dev-python/pep8[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/nbconvert[${PYTHON_USEDEP}]
+ >=dev-python/qtawesome-0.4.1[${PYTHON_USEDEP}]
+ dev-python/pickleshare[${PYTHON_USEDEP}]
+ dev-python/pyzmq[${PYTHON_USEDEP}]
+ dev-python/chardet[${PYTHON_USEDEP}]
+ >=dev-python/pycodestyle-2.3.0
+ hdf5? ( dev-python/h5py[${PYTHON_USEDEP}] )"
+DEPEND="${RDEPEND}
+ app-arch/unzip"
+
+# Courtesy of Arfrever
+PATCHES=( "${FILESDIR}"/${P}-build.patch )
+
+python_compile_all() {
+ if use doc; then
+ sphinx-build doc doc/html || die "Generation of documentation failed"
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+ python_newscript scripts/${PN} ${PN}${EPYTHON:6:1}
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( doc/html/. )
+ distutils-r1_python_install_all
+ doicon spyder/images/spyder.svg
+ make_desktop_entry spyder Spyder spyder "Development;IDE"
+}
diff --git a/dev-python/spyder/spyder-3.2.8.ebuild b/dev-python/spyder/spyder-3.2.8.ebuild
new file mode 100644
index 000000000000..7b98d4406cfc
--- /dev/null
+++ b/dev-python/spyder/spyder-3.2.8.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+
+inherit eutils distutils-r1 xdg-utils
+
+DESCRIPTION="Python IDE with matlab-like features"
+HOMEPAGE="
+ https://github.com/spyder-ide/spyder/
+ https://pypi.org/project/spyder/
+ https://pythonhosted.org/spyder/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc hdf5 +webengine webkit"
+REQUIRED_USE="webengine? ( !webkit )"
+
+RDEPEND="
+ hdf5? ( dev-python/h5py[${PYTHON_USEDEP}] )
+ dev-python/chardet[${PYTHON_USEDEP}]
+ dev-python/cloudpickle[${PYTHON_USEDEP}]
+ dev-python/jedi[${PYTHON_USEDEP}]
+ dev-python/nbconvert[${PYTHON_USEDEP}]
+ dev-python/pep8[${PYTHON_USEDEP}]
+ dev-python/pickleshare[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ >=dev-python/pycodestyle-2.3.0[${PYTHON_USEDEP}]
+ dev-python/pyflakes[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/pylint[${PYTHON_USEDEP}]
+ dev-python/PyQt5[${PYTHON_USEDEP},svg,webengine?,webkit?]
+ dev-python/pyzmq[${PYTHON_USEDEP}]
+ >=dev-python/qtawesome-0.4.1[${PYTHON_USEDEP}]
+ dev-python/qtconsole[${PYTHON_USEDEP}]
+ dev-python/QtPy[${PYTHON_USEDEP},svg,webengine?,webkit?]
+ >=dev-python/rope-0.10.7[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]"
+
+DEPEND="${RDEPEND}
+ app-arch/unzip"
+
+# Based on the courtesy of Arfrever
+PATCHES=( "${FILESDIR}"/${PN}-3.2.8-build.patch )
+
+python_compile_all() {
+ if use doc; then
+ sphinx-build doc doc/html || die "Generation of documentation failed"
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+ python_newscript scripts/${PN} ${PN}${EPYTHON:6:1}
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( doc/html/. )
+ distutils-r1_python_install_all
+ doicon spyder/images/spyder.svg
+ make_desktop_entry spyder Spyder spyder "Development;IDE"
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+
+ elog "To get additional features, optional runtime dependencies may be installed:"
+ optfeature "2D/3D plotting in the Python and IPython consoles" dev-python/matplotlib
+ optfeature "View and edit DataFrames and Series in the Variable Explorer" dev-python/pandas
+ optfeature "View and edit two or three dimensional arrays in the Variable Explorer" dev-python/numpy
+ optfeature "Symbolic mathematics in the IPython console" dev-python/sympy
+ optfeature "Import Matlab workspace files in the Variable Explorer" sci-libs/scipy
+ optfeature "Run Cython files in the IPython console" dev-python/cython
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}