3482 lines
176 KiB
Markdown
3482 lines
176 KiB
Markdown
## 1.18.0 (2025-07-03)
|
|
|
|
### feat
|
|
|
|
- **python**: upgrade django 5.1.9 -> 5.1.10
|
|
|
|
### Fixes
|
|
|
|
- **itim**: Correct config that is in the incorrect format
|
|
|
|
## 1.17.1 (2025-06-02)
|
|
|
|
### Fixes
|
|
|
|
- **base**: Add python metrics to prometheus exporter
|
|
|
|
## 1.17.0 (2025-05-16)
|
|
|
|
### feat
|
|
|
|
- **access**: model access.Company feature flag `2025-00008`
|
|
- **access**: URL route for model access.Company
|
|
- **access**: Migration for model access.Company
|
|
- **access**: Serializer for model access.Company
|
|
- **access**: New model access.Company
|
|
- **access**: Organization -> Tenant Permission Migration
|
|
- **docker**: Serve a robots.txt file for NO indexing
|
|
- **access**: Organization -> Tenant Permission Migration
|
|
- **base**: Add var `AUTH_USER_MODEL` to settings
|
|
- **core**: Add Action comments on ticket change
|
|
- **core**: Remove add, change and delete permissions for model TicketCommentAction from permission selector
|
|
- **core**: Serializer for model TicketCommentAction
|
|
- **core**: Migrations for model TicketCommentAction
|
|
- **core**: New model TicketCommentAction
|
|
- **core**: Setup serializer to meet requirements
|
|
- **core**: Setup model to meet requirements
|
|
- **api**: Add exception logging to ViewSetCommon
|
|
- **python**: Upgrade DRF Spectacular 0.27.2 -> 0.28.0
|
|
- **python**: Upgrade DRF 3.15.2 -> 3.16.0
|
|
- **core**: When processing slash command duration, cater for new ticket models
|
|
- **api**: Add Logging function to Common ViewSet
|
|
- **access**: Add Logging function to Tenancy model
|
|
- **base**: Enable user to customize log file location
|
|
- **core**: Do validate the comment_type field for TicketCommentBase
|
|
- **itam**: Add Feature Flag `2025-00007` ITAMAssetBase
|
|
- **itam**: Add endpoint for ITAMAssetBase
|
|
- Model tag migration for Asset and IT Asset
|
|
- **itam**: Model tag for ITAsset
|
|
- **accounting**: Model tag for Asset
|
|
- **accounting**: Add app label to kb articles for notes
|
|
- **accounting**: Migrations for notes model for AssetBase
|
|
- **accounting**: Migrations for history model for AssetBase
|
|
- **accounting**: Notes Viewset for AssetBase
|
|
- **accounting**: Notes Serializer for AssetBase
|
|
- **accounting**: Notes model for AssetBase
|
|
- **accounting**: History model for AssetBase
|
|
- **itam**: Serializer for ITAssetBase
|
|
- **itam**: Migrations for ITAssetBase
|
|
- **itam**: Add Model ITAssetBase
|
|
- **accounting**: Viewset for Assets
|
|
- **accounting**: Serializer for model AssetBase
|
|
- **accounting**: Migrations for model AssetBase
|
|
- **accounting**: Add Model AssetBase
|
|
|
|
### Fixes
|
|
|
|
- **api**: Dont try to access attribute if not exist in common viewset
|
|
- **api**: Dont try to access attribute if not exist in common viewset
|
|
- **api**: Correct ViewSet Sub-Model lookup
|
|
- **core**: Only take action on ticket comment if view exists
|
|
- **api**: Ensure multi-nested searching for sub-models works
|
|
- **core**: ensure slash command is called on ticket description
|
|
- **core**: Spent slash command is valid for time spent
|
|
- **core**: Correct logic for TicketCommentSolution
|
|
- **core**: Correct logic for TicketCommentBase
|
|
- **accounting**: Ensure correct sub-model check is conducted within model type
|
|
- **itam**: ensure RO field asset_type is set
|
|
- **itim**: Ensure that itam base model is always imported
|
|
|
|
### Refactoring
|
|
|
|
- **human_resources**: Update Functional ViewSet to use PyTest for Employee Model
|
|
- **Access**: Update Functional ViewSet to use PyTest for Person Model
|
|
- **Access**: Update Functional ViewSet to use PyTest for Entity Model
|
|
- **Access**: Update Functional ViewSet to use PyTest for Contact Model
|
|
- **Access**: Update Functional Permission to use PyTest for Person Model
|
|
- **Access**: Update Functional Permission to use PyTest for Entity Model
|
|
- **Access**: Update Functional Permission to use PyTest for Contact Model
|
|
- **Access**: Update Functional Serializer to use PyTest for Contact Model
|
|
- **Access**: Update Functional Serializer to use PyTest for Entity Model
|
|
- **Access**: Update Functional Serializer to use PyTest for Person Model
|
|
- **human_resources**: Update Functional Serializer to use PyTest for Employee Model
|
|
- **human_resources**: Update Functional Permissions to use PyTest for Employee Model
|
|
- **human_resources**: Update Functional Metadata to use PyTest for Employee Model
|
|
- **access**: Update Functional Metadata to use PyTest for Person Model
|
|
- **access**: Update Functional Metadata to use PyTest for Entity Model
|
|
- **access**: Update Functional Metadata to use PyTest for Contact Model
|
|
- **access**: Update Model Entity to use PyTest for Model Test Suite
|
|
- **access**: Update Model Contact to use PyTest for Model Test Suite
|
|
- **access**: Update Model Person to use PyTest for Model Test Suite
|
|
- **human_resources**: Update Model Employee to use PyTest for Model Test Suite
|
|
- **human_resources**: Update Model Employee to use PyTest API Fields Render
|
|
- **access**: Update Model Person to use PyTest API Fields Render
|
|
- **access**: Update Model Contact to use PyTest API Fields Render
|
|
- **access**: Update Model Entity to use PyTest API Fields Render
|
|
- **access**: Rename model Organization -> Tenant
|
|
- **settings**: Update all references to `User` to use `get_user_model()`
|
|
- **project_management**: Update all references to `User` to use `get_user_model()`
|
|
- **itam**: Update all references to `User` to use `get_user_model()`
|
|
- **devops**: Update all references to `User` to use `get_user_model()`
|
|
- **core**: Update all references to `User` to use `get_user_model()`
|
|
- **config_management**: Update all references to `User` to use `get_user_model()`
|
|
- **assistance**: Update all references to `User` to use `get_user_model()`
|
|
- **app**: Update all references to `User` to use `get_user_model()`
|
|
- **api**: Update all references to `User` to use `get_user_model()`
|
|
- **accounting**: Update all references to `User` to use `get_user_model()`
|
|
- **access**: Update all references to `User` to use `get_user_model()`
|
|
- **access**: when fetching parent object, use the parent_model get function
|
|
- **api**: Limit url pk regex to ensure the value is a number
|
|
|
|
### Tests
|
|
|
|
- **access**: Functional ViewSet Test Suite Company model
|
|
- **access**: Functional Serializer Test Suite Company model
|
|
- **access**: Functional Permissions Test Suite Company model
|
|
- **access**: Functional MetaData Test Suite Company model
|
|
- **access**: ViewSet Test Suite Company model
|
|
- **access**: API field render Test Suite Company model
|
|
- **access**: Model Test Suite Company model
|
|
- **core**: Unit viewset Test Cases for TicketCommentAction model
|
|
- **core**: Unit model Test Cases for TicketCommentAction model
|
|
- **core**: Unit API Render Test Cases for TicketCommentAction model
|
|
- **core**: Interim Functional model Test Case TicketCommentAction
|
|
- **core**: Ensure that a ticket milestone comes from the same assigned project
|
|
- **core**: SKIP Tests TicketBase Description Slash command Checks
|
|
- **core**: TicketBase Description Slash command Checks
|
|
- **core**: TicketBase Remaining Serializer Chacks
|
|
- **core**: Partial functional Model Test Suite covering some slash commande for TicketCommentSolution
|
|
- **core**: ensure ticket is un-solved for ticketcomment unit api render fields check
|
|
- **core**: ensure slash command is called on ticket comment
|
|
- **core**: Unit ViewSet Test Suite for TicketCommentSolution
|
|
- **core**: Unit ViewSet Test Suite for TicketCommentBase
|
|
- **core**: Skip Related slash command checks until migrating tickets to new model
|
|
- **core**: Add ability to unit api field rendering test case for second api request if required
|
|
- **core**: Partial Functional Model test cases (Slash Commands) for TicketCommentBase
|
|
- **core**: Functional Model test cases (Slash Commands) for TicketBaseModel
|
|
- **core**: Partial Slash Command re-write
|
|
- **core**: correct field so its valid for unit TicketCommentBase model
|
|
- **core**: Unit API Fields Render for TicketCommentSolution model
|
|
- **core**: Unit API Fields Render for TicketCommentBase model
|
|
- **core**: Unit Model assert save and call are called for TicketBase
|
|
- **core**: Unit Model Checks for TicketCommentSolution
|
|
- **core**: Unit Model Checks for TicketCommentBase
|
|
- **itam**: test meta attribute itam_sub_model_type for ITAMBaseModel
|
|
- **itam**: Dont use constants where variables should be used
|
|
- **itam**: Remaining Unit Model test cases for AssetBase
|
|
- **accounting**: Remaining Unit Model test cases for AssetBase
|
|
- **itam**: Functional ViewSet Test Cases for ITAMAssetBase
|
|
- **itam**: Functional Serializer Test Cases for ITAMAssetBase
|
|
- **itam**: Functional Permissions Test Cases for ITAMAssetBase
|
|
- **itam**: Functional Metadata Test Cases for ITAMAssetBase
|
|
- **itam**: Functional History Test Cases for ITAMAssetBase
|
|
- **accounting**: Functional ViewSet Test Cases for AssetBase
|
|
- **accounting**: Functional Serializer Test Cases for AssetBase
|
|
- **accounting**: Functional Permissions Test Cases for AssetBase
|
|
- **accounting**: Functional Metadata Test Cases for AssetBase
|
|
- **accounting**: History Test Cases for AssetBase
|
|
- add missing merge of add_data for api permissions tests
|
|
- remove ticket only vars from api permissions tests
|
|
- **api**: dont use constants for variable data
|
|
- correct viewset tests
|
|
- **itam**: Unit Viewset checks for AssetBase Model
|
|
- **core**: Add missing fields is_global checks for ticket base
|
|
- **api**: Add submodel url resolution for metadata
|
|
- **itam**: Unit API Fields checks for ITAM AssetBase Model
|
|
- **accounting**: Unit API Fields checks for AssetBase Model
|
|
- Support variables that were defined as properties.
|
|
- **api**: Ensure that model notes is added to model create for api field tests
|
|
- **accounting**: Unit Viewset checks for AssetBase Model
|
|
- **itam**: Unit Model checks for ITAMAssetBase Model
|
|
- **base**: update Model base test suite for model_notes field
|
|
- **accounting**: Unit Model checks for AssetBase Model
|
|
|
|
## 1.16.0 (2025-05-04)
|
|
|
|
### feat
|
|
|
|
- **core**: Add ViewSet for Ticket Comments
|
|
- **project_management**: Depreciate Project Task Ticket Endpoint
|
|
- **itim**: Depreciate Problem Ticket Endpoint
|
|
- **itim**: Depreciate Incident Ticket Endpoint
|
|
- **itim**: Depreciate Change Ticket Endpoint
|
|
- **assistance**: Depreciate Ticket Comment
|
|
- **assistance**: Depreciate Request Ticket Endpoint
|
|
- **core**: Add routes for Ticket Comments
|
|
- **core**: update ticket serializer to use new comment base url
|
|
- **core**: Add permissions `import`, `purge` and `triage` to model TicketCommentSolution
|
|
- **core**: Add permissions `import`, `purge` and `triage` to model TicketCommentBase
|
|
- **core**: Filter ticket_comment_model routes to those defined in `Meta.sub_model_type`
|
|
- **core**: Filter ticket_model routes to those defined in `Meta.sub_model_type`
|
|
- **access**: Filter entity_model routes to thos defined in `Meta.sub_model_type`
|
|
- **core**: Serializer for TicketCommentBase
|
|
- **core**: Serializer for TicketCommentSolution
|
|
- **core**: Ticket Comment Get URL functions
|
|
- **core**: Ticket Comment Validation for comment_type
|
|
- **core**: Update choices fields for TicketCommentBase model
|
|
- **core**: init for model TicketCommentSolution
|
|
- **core**: Migrations for choice fields for TicketBase model
|
|
- **core**: Migrations for model TicketCommentSolution
|
|
- **core**: Update choice fields for TicketBase model
|
|
- **core**: New model TicketCommentSolution
|
|
- **api**: when fetching related_object, default to base_model for SubModelViewSet
|
|
- Add field `Meta.sub_model_type` to sub-models
|
|
- **core**: New interim model TicketCommentSolution
|
|
- **core**: add ticket routes
|
|
- **itim**: serializer for SLMTicketBase
|
|
- **itim**: Serializer for RequestTicket
|
|
- **itim**: migrations for RequestTicket
|
|
- **itim**: New Model RequestTicket
|
|
- **itim**: migration for SLMTicketBase
|
|
- **itim**: New Model SLMTicketBase
|
|
- **core**: migrations for TicketCommentBase
|
|
- **core**: New Model TicketCommentBase
|
|
- **core**: viewset for TicketBase
|
|
- **core**: serializer for TicketBase
|
|
- **core**: migrations for TicketBase
|
|
- **core**: New Model TicketBase
|
|
- **project_management**: add estimation field to project api fields
|
|
- **human_resources**: nav menu entries for Employee
|
|
- **human_resources**: Serializer for Employee
|
|
- **human_resources**: Migration for Employee
|
|
- **human_resources**: New model Employee
|
|
- **devops**: add missing api index menu entry for devops
|
|
- **access**: add missing nav menu entries for entities
|
|
- **human_resources**: add module to perms selector
|
|
|
|
### Fixes
|
|
|
|
- **test**: correct typo in attribute parameterized_
|
|
- **core**: Ticktet comment can have empty body
|
|
- **core**: If model does not save history, dont attempt to cache before
|
|
- **itam**: provide return_url as part of software version meta
|
|
- **itim**: correct ticket_slm serializer
|
|
- **itim**: correct ticket_request serializer
|
|
- **api**: SubModelViewSet.related_objects must be the same class as the base model
|
|
- **access**: Ensure related model is a sub-model
|
|
- **human_resources**: Correct history link generation and add docs
|
|
- **human_resources**: Correct history link generation
|
|
- **access**: add missing attribute to Tenancy object
|
|
|
|
### Refactoring
|
|
|
|
- **test**: rewrite model unit tests to use PyTest
|
|
- **test**: Update test parameterization
|
|
- **api**: SubModelViewSet must inherit from ModelViewSet as it's an extension
|
|
- **core**: rename ticket model filename in preparation for base ticket model
|
|
- **access**: migrate sub-model viewset logic to common
|
|
- **project_management**: add duration field to project api fields
|
|
- **human_resources**: Move employee details to its own section
|
|
|
|
### Tests
|
|
|
|
- **core**: Serializer Validation for ticket status change for TicketBase model
|
|
- **core**: Prevent Closing / Solving of TicketBase Model if not ready
|
|
- **itim**: Incomplete Model Unit Tests for RequestTicket
|
|
- **itim**: Incomplete Model Unit Tests for SLMTicketBase
|
|
- **core**: Incomplete Model Unit Tests for TicketBase
|
|
- **itim**: RequestTicket Updated, yet incomplete Test Suite for Serializer
|
|
- **itim**: SLMTicketBase Updated, yet incomplete Test Suite for Serializer
|
|
- **core**: TicketBase Updated, yet incomplete Test Suite for Serializer
|
|
- Correct Test Suite for Serializer for models TicketBase, TicketRequest and TicketSLM
|
|
- **itim**: RequestTicket Initial Test Suite for Serializer
|
|
- **itim**: SLMTicket Initial Test Suite for Serializer
|
|
- **core**: TicketBase Initial Test Suite for Serializer
|
|
- **core**: SLMTicket Test Suite for ViewSet
|
|
- **core**: SLMTicket Test Suite for Metadata
|
|
- **core**: Request Test Suite for ViewSet
|
|
- **core**: Request Test Suite for Metadata
|
|
- **core**: TicketBase Test Suite for ViewSet
|
|
- **core**: TicketBase Test Suite for Metadata
|
|
- **api**: update test cases for SubModelViewSet Base Test Class
|
|
- **itim**: RequestTicket ViewSet Test Suite
|
|
- **core**: TicketBase ViewSet Test Suite
|
|
- **api**: Incomplete SubModelViewSet Test Cases
|
|
- **api**: SubModelViewSet Test Suite Setup
|
|
- correct tests from Meta.sub_model_type changes
|
|
- correct serializer imports from recent file renames
|
|
- Fixture for creating model with random data
|
|
- **itim**: API Field checks for TicketSLMBase
|
|
- **itim**: API Field checks for TicketRequest
|
|
- **core**: API fields Tests for TicketBase
|
|
- **core**: API fields Unit Test Suite
|
|
- **core**: Correct model notes test suite
|
|
- **core**: API Permission Test Cases for ticket_base model
|
|
- **api**: add API Permission Test Cases
|
|
- **access**: Correct history link test cases
|
|
- **project_management**: Add test cases for api field render for model fields `estimation_project` and `duration_project`
|
|
- **human_resources**: History Serializer and ViewSet Functional test suites for employee
|
|
- **human_resources**: APIv2, History, Model and ViewSet Unit test suites for employee
|
|
- Migrate models to use refactored model tests
|
|
- Consolidate All model tests to remove duplicates and to simplify
|
|
|
|
## 1.15.1 (2025-04-10)
|
|
|
|
### Fixes
|
|
|
|
- **python**: Downgrade django 5.2 -> 5.1.8
|
|
|
|
## 1.15.0 (2025-04-10)
|
|
|
|
### feat
|
|
|
|
- **settings**: Move Ticket Comment Category from settings to ITOps menu
|
|
- **settings**: Move Ticket Category from settings to ITOps menu
|
|
- **access**: place roles nav behind feature flag 2025-00003
|
|
- **access**: place directory nav behind feature flag 2025-00002
|
|
- **accounting**: add new module
|
|
- **access**: Ensure that the same person cant be created more than once
|
|
- **access**: Place Roles Model behind feature flag `2025-00003`
|
|
- **access**: When querying permissions, select related field `content_type`
|
|
- **core**: Model tag for Access/Role
|
|
- **access**: Model Role notes endpoint
|
|
- **access**: Add navigation entry for roles
|
|
- **access**: Model Role History migrations
|
|
- **access**: Add model Role History
|
|
- **access**: Role Notes model viewset
|
|
- **access**: Role Notes model serializer
|
|
- **access**: Model Role Notes migrations
|
|
- **access**: Add model Role Notes
|
|
- **access**: Role model viewset
|
|
- **access**: Role model serializer
|
|
- **access**: Model Role migrations
|
|
- **access**: Add model Role
|
|
- **python**: Upgrade Django 5.1.7 -> 5.2
|
|
- **access**: Place Entity URLs behind feature flag `2025-00002`
|
|
- **access**: Add detail page layout for contact model
|
|
- **access**: Add Menu entry for corporate directory
|
|
- **access**: Add back_url to Entity metadata
|
|
- **core**: Add Entity model tag
|
|
- **access**: Update Entity field `entity_type` if it does not match the entity type
|
|
- **access**: All Entity models to use the entity history endpoint
|
|
- **access**: Enable specifying the history model to use for audit history for a model
|
|
- **access**: Enable specifying the kb model to use for linking kb article to a model
|
|
- **access**: All Entity models to use the entity notes endpoint
|
|
- **access**: Enable specifying the notes `basename` for a model
|
|
- **access**: ViewSet for Entity Notes model
|
|
- **access**: Serializer for Entity Notes model
|
|
- **access**: new model Entity Notes
|
|
- **access**: New model Entity History
|
|
- **access**: Add Entity URL routes
|
|
- **access**: new serializer Contact
|
|
- **access**: new model Contact
|
|
- **access**: new serializer Person
|
|
- **access**: new model Person
|
|
- **access**: new ViewSet for for Entity and sub-entities
|
|
- **access**: new serializer Entity
|
|
- **access**: new model Entity
|
|
- **human_resources**: Add navigation menu entry for Human Resources (HR)
|
|
- **human_resources**: Add module Human Resources (HR) to API Urls
|
|
- **base**: Add module Human Resources (HR) to installed apps
|
|
- Add module Human Resources (HR)
|
|
|
|
### Fixes
|
|
|
|
- **api**: Correct documentation link to use models verbose name
|
|
- **feature_flag**: cater for settings flag overrides
|
|
- **access**: Add missing field directory to contact model
|
|
- **settings**: Add Application Settings to Admin page
|
|
- **access**: Remove app_namespace from Entity
|
|
- **access**: add missing tenancy object fields to non-tenancy object models
|
|
- **core**: Dont attempt to fetch history related objects if no history exists
|
|
- **api**: Dont attempt to access kwargs if not exists within common serializer
|
|
|
|
### Refactoring
|
|
|
|
- **core**: When saving history, ensure field `_prefetched_objects_cache` is not included
|
|
|
|
### Tests
|
|
|
|
- **settings**: Correct nav menu entry for Ticket Category and Ticket Comment Category
|
|
- **access**: Ensure Model Contacts inherits from Person Model
|
|
- **access**: Functional Test Suite for Contact API Metadata, API Permissions and ViewSet
|
|
- **access**: Functional Test Suite for Contact serializer
|
|
- **access**: Functional Test Suite for Contact history
|
|
- **access**: Correct Entity and person functional Test Suite so sub-model testing works
|
|
- **access**: Correct table_fields test case to cater for dynamic field
|
|
- **access**: Unit Test for Contact ViewSet
|
|
- **access**: Unit Test for Contact model
|
|
- **access**: Unit Test for Contact history API field checks
|
|
- **access**: Unit Test for Contact API field checks
|
|
- **access**: Unit Test for Person Tenancy Object
|
|
- **access**: Correct Entity and person unit Test Suite so sub-model testing works
|
|
- **access**: Entity Function Serializer test cases
|
|
- **access**: Person Model field test cases
|
|
- **access**: Functional Test for Person ViewSet, Permissions and Metadata
|
|
- **access**: Functional Test for Person History
|
|
- **access**: Correct Entity Function Test Suite so sub-model testing works
|
|
- **access**: Unit Test for Person ViewSet
|
|
- **access**: Unit Test for Person Model
|
|
- **access**: Unit Test for Person History API fields
|
|
- **access**: Unit Test for Person API fields
|
|
- **access**: Unit Test for Person Tenancy Object
|
|
- **access**: Correct Entity Test Suite so sub-model testing works
|
|
- **app**: exclude any field check that ends in `_ptr_id`
|
|
- **access**: Remove teardown from Function Test cases for Role serializer
|
|
- **access**: Test cases for Role serializer
|
|
- **access**: Function Test cases for Role SPI Permissions, ViewSet and Metadata
|
|
- **access**: Function Test cases for Role History
|
|
- **access**: Unit Test case to ensure Role is by organization
|
|
- **access**: Unit Test case to ensure Role cant be set as global object
|
|
- **access**: Unit Test cases for Role ViewSet
|
|
- **access**: Unit Test cases for Role model
|
|
- **access**: Unit Test cases for Role History API v2
|
|
- **access**: Unit Test cases for Role API v2
|
|
- **access**: Unit Test cases for Role Tenancy Object
|
|
- During testing add debug_feature_flags so object behind can be tested
|
|
- **access**: Notes ViewSet Functional Tests for Entity Model
|
|
- **access**: Notes API Field Functional Tests for Entity Model
|
|
- **access**: Correct functional ViewSet test suite for Entity model
|
|
- **access**: History functional Tests for Entity model
|
|
- **access**: PermissionsAPI, ViewSet and Metadata Tests for Entity model
|
|
- **access**: Model test cases for Entity
|
|
- **access**: API Rendering test cases for Entity model
|
|
- **api**: Ensure that when mocking the request the viewset is instantiated
|
|
- **access**: History tests for Entity model
|
|
- **access**: ViewSet tests for Entity model
|
|
- **access**: Tenancy object test for Entity model
|
|
|
|
## 1.14.0 (2025-03-29)
|
|
|
|
### feat
|
|
|
|
- **itops**: Add navigation menu
|
|
- New Module ITOps
|
|
- **devops**: Ensure GitHub Groups can't be nested
|
|
- **devops**: Models Git Repository must use organization from `git_group` as must group if parent set
|
|
- **devops**: Add git provider badge to git_group table fields
|
|
- **devops**: Add git provider badge to git_repository table fields
|
|
- **devops**: Add Git GRoup to navigation
|
|
- **itam**: Add `back_url` to Software Version ViewSet
|
|
- **itam**: Add `back_url` to Operating System ViewSet
|
|
- **devops**: Add `page_layout` to Git Group model
|
|
- **devops**: Add `page_layout` to GitLab repository model
|
|
- **devops**: Add `page_layout` to GitHub repository model
|
|
- **devops**: git_repository ViewSet updated to fetch queryset based off of repository provider
|
|
- **devops**: Add ti git_repository ViewSet return and back urls
|
|
- **devops**: Make fields `provider` and `provider_id` unique_together for git_repository model
|
|
- **devops**: Add fields to ALL git_repository serializers
|
|
- **devops**: Add fetching of URL to base git_repository model
|
|
- **api**: Enable fetching of app_namespace from model
|
|
- **access**: Add function get_page_layout
|
|
- **feature_flag**: Provide user with ability to override feature flags
|
|
- **base**: Add middleware feature_flag
|
|
- **devops**: Disable notes for GIT Repository Base Model
|
|
- **devops**: Add git_repository model tag migration
|
|
- **devops**: Add git_repository as a model that can be linked to a ticket
|
|
- **devops**: Git Group Notes Migration
|
|
- **devops**: Git Group Notes ViewSet
|
|
- **devops**: Git Group Notes Serializer
|
|
- **devops**: Git Group Notes Model
|
|
- **devops**: GitHub and GitLab Repository Notes Migrations
|
|
- **devops**: GitLab Repository Notes Viewset
|
|
- **devops**: GitHub Repository Notes Viewset
|
|
- **devops**: GitLab Repository Notes Serializer
|
|
- **devops**: GitHub Repository Notes Serializer
|
|
- **devops**: GitLab Repository Notes Model
|
|
- **devops**: GitHub Repository Notes Model
|
|
- **devops**: Git Group History Migrations
|
|
- **devops**: Git Group History
|
|
- **devops**: GitLab and GitHub Repository History Migrations
|
|
- **devops**: GitLab Repository History
|
|
- **devops**: GitHub Repository History
|
|
- **devops**: [2025-00001] Git Group and Repositories URLs
|
|
- **devops**: Git Group and Repositories Migrations
|
|
- **devops**: GIT Group ViewSet
|
|
- **devops**: GIT Group Serializer
|
|
- **devops**: GIT Group Model
|
|
- **devops**: GIT Repositories Viewset
|
|
- **devops**: GitLab Serializer for git repositories
|
|
- **devops**: GitHub Serializer for git repositories
|
|
- **devops**: Base Serializer for git repositories
|
|
- **devops**: GitLab Repository Model
|
|
- **devops**: GitHub Repository Model
|
|
- **devops**: Base model for git repositories
|
|
- **core**: Enable slash command related ticket to have multiple ticket references
|
|
- **core**: Enable slash command linked model to have multiple models
|
|
- **core**: process ticket slash commands by line
|
|
- **core**: Migrations for new slash commands
|
|
- **project_management**: Add project_state slash command
|
|
- **core**: Add ticket_comment_category slash command
|
|
- **core**: Add ticket_category slash command
|
|
- **itam**: when displaying software version, add prefix with software name
|
|
- **itam**: Add markdown tag $software_version
|
|
- **itam**: Enable ticket tab on software version page
|
|
|
|
### Fixes
|
|
|
|
- **devops**: Correct git_group serializer parameter name
|
|
- **devops**: Correct field path to no be unique for git_repository
|
|
- **feature_flag**: if over_rides not set ensure val set to empty dict
|
|
- **devops**: git_group serializers must define fields
|
|
- **devops**: git_group serializers must return urls
|
|
- **devops**: Correct git_repository notes urls
|
|
- **devops**: Correct git_repository url regex
|
|
- **devops**: Correct ViewSerializer for GitLab Repository
|
|
- **devops**: Correct ViewSerializer for GitHib Repository
|
|
- **devops**: Correct model git_group modified field name part 2
|
|
- **devops**: Correct model git_group modified field name
|
|
- **api**: Fetching of serializer_class must be dynamic
|
|
- **core**: Don't create an empty ticket comment if the body is empty when slash commands removed
|
|
- **core**: when processing slash commands trim each line prior to processing
|
|
- **core**: slash command NL char is `\r\n` not `\n`, however support both
|
|
- **core**: When processing slash commands trim whitespace on return
|
|
- **core**: Ensure linked ticket models are unique
|
|
- **itam**: Add back url to software_version model
|
|
|
|
### Refactoring
|
|
|
|
- **devops**: remove model unique_together constraint for git group and repository
|
|
- **devops**: Field `provider_id` must not be user editable for git group or repository
|
|
- **api**: mv _nav property to function get_nav_items
|
|
|
|
### Tests
|
|
|
|
- **api**: Correct test cases for view_name and view_description
|
|
- Refactor all ViewSet Unit Test cases to use new test cases class
|
|
- **api**: Common ViewSet classes Tests and Test cases for classes that inherit them
|
|
- **api**: correct nav menu setup to use mock request
|
|
- **core**: un-mark tests as skipped so that multiple linked items per ticket can be tested
|
|
- **core**: correct ticket linked item to prevent duplicate creation
|
|
|
|
## 1.13.1 (2025-03-17)
|
|
|
|
### Fixes
|
|
|
|
- **devops**: After fetching feature flags dont attempt to access results unless status=200
|
|
- **docker**: only download feature flags when not a worker
|
|
- **devops**: Use correct stderr function when using feature_flag management command
|
|
- **devops**: Cater for connection timeout when fetching feature flags
|
|
- when building feature flag version, use first 8 chars of build hash
|
|
|
|
### Refactoring
|
|
|
|
- **docker**: Use crontabs not cron.d
|
|
|
|
## 1.13.0 (2025-03-16)
|
|
|
|
### feat
|
|
|
|
- **devops**: Add ability for user to turn off feature flagging check-in
|
|
- **devops**: When displaying the feature_flag deployments, limit to last 24-hours
|
|
- **devops**: During feature flag `Checkin` derive the version from the last field of the user-agent
|
|
- **devops**: Add missing column to model `Checkin`
|
|
- **devops**: Remove model `Checkin` permissions from permissions selector
|
|
- **devops**: Display the days total unique check-ins for feature flags within software feature flagging tab
|
|
- **devops**: Record to check-in table every time feature flags are obtained
|
|
- **devops**: Migrations for model `CheckIns`
|
|
- **devops**: New model `CheckIns`
|
|
- Generate a deployment unique ID
|
|
- **devops**: Provide user with option to disable downloading feature flags
|
|
- **devops**: Feature Flagging url.path wrapper
|
|
- **docker**: Configure cron to download feature flags every four hours
|
|
- **docker**: Start and run crond within container
|
|
- **docker**: Download feature flags on container start
|
|
- **devops**: Feature Flagging DRF Router wrapper
|
|
- **devops**: Feature Flagging middleware
|
|
- **devops**: Feature Flagging management command
|
|
- **devops**: Add Feature Flagging lib
|
|
- **devops**: add temp application for feature flag client
|
|
- **devops**: public feature flag endpoint pagination limited to 20 results
|
|
- **devops**: Add support for `if-modified-since` header for Feature Flags public endpoint
|
|
- **api**: Add public API feature flag index endpoint
|
|
- **api**: Add public API endpoint
|
|
- **devops**: Add feature flag public ViewSet
|
|
- **devops**: Add feature flag public serializer
|
|
- **api**: Add common viewset for public RO list
|
|
- Remove serializer caching from ALL viewsets
|
|
- **devops**: Add delete col to software enabled feature flags
|
|
- **devops**: Prevent deletion of software when it has feature flagging enabled and/or feature flags
|
|
- **devops**: limit feature_flag to organizations that's had feature flags enabled
|
|
- **devops**: limit feature_flag to software that's had feature flags enabled
|
|
- **python**: Update Django 5.1.5 -> 5.1.7
|
|
- **devops**: Serializer limiting of software and os disabled for time being
|
|
- **devops**: Serializer validate software and org
|
|
- **devops**: Serializer software filter to enabled feature_flag software
|
|
- **devops**: Serializer org filter to enabled feature_flag organizations
|
|
- **devops**: Add endpoint for enabling software for feature flagging
|
|
- **devops**: Add serializer for enabling software for feature flagging
|
|
- **devops**: Add model for enabling software for feature flagging
|
|
- **devops**: Add model tag feature_flag to ticket linked item
|
|
- **devops**: Add KB tab to feature flag model
|
|
- **devops**: Add Notes to feature flag model
|
|
- **core**: Migration for feature_flag model reference
|
|
- **core**: url endpoints added for ticket comment category and ticket category notes
|
|
- **itam**: disable model notes for model device os
|
|
- **api**: disable model notes for model auth token
|
|
- **core**: disable model notes for model teamuser
|
|
- **core**: disable model notes for model notes
|
|
- **core**: Migrations for adding notes to ticket category and ticket comment category
|
|
- **core**: Add Feature Flag model reference
|
|
- **devops**: Add devops module to installed applications
|
|
- **devops**: Add Feature Flag viewset
|
|
- **devops**: Add Feature Flag serializer
|
|
- **devops**: Add devops Navigation menu
|
|
- **devops**: Add devops module URL includes
|
|
- **devops**: Add devops to permissions
|
|
- **devops**: DB Migrations for Feature Flag and History model
|
|
- **devops**: Add Feature Flag History model
|
|
- **devops**: Add Feature Flag model
|
|
- **access**: add support for nested application namespaces
|
|
- **devops**: Add devops module
|
|
|
|
### Fixes
|
|
|
|
- **devops**: Only track checkin if no other error occured
|
|
- **devops**: during feature flag checkin, if no `client-id` provided, use value `not-provided`
|
|
- **devops**: When init the feature flag clients, look for all args within settings
|
|
- **devops**: Only add `Last-Modified` header to response if exists
|
|
- **devops**: Correct logic for data changed check for public endpoint for feature flagging
|
|
- **devops**: feature flag public ViewSet serializer name correction and qs cache correction
|
|
- **devops**: feature flag public endpoint field modified name typo
|
|
- **devops**: Filter public feature flag endpoint to org and software where software is enabled
|
|
- **devops**: Move software field filter for feature flag to the serializer
|
|
- **devops**: Dont attempt to validate feature flag software or organization if it is absent
|
|
- **devops**: Correct feature flagging validation for enabled software and enabled orgs
|
|
- **devops**: dont cache serializer for featureflag
|
|
- **devops**: Correct Feature Flag serializer validation to cater for edit
|
|
- **devops**: Feature Flag field is mandatory
|
|
- **api**: make history url dynamic. only display if history should save
|
|
- **devops**: if software is deleted delete feature flags
|
|
- **core**: disable of notes for models not requiring it
|
|
- **api**: when generating notes url, use correct object
|
|
- **api**: Add missing import for featurenotused
|
|
- **core**: Add ability to add notes for ticket comment category
|
|
- **core**: Add ability to add notes for ticket category
|
|
- **core**: Serializer `_urls.notes` URL generation now dynamic
|
|
- **api**: Dont attempt to access model.get_app_namespace if it doesnt exist
|
|
|
|
### Tests
|
|
|
|
- **devops**: Feature Flag History API render checks
|
|
- **devops**: Feature Flag Serializer checks
|
|
- **devops**: CheckIn Entry created of fetching feature flags
|
|
- **devops**: CheckIn model test cases
|
|
- **devops**: public feature flag fields corrections
|
|
- **devops**: public feature flag functional ViewSet checks
|
|
- **devops**: feature flag ViewSet checks
|
|
- **api**: Update vieset test cases to cater for mockrequest to contain headers attribute
|
|
- **devops**: feature flag public endpoint API field, header checks
|
|
- **devops**: Ensure that only enabled org and enabled software is possible
|
|
- **devops**: software_feature_flag_enable ViewSet checks
|
|
- **devops**: software_feature_flag_enable Serializer checks
|
|
- **devops**: Update feature flag test case setup to enable feature flag for testing software
|
|
- **devops**: Update feature flag test case setup to enable feature flag for testing software
|
|
- **api**: Remove serializer cache test cases
|
|
- **devops**: software_feature_flag_enable api field checks
|
|
- **devops**: software_feature_flag_enable viewset checks
|
|
- **devops**: software_feature_flag_enable model checks
|
|
- **devops**: software_feature_flag_enable tenancy object checks
|
|
- **devops**: correct dir name for tests
|
|
- **devops**: Notes feature flag model checks
|
|
- **core**: Ticket Comment Category Notes checks
|
|
- **core**: Ticket Category Notes checks
|
|
- **app**: Model test cases for api field rendering `_urls.notes`
|
|
- **app**: Model test cases for get_url_kwargs_notes function
|
|
- **access**: Correct Team notes url route name
|
|
- **devops**: Feature Flag viewset unit Checks
|
|
- **devops**: Feature Flag model Checks
|
|
- **devops**: Feature Flag api Checks
|
|
- **devops**: Feature Flag tenancy object Checks
|
|
- **devops**: Feature Flag viewset functional Checks
|
|
- **devops**: Feature Flag serializer Checks
|
|
- **devops**: Feature Flag History Checks
|
|
|
|
## 1.12.0 (2025-03-01)
|
|
|
|
### feat
|
|
|
|
- **api**: Add delete column to AuthToken Table
|
|
- **docker**: Upgrade system packages on build
|
|
- **api**: AuthToken requires viewset get_back_url
|
|
- **api**: Add auth token api endpoint
|
|
- **settings**: Add section title to auth tokens
|
|
- **settings**: Add tokens url to user settings `_urls`
|
|
- **api**: Update Auth Token model for use with serializer
|
|
- **api**: Add user Auth Token viewset
|
|
- **api**: Add user Auth Token serializer
|
|
- **settings**: Add `page_layout` attribute to User Settings
|
|
|
|
### Fixes
|
|
|
|
- **api**: correct usage of `AuthToken.generate` to a property
|
|
|
|
### Tests
|
|
|
|
- **api**: AuthToken ViewSet checks (unit)
|
|
- **api**: AuthToken API Field checks
|
|
- **api**: AuthToken Serializer checks
|
|
- **api**: AuthToken ViewSet checks
|
|
|
|
## 1.11.0 (2025-02-21)
|
|
|
|
### feat
|
|
|
|
- **core**: Enable App settings History to save without specifying an organization
|
|
- **settings**: save_history method added to App Settings
|
|
- **settings**: History Model for App Settings Version added
|
|
- **core**: Migration for history data to new history tables
|
|
- **access**: save_history method added to Team
|
|
- **access**: History Model for Team added
|
|
- **access**: save_history method added to Organization
|
|
- **access**: History Model for Organization added
|
|
- **core**: add org field History Model api rendering
|
|
- **core**: Show the model name within history
|
|
- **project_management**: Project Milestone added to modelhistory.child_history_models
|
|
- **settings**: History Model migrations for External Link
|
|
- **settings**: save_history method added to External Link
|
|
- **settings**: History Model for External Link added
|
|
- **project_management**: History Model migrations for Project Type
|
|
- **project_management**: save_history method added to Project Type
|
|
- **project_management**: History Model for Project TYpe added
|
|
- **project_management**: History Model migrations for Project State
|
|
- **project_management**: save_history method added to Project State
|
|
- **project_management**: History Model for Project State added
|
|
- **project_management**: History Model migrations for Project Milestone
|
|
- **project_management**: save_history method added to Project Milestonr
|
|
- **project_management**: History Model for Project Milestone added
|
|
- **project_management**: History Model migrations for Project
|
|
- **project_management**: save_history method added to Project
|
|
- **project_management**: History Model for Project added
|
|
- **itim**: History Model migrations for Service
|
|
- **itim**: save_history method added to Service
|
|
- **itim**: History Model for Service added
|
|
- **itim**: History Model migrations for Port
|
|
- **itim**: save_history method added to Port
|
|
- **itim**: History Model for Port added
|
|
- **itim**: History Model migrations for Cluster Type
|
|
- **itim**: save_history method added to Cluster TYpe
|
|
- **itim**: History Model for Cluster Type added
|
|
- **itim**: History Model migrations for Cluster
|
|
- **itim**: save_history method added to Cluster
|
|
- **itim**: History Model for Cluster added
|
|
- **itam**: History Model migrations for Software Version
|
|
- **itam**: save_history method added to Software Version
|
|
- **itam**: History Model for Software Version added
|
|
- **itam**: History Model migrations for Software Category
|
|
- **itam**: save_history method added to Software Category
|
|
- **itam**: History Model for Software Category added
|
|
- **itam**: History Model migrations for Software
|
|
- **itam**: save_history method added to Software
|
|
- **itam**: History Model for Software added
|
|
- **itam**: History Model migrations for Operating System Version
|
|
- **itam**: save_history method added to Operating System Version
|
|
- **itam**: History Model for Operating System Version added
|
|
- **itam**: History Model migrations for Device Type
|
|
- **itam**: save_history method added to Device Type
|
|
- **itam**: History Model for Device Type added
|
|
- **itam**: History Model migrations for Device Operating System
|
|
- **itam**: save_history method added to Device Operating System
|
|
- **itam**: History Model for Device Operating System added
|
|
- **itam**: History Model migrations for Operating System
|
|
- **itam**: save_history method added to Operating System
|
|
- **itam**: History Model migrations for Operating System
|
|
- **itam**: History Model migrations for Device Software
|
|
- **itam**: History Model for Device Software added
|
|
- **itam**: save_history method added to Device
|
|
- **itam**: History Model migrations for Device Model
|
|
- **itam**: save_history method added to Device Model
|
|
- **itam**: History Model for Device Model added
|
|
- **core**: History Model migrations for Ticket Comment Category
|
|
- **core**: save_history method added to Ticket Comment Category
|
|
- **core**: History Model for Ticket Comment Category added
|
|
- **config_management**: Child History Models added to child model lists for config group hosts and software
|
|
- **core**: History Model migrations for Ticket Category
|
|
- **core**: save_history method added to Ticket Category
|
|
- **core**: History Model for Ticket Category added
|
|
- **core**: History Model migrations for Manufacturer
|
|
- **core**: save_history method added to Manufacturer
|
|
- **core**: History Model for Manufacturer added
|
|
- **config_management**: save_history method added to Config Group Software
|
|
- **config_management**: save_history method added to Config Group Hosts
|
|
- **config_management**: save_history method added to Config Groups
|
|
- **assistance**: save_history method added to Knowledge base
|
|
- **assistance**: save_history method added to Knowledge base category
|
|
- **config_management**: History Model migrations for Config Groupse + children
|
|
- **config_management**: History Model for Config Group Software added
|
|
- **config_management**: History Model for Config Group Hosts added
|
|
- **config_management**: History Model for Config Groups added
|
|
- **assistance**: History Model migrations for Knowledge base + children
|
|
- **assistance**: History Model for Knowledge base category added
|
|
- **assistance**: History Model for Knowledge base added
|
|
- **itam**: Add device history model
|
|
- **core**: History view to only display objects from the model being requested
|
|
- **core**: Add new history model to History Serializer
|
|
- **core**: Add new history model
|
|
- **development**: lint for un-used imports
|
|
- **development**: add pylit settings
|
|
- **core**: added new history model
|
|
- **api**: Device Software Viewset requires its own function to obtain the model view serializer
|
|
- **api**: Ticket Comment Viewset requires its own function to obtain the model view serializer
|
|
- **api**: Ticket Viewset requires its own function to obtain the model view serializer
|
|
- **api**: Always use a models `View` serializer for the response
|
|
- **core**: Add logic to ensure when organization changes, an action comment is created
|
|
- **core**: Add logic to ensure when parnet ticket changes, an action comment is created
|
|
|
|
### Fixes
|
|
|
|
- **settings**: App settings serializer fielad name does not exist
|
|
- **access**: dont use organization property within organization model
|
|
- **project_management**: Project milestone is not a child model
|
|
- **core**: Child models on delete must make model field null
|
|
- **project_management**: Project Milestone History is a primaryu model
|
|
- **core**: When a child model is deleted ensure entry is still created on parent model history
|
|
- **core**: when fetching url_kwargs for model history, make it dynamic for related field name
|
|
- **core**: Xorrect logic for determining view_action
|
|
- **core**: dynamically search for history object name
|
|
- **config_management**: Remove parent property from config groups
|
|
- **tests**: Correct Permission Import due to removing from access.models
|
|
- **project_management**: project Model serializer must inherit common serializer
|
|
- **core**: History audit objects must be a valid dict
|
|
- **api**: history app names can contain an underscore
|
|
- **core**: when saving history, use audit_model for content type
|
|
- **core**: add missing functions for fetching item url
|
|
- **project_management**: Opened by field set to read only for project task ticket
|
|
- **itim**: Opened by field set to read only for problem ticket
|
|
- **itim**: Opened by field set to read only for incident ticket
|
|
- **itim**: Opened by field set to read only for change ticket
|
|
- **assistance**: Opened by field set to read only for request ticket
|
|
- **core**: Ensure that if the parent ticket changes, that the logic caters for none
|
|
- **assistance**: Category can be empty for Project Task Ticket
|
|
- **assistance**: Category can be empty for Problem Ticket
|
|
- **assistance**: Category can be empty for Incident Ticket
|
|
- **assistance**: Category can be empty for Change Ticket
|
|
- **assistance**: Category can be empty for Request Ticket
|
|
- **core**: Ticket Action comment for category change must use category field
|
|
|
|
### Refactoring
|
|
|
|
- **core**: Update access imports to new path
|
|
- **core**: Update access imports to new path
|
|
- Update migrations imports to new path
|
|
- **config_management**: Update access imports to new path
|
|
- **api**: Update access imports to neew path
|
|
- **settings**: Update access imports to new path
|
|
- **project_management**: Update access imports to new path
|
|
- **itim**: Update access imports to new path
|
|
- **itam**: Update access imports to new path
|
|
- **core**: Update access imports to new path
|
|
- **config_management**: Update access imports to new path
|
|
- **assistance**: Update access imports to new path
|
|
- **base**: Update access imports to new path
|
|
- **api**: Update access imports to neew path
|
|
- **access**: Update access imports to neew path
|
|
- **access**: Move models to their own file
|
|
- **core**: move get_url to common serializer
|
|
- **api**: Update history url kwargs to use vals from model._meta
|
|
- **core**: superuser changed from import to triage access
|
|
- **core**: Ticket action comment logic only requires a single check
|
|
|
|
### Tests
|
|
|
|
- **settings**: History Entry checks for App Settings History
|
|
- **settings**: API Field Checks for App Settings History
|
|
- Model History not to save history on self
|
|
- **core**: Correct lookup for model history test setup
|
|
- **access**: remove test cases for Team prarent_object
|
|
- **access**: History Entry checks for Team model
|
|
- **access**: API Field Checks for Team History
|
|
- **access**: History Entry checks for Organization model
|
|
- **access**: API Field Checks for Organization History
|
|
- Fix History API checks for kb
|
|
- Fix History API checks for project milestone
|
|
- Fix History Entry checks for models
|
|
- **config_management**: History Entry checks for Config_group_hosts model
|
|
- **settings**: History Entry checks for External Link model
|
|
- **project_management**: History Entry checks for Project Type model
|
|
- **project_management**: History Entry checks for Project State model
|
|
- **project_management**: History Entry checks for Project Milestone model
|
|
- **project_management**: History Entry checks for Project model
|
|
- **itim**: History Entry checks for Service model
|
|
- **itim**: History Entry checks for Cluster Type model
|
|
- **itim**: History Entry checks for Port model
|
|
- **itim**: History Entry checks for Cluster model
|
|
- **itam**: History Entry checks for Software Version model
|
|
- **itam**: History Entry checks for Software Category model
|
|
- **itam**: History Entry checks for Software model
|
|
- **itam**: History Entry checks for Operating System Version model
|
|
- **itam**: History Entry checks for Operating System model
|
|
- **itam**: History Entry checks for Device Type model
|
|
- **itam**: History Entry checks for Device OS model
|
|
- **itam**: History Entry checks for Device Model model
|
|
- **itam**: History Entry checks for Device model
|
|
- **core**: History Entry checks for Ticket Comment Category model
|
|
- **core**: History Entry checks forTicket Category model
|
|
- **config_management**: History Entry checks for Config Groups Software model
|
|
- **config_management**: History Entry checks for Config Groups model
|
|
- **assistance**: History Entry checks for Knowledge base category model
|
|
- **assistance**: History Entry checks for Knowledge base model
|
|
- **itam**: Device Software History Entry checks
|
|
- **core**: Manufacturer History Entry checks
|
|
- **core**: Model History Entries Test Suite
|
|
- **core**: History Model Unit test cases for model and tenancy checks
|
|
- **settings**: API Field Checks for External Links History
|
|
- **project_management**: API Field Checks for Project Type History
|
|
- **project_management**: API Field Checks for Project State History
|
|
- **project_management**: API Field Checks for Project Milestone History
|
|
- **project_management**: API Field Checks for Project History
|
|
- **itim**: API Field Checks for Service History
|
|
- **itim**: API Field Checks for Port History
|
|
- **itim**: API Field Checks for Cluster Type History
|
|
- **itim**: API Field Checks for Cluster History
|
|
- **core**: API Field Checks for Ticket Comment Category History
|
|
- **core**: API Field Checks for Ticket Category History
|
|
- **config_management**: API Field Checks for Config Group Software History
|
|
- **config_management**: API Field Checks for Config Group Hosts History
|
|
- **config_management**: API Field Checks for Config Group History
|
|
- **assistance**: API Field Checks for Knowledge base category History
|
|
- **assistance**: API Field Checks for Knowledge base History
|
|
- **itam**: API Field Checks for Software Version History
|
|
- **itam**: API Field Checks for Software Category History
|
|
- **itam**: API Field Checks for Software History
|
|
- **itam**: API Field Checks for Operating System Version History
|
|
- **itam**: API Field Checks for Operating System History
|
|
- **itam**: API Field Checks for Device Type History
|
|
- **itam**: API Field Checks for Device OS History
|
|
- **itam**: API Field Checks for Device Model History
|
|
- **itam**: API Field Checks for Device History
|
|
- **core**: Unit Test Suite for History Model API field checks urls can either be str or hyperlink
|
|
- **itam**: API Field Checks for Device Software History
|
|
- **core**: API Field Checks for Manufacturer History
|
|
- **core**: API Field Checks for Model History
|
|
- **core**: Unit Test Suite for History Model API field checks
|
|
- **core**: Functional Test for History Model APIPermission updated to cater for tenancy obj
|
|
- **core**: Functional Test for History Model API Permissions and Metadata
|
|
- **core**: Unit Test for History Model Viewset
|
|
- **itam**: remove test cases for os version model.parent_object as it's not required
|
|
- **core**: disable hisotry viewset function test
|
|
- **core**: correct kwargs for history tests
|
|
- **core**: Remove old history model viewset tests
|
|
- Disable Old History Model test suites
|
|
- **core**: Ensure that when parent_ticket changes on a ticket an action comment is created
|
|
- **core**: Confirm on category change to ticket that an action comment is created
|
|
|
|
## 1.10.1 (2025-02-14)
|
|
|
|
### Fixes
|
|
|
|
- **python**: Dont use system TimeZone data, use python zoneinfo module zone data
|
|
|
|
## 1.10.0 (2025-02-10)
|
|
|
|
### feat
|
|
|
|
- **settings**: Provide user with the ability to set browser mode
|
|
- **core**: Parent Ticket validation added to ticket serializer
|
|
- **core**: Add to ticket endpoint the ability to filter using `parent_ticket`
|
|
- **core**: Add to ticket model a function for circular dependecy check of parent ticket
|
|
- **core**: Migrate Notes data to new table
|
|
- **project_management**: Add notes tab to Project Milestone details page
|
|
- **itam**: Add notes tab to Software Version details page
|
|
- **itam**: Add notes tab to Operating System details page
|
|
- **core**: Ensure when editing a model note, the modified user is updated.
|
|
- **assistance**: Knowledge Base Category Notes viewset
|
|
- **assistance**: Knowledge Base Category Notes Serializer
|
|
- **assistance**: Knowledge Base Category Notes Model
|
|
- **project_management**: Project Type Notes ViewSet
|
|
- **project_management**: Project Type Notes Serializer
|
|
- **project_management**: Project Type Notes Model
|
|
- **project_management**: Project State Notes ViewSet
|
|
- **project_management**: Project State Notes Serializer
|
|
- **project_management**: Project State Notes Model
|
|
- **project_management**: Project Milestone Notes ViewSet
|
|
- **project_management**: Project Milestone Notes Serializer
|
|
- **project_management**: Project Milestone Notes Model
|
|
- **itam**: Software Version Notes ViewSet
|
|
- **itam**: Software Version Notes Serializer
|
|
- **itam**: Software Version Notes Model
|
|
- **itam**: Software Category Notes ViewSet
|
|
- **itam**: Software Category Notes Serializer
|
|
- **itam**: Software Category Notes Model
|
|
- **itam**: Operating System Version Notes ViewSet
|
|
- **itam**: Operating System Version Notes Serializer
|
|
- **itam**: Operating System Version Notes Model
|
|
- **settings**: External Link Notes ViewSet
|
|
- **settings**: External Link Notes Serializer
|
|
- **settings**: External Link Notes Model
|
|
- **itam**: Device Model Notes ViewSet
|
|
- **itam**: Device Model Notes Serializer
|
|
- **itam**: Device Model Notes Model
|
|
- **itam**: Device Type Notes ViewSet
|
|
- **itam**: Device Type Notes Serializer
|
|
- **itam**: Device Type Notes Model
|
|
- **core**: Create an action comment on a ticket when the category changes
|
|
- **itim**: Porte Notes ViewSet
|
|
- **itim**: Porte Notes Serializer
|
|
- **itim**: Porte Notes Model
|
|
- **itim**: Cluster Type Notes ViewSet
|
|
- **itim**: Cluster Type Notes Serializer
|
|
- **itim**: Cluster Type Notes Model
|
|
- **project_management**: Project Notes ViewSet
|
|
- **project_management**: Project Notes Serializer
|
|
- **project_management**: Project Notes Model
|
|
- **itim**: Service Notes ViewSet
|
|
- **itim**: Service Notes Serializer
|
|
- **itim**: Service Notes Model
|
|
- **itim**: Cluster Notes ViewSet
|
|
- **itim**: Cluster Notes Serializer
|
|
- **itim**: Cluster Notes Model
|
|
- **itam**: Software Notes ViewSet
|
|
- **itam**: Software Notes Serilaizer
|
|
- **itam**: Software Notes Model
|
|
- **itam**: Operating System Notes ViewSet
|
|
- **itam**: Operating System Notes Serializer
|
|
- **itam**: Operating System Notes Model
|
|
- **core**: Manufacturer Notes viewset
|
|
- **core**: Manufacturer Notes serializer
|
|
- **core**: Manufacturer Notes Model
|
|
- **config_management**: Config Group Notes ViewSet
|
|
- **config_management**: Config Group Notes Serializer
|
|
- **config_management**: Config Group Notes Model
|
|
- **assistance**: Knowledge Base Notes ViewSet
|
|
- **assistance**: Knowledge Base Notes Serializer
|
|
- **assistance**: Knowledge Base Notes Model
|
|
- **access**: Team Notes ViewSet
|
|
- **access**: Team Notes Serializer
|
|
- **access**: Team Notes Model
|
|
- **access**: Organization Notes ViewSet
|
|
- **access**: Organization Notes Serializer
|
|
- **access**: Organization Notes Model
|
|
- **itam**: Device Notes ViewSet
|
|
- **itam**: Device Notes Serializer
|
|
- **itam**: Device Notes Model
|
|
- **core**: Base viewset for model notes
|
|
- **core**: Base serializer for model notes
|
|
- **core**: Base model for model notes
|
|
- **core**: Add failsafe to throw an exception if no action comment will be created
|
|
- **core**: Add field parent_ticket to base ticket view serializer
|
|
- **project_management**: Add field parent_ticket to project task ticket view serializer
|
|
- **itim**: Add field parent_ticket to problem ticket view serializer
|
|
- **itim**: Add field parent_ticket to incident ticket view serializer
|
|
- **itim**: Add field parent_ticket to change ticket view serializer
|
|
- **assistance**: Add field parent_ticket to request ticket view serializer
|
|
- **core**: Add field parent to ticket model
|
|
|
|
### Fixes
|
|
|
|
- **core**: Dont attempt to access parent_ticket field during ticket validation if it does not exist
|
|
- **core**: Permissions require the parent model for model notes
|
|
- **access**: field organization requires team related_model for org
|
|
- **core**: Use generic APIError for ticket save when no action comment will be created
|
|
|
|
### Refactoring
|
|
|
|
- Squash migrations so there is less of them for model notes
|
|
- **access**: Dont add releationship from tenancyObject.organization to organization model
|
|
|
|
### Tests
|
|
|
|
- **settings**: Test User Settings API render to ensure browser_model exists and is the correct type
|
|
- **settings**: Test User Settings model to ensure `browser_mode` field exists
|
|
- **access**: Team Note Model Check object requires org
|
|
- **settings**: External Links Note Model Checks
|
|
- **project_management**: Project Type Note Model Checks
|
|
- **project_management**: Project State Note Model Checks
|
|
- **project_management**: Project Note Model Checks
|
|
- **project_management**: Project Milestone Note Model Checks
|
|
- **itim**: Service Note Model Checks
|
|
- **itim**: Port Note Model Checks
|
|
- **itim**: Cluster Type Note Model Checks
|
|
- **itim**: Cluster Note Model Checks
|
|
- **itam**: Software Version Note Model Checks
|
|
- **itam**: Software Note Model Checks
|
|
- **itam**: Software Category Note Model Checks
|
|
- **itam**: Operating System Version Note Model Checks
|
|
- **itam**: Operating System Note Model Checks
|
|
- **itam**: Device Type Note Model Checks
|
|
- **itam**: Device Note Model Checks
|
|
- **itam**: Device Model Note Model Checks
|
|
- **core**: Manufacturer Note Model Checks
|
|
- **config_management**: Config Group Note Model Checks
|
|
- **assistance**: KB Note Model Checks
|
|
- **assistance**: KB Category Note Model Checks
|
|
- **access**: Team Note Model Checks
|
|
- **access**: Organization Note Model Checks
|
|
- **core**: Model Notes Test Suite
|
|
- **settings**: Serializer Checks for External Links Notes
|
|
- **Project_management**: Serializer Checks for Project Type Notes
|
|
- **Project_management**: Serializer Checks for Project State Notes
|
|
- **Project_management**: Serializer Checks for Project Notes
|
|
- **Project_management**: Serializer Checks for Project Milestone Notes
|
|
- **itim**: Serializer Checks for Service Notes
|
|
- **itim**: Serializer Checks for Port Notes
|
|
- **itim**: Serializer Checks for Cluster Type Notes
|
|
- **itim**: Serializer Checks for Cluster Notes
|
|
- **itam**: Serializer Checks for Software Version Notes
|
|
- **itam**: Serializer Checks for Software Notes
|
|
- **itam**: Serializer Checks for Software Category Notes
|
|
- **itam**: Serializer Checks for Operating System Version Notes
|
|
- **itam**: Serializer Checks for Operating System Notes
|
|
- **itam**: Serializer Checks for Device Type Notes
|
|
- **itam**: Serializer Checks for Device Notes
|
|
- **itam**: Serializer Checks for Device Model Notes
|
|
- **core**: Serializer Checks for Manufacturer Notes
|
|
- **config_management**: Serializer Checks for Config Groups Notes
|
|
- **assistance**: Serializer Checks for KB Notes
|
|
- **assistance**: Serializer Checks for KB Category Notes
|
|
- **access**: Serializer Checks for Team Notes
|
|
- **access**: Serializer Checks for Organization Notes
|
|
- **core**: Test Suite for Model Notes checks
|
|
- **api**: API Fileds user to be super user for tests to run
|
|
- **settings**: External Links Notes Function Viewset Tests
|
|
- **project_management**: Project Type Notes Function Viewset Tests
|
|
- **project_management**: Project State Notes Function Viewset Tests
|
|
- **project_management**: Project Notes Function Viewset Tests
|
|
- **project_management**: Project Milestone Notes Function Viewset Tests
|
|
- **itim**: Service Notes Function Viewset Tests
|
|
- **itim**: Port Notes Function Viewset Tests
|
|
- **itim**: Cluster Types Notes Function Viewset Tests
|
|
- **itim**: Cluster Notes Function Viewset Tests
|
|
- **itam**: Software Version Notes Function Viewset Tests
|
|
- **itam**: Software Notes Function Viewset Tests
|
|
- **itam**: Software Category Notes Function Viewset Tests
|
|
- **itam**: Operating System Version Notes Function Viewset Tests
|
|
- **itam**: Operating System Notes Function Viewset Tests
|
|
- **itam**: Device Type Notes Function Viewset Tests
|
|
- **itam**: Device Notes Function Viewset Tests
|
|
- **itam**: Device Model Notes Function Viewset Tests
|
|
- **core**: Manufacturer Notes Function Viewset Tests
|
|
- **config_management**: Config Groups Notes Function Viewset Tests
|
|
- **assistance**: Knowledge Base Notes Function Viewset Tests
|
|
- **assistance**: Knowledge Base Category Notes Function Viewset Tests
|
|
- **access**: Team Notes Function Viewset Tests
|
|
- **access**: Organization Notes Function Viewset Tests
|
|
- **core**: Model Notes Test Cases
|
|
- Remove old notes model tests
|
|
- **settings**: External Notes Test Cases for ViewSet
|
|
- **project_management**: Project Type Notes Test Cases for ViewSet
|
|
- **project_management**: Project State Notes Test Cases for ViewSet
|
|
- **project_management**: Project Notes Test Cases for ViewSet
|
|
- **project_management**: Project Milestone Notes Test Cases for ViewSet
|
|
- **itim**: Service Notes Test Cases for ViewSet
|
|
- **itim**: Port Notes Test Cases for ViewSet
|
|
- **itim**: Cluster Type Notes Test Cases for ViewSet
|
|
- **itim**: Cluster Notes Test Cases for ViewSet
|
|
- **itam**: Software Version Notes Test Cases for ViewSet
|
|
- **itam**: Software Notes Test Cases for ViewSet
|
|
- **itam**: Software Category Notes Test Cases for ViewSet
|
|
- **itam**: Operating System Version Notes Test Cases for ViewSet
|
|
- **itam**: Operating_system Notes Test Cases for ViewSet
|
|
- **itam**: Device Type Notes Test Cases for ViewSet
|
|
- **itam**: Device Notes Test Cases for ViewSet
|
|
- **itam**: Device Model Notes Test Cases for ViewSet
|
|
- **core**: Manufacturer Notes Test Cases for ViewSet
|
|
- **config_management**: Config Groups Notes Test Cases for ViewSet
|
|
- **assistance**: Knowledge Base Notes Test Cases for ViewSet
|
|
- **assistance**: Knowledge Base Category Notes Test Cases for ViewSet
|
|
- **access**: Team Notes Test Cases for ViewSet
|
|
- **access**: Organization Notes Test Cases for ViewSet
|
|
- **project_management**: Correct kwargs for Project Milestone Notes Test Cases for API Field Checks
|
|
- **assistance**: Knowledge Base Category Notes Test Cases for API Field Checks
|
|
- **Settings**: External Link Notes Test Cases for API Field Checks
|
|
- **project_management**: Project Type Notes Test Cases for API Field Checks
|
|
- **project_management**: Project State Notes Test Cases for API Field Checks
|
|
- **project_management**: Project Notes Test Cases for API Field Checks
|
|
- **project_management**: Project Milestone Notes Test Cases for API Field Checks
|
|
- **itim**: Service Notes Test Cases for API Field Checks
|
|
- **itim**: Port Notes Test Cases for API Field Checks
|
|
- **itim**: Cluster Types Notes Test Cases for API Field Checks
|
|
- **itim**: Cluster Notes Test Cases for API Field Checks
|
|
- **itam**: Software Version Notes Test Cases for API Field Checks
|
|
- **itam**: Software Notes Test Cases for API Field Checks
|
|
- **itam**: Software Category Notes Test Cases for API Field Checks
|
|
- **itam**: Device Type Notes Test Cases for API Field Checks
|
|
- **itam**: Device Notes Test Cases for API Field Checks
|
|
- **itam**: Device Model Notes Test Cases for API Field Checks
|
|
- **itam**: Operating System Test Cases for API Field Checks
|
|
- **itam**: Operating System Version Test Cases for API Field Checks
|
|
- **core**: Manufacturer Test Cases for API Field Checks
|
|
- **config_management**: Config Group Test Cases for API Field Checks
|
|
- **assistance**: KB Test Cases for API Field Checks
|
|
- **access**: Team Test Cases for API Field Checks
|
|
- **access**: Organization Test Cases for API Field Checks
|
|
- **core**: Model Notes Base Test Cases for API Field Checks
|
|
- remove old notes model tests
|
|
- Update url_name to match new notes endpoint
|
|
- **config_Management**: Update url_name to match new notes endpoint
|
|
- **core**: Remove notes test cases for previous notes model
|
|
|
|
## 1.9.0 (2025-02-06)
|
|
|
|
### feat
|
|
|
|
- **core**: Validate user field to ensure ticket comments always have user who added comment
|
|
- **core**: Cache ticket linked item queryset
|
|
- Views to cache discovered serializer
|
|
- **core**: When changing ticket description create an action comment with the details
|
|
- **core**: When changing a ticket real finish date create an action comment with the details
|
|
- **core**: When changing a ticket real start date create an action comment with the details
|
|
- **core**: When changing a ticket planned finish date create an action comment with the details
|
|
- **core**: When changing a ticket planned start date create an action comment with the details
|
|
- **core**: When changing a ticket milestone create an action comment with the changed details
|
|
- **core**: Add Priority badge field to ALL ticket types
|
|
- **core**: Add Impact badge field to ALL ticket types
|
|
- **core**: Add urgency badge field to ALL ticket types
|
|
|
|
### Fixes
|
|
|
|
- **project_management**: Add missing attribute `view_description` to project tasks viewset
|
|
- **settings**: Add missing attribute `view_description` to user settings viewset
|
|
- **settings**: Add missing attribute `view_description` to app settings viewset
|
|
- **itim**: Add missing attribuite to problem ticket viewset
|
|
- **itim**: Add missing attribuite to incident ticket viewset
|
|
- **itim**: Add missing attribuite to change ticket viewset
|
|
- **itimm**: correct truthy check for service device ViewSet property when evaluating queryset
|
|
- **itam**: correct truthy check for service cluster ViewSet property when evaluating queryset
|
|
- **itam**: correct truthy check for service cluster ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for service device ViewSet property when evaluating serializer_class
|
|
- **itam**: add missing attribute view_name to celery log viewset
|
|
- **api**: correct get_view_name to prioritize view_name over model.verbose_name
|
|
- **itam**: correct truthy check for software version ViewSet property when evaluating queryset
|
|
- **itam**: correct truthy check for os version ViewSet property when evaluating queryset
|
|
- **itam**: correct truthy check for device software ViewSet property when evaluating queryset
|
|
- **itam**: correct truthy check for device os ViewSet property when evaluating queryset
|
|
- **itam**: correct truthy check for software version ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for software category ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for os version ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for device software ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for device os ViewSet property when evaluating serializer_class
|
|
- **core**: correct varname for queryset within notes queryset
|
|
- **core**: add missing attribute view_description to ticket linked item viewset
|
|
- **core**: add missing attribute view_description to ticket comment viewset
|
|
- **core**: add missing attribute view_description to note viewset
|
|
- **core**: add missing attribute view_description to related ticket log viewset
|
|
- **core**: add missing attribute view_description to celery log viewset
|
|
- **core**: add missing attribute view_description to history viewset
|
|
- **core**: correct truthy check for notes ViewSet property when evaluating serializer_class
|
|
- **core**: correct truthy check for history ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for notes ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for related ticket ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for ticket comment ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for ticket linked items ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for ticket linked items ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for ticket comment ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for related ticket ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for history ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for celery log ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for Ticket Base ViewSet property when evaluating queryset
|
|
- **core**: correct truthy check for ticket base ViewSet property when evaluating serializer_class
|
|
- **assistance**: Add missing attribute `view_description` to request ticket ViewSet
|
|
- **settinggs**: Add missing attribute `view_description` to external links ViewSet
|
|
- **core**: Add missing attribute `view_description` to ticket comment category ViewSet
|
|
- **core**: Add missing attribute `view_description` to ticekt category ViewSet
|
|
- **core**: Add missing attribute `view_description` to Manufacturer ViewSet
|
|
- **project_management**: correct truthy check for project milestone ViewSet property when evaluating queryset
|
|
- **settings**: correct truthy check for user settings ViewSet property when evaluating serializer_class
|
|
- **settings**: correct truthy check for external links ViewSet property when evaluating serializer_class
|
|
- **settings**: correct truthy check for app settings ViewSet property when evaluating serializer_class
|
|
- **project_management**: correct truthy check for project milestone ViewSet property when evaluating queryset
|
|
- **project_management**: correct truthy check for project ViewSet property when evaluating serializer_class
|
|
- **project_management**: correct truthy check for project type ViewSet property when evaluating serializer_class
|
|
- **project_management**: correct truthy check for project state ViewSet property when evaluating serializer_class
|
|
- **project_management**: correct truthy check for project milestone ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for service ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for port ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for cluster ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for cluster type ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for software ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for os ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for device ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for device type ViewSet property when evaluating serializer_class
|
|
- **itam**: correct truthy check for device model ViewSet property when evaluating serializer_class
|
|
- **core**: correct truthy check for ticket comment category ViewSet property when evaluating serializer_class
|
|
- **core**: correct truthy check for ticket category ViewSet property when evaluating serializer_class
|
|
- **core**: correct truthy check for manufacturer ViewSet property when evaluating serializer_class
|
|
- **config_management**: correct truthy check for config group ViewSet property when evaluating queryset
|
|
- **config_management**: correct truthy check for config group ViewSet property when evaluating serializer_class
|
|
- **config_management**: correct truthy check for config group software ViewSet property when evaluating serializer_class
|
|
- **config_management**: correct truthy check for config group software ViewSet property when evaluating queryset
|
|
- **assistance**: correct truthy check for model kb article ViewSet property when evaluating queryset
|
|
- **assistance**: correct truthy check for model kb article ViewSet property when evaluating serializer_class
|
|
- **assistance**: correct truthy check for kb ViewSet property when evaluating serializer_class
|
|
- **assistance**: correct truthy check for kb ViewSet property when evaluating serializer_class
|
|
- **access**: correct truthy check for team ViewSet property when evaluating serializer_class
|
|
- **access**: correct truthy check for team ViewSet property when evaluating queryset
|
|
- **access**: correct truthy check for team user ViewSet property when evaluating queryset
|
|
- **access**: correct truthy check for team user ViewSet property when evaluating serializer_class
|
|
- **access**: correct truthy check for organization ViewSet property when evaluating serializer_class
|
|
- **api**: correct truthy check for set property when evaluating serializer_class
|
|
- **api**: correct truthy check for set property when evaluating queryset
|
|
- **api**: correct variable name in common viewset for queryset
|
|
- **config_management**: config group software viewset must cache queryset
|
|
- **config_management**: config group viewset must cache queryset
|
|
- **assistance**: Knowledge base category viewset must cache serializer_class
|
|
- **access**: Team viewset must cache serializer_class
|
|
- **access**: Team viewset must cach queryset
|
|
- **access**: Team User viewset must cach queryset
|
|
- **api**: Add missing property `bacjk_url` to Common viewset
|
|
- **api**: Common viewset to cache and use queryset Object
|
|
- **access**: When conduting permission check for user settings, if user not owner of settings, deny access
|
|
- **access**: when checking object permissions, dont cast obj to int untill checking it exists
|
|
- **access**: org mixin get_obj_org not to call get_object
|
|
- **core**: ensure item_type exists before trying to get queryset
|
|
- **core**: Ticket Action comment date fields must be checked if empty before use
|
|
- **settings**: grant the user access to their own settings object
|
|
- **settings**: grant the user access to their own settings
|
|
|
|
### Refactoring
|
|
|
|
- **access**: when checking obj permission use view cached obj organization
|
|
- **access**: When fetching obj org, if pk exist attempt to fetch object
|
|
- **core**: When fetching a ticket, fetch related fields
|
|
- **core**: Ticket action comment for changing milestone to use item tasg
|
|
- **core**: Ticket action comment for changing project to use item tasg
|
|
|
|
### Tests
|
|
|
|
- **core**: Add missing unit tests for notes ticket viewset
|
|
- **settings**: Add missing unit tests for user settings ticket viewset
|
|
- **settings**: Add missing unit tests for app settings ticket viewset
|
|
- **project_management**: Add missing unit tests for project task ticket viewset
|
|
- **api**: Add kwargs as arg to test cases
|
|
- **itim**: Add missing unit tests for problem ticket viewset
|
|
- **itim**: Add missing unit tests for incident ticket viewset
|
|
- **itim**: Add missing unit tests for change ticket viewset
|
|
- **core**: add permisssion class override test case for celery results
|
|
- Add empty kwargs to ViewSet index page test cases
|
|
- **itam**: Add missing unit tests for software version viewset
|
|
- **itam**: Add missing unit tests for software categories viewset
|
|
- **itam**: Add missing unit tests for os versions viewset
|
|
- **itam**: Add missing unit tests for software installs viewset
|
|
- **itam**: Add missing unit tests for os installs viewset
|
|
- **itam**: Add missing unit tests for device software viewset
|
|
- **itam**: Add missing unit tests for device operating system viewset
|
|
- **api**: Add kwargs as arg to test cases
|
|
- **core**: Add missing unit tests for ticket linked items viewset
|
|
- **core**: Add missing unit tests for ticket comment viewset
|
|
- **core**: Add missing unit tests for celery log viewset
|
|
- **core**: Add missing unit tests for history viewset
|
|
- **core**: Add missing unit tests for related tickets viewset
|
|
- **assistance**: Add missing unit tests for request ticket viewset
|
|
- **api**: queryset and serializer_class test cases updated to use Fake request object
|
|
- **settings**: Add missing unit tests for external links viewset
|
|
- **project_management**: Add missing unit tests for project type viewset
|
|
- **project_management**: Add missing unit tests for project state viewset
|
|
- **project_management**: Add missing unit tests for project milestone viewset
|
|
- **project_management**: Add missing unit tests for project viewset
|
|
- **itim**: Add missing unit tests for service viewset
|
|
- **itim**: Add missing unit tests for ports viewset
|
|
- **itim**: Add missing unit tests for cluster types viewset
|
|
- **itim**: Add missing unit tests for cluster viewset
|
|
- **itam**: Add missing unit tests for Software viewset
|
|
- **itam**: Add missing unit tests for Operating System viewset
|
|
- **itam**: Add missing unit tests for Device Type viewset
|
|
- **itam**: Add missing unit tests for Device Model viewset
|
|
- **itam**: Add missing unit tests for Device viewset
|
|
- **api**: dont mock the qs bool
|
|
- **core**: Add missing unit tests for Ticket Comment Category viewset
|
|
- **core**: Add missing unit tests for Ticket Category viewset
|
|
- **core**: Add missing unit tests for manufacturer viewset
|
|
- **config_management**: Add missing unit tests for config groups software viewset
|
|
- **config_management**: Add missing unit tests for config groups viewset
|
|
- **assistance**: Add missing unit tests for Model Knowledge Base Article viewset
|
|
- **assistance**: Add missing unit tests for Knowledge Base Category viewset
|
|
- **assistance**: Add missing unit tests for Knowledge Base viewset
|
|
- **access**: Add missing unit tests for team user viewset
|
|
- **access**: Add missing unit tests for team viewset
|
|
- **access**: Add missing unit tests for organization viewset
|
|
- **base**: Ensure viewsets are caching and using the serializer_class object
|
|
- **base**: Ensure viewsets are caching and using the queryset object
|
|
- **core**: Test case to ensure ticket comment always has user added
|
|
- **settings**: when checking if user can delete own settings, user must be owner of settings
|
|
- **settings**: regardless of permissions a user can change their own settings
|
|
- **access**: during permission check function has_permission ensure `get_object` not called
|
|
- **core**: Ensure that an action comment is created when ticket description is edited
|
|
- **core**: Ticket Action comment test cases for real_finish_date actions
|
|
- **core**: Ticket Action comment test cases for real_start_date actions
|
|
- **core**: Ticket Action comment test cases for planned_finish_date actions
|
|
- **core**: Ticket Action comment test cases for planned_start_date actions
|
|
- **core**: Ticket Action comment test cases for milestone actions
|
|
- **core**: Ticket Action comment test cases for project actions
|
|
- **core**: Ticket Action comment tests moved to their own suite
|
|
- **core**: Unit test cases for ticket urgency_badge field checks
|
|
- **core**: Unit test cases for ticket priority_badge field checks
|
|
- **core**: Unit test cases for ticket impact_badge field checks
|
|
- **settings**: Remove no-permission failure test as user settings require no permissions
|
|
|
|
## 1.8.0 (2025-01-23)
|
|
|
|
### feat
|
|
|
|
- **python**: update django 5.1.4 -> 5.1.5
|
|
- **access**: TenancyManager object to cache the users team lokkup
|
|
- **access**: if organization object casted to int, return organization.id
|
|
- **base**: Dont enable metrics by default
|
|
- **base**: Add exporter to celery
|
|
- **base**: Add exporter to gunicorn
|
|
- **base**: Add django-prometheus for metrics export
|
|
- **api**: fetch doc path for view metadata
|
|
- **settings**: Add new field button text
|
|
- **itim**: Ability to add external link to a service
|
|
- **access**: Add organization to team display_name
|
|
- **assistance**: add category and org to model articles tab
|
|
- **api**: Enable fetching related ticket metadata for the other side of the related ticket
|
|
- **core**: Add ticket comment field metadata to api meta
|
|
- **core**: Add ticket linked item field metadata to api meta
|
|
- **core**: Add related ticket field metadata to api meta
|
|
- **api**: Add option to viewset to render field markdown metadata
|
|
- **api**: Add item metadata to markdown field for renderable items
|
|
- **api**: Add item metadata to markdown field for renderable items
|
|
|
|
### Fixes
|
|
|
|
- **core**: triage user requires access to date fields for change, incident, problem and project task tickets
|
|
- **core**: triage user requires access to date fields for tickets
|
|
- **core**: User must be a required field for ticket comment
|
|
- **access**: use request object passed to has_object_permission
|
|
- **core**: ensure when updating, reques.tenancy object perm checking is used
|
|
- **project**: when creating a project, fetch the organization object
|
|
- **api**: Only attempt to access a app_settings object for org field if request object exists
|
|
- **core**: When adding a ticket, query for org
|
|
- **access**: use the request user teams within Manager
|
|
- **access**: cached orgs is an int list
|
|
- **base**: metrics dir env var PROMETHEUS_MULTIPROC_DIR must ALWAYS exist
|
|
- **base**: Dynammic settings determined by if metrics are enabled
|
|
- **access**: Return API exception, not django
|
|
- **api**: correctly return API exceptions for user to rectify
|
|
- **core**: Set user whom added comment as comment user
|
|
- **core**: display_name is not a mandatory field for related ticket
|
|
- **core**: display_name is not a mandatory field for ticket linked item
|
|
- **api**: Ensure ALL required classes for viewset are inherited
|
|
|
|
### Refactoring
|
|
|
|
- **access**: Dont override django middleware, create own for access tenancy
|
|
- **access**: Move user perm logic to request.tenancy object
|
|
- Move app_settings object to request object
|
|
- **access**: cache app settings during perm check
|
|
- **access**: prefetch team related fields
|
|
|
|
### Tests
|
|
|
|
- **core**: Correct ticket tests as triage user is supposed to have access to ticket date fields
|
|
- update to cater for tenancy object in request
|
|
- Initial k6s individual page speed test cases
|
|
- **app**: metrics_enabled setings checks
|
|
- **app**: refactor. order tests alphanumerical
|
|
- **api**: ensure documentation key and data is added to API metadata
|
|
- **settings**: check to ensure API fields returned are present and correct type for external_links model
|
|
- **assistance**: Ensure category fields are present for model articles
|
|
|
|
## 1.7.0 (2025-01-04)
|
|
|
|
### feat
|
|
|
|
- **access**: Enable Objects from global organization to be viewable by user with the permission
|
|
- **access**: Enable Objects from globally set organization to return within query
|
|
- **access**: Enable the calling of the dynamic permissions function to obtain permissions
|
|
- **itam**: Cater for RabbitMQ errors when uploading inventory
|
|
- **itam**: On Inventory upload validate existing device
|
|
- **access**: During permission checking also capture Http404
|
|
- **access**: Super User to be granted permission
|
|
- **access**: Cache the permission required during permission checking
|
|
- **api**: Add `IndexViewset` to ViewSet mixin
|
|
- **access**: If the user lacks the permission during permission checks, return sooner
|
|
- **access**: Enforce view action and HTTP/Method match for permission checks
|
|
- **itim**: External Links to display on cluster details page
|
|
- **api**: Add API v2 Endpoint for cluster services
|
|
- **api**: distinguish between read-only and authenticateed user permissions
|
|
|
|
### Fixes
|
|
|
|
- **api**: Ensure ALL required classes for viewset are inherited
|
|
- **itam**: Dont query parent class for permissions
|
|
- **core**: If no org specified serializer fetch, dont attempt to access
|
|
- **access**: If no org specified during permission check, rtn false for permission
|
|
- **itam**: return serializer for inventory endpoint
|
|
- **api**: base index must inherit from IndexViewset
|
|
- **core**: Dont attempt to access the object if it doesn't exist when fetching ticket permissions
|
|
- **access**: Cached list objects must be a list including an empty one as required
|
|
- **core**: when gather ticket permissions, use getter as object may not exist
|
|
- **core**: action metadata to use view permission for tickets
|
|
- **access**: Use request.method for determining the HTTP/Method for permission checks
|
|
- **access**: Add HTTP/Method=DELETE as valid option for object delete/destroy.
|
|
- **access**: Ensure Object permission are checked when an object is having an action performed against it.
|
|
- **core**: History View is a read-only view
|
|
- **core**: Permissions for Related ticket to be derived from ticket org
|
|
- **access**: Team User permission organiztion is team org
|
|
|
|
### Refactoring
|
|
|
|
- **itam**: Device UUID field requires no default
|
|
- **itam**: mv inventory task to itam app
|
|
- **access**: Use exceptions for permission flow as required
|
|
- **api**: dedup code within viewset mixin
|
|
- **access**: Object permission checking moved to `has_object_permission` function
|
|
- **access**: move ability to get required permissions from permissions mixin to organization mixin
|
|
- **core**: move ticket linked item to dynamic parent model
|
|
- **api**: Use new re-writen Mixins for Tenancy and Permission checks
|
|
- **access**: Organization Permission Mixin now caters for API ONLY
|
|
- **access**: Organization Mixin now caters for API ONLY
|
|
|
|
### Tests
|
|
|
|
- **access**: Skip test case for appsettings different organization due to model not being tenancy model.
|
|
- **access**: Ensure items returned from query are from user organization and/or globally set organization
|
|
- **itam**: API v2 Inventory Permission Check skip diff org
|
|
- **itam**: API v2 Inventory Permission Checks
|
|
- mv inventory test to itam app
|
|
- **access**: Test Cases for Organization Permission Mixin
|
|
- **api**: Adjust test case for metadata visibility
|
|
- **core**: remove different org testcase from history checks
|
|
- **core**: When testing if history access is possible for user with perms, correct status is HTTP/200
|
|
- **access**: When adding org, test case must use non-super user
|
|
- **itim**: Ensure external_links are returned as part of _urls
|
|
- **itim**: Add API v2 permission checks for cluster services
|
|
- **itim**: Add API v2 permission checks for device services
|
|
|
|
## 1.6.0 (2024-12-23)
|
|
|
|
### feat
|
|
|
|
- **access**: Check if organization field is read-only during permission check
|
|
- **access**: Ability to specify parent model for permission to do
|
|
- **information_management**: add cluster type kb article linking
|
|
- **information_management**: Ability to link Knowledge Base article to a Software
|
|
- **information_management**: Ability to link Knowledge Base article to a Software
|
|
- **information_management**: Ability to link Knowledge Base article to a Software Category
|
|
- **information_management**: Ability to link Knowledge Base article to a Operating System Version
|
|
- **information_management**: Ability to link Knowledge Base article to a Operating System
|
|
- **information_management**: Ability to link Knowledge Base article to a Device
|
|
- **information_management**: Ability to link Knowledge Base article to a Device Type
|
|
- **information_management**: Ability to link Knowledge Base article to a Device Model
|
|
- **information_management**: Ability to link Knowledge Base article to an External Link
|
|
- **information_management**: Ability to link Knowledge Base article to a Project
|
|
- **information_management**: Ability to link Knowledge Base article to a Project Type
|
|
- **information_management**: Ability to link Knowledge Base article to a Project State
|
|
- **information_management**: Ability to link Knowledge Base article to a Project Milestone
|
|
- **information_management**: Ability to link Knowledge Base article to a Service
|
|
- **information_management**: Ability to link Knowledge Base article to a Port
|
|
- **information_management**: Ability to link Knowledge Base article to a Cluster Type
|
|
- **information_management**: Ability to link Knowledge Base article to a Cluster
|
|
- **information_management**: Ability to link Knowledge Base article to a Ticket Category
|
|
- **information_management**: Ability to link Knowledge Base article to a Manufacturer
|
|
- **information_management**: Ability to link Knowledge Base article to a Config Group
|
|
- **information_management**: Ability to link Knowledge Base article to a Team
|
|
- **information_management**: Ability to link Knowledge Base article to an Organization
|
|
- **information_management**: Add API v2 Endpoint for model KB articles
|
|
- **information_management**: Add method `get_url` to model kb article
|
|
- **information_management**: DB Model for linking KB articles to models
|
|
- **assistanace**: remove kb article content from details tab
|
|
- **core**: call models `clean` method prior to saving model to DB
|
|
- **api**: during permission checking, if model is an organization and the user is a manager allow access to the organization.
|
|
- **api**: If user is organization manager of any org, show organization within navigation
|
|
- **core**: Link Team to ticket
|
|
- **core**: Link Organization to ticket
|
|
- **core**: Link KB to ticket
|
|
- **access**: Add project_management permissions to teams avail permissions
|
|
|
|
### Fixes
|
|
|
|
- **core**: Add missing KB article delete signal for ticket linking cleanup
|
|
- **core**: Ensure for KB article permissions can be correctly checked
|
|
- **core**: use cooorect model name for choices
|
|
- **itam**: Use Device organization for device operating system
|
|
- **settings**: remove field `owner_organization` from App Settings
|
|
- **core**: Use object organization for ticket linked items
|
|
- **itam**: Use Software organization for Software Version
|
|
- **itam**: Use Operating System organization for OS Version
|
|
- **itam**: Use Device organization for device software
|
|
- **core**: Use Ticket organization for ticket linked items
|
|
- **core**: Use parent model organization for object notes
|
|
- **access**: During permission checking also use `get_serializer` if avail
|
|
- **access**: default to empty when attempting to get view attribute
|
|
- **core**: Use ticket organization for permission checking for adding a comment
|
|
- **itam**: KB url must use `obj` not `item` when building ursl for device type
|
|
- **itam**: KB url must use `obj` not `item` when building ursl for device model
|
|
- **core**: Add missing migrations for linking kb to ticket
|
|
- **core**: Ensure that a user cant reply to a discussion reply
|
|
- **core**: Add Org, Team and KB article to ticket linked Item serializer
|
|
- **core**: Ticket Linked Item serializer removed from inheriting from common serializer.
|
|
- **core**: Ticket model serializer must inherit from common serializer
|
|
- **core**: Ticket Related Item model serializer must inherit from common serializer
|
|
- **core**: Ticket Linked Item model serializer must inherit from common serializer
|
|
- **core**: Ticket Comment model serializer must inherit from common serializer
|
|
- **core**: Notes model serializer must inherit from common serializer
|
|
- **docker**: Correct nginx proxy headers passed to gunicorn
|
|
- **core**: Generate the correct url for a ticket comment when it's a discussion
|
|
- **core**: organization field set to `write_only=True`
|
|
- **core**: If ticket comment is a reply, add the parent id post validation
|
|
|
|
### Refactoring
|
|
|
|
- **access**: Adjust permission check logic to use try..catch instead of gettattr due to base method throwing exception
|
|
- **base**: move model calling of clean to tenancy model class
|
|
- **docker**: gunicorn config moved to con file
|
|
- **core**: Add ticket comment organization post validation
|
|
|
|
### Tests
|
|
|
|
- **core**: KB article delete ticket link clean up checks
|
|
- **core**: KB Ticket linking serializer checks
|
|
- **core**: KB Ticket linking permission checks
|
|
- **core**: Add data for ticket comment does not use organization field
|
|
- revert test case changes from 1c065601f6030aeb6065fa9f1b9afb23e1783646
|
|
- **information_management**: Add model test cases for Model KB Article
|
|
- **information_management**: Add API v2 Endpoint test cases for Model KB Article
|
|
- **information_management**: Add Viewset test cases for Model KB Article
|
|
- **information_management**: Add Serializer test cases for Model KB Article
|
|
- **api**: mv test case change denied delete to apipermissionchange test cases
|
|
- **base**: Ensure Models inherit from Tenancy and SaveHistory Classes
|
|
- **core**: test to ensure that a user cant reply to a comment that is already part of a discussion
|
|
- **core**: test to ensure that a user can reply to a comment (start comment)
|
|
|
|
## 1.5.0 (2024-12-09)
|
|
|
|
### feat
|
|
|
|
- **python**: update django 5.1.2 -> 5.1.4
|
|
- **api**: If global organization defined, filter from ALL organization fields
|
|
- **api**: Add nav menu permission checks for settings
|
|
- **api**: When fething an items url dueing metadata creation, used named parameters
|
|
- **access**: Modify Admin User panel by removing perms and adding teams
|
|
- **access**: filter permissions available
|
|
- **api**: Filter navigation menu by user permissions
|
|
- **api**: Add API version details to the metadata
|
|
- **access**: add `back` and `return_url` urls to team user metadata
|
|
- **access**: add `back` and `return_url` urls to team metadata
|
|
- **api**: Add `back` url to metadata
|
|
- **api**: Add `return_url` to metadata
|
|
|
|
### Fixes
|
|
|
|
- **settings**: Add missing `get_url` function to user_settings model
|
|
- **settings**: Add missing `get_url` function to app_settings model
|
|
- **core**: correctr the required parameters for related ticket serializer when fetching own url
|
|
- **core**: Remove requirement that ticket be specified for related tickets `get_url`
|
|
- **access**: Add missing `table_fields` attribute to team users model
|
|
- **api**: during metadata navigation permission checks, cater for non-existant keys
|
|
- **core**: Remove superfluous check from ticket viewset
|
|
- **access**: Team permissions is not a required field
|
|
- **core**: History query must also be for self, not just children
|
|
- **access**: correct team users table to correct data key
|
|
|
|
### Refactoring
|
|
|
|
- **access**: Settings must be an available permissions when setting team permissions
|
|
- **itam**: set deviceoperatingsystem model, device field to be type `onetoone`
|
|
- **assistance**: make content the first tab for kb articles
|
|
- **api**: move metadata url_return -> urls.self
|
|
|
|
### Tests
|
|
|
|
- **api**: Nav menu permission checks for settings
|
|
- **api**: Nav menu permission checks
|
|
- **core**: Correct `url.self`checks to use list view
|
|
- **core**: Dont test History for table view
|
|
- **settings**: Dont test user settings for table view
|
|
- **steeings**: Dont test app settings for table view
|
|
- **core**: Dont test related ticket for table or detail view
|
|
- **api**: Refactor test so that endpoints not expected to have an endpoint or be rendered in a table wont be tested for it.
|
|
- **settings**: API Metadata checks for user settings
|
|
- **settings**: API Metadata checks for external links
|
|
- **settings**: API Metadata checks for app settings
|
|
- **project_management**: API Metadata checks for project type
|
|
- **project_management**: API Metadata checks for project task
|
|
- **project_management**: API Metadata checks for project state
|
|
- **project_management**: API Metadata checks for project milestone
|
|
- **project_management**: API Metadata checks for project
|
|
- **itim**: API Metadata checks for problem ticket
|
|
- **itim**: API Metadata checks for incident ticket
|
|
- **itim**: API Metadata checks for change ticket
|
|
- **itim**: API Metadata checks for service
|
|
- **itim**: API Metadata checks for port
|
|
- **itim**: API Metadata checks for cluster type
|
|
- **itim**: API Metadata checks for cluster
|
|
- **itam**: API Metadata checks for software version
|
|
- **itam**: API Metadata checks for software category
|
|
- **itam**: API Metadata checks for software
|
|
- **itam**: API Metadata checks for operating system version
|
|
- **itam**: API Metadata checks for operating system
|
|
- **itam**: API Metadata checks for software
|
|
- **itam**: API Metadata checks for operating system
|
|
- **itam**: API Metadata checks for device type
|
|
- **itam**: API Metadata checks for device OS
|
|
- **itam**: API Metadata checks for device model
|
|
- **itam**: API Metadata checks for device
|
|
- **core**: API Metadata checks for ticket comment category
|
|
- **core**: API Metadata checks for ticket comment
|
|
- **core**: API Metadata checks for ticket category
|
|
- **core**: API Metadata checks for history
|
|
- **core**: API Metadata checks for related tickets
|
|
- **core**: API Metadata checks for manufacturers
|
|
- **config_management**: API Metadata checks for config group software
|
|
- **config_management**: API Metadata checks for config groups
|
|
- **access**: API Metadata checks for request ticket
|
|
- **access**: API Metadata checks for kb category
|
|
- **access**: API Metadata checks for kb
|
|
- **api**: correct metadata testcases
|
|
- **access**: API Metadata checks for organization
|
|
- **api**: API Metadata test cases for navigation menu rendering
|
|
- **api**: correct logic for test class attribute fetching
|
|
- **access**: API Metadata checks for Team User model
|
|
- **access**: API Metadata checks for Team model
|
|
- **api**: API Metadata functional Test Cases
|
|
|
|
## 1.4.1 (2024-11-30)
|
|
|
|
### Fixes
|
|
|
|
- **itam**: When validating device config, only do so if there is config defined
|
|
|
|
## 1.4.0 (2024-11-28)
|
|
|
|
### feat
|
|
|
|
- **project_management**: add project completed field
|
|
- **api**: Implement Sanity error handling for uncaught exceptions
|
|
- **itam**: Split device software serializer to include seperate software installs serializer
|
|
- **itam**: Add Operating System Installs API v2 endpoint
|
|
- **itam**: based off of the request kwaargs, adjust device serializer fields accordingly
|
|
- **itam**: Add Software installs endpoint
|
|
- **itim**: add cluster and device to Services in new UI
|
|
- **config_management**: add hosts to new UI
|
|
- **api**: add ticket icons
|
|
- **itim**: Add nodes and devices to detail view
|
|
- **api**: return_url to default to list view
|
|
- **base**: move setting `SECURE_SSL_REDIRECT = True` to etc/settings
|
|
- **base**: use senisible settings for SSL
|
|
- **itam**: Add device operating system API v2 endpoint
|
|
- **api**: Add return URL to metadata if model has attribute `get_url`
|
|
- **config_management**: Add field child group count to table fields for groups
|
|
- **itam**: Add `page_layout` to SoftwareVersion model
|
|
- **itam**: Add `page_layout` to OperatingSystemVersion model
|
|
- **project_management**: Add `page_layout` to Milestone model
|
|
- **settings**: Add `page_layout` to AppSettings model
|
|
- **access**: render team_name field as anchor
|
|
- **api**: Support setting char field as an anchor field using .urls._self
|
|
- **api**: Added abilty to specify a css class for markdown field
|
|
- Add timezone support
|
|
- **api**: Add a Common Model serializer to be inherited by all model serializers
|
|
- **core**: new field type markdown
|
|
- **core**: new field type char
|
|
- **core**: add RElated Items choices to metadata
|
|
- **itam**: Add Inventory API v2 endpoint
|
|
- **api**: Depreciate API V1 endpoint /api/config
|
|
- **core**: New signal for cleaning linked ticket items when the item is deleted
|
|
- **core**: Show milestone using base serializer for all ticket types
|
|
- **core**: Show project using base serializer for all ticket types
|
|
- **core**: Add Parse error to exceptions
|
|
- **core**: Ticket serializer to ensure user who opens ticket is subscribed to it
|
|
- **core**: Ticket serializer to validate milestone
|
|
- **core**: Ticket serializer to validate organization
|
|
- **itim**: Add Project Task API v2 endpoint
|
|
- **itim**: Add Problem Ticket API v2 endpoint
|
|
- **itim**: Add Incident Ticket API v2 endpoint
|
|
- **itim**: Add Change Ticket API v2 endpoint
|
|
- **api**: Depreciate v1 API Endpoint Assistance
|
|
- **api**: Depreciate v1 API Endpoint Request Ticket
|
|
- **api**: Depreciate v1 API Endpoint Assistance
|
|
- **api**: Depreciate v1 API Endpoint Ticket Comments
|
|
- **api**: Depreciate v1 API Endpoint Ticket Comment Categories
|
|
- **api**: Depreciate v1 API Endpoint Ticket Categories
|
|
- **core**: Ensure Related Tickets validate against duplicate entries
|
|
- **core**: Add MethodNot Allowed to Centurion exceptions
|
|
- **core**: Determine serializer from action and user permissions for Ticket Comments
|
|
- **core**: Add custom exception class
|
|
- **core**: Ensure ticket comment Serializer validates for existance of comment_type and ticket id
|
|
- **core**: Ensure ticket comment Serializer is picked based off of comment_type
|
|
- **core**: Ensure that ticket linked item validates if ticket supplied
|
|
- **core**: Ensure that ticket comment category cant assign self as parent
|
|
- **core**: Ensure that ticket category cant assign self as parent
|
|
- **core**: Add Ticket Comment Category API v2 endpoint
|
|
- **core**: Add Item Ticket API v2 endpoint
|
|
- **core**: Add Related Ticket API v2 endpoint
|
|
- **core**: Add Ticket Linked Item API v2 endpoint
|
|
- **core**: Add url function to Ticket Linked Items model
|
|
- **itim**: Add url function to Service model
|
|
- **itim**: Add url function to Cluster model
|
|
- **itam**: Add url function to Software model
|
|
- **itam**: Add url function to Operating System model
|
|
- **itam**: Add url function to Device model
|
|
- **config_management**: Add url function to Config Groups model
|
|
- **core**: Add Ticket Comment API v2 endpoint
|
|
- **core**: Add Ticket Category API v2 endpoint
|
|
- **assistance**: Add Request Ticket API v2 endpoint
|
|
- **api**: Custom exception UnknownTicketType
|
|
- **core**: Add Base Ticket Serializer and ViewSet
|
|
- **api**: Setup API to be correctly versioned
|
|
- **settings**: Add get_organization function to app settings model
|
|
- **settings**: Add Celery Task Logs API v2 endpoint
|
|
- **api**: Added ability to specify table fields within the viewset.
|
|
- **settings**: Add User Settings API v2 endpoint
|
|
- **settings**: Add App Settings API v2 endpoint
|
|
- **project_management**: Add remaining Project base serializers for API v2
|
|
- **project_management**: Project Validation for API v2
|
|
- **project_management**: Add Project Type API v2 endpoint
|
|
- **project_management**: Add Project State API v2 endpoint
|
|
- **project_management**: Add Project Milestone API v2 endpoint
|
|
- **project_management**: Add Project API v2 endpoint
|
|
- **itim**: Port Serializer Validations
|
|
- **itim**: Service Serializer Validations
|
|
- **itim**: Ensure cluster cant assign itself as parent on api v2 endpoint
|
|
- **itim**: Add Port API v2 endpoint
|
|
- **itim**: Add Cluster API v2 endpoint
|
|
- **itim**: Add Cluster Type API v2 endpoint
|
|
- **itim**: Add Service API v2 endpoint
|
|
- **itam**: Depreciate API v1 Software Endpoint
|
|
- **core**: Add Operating System Version API v2 endpoint
|
|
- **core**: Add Operating System API v2 endpoint
|
|
- **core**: Add External Link API v2 endpoint
|
|
- **itam**: Add Device Software API v2 endpoint
|
|
- **itam**: Add Device API v2 endpoint
|
|
- **itam**: Add Device Type API v2 endpoint
|
|
- **itam**: Add Software Version API v2 endpoint
|
|
- **itam**: Depreciate API v1 device endpoint
|
|
- **itam**: Add Software API v2 endpoint
|
|
- **itam**: Add Device Model API v2 endpoint
|
|
- **itam**: Add Device API v2 endpoint
|
|
- **itim**: Add Service Notes API v2 endpoint
|
|
- **core**: Add Software Notes API v2 endpoint
|
|
- **core**: Add Manufacturer API v2 endpoint
|
|
- **itim**: Add Service base serializer
|
|
- **itam**: Add operating system Base Serializer
|
|
- **config_management**: Add Notes API v2 endpoint
|
|
- **config_management**: Add History API v2 endpoint
|
|
- **config_management**: Depreciate API v1 config endpoint
|
|
- **config_management**: Add config groups to config api endpoint
|
|
- **config_management**: Add Device Base Serializer
|
|
- **itam**: Add Software Version Base Serializer
|
|
- **itam**: Add Software Base Serializer
|
|
- **config_management**: Add Config Group Software API v2 endpoint
|
|
- **config_management**: Add Config Group API v2 endpoint
|
|
- **assistance**: Ensure Knowledge Base Category cant assign self as parent category
|
|
- **assistance**: Knowledge Base Serializer Validation method added
|
|
- **assistance**: Add Knowledge Base Category API v2 endpoint
|
|
- **assistance**: Add Knowledge Base API v2 endpoint
|
|
- **api**: Depreciate API v1 permission endpoint
|
|
- **access**: Add Team Users API endpoint
|
|
- **access**: Depreciate Team API v1 endpoint
|
|
- **access**: Depreciate Organization API v1 endpoint
|
|
- **access**: Add Organization API endpoint
|
|
- **base**: Add Team API endpoint
|
|
- **base**: Add Permission API endpoint
|
|
- **base**: Add Content Type API endpoint
|
|
- **api**: Add Read Only abstract ViewSet
|
|
- **base**: Add user API endpoint
|
|
- **api**: add v2 endpoint
|
|
- **project_management**: Add attribute table_fields to Project Type model
|
|
- **project_management**: Add attribute page_layout to Project Type model
|
|
- **project_management**: Add attribute table_fields to Project State model
|
|
- **project_management**: Add attribute page_layout to Project State model
|
|
- **project_management**: Add attribute page_layout to Project Milestone model
|
|
- **project_management**: Add attribute table_fields to Project Milestone model
|
|
- **project_management**: Add attribute table_fields to Project model
|
|
- **project_management**: Add attribute page_layout to Project model
|
|
- **itim**: Add attribute table_fields to Service model
|
|
- **itim**: Add attribute page_layout to Service model
|
|
- **itim**: Add attribute table_fields to Service Port model
|
|
- **itim**: Add attribute page_layout to Service Port model
|
|
- **itim**: Add attribute table_fields to Cluster Type model
|
|
- **itim**: Add attribute page_layout to Cluster Type model
|
|
- **itim**: Add attribute table_field to Cluster model
|
|
- **itim**: Add attribute page_layout to Cluster model
|
|
- **itam**: Add attribute table_field to Software Category model
|
|
- **itam**: Add attribute table_fields to Software model
|
|
- **itam**: Add attribute page_layout to Software model
|
|
- **itam**: Add attribute table_fields to Operating System Version model
|
|
- **itam**: Add attribute page_layout to Operating System Version model
|
|
- **itam**: Add attribute table_field to Operating System model
|
|
- **itam**: Add attribute page_layout to Operating System model
|
|
- **itam**: Add attribute table_fields to "Device Type" model
|
|
- **itam**: Add attribute page_layout to "Device Type" model
|
|
- **itam**: Add attribute page_layout to "Device Software" model
|
|
- **itam**: Add attribute table_fields to "Device Software" model
|
|
- **itam**: Add attribute page_layout to "Device Software" model
|
|
- **core**: Add attribute table_fields to Ticket Comment Category model
|
|
- **core**: Add attribute page_layout to Ticket Comment Category model
|
|
- **core**: Add attribute page_layout to Ticket comment model
|
|
- **core**: Add attribute table_fields to Ticket Category model
|
|
- **core**: Add attribute page_layout to Ticket Category model
|
|
- **core**: Add attribute page_layout to Ticket model
|
|
- **core**: Add attribute page_layout to Notes model
|
|
- **core**: Add attribute table_fields to Manufacturer model
|
|
- **core**: Add attribute page_layout to Manufacturer model
|
|
- **access**: Add attribute table_fields to Config Group Software model
|
|
- **access**: Add attribute page_layout to Config Group Software model
|
|
- **access**: Add attribute table_fields to Config Groups model
|
|
- **access**: Add attribute page_layout to Config Groups model
|
|
- **access**: Add attribute table_fields to KB model
|
|
- **access**: Add attribute page_layout to KB model
|
|
- **access**: Add attribute table_fields to KB Category model
|
|
- **access**: Add attribute page_layout to KB Category model
|
|
- **access**: Add attribute table_fields to Team model
|
|
- **access**: Add attribute page_layout to Team model
|
|
- **core**: Add `table_fields` to Ticket Model
|
|
- **itam**: Add v2 endpoint ITAM
|
|
- **base**: Add User Serializer
|
|
- **settings**: Add v2 endpoint Settings
|
|
- **project_management**: Add v2 endpoint Project Management
|
|
- **itim**: Add v2 endpoint ITIM
|
|
- **config_management**: Add v2 endpoint Config Management
|
|
- **assistance**: Add v2 endpoint Assistance
|
|
- **access**: Add v2 endpoint Access
|
|
- **itim**: Add `table_fields` to Service Model
|
|
- **core**: Add `table_fields` to Device Software Model
|
|
- **core**: Add `table_fields` to Notes Model
|
|
- **core**: Add `table_fields` to History Model
|
|
- **itam**: Add `table_fields` and `page_layout` to Device Model
|
|
- **itam**: Add `table_fields` and `page_layout` to Device Model
|
|
- **core**: Add `table_fields` to Ticket Linked Item
|
|
- **core**: Add `table_fields` to Ticket Comment
|
|
- **core**: Add `table_fields` to Ticket
|
|
- **core**: Add attribute `staatus_badge` to ticket model
|
|
- **access**: Add `table_fields` and `page_layout` to Organization
|
|
- **api**: Add React UI metadata class
|
|
- **api**: Add API v2 Endpoint
|
|
- **api**: add API login template to use current login form
|
|
- **api**: Update API template to use name Centurion
|
|
- **itam**: Add category property to device software model
|
|
- **itam**: Add action badge property to device software model
|
|
- **itam**: Add status badge property to device model
|
|
- **core**: Add a icon serializer field.
|
|
- **core**: Add a badge serializer field.
|
|
- **api**: Add common ViewSet class for inheritence
|
|
- Add dependency django-cors-headers
|
|
|
|
### Fixes
|
|
|
|
- **project_management**: Correct All tickets query for calculating project completion
|
|
- **core**: Prevent a ticket from being related to itself
|
|
- **core**: when fetching ticket serializer set org=None
|
|
- **core**: use the view pk to filter self out for ticket category update
|
|
- **core**: Ensure for update of ticket the correct serializer is selected
|
|
- **core**: dont exclude self for ticket comment category if not exists
|
|
- **itam**: Add Operating System API v2 field typo
|
|
- **core**: Enusure project_task serializer sets the project_id
|
|
- **itam**: device os serializer not to show org and device
|
|
- **core**: ticket comment to use model serializer for meta
|
|
- **core**: add kwargs to notes
|
|
- **core**: correct get_url function notes
|
|
- **core**: add missing dep to notes
|
|
- **access**: correct team users get_url
|
|
- **access**: correct team get_url requires kwargs
|
|
- **core**: correct notes get_url
|
|
- **access**: correct team get_url
|
|
- **core**: ticket model url requires kwargs
|
|
- **core**: ticket comment model url requires kwargs
|
|
- **core**: dont attempt to fetch org for ticket comment if no data supplied
|
|
- **core**: Always set the organization to the ticket org when adding a ticket comment when org not specified.
|
|
- **api**: Ensure queryset filters to actual item if pk is defined
|
|
- **core**: Automagic fetch data for fields and only require ticket id to link item to ticket
|
|
- **core**: Always set the organization to the ticket org when adding a ticket comment.
|
|
- **config_management**: show parent groups only on index
|
|
- **core**: Set notes _self url to empty val then attempt to sset
|
|
- **core**: Ensure API v1 Ticket sets the ticket type prior to validation
|
|
- **core**: Dont attempt to use ticket instance organization if it's a new ticket being created
|
|
- **access**: Ensure organization is a mandatory field
|
|
- **core**: Ensure ticket and comment bodies are set to required
|
|
- **core**: correct navigation metadata
|
|
- **task**: Ensure if inventory RX is a string, serialize it
|
|
- **access**: Team User serializer not to capture exceptions
|
|
- **access**: Team User team and user fields required when creating, don't use default value.
|
|
- **access**: Team name required when creating, don't use default value.
|
|
- **access**: Dont capture exceptions within team serializer
|
|
- **core**: Ensure import user can set field `opened_by` when importing tickets
|
|
- **core**: Correct duration slash command regex
|
|
- **core**: When an item that may be linked to a ticket is deleted, remove the ticket link
|
|
- **core**: Related ticket slash command requires model to be imported
|
|
- **core**: correct missing or incomplete ticket model fields
|
|
- **core**: When creating a ticket, by default give it a status of new
|
|
- **core**: Ensure that when creating a ticket an organization is specified
|
|
- **core**: Correct Ticket read-only fields
|
|
- **core**: Correct inheritence order for ticket serializers
|
|
- **core**: Ensure Organization can be set when creating a ticket
|
|
- **core**: Ensure that when fetching ticket permission, spaces are replaced with '_'
|
|
- **core**: Ticket serializer org validator to access correct data
|
|
- **core**: Add project URL to all Ticket Types
|
|
- **core**: Add Ticket Category URL to all Ticket Types
|
|
- **core**: When obtaining ticket type use it's enum value
|
|
- **core**: Ensure triage and import permissions are catered for Tickets
|
|
- **core**: Ensure Ticket Linked Item slash command works for ticket comments
|
|
- **core**: Only use Import Serializer on Ticket Comment Create if user has perms
|
|
- **core**: Ensure related ticket slash command works for ticket comments
|
|
- **api**: Ensure `METHOD_NOT_ALLOWED` exception is thrown
|
|
- **core**: Correct serializer item field to be for view serializer ONLY
|
|
- **config_management**: Correct ticket url in group serializer
|
|
- **core**: Add missing ticket comment category url
|
|
- **core**: Add missing permissions function to ticket viewset
|
|
- **core**: Ensure that when checking linked ticket class name, spaces are replaced
|
|
- **core**: Ensure item tickets class can have underscore in name
|
|
- Dont attempt to access request within serializers when no context is present
|
|
- **core**: Add Ticket Category API v2 endpoint to urls
|
|
- **core**: Correct ticket comment model name
|
|
- **api**: Ensure read-only fields have choices added to metadata
|
|
- **api**: Correct inheritance order for ModelViewSet
|
|
- **settings**: Populate user_settings Meta
|
|
- **settings**: Populate app_settings Meta
|
|
- **project_management**: For Project use a separate Import Serializer
|
|
- **project_management**: use the post data dict for fetching edit organisation
|
|
- **project_management**: use the post data or existing object for fetching edit organisation
|
|
- **project_management**: Dont use init to adjust read_only_fields for project
|
|
- **project_management**: if user not hav org specified dont attempt to access
|
|
- **project_management**: for project serializer (api v1) ensure org is id
|
|
- **itim**: Ensure service config from template is not gathered if not defined
|
|
- **itim**: Ensure params passed to super when validating cluster
|
|
- **itim**: Correct Device Service API v2 endpoint
|
|
- **itam**: Don't attempt to include manufacturer in name for Device Model if not defined
|
|
- **itam**: Ensure software version model has page_layout field
|
|
- **core**: notes field must be mandatory
|
|
- **core**: Add missing attributes name to history model
|
|
- **config_management**: ensure validation uses software.id for config group software serializer
|
|
- **config_management**: Config Groups Serializer Validation checks
|
|
- **assistance**: Correct Knowledge Base Category serializer Validation
|
|
- **itam**: Correct inventory validation response data
|
|
- **itam**: Correct inventory api upload to use API exceptions instead of django base
|
|
- **assistance**: Add missing fields `display_name` and `model_notes` to Knowledge Base Category serializer
|
|
- **assistance**: correct KB category serializer validation
|
|
- **assistance**: Correct Knowledge Base serialaizer Validation
|
|
- **api**: on permission check error, return authorized=false
|
|
- **access**: Add missing parameters to Team User fields
|
|
- **api**: Add missing organization url routes
|
|
- **access**: ensure org id is an integer during permission checks
|
|
- **access**: if permission_required attribute doesn't exist during permission check, return empty list
|
|
- Ensure all Model fields are created with attributes `help_text` and `verbose_name`
|
|
- **api**: correct logic for permission check to use either queryset or get_queryset
|
|
- **settings**: Add attribute table_fields to External Links model
|
|
- **settings**: Add attribute page_layout to External Links model
|
|
- **settings**: Add missing attribute Meta.verbose_name to External Links model
|
|
- **settingns**: Add missing attribute Meta.ordering to External Links model
|
|
- **itam**: Add missing attribute Meta.verbose_name to Software Category model
|
|
- **itam**: Add missing attribute Meta.ordering to Software Category model
|
|
- **itam**: Add missing attribute Meta.verbose_name to Software model
|
|
- **itam**: Add missing attribute Meta.ordering to Software model
|
|
- **itam**: Add missing attribute Meta.verbose_name to Operating System Version model
|
|
- **itam**: Add missing attribute Meta.ordering to Operating System Version model
|
|
- **itam**: Add missing attribute Meta.verbose_name to Operating System model
|
|
- **itam**: Add missing attribute Meta.ordering to Operating System model
|
|
- **itam**: Add missing attribute Meta.verbose_name to "Device Type" model
|
|
- **itam**: Add missing attribute Meta.ordering to "Device Software" model
|
|
- **itam**: Add missing attribute Meta.verbose_name to "Device Software" model
|
|
- **itam**: Add missing attribute Meta.verbose_name to "Device Software" model
|
|
- **itam**: Add missing attribute Meta.ordering to "Device Software" model
|
|
- **itama**: Add missing attribute Meta.verbose_name to "Device Model" model
|
|
- **core**: Add missing attribute Meta.verbose_name to Notes model
|
|
- **core**: Add missing attribute Meta.verbose_name to Manufacturer model
|
|
- **access**: Add missing attribute Meta.verbos_name to Config Group Software model
|
|
- **access**: Add missing attribute Meta.verbos_name to Config Groups model
|
|
- **access**: Add missing attribute Meta.ordering Config Groups model
|
|
- **access**: Add missing meta field verbose_name to Team model
|
|
- **api**: during permission checking if request is HTTP/Options and user is authenticated, allow access
|
|
- **api**: during permission checking dont attempt to access view obj if it doesn't exist
|
|
- **itam**: Add missing model.Meta attributes ordering and verbose_name
|
|
|
|
### Refactoring
|
|
|
|
- **itam**: update device software serializer validator
|
|
- **itam**: update device software serializer validator
|
|
- **itam**: ensure device is unique for device os model
|
|
- ensure filed organization is required
|
|
- **config_management**: config_group ref to use full model name
|
|
- update serializers to use model `get_url` function
|
|
- **core**: ticket comment url name updated to match model name
|
|
- Add function `get_url` to tenancy models
|
|
- **api**: set fields that are for markdown to use the markdown field
|
|
- **task**: Adjust inventory to use API v2 serializer
|
|
- **core**: Move ticket validation from is_valid -> validate method
|
|
- **core**: Ensure Ticket Linked Serializer works for Item Tickets
|
|
- **core**: Ticket Linked Item slash command to use serializer
|
|
- **core**: Related ticket slash command to use serializer
|
|
- **core**: Ticket Comments to use a single API Endpoint
|
|
- **core**: Adjust action choices to be integer
|
|
- **config_management**: Adjust rendered config str -> dict
|
|
- **itam**: Software Action field changed char -> integer
|
|
- **itam**: rename dir viewset -> viewsets
|
|
- **config_management**: move config_group_hosts to related table
|
|
- update model fields
|
|
- **config_management**: update serializer dir name
|
|
- **access**: add name to modified field
|
|
- **api**: Adjust viewset common so that page_layout is available for base
|
|
- **assistance**: Correct viewset dir name to viwsets
|
|
- **itam**: Cleanup Device Software model field names.
|
|
- **core**: Change history fields after and before to be JSON fields
|
|
- **api**: Split common ViewSet class into index/model classes
|
|
- **itam**: remove requirement to specify the pk when fetching config
|
|
|
|
### Tests
|
|
|
|
- **project_management**: Ensure that project field completed exists when API v2 is rendere
|
|
- **core**: Ensure a ticket cant be related to itself
|
|
- **itam**: correct test setup for device note viewset
|
|
- **settings**: Ensure items returned are from users orgs only for API v2 endpoints
|
|
- **project_management**: Ensure items returned are from users orgs only for API v2 endpoints
|
|
- **itim**: Correct test case for ticket category returned serializer checks
|
|
- **core**: Correct test case for ticket category returned serializer checks
|
|
- **core**: Ensure items returned are from users orgs only for API v2 endpoints
|
|
- **config_management**: Ensure items returned are from users orgs only for API v2 endpoints
|
|
- **assistance**: Ensure items returned are from users orgs only for API v2 endpoints
|
|
- **access**: Ensure items returned are from users orgs only for API v2 endpoints
|
|
- **itam**: Ensure items returned are from users orgs only for API v2 endpoints
|
|
- Test Case for viewsets that confirms returned results from user orgs only
|
|
- **itam**: update device model test name Device -> DeviceModel
|
|
- **Core**: Ticket linked items API V2 Serializer returned checks
|
|
- **Core**: Remove duplicate test for ticket linked items
|
|
- **assistance**: Project Taask ticket Viewset Serializer checks
|
|
- **assistance**: Problem ticket Viewset Serializer checks
|
|
- **assistance**: Incident ticket Viewset Serializer checks
|
|
- **assistance**: Change ticket Viewset Serializer checks
|
|
- **assistance**: Request ticket Viewset Serializer checks
|
|
- **core**: Ticket Test Cases for Viewset Serializer returned
|
|
- during delete operation dont include data
|
|
- Add ViewSet Returned Serializer Checks to a majority of models
|
|
- Test Cases to confirm the correct serializer is returned from ViewSet
|
|
- Added skipped test for checking model mandatory values.
|
|
- **itam**: Operating System Installs API v2 Field checks
|
|
- **itam**: Software Installs API v2 Permission checks
|
|
- **itam**: Operating_system Installs API v2 Validation checks
|
|
- **itam**: Software Installs API v2 Permission checks
|
|
- **itam**: Software Installs API v2 Validation checks
|
|
- **itam**: Software Installs API v2 Field checks
|
|
- **core**: Ticket serializer checks corrected to use project_id within mock view
|
|
- **core**: Ticket comment serializer checks corrected to use mock view
|
|
- **core**: Ticket comment category field checks corrected
|
|
- **itam**: Update Device Operating System history checks to cater for unique device constratint
|
|
- **itam**: Device Operating System API field checks checks
|
|
- **itim**: Device Operating System API v2 ViewSet permission checks
|
|
- **itam**: Device Operating System Serializer Validation checks
|
|
- **core**: remove duplicate functional slash commands
|
|
- model get_url function checks
|
|
- **core**: move unit tests that check functionality to func test for ticket
|
|
- **itam**: Inventory API v2 Serializer Checks
|
|
- **core**: Ensure that when ticket is assigned it's status is updated to assigned
|
|
- **settings**: External Link API ViewSet permission checks
|
|
- **access**: External Link API v2 Serializer Checks
|
|
- **functional**: Move request ticket checks from unit
|
|
- **functional**: Move functional test cases to relevant functional test dir
|
|
- **access**: Organization API v2 Serializer Checks, only super user can create
|
|
- **access**: Team User API v2 Serializer Checks
|
|
- **access**: Team API v2 Serializer Checks
|
|
- **access**: Organization API v2 Serializer Checks
|
|
- **project_management**: Organization API v2 ViewSet permission checks
|
|
- **core**: Ensure test setup correctly for ticket checks
|
|
- **core**: Spend Slash command Checks.
|
|
- **core**: Relate Slash command Checks.
|
|
- **core**: Ensure that an item that may be linked to a ticket, when its deleted, the ticket link is removed
|
|
- **core**: Ensure a non-existing item cant be Linked to a Ticket.
|
|
- **core**: Action command Related Item Ticket Slash command checks.
|
|
- **core**: Blocked by Slash command Checks.
|
|
- **core**: Blocks Slash command Checks.
|
|
- **core**: Related Item Ticket Slash command checks.
|
|
- **project_management**: Project Task API v2 Serializer Checks
|
|
- **itim**: Incident Ticket API v2 Serializer Checks
|
|
- **itim**: Problem Ticket API v2 Serializer Checks
|
|
- **itim**: Change Ticket API v2 Serializer Checks
|
|
- **core**: Request Ticket API v2 Serializer Checks
|
|
- **core**: Common Ticket Test Cases for API v2 serializers
|
|
- **project_management**: Project Task API field checks
|
|
- **itim**: Problem Ticket API field checks
|
|
- **itim**: Incident Ticket API field checks
|
|
- **itim**: Change Ticket API field checks
|
|
- **assistance**: Update request field checks to cater for project and milestone as dicts
|
|
- **project_management**: Ensure ticket assigned project for all API v2 ViewSet permission checks
|
|
- **project_management**: PRoject_task API v2 ViewSet permission checks
|
|
- **itim**: Problem Ticket API v2 ViewSet permission checks
|
|
- **itim**: Incident Ticket API v2 ViewSet permission checks
|
|
- **itim**: Change Ticket API v2 ViewSet permission checks
|
|
- **core**: fix broken tests from 8b701785b3489db567f5ae08c58e28ae76529881 changes
|
|
- **core**: Item Ticket API v2 Serializer checks
|
|
- **core**: Item Linked Ticket API v2 ViewSet permission checks
|
|
- **core**: Related Ticket API v2 Serializer checks
|
|
- **core**: Related Ticket API v2 ViewSet permission checks
|
|
- **core**: Ticket Comment API v2 Serializer checks
|
|
- **core**: Ticket Linked Item API v2 Serializer checks
|
|
- **core**: Ticket Comment Category API v2 Serializer checks
|
|
- **core**: Ticket Category API v2 Serializer checks
|
|
- **itim**: Ticket Linked Item API field checks
|
|
- **itim**: Service Ticket URL API field checks
|
|
- **itim**: Cluster Ticket URL API field checks
|
|
- **itam**: Software Ticket URL API field checks
|
|
- **itam**: Operating System Ticket URL API field checks
|
|
- **itam**: Device Ticket URL API field checks
|
|
- **config_management**: Group Ticket URL API field checks
|
|
- **core**: Ticket Comment API v2 ViewSet permission checks
|
|
- **core**: Ticket Comment Category API v2 ViewSet permission checks
|
|
- **core**: Ticket Category API v2 ViewSet permission checks
|
|
- **assistance**: Request Ticket API v2 ViewSet permission checks
|
|
- **core**: Ticket Common API v2 ViewSet permission checks
|
|
- **core**: Ticket Comment Category API field checks
|
|
- **core**: Related Tickets API field checks
|
|
- **itim**: Service Linked Tickets API field checks
|
|
- **itim**: Cluster Linked Tickets API field checks
|
|
- **itam**: Software Linked Tickets API field checks
|
|
- **itam**: Operating System Linked Tickets API field checks
|
|
- **itam**: device Linked Tickets API field checks
|
|
- **core**: Config Group Linked Tickets API field checks
|
|
- **core**: Linked Ticket Common API field checks
|
|
- **core**: Ticket Linked Items API field checks
|
|
- **core**: Ticket Comment API field checks
|
|
- **core**: Ticket Category API field checks
|
|
- **assistance**: Request Ticket API field checks
|
|
- **core**: Ticket Common API field checks
|
|
- **settings**: Celery Log API v2 ViewSet permission checks
|
|
- **settings**: Celery Log API field checks
|
|
- **settings**: User Settings API v2 ViewSet permission checks
|
|
- **settings**: User Settings API field checks
|
|
- **settings**: App Settings API v2 ViewSet permission checks
|
|
- **settings**: App Settings API field checks
|
|
- **project_management**: Project API v2 ViewSet permission checks for import user
|
|
- **project_management**: Project Serializer Validation clean up
|
|
- **project_management**: Project Type API v2 ViewSet permission checks
|
|
- **project_management**: Project Type Serializer Validation checks
|
|
- **project_management**: Project Type API field checks
|
|
- **project_management**: Project State API v2 ViewSet permission checks
|
|
- **project_management**: Project state Serializer Validation checks
|
|
- **project_management**: Project state API field checks
|
|
- **project_management**: Project Milestone API v2 ViewSet permission checks
|
|
- **project_management**: Project milestone Serializer Validation checks
|
|
- **project_management**: add trace output to Project serializer
|
|
- **project_management**: Project Milestone API field checks
|
|
- **project_management**: Project API v2 ViewSet permission checks
|
|
- **project_management**: Project Serializer Validation checks
|
|
- **project_management**: Project API field checks
|
|
- **itim**: Port API v2 ViewSet permission checks
|
|
- **itim**: Port API field checks
|
|
- **itim**: Service API v2 ViewSet permission checks
|
|
- **itim**: Service Serializer Validation checks
|
|
- **itim**: Service API field checks
|
|
- **itim**: Cluster Type API v2 ViewSet permission checks
|
|
- **itim**: Cluster Type Serializer Validation checks
|
|
- **itam**: Cluster Type API field checks
|
|
- **itim**: Cluster API ViewSet permission checks
|
|
- **itim**: Cluster Serializer Validation checks
|
|
- **itam**: Cluster API field checks
|
|
- **itam**: remove Device Ticket API field checks
|
|
- **itam**: Device Service API field checks
|
|
- **itam**: Device Software API ViewSet permission checks
|
|
- **itam**: Device Software Serializer Validation checks
|
|
- **itam**: Device Software API field checks
|
|
- **itam**: Device Model API ViewSet permission checks
|
|
- **itam**: Device Model Serializer Validation checks
|
|
- **itam**: Device Model API field checks
|
|
- **itam**: Device Type API ViewSet permission checks
|
|
- **itam**: Device Type Serializer Validation checks
|
|
- **itam**: Device Type API field checks
|
|
- **itam**: Software Version Tenancy Model Checks
|
|
- **itam**: Software Version API ViewSet permission checks
|
|
- **itam**: Software Version Serializer Validation checks
|
|
- **itam**: Software Version API field checks
|
|
- **itam**: Software Category Version API ViewSet permission checks
|
|
- **itam**: Software Category Serializer Validation checks
|
|
- **itam**: Software Category Version API field checks
|
|
- **itam**: Operating System Version API ViewSet permission checks
|
|
- **itam**: Operating System Version Serializer Validation checks
|
|
- **itam**: Operating System Version API field checks
|
|
- **itam**: Software API ViewSet permission checks
|
|
- **itam**: Software Serializer Validation checks
|
|
- **itam**: Software API field checks
|
|
- **itam**: Operating System Serializer Validation checks
|
|
- **itam**: Operating_system API ViewSet permission checks
|
|
- **itam**: Operating System API field checks
|
|
- **itam**: Device API field checks
|
|
- **itam**: Device Serializer Validation checks
|
|
- **core**: Device API ViewSet permission checks
|
|
- enure correct type checks for url
|
|
- **core**: Manufacturer API ViewSet permission checks
|
|
- **core**: Manufacturer Serializer Validation checks
|
|
- **assistance**: Manufacturer API field checks
|
|
- **assistance**: Notes API field checks
|
|
- **core**: Notes Serializer Validation checks
|
|
- **itim**: Service Note API ViewSet permission checks
|
|
- **itam**: Softwaare Note API ViewSet permission checks
|
|
- **itam**: Operating System Note API ViewSet permission checks
|
|
- **config_management**: Device Note API ViewSet permission checks
|
|
- Adjust tests to cater for action choices now being an integer
|
|
- **config_management**: Config Groups Note API ViewSet permission checks
|
|
- **config_management**: History API ViewSet permission checks
|
|
- **config_management**: Config Groups Software API ViewSet permission checks
|
|
- **config_management**: Config Groups Software Serializer Validation checks
|
|
- **config_management**: Config Groups Software Serializer Validation checks
|
|
- **config_management**: Config Groups Serializer Validation checks
|
|
- **config_management**: Config Groups API ViewSet permission checks
|
|
- **assistance**: Config Group API field checks
|
|
- **assistance**: Knowledge Base Category Serializer Validation checks
|
|
- **assistance**: ensure is_valid raises exceptions for Knowledge Base Serializer Validation checks
|
|
- **assistance**: Knowledge Base Serializer Validation checks
|
|
- **assistance**: Knowledge Base Category API field checks
|
|
- **assistance**: Knowledge Base API field checks
|
|
- **access**: correct organization permission checks to have HTTP/403 not HTTP/405
|
|
- **assistance**: Knowledge Base Category API ViewSet permission checks
|
|
- **assistance**: Knowledge Base API ViewSet permission checks
|
|
- **base**: User API ViewSet permission checks
|
|
- **base**: Permission API ViewSet permission checks
|
|
- **base**: Content Type API ViewSet permission checks
|
|
- **access**: Add missing test cases to Team Users Model
|
|
- **access**: Team Users API v2 field checks
|
|
- **access**: Team User API ViewSet permission checks
|
|
- **access**: Team API v2 field checks
|
|
- **api**: API Response Field checks Abstract Class added
|
|
- **access**: Organization API v2 field checks
|
|
- **access**: Team API ViewSet permission checks
|
|
- **access**: Organization API ViewSet permission checks
|
|
- **api**: API Permission ViewSet Abstract Class added
|
|
- **access**: Team custom tests to ensure that during model field creation, attribute verbose_name is defined and not empty
|
|
- **itim**: port placeholder test for invalid port number
|
|
- use correct logic when testin field parameters as not being empty or none
|
|
- Ensure that during model field creation, attribute verbose_name is defined and not empty
|
|
- Ensure that during model field creation, attribute help_text is defined and not empty
|
|
- **api**: Ensure models have `Meta.ordering` set and not empty
|
|
- **api**: viewset documentation attr check
|
|
- **api**: fix index import to correct viewset
|
|
- **itam**: Add index viewset checks
|
|
- **Settings**: Add index viewset checks
|
|
- **project_management**: Add index viewset checks
|
|
- **itim**: Add index viewset checks
|
|
- **config_management**: Add index viewset checks
|
|
- **assistance**: Add index viewset checks
|
|
- **access**: Add index viewset checks
|
|
- **api**: Add API v2 Endpoint
|
|
- **api**: ViewSet checks
|
|
- Ensure Models have attribute `page_layout`
|
|
- Ensure Models have attribute `table_fields`
|
|
- Ensure Models have meta attribute `verbose_name`
|
|
|
|
## 1.3.1 (2024-11-27)
|
|
|
|
### Fixes
|
|
|
|
- **core**: Ensure user cant view tickets in orgs they are not part of
|
|
|
|
### Tests
|
|
|
|
- **access**: Add dummy functional test for CI to complete
|
|
|
|
## 1.3.0 (2024-10-31)
|
|
|
|
### feat
|
|
|
|
- **docker**: Add worker service config for SupervisorD
|
|
- **docker**: ensure supervisor starts
|
|
- **docker**: use correct file location for nginx config
|
|
- **docker**: Fail the build if django is not found
|
|
- **docker**: Install NginX to serve site
|
|
- **docker**: Add supervisord for install
|
|
- **docker**: Add gunicorn for install
|
|
- update docker image alpine 3.19 ->3.20
|
|
|
|
### Fixes
|
|
|
|
- **docker**: Ensure SupervisorD daemon config directory exists.
|
|
- **docker**: use alias for static
|
|
- **access**: testing of param causing gunicorn to fail
|
|
- **docker**: place nginx conf in correct path
|
|
- **docker**: gunicorn must call method
|
|
- **docker**: Ensure NginX config applied after it's installed
|
|
- **docker**: Add proxy params for NginX
|
|
- **docker**: Make centurion the default nginx conf
|
|
- **docker**: Correct NginX start command
|
|
|
|
### Refactoring
|
|
|
|
- **docker**: Switch to entrypoint
|
|
|
|
## 1.2.2 (2024-10-29)
|
|
|
|
### Fixes
|
|
|
|
- **docker**: adjust pyyaml to >-6.0.1
|
|
|
|
## 1.2.1 (2024-10-22)
|
|
|
|
### Fixes
|
|
|
|
- **project_management**: Ensure user cant see projects for organizations they are apart of
|
|
|
|
### Refactoring
|
|
|
|
- **project_management**: dont order queryset for project
|
|
|
|
## 1.2.0 (2024-10-11)
|
|
|
|
### feat
|
|
|
|
- update django 5.0.8 -> 5.1.2
|
|
- **settings**: Add API filter and search
|
|
- **core**: Add API filter of fields external_system and external_ref for projects
|
|
- **core**: Add API filter of fields external_system and external_ref to tickets
|
|
- **project_management**: increase project field length 50 -> 100 chars
|
|
- **core**: increase ticket title field length 50 -> 100 chars
|
|
- **core**: Add ability track ticket estimation time for completion
|
|
- **core**: Add ability to delete a ticket
|
|
- **core**: [Templating Engine] Add template tag concat_strings
|
|
- **itim**: Add ticket tab to services
|
|
- **itim**: Add ticket tab to clusters
|
|
- **itam**: Add ticket tab to software
|
|
- **itam**: Add ticket tab to operating systems
|
|
- **itam**: Add ticket tab to devices
|
|
- **config_management**: Add ticket tab to conf groups
|
|
- **core**: Add slash command `link` for linking items to tickets
|
|
- **core**: Add to markdown rendering model references
|
|
- **core**: Ability to link items to all ticket types
|
|
- **core**: add model ticket linked items
|
|
- **project_management**: Add project milestones api endpoint
|
|
- **project_management**: Add import_project permission and add api serializer
|
|
- **core**: great odins beard, remove the checkbox formatting
|
|
- **project_management**: Add field is_deleted to projects
|
|
- **project_management**: Calculate project completion percentage and display
|
|
- **core**: order project categories with parent name if applicable
|
|
- **project_management**: Add Project Type to the UI
|
|
- **project_management**: Add Project State to the UI
|
|
- **project_management**: add priority field to project model, form and api endpoint
|
|
- **project_management**: add organization field to project form and api endpoint
|
|
- **project_management**: add project_type field to project form
|
|
- **project_management**: add external_ref and external_system field to project model
|
|
- **project_management**: add project type field to project model
|
|
- **project_management**: add project type api endpoint
|
|
- **project_management**: new model project type
|
|
- **project_management**: add project state api endpoint
|
|
- **project_management**: add project state field to project model
|
|
- **project_managemenet**: new model project state
|
|
- **project_management**: add field external system to projects
|
|
- **core**: validate field milestone for all ticket types
|
|
- **core**: Add field milestone to all ticket types
|
|
- **project_management**: Add project milestones
|
|
- **core**: Add slash command "related ticket" for ticket and ticket comments
|
|
- **core**: Suffix username to action comments
|
|
- **core**: Add slash command `/spend` for ticket and ticket comments
|
|
- **core**: Disable HTML tag rendering for markdown
|
|
- **project_management**: remove requirement for code field to be populated
|
|
- **core**: Add ticket comment category API endpoint
|
|
- **core**: Ability to assign categories to ticket comments
|
|
- **core**: Add ticket comment categories
|
|
- **core**: Extend all ticket endpoints to contain ticket categories
|
|
- **core**: Add ticket category API endpoint
|
|
- **core**: Ability to assign categories to tickets
|
|
- **core**: Addpage titles to view abstract classes
|
|
- **core**: Add ticket categories
|
|
- **core**: during markdown render, if ticket ID not found return the tag
|
|
- **core**: Add heading anchor plugin to markdown
|
|
- **core**: correct markdown formatting for KB articles
|
|
- **core**: remove project field from being editable when creating project task
|
|
- **core**: Add admonition style
|
|
- **project_management**: Validate project task has project set
|
|
- **core**: set project ID to match url kwarg
|
|
- **core**: Add action comment on title change
|
|
- **core**: Add task listts plugin to markdowm
|
|
- **core**: Add footnote plugin to markdowm
|
|
- **core**: Add admonition plugin to markdowm
|
|
- **core**: Add table extension to markdowm
|
|
- **core**: Add strikethrough extension to markdowm
|
|
- **core**: Add linkify extension to markdowm
|
|
- **core**: move markdown parser py-markdown -> markdown-it
|
|
- **core**: Add organization column to ticket pages
|
|
- **core**: Allow super-user to edit ticket comment source
|
|
- **core**: Render linked tickets the same as the rendered markdown link
|
|
- **core**: Add project task link for related project task
|
|
- **project_management**: Add project duration field
|
|
- **core**: Add external ref to tickets if populated
|
|
- **core**: Add project task permissions
|
|
- **project_management**: Add project tasks
|
|
- **api**: Add project tasks endpoint
|
|
- **api**: Add projects endpoint
|
|
- **api**: Add project management endpoint
|
|
- **core**: support negative numbers when Calculating ticket duration for ticket meta and comments
|
|
- **core**: Caclulate ticket duration for ticket meta and comments
|
|
- **core**: Add edit details to ticket and comments
|
|
- **core**: Don't save model history for ticket models
|
|
- **core**: add option to allow the prevention of history saving for tenancy models
|
|
- **core**: Add project field to tickets allowed fields
|
|
- **core**: Update ticket status when assigned/unassigned users/teams
|
|
- **core**: Create action comment for subscribed users/teams
|
|
- **core**: Create action comment for assigned users/teams
|
|
- **core**: adding of more ticket status icons
|
|
- **api**: Ticket endpoint dynamic permissions
|
|
- **core**: add ticket status badge
|
|
- **access**: add ability to fetch dynamic permissions
|
|
- **core**: Add delete view for ticket types: request, incident, change and problem
|
|
- **api**: when attempting to create a device and it's found within DB, dont recreate, return it.
|
|
- **core**: When solution comment posted to ticket update status to solved
|
|
- **core**: Add opened by column to ticket indexes
|
|
- **core**: permit user to add comment to own ticket
|
|
- **core**: Allow OP to edit own Ticket Comment
|
|
- **core**: Ticket Comment form submission validation
|
|
- **core**: Ticket Comment can be edited by owner
|
|
- **core**: Ticket Comment source hidden for non-triage users
|
|
- **core**: When fetching allowed ticket comment fields, check against permissions
|
|
- **core**: pass request to ticket comment form
|
|
- **itam**: Accept device UUID in any case.
|
|
- **core**: Add ticket status icon
|
|
- **core**: Enable ticket comment created date can be set when an import user
|
|
- **api**: Set default values for ticket comment form to match ticket
|
|
- **core**: render ticket number `#\d+` links within markdown
|
|
- **core**: Use common function for markdown rendering for ticket objects
|
|
- **api**: Ensure device can add/edit organization
|
|
- **core**: Add api validation for ticket
|
|
- **core**: Ensure for tenancy objects that the organization is set
|
|
- **core**: Ticket comment orgaanization set to ticket organization
|
|
- **core**: colour code related ticket background to ticket type
|
|
- **core**: Validate ticket related and prevent duel related entries
|
|
- **core**: Validate ticket status field for all ticket types
|
|
- **core**: Add ticket action comments on ticket update
|
|
- **core**: Add Title bar to ticket form
|
|
- **core**: Add field level permission and validation checks
|
|
- **core**: Add permission checking to Tickets form
|
|
- **access**: add dynamic permissions to Tenancy Permissions
|
|
- **api**: Add Tickets endpoint
|
|
- **itim**: Add Problem ticket to navigation
|
|
- **itim**: Add Incident ticket to navigation
|
|
- **itim**: Add Change ticket to navigation
|
|
- **assistance**: Add Request ticket to navigation
|
|
- **core**: add basic ticketing system
|
|
- **development**: add option for including additional stylesheets
|
|
- **ui**: add project management icon
|
|
- **project_management**: Add manager and users for projects and tasks
|
|
- **project_management**: Project task view "view"
|
|
- **project_management**: Project task edit view
|
|
- **project_management**: Project task delete view
|
|
- **project_management**: Project task add view
|
|
- **project_management**: Add project task model
|
|
- **project_management**: save project history
|
|
- **project_management**: add project delete page
|
|
- **project_management**: add project edit page
|
|
- **project_management**: add project view page
|
|
- **project_management**: add project add page
|
|
- **project_management**: add project index page
|
|
- **project_management**: add interim project model
|
|
|
|
### Fixes
|
|
|
|
- ensure model mandatory fields don't specify a default value
|
|
- **api**: Ensure user is set to current user for ticket comment
|
|
- **core**: remove org field when editing a ticket
|
|
- **core**: during validation, if subscribed users not specified, use empty list
|
|
- **core**: add missing pagination to ticket comment categories index
|
|
- **core**: add missing pagination to ticket categories index
|
|
- **project_management**: Ensure project type and state show on index page
|
|
- **core**: Add replacement function within ticket validation as `cleaned_data` attribute replacement
|
|
- **core**: Ensure the ticket clears project field on project removal
|
|
- **core**: Remove ticket fields user has no access to
|
|
- **core**: correct logic for slash command `/spend`
|
|
- **project_management**: correct project view permissions
|
|
- **core**: Correct view permissions for ticket comment category
|
|
- **core**: correct url typo for ticket category API endpoint
|
|
- **core**: dont attempt to modify field for ticket category API list
|
|
- **core**: Dont attempt to render ticket category if none
|
|
- **core**: Correct the delete permission
|
|
- **core**: correct project task reply link for comments
|
|
- **core**: correct project task comment buttons
|
|
- **project_management**: correct comment reply url name
|
|
- **core**: Generate the correct edit url for tickets
|
|
- **core**: Generate the correct comment urls for tickets
|
|
- **core**: Redirect to correct url for itim tickets after adding comment
|
|
- **core**: correct linked tickets hyperlink address
|
|
- **core**: order ticket comments by creation date
|
|
- **core**: Ensure for both ticket and comment, external details are unique.
|
|
- **core**: Ensure on ticket comment create and update a response is returned
|
|
- **core**: Ensure related tricket action comment is trimmed
|
|
- **core**: Team assigned to ticket status update
|
|
- **api**: ensure ticket_type is set from view var
|
|
- **core**: Add ticket fields to ticket types
|
|
- **core**: During ticket form validation confirm if value specified/different then default
|
|
- **core**: Correctly set the ticket type initial value
|
|
- **core**: prevent import user from having permssions within UI
|
|
- **api**: correct ticket view links
|
|
- **core**: Correct display of ticket status within ticket interface
|
|
- **api**: Ensure if device found it is returned
|
|
- **core**: Ensure status field remains as part of ticket
|
|
- **core**: Correct modified field to correct type for ticket comment
|
|
- **api**: Filter ticket comments to match ticket
|
|
- **core**: Correct modified field to correct type
|
|
- **core**: Ensure new ticket can be created
|
|
- **core**: Add `ticket_type` field to import_permissions
|
|
- **core**: Ensure that the organization field is available
|
|
- **core**: dont remove hidden fields on ticket comment form
|
|
- **core**: Correct ticket comment permissions
|
|
- **access**: correct permission check to cater for is_global=None
|
|
- **core**: return correct redirect path for related ticket form
|
|
- **core**: use from ticket title for "blocked by"
|
|
- **access**: Don't query for `is_global=None` within `TenancyManager`
|
|
- **core**: ensure is_global check does not process null value
|
|
|
|
### Refactoring
|
|
|
|
- **core**: Ticket Linked ref render as template
|
|
- **core**: migrate ticket enums to own class
|
|
- **core**: Ticket validation errors setup for both api and ui
|
|
- **core**: for tickets use validation for organization field
|
|
- **core**: refine ticket field permission and validation
|
|
- reduce action comment spacing
|
|
- **core**: update markdown styles
|
|
- **core**: migrate ticket number rendering as markdown_it plugin
|
|
- **core**: move markdown functions out of ticket model
|
|
- **core**: Adjust test layout for itsm and project field based permissions
|
|
- **project_management**: migrate projects to new style for views
|
|
- **core**: REmove constraint on setting user for ticket comment
|
|
- **core**: cache fields allowed during ticket validation
|
|
- **core**: dont require specifying ticket status
|
|
- **core**: move id to end for rendered ticket link.
|
|
- **api**: Ticket (change, incident, problem and request) to static api endpoints
|
|
- **api**: make ticket status field mandatory
|
|
- **api**: Move core tickets to own ticket endpoints
|
|
- **core**: During form validation for a ticket, use defaults if not defined for mandatory fields
|
|
- **core**: Ticket form ticket_type to use class var
|
|
- **core**: cache permission check for ticket types
|
|
- **core**: Move allowed fields logic to own function
|
|
- **access**: Add definable parameters to organization mixin
|
|
- **access**: cache user_organizations on lookup
|
|
- **access**: cache object_organization on lookup
|
|
|
|
### Tests
|
|
|
|
- **core**: Ticket Linked item view checks
|
|
- **core**: Ticket Linked item permission checks
|
|
- **project_management**: Project Milestone api permission checks
|
|
- **project_management**: Project TYpe tenancy model checks
|
|
- **project_management**: Project Type view checks
|
|
- **project_management**: Project Type permission checks
|
|
- **project_management**: Project Type core history checks
|
|
- **project_management**: Project Type tenancy object checks
|
|
- **project_management**: Project State permission checks
|
|
- **project_management**: Project State tenancy model checks
|
|
- **project_management**: Project State view checks
|
|
- **project_management**: Project State core history checks
|
|
- **project_management**: Project State tenancy object checks
|
|
- **project_management**: Project type API permission checks
|
|
- **project_management**: Project state API permission checks
|
|
- **project_management**: Project miletone skipped api checks
|
|
- **project_management**: Project Milestone tenancy model checks
|
|
- **project_management**: Project Milestone view checks
|
|
- **project_management**: Project Milestone ui permission checks
|
|
- **project_management**: Project Milestone core history checks
|
|
- **project_management**: Project Milestone Tenancy object checks
|
|
- **core**: Project tenancy model checks
|
|
- **core**: Project view checks
|
|
- **core**: Project UI permission checks
|
|
- **core**: Project API permission checks
|
|
- **core**: Project history checks
|
|
- **core**: Project Tenancy object checks
|
|
- **core**: Ticket comment category API permission checks
|
|
- **core**: add missing ticket category view checks
|
|
- **core**: ticket comment category tenancy model checks
|
|
- **core**: ticket comment category view checks
|
|
- **core**: ticket comment category ui permission checks
|
|
- **core**: ticket comment category history checks
|
|
- **core**: ticket comment category tenancy model checks
|
|
- **core**: ticket category API permission checks
|
|
- **core**: ticket category history checks
|
|
- **core**: ticket category tenancy model checks
|
|
- **core**: ticket category model checks
|
|
- **core**: view checks
|
|
- **core**: ui permissions
|
|
- **core**: correct project tests for triage user
|
|
- **core**: Project task permission checks
|
|
- **core**: Ticket comment API permission checks
|
|
- **core**: Ticket comment permission checks
|
|
- **core**: Ticket comment Views
|
|
- **core**: Tenancy model tests for ticket comment
|
|
- **core**: ensure history for ticket models is not saved
|
|
- Ensure tenancy models save model history
|
|
- **core**: remove duplicated tenancy object tests for ticket model
|
|
- **core**: correct triage user test names for allowed field permissions
|
|
- **core**: project field permission check for triage user
|
|
- **core**: Ticket Action comment checks for related tickets
|
|
- **core**: Ticket Action comment checks for subscribing team
|
|
- **core**: Ticket Action comment checks for subscribing user
|
|
- **core**: Ticket Action comment checks for unassigning team
|
|
- **core**: Ticket Action comment checks for assigning team
|
|
- **core**: Ticket Action comment checks for un-assigning user
|
|
- **core**: Ticket Action comment checks for assigning user
|
|
- **core**: Add ticket project field permission check
|
|
- **core**: ensure ticket_type tests dont have change value that matches ticket type
|
|
- **core**: field based permission tests for add, change, import and triage user
|
|
- **api**: Ticket (change, incident, problem and request) api permission checks
|
|
- **core**: interim ticket unit tests
|
|
- **itam**: Ensure if an attempt to add an existing device via API, it's not recreated and is returned.
|
|
- correct typo in test description for `test_model_add_has_permission`
|
|
- Add view must have function `get_initial`
|
|
- **itam**: Refactor Device tests organization field to be editable.
|
|
- Ensure tests add organization to tenancy objects on creation
|
|
|
|
## 1.1.0 (2024-08-23)
|
|
|
|
### feat
|
|
|
|
- **itim**: Dont attempt to apply cluster type config if no type specified.
|
|
- **itim**: Service config rendered as part of cluster config
|
|
- **itim**: dont force config key, validate when it's required
|
|
- **itim**: Services assignable to cluster
|
|
- **itim**: Ability to add configuration to cluster type
|
|
- **itim**: Ability to add external link to cluster
|
|
- **itim**: Ability to add and configure Cluster Types
|
|
- **itim**: Add cluster to history save
|
|
- **itim**: prevent cluster from setting itself as parent
|
|
- **itim**: Ability to add and configure cluster
|
|
- **itam**: Track if device is virtual
|
|
- **api**: Endpoint to fetch user permissions
|
|
- **development**: Add function to filter permissions to those used by centurion
|
|
- **development**: Add new template tag `choice_ids` for string list casting
|
|
- **development**: Render `model_name_plural` as part of back button
|
|
- **development**: add to form field `model_name_plural`
|
|
- **development**: render heading if section included
|
|
- **base**: create detail view templates
|
|
- **itam**: Render Service Config with device config
|
|
- **itam**: Display deployed services for devices
|
|
- **itim**: Prevent circular service dependencies
|
|
- **itim**: Port number validation to check for valid port numbers
|
|
- **itim**: Prevent Service template from being assigned as dependent service
|
|
- **itim**: Add service template support
|
|
- **itim**: Ports for service management
|
|
- **itim**: Service Management
|
|
- **assistance**: Filter KB articles to target user
|
|
- **assistance**: Add date picker to date fields for KB articles
|
|
- **assistance**: Dont display expired articles for "view" users
|
|
- **base**: add code highlighting to markdown
|
|
- **assistance**: Categorised Knowledge base articles
|
|
- **itim**: Add menu entry
|
|
- **itam**: Ability to add device configuration
|
|
- **settings**: New model to allow adding templated links to devices and software
|
|
|
|
### Fixes
|
|
|
|
- **settings**: return the rendering of external links to models
|
|
- **core**: Ensure when saving history json is correctly formatted
|
|
- **itim**: Fix name typo in Add Service button
|
|
- Ensure tenancy models have `Meta.verbose_name_plural` attribute
|
|
- **base**: Use correct url for back button
|
|
- **itim**: ensure that the service template config is also rendered as part of device config
|
|
- **itim**: dont render link if no device
|
|
- **itim**: Dont show self within service dependencies
|
|
- **assistance**: Only return distinct values when limiting KB articles
|
|
|
|
### Refactoring
|
|
|
|
- **itim**: Add Cluster type to index page
|
|
- **itam**: Knowledge Base now uses details template
|
|
- **itam**: Device Type now uses details template
|
|
- **itam**: Operating System now uses details template
|
|
- **itim**: Service Port now uses details template
|
|
- **itam**: Device Model now uses details template
|
|
- **config_management**: Config Groups now uses details template
|
|
- **itam**: Software Categories now uses details template
|
|
- **itam**: manufacturer now uses details template
|
|
- **itam**: software now uses details template
|
|
- **itam**: device now use details template
|
|
- **itim**: services now use details template
|
|
|
|
### Tests
|
|
|
|
- **itim**: Cluster Types unit tests
|
|
- **itim**: Cluster unit tests
|
|
- **itam**: Correct Device Type Model permissions test to use "change" view
|
|
- **itam**: Correct Operating System Model permissions test to use "change" view
|
|
- **config_management**: Correct Device Model permissions test to use "change" view
|
|
- **config_management**: Correct Config Group permissions test to use "change" view
|
|
- **itam**: Correct Software Category permissions test to use "change" view
|
|
- **core**: Correct manufacturer permissions test to use "change" view
|
|
- **itam**: Correct software permissions test to use "change" view
|
|
- **model**: test for checking if Meta sub-class has variable verbose_name_plural
|
|
- **external_link**: add tests
|
|
|
|
## 1.0.0 (2024-08-23)
|
|
|
|
## 1.0.0-b14 (2024-08-12)
|
|
|
|
### Fixes
|
|
|
|
- **api**: ensure model_notes is an available field
|
|
|
|
### Tests
|
|
|
|
- **access**: test field model_notes
|
|
|
|
## 1.0.0-b13 (2024-08-11)
|
|
|
|
### Fixes
|
|
|
|
- Audit models for validations
|
|
- **itam**: Ensure device name is formatted according to RFC1035 2.3.1
|
|
- **itam**: Ensure device UUID is correctly formatted
|
|
- **config_management**: Ensure that config group can't set self as parent
|
|
- **settings**: ensure that the api token cant be saved to notes field
|
|
|
|
### Tests
|
|
|
|
- api field checks
|
|
- **software**: api field checks
|
|
|
|
## 1.0.0-b12 (2024-08-10)
|
|
|
|
### Fixes
|
|
|
|
- **api**: ensure org mixin is inherited by software view
|
|
- **base**: correct project links to github
|
|
|
|
### Tests
|
|
|
|
- api field checks
|
|
|
|
#128 #162
|
|
- **teams**: api field checks
|
|
- **organization**: api field checks
|
|
|
|
## 1.0.0-b11 (2024-08-10)
|
|
|
|
## 1.0.0-b10 (2024-08-09)
|
|
|
|
## 1.0.0-b9 (2024-08-09)
|
|
|
|
## 1.0.0-b8 (2024-08-09)
|
|
|
|
## 1.0.0-b7 (2024-08-09)
|
|
|
|
## 1.0.0-b6 (2024-08-09)
|
|
|
|
## 1.0.0-b5 (2024-07-31)
|
|
|
|
### feat
|
|
|
|
- add Config groups to API
|
|
- **api**: Add device config groups to devices
|
|
- **api**: Ability to fetch configgroups from api along with config
|
|
|
|
### Fixes
|
|
|
|
- **api**: Ensure device groups is read only
|
|
|
|
### Tests
|
|
|
|
- **api**: Field existence and type checks for device
|
|
- **api**: test configgroups API fields
|
|
|
|
## 1.0.0-b4 (2024-07-29)
|
|
|
|
### feat
|
|
|
|
- **swagger**: remove `{format}` suffixed doc entries
|
|
|
|
### Fixes
|
|
|
|
- release-b3 fixes
|
|
- **api**: cleanup team post/get
|
|
- **api**: confirm HTTP method is allowed before permission check
|
|
- **api**: Ensure that organizations can't be created via the API
|
|
- **access**: Team model class inheritance order corrected
|
|
|
|
### Tests
|
|
|
|
- confirm that the tenancymanager is called
|
|
|
|
## 1.0.0-b3 (2024-07-21)
|
|
|
|
### Fixes
|
|
|
|
- **itam**: Limit os version count to devices user has access to
|
|
|
|
## 1.0.0-b2 (2024-07-19)
|
|
|
|
### Fixes
|
|
|
|
- **itam**: only show os version once
|
|
|
|
## 1.0.0-b1 (2024-07-19)
|
|
|
|
### Fixes
|
|
|
|
- **itam**: ensure installed operating system count is limited to users organizations
|
|
- **itam**: ensure installed software count is limited to users organizations
|
|
|
|
## 1.0.0-a4 (2024-07-18)
|
|
|
|
### feat
|
|
|
|
- **api**: When processing uploaded inventory and name does not match, update name to one within inventory file
|
|
- **config_management**: Group name to be entire breadcrumb
|
|
|
|
### Tests
|
|
|
|
- ensure inventory upload matches by both serial number and uuid if device name different
|
|
- placeholder for moving organization
|
|
|
|
## 1.0.0-a3 (2024-07-18)
|
|
|
|
### feat
|
|
|
|
- **config_management**: Prevent a config group from being able to change organization
|
|
- **itam**: On device organization change remove config groups
|
|
|
|
### Fixes
|
|
|
|
- **config_management**: dont attempt to do action during save if group being created
|
|
- **itam**: remove org filter for device so that user can see installations
|
|
- **itam**: remove org filter for operating systems so that user can see installations
|
|
- **itam**: remove org filter for software so that user can see installations
|
|
- **itam**: Device related items should not be global.
|
|
- **itam**: When changing device organization move related items too.
|
|
|
|
## 1.0.0-a2 (2024-07-17)
|
|
|
|
### feat
|
|
|
|
- **api**: Inventory matching of device second by uuid
|
|
- **api**: Inventory matching of device first by serial number
|
|
- **base**: show warning bar if the user has not set a default organization
|
|
|
|
### Fixes
|
|
|
|
- **base**: dont show user warning bar for non-authenticated user
|
|
- **api**: correct inventory operating system selection by name
|
|
- **api**: correct inventory operating system and it's linking to device
|
|
- **api**: correct inventory device search to be case insensitive
|
|
|
|
## 1.0.0-a1 (2024-07-16)
|
|
|
|
### BREAKING CHANGE
|
|
|
|
- squashed DB migrations in preparation for v1.0 release.
|
|
|
|
### feat
|
|
|
|
- Administratively set global items org/is_global field now read-only
|
|
- **access**: Add multi-tennant manager
|
|
|
|
### Fixes
|
|
|
|
- **core**: migrate manufacturer to use new form/view logic
|
|
- **settings**: correct the permission to view manufacturers
|
|
- **access**: Correct team form fields
|
|
- **config_management**: don't exclude parent from field, only self
|
|
|
|
### Refactoring
|
|
|
|
- repo preperation for v1.0.0-Alpha-1
|
|
- Squash database migrations
|
|
|
|
### Tests
|
|
|
|
- tenancy objects
|
|
- refactor to single abstract model for inclusion.
|
|
|
|
## 0.7.0 (2024-07-14)
|
|
|
|
### feat
|
|
|
|
- **core**: Filter every form field if associated with an organization to users organizations only
|
|
- **core**: add var `template_name` to common view template for all views that require it
|
|
- **core**: add Display view to common forms abstract class
|
|
- **navigation**: always show every menu for super admin
|
|
- **core**: only display navigation menu item if use can view model
|
|
- **django**: update 5.0.6 -> 5.0.7
|
|
- **core**: add common forms abstract class
|
|
- **core**: add common views abstract class
|
|
- add postgreSQL database support
|
|
- **ui**: add config groups navigation icon
|
|
- **ui**: add some navigation icons
|
|
- **itam**: update inventory status icon
|
|
- **itam**: ensure device software pagination links keep interface on software tab
|
|
- "Migrate inventory processing to background worker"
|
|
- **access**: enable non-organization django permission checks
|
|
- **settings**: Add celery task results index and view page
|
|
- **base**: Add background worker
|
|
- **itam**: Update Serial Number from inventory if present and Serial Number not set
|
|
- **itam**: Update UUID from inventory if present and UUID not set
|
|
|
|
### Fixes
|
|
|
|
- **config_management**: Don't allow a config group to assign itself as its parent
|
|
- **config_management**: correct permission for deleting a host from config group
|
|
- **config_management**: use parent group details to work out permissions when adding a host
|
|
- **config_management**: use parent group details to work out permissions
|
|
- **itam**: Add missing permissions to software categories index view
|
|
- **itam**: Add missing permissions to device types index view
|
|
- **itam**: Add missing permissions to device model index view
|
|
- **settings**: Add missing permissions to app settings view
|
|
- **itam**: Add missing permissions to software index view
|
|
- **itam**: Add missing permissions to operating system index view
|
|
- **itam**: Add missing permissions to device index view
|
|
- **config_management**: Add missing permissions to group views
|
|
- **navigation**: always show settings menu entry
|
|
- **itam**: cater for fields that are prefixed
|
|
- **itam**: Ability to view software category
|
|
- **itam**: correct view permission
|
|
- **access**: When adding a new team to org ensure parent model is fetched
|
|
- **access**: enable org manager to view orgs
|
|
- **settings**: restrict user visible organizations to ones they are part of
|
|
- **access**: enable org manager to view orgs
|
|
- **access**: fetch object if method exists
|
|
- **docs**: update docs link to new path
|
|
- **access**: correctly set team user parent model to team
|
|
- **access**: fallback to django permissions if org permissions check is false
|
|
- **access**: Correct logic so that org managers can see orgs they manage
|
|
- **base**: add missing content_title to context
|
|
- **access**: Enable Organization Manager to view organisations they are assigned to
|
|
- **api**: correct logic for adding inventory UUID and serial number to device
|
|
- **ui**: navigation alignment and software icon
|
|
- **ui**: display organization manager name instead of ID
|
|
- **access**: ensure name param exists before attempting to access
|
|
- **itam**: dont show none/nil for device fields containing no value
|
|
- **itam**: show device model name instead of ID
|
|
- **api**: Ensure if serial number from inventory is `null` that it's not used
|
|
- **api**: ensure checked uuid and serial number is used for updating
|
|
- inventory
|
|
- **itam**: only remove device software when not found during inventory upload
|
|
- **itam**: only update software version if different
|
|
- existing device without uuid not updated when uploading an inventory
|
|
- Device Software tab pagination does not work
|
|
- **itam**: correct device software pagination
|
|
|
|
### Refactoring
|
|
|
|
- adjust views missing add/change form to now use forms
|
|
- add navigation menu expand arrows
|
|
- migrate views to use new abstract model view classes
|
|
- migrate forms to use new abstract model form class
|
|
- **access**: Rename Team Button "new user" -> "Assign User"
|
|
- **access**: model pk and name not required context for adding a device
|
|
- rename field "model notes" -> "Notes"
|
|
- remove settings model
|
|
- **ui**: increase indentation to sub-menu items
|
|
- **itam**: rename old inventory status icon for use with security
|
|
- **api**: migrate inventory processing to background worker
|
|
- **itam**: only perform actions on device inventory if DB matches inventory item
|
|
|
|
### Tests
|
|
|
|
- add test test_view_*_attribute_not_exists_fields for add and change views
|
|
- fix test_view_change_attribute_type_form_class to test if type class
|
|
- **views**: add test cases for model views
|
|
- Add Test case abstract classes to models
|
|
- **inventory**: add mocks?? for calling background worker
|
|
- **view**: view permission checks
|
|
- **inventory**: update tests for background worker changes
|
|
|
|
## 0.6.0 (2024-06-30)
|
|
|
|
### feat
|
|
|
|
- user api token
|
|
- **api**: API token authentication
|
|
- **api**: abilty for user to create/delete api token
|
|
- **api**: create token model
|
|
|
|
### Fixes
|
|
|
|
- **user_token**: conduct user check on token view access
|
|
- **itam**: use same form for edit and add
|
|
- **itam**: dont add field inventorydate if adding new item
|
|
- **api**: inventory upload requires sanitization
|
|
|
|
### Refactoring
|
|
|
|
- **settings**: use seperate change/view views
|
|
- **settings**: use form for user settings
|
|
- **tests**: move unit tests to unit test sub-directory
|
|
|
|
### Tests
|
|
|
|
- **token_auth**: test authentication method token
|
|
- more tests
|
|
- add .coveragerc to remove non-code files from coverage report
|
|
- Unit Tests TenancyObjects
|
|
- Test Cases for TenancyObjects
|
|
- tests for checking links from rendered templetes
|
|
- **core**: test cases for notes permissions
|
|
- **config_management**: config groups history permissions
|
|
- **api**: Majority of Inventory upload tests
|
|
- **access**: TenancyObject field tests
|
|
- **access**: remove skipped api tests for team users
|
|
|
|
## 0.5.0 (2024-06-17)
|
|
|
|
### feat
|
|
|
|
- Setup Organization Managers
|
|
- **access**: add notes field to organization
|
|
- **access**: add organization manger
|
|
- **config_management**: Use breadcrumbs for child group name display
|
|
- **config_management**: ability to add host to global group
|
|
- **itam**: add a status of "bad" for devices
|
|
- **itam**: paginate device software tab
|
|
- **itam**: status of device visible on device index page
|
|
- API Browser
|
|
- **core**: add skeleton http browser
|
|
- **core**: Add a notes field to manufacturer/ publisher
|
|
- **itam**: Add a notes field to software category
|
|
- **itam**: Add a notes field to device types
|
|
- **itam**: Add a notes field to device models
|
|
- **itam**: Add a notes field to software
|
|
- **itam**: Add a notes field to operating system
|
|
- **itam**: Add a notes field to devices
|
|
- **access**: Add a notes field to teams
|
|
- **base**: Add a notes field to `TenancyObjetcs` class
|
|
- **settings**: add docs icon to application settings page
|
|
- **itam**: add docs icon to software page
|
|
- **itam**: add docs icon to operating system page
|
|
- **itam**: add docs icon to devices page
|
|
- **config_management**: add docs icon to config groups page
|
|
- **base**: add dynamic docs icon
|
|
- config group software
|
|
- **models**: add property parent_object to models that have a parent
|
|
- **config_management**: add config group software to group history
|
|
- **itam**: render group software config within device rendered config
|
|
- **config_management**: assign software action to config group
|
|
- sso
|
|
- add configuration value 'SESSION_COOKIE_AGE'
|
|
- remove development SECRET_KEY and enforce checking for user configured one
|
|
- **base**: build CSRF trusted origins from configuration
|
|
- **base**: Enforceable SSO ONLY
|
|
- **base**: configurable SSO
|
|
|
|
### Fixes
|
|
|
|
- **itam**: remove requirement that user needs change device to add notes
|
|
- **core**: dont attempt to access parent_object if 'None' during history save
|
|
- **config_management**: Add missing parent item getter to model
|
|
- **core**: overridden save within SaveHistory to use default attributes
|
|
- **access**: overridden save to use default attributes
|
|
- History does not delete when item deleted
|
|
- **core**: on object delete remove history entries
|
|
- inventory upload cant determin object organization
|
|
- **api**: ensure proper permission checking
|
|
- dont throw an exception during settings load for an item django already checks
|
|
- **core**: Add overrides for delete so delete history saved for items with parent model
|
|
- **config_management**: correct delete success url
|
|
- **base**: remove social auth from nav menu
|
|
- **access**: add a team user permissions to use team organization
|
|
|
|
### Refactoring
|
|
|
|
- **access**: relocate permission check to own function
|
|
- **itam**: move device os tab to details tab
|
|
- **itam**: add device change form and adjust view to be non-form
|
|
- **itam**: migrate device vie to use manual entered fields in two columns
|
|
- **access**: migrate team users view to use forms
|
|
- **access**: migrate teams view to use forms
|
|
- **access**: migrate organization view to use form
|
|
- **base**: cleanup form and prettyfy
|
|
- **config_management**: relocate groups views to own directory
|
|
- login to use base template
|
|
- adjust template block names
|
|
|
|
### Tests
|
|
|
|
- **access**: team user model permission check for organization manager
|
|
- **access**: team model permission check for organization manager
|
|
- **access**: organization model permission check for organization manager
|
|
- **access**: add test cases for model delete as organization manager
|
|
- **access**: add test cases for model addd as organization manager
|
|
- **access**: add test cases for model change as organization manager
|
|
- **access**: add test cases for model view as organization manager
|
|
- write some more
|
|
- **core**: skip invalid tests
|
|
- **itam**: tests for device type history entries
|
|
- **core**: tests for manufacturer history entries
|
|
- move manufacturer to it's parent
|
|
- refactor api model permission tests to use an abstract class of test cases
|
|
- move tests to the module they belong to
|
|
- refactor history permission tests to use an abstract class of test cases
|
|
- refactor model permission tests to use an abstract class of test cases
|
|
- refactor history entry to have test cases in abstract classes
|
|
- **itam**: history entry tests for software category
|
|
- **itam**: history entry tests for device operating system version
|
|
- **itam**: history entry tests for device operating system
|
|
- **itam**: history entry tests for device software
|
|
- **itam**: ensure child history is removed on config group software delete
|
|
- add placeholder tests
|
|
- **itam**: ensure history is removed on software delete
|
|
- **itam**: ensure history is removed on operating system delete
|
|
- **itam**: ensure history is removed on device model delete
|
|
- **config_management**: test history on delete for config groups
|
|
- **itam**: ensure history is removed on device delete
|
|
- **access**: test team history
|
|
- **access**: ensure team user history is created and removed as required
|
|
- **access**: ensure history is removed on team delete
|
|
- **access**: ensure history is removed on item delete
|
|
- **api**: Inventory upload permission checks
|
|
- **config_management**: testing of config_groups rendered config
|
|
- **config_management**: history save tests for config groups software
|
|
- **config_management**: config group software permission for add, change and delete
|
|
- **base**: placeholder tests for config groups software
|
|
- **base**: basic test for merge_software helper
|
|
- during unit tests add SECRET_KEY
|
|
|
|
## 0.4.0 (2024-06-05)
|
|
|
|
### feat
|
|
|
|
- 2024 06 05
|
|
- **database**: add mysql support
|
|
- **api**: move invneotry api endpoint to '/api/device/inventory'
|
|
- **core**: support more history types
|
|
- **core**: function to fetch history entry item
|
|
- 2024 06 02
|
|
- **config_management**: Add button to groups ui for adding child group
|
|
- **access**: throw error if no organization added
|
|
- **itam**: add delete button to config group within ui
|
|
- **itam**: Config groups rendered configuration now part of devices rendered configuration
|
|
- **config_management**: Ability to delete a host from a config group
|
|
- **config_management**: Ability to add a host to a config group
|
|
- **config_management**: ensure config doesn't use reserved config keys
|
|
- **config_management**: Config groups rendered config
|
|
- **config_management**: add configuration groups
|
|
- **api**: add swagger ui for documentation
|
|
- **api**: filter software to users organizations
|
|
- **api**: filter devices to users organizations
|
|
- randomz
|
|
- **api**: add org team view page
|
|
- API configuration of permissions
|
|
- **api**: configure team permissions
|
|
|
|
### Fixes
|
|
|
|
- **itam**: ensure device type saves history
|
|
- **core**: correct history view permissions
|
|
- **config_management**: set config dict keys to be valid ansible variables
|
|
- **itam**: correct logic for device add dynamic success url
|
|
- **itam**: correct config group link for device
|
|
- **config_management**: correct model permissions
|
|
- **config_management**: add config management to navigation
|
|
- **ui**: remove api entries from navigation
|
|
- **api**: check for org must by by type None
|
|
- **api**: correct software permissions
|
|
- **api**: corrct device permissions
|
|
- **api**: permissions for teams
|
|
- **api**: correct reverse url lookup to use NS API
|
|
- **api**: permissions for organization
|
|
|
|
### Refactoring
|
|
|
|
- **access**: cache object so it doesnt have to be called multiple times
|
|
- **config_management**: move groups to nav menu
|
|
- **api**: migrate devices and software to viewsets
|
|
- **api**: move permission check to mixin
|
|
- **access**: add team option to org permission check
|
|
|
|
### Tests
|
|
|
|
- **api**: placeholder test for inventory
|
|
- **settings**: access permission check for app settings
|
|
- **settings**: history view permission check for software category
|
|
- **settings**: history view permission check for manufacturer
|
|
- **settings**: history view permission check for device type
|
|
- **settings**: user settings
|
|
- **settings**: view permission check for user settings
|
|
- refactor core test layout
|
|
- **itam**: view permission check for software
|
|
- **itam**: view permission check for operating system
|
|
- **itam**: view permission check for device model
|
|
- **itam**: view permission check for device
|
|
- **config_management**: view permission check for config_groups
|
|
- **access**: view permission check for team
|
|
- **access**: view permission check for organization
|
|
- add history entry creation tests for most models
|
|
- **config_management**: when adding a host to config group filter out host that are already members of the group
|
|
- **config_management**: unit test for config groups model to ensure permissions are working
|
|
- **api**: remove tests for os and manufacturer as they are not used in api
|
|
- **api**: check model permissions for software
|
|
- **api**: check model permissions for devices
|
|
- **api**: check model permissions for teams
|
|
- **api**: check model permissions for organizations
|
|
|
|
## 0.3.0 (2024-05-29)
|
|
|
|
### feat
|
|
|
|
- Randomz
|
|
- **access**: during organization permission check, check to ensure user is logged on
|
|
- **history**: always create an entry even if user=none
|
|
- **itam**: device uuid must be unique
|
|
- **itam**: device serial number must be unique
|
|
- 2024 05 26
|
|
- **setting**: Enable super admin to set ALL manufacturer/publishers as global
|
|
- **setting**: Enable super admin to set ALL device types as global
|
|
- **setting**: Enable super admin to set ALL device models as global
|
|
- **setting**: Enable super admin to set ALL software categories as global
|
|
- **UI**: show build details with page footer
|
|
- **software**: Add output to stdout to show what is and has occurred
|
|
- 2024 05 25
|
|
- **base**: Add delete icon to content header
|
|
- **itam**: Populate initial organization value from user default organization for software category creation
|
|
- **itam**: Populate initial organization value from user default organization for device type creation
|
|
- **itam**: Populate initial organization value from user default organization for device model creation
|
|
- **api**: Populate initial organization value from user default organization inventory
|
|
- **itam**: Populate initial organization value from user default organization for Software creation
|
|
- **itam**: Populate initial organization value from user default organization for operating system creation
|
|
- **device**: Populate initial organization value from user default organization
|
|
- Add management command software
|
|
- **setting**: Enable super admin to set ALL software as global
|
|
- **user**: Add user settings panel
|
|
- Manufacturer and Model Information
|
|
- **itam**: Add publisher to software
|
|
- **itam**: Add publisher to operating system
|
|
- **itam**: Add device model
|
|
- **core**: Add manufacturers
|
|
- **settings**: add dummy model for permissions
|
|
- **settings**: new module for whole of application settings/globals
|
|
- 2024 05 21-23
|
|
- **access**: Save changes to history for organization and teams
|
|
- **software**: Save changes to history
|
|
- **operating_system**: Save changes to history
|
|
- **device**: Save changes to history
|
|
- **core**: history model for saving model history
|
|
- 2024 05 19/20
|
|
- **itam**: Ability to add notes to software
|
|
- **itam**: Ability to add notes to operating systems
|
|
- **itam**: Ability to add notes on devices
|
|
- **core**: notes model added to core
|
|
- **device**: Record inventory date and show as part of details
|
|
- **ui**: Show inventory details if they exist
|
|
- **api**: API accept computer inventory
|
|
|
|
### Fixes
|
|
|
|
- **settings**: Add correct permissions for team user delete
|
|
- **settings**: Add correct permissions for team user view/change
|
|
- **settings**: Add correct permissions for team view/change
|
|
- **settings**: Add correct permissions for team add
|
|
- **settings**: Add correct permissions for team delete
|
|
- **access**: correct back link within team view
|
|
- **access**: correct url name to be within naming conventions
|
|
- **settings**: Add correct permissions for manufacturer / publisher delete
|
|
- **settings**: Add correct permissions for manufacturer / publisher add
|
|
- **settings**: Add correct permissions for manufacturer / publisher view/update
|
|
- **settings**: Add correct permissions for software category delete
|
|
- **settings**: Add correct permissions for software category add
|
|
- **settings**: Add correct permissions for software category view/update
|
|
- **settings**: Add correct permissions for device type delete
|
|
- **settings**: Add correct permissions for device type add
|
|
- **settings**: Add correct permissions for device type view/update
|
|
- **settings**: Add correct permissions for device model delete
|
|
- **settings**: Add correct permissions for device model add
|
|
- **settings**: Add correct permissions for device model view/update
|
|
- **access**: Add correct permissions for organization view/update
|
|
- **access**: use established view naming
|
|
- **itam**: Add correct permissions for operating system delete
|
|
- **itam**: Add correct permissions for operating system add
|
|
- **itam**: Add correct permissions for operating system view/update
|
|
- **itam**: Add correct permissions for software delete
|
|
- **itam**: Add correct permissions for software add
|
|
- **itam**: for non-admin user use correct order by fields for software view/update
|
|
- **itam**: Add correct permissions for software view/update
|
|
- **itam**: ensure permission_required parameter for view is a list
|
|
- **core**: dont save history when no user information available
|
|
- **access**: during organization permission check, check the entire list of permissions
|
|
- **core**: dont save history for anonymous user
|
|
- **access**: during permission check use post request params for an add action
|
|
- **user**: on new-user signal create settings row if not exist
|
|
- **itam**: ensure only user with change permission can change a device
|
|
- **user**: if user settings row doesn't exist on access create
|
|
- **access**: adding/deleting team group actions moved to model save/delete method override
|
|
- **api**: add teams and permissions to org and teams respectively
|
|
- **ui**: correct repo url used
|
|
- **api**: device inventory date set to read only
|
|
- **software**: ensure management command query correct for migration
|
|
- **device**: OS form trying to add last inventory date when empty
|
|
- add static files path to urls
|
|
- **inventory**: Dont select device_type, use 'null'
|
|
- **base**: show "content_title - SITE_TITLE" as site title
|
|
- **device**: Read Only field set as required=false
|
|
- correct typo in notes templates
|
|
- **ui**: Ensure navigation menu entry highlighted for sub items
|
|
|
|
### Refactoring
|
|
|
|
- **access**: add to models a get_organization function
|
|
- **access**: remove change view
|
|
- **itam**: relocation item delete from list to inside device
|
|
- **context_processor**: relocate as base
|
|
- **itam**: software index does not require created and modified date
|
|
- **organizations**: set org field to null if not set
|
|
- **itam**: move software categories to settings app
|
|
- **itam**: move device types to settings app
|
|
- **template**: content_title can be rendered in base
|
|
|
|
### Tests
|
|
|
|
- cleanup duplicate tests and minor reshuffle
|
|
- **access**: unit testing team user permissions
|
|
- **access**: unit testing team permissions
|
|
- **settings**: unit testing manufacturer permissions
|
|
- **settings**: unit testing software category permissions
|
|
- **device_model**: unit testing device type permissions
|
|
- **device_model**: unit testing device model permissions
|
|
- **organization**: unit testing organization permissions
|
|
- **operating_system**: unit testing operating system permissions
|
|
- **software**: unit testing software permissions
|
|
- **device**: unit testing device permissions
|
|
- adjust test layout and update contributing
|
|
- **core**: placeholder tests for history component
|
|
- **core**: place holder tests for notes model
|
|
- **api**: add placeholder tests for inventory
|
|
|
|
## 0.2.0 (2024-05-18)
|
|
|
|
### feat
|
|
|
|
- 2024 05 18
|
|
- **itam**: Add Operating System to ITAM models
|
|
- **api**: force content type to be JSON for req/resp
|
|
- **software**: view software
|
|
- 2024 05 17
|
|
- **device**: Prevent devices from being set global
|
|
- **software**: if no installations found, denote
|
|
- **device**: configurable software version
|
|
- **software_version**: name does not need to be unique
|
|
- **software_version**: set is_global to match software
|
|
- **software**: prettify device software action
|
|
- **software**: ability to add software versions
|
|
- **base**: add stylised action button/text
|
|
- **software**: add pagination for index
|
|
- **device**: add pagination for index
|
|
|
|
### Fixes
|
|
|
|
- **device**: correct software link
|
|
|
|
## 0.1.0 (2024-05-17)
|
|
|
|
### feat
|
|
|
|
- API token auth
|
|
- **api**: initial token authentication implementation
|
|
- itam and API setup
|
|
- **docker**: add settings to store data in separate volume
|
|
- **django**: add split settings for specifying additional settings paths
|
|
- **api**: Add device config to device
|
|
- **itam**: add organization to device installs
|
|
- **itam**: migrate app from own repo
|
|
- Enable API by default
|
|
- Genesis
|
|
- **admin**: remove team management
|
|
- **admin**: remove group management
|
|
- **access**: adjustable team permissions
|
|
- **api**: initial work on API
|
|
- **template**: add header content icon block
|
|
- **tenancy**: Add is_ global field
|
|
- **access**: when modifying a team ad/remove user from linked group
|
|
- **auth**: include python social auth django application
|
|
- Build docker container for release
|
|
- **access**: add permissions to team and user
|
|
- **style**: format check boxes
|
|
- **access**: delete team user form
|
|
- **view**: new user
|
|
- user who is 'is_superuser' to view everything and not be denied access
|
|
- **access**: add org mixin to current views
|
|
- **access**: add views for each action for teams
|
|
- **access**: add mixin to check organization permissions against user and object
|
|
- **account**: show admin site link if user is staff
|
|
- **development**: added the debug django app
|
|
- **access**: rename structure to access and remove organization app in favour of own implementation
|
|
- **account**: Add user password change form
|
|
- **urls**: provide option to exclude navigation items
|
|
- **structure**: unregister admin pages from organization app not required
|
|
- **auth**: Custom Login Page
|
|
- **auth**: Add User Account Menu
|
|
- **auth**: Setup Login required
|
|
- Dyno-magic build navigation from application urls.py
|
|
- **structure**: Select and View an individual Organization
|
|
- **structure**: View Organizations
|
|
- **app**: Add new app structure for organizations and teams
|
|
- **template**: add base template
|
|
- **django**: add organizations app
|
|
|
|
### Fixes
|
|
|
|
- **itam**: device software to come from device org or global not users orgs
|
|
- **access**: correct team required permissions
|
|
- **fields**: correct autoslug field so it works
|
|
- **docker**: build wheels then install
|
|
|
|
### Refactoring
|
|
|
|
- button to use same selection colour
|
|
- **access**: remove inline form for org teams
|
|
- rename app from itsm -> app
|
|
- **access**: dont use inline formset
|
|
- **views**: move views to own directory
|
|
- **access**: addjust org and teams to use different view per action
|
|
|
|
### Tests
|
|
|
|
- interim unit tests
|
|
|
|
## 0.0.1 (2024-05-06)
|