[145259] trunk/dports/python/py-spyder-devel

eborisch at macports.org eborisch at macports.org
Fri Jan 29 15:52:42 PST 2016


Revision: 145259
          https://trac.macports.org/changeset/145259
Author:   eborisch at macports.org
Date:     2016-01-29 15:52:42 -0800 (Fri, 29 Jan 2016)
Log Message:
-----------
py-spyder-devel: Move to github; update to 3.0.0b2; add +qt5 variant.

Modified Paths:
--------------
    trunk/dports/python/py-spyder-devel/Portfile
    trunk/dports/python/py-spyder-devel/files/patch-widgets-pylintgui.py.diff
    trunk/dports/python/py-spyder-devel/files/spyderlib_baseconfig.py.diff
    trunk/dports/python/py-spyder-devel/files/spyderlib_start_app.py.diff
    trunk/dports/python/py-spyder-devel/files/spyderlib_utils_programs.py.diff

Modified: trunk/dports/python/py-spyder-devel/Portfile
===================================================================
--- trunk/dports/python/py-spyder-devel/Portfile	2016-01-29 23:35:54 UTC (rev 145258)
+++ trunk/dports/python/py-spyder-devel/Portfile	2016-01-29 23:52:42 UTC (rev 145259)
@@ -2,8 +2,10 @@
 # $Id$
 
 PortSystem          1.0
+PortGroup           github 1.0
+
+github.setup        spyder-ide spyder 3.0.0b2 v
 name                py-spyder-devel
-version             2.3.4
 revision            0
 # Preference on mailing list is to use small numbers for epoch.
 # This is already a date code, so sticking with dates.
@@ -13,7 +15,6 @@
 
 python.versions     27 34 35
 
-PortGroup           qt4 1.0
 categories-append   devel
 platforms           darwin
 maintainers         eborisch openmaintainer
@@ -32,9 +33,6 @@
                     development environment with advanced editing, \
                     interactive testing, debugging and introspection features.
 
-master_sites        https://bitbucket.org/spyder-ide/spyderlib/downloads
-distname            spyder-${version}
-use_zip             yes
 supported_archs     noarch
 
 #pyNN-scipy doesn't build universal
@@ -42,11 +40,19 @@
 
 if {${name} ne ${subport}} {
     checksums \
-        rmd160  dd274f122189fe5f2e4a7c7c34799bc13e6a88c6 \
-        sha256  da4b13d6faed3e8810c0418f8274b26fde4f265ea4f93bee154af128a755c184
+        rmd160  e35eed3debe141c610346a5fb2fd0a2e49c2361d \
+        sha256  60353e331547f2a1c4bec31df487525e3cac04a4f942f86dc650a32a6d000afa
 
     conflicts           py${python.version}-spyder
-    
+
+    # Will *work* with either/both under the hood, but for dependencies,
+    # provide variants to determine what we label depends_lib.
+
+    variant qt5 description {Default to Qt5 GUI.} {
+        depends_lib-delete  port:py${python.version}-pyqt4
+        depends_lib-append  port:py${python.version}-pyqt5
+    }
+
     # Set the pylint executable name
     set LINT_BIN_NAME   pylint-${python.branch}
     set WINPDB_BIN_NAME winpdb-${python.branch}
@@ -61,7 +67,7 @@
         reinplace "s|@@WINPDB_BIN_NAME@@|${WINPDB_BIN_NAME}|g" \
             ${worksrcpath}/spyderlib/plugins/editor.py
         reinplace "s|@@LINT_BIN_NAME@@|${LINT_BIN_NAME}|g" \
-            ${worksrcpath}/spyderplugins/widgets/pylintgui.py
+            ${worksrcpath}/spyplugins/ui/pylint/widgets/pylintgui.py
         reinplace "s|\"assistant\"|\"Assistant\"|g" \
             ${worksrcpath}/spyderlib/spyder.py
         reinplace "s|\"linguist\"|\"Linguist\"|g" \
@@ -70,21 +76,31 @@
             ${worksrcpath}/spyderlib/spyder.py
         reinplace "s|@@PREFIX@@|${prefix}|g" \
             ${worksrcpath}/spyderlib/spyder.py
-        reinplace "s|@@APPS_DIR@@|${applications_dir}|g" \
-            ${worksrcpath}/spyderlib/utils/programs.py
         reinplace "s|Ctrl\+I|Cmd+I|" \
             ${worksrcpath}/spyderlib/plugins/inspector.py
-        # Windows newlines in the file cause compile() (in 2.6) to choke
-        reinplace "s|\r||g" \
-            ${worksrcpath}/doc/conf.py
+        reinplace -E "s|IPython\.qt(\.console)?|qtconsole|g" \
+            ${worksrcpath}/spyderlib/config/ipython.py \
+            ${worksrcpath}/spyderlib/plugins/ipythonconsole.py \
+            ${worksrcpath}/spyderlib/widgets/ipython.py
+        if {[variant_isset qt5]} {
+            reinplace "s|@@APPS_DIR@@|${applications_dir}/Qt5|g" \
+                ${worksrcpath}/spyderlib/utils/programs.py
+            reinplace -E "/setdefault/s/pyqt/pyqt5/" spyderlib/qt/__init__.py
+        } else {
+            reinplace "s|@@APPS_DIR@@|${applications_dir}/Qt4|g" \
+                ${worksrcpath}/spyderlib/utils/programs.py
+        }
     }
 
