Repository navigation
v2.2.00
Version 2.2.00 adds to the API of 2.1.00 without removing anything. Code built against 2.1.00 links and compiles unchanged.
The client can now stream the sensors and the FRUs: each one is yielded as soon as it is read, instead of once every one is read. ipmicli sensors and ipmicli fru print them as they arrive.
See Upgrading from 2.1.00 to 2.2.00 for every behavior change.
Highlights
Streaming sensors and FRUs (#235)
sensors().stream()andfrus().stream()return a lazy, sequentialjava.util.stream.Streamthat yields each sensor or FRU as soon as it is read, in the order ofexecute(). Close it with try-with-resources; closing early sends no further command. See Streaming the sensors and Streaming the FRUs.- The selection (
types(),names(),ids()) applies as before: an unselected sensor costs no round trip. - Each element is read as an operation of the client of its own: the request timeout is an inactivity timeout (the SDR walk, then each element), the operations of other threads run between two elements, and a session lost while an element is read is reopened without the elements already yielded being read again.
onSkippedRecord(Consumer<SkippedRecord>)on both requests reports the SDR records the walk skipped, before the first element.execute()calls it too, and still lists them inskippedRecords().execute()is unchanged: it keeps its result type and its overall deadline, and shares one implementation withstream().
Command-line client
ipmicli sensorsandipmicli fruprint each sensor or FRU as it is read.-tbounds the SDR walk then each sensor or FRU, not the whole subcommand.- Behavior change. The columns of the
sensorstable have fixed widths, so that a row is printed before the next sensor is read; a wider cell pushes the rest of its row. Scripts that cut the table at fixed columns must be adjusted;--jsonis the stable format for scripts. - Behavior change. With
-v, the time ofsensorsandfruis printed after their output, as it includes the printing.
Build and documentation
- Checkstyle warnings fail the build, as the GitHub check-run only reports them as neutral. The TODO comments left by Verax in
SensorRecordandFruRecordare removed. - A Latin-1 degree sign in
sensors.mdis fixed.
Pull requests
Full Changelog: v2.1.00...v2.2.00