Articles with tag releases

Kiwi TCMS is pleased to announce new versions of our plugins for different test automation frameworks:

These new versions are compatible with Kiwi TCMS v11.x and include several improvements and bug fixes. Check-out the pages above for individual information and instructions on how to use them.

Happy testing!

---

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

Kiwi TCMS 11.3

We're happy to announce Kiwi TCMS version 11.3 which is the 100th tagged version in our git repository!

IMPORTANT: This is a small release which contains security related updates, several improvements, bug fixes and new translations! Most importantly the kiwitcms-tenants plugin now supports tenant groups and permissions!

You can explore everything at https://public.tenant.kiwitcms.org!

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)

---

Upstream container images (x86_64):

kiwitcms/kiwi   latest  58dcfa91e816    629MB

IMPORTANT: version tagged and multi-arch container images are available only to subscribers!

Changes since Kiwi TCMS 11.2

Security

Improvements

  • Update bleach from 4.1.0 to 5.0.0
  • Update django-tree-queries from 0.7.0 to 0.9.0
  • Update jira from 3.1.1 to 3.2.0
  • Update pygments from 2.11.2 to 2.12.0
  • Update python-gitlab from 3.2.0 to 3.3.0
  • Update tzdata from 2021.5 to 2022.1
  • Update node_modules/marked from 4.0.12 to 4.0.14
  • Update node_modules/prismjs from 1.27.0 to 1.28.0
  • Allow overriding of Azure Boards API version. Closes Issue #2717
  • If tenant_groups is enabled then refresh_permissions command will update default tenant groups too
  • Document tenant-group permissions

Settings

  • New setting AZURE_BOARDS_API_VERSION, defaults to 6.0. Can be overriden directly in settings or via environment variable with the same name

Bug fixes

  • Patch for repositories under GitLab subgroups. Fixes Issue #2643 (@cmeissl)
  • Don't crash if a comment user has been removed. Fixes KIWI-TCMS-HZ

Refactoring

  • Split Users & Groups menu items under ADMIN entry in navigation
  • [pre-commit.ci] updates
  • pylint adjustments

Translations

Kiwi TCMS Enterprise v11.3.1-mt

  • Based on Kiwi TCMS v11.3

  • Update django-ses from 2.6.0 to 3.0.1

  • Update kiwitcms-tenants from 1.11.0 to 2.1.1 for tenant groups support

    Private images:

    quay.io/kiwitcms/enterprise         11.3.1-mt (aarch64  58a53d616105    27 Apr 2022     894MB
    quay.io/kiwitcms/enterprise         11.3.1-mt (x86_64)  3b5e7fbd234a    27 Apr 2022     847MB
    quay.io/kiwitcms/version            11.3 (aarch64)      e9f34a86cd0b    27 Apr 2022     671MB
    quay.io/kiwitcms/version            11.3 (x86_64)       58dcfa91e816    27 Apr 2022     627MB
    

IMPORTANT: version tagged, multi-arch and Enterprise container images are available only to subscribers!

How to upgrade

Backup first! Then execute the commands:

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py upgrade

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 grow!

Kiwi TCMS 11.2

We're happy to announce Kiwi TCMS version 11.2.

IMPORTANT: This is a small release which contains several improvements, new API methods, internal refactoring and new translations! This is the first release to ship aarch64 container images!

You can explore everything at https://public.tenant.kiwitcms.org!

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)

---

Upstream container images (x86_64):

kiwitcms/kiwi   latest  bcc4c658440a    622MB

IMPORTANT: version tagged and multi-arch container images are available only to subscribers!

Changes since Kiwi TCMS 11.1

Improvements

  • Update django from 4.0.2 to 4.0.3
  • Update django-grappelli from 3.0.2 to 3.0.3
  • Update django-simple-captcha from 0.5.14 to 0.5.17
  • Update python-bugzilla from 3.1.0 to 3.2.0
  • Update python-gitlab from 3.1.1 to 3.2.0
  • Update node_modules/prismjs from 1.26.0 to 1.27.0
  • Add new command to perform a collection of post-upgrade tasks. Kiwi TCMS admins are advised to replace manage.py migrate with manage.py upgrade (Ivajlo Karabojkov)

API

  • New API method Category.create(). Fixes Issue #2705 (Erik Heeren)
  • New API method Classification.create(). Fixes Issue #2705 (Erik Heeren)

Refactoring and testing

  • Add docker build & push automation
  • Fix Bandit exclusion rule
  • Test and build on aarch64
  • Apply auto fixes fro pre-commit.ci
  • Apply auto fixes from Deepsource
  • Update versions of several GitHub Actions
  • Use the appropriate path to package.json for Dependabot
  • Remove old Telemetry link in menu to avoid confusion

Kiwi TCMS Enterprise v11.2-mt

  • Based on Kiwi TCMS v11.2

  • Update django-ses from 2.4.0 to 2.6.0

  • Update python3-saml from 1.13.0 to 1.14.0

  • Revert "Use django.contrib.staticfiles.storage from Django==3.2.12". Instead use the implementation from latest Django version. Closes Issue #140

  • Start building kiwitcms/enterprise on aarch64

  • Add changelog check & docker release automation

  • Add test for PSA login URLs on login page. References Issue #83

  • Add SAML & Azure AD logo images

  • Update GitHub Actions

  • Hard-code testing with Keycloak 16.1.1 to workaround significant differences with Keycloak v17 container

    Private images:

    quay.io/kiwitcms/enterprise         11.2-mt (aarch64)   fe5e869e36f6    09 Mar 2022    890MB
    quay.io/kiwitcms/enterprise         11.2-mt (x86_64)    134320d5fb7c    09 Mar 2022    841MB
    quay.io/kiwitcms/version            11.2 (aarch64)      3b782830d19d    09 Mar 2022    665MB
    quay.io/kiwitcms/version            11.2 (x86_64)       bcc4c658440a    09 Mar 2022    620MB
    

IMPORTANT: version tagged, multi-arch and Enterprise container images are available only to subscribers!

How to upgrade

Backup first! Then execute the commands:

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py upgrade

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!

Kiwi TCMS 11.1

We're happy to announce Kiwi TCMS version 11.1.

IMPORTANT: This is a small release which contains security related updates, several improvements, bug fixes and new translations!

You can explore everything at https://public.tenant.kiwitcms.org!

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  72099aa8ee93    629 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

IMPORTANT: version tagged container images are available only to subscribers!

Changes since Kiwi TCMS 11.0

Security

  • Update Django from 3.2.10 to 4.0.2 to fix several fulnerabilities: CVE-2022-22818, CVE-2022-23833, CVE-2021-45115, CVE-2021-45116, CVE-2021-45452. Of those we believe that only CVE-2022-23833: Denial-of-service possibility in file uploads may directly impact Kiwi TCMS

Improvements

  • Update django-contrib-comments from 2.1.0 to 2.2.0
  • Update django-uuslug from 1.2.0 to 2.0.0
  • Update python-gitlab from 3.1.0 to 3.1.1
  • Update node_modules/marked from 4.0.10 to 4.0.12

Database

  • New migration for django-simple-captcha

Settings

  • RECAPTCHA_PUBLIC_KEY, RECAPTCHA_PRIVATE_KEY and RECAPTCHA_USE_SSL are no longer in use
  • New setting USE_CAPTCHA, defaults to True
  • The string "captcha" is added to INSTALLED_APPS

