- Elide more lifetimes in generated code to make Clippy happy.
- Add support for
stream
keyword.
- Include new members_by_name field of RawStructSchema.
- Generalize text, primitive_list, and enum_list setters using impl SetterInput.
- Fix overly-restrictive lifetimes in setters of certain list fields.
- Update for lazier utf-8 validation.
- Add the
$Rust.option
annotation for declaring fields to be optional. - Add
CompilerCommand::crate_provides()
, allowing cross-crate imports.
- Fix setters of enum fields with defaults.
- Add support for reflection.
- Implement
Debug
for all generated structReader
types.
- Use
core::marker
instead ofstd::marker
for pointer constants, for no_std compat.
- Generate explicit Clone and Copy impls for Reader structs.
- Fully-qualify
::capnp::Word
in generated code. - Add
capnp --version
invocation beforecapnp compile
, for better error reporting. - Clear PWD env variable, to silence warning from kj/filesystem-disk-unix.c++.
- Generate
*_has()
methods for capability fields.
- Avoid ambiguous associated item in TryFrom implementations.
- Fix clippy warnings in generated code.
- Update code generation for removal of
To16
,FromU16
,FromStructReader
,FromStructBuilder
.
- Apply clippy lifetime elision suggestion in set_pointer_builder() in generated code.
- Lots of style fixes and linting, including for generated code.
- Support trait changes in capnp::traits.
- Remove deprecated function.
- Fix Clippy warnings in generated code.
- Include name of method in
unimplemented
error messages. - Fix super interface lookup in case of transitive
extends
chain.
- Canonicalize order of type parameters from the bugfix for issue 260.
- Fix bug in code generation for unions that don't use all of their enclosing struct's generic params.
- Fix bug in code generation for generic groups.
- Add CompilerCommand.raw_code_generator_request_path().
- Check that schema files exist before attempting to invoke the schema compiler.
- Include LICENSE in published crate.
- Add CompilerCommand::default_parent_module() option.
- Add codegen::CodeGenerationCommand and deprecate codegen::generate_code().
- Get generated code to pass the elided_lifetimes_in_paths lint.
- Update for
SetPointerBuilder
no longer having aTo
type parameter. - Make generated
Owned
structs unconstructable. They are only intented to be used as types, not values.
- Fix some more clippy warnings in generated code.
- Update to work without requiring "std" feature of capnp base crate.
- Refer to
core
instead ofstd
in generated code. - Remove deprecated
ToClient
structs from generated code.
- Add
CompilerCommand.capnp_executable()
. - Remove obsolete
RustEdition
enum.
- Generate code for new capnp::capability::FromServer trait.
- Add
parentModule
annotation to allow generated code to be included in a submodule.
- Add rust.capnp file with
name
annotation for renaming items in generated Rust code.
- Remove deprecated item.
- Avoid generating some superfluous parentheses.
- Remove unused experimental
schema
module. - Bump minimum supported rustc version to 1.39.0.
- Include the string "@generated" generated code.
- Don't write output files if their content is unchanged.
- Allow CompilerCommand to work even when OUT_DIR is not set.
- Simplify handling of pointer defaults.
- Use new const fn ::capnp::word() instead of capnp_word!() macro.
- Remove deprecated items.
- Use dyn keyword for trait objects.
- Deprecate edition() configuration. Apparently the code we generate for Rust 2018 also works for Rust 2015 now.
- Update to 2018 edition.
- Update minimum required rustc version to 1.35.
- Fix bug in code generation for generic interfaces.
- Add support for pointer field defaults.
- Generate impls of new IntoInternalStructReader trait, to support set_with_caveats.
- Update deprecation attributes, to satisfy clippy.
- Rename a bunch of as_reader() methods to into_reader(), to satisfy clippy.
- Add support for Rust 2018.
- Fix a bunch of clippy warnings.
- Remove deprecated items.
- Deprecate borrow() in favor of reborrow().
- Support List(Interface).
- Eliminate
use
statements in generated code to avoid naming conflicts.
- Improve error message for snake_case method names.
- Eliminate floating point literals in match statements.
- Implement enum defaults.
- Emit "UNIMPLEMENTED" warnings on struct and list defaults.
- Implement struct, list, and enum constants.
- Fix bug where schemas with non-trivial relative filesystem paths could fail to compile.
- Fix bug where
initn_*()
methods of generic unions failed to set the discriminant.
- Fix several formatting issues in generated code.
- Remove some unneccesary trait bounds in generated code.
- Add
import_path()
andno_std_import()
options toCompilerCommand
.
- Remove deprecated
compile()
andcompile_with_src_prefixes()
functions.
- Fix bug that prevented compilation of interfaces with generic superclasses.
- More robust error handling.
- Deprecate
compile()
andcompile_with_src_prefixes()
in favor ofCompilerCommand
.
capnpc -orust ./foo/bar/baz.capnp
now correctly writes to./foo/bar/baz_capnp.rs
rather than just./baz_capnp.rs
. If you were depending on the old behavior you can use the--src-prefix
flag for finer-grained control of the output location.
- Nicer formatting for floating point literals.
- Fix bug that prevented pipelining on an AnyPointer field.