Open lread opened 1 year ago
Observation: the full
libs seem to include.class
files.
Which is partly what triggers this behaviour, I suppose.
For example if I take a peek at the full.json jar:
$ unzip -l ~/.m2/repository/fullcontact/full.json/0.12.0/full.json-0.12.0.jar
Archive: /home/lee/.m2/repository/fullcontact/full.json/0.12.0/full.json-0.12.0.jar
Length Date Time Name
--------- ---------- ----- ----
240 2020-02-03 09:44 META-INF/MANIFEST.MF
3050 2020-02-03 09:44 META-INF/maven/fullcontact/full.json/pom.xml
1606 2020-02-03 09:44 META-INF/leiningen/fullcontact/full.json/project.clj
1077 2020-02-03 09:44 META-INF/leiningen/fullcontact/full.json/README.md
11514 2020-02-03 09:44 META-INF/leiningen/fullcontact/full.json/LICENSE
0 2020-02-03 09:44 full/
2326 2020-02-03 09:44 full/json$write_json.class
1181 2020-02-03 09:44 full/json$fn__920.class
927 2020-02-03 09:44 full/json$get_preserved_keys$iter__888__892.class
2701 2020-02-03 09:44 full/json$read_json.class
1320 2020-02-03 09:44 full/json$fn__886.class
1188 2020-02-03 09:44 full/json$fn__918.class
1545 2020-02-03 09:44 full/json$convert_keys.class
1190 2020-02-03 09:44 full/json$fn__916.class
997 2020-02-03 09:44 full/json$slurp_json.class
1001 2020-02-03 09:44 full/json$convert_map_keys$walk_fn__904.class
1078 2020-02-03 09:44 full/json$convert_keys$fn__913.class
1374 2020-02-03 09:44 full/json$get_preserved_keys.class
3054 2020-02-03 09:44 full/json$get_preserved_keys$iter__888__892$fn__893.class
3007 2020-02-03 09:44 full/json$loading__6721__auto____171.class
1785 2020-02-03 09:44 full/json$convert_map_keys.class
1013 2020-02-03 09:44 full/json$slurp_json_resource.class
1867 2020-02-03 09:44 full/json$get_preserved_keys$iter__888__892$fn__893$fn__894.class
5543 2020-02-03 09:44 full/json__init.class
1385 2020-02-03 09:44 full/json$convert_map_keys$fn__909.class
0 2020-02-03 09:44 clojure/
0 2020-02-03 09:44 clojure/tools/
1593 2020-02-03 09:44 clojure/tools/logging$eval869.class
3332 2020-02-03 09:44 clojure/tools/logging$eval869$fn__874.class
2670 2020-02-03 09:44 clojure/tools/logging$eval869$fn__870.class
1529 2020-02-03 09:44 clojure/tools/logging$eval882$reify__883.class
609 2020-02-03 09:44 clojure/tools/logging$eval882.class
0 2020-02-03 09:44 META-INF/
0 2020-02-03 09:44 META-INF/maven/
0 2020-02-03 09:44 META-INF/maven/fullcontact/
0 2020-02-03 09:44 META-INF/maven/fullcontact/full.json/
147 2020-02-03 09:44 META-INF/maven/fullcontact/full.json/pom.properties
0 2020-02-03 09:44 cheshire/
5189 2020-02-03 09:44 cheshire/generate_seq$generate_key_fn_map.class
600 2020-02-03 09:44 cheshire/generate_seq$eval563.class
806 2020-02-03 09:44 cheshire/generate$encode_bool.class
24391 2020-02-03 09:44 cheshire/generate$generate.class
1581 2020-02-03 09:44 cheshire/generate_seq$write_start_object.class
3329 2020-02-03 09:44 cheshire/core$with_writer.class
1639 2020-02-03 09:44 cheshire/generate$encode_named.class
2141 2020-02-03 09:44 cheshire/factory$loading__6721__auto____175.class
5922 2020-02-03 09:44 cheshire/generate_seq$eval541$fn__542.class
600 2020-02-03 09:44 cheshire/generate_seq$eval618.class
2464 2020-02-03 09:44 cheshire/generate$eval276$fn__277.class
1593 2020-02-03 09:44 cheshire/generate$i_QMARK_.class
599 2020-02-03 09:44 cheshire/generate_seq$eval524.class
2350 2020-02-03 09:44 cheshire/generate_seq$eval510$fn__511.class
4884 2020-02-03 09:44 cheshire/factory$make_cbor_factory.class
5343 2020-02-03 09:44 cheshire/generate$generate_map.class
600 2020-02-03 09:44 cheshire/generate_seq$eval541.class
4207 2020-02-03 09:44 cheshire/generate_seq$generate_array__631.class
788 2020-02-03 09:44 cheshire/generate$write_string.class
575 2020-02-03 09:44 cheshire/generate$eval276.class
576 2020-02-03 09:44 cheshire/generate$eval233.class
2668 2020-02-03 09:44 cheshire/generate_seq$generate_map__615.class
1135 2020-02-03 09:44 cheshire/generate$encode_str.class
5489 2020-02-03 09:44 cheshire/generate$eval255$fn__256.class
2322 2020-02-03 09:44 cheshire/generate_seq$write_end_object__522.class
730 2020-02-03 09:44 cheshire/generate$fn__207$G__203__210.class
2171 2020-02-03 09:44 cheshire/generate$tag.class
5134 2020-02-03 09:44 cheshire/generate$generate_basic_map__250.class
599 2020-02-03 09:44 cheshire/generate_seq$eval584.class
2299 2020-02-03 09:44 cheshire/core$parse_string_strict.class
1888 2020-02-03 09:44 cheshire/generate$remove_encoder$fn__503.class
5404 2020-02-03 09:44 cheshire/parse$eval796$fn__797.class
2205 2020-02-03 09:44 cheshire/factory$fn__179.class
558 2020-02-03 09:44 cheshire/parse$eval796.class
576 2020-02-03 09:44 cheshire/generate$eval255.class
2410 2020-02-03 09:44 cheshire/generate_seq$write_start_array__529.class
2098 2020-02-03 09:44 cheshire/parse$parse_strict.class
2713 2020-02-03 09:44 cheshire/generate$generate_array.class
1549 2020-02-03 09:44 cheshire/generate_seq$write_end_object.class
2552 2020-02-03 09:44 cheshire/parse$parse_object.class
34215 2020-02-03 09:44 cheshire/generate_seq$generate.class
4829 2020-02-03 09:44 cheshire/factory$make_json_factory.class
4151 2020-02-03 09:44 cheshire/generate$encode_number.class
2185 2020-02-03 09:44 cheshire/core$parse_smile.class
2183 2020-02-03 09:44 cheshire/core$parse_stream.class
1547 2020-02-03 09:44 cheshire/generate_seq$write_end_array.class
1334 2020-02-03 09:44 cheshire/parse$fn__775.class
1754 2020-02-03 09:44 cheshire/core$parsed_seq_STAR_$fn__862.class
4110 2020-02-03 09:44 cheshire/core$generate_string.class
576 2020-02-03 09:44 cheshire/generate$eval310.class
1717 2020-02-03 09:44 cheshire/core$fn__828.class
1968 2020-02-03 09:44 cheshire/generate$eval220$fn__221.class
4887 2020-02-03 09:44 cheshire/factory$make_smile_factory.class
5066 2020-02-03 09:44 cheshire/generate$eval233$fn__234.class
5791 2020-02-03 09:44 cheshire/parse$parse_object__792.class
599 2020-02-03 09:44 cheshire/generate_seq$eval510.class
2262 2020-02-03 09:44 cheshire/generate_seq$eval517$fn__518.class
3370 2020-02-03 09:44 cheshire/core$generate_cbor.class
5995 2020-02-03 09:44 cheshire/generate_seq$generate_basic_map__558.class
3132 2020-02-03 09:44 cheshire/generate_seq$loading__6721__auto____506.class
732 2020-02-03 09:44 cheshire/generate$encode_nil.class
2689 2020-02-03 09:44 cheshire/generate$encode_seq.class
1811 2020-02-03 09:44 cheshire/generate_seq$fn__508.class
1316 2020-02-03 09:44 cheshire/core$create_generator.class
817 2020-02-03 09:44 cheshire/generate$encode_int.class
2076 2020-02-03 09:44 cheshire/core$parsed_smile_seq.class
3433 2020-02-03 09:44 cheshire/generate$generate_array__323.class
1764 2020-02-03 09:44 cheshire/generate$fn__199.class
5563 2020-02-03 09:44 cheshire/generate$generate_key_fn_map__274.class
1903 2020-02-03 09:44 cheshire/parse$loading__6721__auto____773.class
1832 2020-02-03 09:44 cheshire/generate$fn__207$G__202__214.class
1784 2020-02-03 09:44 cheshire/factory$fn__177.class
14933 2020-02-03 09:44 cheshire/core__init.class
1271 2020-02-03 09:44 cheshire/generate$remove_encoder.class
2572 2020-02-03 09:44 cheshire/parse$parse_array.class
1717 2020-02-03 09:44 cheshire/generate$fn__204.class
3378 2020-02-03 09:44 cheshire/core$generate_smile.class
6260 2020-02-03 09:44 cheshire/generate_seq$eval563$fn__564.class
2177 2020-02-03 09:44 cheshire/core$parse_cbor.class
3247 2020-02-03 09:44 cheshire/core$loading__6721__auto____173.class
2420 2020-02-03 09:44 cheshire/parse$parse.class
2024 2020-02-03 09:44 cheshire/generate$write_string__225.class
2038 2020-02-03 09:44 cheshire/factory$fn__188.class
0 2020-02-03 09:44 cheshire/generate/
173 2020-02-03 09:44 cheshire/generate/JSONable.class
5100 2020-02-03 09:44 cheshire/factory__init.class
8172 2020-02-03 09:44 cheshire/generate_seq__init.class
2494 2020-02-03 09:44 cheshire/generate$loading__6721__auto____197.class
2062 2020-02-03 09:44 cheshire/core$parsed_seq.class
4133 2020-02-03 09:44 cheshire/generate_seq$eval618$fn__619.class
3743 2020-02-03 09:44 cheshire/generate$generate_basic_map.class
2412 2020-02-03 09:44 cheshire/generate_seq$write_start_object__515.class
2933 2020-02-03 09:44 cheshire/core$write.class
2055 2020-02-03 09:44 cheshire/factory$fn__191.class
16808 2020-02-03 09:44 cheshire/generate__init.class
6339 2020-02-03 09:44 cheshire/generate_seq$generate_key_fn_map__582.class
3239 2020-02-03 09:44 cheshire/generate$fail.class
4029 2020-02-03 09:44 cheshire/generate$encode_map.class
5146 2020-02-03 09:44 cheshire/generate_seq$generate_basic_map.class
2261 2020-02-03 09:44 cheshire/generate_seq$eval531$fn__532.class
987 2020-02-03 09:44 cheshire/parse$lazily_parse_array.class
2530 2020-02-03 09:44 cheshire/generate$generate_map__307.class
3364 2020-02-03 09:44 cheshire/generate$eval310$fn__311.class
3645 2020-02-03 09:44 cheshire/generate$generate_key_fn_map.class
5463 2020-02-03 09:44 cheshire/parse$parse_array__804.class
2051 2020-02-03 09:44 cheshire/factory$fn__194.class
5906 2020-02-03 09:44 cheshire/parse__init.class
2597 2020-02-03 09:44 cheshire/generate_seq$eval584$fn__585.class
818 2020-02-03 09:44 cheshire/generate$encode_long.class
2320 2020-02-03 09:44 cheshire/generate_seq$write_end_array__536.class
821 2020-02-03 09:44 cheshire/generate$encode_ratio.class
5729 2020-02-03 09:44 cheshire/parse$eval782$fn__783.class
1451 2020-02-03 09:44 cheshire/generate$encode_date.class
1443 2020-02-03 09:44 cheshire/generate$add_encoder.class
2151 2020-02-03 09:44 cheshire/parse$tag.class
2511 2020-02-03 09:44 cheshire/parse$lazily_parse_array$fn__806.class
575 2020-02-03 09:44 cheshire/generate$eval220.class
7395 2020-02-03 09:44 cheshire/generate_seq$generate_map.class
917 2020-02-03 09:44 cheshire/core$parsed_seq_STAR_.class
940 2020-02-03 09:44 cheshire/generate$fn__207.class
4117 2020-02-03 09:44 cheshire/core$generate_stream.class
599 2020-02-03 09:44 cheshire/generate_seq$eval531.class
558 2020-02-03 09:44 cheshire/parse$eval782.class
2278 2020-02-03 09:44 cheshire/core$parse_string.class
1138 2020-02-03 09:44 cheshire/generate$encode_symbol.class
8951 2020-02-03 09:44 cheshire/generate$number_dispatch.class
2349 2020-02-03 09:44 cheshire/generate_seq$eval524$fn__525.class
4774 2020-02-03 09:44 cheshire/parse$parse_STAR_.class
4231 2020-02-03 09:44 cheshire/generate_seq$generate_array.class
599 2020-02-03 09:44 cheshire/generate_seq$eval517.class
1579 2020-02-03 09:44 cheshire/generate_seq$write_start_array.class
3664 2020-01-31 10:18 full/json.cljc
--------- -------
495504 170 files
Background
I've been trying to help Mor Gazith work out some issues he is having with MrAnderson on Slack.
Use case
We whittled down a problematic use case when attempting to inline full.json from full.aws.
The root namespaces of these projects match their library names. They both start with
full
.Symptom
After inlining deps, we would expect
target/srcdeps/full/aws
to exist, but it does not.Steps to reproduce
Clone full.aws
Configure
project.clj
to inlinefull.json
like so:(added
:plugins
, and^:inline-dep
, also removed:aot :all
to not muddy the waters with any effects it might have).Inline the deps:
Notice near the bottom of the output:
And if we look at generated code you'll notice that yeah
full
it is not there:Next Steps
I can take a look at a fix.