Kiwi TCMS 6.5 (1 Feb 2019)
We are celebrating 10 years of open source history at FOSDEM, Brussels!
IMPORTANT: this is a minor security, improvement and bug-fix update that includes new
versions of Django and other dependencies, removes some database fields,
includes backend API updates and fixes several bugs.
Together with this release we announce:
kiwitcms-tap-plugin <https://github.com/kiwitcms/tap-plugin>
_ : for reading
Test Anything Protocol (TAP) files and uploading the results to Kiwi TCMSkiwitcms-junit.xml-plugin <https://github.com/kiwitcms/junit.xml-plugin>
_ :
for reading junit.xml formatted files and uploading the results to Kiwi TCMS
Both of these are implemented in Python and should work on standard TAP and
junit.xml files generated by various tools!
Additionally 3 more plugins are currently under development by contributors:
- Native
JUnit 5 plugin <https://github.com/kiwitcms/junit-plugin/>
_ written
in Java - Native
PHPUnit <https://github.com/kiwitcms/phpunit-plugin/>
_ written
in PHP py.test plugin <https://github.com/kiwitcms/pytest-plugin/>
_
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)
After upgrade don't forget to::
./manage.py migrate
Security
- Better override of SimpleMDE markdown rendering to prevent XSS vulnerabilities
in SimpleMDE
Improvements
-
Update patternfly to version 3.59.1
-
Update bleach from 3.0.2 to 3.1.0
-
Update django-vinaigrette from 1.1.1 to 1.2.0
-
Update django-simple-history from 2.6.0 to 2.7.0
-
Update django-grappelli from 2.12.1 to 2.12.2
-
Update mysqlclient from 1.3.14 to 1.4.1
-
Update psycopg2 from 2.7.6.1 to 2.7.7
-
Update pygithub from 1.43.4 to 1.43.5
-
Convert TestCase page to Patternfly
- page menu is under
...
in navigation bar - Test plans card is missing the old 'add plan' functionality b/c we are not
at all sure if adding plans to test cases is used at all. Can bring it back
upon user request! - Bugs card is missing the add/remove functionality for b/c we are not
quite sure how that functionality is used outside test runs!
- page menu is under
-
Convert new TestCase page to Patternfly and provide Given-When-Then text
template. This prompts the author to use a BDD style definition for their
scenarios. We believe this puts the tester into a frame of mind more
suitable for expressing what needs to be tested -
Add a favicon. Fixes
Issue #532 <https://github.com/kiwitcms/Kiwi/issues/532>
_ -
Sort Component, Product and Version objects alphabetically. Fixes
Issue #633 <https://github.com/kiwitcms/Kiwi/issues/633>
_ -
Search test case page now shows Components and Tags
-
Search test case page now allows filtering by date. Fixes
Issue #715 <https://github.com/kiwitcms/Kiwi/issues/715>
_ -
Search test case page now uses radio buttons to filter by automation status
-
Small performance improvement when searching test plans and test cases
-
Search test run page now allows to filter by Product but still continue to
display all Builds in the selected Product -
Updated doc-string formatting for some
tcms
modules
Database migrations
**Known issues:** on our demo installation we have observed that permission
labels were skewed after applying migrations. The symptom is that labels for
removed models are still available, labels for some models may have been removed
from groups/users or there could be permission labels appearing twice in the
database.
This may affect only existing installations, new installations do not have
this problem!
We are not certain what caused this but a quick fix is to remove all permissions
from the default *Tester* group and re-add them again!
- Remove ``TestCase.alias``
- Remove ``TestCaseRun.running_date``
- Remove ``TestCaseRun.notes``
- Remove ``TestCase.is_automated_proposed``
- Remove ``TestCaseText`` model, merge into ``TestCase.text`` field. Closes
`Issue #198 <https://github.com/kiwitcms/Kiwi/issues/198>`_
- Remove ``Priority.sortkey``
- Remove ``Build.description``
- Remove ``Classification.sortkey`` and ``Classification.description``
- Convert ``TestCase.is_automated`` from ``int`` to ``bool``
- Rename ``TestCaseRun.case_run_status`` to ``status``
API
~~~
- New method ``TestCaseRunStatus.filter()``
- New method ``Product.create()``
- New method ``Classification.filter()``
- New method ``BugSystem.filter()``
- Changes to ``TestCase.add_component()``:
- now accepts component name instead of id
- now fails if trying to add components linked to another Product.
- now returns serialized ``TestCase`` object
Translations
~~~~~~~~~~~~
- Updated `French translation <https://crowdin.com/project/kiwitcms/fr#>`_
- Updated `Slovenian translation <https://crowdin.com/project/kiwitcms/sl#>`_
Bug fixes
~~~~~~~~~
- Fix for missing migrations from ``django-simple-history``, see
`DSH #512 <https://github.com/treyhunner/django-simple-history/issues/512>`_ and
`StackOverflow #54177838 <https://stackoverflow.com/questions/54177838/>`_
- Fix cloning of test cases by surrounding bootstrap-selectpicker call with
``try-catch``. Fixes
`Issue #695 <https://github.com/kiwitcms/Kiwi/issues/695>`_
- Fix a traceback with TestRun report page when the RPC connection to Bugzilla
can't be established
Refactoring
~~~~~~~~~~~
- Remove unused form classes, methods, fields and label attributes
- Remove unused or duplicate methods from ``TestCase`` model
- Remove useless methods from BaseCaseForm()
- Add test for discovering missing migrations
- Add test for sanity checking PyPI packages which will always
build tarball and wheel packages