v0.10.0
A big update!
This new release changes the entire interface, focusing on making everything more streamlined. The four most important changes are:
- Introduction of the
ResourceCache
trait, used to speed up loading for maps that share external assets (for now, only tilesets). - Hiding global IDs from the interface, translating to tileset index + local tile ID on load.
- Introducing wrappers over data types (e.g.
Layer
,Tile
,Object
, etc) whichDefer
to the regular data types, but conveniently also contain a reference to the parent structure (Tileset in the case of tiles, Map for everything else) for easy access to functions that require both the data type and its container. - Adding documentation to the entire crate!
Of course, there have been a lot of more additions and changes, including new features, bugfixes and everything in between.
For 0.9.5 users it is very recommended that you check out the new examples for porting old code over.
Another important update is that the repository has been moved to the official mapeditor organization and there are now three more maintainers: @aleokdev (me), @bjorn (creator of Tiled) and @PieKing1215.
I'd like to thank @mattyhall for having maintained this crate for the last 7 years and for letting us continue the work of maintaining it, @bjorn for all the code reviews and feedback provided, and of course all the contributors that have joined us and users who have provided feedback and bug reports!
Here's the full changelog:
What's Changed
- Reorganize crate by @aleokdev in #104
- update Zstd to 0.9 by @nicoxxl in #102
- Fix markdown formatting in CONTRIBUTORS file by @rsaarelm in #12
- Add support for multiline string properties by @PieKing1215 in #110
- Add layer id parsing by @PieKing1215 in #111
- Added MIT license file by @bjorn in #115
- Support object properties. by @SiegeLord in #114
- Add Github Actions by @aleokdev in #117
- Make layer ids optional and make tile layer name optional (like object layers) by @PieKing1215 in #119
- Refactor & document by @aleokdev in #106
- Start updating README.md by @PieKing1215 in #122
- Start getting changelog up to date by @PieKing1215 in #121
- Flatten Vec<Vec> to Vec by @bjorn in #128
- CI: Added caching of Rust stuff to potentially speed up action by @bjorn in #129
- Expose types at the top level by @bjorn in #132
- Contain all layer types in an enum by @aleokdev in #131
- Add parallax support by @perlindgren in #101
- Some Cargo.toml updates by @bjorn in #139
- Add layer tint color; Fix
Color
parsing issues by @aleokdev in #150 - Hide GIDs as internal details by @aleokdev in #135
- Add group layer support by @Anti-Alias in #146
- Better errors by @aleokdev in #152
- Add SFML example by @aleokdev in #133
- Hotfix: Fix CI by @aleokdev in #154
- Make tileset names optional by @aleokdev in #155
- Changed Rc to Arc by @Anti-Alias in #156
- Removing temp file by @Anti-Alias in #159
- Simplify internals by @aleokdev in #153
- Refactor chunk system by @aleokdev in #157
- Remove
Data
types from the interface by @aleokdev in #163 - Make path a requirement for parsing tilesets by @aleokdev in #160
- Wrap
Tile
over a data type by @aleokdev in #172 - Add some missing attributes by @aleokdev in #173
- Add preliminary documentation by @aleokdev in #174
- Use
Color
for color property type by @aleokdev in #180 - Fix docs and rename member by @aleokdev in #181
- Better macros by @aleokdev in #184
- Better specification for
Image::source
+ example by @aleokdev in #186 - Implement Deref for wrapper types by @aleokdev in #182
- Rename
TiledError
toError
+ AddResult
type by @aleokdev in #185 - Update changelog by @aleokdev in #188
- Add
Tileset::iter
, remove Iterator types by @aleokdev in #189 - Update version to 0.10.0 by @aleokdev in #190
- Implement Deref for Tile<'tileset> by @bjorn in #191
- Update crate version to 0.10.0 by @aleokdev in #192
New Contributors
- @aleokdev made their first contribution in #104
- @nicoxxl made their first contribution in #102
- @PieKing1215 made their first contribution in #110
- @bjorn made their first contribution in #115
- @SiegeLord made their first contribution in #114
- @perlindgren made their first contribution in #101
- @Anti-Alias made their first contribution in #146
Full Changelog: v0.9.5...v0.10.0