Kiwi TCMS 10.4

several improvements and bug-fix release

Posted by Kiwi TCMS Team on Tue 05 October 2021 under releases

We're happy to announce Kiwi TCMS version 10.4!

IMPORTANT: this is a small release which includes several improvements, bug fixes, internal refactoring and updated translations. It is the thirteenth release to include contributions via our open source bounty program!

You can explore everything at!

Supported upgrade paths:

5.3   (or older) -> 5.3.1
5.3.1 (or newer) -> 6.0.1
6.0.1            -> 6.1
6.1              -> 6.1.1
6.1.1            -> 6.2 (or newer)

Container images:

kiwitcms/kiwi       latest  10eb8f04cccd    590 MB
kiwitcms/kiwi       6.2     7870085ad415    957 MB
kiwitcms/kiwi       6.1.1   49fa42ddfe4d    955 MB
kiwitcms/kiwi       6.1     b559123d25b0    970 MB
kiwitcms/kiwi       6.0.1   87b24d94197d    970 MB
kiwitcms/kiwi       5.3.1   a420465852be    976 MB

Changes since Kiwi TCMS 10.3



  • Update bleach from 4.0.0 to 4.1.0
  • Update django from 3.2.6 to 3.2.7
  • Update django-colorfield from 0.4.2 to 0.4.3
  • Update pygithub from 1.54.1 to 1.55
  • Update pygments from 2.9.0 to 2.10.0
  • Update python-gitlab from 2.10.0 to 2.10.1
  • Allow filtering by TestRun ID in Test Case Search page
  • Update test execution prefix in list of executions on TestRun page. Now includes both TE and TC numbers before the summary link
  • Allow search by translated names on Test Run page
  • Redirect "ADMIN -> Users and groups" menu item according to tenancy
  • Allow creation of new test run from selected test cases inside existing test run. For example only select cases which are currently failing and re-test against a different build!
  • The initial_setup command will create a schema called "empty" when executed inside a multi-tenant setup. Refs Issue #127


  • Update values for MODERNRPC_HANDLERS setting
  • Rename SafeJSONRPCHandler to KiwiTCMSJsonRpcHandler
  • New RPC handler class KiwiTCMSXmlRpcHandler


If you had manipulated the value of MODERNRPC_HANDLERS make sure that you update to the new class names!


  • New migrations for altered meta options


  • TestCase.create method accepts setup_duration and testing_duration fields. Refs Issue #1923 (Mfon Eti-mfon)
  • TestCase.update method acepts setup_duration and testing_duration fields. Refs Issue #1923 (Mfon Eti-mfon)
  • New method Testing.individual_test_case_health
  • Timedelta values are serialized to float, representing seconds

Bug fixes

  • Fix wrong URL parameter passed to test cases clone page
  • Show translated execution statuses for TestRun page. Closes Issue #1966
  • Properly initialize Product value on TestRun Edit page. Closes Issue #2514
  • Clone duration fields when cloning a test case

Refactoring and testing

  • New automated test scenario for kiwi_auth.admin (Mariyan Garvanski)
  • Unify similar strings to reduce translations burden
  • Inside buildroot PyNaCl needs make in order to build a wheel package
  • Adjust values for parametrized test to match existing scenarios
  • Fix code smells from newer pylint
  • eslint fixes for the JavaScript files

Kiwi TCMS Enterprise v10.4.1-mt

  • Based on Kiwi TCMS v10.4
  • Update django-ses from 2.2.1 to 2.3.0
  • Update kiwitcms-github-app from 1.3.0 to 1.3.1
  • Update python3-saml from 1.11.0 to 1.12.0
  • Update social-auth-app-django from 4.0.0 to 5.0.0
  • Use initial_setup during testing. Closes Issue #88
  • Fix new pylint issues and start using f-strings
  • Test "ADMIN -> Users and Groups" menu redirect

IMPORTANT: Kiwi TCMS Enterprise container images are available only to subscribers!

How to upgrade

Backup first! If you are using Kiwi TCMS as a container then:

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/ migrate

Refer to our documentation for more details!

Happy testing!


If you like what we're doing and how Kiwi TCMS supports various communities please help us!