|
2 | 2 |
|
3 | 3 | <!-- version list --> |
4 | 4 |
|
| 5 | +## v4.0.3 (2026-05-20) |
| 6 | + |
| 7 | +### Bug Fixes |
| 8 | + |
| 9 | +- Add cross-platform install docs and conventional-pr make target |
| 10 | + ([#2202](https://github.com/oscal-compass/compliance-trestle/pull/2202), |
| 11 | + [`cc76c3a`](https://github.com/oscal-compass/compliance-trestle/commit/cc76c3a9b7afdba10dac2c9553df52dc8e5f7ac9)) |
| 12 | + |
| 13 | +- Address PR review comments on multi-train release support |
| 14 | + ([#2201](https://github.com/oscal-compass/compliance-trestle/pull/2201), |
| 15 | + [`a013ac8`](https://github.com/oscal-compass/compliance-trestle/commit/a013ac826e7df7bb7c9a645b6a0bdc561de2efa4)) |
| 16 | + |
| 17 | +- Apply mdformat to maintenance_releases.md |
| 18 | + ([#2201](https://github.com/oscal-compass/compliance-trestle/pull/2201), |
| 19 | + [`a013ac8`](https://github.com/oscal-compass/compliance-trestle/commit/a013ac826e7df7bb7c9a645b6a0bdc561de2efa4)) |
| 20 | + |
| 21 | +- Codeql issue Bad HTML filtering regexp |
| 22 | + ([#2226](https://github.com/oscal-compass/compliance-trestle/pull/2226), |
| 23 | + [`7e39242`](https://github.com/oscal-compass/compliance-trestle/commit/7e39242351fa81420938bbb70282093ab6be8d1b)) |
| 24 | + |
| 25 | +- Cognitive complexity |
| 26 | + ([`53de5e7`](https://github.com/oscal-compass/compliance-trestle/commit/53de5e75332888ea54f5da41d4c7859bb1d608e1)) |
| 27 | + |
| 28 | +- Convert negative security checks to positive allowlists |
| 29 | + ([#2201](https://github.com/oscal-compass/compliance-trestle/pull/2201), |
| 30 | + [`a013ac8`](https://github.com/oscal-compass/compliance-trestle/commit/a013ac826e7df7bb7c9a645b6a0bdc561de2efa4)) |
| 31 | + |
| 32 | +- Correct act install SHA to commit SHA (not tag object SHA) |
| 33 | + ([#2201](https://github.com/oscal-compass/compliance-trestle/pull/2201), |
| 34 | + [`a013ac8`](https://github.com/oscal-compass/compliance-trestle/commit/a013ac826e7df7bb7c9a645b6a0bdc561de2efa4)) |
| 35 | + |
| 36 | +- Correct path security validator behaviour on mac os |
| 37 | + ([`34ca6ad`](https://github.com/oscal-compass/compliance-trestle/commit/34ca6adbf5208c05f50ffd4448907c73bbf93194)) |
| 38 | + |
| 39 | +- Correct path security validator behaviour on mac os |
| 40 | + ([`140acb2`](https://github.com/oscal-compass/compliance-trestle/commit/140acb2c052a1a2cfed1e2e22adbc2f8b79332ab)) |
| 41 | + |
| 42 | +- Handle dotted dir in to_trash_path |
| 43 | + ([#2209](https://github.com/oscal-compass/compliance-trestle/pull/2209), |
| 44 | + [`7244d97`](https://github.com/oscal-compass/compliance-trestle/commit/7244d97fa4afb115340a9b01f8ba994f44b7397d)) |
| 45 | + |
| 46 | +- Handle dotted directory paths in trash resolution |
| 47 | + ([#2209](https://github.com/oscal-compass/compliance-trestle/pull/2209), |
| 48 | + [`7244d97`](https://github.com/oscal-compass/compliance-trestle/commit/7244d97fa4afb115340a9b01f8ba994f44b7397d)) |
| 49 | + |
| 50 | +- Handle dotted trash path edge cases |
| 51 | + ([#2209](https://github.com/oscal-compass/compliance-trestle/pull/2209), |
| 52 | + [`7244d97`](https://github.com/oscal-compass/compliance-trestle/commit/7244d97fa4afb115340a9b01f8ba994f44b7397d)) |
| 53 | + |
| 54 | +- Handle missing metadata in version |
| 55 | + ([#2186](https://github.com/oscal-compass/compliance-trestle/pull/2186), |
| 56 | + [`4f6c77c`](https://github.com/oscal-compass/compliance-trestle/commit/4f6c77c2abc72dce1bf0d5e417b7fed171b85d5a)) |
| 57 | + |
| 58 | +- Improve test coverage |
| 59 | + ([`53de5e7`](https://github.com/oscal-compass/compliance-trestle/commit/53de5e75332888ea54f5da41d4c7859bb1d608e1)) |
| 60 | + |
| 61 | +- Improve test coverage to 100% for security.py |
| 62 | + ([`89f4e53`](https://github.com/oscal-compass/compliance-trestle/commit/89f4e53d159e8ff901da4d7c3b51c9556bd32ec0)) |
| 63 | + |
| 64 | +- Improve validation |
| 65 | + ([`2dd1cce`](https://github.com/oscal-compass/compliance-trestle/commit/2dd1cce6b9a671dc2fcaed794158d5c16ed17dc5)) |
| 66 | + |
| 67 | +- Jinja write |
| 68 | + ([`2dd1cce`](https://github.com/oscal-compass/compliance-trestle/commit/2dd1cce6b9a671dc2fcaed794158d5c16ed17dc5)) |
| 69 | + |
| 70 | +- Pin act install to v0.2.87 and fix mdformat table padding |
| 71 | + ([#2202](https://github.com/oscal-compass/compliance-trestle/pull/2202), |
| 72 | + [`cc76c3a`](https://github.com/oscal-compass/compliance-trestle/commit/cc76c3a9b7afdba10dac2c9553df52dc8e5f7ac9)) |
| 73 | + |
| 74 | +- Pre-configure act image to avoid interactive prompt in CI |
| 75 | + ([#2201](https://github.com/oscal-compass/compliance-trestle/pull/2201), |
| 76 | + [`a013ac8`](https://github.com/oscal-compass/compliance-trestle/commit/a013ac826e7df7bb7c9a645b6a0bdc561de2efa4)) |
| 77 | + |
| 78 | +- Preserve dotted catalog names in validate -a |
| 79 | + ([#2146](https://github.com/oscal-compass/compliance-trestle/pull/2146), |
| 80 | + [`bc638c0`](https://github.com/oscal-compass/compliance-trestle/commit/bc638c040ea5bb1f3500b626307bba21be78b618)) |
| 81 | + |
| 82 | +- The HTTPSFetcher |
| 83 | + ([`53de5e7`](https://github.com/oscal-compass/compliance-trestle/commit/53de5e75332888ea54f5da41d4c7859bb1d608e1)) |
| 84 | + |
| 85 | +- Update stale OSCAL reference links |
| 86 | + ([#2209](https://github.com/oscal-compass/compliance-trestle/pull/2209), |
| 87 | + [`7244d97`](https://github.com/oscal-compass/compliance-trestle/commit/7244d97fa4afb115340a9b01f8ba994f44b7397d)) |
| 88 | + |
| 89 | +- Write security against .. in remove cache path |
| 90 | + ([`89f4e53`](https://github.com/oscal-compass/compliance-trestle/commit/89f4e53d159e8ff901da4d7c3b51c9556bd32ec0)) |
| 91 | + |
| 92 | +- **deps**: Bump actions/cache from 5.0.4 to 5.0.5 |
| 93 | + ([#2204](https://github.com/oscal-compass/compliance-trestle/pull/2204), |
| 94 | + [`521008f`](https://github.com/oscal-compass/compliance-trestle/commit/521008f2382b80f4352de39c65b04809f1eafb3f)) |
| 95 | + |
| 96 | +- **deps**: Bump actions/checkout from 6.0.1 to 6.0.2 |
| 97 | + ([#2075](https://github.com/oscal-compass/compliance-trestle/pull/2075), |
| 98 | + [`4d9c832`](https://github.com/oscal-compass/compliance-trestle/commit/4d9c83211348f75c4c0be5a2f191d7c406ae7bd5)) |
| 99 | + |
| 100 | +- **deps**: Bump actions/create-github-app-token from 3.1.1 to 3.2.0 |
| 101 | + ([#2229](https://github.com/oscal-compass/compliance-trestle/pull/2229), |
| 102 | + [`7f42431`](https://github.com/oscal-compass/compliance-trestle/commit/7f4243186633ac1ce801dd2475825df049d6ff15)) |
| 103 | + |
| 104 | +- **deps**: Bump actions/setup-python from 6.1.0 to 6.2.0 |
| 105 | + ([#2075](https://github.com/oscal-compass/compliance-trestle/pull/2075), |
| 106 | + [`4d9c832`](https://github.com/oscal-compass/compliance-trestle/commit/4d9c83211348f75c4c0be5a2f191d7c406ae7bd5)) |
| 107 | + |
| 108 | +- **deps**: Bump cryptography from 46.0.3 to 46.0.4 |
| 109 | + ([#2075](https://github.com/oscal-compass/compliance-trestle/pull/2075), |
| 110 | + [`4d9c832`](https://github.com/oscal-compass/compliance-trestle/commit/4d9c83211348f75c4c0be5a2f191d7c406ae7bd5)) |
| 111 | + |
| 112 | +- **deps**: Bump github/codeql-action from 4.35.1 to 4.35.2 |
| 113 | + ([#2205](https://github.com/oscal-compass/compliance-trestle/pull/2205), |
| 114 | + [`84ab5de`](https://github.com/oscal-compass/compliance-trestle/commit/84ab5de6a749161ec8b5edcfb28c10c0a019c699)) |
| 115 | + |
| 116 | +- **deps**: Bump github/codeql-action from 4.35.2 to 4.35.5 |
| 117 | + ([#2230](https://github.com/oscal-compass/compliance-trestle/pull/2230), |
| 118 | + [`da6598f`](https://github.com/oscal-compass/compliance-trestle/commit/da6598fb454fc7563c4d7f47ae437e352da12e87)) |
| 119 | + |
| 120 | +- **deps**: Bump paramiko from 4.0.0 to 5.0.0 |
| 121 | + ([#2223](https://github.com/oscal-compass/compliance-trestle/pull/2223), |
| 122 | + [`21cd0e4`](https://github.com/oscal-compass/compliance-trestle/commit/21cd0e4e4909b9429a9e4c2b4623f530a062bbd9)) |
| 123 | + |
| 124 | +- **deps**: Bump SonarSource/sonarqube-scan-action from 7.1.0 to 8.0.0 |
| 125 | + ([#2215](https://github.com/oscal-compass/compliance-trestle/pull/2215), |
| 126 | + [`66693b4`](https://github.com/oscal-compass/compliance-trestle/commit/66693b41633a992c54d86b67027ab5dc4e6ec0a2)) |
| 127 | + |
| 128 | +- **ssp**: Handle optional by_components in assemble merge |
| 129 | + ([#2190](https://github.com/oscal-compass/compliance-trestle/pull/2190), |
| 130 | + [`ce730e1`](https://github.com/oscal-compass/compliance-trestle/commit/ce730e17b56bf254533a23ec30090e4f4f279fe7)) |
| 131 | + |
| 132 | +### Chores |
| 133 | + |
| 134 | +- **ci**: Prevent concurrent gh-pages deployments |
| 135 | + ([#2075](https://github.com/oscal-compass/compliance-trestle/pull/2075), |
| 136 | + [`4d9c832`](https://github.com/oscal-compass/compliance-trestle/commit/4d9c83211348f75c4c0be5a2f191d7c406ae7bd5)) |
| 137 | + |
| 138 | +### Code Style |
| 139 | + |
| 140 | +- Fix markdown formatting nits via mdformat |
| 141 | + ([#2134](https://github.com/oscal-compass/compliance-trestle/pull/2134), |
| 142 | + [`28cf20c`](https://github.com/oscal-compass/compliance-trestle/commit/28cf20cc5f5bda20165a0efa6ca253b17f5147b6)) |
| 143 | + |
| 144 | +### Continuous Integration |
| 145 | + |
| 146 | +- Add act-based local workflow testing |
| 147 | + ([#2202](https://github.com/oscal-compass/compliance-trestle/pull/2202), |
| 148 | + [`cc76c3a`](https://github.com/oscal-compass/compliance-trestle/commit/cc76c3a9b7afdba10dac2c9553df52dc8e5f7ac9)) |
| 149 | + |
| 150 | +- Add act-based local workflow testing and CI validation |
| 151 | + ([#2202](https://github.com/oscal-compass/compliance-trestle/pull/2202), |
| 152 | + [`cc76c3a`](https://github.com/oscal-compass/compliance-trestle/commit/cc76c3a9b7afdba10dac2c9553df52dc8e5f7ac9)) |
| 153 | + |
| 154 | +- Add multi-train release support for maintenance branches |
| 155 | + ([#2201](https://github.com/oscal-compass/compliance-trestle/pull/2201), |
| 156 | + [`a013ac8`](https://github.com/oscal-compass/compliance-trestle/commit/a013ac826e7df7bb7c9a645b6a0bdc561de2efa4)) |
| 157 | + |
| 158 | +- Add Snyk exception for paramiko cryptographic algorithm issue |
| 159 | + ([#2218](https://github.com/oscal-compass/compliance-trestle/pull/2218), |
| 160 | + [`34b1d60`](https://github.com/oscal-compass/compliance-trestle/commit/34b1d6087575ab9cc6f928d605bf5f247cb9ee1e)) |
| 161 | + |
| 162 | +- Fix merge commit validation and document release environment setup |
| 163 | + ([#2218](https://github.com/oscal-compass/compliance-trestle/pull/2218), |
| 164 | + [`34b1d60`](https://github.com/oscal-compass/compliance-trestle/commit/34b1d6087575ab9cc6f928d605bf5f247cb9ee1e)) |
| 165 | + |
| 166 | +### Documentation |
| 167 | + |
| 168 | +- Add code review policy and update security insights #1844 |
| 169 | + ([#2134](https://github.com/oscal-compass/compliance-trestle/pull/2134), |
| 170 | + [`28cf20c`](https://github.com/oscal-compass/compliance-trestle/commit/28cf20cc5f5bda20165a0efa6ca253b17f5147b6)) |
| 171 | + |
| 172 | +- Implement code review policy #1844 |
| 173 | + ([#2134](https://github.com/oscal-compass/compliance-trestle/pull/2134), |
| 174 | + [`28cf20c`](https://github.com/oscal-compass/compliance-trestle/commit/28cf20cc5f5bda20165a0efa6ca253b17f5147b6)) |
| 175 | + |
| 176 | +- Sync maintainers with core team and update security insights |
| 177 | + ([#2134](https://github.com/oscal-compass/compliance-trestle/pull/2134), |
| 178 | + [`28cf20c`](https://github.com/oscal-compass/compliance-trestle/commit/28cf20cc5f5bda20165a0efa6ca253b17f5147b6)) |
| 179 | + |
| 180 | +### Testing |
| 181 | + |
| 182 | +- Cover missing metadata version in version command |
| 183 | + ([#2186](https://github.com/oscal-compass/compliance-trestle/pull/2186), |
| 184 | + [`4f6c77c`](https://github.com/oscal-compass/compliance-trestle/commit/4f6c77c2abc72dce1bf0d5e417b7fed171b85d5a)) |
| 185 | + |
| 186 | + |
5 | 187 | ## v4.0.2 (2026-04-17) |
6 | 188 |
|
7 | 189 | ### Bug Fixes |
|
0 commit comments