:aot (Leiningen plugin) when its ns form actually has a :gen-class clause, not when :gen-class merely appears as text in a docstring or comment(some.pkg.Widget. ...)) untouched during the namespace move when its package is also a moved namespace, so the java-import pass can point it at the jarjar-repackaged class instead of the namespace prefix (otherwise it threw ClassNotFoundException at runtime). Deftype/defrecord classes, which have no .class file, still move with their namespace(:import ...) correctly when a deftype class and a repackaged Java class share a package (e.g. claypoole): the Java class now points at its jarjar package even though the namespace move has already prefixed the shared package(:import ...) form (previously such references were left bare and threw ClassNotFoundException at runtime)(load "…") resource paths when a namespace is relocated, so libraries that load companion files (e.g. tools.deps.alpha) inline correctly/ in a n/a version) from the generated prefix so they don't break imports:imports of inlined classes in top-level dependency namespaces and in the consuming project's own sources, which the per-dependency pass missed:imports by exact class rather than by package, so a class that merely shares a package with a repackaged one is left untouched(:import [pkg A B]) so a deftype-generated class and a real Java class in the same package each get the correct prefixsrcdeps directory instead of a hardcoded target/srcdeps, so it works with mranderson.core/inline-deps and a custom :target-path.class files instead of the whole top-level directory, so project sources sharing a root namespace with an inlined lib aren't clobberedorg.clojure/core.rrb-vector as part of clojure.core:aot is configured, since inlining AOT-compiled namespaces produces broken prefixesMakefile so make install installs an inlined MrAnderson to the local maven repomranderson.core/inline-deps, a Leiningen-free entry point usable from tools.build/tools.depsmranderson.internal.no-parallelism as on option temporarilycider-nrepl and refactor-nrepl:included-source-paths option, which is described in the README.org.pantsbuild.jarjar:1.7.2 instead of jarjar:1.3. Also abandoned but still an upgradeclj-kondo.exports from jar extraction by @bbatsovdef in cljs(:import foo.bar.baz.FooBar)META-INF directory when unzipping dependency for inlining as meta files are unnecessary in the end product.:inline-dep and :source-dep meta tag on dependencies are supported to signal that MrAnderson should inline given dependency.:import section of the ns macro is processed first. Only when that part is done the rest of the ns macro is considered for replacements.source-deps leiningen task is renamed to inline-depsrewrite-clj the body of the ns is processed textuallymranderson.source-deps ns into multiple namespaces for readability/maintainablity:mranderson section in the project.clj for certain config options (project-prefix, overrides, expositions, shadowing-only)overrides config option for the unresolved tree mode to make overriding transient deps possibleexpositions config option for the unresolved tree mode to override transient deps hygiene so a transient dependency would be available for the project's own source filesPlease see the releases page on github.
Can you improve this documentation? These fine people already did:
Benedek Fazekas, Bozhidar Batsov, Lee Read, benedek fazekas, lread & vemvEdit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |