diff --git a/docs/changelog.md b/docs/changelog.md index 48eb68ff..995ac1c6 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -2,7 +2,12 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) and [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) format. -## [0.9.2] - 2024-06-24 +## [0.9.3] - 2024-06-06 +### Fixed +- fixed regression with summarizing or creating a table via aggregate_results.yaml and "{record_identifier}" in the results file path +- fix creating object summary when object is an array/list + +## [0.9.2] - 2024-06-03 ### Changed - User can override pipeline name via parameter or config file, otherwise look at output_schema, then fall back on default as last resort. - Allow pipestat to proceed without creating a results file backend IF using "{record_identifier}" in the file path, helps address [Looper #471](https://github.com/pepkit/looper/issues/471) diff --git a/pipestat/_version.py b/pipestat/_version.py index a2fecb45..c5981731 100644 --- a/pipestat/_version.py +++ b/pipestat/_version.py @@ -1 +1 @@ -__version__ = "0.9.2" +__version__ = "0.9.3" diff --git a/pipestat/pipestat.py b/pipestat/pipestat.py index a0dce5ba..661109e2 100644 --- a/pipestat/pipestat.py +++ b/pipestat/pipestat.py @@ -903,8 +903,12 @@ def summarize( def check_multi_results(self): # Check to see if the user used a path with "{record-identifier}" - if self.file and self.cfg["unresolved_result_path"] != self.file: - if "{record_identifier}" in self.cfg["unresolved_result_path"]: + if self.file: + # TODO this needs rework: remove self.cfg["unresolved_result_path"] and just use self.file + if ( + "{record_identifier}" in self.file + or self.cfg["unresolved_result_path"] != self.file + ): # assume there are multiple result files in sub-directories self.cfg["multi_result_files"] = True results_directory = self.cfg["unresolved_result_path"].split( diff --git a/pipestat/reports.py b/pipestat/reports.py index b4ff4c79..feb80f02 100644 --- a/pipestat/reports.py +++ b/pipestat/reports.py @@ -1420,7 +1420,10 @@ def _create_stats_objs_summaries(prj, pipeline_name: str) -> List[str]: if k in all_result_identifiers: all_result_identifiers.remove(k) if v is not "None reported": - sample_reported_objects = {k: dict(v)} + if isinstance(v, list): + sample_reported_objects = {k: v} + else: + sample_reported_objects = {k: dict(v)} else: sample_reported_objects = {k: "None reported"} if record_name in reported_objects: