#file-format #diagram #render #reference #svg #model #semantically

yanked gradiff

The Reference Implementation for the GRADIFF File Format

9 releases

0.1.0-rc9 Mar 10, 2023
0.1.0-rc8 Mar 4, 2023
0.1.0-rc6 Nov 25, 2022

#69 in #diagram

Apache-2.0

385KB
6K SLoC

GRADIFF

The Reference Implementation for the GRADIFF File Format

Status: Active Crate: gradiff API Reference Issue Tracker License: Apache v2.0 Badges made with ./badges

Summary

gradiff-rs is the Rust-based reference implementation for the GRADIFF file format. It consists of the gradiff library crate under the lib subdirectory, and a CLI under the cli subdirectory. The library consists of the codec module, which is responsible for en- and decoding GRADIFF files syntactically, the model module, which validates GRADIFF files semantically and aggregates GRADIFF Changes and the render module, which renders a view of a GRADIFF diagram to SVG.

SVG is the canonical render format for GRADIFF diagrams. Rasterized renders of GRADIFF diagrams should be accomplished using a compliant SVG rendering library, which is not part of (and out of scope for) gradiff-rs.

Specification

The specification of the GRADIFF file format can be found in the GRADIFF Repository.

Contributing

Feel free to contribute by posting issues on this repository's Issue Tracker.

Please note that pull requests are only accepted if they are in line with the licensing of the rest of the project (see below). Please make sure to add your name and email address to the list of contributors in the header of the files that you created or modified (or their corresponding .license files).

Versioning and Compatibility

Versioning of gradiff-rs follows the Semantic Versioning convention.

Until 1.0.0, any substantial changes to the library (breaking and non-breaking) will trigger an increase of the minor version, while bug fixes and similar minor improvements may trigger an increase of the patch version.

gradiff-rs is (C) 2022-2023 The GRADIS Project Contributors

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

For details, please refer to the LICENCE file.

Maintainer and Contact

gradiff-rs is maintained by Lucas Hinderberger.

You can contact the maintainer via email at lhinderberger@gradis-project.org

The repository of gradiff-rs can be found at https://codeberg.org/gradis/gradiff-rs

You're welcome to file issues and pull requests there.

Dependencies