Ok.. I found this one and liked it.. It also seems being well recommended for Python projects..
I adapted to NuPIC.. *Nupic/* *|-- bin/* *| |-- nupic* *|* *|-- docs/* *|* *|-- nupic/* *| |-- test/* *| | |-- __init__.py* *| | |-- test_main.py* *| | * *| |-- __init__.py* *| |-- main.py* *|* *|-- setup.py* *|-- README.md* I got this model from here: http://stackoverflow.com/questions/193161/what-is-the-best-project-structure-for-a-python-application Which is inspired in best practices recommended here: http://as.ynchrono.us/2007/12/filesystem-structure-of-python-project_21.html Subutai, Chetan, Fergal, and others: what do you think? It has setup.py in root, the binaries and source are in separated locations, etc.. However, we could improve it... David On 11 April 2014 16:07, David Ragazzi <[email protected]> wrote: > Sorry for my ignorancy.. But which is default structure for Python > projects? Please,someone explain to me in order to we can align what we > want and the current process does.. > > > On 11 April 2014 15:53, Fergal Byrne <[email protected]> wrote: > >> +1 on Subutai's view. IMHO it is a *requirement* for NuPIC to be like any >> other OSS software. >> >> For nupic.core, we should have cd build; cmake ..; make; [make test;] >> make install (installs to std locations /usr/local/bin, lib, include) >> For nupic.py; setup.py or pip install (installs to same place as >> everything else) >> >> There should be no environment variables to remember or set. >> >> This will require serious reorganisation, but it is the price of getting >> NuPIC out in the wild. >> >> >> >> >> On Fri, Apr 11, 2014 at 7:27 PM, Matthew Taylor <[email protected]> wrote: >> >>> I can see Subutai's point here. While nupic.core is a C++ project, >>> nupic is a python project. We should try to maintain python standards >>> as much as possible, even though we have to deal with a C++ build as >>> well. >>> --------- >>> Matt Taylor >>> OS Community Flag-Bearer >>> Numenta >>> >>> >>> On Fri, Apr 11, 2014 at 11:18 AM, Subutai Ahmad <[email protected]> >>> wrote: >>> > >>> > I'm not an expert in this. I just know it is really really hard to make >>> > these things robust in all situations. For example, below is my >>> sys.path >>> > - where would you install nupic? >>> > >>> > I strongly recommend we use the standard python way of doing this, >>> whatever >>> > that is. >>> > >>> > --Subutai >>> > >>> > ['', >>> > '/Users/Subutai/local/bin', >>> > '/Users/Subutai/nta/grok-projects/gef', >>> > >>> > >>> '/Users/Subutai/local/lib/python2.7/site-packages/pandas-0.13.1-py2.7-macosx-10.9-intel.egg', >>> > >>> '/Users/Subutai/local/lib/python2.7/site-packages/plotly-0.5.7-py2.7.egg', >>> > >>> > >>> '/Users/Subutai/local/lib/python2.7/site-packages/simplejson-3.4.0-py2.7.egg', >>> > >>> > >>> '/Users/Subutai/nta/nupic-darwin64/lib/python2.7/site-packages/setuptools-1.0-py2.7.egg', >>> > >>> > >>> '/Users/Subutai/nta/nupic-darwin64/lib/python2.7/site-packages/pip-1.4.1-py2.7.egg', >>> > >>> > >>> '/Users/Subutai/Library/Python/2.7/lib/python/site-packages/setuptools-2.0.1-py2.7.egg', >>> > >>> > >>> '/Library/Python/2.7/site-packages/readline-6.2.4.1-py2.7-macosx-10.7-intel.egg', >>> > >>> '/Users/Subutai/nta/nupic-darwin64/nta/eng/lib/python2.7/site-packages', >>> > '/Users/Subutai/nta/grok-projects', >>> > '/Users/Subutai/local/lib/python2.7/site-packages', >>> > '/Users/Subutai/nta/grok', >>> > '/Users/Subutai/nta/nupic-darwin64/lib64/python2.7/site-packages', >>> > '/Users/Subutai/nta/nupic-darwin64/lib/python2.7/site-packages', >>> > '/Users/Subutai/local/src/ipython-1.1.0', >>> > '/Users/Subutai/nta/nupic-darwin64/lib/python2.7/site-packages/PIL', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', >>> > '/Users/Subutai/Library/Python/2.7/lib/python/site-packages', >>> > >>> > >>> '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC', >>> > '/Library/Python/2.7/site-packages', >>> > '/Users/Subutai/nta/nupic-darwin64/lib64/python2.7/site-packages', >>> > '/Users/Subutai/local/lib/python2.7/site-packages/IPython/extensions'] >>> > >>> > >>> > >>> > On Fri, Apr 11, 2014 at 11:12 AM, David Ragazzi < >>> [email protected]> >>> > wrote: >>> >> >>> >> We could use this in CMake: >>> >> >>> >> execute_process(COMMAND ${python} import sys; print sys.path; >>> >> OUTPUT_VARIABLE PYTHON_PATH) >>> >> >>> >> and then install python libraries to ${PYTHON_PATH}/nupic >>> >> >>> >> :-) >>> >> >>> >> >>> >> On 11 April 2014 15:06, David Ragazzi <[email protected]> wrote: >>> >>> >>> >>> Subutai, >>> >>> >>> >>> Isn't.. sys.path py function return default location (PYTHONPATH).. >>> It's >>> >>> just we use this default location! >>> >>> >>> >>> >>> >>> On 11 April 2014 15:01, Subutai Ahmad <[email protected]> wrote: >>> >>>> >>> >>>> >>> >>>> Yes, but that *requires* you to set an environment variable. >>> >>>> >>> >>>> --Subutai >>> >>>> >>> >>>> On Fri, Apr 11, 2014 at 10:16 AM, Matthew Taylor <[email protected]> >>> >>>> wrote: >>> >>>>> >>> >>>>> On Fri, Apr 11, 2014 at 9:58 AM, Subutai Ahmad < >>> [email protected]> >>> >>>>> wrote: >>> >>>>> > To see why it would not work consider this: I should be able to >>> login >>> >>>>> > to my >>> >>>>> > home directory, type python, and then do "import nupic". It is >>> >>>>> > necessary to >>> >>>>> > support this. Unless the NuPIC release is *placed* in a standard >>> >>>>> > location, >>> >>>>> > python will have no idea where nupic is. >>> >>>>> >>> >>>>> +1. I do this all the time. However, I can easily update my >>> PYTHONPATH >>> >>>>> after I've built NuPIC. >>> >>>>> >>> >>>>> >>> >>>>> >>> >>>>> --------- >>> >>>>> Matt Taylor >>> >>>>> OS Community Flag-Bearer >>> >>>>> Numenta >>> >>>>> >>> >>>>> _______________________________________________ >>> >>>>> nupic mailing list >>> >>>>> [email protected] >>> >>>>> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >>> >>>> >>> >>>> >>> >>>> >>> >>>> _______________________________________________ >>> >>>> nupic mailing list >>> >>>> [email protected] >>> >>>> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >>> >>>> >>> >>> >>> >>> >>> >>> >>> >>> -- >>> >>> David Ragazzi >>> >>> OS Community Commiter >>> >>> Numenta.org >>> >>> -- >>> >>> "I think James Connolly, the Irish revolutionary, is right when he >>> says >>> >>> that the only prophets are those who make their future. So we're not >>> >>> anticipating, we're working for it." >>> >> >>> >> >>> >> >>> >> >>> >> -- >>> >> David Ragazzi >>> >> OS Community Commiter >>> >> Numenta.org >>> >> -- >>> >> "I think James Connolly, the Irish revolutionary, is right when he >>> says >>> >> that the only prophets are those who make their future. So we're not >>> >> anticipating, we're working for it." >>> >> >>> >> _______________________________________________ >>> >> nupic mailing list >>> >> [email protected] >>> >> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >>> >> >>> > >>> > >>> > _______________________________________________ >>> > nupic mailing list >>> > [email protected] >>> > http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >>> > >>> >>> _______________________________________________ >>> nupic mailing list >>> [email protected] >>> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >>> >> >> >> >> -- >> >> Fergal Byrne, Brenter IT >> >> Author, Real Machine Intelligence with Clortex and NuPIC >> https://leanpub.com/realsmartmachines >> >> <http://www.examsupport.ie>http://inbits.com - Better Living through >> Thoughtful Technology >> http://ie.linkedin.com/in/fergbyrne/ >> https://github.com/fergalbyrne >> >> e:[email protected] t:+353 83 4214179 >> Formerly of Adnet [email protected] http://www.adnet.ie >> >> _______________________________________________ >> nupic mailing list >> [email protected] >> http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org >> >> > > > -- > David Ragazzi > OS Community Commiter > Numenta.org > -- > "I think James Connolly, the Irish revolutionary, is right when he says that > the only prophets are those who make their future. So we're not > anticipating, we're working for it." > -- David Ragazzi OS Community Commiter Numenta.org -- "I think James Connolly, the Irish revolutionary, is right when he says that the only prophets are those who make their future. So we're not anticipating , we're working for it."
_______________________________________________ nupic mailing list [email protected] http://lists.numenta.org/mailman/listinfo/nupic_lists.numenta.org
