Index: build_tools/conda/README.md
===================================================================
--- build_tools/conda/README.md	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/README.md	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,37 @@
+= Conda Recipes =
+
+Here we store the recipes for building conda packages of the dependencies of SasView.  These are dependencies that unforunately do not come pre-bundled with Anaconda.
+
+== Creating a Recipe ==
+
+An easy way to get started with a recipe is to use the skeleton command that comes with conda, which looks for all the information it needs on PyPi (of course, this will only work if the module exists on PyPi...):
+
+{{{
+conda skeleton pypi package_name
+}}}
+
+This automatically chooses the most recent version up on PyPi.  You may specify an older version as follows:
+
+{{{
+conda skeleton pypi package_name --version 1.0.9
+}}}
+
+If you run `conda skeleton` from this directory, then the recipes will go into the right place. 
+
+If you're lucky this is all you will need to ever do to create a new recipe, but you may need to go in and tinker with the meta.yaml file from time to time.
+
+'''Issues'''
+
+* Sometimes downloading the package from PyPi is problematic.  You may see something like the following:
+
+  {{{
+  Error: Could not open 'C:\\TempAnaconda\\conda-bld\\src_cache\\showfiles.php?group_id=15583.part' for writing ([Errno 22] invalid mode ('wb') or filename: 'C:\\TempAnaconda\\conda-bld\\src_cache\\showfiles.php?group_id=15583.part').
+  }}}
+
+  If so, append `--no-download` to the skeleton command.
+
+* I once tried to use recipes generated with older versions of conda and ran into problems.  Your options here are either to hack away at the recipe until it works, or just re-generate the recipe with skeleton.
+
+== Building a Conda Package and Uploading to Binstar ==
+
+...
Index: build_tools/conda/bumps/meta.yaml
===================================================================
--- build_tools/conda/bumps/meta.yaml	(revision 6a72e1b413e7a9c359e6044b125496bdabe08867)
+++ build_tools/conda/bumps/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -1,5 +1,29 @@
-about: {home: 'http://www.reflectometry.org/danse/software.html', license: UNKNOWN,
-  summary: Data fitting with bayesian uncertainty analysis}
-package: {name: bumps, version: 0.7.5.3}
+package:
+  name: bumps
+  version: !!str 0.7.5.4
+
+source:
+  fn: bumps-0.7.5.4.tar.gz
+  url: https://pypi.python.org/packages/source/b/bumps/bumps-0.7.5.4.tar.gz
+  md5: a47c035fbb18afa5ca53067506a5ff1c
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+# build:
+  #preserve_egg_dir: True
+  #entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - bumps = bumps:main
+    #
+    # Would create an entry point called bumps that calls bumps.main()
+
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
 requirements:
   build:
@@ -7,12 +31,11 @@
     - setuptools
     - six
+
   run:
     - python
     - six
-source:
-  fn: bumps-0.7.5.3.tar.gz
-  md5: f17b41412c3c8ad6432a42e42cb926d5
-  url: https://pypi.python.org/packages/source/b/bumps/bumps-0.7.5.3.tar.gz
+
 test:
+  # Python imports
   imports:
     - bumps
@@ -23,6 +46,23 @@
     - bumps.mystic.examples
     - bumps.mystic.optimizer
-  requires:
-    - numpy
-    - scipy
-    - matplotlib
+
+  #commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://www.reflectometry.org/danse/software.html
+  license: UNKNOWN
+  summary: 'Data fitting with bayesian uncertainty analysis'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: build_tools/conda/periodictable/meta.yaml
===================================================================
--- build_tools/conda/periodictable/meta.yaml	(revision 6a72e1b413e7a9c359e6044b125496bdabe08867)
+++ build_tools/conda/periodictable/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -1,5 +1,29 @@
-about: {home: 'http://www.reflectometry.org/danse/elements.html', license: public
-    domain, summary: Extensible periodic table of the elements}
-package: {name: periodictable, version: 1.4.1}
+package:
+  name: periodictable
+  version: !!str 1.4.1
+
+source:
+  fn: periodictable-1.4.1.tar.gz
+  url: https://pypi.python.org/packages/source/p/periodictable/periodictable-1.4.1.tar.gz
+  md5: 7246b63cc0b6b1be6e86b6616f9e866e
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+# build:
+  #preserve_egg_dir: True
+  #entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - periodictable = periodictable:main
+    #
+    # Would create an entry point called periodictable that calls periodictable.main()
+
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
 requirements:
   build:
@@ -8,13 +32,33 @@
     - pyparsing
     - numpy
+
   run:
     - python
     - pyparsing
     - numpy