Bug fixes

  • Fix inappropriate RPC calls causing Version and Build dropdown widgets to display no values. Fixes Issue #2704

Refactoring and testing

  • Add tzdata to requirements
  • Replace django-recaptcha with django-simple-captcha
  • Adjust /init-db view to reliably detect when applying database migrations is complete and not exit prematurely

Translations

Kiwi TCMS Enterprise v11.1-mt

  • Based on Kiwi TCMS v11.1

  • Update kiwitcms-github-app from 1.3.2 to 1.3.3

  • Update django-ses from 2.3.1 to 2.4.0

  • Update python3-saml from 1.12.0 to 1.13.0

  • Workaround UnicodeDecodeError while building the docker image

    Private images:

    quay.io/kiwitcms/enterprise         11.1-mt         df5ce509fd41   854 MB
    quay.io/kiwitcms/version            11.1            72099aa8ee93   629 MB
    

IMPORTANT: version tagged and Enterprise container images are available only to subscribers!

How to upgrade

Backup first! Then execute the commands:

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS 11.0

We're happy to announce Kiwi TCMS version 11.0.

IMPORTANT: This is a new major release which contains security related updates, several improvements, API changes, bug fixes and new translations!

You can explore everything at https://public.tenant.kiwitcms.org!

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  6600bc56a544    622 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

IMPORTANT: version tagged container images are available only to subscribers!

Changes since Kiwi TCMS 10.5

Improvements

  • Update Django to 3.2.11
  • Update django-colorfield from 0.4.5 to 0.6.3
  • Update django-grappelli from 2.15.3 to 3.0.2
  • Update psycopg2 from 2.9.2 to 2.9.3
  • Update pygments from 2.10.0 to 2.11.2
  • Update python-gitlab from 2.10.1 to 3.1.0
  • Update node_modules/prismjs from 1.25.0 to 1.26.0
  • Update node_modules/marked from 2.1.3 to 4.0.10
  • Admin panel now allows to view, add, edit and delete Environment records
  • Allow selection of environment when creating new TestRun and display the chosen values inside the TestRun page. Closes Issue #1344
  • Creating a TestRun will now generate test execution matrix based on the available environment and test case properties. Closes Issue #1843
  • When generating a test execution matrix the supported algorithms are "full" and "pairwise". Closes Issue #1931
    • Feature is enabled for test runs which contain test cases. This feature is not shown when creating an empty test run
    • This feature isn't supported when subsequently adding new test cases to test run
  • Record a random hex number under /Kiwi/uploads/installation-id

Detailed information about properties, environments and test matrix generation can be found in a separate article.

Database

  • New model testrun.Environment
  • New model testrun.EnvironmentProperty
  • New model testrun.Property

Warning:

These newly added models create additional permission labels with names testruns | environment | Can .... environment, testruns | property | Can .... property, testruns | environment property | Can .... environment property

Execute manage.py refresh_permissions and/or assign them manually to users and groups if they should be able to interact with the new objects!

Settings

  • Update the value of MODERNRPC_METHODS_MODULES setting to include modules with the new API methods

API

  • Method TestRun.add_case will now return a list.

    Warning

    This breaks API compatibility with older versions and will break all plugins which rely on this method. Use plugins v11 or greater!

  • Method TestRun.add_case return value will now include a field named properties

  • New methods Environment.properties, Environment.add_property and Environment.remove_property

  • New method TestRun.properties

Bug fixes

  • Send e-mail notification when adding comments to bugs. Fixes Issue #2232 (@cmbahadir)
  • Disable the "+" button when there is no related element selected. Fixes Issue #2561 (@cmbahadir)
  • When cloning test plans keep the existing test case sort order inside the resulting test plan. Fixes Issue #2218 (Nicolas Gelot)
  • Configure en_US.UTF-8 locale inside container. Allows upload of files with unicode names. Fixes Issue #2600

Refactoring and testing

  • Refresh logo design
  • Pylint fixes
  • Pin setuptools b/c of problem with django-extensions
  • Remove redundant test scenario
  • Shell script refactoring

Kiwi TCMS Enterprise v11.0-mt

  • Based on Kiwi TCMS v11.0

  • Update kiwitcms-tenants from 1.8.0 to 1.11.0

    Private images:

    quay.io/kiwitcms/enterprise         11.0-mt         a730291750f8   846 MB
    quay.io/kiwitcms/version            11.0            6600bc56a544   622 MB
    

IMPORTANT: version tagged and Enterprise container images are available only to subscribers!

How to upgrade

Backup first! Then execute the commands:

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS Enterprise 10.5.1

We're happy to announce Kiwi TCMS Enterprise version 10.5.1!

IMPORTANT: this is a small release which contains minor improvements and bug-fixes.

You can explore everything at https://public.tenant.kiwitcms.org!

Kiwi TCMS Enterprise v10.5.1-mt

  • Based on Kiwi TCMS v10.5

  • Update django-python3-ldap from 0.13.0 to 0.13.1

  • Update kiwitcms-github-app from 1.3.1 to 1.3.2

    Private images:

    quay.io/kiwitcms/enterprise         10.5.1-mt       c4d745bd914c   806MB
    

IMPORTANT: version tagged and Enterprise container images are available only to subscribers!

How to upgrade

Backup first! Then execute the commands:

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS is pleased to announce new versions of our plugins for different test automation frameworks:

The new versions are future compatible with upcoming Kiwi TCMS v11 and also with existing Kiwi TCMS v10.x installations. Check-out the pages above for individual instructions.

Happy testing!

---

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

Kiwi TCMS 10.5

We're happy to announce Kiwi TCMS version 10.5 which celebrates the very positive reception we had at WebSummit 2021!

IMPORTANT: this is a medium sized release which contains various improvements and new features, database changes, new settings and API methods, bug-fixes, internal refactoring and updated translations.

You can explore everything at https://public.tenant.kiwitcms.org!

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  0574b19b5d66    583 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

IMPORTANT: version tagged container images are available only to subscribers!

Changes since Kiwi TCMS 10.4

Improvements

  • Update django from 3.2.7 to 3.2.9
  • Update django-colorfield from 0.4.3 to 0.4.5
  • Update django-extensions from 3.1.3 to 3.1.5
  • Update django-grappelli from 2.15.1 to 2.15.3
  • Update django-tree-queries from 0.6.0 to 0.7.0
  • Update jira from 3.0.1 to 3.1.1
  • Update markdown from 3.3.4 to 3.3.6
  • Update mysqlclient from 2.0.3 to 2.1.0
  • Update psycopg2 from 2.9.1 to 2.9.2
  • Display a warning if connection doesn't use HTTPS (Ivajlo Karabojkov)
  • Account registration page can be turned on/off via settings. Fixes Issue #2500
  • TestCase Search page can now filter by TestPlan. Fixes Issue #2283
  • Allow template selection when creating new test case. Fixes Issue #957
  • TestCase page now allows specification of properties, e.g. mobile devices on which the test should be executed. This feature serves as a building block for Issue #1843, Issue #1931 and Issue #1344 but isn't active anywhere else inside Kiwi TCMS at the moment
  • TestExecution properties will be displayed inside TestRun page if they have been specified
  • Rearrange help-text in admin page for better visibility
  • Switch to official Postgres image from Docker Hub
  • Switch to official MariaDB image from Docker Hub

