I was updating the https://github.com/querqy/querqy-solr repo for Solr 10, and 
then tests started due to issues with ExternalPaths.
I asked claude for help and it said:
The `ExternalPaths` class assumed it was running within the Solr source tree 
and attempted to resolve paths like `webapp/web`, 
`server/solr/configsets/_default/conf`, etc. on the `SOURCE_HOME` path. When 
`SOURCE_HOME` was `null` (as in external projects), calling `.resolve()` on it 
caused an NPE.

I dug a bit more, and it was caused when we did the File --> Path migation in 
SOLR-16903 (commit 86f2afded1252b69b8478a2c795a7657585ef5c2).   
In Java's `java.io.File` implementation:
```javaFile file = new File(null, "webapp/web");  // This is LEGALString path = 
file.getAbsolutePath();       // Returns a valid path (relative)```but with 
path:
```javaPath path = null;path.resolve("webapp/web");  // ❌ 
NullPointerException!```
I have a potential patch here: 
https://gist.github.com/epugh/beaf36329593aa879af2d26eaa9030fd
Thoughts?   Am I understanding things correctly?
Eric

Reply via email to