-    # Can use either py*-pyqt4 or py*-pyqt4-devel.
     # Bare minimum
     depends_lib-append  \
-        path:share/py${python.version}-sip/PyQt4:py${python.version}-pyqt4 \
         port:py${python.version}-sphinx \
-        port:py${python.version}-zmq
+        port:py${python.version}-zmq \
+        port:py${python.version}-qtpy \
+        port:py${python.version}-qtawesome \
+        port:py${python.version}-pickleshare \
+        port:py${python.version}-path \
+        port:py${python.version}-pyqt4
 
     depends_build-append \
         port:GraphicsMagick
@@ -103,17 +119,16 @@
         patchfiles-append   no_AA.diff
     }
 
-    variant optimized description {Create .pyo files. Fails on BuildBot.} {
-    }
-
     # These add very little to the install time
     if {![ variant_isset tiny ]} {
         depends_lib-append \
-            port:py${python.version}-htmldocs \
             port:py${python.version}-pylint \
             path:${python.pkgd}/pep8:py${python.version}-pep8-157 \
             port:py${python.version}-pyflakes \
-            port:py${python.version}-rope
+            port:py${python.version}-rope \
+            port:py${python.version}-psutil
+        # Until spyder supports jedi >= 0.9.0, this doesn't do anything
+        #    port:py${python.version}-jedi
     }
 
     # These add substantially to the install time
@@ -121,11 +136,21 @@
         ![ variant_isset tiny  ] } {
         depends_lib-append \
             path:${python.pkgd}/h5py/__init__.py:py${python.version}-h5py \
-            port:py${python.version}-ipython \
+            port:py${python.version}-qtconsole \
             port:py${python.version}-matplotlib \
-            port:py${python.version}-scipy
+            port:py${python.version}-scipy \
+            port:py${python.version}-nbconvert \
+            port:py${python.version}-pandas \
+            port:py${python.version}-sympy
     }
 
