[Python-modules-commits] [python-opcua] 01/03: import python-opcua_0.10.17.orig.tar.gz
Wolfgang Borgert
debacle at moszumanska.debian.org
Thu Oct 13 09:57:14 UTC 2016
This is an automated email from the git hooks/post-receive script.
debacle pushed a commit to branch master
in repository python-opcua.
commit 9a4eabbbeff5ee7b6a18c7b9d5310b785ba6fada
Author: W. Martin Borgert <debacle at debian.org>
Date: Thu Oct 13 09:14:22 2016 +0000
import python-opcua_0.10.17.orig.tar.gz
---
.gitignore | 20 +
.travis.yml | 19 +
COPYING | 165 +
README.md | 121 +
docs/Makefile | 192 +
docs/client.rst | 12 +
docs/conf.py | 288 +
docs/index.rst | 51 +
docs/modules.rst | 7 +
docs/node.rst | 24 +
docs/opcua.client.rst | 30 +
docs/opcua.common.rst | 94 +
docs/opcua.crypto.rst | 30 +
docs/opcua.rst | 33 +
docs/opcua.server.rst | 93 +
docs/opcua.server.standard_address_space.rst | 86 +
docs/opcua.ua.rst | 70 +
docs/requirements.txt | 4 +
docs/server.rst | 23 +
docs/subscription.rst | 10 +
examples/certificate-example.der | Bin 0 -> 850 bytes
examples/client-events.py | 57 +
examples/client-example.py | 88 +
examples/client-minimal.py | 37 +
examples/client_deleting.py | 30 +
examples/client_to_kepware.py | 55 +
examples/client_to_prosys.py | 67 +
examples/client_to_prosys_cert.py | 23 +
examples/client_to_prosys_events.py | 44 +
examples/custom_nodes.xml | 43 +
examples/customobject.xml | 35 +
examples/generate_cert.sh | 2 +
examples/private-key-example.pem | 28 +
examples/server-callback.py | 89 +
examples/server-custom-object.py | 76 +
examples/server-datavalue-history.py | 47 +
examples/server-enum.py | 98 +
examples/server-events-history.py | 80 +
examples/server-events.py | 70 +
examples/server-example.py | 126 +
examples/server-instantiate-object.py | 40 +
examples/server-methods.py | 102 +
examples/server-minimal.py | 38 +
examples/server-with-encryption.py | 42 +
examples/server-xmlexporter.py | 42 +
make_deb.sh | 8 +
opcua/__init__.py | 16 +
opcua/client/__init__.py | 0
opcua/client/client.py | 499 +
opcua/client/ua_client.py | 532 +
opcua/common/__init__.py | 0
opcua/common/callback.py | 99 +
opcua/common/copy_node.py | 76 +
opcua/common/event_objects.py | 46 +
opcua/common/events.py | 226 +
opcua/common/instantiate.py | 80 +
opcua/common/manage_nodes.py | 406 +
opcua/common/methods.py | 74 +
opcua/common/node.py | 554 +
opcua/common/shortcuts.py | 16 +
opcua/common/subscription.py | 343 +
opcua/common/ua_utils.py | 203 +
opcua/common/uaerrors/__init__.py | 2 +
opcua/common/uaerrors/_auto.py | 596 +
opcua/common/uaerrors/_base.py | 85 +
opcua/common/utils.py | 205 +
opcua/common/xmlexporter.py | 318 +
opcua/common/xmlimporter.py | 257 +
opcua/common/xmlparser.py | 371 +
opcua/compat.py | 7 +
opcua/crypto/__init__.py | 0
opcua/crypto/security_policies.py | 456 +
opcua/crypto/uacrypto.py | 183 +
opcua/server/__init__.py | 0
opcua/server/address_space.py | 602 +
opcua/server/binary_server_asyncio.py | 113 +
opcua/server/event_generator.py | 100 +
opcua/server/history.py | 361 +
opcua/server/history_sql.py | 345 +
opcua/server/internal_server.py | 377 +
opcua/server/internal_subscription.py | 474 +
opcua/server/server.py | 418 +
opcua/server/standard_address_space/__init__.py | 0
.../standard_address_space.py | 24 +
.../standard_address_space_part10.py | 2373 ++
.../standard_address_space_part11.py | 2135 ++
.../standard_address_space_part13.py | 589 +
.../standard_address_space_part3.py | 1414 +
.../standard_address_space_part4.py | 2855 ++
.../standard_address_space_part5.py | 26984 ++++++++++++++++
.../standard_address_space_part8.py | 1273 +
.../standard_address_space_part9.py | 5603 ++++
opcua/server/subscription_service.py | 102 +
opcua/server/uaprocessor.py | 446 +
opcua/server/users.py | 15 +
opcua/tools.py | 653 +
opcua/ua/__init__.py | 9 +
opcua/ua/attribute_ids.py | 27 +
opcua/ua/object_ids.py | 11502 +++++++
opcua/ua/status_codes.py | 482 +
opcua/ua/ua_binary.py | 275 +
opcua/ua/uaprotocol_auto.py | 16345 ++++++++++
opcua/ua/uaprotocol_hand.py | 756 +
opcua/ua/uatypes.py | 1063 +
release.py | 39 +
run-tests.sh | 2 +
schemas/AttributeIds.csv | 22 +
schemas/NodeIds.csv | 5746 ++++
schemas/OPCBinarySchema.xsd | 119 +
schemas/Opc.Ua.Adi.NodeSet2.xml | 15113 +++++++++
schemas/Opc.Ua.Adi.Types.bsd | 76 +
schemas/Opc.Ua.Adi.Types.xsd | 157 +
schemas/Opc.Ua.Di.NodeSet2.xml | 341 +
schemas/Opc.Ua.Di.Types.bsd | 11 +
schemas/Opc.Ua.Di.Types.xsd | 10 +
schemas/Opc.Ua.Endpoints.wsdl | 571 +
schemas/Opc.Ua.NodeSet2.Part10.xml | 832 +
schemas/Opc.Ua.NodeSet2.Part11.xml | 793 +
schemas/Opc.Ua.NodeSet2.Part13.xml | 344 +
schemas/Opc.Ua.NodeSet2.Part3.xml | 1103 +
schemas/Opc.Ua.NodeSet2.Part4.xml | 3091 ++
schemas/Opc.Ua.NodeSet2.Part5.xml | 17092 ++++++++++
schemas/Opc.Ua.NodeSet2.Part8.xml | 525 +
schemas/Opc.Ua.NodeSet2.Part9.xml | 2049 ++
schemas/Opc.Ua.NodeSet2.xml | 31815 +++++++++++++++++++
schemas/Opc.Ua.Services.wsdl | 650 +
schemas/Opc.Ua.Types.bsd | 2391 ++
schemas/Opc.Ua.Types.xsd | 3938 +++
schemas/SecuredApplication.xsd | 106 +
schemas/StatusCodes.csv | 227 +
schemas/StatusCodes_add.csv | 3 +
schemas/UANodeSet.xsd | 420 +
schemas/UAVariant.xsd | 0
schemas/download.py | 60 +
schemas/generate_address_space.py | 289 +
schemas/generate_ids.py | 33 +
schemas/generate_model.py | 503 +
schemas/generate_protocol_python.py | 374 +
schemas/generate_statuscode.py | 59 +
schemas/generate_uaerrors.py | 28 +
schemas/uaprotocol_auto_add.py | 52 +
setup.py | 46 +
stdeb.cfg | 3 +
test_external_server.py | 140 +
tests/custom_nodes.xml | 329 +
tests/test_opclab_internet.sh | 1 +
tests/tests.py | 25 +
tests/tests_client.py | 102 +
tests/tests_cmd_lines.py | 55 +
tests/tests_common.py | 637 +
tests/tests_crypto_connect.py | 123 +
tests/tests_history.py | 343 +
tests/tests_server.py | 496 +
tests/tests_subscriptions.py | 587 +
tests/tests_uaerrors.py | 26 +
tests/tests_unit.py | 517 +
tools/uaclient | 11 +
tools/uadiscover | 11 +
tools/uahistoryread | 11 +
tools/uals | 11 +
tools/uaread | 11 +
tools/uaserver | 11 +
tools/uasubscribe | 11 +
tools/uawrite | 11 +
164 files changed, 178606 insertions(+)
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6a47a16
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,20 @@
+build*
+MANIFEST
+.idea*
+htmlcov*
+docs/_*
+*.pyc
+dist
+*.old
+*.swp
+*.swo
+*.log
+t.py
+tmp
+old
+dist
+*.egg-info
+*.swp
+newdocs
+examples/history.db
+*.sql
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..3d70d5f
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,19 @@
+language: python
+python:
+ - "2.7"
+ - "3.4"
+ - "pypy"
+# command to install dependencies
+install:
+ - pip install python-dateutil
+ - if [[ $TRAVIS_PYTHON_VERSION == '3.4' ]]; then pip install cryptography ; fi
+ - if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then pip install futures ; fi
+ - if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then pip install cryptography ; fi
+ - if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then pip install trollius ; fi
+ - if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then pip install enum34 ; fi
+ #- if [[ $TRAVIS_PYTHON_VERSION == 'pypy3' ]]; then pip install cryptography ; fi
+ - if [[ $TRAVIS_PYTHON_VERSION == 'pypy' ]]; then pip install futures ; fi
+ - if [[ $TRAVIS_PYTHON_VERSION == 'pypy' ]]; then pip install trollius ; fi
+ - if [[ $TRAVIS_PYTHON_VERSION == 'pypy' ]]; then pip install enum34 ; fi
+# command to run tests
+script: ./run-tests.sh
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..65c5ca8
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,165 @@
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+
+ This version of the GNU Lesser General Public License incorporates
+the terms and conditions of version 3 of the GNU General Public
+License, supplemented by the additional permissions listed below.
+
+ 0. Additional Definitions.
+
+ As used herein, "this License" refers to version 3 of the GNU Lesser
+General Public License, and the "GNU GPL" refers to version 3 of the GNU
+General Public License.
+
+ "The Library" refers to a covered work governed by this License,
+other than an Application or a Combined Work as defined below.
+
+ An "Application" is any work that makes use of an interface provided
+by the Library, but which is not otherwise based on the Library.
+Defining a subclass of a class defined by the Library is deemed a mode
+of using an interface provided by the Library.
+
+ A "Combined Work" is a work produced by combining or linking an
+Application with the Library. The particular version of the Library
+with which the Combined Work was made is also called the "Linked
+Version".
+
+ The "Minimal Corresponding Source" for a Combined Work means the
+Corresponding Source for the Combined Work, excluding any source code
+for portions of the Combined Work that, considered in isolation, are
+based on the Application, and not on the Linked Version.
+
+ The "Corresponding Application Code" for a Combined Work means the
+object code and/or source code for the Application, including any data
+and utility programs needed for reproducing the Combined Work from the
+Application, but excluding the System Libraries of the Combined Work.
+
+ 1. Exception to Section 3 of the GNU GPL.
+
+ You may convey a covered work under sections 3 and 4 of this License
+without being bound by section 3 of the GNU GPL.
+
+ 2. Conveying Modified Versions.
+
+ If you modify a copy of the Library, and, in your modifications, a
+facility refers to a function or data to be supplied by an Application
+that uses the facility (other than as an argument passed when the
+facility is invoked), then you may convey a copy of the modified
+version:
+
+ a) under this License, provided that you make a good faith effort to
+ ensure that, in the event an Application does not supply the
+ function or data, the facility still operates, and performs
+ whatever part of its purpose remains meaningful, or
+
+ b) under the GNU GPL, with none of the additional permissions of
+ this License applicable to that copy.
+
+ 3. Object Code Incorporating Material from Library Header Files.
+
+ The object code form of an Application may incorporate material from
+a header file that is part of the Library. You may convey such object
+code under terms of your choice, provided that, if the incorporated
+material is not limited to numerical parameters, data structure
+layouts and accessors, or small macros, inline functions and templates
+(ten or fewer lines in length), you do both of the following:
+
+ a) Give prominent notice with each copy of the object code that the
+ Library is used in it and that the Library and its use are
+ covered by this License.
+
+ b) Accompany the object code with a copy of the GNU GPL and this license
+ document.
+
+ 4. Combined Works.
+
+ You may convey a Combined Work under terms of your choice that,
+taken together, effectively do not restrict modification of the
+portions of the Library contained in the Combined Work and reverse
+engineering for debugging such modifications, if you also do each of
+the following:
+
+ a) Give prominent notice with each copy of the Combined Work that
+ the Library is used in it and that the Library and its use are
+ covered by this License.
+
+ b) Accompany the Combined Work with a copy of the GNU GPL and this license
+ document.
+
+ c) For a Combined Work that displays copyright notices during
+ execution, include the copyright notice for the Library among
+ these notices, as well as a reference directing the user to the
+ copies of the GNU GPL and this license document.
+
+ d) Do one of the following:
+
+ 0) Convey the Minimal Corresponding Source under the terms of this
+ License, and the Corresponding Application Code in a form
+ suitable for, and under terms that permit, the user to
+ recombine or relink the Application with a modified version of
+ the Linked Version to produce a modified Combined Work, in the
+ manner specified by section 6 of the GNU GPL for conveying
+ Corresponding Source.
+
+ 1) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (a) uses at run time
+ a copy of the Library already present on the user's computer
+ system, and (b) will operate properly with a modified version
+ of the Library that is interface-compatible with the Linked
+ Version.
+
+ e) Provide Installation Information, but only if you would otherwise
+ be required to provide such information under section 6 of the
+ GNU GPL, and only to the extent that such information is
+ necessary to install and execute a modified version of the
+ Combined Work produced by recombining or relinking the
+ Application with a modified version of the Linked Version. (If
+ you use option 4d0, the Installation Information must accompany
+ the Minimal Corresponding Source and Corresponding Application
+ Code. If you use option 4d1, you must provide the Installation
+ Information in the manner specified by section 6 of the GNU GPL
+ for conveying Corresponding Source.)
+
+ 5. Combined Libraries.
+
+ You may place library facilities that are a work based on the
+Library side by side in a single library together with other library
+facilities that are not Applications and are not covered by this
+License, and convey such a combined library under terms of your
+choice, if you do both of the following:
+
+ a) Accompany the combined library with a copy of the same work based
+ on the Library, uncombined with any other library facilities,
+ conveyed under the terms of this License.
+
+ b) Give prominent notice with the combined library that part of it
+ is a work based on the Library, and explaining where to find the
+ accompanying uncombined form of the same work.
+
+ 6. Revised Versions of the GNU Lesser General Public License.
+
+ The Free Software Foundation may publish revised and/or new versions
+of the GNU Lesser General Public License from time to time. Such new
+versions will be similar in spirit to the present version, but may
+differ in detail to address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Library as you received it specifies that a certain numbered version
+of the GNU Lesser General Public License "or any later version"
+applies to it, you have the option of following the terms and
+conditions either of that published version or of any later version
+published by the Free Software Foundation. If the Library as you
+received it does not specify a version number of the GNU Lesser
+General Public License, you may choose any version of the GNU Lesser
+General Public License ever published by the Free Software Foundation.
+
+ If the Library as you received it specifies that a proxy can decide
+whether future versions of the GNU Lesser General Public License shall
+apply, that proxy's public statement of acceptance of any version is
+permanent authorization for you to choose that version for the
+Library.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..28c12a0
--- /dev/null
+++ b/README.md
@@ -0,0 +1,121 @@
+Pure Python OPC UA / IEC 62541 Client and Server Python 2, 3 and pypy .
+http://freeopcua.github.io/, https://github.com/FreeOpcUa/python-opcua
+
+[![Build Status](https://travis-ci.org/FreeOpcUa/python-opcua.svg?branch=master)](https://travis-ci.org/FreeOpcUa/python-opcua)
+[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/FreeOpcUa/python-opcua/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/FreeOpcUa/python-opcua/?branch=master)
+[![Code Coverage](https://scrutinizer-ci.com/g/FreeOpcUa/python-opcua/badges/coverage.png?b=master)](https://scrutinizer-ci.com/g/FreeOpcUa/python-opcua/?branch=master)
+[![Codacy Badge](https://api.codacy.com/project/badge/grade/f7f9a138ee7c4541b3b794b86e61e929)](https://www.codacy.com/app/olivier-roulet/python-opcua)
+[![Code Climate](https://codeclimate.com/github/FreeOpcUa/python-opcua/badges/gpa.svg)](https://codeclimate.com/github/FreeOpcUa/python-opcua)
+
+[![PyPI Oackage](https://badge.fury.io/py/freeopcua.svg)](https://badge.fury.io/py/freeopcua)
+
+OPC UA binary protocol implementation is quasi complete and has been tested against many different OPC UA stacks. API offers both a low level interface to send and receive all UA defined structures and high level classes allowing to write a server or a client in a few lines. It is easy to mix high level objects and low level UA calls in one application.
+
+Most low level code is autogenerated from xml specification, thus adding missing functionnality to client or server is often trivial.
+
+Using Python > 3.4 the dependencies are cryptography and dateutil. If using python 2.7 or pypy < 3 you also need to install enum34, trollius(asyncio), and futures(concurrent.futures), with pip for example.
+
+coveryage.py reports a test coverage of over 90% of code, most of non-tested code is autogenerate code that is not used yet.
+
+Some documentation is available at http://python-opcua.readthedocs.org/en/latest/
+
+A simple GUI client is available: https://github.com/FreeOpcUa/opcua-client-gui
+
+Examples: https://github.com/FreeOpcUa/python-opcua/tree/master/examples
+
+Minimal client example: https://github.com/FreeOpcUa/python-opcua/blob/master/examples/client-minimal.py
+Minimal server example: https://github.com/FreeOpcUa/python-opcua/blob/master/examples/server-minimal.py
+
+A set of command line tools also available: https://github.com/FreeOpcUa/python-opcua/tree/master/tools
+* uadiscover (find_servers, get_endpoints and find_servers_on_network calls)
+* uals (list children of a node)
+* uahistoryread
+* uaread (read attribute of a node)
+* uawrite (write attribute of a node)
+* uasubscribe (subscribe to a node and print datachange events)
+* uaclient (connect to server and start python shell)
+* uaserver (starts a demo OPC UA server)
+
+ tools/uaserver --populate --certificate cert.pem --private_key pk.pem
+
+
+Client: what works:
+* connection to server, opening channel, session
+* browsing and reading attributes value
+* gettings nodes by path and nodeids
+* creating subscriptions
+* subscribing to items for data change
+* subscribing to events
+* adding nodes
+* method call
+* user and password
+* history read
+* login with certificate
+* communication encryption
+* removing nodes
+
+Tested servers: freeopcua C++, freeopcua Python, prosys, kepware, beckoff
+
+Client: what is not implemented yet
+* localized text feature
+* adding some missing modify methods
+* XML protocol
+
+
+Server: what works:
+* creating channel and sessions
+* read/set attributes and browse
+* gettings nodes by path and nodeids
+* autogenerate addres space from spec
+* adding nodes to address space
+* datachange events
+* events
+* methods
+* basic user implementation (one existing user called admin, which can be disabled, all others are read only)
+* encryption
+* certificate handling
+* removing nodes
+* history support for data change and events
+
+Tested clients: freeopcua C++, freeopcua Python, uaexpert, prosys, quickopc
+
+Server: what is not implemented
+* alarms
+* XML protocol
+* views
+* localized text features
+* better securty model with users and password
+* adding some missing modify methods
+
+Server: Running on a Raspberry Pi
+
+Setting up the standard address-space from XML is the most time-consuming step of the startup process which may lead to long startup times on less powerful devices like a Raspberry Pi. By passing a path to a cache-file to the server constructor, a shelve holding the address space will be created during the first startup. All following startups will make use of the cache-file which leads to significantly better startup performance (~3.5 vs 125 seconds on a Raspbery Pi Model B).
+
+# Development
+
+Code follows PEP8 apart for line lengths which should be max 120 characters and OPC UA structures that keep camel case from XML definition.
+
+All protocol code is under opcua directory
+
+- opcua/ua contains all UA structures from specification, most are autogenerated
+- opcua/common contains high level objects and methods used both in server and client
+- opcua/client contains client specific code
+- opcua/server contains server specific code
+- opcua/utils contains some utilities function and classes
+- opcua/tools contains code for command lines tools
+- schemas contains the XML and text files from specification and the python scripts used to autogenerate code
+- tests contains tests
+- docs contains files to auto generate documentation from doc strings
+- examples contains many example files
+- tools contains python scripts that can be used to run command line tools from repository without installing
+
+## Running tests:
+
+python tests.py
+
+## Coverage
+
+coverage run tests.py
+coverage html
+firefox htmlcov/index.html
+
diff --git a/docs/Makefile b/docs/Makefile
new file mode 100644
index 0000000..c727bd7
--- /dev/null
+++ b/docs/Makefile
@@ -0,0 +1,192 @@
+# Makefile for Sphinx documentation
+#
+
+# You can set these variables from the command line.
+SPHINXOPTS =
+SPHINXBUILD = sphinx-build
+PAPER =
+BUILDDIR = _build
+
+# User-friendly check for sphinx-build
+ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
+$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
+endif
+
+# Internal variables.
+PAPEROPT_a4 = -D latex_paper_size=a4
+PAPEROPT_letter = -D latex_paper_size=letter
+ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
+# the i18n builder cannot share the environment and doctrees with the others
+I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
+
+.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage gettext
+
+help:
+ @echo "Please use \`make <target>' where <target> is one of"
+ @echo " html to make standalone HTML files"
+ @echo " dirhtml to make HTML files named index.html in directories"
+ @echo " singlehtml to make a single large HTML file"
+ @echo " pickle to make pickle files"
+ @echo " json to make JSON files"
+ @echo " htmlhelp to make HTML files and a HTML help project"
+ @echo " qthelp to make HTML files and a qthelp project"
+ @echo " applehelp to make an Apple Help Book"
+ @echo " devhelp to make HTML files and a Devhelp project"
+ @echo " epub to make an epub"
+ @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
+ @echo " latexpdf to make LaTeX files and run them through pdflatex"
+ @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
+ @echo " text to make text files"
+ @echo " man to make manual pages"
+ @echo " texinfo to make Texinfo files"
+ @echo " info to make Texinfo files and run them through makeinfo"
+ @echo " gettext to make PO message catalogs"
+ @echo " changes to make an overview of all changed/added/deprecated items"
+ @echo " xml to make Docutils-native XML files"
+ @echo " pseudoxml to make pseudoxml-XML files for display purposes"
+ @echo " linkcheck to check all external links for integrity"
+ @echo " doctest to run all doctests embedded in the documentation (if enabled)"
+ @echo " coverage to run coverage check of the documentation (if enabled)"
+
+clean:
+ rm -rf $(BUILDDIR)/*
+
+html:
+ $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
+ @echo
+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
+
+dirhtml:
+ $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
+ @echo
+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
+
+singlehtml:
+ $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
+ @echo
+ @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
+
+pickle:
+ $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
+ @echo
+ @echo "Build finished; now you can process the pickle files."
+
+json:
+ $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
+ @echo
+ @echo "Build finished; now you can process the JSON files."
+
+htmlhelp:
+ $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
+ @echo
+ @echo "Build finished; now you can run HTML Help Workshop with the" \
+ ".hhp project file in $(BUILDDIR)/htmlhelp."
+
+qthelp:
+ $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
+ @echo
+ @echo "Build finished; now you can run "qcollectiongenerator" with the" \
+ ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
+ @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/PythonOPC-UA.qhcp"
+ @echo "To view the help file:"
+ @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/PythonOPC-UA.qhc"
+
+applehelp:
+ $(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp
+ @echo
+ @echo "Build finished. The help book is in $(BUILDDIR)/applehelp."
+ @echo "N.B. You won't be able to view it unless you put it in" \
+ "~/Library/Documentation/Help or install it in your application" \
+ "bundle."
+
+devhelp:
+ $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
+ @echo
+ @echo "Build finished."
+ @echo "To view the help file:"
+ @echo "# mkdir -p $$HOME/.local/share/devhelp/PythonOPC-UA"
+ @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/PythonOPC-UA"
+ @echo "# devhelp"
+
+epub:
+ $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
+ @echo
+ @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
+
+latex:
+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
+ @echo
+ @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
+ @echo "Run \`make' in that directory to run these through (pdf)latex" \
+ "(use \`make latexpdf' here to do that automatically)."
+
+latexpdf:
+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
+ @echo "Running LaTeX files through pdflatex..."
+ $(MAKE) -C $(BUILDDIR)/latex all-pdf
+ @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
+
+latexpdfja:
+ $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
+ @echo "Running LaTeX files through platex and dvipdfmx..."
+ $(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
+ @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
+
+text:
+ $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
+ @echo
+ @echo "Build finished. The text files are in $(BUILDDIR)/text."
+
+man:
+ $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
+ @echo
+ @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
+
+texinfo:
+ $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
+ @echo
+ @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
+ @echo "Run \`make' in that directory to run these through makeinfo" \
+ "(use \`make info' here to do that automatically)."
+
+info:
+ $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
+ @echo "Running Texinfo files through makeinfo..."
+ make -C $(BUILDDIR)/texinfo info
+ @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
+
+gettext:
+ $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
+ @echo
+ @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
+
+changes:
+ $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
+ @echo
+ @echo "The overview file is in $(BUILDDIR)/changes."
+
+linkcheck:
+ $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
+ @echo
+ @echo "Link check complete; look for any errors in the above output " \
+ "or in $(BUILDDIR)/linkcheck/output.txt."
+
+doctest:
+ $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
+ @echo "Testing of doctests in the sources finished, look at the " \
+ "results in $(BUILDDIR)/doctest/output.txt."
+
+coverage:
+ $(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage
+ @echo "Testing of coverage in the sources finished, look at the " \
+ "results in $(BUILDDIR)/coverage/python.txt."
+
+xml:
+ $(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
+ @echo
+ @echo "Build finished. The XML files are in $(BUILDDIR)/xml."
+
+pseudoxml:
+ $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
+ @echo
+ @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
diff --git a/docs/client.rst b/docs/client.rst
new file mode 100644
index 0000000..c8b9bb2
--- /dev/null
+++ b/docs/client.rst
@@ -0,0 +1,12 @@
+
+OPC-UA Client Class
+=========================================
+
+.. autoclass:: opcua.client.client.Client
+ :members:
+ :undoc-members:
+
+.. autoclass:: opcua.client.ua_client.UaClient
+ :members:
+ :undoc-members:
+
diff --git a/docs/conf.py b/docs/conf.py
new file mode 100644
index 0000000..2618fc8
--- /dev/null
+++ b/docs/conf.py
@@ -0,0 +1,288 @@
+# -*- coding: utf-8 -*-
+#
+# Python OPC-UA documentation build configuration file, created by
+# sphinx-quickstart on Sun May 3 22:03:49 2015.
+#
+# 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.
+
+import sys
+import os
+import shlex
+
+# 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.
+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',
+ 'sphinx.ext.coverage',
+ 'sphinx.ext.viewcode',
+]
+
+# 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 encoding of source files.
+#source_encoding = 'utf-8-sig'
+
+# The master toctree document.
+master_doc = 'index'
+
+# General information about the project.
+project = u'Python OPC-UA'
+copyright = u'2015, Olivier Roulet-Dubonnet'
+author = u'Olivier Roulet-Dubonnet'
+
+# 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 = '1.0'
+# The full version, including alpha/beta/rc tags.
+release = '1.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
+
+# There are two options for replacing |today|: either, you set today to some
+# non-false value, then it is used:
+#today = ''
+# Else, today_fmt is used as the format for a strftime call.
+#today_fmt = '%B %d, %Y'
+
+# List of patterns, relative to source directory, that match files and
+# directories to ignore when looking for source files.
+exclude_patterns = ['_build']
+
+# The reST default role (used for this markup: `text`) to use for all
+# documents.
+#default_role = None
+
+# If true, '()' will be appended to :func: etc. cross-reference text.
+#add_function_parentheses = True
+
+# If true, the current module name will be prepended to all description
+# unit titles (such as .. function::).
+#add_module_names = True
+
+# If true, sectionauthor and moduleauthor directives will be shown in the
+# output. They are ignored by default.
+#show_authors = False
+
+# The name of the Pygments (syntax highlighting) style to use.
+pygments_style = 'sphinx'
+
+# A list of ignored prefixes for module index sorting.
+#modindex_common_prefix = []
+
+# If true, keep warnings as "system message" paragraphs in the built documents.
+#keep_warnings = False
+
+# 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 = 'alabaster'
+
+# 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 themes here, relative to this directory.
+#html_theme_path = []
+
+# The name for this set of Sphinx documents. If None, it defaults to
+# "<project> v<release> documentation".
+#html_title = None
+
+# A shorter title for the navigation bar. Default is the same as html_title.
+#html_short_title = None
+
+# The name of an image file (relative to this directory) to place at the top
+# of the sidebar.
+#html_logo = None
+
+# The name of an image file (within the static path) to use as favicon of the
+# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
+# pixels large.
+#html_favicon = None
+
+# 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']
+
+# Add any extra paths that contain custom files (such as robots.txt or
+# .htaccess) here, relative to this directory. These files are copied
+# directly to the root of the documentation.
+#html_extra_path = []
+
+# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
+# using the given strftime format.
+#html_last_updated_fmt = '%b %d, %Y'
+
+# If true, SmartyPants will be used to convert quotes and dashes to
+# typographically correct entities.
+#html_use_smartypants = True
+
+# Custom sidebar templates, maps document names to template names.
+#html_sidebars = {}
+
+# Additional templates that should be rendered to pages, maps page names to
+# template names.
+#html_additional_pages = {}
+
+# If false, no module index is generated.
+#html_domain_indices = True
+
+# If false, no index is generated.
+#html_use_index = True
+
+# If true, the index is split into individual pages for each letter.
+#html_split_index = False
+
+# If true, links to the reST sources are added to the pages.
+#html_show_sourcelink = True
+
+# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
+#html_show_sphinx = True
+
+# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
+#html_show_copyright = True
+
+# If true, an OpenSearch description file will be output, and all pages will
+# contain a <link> tag referring to it. The value of this option must be the
+# base URL from which the finished HTML is served.
+#html_use_opensearch = ''
+
+# This is the file name suffix for HTML files (e.g. ".xhtml").
+#html_file_suffix = None
+
+# Language to be used for generating the HTML full-text search index.
+# Sphinx supports the following languages:
+# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja'
+# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr'
+#html_search_language = 'en'
+
+# A dictionary with options for the search language support, empty by default.
+# Now only 'ja' uses this config value
+#html_search_options = {'type': 'default'}
+
+# The name of a javascript file (relative to the configuration directory) that
+# implements a search results scorer. If empty, the default will be used.
+#html_search_scorer = 'scorer.js'
+
+# Output file base name for HTML help builder.
+htmlhelp_basename = 'PythonOPC-UAdoc'
+
+# -- 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, 'PythonOPC-UA.tex', u'Python OPC-UA Documentation',
+ u'Olivier Roulet-Dubonnet', 'manual'),
+]
+
+# The name of an image file (relative to this directory) to place at the top of
+# the title page.
+#latex_logo = None
+
+# For "manual" documents, if this is true, then toplevel headings are parts,
+# not chapters.
+#latex_use_parts = False
+
+# If true, show page references after internal links.
+#latex_show_pagerefs = False
+
+# If true, show URL addresses after external links.
+#latex_show_urls = False
+
+# Documents to append as an appendix to all manuals.
+#latex_appendices = []
+
+# If false, no module index is generated.
+#latex_domain_indices = True
+
+
+# -- Options for manual page output ---------------------------------------
+
+# One entry per manual page. List of tuples
+# (source start file, name, description, authors, manual section).
... 178762 lines suppressed ...
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-opcua.git
More information about the Python-modules-commits
mailing list