All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Thanks to Mark Drobnak for the changelog.
- Re-export RustEmbed as Embed #246. Thanks to krant
- Allow users to specify a custom path to the rust_embed crate in generated code#232. Thanks to Wulf
- Increase minimum rust-version to v1.7.0.0
- Re-export RustEmbed as Embed #245. Thanks to pyrossh
- Do not build glob matchers repeatedly when include-exclude feature is enabled #244. Thanks to osiewicz
- Add
metadata_only
attribute #241. Thanks to ddfisher - Replace
expect
with a safer alternative that returnsNone
instead #240. Thanks to costinsin - Eliminate unnecessary
to_path
call #239. Thanks to smoelius
- Fix symbolic links in debug builds #235. Thanks to Buckram123
- Fix naming collisions in macros #230. Thanks to hwittenborn
- Update
include-flate
to v0.2 #182
- Update
syn
to v2.0 #211
- Fix mime-guess feature not working properly #209
- sort_by_file_name() requires walkdir v2.3.2 #206
- Add
mime-guess
feature to statically store mimetype #192
- Fail the proc macro if include/exclude are used without the feature #187
- Update sha2 dependency version in utils crate #186
- Fixed
include-exclude
feature when using cargo v2 resolver
- Added
include-exclude
feature by mbme
- Added doc comments to macro generated functions
Idea came about from Cody Casterline
- Breaking change the
Asset::get()
api has changed and now returns anEmbeddedFile
which contains adata
field which is the bytes of the file and ametadata
field which has theses 2 properties associated to the filehash
andlast_modified
;
- Added path prefix attribute
- Fixed compiling with latest version of syn
- Fix feature flag typo
- Fixed windows path error in release mode
- Using github actions for CI now
- Fixed warnings in latest nightly
- Fixed the
folder
directory being relative to the current directory. It is now relative toCargo.toml
.
- using rust-2018 edition now
- code cleanup
- updated examples and crates
compression
feature for compressing embedded files
- updated syn and quote crate to 1.x
- error when debug code tries to import the utils crate
- derive is allowed only on unit structs now
- proper error message stating only unit structs are supported
- windows latest build
- allow rust embed derive to take env variables in the folder path
- a panic when struct has doc comments
- a warp example
- debug_embed feature was not working at all
- a test run for debug_embed feature
- return
Cow<'static, [u8]>
to preserve static lifetime
iter()
method to list files
- avoid vector allocation by returning
impl AsRef<[u8]>
- appveyor for testing on windows
- handle paths in windows correctly
- panic if the folder cannot be found
- The derive attribute style so we don't need
attr_literals
and it can be used in stable rust now. Thanks to Mcat12.
#[folder("assets/")]
to
#[folder = "assets/"]
- log dependecy as we are not using it anymore
- Reimplemented the macro for release to use include_bytes for perf sake. Thanks to lukad.
- Fixed usage error message
- Release mode for custom derive
- Fixed tests in travis
- Converted the rust-embed macro
embed!
into a Rust Custom Derive Macro#[derive(RustEmbed)]
which implements get on the struct
let asset = embed!("examples/public/")
to
#[derive(RustEmbed)]
#[folder = "examples/public/"]
struct Asset;
- rouille example
- the plugin attribute from crate
- rocket example
- Converted the rust-embed executable into a macro
embed!
which now loads files at compile time during release and from the fs during dev.
generate_assets
to public again
- rust-embed prefix to all logs
- the lib to be plugin again
- the lib to be proc-macro from plugin
- lib name from
rust-embed
torust_embed
- hyper example
- rust-embed executable which generates rust code to embed resource files into your rust executable it creates a file like assets.rs that contains the code for your assets.
- rust-embed executable which generates rust code to embed resource files into your rust executable it creates a file like assets.rs that contains the code for your assets.