Warning:

For Postgres data dir changed from /var/lib/pgsql/data to /var/lib/postgres/data. Environment variables inside docker-compose file changed as well, see docker-compose.postgres.

For MariaDB data dir changed from /var/lib/mysql/data to /var/lib/mysql. MYSQL_CHARSET & MYSQL_COLLATION environment variables are no longer recognized. Instead they are present as command line options passed to the container, see docker-compose.yml. Previous workaround for these variables was also removed.

If you want to migrate from the previous centos/mariadb-103-centos7 or centos/postgresql-12-centos7 containers to mariadb:latest and postgres:latest make sure to update your container control files!

Settings

  • New setting REGISTRATION_ENABLED, default True, Can be controlled via environment variable KIWI_REGISTRATION_ENABLED. When set to False will disable account registration page

Database

  • New model testcases.Property
  • New model testcases.Template
  • New model testruns.TestExecutionProperty
  • Remove unique_together constraint for testruns.TestExecution model. This makes it possible to add multiple executions for the same test case in the same test run

Warning:

These newly added models create additional permission labels with names testcases | template | Can .... template, testcases | property | Can .... property, testruns | test execution property | Can .... test execution property

Execute manage.py refresh_permissions and/or assign them manually to users and groups if they should be able to interact with the new objects!

API

  • Method TestCase.filter() now returns additional fields setup_duration, testing_duration, expected_duration - all serialized in seconds. Refs Issue #1923 (Mfon Eti-mfon)
  • Method User.filter() will no longer return fields groups, user_permissions, date_joined and last_login
  • New method TestExecution.properties()
  • New method TestCase.properties()
  • New method TestCase.add_property()
  • New method TestCase.remove_property()

Bug fixes

  • Unify tab size & tab indentation b/w Python & SimpleMDE. Fixes Issue #1802
  • Use sane_list extension for rendering consecutive lists in markdown. Closes Issue #2511

Warning:

The visual markdown editor explicitly didn't follow markdown syntax rules by allowing indentation with 2 spaces and treating tabs as 2 spaces as well. See "Indentation/Tab Length" at https://python-markdown.github.io/#differences

The backend markdown rendering engine explicitly followed an undefined behavior which happens to be different from what the visual markdown editor does. See "Consecutive Lists" at https://python-markdown.github.io/#differences

The previous 2 changes make sure the visual editor and backend rendering engine follow the same rules. This may result is "broken" display of existing text which doesn't follow the markdown syntax rules. If you spot such text just edit to make it render the way you wish.

  • Fix broken URL and minor updates to documentation
  • Update GitLab tracker integration documentation to avoid confusion. Closes Issue #2559
  • Limit tag input length to 255 characters. Closes Issue #2176
  • Make error notifications in Admin to display with red color
  • Select only visible rows for bulk-update in TestRun page. Fixes Issue #2222
  • Remove Cache-Control header from httpd. Closes Issue #443

Refactoring and testing

  • Add permissions test for add-hyperlink-bulk menu. Closes Issue #716
  • Add explicit tests for issue tracker integration with GitLab.com
  • Tests teardown - remove comments & close issues on GitLab.com
  • Add missing rlPhaseEnd for docker tests
  • Multiple pylint and eslint fixes

Translations

Kiwi TCMS Enterprise v10.5-mt

  • Based on Kiwi TCMS v10.5

  • Update django-python3-ldap from 0.12.0 to 0.12.1

  • Update django-ses from 2.3.0 to 2.3.1

  • Update kiwitcms-tenants from 1.7.0 to 1.8.0

    Private images:

    quay.io/kiwitcms/enterprise         10.5-mt         3e597c91d057   804 MB
    quay.io/kiwitcms/version            10.5            0574b19b5d66   583 MB
    

IMPORTANT: version tagged and Enterprise container images are available only to subscribers!

How to upgrade

Backup first! Then execute the commands:

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS 10.4

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 https://public.tenant.kiwitcms.org!

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

Security

Improvements

  • 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

Settings

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

Warning

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

Database

  • New migrations for altered meta options

API

  • 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/manage.py 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!

Kiwi TCMS 10.3

We're happy to announce Kiwi TCMS version 10.3!

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

You can explore everything at https://public.tenant.kiwitcms.org!

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  bd28c4b064f5    579 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.2

Improvements

Bug fixes

  • Fix a bug where drop-down selectors for test plans would not show any values when product is changed. Fixes Issue #2467

Refactoring and testing

Kiwi TCMS Enterprise v10.3-mt

  • Based on Kiwi TCMS v10.3
  • Container image based on Red Hat Universal Base Image
  • Update django-ses from 2.1.1 to 2.2.1
  • Update python3-saml from 1.10.1 to 1.11.0
  • Add GitLab login icon

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/manage.py 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!

Kiwi TCMS 10.2

We're happy to announce Kiwi TCMS version 10.2!

IMPORTANT: this is a small release including upgrades to 3rd party libraries (including security related updates), several improvements and bug fixes. It is the eleventh release to include contributions via our open source bounty program!

You can explore everything at https://public.tenant.kiwitcms.org!

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)

Docker images:

kiwitcms/kiwi       latest  71b5c2a3dee4    972 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.1

Improvements & security updates

  • Update django from 3.2.3 to 3.2.5
  • Update django-guardian from 2.3.0 to 2.4.0
  • Update django-tree-queries from 0.5.1 to 0.5.2
  • Update psycopg2 from 2.8.6 to 2.9.1
  • Update python-gitlab from 2.7.1 to 2.9.0
  • Update node_modules/marked from 2.0.3 to 2.1.3
  • Update node_modules/html5sortable from 0.11.1 to 0.13.2
  • Update node_modules/prismjs from 1.23.0 to 1.24.1
  • Multiple select for filters on Telemetry pages. Fixes Issue #1940 (Shantanu Verma + Alex Todorov)
  • Allow editting TestCase setup_duration & testing_duration fields. References Issue #1923 (@APiligrim + Alex Todorov)
  • Move several checks to Dashboard page instead of performing them on every request (Ivajlo Karabojkov)
  • Fix grammatical error in documentation (Kushal Beniwal)
  • Add health check for Issue Tracker configuration. Fixes Issue #97
  • Document API URL field for Jira integration. Closes Issue #2443

Settings

  • tcms.core.middleware.CheckSettingsMiddleware has been removed
  • tcms.core.middleware.CheckUnappliedMigrationsMiddleware has been removed

API

  • Method Version.filter() now returns new field called product__name
  • Method Build.filter() now returns new field called version__value
  • Methods Build.filter(), Version.filter() and TestPlan.filter() will now order their results by product/version and then id.
  • Method Telemetry.breakdown() now returns only distinct results

Bug fixes

  • Make error messages in admin forms more legible. Fixes Issue #2404
  • Large images will now fit into the available space on the screen, e.g. inside test case description cards. Fixes Issue #2220

Refactoring and testing

  • Add automated tests for missing coverage in kiwi_auth.admin References Issue #1607 (Mariyan Garvanski)
  • Apply eslint fixes (@sonyagennova + Alex Todorov)
  • Refactor TestExecution.add_link method to use ModelForm and extend tests. Closes Issue #1327 (Rosen Sasov + Alex Todorov)
  • Use context manager when opening files to make pylint happier
  • Simplify 2 UI buttons on TestRun page
  • Enable doc8 for README and CHANGELOG and fix formatting errors

