rust/compiler
bors 7e9b92cb43 Auto merge of #85993 - bjorn3:serde_json, r=wesleywiser
Remove all json handling from rustc_serialize

Json is now handled using serde_json. Where appropriate I have replaced json usage with binary serialization (rmeta files) or manual string formatting (emcc linker arg generation).

This allowed for removing and simplifying a lot of code, which hopefully results in faster serialization/deserialization and faster compiles of rustc itself.

Where sensible we now use serde. Metadata and incr cache serialization keeps using a heavily modified (compared to crates.io) rustc-serialize version that in the future could probably be extended with zero-copy deserialization or other perf tricks that serde can't support due to supporting more than one serialization format.

Note that I had to remove `-Zast-json` and `-Zast-json-noexpand` as the relevant AST types don't implement `serde::Serialize`.

Fixes #40177

See also https://github.com/rust-lang/compiler-team/issues/418
2022-06-03 17:55:02 +00:00
..
rustc Auto merge of #96737 - ChrisDenton:win-manifest, r=wesleywiser 2022-06-02 07:58:29 +00:00
rustc_apfloat
rustc_arena
rustc_ast Remove emit_unit 2022-06-03 17:02:14 +00:00
rustc_ast_lowering Manipulate lifetimes by LocalDefId for region resolution. 2022-06-03 12:03:20 +02:00
rustc_ast_passes clippy::complexity fixes 2022-05-26 13:14:24 +02:00
rustc_ast_pretty Revert #96682. 2022-06-02 11:22:16 +10:00
rustc_attr RFC3239: Implement compact cfg(target(..)) 2022-05-24 13:51:36 +02:00
rustc_borrowck Rollup merge of #97415 - cjgillot:is-late-bound-solo, r=estebank 2022-06-03 17:10:51 +02:00
rustc_builtin_macros Basic compiler infra 2022-06-02 09:00:04 -03:00
rustc_codegen_cranelift add cast kind of from_exposed_addr (int-to-ptr casts) 2022-06-02 10:46:13 -04:00
rustc_codegen_gcc Finish bumping stage0 2022-05-27 07:36:17 -04:00
rustc_codegen_llvm Auto merge of #97214 - Mark-Simulacrum:stage0-bump, r=pietroalbini 2022-05-29 16:28:21 +00:00
rustc_codegen_ssa Fix emscripten linker invocation 2022-06-03 17:02:14 +00:00
rustc_const_eval Rollup merge of #97663 - RalfJung:keine-halben-sachen, r=oli-obk 2022-06-03 11:18:25 +02:00
rustc_data_structures Tweak insert docs 2022-05-31 22:08:14 -07:00
rustc_driver Remove support for -Zast-json and -Zast-json-noexpand 2022-06-03 16:46:20 +00:00
rustc_error_codes Use the same message as type & const generics. 2022-06-03 08:26:10 +02:00
rustc_error_messages migrate check_for_for_in_in_typo diagnostic 2022-05-31 16:28:05 -05:00
rustc_errors Use serde_json for json error messages 2022-06-03 16:46:19 +00:00
rustc_expand Basic compiler infra 2022-06-02 09:00:04 -03:00
rustc_feature Auto merge of #97654 - Dylan-DPC:rollup-w6zrzxf, r=Dylan-DPC 2022-06-02 16:04:42 +00:00
rustc_fs_util
rustc_graphviz
rustc_hir Manipulate lifetimes by LocalDefId for region resolution. 2022-06-03 12:03:20 +02:00
rustc_hir_pretty
rustc_incremental
rustc_index Auto merge of #95418 - cjgillot:more-disk, r=davidtwco 2022-05-20 20:49:55 +00:00
rustc_infer Auto merge of #89862 - lcnr:path-generics-diagnostics, r=estebank 2022-06-03 12:37:16 +00:00
rustc_interface Remove support for -Zast-json and -Zast-json-noexpand 2022-06-03 16:46:20 +00:00
rustc_lexer
rustc_lint Fix TyKind lint, make consts no longer fn, etc 2022-05-28 11:38:22 -07:00
rustc_lint_defs Use serde_json for json error messages 2022-06-03 16:46:19 +00:00
rustc_llvm
rustc_log clippy::complexity fixes 2022-05-26 13:14:24 +02:00
rustc_macros Inline many methods of Encoder 2022-06-03 17:01:53 +00:00
rustc_metadata Remove emit_unit 2022-06-03 17:02:14 +00:00
rustc_middle Auto merge of #85993 - bjorn3:serde_json, r=wesleywiser 2022-06-03 17:55:02 +00:00
rustc_mir_build add cast kind of from_exposed_addr (int-to-ptr casts) 2022-06-02 10:46:13 -04:00
rustc_mir_dataflow Add a pointer to address cast kind 2022-05-31 00:00:00 +00:00
rustc_mir_transform Add a pointer to address cast kind 2022-05-31 00:00:00 +00:00
rustc_monomorphize Auto merge of #97168 - SparrowLii:accesses, r=cjgillot 2022-05-26 11:15:15 +00:00
rustc_parse Rollup merge of #97587 - pvdrz:maybe-recover-from-bad-qpath-stage-2, r=davidtwco 2022-06-02 11:13:24 +02:00
rustc_parse_format
rustc_passes don't use a span_note for ignored impls 2022-06-02 11:13:31 +02:00
rustc_plugin_impl
rustc_privacy
rustc_query_impl Remove emit_unit 2022-06-03 17:02:14 +00:00
rustc_query_system Address review comments. 2022-06-02 12:22:04 +10:00
rustc_resolve Compute is_late_bound in a separate query. 2022-06-03 12:05:04 +02:00
rustc_save_analysis
rustc_serialize Remove emit_unit 2022-06-03 17:02:14 +00:00
rustc_session Remove support for -Zast-json and -Zast-json-noexpand 2022-06-03 16:46:20 +00:00
rustc_span Inline many methods of Encoder 2022-06-03 17:01:53 +00:00
rustc_symbol_mangling
rustc_target Use serde_json for target spec json 2022-06-03 16:46:19 +00:00
rustc_trait_selection fix wrong suggestion for adding where clauses 2022-06-02 20:50:01 +09:00
rustc_traits Remove crate visibility usage in compiler 2022-05-20 20:04:54 -04:00
rustc_ty_utils Auto merge of #96964 - oli-obk:const_trait_mvp, r=compiler-errors 2022-05-30 09:19:03 +00:00
rustc_type_ir Inline many methods of Encoder 2022-06-03 17:01:53 +00:00
rustc_typeck Rollup merge of #97471 - estebank:prohibit-generics, r=cjgillot 2022-06-03 17:10:52 +02:00