Python frameworks

mark brethen mbrethen at aim.com
Sat Aug 6 09:20:42 PDT 2011


Would it be best to create a 'pylint' group and use port select? This would reflect the developer's viewpoint:

> I'm kind of reluctant to handle this in Spyder's code (of course, if it's the only way, we will take action anyway) because there is absolutely no reason for MacPorts to differentiate pylint scripts depending on Python minor version number: after all, this script is an executable that should behaves exactly the same way on any Python version.
> 
> Of course this would make sense to differentiate pylint executable for Python 2 and Python 3.
> 
> So the purist in me would tend to say that when pylint is properly installed, the command 'pylint' should work in a terminal.
> 

-Mark



On Aug 1, 2011, at 8:46 PM, Ryan Schmidt wrote:

> 
> On Aug 1, 2011, at 18:15, mark brethen wrote:
> 
>> On Aug 1, 2011, at 11:55 AM, Daniel J. Luke wrote:
>> 
>>> On Jul 30, 2011, at 12:00 AM, mark brethen wrote:
>>>> 
>>>> I'm confused how the python frameworks work. For instance, I should be able to type 'pylint script.py' in a command window, but the command isn't found. So I looked in /opt/local/bin and found 'pylint-2.7' which is a symbolic link to '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/pylint'. Spyder displays "Please install pylint" in the PyLint Panel, which I suspect is because it can't find pylint. How do you set your environment so that programs like Spyder find python binaries?
>>> 
>>> The pylint port should probably provide links to the stuff that should be available (like the trac port does). I would recommend that you open a ticket in the issue tracker to get it fixed.
> 
> There is no "pylint" port. There are:
> 
> $ port echo name:py.*lint
> py-lint                         
> py25-lint                       
> py26-lint                       
> py27-lint                  
> 
> As such, none of these ports can claim /opt/local/bin/pylint. That is why there is a suffix on each binary. This is not a bug. Any port using this software needs to refer to it by the correct suffixed name.
> 
>> I did some digging in the spyder script that checks for the existence of pylint. It looks to me that spyder checks for the binary in the User's path. This will return false since a symbolic-link to pylint, named 'pylint-2.7' is installed in '/opt/local/bin'; pylint being installed into '/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/pylint'. As a test, I created another symbolic link 'pylint' that points to 'pylint-2.7' and as expected, was able to use the pylint widget in spyder.  It seems to me, a better way to test for its existence would use PYTHONPATH.
> 
> Great, so it's a bug in the py*-spyder port(s) for not looking for pylint by its correct MacPorts name. Please file a ticket.
> 
> 



More information about the macports-users mailing list