diff --git a/neps/api.py b/neps/api.py index 196e371d..6be520ad 100644 --- a/neps/api.py +++ b/neps/api.py @@ -247,7 +247,19 @@ def run( if settings.post_run_summary: assert settings.root_directory is not None - post_run_csv(settings.root_directory) + config_data_path, run_data_path = post_run_csv(settings.root_directory) + logger.info( + "The post run summary has been created, which is a csv file with the " + "output of all data in the run." + f"\nYou can find a csv of all the configuratins at: {config_data_path}." + f"\nYou can find a csv of results at: {run_data_path}." + ) + else: + logger.info( + "Skipping the creation of the post run summary, which is a csv file with the " + " output of all data in the run." + "\nSet `post_run_summary=True` to enable it." + ) def _run_args( diff --git a/neps/status/status.py b/neps/status/status.py index e2f43eb6..cb6e0d18 100644 --- a/neps/status/status.py +++ b/neps/status/status.py @@ -347,13 +347,18 @@ def _save_data_to_csv( raise RuntimeError(f"Error during data saving: {e}") from e -def post_run_csv(root_directory: str | Path) -> None: +def post_run_csv(root_directory: str | Path) -> tuple[Path, Path]: """Create CSV files summarizing the run data. Args: root_directory: The root directory of the NePS run. + + Returns: + The paths to the configuration data CSV and the run data CSV. """ csv_config_data, csv_rundata, csv_locker = _initiate_summary_csv(root_directory) + csv_config_data = Path(csv_config_data).absolute().resolve() + csv_rundata = Path(csv_rundata).absolute().resolve() df_config_data, df_run_data = _get_dataframes_from_summary( root_directory, @@ -369,6 +374,7 @@ def post_run_csv(root_directory: str | Path) -> None: df_config_data, df_run_data, ) + return csv_config_data, csv_rundata # TODO(eddiebergman): This function name is misleading as it doesn't get anything.