Recent Releases of lab
lab - v8.4 (2025-02-11)
Lab
- Allow fetching from compressed properties files (Jendrik Seipp).
- Use absolute paths in Slurm scripts to safeguard against
.bashrcchanging directories (Jendrik Seipp). - Use 9 GiB memory limit for Slurm jobs on Tetralith by default (Jendrik Seipp).
- Revise documentation about memory limits (Jendrik Seipp).
- Remove soft memory limit from Slurm jobs that used to guard against an old problem of the cgroup mechanism failing (Jendrik Seipp).
- Remove documentation about obsolete
infai_1partition in Basel (Florian Pommerening). - Add SlurmEnvironment.is_present() method for testing whether the script is run within a given grid environment (Jendrik Seipp).
- Raise minimum supported Python version to 3.8 (Jendrik Seipp).
Downward Lab
- Add
add_compress_exp_dir_step()to example Fast Downward experiment (Jendrik Seipp).
- Python
Published by jendrikseipp about 1 year ago
lab - v8.3 (2024-10-22)
Lab
- Add support for Python 3.12 and 3.13 (Jendrik Seipp).
- Run parser functions in run directories (Jendrik Seipp).
- Open
run.logandrun.errin binary mode to avoid decoding byte strings (Jendrik Seipp).
Downward Lab
- Gracefully handle missing planner exit codes in
driver.log(Jendrik Seipp).
- Python
Published by jendrikseipp over 1 year ago
lab - v8.2 (2024-05-06)
Lab
- Gracefully handle programs that write garbled output by replacing problematic characters (Jendrik Seipp).
- Add parsing errors to properties file directly instead of writing them to stderr (Jendrik Seipp).
- Remove special treatment of Slurm "memory cg" errors, since they don't seem to occur anymore (Jendrik Seipp).
- Raise an error if a run command calls a global Python interpreter directly, because this would bypass the virtual environment (Jendrik Seipp).
Downward Lab
- Group rows in unexplained errors table by error message (Jendrik Seipp).
- Python
Published by jendrikseipp almost 2 years ago
lab - v8.1 (2024-02-28)
Lab
- Allow passing properties files to fetchers directly (Jendrik Seipp).
- Let fetch and report steps log only the total number of unexplained errors instead of printing all of them to stderr (Jendrik Seipp).
- Let parsers print an error if the file for a required pattern is missing. Call parser functions with empty string for missing files (Silvan Sievers).
- Raise an error if a run command calls a Python script directly, because this would bypass the virtual environment (Jendrik Seipp).
- Make HTML table headers sticky (Jendrik Seipp).
Downward Lab
- None.
- Python
Published by jendrikseipp about 2 years ago
lab - v8.0 (2023-10-21)
Lab
- Make parsing a separate experiment step, see FAQs for motivation and upgrade instructions (Jendrik Seipp).
- Python
Published by jendrikseipp over 2 years ago
lab - v7.5 (2023-10-21)
Lab
- Provide support for HTCondor clusters in a third-party repository and add link to docs (Martín Pozo).
- Add documentation for AI Basel's infai_3 partition (Silvan Sievers).
- Don't rely on the existence of the 'runs-00001-00100' dir when fetching results (Jendrik Seipp).
Downward Lab
- None.
- Python
Published by jendrikseipp over 2 years ago
lab - v7.4 (2023-08-18)
Lab
- Require revision_cache parameter in
CachedRevisionconstructor (Jendrik Seipp). - Add subdir option for
CachedRevisionto support solvers at deeper levels of a repo (Jendrik Seipp). - Add
CachedRevision.get_relative_exp_path()method to query where cache artefacts will land in the experiment directory (Jendrik Seipp). - Document
CachedRevisionclass and stabilize its API (Jendrik Seipp). - Only use documented classes and functions in example experiments (Jendrik Seipp).
Downward Lab
- Add subdir option for
CachedFastDownwardRevisionto support Fast Downward checkouts at deeper levels of a repo (Jendrik Seipp). - Make
FastDownwardAlgorithm>,FastDownwardRunandCachedFastDownwardRevisionclasses part of the documented, stable API (Jendrik Seipp). - Describe two main alternatives for running Fast Downward experiments (Jendrik Seipp).
- Python
Published by jendrikseipp over 2 years ago
lab - v7.3 (2023-03-03)
Lab
- Transparently handle xz-compressed properties files (Jendrik Seipp).
- Add CI tests for Python 3.11 (Jendrik Seipp).
Downward Lab
- Adapt code for Matplotlib version 3.7 (Jendrik Seipp).
- Python
Published by jendrikseipp about 3 years ago
lab - v7.2 (2022-10-09)
Lab
- Raise minimum supported Python version to 3.7 (Jendrik Seipp).
- Add support for Python 3.10 (Jendrik Seipp).
- Apply parsing functions in the order in which they were added (Jendrik Seipp).
- For contributors: document pre-commit hook in
CONTRIBUTING.mdfile (Jendrik Seipp).
Downward Lab
- Parse peak memory in anytime search parser (Jendrik Seipp).
- Only store "plannermemory" and "plannertime" attributes for successful planner runs (Jendrik Seipp).
- Add fully customizable example planner experiment without
FastDownwardExperimentclass (Jendrik Seipp). - Show how to group domain directories in example Fast Downward experiment (Jendrik Seipp).
- Python
Published by jendrikseipp over 3 years ago
lab - v7.1 (2022-06-20)
Lab
- Revamp Singularity example experiment: use
runsolverto limit resource usage (Silvan Sievers and Jendrik Seipp).
Downward Lab
- Fix header sizes in HTML reports (Jendrik Seipp).
- Include domains in attribute overview tables even if none of their tasks has an attribute value for all algorithms (Jendrik Seipp).
- Compute "scoreplannertime" and "scoreplannermemory" attributes in planner parser (Jendrik Seipp).
- Only consider files ending with ".pddl" and ".sas" when building suites (Jendrik Seipp).
- Explicitly left-align non-numeric cells to avoid \multicolumn entries in Latex output (Jendrik Seipp).
- Python
Published by jendrikseipp over 3 years ago
lab - v7.0 (2021-10-24)
Lab
- Remove support for Mercurial repositories (Jendrik Seipp).
Downward Lab
- Fix rules for finding domain files for airport domain (Silvan Sievers).
- Add more ticks on y axis in relative plots (Jendrik Seipp).
- Python
Published by jendrikseipp over 4 years ago
lab - v6.5 (2021-09-27)
Lab
- Allow rerunning experiments. This is useful if some runs were never started, for example, due to grid node failures. All runs that have already been started are skipped. For more information see the corresponding FAQ (Jendrik Seipp).
Downward Lab
- Slightly generalize rules for finding domain files, adapted from Fast Downward (Silvan Sievers).
- Python
Published by jendrikseipp over 4 years ago
lab - v6.4 (2021-07-06)
Lab
- Add
TetralithEnvironmentfor the NSC cluster in Linköping (Jendrik Seipp). - Automatically group multiple runs into one Slurm task when the number of runs exceeds the maximum number of Slurm tasks (Jendrik Seipp).
- Add
time_limit_per_taskparameter toSlurmEnvironment(Jendrik Seipp). - Add
cpus_per_taskparameter toSlurmEnvironment(#98, Lucas Galery Käser). - Catch OverflowError when casting large ints to floats (#95, Silvan Sievers).
Downward Lab
- None.
- Python
Published by jendrikseipp over 4 years ago
lab - v6.3 (2021-02-14)
Lab
- Use long Git revision hashes for revision cache. The short ones differ in length between Git versions (Jendrik Seipp).
- Run continuous integration tests for Python 3.9 (Jendrik Seipp).
Downward Lab
- Remove "revision_summary" column from info table (Jendrik Seipp).
- Python
Published by jendrikseipp about 5 years ago
lab - v6.2 (2020-10-20)
Lab
- Reports: round values to desired precision before determining colors (Jendrik Seipp).
- Restructure and extend documentation (Jendrik Seipp).
- For developers: run CI tests on Ubuntu 20.04 in addition to 18.04 (Jendrik Seipp).
Downward Lab
- Allow adding SAS+ files with
FastDownwardExperiment.add_suite()(Jendrik Seipp).
- Python
Published by jendrikseipp over 5 years ago
lab - v6.1 (2020-09-15)
Lab
- Take float precision into account when highlighting table cells (Jendrik Seipp).
- Allow serializing
pathlib.Pathobjects into JSON files (Jendrik Seipp). - For developers: add
.github/CONTRIBUTING.mdfile (Jendrik Seipp). - For developers: separate tests for Singularity and FF example experiments from other tests (Jendrik Seipp).
- For developers: skip
cached_revisiondoctests ifDOWNWARD_REVISION_CACHEvariable is not set (Jendrik Seipp). - For developers: use f-strings in code (Jendrik Seipp).
Downward Lab
- Print number of tasks above and below separator lines in scatter plots (Jendrik Seipp).
- Ignore tasks for which runs have been filtered out in aggregate reports (Jendrik Seipp).
- Fix order of bracketed task counts per domain in table reports (Jendrik Seipp).
- Gracefully handle empty scatter plots (Jendrik Seipp).
- Make
score_*attributes absolute, i.e., include tasks for which not all algorithms have a value in aggregations (Jendrik Seipp).
- Python
Published by jendrikseipp over 5 years ago
lab - v6.0 (2020-04-05)
Lab
- Bump minimum Python version to 3.6.
- Move
CachedRevisionfromdownwardtolabpackage (Thomas Keller). Please note that the interface to the class is experimental and may change in the future. Feedback is welcome! - Let tests fail if any example experiment produces unexplained errors.
Downward Lab
- No changes.
- Python
Published by jendrikseipp almost 6 years ago
lab - v5.5 (2020-03-13)
Lab
- Sort numbers with suffixes (5K, 2M, 8G) and "infinity" correctly in tables.
- Gracefully handle missing "info" or "summary" tables in HTML reports.
- Abort if a function is passed to a
filter_*kwarg. - Abort if a filter checks missing attribute names
(e.g., when passing
filter_algorithmsinstead offilter_algorithm).
Downward Lab
- Add example experiment for running Singularity planner images.
- Python
Published by jendrikseipp almost 6 years ago
lab - v5.4 (2020-03-01)
Lab
- Use newer txt2tags version and remove bundled copy.
- Call parsers with active Python interpreter.
- Don't call deprecated
time.clock()(removed in Python 3.8). - Don't add Lab to
PYTHONPATHinBaselSlurmEnvironment.
Downward Lab
- Revision cache: only delete "misc" and "experiments" dirs if they exist (Maximilian Fickert).
- Python
Published by jendrikseipp about 6 years ago
lab - v4.2 (2019-09-27)
Lab
- Upload to PyPI. Install Lab and Downward Lab with
pip install lab. - Add support for running Lab in Python virtual environments (Guillem).
- Parser scripts don't have to be executable anymore, but they must be Python scripts.
Downward Lab
- Abort if two algorithms are identical, i.e., use the same revision, build config and commandline options.
- Scatter plot report: include tasks for which both algorithms have no data if
show_missing=True.
- Python
Published by jendrikseipp about 6 years ago
lab - v5.0 (2019-12-04)
Lab
- Deprecate support for Python versions 2.7 to 3.5.
- Allow only a single aggregation function for
Attributeobjects. - If there is only a single HTML table, show it when the page loads.
- Remove broken
--log-levelcommand line parameter. You can calltools.configure_logging(logging.DEBUG)to enable debug messages instead. - Pass old hard memory limit when setting soft memory limit.
Downward Lab
Scatter plots:
- Add relative parameter for drawing relative scatter plots.
- Draw points for algorithm pairs with missing values on axis boundaries.
- Allow drawing negative values on linear and symlog axes.
- Remove xscale and yscale parameters in favor of a new scale parameter.
- Fold
PlotReportclass intoScatterPlotReport. - Simplify code by letting Matplotlib compute axis limits automatically.
- Python
Published by jendrikseipp about 6 years ago
lab - v5.1 (2019-12-10)
Lab
- Test Lab on Python 3.8.
- Use active Python version to call run files in local experiments.
Downward Lab
- Support Fast Downward Git repos (Patrick Ferber).
- Python
Published by jendrikseipp about 6 years ago
lab - v5.2 (2020-01-07)
Lab
- Use line buffering for run.err files.
Downward Lab
- Preserve line breaks for error logs in tables.
- If an error log in a table has more than 100 lines, omit surplus lines from the middle of the log.
- Always print the number of runs with unexplained errors when generating any type of report.
- Python
Published by jendrikseipp about 6 years ago
lab - v5.3 (2020-02-03)
Lab
- Format source code with black (https://github.com/psf/black).
- Fix filters: retrieve new run ID from modified runs (Silvan Sievers).
Downward Lab
- Remove call to
rm -f output.sas. Newer Fast Downward versions remove the temporary file automatically. If you want to keep the file, add"--keep-sas-file"to thedriver_options. - Fix ScatterPlotReport: skip None values in
max()computation (Silvan Sievers). - Fix ScatterPlotReport: place diagonal line correctly even if axis scales differ.
- Python
Published by jendrikseipp about 6 years ago