Kiwi TCMS Enterprise v10.2-mt

  • Based on Kiwi TCMS v10.2
  • Update django-ses from 2.0.0 to 2.1.1
  • Update django-python3-ldap from 0.11.4 to 0.12.0
  • Update documentation around initial config

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

How to upgrade

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

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS Enterprise 10.1.1-mt

We're happy to announce Kiwi TCMS Enterprise version 10.1.1-mt!

IMPORTANT: this release includes support for authentication via Keycloak and support for enabling read-only view of tenants data for anonymous users.

Docker images:

quay.io/kiwitcms/enterprise       10.1.1-mt   d61e243dc4f5   1.19GB

Changes since Kiwi TCMS Enterprise 10.1-mt

  • Based on Kiwi TCMS v10.1
  • Fix URL to Python Social Auth documentation
  • Support read-only view on tenants for anonymous users. Contains a database migration to rename on_trial field to publicly_readable
  • Document initial configuration. Site administrators should add the tenants.change_tenant permission to users/groups who are allowed to make their tenants publicly visible. Fixes Issue #87, references Issue #88
  • Document the build process. Fixes Issue #89
  • Verify support for Keycloak logins. Fixes Issue #86
  • Update kiwitcms-github-app from 1.2.4 to 1.3.0
  • Update kiwitcms-tenants from 1.5.0 to 1.6.0

How to upgrade

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

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS 10.1

We're happy to announce Kiwi TCMS version 10.1!

IMPORTANT: this release includes many improvements & security updates, database changes, new and updated API methods, bug fixes, translation updates, new tests and internal refactoring. It is the tenth release to include contributions via our open source bounty program and collaboration with Major League Hacking!

This is the second release after Kiwi TCMS reached 400K pulls on Docker Hub! You can explore everything at https://public.tenant.kiwitcms.org!

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)

Docker images:

kiwitcms/kiwi       latest  788af5c3f067    800 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.0

Improvements & security updates

  • Upgrade from Python 3.6 to Python 3.8 inside the container
  • Upgrade Django from 3.1.7 to 3.2.3
  • Upgrade django-attachments from 1.8 to 1.9.1
  • Upgrade django-contrib-comments from 2.0.0 to 2.1.0
  • Upgrade django-extensions from 3.1.1 to 3.1.3
  • Upgrade django-grappelli from 2.14.3 to 2.15.1
  • Upgrade django-simple-history from 2.12.0 to 3.0.0
  • Upgrade django-tree-queries from 0.4.3 to 0.5.1
  • Upgrade jira from 2.0.0 to 3.0.1
  • Upgrade pygments from 2.8.0 to 2.9.0
  • Upgrade python-gitlab from 2.6.0 to 2.7.1
  • Upgrade node_modules/html5sortable from 0.10.0 to 0.11.1
  • Upgrade node_modules/marked from 2.0.1 to 2.0.3
  • Time-stamp fields added to all TestRun pages. Closes Issue #1928 (Andreea Moraru)
  • Don't set TestRun.start_date automatically. Fixes Issue #2323 (Andreea Moraru)
  • Web based database initialization for new installations. Closes Issue #1698 (Ivajlo Karabojkov)
  • Automatically active the first registered user via web UI
  • Rearrange layout of before and after fields on search pages
  • Allow TestRun creation from navigation menu. Fixes Issue #2281
  • Document hardware specs & performance baseline results. Refs Issue #721
  • Document performance for TestCase.filter/TestRun.filter methods. Closes Issue #1173
  • Update documentation around docker-compose.yml and the extra script files that it needs
  • Document some useful management commands
  • Clarify set_domain command. Closes Issue #2375

Settings

  • Change TEMP_DIR to /var/tmp which affects the location in which intermediate files coming from migrations are saved. If /var/tmp doesn't exist the fallback is /tmp which on modern Linux distributions is ephemeral
  • Add DEFAULT_AUTO_FIELD to hard-code expected behavior and prevent unwanted changes introduced by future versions of Django

Database

  • Add new fields to TestCase - setup_duration, testing_duration and a calculatable expected_duration attribute (Angelina)
  • Remove unused TestRun.product_version field

API

  • Method TestRun.filter() return value changes field names:

    • product_version -> plan__product_version
    • product_version__value -> plan__product_version__value

    Warning

    You will need to adjust your API scripts if using these fields!

  • Method Component.filter() will return only distinct results

  • New method KiwiTCMS.version()

Bug fixes

  • Remove links and icons from TestRun print styling. Fixes Issue #2263 and Issue #2264 (Gagan Deep)
  • Emails notifications are now sent into server language. Fixes Issue #1589 (Kapil Bansal)
  • Fix compatibility bug for "advanced search & add" popup windows and latest Chrome browsers. Fixes Issue #2100
  • Redirect TestPlan Admin "Add" to the correct URL
  • Fix wrong TestExecution field names in queryset & HTML template. Refs Issue #1924
  • Add default display for None fields in Test Case page

Refactoring & testing

  • Add test automation for TestExecution.actual_duration. Refs Issue #1924 (@APiligrim)
  • Add test automation for TestCase.expected_duration. Refs Issue #1923 (@APiligrim)
  • Add test automation for ReadOnlyHistoryAdmin. Fixes Issue #1604 (Kapil Bansal)
  • Add similar-string checker to kiwi_lint. Fixes Issue #1126 (@17sushmita)
  • Resolve or silence the remaining outstanding pylint issues. Closes Issue #171
  • Update isort from 5.7.0 to 5.8.0
  • Convert forms to ModelForm
  • Remove unused method parameters
  • Remove unused string_to_list(). Closes Issue #340
  • Simplify method used for progress-bar in dashboard which also reduces the total number of SQL queries
  • Use existing functions, remove duplication
  • Remove unnecessary calls & definition of loadInitialTestPlans() in Telemetry pages

Kiwi TCMS Enterprise v10.1-mt

  • Based on Kiwi TCMS v10.1
  • Container image built with Python 3.8
  • Update kiwitcms-tenants from 1.4.3 to 1.4.4

IMPORTANT: monthly subscription price for Kiwi TCMS SaaS offering has been updated to 50 $/mo for new subscriptions. Existing customers will not be affected!

How to upgrade

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

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS 10.0

We're happy to announce Kiwi TCMS version 10.0!

IMPORTANT: this is a major release which includes backwards incompatible API changes, new database fields, improvements, bug fixes, translation updates, new tests and internal refactoring. It is the ninth release to include contributions via our open source bounty program.

This is also the first release after Kiwi TCMS reached 400K pulls on Docker Hub! You can explore everything at https://public.tenant.kiwitcms.org!

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)

Docker images:

kiwitcms/kiwi       latest  9f23186803d5    736 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 9.0

Security

  • Update node_modules/marked from 1.2.7 to 2.0.1. Also fixes SNYK-JS-MARKED-1070800
  • Update django from 3.1.5 to 3.1.7 for CVE-2021-3281 and CVE-2021-23336

