-
Notifications
You must be signed in to change notification settings - Fork 550
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modularize into separate gems #813
Conversation
This gem will be shared across all google-cloud gems.
Remove old tasks and config files, ensure that glcoud and google-cloud gems run tests. Revise coverage tasks, allow for gem tasks to be run individually and as a whole.
We are now relying on the googleapis-common-protos gem for these files.
Add tasks to build the jsondoc reports. Update travis task to run all the jsondoc reports.
This task is much slower that just running all tests at once. Useful for finding problems in syntax or docs though, watch the output.
The coveralls decrease makes sense. We are switching from measuring coverage with unit tests and acceptance tests to just unit tests. Also, we have introduced many new files and some have lower coverage. |
@blowmage Thanks for explaining that. It shouldn't be hard to increase unit test coverage to a passing level, correct? |
@blowmage Do you intend to continue supporting the |
Each gem has a |
Allow the bundle update/install step to be skipped, speeding up the tasks. Pass in an optional argument to force the bundle update. $ rake test:each[update]
Rename Backoff to GrpcBackoff, since this is now private. Fix calls to Core::GCE.
Coverage decreased (-0.7%) to 94.301% when pulling eaa1a296fc4e735c179cdc24a6ebe5db55774dc6 on blowmage:individual-packages into 96322e9 on GoogleCloudPlatform:master. |
Users should convert annotation objects to arrays and hashes explicitly, not implicitly. Add test coverage for explict conversion methods. Remove private and unused Image#url method.
Extract the rescue to a method, similar to the one used in GRPC service classes. This change increases total code coverage.
eaa1a29
to
6bd18fb
Compare
I have a feeling we will need to change how docs json is generated. From GoogleCloudPlatform/gcloud-common#157, it appears that in addition to generating the docs json for the individual service packages (which we currently support), we will also have to generate a "bundled package" docs json containing all of the packages. |
I'm happy with the state of the individual packages. There is some additional work around updating the documentation site and automating releases, but I think this PR is ready to be accepted. |
I don't know that we will need to change the way the JSON docs are generated as much as add to it. We'll need the JSON files for the individual packages either way, right? I have some reservations about merging all the docs into one "bundled" package. Viewers of the docs won't be shown which package the classes and methods are defined in, and more importantly which version of the package they are defined in. I would prefer to see more linking across packages than duplicating the documentation into the "bundled" package. |
Resource Manager does not call out to Google::Cloud::Core::GCE, so no need to stub the call in the test. Was causing an error in the test.
@blowmage I would really like to merge this now, so that I can better assist with the effort. Can you create issues now for the outstanding tasks, such as docs json generation? |
Yep! Will add them as soon as this is accepted. |
OK, I will merge it now. |
Separate the monolithic package into individual packages by service.
[closes #341]