+    variant docs description {Include python and Qt offline documentation.} {
+        if {[variant_isset qt5]} {
+            depends_lib-append  port:qt5-docs
+        }
+        depends_lib-append  port:py${python.version}-htmldocs
+    }
+
     variant pil description {
            Support image objects in editor through PIL or Pillow (many dependencies.)
     } {
@@ -147,18 +172,13 @@
         system -W ${destroot}${prefix} \
             "find . -name *.png -print0 | xargs -0 gm mogrify -strip"
         
-        if {[variant_isset optimized]} {
-            set OPTCMD    [concat "HOME=${destroot}/tmp/spyder "  \
-                           "PYTHONPATH=${destroot}${python.pkgd} "  \
-                           "./spyder --optimize"]
-            
-            file mkdir ${destroot}/tmp/spyder
-            system "cd ${destroot}${python.prefix}/bin && ${OPTCMD}"
-            delete ${destroot}/tmp/spyder
-        }
         delete \
           ${destroot}${prefix}/bin/spyder_win_post_install.py-${python.branch}
         delete ${destroot}${python.prefix}/bin/spyder_win_post_install.py
+
+        file mkdir ${destroot}${prefix}/share/doc/${subport}
+        copy ${worksrcpath}/LICENSE \
+            ${destroot}${prefix}/share/doc/${subport}
     }
 
     if {${python.version} == ${python.default_version}} {
@@ -172,8 +192,9 @@
 ##############################################################
 ### Spyder is launched from the terminal with ${EXENAME} ###
 ##############################################################"
+    livecheck.type      none
+} else {
+    livecheck.type      regex
+    livecheck.url       https://bitbucket.org/spyder-ide/spyderlib/downloads
+    livecheck.regex     spyder-(\[0-9\]+(\.\[0-9betarc]+)*)\.zip
 }
-
-livecheck.type      regex
-livecheck.url       https://bitbucket.org/spyder-ide/spyderlib/downloads
-livecheck.regex     spyder-(\[0-9\]+(\.\[0-9betarc]+)*)\.zip

Modified: trunk/dports/python/py-spyder-devel/files/patch-widgets-pylintgui.py.diff
===================================================================
--- trunk/dports/python/py-spyder-devel/files/patch-widgets-pylintgui.py.diff	2016-01-29 23:35:54 UTC (rev 145258)
+++ trunk/dports/python/py-spyder-devel/files/patch-widgets-pylintgui.py.diff	2016-01-29 23:52:42 UTC (rev 145259)
@@ -1,11 +1,19 @@
---- spyderplugins/widgets/pylintgui.py.orig	2011-09-08 08:45:35.000000000 -0500
-+++ spyderplugins/widgets/pylintgui.py	2011-09-08 08:46:52.000000000 -0500
-@@ -40,7 +40,7 @@
-                                           is_module_or_package)
+--- spyplugins/ui/pylint/widgets/pylintgui.py.orig	2015-06-23 09:49:01.000000000 -0500
++++ spyplugins/ui/pylint/widgets/pylintgui.py	2015-06-23 09:49:31.000000000 -0500
+@@ -40,14 +40,8 @@
  _ = get_translation("p_pylint", dirname="spyderplugins")
  
--PYLINT_PATH = programs.find_program('pylint')
+ 
+-PYLINT = 'pylint'
+-if PY3:
+-    if programs.find_program('pylint3'):
+-        PYLINT = 'pylint3'
+-    elif programs.find_program('python3-pylint'):
+-        PYLINT = 'python3-pylint'
+-
+-PYLINT_PATH = programs.find_program(PYLINT)
++PYLINT = '@@LINT_BIN_NAME@@'
 +PYLINT_PATH = programs.find_program('@@LINT_BIN_NAME@@')
  
  
- #TODO: display results on 3 columns instead of 1: msg_id, lineno, message
+ def get_pylint_version():