Improvements

  • Update bleach from 3.2.1 to 3.3.0
  • Update django-colorfield from 0.3.2 to 0.4.1
  • Update django-extensions from 3.1.0 to 3.1.1
  • Update markdown from 3.3.3 to 3.3.4
  • Update pygments from 2.7.4 to 2.8.0
  • Update python-gitlab from 2.5.0 to 2.6.0
  • Change ON/OFF button messages (Krum Petkov)
  • Automatically set test run to finished/not-finished depending on the state of all executions. Closes Issue #441
  • Allow assigning users from group admin page. Fixes Issue #1844
  • Improve documentation around setting up devel environment

Database

  • Add TestRun.planned_start and TestRun.planned_stop fields. Refs Issue #1928 (Andreea Moraru)
  • Add TestExecution.start_date field. Refs Issue #1924 (Anastasiya Uraleva)
  • Rename field TestExecution.close_date to TestExecution.stop_date (Anastasiya Uraleva)

API

Warning

This release changes how Kiwi TCMS serializes API results and thus introduces multiple backwards incompatible changes.

Important

All .filter() methods now return distinct records!

  • New method PlanType.create()
  • Method TestCase.add_component() now returns a serialized Component instead of a serialized TestCase. Refs Issue #2145
  • Methods Product.filter(), Product.create() and Product.update():
    • change input parameter classification_id to classification - type int
    • change result field classification_id to classification - type int
  • Method Category.filter() changes result field product_id to product - type int
  • Methods Component.filter(), Component.create() and Component.update():
    • change input parameter product_id to product - type int
    • change input parameter initial_owner_id to initial_owner - type int
    • change input parameter initial_qa_contact_id to initial_qa_contact - type int
    • change result field product_id to product - type int
    • change result field initial_owner_id to initial_owner - type int
    • change result field initial_qa_contact_id to initial_qa_contact - type int
    • adds result field cases - type int - a TestCase ID if this component is attached to a test case
  • Methods Version.filter() and Version.create():
    • change input parameter product_id to product - type int
    • change result field product_id to product - type int
  • Method Tag.filter() now returns additional fields: bugs, case, plan and run which causes existing queries to return similar records attached to different parent objects. Consumers of these results should be updated
  • Methods TestPlan.filter(), TestPlan.create() and TestPlan.update():
    • change input parameter author_id to author - type int
    • change input parameter parent_id to parent - type int
    • change input parameter product_id to product - type int
    • change input parameter product_version_id to product_version - type int
    • change input parameter type_id to type - type int
    • change result field author_id to author - type int
    • change result field parent_id to parent - type int
    • change result field product_id to product - type int
    • change result field product_version_id to product_version - type int
    • change result field type_id to type - type int
    • remove result fields cases, tag, default_product_version
  • Method TestPlan.filter() adds result fields product_version__value, product__name, author__username and type__name
  • Methods TestRun.filter(), TestRun.create() and TestRun.update():
    • change result field build_id to build - type int
    • change result field default_tester_id to default_tester - type int
    • change result field manager_id to manager - type int
    • change result field plan_id to plan - type int
    • change result field product_version_id to product_version - type int
    • remove result fields cc, tag
  • Method TestRun.filter() adds result fields product_version__value, plan__product, plan__name, build__name, manager__username and default_tester__username
  • Methods TestExecution.filter() and TestExecution.update():
    • change input parameter assigee_id to assignee - type int
    • change input parameter build_id to build - type int
    • change input parameter case_id to case - type int
    • change input parameter run_id to run - type int
    • change input parameter status_id to status - type int
    • change input parameter tested_by_id to tested_by - type int
    • change result field assigee_id to assignee - type int
    • change result field build_id to build - type int
    • change result field case_id to case - type int
    • change result field run_id to run - type int
    • change result field status_id to status - type int
    • change result field tested_by_id to tested_by - type int
  • Method TestExecution.filter() adds result fields assignee__username, tested_by__username, case__summary, build__name and status__name
  • Method TestExecution.get_links() change result field execution_id to execution - type int
  • Method TestRun.add_case() changes result field names similarly to TestExecution.filter() method
  • Methods TestCase.filter(), TestCase.create() and TestCase.update():
    • change input parameter author_id to author - type int
    • change input parameter case_status_id to case_status - type int
    • change input parameter category_id to category - type int
    • change input parameter default_tester_id to default_tester - type int
    • change input parameter priority_id to priority - type int
    • change input parameter reviewer_id to reviewer - type int
    • change result field author_id to author - type int
    • change result field case_status_id to case_status - type int
    • change result field category_id to category - type int
    • change result field default_tester_id to default_tester - type int
    • change result field priority_id to priority - type int
    • change result field reviewer_id to reviewer - type int
    • remove result fields component, plan, tag
  • Method TestCase.filter() adds result fields case_status__name, category__name, priority__value, author__username, default_tester__username and reviewer__username
  • Methods TestRun.get_cases() and TestPlan.add_case() change result field names similarly to TestCase.filter() method

Bug fixes

  • Fix removing a component from a test case immediately after it has been added. Fixes Issue #2145 (Gagan Deep)
  • Fix broken object navigation in navbar. Fixes Issue #991
  • Refactor search pages rendering to speed it up. Closes Issue #1014

Refactoring & testing

  • Update tests for TestRun.create() API method. Refs Issue #1928 (Andreea Moraru)
  • Add automation tests. Closes Issue #1618 (Mariyan Garvanski)
  • Add additional automation tests for tcms.management.admin. Closes Issue #1610 (Gagan Deep)
  • Add additional automation tests for tcms.testcases.views.EditTestCaseView. Closes Issue #1615 (Gagan Deep)
  • Add additional automation tests for tcms.kiwi_auth.forms. Closes Issue #1609 (Kapil Bansal)
  • Change location of included HTML templates (Alexander Tsvetanov, Krum Petkov)
  • Erase unused view & templates (Alexander Tsvetanov)
  • Enable eslint. Closes Issue #1281
  • Change how beakerlib test framework is installed to avoid problems during integration tests
  • Better inspection of beakerlib test results to avoid false positive results

Kiwi TCMS Enterprise v10.0-mt

  • Based on Kiwi TCMS v10.0
  • Update kiwitcms-github-app from 1.2.2 to 1.2.4
  • Update kiwitcms-tenants from 1.4.2 to 1.4.3
  • Update django-python3-ldap from 0.11.3 to 0.11.4

Automation framework plugins

The following test automation framework plugins have been upgraded to work with Kiwi TCMS v10.0:

How to upgrade

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

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS 9.0

We're happy to announce Kiwi TCMS version 9.0!

IMPORTANT: this is a major release which includes backwards incompatible database and API changes, improvements, bug fixes, translation updates, new tests and internal refactoring. It is the eight release to include contributions via our open source bounty program.

This is the third release after Kiwi TCMS reached 200K pulls on Docker Hub!

You can explore everything at https://public.tenant.kiwitcms.org!

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)

Docker images:

kiwitcms/kiwi       latest  f98908772a2a    695 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 8.9

Improvements

  • Update django from 3.1.4 to 3.1.5
  • Update django-contrib-comments from 1.9.2 to 2.0.0
  • Update pygithub from 1.53 to 1.54.1
  • Update pygments from 2.7.3 to 2.7.4
  • Update mysqlclient from 2.0.1 to 2.0.3
  • Update node_modules/prismjs from 1.22.0 to 1.23.0
  • Update node_modules/marked from 1.2.5 to 1.2.7
  • Implement 'Select all' for TestCase Search page. Resolves Issue #2103 (Bryan Mutai)
  • Change ON/OFF button messages for several buttons (Krum Petkov)
  • Remove delete_selected action from admin pages
  • Show active test runs in TestPlan page
  • Hide irrelevant Version & Build selectors for Testing breakdown telemetry
  • Allow running to be passed as URL query param to TestRun Search page