-source:
-  fn: periodictable-1.4.1.tar.gz
-  md5: 7246b63cc0b6b1be6e86b6616f9e866e
-  url: https://pypi.python.org/packages/source/p/periodictable/periodictable-1.4.1.tar.gz
+
 test:
+  # Python imports
   imports:
     - periodictable
+
+  #commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://www.reflectometry.org/danse/elements.html
+  license: public domain
+  summary: 'Extensible periodic table of the elements'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: build_tools/conda/pisa/bld.bat
===================================================================
--- build_tools/conda/pisa/bld.bat	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/pisa/bld.bat	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,8 @@
+"%PYTHON%" setup.py install
+if errorlevel 1 exit 1
+
+:: Add more build steps here, if they are necessary.
+
+:: See
+:: http://docs.continuum.io/conda/build.html
+:: for a list of environment variables that are set during the build process.
Index: build_tools/conda/pisa/build.sh
===================================================================
--- build_tools/conda/pisa/build.sh	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/pisa/build.sh	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+$PYTHON setup.py install
+
+# Add more build steps here, if they are necessary.
+
+# See
+# http://docs.continuum.io/conda/build.html
+# for a list of environment variables that are set during the build process.
Index: build_tools/conda/pisa/meta.yaml
===================================================================
--- build_tools/conda/pisa/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/pisa/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,69 @@
+package:
+  name: pisa
+  version: !!str 3.0.9
+
+source:
+  fn: pisa-3.0.9.tar.gz
+  url: https://pypi.python.org/packages/source/p/pisa/pisa-3.0.9.tar.gz
+  md5: 91f77889f48da9b6b4877037c7e44dd2
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+build:
+  #preserve_egg_dir: True
+  entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - pisa = pisa:main
+    #
+    # Would create an entry point called pisa that calls pisa.main()
+
+    - pisa = sx.pisa3:command
+    - xhtml2pdf = sx.pisa3:command
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
+requirements:
+  build:
+    - python
+    - setuptools
+
+  run:
+    - python
+
+test:
+  # Python imports
+  imports:
+    - ho
+    - ho.pisa
+    - pisa
+    - sx
+    - sx.pisa3
+    - sx.w3c
+
+  commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+    - pisa --help
+    - xhtml2pdf --help
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://www.xhtml2pdf.com
+  license:  Apache Software License
+  summary: 'PDF generator using HTML and CSS'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: build_tools/conda/py2exe/bld.bat
===================================================================
--- build_tools/conda/py2exe/bld.bat	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/py2exe/bld.bat	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,8 @@
+"%PYTHON%" setup.py install
+if errorlevel 1 exit 1
+
+:: Add more build steps here, if they are necessary.
+
+:: See
+:: http://docs.continuum.io/conda/build.html
+:: for a list of environment variables that are set during the build process.
Index: build_tools/conda/py2exe/build.sh
===================================================================
--- build_tools/conda/py2exe/build.sh	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/py2exe/build.sh	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+$PYTHON setup.py install
+
+# Add more build steps here, if they are necessary.
+
+# See
+# http://docs.continuum.io/conda/build.html
+# for a list of environment variables that are set during the build process.
Index: build_tools/conda/py2exe/meta.yaml
===================================================================
--- build_tools/conda/py2exe/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/py2exe/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,59 @@
+package:
+  name: py2exe
+  version: !!str 0.6.9
+
+source:
+  fn: showfiles.php?group_id=15583
+  url: http://sourceforge.net/project/showfiles.php?group_id=15583
+  #md5: 
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+# build:
+  #preserve_egg_dir: True
+  #entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - py2exe = py2exe:main
+    #
+    # Would create an entry point called py2exe that calls py2exe.main()
+
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
+requirements:
+  build:
+    - python
+
+  run:
+    - python
+
+test:
+  # Python imports
+  imports:
+    - py2exe
+
+  #commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://www.py2exe.org/
+  license: MIT/X11, MPL 1.1
+  summary: 'Build standalone executables for Windows'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: build_tools/conda/unittest-xml-reporting/meta.yaml
===================================================================
--- build_tools/conda/unittest-xml-reporting/meta.yaml	(revision 9701348dc322dd0b7d9634e3bded7a71433ca310)
+++ build_tools/conda/unittest-xml-reporting/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -1,23 +1,64 @@
-about: {home: 'http://github.com/xmlrunner/unittest-xml-reporting/tree/master/', license: BSD
-    License, summary: unittest-based test runner with Ant/JUnit like XML reporting.}
-build:
-  features:
-    - I dunno.  The ability to actually work would be nice feature of this recipe.
-package: {name: unittest-xml-reporting, version: 1.10.0}
+package:
+  name: unittest-xml-reporting
+  version: !!str 1.10.0
+
+source:
+  fn: unittest-xml-reporting-1.10.0.tar.gz
+  url: https://pypi.python.org/packages/source/u/unittest-xml-reporting/unittest-xml-reporting-1.10.0.tar.gz
+  md5: f0d04be2b9bff5b744677b576c326620
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+# build:
+  #preserve_egg_dir: True
+  #entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - unittest-xml-reporting = unittest-xml-reporting:main
+    #
+    # Would create an entry point called unittest-xml-reporting that calls unittest-xml-reporting.main()
+
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
 requirements:
   build:
     - python
     - setuptools
