Skip to content

Commit

Permalink
Created a pip installer.
Browse files Browse the repository at this point in the history
Not yet make a pipit release.
  • Loading branch information
Ragav Venkatesan committed Nov 13, 2016
1 parent a4f0276 commit 0b0cd33
Show file tree
Hide file tree
Showing 6 changed files with 127 additions and 23 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,7 @@
*.mat
*.zip
/docs/build
/yann.egg-info
/build
/dist
/_dev
10 changes: 8 additions & 2 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,18 @@ Yet Another Neural Network Toolbox
.. image:: https://img.shields.io/badge/license-MIT-blue.svg
:target: license.html

.. image:: https://readthedocs.org/projects/yann/badge/?version=latest
:target: http://yann.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status

Welcome to the Yann Toolbox. It is a toolbox for convolutional neural networks, built on top
of `theano`_. To setup the toolbox refer the :ref:`setup` guide. Once setup you may start with the
:ref:`quick_start` guide or try your hand at the :ref:`tutorial` and the guide to
:ref:`getting_started`.
:ref:`getting_started`. A user base discussion group is setup on `gitter`_ and on `google groups`_

.. _theano: http://deeplearning.net/software/theano/
.. _gitter: https://gitter.im/yann-users/Lobby
.. _google groups: https://groups.google.com/forum/#!forum/yann-users

.. warning ::
Expand All @@ -24,7 +30,7 @@ of `theano`_. To setup the toolbox refer the :ref:`setup` guide. Once setup you
.. warning ::
As of now, there are no unit-tests, no Pypi installers and no releases. The toolbox will be
As of now, there are no unit-tests. The toolbox will be
formalized in the future but at this moment, the authorship, coverage and maintanence of the
toolbox is under extremely limited manpower.
Expand Down
21 changes: 3 additions & 18 deletions docs/source/setup.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Installation Guide
==================

Yann is built on top of `Theano`_. `Theano`_ and all its pre-requisites are mandatory.
Once theano and its pre-requisites are setup you may choose to setup and run this toolbox.
Once theano and its pre-requisites are setup you may setup and run this toolbox.
Theano setup is documented in the `theano toolbox documentation`_. Yann is built with theanoo 0.8
but should be forward compatible unless theano makes a drastic release.

Expand Down Expand Up @@ -78,7 +78,7 @@ numpy/scipy
conda install scipy
to set these up
to set these up. If not, yann installer will pip install it anyway.

Theano
------
Expand Down Expand Up @@ -164,20 +164,5 @@ Simply download the toolbox into a directory somewhere by

.. code-block:: bash
git clone https://github.com/ragavvenkatesan/yann
And add that path to your code by using:

.. code-block:: bash
import sys
sys.path.insert(0,"<path-to-yann-toolbox">
If not, quite simply have the toolbox in the directory where you are running the code so this is
included in your codes.
.. Warning ::
A ``Pypy`` installer will soon be setup. Once the distribution release is made, we can have
a pip install for yann.
pip install git+git://github.com/ragavvenkatesan/yann.git
2 changes: 2 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[metadata]
description-file = README.md
104 changes: 104 additions & 0 deletions setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
"""A setuptools based setup module.
See:
https://packaging.python.org/en/latest/distributing.html
https://github.com/pypa/sampleproject
"""

# Always prefer setuptools over distutils
from setuptools import setup, find_packages
# To use a consistent encoding
from codecs import open
from os import path

here = path.abspath(path.dirname(__file__))

# Get the long description from the README file
with open(path.join(here, 'README.md'), encoding='utf-8') as f:
long_description = f.read()

setup(
name='yann',

# Versions should comply with PEP440. For a discussion on single-sourcing
# the version across setup.py and the project code, see
# https://packaging.python.org/en/latest/single_source_version.html
version='0.0.1a1',

description='Toolbox for building and learning convolutional neural networks',
long_description=long_description,

# The project's main homepage.
url='https://github.com/ragavvenkatesan/yann',

# Author details
author='Ragav Venkatesan',
author_email='support@yann.network',

# Choose your license
license='MIT',

# See https://pypi.python.org/pypi?%3Aaction=list_classifiers
classifiers=[
# How mature is this project? Common values are
# 3 - Alpha
# 4 - Beta
# 5 - Production/Stable
'Development Status :: 3 - Alpha',

# Indicate who your project is intended for
'Intended Audience :: Students, Researchers and Developers',
'Topic :: Software Development :: Build Tools',

# Pick your license as you wish (should match "license" above)
'License :: OSI Approved :: MIT License',

# Specify the Python versions you support here. In particular, ensure
# that you indicate whether you support Python 2, Python 3 or both.
'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.6',
'Programming Language :: Python :: 2.7',
],

# What does your project relate to?
keywords='convolutional neural networks deep learning',

# You can just specify the packages manually here if your project is
# simple. Or you can use find_packages().
packages=find_packages(exclude=['docs', 'tests']),

# Alternatively, if you want to distribute just a my_module.py, uncomment
# this:
# py_modules=["my_module"],

# List run-time dependencies here. These will be installed by pip when
# your project is installed. For an analysis of "install_requires" vs pip's
# requirements files see:
# https://packaging.python.org/en/latest/requirements.html
install_requires=['theano','skdata','numpy','scipy'],

# List additional groups of dependencies here (e.g. development
# dependencies). You can install these using the following syntax,
# for example:
# $ pip install -e .[dev,test]
extras_require={
'dev': ['progressbar'],
'test': ['coverage'],
},

# If there are data files included in your packages that need to be
# installed, specify them here. If using Python 2.6 or less, then these
# have to be included in MANIFEST.in as well.
package_data={
},

# Although 'package_data' is the preferred approach, in some case you may
# need to place data files outside of your packages. See:
# http://docs.python.org/3.4/distutils/setupscript.html#installing-additional-files # noqa
# In this case, 'data_file' will be installed into '<sys.prefix>/my_data'
data_files=[],

# To provide executable scripts, use entry points in preference to the
# "scripts" keyword. Entry points provide cross-platform support and allow
# pip to create the appropriate form of executable for the target platform.
)
10 changes: 7 additions & 3 deletions yann/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
import sys
import os
sys.path.insert(0, os.getcwd())
from __future__ import absolute_import
from . import core
from . import network
from . import utils

__version__ = '0.0.1a1'

0 comments on commit 0b0cd33

Please sign in to comment.