Releases: pcdshub/pytmc
Releases · pcdshub/pytmc
v2.11.0 (2021-11-15)
Enhancements
- Add
EnumerationTextList
withget_source_code
support.
Previously, these translatable types were missing. - Add actions, methods, and properties to the
pytmc code
output. - Allow for
pytmc code
to work with just a single code object,
rather than requiring the whole project. - Add
pytmc.__main__
such that
python -m pytmc {code,summary} ...
works.
Fixes
- Fix rare bug in
lines_between
function, probably never hit.
Maintenance
- Type annotation cleanups and fixes
- Reduce memory consumption slightly by not caching the xml element
on everyTwincatItem
v2.10.0 (2021-08-09)
Enhancements
- Allow strings to be linked using the
link:
pragma key. Previously,
this was only implemented for numeric scalar values.
v2.9.1: Merge pull request #264 from klauer/doc_291
Enhancements
- Added scale and offset pragma keys for integer and floating point symbols.
Maintenance
- Fixed remaining slaclab references, after the repository was moved to pcdshub.
v2.9.0 (2021-04-02)
Enhancements
- Add git information to the template tool if available.
v2.8.1 (2021-02-10)
Fixes
- Fix issues related to insufficient library dependency checking. Now,
all possible places where library version information is stored will
be checked.
Maintenance
- Refactor the dependency-related twincat items and templating tools
to accomplish the above. - Move the repository landing zone from slaclab to pcdshub to take
advantage of our travis credits. - Redeploy doctr for pcdshub.
v2.8.0 (2020-12-22)
v2.7.7 (2020-11-17)
Fixes
- Fix issue with pass1 autosave not appropriately writing values to the PLC
on IOC startup.
Maintenance
- Regenerate doctr deploy key.
v2.7.6 (2020-10-23)
Fixes
- Added handling for case where pragma is None
- Lower array archive threshold to arrays with fewer than 1000 elements
to prevent our high-rate encoder and power meter readbacks. This is a good
threshold because it represents 1000Hz data with a 1Hz polling rate, a
very typical parameter. - Default APST and MPST fields to "On Change" for waveform PVs. These are
special waveform fields that tell monitors and the archiver when to take an
update, and previously they were set to "Always", causing influxes of data
from static char waveform strings.
Maintenance
- Split dev/docs requirements
- Fix jinja naming
v2.7.5: Merge pull request #218 from klauer/enh_guid
Fixes
- Relaxed end-of-pragma-line handling (any combination of
;
and newline are
all accepted). - Reworked XTI file loading for "devices" and "boxes". This aims to be more
compatible with TwinCAT, which does not always relocate XTI files to be in
the correct hierarchical directory location. It pre-loads all XTI files, and
when the project is fully loaded, it dereferences XTI files based on a key
includingclass
,filename
, and a small PLC-uniqueidentifier
. - Better handling of data types in the project parser. Now supports data type
GUIDs, when available, for data type disambiguation. Note that these are not
always present. - Better handling of references, pointers, and pointer depth.
Development
pytmc db --debug
allows developers to more easily target exceptions
raised when generating database files.- Added more memory layout information for the benefit of other utilities such
asads-async
. Its ADS server implementation in conjunction with pytmc may
be a good source of information regarding PLC memory layout in the future. - Started adding some annotations for clarity. May retroactively add more as
time permits.
v2.7.1: Merge pull request #226 from klauer/rel_2.7.1
Fixes
- Working fix for macro expansion character replacement for linked PVs (
DOL
field). This meanslink: @(MACRO)PV
now works. This was incorrectly fixed in v2.7.0. - Tests will no longer be installed erroneously as a package on the system.
Development
- Tests have been moved into the pytmc package, and with it flake8 compliance.