Ignition Scripting API
Project description
ignition-api 7.9
ignition-api is a Python package that allows developers to get code completion for Ignition Scripting API scripting functions in their IDE of choice.
Table of contents
- Prerequisites
- Installation and usage
- Project structure
- Contributing
- Discussions
- Contributors
- License
- Code of conduct
Prerequisites
Before you begin, ensure you have met the following requirements:
- You have installed Python 2.7.18 (download here)
- You are familiar with Ignition 7.9 Scripting Functions
Installation and usage
To use Ignition, you may install it by doing any of the following.
Installing with pip
The preferred method is to install it by running pip
. It requires Python 2.7.18.
python2 -m pip install ignition-api==7.9.20
This will install it as package to your Python installation, which will allow you to call Ignition Scripting functions from Python's REPL, and get code completion using an IDE such as PyCharm and Visual Studio Code.
$ python2
Python 2.7.18 (default, Nov 9 2020, 16:23:15)
[GCC Apple LLVM 12.0.0 (clang-1200.0.32.21)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from __future__ import print_function
>>> import system.util
>>> print(system.util.__doc__)
Utility Functions.
The following functions give you access to view various Gateway and
Client data, as well as interact with other various systems.
>>> system.util.beep()
>>> quit()
And to uninstall:
python2 -m pip uninstall ignition-api
Downloading from releases
You may also download the code targeted to your desired version from the releases page and add it as a dependency to your scripting project.
Using as a dependency in PyCharm
To include ignition-api as a dependency in PyCharm, you will need to attach it to your project.
- Clone the repo or download from releases
- With your project open where you want to include
ignition-api
, navigate toFile > Open
and select theignition-api
project folder - Choose
Attach
when prompted - Under the
ignitition-api
project folder, right-click on thesrc/
folder and chooseMark Directory as > Sources Root
Project structure
Packages
Ignition consists of the following packages:
- com.inductiveautomation
- java
- javax
- org
- system
com.inductiveautomation
This package includes supporting Inductive Automation's classes and interfaces. For more information, see documentation here: http://files.inductiveautomation.com/sdk/javadoc/ignition79/795/index.html.
java/javax
These packages include supporting Java classes and interfaces. For more information, see documentation here: https://docs.oracle.com/javase/8/docs/api/index.html.
org.python
This package includes supporting Jython classes and interfaces. For more information, see documentation here: https://www.javadoc.io/doc/org.python/jython-standalone/2.5.3/index.html.
system
This package includes all Ignition Scripting Functions. For more information, see documentation here: https://docs.inductiveautomation.com/display/DOC79/Scripting+Functions.
Contributing
See CONTRIBUTING.md.
Discussions
Feel free to post your questions and/or ideas at Discussions.
Contributors
Thanks to everyone who has contributed to this project.
Up-to-date list of contributors can be found here.
License
See the LICENSE.
Code of conduct
This project has adopted the Microsoft Open Source Code of Conduct.
Changelog
All notable changes to this project will be documented in this file.
[7.9.20] - 2022-04-14
Bug Fixes
- update type hint for
html
arg (#17) (8c9666d)
CI
- update build action (#6) (9a09177)
- add dependabot (#7) (b338831)
- use
deps
scope for pre-commit.ci (#10) (921f20b)
Documentation
- use pepy.tech for counting downloads (#12) (1536717)
- add link to org CONTRIBUTING.md (#13) (d9738ce)
Miscellaneous Tasks
- update
setup.cfg
to includeCHANGELOG.md
(#5) (87e2edd)
Build
- bump actions/setup-python from 2 to 3 (#8) (acac6f3)
- bump actions/checkout from 2 to 3 (#9) (4e79b47)
- bump .pylintrc from 2.12.2 to 2.13.2 (#11) (021ddde)
- pre-commit autoupdate (#14) (2041bb4)
- update pylint configuration (#15) (0abbfa7)
[7.9.19] - 2022-03-16
CI
- fix pypi upload workflow (#3) (b870c17)
Documentation
Miscellaneous Tasks
Refactor
- Sourcery refactored main branch (#1) (b32da16)
Styling
- format
pyproject.toml
withpyproject-fmt
(164f2a7)
Build
[7.9.18.post7] - 2022-01-21
Miscellaneous Tasks
- add
cliff.toml
file for changelog generation (f77ca45) - format setup.cfg file (3f920ba)
- update
.pylintrc
; removeunused-import
(3250737)
Refactor
Styling
- tell
isort
to sort using Python 2.7 (e80b077)
Build
Revert
- undo
java.lang.String
(75d3bb8)
[7.9.18.post6] - 2021-11-30
Bug Fixes
- add
String
type definition (a3cae41)
Miscellaneous Tasks
Build
- update
pydocstyle
hook (11b9b23)
[7.9.18.post5] - 2021-11-29
Features
- add
String
type (b0f9d2b)
Miscellaneous Tasks
Build
- update
.pylintrc
(00cd0a4)
[7.9.18.post4] - 2021-11-26
Bug Fixes
- install now requires typing (776b7e6)
Miscellaneous Tasks
- release 7.9.18.post4 (cdb5fe4)
[7.9.18.post3] - 2021-11-23
Bug Fixes
CI
- update PyPI upload workflow (82cb4c5)
- use Python 2.7 for PyPI workflow (35403d1)
- switch to Python 3.10 (39c172f)
Documentation
- fix markdownlint errors (ef78dec)
Features
- improve
date.format
(45cb322) - the triumphant return of
print_function
(468d1f9)- BREAKING: Python versions below 2.7.18 are no longer supported
- remove deprecated functions (5fba371)
- BREAKING:
export*
functions have been deprecated in favor ofsystem.dataset.export*
functions
- BREAKING:
- add type hints on all
system
functions (001ea23)- BREAKING: Python versions below 2.7.18 are no longer supported
Miscellaneous Tasks
Refactor
- implement informal interfaces (3fddb8c)
Buil
- add
build-system
settings (0db599a)
Build
- update pylintrc (d7765b5)
- pre-commit autoupdate (e0c4c27)
- pre-commit autoupdate (dc91907)
- deprecate Python 2.7 (6f0b218)
- pre-commit autoupdate (abff7c0)
- pre-commit autoupdate (74acab1)
- switch to static metadata (a682cc8)
- update ignored files/directories (5027caa)
- pre-commit autoupdate (18ae0e6)
[7.9.18.post2] - 2021-09-21
Features
- make PyDataSet iterable (1c8c737)
[7.9.18.post1] - 2021-09-20
CI
- disable consider-using-f-string (213bf54)
Documentation
- update Python version (135a60b)
Features
- add setup.py (9b1231c)
- allow installation on 2.5, 2.6, and 2.7 (b412539)
- add
com
package topip
release (40bc4ae)
Refactor
-
add pylint (d011959)
- BREAKING: Since Ignition 7.9 relies on Jython 2.5.3, this project was adapted to conform with Python 2.5.6
Replace
from __future__ import print_function
withimport pprint
Addfrom __future__ import with_statement
where required Remove features not available in Python 2.5 -
allow any import level for winsound (9a8ebdf)
-
add
com
package (cb560d8) -
use pprint instead of print (9affae0)
Styling
- fix pylint found errors (3f72e72)
Build
- pre-commit autoupdate (6748c8a)
- update black from 21.6b0 to 21.7b0 (fd9d4c2)
- pre-commit autoupdate (6395266)
- pre-commit autoupdate (4e38db3)
- add pylint workflow (fec6797)
- exclude setup.py (c82562c)
- skip pylint (8c8f4b1)
- pre-commit autoupdate (549c5a2)
[7.9.18] - 2021-07-08
Documentation
- update the copyright notice date (031b99c)
- update README.md (eeec87a)
- update README.md (cfe6325)
- replaced datetime for Date (7fd70f9)
Features
- bump flake8 to 3.9.1 (6325547)
- update black 20.8b1 -> 21.4b0 (65135f0)
- update black 21.4b0 -> 21.4b1 (dfba3b3)
- update black 21.4b1 -> 21.4b2 (1b154a1)
- update black 21.4b2 -> 21.5b0 (716dfb6)
- update flake8 3.9.1 -> 3.9.2 (bf9a3c0)
- update black 21.5b0 -> 21.5b1 (5a9c6f2)
Miscellaneous Tasks
Refactor
- java.util.Date (d4af597)
Styling
- :art: tell isort to use Python27 (1e384ea)
- remove blank line (ceb9f73)
- update docstrings (679acbc)
- change from single quotes to double quotes (2a21c62)
Build
- bump flake8 and isort to latest version (f3c62cf)
- rearrange hooks (19525e5)
- add pydocstyle hook (0891484)
- remove D209 from ignored codes (853cef5)
- remove E211 and E99 from ignore (fdf0593)
- remove W503 from ignore (01e6176)
- update black 21.5b1 → 21.5b2 (6be0041)
- pre-commit autoupdate (690c569)
- pre-commit autoupdate (14fec8d)
- check max complexity (fc3d199)
[7.9.17] - 2021-02-13
Features
- add flake8 to pre-commit hooks (67fca3a)
Miscellaneous Tasks
Styling
- Black (0bcc515)
- flake8, isort (27ecd6e)
- add flake8 and isort badges (2fc085d)
- :art: make isort compatible with black (ecad888)
[7.9.14] - 2020-09-01
7.9
- Code cleanup. (dd2daeb)
All
- Updated copyright legend. (31c53f7)
Db
- Added getConnectionInfo and setDataSeourceEnabled. (db6dfd6)
File
- Fixed docstring. (60baeed)
Incendium.gui
- added warning, modified error. Added java.lang, and javax.swing packages. Opting for JOptionPane over Ignition's own errorBox and warningBox. (ff1c03e)
- Modified info method in order to use JOptionPane. (487231e)
- Added input function. (0d8320a)
Incendium.util
- Added get_timer (d9b0a70)
Java
- Updated copyright legend. (b7a2f31)
Javax
- Updated copyright legend. (ab859d3)
Lang
- Throwable now inherits from BaseException. (24474c2)
System
- Updated copyright legend. (7b4852d)
Tag
- Update docstring. (f5e3cbc)
- Code clean-up. (fb53d8e)
- Added all missing functions. (9be6bb3)
- Added optional arguments to functions and updated docstring. (dc42ab9)
Util
- Added argument to winsound.MessageBeep funciton call. (d06c492)
Validate_form
- For numbers and collections we should compare to None. (7a07ba5)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ignition_api-7.9.20-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2de6b6c20647efec5d0a527956ad6c87922ace0f8a3676762b8b4459d3ca5fa |
|
MD5 | 1ca608bef6f812aad3701623828c14be |
|
BLAKE2b-256 | f751ab43ddd5f388e0ff58f42aca6e1ae5cbc041716e86e239cd797d040c0277 |