Commit a4e8975
make ext folder composable: load extensions from both global and local
Previously, ext/ used the same override logic as dist/ and jre/ - if local
.karate/ext/ existed, it replaced global ~/.karate/ext/. This made it
impossible to have project-specific extensions while keeping global ones.
Changes:
- platform.rs: add all_ext_dirs() method returning both global and local ext paths
- delegate.rs: update build_classpath() to iterate over all ext directories
- doctor.rs: update extensions list to show jars from all ext directories
- spec.md: clarify that ext/ is composable while dist/ and jre/ remain override
Behavior:
- dist/: local overrides global (unchanged)
- jre/: local overrides global (unchanged)
- ext/: both global AND local jars are loaded (new composable behavior)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>1 parent 67426cc commit a4e8975
4 files changed
Lines changed: 46 additions & 22 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
403 | 403 | | |
404 | 404 | | |
405 | 405 | | |
406 | | - | |
407 | | - | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
408 | 409 | | |
409 | 410 | | |
410 | | - | |
| 411 | + | |
411 | 412 | | |
412 | 413 | | |
413 | 414 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
110 | 110 | | |
111 | 111 | | |
112 | 112 | | |
113 | | - | |
114 | | - | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
115 | 119 | | |
116 | 120 | | |
117 | 121 | | |
| |||
292 | 296 | | |
293 | 297 | | |
294 | 298 | | |
295 | | - | |
296 | | - | |
| 299 | + | |
| 300 | + | |
297 | 301 | | |
298 | | - | |
299 | | - | |
300 | | - | |
301 | | - | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
302 | 309 | | |
303 | | - | |
304 | | - | |
305 | | - | |
306 | | - | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
307 | 315 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
125 | 127 | | |
126 | 128 | | |
127 | 129 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
230 | 230 | | |
231 | 231 | | |
232 | 232 | | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
233 | 246 | | |
234 | 247 | | |
235 | 248 | | |
| |||
0 commit comments