Skip to content

Releases: nathan-weinberg/jeeves

v1.7.1

26 Mar 01:02
33ab3df
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.7...v1.7.1

Jeeves 1.7

21 Apr 18:09
6745c99
Compare
Choose a tag to compare

Changes since Jeeves 1.6

Bug fixes

  • Fixed formatting issue with CODEOWNERS file

Features

  • Added build history tracking functionality
  • Added PAT support for Jira authentication
  • Added OSP17 support

Tech Debt

  • Jeeves now skips build number info when job doesn't have blockers reported
  • Moved regex filter configuration to the config file
  • Created separate requirements.txt file for testing

Dependencies

  • Updated pyyal dependency from 5.4.1 to 6.0
  • Updated jinja2 dependency from 3.0.0 to 3.1.1
  • Updated python-bugzilla from 3.0.2 to 3.2.0
  • Updated jira dependency from 3.0.1 to 3.2.0
  • Updated flake8 dependency from 3.9.2 to 4.0.1
  • Updated pytest dependency from 6.2.2 to 7.1.1
  • Updated pytest-cov dependency from 2.12.0 to 3.0.0

Testing

  • Minor updates to test files

Documentation

  • Minor doc and example file updates

Jeeves 1.6

18 May 14:40
2fba885
Compare
Choose a tag to compare

Changes since Jeeves 1.5

Bug fixes

  • Fixed summary calculation bug introduced in #194
  • Fixed coverage calculation bug introduced in #204
  • Fixed Jira authentication bug introduced in #213

Features

  • Replaced 'remind' flag with generic 'mode' flag to more easily allow for additional run modes in the future
  • Added additional summary metric to show total blocker coverage
  • Added summary metrics for each OSP version
  • Added column to see failed stage in latest completed build
  • Made supported versions a configurable field
  • Added owner name to reminder body
  • Extended filtering mechanism with build cause action filter

Tech Debt/Optimizations

  • Aggregated Bugzilla queries
  • Updated flake8 dependency from 3.8.4 to 3.9.2
  • Updated jinja2 dependency from 2.11.3 to 3.0.0
  • Updated jira dependency from 2.0.0 to 3.0.1
  • Updated pytest dependency from 6.2.2 to 6.2.4
  • Updated pytest-cov dependency from 2.11.1 to 2.12.0

Administration

Documentation

  • Minor doc and example file updates

Jeeves 1.5

04 Mar 20:45
Compare
Choose a tag to compare

Changes since Jeeves 1.4

Bug fixes

  • Fixed bug with columns introduced with Tempest tests column

Features

  • Added column for number of failed Tempest tests
  • Added ability to inject preamble into reports
  • Reports and Reminders now show all composes used in job run not just the first

Tech Debt/Optimizations

  • Tweaked error handling for jobs with no known builds
  • Renamed jira funcs to ticket funcs
  • Removed requirement for Jenkins credentials
  • Moved functionality from report.py, remind.py, and functions.py into jeeves/ subdirectory

Testing

  • Added GitHub dependabot for dependency checking
  • Bumped CI Python version from 3.7 to 3.8
  • Moved all tests from test_functions.py into tests/ directory
  • Moved flake8 config into .flake8.ini file

Documentation

  • Added Linting section to README.md

Jeeves 1.4

15 Oct 16:30
c8c46c3
Compare
Choose a tag to compare

Changes since Jeeves 1.3

Bug fixes

  • Fixed bug where Jeeves would throw error if email config fields weren't present even if running with --no-email flag

Features

  • Added ability to use custom templates for reports
  • Added a "Days Since Last Build" column to the report
  • Added custom build parameter filtering

Style

  • Reworked how blocker data is displayed in reports and reminders
  • Improved report visualization with doughnutpie chart

Tech Debt/Optimizations

  • Changed how compose is parsed from Jenkins API object
  • Added error codes to all system exits

Testing

  • Added framework for additional unit tests
  • Added codecov to CI

Jeeves 1.3

30 Jul 18:20
e1707c1
Compare
Choose a tag to compare

Changes since Jeeves 1.2

Bug fixes

  • Fixed ZeroDivisionError in summary calculation caused when when num_jobs var was 0

Features

  • Reports now feature pie chart of summary
  • Regular expressions can now be used in search field
  • Blockers are now prepended with their status
  • Blockers added to reminders
  • Path to report now printed after saving
  • Jobs triggered by multijobs now supported

Style

  • Added additional comments/docstrings to codebase

Tech Debt/Optimizations

  • Modified shebang line for better compatibility with virtual environments
  • Added templates folder
  • Changed --test flag to --test-email
  • Consolidated report format with a single blockers column
  • Added values to blockers.yaml.example
  • Added Jinja2 macros for blockers
  • Refactored reminder to include all unstable or failing jobs, regardless of blocker status
  • Replaced 'save' run mode with 'no-email'

Jeeves 1.2

29 May 16:59
1dc25cb
Compare
Choose a tag to compare

Changes since Jeeves 1.1

Bug fixes

  • Fixed jira.close() crashing program if no Jira instance existed
  • Fixed program crashing on malformed BZ/Jira IDs

Features

  • Added "reminder" feature
  • Added validations for configuration data
  • Added support for jobs with lcb_result 'ABORTED'

Style

  • Added additional comments/docstrings to codebase

Tech Debt/Optimizations

  • Separated Jeeves functionality into separate Python files
  • Added additional handling/logging for SMTP sessions
  • Changed how Unified jobs are parsed out
  • Added exception handling for Bugzilla/Jira API connections
  • Moved Jenkins API functionality to dedicated function
  • Search fields can now have spaces in between each other

Tests

  • Added tests for get_bugs_set()
  • Added tests for get_jira_set()
  • Added tests for has_blockers()

Documentation

  • Created docs folder
  • Created CONTRIBUTING.md

Jeeves 1.1

03 Apr 20:37
1ff945b
Compare
Choose a tag to compare

Changes since Jeeves 1.0

Bug fixes

  • Changed functionality of how jobs are ordered in report to ensure they were done by descending OSP version
  • Jeeves no longer fails if no blockers are specified
  • Fixed report summary metrics not reflecting contents of the actual generated report
  • Fixed issue where failing to identify compose resulted in job being excluded from report

Features

  • Added support for Unified jobs via ability to skip jobs testing component
  • Added support for sending report to multiple emails
  • Added support for saving reports as HTML files via command line flag
  • Added generic blocker field
  • Added handling for OSP versions with decimals (i.e. 16.1)
  • Added additional handling for builds with "error" states (i.e. "NO_KNOWN_BUILDS", "ERROR")

Style

  • Added flake8 styling enforcement via GitHub Actions
  • Added docstrings to all functions

Optimizations

  • Minimization of API calls to Bugzilla and Jira

Tests

  • Added unit test for parsing OSP version with decimal

Jeeves 1.0

28 Feb 01:13
0903de3
Compare
Choose a tag to compare
Merge pull request #37 from nathan-weinberg/version-check-fix

Changed version checking to be inclusive rather than exclusive