Commit Graph

139 Commits

Author SHA1 Message Date
Lewin Bormann
9e59bf0496 refactor(all): More flows demand for a different structure
I mainly resolved some circular dependencies that had crept in, and
moved code around. I renamed helper.rs because that was not really an
appropriate name anymore, and moved the delegate code into a new module.
2016-08-31 19:48:38 +02:00
Sebastian Thiel
7a907eb318 fix(dependencies): use latest version of serde_codegen
In the way it's meant to be used, which means it uses it's
own version of syntex, to assure it doesn't clash anymore in
unforseen ways.
2016-07-17 11:36:21 +02:00
Sebastian Thiel
6cf706c54f chore(travis): sudo should not be required 2016-07-03 15:11:15 +02:00
Sebastian Thiel
e0661f714c doc(README): add coverage information
[skip ci]
2016-05-25 11:45:13 +02:00
Sebastian Thiel
9283db022d fix(travis): actually it should already work this way
travis-cargo knows travis, and does the right thing.
We only want to be sure to run on one platform only.
2016-05-25 11:31:50 +02:00
Sebastian Thiel
d1189d98da fix(travis): see all environment variables 2016-05-25 11:15:33 +02:00
Sebastian Thiel
30fc78cbf8 fix(travis): use actual feature matrix 2016-05-25 11:02:34 +02:00
Sebastian Thiel
361856ba5a fix(travis): try again without env: matrix: 2016-05-25 10:59:31 +02:00
Sebastian Thiel
f404fcd7fa fix(travis): env: matrix is required it seems 2016-05-25 10:42:42 +02:00
Sebastian Thiel
3fb8d0fec6 fix(travis): try without explicit inclusion 2016-05-25 10:38:05 +02:00
Sebastian Thiel
136b57524f fix(travis): try without env: matrix 2016-05-25 10:36:04 +02:00
Sebastian Thiel
17c344c997 fix(travis): another attempt to get env-config right 2016-05-25 10:32:39 +02:00
Sebastian Thiel
0fc5d6939c fix(travis): remove matrix code
Maybe this causes the hanging.
2016-05-25 10:22:34 +02:00
Sebastian Thiel
ceb013103a chore(travis): possibly fix configuration
Based on the help provided by the travis support team,
this one might actually work.
However, while changing the file I realized that I didn't
provide all information they would need, so I merged their
solution into the existing one.
2016-05-25 08:50:21 +02:00
Sebastian Thiel
2fe535c9d6 chore(version-up): v0.6.1 2016-05-24 15:22:11 +02:00
Sebastian Thiel
57a3151d4d fix(flows): save Token properly
The installed flow didn't explicitly set the retrieved token
absolute, which would cause failures down the road.
2016-05-20 18:24:28 +02:00
Sebastian Thiel
a9d0b06925 chore(version-up): v0.6.0
Comes with DiskStorage and new Flow !!!
2016-05-20 15:26:38 +02:00
Sebastian Thiel
31bad1ae53 chore(features): rename with_syntex to with-syntex
This makes the name similar to the one used in quasi, aster, serde
and the likes.
2016-05-20 14:57:09 +02:00
Sebastian Thiel
a3bc7e88b5 chore(serde): upgrade to latest version for stable
Now it builds with stable too, it appears.
2016-05-20 12:15:23 +02:00
Sebastian Thiel
93b3b8d551 chore(dependencies): record last known working version
Just to be sure we keep this thing in a working state.

Commandline used via nightly:
cargo build --no-default-features --features=nightly
2016-05-20 09:05:32 +02:00
Sebastian Thiel
22bb255a55 fix(dependencies): work with latest dependencies on nightly
Stable doesn't quite work yet due to the cargo issue further
described [here][cargo-issue]

