Integrating with RLS

Hey @Papooch! Thanks for an amazing library! I've been trying to fit it properly in my Nest.js + TypeORM project, where I am trying to implement RLS-based multi-tenancy for PostgresDB.
I am using rls library to achieve that. One downside is that it uses Request.SCOPE. I wanted to work around it using nestjs-cls which seems like a perfectly doable thing.
This part from nestjs-cls use cases examples
ClsModule.forFeature({
    provide: TENANT_CONNECTION,
    import: [DatabaseConnectionModule],
    inject: [CLS_REQ, DatabaseConnectionService],
    useFactory: async (req: Request, dbService: DatabaseConnectionService) => {
        const tenantId = req.params['tenantId'];
        const connection = await dbService.getTenantConnection(tenantId);
        return connection;
    },
});

Looks like this part of the code from cls library.
So as I tried just replacing Request with CLS_RQS there in my own fork, but it didn't work, because it was trying to instantiate the rls module too early, at the application bootstrap time, when I don't have access to the request yet.
Now when when I am trying to do it with ClsModule.forFeature as in the example above – I am struggling with making TENANT_CONNECTION avialble in RLSModule as well.
Can you please nudge me in the right direction of how to do it properly? I am sure it could be done really easily, but couldn't just wrap my head around it.

I have no experience with the libray you talk about, but please have a look at this feature, mabye it solves your issue: https://papooch.github.io/nestjs-cls/features-and-use-cases/proxy-providers#delayed-resolution-of-proxy-providers

Hey @Papooch, Thanks for the quick response!
I am very much sure that using your library I can break out of Request.SCOPE dependency in that library – I just can't wrap my head around ClsModule.forFeature thing.
I know that you don't have to do that and it is not directly related to your library – but if you could take a look into this, I'd help me very much!
Shall I provide a greater context here or I can I reach out to you and borrow 15 minutes of your time? (and not pollute this repo)

I would prefer if you give the details here, so other people doing the same may benefit from it, too.
I am not exactly sure which part do you not understand, so please do elaborate.
The ClsModule.forFearure basically instantiates a JavaScript Proxy of your provider as a singleton, but redirects all access to it's members to an unique instance stored in the CLS. That instance is created as soon as the CLS context is created, but can be delayed using the technique I shared above.

Hey @Papooch! Sorry for going dark for 2 weeks – I was experimenting a lot on how to integrate CLS & RLS together and eventually ended up including RLS as source code inside my project and changing implementation in few places – and it worked, but it is not perfect because I have trouble with some of the CLS-depended registrations being undefined – I am sure it could be resolved with resolveProxyProviders, but I didn't yet have time to take a detailed look at it once again.
I'll get back to you as soon as take a look it once again. Thanks for your time! Appreciate it.

I'm going to close this issue for now, feel free to tag me here with more info that I can investigate when you have some time and I'll reopen it so we can continue the discussion here.


New "M-x face" command

Add a new M-x face command to generate DevOps team compatible avatars given
uploaded files/attached URLs.
For several reasons, this command should not be opened wider than the DevOps
team:

It passes mostly untrusted URL data into ImageMagick
It allows for endpoints in cluster to be hit through arbitrary URL hitting
It runs things in a blocking context

For this reason, this command is only a bit of fun for DevOps role members and
should never be wider than that.

@ChrisLovering review comments addressed.


Refactor Everything

This PR makes a number of opinionated changes:

The buildscript has been redone to bring it up to speed with https://github.com/FabricMC/fabric-example-mod
The dependency on MixinExtras has been removed, since it's not actually used
The built-in benchmarks have been completely removed, since 100% of users will never see them, and they were taking up unnecessary space
The main entrypoint has been removed, since the above change reduced it to simply informational logging, which most users will also never see (the Modrinth page is a better place for this)
The preLaunch entrypoint has been changed to check the JVM's list of available RandomGenerators at the source, and throw a RuntimeException if it can't find the one it needs
"RandomGeneratorRandom" has been renamed to "TheFasterRandom" since it makes more sense (yes i can be pedantic at times)
TheFasterRandom now contains the RandomGeneratorFactory in a static field
TheFasterRandom#split was made to be more like that of CheckedRandom
TheFasterRandom now implements its own RandomSplitter (as a private static inner class) instead of using CheckedRandom's, which might fix #34?

ChunkRandomMixin has been removed accordingly

TheFasterRandom#nextLong now uses nextLong instead of nextInt, oops
RandomMixin#fasterrandom$createLocalInject now uses ThreadLocalRandom like the original Random class does
The icon has been optimized to make it a tiny bit smaller

Hi, few things. I'm not sure what AnOpenSauceDev thinks, but imo removing the built-in benchmarks isn't a good idea.
I also think the RandomGeneratorRandom rename is unnecessary. It was named that way to show developers that it uses RandomGenerator under the hood, and implements the Random interface.
Last but not least, removing the variables (e.x. fabric_loader_version) from the build script makes it harder to maintain, especially if we're going multiloader.

* I'm not sure what AnOpenSauceDev thinks, but imo removing the built-in benchmarks isn't a good idea.

Minecraft could easily switch to LXM if they want, or completely overhaul their random system, so I would like to still be able to easily benchmark this.

* I also think the `RandomGeneratorRandom` rename is unnecessary. It was named that way to show developers that it uses `RandomGenerator` under the hood, and implements the `Random` interface.

"TheFasterRandom" might sound cool at first, but it will probably get pretty old over time.
Also, the logger message about Faster Random being present has been removed due to the main entrypoint also being removed. Not sure if it should stay or not.
Aside from that, there isn't really anything I disagree with. I'll go test this out against BetterX when i have the time.

BetterX (I tested BetterEnd) works without the workaround mixin with this PR, and feature generation (grass, trees, etc) is now 1:1, when it wasn't previously due to nextInt being accidentally used in nextLong.

@AnOpenSauceDev That's really interesting!
Never realized that error, probably copy pasted and forgot to swap it to nextLong(). Awesome that fixing that makes feature generation 1:1.
I can make a PR to fix that real quick, and move some classes into their own packages (just to clean up the main package a bit).

Test mod sounds like a good idea, could look into that!
Maybe in the future we'd want a config for users so keeping it the same name as currently is my vote.

So, your mod benchmarking method although usually fine, in games like minecraft* doing the following "all at once" will likely be inaccurate or show thread problems instead of performance.

This wouldn't execute all at once. 99% of the time in Java, the CPU goes through a function linearly unless you directly create a new non-blocking thread. All this should do is generate a number, make the JVM discard the result, then generate the next number. The main thread is blocked by this, so the worker threads probably aren't doing much, let alone on the same core.
If you're talking about individually timing each random function, that's also not necessary, as ideally you only want to keep one generator that's the best all-round so you don't have to waste time trying to make multiple generators work nicely together.

ok

@Steveplays28

Maybe in the future we'd want a config for users so keeping it the same name as currently is my vote, even if RandomGenerator is just a shim.

That's a good point! I'll change the name back then.
@AnOpenSauceDev

Is this PR still being worked on?

Sorry, I recently got a new laptop, and haven't transferred everything over from the old one yet (including my dev environment). I'll rebase it on the current master branch soon.

Awesome. Could you check up my review comment?
Still of the opinion that template expansion for gradle.properties is nice to have and makes it easier to maintain the mod.

Could you check up my review comment?

What review comment...?

Still of the opinion that template expansion for gradle.properties is nice to have and makes it easier to maintain the mod.

The only template expansion I removed was for loader_version, which I think should be kept static - Faster Random doesn't strictly depend on any features added in newer versions of Fabric Loader, not even Mixin Extras.
Also, Quilt Loader doesn't always provide the latest version of Fabric Loader - so if Faster Random declares a dependency on a version of Fabric Loader that Quilt hasn't caught up to yet, it'll refuse to start in Quilt environments for no good reason.
The version I have it set to, >=0.14, should be adequate in most cases. It could probably even be set to *, but I haven't tested it on Fabric Loader versions below 0.14... not that they're used (or should be used!) anymore, anyway.


Fix for GHC 9

Note: I'm still testing this

@ivan-m ping. I'm happy to help maintain this library if you need a hand.

I've also added a fix for the latest version of streaming-bytestring, where the type of unfoldChunk changed.

@ivan-m Ping


Calling xslt templates by name, not match

