urn 0.3.2

A crate for handling URNs (Unique Resource Identifiers)
Documentation

crates.io docs.rs

URN

A Rust crate for handling URNs. Parsing and comparison is done according to the spec (meaning only part of the URN is used for equality checks). no_std support is available if you disable the default "std" feature. alloc is needed, but the Urn type is a wrapper around String and should only use a single allocation (but I haven't checked). You can even construct a Urn from your own String by using TryFrom<String>, that way it shouldn't allocate at all.

Changelog

  • 0.1.0 - initial release
  • 0.1.1 - add FromStr impl
  • 0.2.0 - remove Urn::parse function in favor of FromStr, improve docs
  • 0.2.1 - remove files left over from 0.1
  • 0.3.0 - major implementation changes, remove Namespace (thanks to u/chris-morgan for help)
  • 0.3.1 - fix a panic on empty NSS and add ?= terminator to r-component (both ? and = can be part of r-component, but together they terminate it)
  • 0.3.2 - add Clone impl for Urn

License

TL;DR do whatever you want.

Licensed under either the BSD Zero Clause License (https://opensource.org/licenses/0BSD), the Apache 2.0 License (http://www.apache.org/licenses/LICENSE-2.0) or the MIT License (http://opensource.org/licenses/MIT), at your choice.