atelier_lib

Crates.ioatelier_lib
lib.rsatelier_lib
version0.2.5
sourcesrc
created_at2020-06-22 03:04:28.27463
updated_at2021-04-30 23:23:12.398837
descriptionRust native primary client library for the AWS Smithy IDL.
homepage
repositoryhttps://github.com/johnstonskj/rust-atelier.git
max_upload_size
id256543
size72,082
Simon Johnston (johnstonskj)

documentation

https://docs.rs/atelier_lib/

README

Atelier: crate atelier_lib

A combined crate for all Atelier sub-crates incorporated as features. Atelier is a Rust native library, and tools, for the AWS Smithy Interface Definition Language.

crates.io docs.rs

The aim of this crate is to provide a single client interface over a set of crates that provide different Atelier capabilities. The following table shows the mapping from individual crate to the combined module path in this library. The column Default indicates those that are included in the default feature, although the core will be included regardless of any feature selection.

Feature name Default Individual crate Target module path Purpose
N/A Yes atelier_core ::core Semantic model, builders, and API traits.
"assembler" Yes atelier_assembler ::assembler Model assembly from multiple files.
"describe" Yes atelier_describe ::format::document Writing markdown documentation.
::format::graphml Writing GraphML visualizations.
::format::plant_uml Writing UML visualizations.
"json" Yes atelier_json ::format::json Reading and Writing JSON AST representation.
"openapi" No atelier_openapi ::format::openapi Reading and Writing OpenAPI representations.
"rdf" No atelier_rdf ::format::rdf Reading and Writing RDF representations.
"smithy" Yes atelier_smithy ::format::smithy Reading and Writing the Smithy native representation.

This crate also provides some pre-defined action functions for linting and validating models.

Changes

Version 0.2.5

  • Moved the assembler into it's own crate, added it as a new feature.

Version 0.2.4

  • Moved GraphML and PlantUML writers to the describe crate.

Version 0.2.3

  • Removed dependency on deprecated 'select' crate.
  • Updated due to trait API changes in core.

Version 0.2.2

  • Support for documentation writer.

Version 0.2.1

  • Support for GraphML writer.

Version 0.2.0

  • Major refactoring

Version 0.1.6

  • Added UnwelcomeTerms linter to standard set.
  • Added assembler module.
  • Pulled most things out of lib.rs into separate modules.
  • Made "json" a default feature.

Version 0.1.5

Bumped versions of core, json, and smithy crates.

Version 0.1.4

  • Added the action module with standard_model_lint and standard_model_validation functions.

Version 0.1.3

  • Documentation fixes.

Version 0.1.2

  • New dependency versions:
    • core: v0.1.3
    • json: v0.1.2
    • smithy: v0.1.2

Version 0.1.1

  • All re-exports configured using feature flags.
Commit count: 421

cargo fmt