|
1 | 1 | Change Log |
2 | 2 | ========== |
3 | 3 |
|
| 4 | +Kiwi TCMS 10.0 (02 March 2021) |
| 5 | +------------------------------ |
| 6 | + |
| 7 | +.. important:: |
| 8 | + |
| 9 | + This is a major release which includes backwards incompatible API changes, |
| 10 | + new database fields, improvements, bug fixes, translation updates, |
| 11 | + new tests and internal refactoring. |
| 12 | + It is the ninth release to include contributions via our |
| 13 | + `open source bounty program`_. |
| 14 | + |
| 15 | + This is the first release after Kiwi TCMS reached 400K pulls |
| 16 | + on Docker Hub! |
| 17 | + |
| 18 | + |
| 19 | +Supported upgrade paths:: |
| 20 | + |
| 21 | + 5.3 (or older) -> 5.3.1 |
| 22 | + 5.3.1 (or newer) -> 6.0.1 |
| 23 | + 6.0.1 -> 6.1 |
| 24 | + 6.1 -> 6.1.1 |
| 25 | + 6.1.1 -> 6.2 (or newer) |
| 26 | + |
| 27 | +After upgrade don't forget to:: |
| 28 | + |
| 29 | + ./manage.py migrate |
| 30 | + |
| 31 | + |
| 32 | +Security |
| 33 | +~~~~~~~~ |
| 34 | + |
| 35 | +- Update node_modules/marked from 1.2.7 to 2.0.1. Also fixes |
| 36 | + `SNYK-JS-MARKED-1070800 <https://snyk.io/vuln/SNYK-JS-MARKED-1070800>`_ |
| 37 | +- Update django from 3.1.5 to 3.1.7 for CVE-2021-3281 and CVE-2021-23336 |
| 38 | + |
| 39 | + |
| 40 | +Improvements |
| 41 | +~~~~~~~~~~~~ |
| 42 | + |
| 43 | +- Update bleach from 3.2.1 to 3.3.0 |
| 44 | +- Update django-colorfield from 0.3.2 to 0.4.1 |
| 45 | +- Update django-extensions from 3.1.0 to 3.1.1 |
| 46 | +- Update markdown from 3.3.3 to 3.3.4 |
| 47 | +- Update pygments from 2.7.4 to 2.8.0 |
| 48 | +- Update python-gitlab from 2.5.0 to 2.6.0 |
| 49 | +- Change ON/OFF button messages (Krum Petkov) |
| 50 | +- Automatically set test run to finished/not-finished depending on |
| 51 | + the state of all executions. Closes |
| 52 | + `Issue #441 <https://github.com/kiwitcms/Kiwi/issues/441>`_ |
| 53 | +- Allow assigning users from group admin page. Fixes |
| 54 | + `Issue #1844 <https://github.com/kiwitcms/Kiwi/issues/1844>`_ |
| 55 | +- Improve documentation around setting up devel environment |
| 56 | + |
| 57 | + |
| 58 | +Database |
| 59 | +~~~~~~~~ |
| 60 | + |
| 61 | +- Add ``TestRun.planned_start`` and ``TestRun.planned_stop`` fields. Refs |
| 62 | + `Issue #1928 <https://github.com/kiwitcms/Kiwi/issues/1928>`_ (Andreea Moraru) |
| 63 | +- Add ``TestExecution.start_date`` field. Refs |
| 64 | + `Issue #1924 <https://github.com/kiwitcms/Kiwi/issues/1924>`_ (Anastasiya Uraleva) |
| 65 | +- Rename field ``TestExecution.close_date`` to ``TestExecution.stop_date`` (Anastasiya Uraleva) |
| 66 | + |
| 67 | + |
| 68 | +API |
| 69 | +~~~ |
| 70 | + |
| 71 | +.. warning:: |
| 72 | + |
| 73 | + This release changes how Kiwi TCMS serializes API results and thus |
| 74 | + introduces multiple backwards incompatible changes. |
| 75 | + |
| 76 | +.. important:: |
| 77 | + |
| 78 | + All ``.filter()`` methods now return distinct records! |
| 79 | + |
| 80 | +- New method ``PlanType.create()`` |
| 81 | +- Method ``TestCase.add_component()`` now returns a serialized ``Component`` |
| 82 | + instead of a serialized ``TestCase``. Refs |
| 83 | + `Issue #2145 <https://github.com/kiwitcms/Kiwi/issues/2145>`_ |
| 84 | +- Methods ``Product.filter()``, ``Product.create()`` and ``Product.update()``: |
| 85 | + |
| 86 | + - change input parameter ``classification_id`` to ``classification`` - type int |
| 87 | + - change result field ``classification_id`` to ``classification`` - type int |
| 88 | +- Method ``Category.filter()`` changes result field |
| 89 | + ``product_id`` to ``product`` - type int |
| 90 | +- Methods ``Component.filter()``, ``Component.create()`` and ``Component.update()``: |
| 91 | + |
| 92 | + - change input parameter ``product_id`` to ``product`` - type int |
| 93 | + - change input parameter ``initial_owner_id`` to ``initial_owner`` - type int |
| 94 | + - change input parameter ``initial_qa_contact_id`` to ``initial_qa_contact`` - type int |
| 95 | + - change result field ``product_id`` to ``product`` - type int |
| 96 | + - change result field ``initial_owner_id`` to ``initial_owner`` - type int |
| 97 | + - change result field ``initial_qa_contact_id`` to ``initial_qa_contact`` - type int |
| 98 | + - adds result field ``cases`` - type int - a TestCase ID if this component is |
| 99 | + attached to a test case |
| 100 | +- Methods ``Version.filter()`` and ``Version.create()``: |
| 101 | + |
| 102 | + - change input parameter ``product_id`` to ``product`` - type int |
| 103 | + - change result field ``product_id`` to ``product`` - type int |
| 104 | +- Method ``Tag.filter()`` now returns additional fields: |
| 105 | + ``bugs``, ``case``, ``plan`` and ``run`` which causes existing queries to |
| 106 | + return similar records attached to different parent objects. Consumers of these |
| 107 | + results should be updated |
| 108 | +- Methods ``TestPlan.filter()``, ``TestPlan.create()`` and ``TestPlan.update()``: |
| 109 | + |
| 110 | + - change input parameter ``author_id`` to ``author`` - type int |
| 111 | + - change input parameter ``parent_id`` to ``parent`` - type int |
| 112 | + - change input parameter ``product_id`` to ``product`` - type int |
| 113 | + - change input parameter ``product_version_id`` to ``product_version`` - type int |
| 114 | + - change input parameter ``type_id`` to ``type`` - type int |
| 115 | + - change result field ``author_id`` to ``author`` - type int |
| 116 | + - change result field ``parent_id`` to ``parent`` - type int |
| 117 | + - change result field ``product_id`` to ``product`` - type int |
| 118 | + - change result field ``product_version_id`` to ``product_version`` - type int |
| 119 | + - change result field ``type_id`` to ``type`` - type int |
| 120 | + - remove result fields ``cases``, ``tag``, ``default_product_version`` |
| 121 | +- Method ``TestPlan.filter()`` |
| 122 | + adds result fields ``product_version__value``, ``product__name``, |
| 123 | + ``author__username`` and ``type__name`` |
| 124 | +- Methods ``TestRun.filter()``, ``TestRun.create()`` and ``TestRun.update()``: |
| 125 | + |
| 126 | + - change result field ``build_id`` to ``build`` - type int |
| 127 | + - change result field ``default_tester_id`` to ``default_tester`` - type int |
| 128 | + - change result field ``manager_id`` to ``manager`` - type int |
| 129 | + - change result field ``plan_id`` to ``plan`` - type int |
| 130 | + - change result field ``product_version_id`` to ``product_version`` - type int |
| 131 | + - remove result fields ``cc``, ``tag`` |
| 132 | +- Method ``TestRun.filter()`` adds result fields ``product_version__value``, |
| 133 | + ``plan__product``, ``plan__name``, ``build__name``, ``manager__username`` and |
| 134 | + ``default_tester__username`` |
| 135 | +- Methods ``TestExecution.filter()`` and ``TestExecution.update()``: |
| 136 | + |
| 137 | + - change input parameter ``assigee_id`` to ``assignee`` - type int |
| 138 | + - change input parameter ``build_id`` to ``build`` - type int |
| 139 | + - change input parameter ``case_id`` to ``case`` - type int |
| 140 | + - change input parameter ``run_id`` to ``run`` - type int |
| 141 | + - change input parameter ``status_id`` to ``status`` - type int |
| 142 | + - change input parameter ``tested_by_id`` to ``tested_by`` - type int |
| 143 | + - change result field ``assigee_id`` to ``assignee`` - type int |
| 144 | + - change result field ``build_id`` to ``build`` - type int |
| 145 | + - change result field ``case_id`` to ``case`` - type int |
| 146 | + - change result field ``run_id`` to ``run`` - type int |
| 147 | + - change result field ``status_id`` to ``status`` - type int |
| 148 | + - change result field ``tested_by_id`` to ``tested_by`` - type int |
| 149 | +- Method ``TestExecution.filter()`` adds result fields ``assignee__username``, |
| 150 | + ``tested_by__username``, ``case__summary``, ``build__name`` and ``status__name`` |
| 151 | +- Method ``TestExecution.get_links()`` change result field |
| 152 | + ``execution_id`` to ``execution`` - type int |
| 153 | +- Method ``TestRun.add_case()`` changes result field names similarly to |
| 154 | + ``TestExecution.filter()`` method |
| 155 | +- Methods ``TestCase.filter()``, ``TestCase.create()`` and ``TestCase.update()``: |
| 156 | + |
| 157 | + - change input parameter ``author_id`` to ``author`` - type int |
| 158 | + - change input parameter ``case_status_id`` to ``case_status`` - type int |
| 159 | + - change input parameter ``category_id`` to ``category`` - type int |
| 160 | + - change input parameter ``default_tester_id`` to ``default_tester`` - type int |
| 161 | + - change input parameter ``priority_id`` to ``priority`` - type int |
| 162 | + - change input parameter ``reviewer_id`` to ``reviewer`` - type int |
| 163 | + - change result field ``author_id`` to ``author`` - type int |
| 164 | + - change result field ``case_status_id`` to ``case_status`` - type int |
| 165 | + - change result field ``category_id`` to ``category`` - type int |
| 166 | + - change result field ``default_tester_id`` to ``default_tester`` - type int |
| 167 | + - change result field ``priority_id`` to ``priority`` - type int |
| 168 | + - change result field ``reviewer_id`` to ``reviewer`` - type int |
| 169 | + - remove result fields ``component``, ``plan``, ``tag`` |
| 170 | +- Method ``TestCase.filter()`` adds result fields ``case_status__name``, |
| 171 | + ``category__name``, ``priority__value``, ``author__username``, |
| 172 | + ``default_tester__username`` and ``reviewer__username`` |
| 173 | +- Methods ``TestRun.get_cases()`` and ``TestPlan.add_case()`` change |
| 174 | + result field names similarly to ``TestCase.filter()`` method |
| 175 | + |
| 176 | + |
| 177 | +Bug fixes |
| 178 | +~~~~~~~~~ |
| 179 | + |
| 180 | +- Fix removing a component from a test case immediately after it has been added. Fixes |
| 181 | + `Issue #2145 <https://github.com/kiwitcms/Kiwi/issues/2145>`_ (Gagan Deep) |
| 182 | +- Fix broken object navigation in navbar. Fixes |
| 183 | + `Issue #991 <https://github.com/kiwitcms/Kiwi/issues/991>`_ |
| 184 | +- Refactor search pages rendering to speed it up. Closes |
| 185 | + `Issue #1014 <https://github.com/kiwitcms/Kiwi/issues/1014>`_ |
| 186 | + |
| 187 | + |
| 188 | +Refactoring & testing |
| 189 | +~~~~~~~~~~~~~~~~~~~~~ |
| 190 | + |
| 191 | +- Update tests for ``TestRun.create()`` API method. Refs |
| 192 | + `Issue #1928 <https://github.com/kiwitcms/Kiwi/issues/1928>`_ (Andreea Moraru) |
| 193 | +- Add automation tests. Closes |
| 194 | + `Issue #1618 <https://github.com/kiwitcms/Kiwi/issues/1618>`_ (Mariyan Garvanski) |
| 195 | +- Add additional automation tests for ``tcms.management.admin``. Closes |
| 196 | + `Issue #1610 <https://github.com/kiwitcms/Kiwi/issues/1610>`_ (Gagan Deep) |
| 197 | +- Add additional automation tests for ``tcms.testcases.views.EditTestCaseView``. Closes |
| 198 | + `Issue #1615 <https://github.com/kiwitcms/Kiwi/issues/1615>`_ (Gagan Deep) |
| 199 | +- Add additional automation tests for ``tcms.kiwi_auth.forms``. Closes |
| 200 | + `Issue #1609 <https://github.com/kiwitcms/Kiwi/issues/1609>`_ (Kapil Bansal) |
| 201 | +- Change location of included HTML templates (Alexander Tsvetanov, Krum Petkov) |
| 202 | +- Erase unused view & templates (Alexander Tsvetanov) |
| 203 | +- Enable eslint. Closes |
| 204 | + `Issue #1281 <https://github.com/kiwitcms/Kiwi/issues/1281>`_ |
| 205 | +- Change how beakerlib test framework is installed to avoid problems |
| 206 | + during integration tests |
| 207 | +- Better inspection of beakerlib test results to avoid false positive results |
| 208 | + |
| 209 | + |
| 210 | +Translations |
| 211 | +~~~~~~~~~~~~ |
| 212 | + |
| 213 | +- Updated `Bulgarian translation <https://crowdin.com/project/kiwitcms/bg#>`_ |
| 214 | +- Updated `German translation <https://crowdin.com/project/kiwitcms/de#>`_ |
| 215 | +- Updated `Hungarian translation <https://crowdin.com/project/kiwitcms/hu#>`_ |
| 216 | +- Updated `Polish translation <https://crowdin.com/project/kiwitcms/pl#>`_ |
| 217 | + |
| 218 | + |
| 219 | + |
4 | 220 | Kiwi TCMS 9.0.1 (14 Jan 2021) |
5 | 221 | ----------------------------- |
6 | 222 |
|
|
0 commit comments