Skip to content

Commit ee64489

Browse files
committed
build: bump version 1.28.1 -> 1.29.0
1 parent 89d5d05 commit ee64489

2 files changed

Lines changed: 210 additions & 1 deletion

File tree

CHANGELOG.md

Lines changed: 209 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,212 @@
1+
## 1.29.0 (2026-02-09)
2+
3+
### Features
4+
5+
- **core**: Convert comment with only time tracking command, to action comment
6+
- **core**: Enable linking ticket sub models to parent model
7+
- **base**: Add oauth token required claim check to sso pipeline
8+
- **core**: TicketPermission must check if user has perm for create
9+
- **access**: remove super user check from centurion user function has_perm
10+
- **access**: remove super user check from tenancy permission
11+
- **core**: Add post_migration signal for cleaning up stale permissions
12+
- **core**: Add triage check within TicketBase Serializer
13+
- **core**: TicketComment ViewSet Permission_classes updated to require Ticket or SuperUser
14+
- **core**: Ticket ViewSet Permission_classes updated to require Ticket or SuperUser
15+
- **core**: Add TicketPermissions Class
16+
- **access**: Cache the tenancy within Tenancy Permission class
17+
- **access**: Adjust permissions for Tenancy mixin to be Tenancy or SuperUser
18+
- **core**: Update Markdown Serializer field to provide render data for UI
19+
- **itim**: Add Menu Feature Flag to model ProblemTicket
20+
- **itim**: Add Menu Feature Flag to model IncidentTicket
21+
- **itim**: Add Menu Feature Flag to model ChangeTicket
22+
- **python**: Update django 5.1.14 -> 5.1.15
23+
- **core**: Task comment Permissions must also have ticket triage
24+
- **core**: Add parent_model to CenturionNote so that tenancy can be obtained during creation
25+
- **core**: Add ability to specify additional ViewSet permissions
26+
- **core**: remove `triage` permission from all ticket comment types
27+
- **itam**: Update `ticketmodel_device` serializer to corrrect inheritance.
28+
- **core**: Always return the sub-model serializer when accessing the TicketModel base serializer
29+
- **core**: Only add threads URL to comment if there are threads
30+
- **core**: Ticket Comment base endpoint to use sub-models serializer
31+
- **core**: Serializer model core.TicketCommentTask
32+
- **core**: migrations model core.TicketCommentTask
33+
- **core**: new model core.TicketCommentTask
34+
- **core**: Create an action comment when a dependency is removed from ticket
35+
- **core**: Create an action comment when a model link is removed from ticket
36+
- **core**: model audit_values must return ALL fields for a model
37+
- **core**: Add the ticket action comment signal
38+
- **core**: Add m2m field data to model get_audit_values function
39+
- **itim**: Add Feature Flag 2025-00011 for ProblemTicket
40+
- **itim**: Add Feature Flag 2025-00010 for IncidentTicket
41+
- **itim**: Add Feature Flag 2025-00009 for ChangeTicket
42+
- **itim**: Add Navigation entries for ticket models
43+
- **project_management**: Add Migrations for project task ticket models
44+
- **itim**: Add Migrations for ticket models
45+
- **project_management**: Add Serializer for model project_management.ProjectTaskTicket
46+
- **itim**: Add Serializer for model itim.IncidentTicket
47+
- **itim**: Add Serializer for model itim.ProblemTicket
48+
- **itim**: Add Serializer for model itim.ChangeTicket
49+
- **project_management**: Add model project_management.ProjectTaskTicket
50+
- **itim**: Add model itim.ProblemTicket
51+
- **itim**: Add model itim.ChangeTicket
52+
- **itim**: Add model itim.IncidentTicket
53+
- **core**: filter ticket linked models to that of the ticket viewing
54+
- **core**: Re-import new ticket model linking to slash commands
55+
- **core**: When a ticket depedency is added via ticket description, create Action comment
56+
- **core**: When a ticket depedency is added via comment, create Action comment
57+
- **python**: update django 5.1.13 -> 5.1.14
58+
- **core**: Add New slash command for ticket dependencies to new ticket model
59+
- **core**: Updated Migrations to create model core.TicketDependency
60+
- **core**: Depreciate old ticket linked items
61+
- **core**: Depreciate old related tickets/ticket dependencies
62+
- **core**: Migrations to create model core.TicketDependency
63+
- **core**: Add URL Route for model core.TicketDependency
64+
- **core**: Add ViewSet for model core.TicketDependency
65+
- **core**: Add Serializer for model core.TicketDependency
66+
- **core**: Add model core.TicketDependency
67+
68+
### Fixes
69+
70+
- **docker**: use pip and apk cache from build
71+
- **core**: Correct which fields are read-only for both import and triage user
72+
- **human_resources**: signal centurion_user_add_entity must use log instead of stdout
73+
- **core**: User requires access to add/update ticket urgency field
74+
- **core**: if user lacks tenancy permissions dont process additional for ticket
75+
- Correct permission inheritence
76+
- **core**: Capture errors in perms_map for TicketComment ViewSet
77+
- **core**: TicketModel manager must inherit from TenancyManager
78+
- **access**: Always filter tenancy objects to tenancy list even if empty
79+
- **access**: During permission get_tenancy, use the parent model if one exists and the action=create
80+
- **access**: When checking tenancy permissions and a tenancy is required, ensure it exists
81+
- **access**: Capture exceptions within tenancy permissions
82+
- **access**: Function has_perms for user model must cater for obj or direct tenancy passed, inc no tenancy
83+
- **core**: Ticket sub-model must return display_name as markdown model_tag
84+
- **core**: Add missing ticket type fields to ticket comment category serializer
85+
- **core**: when fetching related model ensure the model is of the correct type
86+
- **core**: If replying to a ticket comment, the parent comment must be set as not closed
87+
- **core**: dont create modelticket link tables for sub-models
88+
- **core**: use correct var for solution comment when checking type
89+
- **core**: When creating a standard ticket comment, set its status to closed
90+
- **core**: When creating a ticket action comment, set its status to closed
91+
- **core**: When cleaning viewset model context, dont remove if not exists
92+
- **core**: Allow HTTP/DELETE on ticket_model_link endpoint
93+
- **core**: When cleaning up request context from model, only remove the modifications instead of replacing with clean
94+
- **api**: Use correct field to determine ticket rendering options
95+
96+
### Refactoring
97+
98+
- use get_organization function instead of property
99+
- **api**: remove superflous code paths
100+
- **core**: Add time tracking slash command for new ticket models
101+
- **core**: instead of throwing an error for wrong comment type, set it as per meta
102+
- **access**: All TenancyPermission.has_permission() to be within try..catch
103+
- **accounting**: Update modelticket serializer inheritence for AssetBase model
104+
- **settings**: Update modelticket serializer inheritence for ExternalLink model
105+
- **project_management**: Update modelticket serializer inheritence for ProjectType model
106+
- **project_management**: Update modelticket serializer inheritence for ProjectState model
107+
- **itim**: Update modelticket serializer inheritence for Service model
108+
- **itim**: Update modelticket serializer inheritence for Port model
109+
- **itim**: Update modelticket serializer inheritence for ClusterType model
110+
- **itim**: Update modelticket serializer inheritence for Cluster model
111+
- **itam**: Update modelticket serializer inheritence for SoftwareVersion model
112+
- **itam**: Update modelticket serializer inheritence for SoftwareCategory model
113+
- **itam**: Update modelticket serializer inheritence for Software model
114+
- **itam**: Update modelticket serializer inheritence for OperatingSystemVersion model
115+
- **itam**: Update modelticket serializer inheritence for OperatingSystem model
116+
- **itam**: Update modelticket serializer inheritence for ITAMAssetBase model
117+
- **itam**: Update modelticket serializer inheritence for DeviceType model
118+
- **itam**: Update modelticket serializer inheritence for DeviceModel model
119+
- **itam**: Update modelticket serializer inheritence for Device model
120+
- **core**: Update modelticket serializer inheritence for TicketCommentCategory model
121+
- **core**: Update modelticket serializer inheritence for TicketCategory model
122+
- **devops**: Update modelticket serializer inheritence for GitRepository model
123+
- **devops**: Update modelticket serializer inheritence for GitlabRepository model
124+
- **devops**: Update modelticket serializer inheritence for GithubRepository model
125+
- **devops**: Update modelticket serializer inheritence for GitGroup model
126+
- **devops**: Update modelticket serializer inheritence for FeatureFlag model
127+
- **config_management**: Update modelticket serializer inheritence for ConfigGroups model
128+
- **assistance**: Update modelticket serializer inheritence for KnowledgeBaseCategory model
129+
- **assistance**: Update modelticket serializer inheritence for KnowledgeBase model
130+
- **accounting**: Update modelticket serializer inheritence for AssetBase model
131+
- **access**: Update modelticket serializer inheritence for Tenant model
132+
- **access**: Update modelticket serializer inheritence for Role model
133+
- **human_resources**: Update modelticket serializer inheritence for Employee model
134+
- **access**: Update modelticket serializer inheritence for Person model
135+
- **access**: Update modelticket serializer inheritence for Contact model
136+
- **access**: Update modelticket serializer inheritence for Company model
137+
- **access**: Update modelticket serializer inheritence for Entity model
138+
- **api**: set mock viewset kwargs before calling model within ComonViewSet test cases
139+
- **access**: When checking a list of user permissions, check ALL permissions first, then return the result.
140+
- **access**: User permissions checks to use plural check instead of singular permission check
141+
- **core**: remove superflous function `get_permission_required` from ViewSet
142+
- **api**: Update ticket model linking to use the new ticket sub-models for markdown rendering
143+
- **core**: Adjust ticket fields name to be single word for fields assigned and subscribed
144+
- **core**: Use Centurion fileds history for tickets
145+
- **api**: Update ticket linked models metadata to use refactored model
146+
- **core**: Dont use link model serializer within slash command for linkmodel
147+
- **core**: move model validation from serializer to model for TicketDependency model.
148+
149+
### Tests
150+
151+
- **core**: Add functional test suite for slash command time tracking
152+
- **base**: OAuth Pipeline required claim Test Suite
153+
- **core**: Ticket Model Test Case to ensure that triage user can update their designated fields.
154+
- **core**: Ticket Model Test Case to ensure that import user can update their designated fields.
155+
- **core**: Test fields created and modified as part of Ticket models serializer checks
156+
- **core**: TicketPermission Test Cases based off of action and HTTP method
157+
- **core**: TicketPermission Unit Test Suite
158+
- **api**: Serializer Unit test case to ensure `<user>.is_superuser` is not called
159+
- **api**: Ensure that common permission function `has_object_permission` does not call `<user>.is_superuser`
160+
- **api**: Ensure that common permission function `has_permission` does not call `<user>.is_superuser`
161+
- **core**: Unit Test suite for serializer field Markdown
162+
- **core**: Ensure that if a ticket comment has no threads, no url is in the API response
163+
- **core**: Ensure that TicketModel Manager filters to those the use has access to
164+
- **core**: Ensure that a user whom is add/edit/delete/update a ticket task also has triage permissions
165+
- **core**: Test Cases for ModelTicket to ensure sub-models serializer inherit from parent serializers
166+
- **core**: Update testcase for triage permission check for TicketCommment models to fetch the correct ticket type
167+
- **core**: Exclude depreciated model `manufacturer` from ModelTicket tests
168+
- **core**: ensure that the _base_model attribute of the model_ticket models returns the actual base model
169+
- **core**: API Fields render functional Test Suite for model core.TicketCommentTaskl
170+
- **core**: ViewSet functional Test Suite for model core.TicketCommentTaskl
171+
- **core**: Model functional Test Suite for model core.TicketCommentTaskl
172+
- **core**: ViewSet unit Test Suite for model core.TicketCommentTaskl
173+
- **core**: Serializer unit Test Suite for model core.TicketCommentTaskl
174+
- **core**: Model unit Test Suite for model core.TicketCommentTaskl
175+
- **core**: Functional Test Cases to ensure that editing a ticket field creates an action comment
176+
- **core**: Functional Test Cases to ensure that a ticket dependency add/remove creates an action commend
177+
- **core**: Unit Test Suite for signal ticket_action_comment
178+
- **core**: Model Functional test case to ensure that when ticket when subscribers is updated an action comment is created
179+
- **core**: Model Functional test case to ensure that when ticket assignees is updated an action comment is created
180+
- **core**: Model Functional test case to ensure that when unlinked from ticket that an action comment is created on ticket
181+
- **core**: Functional model tests to ensure linking models to ticket via ticket comment creates an action comment
182+
- **core**: Add Unit ViewSet Test Suite for Centurion Audit
183+
- **core**: Add Unit Serializer Test Suite for Centurion Audit
184+
- **core**: Add Functional ViewSet Test Suite for Centurion Audit
185+
- **core**: Add Functional API Fields render Test Suite for Centurion Audit
186+
- **core**: Add Functional API Fields render Test Suite for Ticket Comment Category
187+
- **core**: Add Functional model Test Suite for Ticket Comment Category
188+
- **core**: Add Functional model Test Suite for Ticket Category
189+
- **core**: Add Functional API fields render Test Suite for Ticket Category
190+
- **core**: Add Unit Serializer Test Suite for Ticket Comment Category
191+
- **core**: Add Unit ViewSet Test Suite for Ticket Comment Category
192+
- **core**: Add Unit Serializer Test Suite for Ticket Category
193+
- **core**: Add Unit ViewSet Test Suite for Ticket Category
194+
- **core**: Add Functional ViewSet Test Suite for Ticket Comment Category
195+
- **core**: Add Functional ViewSet Test Suite for Ticket Category
196+
- **core**: Add Functional test suite for Link slash command
197+
- **core**: Add Ticket slash command test suit for relate command for ticket description
198+
- **core**: Add Ticket slash command test suit for relate command for ticket comment
199+
- **api**: Completed Test suite for API Metadata Fields
200+
- **core**: API MetaData Functional test suite for model TicketDependency
201+
- **api**: Initial Test suite for API Metadata Fields
202+
- **core**: ViewSet Functional test suite for model TicketDependency
203+
- **core**: API Fields render Functional test suite for model TicketDependency
204+
- **core**: Model Functional test suite for model TicketDependency
205+
- **core**: Serializer Unit test suite for model TicketDependency
206+
- **core**: ViewSet Unit test suite for model TicketDependency
207+
- **core**: Model Unit test suite for model TicketDependency
208+
- **core**: API functional permission test suite for model TicketDependency
209+
1210
## 1.28.1 (2026-02-01)
2211

3212
### Fixes

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ description = "An ERP with a large emphasis on the IT Service Management (ITSM)
1616

1717
dynamic = [ 'dependencies', 'optional-dependencies' ]
1818

19-
version = "1.28.1"
19+
version = "1.29.0"
2020

2121
readme = {file = "README.md", content-type = "text/markdown"}
2222
requires-python = ">=3.10"

0 commit comments

Comments
 (0)