text:
[samplecode] Implement rpc default method sample code

RPC default method has 3 types sample code for:

paged (gapic-generator sample code)

  * try (LibraryServiceClient libraryServiceClient = LibraryServiceClient.create()) {
  *   ListShelvesRequest request =
  *       ListShelvesRequest.newBuilder()
  *           .setPageSize(883849137)
  *           .setPageToken("pageToken873572522")
  *           .build();
  *   for (Shelf element : libraryServiceClient.listShelves(request).iterateAll()) {
  *     // doThingsWith(element);
  *   }
  * }

lro (gapic-generator sample code)

   * try (CloudRedisClient cloudRedisClient = CloudRedisClient.create()) {
   *   UpgradeInstanceRequest request =
   *       UpgradeInstanceRequest.newBuilder()
   *           .setName(InstanceName.of("[PROJECT]", "[LOCATION]", "[INSTANCE]").toString())
   *           .setRedisVersion("redisVersion-1972584739")
   *           .build();
   *   Instance response = cloudRedisClient.upgradeInstanceAsync(request).get();
   * }

or if method return void, the last line is cloudRedisClient.upgradeInstanceAsync(request).get();
3. pure unary (gapic-generator sample code)
   * try (MetricsClient metricsClient = MetricsClient.create()) {
   *   CreateLogMetricRequest request =
   *       CreateLogMetricRequest.newBuilder()
   *           .setParent(LogMetricName.of("[PROJECT]", "[METRIC]").toString())
   *           .setMetric(LogMetric.newBuilder().build())
   *           .build();
   *   LogMetric response = metricsClient.createLogMetric(request);
   * }

Or if the method return void, the last line is metricsClient.createLogMetric(request);

Thanks for reviewing @miraleung. Merge into samplecode-master now.

repo: googleapis/gapic-generator-java


text:
make streaming works with ClientContext

@garrettjonesgoogle This significantly departs from our plan, but I think this better both in terms of abstraction and unblocking.

Codecov Report

Merging #311 into master will decrease coverage by 0.36%.
The diff coverage is 37.5%.

@@             Coverage Diff              @@
##             master     #311      +/-   ##
============================================
- Coverage     69.93%   69.57%   -0.37%
+ Complexity      352      350       -2
============================================
  Files            72       72
  Lines          1906     1913       +7
  Branches        155      158       +3
============================================
- Hits           1333     1331       -2
- Misses          506      514       +8
- Partials         67       68       +1

Impacted Files
Coverage Δ
Complexity Δ

...in/java/com/google/api/gax/grpc/UnaryCallable.java
69.69% <ø> (-2.53%)
17 <0> (-2)

...com/google/api/gax/grpc/StreamingCallSettings.java
50% <0%> (-18.75%)
3 <0> (ø)

...ava/com/google/api/gax/grpc/StreamingCallable.java
70.27% <0%> (-1.96%)
10 <0> (ø)

...om/google/api/gax/grpc/UnaryCallSettingsTyped.java
80.95% <0%> (-9.05%)
3 <0> (ø)

...com/google/api/gax/grpc/AuthClientCallFactory.java
88.88% <85.71%> (ø)
2 <2> (?)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update bfe8064...bd65bc1. Read the comment docs.

LGTM

source: gharchive/pull-request

authors: codecov-io garrettjonesgoogle pongad

repo: googleapis/gax-java

license_type: permissive

license_source: bigquery


text:
feat: no protobuf dependency in generated js, d.ts

Fixes https://github.com/googleapis/nodejs-text-to-speech/issues/423. The generated protos/protos.js and protos/protos.d.ts should not depend directly on either protobufjs or (even worse) protobufjs/minimal. To fix that:

reexport protobufjs/minimal from gax in both regular and fallback scenarios;
fix the generated .js and .d.ts files to make them depend on the gax-exported protobuf / protobufMinimal.

This change has a potential to break the world, so I will release it as a pre-release before making it go live.

This seems to break something. When I build with tsc now I get the following error:
`node_modules/@google-cloud/pubsub/node_modules/google-gax/build/src/fallback.d.ts:119:10 - error TS1005: 'from' expected.
119 export * as protobufMinimal from 'protobufjs/minimal';`
Among 7 other similar errors.

@Henridv Yeah, I've seen this also in the nodejs-pubsub library until I updated it to TS 3.8+ like gax. That export * thing is only in 3.8 and above.
That said, there seem to be some other issues even after updating TS.
https://github.com/googleapis/nodejs-pubsub/issues/1082

PR to deal with some breakage caused by this, if anyone else lands here:
https://github.com/googleapis/nodejs-pubsub/pull/1085

authors: Henridv alexander-fenster feywind

repo: googleapis/gax-nodejs


text:
API retrieving only one type of calendar

Environment details

OS type and version: Windows 10
Python version: python --3.8.3
pip version: pip --20.2.3
google-api-python-client - 1.12.2

Code example
    service = build('calendar', 'v3', credentials=creds)
    # Call the Calendar API
    now = datetime.utcnow().isoformat() + 'Z'  # 'Z' indicates UTC time
    utc_dt = datetime.now(timezone.utc).astimezone().isoformat()
    events_result = service.events().list(calendarId='primary', timeMin='2020-11-05T18:58:24.127438-05:00', timeMax=utc_dt,
                                          maxResults=10, singleEvents=True,
                                          orderBy='startTime').execute()
    events = events_result.get('items', [])
    print(events)

Problem

Only one event (in my case the ENTR4700 calender) gets called not the rest. How can we retrieve the events of all calendar types?
Thanks!

Hey @danieldhz,
Looking at the Events: list reference page for the calendar API, I don't see a way to get all events for all calendar types in a single call to service.events().list(). You need a separate call for each calendarId. When the calendarId parameter is set to 'primary' you will see the calendar of the currently logged in user. If you want to list events for another calendar, you'll need to set the 'calendarId' parameter to the 'id' corresponding to the specific calendar to see events for only that calendar. To get the 'id' of all the calendars that you see in Google Calendar, check the CalendarList: list  reference page. I was able to get my list of calendars by calling service.calendarList().list().execute().
Let me know if you have any questions!

Hi, fellow citizen @parthea! :)
Thank you for getting back to me,
I believe you meant service.calendarList().list().execute() to get each calendar's property to then call each calendar event. Initially, I was going to question the rationale of such workflow but now I see/admire the added flexibility and customization it provides. Make sense and thanks for your help!

My only question is that when I retrieve all the calendar IDs:
Is it possible to call all of them in one
    events_result = service.events().list(calendarId='primary, id, id', timeMin=Yes, timeMax = now
                                        ,singleEvents=True,
                                        orderBy='updated').execute()

or should there be one for each and then have to merge all together?

Unfortunately, you need to have separate calls to service.events().list() for each calendarId. Please follow the steps outlined on the Google Calendar API Help Site if you'd like to submit a feature request to show events from all calendars in a single call to service.events().list(). Follow the steps under the missing features section. I found an existing feature request that is may be related. Please feel free to comment on the existing feature request if it is related. You can also click on the star to express interest in the feature.
I'm going to close off this issue but please feel free to open a new issue or comment on this issue if you have related questions!

source: gharchive/issue

authors: DaniyalDhz parthea

repo: googleapis/google-api-python-client


text:
Paypal account checkout

Thanks for stopping by to let us know something could be better!
PLEASE READ: If you have a support contract with Google, please create an issue in the support console instead of filing on GitHub. This will ensure a timely response.
Please run down the following list and make sure you've tried the usual "quick fixes":

Search the issues already opened: https://github.com/googleapis/google-api-python-client/issues
Search StackOverflow: https://stackoverflow.com/questions/tagged/google-cloud-platform+python

If you are still having issues, please be sure to include as much information as possible:
Environment details

OS type and version:
Python version: python --version
pip version: pip --version
google-api-python-client version: pip show google-api-python-client

Steps to reproduce

?
?

Code example
# example

Stack trace
# example

Making sure to follow these steps will guarantee the quickest resolution possible.
Thanks!

No info.

authors: SaneshNarayanan vchudnov-g


text:
feat: Add custom parameters to token body during user cred refresh

Providing a way for passing additional parameters in token body of a token refresh request for user credentials.

Introduced a way to provide custom parameters only to auth endpoint.

repo: googleapis/google-auth-library-java


text:
Refactor storage credentials

