|
| 1 | +## Overview |
| 2 | +These are not the release notes, which can be found https://github.com/NASA-IMPACT/COSMOS/releases. Instead, this is a changelog that developers use to log key changes to the codebase with each pull request. |
| 3 | + |
| 4 | +## What to Include |
| 5 | +For each PR made, an entry should be added to this changelog. It should contain |
| 6 | +- a brief description of the deliverable of the feature or bugfix |
| 7 | +- exact listing of key changes such as: |
| 8 | + - API endpoint modified |
| 9 | + - frontend components added |
| 10 | + - model updates |
| 11 | + - deployment changes needed on the servers |
| 12 | + - etc. |
| 13 | + |
| 14 | +## Changelog |
| 15 | +- 2889-serialize-the-tdamm-tags |
| 16 | + - Description: Have TDAMM serialzed in a specific way and exposed via the Curated URLs API to be consumed into SDE Test/Prod |
| 17 | + - Changes: |
| 18 | + - Changed `get_tdamm_tag` method in the `CuratedURLAPISerializer` to process the TDAMM tags and pass them to the API endpoint |
| 19 | + |
| 20 | +- 960-notifications-add-a-dropdown-with-options-on-the-feedback-form |
| 21 | + - Description: Generate an API endpoint and publish all the dropdown options necessary as a list for LRM to consume it. |
| 22 | + - Changes: |
| 23 | + - Created a new model `FeedbackFormDropdown` |
| 24 | + - Added the migration file |
| 25 | + - Added the `dropdown_option` field to the `Feedback` model |
| 26 | + - Updated the slack notification structure by adding the dropdown option text |
| 27 | + - Created a new serializer called `FeedbackFormDropdownSerializer` |
| 28 | + - Added a new API endpoint `feedback-form-dropdown-options-api/` where the list is going to be accesible |
| 29 | + - Added a list view called `FeedbackFormDropdownListView` |
| 30 | + - Added tests |
| 31 | + |
| 32 | +- 1217-add-data-validation-to-the-feedback-form-api-to-restrict-html-content |
| 33 | + - Description: The feedback form API does not currently have any form of data validation on the backend which makes it easy for the user with the endpoint to send in data with html tags. We need to have a validation scheme on the backend to protect this from happening. |
| 34 | + - Changes: |
| 35 | + - Defined a class `HTMLFreeCharField` which inherits `serializers.CharField` |
| 36 | + - Used regex to catch any HTML content comming in as an input to form fields |
| 37 | + - Called this class within the serializer for necessary fields |
| 38 | + |
| 39 | +- 3227-bugfix-title-patterns-selecting-multi-url-pattern-does-nothing |
| 40 | + - Description: When selecting options from the match pattern type filter, the system does not filter the results as expected. Instead of displaying only the chosen variety of patterns, it continues to show all patterns. |
| 41 | + - Changes: |
| 42 | + - In `title_patterns_table` definition, corrected the column reference |
| 43 | + - Made `match_pattern_type` searchable |
| 44 | + - Corrected the column references and made code consistent on all the other tables, i.e., `exclude_patterns_table`, `include_patterns_table`, `division_patterns_table` and `document_type_patterns_table` |
| 45 | + |
| 46 | +- 1001-tests-for-critical-functionalities |
| 47 | + - Description: Critical functionalities have been identified and listed, and critical areas lacking tests listed |
| 48 | + - Changes: |
| 49 | + - Integrated coverage.py as an indicative tool in the workflow for automated coverage reports on PRs, with separate display from test results. |
| 50 | + - Introduced docs/architecture-decisions/testing_strategy.md, which includes the coverage report, lists critical areas, and specifically identifies those critical areas that are untested or under-tested. |
| 51 | + |
| 52 | +- 1192-finalize-the-infrastructure-for-frontend-testing |
| 53 | + - Description: Set up comprehensive frontend testing infrastructure using Selenium WebDriver with Chrome, establishing a foundation for automated UI testing. |
| 54 | + - Changes: |
| 55 | + - Added Selenium testing dependency to `requirements/local.txt` |
| 56 | + - Updated Dockerfile to support Chrome and ChromeDriver |
| 57 | + - Created BaseTestCase and AuthenticationMixin for reusable test components |
| 58 | + - Implemented core authentication test suite |
| 59 | + |
| 60 | +- 1195-implement-unit-test-for-forms-on-the-frontend |
| 61 | + - Description: Implemented comprehensive frontend test suite covering authentication, collection management, search functionality, and pattern application forms. |
| 62 | + - Changes: |
| 63 | + - Added tests for authentication flows |
| 64 | + - Implemented collection display and data table tests |
| 65 | + - Added universal search functionality tests |
| 66 | + - Created search pane filter tests |
| 67 | + - Added pattern application form tests with validation checks |
0 commit comments