> 1) AOT classes are not used within clojure.lang.RT/load unless the
> modification time is greater than the corresponding .clj file.
> 2) maven-shade-plugin (which we were using to generate uberjars) uses
> the current time as the modification time for all files added to the
> jar it creates.
The case of the mod times being equal is an ambiguous one. Having given this some thought in the past, I think the fix you proposed would not cause any intended current behavior to break.
> http://gist.github.com/572726
> [...]
> If the source file and AOT compiled file have the exact same modtime, there is no reason not to use the compiled file.
I agree.
--Steve