Permalink
Browse files

Changed to cookie-cutter project structure

  • Loading branch information...
pyhys committed Jul 16, 2015
1 parent 6752c24 commit a71b69163cbaaebc2c7726a4b48e2362abc8cf29
Showing with 1,748 additions and 1,430 deletions.
  1. +16 −0 AUTHORS.rst
  2. +111 −0 CONTRIBUTING.rst
  3. +11 −0 CHANGES.txt → HISTORY.rst
  4. 0 LICENCE.txt → LICENSE
  5. +11 −6 MANIFEST.in
  6. +93 −0 Makefile
  7. +32 −0 README.rst
  8. +0 −857 README.txt
  9. +0 −256 doc/_static/default.css
  10. +0 −6 doc/_templates/sourceforgelogo.html
  11. +0 −6 doc/changes.rst
  12. +0 −39 doc/index.rst
  13. +0 −4 doc/licence.rst
  14. +54 −14 {doc → docs}/Makefile
  15. +1 −1 doc/usage.rst → docs/advancedusage.rst
  16. +1 −0 {doc → docs}/apidummyserial.rst
  17. +1 −0 {doc → docs}/apieurotherm3500.rst
  18. +1 −0 {doc → docs}/apiminimalmodbus.rst
  19. +1 −0 {doc → docs}/apiomegacn7500.rst
  20. +1 −0 docs/authors.rst
  21. +124 −83 {doc → docs}/conf.py
  22. +1 −0 docs/contributing.rst
  23. +133 −0 docs/debugmode.rst
  24. +40 −27 {doc → docs}/develop.rst
  25. +12 −0 docs/exampledriverstoc.rst
  26. +1 −0 docs/history.rst
  27. +43 −0 docs/index.rst
  28. +71 −0 docs/installation.rst
  29. 0 {doc → docs}/internalminimalmodbus.rst
  30. 0 {doc → docs}/internalomegacn7500.rst
  31. 0 {doc → docs}/internaltestdtb4824.rst
  32. 0 {doc → docs}/internaltesteurotherm3500.rst
  33. 0 {doc → docs}/internaltestminimalmodbus.rst
  34. 0 {doc → docs}/internaltestomegacn7500.rst
  35. +12 −0 docs/internaltoc.rst
  36. +242 −0 docs/make.bat
  37. +167 −0 docs/modbusdetails.rst
  38. +1 −0 docs/readme.rst
  39. +15 −0 docs/related.rst
  40. +132 −0 docs/serialcommunication.rst
  41. +130 −0 docs/troubleshooting.rst
  42. +172 −0 docs/usage.rst
  43. +4 −4 dummy_serial.py
  44. +4 −4 eurotherm3500.py
  45. +8 −34 minimalmodbus.py
  46. +4 −4 omegacn7500.py
  47. +1 −0 requirements.txt
  48. +2 −0 setup.cfg
  49. +26 −17 setup.py
  50. 0 test/__init__.py
  51. +0 −38 test/test_hardware_adapter.py
  52. +4 −15 test/test_all_simulated.py → tests/__init__.py
  53. +43 −0 tests/test_all_simulated.py
  54. 0 {test → tests}/test_deltaDTB4824.py
  55. +4 −4 {test → tests}/test_eurotherm3500.py
  56. +3 −3 {test → tests}/test_helper_functions.py
  57. +2 −4 {test → tests}/test_minimalmodbus.py
  58. +4 −4 {test → tests}/test_omegacn7500.py
  59. +9 −0 tox.ini
