Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.4.0 #253

Merged
merged 24 commits into from Jan 3, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
91f3f0b
#217 fix modbus tcp read
dhoomakethu Oct 3, 2017
22f1843
Move twisted requirement to extra (#227)
jackjweinstein Oct 18, 2017
4c896d1
#157 Pass remote unit id when using remote slave context
dhoomakethu Oct 26, 2017
f226bcd
#190 fix asynchronous processor example
dhoomakethu Oct 26, 2017
5f0d2ed
#60 Check for slave unit id before processing the request for serial …
dhoomakethu Oct 26, 2017
6030c25
#209 bump version to 1.4.0.rc1
dhoomakethu Oct 26, 2017
634abaf
Update ISSUE_TEMPLATE.md
dhoomakethu Oct 27, 2017
01f5819
Fix failing tests
dhoomakethu Oct 27, 2017
2bbb5e5
Fix example remote_server_context (#236)
dhoomakethu Nov 6, 2017
27a834e
In the start TCP, UDP and Seriel server, we are running a quick check…
rahulraghu94 Nov 24, 2017
b1b9e4f
#84: Stop Asynchronous Server (#243)
rahulraghu94 Nov 25, 2017
c0e489c
Test dev (#240)
dhoomakethu Nov 28, 2017
e852aa2
#221 tcp read complete frame based on length field in the mbap header…
dhoomakethu Dec 19, 2017
b1363d7
Prepare for 1.4.0 (#209), updated changelogs
dhoomakethu Dec 19, 2017
621a90e
Tar ball without docs (#252)
dhoomakethu Dec 21, 2017
4a05c01
#221 Fix read transactions for different framers
dhoomakethu Dec 21, 2017
2e65023
Update requirements for document generation
dhoomakethu Dec 21, 2017
668612e
Fix ModbusSingleRequestHandler
dhoomakethu Dec 22, 2017
1e1af47
Bump version to 1.4.0rc2 #209
dhoomakethu Dec 22, 2017
5a3cceb
Fix make clean command on osx
dhoomakethu Dec 22, 2017
c1e784a
#245 unittest coverage (#249)
rahulraghu94 Dec 22, 2017
64cb66a
#255 Fix BinaryPayloadDecoder
dhoomakethu Dec 26, 2017
d4dcdc0
#255 Fix unit tests
dhoomakethu Dec 26, 2017
b4f3987
1. #138 Add support to manipulate wordorder with BinaryPayloadDecoder…
dhoomakethu Jan 3, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Expand Up @@ -14,6 +14,9 @@ Before opening a new issue, make sure you do the following:
* Pymodbus:
* Modbus Hardware (if used):

### Pymodbus Specific
* Server: tcp/rtu/ascii - sync/async
* Client: tcp/rtu/ascii - sync/async

### Description

Expand Down
12 changes: 11 additions & 1 deletion .gitignore
Expand Up @@ -7,7 +7,7 @@ pymodbus.egg-info/
.vscode
.idea
.noseids

*.db
.idea/
.tox/
doc/api/epydoc/html/
Expand All @@ -20,3 +20,13 @@ pymodbus/datastore/__pycache__/
pymodbus/internal/__pycache__/
pymodbus/server/__pycache__/
test/__pycache__/
**/pymodbus.db
/.eggs/
/.cache/
/doc/sphinx/doctrees/
/doc_new/
/doc/quality/
/doc/pymodbus.pdf
/doc/sphinx/
/doc/html/
/doc/_build/
9 changes: 9 additions & 0 deletions .readthedocs.yml
@@ -0,0 +1,9 @@
# Build PDF & ePub
formats:
- epub
- pdf
requirements_file: requirements-docs.txt
python:
extra_requirements:
- twisted
- documents
19 changes: 19 additions & 0 deletions CHANGELOG.rst
@@ -1,3 +1,22 @@
Version 1.4.0
------------------------------------------------------------
* Bug fix Modbus TCP client reading incomplete data
* Check for slave unit id before processing the request for serial clients
* Bug fix serial servers with Modbus Binary Framer
* Bug fix header size for ModbusBinaryFramer
* Bug fix payload decoder with endian Little
* Payload builder and decoder can now deal with the wordorder as well of 32/64 bit data.
* Support Database slave contexts (SqlStore and RedisStore)
* Custom handlers could be passed to Modbus TCP servers
* Asynchronous Server could now be stopped when running on a seperate thread (StopServer)
* Signal handlers on Asyncronous servers are now handled based on current thread
* Registers in Database datastore could now be read from remote clients
* Fix examples in contrib (message_parser.py/message_generator.py/remote_server_context)
* Add new example for SqlStore and RedisStore (db store slave context)
* Fix minor comaptibility issues with utilities.
* Update test requirements
* Update/Add new unit tests
* Move twisted requirements to extra so that it is not installed by default on pymodbus installtion

Version 1.3.2
------------------------------------------------------------
Expand Down
13 changes: 7 additions & 6 deletions Makefile
Expand Up @@ -16,7 +16,8 @@ default:
@echo ' make check check coding style (PEP-8, PEP-257)'
@echo ' make test run the test suite, report coverage'
@echo ' make tox run the tests on all Python versions'
@echo ' make clean cleanup all temporary files'
@echo ' make docs creates sphinx documentation in html'
@echo ' make clean cleanup all temporary files'
@echo

install:
Expand Down Expand Up @@ -45,8 +46,8 @@ tox: install
@pip install --quiet tox && tox

docs: install
@pip install --quiet sphinx
@cd doc/sphinx && sphinx-build -nb html -d doctrees . html
@pip install --quiet --requirement=requirements-docs.txt
@cd doc && make html

publish: install
git push origin && git push --tags origin
Expand All @@ -57,8 +58,8 @@ publish: install
$(MAKE) clean

clean:
@rm -Rf *.egg .cache .coverage .tox build dist docs/build htmlcov
@find -depth -type d -name __pycache__ -exec rm -Rf {} \;
@find -type f -name '*.pyc' -delete
@rm -Rf *.egg .eggs *.egg-info *.db .cache .coverage .tox build dist docs/build htmlcov doc/_build test/.Python test/pip-selfcheck.json test/lib/ test/include/ test/bin/
@find . -depth -type d -name __pycache__ -exec rm -Rf {} \;
@find . -type f -name '*.pyc' -delete

.PHONY: default install reset check test tox docs publish clean
20 changes: 20 additions & 0 deletions doc/Makefile
@@ -0,0 +1,20 @@
# Minimal makefile for Sphinx documentation
#

# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
SPHINXPROJ = PyModbus
SOURCEDIR = .
BUILDDIR = _build

# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

.PHONY: help Makefile

# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
1 change: 1 addition & 0 deletions doc/changelog.rst
@@ -0,0 +1 @@
.. include:: ../CHANGELOG.rst
179 changes: 179 additions & 0 deletions doc/conf.py
@@ -0,0 +1,179 @@
# -*- coding: utf-8 -*-
#
# PyModbus documentation build configuration file, created by
# sphinx-quickstart on Wed Dec 20 12:31:10 2017.
#
# This file is execfile()d with the current directory set to its
# containing dir.
#
# Note that not all possible configuration values are present in this
# autogenerated file.
#
# All configuration values have a default; values that are commented out
# serve to show the default.

# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
import os
import sys
parent_dir = os.path.abspath(os.pardir)
# examples = os.path.join(parent_dir, "examples")
example_contrib = os.path.join(parent_dir, "examples/contrib")
example_common = os.path.join(parent_dir, "examples/common")
example_gui = os.path.join(parent_dir, "examples/gui")

sys.path.insert(0, os.path.abspath(os.pardir))
sys.path.append(example_common)
sys.path.append(example_contrib)
sys.path.append(example_gui)
# sys.path.extend([examples, example_common, example_contrib, example_gui])
# sys.path.insert(0, os.path.abspath('../'))


# -- General configuration ------------------------------------------------

# If your documentation needs a minimal Sphinx version, state it here.
#
# needs_sphinx = '1.0'

# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = ['sphinx.ext.autodoc']

# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']

# The suffix(es) of source filenames.
# You can specify multiple suffix as a list of string:
#
# source_suffix = ['.rst', '.md']
source_suffix = '.rst'

# The master toctree document.
master_doc = 'index'

# General information about the project.
project = u'PyModbus'
copyright = u'2017, Sanjay'
author = u'Sanjay'

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
version = u'1.4.0'
# The full version, including alpha/beta/rc tags.
release = u'1.4.0'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = None

# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This patterns also effect to html_static_path and html_extra_path
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']

# The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx'

# If true, `todo` and `todoList` produce output, else they produce nothing.
todo_include_todos = False


# -- Options for HTML output ----------------------------------------------

# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'sphinx_rtd_theme'

# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
#
# html_theme_options = {}

# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']

# Custom sidebar templates, must be a dictionary that maps document names
# to template names.
#
# This is required for the alabaster theme
# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars
html_sidebars = {
'**': [
'relations.html', # needs 'show_related': True theme option to display
'searchbox.html',
]
}


# -- Options for HTMLHelp output ------------------------------------------

# Output file base name for HTML help builder.
htmlhelp_basename = 'PyModbusdoc'


# -- Options for LaTeX output ---------------------------------------------

latex_elements = {
# The paper size ('letterpaper' or 'a4paper').
#
# 'papersize': 'letterpaper',

# The font size ('10pt', '11pt' or '12pt').
#
# 'pointsize': '10pt',

# Additional stuff for the LaTeX preamble.
#
# 'preamble': '',

# Latex figure (float) alignment
#
# 'figure_align': 'htbp',
}

# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(master_doc, 'PyModbus.tex', u'PyModbus Documentation',
u'Sanjay', 'manual'),
]


# -- Options for manual page output ---------------------------------------

# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
(master_doc, 'pymodbus', u'PyModbus Documentation',
[author], 1)
]


# -- Options for Texinfo output -------------------------------------------

# Grouping the document tree into Texinfo files. List of tuples
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
(master_doc, 'PyModbus', u'PyModbus Documentation',
author, 'PyModbus', 'One line description of project.',
'Miscellaneous'),
]



13 changes: 7 additions & 6 deletions doc/sphinx/index.rst → doc/index.rst
@@ -1,23 +1,24 @@
.. PyModbus documentation master file, created by
sphinx-quickstart on Tue Apr 14 19:11:16 2009.
sphinx-quickstart on Wed Dec 20 12:31:10 2017.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.

Welcome to PyModbus's documentation!
====================================

Contents:

.. toctree::
:maxdepth: 2
:caption: Contents:

readme.rst
changelog.rst
source/example/modules.rst
source/library/modules.rst

examples/index.rst
library/index.rst

Indices and tables
==================

* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`

Binary file removed doc/pymodbus.pdf
Binary file not shown.
41 changes: 0 additions & 41 deletions doc/quality/current.coverage

This file was deleted.

19 changes: 0 additions & 19 deletions doc/quality/current.lint

This file was deleted.