Skip to content

Releases: tesaguri/oauth1-request-rs

Version 0.6.0

12 Jun 12:10
v0.6.0
8dba1dc
Compare
Choose a tag to compare

Added

  • Supported RsaSha1 signature method behind rsa-sha1-06 Cargo feature

  • Added ParameterList type for creating requests with dynamic parameters

  • Added request::AssertSorted type for turning a sorted iterator into a Request

  • Added Builder::to_{form,query} finalizers to write OAuth protocol parameters to form/query strings

  • Added Authorizer::{form,query} constructors

  • Added *_with_buf family of Builder finalizers/serializer constructors to write the output to a supplied buffer

  • Urlencoder now implements Clone and Debug

  • Added serializer::Recorder test utility behind test Cargo feature

  • Added #[oauth1(crate = "...")] derive-macro container attribute

Changed

  • Many functionalities are now behind std and alloc Cargo features, which are on-by-default

    Especially, Authorizer now panics if it needs to get timestamp when compiled without std feature.

    Also, we haven't reached a full no_std support yet and these features are only for future-proofing purpose for now. But we are almost there! We'll get the full no_std support once a thirdparty dependency releases a required change (servo/rust-url#691),

    The docs.rs documentation annotates APIs that require these features.

  • Renamed to_{form_urlencoded,uri_query} to to_{form,query}

  • The built-in signagure method types HmacSha1 and Plaintext are no longer unit structs

    Use the HMAC_SHA1 and PLAINTEXT constants or the new() constructor to get a default value of these types.

  • #[derive(Request)] now strips r# prefix of fields' name

  • #[derive(Request)] now rejects unknown container attributes

  • Removed Request implementation for BTreeSet

    Use the new ParameterList type, which is more flexible and correct.

  • Removed HmacSha1Authorizer and PlaintextAuthorizer type aliases

  • Removed Authorizer::with_signature_method() constructor

    The new() constructor now takes the signature method as an argument.

  • Removed Identity pseudo signature method

  • Renamed Authorizer::new to authorization

Version 0.5.1

06 Oct 13:45
v0.5.1
399f952
Compare
Choose a tag to compare
  • Add js Cargo feature (#9, thanks @dbw9580!)

    • It makes wasm32-unknown-unknown builds with a JS environment to
      use Date.now for generating timestamps instead of
      std::time::SystemTime::now, which is unsupported on the platform.
  • Fix a compatibility lint warning

  • Update dependencies

Version 0.5.0

12 Jan 15:36
v0.5.0
35f00a8
Compare
Choose a tag to compare
  • Update oauth-credentials dependency to v0.3.0.

`oauth-credentials` version 0.3.0

11 Jan 17:29
credentials-v0.3.0
4a397b0
Compare
Choose a tag to compare

This release contains a breaking change.

  • Use AsRef<str> instead of Borrow<str> in trait bounds of Credentials and Token (3f52985)

Version 0.4.0

18 Oct 07:59
v0.4.0
099bd67
Compare
Choose a tag to compare

Breaking changes

  • Authorize trait was renamed to Request.

(41cbb27)

  • Builder::build now returns an Authorization header alone .

Use crate::{to_form_urlencoded,to_uri_query} if you need a form-urlencoded/URI query string.

  • #[oauth1(fmt = ..., option = ..., rename = ..., skip_if = ...)] attributes now take a bare path/boolean literal (Display::fmt, true) instead of a string ("Display::fmt", "true").

(f0bf51a)

  • Signer is split into serializer::{Authorizer,Urlencoder}.

The Serializer trait was introduced as an abstraction over Signer like types.

  • SignatureMethod::sign_with now takes only &strs.

(187522e)

  • Sign methods no longer take default_{key,value} arguments.

(35ef34b)

  • {Builder,Options}::timestamp now takes a NonZeroU64.

(6ca7312)

Features

  • Credentials is now a re-export from a new crate oauth-credentials.

(e6a043d)

  • Add shorthand functions such as crate::{get,post} to authorize a Request.

  • #[derive(Request)] now accepts field names with oauth_ prefix

However, server-defined parameters with the oauth_ prefix used to be prohibited in OAuth Core 1.0a and is still prohibited in the Temporary Credential Request, Resource Owner Authorization and Token Request endpoints URI in RFC 5849.

(f2eb5fb)

`oauth-credentials` version 0.1.0

18 Oct 07:44
credentials-v0.1.0
099bd67
Compare
Choose a tag to compare

Version 0.3.0

05 Sep 19:10
v0.3.0
2b357ea
Compare
Choose a tag to compare
  • Removed deprecated items (Request::new and Request::new_form)
  • Renamed OAuth1Authorize to Authorize
  • Moved Signer to a separate module

v0.2.5

19 Aug 13:40
v0.2.5
d44a792
Compare
Choose a tag to compare
  • Fix an issue where Credentials::as_ref incorrectly replaced self.secret with self.identifier

v0.2.4

10 Aug 15:39
v0.2.4
770f10f
Compare
Choose a tag to compare
  • Remove implicit Sized bound for impl OAuth1Authorize for &A

v0.2.3

07 Aug 01:50
v0.2.3
3785948
Compare
Choose a tag to compare
  • Remove Default impl from Credentials
  • Add Credentials::{identifier,secret} getter methods