Settings

  • Remove unused kiwi.rpc log handler from LOGGING setting

Database

Warning: Contains backwards incompatible changes.

  • Replace Build.product with Build.version. Closes Issue #246. Build objects are now associated with Version objects, not with Product objects!

    Warning:

    After migration existing builds will point to the "unspecified" version! If you want your telemetry to be accurate you will have to update these objects manually and point them to the appropriate version value!

  • Rename related_name for TestExecution model: case_run -> executions

  • Rename related_name for TestCase model: case -> cases

API

Warning: Contains backwards incompatible changes.

  • Methods Build.filter, Build.create and Build.update replace the product field with a version field

Bug fixes

  • Display raw Markdown text before rendering to fix a bug where anonymous users don't see any text on the screen even if they are allowed to view an object

Refactoring & testing

  • Add tests for tcms.core.middleware. Fixes Issue #1605 (Gagan Deep)
  • Add tests for tcms.handlers. Fixes Issue #1611 (Gagan Deep)
  • Add tests for tcms.kiwi_auth.views. Fixes Issue #1608 (Abhishek Chaurasia)
  • Update pip during bugtracker integration tests to fix dependency issues
  • Reformat all files with black and isort. Closes Issue #1193
  • Refactor TestExecution.get_bugs() to use TestExecution.links()
  • Add return statement for invalid form to make pylint happy
  • Make Bug.assignee field a UserField
  • Replace deprecated ugettext_lazy with gettext_lazy
  • Fixes for Azure Boards integration tests
  • Remove CsrfDisableMiddleware. Closes Issue #297
  • Remove unused methods & left-over views

Kiwi TCMS Enterprise v9.0-mt

  • Based on Kiwi TCMS v9.0
  • Update kiwitcms-github-app from 1.2.1 to 1.2.2
  • Update kiwitcms-tenants from 1.3.1 to 1.4.2

For more info see https://github.com/kiwitcms/enterprise#v90-mt-12-jan-2021

Automation framework plugins

The following test automation framework plugins have been upgraded to work with Kiwi TCMS v9.0:

How to upgrade

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

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS 8.9

We're happy to announce Kiwi TCMS version 8.9!

IMPORTANT: this release includes many improvements, API changes, bug fixes, translation updates, new tests and internal refactoring. It is the seventh release to include contributions via our open source bounty program. You can explore everything at https://public.tenant.kiwitcms.org! This is also the second release after Kiwi TCMS reached 200K pulls on Docker Hub!

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)

Docker images:

kiwitcms/kiwi       latest  9bcfea3a532e    652 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 8.8

Improvements

  • Update django from 3.1.3 to 3.1.4
  • Update django-extensions from 3.0.9 to 3.1.0
  • Update django-grappelli from 2.14.2 to 2.14.3
  • Update pygments from 2.7.2 to 2.7.3
  • Update python-bugzilla from 3.0.1 to 3.0.2
  • Update node_modules/marked from 1.2.3 to 1.2.5
  • Update node_modules/html5sortable from 0.9.18 to 0.10.0
  • New manage.py initial_setup command for one-stop initial setup (Ivajlo Karabojkov)
  • Bug tracker integration with BitBucket (bitbucket.org). Fixes Issue #1916 (@cmbahadir)
  • Complete redesign and refactoring of Test Run page:
  • TestCaseStatus can now be customized. Fixes Issue #1932
  • Update documentation & screenshots

Settings

  • Setting ANONYMOUS_USER_NAME is now explicitly defined due to upstream bug in django-guardian (Abhishek Chaurasia)

Database

  • New migrations for customizeable TestCaseStatus

API

  • Add TestExecution.history() method
  • Add TestCase.history() method
  • Add TestRun.add_cc() method
  • Add TestRun.remove_cc() method
  • Method TestExecution.update() will use build from parent test run if a build field isn't explicitly specified in the arguments
  • Update method TestRun.add_case()
    • will return existing TestExecution if available
    • will raise if test case status is not confirmed
    • will always create new test executions with the highest sortkey

Bug fixes

  • Fixed miscellaneous bugs in tcms.rpc.testcase (Gagan Deep)
  • Disable name change in admin for the default groups. Fixes Issue #1313

Refactoring & testing

  • Add automated tests for tcms.core.views.server_error. Fixes Issue #1606 (Abhishek Chaurasia)
  • Add automated tests for tcms.rpc.api.auth. Fixes Issue #1620 (Abhishek Chaurasia)
  • Add automated test for AnonymousViewBackend.has_perm method. Fixes Issue #1905 (Abhishek Chaurasia)
  • Add automated tests for tcms.core.utils.maito. Fixes Issue #1603 (Gagan Deep)
  • Add automated tests for tcms.utils.github. Fixes Issue #1612 (Gagan Deep)
  • Add automated tests for tcms.rpc.api.testscase. Fixes Issue #1623 (Gagan Deep)
  • Add automated tests for tcms.testcases.views.NewCaseView. Fixes Issue #1614 (@rish07)
  • Add automated tests for tcms.testplans.views.NewTestPlanView. Fixes Issue #1616 (@awalvie)
  • Separate two functions one from another (Alexander Tsvetanov)
  • Disable pylint checks (Alexander Tsvetanov)
  • Upgrade to MySQL 8 in Travis CI
  • Remove unused setup in Travis CI
  • Be more robust when keeping internal state for TestPlan page

Kiwi TCMS Enterprise v8.9-mt

  • Based on Kiwi TCMS v8.9

For more info see https://github.com/kiwitcms/enterprise#v89-mt-07-dec-2020

How to upgrade

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

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS 8.8

We're happy to announce Kiwi TCMS version 8.8!

IMPORTANT: this release includes many improvements, API changes, bug fixes, translation updates, new tests and internal refactoring. It is the sixth release to include contributions via our open source bounty program. You can explore everything at https://public.tenant.kiwitcms.org!

This is also the first release after Kiwi TCMS reached 200K pulls on Docker Hub!

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)

Docker images:

kiwitcms/kiwi       latest  4b31ecf8ab5b    654 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 8.7

Improvements

  • Update bleach from 3.1.5 to 3.2.1
  • Update django-extensions from 3.0.8 to 3.0.9
  • Update django from 3.1.1 to 3.1.3
  • Update django-simple-history from 2.11.0 to 2.12.0
  • Update markdown from 3.2.2 to 3.3.3
  • Update pygments from 2.7.0 to 2.7.2
  • Update python-bugzilla from 2.5.0 to 3.0.1
  • Update node_modules/marked from 1.1.1 to 1.2.3
  • Update node_modules/prismjs from 1.21.0 to 1.22.0
  • Add management command refresh_permission. Closes Issue #1137 (Ivajlo Karabojkov)
  • Add bug tracker integration for Azure Boards. Closes Issue #1979 (@cmbahadir)
  • Add autosave configuration to web editor. Closes Issue #1958 (Mfon Eti-mfon)
  • Change ON/OFF buttons messages to Yes/No for several buttons (Alexander Tsvetanov)
  • Add support for object-level permissions for TestCase, TestPlan, TestRun and Bug objects via django-guardian
  • Complete redesign of Test Plan page to match the rest of Kiwi TCMS:
    • modern look and feel using the PatternFly UI library
    • remove unused legacy code & HTML templates
    • closes Issue #663, Issue #1977
  • Enable Markdown support for strike-through text
  • Always pull latest RPMs when building container images
  • Update documentation and images