[cargo-issue]: https://github.com/rust-lang/cargo/issues/2064
2016-05-20 08:57:06 +02:00
Sebastian Thiel
815d8863ed Merge branch 'disk-token-storage' of https://github.com/dermesser/yup-oauth2 into all-upgrades 2016-05-20 07:58:14 +02:00
Sebastian Thiel
eafa1b22fe Merge branch 'installed-flow' of https://github.com/dermesser/yup-oauth2 into all-upgrades 2016-05-20 07:55:33 +02:00
Lewin Bormann
a7e8423fe0 refactor(installedflow): Apply suggestions from PR 2016-04-27 19:25:40 +02:00
Lewin Bormann
4e1d9bd750 fix(dependencies): hyper also broke us
The Url::query_pairs() function returns a different type now.
2016-04-27 19:19:20 +02:00
Lewin Bormann
95ecb5c388 fix(dependencies): use url = 0.5; the bump to 1.0 broke us
Fixes #23.
2016-04-25 19:45:43 +02:00
Lewin Bormann
5c4e318842 fix(dependencies): use url = 0.5; the bump to 1.0 broke us
Fixes #23.
2016-04-25 19:39:11 +02:00
Lewin Bormann
ae5e94bf7b fix(DiskTokenStorage): make DiskTokenStorage::new() return a Result<> 2016-04-25 19:14:53 +02:00
Lewin Bormann
b039dc0cdc refactor(installedflow): use app secret instead of single params 2016-04-16 21:02:57 +02:00
Lewin Bormann
9b31070edb fix(installed): Genericize token/auth URI
This means that in theory other providers besides Google could be used.
2016-04-16 20:54:11 +02:00
Lewin Bormann
77355888f2 feat(flows): Implement flow for installed apps
The "Installed App Flow" requires user interaction; we first generate a
URL that the user has to navigate to. Then, the user either pastes a
displayed code into the app being authorized, or the OAuth provider
redirects the user's browser to a webserver that is running on
localhost. This webserver is provided by the library and the flow should
work automatically. Extensive documentation can be found here:
https://developers.google.com/identity/protocols/OAuth2InstalledApp
An example for the InstalledFlow with the Drive API is here:
https://gist.github.com/dermesser/8c915ec4c88ee8e8927e7d40b276ca52
2016-04-16 14:45:45 +00:00
Lewin Bormann
2cb5250e72 feat(storage): Implement DiskTokenStorage
DiskTokenStorage is a TokenStorage that stores its tokens in a JSON file
on disk. That file can be read in later, and the tokens in it reused.
(The idea for a cache file is from here:
https://developers.google.com/drive/v3/web/quickstart/go)
2016-04-15 19:42:50 +00:00
Sebastian Thiel
2aa95c0500 fix(serde): go back to serde 0.6 (#18)
That way, google-apis-rs can compile once again.
If not done, yup-oauth ends up being compiled with
an older serde (the one of google-apis-rs, it seems), even
though its code was generated by a possibly newer serde.

Signed-off-by: Sebastian Thiel <sthiel@thoughtworks.com>
2016-04-10 13:10:40 +02:00
Sebastian Thiel
9481e5cf40 chore(travis): allow failures on osx for now
Related to #16
2016-02-07 10:56:39 +01:00
Sebastian Thiel
a921baedd7 chore(travis): travis-cargo PATH for osx 2016-02-07 10:41:10 +01:00
Sebastian Thiel
88676845b6 chore(travis): test OSX as well
Try to reproduce #16
2016-02-07 10:30:36 +01:00
Sebastian Thiel
78d45ad1cb chore(version-up): v0.5.5 2016-02-07 10:18:41 +01:00
Sebastian Thiel
4e5544b6a3 Merge remote-tracking branch 'origin/master'
As I managed to redo previous work, but with a better result,
'their' side was completely overwritten by 'our' more recent version.
2016-02-07 10:14:47 +01:00
Sebastian Thiel
ea56379d85 chore(version-up): v0.5.4 2016-02-07 10:11:06 +01:00
Sebastian Thiel
c18ae07bbb imp(duration): use std::time::Duration everywhere
This gets rid of the time crate, which was necessary only while Duration wasn't stable
in std.
2016-02-07 10:09:36 +01:00
Sebastian Thiel
c039db56cd fix(secret): allow project_id field
It seems to be part of the google secrets now ... lets see if this improves anything
2016-02-07 09:37:34 +01:00
Sebastian Thiel
5dbd93a68c chore(version-up): 0.5.4 2016-01-30 13:51:28 +01:00
Sebastian Thiel
c2bb59b4c5 fix(rustup): use std::time::Duration and Thread::sleep 2016-01-30 13:44:36 +01:00
Sebastian Thiel
05816a1ac2 Merge pull request #15 from cmr/master
Relicense to dual MIT/Apache-2.0
2016-01-11 20:39:24 +01:00
Corey Richardson
e7fd590180 Relicense to dual MIT/Apache-2.0
Closes https://github.com/Byron/yup-oauth2/issues/14
2016-01-10 21:53:51 -05:00
Sebastian Thiel
59bbde3be4 chore(version-up): v0.5.3
Versions were chosen to allow for maximum flexibility
for users of this library, even if this breaks at compile time
thanks to incompatibilities in dependencies.

Rather that, than cargo claiming that it cannot use
a certain version.

Of course, once everything is >= 1.0, one can change to
standard semver compatiblity.
2015-12-24 15:12:24 +01:00
Sebastian Thiel
850ddbf5ba fix(rustup): add now mandatory lifetimes
fixes #13
2015-12-23 18:34:29 +01:00
Sebastian Thiel
6079feb513 fix(travis): attempt to turn off nightly feature 2015-08-08 17:37:14 +02:00
Sebastian Thiel
ea567c53fd fix(travis): there is no var-inheritance
It somewhat makes sense that added items to the build-matrix don't
inherit standard matrix configuration.
2015-08-08 17:23:08 +02:00
Sebastian Thiel
8b9f42549e fix(travis): reduce build matrix 2015-08-08 17:17:05 +02:00