tree 12591c97100df5979ca28171bb2da42211817b4d
parent 6e7330d856f58b7c483ae08823e8a52015dcb6b1
author Andrew Geissler <openbmcbump-github@yahoo.com> 1652115022 +0000
committer Andrew Geissler <andrew@geissonator.com> 1652137918 +0000

entity-manager: srcrev bump 0a8de74a19..88333fe091

Andrew Jeffery (26):
      PerformScan: allInterfaces is a subtree result
      PerformScan: Promote dbusObject from pointer to reference
      PerformScan: Make getRecordName() static
      PerformScan: Drop redundant assignment into system configuration
      PerformScan: Lift name key update out of the for-loop
      PerformScan: Rename ifacesIt to objectIt
      PerformScan: Extract pruneRecordExposes()
      PerformScan: Rename fromLastJson in pruneRecordExposes()
      PerformScan: Return early from pruneRecordExposes()
      PerformScan: Flip condition to avoid continue in pruneNullExposes()
      PerformScan: Concurrent modification of container needs visibility
      PerformScan: Reduce indentation with early continue for absent record
      PerformScan: Untemplated record name allows early continue
      PerformScan: Avoid `continue` when updating unused indexes
      PerformScan: Extract recordDiscoveredIdentifiers()
      PerformScan: Drop hasTemplateName from recordDiscoveredIdentifiers()
      PerformScan: Rename fromLastJson in recordDiscoveredIdentifiers()
      PerformScan: Reorder operations when processing old configuration
      PerformScan: Searching with 'recordName' means we found a 'record'
      PerformScan: Un-nest continue by merging conditionals
      PerformScan: Tidy condition using nlohmann::json::is_array()
      PerformScan: Split conditionals to improve readability
      PerformScan: Bind and DisableNode Expose directives are actions
      PerformScan: Extract extractExposeActionRecordNames()
      PerformScan: Use early returns in extractExposeActionRecordNames()
      PerformScan: Use nlohmann::json::is_{string,array}() for type checks

Jan Sowinski (1):
      Add PCA9542 and PCA9846 support

Jiaqing Zhao (1):
      Add PCA984x mux/switch support

Michal Bielecki (1):
      Add support for ADS7828 I2C A/D Converter.

Change-Id: I8e925adca192296dac4bb80bfe79f7769016d55d
Signed-off-by: Andrew Geissler <openbmcbump-github@yahoo.com>