Settings

  • AUTHENTICATION_BACKENDS setting is now explicitly specified because of django-guardian. Take care to include the default backends if you override this setting. See tcms/settings/common.py for more information.

Database

  • Add index to TestCase.summary field
  • Additional migrations from django-guardian around object-level permissions
  • New AnonymousUser record added by django-guardian
  • Start using django-tree-queries which improves how tree based structures are stored in the database.

important:

Requires PostgreSQL, sqlite3 >= 3.8.3, MariaDB >= 10.2.2 or MySQL >= 8.0 (if running without ONLY_FULL_GROUP_BY).

warning:

Supports only trees with max. 50 levels on MySQL/MariaDB, since those databases do not support arrays and require us to provide a maximum length upfront. This means up to 50 levels of nested child-parent test plans!

API

  • Method TestExecution.update() will now modify field close_date depending on test execution status. Fixes Issue #1820
  • Method TestCase.add_comment() now returns the created comment
  • Method TestExecution.add_comment() now returns the created comment
  • Method TestPlan.add_case() now returns the newly added test case
  • Add method TestCase.sortkeys(). Fixes Issue #444
  • Add method Markdown.render()
  • Add method TestCase.comments()
  • Add method TestPlan.tree()

Bug fixes

  • Fix url formatting. Fixes Issue #1806 (Rosen Sasov)
  • When deleting TestExecutionStatus check that there will be at least 1 left before deleting! Closes Issue #1978
  • Update typeahead definitions for test case components, tags and for adding test plans to test cases. Fixes Issue #882
  • Add option to filter by reviewer in Test Plan page. Fixes Issue #564
  • Pass the number of disabled test cases to HTML template when creating a new test run. Fixes Issue #718

Refactoring & testing

  • New linter to warn against GenericForeignKey fields in models. Closes Issue #1303 (Bryan Mutai)
  • Add tests for assign_default_group_permissions() (Ivajlo Karabojkov)
  • Add tests for TestExecutionStatusAdmin. Refs Issue #1618 (Mariyan Garvanski)
  • Add tests for tcms.bugs.views.Search. Closes Issue #1601 (Mfon Eti-mfon)
  • Add tests for tcms.rpc.api.testrun. Closes Issue #1628 (@lcmtwn)
  • Add tests for tcms.rpc.api.classification. Closes Issue #1621 (Abhishek Chaurasia)
  • Add tests for tcms.rpc.api.priority. Closes Issue #1622 (Abhishek Chaurasia)
  • Add tests for tcms.rpc.api.testcasestatus. Closes Issue #1624 (Abhishek Chaurasia)
  • Add tests for tcms.rpc.api.attachment. Closes Issue #1619 (@awalvie)
  • Add tests for tcms.rpc.api.testexecution.remove_comment. Closes Issue #1625 (@awalvie)
  • Add tests for tcms.rpc.api.testexecutionstatus. Closes Issue #1626 (@awalvie)
  • Add tests for TestRun.add_case_run() method and rename it to TestRun.create_execution()
  • libkrb5-dev is not needed anymore in CI with newer tcms-api
  • Use Fedora 32 to build Bugzilla docker image in CI
  • Update signature for overriden class to match Django 3.1
  • Move SimpleMDE initialization to simplemde_security_overide.js
  • Move post_save.send() from bugs.views to comments.add_comment()

Kiwi TCMS Enterprise v8.8-mt

  • Based on Kiwi TCMS v8.7
  • Update kiwitcms-github-app from 1.2 to 1.2.

For more info see https://github.com/kiwitcms/enterprise#v88-mt-07-nov-2020

How to upgrade

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

cd path/containing/docker-compose/
docker-compose down
docker-compose pull
docker-compose up -d
docker exec -it kiwi_web /Kiwi/manage.py 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!

Kiwi TCMS 8.7

We're happy to announce Kiwi TCMS version 8.7!

IMPORTANT: this is a medium sized release which includes improvements, API changes, bug fixes, translation updates and new tests. It is the fifth release to include contributions via our open source bounty program. You can explore everything at https://public.tenant.kiwitcms.org!

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)

Docker images:

kiwitcms/kiwi       latest  1f2461b1facd    643 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 8.6

Improvements

  • Update Django from 3.0.9 to 3.1.1

  • Update django-attachments from 1.6 to 1.8

  • Update django-extensions from 3.0.5 to 3.0.8

  • Update psycopg2 from 2.8.5 to 2.8.6

  • Update pygments from 2.6.1 to 2.7.0

  • Update python-gitlab from 2.4.0 to 2.5.0

  • Make it possible to use reCAPTCHA during registration. If you want to enable this then add the following to your settings:

    if 'captcha' not in INSTALLED_APPS:
        INSTALLED_APPS.append('captcha')
    
        RECAPTCHA_PUBLIC_KEY = '......'
        RECAPTCHA_PRIVATE_KEY = '.....'
        RECAPTCHA_USE_SSL = True
    

    For more info see https://www.google.com/recaptcha/admin/

  • Replace GlobalLoginRequiredMiddleware with tcms.kiwi_auth.backends.AnonymousViewBackend for anonymous read-only functionality. See section Anonymous read-only access in the documentation

  • Replace the ... in navigation bar with a 3 cogs icon to make the object-level menu more visible

Settings

  • Remove setting PUBLIC_VIEWS

API

  • Remove TestCase.get_components() in favor of Component.filter()
  • Bug.details() method will now return {} instead of failing if it can't find an issue tracker from an URL

Bug fixes

  • Remove documentation references to non-existing environment
  • Don't fail internal calls if Kiwi TCMS bug tracker can't find a bug

Refactoring & testing

  • Add tests for tcms.core.templatetags. Closes Issue #1602 (Mariyan Garvanski)
  • Add tests for tcms.bugs.views.Edit. Closes Issue #1599 (Mfon Eti-mfon)
  • Add tests for tcms.bugs.views.AddComment. Closes Issue #1600 (Mfon Eti-mfon)
  • Make paths used in migrations & settings platform aware in order to enable development mode on Windows (Mfon Eti-mfon)
  • Add new linter checker to check for use of db_column argument in model field definition. Closes Issue #736 (Bryan Mutai)
  • Add tests for Bug.details API method
  • Replace deprecated ifequal/ifnotequal template tags
  • Adjust migrations_order for Django 3.1 compatibility
  • Add npm audit check in CI
  • Resolve several pylint issues

Kiwi TCMS Enterprise v8.7-mt

  • Based on Kiwi TCMS v8.7
  • Overrides for setting PUBLIC_VIEWS have been removed
  • Update django-ses from 1.0.2 to 1.0.3
  • Update kiwitcms-github-app from 1.1 to 1.2
  • Update kiwitcms-tenants from 1.2.1 to 1.3.1

For more info see https://github.com/kiwitcms/enterprise/#v87-mt-16-sep-2020

How to upgrade

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

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

Refer to our documentation for more details!

Happy testing!

Kiwi TCMS 8.6

We're happy to announce Kiwi TCMS version 8.6!

