Skip to content

Releases: fedora-infra/bodhi

2.8.0

20 Jun 20:08
Compare
Choose a tag to compare

Special instructions

  • There is a new setting, ci.required that defaults to False. If you wish to use CI, you must
    add a cron task to call the new bodhi-babysit-ci CLI periodically.

Deprecation

The /search/packages API call has been deprecated.

New Dependencies

  • Bodhi now uses Bleach to sanitize markdown input from the user.
    python-bleach 1.x is a new dependency in this release of Bodhi.

Features

  • The API, fedmsg messages, bindings, and CLI now support non-RPM content (#1325, #1326, #1327, #1328). Bodhi now knows about Fedora's new module format, and is able to handle everything they need except publishing (which will appear in a later release). This release is also the first Bodhi release that is able to handle multiple content types.
  • Improved OpenQA support in the web UI (#1471).
  • The type icons are now aligned in the web UI (4b6b759 and d094032).
  • There is now a man page for bodhi-approve-testing (cf8d897).
  • Bodhi can now automatically detect whether to use DDL table locks if BDR is present during migrations (059b5ab).
  • Locked updates now grey out the edit buttons with a tooltip to make the lock more obvious to the user (#1492).
  • Users can now do multi-line literal code blocks in comments (#1509).
  • The web UI now has more descriptive placeholder text (1a7122c).
  • All icons now have consistent width in the web UI (6dfe6ff).
  • The front page has a new layout (6afb6b0).
  • Bodhi is now able to use Pagure and PDC as sources for ACL and package information (5955186).
  • Bodhi's configuration loader now validates all values and centralizes defaults. Thus, it is now possible to comment most of Bodhi's settings file and achieve sane defaults. Some settings are still required, see the default production.ini file for documentation of all settings and their defaults. A few unused settings were removed (#1488, #1489, and 263b7b7).
  • The web UI now displays the content type of the update (#1329).
  • Bodhi now has a new ci.required setting that defaults to False. If enabled. updates will gate based on Continuous Integration test results and will not proceed to updates-testing unless the tests pass (0fcb73f).
  • Update builds are now sorted by NVR (#1441).
  • The backend code is reworked to allow gating on resultsdb data and requirement validation performance is improved (#1550).
  • Bodhi is now able to map distgit commits to Builds, which helps map CI results to Builds. There is
    a new bodhi-babysit-ci CLI that must be run periodically in cron if ci.required is
    True (ae01e5d).

Bugs

  • A half-hidden button is now fully visible on mobile devices (#1467).
  • The signing status is again visible on the update page (#1469).
  • The edit update form will not be presented to users who are not auth'd (#1521).
  • The CLI --autokarma flag now works correctly (#1378).
  • E-mail subjects are now shortened like the web UI titles (#882).
  • The override editing form is no longer displayed unless the user is logged in (#1541).

Development improvements

  • Several more modules now pass pydocstyle PEP-257 tests.
  • The development environment has a new bshell alias that sets up a usable Python shell, initialized for Bodhi.
  • Lots of warnings from the unit tests have been fixed.
  • The dev environment cds to the source folder upon vagrant ssh.
  • There is now a bfedmsg development alias to see fedmsgs.
  • A new bresetdb development alias will reset the database to the same state as when vagrant up completed.
  • Some unused code was removed (afe5bd8).
  • Test coverage was raised significantly, from 85% to 88%.
  • The development environment now has httpie by default.
  • The default Vagrant memory was raised (#1588).
  • Bodhi now has a Jenkins Job Builder template for use with CentOS CI.
  • A new bdiff-cover development alias helps compare test coverage in current branch to the develop branch, and will alert the developer if there are any lines missing coverage.

Release contributors

The following developers contributed to Bodhi 2.8.0:

  • Ryan Lerch
  • Ralph Bean
  • Pierre-Yves Chibon
  • Matt Prahl
  • Martin Curlej
  • Adam Williamson
  • Kamil Páral
  • Clement Verna
  • Jeremy Cline
  • Matthew Miller
  • Randy Barlow

2.7.0

01 Jun 21:44
Compare
Choose a tag to compare

Features

  • The bodhi CLI now supports editing an override (#1049).
  • The Update model is now capable of being associated with different Build types (#1394).
  • The bodhi CLI now supports editing an update using the update alias (#1409).
  • The web UI now uses Fedora 26 in its example text instead of Fedora 20 (ec0c619a).
  • The Build model is now polymorphic to support non-RPM content (#1393).

Bugs

  • Correctly calculate days to stable for critical path updates (#1386).
  • Bodhi now logs some messages at info instead of error (#1412).
  • Only show openQA results since last update modification (#1435).

Development improvements

  • SQL queries are no longer logged by default.
  • fedmsgs are now viewable in the development environment.
  • There is a new test to ensure there is only one Alembic head.
  • There is a new bash alias, bteststyle, that runs the code style tests.
  • The BuildrootOverride model is now documented.

Release contributors

The following contributors submitted patches for Bodhi 2.7.0:

  • Clement Verna
  • Jeremy Cline
  • Bianca Nenciu
  • Caleigh Runge-Hottman
  • Adam Williamson
  • Robert Scheck
  • Ryan Lerch
  • Randy Barlow

2.6.2

05 May 20:40
Compare
Choose a tag to compare

This release focused on CLI authentication issues. One of the issues requires users to also update
their python-fedora installation to at least 0.9.0.

Bugs

  • The CLI is now able to appropriately handle expiring sessions (#1474).
  • The CLI now only prompts for a password when needed (#1500).
  • Don't traceback if the user doesn't use the --user flag (#1505).

2.6.1

01 May 22:03
Compare
Choose a tag to compare

This release fixes 4 issues with three commits.

Bugs

  • Web requests now use the correct session for transactions (#1470 and #1473).
  • fedmsgs are now converted to dictionaries before queuing (#1472).
  • Error messages are still logged if rolling back the transaction raises an Exception (#1475).

Release contributors

The following contributors submitted patches for Bodhi 2.6.1:

  • Jeremy Cline
  • Randy Barlow

2.6.0

24 Apr 16:58
Compare
Choose a tag to compare

Special instructions

  1. The database migrations have been trimmed in this release. To upgrade to this version of Bodhi
    from a version prior to 2.3, first upgrade to Bodhi 2.3, 2.4, or 2.5, run the database
    migrations, and then upgrade to this release.
  2. Bodhi cookies now expire, but cookies created before 2.6.0 will not automatically expire. To
    expire all existing cookies so that only expiring tickets exist, you will need to change
    authtkt.secret to a new value in your settings file.

Dependency adjustments

  • zope.sqlalchemy is no longer a required dependency (#1414).
  • WebOb is no longer a directly required dependency, though it is still indirectly required through
    pyramid.

Features

  • The web UI footer has been restyled to fit better with the new theme (#1366).
  • A link to documentation has been added to the web UI footer (#1321).
  • The bodhi CLI now supports editing updates (#937).
  • The CLI's USERNAME environment variable is now documented, and its --user flag is
    clarified (28dd380).
  • The icons that we introduced in the new theme previously didn't have titles.
    Consequently, a user might not have know what these icons meant. Now if a user
    hovers over these icons, they get a description of what they mean, for
    example: "This is a bugfix update" or "This update is in the critial path"
    (#1362).
  • Update pages with lots of updates look cleaner (#1351).
  • Update page titles are shorter now for large updates (#957).
  • Add support for alternate architectures to the MasherThread.wait_for_sync() (#1343).
  • Update lists now also include type icons next to the updates (5983d99).
  • Testing updates use a consistent label color now (6233064).
  • openQA results are now displayed in the web ui (450dbaf).
  • Bodhi cookies now expire. There is a new authtkt.timeout setting that sets Bodhi's session
    lifetime, defaulting to 1 day.

Bugs

  • Comments that don't carry karma don't count as a user's karma vote (#829).
  • The web UI now uses the update alias instead of the title so editors of large updates can click
    the edit button (#1161).
  • Initialize the bugtracker in main() instead of on import so that docs can be built without
    installing Bodhi (#1359).
  • Make the release graph easier to read when there are many datapoints (#1172).
  • Optimize the JavaScript that loads automated test results from ResultsDB (#983).
  • Bodhi's testing approval comment now respects the karma reset event (#1310).
  • pop and copy now lazily load the configuration (#1423).

Development improvements

  • A new automated PEP-257 test has been introduced to enforce docblocks across the codebase.
    Converting the code will take some time, but the code will be expanded to fully support PEP-257
    eventually. A few modules have now been documented.
  • Test coverage is now 84%.
  • The Vagrant environment now has vim with a simple vim config to make sure spaces are used instead
    of tabs (#1372).
  • The Package database model has been converted into a single-table inheritance model, which will
    aid in adding multi-type support to Bodhi. A new RpmPackage model has been added (#1392).
  • The database initialization code is unified (e9a2604).
  • The base model class now has a helpful query property (8167f26).
  • .pyc files are now removed when running the tests in the dev environment (9e9adb6).
  • An unused inherited column has been dropped from the builds table (e8a95b1).

Release contributors

The following contributors submitted patches for Bodhi 2.6.0:

  • Jeremy Cline
  • Ryan Lerch
  • Clement Verna
  • Caleigh Runge-Hottman
  • Bianca Nenciu
  • Adam Williamson
  • Ankit Raj Ojha
  • Jason Taylor
  • Randy Barlow

2.5.0

28 Mar 21:39
Compare
Choose a tag to compare

Bodhi 2.5.0 is a feature and bugfix release.

Features

  • #1313 - The web interface now uses the Fedora Bootstrap theme. The layout of the update page has also been revamped to display the information about an update in a clearer manner.
  • The bodhi CLI now has a --url flag that can be used to switch which Bodhi server it communicates with. The BODHI_URL environment can also be used to configure this flag.
  • The documentation has been reorganized.
  • The Python bindings are now documented.
  • 6d6de4bc - Bodhi will now announce that karma has been reset to 0 when builds are added or removed from updates.
  • d3ccc579 - Bodhi will now announce that autokarma has been disabled when an update received negative karma.
  • 57a80f42 - The docs theme is now Alabaster.
  • #1322 - The Bodhi documentation now has a description of Bodhi on the landing page.
  • #1323 - The REST API is now documented.
  • 1087939b - The client Python bindings can now accept a base_url that doesn't end in a slash.

Bugs

  • #902 - The position of the Add Comment button is now the bottom right.
  • #1187 - An unusuable --request flag has been removed from a CLI command.
  • #1296 - The cursor is now a pointer when hovering over Releases button.
  • #1305 - The number of days to stable is now correctly calculated on updates.
  • d5bec3fa - Fix a query regular expression so that Fedora update ids work.
  • #1033 - Karma thresholds can now be set when autopush is disabled.

Development improvements

  • The Vagrant development environment automatically configures the BODHI_URL environment variable so that the client talks to the local server instead of production or staging.
  • Test coverage is up another percentage to 82%.
  • Bodhi is now PEP-8 compliant.
  • The development environment now displays all Python warnings once.

Release contributors

The following developers contributed to Bodhi 2.5.0:

  • Ryan Lerch
  • Trishna Guha
  • Jeremy Cline
  • Ankit Raj Ojha
  • Ariel O. Barria
  • Randy Barlow

2.4.0

15 Feb 21:56
Compare
Choose a tag to compare

Bodhi 2.4.0 is a feature and bugfix release.

Features

  • #999: The web interface now displays whether an update has autopush enabled.
  • #1191: Autopush is now disabled on any update that receives authenticated negative karma.
  • #1246: Bodhi now links to Koji builds via TLS instead of plaintext.
  • Some usage examples have been added to the bodhi man page.
  • Bodhi's server package has a new script called bodhi-clean-old-mashes that can recursively
    delete any folders with names that end in a dash followed by a string that can be interpreted as a
    float, sparing the newest 10 by lexigraphical sorting. This should help release engineers keep the
    Koji mashing folder clean.
  • There is now a bodhi.client.bindings module provided by the Bodhi client package. It contains
    Python bindings to Bodhi's REST API.
  • The bodhi CLI now prints autokarma and thresholds when displaying updates.
  • bodhi-push now has a --version flag.
  • There are now man pages for bodhi-push and initialize_bodhi_db.

Bugs

  • #902: Users' e-mail addresses will now be updated when they log in to Bodhi.
  • #908: The masher now tests for repomd.xml instead of the directory that contains it.
  • #1018: Users can now only upvote an update once.
  • #1009: Only comment on non-autokarma updates when they meet testing requirements.
  • #1048: Autokarma can no longer be set to NULL.
  • #1064: Users can now be more fickle than ever about karma.
  • #1065: Critical path updates can now be free of past negative karma ghosts.
  • #1094: Bodhi now comments on non-autokarma updates after enough time has passed.
  • #1107: bodhi-push now does not crash when users abort a push.
  • #1113: bodhi-push now does not print updates when resuming a push.
  • #1146: Bodhi now says "Log in" and "Log out" instead of "Login" and "Logout".
  • #1201: Bodhi now configures the Koji client to retry, which should help make the masher more reliable.
  • #1262: Bodhi is now compatible with Pillow-4.0.0.
  • #1408195: The bodhi cli no longer prints update JSON when setting the request.
  • Bodhi's signed handler now skips builds that were not assigned to a release.
  • The comps file is now cloned into an explicit path during mashing.
  • The buildsystem is now locked during login.

Development improvements

  • A great deal of tests were written for Bodhi. Test coverage is now up to 81% and is enforced by
    the test suite.
  • Bodhi's server code is now PEP-8 compliant.
  • The docs now contain contribution guidelines.
  • The build system will now fail with a useful Exception if used without being set up.
  • The Vagrantfile is a good bit fancier, with hostname, dnf caching, unsafe but performant disk I/O,
    and more.
  • The docs now include a database schema image.
  • Bodhi is now run by systemd in the Vagrant guest.
  • The Vagrant environment now has several helpful shell aliases and a helpful MOTD to advertise
    them to developers.
  • The development environment now uses Fedora 25 by default.
  • The test suite is less chatty, as several unicode warnings have been fixed.

Dependency change

  • Bodhi server now depends on click for bodhi-push.

Release contributors

The following contributors submitted patches for Bodhi 2.4.0:

  • Trishna Guha
  • Patrick Uiterwijk
  • Jeremy Cline
  • Till Mass
  • Josef Sukdol
  • Clement Verna
  • andreas
  • Ankit Raj Ojha
  • Randy Barlow

Bodhi 2.3.3 released

29 Nov 20:44
Compare
Choose a tag to compare

Bodhi 2.3.3 converts koji auth to be done with krb5 and fixes one bug:

  • #1129 - Use krb5 for koji.
  • #1134 - Disable caching koji sessions during mashing process.

Thanks to Patrick Uiterwijk for contributing both of these commits!

Bodhi 2.3.2 released

17 Nov 21:26
Compare
Choose a tag to compare

Bodhi 2.3.2 is a bugfix release that addresses the following issues:

  • #1071 - push.py now defaults to the current releases.
  • #1072 - Fixed a typo in the masher in sending an ostree compose message.
  • #1073 - Fixed a typo in looking up an e-mail template.
  • #1079 - The fedmsg name is now passed explicitly.
  • #1095 - The man page was corrected to state that builds should be comma separated.
  • #1111 - Fixed a race condition between robosignatory and the signed handler.
  • e7cb3f13 - Fix querying the updates for resumption in push.py.
  • abeca57e - push.py now prompts for the username if not given.

Release contributors

The following contributors authored patches for 2.3.2:

  • Patrick Uiterwijk
  • Randy Barlow

Bodhi 2.3.1 released

27 Oct 21:40
Compare
Choose a tag to compare

Bodhi 2.3.1 fixes #1067,
such that edited updates now tag new builds into the pending_signing_tag
instead of the pending_testing_tag. This is needed for automatic signing
gating to work.