|
1 | 1 | # @objectstack/example-crm |
2 | 2 |
|
| 3 | +## 4.0.92-rc.5 |
| 4 | + |
| 5 | +### Patch Changes |
| 6 | + |
| 7 | +- c6b6bb4: docs(spec): managed-datasource read-only is a database privilege, and the platform will not add a flag (#4584) |
| 8 | + |
| 9 | + #4583 removed `datasource.capabilities.readOnly` and left a gap open in its |
| 10 | + rejection message: `external.allowWrites: false` is the one enforced write gate |
| 11 | + and it covers only FEDERATED datasources, so a **managed** datasource had no |
| 12 | + read-only gate at all. The rejection pointed at #4584 and said "tracked". #4584 |
| 13 | + is now answered, and the answer is that this stays so **on purpose**: |
| 14 | + |
| 15 | + > **方案 B —— 不建平台层只读闸门,文档明确记录**。 |
| 16 | + > 一个只拦 ObjectQL 写路径、拦不住直连/迁移/DDL 的位,是「看起来存在的能力」—— |
| 17 | + > #4583 刚删掉的 `capabilities.readOnly` 就是这个形状,不再造第二遍。真只读属于 |
| 18 | + > 数据库账号权限(GRANT SELECT),那里没有绕行面。 |
| 19 | +
|
| 20 | + Read-only for a database ObjectStack owns is a **database account privilege** — |
| 21 | + `GRANT SELECT`. An ObjectQL-level flag would stop writes on one path and leave a |
| 22 | + direct `psql` session, a migration, a `syncSchema()` DDL statement and any |
| 23 | + process sharing the connection string untouched. A boundary that holds in one |
| 24 | + path is not a boundary, and one that looks like a boundary is worse than none |
| 25 | + because it gets trusted — which is exactly the defect #4583 removed. |
| 26 | + |
| 27 | + Documentation-only. No schema shape changes; the `capabilities.readOnly` |
| 28 | + tombstone now carries the answer instead of an open issue reference: |
| 29 | + |
| 30 | + - **Database Drivers** gains _Read-only: grant it at the database, not in |
| 31 | + metadata_ (a worked `GRANT SELECT` account, the DDL/schema-sync consequence, why |
| 32 | + the platform declines the flag, and a table of what actually enforces what) |
| 33 | + and _Read replicas: the platform does not route_ — the #4479 dual conclusion: |
| 34 | + no query path separates reads from writes, so put replicas behind pgpool / |
| 35 | + ProxySQL / an RDS reader endpoint and point `config` there. That is the |
| 36 | + correct answer, not a stopgap. |
| 37 | + - **External Datasources** now says plainly that the double opt-in write gate is |
| 38 | + federation-only, and that the parse rejects an `external` block on a `managed` |
| 39 | + datasource. |
| 40 | + - `example-crm`'s `crm_analytics` header comment recorded the ruling instead of |
| 41 | + waiting on it. |
| 42 | + |
| 43 | +- Updated dependencies [e5bd768] |
| 44 | +- Updated dependencies [e027b3e] |
| 45 | +- Updated dependencies [c2429b0] |
| 46 | +- Updated dependencies [445a0c2] |
| 47 | +- Updated dependencies [f6609e6] |
| 48 | +- Updated dependencies [a70358a] |
| 49 | +- Updated dependencies [97e7e3c] |
| 50 | +- Updated dependencies [8828b9e] |
| 51 | +- Updated dependencies [53068c1] |
| 52 | +- Updated dependencies [ee58392] |
| 53 | +- Updated dependencies [f16e54e] |
| 54 | +- Updated dependencies [06be54e] |
| 55 | +- Updated dependencies [259459d] |
| 56 | +- Updated dependencies [3f7f14e] |
| 57 | +- Updated dependencies [6968885] |
| 58 | +- Updated dependencies [eaed61f] |
| 59 | +- Updated dependencies [debe2f6] |
| 60 | +- Updated dependencies [97b0798] |
| 61 | +- Updated dependencies [43a7a8d] |
| 62 | +- Updated dependencies [04c56aa] |
| 63 | +- Updated dependencies [4c5df00] |
| 64 | +- Updated dependencies [b3efeb7] |
| 65 | +- Updated dependencies [ddd075a] |
| 66 | +- Updated dependencies [88154be] |
| 67 | +- Updated dependencies [e8dc61e] |
| 68 | +- Updated dependencies [2f3e793] |
| 69 | +- Updated dependencies [d8e8d9c] |
| 70 | +- Updated dependencies [94e749b] |
| 71 | +- Updated dependencies [ea1d916] |
| 72 | +- Updated dependencies [f7d80f4] |
| 73 | +- Updated dependencies [ae31a19] |
| 74 | +- Updated dependencies [e0f300b] |
| 75 | +- Updated dependencies [62b6a2f] |
| 76 | +- Updated dependencies [5b4780b] |
| 77 | +- Updated dependencies [a933452] |
| 78 | +- Updated dependencies [8140915] |
| 79 | +- Updated dependencies [7b48cf9] |
| 80 | +- Updated dependencies [b5404f4] |
| 81 | +- Updated dependencies [f764691] |
| 82 | +- Updated dependencies [e120a5a] |
| 83 | +- Updated dependencies [e650d67] |
| 84 | +- Updated dependencies [121852d] |
| 85 | +- Updated dependencies [04476e7] |
| 86 | +- Updated dependencies [79228cd] |
| 87 | +- Updated dependencies [b3363e9] |
| 88 | +- Updated dependencies [d03fe25] |
| 89 | +- Updated dependencies [2672f85] |
| 90 | +- Updated dependencies [11066f6] |
| 91 | +- Updated dependencies [916af17] |
| 92 | +- Updated dependencies [84c86fb] |
| 93 | +- Updated dependencies [2a2a9fb] |
| 94 | +- Updated dependencies [86e6f6c] |
| 95 | +- Updated dependencies [a2e157c] |
| 96 | +- Updated dependencies [95c4227] |
| 97 | +- Updated dependencies [2a61116] |
| 98 | +- Updated dependencies [d4df105] |
| 99 | +- Updated dependencies [e2798fa] |
| 100 | +- Updated dependencies [e2798fa] |
| 101 | +- Updated dependencies [0fd8556] |
| 102 | +- Updated dependencies [74155c7] |
| 103 | +- Updated dependencies [6908830] |
| 104 | +- Updated dependencies [8b06bba] |
| 105 | +- Updated dependencies [4c54037] |
| 106 | +- Updated dependencies [0f7157b] |
| 107 | +- Updated dependencies [d9bef45] |
| 108 | +- Updated dependencies [f549a0d] |
| 109 | +- Updated dependencies [f586f1a] |
| 110 | +- Updated dependencies [9b9b70f] |
| 111 | +- Updated dependencies [f5a9bc2] |
| 112 | +- Updated dependencies [881a3cc] |
| 113 | +- Updated dependencies [8a88885] |
| 114 | +- Updated dependencies [5f7669e] |
| 115 | +- Updated dependencies [becbe53] |
| 116 | +- Updated dependencies [b127c8b] |
| 117 | +- Updated dependencies [a80302a] |
| 118 | +- Updated dependencies [474f131] |
| 119 | +- Updated dependencies [050cd82] |
| 120 | +- Updated dependencies [4d552af] |
| 121 | +- Updated dependencies [44d677c] |
| 122 | +- Updated dependencies [c32944d] |
| 123 | +- Updated dependencies [1dd780f] |
| 124 | +- Updated dependencies [c8d6f6e] |
| 125 | +- Updated dependencies [92a67f2] |
| 126 | +- Updated dependencies [9136327] |
| 127 | +- Updated dependencies [bf0ae99] |
| 128 | +- Updated dependencies [cb3b6cd] |
| 129 | +- Updated dependencies [73b7234] |
| 130 | +- Updated dependencies [d2b97c3] |
| 131 | +- Updated dependencies [59b794f] |
| 132 | +- Updated dependencies [db59e9c] |
| 133 | +- Updated dependencies [fc3a36a] |
| 134 | +- Updated dependencies [69787f0] |
| 135 | +- Updated dependencies [5d022a1] |
| 136 | +- Updated dependencies [042b9ee] |
| 137 | +- Updated dependencies [f549a0d] |
| 138 | +- Updated dependencies [a36db28] |
| 139 | +- Updated dependencies [3f8817a] |
| 140 | +- Updated dependencies [a2443e3] |
| 141 | +- Updated dependencies [e1554b1] |
| 142 | +- Updated dependencies [4856789] |
| 143 | +- Updated dependencies [c3f4916] |
| 144 | +- Updated dependencies [33e0385] |
| 145 | +- Updated dependencies [2205363] |
| 146 | +- Updated dependencies [09fe58d] |
| 147 | +- Updated dependencies [d0a5ceb] |
| 148 | +- Updated dependencies [e18a162] |
| 149 | +- Updated dependencies [d127ff0] |
| 150 | +- Updated dependencies [9b86cf6] |
| 151 | +- Updated dependencies [c51ffa5] |
| 152 | +- Updated dependencies [8825a06] |
| 153 | +- Updated dependencies [5087ac6] |
| 154 | +- Updated dependencies [2d1ddf0] |
| 155 | +- Updated dependencies [3de535b] |
| 156 | +- Updated dependencies [fe2e15a] |
| 157 | +- Updated dependencies [6146b67] |
| 158 | +- Updated dependencies [c6b6bb4] |
| 159 | +- Updated dependencies [2f59da0] |
| 160 | +- Updated dependencies [73648ba] |
| 161 | +- Updated dependencies [a954634] |
| 162 | +- Updated dependencies [8ad609c] |
| 163 | +- Updated dependencies [bbee302] |
| 164 | +- Updated dependencies [08863dd] |
| 165 | +- Updated dependencies [56664f5] |
| 166 | +- Updated dependencies [31cbe90] |
| 167 | +- Updated dependencies [90bbf25] |
| 168 | +- Updated dependencies [eb91eba] |
| 169 | +- Updated dependencies [8fbed3b] |
| 170 | +- Updated dependencies [42da73d] |
| 171 | +- Updated dependencies [643b7c7] |
| 172 | +- Updated dependencies [1a15893] |
| 173 | +- Updated dependencies [b70e534] |
| 174 | +- Updated dependencies [b295e4b] |
| 175 | +- Updated dependencies [2233a85] |
| 176 | +- Updated dependencies [62dd69a] |
| 177 | +- Updated dependencies [e15e679] |
| 178 | +- Updated dependencies [2ab1257] |
| 179 | +- Updated dependencies [4cc4fb7] |
| 180 | +- Updated dependencies [2c26040] |
| 181 | +- Updated dependencies [f758cec] |
| 182 | +- Updated dependencies [1fa224a] |
| 183 | +- Updated dependencies [78f0be8] |
| 184 | +- Updated dependencies [35f7fb4] |
| 185 | +- Updated dependencies [a5302c7] |
| 186 | +- Updated dependencies [7084313] |
| 187 | +- Updated dependencies [0e043d8] |
| 188 | +- Updated dependencies [2f2e63c] |
| 189 | +- Updated dependencies [486d526] |
| 190 | +- Updated dependencies [f8fe47e] |
| 191 | +- Updated dependencies [6155c3c] |
| 192 | +- Updated dependencies [d13f627] |
| 193 | +- Updated dependencies [85ec26d] |
| 194 | +- Updated dependencies [f6476fc] |
| 195 | +- Updated dependencies [4ac12ef] |
| 196 | +- Updated dependencies [b88f5e8] |
| 197 | +- Updated dependencies [d7e0b42] |
| 198 | +- Updated dependencies [0996899] |
| 199 | +- Updated dependencies [378d8b1] |
| 200 | +- Updated dependencies [3510e4a] |
| 201 | +- Updated dependencies [aa4b90d] |
| 202 | +- Updated dependencies [54299ca] |
| 203 | +- Updated dependencies [dc61def] |
| 204 | +- Updated dependencies [251e888] |
| 205 | +- Updated dependencies [183b4c4] |
| 206 | +- Updated dependencies [2fdb36e] |
| 207 | +- Updated dependencies [cca11e9] |
| 208 | +- Updated dependencies [cfb549d] |
| 209 | +- Updated dependencies [20526f5] |
| 210 | +- Updated dependencies [c5eef1d] |
| 211 | +- Updated dependencies [e0f300b] |
| 212 | +- Updated dependencies [761a0ba] |
| 213 | +- Updated dependencies [be87153] |
| 214 | +- Updated dependencies [60f0dd8] |
| 215 | +- Updated dependencies [a87c5cd] |
| 216 | +- Updated dependencies [a47f338] |
| 217 | +- Updated dependencies [2598216] |
| 218 | +- Updated dependencies [2c7e62d] |
| 219 | +- Updated dependencies [eb7613c] |
| 220 | +- Updated dependencies [68f5ecc] |
| 221 | +- Updated dependencies [ecc9110] |
| 222 | +- Updated dependencies [f7bd4e2] |
| 223 | +- Updated dependencies [361bd5b] |
| 224 | +- Updated dependencies [bd5fc38] |
| 225 | +- Updated dependencies [1818998] |
| 226 | +- Updated dependencies [09ee21c] |
| 227 | +- Updated dependencies [f549a0d] |
| 228 | +- Updated dependencies [3fc2e48] |
| 229 | +- Updated dependencies [e8f435c] |
| 230 | +- Updated dependencies [41610f6] |
| 231 | + - @objectstack/spec@17.0.0-rc.6 |
| 232 | + - @objectstack/runtime@17.0.0-rc.6 |
| 233 | + |
3 | 234 | ## 4.0.92-rc.4 |
4 | 235 |
|
5 | 236 | ### Patch Changes |
|
0 commit comments