Storage introduced credentials in the public namespace google::cloud::storage::oauth2. These credential classes are now deprecated in favor of GUAC (google::cloud::Credentials):
https://github.com/googleapis/google-cloud-cpp/blob/80a518a357c93eec7ddc49666efcd7984135dafb/google/cloud/storage/oauth2/credentials.h#L45
However, the storage internals are implemented in terms of google::cloud::storage::oauth2::Credentials.
https://github.com/googleapis/google-cloud-cpp/blob/80a518a357c93eec7ddc49666efcd7984135dafb/google/cloud/storage/client.cc#L50
We map GUAC -> storage credentials.
https://github.com/googleapis/google-cloud-cpp/blob/80a518a357c93eec7ddc49666efcd7984135dafb/google/cloud/storage/client_options.cc#L296-L300
This is backwards. We need to map storage credentials to GUAC and use GUAC in the implementation, if we ever want to remove the deprecated credentials in google::cloud::storage::oauth2.

For the record, we do not need to refactor. We can "delete" the storage::oauth2 classes by moving them into storage_internal and keeping the implementation mostly the same.
We might do this to unblock the next major release.
It is just that the resulting implementation would be unnecessarily complicated compared with using GUAC types.

repo: googleapis/google-cloud-cpp

license_source: github-api


text:
cleanup: remove dependency on bash

Using genrule() requires bash(1), which can be a problem for Windows
users.
Part of the work for #8613

This change is

Do you wanna be our bazel expert? Because this is how you become our bazel expert. :-)

I am not now, nor have I ever a member of the Bazel party.


text:
Synthesis failed for Google.Cloud.Workflows.V1

Hello! Autosynth couldn't regenerate Google.Cloud.Workflows.V1. :broken_heart:
Please investigate and fix this issue within 5 business days.  While it remains broken,
this library cannot be updated with changes to the Google.Cloud.Workflows.V1 API, and the library grows
stale.
See https://github.com/googleapis/synthtool/blob/master/autosynth/TroubleShooting.md
for trouble shooting tips.
Here's the output from running synth.py:
2021-03-19 22:46:57,703 autosynth [INFO] > logs will be written to: /tmpfs/src/logs/Google.Cloud.Workflows.V1
2021-03-19 22:46:58,176 autosynth [DEBUG] > Running: git config --global core.excludesfile /home/kbuilder/.autosynth-gitignore
2021-03-19 22:46:58,180 autosynth [DEBUG] > Running: git config user.name yoshi-automation
2021-03-19 22:46:58,185 autosynth [DEBUG] > Running: git config user.email yoshi-automation@google.com
2021-03-19 22:46:58,188 autosynth [DEBUG] > Running: git config push.default simple
2021-03-19 22:46:58,192 autosynth [DEBUG] > Running: git branch -f autosynth-Google.Cloud.Workflows.V1
2021-03-19 22:46:58,196 autosynth [DEBUG] > Running: git checkout autosynth-Google.Cloud.Workflows.V1
Switched to branch 'autosynth-Google.Cloud.Workflows.V1'
2021-03-19 22:46:58,404 autosynth [DEBUG] > Running: git rev-parse --show-toplevel
2021-03-19 22:46:58,410 autosynth [DEBUG] > Running: git log -1 --pretty=%H
2021-03-19 22:46:58,415 autosynth [DEBUG] > Running: git remote get-url origin
2021-03-19 22:46:58,449 synthtool [ERROR] > Failed executing git checkout master:

error: Your local changes to the following files would be overwritten by checkout:
	google/cloud/dialogflow/v2/answer_record.proto
	google/cloud/dialogflow/v2/conversation.proto
	google/cloud/dialogflow/v2/conversation_profile.proto
	google/cloud/dialogflow/v2/participant.proto