-    - six
+    - six >=1.4.0
+
   run:
     - python
-    - six
-source:
-  fn: unittest-xml-reporting-1.10.0.tar.gz
-  md5: f0d04be2b9bff5b744677b576c326620
-  url: https://pypi.python.org/packages/source/u/unittest-xml-reporting/unittest-xml-reporting-1.10.0.tar.gz
+    - six >=1.4.0
+
 test:
+  # Python imports
   imports:
     - xmlrunner
     - xmlrunner.extra
     - xmlrunner.tests
+
+  #commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://github.com/xmlrunner/unittest-xml-reporting/tree/master/
+  license:  BSD License
+  summary: 'unittest-based test runner with Ant/JUnit like XML reporting.'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
Index: build_tools/conda/xhtml2pdf/bld.bat
===================================================================
--- build_tools/conda/xhtml2pdf/bld.bat	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/xhtml2pdf/bld.bat	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,8 @@
+"%PYTHON%" setup.py install
+if errorlevel 1 exit 1
+
+:: Add more build steps here, if they are necessary.
+
+:: See
+:: http://docs.continuum.io/conda/build.html
+:: for a list of environment variables that are set during the build process.
Index: build_tools/conda/xhtml2pdf/build.sh
===================================================================
--- build_tools/conda/xhtml2pdf/build.sh	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/xhtml2pdf/build.sh	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+$PYTHON setup.py install
+
+# Add more build steps here, if they are necessary.
+
+# See
+# http://docs.continuum.io/conda/build.html
+# for a list of environment variables that are set during the build process.
Index: build_tools/conda/xhtml2pdf/meta.yaml
===================================================================
--- build_tools/conda/xhtml2pdf/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
+++ build_tools/conda/xhtml2pdf/meta.yaml	(revision 55bde35d88c24806224b9adc5bb57745bd64e998)
@@ -0,0 +1,73 @@
+package:
+  name: xhtml2pdf
+  version: !!str 0.0.6
+
+source:
+  fn: xhtml2pdf-0.0.6.tar.gz
+  url: https://pypi.python.org/packages/source/x/xhtml2pdf/xhtml2pdf-0.0.6.tar.gz
+  md5: dee3703f768efcba26eab81a4207c2c8
+#  patches:
+   # List any patch files here
+   # - fix.patch
+
+build:
+  #preserve_egg_dir: True
+  entry_points:
+    # Put any entry points (scripts to be generated automatically) here. The
+    # syntax is module:function.  For example
+    #
+    # - xhtml2pdf = xhtml2pdf:main
+    #
+    # Would create an entry point called xhtml2pdf that calls xhtml2pdf.main()
+
+    - pisa = xhtml2pdf.pisa:command
+    - xhtml2pdf = xhtml2pdf.pisa:command
+
+  # If this is a new build for the same version, increment the build
+  # number. If you do not include this key, it defaults to 0.
+  # number: 1
+
+requirements:
+  build:
+    - python
+    - setuptools
+    - html5lib
+    - pypdf2
+    - pillow
+    - reportlab >=2.2
+
+  run:
+    - python
+    - html5lib
+    - pypdf2
+    - pillow
+    - reportlab >=2.2
+
+test:
+  # Python imports
+  imports:
+    - xhtml2pdf
+    - xhtml2pdf.w3c
+
+  commands:
+    # You can put test commands to be run here.  Use this to test that the
+    # entry points work.
+
+    - pisa --help
+    - xhtml2pdf --help
+
+  # You can also put a file called run_test.py in the recipe that will be run
+  # at test time.
+
+  # requires:
+    # Put any additional test requirements here.  For example
+    # - nose
+
+about:
+  home: http://www.xhtml2pdf.com
+  license:  Apache Software License
+  summary: 'PDF generator using HTML and CSS'
+
+# See
+# http://docs.continuum.io/conda/build.html for
+# more information about meta.yaml