If user wanted to use his own reporter, his own tags won`t collide with ours

Generated reports

Checked the generated reports and found no problems. Can you please give me some steps to reproduce this issue?

Please check generated reports and do something about this:

Well, generated reports attached to this PR looks malformed same way @xsmrcek illustrated.
Moreover navigation from report to other report doesn't work

Please double check all functionality of report.

Well, generated reports attached to this PR looks malformed same way @xsmrcek illustrated.
Moreover navigation from report to other report doesn't work
Please double check all functionality of report.

FYI - Caused by browser of choice (Safari works, Chrome behaves as @AmyKosinova and @xsmrcek mentioned)

Well, generated reports attached to this PR looks malformed same way @xsmrcek illustrated.
Moreover navigation from report to other report doesn't work
Please double check all functionality of report.

FYI - Caused by browser of choice (Safari works, Chrome behaves as @AmyKosinova and @xsmrcek mentioned)

Please check functionality of MS browsers too. MS Edge and IE are most used browsers to check reports in my team. (as chrome don't load reports from local drive).

Generated reports

Generated reports


Implement non-axis aligned bounding volumes

Desired feature of Exawind project. Part of the FY21Q2 milestone.

Few relevant papers.
Klosowski, J. T., Held, M., Mitchell, J. S., Sowizral, H., & Zikan, K. (1998). Efficient collision detection using bounding volume hierarchies of k-DOPs. IEEE transactions on Visualization and Computer Graphics, 4(1), 21-36.
The k-DOP algorithm.
Woop, S., Benthin, C., Wald, I., Johnson, G. S., & Tabellion, E. (2014). Exploiting Local Orientation Similarity for Efficient Ray Traversal of Hair and Fur. High Performance Graphics, 3.
This paper is about rendering hair and fur. Each individual hair Bezier curve, that is split to reduce curvature. Each split is approximated with OBB.
Zheng, Y. (2019). Computing bounding polytopes of a compact set and related problems in n-dimensional space. Computer-Aided Design, 109, 22-32.
This is a general paper about computing an optimal polytope for an object. I do not think it is of practical relevance here, but there may be some interesting tidbits there. May be of interested in the distributed setting to further trim MPI communication.
Gottschalk, S., Lin, M. C., & Manocha, D. (1996, August). OBBTree: A hierarchical structure for rapid interference detection. In Proceedings of the 23rd annual conference on Computer graphics and interactive techniques (pp. 171-180).
The original OBB paper. Section 5 is devoted to fast overlap test for OBBs. Maybe of relevance here.


QST:"Shapely only supports coordinates in X,Y order" - why does it imply lon/lat axis order?

Questions about the following statement from the manual:
https://github.com/shapely/shapely/blob/main/docs/manual.rst
It is important to note that in the example above, the always_xy kwarg is required as Shapely only supports coordinates in X,Y order, and in PROJ 6 the WGS84 CRS uses the EPSG-defined Lat/Lon coordinate order instead of the expected Lon/Lat.
I'm developing a software internally stores coordinates in the EPSG:4326 axis order - lat/lon.
I was wondering if I use Shapely do I "need" to swap the axis order when creating Shapely objects, and if so - why.
So the question is in what way does Shapely expect the GIS axis order (lon/lat) and not the EPSG:4326 axis order (lat/lon) ?
I was thinking maybe it has to do with the wkt, GeoJSON input/outputs:

wkt standard only states x, y and does not say that x=lon and y=lat (though that's usually implied in most GIS software, that use the Plate Carrée projection by default) related discussion: https://github.com/dbeaver/dbeaver/issues/5832#issuecomment-488462622
GeoJSON - https://geojson.org/geojson-spec.html#positions does state longitude, latitude, altitude for coordinates in a geographic coordinate reference system

So by saying that Shapely expects lon/lat order do we mean that we want to be automatically compatible with GeoJSON and that mostly wkt users expect lon/lat axis order, or is there anything else behind that statement ?
That being said, I do think that consistency recommending is better, at least for that sake of operations between geometries - Otherwise there are more issues as discussed in https://github.com/shapely/shapely/issues/1620, so maybe we just need a clarification if why is lon/lat expected - is it mostly for consistency?

Technically, there's no reason to impose lon/lat to x/y and you are free to treat coordinates the way you wish. However, there are cases when purely geometrical nature of shapely meets outside world. In those cases, it is useful to have an assumption in place allowing us to treat x/y as coordinates with some meaning beyond geometric.
So you don't need to swap the axis order if you are in a full control of the whole process and know what external libraries like pyproj expect but it may be more comfortable. When you assign lon=x, lat=y, you don't have to think about it anymore (mostly) within the ecosystem as other packages expect it. Also keep in mind that some functions (e.g. plot) would invert your geometries if you don't adhere to this recommendation.

In those cases, it is useful to have an assumption in place allowing us to treat x/y as coordinates with some meaning beyond geometric.

Yes, but you have to know the CRS for that - in this case EPSG:4326 (lat/lon) or CRS84 (lon/lat).
In many cases you'd have to project the geometry anyway in order to have some real world meaning like distance or area.
So the question is if Shapely "prefers" in some way CRS84 over EPSG:4326 (for instance, I think that the translation from/to GeoJSON is an example for such a preference, as GeoJSON is always lon/lat).

Also keep in mind that some functions (e.g. plot) would invert your geometries if you don't adhere to this recommendation.

Yes, that's another good point - Even though that in order to plot a geographic shape (lat/lon or lon/lat) on a planar graph (x/y) you have to project it - most GIS software by default use the Plate Carrée projection (lon=x, lat=y) so that's another reason to "not have to worry about it" if follow the recommendation.

Well, you are right but, strictly speaking, shapely doesn't know anything about projections, so the issue with EPSG:4326 (lat/lon) or CRS84 (lon/lat) is technically out of scope (with the exception of GeoJSON I/O).

So the question is if Shapely "prefers" in some way CRS84 over EPSG:4326

Apart from the GeoJSON, __geo_interface__ and similar representations that are meant to be interoperable with packages coming from outside world, shapely doesn't care. When it comes it I/O, the recommendation shall be followed to ensure others can read the data in the expected form.


Changed default padding on header.

The header gets the same padding on the left and right sides. The left side of the header gets increased padding when the js adds the
"has-drawer" class to the .mdl-layout container.
Demo: http://codepen.io/peiche/pen/rONXwx

Hey @peiche,
sorry for the long delay, we were kinda busy with the Polymer Summit.
Thanks a lot for the PR! However, I am not sure if the padding on the right side is compliant with the MD spec. Also this probably needs extra care when using scrolling tabs. In any case, this is probably not a bug but a enhancement so I’m somewhat unsure if we can even merge this before v2 as it might corrupt an existing website’s layout.
@sgomes WDYT?

@surma is right in that this would break existing layouts and thus we can't merge before 2.0 (at which point mdl-layout is going to get a major rework anyway).
The recently added mdl-layout--no-drawer-button option might actually help with your use case, although that doesn't touch spacing on the right side.

Given that this would definitely break 1.x layouts as has already been pointed out, we're going to need to wait until 2.0 before changes can be made here. I would explore the option Sergio mentioned above, but if this is doesn't give you what you're after it may be useful for us to consider an additional option which does touch spacing on the right side.

Should a v2 branch be created in order to merge this PR?

No, all main work is done in master. With versions we are patching, like 1.0 there was a mdl-1.0 branch for continuing to push updates there. Master is currently focusing on 1.1, not 2.0.

Hello there! We're currently doing some housecleaning on the repository to prepare for the big changes to v2, and part of this is to close the mdl-1.1 and mdl-1.2 branches, and move all 1.1 and 1.2 PRs to the mdl-1.x branch. Since it's not possible to target PRs at a new branch, we're closing this PR and asking you to reopen against mdl-1.x if you think it's still valid.
Thank you!

@peiche, is this PR still valid?

It is no longer valid. V2 is a complete rewrite of layout, so this code won't even be ported.


[BUG] Another issue with the temp_state buffer, but only witch batch of 64

Describe the bug
While predicting in batches using TheBloke/Llama-2-7b-Chat-GPTQ with revision gptq-4bit-32g-actorder_True and while using exllama_set_max_input_length(), the inference breaks with a batch of 64 but not, for example, 32 and 128.
The error I'm getting:
The temp_state buffer is too small in the exllama backend. Please call the exllama_set_max_input_length function to increase the buffer size. Example:
from auto_gptq import exllama_set_max_input_length
model = exllama_set_max_input_length(model, 4096)

I'm setting the max input length by multiplying 4096 by the batch size. I tried to double this size to match what I'm setting for a batch of 128, but the error is still being raised.
Hardware details
I'm running this on RTX 8000.
Software version
Ubuntu 22.04, CUDA 11.8, cuDNN 8, Python 3.11, AutoGPTQ from GitHub, newest accelerate, transformers, PyTorch, etc
To Reproduce
Code to reproduce:
from transformers import AutoTokenizer, pipeline, logging
from auto_gptq import AutoGPTQForCausalLM, exllama_set_max_input_length

tokenizer = AutoTokenizer.from_pretrained(
    "TheBloke/Llama-2-7b-Chat-GPTQ",
    revision="gptq-4bit-32g-actorder_True",
    use_fast=True
)
model = AutoGPTQForCausalLM.from_quantized(
    "TheBloke/Llama-2-7b-Chat-GPTQ",
    revision="gptq-4bit-32g-actorder_True",
    inject_fused_attention=False,
    use_safetensors=True,
    trust_remote_code=True,
    device="cuda:0",
    use_triton=False,
    quantize_config=None
)

logging.set_verbosity(logging.CRITICAL)

batch_sizes = [32, 64, 128]
prompt = "Tell me about AI"

for batch_size in batch_sizes:

    print('--------')
    print('batch size:', batch_size)

    model = exllama_set_max_input_length(model, 4096 * batch_size)

    pipe = pipeline(
        "text-generation",
        model=model,
        tokenizer=tokenizer,
        max_new_tokens=200,
        do_sample=True,
        top_k=10,
        num_return_sequences=1,
        pad_token_id=tokenizer.eos_token_id,
        batch_size=batch_size
    )
    pipe.tokenizer.pad_token_id = model.config.eos_token_id

    try:
        pipe([prompt] * batch_size)
    except RuntimeError as e:
        print(e)
        continue

    print('OK')

And the output of this code:
--------
batch size: 32
OK
--------
batch size: 64
The temp_state buffer is too small in the exllama backend. Please call the exllama_set_max_input_length function to increase the buffer size. Example:
from auto_gptq import exllama_set_max_input_length
model = exllama_set_max_input_length(model, 4096)
--------
batch size: 128
OK

Expected behavior
The code works with a batch of 64 (as it works with a batch of 128)

@daniel-kukiela @wj210 there is indeed an overflow issue. Thank you for reporting, will fix!

Sounds like quite huge buffers though, the memory footprint is maybe big compared to the model size, would have to check:
batch size: 32
buffers_size[max_inner_outer_dim] 11008
max_input_length 131072
OK
--------
batch size: 64
buffers_size[max_inner_outer_dim] 11008
max_input_length 262144
The temp_state buffer is too small in the exllama backend. Please call the exllama_set_max_input_length function to increase the buffer size. Example:
from auto_gptq import exllama_set_max_input_length
model = exllama_set_max_input_length(model, 4096)
--------
batch size: 128
buffers_size[max_inner_outer_dim] 11008
max_input_length 524288

Fixed in https://github.com/PanQiWei/AutoGPTQ/pull/386


Optmize UI for Custom CC Oregen

Forge:2613
Malisis: 6.3.2
Build: 822
-Tooltips can go off-screen
-When changing MC screen size, list goes blank until you set to what it was before (maximize button) or scroll
-Huge memory use increase, but drops and gets stable after loading all entities at least once
-Some blocks are invisible
-Its loading multiblock entities too
Happens with other modded block entities too, from what i noticed, its the ones that change when connected to another (i.e. CoFH thermal conduits)
Screenshots:

Tooltips can go off-screen

MalisisCore bug

When changing MC screen size, list goes blank until you set to what it was before (maximize button) or scroll

Probably  a simple mistake, but will take a while to figure it out

Huge memory use increase, but drops and gets stable after loading all entities at least once

Not much I can do about it

Some blocks are invisible

Invisible block = block that crashes but cubic chunks ignores the error. See the log for details and report to mod authors

Its loading multiblock entities too

There is no easy way for me to detect them. The best I can try to do is clipping the rendering and remove clipping when hovered, but I first have to figure out how to do that.

I think being able to type in the name of the block would be nice. At least until we have a search function.


Admin UI Press Enter to Search for Meetings

Currently if you want to search for a meeting in the admin interface you have to smash the 'Search for Meetings' button. I hit enter key all the time to nothing :( , it would be nice if the enter key could also complete the search.
This seems to only not work for Firefox.

I use the Enter key all the time. I specifically designed it to use it.
It can be non-obvious when it is working, as the only indication is the button is replaced by the throbber, which can be beneath the fold.

Updated comment, Seems to only not work for Firefox im using 62.0.3 Mac OS X

This is fixed in 2.12.0

word just tested, works great. thanks.


Display all console command after interactive mode (feature request)

I would like to see entire command line command after interactive mode, so I can save it (maybe edit) and use it later avoiding interactive mode for repetitive operations

Implemented in #39


OSError: SavedModel file does not exist at: model\mymodel.h5/{saved_model.pbtxt|saved_model.pb}

Please make sure that this is a build/installation issue. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:build_template
System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): windows 10 64bit
TensorFlow version: 2.2
Python version: 3.7

I use tensorflow 2.2 with python 3.7 and windows 10. I import a training model with tensorlfow 1.x. When I import with the terminal everything is fine. But when I freeze my code, the file is no longer found.
Here are my files:
main.py
   \ codes
     import.py
     \ model
        __init__.py
        mymodel.h5

My import.py:
from .model import mymodel

from tensorflow.keras.models import load_model
from tensorflow.keras.preprocessing import image

model = load_model(mymodel)

My init.py code:
from os import path
import sys

if getattr(sys, 'frozen', False):
    MODEL_DIRECTORY = path.join(path.dirname(sys.executable), 'model')
else:
    MODEL_DIRECTORY = path.dirname(__file__)

mymodel= path.join(MODEL_DIRECTORY, 'mymodel.h5')

The error I got:
SavedModel file does not exist at:
exe.win-amd64-3.7\model\mymode

@Tpeyre,
Changing the code from from .model import mymodel to from model import mymodel in the import.py file seems to work.
I was able to run the code without any issues, please find the gist of it here.

@amahendrakar Thank you for your reply. I tried the code, but I still get the same error. I checked if the file existed with the following code:
from pathlib import Path
if mylodel.is_file():
print('exists')
The file exists. I tried with your solution, it doesn't work.
In fact, I changed a line of code in tensorflow.ini.py, can that explain the problem?
_site_packages_dirs = []
if getattr(_sys, 'frozen', False):
_sys.path.insert(0,(_os.path.dirname(_sys.executable) + '\' + 'lib'))
_site_packages_dirs += [_p for _p in _sys.path if 'lib' in _p]
else:
_site_packages_dirs += [_site.USER_SITE]
_site_packages_dirs += [_p for _p in _sys.path if 'site-packages' in _p]
_site_packages_dirs += [_p for _p in _sys.path if 'lib' in _p]


Remove the extra two "of" words from Manifesto content.

Remove the extra two "of" words from Manifesto content.

Warnings

:warning:

Please include an updated CHANGELOG.md file.This way we can keep track of all the contributions.

  Generated by :no_entry_sign: dangerJS


where to choose an image

...

Already closed in #3

Feel free to use our workable implementation of DragGAN. https://github.com/Zeqiang-Lai/DragGAN


Error when trying to start a task without closing the previous task window

First of all thanks for the great plugin! Integrates beautifully with existing tools.
The error occurs if I start the second task directly from another task window (without closing it).
Error:
E5108: Error executing lua ...packer/opt/telescope.nvim/lua/telescope/actions/init.lua:348: Invalid window id: 1038
stack traceback:
        [C]: in function 'nvim_win_get_cursor'
        ...packer/opt/telescope.nvim/lua/telescope/actions/init.lua:348: in function 'run_replace_or_original'
        ...k/packer/opt/telescope.nvim/lua/telescope/actions/mt.lua:65: in function 'key_func'
        ...ack/packer/opt/telescope.nvim/lua/telescope/mappings.lua:242: in function 'execute_keymap'
        [string ":lua"]:1: in main chunk

Steps to reproduce:

require("telescope").extensions.toggletasks.spawn() and start some task
Do not close the current window, just open the spawn window in step 3
require("telescope").extensions.toggletasks.spawn() and start another task
an error occurs

Thanks for the report. I did some debugging and it looks like it only occurs when using floating toggleterm windows. This is what happens:

We are in "task1" floating window opened by the first spawn.
Calling spawn() starts telescope picker.
Telescope first saves original_win_id which is the id of "task1" window.
Then Telescope opens its windows, which triggers WinLeave from "task1" window, which closes "task1" floating window.
After selecting new task to spawn we call action.close(prompt_buf) to first close telescope windows (that's how telescope actions have to be implemented).
Telescope then tries to restore the original window, but this is "task1" window which has already been closed in 4.

So it looks like this is a telescope issue. I'll create a PR with a fix in telescope repo.

@blasterpistol please verify that https://github.com/nvim-telescope/telescope.nvim/pull/1982 fixes the problem.


gRPC upstream with TLS doens't work

Title: gRPC upstream with TLS doens't work
Description:
I tried to setup Envoy proxy to talk to gRPC service deployed in Google Cloud Run, it did not work.
Repro steps:

deployed a grpc service to Google Cloud Run and use a gRpc client to verify it works.
then deploy a envoy proxy with upstream to the Cloud Run gRPC service.
point same gRPC client to the envoy listening port. (without TLS).
the grpc call fails with error "upstream connect error or disconnect/reset before headers. reset reason: connection termination"

Config:
{
  "staticResources": {
    "listeners": [
      {
        "address": {
          "socketAddress": {
            "address": "<IP_ADDRESS>",
            "portValue": 8080
          }
        },
        "filterChains": [
          {
            "filters": [
              {
                "name": "envoy.http_connection_manager",
                "typedConfig": {
                  "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager",
                  "statPrefix": "ingress_http",
                  "routeConfig": {
                    "name": "local_route",
                    "virtualHosts": [
                      {
                        "name": "backend",
                        "domains": [
                          "*"
                        ],
                        "routes": [
                          {
                            "match": {
                              "prefix": "/"
                            },
                            "route": {
                              "cluster": "backend",
                              "hostRewrite": "grpc-echo-oxouww7xzq-uc.a.run.app"
                            }
                          }
                        ]
                      }
                    ]
                  },
                  "httpFilters": [
                    {
                      "name": "envoy.router",
                      "typedConfig": {
                        "@type": "type.googleapis.com/envoy.config.filter.http.router.v2.Router"
                      }
                    }
                  ]
                }
              }
            ]
          }
        ]
      }
    ],
   "clusters": [
      {
        "name": "backend",
        "type": "STRICT_DNS",
        "connectTimeout": "20s",
        "loadAssignment": {
          "clusterName": "grpc-echo-oxouww7xzq-uc.a.run.app",
          "endpoints": [
            {
              "lbEndpoints": [
                {
                  "endpoint": {
                    "address": {
                      "socketAddress": {
                        "address": "grpc-echo-oxouww7xzq-uc.a.run.app",
                        "portValue": 443
                      }
                    }
                  }
                }
              ]
            }
          ]
        },
        "dnsLookupFamily": "V4_ONLY",
        "transportSocket": {
          "name": "envoy.transport_sockets.tls",
          "typedConfig": {
            "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext",
            "commonTlsContext": {
              "validationContext": {
                "trustedCa": {
                  "filename": "/etc/ssl/certs/ca-certificates.crt"
                }
              }
            },
            "sni": "grpc-echo-oxouww7xzq-uc.a.run.app"
          }
        },
        "http2ProtocolOptions": {}
      }
    ]
  },
  "admin": {
     "access_log_path": "/dev/null",
     "address": {
        "socket_address": {
            "address": "<IP_ADDRESS>",
            "port_value": 8001
         }
     }
  }
}

Logs:
The log with "trace" level
[2020-01-13 18:58:11.892][20584][debug][conn_handler] [external/envoy/source/server/connection_handler_impl.cc:335] [C0] new connection
[2020-01-13 18:58:11.892][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C0] socket event: 2
[2020-01-13 18:58:11.892][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C0] write ready
[2020-01-13 18:58:11.892][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C0] socket event: 3
[2020-01-13 18:58:11.892][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C0] write ready
[2020-01-13 18:58:11.892][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:496] [C0] read ready
[2020-01-13 18:58:11.892][20584][trace][connection] [external/envoy/source/common/network/raw_buffer_socket.cc:24] [C0] read returns: 406
[2020-01-13 18:58:11.892][20584][trace][connection] [external/envoy/source/common/network/raw_buffer_socket.cc:38] [C0] read error: Resource temporarily unavailable
[2020-01-13 18:58:11.892][20584][debug][http2] [external/envoy/source/common/http/http2/codec_impl.cc:912] [C0] setting stream-level initial window size to 268435456
[2020-01-13 18:58:11.892][20584][debug][http2] [external/envoy/source/common/http/http2/codec_impl.cc:934] [C0] updating connection-level initial window size to 268435456
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:405] [C0] dispatching 406 bytes
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:468] [C0] about to recv frame type=4, flags=0
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:1190] [C0] track inbound frame type=4 flags=0 length=36 padding_length=0
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:483] [C0] recv frame type=4
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:468] [C0] about to recv frame type=8, flags=0
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:1190] [C0] track inbound frame type=8 flags=0 length=4 padding_length=0
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:483] [C0] recv frame type=8
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:468] [C0] about to recv frame type=6, flags=0
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:1190] [C0] track inbound frame type=6 flags=0 length=8 padding_length=0
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:483] [C0] recv frame type=6
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:468] [C0] about to recv frame type=1, flags=4
[2020-01-13 18:58:11.892][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:1190] [C0] track inbound frame type=1 flags=4 length=243 padding_length=0
[2020-01-13 18:58:11.892][20584][debug][http] [external/envoy/source/common/http/conn_manager_impl.cc:259] [C0] new stream
[2020-01-13 18:58:11.893][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:483] [C0] recv frame type=1
[2020-01-13 18:58:11.894][20584][debug][http] [external/envoy/source/common/http/conn_manager_impl.cc:708] [C0][S9716606764335229993] request headers complete (end_stream=false):
':scheme', 'http'
':method', 'POST'
':authority', 'localhost:8080'
':path', '/test.grpc.Test/Echo'
'te', 'trailers'
'content-type', 'application/grpc'
'user-agent', 'grpc-c++/1.22.0-dev grpc-c/7.0.0 (linux; chttp2; gale)'
'grpc-accept-encoding', 'identity,deflate,gzip'
'accept-encoding', 'identity,gzip'

[2020-01-13 18:58:11.894][20584][debug][router] [external/envoy/source/common/router/router.cc:438] [C0][S9716606764335229993] cluster 'backend' match for URL '/test.grpc.Test/Echo'
[2020-01-13 18:58:11.894][20584][debug][router] [external/envoy/source/common/router/router.cc:553] [C0][S9716606764335229993] router decoding headers:
':scheme', 'https'
':method', 'POST'
':authority', 'grpc-echo-oxouww7xzq-uc.a.run.app'
':path', '/test.grpc.Test/Echo'
'te', 'trailers'
'content-type', 'application/grpc'
'user-agent', 'grpc-c++/1.22.0-dev grpc-c/7.0.0 (linux; chttp2; gale)'
'grpc-accept-encoding', 'identity,deflate,gzip'
'accept-encoding', 'identity,gzip'
'x-forwarded-proto', 'http'
'x-request-id', 'ab412298-cf6d-46b0-83f5-177b1cec9006'
'x-envoy-expected-rq-timeout-ms', '15000'

[2020-01-13 18:58:11.894][20584][debug][client] [external/envoy/source/common/http/codec_client.cc:31] [C1] connecting
[2020-01-13 18:58:11.894][20584][debug][connection] [external/envoy/source/common/network/connection_impl.cc:707] [C1] connecting to <IP_ADDRESS>:443
[2020-01-13 18:58:11.894][20584][debug][connection] [external/envoy/source/common/network/connection_impl.cc:716] [C1] connection in progress
[2020-01-13 18:58:11.894][20584][debug][http2] [external/envoy/source/common/http/http2/codec_impl.cc:912] [C1] setting stream-level initial window size to 268435456
[2020-01-13 18:58:11.894][20584][debug][http2] [external/envoy/source/common/http/http2/codec_impl.cc:934] [C1] updating connection-level initial window size to 268435456
[2020-01-13 18:58:11.894][20584][debug][pool] [external/envoy/source/common/http/conn_pool_base.cc:20] queueing request due to no available connections
[2020-01-13 18:58:11.894][20584][trace][http] [external/envoy/source/common/http/conn_manager_impl.cc:959] [C0][S9716606764335229993] decode headers called: filter=0x562c8093cf00 status=1
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:468] [C0] about to recv frame type=8, flags=0
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:1190] [C0] track inbound frame type=8 flags=0 length=4 padding_length=0
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:483] [C0] recv frame type=8
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:468] [C0] about to recv frame type=0, flags=1
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:483] [C0] recv frame type=0
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:1190] [C0] track inbound frame type=0 flags=1 length=20 padding_length=0
[2020-01-13 18:58:11.894][20584][debug][http] [external/envoy/source/common/http/conn_manager_impl.cc:1250] [C0][S9716606764335229993] request end stream
[2020-01-13 18:58:11.894][20584][trace][router] [external/envoy/source/common/router/router.cc:1478] [C0][S9716606764335229993] buffering 20 bytes
[2020-01-13 18:58:11.894][20584][trace][http] [external/envoy/source/common/http/conn_manager_impl.cc:1098] [C0][S9716606764335229993] decode data called: filter=0x562c8093cf00 status=3
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:468] [C0] about to recv frame type=8, flags=0
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:1190] [C0] track inbound frame type=8 flags=0 length=4 padding_length=0
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:483] [C0] recv frame type=8
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:424] [C0] dispatched 406 bytes
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:666] [C0] about to send frame type=4, flags=0
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C0] send data: bytes=15
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C0] writing 15 bytes, end_stream false
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C0] sent frame type=4
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:666] [C0] about to send frame type=4, flags=1
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C0] send data: bytes=9
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C0] writing 9 bytes, end_stream false
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C0] sent frame type=4
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:666] [C0] about to send frame type=6, flags=1
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C0] send data: bytes=17
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C0] writing 17 bytes, end_stream false
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C0] sent frame type=6
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:666] [C0] about to send frame type=8, flags=0
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C0] send data: bytes=13
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C0] writing 13 bytes, end_stream false
[2020-01-13 18:58:11.894][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C0] sent frame type=8
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C0] socket event: 2
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C0] write ready
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/raw_buffer_socket.cc:67] [C0] write returns: 54
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C0] socket event: 2
[2020-01-13 18:58:11.894][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C0] write ready
[2020-01-13 18:58:11.897][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C1] socket event: 2
[2020-01-13 18:58:11.897][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C1] write ready
[2020-01-13 18:58:11.898][20584][debug][connection] [external/envoy/source/common/network/connection_impl.cc:555] [C1] connected
[2020-01-13 18:58:11.898][20584][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:191] [C1] handshake expecting read
[2020-01-13 18:58:11.899][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C1] socket event: 3
[2020-01-13 18:58:11.899][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C1] write ready
[2020-01-13 18:58:11.899][20584][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:191] [C1] handshake expecting read
[2020-01-13 18:58:11.899][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:496] [C1] read ready
[2020-01-13 18:58:11.899][20584][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:191] [C1] handshake expecting read
[2020-01-13 18:58:11.899][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C1] socket event: 3
[2020-01-13 18:58:11.899][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C1] write ready
[2020-01-13 18:58:11.899][20584][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:176] [C1] handshake complete
[2020-01-13 18:58:11.900][20584][debug][client] [external/envoy/source/common/http/codec_client.cc:69] [C1] connected
[2020-01-13 18:58:11.900][20584][debug][pool] [external/envoy/source/common/http/http2/conn_pool.cc:98] [C1] creating stream
[2020-01-13 18:58:11.900][20584][debug][router] [external/envoy/source/common/router/router.cc:1621] [C0][S9716606764335229993] pool ready
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C1] send data: bytes=24
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C1] writing 24 bytes, end_stream false
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:666] [C1] about to send frame type=4, flags=0
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C1] send data: bytes=21
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C1] writing 21 bytes, end_stream false
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C1] sent frame type=4
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:666] [C1] about to send frame type=8, flags=0
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C1] send data: bytes=13
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C1] writing 13 bytes, end_stream false
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C1] sent frame type=8
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:666] [C1] about to send frame type=1, flags=4
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C1] send data: bytes=253
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C1] writing 253 bytes, end_stream false
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C1] sent frame type=1
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C1] writing 29 bytes, end_stream false
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C1] sent frame type=0
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C1] write ready
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:259] [C1] ssl write returns: 340
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:496] [C1] read ready
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:80] [C1] ssl read returns: -1
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:155] [C1] ssl read 0 bytes into 0 slices
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C1] socket event: 2
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C1] write ready
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:458] [C1] socket event: 3
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:546] [C1] write ready
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:496] [C1] read ready
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:80] [C1] ssl read returns: 1379
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:80] [C1] ssl read returns: 333
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:80] [C1] ssl read returns: 0
[2020-01-13 18:58:11.900][20584][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:226] [C1]
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:155] [C1] ssl read 1712 bytes into 1 slices
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:405] [C1] dispatching 1712 bytes
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:424] [C1] dispatched 1712 bytes
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:666] [C1] about to send frame type=7, flags=0
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:720] [C1] send data: bytes=34
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/common/network/connection_impl.cc:394] [C1] writing 34 bytes, end_stream false
[2020-01-13 18:58:11.900][20584][trace][http2] [external/envoy/source/common/http/http2/codec_impl.cc:608] [C1] sent frame type=7
[2020-01-13 18:58:11.900][20584][debug][http2] [external/envoy/source/common/http/http2/codec_impl.cc:611] [C1] sent goaway code=1
[2020-01-13 18:58:11.900][20584][debug][client] [external/envoy/source/common/http/codec_client.cc:124] [C1] protocol error: The user callback function failed
[2020-01-13 18:58:11.900][20584][debug][connection] [external/envoy/source/common/network/connection_impl.cc:100] [C1] closing data_to_write=34 type=1
[2020-01-13 18:58:11.900][20584][trace][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:259] [C1] ssl write returns: 34
[2020-01-13 18:58:11.900][20584][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:298] [C1] SSL shutdown: rc=0
[2020-01-13 18:58:11.900][20584][debug][connection] [external/envoy/source/extensions/transport_sockets/tls/ssl_socket.cc:226] [C1]
[2020-01-13 18:58:11.900][20584][debug][connection] [external/envoy/source/common/network/connection_impl.cc:189] [C1] closing socket: 1
[2020-01-13 18:58:11.900][20584][debug][client] [external/envoy/source/common/http/codec_client.cc:88] [C1] disconnect. resetting 1 pending requests
[2020-01-13 18:58:11.900][20584][debug][client] [external/envoy/source/common/http/codec_client.cc:111] [C1] request reset
[2020-01-13 18:58:11.900][20584][trace][main] [external/envoy/source/common/event/dispatcher_impl.cc:160] item added to deferred deletion list (size=1)
[2020-01-13 18:58:11.900][20584][debug][pool] [external/envoy/source/common/http/http2/conn_pool.cc:236] [C1] destroying stream: 0 remaining
[2020-01-13 18:58:11.900][20584][debug][router] [external/envoy/source/common/router/router.cc:914] [C0][S9716606764335229993] upstream reset: reset reason connection termination
[2020-01-13 18:58:11.900][20584][debug][http] [external/envoy/source/common/http/conn_manager_impl.cc:1347] [C0][S9716606764335229993] Sending local reply with details upstream_reset_before_response_started{connection termination}
[2020-01-13 18:58:11.900][20584][debug][http] [external/envoy/source/common/http/conn_manager_impl.cc:1545] [C0][S9716606764335229993] encoding headers via codec (end_stream=true):
':status', '200'
'content-type', 'application/grpc'
'grpc-status', '14'
'grpc-message', 'upstream connect error or disconnect/reset before headers. reset reason: connection termination'
'date', 'Mon, 13 Jan 2020 18:58:11 GMT'
'server', 'envoy'

@lizan , @PiotrSikora , @htuch could you help?  Thanks

@qiwzhang it looks that TLS and HTTP/2 connections are established correctly, but then Envoy sends GOAWAY frame to upstream and terminates connection, for some reason. I cannot tell from the logs what's wrong.

@PiotrSikora will a tcpdump help?  I can capture a tcpdump for you

No, tcpdump output will be encrypted. Do you have logs from the Cloud Run instance?

no much log from the instance.  It did not show anything from the cloud run instance.

If a grpc call bypassing envoy proxy,  it will have a success log entry in the instance.  A grpc request with the proxy doesn't show anything in the instance log.

@PiotrSikora @lizan
Here is trace log with more nghttp2 log entries:
[2020-01-13 23:21:31.583][32261][trace][connection] [source/common/network/connection_impl.cc:466] [C1] socket event: 2
[2020-01-13 23:21:31.583][32261][trace][connection] [source/common/network/connection_impl.cc:554] [C1] write ready
[2020-01-13 23:21:31.584][32261][debug][connection] [source/common/network/connection_impl.cc:563] [C1] connected
[2020-01-13 23:21:31.584][32261][debug][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:191] [C1] handshake expecting read
[2020-01-13 23:21:31.585][32261][trace][connection] [source/common/network/connection_impl.cc:466] [C1] socket event: 3
[2020-01-13 23:21:31.585][32261][trace][connection] [source/common/network/connection_impl.cc:554] [C1] write ready
[2020-01-13 23:21:31.587][32261][debug][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:191] [C1] handshake expecting read
[2020-01-13 23:21:31.587][32261][trace][connection] [source/common/network/connection_impl.cc:504] [C1] read ready
[2020-01-13 23:21:31.587][32261][debug][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:191] [C1] handshake expecting read
[2020-01-13 23:21:31.587][32261][trace][connection] [source/common/network/connection_impl.cc:466] [C1] socket event: 3
[2020-01-13 23:21:31.587][32261][trace][connection] [source/common/network/connection_impl.cc:554] [C1] write ready
[2020-01-13 23:21:31.588][32261][debug][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:176] [C1] handshake complete
[2020-01-13 23:21:31.588][32261][debug][client] [source/common/http/codec_client.cc:72] [C1] connected
[2020-01-13 23:21:31.588][32261][debug][pool] [source/common/http/http2/conn_pool.cc:97] [C1] creating stream
[2020-01-13 23:21:31.588][32261][debug][router] [source/common/router/router.cc:1711] [C0][S11753050428919145210] pool ready
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/codec_impl.cc:710] [C1] send data: bytes=24
[2020-01-13 23:21:31.588][32261][trace][connection] [source/common/network/connection_impl.cc:402] [C1] writing 24 bytes, end_stream false
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: end transmission of client magic
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: reset nghttp2_active_outbound_item
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: aob->item = (nil)
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: next frame: payloadlen=12, type=4, flags=0x00, stream_id=0
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/codec_impl.cc:656] [C1] about to send frame type=4, flags=0
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: start transmitting frame type=4, length=21
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/codec_impl.cc:710] [C1] send data: bytes=21
[2020-01-13 23:21:31.588][32261][trace][connection] [source/common/network/connection_impl.cc:402] [C1] writing 21 bytes, end_stream false
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: end transmission of a frame
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/codec_impl.cc:604] [C1] sent frame type=4
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: reset nghttp2_active_outbound_item
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: aob->item = 0x55930fa0a460
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: next frame: payloadlen=4, type=8, flags=0x00, stream_id=0
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/codec_impl.cc:656] [C1] about to send frame type=8, flags=0
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: start transmitting frame type=8, length=13
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/codec_impl.cc:710] [C1] send data: bytes=13
[2020-01-13 23:21:31.588][32261][trace][connection] [source/common/network/connection_impl.cc:402] [C1] writing 13 bytes, end_stream false
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: end transmission of a frame
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/codec_impl.cc:604] [C1] sent frame type=8
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: reset nghttp2_active_outbound_item
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: aob->item = 0x55930fa0a500
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: dep_add dep_stream(0x55930fc18020)=0, stream(0x55930fa125a0)=1
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating :scheme: https
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: name/value match index=6
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit indexed index=6, 1 bytes
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating :method: POST
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: name/value match index=2
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit indexed index=2, 1 bytes
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating :authority: grpc-echo-oxouww7xzq-uc.a.run.app
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: name match index=0
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit indname index=0, valuelen=33, indexing_mode=0
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=grpc-echo-oxouww7xzq-uc.a.run.app, length=33, huffman=1, encoded_length=25
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating :path: /test.grpc.Test/Echo
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: name match index=3
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit indname index=3, valuelen=20, indexing_mode=1
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=/test.grpc.Test/Echo, length=20, huffman=1, encoded_length=14
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating te: trailers
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit newname namelen=2, valuelen=8, indexing_mode=0
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=te, length=2, huffman=0, encoded_length=2
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=trailers, length=8, huffman=1, encoded_length=6
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating content-type: application/grpc
[2020-01-13 23:21:31.588][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: name match index=30
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit indname index=30, valuelen=16, indexing_mode=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=application/grpc, length=16, huffman=1, encoded_length=11
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating user-agent: grpc-c++/1.22.0-dev grpc-c/7.0.0 (linux; chttp2; gale)
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: name match index=57
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit indname index=57, valuelen=54, indexing_mode=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=grpc-c++/1.22.0-dev grpc-c/7.0.0 (linux; chttp2; gale), length=54, huffman=1, encoded_length=42
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating grpc-accept-encoding: identity,deflate,gzip
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit newname namelen=20, valuelen=21, indexing_mode=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=grpc-accept-encoding, length=20, huffman=1, encoded_length=14
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=identity,deflate,gzip, length=21, huffman=1, encoded_length=16
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating accept-encoding: identity,gzip
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: name match index=15
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit indname index=15, valuelen=13, indexing_mode=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=identity,gzip, length=13, huffman=1, encoded_length=10
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating x-forwarded-proto: http
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit newname namelen=17, valuelen=4, indexing_mode=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=x-forwarded-proto, length=17, huffman=1, encoded_length=13
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=http, length=4, huffman=1, encoded_length=3
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating x-request-id: 0275133f-c83b-47be-8b18-4cfa9c4d884a
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit newname namelen=12, valuelen=36, indexing_mode=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=x-request-id, length=12, huffman=1, encoded_length=9
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=0275133f-c83b-47be-8b18-4cfa9c4d884a, length=36, huffman=1, encoded_length=26
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: deflating x-envoy-expected-rq-timeout-ms: 15000
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit newname namelen=30, valuelen=5, indexing_mode=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=x-envoy-expected-rq-timeout-ms, length=30, huffman=1, encoded_length=22
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: emit string str=15000, length=5, huffman=1, encoded_length=4
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: deflatehd: all input name/value pairs were deflated
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: HEADERS/PUSH_PROMISE, payloadlen=244
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: before padding, HEADERS serialized in 253 bytes
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: padding selected: payloadlen=244, padlen=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: padlen = 0, nothing to do
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: HEADERS finally serialized in 253 bytes
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: next frame: payloadlen=244, type=1, flags=0x04, stream_id=1
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/codec_impl.cc:656] [C1] about to send frame type=1, flags=4
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: start transmitting frame type=1, length=253
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/codec_impl.cc:710] [C1] send data: bytes=253
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:402] [C1] writing 253 bytes, end_stream false
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: end transmission of a frame
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/codec_impl.cc:604] [C1] sent frame type=1
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: stream=1 attach item=0x55930fa0a500
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: stream=1 obq push cycle=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: push stream 1 to stream 0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: reset nghttp2_active_outbound_item
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: aob->item = 0x55930fa0a320
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: remote windowsize connection=65535, remote maxframsize=16384, stream(id 1)=65535
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: available window=16384
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: DATA postponed due to Data transfer deferred
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: stream=1 defer item=0x55930fa0a500 cause=08
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: remove stream 1 from stream 0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: reset nghttp2_active_outbound_item
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: aob->item = (nil)
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: frame transmission deferred
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: stream=1 resume item=0x55930fa0a500 flags=08
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: stream=1 obq push cycle=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: push stream 1 to stream 0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: remote windowsize connection=65535, remote maxframsize=16384, stream(id 1)=65535
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: available window=16384
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: padlen = 0, nothing to do
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: stream=1 obq resched cycle=320
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: next frame: DATA
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: no copy DATA
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:402] [C1] writing 29 bytes, end_stream false
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: stream=1 detach item=0x55930fa0a500
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: remove stream 1 from stream 0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/codec_impl.cc:604] [C1] sent frame type=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: reset nghttp2_active_outbound_item
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: aob->item = 0x55930fa0a500
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:554] [C1] write ready
[2020-01-13 23:21:31.589][32261][trace][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:259] [C1] ssl write returns: 340
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:504] [C1] read ready
[2020-01-13 23:21:31.589][32261][trace][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:80] [C1] ssl read returns: -1
[2020-01-13 23:21:31.589][32261][trace][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:155] [C1] ssl read 0 bytes into 0 slices
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:466] [C1] socket event: 2
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:554] [C1] write ready
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:466] [C1] socket event: 3
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:554] [C1] write ready
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:504] [C1] read ready
[2020-01-13 23:21:31.589][32261][trace][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:80] [C1] ssl read returns: 1379
[2020-01-13 23:21:31.589][32261][trace][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:80] [C1] ssl read returns: 333
[2020-01-13 23:21:31.589][32261][trace][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:80] [C1] ssl read returns: 0
[2020-01-13 23:21:31.589][32261][debug][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:226] [C1]
[2020-01-13 23:21:31.589][32261][trace][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:155] [C1] ssl read 1712 bytes into 1 slices
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/codec_impl.cc:405] [C1] dispatching 1712 bytes
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: recv: connection recv_window_size=0, local_window=268435456
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: recv: [IB_READ_FIRST_SETTINGS]
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/codec_impl.cc:424] [C1] dispatched 1712 bytes
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: next frame: payloadlen=25, type=7, flags=0x00, stream_id=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/codec_impl.cc:656] [C1] about to send frame type=7, flags=0
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: start transmitting frame type=7, length=34
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/codec_impl.cc:710] [C1] send data: bytes=34
[2020-01-13 23:21:31.589][32261][trace][connection] [source/common/network/connection_impl.cc:402] [C1] writing 34 bytes, end_stream false
[2020-01-13 23:21:31.589][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: stream: adjusting kept idle streams num_idle_streams=0, max=100
[2020-01-13 23:21:31.590][32261][trace][http2] [source/common/http/http2/nghttp2.cc:25] nghttp2: send: end transmission of a frame
[2020-01-13 23:21:31.590][32261][trace][http2] [source/common/http/http2/codec_impl.cc:604] [C1] sent frame type=7
[2020-01-13 23:21:31.590][32261][debug][http2] [source/common/http/http2/codec_impl.cc:607] [C1] sent goaway code=1
[2020-01-13 23:21:31.590][32261][debug][client] [source/common/http/codec_client.cc:127] [C1] protocol error: The user callback function failed
[2020-01-13 23:21:31.590][32261][debug][connection] [source/common/network/connection_impl.cc:101] [C1] closing data_to_write=34 type=1
[2020-01-13 23:21:31.590][32261][trace][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:259] [C1] ssl write returns: 34
[2020-01-13 23:21:31.590][32261][debug][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:298] [C1] SSL shutdown: rc=0
[2020-01-13 23:21:31.590][32261][debug][connection] [source/extensions/transport_sockets/tls/ssl_socket.cc:226] [C1]
[2020-01-13 23:21:31.590][32261][debug][connection] [source/common/network/connection_impl.cc:192] [C1] closing socket: 1
[2020-01-13 23:21:31.590][32261][debug][client] [source/common/http/codec_client.cc:91] [C1] disconnect. resetting 1 pending requests
[2020-01-13 23:21:31.590][32261][debug][client] [source/common/http/codec_client.cc:114] [C1] request reset
[2020-01-13 23:21:31.590][32261][trace][main] [source/common/event/dispatcher_impl.cc:162] item added to deferred deletion list (size=1)
[2020-01-13 23:21:31.590][32261][debug][pool] [source/common/http/http2/conn_pool.cc:232] [C1] destroying stream: 0 remaining
[2020-01-13 23:21:31.590][32261][debug][router] [source/common/router/router.cc:990] [C0][S11753050428919145210] upstream reset: reset reason connection termination
[2020-01-13 23:21:31.591][32261][debug][http] [source/common/http/conn_manager_impl.cc:1406] [C0][S11753050428919145210] Sending local reply with details upstream_reset_before_response_started{connection termination}
[2020-01-13 23:21:31.591][32261][debug][http] [source/common/http/conn_manager_impl.cc:1604] [C0][S11753050428919145210] encoding headers via codec (end_stream=true):
':status', '200'
'content-type', 'application/grpc'
'grpc-status', '14'
'grpc-message', 'upstream connect error or disconnect/reset before headers. reset reason: connection termination'
'date', 'Mon, 13 Jan 2020 23:21:31 GMT'
'server', 'envoy'

[2020-01-13 23:21:31.590][32261][debug][http2] [source/common/http/http2/codec_impl.cc:607] [C1] sent goaway code=1
Is indicating a protocol error:
/**
   * PROTOCOL_ERROR
   */
  NGHTTP2_PROTOCOL_ERROR = 0x01,

It's not clear from the logs what the issue is. Note that we have had issues in the past with gRPC's HTTP/2 implementation not being spec compliant.

@mattklein123 the second log has more nghttp2 traces.  It may provide more insights

I looked at the 2nd log. I don't see anything in there that identifies why nghttp2 is deciding there is a protocol error unfortunately.

Update.
Here is the data dump received from Cloud Run after sending Http2 header.
===
HTTP/1.0 400 Bad Request
Content-Type: text/html; charset=UTF-8
Referrer-Policy: no-referrer
Content-Length: 1555
Date: Tue, 14 Jan 2020 01:56:32 GMT

Error 400 (Bad Request)!!1

400. Thatâs an error.
Your client has issued a malformed or illegal request.  Thatâs all we know.
Cloud Run doesn't like the Http2 headers or gRPC headers Envoy is sending.

some thoughts:
1, gRPC should be HTTP/2, not HTTP/1
2, gRPC Content-Type shouldn't be text/html

You're missing alpn_protocols: h2 in your cluster's TLS config, so HTTP/2 is never negotiated with the upstream.

@PiotrSikora Thanks.  After add "alpn_protocols:  h2", it works.


No way to know from who was the replied message

Via webhook, when a message is replied, there is no way to know exactly what message was replied.

Already added here https://github.com/aldinokemal/go-whatsapp-web-multidevice/commit/c5ecf0bf7a8d120d40153c7c7cc88af51f069b9a

added message.replied_id
This will be available on next release


kreait firebase

How to signout from kreait firebase php

You can invalidate a user session with Auth::revokeRefreshTokens($uid)
"Invalidate User Sessions" page in the Documentation


matlab runtime 2019

-->
Checklist

[x] The package I am requesting does not already exist on https://chocolatey.org/packages;
[x] There is no open issue for this package;
[x] The issue title starts 'RFP - ';
[x] The download URL is public and not locked behind a paywall / login;

Package Details
Software project URL :  https://in.mathworks.com/products/compiler/matlab-runtime.html
Direct download URL for the software / installer : http://ssd.mathworks.com/supportfiles/downloads/R2019a/Release/4/deployment_files/installer/complete/win64/MATLAB_Runtime_R2019a_Update_4_win64.zip
Software summary / short description: Allows to run standalone programs in matlab without needing to install matlab.

@teknowledgist as you maintain the other Matlab packages would you be interested in picking this one up?

Sure.  I can do that.

@teknowledgist I will assign the issue to you then.
Thanks for taking care of it.

mcr-2019a package submitted.

Seems like the request have been completed.
@teknowledgist in the future, please post a comment so we know what the status of the request is at (In progress, Review, Approved). This way we can mark the request with the correct label, and close the request when it have been completed.


Standardize all images to use latest tag

Depends-On: https://github.com/cloud-bulldozer/benchmark-operator/pull/713
Signed-off-by: Vicente Zepeda Mas<EMAIL_ADDRESS>Description
To follow the guidelines in here: https://github.com/cloud-bulldozer/benchmark-operator/pull/713 we need to update it here as well for tests to run
Fixes

Adding discussion from old PR: https://github.com/cloud-bulldozer/benchmark-wrapper/pull/394
https://github.com/cloud-bulldozer/benchmark-wrapper/pull/394#pullrequestreview-809994957
https://github.com/cloud-bulldozer/benchmark-wrapper/pull/394#issuecomment-972942220

/rerun all

Results for SNAFU CI Test

Test
Result
Runtime

snafu/hammerdb
PASS
00:05:58

snafu/smallfile_wrapper
FAIL
00:02:24

snafu/flent_wrapper
PASS
00:08:27

snafu/scale_openshift_wrapper
PASS
00:10:37

snafu/sysbench
PASS
00:02:53

snafu/benchmarks/uperf
PASS
00:23:08

snafu/image_pull_wrapper
PASS
00:03:56

snafu/ycsb_wrapper
FAIL
00:12:12

snafu/stressng_wrapper
PASS
00:03:38

snafu/fio_wrapper
PASS
00:15:22

snafu/log_generator_wrapper
PASS
00:03:45

snafu/upgrade_openshift_wrapper
PASS
00:00:00

snafu/iperf
PASS
00:04:51

snafu/vegeta_wrapper
PASS
00:03:55

snafu/fs_drift_wrapper
PASS
00:04:03

snafu/pgbench_wrapper
PASS
00:03:43

Added Depends-On line to description

/rerun all

smallfile is failing because the tag is pointing to master on benchmark-operator we need to merge this and https://github.com/cloud-bulldozer/benchmark-operator/pull/713 for it to pass.


View action bar hides on submenu

Related to: https://github.com/microsoft/vscode/issues/92029
While the original #92029 issue is fixed, this is another case.

Add a submenu as a command in a view's title
Click on the submenu and it will hide the action bar

Add a submenu as a command in a view's title

can you elaborate on the steps here or provide some min repro code?

If you install the latest GitLens 11 RC2, it has this issue


Upload notebook and result of submission_1

Greetings Matt, please merge and test my submission_1 pull request.
Cheers

Hello again. This one scores 0.501, so a bit down on before. I hope you get a chance to look at it again, as I think you were onto something good with that neural net.


The tracking search can't find a specific light novel.

Steps to reproduce

Add MyAnimeList tracking for "I'm in Love with the Villainess", "Watashi no Oshi wa Akuyaku Reijou.: Revolution"
Enter the series title in the search.

Expected behavior
The series should show up in the results
Actual behavior
No results / Other series show up
https://streamable.com/fxh2j3
LNReader version
1.1.18
Android version
Android 13
Device
Samsung Galaxy A22 5G
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with a source, I should be opening an issue in the sources repository.
[X] I have updated the app to version 1.1.18.
[X] I will fill out all of the requested information in this form.

The MyAnimeList API doesn't seem to return the novel.
Endpoint
https://api.myanimelist.net/v2/manga?q=I’m in Love with the Villainess&fields=id,title,main_picture,media_type

Response
[
  {
    "node": {
      "id": 107566,
      "title": "Otome Game no Hametsu Flag shika Nai Akuyaku Reijou ni Tensei shiteshimatta...",
      "main_picture": {
        "medium": "https://cdn.myanimelist.net/images/manga/2/207950.jpg",
        "large": "https://cdn.myanimelist.net/images/manga/2/207950l.jpg"
      },
      "media_type": "manga"
    }
  },
  {
    "node": {
      "id": 147728,
      "title": "Villainess in Love",
      "main_picture": {
        "medium": "https://cdn.myanimelist.net/images/manga/2/270238.jpg",
        "large": "https://cdn.myanimelist.net/images/manga/2/270238l.jpg"
      },
      "media_type": "manhwa"
    }
  },
  {
    "node": {
      "id": 147394,
      "title": "When the Villainess Is in Love",
      "main_picture": {
        "medium": "https://cdn.myanimelist.net/images/manga/2/263114.jpg",
        "large": "https://cdn.myanimelist.net/images/manga/2/263114l.jpg"
      },
      "media_type": "manhwa"
    }
  },
  {
    "node": {
      "id": 148410,
      "title": "Kill the Villainess",
      "main_picture": {
        "medium": "https://cdn.myanimelist.net/images/manga/4/291250.jpg",
        "large": "https://cdn.myanimelist.net/images/manga/4/291250l.jpg"
      },
      "media_type": "manhwa"
    }
  },
  {
    "node": {
      "id": 147767,
      "title": "The Villainess's Maker",
      "main_picture": {
        "medium": "https://cdn.myanimelist.net/images/manga/2/262207.jpg",
        "large": "https://cdn.myanimelist.net/images/manga/2/262207l.jpg"
      },
      "media_type": "manhwa"
    }
  },
  {
    "node": {
      "id": 146912,
      "title": "Beware the Villainess!",
      "main_picture": {
        "medium": "https://cdn.myanimelist.net/images/manga/2/260779.jpg",
        "large": "https://cdn.myanimelist.net/images/manga/2/260779l.jpg"
      },
      "media_type": "manhwa"
    }
  },
  {
    "node": {
      "id": 149161,
      "title": "The Villainess Flips the Script!",
      "main_picture": {
        "medium": "https://cdn.myanimelist.net/images/manga/3/288109.jpg",
        "large": "https://cdn.myanimelist.net/images/manga/3/288109l.jpg"
      },
      "media_type": "manhwa"
    }
  },
  {
    "node": {
      "id": 154182,
      "title": "Akuyaku Reijou to Akuyaku Reisoku ga, Deatte Koi ni Ochita nara: Nanashi no Seirei to Keiyaku shite Oidasareta Reijou wa, Kyou mo Reisoku to Kisoiatteiru you desu",
      "main_picture": {
        "medium": "https://cdn.myanimelist.net/images/manga/3/276621.jpg",
        "large": "https://cdn.myanimelist.net/images/manga/3/276621l.jpg"
      },
      "media_type": "manga"
    }
  }
]

Yea


Keep on getting Error posting to Microsoft Bot Connector. Status Code: 401, Text {"message":"Authorization has been denied for this request."}

The config.yaml values are not being picked up. Keep on getting the following error.

Error posting to Microsoft Bot Connector. Status Code: 401, Text {"message":"Authorization has been denied for this request."}

The incoming messages are recieved. But the outgoing messages are not sent and instead the above message is printed.

Hi Dhruv, I have just tested putting the app_client_id and app_client_secret in the config.yaml file and it appears to be working.
If the Response object can't find the values for app_client_id or app_client_secret it will disable auth and you will get a 401 error like you are getting.
Can you post your config.yaml file (obscure the id & secret) and can you ensure that the config.yaml file is in the root directory.

Hi,
My config.yaml is in the same directory as the bot.py. Contents:
other:
     app_client_id: hjhjh-jhjhjhj-hjhjh-jhjh
     app_client_secret:  kjkjkjkjkjkjkjjkjkjj

Hi Dhruv, the config object will look for the config. yaml file in the current working directory. If you are starting the bot from a different directory that would cause this issue.
I have also just updated the config object so it will give better feedback on what the problem may be. You can enable logging on the MsBot object by passing debug=True.
If that fails you can use environment variables to set these variables. Check out the documentation here. http://microsoftbotframework.readthedocs.io/en/latest/config/

Hey, created a new virtualenv and redid the steps in documentation. It worked well. Thanks. Btw, how do I send cards or carousels or photos as messages? The botkit framework and the node.js examples look pretty elaborate with that regards. Does this wrapper support all of the botkit functionalities?

Hey Dhruv, I still haven't implemented send cards or carousels, in the last week I have got images sending based on a url with the code. below The branch attachmentUpload uploads a image to the blob storage in teams but it only works on the simulator currently. On the live version I get a 404 back which might mean it is not implemented yet.
Attaching an image via url:
contentUrl = 'https://imgflip.com/s/meme/Cute-Cat.jpg'
ReplyToActivity(fill=message,
    attachments=[{
        'contentType': 'image/jpeg',
        'contentUrl': contentUrl,
        'name': 'cute cat.jpg',
}]).send()

Keep it up.

Hey, similar to the above image sending, is there a way to create a message with buttons? For eg. I want to create a subscribe button, on clicking which, the user is subsribed to news, etc. Thanks.


Instance & channel_strategy validation

Summary
In https://github.com/Qiskit/qiskit-ibm-runtime/pull/1193 we raised an error if the channel_strategy  q-ctrl was passed in but the instance used did not support q-ctrl. We also want to raise an error if the opposite happens - if the instance is q-ctrl enabled but q-ctrl is not passed in as the channel_strategy.
Details and comments
Fixes #

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2 of 3 (66.67%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 46.01%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

qiskit_ibm_runtime/qiskit_runtime_service.py
2
3
66.67%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
2491

Relevant Lines:
5414

💛  - Coveralls


Improve README.md

Beef up the README with details, instructions, maybe some images

F16 OK (100 pts)


Add grape-jdk benchmark apps

What do these changes do?

Add implementation for java benchmarking apps
Java app benchmarking entrance.
Refactor of java driver apps.

Related issue number
Resolves #1018

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: zhanglei1949:x: zhanglei1949<EMAIL_ADDRESS>seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

You may need to add the benchmark numbers (if there is any) to the analytical_engine/java/README.md as well. I think it would be better.

You may need to add the benchmark numbers (if there is any) to the analytical_engine/java/README.md as well. I think it would be better.

OK, I will add the benchmarking results in this pr.

@zhanglei1949 please avoid merging if CI still fail, the main branch will be broken and will block other developers who want to test and merge their PRs... especially when we have no idea about why it keeps failing and rerun doesn't resolve the issue...

@zhanglei1949 please avoid merging if CI still fail, the main branch will be broken and will block other developers who want to test and merge their PRs... especially when we have no idea about why it keeps failing and rerun doesn't resolve the issue...

Sorry for the ci problem, will be more cautious.


Add zarr to Python 3.11 CI environment

xref https://github.com/dask/dask/issues/9691#issuecomment-1355305616
cc @jakirkham

Thanks James! 🙏

No problem -- thanks for handling things on the numcodecs side!

Ofc! Sorry that took a bit. Should be smoother upgrading Python versions for Numcodecs in the future.


Run system scripts before shutdown

Allow configuring a set of system scripts to be run prior to the server shutdown, when shutdown is due to inactivity.

Sorry, I intended to add this issue to my fork of your project. Please ignore it!


Please invite me to the GitHub Community Organization

  I want to join this organization!

  Once you submitted this issue, the GitHub Actions bot will send you an email invitation.
Please kindly accept to join our organization :smile:

@ArghadeepNath, pls create a new issue again to join the organization


Added information to help newcomers get allowed

Added some text to the "Contributing the patches" section in WELCOME.md that provides a reference to the #git-devel IRC channel as a good place to find other contributors who can /allow you for GitGitGadget.

What about looking at other, recent GitGitGadget PRs where somebody /allowed somebody? This would be the URL: https://github.com/gitgitgadget/git/pulls?utf8=✓&q=is%3Apr+is%3Aopen+"%2Fallow"

I have incorporated that suggestion and squashed everything down to one commit. :-)

Excellent! Thank you all!


Overlay on xxGrid

Hi
How to create overlay on xxGrid?
Thank you

@ms4hafiz ,
what exactly do you want to achieve? Please show us a mockup for easier understanding.
With kind regards,
John

Hi @JohnRanger ;
For certain users I want to hide the records in grid and display a message that It is being used by some one else. There might be a better solution for the same but I needed a quick solution.
I don't want Multi tenancy to achieve this because it is a kind staging table and should be only by one user at the same time and this message will conditionally appear on top of the grid.

Thank you

@ms4hafiz I think @JohnRanger did something like this for disabling a grid , but I don't remember the exact post. Disabling Grid editor .
What you can do is is use JQuery find the element by class name , then insert your overlay on top .. if I am not mistaken you you can simply add the class to the  or some other identifier. you can include an onClick event to prevent other clicking
this.element.find("myGrid").AddCssClass("overlay")
so you end up with something like this  Check your browser via F12 inspect for the right division to get..
the #overlay might need to be changed to .overlay in your css file - as I think # is for Id of elements..
#overlay {
  position: fixed; /* Sit on top of the page content */
  display: none; /* Hidden by default */
  width: 100%; /* Full width (cover the whole page) */
  height: 100%; /* Full height (cover the whole page) */
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.5); /* Black background with opacity */
  z-index: 2; /* Specify a stack order in case you're using a different order for other elements */
  cursor: pointer; /* Add a pointer on hover */
}

Hi @ms4hafiz ,
@stixoffire was faster than I with the reply ;-) ... but his reply is exactly along the line what I would have proposed. F12 the grid in question and find the dom element which displays the grid. And then use jQuery after the dom is fully loaded to add an overlay div directly in front of the grid element with a higher z-index. Or - if you want to be radical - delete the original grid from the dom and replace it with the overlay. So noone can just simply remov the overlay by F12 your page and delete the overlay ;-) ...
With kind regards,
John

@JohnRanger and @stixoffire
Thanks for the guides tipes.


luci-app-mwan3: Update Japanese translation

Updated Japanese translations.
Signed-off-by: INAGAKI Hiroshi<EMAIL_ADDRESS>

Merged, thanks @musashino205 !


Samples solution fails to build on fresh checkout

Describe the bug
The Samples solution fails to build on fresh checkout.
To Reproduce
Steps to reproduce the behavior:

Download XamlBehavioursWpf as a zip
Unzip
Open samples\XAMLBehaviorsSample\XAMLBehaviorsSample.sln
Build or rebuild solution.

Expected behavior
Build should succeed.
Actual behavior
Build fails. See screenshot below.
Screenshots

The thing is, that is not a checkout! When you download the repo as a zip file, it gets stripped from any git related information, so the build fails because of that!
If you do a proper git checkout then the build will work just fine.
Alternatively, just run git init . on the root folder and it will build just fine.


roundcube: Problem with upgrade from 1.4 RC1 to stable 1.4 Updating database schema

Hi,
Im updating roundcube with shell script
bin/installto.sh
everything goes OK but DB update failed with last line
Your configuration files are now up-to-date!
Executing database schema update.
Updating database schema<PHONE_NUMBER>)... [OK]
Updating database schema<PHONE_NUMBER>)... [OK]
Updating database schema<PHONE_NUMBER>)... [FAILED]
ERROR: Error in DDL upgrade<PHONE_NUMBER>: [1050] Table 'cache_shared' already exists
All done.

Dont know if its OK or i need to do something more?

https://github.com/roundcube/roundcubemail/issues/7034


Support multi consul servers in a consul cluster

If I have three consul servers in a cluster, one failed, others can continuely work.  Right now, only one server can configed in consul_host,  but if that server is done, how to switch to other servers?

The recommended way to do this is to use a consul agent locally on the server running rabbitmq. This will allow the agent to keep track of cluster membership, and a single consul server for rabbitmq-autocluster to connect to, i.e. localhost.

@gregdurham, thanks for your patiently answer. I'll try this.