Please commit your changes or stash them before you switch branches.
Aborting

Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 354, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 189, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 312, in _inner_main
    git_source.enumerate_versions(sources, pathlib.Path(temp_dir))
  File "/tmpfs/src/github/synthtool/autosynth/git_source.py", line 202, in enumerate_versions
    source_versions = enumerate_versions_for_source(git_source, temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/git_source.py", line 166, in enumerate_versions_for_source
    local_repo_dir = str(synthtool_git.clone(remote))
  File "/tmpfs/src/github/synthtool/synthtool/sources/git.py", line 85, in clone
    shell.run(["git", "checkout", "master"], cwd=str(dest), check=True)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['git', 'checkout', 'master']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Autosynth passed, closing! :green_heart:

repo: googleapis/google-cloud-dotnet


text:
Regenerate APIs with retry changes

The changes are due to this GAPIC generator change, which is part of the proto-configuration-based migration.

So these changes are completely unnecessary (ie they add no functionality); and for C# add to the public surface (other languages don't publicly expose these retry definitions).
If we merge this, then when we switch to the new C# code-gen we will be forced to manually write the code to define these (unused, pointless) properties. We'll already be needed to hand-write partials for all existing code anyway, so this doesn't massively increase the work we will need to do, but it will add yet more unused code in the new code-gen that will be there purely for backwards compatibility.

Right, sounds like we don't want to merge. How feasible is it to make the C# generator not include these?

At the moment I don't know. And I really don't want to have to find out :(

But I expect it's possible.

Closing as we definitely don't want these changes.

authors: chrisdunelm jskeet


text:
Release Asset 1.0 and DataCatalog 1.0

I think this is the end of releases which are "ready to go"

Travis error is just a network one, on the non-cloud build. Merging.


text:
chore: fix URL for all modules

Fixes: #8630.
The URL will only be specified in the POM Parent now.

Did you get the root cause of the strangely long URL https://github.com/googleapis/google-cloud-java/google-cloud-jar-parent/google-cloud-websecurityscanner-parent/google-cloud-websecurityscanner shown in https://github.com/googleapis/google-cloud-java/issues/8630 ?

I think this pull request does not resolve the root cause of the long URL, because I still see it in the effective pom.
Prepare parent poms:
~/google-cloud-java $ gh pr checkout 8634 # This pull request
...
~/google-cloud-java $ mvn install --projects google-cloud-jar-parent,google-cloud-pom-parent,java-websecurityscanner
...

Then check the effective pom of java-websecurityscanner/google-cloud-websecurityscanner. You'll see the strangely long URL:
~/google-cloud-java $ mvn help:effective-pom --projects java-websecurityscanner/google-cloud-websecurityscanner |grep '<url>'
  <url>https://github.com/googleapis/google-cloud-java/google-cloud-jar-parent/google-cloud-websecurityscanner-parent/google-cloud-websecurityscanner</url>
      <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
    <url>https://github.com/googleapis/google-cloud-java/google-cloud-jar-parent/google-cloud-websecurityscanner-parent/google-cloud-websecurityscanner</url>
...

The bad URL disappeared. Nice.
~/google-cloud-java $ mvn help:effective-pom --projects java-websecurityscanner/google-cloud-websecurityscanner |grep '<url>'

  <url>https://github.com/googleapis/google-cloud-java</url>
      <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
    <url>https://github.com/googleapis/google-cloud-java</url>
    <url>https://github.com/googleapis/google-cloud-java/issues</url>
      <url>https://google.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
      <url>https://google.oss.sonatype.org/content/repositories/snapshots</url>
      <url>https://repo.maven.apache.org/maven2</url>
      <url>https://repo.maven.apache.org/maven2</url>

authors: meltsufin suztomo

repo: googleapis/google-cloud-java


text:
Folder Upload

I'm probably missing it but I've been digging through the docs for a while, figured I would ask here as if I'm having trouble finding maybe someone else is. Is there support for folder uploads or will I just have to build a simple wrapper? We have folder uploads so I was hoping to be able to work with files and folders using all GCP native functions but not a big deal if there is not support for this at this time.
Thanks!

Hey @1tron1, we unfortunately don't have support for this at the moment - but it would be an awesome feature.
If you'd like to open a PR that would be fantastic, otherwise I am sure we can get on it soon.

Sure thing. Quick question though. I was uploading files with a simple wrap:
php 	function upload_file($storage,$queue,$file){ 	  $bucket = $storage->bucket($queue); 	  $bucket->upload( 	    fopen($file, 'r')); 	}
Was wondering if with the bucket-> upload method there is a way to specify "folder path") into the bucket, or if I have to use bucket->object->insert() which I have seen done? Going to need to know to do this, and wanted to know if there was a nice terse method, the ones I have seen are a bit long.

@dwsupplee Will add this soon, quick unrelated question though. What is the best way get the file contents from a GCP bucket in php?

Assigning it to @vishwarajanand as they can decide on the FR. The mentioned PR was closed citing a reason.

authors: 1tron1 dwsupplee saranshdhingra

repo: googleapis/google-cloud-php


text:
Synthesis failed for java-pubsub

Hello! Autosynth couldn't regenerate java-pubsub. :broken_heart:
Here's the output from running synth.py:
tool/synthtool/languages/java.py", line 193, in _common_generation
    required=True,
  File "/tmpfs/src/github/synthtool/synthtool/transforms.py", line 208, in move
    f"No files in sources {sources} were copied. Does the source "
synthtool.transforms.MissingSourceError: No files in sources [PosixPath('/tmpfs/tmp/tmpbs95r05w/google-cloud-pubsub-v1-java/gapic-google-cloud-pubsub-v1-java/src')] were copied. Does the source contain files?
2020-07-16 18:08:24,886 autosynth [ERROR] > Synthesis failed
2020-07-16 18:08:24,887 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at c8f981b changes without context (#288)
2020-07-16 18:08:24,895 autosynth [DEBUG] > Running: git checkout autosynth-googleapis
Switched to branch 'autosynth-googleapis'
2020-07-16 18:08:24,901 autosynth [ERROR] > Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.
2020-07-16 18:08:25,222 autosynth [DEBUG] > Running: git checkout c8f981bfb40d2cd1904899435a046e1bef38bac3
Note: checking out 'c8f981bfb40d2cd1904899435a046e1bef38bac3'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at c8f981b changes without context (#288)
2020-07-16 18:08:25,228 autosynth [DEBUG] > Running: git checkout 21f1470ecd01424dc91c70f1a7c798e4e87d1eec
Previous HEAD position was 4f2c9f7 ci(java): run dependency test on Java 8 and 11 (#639)
HEAD is now at 21f1470 chore: add config files for cloud-rad for node.js (#667)
2020-07-16 18:08:25,239 autosynth [DEBUG] > Running: git checkout b56aa06cc99050861c9a9b14d9569bd18eb09604
HEAD is now at b56aa06c feat: Adds AuditLog proto for reading IAM admin logs.
2020-07-16 18:08:25,286 autosynth [DEBUG] > Running: git branch -f autosynth-125
2020-07-16 18:08:25,290 autosynth [DEBUG] > Running: git checkout autosynth-125
Switched to branch 'autosynth-125'
2020-07-16 18:08:25,296 autosynth [INFO] > Running synthtool
2020-07-16 18:08:25,296 autosynth [INFO] > ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
2020-07-16 18:08:25,296 autosynth [DEBUG] > log_file_path: /tmpfs/src/logs/java-pubsub/125/sponge_log.log
2020-07-16 18:08:25,300 autosynth [DEBUG] > Running: /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-07-16 18:08:25,504 synthtool [DEBUG] > Executing /home/kbuilder/.cache/synthtool/java-pubsub/synth.py.
On branch autosynth-125
nothing to commit, working tree clean
2020-07-16 18:08:25,635 synthtool [DEBUG] > Ensuring dependencies.
2020-07-16 18:08:25,646 synthtool [DEBUG] > Cloning googleapis.
2020-07-16 18:08:25,647 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/googleapis
2020-07-16 18:08:25,651 synthtool [DEBUG] > Generating code for: //google/pubsub/v1:google-cloud-pubsub-v1-java.
2020-07-16 18:08:27,379 synthtool [SUCCESS] > Generated code into /tmpfs/tmp/tmpu0gbv_2h.
2020-07-16 18:08:27,381 synthtool [WARNING] > No replacements made in [PosixPath('/tmpfs/tmp/tmpu0gbv_2h/google-cloud-pubsub-v1-java/proto-google-cloud-pubsub-v1-java/src/**/*.java')] for pattern // Generated by the protocol buffer compiler.  DO NOT EDIT!, maybe replacement is no longer needed?
2020-07-16 18:08:27,385 synthtool [WARNING] > No replacements made in [PosixPath('/tmpfs/tmp/tmpu0gbv_2h/google-cloud-pubsub-v1-java/proto-google-cloud-pubsub-v1-java/src/**/*Name.java'), PosixPath('/tmpfs/tmp/tmpu0gbv_2h/google-cloud-pubsub-v1-java/proto-google-cloud-pubsub-v1-java/src/**/*Names.java')] for pattern /\*
 \* Copyright \d{4} Google LLC
 \*
 \* Licensed under the Apache License, Version 2.0 \(the "License"\); you may not use this file except
 \* in compliance with the License. You may obtain a copy of the License at
 \*
 \* http://www.apache.org/licenses/LICENSE-2.0
 \*
 \* Unless required by applicable law or agreed to in writing, software distributed under the License
 \* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 \* or implied. See the License for the specific language governing permissions and limitations under
 \* the License.
 \*/
, maybe replacement is no longer needed?
2020-07-16 18:08:27,385 synthtool [WARNING] > No replacements made in [PosixPath('/tmpfs/tmp/tmpu0gbv_2h/google-cloud-pubsub-v1-java/grpc-google-cloud-pubsub-v1-java/src/**/*.java')] for pattern ^package (.*);, maybe replacement is no longer needed?
2020-07-16 18:08:27,386 synthtool [DEBUG] > Wrote metadata to synth.metadata.
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/kbuilder/.cache/synthtool/java-pubsub/synth.py", line 425, in <module>
    bazel_target=f'//google/{service}/{version}:google-cloud-{service}-{version}-java',
  File "/tmpfs/src/github/synthtool/synthtool/languages/java.py", line 318, in bazel_library
    destination_name=destination_name,
  File "/tmpfs/src/github/synthtool/synthtool/languages/java.py", line 193, in _common_generation
    required=True,
  File "/tmpfs/src/github/synthtool/synthtool/transforms.py", line 208, in move
    f"No files in sources {sources} were copied. Does the source "
synthtool.transforms.MissingSourceError: No files in sources [PosixPath('/tmpfs/tmp/tmpu0gbv_2h/google-cloud-pubsub-v1-java/gapic-google-cloud-pubsub-v1-java/src')] were copied. Does the source contain files?
2020-07-16 18:08:27,430 autosynth [ERROR] > Synthesis failed
2020-07-16 18:08:27,430 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at c8f981b changes without context (#288)
2020-07-16 18:08:27,436 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-07-16 18:08:27,442 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 367, in synthesize_loop
    synthesize_inner_loop(fork, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 411, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 266, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 657, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 506, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 637, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 375, in synthesize_loop
    synthesize_loop_single_pr(toolbox, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 401, in synthesize_loop_single_pr
    synthesize_inner_loop(toolbox, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 411, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 266, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Autosynth is still having trouble generating java-pubsub. :sob:
Here's the output from running synth.py:
ages/java.py", line 193, in _common_generation
    required=True,
  File "/tmpfs/src/github/synthtool/synthtool/transforms.py", line 208, in move
    f"No files in sources {sources} were copied. Does the source "
synthtool.transforms.MissingSourceError: No files in sources [PosixPath('/tmpfs/tmp/tmptgowz_7_/google-cloud-pubsub-v1-java/gapic-google-cloud-pubsub-v1-java/src')] were copied. Does the source contain files?
2020-07-17 03:21:26,577 autosynth [ERROR] > Synthesis failed
2020-07-17 03:21:26,577 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at c8f981b changes without context (#288)
2020-07-17 03:21:26,586 autosynth [DEBUG] > Running: git checkout autosynth-googleapis
Switched to branch 'autosynth-googleapis'
2020-07-17 03:21:26,591 autosynth [ERROR] > Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.
2020-07-17 03:21:26,903 autosynth [DEBUG] > Running: git checkout c8f981bfb40d2cd1904899435a046e1bef38bac3
Note: checking out 'c8f981bfb40d2cd1904899435a046e1bef38bac3'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at c8f981b changes without context (#288)
2020-07-17 03:21:26,909 autosynth [DEBUG] > Running: git checkout 21f1470ecd01424dc91c70f1a7c798e4e87d1eec
Previous HEAD position was 4f2c9f7 ci(java): run dependency test on Java 8 and 11 (#639)
HEAD is now at 21f1470 chore: add config files for cloud-rad for node.js (#667)
2020-07-17 03:21:26,919 autosynth [DEBUG] > Running: git checkout bb46f87724ddd2fd1ce9f9dcb71f147427775592
HEAD is now at bb46f877 Adds bazel build file for public version of AuditData proto for bigquery.
2020-07-17 03:21:26,960 autosynth [DEBUG] > Running: git branch -f autosynth-126
2020-07-17 03:21:26,965 autosynth [DEBUG] > Running: git checkout autosynth-126
Switched to branch 'autosynth-126'
2020-07-17 03:21:26,970 autosynth [INFO] > Running synthtool
2020-07-17 03:21:26,970 autosynth [INFO] > ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
2020-07-17 03:21:26,971 autosynth [DEBUG] > log_file_path: /tmpfs/src/logs/java-pubsub/126/sponge_log.log
2020-07-17 03:21:26,973 autosynth [DEBUG] > Running: /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-07-17 03:21:27,178 synthtool [DEBUG] > Executing /home/kbuilder/.cache/synthtool/java-pubsub/synth.py.
On branch autosynth-126
nothing to commit, working tree clean
2020-07-17 03:21:27,311 synthtool [DEBUG] > Ensuring dependencies.
2020-07-17 03:21:27,322 synthtool [DEBUG] > Cloning googleapis.
2020-07-17 03:21:27,323 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/googleapis
2020-07-17 03:21:27,327 synthtool [DEBUG] > Generating code for: //google/pubsub/v1:google-cloud-pubsub-v1-java.
2020-07-17 03:21:29,009 synthtool [SUCCESS] > Generated code into /tmpfs/tmp/tmppwf5wewj.
2020-07-17 03:21:29,011 synthtool [WARNING] > No replacements made in [PosixPath('/tmpfs/tmp/tmppwf5wewj/google-cloud-pubsub-v1-java/proto-google-cloud-pubsub-v1-java/src/**/*.java')] for pattern // Generated by the protocol buffer compiler.  DO NOT EDIT!, maybe replacement is no longer needed?
2020-07-17 03:21:29,014 synthtool [WARNING] > No replacements made in [PosixPath('/tmpfs/tmp/tmppwf5wewj/google-cloud-pubsub-v1-java/proto-google-cloud-pubsub-v1-java/src/**/*Name.java'), PosixPath('/tmpfs/tmp/tmppwf5wewj/google-cloud-pubsub-v1-java/proto-google-cloud-pubsub-v1-java/src/**/*Names.java')] for pattern /\*
 \* Copyright \d{4} Google LLC
 \*
 \* Licensed under the Apache License, Version 2.0 \(the "License"\); you may not use this file except
 \* in compliance with the License. You may obtain a copy of the License at
 \*
 \* http://www.apache.org/licenses/LICENSE-2.0
 \*
 \* Unless required by applicable law or agreed to in writing, software distributed under the License
 \* is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 \* or implied. See the License for the specific language governing permissions and limitations under
 \* the License.
 \*/
, maybe replacement is no longer needed?
2020-07-17 03:21:29,015 synthtool [WARNING] > No replacements made in [PosixPath('/tmpfs/tmp/tmppwf5wewj/google-cloud-pubsub-v1-java/grpc-google-cloud-pubsub-v1-java/src/**/*.java')] for pattern ^package (.*);, maybe replacement is no longer needed?
2020-07-17 03:21:29,016 synthtool [DEBUG] > Wrote metadata to synth.metadata.
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/kbuilder/.cache/synthtool/java-pubsub/synth.py", line 425, in <module>
    bazel_target=f'//google/{service}/{version}:google-cloud-{service}-{version}-java',
  File "/tmpfs/src/github/synthtool/synthtool/languages/java.py", line 318, in bazel_library
    destination_name=destination_name,
  File "/tmpfs/src/github/synthtool/synthtool/languages/java.py", line 193, in _common_generation
    required=True,
  File "/tmpfs/src/github/synthtool/synthtool/transforms.py", line 208, in move
    f"No files in sources {sources} were copied. Does the source "
synthtool.transforms.MissingSourceError: No files in sources [PosixPath('/tmpfs/tmp/tmppwf5wewj/google-cloud-pubsub-v1-java/gapic-google-cloud-pubsub-v1-java/src')] were copied. Does the source contain files?
2020-07-17 03:21:29,060 autosynth [ERROR] > Synthesis failed
2020-07-17 03:21:29,061 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at c8f981b changes without context (#288)
2020-07-17 03:21:29,067 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-07-17 03:21:29,073 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 367, in synthesize_loop
    synthesize_inner_loop(fork, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 411, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 266, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 657, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 506, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 637, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 375, in synthesize_loop
    synthesize_loop_single_pr(toolbox, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 401, in synthesize_loop_single_pr
    synthesize_inner_loop(toolbox, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 411, in synthesize_inner_loop
    synthesizer, len(toolbox.versions) - 1
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 266, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Autosynth passed, closing! :green_heart:

repo: googleapis/java-pubsub


text:
Synthesis failed for nodejs-firestore

Hello! Autosynth couldn't regenerate nodejs-firestore. :broken_heart:
Here's the output from running synth.py:
Cloning into 'working_repo'...
Switched to branch 'autosynth'
Running synthtool
['/tmpfs/src/git/autosynth/env/bin/python3', '-m', 'synthtool', 'synth.py', '--']
synthtool > Executing /tmpfs/src/git/autosynth/working_repo/synth.py.
synthtool > Ensuring dependencies.
Traceback (most recent call last):
  File "/home/node/.pyenv/versions/3.7.4/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/node/.pyenv/versions/3.7.4/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/synthtool/__main__.py", line 87, in <module>
    main()
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/synthtool/__main__.py", line 79, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/tmpfs/src/git/autosynth/working_repo/synth.py", line 9, in <module>
    gapic = gcp.GAPICGenerator()
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/synthtool/gcp/gapic_generator.py", line 41, in __init__
    self._artman = artman.Artman()
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/synthtool/gcp/artman.py", line 34, in __init__
    self._ensure_dependencies_installed()
  File "/tmpfs/src/git/autosynth/env/lib/python3.7/site-packages/synthtool/gcp/artman.py", line 157, in _ensure_dependencies_installed
    f"Dependencies missing: {', '.join(failed_dependencies)}"
OSError: Dependencies missing: docker
synthtool > Cleaned up 0 temporary directories.
synthtool > Wrote metadata to synth.metadata.

Synthesis failed

Google internal developers can see the full log here.

Autosynth passed, closing! :green_heart:

repo: googleapis/nodejs-firestore


text:
Synthesis failed for python-memcache

Hello! Autosynth couldn't regenerate python-memcache. :broken_heart:
Here's the output from running synth.py:
y commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at e0ae456 chore(python): use 'setup.py' to detect repo root (#795)
2020-10-10 05:48:48,375 autosynth [DEBUG] > Running: git branch -f autosynth-616
2020-10-10 05:48:48,379 autosynth [DEBUG] > Running: git checkout autosynth-616
Switched to branch 'autosynth-616'
2020-10-10 05:48:48,383 autosynth [INFO] > Running synthtool
2020-10-10 05:48:48,383 autosynth [INFO] > ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
2020-10-10 05:48:48,384 autosynth [DEBUG] > log_file_path: /tmpfs/src/logs/python-memcache/616/sponge_log.log
2020-10-10 05:48:48,386 autosynth [DEBUG] > Running: /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-10-10 05:48:48,661 synthtool [DEBUG] > Executing /home/kbuilder/.cache/synthtool/python-memcache/synth.py.
On branch autosynth-616
nothing to commit, working tree clean
2020-10-10 05:48:48,800 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/synthtool
2020-10-10 05:48:48,809 synthtool [DEBUG] > Ensuring dependencies.
2020-10-10 05:48:48,815 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/synthtool
2020-10-10 05:48:48,820 synthtool [DEBUG] > Cloning googleapis.
2020-10-10 05:48:48,820 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/googleapis
2020-10-10 05:48:48,824 synthtool [DEBUG] > Pulling Docker image: gapic-generator-python:latest
latest: Pulling from gapic-images/gapic-generator-python
Digest: sha256:49c51ef3987a158fd364837ed097070218c3127fe19a57b74992097fc1282859
Status: Image is up to date for gcr.io/gapic-images/gapic-generator-python:latest
2020-10-10 05:48:49,730 synthtool [DEBUG] > Generating code for: google/cloud/memcache/v1beta2.
Traceback (most recent call last):
  File "/usr/local/bin/protoc-gen-python_gapic", line 8, in <module>
    sys.exit(generate())
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/gapic/cli/generate.py", line 63, in generate
    res = generator.Generator(opts).get_response(api_schema, opts)
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 100, in get_response
    template_name, api_schema=api_schema, opts=opts)
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 285, in _render_template
    opts=opts,
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 313, in _get_file
    api=api_schema, opts=opts, **context
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 1090, in render
    self.environment.handle_exception()
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 832, in handle_exception
    reraise(*rewrite_traceback_stack(source=source))
  File "/usr/local/lib/python3.7/site-packages/jinja2/_compat.py", line 28, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/%namespace/%name_%version/%sub/services/%service/async_client.py.j2", line 1, in top-level template code
    {% extends '_base.py.j2' %}
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/_base.py.j2", line 5, in top-level template code
    {%- block content %}
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/%namespace/%name_%version/%sub/services/%service/async_client.py.j2", line 41, in block "content"
    {% for message in service.resource_messages|sort(attribute="resource_type") -%}
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 471, in getattr
    return getattr(obj, attribute)
  File "/usr/local/lib/python3.7/site-packages/gapic/utils/cache.py", line 39, in inner
    self._cached_values[fx.__name__] = fx(self)
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1059, in resource_messages
    for method in self.methods.values()
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1067, in <genexpr>
    method.lro.response_type if method.lro else method.output
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1055, in gen_indirect_resources_used
    yield self.visible_resources[resource_type]
  File "/usr/local/lib/python3.7/collections/__init__.py", line 916, in __getitem__
    return self.__missing__(key)            # support subclasses that define __missing__
  File "/usr/local/lib/python3.7/collections/__init__.py", line 908, in __missing__
    raise KeyError(key)
KeyError: 'locations.googleapis.com/Location'
--python_gapic_out: protoc-gen-python_gapic: Plugin failed with status code 1.
2020-10-10 05:48:51,186 synthtool [ERROR] > Failed executing docker run --mount type=bind,source=/home/kbuilder/.cache/synthtool/googleapis/google/cloud/memcache/v1beta2/,destination=/in/google/cloud/memcache/v1beta2/,readonly --mount type=bind,source=/tmpfs/tmp/tmp7wdekx67/,destination=/out/ --rm --user 1000 gcr.io/gapic-images/gapic-generator-python:latest:

None
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/kbuilder/.cache/synthtool/python-memcache/synth.py", line 28, in <module>
    library = gapic.py_library("memcache", "v1beta2")
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_microgenerator.py", line 57, in py_library
    return self._generate_code(service, version, "python", **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_microgenerator.py", line 189, in _generate_code
    shell.run(docker_run_args, hide_output=False)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['docker', 'run', '--mount', 'type=bind,source=/home/kbuilder/.cache/synthtool/googleapis/google/cloud/memcache/v1beta2/,destination=/in/google/cloud/memcache/v1beta2/,readonly', '--mount', 'type=bind,source=/tmpfs/tmp/tmp7wdekx67/,destination=/out/', '--rm', '--user', '1000', 'gcr.io/gapic-images/gapic-generator-python:latest']' returned non-zero exit status 1.
2020-10-10 05:48:51,255 autosynth [ERROR] > Synthesis failed
2020-10-10 05:48:51,255 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at 63d578c chore: add default CODEOWNERS (#17)
2020-10-10 05:48:51,261 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-10-10 05:48:51,265 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 706, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 541, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 686, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 375, in synthesize_loop
    has_changes = toolbox.synthesize_version_in_new_branch(synthesizer, youngest)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 273, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Autosynth is still having trouble generating python-memcache. :sob:
Here's the output from running synth.py:
y commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at e0ae456 chore(python): use 'setup.py' to detect repo root (#795)
2020-10-11 05:45:44,484 autosynth [DEBUG] > Running: git branch -f autosynth-616
2020-10-11 05:45:44,487 autosynth [DEBUG] > Running: git checkout autosynth-616
Switched to branch 'autosynth-616'
2020-10-11 05:45:44,491 autosynth [INFO] > Running synthtool
2020-10-11 05:45:44,491 autosynth [INFO] > ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
2020-10-11 05:45:44,491 autosynth [DEBUG] > log_file_path: /tmpfs/src/logs/python-memcache/616/sponge_log.log
2020-10-11 05:45:44,493 autosynth [DEBUG] > Running: /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-10-11 05:45:44,733 synthtool [DEBUG] > Executing /home/kbuilder/.cache/synthtool/python-memcache/synth.py.
On branch autosynth-616
nothing to commit, working tree clean
2020-10-11 05:45:44,851 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/synthtool
2020-10-11 05:45:44,858 synthtool [DEBUG] > Ensuring dependencies.
2020-10-11 05:45:44,863 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/synthtool
2020-10-11 05:45:44,867 synthtool [DEBUG] > Cloning googleapis.
2020-10-11 05:45:44,867 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/googleapis
2020-10-11 05:45:44,870 synthtool [DEBUG] > Pulling Docker image: gapic-generator-python:latest
latest: Pulling from gapic-images/gapic-generator-python
Digest: sha256:49c51ef3987a158fd364837ed097070218c3127fe19a57b74992097fc1282859
Status: Image is up to date for gcr.io/gapic-images/gapic-generator-python:latest
2020-10-11 05:45:45,642 synthtool [DEBUG] > Generating code for: google/cloud/memcache/v1beta2.
Traceback (most recent call last):
  File "/usr/local/bin/protoc-gen-python_gapic", line 8, in <module>
    sys.exit(generate())
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/gapic/cli/generate.py", line 63, in generate
    res = generator.Generator(opts).get_response(api_schema, opts)
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 100, in get_response
    template_name, api_schema=api_schema, opts=opts)
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 285, in _render_template
    opts=opts,
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 313, in _get_file
    api=api_schema, opts=opts, **context
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 1090, in render
    self.environment.handle_exception()
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 832, in handle_exception
    reraise(*rewrite_traceback_stack(source=source))
  File "/usr/local/lib/python3.7/site-packages/jinja2/_compat.py", line 28, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/%namespace/%name_%version/%sub/services/%service/async_client.py.j2", line 1, in top-level template code
    {% extends '_base.py.j2' %}
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/_base.py.j2", line 5, in top-level template code
    {%- block content %}
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/%namespace/%name_%version/%sub/services/%service/async_client.py.j2", line 41, in block "content"
    {% for message in service.resource_messages|sort(attribute="resource_type") -%}
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 471, in getattr
    return getattr(obj, attribute)
  File "/usr/local/lib/python3.7/site-packages/gapic/utils/cache.py", line 39, in inner
    self._cached_values[fx.__name__] = fx(self)
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1059, in resource_messages
    for method in self.methods.values()
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1067, in <genexpr>
    method.lro.response_type if method.lro else method.output
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1055, in gen_indirect_resources_used
    yield self.visible_resources[resource_type]
  File "/usr/local/lib/python3.7/collections/__init__.py", line 916, in __getitem__
    return self.__missing__(key)            # support subclasses that define __missing__
  File "/usr/local/lib/python3.7/collections/__init__.py", line 908, in __missing__
    raise KeyError(key)
KeyError: 'locations.googleapis.com/Location'
--python_gapic_out: protoc-gen-python_gapic: Plugin failed with status code 1.
2020-10-11 05:45:47,029 synthtool [ERROR] > Failed executing docker run --mount type=bind,source=/home/kbuilder/.cache/synthtool/googleapis/google/cloud/memcache/v1beta2/,destination=/in/google/cloud/memcache/v1beta2/,readonly --mount type=bind,source=/tmpfs/tmp/tmpi798s3yb/,destination=/out/ --rm --user 1000 gcr.io/gapic-images/gapic-generator-python:latest:

None
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/kbuilder/.cache/synthtool/python-memcache/synth.py", line 28, in <module>
    library = gapic.py_library("memcache", "v1beta2")
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_microgenerator.py", line 57, in py_library
    return self._generate_code(service, version, "python", **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_microgenerator.py", line 189, in _generate_code
    shell.run(docker_run_args, hide_output=False)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['docker', 'run', '--mount', 'type=bind,source=/home/kbuilder/.cache/synthtool/googleapis/google/cloud/memcache/v1beta2/,destination=/in/google/cloud/memcache/v1beta2/,readonly', '--mount', 'type=bind,source=/tmpfs/tmp/tmpi798s3yb/,destination=/out/', '--rm', '--user', '1000', 'gcr.io/gapic-images/gapic-generator-python:latest']' returned non-zero exit status 1.
2020-10-11 05:45:47,084 autosynth [ERROR] > Synthesis failed
2020-10-11 05:45:47,084 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at 63d578c chore: add default CODEOWNERS (#17)
2020-10-11 05:45:47,089 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-10-11 05:45:47,093 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 706, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 541, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 686, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 375, in synthesize_loop
    has_changes = toolbox.synthesize_version_in_new_branch(synthesizer, youngest)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 273, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Autosynth is still having trouble generating python-memcache. :sob:
Here's the output from running synth.py:
y commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at e0ae456 chore(python): use 'setup.py' to detect repo root (#795)
2020-10-12 05:49:33,980 autosynth [DEBUG] > Running: git branch -f autosynth-616
2020-10-12 05:49:33,984 autosynth [DEBUG] > Running: git checkout autosynth-616
Switched to branch 'autosynth-616'
2020-10-12 05:49:33,988 autosynth [INFO] > Running synthtool
2020-10-12 05:49:33,988 autosynth [INFO] > ['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']
2020-10-12 05:49:33,988 autosynth [DEBUG] > log_file_path: /tmpfs/src/logs/python-memcache/616/sponge_log.log
2020-10-12 05:49:33,990 autosynth [DEBUG] > Running: /tmpfs/src/github/synthtool/env/bin/python3 -m synthtool --metadata synth.metadata synth.py --
2020-10-12 05:49:34,240 synthtool [DEBUG] > Executing /home/kbuilder/.cache/synthtool/python-memcache/synth.py.
On branch autosynth-616
nothing to commit, working tree clean
2020-10-12 05:49:34,367 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/synthtool
2020-10-12 05:49:34,375 synthtool [DEBUG] > Ensuring dependencies.
2020-10-12 05:49:34,380 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/synthtool
2020-10-12 05:49:34,384 synthtool [DEBUG] > Cloning googleapis.
2020-10-12 05:49:34,384 synthtool [DEBUG] > Using precloned repo /home/kbuilder/.cache/synthtool/googleapis
2020-10-12 05:49:34,387 synthtool [DEBUG] > Pulling Docker image: gapic-generator-python:latest
latest: Pulling from gapic-images/gapic-generator-python
Digest: sha256:49c51ef3987a158fd364837ed097070218c3127fe19a57b74992097fc1282859
Status: Image is up to date for gcr.io/gapic-images/gapic-generator-python:latest
2020-10-12 05:49:35,211 synthtool [DEBUG] > Generating code for: google/cloud/memcache/v1beta2.
Traceback (most recent call last):
  File "/usr/local/bin/protoc-gen-python_gapic", line 8, in <module>
    sys.exit(generate())
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.7/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/gapic/cli/generate.py", line 63, in generate
    res = generator.Generator(opts).get_response(api_schema, opts)
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 100, in get_response
    template_name, api_schema=api_schema, opts=opts)
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 285, in _render_template
    opts=opts,
  File "/usr/local/lib/python3.7/site-packages/gapic/generator/generator.py", line 313, in _get_file
    api=api_schema, opts=opts, **context
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 1090, in render
    self.environment.handle_exception()
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 832, in handle_exception
    reraise(*rewrite_traceback_stack(source=source))
  File "/usr/local/lib/python3.7/site-packages/jinja2/_compat.py", line 28, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/%namespace/%name_%version/%sub/services/%service/async_client.py.j2", line 1, in top-level template code
    {% extends '_base.py.j2' %}
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/_base.py.j2", line 5, in top-level template code
    {%- block content %}
  File "/usr/local/lib/python3.7/site-packages/gapic/templates/%namespace/%name_%version/%sub/services/%service/async_client.py.j2", line 41, in block "content"
    {% for message in service.resource_messages|sort(attribute="resource_type") -%}
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 471, in getattr
    return getattr(obj, attribute)
  File "/usr/local/lib/python3.7/site-packages/gapic/utils/cache.py", line 39, in inner
    self._cached_values[fx.__name__] = fx(self)
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1059, in resource_messages
    for method in self.methods.values()
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1067, in <genexpr>
    method.lro.response_type if method.lro else method.output
  File "/usr/local/lib/python3.7/site-packages/gapic/schema/wrappers.py", line 1055, in gen_indirect_resources_used
    yield self.visible_resources[resource_type]
  File "/usr/local/lib/python3.7/collections/__init__.py", line 916, in __getitem__
    return self.__missing__(key)            # support subclasses that define __missing__
  File "/usr/local/lib/python3.7/collections/__init__.py", line 908, in __missing__
    raise KeyError(key)
KeyError: 'locations.googleapis.com/Location'
--python_gapic_out: protoc-gen-python_gapic: Plugin failed with status code 1.
2020-10-12 05:49:36,625 synthtool [ERROR] > Failed executing docker run --mount type=bind,source=/home/kbuilder/.cache/synthtool/googleapis/google/cloud/memcache/v1beta2/,destination=/in/google/cloud/memcache/v1beta2/,readonly --mount type=bind,source=/tmpfs/tmp/tmpg16rtg7l/,destination=/out/ --rm --user 1000 gcr.io/gapic-images/gapic-generator-python:latest:

None
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/kbuilder/.cache/synthtool/python-memcache/synth.py", line 28, in <module>
    library = gapic.py_library("memcache", "v1beta2")
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_microgenerator.py", line 57, in py_library
    return self._generate_code(service, version, "python", **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_microgenerator.py", line 189, in _generate_code
    shell.run(docker_run_args, hide_output=False)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['docker', 'run', '--mount', 'type=bind,source=/home/kbuilder/.cache/synthtool/googleapis/google/cloud/memcache/v1beta2/,destination=/in/google/cloud/memcache/v1beta2/,readonly', '--mount', 'type=bind,source=/tmpfs/tmp/tmpg16rtg7l/,destination=/out/', '--rm', '--user', '1000', 'gcr.io/gapic-images/gapic-generator-python:latest']' returned non-zero exit status 1.
2020-10-12 05:49:36,686 autosynth [ERROR] > Synthesis failed
2020-10-12 05:49:36,687 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at 63d578c chore: add default CODEOWNERS (#17)
2020-10-12 05:49:36,692 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-10-12 05:49:36,696 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 706, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 541, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 686, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 375, in synthesize_loop
    has_changes = toolbox.synthesize_version_in_new_branch(synthesizer, youngest)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 273, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Autosynth passed, closing! :green_heart:

repo: googleapis/python-memcache


text:
Is there any way to append a build number/semver meta to a release-please calculated version?

Hi,
I'd like to be able to add a build number (github calculated for example) and/or a qualifier string to the release-please conventional commits calculated version such that my releases look like v1.2.3-98
I can see that its possible to manually replace the entire version with "Release-As", but what I'm looking for is a way to either auto extract the proposed release version and modify it prior to use (a hook of some kind?), or a means to set the Build metadata portion of a semver v2 version number.
Is this possible with release-please?

Sorry this is not something that release-please is designed to do. It does not understand when you are attempting to do a non-release build unless you explicitly want to create a GitHub release on each build. If you do want a PR for every build attempt, you can implement a custom VersioningStrategy that knows how to increment the build number given a list of commits.

@chingor13 I want to be able to create a 'release-able' version on every merge to main, and that means distinct semver numbers+build numbers so that the build artifacts are distinct, so it's clear whether the code was the same but was rebuilt, can be stored in a npm/maven/nuget etc repo, e2e tested and ultimately tagged as good.
It's only after testing we can know if a release candidate will become a release. release-please doesn't need to understand the difference if there never is one. From my pov a tested release artifact is the artifact that gets released. not rebuilt later hoping its still the same.
it's ok. I definitely don't 'want a PR for every build attempt', I do want a build on every PR change and every merge to main, and they should all produce distinct version numbers - but I understand this is the model release-please is using. I've decided to go a different direction.
Cheers.

repo: googleapis/release-please


text:
Codegen only seeing some comments

It may be the way I'm running the codegen but the generated code for service methods no longer has any summary documentation, and only some parameters have documentation.

Fixed now - it was a bug in my script; I need to pass a flag to protoc to include the comments.

repo: googleapis/toolkit


text:
Check for empty basename in GetFileContentOrDie()

An empty basename would mean a directory path is returned by
GetFullPathOrDie(), which then leads to a cryptic exception when trying
to read from it using the istreambuf_iterator:
"basic_filebuf::underflow error reading the file: iostream error"

@wally-the-cartographer merge

Merge requested by authorized user sebastianklose. Merge queue now has a length of 1.

repo: googlecartographer/cartographer


text:
Renames doc to docs as described.

This now matches the readthedocs.org getting started guide.

You probably also want to rename the directory in the CMakeLists.txt of docs's parent directory.

LGTM

authors: damonkohler wohe


text:
No Device available

I want to show videos from the list and want to show into Android TV or Samsung WMR device
When running this sample project:
Initially, a dialog appears with the message, "Looking for devices."
After some time, it displays, "Ensure that the other device is connected to the same Wi-Fi network as this phone."
Finally, it shows a dialog stating, "No devices available."
Can someone help me to identify the issue and It will be great if someone can mention the flow/process for creating google casting application.
Many Many thanks in Advance

Same issue here. It shows 'Looking for devices,' then 'Ensure same Wi-Fi,' and finally 'No devices available.' Any guidance on fixing this or building a Google Cast app?

repo: googlecast/CastVideos-android


text:
Error running Step 1: No Android facet found for app

I can't run any configuration of the project.
First of all configurations show the same error: "Module not specified"
Then the "Error running Step 1: No Android facet found for app" message is shown.
How to solve it?

Today, after reopening project and confirming the request about gradle update problem has disappear.

repo: googlecodelabs/android-lifecycles


text:
API errors, Uncaught TypeError: Cannot read property 'jobs' of undefined

The gapi.client does not work as expected in Chrome. I get the following Error about the gapi.client. Is this a bug or an update to a newer API version/endpoint?
let request = gapi.client.bigquery.jobs.query({
https://github.com/googlecodelabs/bigquery-maps-api/blob/b20f46b5507d5451a021db55713a4ec5948d10d4/step8/map.html#L100

Decided to call gapi.auth.authorize in a function by function basis for each input query and made the trick.
gapi.auth.authorize(config, function() {
polygonQuery(queryPolygon);
});

repo: googlecodelabs/bigquery-maps-api


text:
Overhaul name checks

This PR will tidy up our existing name table checks. It also fixes the typographic subfamily name check for VFs with multiple axes.
I've had to move away from using the filenames to determine the family name and subfamily name. Instead, I've used the name table itself. This means I will need to implement a check to ensure that the filenames are related to the name table.
https://github.com/googlefonts/fontbakery/issues/3191
Still wip, needs much more work.

@felipesanches I'm dog fooding this whilst working on an NDA project so my progress is happening slower than expected.

Thanks for putting some more effort on this, @m4rc1e :-)

Thanks and apologies for the delay on this. We should maybe have a hangout once I think it's ready since I'm making a tonne of changes.

@m4rc1e, please let me know when this is ready for a code-review. Then if I get confused about some aspects of it during review, we can possibly have a video call for clarification. Cheers!

@felipesanches SGTM.
I took a step back last night and thought it may be more user friendly if we consolidate all the name checks together. Currently, every name record is an individual check which produces massive reports. Imo, it is far more elegant to produce tables which show all the records together. This approach makes the reports much easier to understand since users can see all the info on one page. Since we also use Rich, here's a mock up of a potential friendlier future.

That is beautiful, I love it !!!!

style bits could be more explanatory like: is bold, is regular, is italic. use_typo_metric:true, embedding:installable.
We could have 21 and 22 so it can be useful for other project than GF stuff
It could be presented the same for copyright and designer info
actually for all font table related stuff because it is awesome

That's pretty good, @m4rc1e !
My original intention when splitting checks into individual fields was to make it easier for the users to grasp because I thought there were too many criteria for the name table to be presented all at once. Maybe I was mistaken. I'm glad you're experimenting with a different approach and it seems to be wise to present it in tabular form. Thanks!

Here's a small improvement suggestion:

Use a dark green color for the not-set entries that are good. And say "Not set." in both current and expected columns.

More structured information, lovely!
So happy not seeing the hexadecimal for the bits enabled on the style bits details, and agree on the explanations could be informative.
Name ID 4 would be relevant and perhaps including ID 25 (while it is needed for Adobe issues).

Could be this a good opportunity to review the status of this check?

It seems that this is now outdated, as we've got a new attempt at #3800

authors: RosaWagner felipesanches m4rc1e vv-monsalve

repo: googlefonts/fontbakery


text:
Fix specimen in idu_Latn

The specimen in idu_Latn do not correspond with Idoma orthography description.
See upstream Unicode UDHR issue https://github.com/unicode-org/udhr/issues/103

This was fixed in 57e1c84 and 99b9e5d

The samples are still using e with ogonek instead of the letter defined in the orthography. The orthography either used open e and open o, or e dot below and o dot below.

authors: moyogo simoncozens

repo: googlefonts/lang


text:
Simplify input to this transform.

Users may want to filter variants prior to applying this transform.

LGTM

authors: deflaux dionloy

repo: googlegenomics/dataflow-java


text:
Subdivisions need unique ids

When a subdivision (administrative area / locality / dependent locality) has no ISO id, the library uses the name as the key. This is especially visible for the Brazil localities and China localities / dependent localities. Now, the names of these subdivisions are known to change, causing the "id" to change, and leaving no connection between the old entry and the new entry.
This creates a problem for people wanting to normalize the data by having a "subdivision" table and an "address" table that references subdivisions by id, since subdivision changes leave no way to update the ids in the address table.
In commerceguys/addressing I resorted to generating an id from the sha1 hash of the key (to get a safe value), but that of course doesn't solve the main problem. Recent diff
-     "CN-33-6b5326-b2f6e2": {
+    "CN-33-6b5326-a139f5": {
         "locale": "zh-Latn",
         "country_code": "CN",
         "parent_id": "CN-33-6b5326",
-        "id": "CN-33-6b5326-b2f6e2",
-        "code": "绍兴县",
-        "name": "Shaoxing Xian",
+        "id": "CN-33-6b5326-a139f5",
+        "code": "上虞市",
+        "name": "Shangyu Shi",

(I am assuming this refers to the same subdivision. I've also seen Brazilian examples where that was more clear).
So, it would be great if the dataset could construct and provide some kind of a unique id, to make it easier for implementations to have the desired datamodel.

From this perspective I don't see how we can invent stable ids, so closing.

Note also ISO IDs change over time, they aren't stable either. And new places pop up, old places disappear, places split up (Serbia and Montenegro became "Serbia" and "Montenegro" respectively) so auto-migrating people is not always possible.
Generally we try and keep the "key" as stable as possible (this is what we think should be saved as part of the address) and the "name" is free to change (it is what should be displayed to the user). This is different for latin-names like China, as you noted.

authors: bojanz lararennie


text:
Add some built-in app information so that users can see the icon and names without downloading the apps first.

The previous logic uses package manager to read info about apps from phone, which is not friendly to those who have not installed all the apps. I extract all the pics and names from the apks and put them in the app so that the user could see all the information even without installing all the apps. The installation would be delayed until user clicks any deeplink. Also fix some bugs and some UI components to make app look better.
fixes #21, fixes #22, fixes #20, fixes #11
resolve #18,

All bugs fixed, thanks for pointing out!

repo: googleinterns/app-action-visualizer


text:
Fix html escaping on card display

address issues #28 and #44

lgtm!

looks like the width of the knowledge card is based on the length of its content, which leads to really wide knowledge card when the response is long. I think adding a fix length to either the search result or the knowledge card would help prevent this problem.

+1 to Iris' comment. I'm getting a tiny SRP and huge knowledge card. I think it may be confusing why what's happening is happening, so let me try to explain.
When laying out flex items, Flexbox first tries to lay out items according to flex-basis. You didn't set it (which is fairly normal), so for width, the actual width value is looked at. The SRP container is width: 80%, and the knowledge card container is auto (the default, so it didn't need to be set), which means it gets to be as long as it wants to.
During this initial pass, Flexbox calculated that the SRP container gets 80% width, so 860 pixels on my computer, and the knowledge card container got as much width as it wanted, and since this particular knowledge card is so big, the container wanted 8158.5 pixels (thanks, Firefox dev tools, Chrome can't tell you this). Yeah, that's not a typo.
After the initial pass, Flexbox tries to figure out whether items have to grow or shrink to fit into the flex container, which is in actuality only 1075 pixels wide (for my computer with dev tools open. note that 80% of this is 860px, as above). Since this is smaller than 860px + 8158.5px, things have to shrink. This is controlled by the flex-shrink property on the flex items, which are not set, so it defaults to 1, which means both items equally lose space. But it's not exactly a fair to do this, since the second flex-item can afford to lose so much more width than the first, which is exactly what happens - the first flex-item loses as much width as it can, down to the minimum size, and the rest is taken from the second flex-item until it fits into the container.
I thought it might be good to understand what's going on because I find no one really explains what's going on under the hood for Flexbox, only what the properties mean at a high-level. But the root issue is that you can't let the second flex-item (the knowledge card container) have infinite width in a flexbox - it's going to overpower the other flex-item when it gets to shrinking.
The solution is definitely to set some widths/max-widths/min-widths on these items. Also you might want to consider what you're trying to do with flexbox - do you really need it? How do you want things to be laid out?

Also, there's a few changes to files that are not related to the PR ("add card display to srp"). Aside from those changes to SearchServlet.java needed to actually display cards, can you move them out of the PR? It'd be better to discuss them separately anyway so we can land this one.

Not sure what's happening with this PR / when or what I should review or if it's just waiting for #43 ?

Not sure what's happening with this PR / when or what I should review or if it's just waiting for #43 ?

This PR is waiting on #43, and will also address the misc issues regarding display (eg. escaping html) that do not involve fixing front-end code.

also, maybe edit the PRs title and description to better describe what the PR is changing now?

also, maybe edit the PRs title and description to better describe what the PR is changing now?

+1
This PR intended to specifically fixing #28 and #44 right? There are multiple ongoing issues with fixing card displaying rn

AFAIU, this isn't quite ready for review, right? The approvals are for a much earlier version of the PR.

Wait, is this the most updated fix, or should I wait for forthcoming changes like the ones we discussed about filtering for keywords or URL paths before reviewing this?

ait, is this the most updated fix, or should I wait for forthcoming changes like the ones we discussed about filtering for keywords or URL paths before reviewing this

the latter, the html escaping issues will be addressed in this PR

Yeah same question, this only escapes two clients' code fields. Will HTML be stripped from the other fields? How will this interact with the planned (maybe?) changes to how the SO parser will deal with code/description?

Yeah same question, this only escapes two clients' code fields. Will HTML be stripped from the other fields? How will this interact with the planned (maybe?) changes to how the SO parser will deal with code/description?

This PR currently contains the old solution to escaping the HTML, it's going to be updated with new solution to html escaping as well as the new design (JSP rendering) required to support the changes being made to the SO client

Sounds like the current changes in this PR are going to be obsolete. In that case, can you make a new PR with those changes?
(AFAIK, the only thing left in this PR will then be the "..." being appended to descriptions?)

Sounds like the current changes in this PR are going to be obsolete. In that case, can you make a new PR with those changes?
(AFAIK, the only thing left in this PR will then be the "..." being appended to descriptions?)

appending ',,,' for SO is also done in other pr.

Yeah same question, this only escapes two clients' code fields. Will HTML be stripped from the other fields? How will this interact with the planned (maybe?) changes to how the SO parser will deal with code/description?

SO description now has <code> for code snippet, so it will be fine if we add style to code tag.

authors: AaronLopes anbenson irisliu77 joanchenx kaylaleung


text:
Can't build with Android studio 2.0

I have tried to build with both Android Studio 2.0 and from the command line and I get this error:
android-FloatingActionButtonBasic\Application\build\intermediates\exploded-aar\com.android.support\cardview-v7\23.3.0\res\values-v23\values-v23.xml:3:5-5:13: AAPT: No resource found that matches the given name (at 'cardBackgroundColor' with value '?android:attr/colorBackgroundFloating').
My Setup:
Windows 10 x64
Android Studio 2.0 (build #AI-143.2739321)
Android SDKs 5.01 (API 21), 5.0.1 (API 21), 5.1.1 (API 22) and 6.0 (API 23)
Android SDK build tools 23.0.1, 23.0.3, 23.0.3
Android SDK Tools 23.1
Android Platform Tools 25.1.2
Android Support Library 23.2.1
Android Support Repository 30.0

This sample has been deprecated/archived (check README for more information on newer samples related to this technology).
As recommended by GitHub, we are closing all issues and pull requests.

authors: codingjeremy jesse-bernoudy


text:
Crash while launching the app

This is the stack trace :
FATAL EXCEPTION: main
Process: com.example.android.uamp, PID: 17957
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.android.uamp/com.example.android.uamp.ui.MusicPlayerActivity}: java.lang.RuntimeException: com.google.android.gms.internal.zzsb$zza: No acceptable module found. Local version is 0 and remote version is 0.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.RuntimeException: com.google.android.gms.internal.zzsb$zza: No acceptable module found. Local version is 0 and remote version is 0.
at com.google.android.gms.internal.zzni.zzbg(Unknown Source)
at com.google.android.gms.internal.zzni.zza(Unknown Source)
at com.google.android.gms.cast.framework.CastContext.(Unknown Source)
at com.google.android.gms.cast.framework.CastContext.getSharedInstance(Unknown Source)
at com.example.android.uamp.ui.ActionBarCastActivity.onCreate(ActionBarCastActivity.java:141)
at com.example.android.uamp.ui.BaseActivity.onCreate(BaseActivity.java:49)
at com.example.android.uamp.ui.MusicPlayerActivity.onCreate(MusicPlayerActivity.java:57)
at android.app.Activity.performCreate(Activity.java:6237)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: com.google.android.gms.internal.zzsb$zza: No acceptable module found. Local version is 0 and remote version is 0.
at com.google.android.gms.internal.zzsb.zza(Unknown Source)
at com.google.android.gms.internal.zzni.zzbg(Unknown Source)
at com.google.android.gms.internal.zzni.zza(Unknown Source)
at com.google.android.gms.cast.framework.CastContext.(Unknown Source)
at com.google.android.gms.cast.framework.CastContext.getSharedInstance(Unknown Source)
at com.example.android.uamp.ui.ActionBarCastActivity.onCreate(ActionBarCastActivity.java:141)
at com.example.android.uamp.ui.BaseActivity.onCreate(BaseActivity.java:49)
at com.example.android.uamp.ui.MusicPlayerActivity.onCreate(MusicPlayerActivity.java:57)
at android.app.Activity.performCreate(Activity.java:6237)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

Make sure you have the latest version of Google Play Services installed on the device. https://github.com/googlesamples/android-UniversalMusicPlayer/issues/94

Same problem (exception) here with an x86 Android TV emulator API level 23 that has Google Play Services 9.4.52 and an x86 Android TV emulator API level 24 having GPS 9.3.78.

Is there another way? And why I must have the latest version of Google Play Service installed?

If I use ths ADV,Can I install the Google Play Service ? Does it mean I should use real cellphone to test ?

Anyways, the app should show explanation dialog why it can not continue instead of crashing.

The latest version checks if Google Play Services are available (and up to date) before attempting to setup Cast, so this should no longer happen.


text:
🛑 goormEDU is down

In 6424c3e, goormEDU (https://edu.goorm.io) was down:

HTTP code: 403
Response time: 740 ms

Resolved: goormEDU is back up in be89400 after 5 minutes.

repo: goorm-dev/goorm-status

license: MIT


text:
🛑 goormEDU is down

In 30aca64, goormEDU (https://edu.goorm.io) was down:

HTTP code: 403
Response time: 723 ms

Resolved: goormEDU is back up in 94aa417 after 21 minutes.


text:
🛑 goormIDE is down

In 0509bc8, goormIDE (https://ide.goorm.io) was down:

HTTP code: 403
Response time: 765 ms

Resolved: goormIDE is back up in 35de5dd after 5 minutes.


text:
🛑 goormIDE is down

In eb24723, goormIDE (https://ide.goorm.io) was down:

HTTP code: 403
Response time: 802 ms

Resolved: goormIDE is back up in 95cbdd3 after 32 minutes.


text:
Fix go get and update to v1.8.7

First i change the github.com/urfave/cli to gopkg.in/urfave/cli.v1, because if you download with go get outside $GOPATH, then it will use the latest version which is the version 2. But in v2 they change all of the type so it break when you try to install with go get outside $GOPATH

Second we need to update to version 1.8.7 with git tag v1.8.7, so that when they use go get inside the $GOPATH it will clone from git tag and our v1.8.6 tag is commit 6 month ago without the new go 1.11 module. So to fix that problem we need to update the to new tag v1.8.7

Fix issue:
#1214 #1199

Thanks a lot for the effort @acheron2302, it is greatly appreciated!
If I look at the documentation here, it mentions that the default should still be v1: https://github.com/urfave/cli#using-v1-releases

if you download with go get outside $GOPATH, then it will use the latest version which is the version 2

What is the reason to "go get" without the $GOPATH set?
According to the examples there, it should not be necessary to use gopkg.in anymore: https://blog.golang.org/v2-go-modules
Maybe I don't fully understand the issue, but what is the exact reason to switch the import to gopkg.in?

@Pharb In https://blog.golang.org/v2-go-modules, it said:

Before Go modules, gopkg.in allowed package maintainers to follow what we now refer to as the import compatibility rule

In ơgo module doc](https://github.com/golang/go/wiki/Modules#why-does-installing-a-tool-via-go-get-fail-with-error-cannot-find-main-module):

Leave GO111MODULE unset (the default, or explicitly set GO111MODULE=auto), which results in friendlier behavior. This will give you Go 1.10 behavior when you are outside of a module and hence will avoid go get reporting cannot find main module.

So that mean if you are outside a module and then it will return to 1.10 behavior which mean downloading the latest version into src. So that mean it will download the v2 from urfave and everything go kaboom. So we need to change it to gopkg.in and it will fix the problem
The another solution i haven't mention is that: In the README.md you guys should change the download to: GO111MODULE=on go get -u. But the problem it's that with it it will download v1.8.6 from this github and 1.8.6 release is 7 month ago and it still use gopkg.lock which is very outdate. So you guys need to update the release. And the reason i change it to gopkg.in is because in case somebody run go get -u  outside then there won't be any error. But i think by update the release to v1.8.7 and change the way to download to GO111MODULE=on go get -u will work just fine without the need of gopkg.in

I think this may potentially break usage of Go modules, though, as the canonical path of urfave/cli changed back to github.com/urfave/cli. I think we still build within GOPATH (and without using Go modules) on TravisCI. Maybe it's a good time to change that now, so we also verify that the package versions specified in go.mod actually work with our builds?

Obsoleted by #1273.

authors: Pharb acheron2302 dominikschulz muesli

repo: gopasspw/gopass

license: mit