View
@@ -0,0 +1,16 @@
+=======
+Credits
+=======
+
+Development Lead
+----------------
+
+* Jonas Berg <pyhys@users.sourceforge.net>
+
+Contributors
+------------
+
+Significant contributions by Angelo Compagnucci, Aaron LaLonde, Asier Abalos,
+Simon Funke, Edwin van den Oetelaar, Dominik Socha, Luca Di Gregorio and Michael Penza.
+
+
View
@@ -0,0 +1,111 @@
+============
+Contributing
+============
+
+Contributions are welcome, and they are greatly appreciated! Every
+little bit helps, and credit will always be given.
+
+You can contribute in many ways:
+
+Types of Contributions
+----------------------
+
+Report Bugs
+~~~~~~~~~~~
+
+Report bugs at https://github.com/pyhys/minimalmodbus/issues.
+
+If you are reporting a bug, please include:
+
+* Your operating system name and version.
+* Any details about your local setup that might be helpful in troubleshooting.
+* Detailed steps to reproduce the bug.
+
+Fix Bugs
+~~~~~~~~
+
+Look through the GitHub issues for bugs. Anything tagged with "bug"
+is open to whoever wants to implement it.
+
+Implement Features
+~~~~~~~~~~~~~~~~~~
+
+Look through the GitHub issues for features. Anything tagged with "feature"
+is open to whoever wants to implement it.
+
+Write Documentation
+~~~~~~~~~~~~~~~~~~~
+
+MinimalModbus could always use more documentation, whether as part of the
+official MinimalModbus docs, in docstrings, or even on the web in blog posts,
+articles, and such.
+
+Submit Feedback
+~~~~~~~~~~~~~~~
+
+The best way to send feedback is to file an issue at https://github.com/pyhys/minimalmodbus/issues.
+
+If you are proposing a feature:
+
+* Explain in detail how it would work.
+* Keep the scope as narrow as possible, to make it easier to implement.
+* Remember that this is a volunteer-driven project, and that contributions
+ are welcome :)
+
+Get Started!
+------------
+
+Ready to contribute? Here's how to set up `minimalmodbus` for local development.
+
+1. Fork the `minimalmodbus` repo on GitHub.
+2. Clone your fork locally::
+
+ $ git clone git@github.com:your_name_here/minimalmodbus.git
+
+3. Install your local copy into a virtualenv. Assuming you have virtualenvwrapper installed, this is how you set up your fork for local development::
+
+ $ mkvirtualenv minimalmodbus
+ $ cd minimalmodbus/
+ $ python setup.py develop
+
+4. Create a branch for local development::
+
+ $ git checkout -b name-of-your-bugfix-or-feature
+
+ Now you can make your changes locally.
+
+5. When you're done making changes, check that your changes pass flake8 and the tests, including testing other Python versions with tox::
+
+ $ flake8 minimalmodbus tests
+ $ python setup.py test
+ $ tox
+
+ To get flake8 and tox, just pip install them into your virtualenv.
+
+6. Commit your changes and push your branch to GitHub::
+
+ $ git add .
+ $ git commit -m "Your detailed description of your changes."
+ $ git push origin name-of-your-bugfix-or-feature
+
+7. Submit a pull request through the GitHub website.
+
+Pull Request Guidelines
+-----------------------
+
+Before you submit a pull request, check that it meets these guidelines:
+
+1. The pull request should include tests.
+2. If the pull request adds functionality, the docs should be updated. Put
+ your new functionality into a function with a docstring, and add the
+ feature to the list in README.rst.
+3. The pull request should work for Python 2.6, 2.7, 3.3, and 3.4, and for PyPy. Check
+ https://travis-ci.org/pyhys/minimalmodbus/pull_requests
+ and make sure that the tests pass for all supported Python versions.
+
+Tips
+----
+
+To run a subset of tests::
+
+ $ python -m unittest tests.test_minimalmodbus
@@ -1,3 +1,14 @@
+.. :changelog:
+
+History
+=======
+
+0.7 (2015-0?-??)
+---------------------
+* Moved to Github from Sourceforge
+* Reshuffled source files and documentation
+* Using project setup by the cookie-cutter tool.
+
Release 0.6 (2014-06-22)
--------------------------
View
File renamed without changes.
View
@@ -1,6 +1,11 @@
-include *.txt
-include *.in
-include doc/Makefile
-recursive-include test *.py
-recursive-include doc *.rst *.py
-recursive-include doc/_static *
+include AUTHORS.rst
+include CONTRIBUTING.rst
+include HISTORY.rst
+include LICENSE
+include README.rst
+
+recursive-include tests *
+recursive-exclude * __pycache__
+recursive-exclude * *.py[co]
+
+recursive-include docs *.rst conf.py Makefile make.bat
View
@@ -0,0 +1,93 @@
+.PHONY: clean-pyc clean-build docs clean clean-docs
+
+help:
+ @echo "clean - remove all build, test, coverage, docs and Python artifacts"
+ @echo "clean-build - remove build artifacts"
+ @echo "clean-pyc - remove Python file artifacts"
+ @echo "clean-test - remove test and coverage artifacts"
+ @echo "clean-docs - remove docs artifacts"
+ @echo "lint - check style with flake8"
+ @echo "test - run tests quickly with the default Python"
+ @echo "test-all - run tests on every Python version with tox"
+ @echo "coverage - check code coverage quickly with the default Python"
+ @echo "docs - generate Sphinx HTML documentation"
+ @echo "pdf - generate Sphinx PDF documentation"
+ @echo "linkcheck - check documentation html links"
+ @echo "release - package and upload a release"
+ @echo "dist - package"
+ @echo "install - install the package to the active Python's site-packages"
+
+
+clean: clean-build clean-pyc clean-test clean-docs
+
+clean-build:
+ rm -fr build/
+ rm -fr dist/
+ rm -fr .eggs/
+ find . -name '*.egg-info' -exec rm -fr {} +
+ find . -name '*.egg' -exec rm -f {} +
+
+clean-pyc:
+ find . -name '*.pyc' -exec rm -f {} +
+ find . -name '*.pyo' -exec rm -f {} +
+ find . -name '*~' -exec rm -f {} +
+ find . -name '__pycache__' -exec rm -fr {} +
+
+clean-test:
+ rm -fr .tox/
+ rm -f .coverage
+ rm -fr htmlcov/
+
+clean-docs:
+ $(MAKE) -C docs clean
+
+lint:
+ flake8 minimalmodbus tests
+
+test:
+ python setup.py test
+
+test-all:
+ tox
+
+coverage:
+ rm -fr htmlcov/
+ coverage run setup.py test
+ coverage report -m
+ coverage html --omit=/usr/*
+ @echo " "
+ @echo " "
+ @echo " "
+ @echo "Opening web browser ..."
+ xdg-open htmlcov/index.html
+
+docs: clean-docs
+ $(MAKE) -C docs html
+ @echo " "
+ @echo " "
+ @echo " "
+ @echo "Opening web browser ..."
+ xdg-open docs/_build/html/index.html
+
+pdf:
+ $(MAKE) -C docs latexpdf
+ @echo " "
+ @echo " "
+ @echo " "
+ @echo "Opening PDF reader ..."
+ xdg-open docs/_build/latex/minimalmodbus.pdf
+
+linkcheck:
+ $(MAKE) -C docs linkcheck
+
+release: clean
+ python setup.py sdist upload
+ python setup.py bdist_wheel upload
+
+dist: clean
+ python setup.py sdist
+ python setup.py bdist_wheel
+ ls -l dist
+
+install: clean
+ python setup.py install
View
@@ -0,0 +1,32 @@
+===============================
+MinimalModbus
+===============================
+
+.. image:: https://img.shields.io/travis/pyhys/minimalmodbus.svg
+ :target: https://travis-ci.org/pyhys/minimalmodbus
+
+.. image:: https://img.shields.io/pypi/v/minimalmodbus.svg
+ :target: https://pypi.python.org/pypi/minimalmodbus
+
+
+Easy-to-use Modbus RTU and Modbus ASCII implementation for Python
+
+* Free software: Apache 2.0 license
+* Documentation: https://minimalmodbus.readthedocs.org.
+* Source code on GitHub: https://github.com/pyhys/minimalmodbus
+* Python package index (PyPI) with download: https://pypi.python.org/pypi/MinimalModbus/
+
+
+
+Features
+--------
+MinimalModbus is an easy-to-use Python module for talking to instruments (slaves)
+from a computer (master) using the Modbus protocol, and is intended to be running on the master.
+Example code includes drivers for Eurotherm and Omega process controllers.
+The only dependence is the pySerial module (also pure Python).
+
+This software supports the 'Modbus RTU' and 'Modbus ASCII' serial communication versions of the protocol,
+and is intended for use on Linux, OS X and Windows platforms.
+It is open source, and has the Apache License, Version 2.0.
+Tested with Python2.7 and Python3.2.
+
Oops, something went wrong.

0 comments on commit a71b691

Please sign in to comment.