Commit Graph

184 Commits

Author SHA1 Message Date
Sebastian Thiel
29d9e45c9f fix(doit): fix lifetime issues
Those were totally real, actually, and I am happy the borrow checker
exists !

Only one weirdness happened with RefCell<BorrowMut<C>>, but it could be
fixed by checking actual types using `let foo: () = something_nasty()`.
2015-03-18 15:05:01 +01:00
Sebastian Thiel
b0a1f518e9 feat(doit): more multipart infrastructure
* outer frame of `MultiPartReader` to allow using it in `doit()`
* restructured `doit()` to get content-types right

There is more work to do, as it currently doesn't compile, nor
do we deal with our streams correctly.

But we are on a good way.
2015-03-18 12:40:18 +01:00
Sebastian Thiel
7cfb5afd39 feat(doit): improve body infrastructure
This will support choosing custom readers at runtime, depending on
whether we have a resumable or simple media upload.
2015-03-18 08:50:22 +01:00
Sebastian Thiel
76827ff665 refactor(mbuild+lib): remove map!, better dlg call
* map! wasn't used.
* improved delegate calls, using `match` or `delegate.is_some()` to
  get the nicest looking, shortest-possible code
2015-03-17 21:56:34 +01:00
Sebastian Thiel
b90a191688 fix(doit): repeated params string addition
It seems odd that String + &str is required.
In any way, previously it would try to add i32 to a string.
2015-03-17 19:59:04 +01:00
Sebastian Thiel
d2bf24ca85 feat(doit): simplify URL_ENCODE handling
More maintainable template code, with less redundancy.
2015-03-17 19:21:12 +01:00
Sebastian Thiel
1fee21de24 feat(doit): uri-template handling complete
We now handle url-encoding for the parameters that would require it,
and can deal with repeated params that will match '/param*'.
2015-03-17 19:12:44 +01:00
Sebastian Thiel
54eb784a55 feat(doit): uri-template generation works
This doesn't mean it's correctly implemented, but we are on our way.
It does compile, at least
2015-03-17 18:27:25 +01:00
Sebastian Thiel
863a98c0d7 fix(docs): repeated parameters docs improvement
Previously, it said it would 'set' the property, which is not the case
after all.
2015-03-17 17:34:33 +01:00
Sebastian Thiel
64219e7e7e feat(doit): repeated types in examples
Made sure usage examples know how to use repeated types.
2015-03-17 17:28:03 +01:00
Sebastian Thiel
d758f410f6 feat(doit): repeatable parameters working
The code dealing with them currently assumes they are "/" separated.
2015-03-17 17:16:27 +01:00
Sebastian Thiel
63997910de fix(makefile): regenerate .api.deps less often
It took too long to do it, so the 'MAKO_LIB_FILES' dependency was
removed. It can be re-added if needed.
2015-03-17 16:32:51 +01:00
Sebastian Thiel
79879daf1b fix(methods): decent solution for free methods
Now I just add a 'virtual' resource, which is called 'methods'.
The good thing about this is that it works well standalone, or
in conjunction with actual resources.

Also the system works with it just with minimal changes

Fixes #19
2015-03-17 16:31:22 +01:00
Sebastian Thiel
60d953a342 feat(methods): intermed. support for 'methods'
These 'methods' have no resources, and need slightly special handling.
This version at least makes the generator work, even though
it produces duplicates.

However, as it is so ugly, I'd rather consider to change it
substantially ... this feature should just come naturally.
2015-03-17 15:48:07 +01:00
Sebastian Thiel
354370705d feat(doit): partial implementation of url expr
URL expressions allow to substitute values within the URL with
parameters. However, this is not only a simple key-value replacement,
but supports expressions that need a parser.

This one will have to be implemented next.
2015-03-17 11:41:51 +01:00
Sebastian Thiel
33e85ddd29 feat(doit): set upload media type
Related to #17
2015-03-17 10:39:11 +01:00
Sebastian Thiel
91f69ffd6e fix(test): unit-tests work once again
Added missing Result cases to make match exhaustive
2015-03-17 09:30:20 +01:00
Sebastian Thiel
79cbf3ee3f feat(docs): add more obvious crate and api version
Fixes #16
2015-03-17 09:21:53 +01:00
Sebastian Thiel
60adacf8d4 feat(doit): pre-request delegate call.
This one is likely to change the further we advance in the upload-media
implementation.
2015-03-17 09:21:18 +01:00
Sebastian Thiel
eef1471357 feat(doit): json decode and delegation
Now json errors are handled and delegated with the option to retry,
and all other values are just decoded according to plan.

For now, I brutally unwrap json values assuming this will work, because
it really should work.
2015-03-16 17:14:04 +01:00
Sebastian Thiel
2c79f6e3cf feat(doit): authentication with and without scopes
It's quite rough around the edges, but has a slight chance to work.
Will still to handle return values accordingly.
2015-03-16 15:23:38 +01:00
Sebastian Thiel
1349c786b7 fix(doit): remove BorrowMut until it's cleared
See stackoverflow at http://goo.gl/f27zJkj.