IMPORTANT: this is a high severity security update which includes improvements, bug fixes, database migrations, API changes, translation updates and new tests. It is the fourth release to include contributions via our open source bounty program. You can explore everything at https://public.tenant.kiwitcms.org!

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)

Docker images:

kiwitcms/kiwi       latest  f2c21b370cd9    639 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 8.5

Security

  • A high severity vulnerability which allows unprivileged data access via JSON-RPC endpoints has been fixed:
    • Affects all previous versions of Kiwi TCMS
    • Instances on public networks, such as Amazon EC2, are at higher risk
    • Instances on private networks are still vulnerable to anyone who can access the same network
    • This vulnerability has been disclosed by Michael Longmire (ShastaQA) and Stone Pack (ShastaQA)
  • Update marked from 0.8.2 to 1.1.1 for a medium severity vulnerability, see SNYK-JS-MARKED-584281

Improvements

  • Update django from 3.0.8 to 3.0.9

  • Update django-attachments from 1.5 to 1.6

  • Update prismjs from 1.20.0 to 1.21.0

  • Update pygithub from 1.51 to 1.53

  • Replace deprecated bleach-whitelist with bleach-allowlist

  • Make django-extensions a production dependency because it provides many useful manage.py commands

  • Enable syntax highlight for code blocks

  • Remove file attachments when related objects are deleted

  • Add image and file upload buttons to text editor. Fixes Issue #977

  • Require auth.view_user permission when trying to view user profiles. Fixes Issue #1685

  • Multiple pages now explicitly require view permissions before displaying read-only information. This gives administrators a finer grained control:

    • /bugs/<id>/ -> bugs.view_bug
    • /bugs/search/ -> bugs.view_bug
    • /cases/search/ -> testcases.view_testcase
    • /case/<id>/ -> testcases.view_testcase
    • /plans/search/ -> testplans.view_testplan
    • /plan/<id>/* -> testplans.view_testplan
    • /runs/search/ -> testruns.view_testrun
    • /runs/<id>/ -> testruns.view_testrun

    Previously these pages only required the user to be logged in

Warning:

The auth.view_user permission is not granted by default because the profile page contains personal information like names and email address. Administrators can grant this permission on a group or individual basis if they are OK with sharing this information.

Database

  • Migrations which manipulate data (contain RunPython) can now be rollbacked. See ./manage.py migrate --plan for the order in which migrations are applied (Bryan Mutai)
  • Increase Product.name size from 64 to 255 characters

API

  • Remove method TestExecution.create() in favor of TestRun.add_case()
  • Add method User.add_attachment()
  • Multiple API methods now explicitly require view permissions before returning read-only information. This is in-sync with the per-page changes listed above:
    • Bug.filter() -> bugs.view_bug
    • Bug.report() -> testruns.view_testexecution
    • Build.filter() -> management.view_build
    • Category.filter() -> testcases.view_category
    • Classification.filter() -> management.view_classification
    • Component.filter() -> management.view_component
    • PlanType.filter() -> testplans.view_plantype
    • Priority.filter() -> management.view_priority
    • Product.filter() -> management.view_product
    • Tag.filter() -> management.view_tag
    • TestCase.get_components() -> testcases.view_testcase
    • TestCase.get_notification_cc() -> testcases.view_testcase
    • TestCase.filter() -> testcases.view_testcase
    • TestCaseStatus.filter() -> testcases.view_testcasestatus
    • TestExecution.filter() -> testruns.view_testexecution
    • TestExecution.get_links() -> linkreference.view_linkreference
    • TestExecutionStatus.filter() -> testruns.view_testexecutionstatus
    • TestPlan.filter() -> testplans.view_testplan
    • TestRun.get_cases() -> testruns.view_testrun
    • TestRun.filter() -> testruns.view_testrun
    • User.filter() -> auth.view_user
    • Version.filter() -> management.view_version

Bug fixes

  • Update documentation to reflect that test cases cannot be rearranged from within a TestRun but only from a TestPlan. Fixes Issue #1805 (@Prome88)
  • Incorrect code formatting for HTML <pre> tags. Closes Issue #1300
  • Fix a bug with the history handler when importing objects with ID field set. Resolves a crash when trying to restore backup data
  • Delete comments when Bug is removed

Refactoring & testing

  • Add linter to warn about missing backwards migrations callable in RunPython and fix all pylint offenses. Fixes Issue #1774 (Bryan Mutai)
  • Teach linter to check API for @permissions_required. Fixes Issue #1089
  • Refactor NewExecutionForm to use ModelForm (Rosen Sasov)
  • Refactor UpdateExecutionForm to use ModelForm (Rosen Sasov)
  • Add tests for tcms.bugs.api. Closes Issue #1597 (Mfon Eti-mfon)
  • Add tests for tcms.bugs.views.New. Closes Issue #1598 (Mfon Eti-mfon)
  • Add tests for tcms.rpc.api.testplan. Closes Issue #1627 (@lcmtwn)
  • Add tests for percentage() function References Issue #1602 (Mariyan Garvanski)
  • Add the migrations_order command to help test rollbacks
  • Adjust code for deprecation warnings from Django 3.1
  • Use Python 3 style super() without arguments
  • Update login page to match our new website design

Kiwi TCMS Enterprise v8.6-mt

  • Based on Kiwi TCMS v8.6

For more info see https://github.com/kiwitcms/enterprise/#v86-mt-23-aug-2020

How to upgrade

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

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

Refer to our documentation for more details!

Happy testing!

Hello testers, we have very important news around how container images for Kiwi TCMS will be distributed! Recently Docker has announced several changes in their storage plans which makes it less viable for our team to continue using their services in full!

Information about official upstream container images

The official upstream Kiwi TCMS container image will continue to be publicly available via Docker Hub as before. In addition all existing and new images will be available via Quay.io. These images are available as

Content is exactly the same between the two registries and you may use the one which you like best!

Warning: after November 1st 2020 older versions will not be available from Docker Hub, only from Quay.io! The reason is that Docker is enforcing a 6 month image retention limit for free plans!

Information about private containers for subscribers

Subscribers enjoy the benefit of having read-only access to tagged versions of the upstream Kiwi TCMS container images as well as access to tagged versions of Kiwi TCMS Enterprise container images! Previously these containers were distributed via Docker Hub and are now available via Quay.io:

  • mrsenko/kiwitcms -> quay.io/kiwitcms/version (version tagged upstream images)
  • mrsenko/kiwitcms-enterprise -> quay.io/kiwitcms/enterprise (enterprise images)

Important: existing subscribers have been notified and granted access to the new repositories on Quay.io. We advise you to update your docker-compose.yml files and start using the new images at your earliest convenience!

Warning: existing subscribers will continue having access to private repositories on Docker Hub until December 31st 2020! Private repositories on Docker Hub will become unavailable after January 31st, 2021 when Docker's new storage plans will be forced into effect!

Why did we chose Quay.io

There are multiple container registry services available! We think Quay.io delivers the best price/quality ratio for our own use-case. In particular we like the billing model around number of private repositories instead the one around the number of users in your organization. That's very similar to how we provide access to Kiwi TCMS via our own subscriptions!

Also it just looks cool if you employ your imagination, especially for non-native English speakers: quay -> qu-ai -> QA!


Thanks for reading and happy testing!

Newer Posts

Page 2 / 5

Older Posts