-
Notifications
You must be signed in to change notification settings - Fork 11
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
Draft: Add PythonSoftIOC record creation directly from PandA #28
Commits on Aug 5, 2021
-
Initial setup and temporary example file for using pythong soft iocs …
…inside this module. The _ioc.py file will not live here forever, it's just easier to run and debug it from outside of the module structure, as it avoids some name clashing errors.
Configuration menu - View commit details
-
Copy full SHA for 5107208 - Browse repository at this point
Copy the full SHA 5107208View commit details
Commits on Aug 6, 2021
-
Initial pass at introspecting the PandA and getting all blocks, field…
…s, and values. Also contains the start of an attempted mapping from (type, subtype) -> function to create record.
Configuration menu - View commit details
-
Copy full SHA for ac68e57 - Browse repository at this point
Copy the full SHA ac68e57View commit details -
Configuration menu - View commit details
-
Copy full SHA for 84f0e62 - Browse repository at this point
Copy the full SHA 84f0e62View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4046d8f - Browse repository at this point
Copy the full SHA 4046d8fView commit details
Commits on Aug 9, 2021
-
Framework in place for creating all records for a block, and an updat…
…e mechanism. Note this doesn't work at the moment - the second GetChanges call (in update()) hangs indefinitely. I don't know why...
Configuration menu - View commit details
-
Copy full SHA for 46823c7 - Browse repository at this point
Copy the full SHA 46823c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 880f627 - Browse repository at this point
Copy the full SHA 880f627View commit details -
Refactor asyncio support on Tom's advice. It now works as expected
Note that the update() method will basically always throw exceptions as there are no records created for the fields that most commonly change.
Configuration menu - View commit details
-
Copy full SHA for 01312da - Browse repository at this point
Copy the full SHA 01312daView commit details
Commits on Aug 10, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 61641ec - Browse repository at this point
Copy the full SHA 61641ecView commit details -
Configuration menu - View commit details
-
Copy full SHA for de58815 - Browse repository at this point
Copy the full SHA de58815View commit details -
Attempting to refactor into an IocRecordFactory class, although this …
…implementation still doesn't let me call Get() successfully.
Configuration menu - View commit details
-
Copy full SHA for 296709d - Browse repository at this point
Copy the full SHA 296709dView commit details
Commits on Aug 11, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 47c052d - Browse repository at this point
Copy the full SHA 47c052dView commit details
Commits on Aug 12, 2021
-
Initial stages of querying field attributes. Still WIP as the data is…
…n't saved anywhere yet.
Configuration menu - View commit details
-
Copy full SHA for d2767da - Browse repository at this point
Copy the full SHA d2767daView commit details -
A working refactor of GetFieldInfo with new data structures to simpli…
…fy a command saving data into FieldInfo It revolves around the _FieldCommandMapping class, which links together a command and the attribute in a FieldInfo class. It also handes converting the strings from PandA into more useful Python types. The FieldInfo class and GetFieldInfo command are being slowly expanded with new attributes for various field types. At some point in the future they'll need to be broken apart.
Configuration menu - View commit details
-
Copy full SHA for e29492a - Browse repository at this point
Copy the full SHA e29492aView commit details -
First pass of capturing all attributes of all applicable fields.
This results in a very bloated FieldInfo structure - I'll probably sub-class it for each Type to trim it down. Also add some notes to _ioc.py.
Configuration menu - View commit details
-
Copy full SHA for 6a1b305 - Browse repository at this point
Copy the full SHA 6a1b305View commit details
Commits on Aug 13, 2021
-
Configuration menu - View commit details
-
Copy full SHA for b840da3 - Browse repository at this point
Copy the full SHA b840da3View commit details -
Minor correction - don't need
capture_labels
for ext_out as they're…… already captured in the `labels` field (which is the logic pymalcolm uses)
Configuration menu - View commit details
-
Copy full SHA for 69606ed - Browse repository at this point
Copy the full SHA 69606edView commit details -
Create and use subclasses of FieldInfo for field-type--specific attri…
…butes. Clear out commented out code and attributes.
Configuration menu - View commit details
-
Copy full SHA for 8b1b184 - Browse repository at this point
Copy the full SHA 8b1b184View commit details -
Start implementing _ioc again, with new FieldInfo structures
Also a lot of other miscellaneous refactoring and comments
Configuration menu - View commit details
-
Copy full SHA for 69e344b - Browse repository at this point
Copy the full SHA 69e344bView commit details
Commits on Aug 16, 2021
-
Configuration menu - View commit details
-
Copy full SHA for ecf16d9 - Browse repository at this point
Copy the full SHA ecf16d9View commit details -
Start a _create_record function to commonise setting the DESC value.
Additional comment on from_instance method.
Configuration menu - View commit details
-
Copy full SHA for 1a8cf3b - Browse repository at this point
Copy the full SHA 1a8cf3bView commit details -
Major refactor of GetFieldInfo to use a similar dict-based approach a…
…s that in _ioc.py.
Configuration menu - View commit details
-
Copy full SHA for e446540 - Browse repository at this point
Copy the full SHA e446540View commit details -
Fix all currently broken tests
NOTE: Something is causing pytest to hang indefinitely after finishing tests, which is causing all kinds of problems. Investigating now...
Configuration menu - View commit details
-
Copy full SHA for b92885c - Browse repository at this point
Copy the full SHA b92885cView commit details -
Remove cause of infinite hang in pytest - the AsyncioDispatcher creat…
…es a new event loop that never gets terminated
Configuration menu - View commit details
-
Copy full SHA for 428bdad - Browse repository at this point
Copy the full SHA 428bdadView commit details
Commits on Aug 17, 2021
-
Extract labels from FieldInfo and put in to suc-classes only.
Fix associated tests. Start work on test_get_fields_parameterized_type to test every type permutation.
Configuration menu - View commit details
-
Copy full SHA for f91f9b9 - Browse repository at this point
Copy the full SHA f91f9b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2dd2386 - Browse repository at this point
Copy the full SHA 2dd2386View commit details -
Make pos_out and ext_out's CAPTURE attributes store in the same way.
Doing this after discussion with Tom, who said that there was a historical reason that these two CAPTURE attributes were treated differently in pymalcolm (which this code is based on), but that difference will be disappearing soon and so they should be treated the same.
Configuration menu - View commit details
-
Copy full SHA for 32ae77f - Browse repository at this point
Copy the full SHA 32ae77fView commit details
Commits on Aug 18, 2021
-
Finish creating records for all types and subtypes.
Add missing cases to GetFieldInfo's dictionary lookup. Note there's a bug somewhere in _make_scalar - PythonSoftIOC complains that the initial_value's type is wrong when it creates the main record, hence it's commented out at the moment.
Configuration menu - View commit details
-
Copy full SHA for 924ff9e - Browse repository at this point
Copy the full SHA 924ff9eView commit details -
Initial attempt at ext_out bits table.
Also identified problems with the `update` method - we can't use a string type to set most of these records. We have to know what type to set, and in the case of mbbi/mbbo records we have to set the index...
Configuration menu - View commit details
-
Copy full SHA for b1e1ffc - Browse repository at this point
Copy the full SHA b1e1ffcView commit details
Commits on Aug 19, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 1e177e5 - Browse repository at this point
Copy the full SHA 1e177e5View commit details -
Use the new _RecordInfo class to track labels and data type conversio…
…n function between creation of the record and the later updating of its values.
Configuration menu - View commit details
-
Copy full SHA for a6609ae - Browse repository at this point
Copy the full SHA a6609aeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7782962 - Browse repository at this point
Copy the full SHA 7782962View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1ed974f - Browse repository at this point
Copy the full SHA 1ed974fView commit details
Commits on Aug 20, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 34f322d - Browse repository at this point
Copy the full SHA 34f322dView commit details -
Check number of items in values dict, and fix logical errors found.
A couple of other TODOs also done.
Configuration menu - View commit details
-
Copy full SHA for c29c30d - Browse repository at this point
Copy the full SHA c29c30dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8db0da4 - Browse repository at this point
Copy the full SHA 8db0da4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 13dbb37 - Browse repository at this point
Copy the full SHA 13dbb37View commit details -
Configuration menu - View commit details
-
Copy full SHA for bf69287 - Browse repository at this point
Copy the full SHA bf69287View commit details
Commits on Aug 23, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 01c7ad1 - Browse repository at this point
Copy the full SHA 01c7ad1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 099fb08 - Browse repository at this point
Copy the full SHA 099fb08View commit details
Commits on Aug 24, 2021
-
Change the "skip_description" flag on GetFieldInfo for "extended_meta…
…data", which allows the second network round trip to be skipped if the flag is False. Tests updated.
Configuration menu - View commit details
-
Copy full SHA for 5ad6cb3 - Browse repository at this point
Copy the full SHA 5ad6cb3View commit details
Commits on Aug 25, 2021
-
Refactor _commands_ext_out_bits to be a generator. This allows the co…
…de setting the fields of FieldInfo to be next to the code that does the Get request. Note Descriptions are currently not retrieved - need to work out how to add them...
Configuration menu - View commit details
-
Copy full SHA for 17afe76 - Browse repository at this point
Copy the full SHA 17afe76View commit details -
A working approach to retrieving descriptions.
Not terribly happy with it as it means we have to replicate the Get(*DESC...) command to all type functions, and set it in every function as well. But it works...
Configuration menu - View commit details
-
Copy full SHA for d069e89 - Browse repository at this point
Copy the full SHA d069e89View commit details -
A better implementation of getting descriptions
This is generic and so will work for all types, regardless of whether we recognise them or not.
Configuration menu - View commit details
-
Copy full SHA for ad05eb8 - Browse repository at this point
Copy the full SHA ad05eb8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 62c5199 - Browse repository at this point
Copy the full SHA 62c5199View commit details -
The "_command" prefix was superfluous
Configuration menu - View commit details
-
Copy full SHA for b37dccb - Browse repository at this point
Copy the full SHA b37dccbView commit details
Commits on Aug 26, 2021
-
Move ioc code to its proper place.
Minor refactoring and renaming included.
Configuration menu - View commit details
-
Copy full SHA for a0b0acb - Browse repository at this point
Copy the full SHA a0b0acbView commit details -
add parameters to create_softioc to make it the main entry point of t…
…he file. Make _check_num_values allow more values than expected, so we are permissive to future PandA server changes. Also misc docs and type hints added.
Configuration menu - View commit details
-
Copy full SHA for ea9ca0d - Browse repository at this point
Copy the full SHA ea9ca0dView commit details
Commits on Aug 27, 2021
-
Enhance GetChanges with
get_multiline
parameter, which if set will ……return multiline table values in new `multiline_values` field of `Changes`
Configuration menu - View commit details
-
Copy full SHA for 017415e - Browse repository at this point
Copy the full SHA 017415eView commit details -
Create block-level records (currently just LABEL) for each block
This commit includes always adding the block number to record names, for consistency regardless of how many blocks there are.
Configuration menu - View commit details
-
Copy full SHA for d043360 - Browse repository at this point
Copy the full SHA d043360View commit details -
8
Configuration menu - View commit details
-
Copy full SHA for 7538938 - Browse repository at this point
Copy the full SHA 7538938View commit details
Commits on Aug 31, 2021
-
Configuration menu - View commit details
-
Copy full SHA for f79514e - Browse repository at this point
Copy the full SHA f79514eView commit details -
Initial attempt at Put'ing data back to PandA fields.
Uses the new _RecordUpdater class, with its one method `update` to handle the logic of converting from EPICS format to PandA format data. Also swap all `param` types and pos_out to be writeable, rather than readable.
Configuration menu - View commit details
-
Copy full SHA for 34e0e6b - Browse repository at this point
Copy the full SHA 34e0e6bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f05dcb - Browse repository at this point
Copy the full SHA 5f05dcbView commit details -
Create GetLine and GetMultiline, to allow being more specific on expe…
…cted data formats without so many asserts. Note that this doesn't completely remove the need for asserts - _execute_commands always thinks the return type is Union[str, List[str]], so we need asserts there. And I didn't change GetState's Get commands as it's ambiguous to me what the data is supposed to be
Configuration menu - View commit details
-
Copy full SHA for 86c501a - Browse repository at this point
Copy the full SHA 86c501aView commit details
Commits on Sep 1, 2021
-
Fully split GetLine and GetMultiline from Get, to fix typing issues w…
…hen used with _execture_commands Also add tests, and correct the GetState Get calls to GetMultiline.
Configuration menu - View commit details
-
Copy full SHA for e807292 - Browse repository at this point
Copy the full SHA e807292View commit details -
Remove extra strings on various asserts, they make the output too ver…
…bose in many places. Not entirely happy with just removing them though - there's a lot of places where there isn't much information at all as to what went wrong...
Configuration menu - View commit details
-
Copy full SHA for 403a334 - Browse repository at this point
Copy the full SHA 403a334View commit details -
Pretty empty at the moment, but serves as a template for future testing.
Configuration menu - View commit details
-
Copy full SHA for 7bb9b5a - Browse repository at this point
Copy the full SHA 7bb9b5aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 641e60a - Browse repository at this point
Copy the full SHA 641e60aView commit details -
Includes retrieving the MAX_LENGTH and FIELDS attributes from the table fields, and a new FieldInfo type to hold the returned info. Includes some (in-progress) refactoring of the values dict so it can hold both str and List[str] items - not clear how best to do this cleanly though. Includes some neatening up of how block and field names are created/manipulated to go between PandA and EPICS conventions.
Configuration menu - View commit details
-
Copy full SHA for 9e076a2 - Browse repository at this point
Copy the full SHA 9e076a2View commit details
Commits on Sep 2, 2021
-
Addtional table info processing during GetFieldInfo
Also changes table record creation to be handled completely separately to other fields - the List[str] was just too incompatible with the [str] type in the values dict.
Configuration menu - View commit details
-
Copy full SHA for e281b83 - Browse repository at this point
Copy the full SHA e281b83View commit details
Commits on Sep 7, 2021
-
Add option to retrieve multivalue data in Base64 format.
Add tests. Rename `TableFieldParams` -> `TableFieldDetails`. Other misc comment changes
Configuration menu - View commit details
-
Copy full SHA for dcf228a - Browse repository at this point
Copy the full SHA dcf228aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 02c0b05 - Browse repository at this point
Copy the full SHA 02c0b05View commit details
Commits on Sep 8, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 799535e - Browse repository at this point
Copy the full SHA 799535eView commit details -
Working code that reads table data and parses it into a numpy array o…
…f values for each column
Configuration menu - View commit details
-
Copy full SHA for 524bec1 - Browse repository at this point
Copy the full SHA 524bec1View commit details -
Enhance GetFieldInfo to retrieve the Descriptions for individual tabl…
…e fields Add a test for table GetFieldInfo support. Could probably do with some more edge case tests.
Configuration menu - View commit details
-
Copy full SHA for a95a9a4 - Browse repository at this point
Copy the full SHA a95a9a4View commit details
Commits on Sep 9, 2021
-
Configuration menu - View commit details
-
Copy full SHA for c6e444e - Browse repository at this point
Copy the full SHA c6e444eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a1a3cf - Browse repository at this point
Copy the full SHA 2a1a3cfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3dc864c - Browse repository at this point
Copy the full SHA 3dc864cView commit details
Commits on Sep 10, 2021
-
Start of table updater, including pack and unpack methods for all fie…
…lds, and a mechanism to only Put data back based on the MODE record. Very messy and introduces a lot of special-case processing, so needs re-architecting somewhat.
Configuration menu - View commit details
-
Copy full SHA for 11ced1f - Browse repository at this point
Copy the full SHA 11ced1fView commit details -
Improve the MODE - SUBMIT processing so it actually works.
Create enum for MODE labels Clean up the Panda/EPICS naming conventions somewhat
Configuration menu - View commit details
-
Copy full SHA for 249c67c - Browse repository at this point
Copy the full SHA 249c67cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 505a898 - Browse repository at this point
Copy the full SHA 505a898View commit details -
Extract packing and unpacking to new class.
TableUpdater created to manage grouped table records based on its MODE record.
Configuration menu - View commit details
-
Copy full SHA for 1e62ffe - Browse repository at this point
Copy the full SHA 1e62ffeView commit details -
Fix the widths of the waveformout record types by casting to/from app…
…ropriate sized types on pack and unpack.
Configuration menu - View commit details
-
Copy full SHA for b9a17ed - Browse repository at this point
Copy the full SHA b9a17edView commit details
Commits on Sep 13, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 4066c60 - Browse repository at this point
Copy the full SHA 4066c60View commit details -
Create update_table mechanism to allow PandA to update EPICS records …
…conditionally on the MODE enum Also many docs and TODOs tidied up
Configuration menu - View commit details
-
Copy full SHA for 21e43e3 - Browse repository at this point
Copy the full SHA 21e43e3View commit details -
Refactor table pack/unpack for consistency and to sort the list of fi…
…elds itself. Alter on_update mechanism to simplify providing alternative ones.
Configuration menu - View commit details
-
Copy full SHA for fe85eaf - Browse repository at this point
Copy the full SHA fe85eafView commit details
Commits on Sep 14, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 7da0d16 - Browse repository at this point
Copy the full SHA 7da0d16View commit details -
Refactor record creation so no write fields set an initial value
Read fields are in records with initial value Param fields are out records with initial value Write fields are out records with no initial value
Configuration menu - View commit details
-
Copy full SHA for ee04d7c - Browse repository at this point
Copy the full SHA ee04d7cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c769f4 - Browse repository at this point
Copy the full SHA 4c769f4View commit details
Commits on Sep 15, 2021
-
Refactor _ensure_block_number_present to only need one parameter.
As per Tom's suggestion in PR review.
Configuration menu - View commit details
-
Copy full SHA for 7abc82f - Browse repository at this point
Copy the full SHA 7abc82fView commit details -
Tom spotted a missing `s` Co-authored-by: Tom Cobb <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 43100fa - Browse repository at this point
Copy the full SHA 43100faView commit details -
Remove retrieving base64 value of tables
Delete associated test
Configuration menu - View commit details
-
Copy full SHA for fdcd060 - Browse repository at this point
Copy the full SHA fdcd060View commit details -
Configuration menu - View commit details
-
Copy full SHA for e029b5f - Browse repository at this point
Copy the full SHA e029b5fView commit details
Commits on Sep 16, 2021
-
It's mostly replacing print() statements, and some exceptions as well. Some DEBUG level messages added, although there could/probably should be far more of them for true debugging purposes. Note that an awful lot of PandA field descriptions, and a lot of field labels, are too long to fit in EPICS so there are a LOT of warnings printed on startup.
Configuration menu - View commit details
-
Copy full SHA for c0a7422 - Browse repository at this point
Copy the full SHA c0a7422View commit details -
Add tests for creating records of most type-subtype pairs
A few special cases that need separate tests have not been completed yet. A few other tests in here as well, for some standalone functions.
Configuration menu - View commit details
-
Copy full SHA for 0ef1718 - Browse repository at this point
Copy the full SHA 0ef1718View commit details
Commits on Sep 17, 2021
-
Create HDFRecordController, allowing HDF5 files to be written
The controller keeps track of all the records used for configuring the data capture, along with records to control the PandA's Arm/Disarm status and one more record to enable/disable capturing. Move ZNAM/ONAM constants into global scope as we now use them in many places. Move setting DESC into the record creation itself, rather than a line afterwards
Configuration menu - View commit details
-
Copy full SHA for 8033398 - Browse repository at this point
Copy the full SHA 8033398View commit details
Commits on Sep 23, 2021
-
Initial attempt at HDF5 task cancelling and restarting - but it doesn…
…'t work! For reasons as yet unknown the first invocation works, but after cancelling the task and creating a new one it no longer runs at all.
Configuration menu - View commit details
-
Copy full SHA for 79a5a9c - Browse repository at this point
Copy the full SHA 79a5a9cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 40ebd0b - Browse repository at this point
Copy the full SHA 40ebd0bView commit details -
Configuration menu - View commit details
-
Copy full SHA for a3494e5 - Browse repository at this point
Copy the full SHA a3494e5View commit details
Commits on Sep 24, 2021
-
Configuration menu - View commit details
-
Copy full SHA for c96e528 - Browse repository at this point
Copy the full SHA c96e528View commit details -
Experiment adding pytest-mock package
This might break all the CI as a lot of markers have appeared again...
Configuration menu - View commit details
-
Copy full SHA for fd3920c - Browse repository at this point
Copy the full SHA fd3920cView commit details -
Revert "Experiment adding pytest-mock package"
This reverts commit fd3920c. Need a different package, and some packages must move out of dev-packages section
Configuration menu - View commit details
-
Copy full SHA for 7a8aa9e - Browse repository at this point
Copy the full SHA 7a8aa9eView commit details -
Add mock package to dev dependencies.
Move packages from dev to prod dependencies, for reasons not entirely clear...
Configuration menu - View commit details
-
Copy full SHA for c57fb8c - Browse repository at this point
Copy the full SHA c57fb8cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f554e9 - Browse repository at this point
Copy the full SHA 4f554e9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 15b40ab - Browse repository at this point
Copy the full SHA 15b40abView commit details -
Tests for the RecordUpdater and TablePacking classes
Up to 64% coverage in ioc.py
Configuration menu - View commit details
-
Copy full SHA for a35d12a - Browse repository at this point
Copy the full SHA a35d12aView commit details
Commits on Sep 27, 2021
-
Configuration menu - View commit details
-
Copy full SHA for f5c302e - Browse repository at this point
Copy the full SHA f5c302eView commit details -
Change the clients to make repeated calls to data() function correctly.
Previously the clients kept a permanent connection to the server's data port, which was never closed. This meant that even if we disabled capturing by stopping the task running the data capture, the PandA was still sending data to the port that just sat in the receive buffer forever. Also when a second call to data() was made, a second "XML FRAMED RAW" instruction was send to the PandA, which is ignored and so never responds as expected.
Configuration menu - View commit details
-
Copy full SHA for eaedafc - Browse repository at this point
Copy the full SHA eaedafcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 754a61a - Browse repository at this point
Copy the full SHA 754a61aView commit details
Commits on Sep 29, 2021
-
Finish Table Scalar records, the Index record, and the mechanism to u…
…pdate their values. Also disable all Puts to In records by default.
Configuration menu - View commit details
-
Copy full SHA for 0b9054e - Browse repository at this point
Copy the full SHA 0b9054eView commit details -
First round to TODO finishing off.
Includes: Changing GetMultiline to only return lists A lot of comment and naming cleanup Get the filesystem's max path and max filename parameters through the OS module Applying DISP=1 to all In records, to enforce read-only behaviour.
Configuration menu - View commit details
-
Copy full SHA for 56cfc1f - Browse repository at this point
Copy the full SHA 56cfc1fView commit details
Commits on Sep 30, 2021
-
- Log any exceptions during startup phase of program - Improve logging in various places - Add validator to pos_mux fields
Configuration menu - View commit details
-
Copy full SHA for 888f994 - Browse repository at this point
Copy the full SHA 888f994View commit details -
Implementing most changes from code review this morning. Includes:
- Specifying a ScalarRecordValue and TableRecordValue to simplify a lot of function signatures - Revamping create_softioc's behaviour - it'll now run forever by design, and looks a bit neater - Handle in_error from GetChanges - records will be marked with a severity=Invalid - Refactored _create_record_info somewhat - Removed all casting of initial_value, that now happens inside _create_record_info
Configuration menu - View commit details
-
Copy full SHA for 29e9d23 - Browse repository at this point
Copy the full SHA 29e9d23View commit details
Commits on Oct 1, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 71d8ed1 - Browse repository at this point
Copy the full SHA 71d8ed1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c9d0dd - Browse repository at this point
Copy the full SHA 5c9d0ddView commit details -
Another round of code review changes. Includes:
- Adding UPPERCASE aliases to HDF5 records - Fix the type of all records for int/float distinction - Many TODO notes for more work - Fix up GetChanges in_error handling - Resolved many TODOs (most were no-ops)
Configuration menu - View commit details
-
Copy full SHA for cabef3d - Browse repository at this point
Copy the full SHA cabef3dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1500c19 - Browse repository at this point
Copy the full SHA 1500c19View commit details
Commits on Oct 4, 2021
-
Add NewType definitions for EpicsName and PandAName
Make all necessary changes to the types of everything to make the type checker happy.
Configuration menu - View commit details
-
Copy full SHA for c759ba0 - Browse repository at this point
Copy the full SHA c759ba0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 40996fa - Browse repository at this point
Copy the full SHA 40996faView commit details -
Resolve issue with interactive_ioc blocking all async processing
Before this change all on_update processing was blocked, as it all tries to use the same dispatcher's loop, which is stuck processing the interactive_ioc call. It's still very ugly, but it works...
Configuration menu - View commit details
-
Copy full SHA for 321e8e7 - Browse repository at this point
Copy the full SHA 321e8e7View commit details
Commits on Oct 5, 2021
-
Mostly complete HDF5 record re-write.
HDF5 writing is now controlled by the Capture and the Arm records. While Capture = 1 and Arm = 1 data will be captured into a file. When Arm = 0 data will stop being captured, but if Arm = 1 again then data will resume being sent to the same file. Still needs more manual, and any automated, testing!
Configuration menu - View commit details
-
Copy full SHA for 940ca3e - Browse repository at this point
Copy the full SHA 940ca3eView commit details -
Also more minor HDF5 bits and pieces
Configuration menu - View commit details
-
Copy full SHA for 1c377b0 - Browse repository at this point
Copy the full SHA 1c377b0View commit details
Commits on Oct 6, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 6600fe2 - Browse repository at this point
Copy the full SHA 6600fe2View commit details -
WIP - working mechanism for starting a new thread and waiting for Cap…
…ture=1 Lots of dead code here, but it works!
Configuration menu - View commit details
-
Copy full SHA for 4693f35 - Browse repository at this point
Copy the full SHA 4693f35View commit details
Commits on Oct 7, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 472393b - Browse repository at this point
Copy the full SHA 472393bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 79fe03f - Browse repository at this point
Copy the full SHA 79fe03fView commit details -
Create the all_values_dict to be a central location for all current P…
…andA values, which will act as the master data. TODO: Read and write to the dict
Configuration menu - View commit details
-
Copy full SHA for 0ce3e9b - Browse repository at this point
Copy the full SHA 0ce3e9bView commit details -
Configuration menu - View commit details
-
Copy full SHA for beac706 - Browse repository at this point
Copy the full SHA beac706View commit details
Commits on Oct 11, 2021
-
First implementation of all_values_dict
The dict will be updated by the regular GetChanges polling, and then used in the _RecordUpdater and _TableUpdater to roll back values if their Puts fail.
Configuration menu - View commit details
-
Copy full SHA for 9aff9e8 - Browse repository at this point
Copy the full SHA 9aff9e8View commit details
Commits on Oct 13, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 65be974 - Browse repository at this point
Copy the full SHA 65be974View commit details -
They're just unnecessary for the reason I used them - the Python device will override any changes from a caput done to an In record.
Configuration menu - View commit details
-
Copy full SHA for 811e198 - Browse repository at this point
Copy the full SHA 811e198View commit details -
Configuration menu - View commit details
-
Copy full SHA for c3ec877 - Browse repository at this point
Copy the full SHA c3ec877View commit details -
Configuration menu - View commit details
-
Copy full SHA for 51c3d79 - Browse repository at this point
Copy the full SHA 51c3d79View commit details -
- Handle exceptions in RecordUpdater and TableUpdater - Remove all ext_out fields, the only record we need to create is for the CAPTURE attribute - Created a _WriteRecordUpdater, for updates to records that don't take a value, they just need to be written
Configuration menu - View commit details
-
Copy full SHA for 983d95a - Browse repository at this point
Copy the full SHA 983d95aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 40a1847 - Browse repository at this point
Copy the full SHA 40a1847View commit details -
- Handle None values in _RecordUpdater - Add logging to HDF5 writing - Change _currently_capturing_record to reflect if a file is being captured - Add required ZNAM&ONAM to records.bi
Configuration menu - View commit details
-
Copy full SHA for 02a89c8 - Browse repository at this point
Copy the full SHA 02a89c8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 59ad21f - Browse repository at this point
Copy the full SHA 59ad21fView commit details
Commits on Oct 14, 2021
-
Refactor the PosMuxValidator into a more generic class
Also complete a couple more TODOs.
Configuration menu - View commit details
-
Copy full SHA for 86cf087 - Browse repository at this point
Copy the full SHA 86cf087View commit details -
Update after most recent Code Review. Includes:
- Resolving many TODOs - Adding many TODOs about HDF5 processing - Move the Arm record out of HDF5 - it should always exist (if there's a PCAP block) - Naming consistency - make sure all record names end in "_name".
Configuration menu - View commit details
-
Copy full SHA for 8588f87 - Browse repository at this point
Copy the full SHA 8588f87View commit details -
Configuration menu - View commit details
-
Copy full SHA for b95598c - Browse repository at this point
Copy the full SHA b95598cView commit details -
Configuration menu - View commit details
-
Copy full SHA for f956580 - Browse repository at this point
Copy the full SHA f956580View commit details
Commits on Oct 15, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 22d93dd - Browse repository at this point
Copy the full SHA 22d93ddView commit details -
Refactor the IOC into its own subpackage.
Move the table support into its own file. - Necessitated creation of the _types.py file for common types between other files - This required creating a TableRecordWrapper, to override the set() method.
Configuration menu - View commit details
-
Copy full SHA for 0548a8e - Browse repository at this point
Copy the full SHA 0548a8eView commit details
Commits on Oct 18, 2021
-
Split HDF5 processing into its own standalone file.
This was much easier than Table support!
Configuration menu - View commit details
-
Copy full SHA for 9efdb80 - Browse repository at this point
Copy the full SHA 9efdb80View commit details -
Various TODOs completed. Includes:
Commands.py: - Fixing naming scheme of methods - Implemented better logging for fields that are known to have no attributes vs completely unknown fields __init__.py: Fixed __all__ definition
Configuration menu - View commit details
-
Copy full SHA for f232f1a - Browse repository at this point
Copy the full SHA f232f1aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6480117 - Browse repository at this point
Copy the full SHA 6480117View commit details -
Misc comments and a couple of new tests.
Committing before refactoring _TableUpdater with some new structure that'll better associate the fields and their associated waveform records - there's no hard link at the moment and its pretty ugly.
Configuration menu - View commit details
-
Copy full SHA for ea6259f - Browse repository at this point
Copy the full SHA ea6259fView commit details -
More closely associate the table fields and the waveform records
Came about as it was too easy to get misaligned fields and records, which results in nonsense data being read/written by the TablePacking class
Configuration menu - View commit details
-
Copy full SHA for 5254c1e - Browse repository at this point
Copy the full SHA 5254c1eView commit details
Commits on Oct 19, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 5abf87e - Browse repository at this point
Copy the full SHA 5abf87eView commit details
Commits on Oct 20, 2021
-
Initial easy tests for hdf_ioc.py.
Note these only run one at a time - due to the records created in the HDF module the records they create clash and cause errors.
Configuration menu - View commit details
-
Copy full SHA for c28e14d - Browse repository at this point
Copy the full SHA c28e14dView commit details -
Minor tweaks to the tests, including one hack into pythonSoftIOC to a…
…llow multiple record creation
Configuration menu - View commit details
-
Copy full SHA for d81c8dc - Browse repository at this point
Copy the full SHA d81c8dcView commit details
Commits on Oct 21, 2021
-
Install aioca into dev packages.
This also comes with an awful lot of other package updates... hope they all work...
Configuration menu - View commit details
-
Copy full SHA for b12702c - Browse repository at this point
Copy the full SHA b12702cView commit details -
Configuration menu - View commit details
-
Copy full SHA for dd11d06 - Browse repository at this point
Copy the full SHA dd11d06View commit details -
Configuration menu - View commit details
-
Copy full SHA for c863cc6 - Browse repository at this point
Copy the full SHA c863cc6View commit details -
Refactor HDF module to take dynamic file names from the caller rather…
… than create them itself. Refactor the command line and IOC usage of it to provide required file names. This meant I could get rid of a lot of the HDF5 code, which is nice.
Configuration menu - View commit details
-
Copy full SHA for 77f06a8 - Browse repository at this point
Copy the full SHA 77f06a8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0a73034 - Browse repository at this point
Copy the full SHA 0a73034View commit details
Commits on Oct 22, 2021
-
Restore start_data memoization, as multiple data sets could be sent w…
…hile Capture is still on.
Configuration menu - View commit details
-
Copy full SHA for 528ad7b - Browse repository at this point
Copy the full SHA 528ad7bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8f95d4a - Browse repository at this point
Copy the full SHA 8f95d4aView commit details -
Configuration menu - View commit details
-
Copy full SHA for c2fedc9 - Browse repository at this point
Copy the full SHA c2fedc9View commit details
Commits on Oct 25, 2021
-
Configuration menu - View commit details
-
Copy full SHA for af85df5 - Browse repository at this point
Copy the full SHA af85df5View commit details -
Heavy refactoring to make a mostly working create_softioc system test.
Only works without update() running at the moment, need to include more data for GetChanges to consume.
Configuration menu - View commit details
-
Copy full SHA for a021e8a - Browse repository at this point
Copy the full SHA a021e8aView commit details -
Configuration menu - View commit details
-
Copy full SHA for bdd9d01 - Browse repository at this point
Copy the full SHA bdd9d01View commit details -
Turn a lot of test data into real data.
Add logger handler to capture exceptions from child process (which are the ones we care most about!) Add extra validation to bit_mux and pos_mux stages
Configuration menu - View commit details
-
Copy full SHA for a9046f0 - Browse repository at this point
Copy the full SHA a9046f0View commit details
Commits on Oct 26, 2021
-
Allow multiprocessing tests to supply code coverage info.
Also couple minor TODOs and comments added/corrected.
Configuration menu - View commit details
-
Copy full SHA for 37465c1 - Browse repository at this point
Copy the full SHA 37465c1View commit details
Commits on Oct 27, 2021
-
Configuration menu - View commit details
-
Copy full SHA for f422db2 - Browse repository at this point
Copy the full SHA f422db2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 09e611b - Browse repository at this point
Copy the full SHA 09e611bView commit details -
Add many more tests, both system and unit, for ioc.
Also fix a bug regarding in_error state the testing threw up. Not sure how much more coverage can sensibly be achieved - pretty much everything that's left are 1-line functions and/or logging messages, which cannot easily be checked for correctness.
Configuration menu - View commit details
-
Copy full SHA for 22389bb - Browse repository at this point
Copy the full SHA 22389bbView commit details
Commits on Oct 28, 2021
-
Last few tests, and fixes for setting alarm severity and status durin…
…g record initialisation. With this we hit 95% code coverage, including 90% on the ioc.py module.
Configuration menu - View commit details
-
Copy full SHA for 26f02ab - Browse repository at this point
Copy the full SHA 26f02abView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8a31b2c - Browse repository at this point
Copy the full SHA 8a31b2cView commit details -
Remove IgnoredException - it's never needed as the RecordUpdater is n…
…ever instantiated for any of the table records as we provide initial values (or they're in records)
Configuration menu - View commit details
-
Copy full SHA for af8b599 - Browse repository at this point
Copy the full SHA af8b599View commit details -
Configuration menu - View commit details
-
Copy full SHA for 762fcf4 - Browse repository at this point
Copy the full SHA 762fcf4View commit details -
num parameter now captures infinitely if =0.
Also misc other tidyup/cleanup bits and pieces.
Configuration menu - View commit details
-
Copy full SHA for d8bf58d - Browse repository at this point
Copy the full SHA d8bf58dView commit details -
Add missing GetFieldInfo tests
Also re-order them to match docs, and add an "ids" parameter for better parameterized test names.
Configuration menu - View commit details
-
Copy full SHA for 9adcf1d - Browse repository at this point
Copy the full SHA 9adcf1dView commit details -
Add checks that the tests passed without logging warnings/errors.
The caplog_workaround fixture is taken from a StackOverflow answer.
Configuration menu - View commit details
-
Copy full SHA for 7b461d3 - Browse repository at this point
Copy the full SHA 7b461d3View commit details
Commits on Oct 29, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 3fb27d0 - Browse repository at this point
Copy the full SHA 3fb27d0View commit details -
Centralise clearing records between runs
Also change order of parameters on IocRecordFactory, to make it inline with the tables and hdf5 classes
Configuration menu - View commit details
-
Copy full SHA for 8074b32 - Browse repository at this point
Copy the full SHA 8074b32View commit details -
Configuration menu - View commit details
-
Copy full SHA for 18bb391 - Browse repository at this point
Copy the full SHA 18bb391View commit details -
Refactor _tables.py so it also creates table-specific records.
Fix tests (in their current places) so they all still pass.
Configuration menu - View commit details
-
Copy full SHA for 9dc2faf - Browse repository at this point
Copy the full SHA 9dc2fafView commit details -
Configuration menu - View commit details
-
Copy full SHA for 685494d - Browse repository at this point
Copy the full SHA 685494dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a6194c - Browse repository at this point
Copy the full SHA 1a6194cView commit details -
Move table-related tests into test_tables.py.
Necessitated moving a lot of fixtures into conftest.
Configuration menu - View commit details
-
Copy full SHA for d3198a9 - Browse repository at this point
Copy the full SHA d3198a9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9877dd8 - Browse repository at this point
Copy the full SHA 9877dd8View commit details -
Fix public v private naming scheme, which wasn't fixed when I first e…
…xtracted all these types to their own files.
Configuration menu - View commit details
-
Copy full SHA for f660a85 - Browse repository at this point
Copy the full SHA f660a85View commit details -
Configuration menu - View commit details
-
Copy full SHA for 30597ef - Browse repository at this point
Copy the full SHA 30597efView commit details
Commits on Jan 13, 2022
-
Configuration menu - View commit details
-
Copy full SHA for 78de13f - Browse repository at this point
Copy the full SHA 78de13fView commit details
Commits on Jan 26, 2022
-
Update to use PythonSoftIOC 4.0.0
Uses longStringOut records, removes now unnecessary code, fixes tests
Configuration menu - View commit details
-
Copy full SHA for 709b460 - Browse repository at this point
Copy the full SHA 709b460View commit details -
Fix bug revealed by pythonSoftIOC update
Looks like invalid initial_value values were just ignored previously. Now we have to ensure we don't pass them to the record creation function
Configuration menu - View commit details
-
Copy full SHA for c199b56 - Browse repository at this point
Copy the full SHA c199b56View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0da0fe5 - Browse repository at this point
Copy the full SHA 0da0fe5View commit details -
Use @pytest_asyncio.fixture to remove warnings
There's still a handful of warnings for this, but they are in dependant modules and so we must wait for them to update
Configuration menu - View commit details
-
Copy full SHA for 7fb8b14 - Browse repository at this point
Copy the full SHA 7fb8b14View commit details
Commits on Feb 14, 2022
-
Also fixes a bug that this update revealed - we tried to write 40 characters to a string record, which would truncate the last character
Configuration menu - View commit details
-
Copy full SHA for 1d73af0 - Browse repository at this point
Copy the full SHA 1d73af0View commit details -
Do various cleanup and refactorings
Includes: - Removing FTVL for record creation - Removing specifying initial_value - Fix a string length bug reveleaed by PythonSoftIOC 4.0.1 - Adding asyncio_mode=auto to fix pytest warnings - Remove workarounds for pythonSoftIOC issue #37 - Removing LOPR as I misunderstood its effect. Replaced with DRVL (and added DRVH) as appropriate - Neatened up many odds and ends
Configuration menu - View commit details
-
Copy full SHA for e3261c3 - Browse repository at this point
Copy the full SHA e3261c3View commit details
Commits on Apr 27, 2022
-
Fix issues when running against actual PandA
Includes truncating value for string record if its too long, and capping DRVH to the maximum value EPICS supports. Add a debug configuration for the IOC module.
Configuration menu - View commit details
-
Copy full SHA for adfc762 - Browse repository at this point
Copy the full SHA adfc762View commit details -
Use longStringIn to remove errors
Some "LABEL" records (e.g. FILTER1:LABEL) are >40 characters, which won't fit into a string record type.
Configuration menu - View commit details
-
Copy full SHA for 3d547ac - Browse repository at this point
Copy the full SHA 3d547acView commit details
Commits on Aug 8, 2022
-
Upgrade softioc version to add blocking
This will mean all records will respect caput with callback, so the caput will not return until all on_update processing is finished. Also fixed up test issues that this update flagged up, regarding asyncio event loops being re-used.
Configuration menu - View commit details
-
Copy full SHA for cc1e062 - Browse repository at this point
Copy the full SHA cc1e062View commit details
Commits on Aug 26, 2022
-
Refactor FieldInfos to have correct type hints
Now type hints will correctly reflect the possible values for all fields Added retrieving description for unknown field type/subtypes Also includes name changes to avoid interfering with the inbuilt min and max functions Rewrote a lot of test framework to be less suseptable to the order of requests changing. We don't care about their order really, only that they're all called the right number of times
Configuration menu - View commit details
-
Copy full SHA for 9609161 - Browse repository at this point
Copy the full SHA 9609161View commit details -
Configuration menu - View commit details
-
Copy full SHA for db34404 - Browse repository at this point
Copy the full SHA db34404View commit details
Commits on Aug 30, 2022
-
Keep a reference to the create_softioc task
Documentation warns that if we don't, the task may get garbage collected at any moment and simply stop executing.
Configuration menu - View commit details
-
Copy full SHA for 8d7ecd4 - Browse repository at this point
Copy the full SHA 8d7ecd4View commit details -
Make child UNITS record update parent's EGU field
Also ensure we set EGU on startup to the same value as the UNITS field
Configuration menu - View commit details
-
Copy full SHA for 35919d5 - Browse repository at this point
Copy the full SHA 35919d5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 02f5c11 - Browse repository at this point
Copy the full SHA 02f5c11View commit details
Commits on Sep 1, 2022
-
Move TIME attributes onto base record
Now the MIN and UNITS attributes are present on the base record (as well as UNITS still having its own record, so it can be set) Updates to the UNITS record are reflected into the .EGU field. Updates to the MIN value are placed in the record's .DRVL field Added tests to confirm setting these values from both PandA and EPICS works as expected.
Configuration menu - View commit details
-
Copy full SHA for f5e5b70 - Browse repository at this point
Copy the full SHA f5e5b70View commit details -
This should have been done as part of commit 9609161
Configuration menu - View commit details
-
Copy full SHA for df7bdd8 - Browse repository at this point
Copy the full SHA df7bdd8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0f91775 - Browse repository at this point
Copy the full SHA 0f91775View commit details
Commits on Sep 5, 2022
-
Prevent infinite cycles of values being set
When a record is updated, it Puts the value to PandA, which then returns the value back to us on our next *CHANGES? call. We must stop the value from being re-set on the record if that value was just Put. This required a lot of rearchitecture. The RecordInfo structure is the only structure that is available in the *CHANGES handler, and so I refactored so that it is available in the RecordUpdater. This presented some circular dependency issues - the RecordUpdater must be created before the record, so the RecordInfo must be created before that, but then the record itself needs to live in the RecordInfo so must be put in at a later time.
Configuration menu - View commit details
-
Copy full SHA for adf2713 - Browse repository at this point
Copy the full SHA adf2713View commit details -
This reduces the number of warnings due to overlong enum labels during startup. We cannot so easily do this for mbbOut records as they can be set through EPICS, and so need to conform to the expected enums.
Configuration menu - View commit details
-
Copy full SHA for 193dbd8 - Browse repository at this point
Copy the full SHA 193dbd8View commit details
Commits on Sep 6, 2022
-
Configuration menu - View commit details
-
Copy full SHA for f1bda40 - Browse repository at this point
Copy the full SHA f1bda40View commit details -
Split out IOC system tests to their own file
Also add test for setting errors on records. At this point there's only one or two lines of functional code that isn't tested - the rest is exception logging
Configuration menu - View commit details
-
Copy full SHA for eeacce2 - Browse repository at this point
Copy the full SHA eeacce2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 98380e5 - Browse repository at this point
Copy the full SHA 98380e5View commit details
Commits on Sep 7, 2022
-
Update the DRVH of the table's INDEX record
When the PandA updates the size of its tables, the DRVH value of the INDEX record will be set to the maximum allowed value Note that this does not happen immediately when data is added from the EPICS side - we rely on the data being pushed to the PandA, and then it being reported back from a *CHANGES request?
Configuration menu - View commit details
-
Copy full SHA for d96dd2f - Browse repository at this point
Copy the full SHA d96dd2fView commit details -
Refactor tests to ensure errors are suppressed
When a channel connection is broken, aioca will issue an exception. By cleaning the cache at all opportunities we suppress the errors.
Configuration menu - View commit details
-
Copy full SHA for 723c7a7 - Browse repository at this point
Copy the full SHA 723c7a7View commit details -
Move the commands map to __post_init__
This is a more sensible place for the data, which still has to be instantiated at runtime, due to needing a reference to the class instance, but makes more sense than creating it inline
Configuration menu - View commit details
-
Copy full SHA for 12259e7 - Browse repository at this point
Copy the full SHA 12259e7View commit details
Commits on Sep 23, 2022
-
This is up from 1Hz. Fixed tests to accomodate this.
Configuration menu - View commit details
-
Copy full SHA for 203f1c9 - Browse repository at this point
Copy the full SHA 203f1c9View commit details -
Make action-write field always send update
The value of the Action field is immaterial, all that matters is that it was set
Configuration menu - View commit details
-
Copy full SHA for e9d0140 - Browse repository at this point
Copy the full SHA e9d0140View commit details -
Configuration menu - View commit details
-
Copy full SHA for f35c313 - Browse repository at this point
Copy the full SHA f35c313View commit details -
Make bit_out records always toggle
The PandA may update bit_out values much faster than our polling period. To represent this, we will toggle the record's value, and reset it on the next loop of update()
Configuration menu - View commit details
-
Copy full SHA for b8b5770 - Browse repository at this point
Copy the full SHA b8b5770View commit details -
Configuration menu - View commit details
-
Copy full SHA for bc0e865 - Browse repository at this point
Copy the full SHA bc0e865View commit details -
Use Analog records, with PREC=0, for uint records
This removes the need to clamp the values to the max of a 32-bit integer Instead we have the full value of a float64 to represent the value, which allows us to represent the full range of PandA values
Configuration menu - View commit details
-
Copy full SHA for 6a30ec7 - Browse repository at this point
Copy the full SHA 6a30ec7View commit details
Commits on Nov 1, 2022
-
Remove command line options that require extras
This means the relevant command line options will only appear if the required extra modules have been installed. Without this, it was possible to run the hdf5 command line but it would just produce an ImportError
Configuration menu - View commit details
-
Copy full SHA for a869aa0 - Browse repository at this point
Copy the full SHA a869aa0View commit details -
Configuration menu - View commit details
-
Copy full SHA for a816ab9 - Browse repository at this point
Copy the full SHA a816ab9View commit details -
Add stub functions for better errors for extras
By providing the functions as hidden, they won't appear in any help output but will run if directly executed. This'll print a more helpful error for users who may be following a guide and not realizing they need to specifically install the extras. Alternative mechanisms like using `logging` don't work well as it means it'll either always or never print the message.
Configuration menu - View commit details
-
Copy full SHA for f09254b - Browse repository at this point
Copy the full SHA f09254bView commit details
Commits on Nov 3, 2022
-
Explicitly add hdf5 dependency to softioc extra
This uses the poorly-documented interpolation feature of config parsing: https://docs.python.org/3/library/configparser.html#interpolation-of-values
Configuration menu - View commit details
-
Copy full SHA for c4d05da - Browse repository at this point
Copy the full SHA c4d05daView commit details