Now we can actually call out client and move on with handling the result
2015-03-16 11:51:12 +01:00
Sebastian Thiel
9a58b0badd feat(doit): attempt to send json-encoded request
This doesn't work yet, as I am unable to unwrap the client properly.
It's a refcell that contains a BorrowMut to a hyper::Client, and
lets just, it's complicated.
2015-03-16 10:35:26 +01:00
Sebastian Thiel
814c9c9ffa fix(lib-name):user lower-case library names,always
fixes #14
2015-03-16 08:50:23 +01:00
Sebastian Thiel
881c9dd3d2 Merge pull request #13 from MrFloya/master
fix(Makefile): force python2.7 in virtualenv
2015-03-15 12:55:22 +01:00
Florian Wilkens
876772cf22 fix(Makefile): force python2.7 in virtualenv
force the usage of python2.7 on systems where /usr/bin/python points to python3.x

fixes issue #12
2015-03-15 12:51:19 +01:00
Sebastian Thiel
31efbf4fb0 fix(travis): incorrectly capitalized cargo.toml
This caused cargo on a case-sensitive file-system not to find the
cargo file, which made it to look upwards in the directory structure
to find the correctly named Cargo.toml fo the 'cmn' development
project.
2015-03-15 11:51:24 +01:00
Sebastian Thiel
7f33cf22a5 feat(docs): add cargo.toml dependency information
Fixes #10
2015-03-15 11:37:19 +01:00
Sebastian Thiel
bec5cd5e5c docs(README): add build instructions
These should help people to get started on their own.

Fixes #9
2015-03-14 14:11:07 +01:00
Sebastian Thiel
4c657ac9d1 fix(travis): explicit subshell for cargo-doc
Previously, it was only executing for cargo $(ARGS)
2015-03-14 13:29:01 +01:00
Sebastian Thiel
a87fbdf0a8 fix(travis): try using a subshell for cargo cmd
Apparently travis doesn't execute cargo in the right sub-directory.
Might be a difference in the way make works

Related to #8
2015-03-14 13:28:01 +01:00
Sebastian Thiel
51d05d6db0 fix(deps): fixed dependency to wrong target
Which caused the cmn.rs to be missing, and the build to fail.
2015-03-14 12:58:57 +01:00
Sebastian Thiel
5fd7cb5114 fix(travis): install virtualenv automatically
The only dependency we really have is python, and wget.
Pip is not needed !
2015-03-14 12:45:32 +01:00
Sebastian Thiel
dd0772f1d7 feat(travis): docs and tests of youtube3 on travis
This might already bring it close to 7 minutes runtime, which seems
like providing us with a buffer big enough for when it is
feature-complete.
2015-03-14 11:52:59 +01:00
Sebastian Thiel
8006bb8ca9 fix(activities): fully qualified activity names
Fixes #7
2015-03-14 11:23:01 +01:00
Sebastian Thiel
b43eb0e301 fix(travis): Do not generate docs !
Previously, travis would continuously overwrite my combined docs with
the ones from the dev-project, and make them useless.

This has been driving me nuts ! Good to have it fixed !
2015-03-14 05:50:37 +01:00
Sebastian Thiel
2c2585d16d chore(Go): removed generated go file
It shouldn't have been committed - after all, these are just there for
my own reference.
2015-03-13 22:45:00 +01:00
Sebastian Thiel
6167dc07fc fix(readme): added milestone link
It's important to the project, and should thus be listed there
2015-03-13 17:52:57 +01:00
Sebastian Thiel
6800edb4dd docs(readme): initial version
It's still rather simple, but a basis for further improvements
2015-03-13 17:49:20 +01:00
Sebastian Thiel
c0a2476058 feat(deps): update-json using discovery API
Instead of depending on the google go client API repository, I now
use the original data source, namely the discovery API.

fixes #5
2015-03-13 17:06:48 +01:00
Sebastian Thiel
c8061ebe2f fix(#5): use function to make links correctly
It will automatically handle rust-doc mode, and use relative or absolute
links respectively.
2015-03-13 15:39:33 +01:00
Sebastian Thiel
32690524cf Merge branch 'docs' 2015-03-13 15:01:48 +01:00
Sebastian Thiel
4cf365d026 docs(todos): result handling and remaining todos
Basically there is no todo left, which puts us in a good position for
implementing more features, and get some feedback in the meanwhile.
2015-03-13 15:01:32 +01:00
Sebastian Thiel
9a17ab9e4e feat(docs): full usage example on landing page
Related to #4
2015-03-12 16:40:28 +01:00
Sebastian Thiel
4b9dbb28ff fix(to_version): assured it handles '0' correctly
Previously, it could possibly take a '0' away from the start of a
version. Now this is definitely not possible anymore.

Fixes #3
2015-03-12 11:40:09 +01:00
Sebastian Thiel
664d8225d2 feat(name): oauth22 -> oauth2_v2
Related to #3
2015-03-12 11:30:47 +01:00
Sebastian Thiel
97b2649094 fix(make): make 'regen-apis' work
Thanks to changes in mako libraries, it won't work anymore without
the template directory set
2015-03-12 11:21:58 +01:00
Sebastian Thiel
b8956103d9 feat(names): improved library names
Related to #3
2015-03-12 11:21:11 +01:00
Sebastian Thiel
206ccadbb3 docs(visuals): bigger font for doc-index 2015-03-12 10:27:36 +01:00
Sebastian Thiel
f27fda8f34 feat(gh-pages): new github-pages target
For import of all docs to the github

fixes #1
2015-03-12 10:02:22 +01:00