Current Series Release Notes

1.10.0-10

New Features

  • An ‘include_attachments’ boolean option has been added to the db api method, get_test_runs_by_status_for_run_ids(). When enabled, a list of attachments with labels in each of the test runs dictionaries will be returned.

1.10.0

New Features

  • New db api function delete_run_by_uuid, which allows for the deletion of a run specified by a given uuid.

  • New db api function delete_test_runs_by_uuid, which allows for the deletion of all test runs associated with a given run uuid.

  • Add a new CLI flag, –dpi, for subunit2sql-graph to adjust the output image DPI for the generated graphs.

  • add the ability to pass in the arguments ‘run_at’, ‘artifacts’, ‘run_id’, ‘run_meta’, and ‘test_attr_prefix’ to the shell module’s process_results() function via a direct function call, rather than from conf, or via cli flags.

1.9.0

New Features

  • Add a new DB API function, get_tests_by_test_ids, to return a list of Test model objects give an list of test_ids

  • Add a new DB API function get_runs_count() which returns the total number of runs in the DB

  • A new subunit2sql-graph type, test_run_time, is added. This will graph the run time variance for the specified tests as box and wiskers plots.

  • A new DB API function, get_run_times_all_test_runs(), was added. This will return a all the individual durations for sucessful executions for tests.

  • A new option is added to the subunit2sql CLI command, –non_subunit_name, that is used to allow subunit files with mixed content. The default is to raise an error containing the non-subunit byte after it has been read from the stream. By using this new option, the error will not be raised.

1.8.0

New Features

  • A new set of options, match_key and match_value to filter the results to a key value runs with a particular key value metadata pair was added to the DB API function get_run_times_grouped_by_run_metadata_key().

  • A new option is added to the subunit2sql CLI command, –use_run_wall_time/-w, that is used to populate the run_time column with the wall time of the run instead of the default behavior which uses the sum of the individual test execution times

  • A new DB API function, get_run_times_time_series_grouped_by_run_metadata_key(), similar to the existing get_run_times_grouped_by_run_metadata_key() function except that the output is a time series dict.

  • A new CLI / configuration option remove_test_attr_prefix is available to remove the test attribute prefix from test attributes before they are added to the test metadata. The CLI option defaults to False, so that the current behavior is preserved. It is only applicable when used in combination with test_attr_prefix.

Upgrade Notes

  • The test attribute prefix is removed from the test attributes before they are injected into the DB, when using the remove_test_attr_prefix config/CLI option. If metadata was injected before, enabling remove_test_attr_prefix may lead to test metadata duplication, with and without prefix.

1.7.0

New Features

  • A new option get_test_runs_by_test_test_id, most_recent_first, which ensures the response list is ordered by date in descending order.

  • A new DB API function, get_recent_successful_runs_by_run_metadata, was added. This enabled returning a list of recent successful runs with a key value run_metadata pair.

  • A new DB API function, get_runs_by_ids(), was added. This function returns a list of Run objects from a list of run ids.

1.6.0

New Features

  • A new option on get_test_runs_by_status_for_run_ids(), include_run_id, to include the run uuid in the run dicts returned

  • An optional start_date parameter was added to all DB API functions that returned a recent runs list. This includes get_recent_successful_runs(), get_recent_failed_runs(), and get_recent_runs_by_key_value_metadata(). This is to set a starting point for the list of recent runs returned by these methods.

Deprecation Notes

  • Passing in the date as a string in the format “%b %d %Y” to the function get_test_counts_in_date_rage() in the DB API. Instead pass the date in as a datetime object.

Bug Fixes

  • Setting the date as an ISO8601, as indicated by the docs and –help, for the subunit2sql-graph command agg_count will now work correctly. It would previously stack trace. (Story 2000581)

  • Fix the get_ids_for_all_tests API typo and update the docstring. (Story 2000580)

1.5.0

New Features

  • Adds a new DB API method get_recent_failed_runs_by_run_metadata() that will return a list of models.Run objects for recent failures on runs with a specified run_metadata key value pair

Bug Fixes

  • Fix get_test_metadata DB API using test_id to get all metadata.

1.3.0

New Features

  • A new DB API method, get_test_runs_by_status_for_run_ids(), to get tests by status from a list runs

  • A set of optional paramaters on get_test_runs_by_test_test_id() to filter the result set by a run_metadata key value pair

  • A new DB API method, get_run_failure_rate_by_key_value_metadata(), to get the failure rate as a percentage for runs with a particular run_metadata key value pair

1.2.0

New Features

  • A new DB API method to get a list of recent runs with a set of run_metadata

  • A new subunit2sql-graph type run_time_meta

Upgrade Notes

  • Min versions are set for the graph extras requirements

Bug Fixes

  • A hard coded filter used in get_test_run_series() is removed

  • write_subunit will now handle test_runs without any metadata

Other Notes

  • DB API tests now run against all supported backends

  • New tests are added to ensure sqlalchemy models and migrations are in sync

1.1.1

Upgrade Notes

  • A new migration is added to add unique constraints on the metadata tables.

1.1.0

New Features

  • A new CLI option, “run_at” is available on the subunit2sql CLI. This enables setting a specific date and time to use for the run_at column of the run being created. If one is not specified the previous default behavior of using the current time is still used.

1.0.2

Upgrade Notes

  • Contains a DB schema migration to add indexes that were incorrectly dropped as part of 2822a408bdd0

Bug Fixes

  • Fixes performance issue on queries involving the metadata tables by re-adding indexes that were accidently dropped

1.0.0

Prelude

subunit2sql is moving from using a UUID string as the primary key (aka the id column) on all tables to using an integer.

New Features

  • Significant performance improvement especially on the test_runs table which can get very slow depending on the amount of data

Upgrade Notes

  • This migration, 2822a408bdd0, is partially an offline upgrade. It is not safe to write new data to the database while it is running.

  • This migration is quite lengthy in operation it can take several days to run and consumes quite a bit of space, especially with very large databases.

Critical Issues

  • The subunit2sql-graph commands which were previously using a tests.id column to identify a test are changed to use the tests_id column. This is because the switch from UUID to int will break the old mechanism anyway and doing this conversion will protect against future internal changes