Modified: trunk/dports/python/py-spyder-devel/files/spyderlib_baseconfig.py.diff
===================================================================
--- trunk/dports/python/py-spyder-devel/files/spyderlib_baseconfig.py.diff	2016-01-29 23:35:54 UTC (rev 145258)
+++ trunk/dports/python/py-spyder-devel/files/spyderlib_baseconfig.py.diff	2016-01-29 23:52:42 UTC (rev 145259)
@@ -1,10 +1,18 @@
---- spyderlib/baseconfig.py.orig	2013-10-21 08:43:46.000000000 -0500
-+++ spyderlib/baseconfig.py	2013-10-21 08:44:24.000000000 -0500
-@@ -60,7 +60,9 @@
- #==============================================================================
- # Spyder settings dir
+--- spyderlib/config/base.py.orig	2015-06-23 10:06:48.000000000 -0500
++++ spyderlib/config/base.py	2015-06-23 10:08:03.000000000 -0500
+@@ -21,6 +21,7 @@
+ import sys
+ 
+ # Local imports
++from spyderlib import __version__
+ from spyderlib.utils import encoding
+ from spyderlib.py3compat import (is_unicode, TEXT_TYPES, INT_TYPES, PY3,
+                                  to_text_string, is_text_string)
+@@ -72,7 +73,9 @@
+ # updates in version (required when we change APIs by Linux
+ # packagers)
  if TEST is None:
--    SUBFOLDER = '.spyder%s' % __version__.split('.')[0]
+-    SUBFOLDER = '.spyder'
 +    SUBFOLDER = '.spyder%s-%s%s' % (__version__.split('.')[0],
 +                                    sys.version_info[0],
 +                                    sys.version_info[1])

Modified: trunk/dports/python/py-spyder-devel/files/spyderlib_start_app.py.diff
===================================================================
--- trunk/dports/python/py-spyder-devel/files/spyderlib_start_app.py.diff	2016-01-29 23:35:54 UTC (rev 145258)
+++ trunk/dports/python/py-spyder-devel/files/spyderlib_start_app.py.diff	2016-01-29 23:52:42 UTC (rev 145259)
@@ -1,18 +1,12 @@
---- spyderlib/start_app.py.orig	2013-11-04 09:51:03.000000000 -0600
-+++ spyderlib/start_app.py	2013-11-04 09:55:55.000000000 -0600
-@@ -8,6 +8,15 @@
+--- spyderlib/start_app.py-orig	2013-10-14 12:43:43.000000000 -0500
++++ spyderlib/start_app.py	2013-10-14 12:45:50.000000000 -0500
+@@ -7,6 +7,9 @@
+ import atexit
  import random
- import sys
  
-+# Make sure LANG isn't set to 'UTF-8' (without en_US. prefix)
 +if os.environ.get('LANG') == 'UTF-8':
-+    os.environ['LANG'] = 'en_US.UTF-8'
++  os.environ['LANG'] = 'en_US.UTF-8'
 +
-+# Modified to support MacPorts' buildbot environment
-+username = os.environ.get('USER')
-+if not username:
-+    os.environ['USER'] = 'NO_USER_ENV'
-+
  # Local imports
  from spyderlib.cli_options import get_options
  from spyderlib.baseconfig import get_conf_path

Modified: trunk/dports/python/py-spyder-devel/files/spyderlib_utils_programs.py.diff
===================================================================
--- trunk/dports/python/py-spyder-devel/files/spyderlib_utils_programs.py.diff	2016-01-29 23:35:54 UTC (rev 145258)
+++ trunk/dports/python/py-spyder-devel/files/spyderlib_utils_programs.py.diff	2016-01-29 23:52:42 UTC (rev 145259)
@@ -1,13 +1,14 @@
 --- spyderlib/utils/programs.py.orig	2011-10-12 11:06:09.000000000 -0500
 +++ spyderlib/utils/programs.py	2011-10-12 11:07:28.000000000 -0500
-@@ -20,6 +20,10 @@
+@@ -20,6 +20,11 @@
          abspath = osp.join(path, basename)
          if osp.isfile(abspath):
              return abspath
-+        else:
-+            abspath = "@@APPS_DIR@@/Qt4/" + basename + ".app/Contents/MacOS/" + basename
-+            if osp.isfile(abspath):
-+                return abspath
++    else:
++        abspath = "@@APPS_DIR@@/" + basename + ".app/Contents/MacOS/" + basename
++        if osp.isfile(abspath):
++            return abspath
++    return None
  
  
  def find_program(basename):
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20160129/883a3fbb/attachment-0001.html>


More information about the macports-changes mailing list