Clarify swapchain image initial EB layout

I believe it's clear that swapchain images are retrieved in the D3D12_BARRIER_LAYOUT_COMMON layout, given that with legacy resources, I believe they started in the equivalently mapped D3D12_RESOURCE_STATE_COMMON, but for engineers learning DX12 starting from enhanced barriers in the future without legacy resource state experience, it may be worth mentioning swapchain images in the EB spec for completeness. Thanks!

Thanks! The change looks good. On the subject of presentation and the swapchain, I suppose there is perhaps some implicit synchronization happening after command list execution and IDXGISwapchain::Present also? It's something I've been used to with DirectX APIs, but I'll note the lack of any explicit barrier needed prior to presentation (compare to Vulkan where there is this notion of an "external" dependency).


plaintext class ignored, still auto detects language and highlights

According to highlight.js documentation, to make code look like code without any specific language highlighting, you can use this:

...

Though, in my case it does not work. It ignores plaintext and tries to detect language automatically, which is not expected.
Before generating html for highlight, I pass these classes on pre tag: o_website_snippet_code_highlight plaintext col-lg-6
Though, it automatically adds python class too, even if I specified plaintext class to not do that.

def test():
    return 'x';

It does not work even in simple cases like:

Some plain text

It still detects that it is properties syntax.
P.S. using highlight.js v9.15.9

Hi @oerp-odoo,
it should not behave this way, although it's difficult to say something for sure without seeing your js code. Can you provide a working example that shows the problem?

@egor-rogov My bad. I thought plaintext was not part of languages you choose to highlight. I believed it was something like nohighlight class. I just needed to include that language in a package and it now recognizes it. So false alarm.


Cannot parse "serverless.yml": unknown tag !<!node_modules/**>

I'm running Laravel 8, Bref 1.3 and Laravel-Bridge 1.1
When I run serverless deploy
I got this error:
Cannot parse "serverless.yml": unknown tag !<!node_modules/**> in "/Users/aws/Desktop/laravel-aws-lambda/serverless.yml" (16:9)
13 |     # Directories to exclude from deplo ...
14 |     patterns:
15 |         - !node_modules/**
16 |         - !public/storage
--------------^
17 |         - !resources/assets/**
18 |         - !storage/**
Does anybody face this problem?

It's indeed linked to this change :roll_eyes:
I've opened #58 to fix it.
In the meantime, @HELMAB you can change your serverless.yml accordingly :slightly_smiling_face:


MPV interface is stretched out and button are messed up when you use window-maximized=yes until you go to full screen

Describe the bug
MPV interface is stretched out and button are messed up when you use window-maximized=yes until you go to full screen
To Reproduce
Steps to reproduce the behavior:

Install syncplay.
Install mpv-git from scoop.
Setup path to mpv-git in syncplay.
--no-config --window-maximized=yes set this as player arguments.
Load some file, I used 4k movie.
Interface is stretched and button are messed up, for example, pressing play will actually trigger playlist change to previous item.

Expected behavior
No such problem observed with mpv.net
Screenshots

Version and platform:

OS: Windows 11 Pro
Syncplay version and build type: Syncplay 1.7.2
Media player and version: mpv v0.38.0-63-gb364e4a6

Additional context
Add any other context about the problem here.

I don't use scoop so I tried with https://sourceforge.net/projects/mpv-player-windows/files/64bit/mpv-x86_64-20240421-git-b364e4a.7z/download with Syncplay 1.7.3 and on my set-up it the text in the top-left is a bit small for like half a second then corrects itself.
It is possible that the issue only sticks around on a computer that is running faster and/or slower than my computer which causes something to happen too soon or too late, maybe relating to the timing/sequencing of mp.command('print-text "<get_syncplayintf_options>"')  in syncplayintf.lua which triggers self._sendMpvOptions() in mpv.py. However, since I can't reproduce unfortunately I am not in a position to work on a fix.

This stretching issue can be fixed with auto-window-resize=no


Sorting on /r/subreddit/comments should be less jacked up

The problem seems to be related to RES NER, but maybe not, and it shouldn't.  I'll try to get a decent sample first.

Thanks for the remember! I wanted to work on sorting removal reasons and shortcuts. Not really related to this, but thought I would mention :P

@LiterallyWTH pls

ok


Progress Report doesn't update to most recently used Test Plan

We are using the Progress Report to track our Test Execution and its working really well except for the Default Filters being applied.  It seems that once you visit the Progress Report Page the Default Test Plan filter is set and it doesn’t update to the test plan you accessed last like the documentation says it should – “2. Whenever you visit the report, it will show you the data for the test plan you had accessed last. Currently we do not store your last set of filters and also do not let you store an instance of this report.” https://docs.microsoft.com/en-us/azure/devops/test/track-test-status?view=azure-devops#feedback
For some of my users its fine as the first time they accessed the report they were in the correct test plan and it defaults to that one but for others (myself included) it defaults to an old or unused test plan and we have to constantly uncheck the test plan and select the correct one.  Is there a way to “Reset” the default test plan to get it updated?  I’m also concerned that when we move to the next cycle of testing all of the users will be defaulting to the old test plan and not the new one.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 23cfb51b-0b54-7d26-f9b2-4167915fba7a
Version Independent ID: 5716194c-87f4-b1dc-7f31-592529a1fd3a
Content: Track test status - Azure Test Plans
Content Source: docs/test/track-test-status.md
Product: devops
Technology: devops-test
GitHub Login: @steved0x
Microsoft Alias: sdanie

It looks like you've encountered an issue with the product itself, rather than an issue with the documentation. To make sure it gets in front of the right people, please submit your bug here.

Just FYI the document says to email<EMAIL_ADDRESS>to provide feedback but that email address isn't accessible to senders outside of Microsoft, may want to remove that section or update it to point to the Developer Community.


i can.t not find the organizations/orderedOrganizations & peerOrganizations with the newest release fabric-samples

What happened?
when i got working the configuration along with this tutotials.when i came the order : cp -r ../fabric-samples/test-network/organizations/ .  , i can't find the orderedOrganizations & peerOrganizations two files.
What did you expect to happen?
i hope the official can update the file or the tutoials and give me a solution.
How can we reproduce it (as minimally and precisely as possible)?
just work under the tutorials
Anything else we need to know?
nothing
OS version

# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here

Hi @HAS2900248157
Can u please provide more detail of issue you are facing like screenshot of it.


Start thinking about similarQuery capabilities

We'll first need to be implemented in the client then the helper.

It's implemented in the client

:horse: CLOSING BOT SAYS:

This is old and not done, reopen if you have the need and want to fix it

(also not enough details for us to have a discussion I feel)


Telemetry not logging Personal Information after publishing from V2.0.0 .

Describe the bug
After upgrading Composer to v2.0.0 I was no longer able to log Personal Information on App Insights. I need to log the Question from LuisResult and the fromName from BotMessageReceived.
As shown in the Documentation:
https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-telemetry-analytics-queries?view=azure-bot-service-4.0#schema-of-bot-analytics-instrumentation
What I used to get on v1.4.0:

BotMessageReceived Event:

LuisResult Event:

Currently on v2.0.0

I am no longer able to get the information indicated with red in the above screenshots.
BotMessageReceived Event:

LuisResult Event:

Things I've tried:

I have added the logPersonalInformation property in appsettings:

{
   ...
    "telemetry": {
       "logPersonalInformation": true,
       "logActivities": true
   },
   ...
}

I Also tried adding it in runtimeSettings:

{
   ...
   "runtimeSettings": {
      ...
      "telemetry": {
         "logPersonalInformation": true,
         "logActivities": true,
      },
      ...
   },
   ...
}

The instrumentationKey and connectionString are correct.

Version
Version:  2.0.0
Electron: 8.2.4
Chrome: 80.0.3987.165
NodeJS: 12.13.0
V8: 8.0.426.27-electron.0
Browser

[ ] Electron distribution
[X] Chrome
[ ] Safari
[ ] Firefox
[ ] Edge

OS

[ ] macOS
[X] Windows
[ ] Ubuntu

To Reproduce

Enable logPersonalInformation for Telemetry.
Publish
Test the bot on Teams
View analytics on App insights

@taicchoumsft or @tdurnford any thoughts?

Hi @thrapai , thanks for reporting this Composer bug, I can indeed repro this.
The =runtimeSettings.telemetry.logActivities and =runtimeSettings.telemetry.logPersonalInformation settings are the right ones to set if you created a brand new bot in Composer 2.0.
These two settings are somehow being stripped out only when publishing to Azure (locally these two settings should be preserved, so when testing locally telemetry appears to work).
A proposed workaround for now is to create a new file called appsettings.production.json in the settings folder of your project (the production word is special and used by default if you haven't set the ASPNETCORE_ENVIRONMENT on Azure, Composer does not modify this environment) , and add this:

appsettings.production.json
{
  "runtimeSettings": {
    "telemetry": {
      "logActivities": true,
      "logPersonalInformation": true
    }
  }
}

Thanks for your reply @taicchoumsft!
I confirm the "Microsoft.Bot.Builder.Dialogs.Adaptive.Runtime is at version 4.13.2.
Indeed the settings are being stripped only when publishing to Azure. When testing localy on emulator, all the required information are logged properly.
The proposed workaround solved my issue. Everything is logged properly now. Thanks for your assistance!

Add Exempt label as we have a milestone for this.


useQuery not re-rendering in v0.1.0

If you clone the starter template and set the Koota version to the latest, then no spheres can be spawned. The useQuery in App.tsx listening to IsSphere, Position doesn't cause a re-render. Also looks like there is a debug console.log() left (if you click remove spheres it'll print something into the console –> might be queryFirst or entity.delete() which get called in there)

Fixed with https://github.com/pmndrs/koota/commit/9a88dcd4a70038a738103b798bb0d4644343bb0f


1.9.x - Terraform update vault for secret SSH_PRIVATE_KEY

Overview
https://github.com/kubefirst/gitops-template/pull/99#discussion_r965940376

closed by: https://github.com/kubefirst/gitops-template/pull/100

Secret is not passing to vault side.

Tested on #340.


libheif: 1.14.0 -> 1.14.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/strukturag/libheif/releases.
meta.description for libheif is: ISO/IEC 23008-12:2017 HEIF image file format decoder and encoder
meta.homepage for libheif is: http://www.libheif.org/
Updates performed

Version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.14.2 with grep in /nix/store/28kr3hl4ciyp8wsqbq3v2xf4hxqpl6ch-libheif-1.14.2-bin
found 1.14.2 in filename of file in /nix/store/28kr3hl4ciyp8wsqbq3v2xf4hxqpl6ch-libheif-1.14.2-bin

Rebuild report (if merged into master) (click to expand)

415 total rebuild path(s)

415 package rebuild(s)

First fifty rebuilds by attrpath
abiword
adapta-gtk-theme
aether
almanah
apacheHttpdPackages.mod_tile
apacheHttpdPackages_2_4.mod_tile
arc-theme
arx-libertatis
asc-key-to-qr-code-gif
asciidoc-full
asciidoc-full-with-plugins
asymptote
authenticator
auto-multiple-choice
autotrace
awesome
ayu-theme-gtk
ballerburg
beets
beets-unstable
beetsPackages.beets
beetsPackages.beets-stable
beetsPackages.beets-unstable
betterlockscreen
bisq-desktop
blockhash
bombono
bottles
bottles-unwrapped
brasero
brasero-original
calibre
calibre-web
calligra
capitaine-cursors
cataract
cataract-unstable
catppuccin-cursors
cd-hit
chafa
ciano
cinnamon.cinnamon-gsettings-overrides
cinnamon.cinnamon-screensaver
cinnamon.iso-flags-png-320x420
cinnamon.iso-flags-svg
clevis
cloudcompare
cobang
coreboot-configurator
crypto-org-wallet

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/28kr3hl4ciyp8wsqbq3v2xf4hxqpl6ch-libheif-1.14.2-bin \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A libheif https://github.com/r-ryantm/nixpkgs/archive/23b7211a482e23eb769b868573645cd9d607f305.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/28kr3hl4ciyp8wsqbq3v2xf4hxqpl6ch-libheif-1.14.2-bin
ls -la /nix/store/28kr3hl4ciyp8wsqbq3v2xf4hxqpl6ch-libheif-1.14.2-bin/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review took longer than 45m and timed out

Maintainer pings
cc @gebner for testing.

passthru.tests build happily on aarch64-linux


Update LICENSE, NEWS, and What's New

Update information files, for dev release.

Looks good. Please address the minor comment and merge.


pdd

@h1alexbel thank you for reporting this. I'll assign someone to take care of it soon.

@h1alexbel I couldn't find any assignee for this task. This is either because there are no contributors with role DEV available or because the project does not have enough funds.
Please, make sure there is at least one available contributor with the required role and the project can afford to pay them.

@h1alexbel this is your task now, please go ahead. Deadline (when this ticket should be closed) is 2023-09-20T16:08:58.612080.
Estimation here is 60 minutes, that's how much you will be paid.
Remember, you don't have to solve everything in this ticket - you can solve it partially and leave todo markers in the code, which will become future tasks.
If you have any questions don't ask me, I'm not a technical person. Open new tickets instead.
If you don't have time or simply don't want to work on this, you can always resign.

@h1alexbel thank you for resolving this ticket. I've just added it to your active invoice. You can always check all your invoices and more on the Contributor Dashboard.


Manually hide keyboard with javascript

Hi guys,
I am a rookie in ios.
First I want to find a js module for me to hide keyboard manually.
For example In Navigator when user focus on typing some text into TextInput, with clicking “Back" button, I hope the App can hide the keyboard and switch back to last page. But the fact is, it switch back to last page first, after the transition, it hide the keyboard.
So I try to find a javascript module to hide the keyboard and failed. Then I try to implement a native module to export a method to javascript. In Stackoverflow, there is an answer: Hide keyboard with OBJC. Then I try to create my own module, "CustomModule",  inside this module, is there a way to get current View or Something so that I can set view endEditing to true?
If not, is there any way to hide the keyboard manually? Thx...

Hi Tyler! This is related to #113 - you can call blur() on the TextInput ref that you would like to unfocus, and that will hide the keyboard. Notice in #113 that at the moment there is no way to unfocus an entire component hierarchy with a single blur call, but you can iterate over each of your TextInput components on the view when the back button is pressed and call blur() on each of them.

@brentvatne:
I want to disable keyboard input altogether but still get change and focus events. blur in focus event will give a flicker of keyboard coming and going.
controlled will open the keyboard.
editable false will not open the keyboard but it will also disable focus and change events.
If there a way around? Happy to PR also if you point me to right direction.

@chirag04 I don't believe that is possible but if you believe it is can you write a demo with UIKit and we can figure out how to support it in react?

@ide
I did an extensive search and seems like textFieldShouldBeginEditing: in the UITextFieldDelegate is my answer. (See: https://developer.apple.com/library/prerelease/ios/documentation/UIKit/Reference/UITextFieldDelegate_Protocol/index.html#//apple_ref/occ/intfm/UITextFieldDelegate/)
I'm trying to add this to RCTTextField but seems like it is not responding to this event when i put a debugger here. Added the delegate to RCTTextField interface and ``textFieldShouldBeginEditingin the implementation. I also addedself.delegate = self` which initializing RCTTextField.
PS: I'm totally new to objective-c

I believe if you return NO from textFieldShouldBeginEditing, the text field won't get focus.

How do i did test this though? I cant get textFieldShouldBeginEditing to be triggered

@chirag04 are you on IRC? let's take this discussion out of this github issue.

sure

For those who don't want keyboard to pop when you tap on input:
<TouchableWithoutFeedback onPress={this.handlePress} style={styles.labelContainer}>            <View style={styles.labelContainer} pointerEvents={'box-only'}>              {this.props.children}            </View>          </TouchableWithoutFeedback>

Closing because this is related to #113


Vue rewrite

I'm having trouble running a Vue application that uses HTML5 routing.  It is running in a container that exposes port 80.  I'm using nginx-proxy to forward requests to that container.
The initial page load works, but if I browse to a URL, nginx-proxy returns a 404 before the request can be handled by the Vue container.
How can I ensure requests make it all the way to the Vue container via nginx-proxy?

On a separate note - this project is amazing!  Thanks to all contributors for their work.

Found the issue - it was nothing to do with this project.  I was using http-server to serve requests in the Vue container.
I've swapped it for nginx and all is working now 😊

Thanks for you reply on https://github.com/evertramos/docker-compose-letsencrypt-nginx-proxy-companion/issues/138
Life is being crazy these days and no time at all for this project at the moment.
Cheers!


Run in 5 minutes?

Is there a way to schedule a job to run in a specified amount of time?  e.g., I would like to schedule a job to run 5 minutes from now.

I guess what I'm looking for is schedule.once().at('10:30').do(...) or schedule.once().in(5).minutes.do(...)

Hello, Sumoway,
One possible solution is use CancelJob.  Just return CancelJob at your job function.
And the job would be removed from job list.
You cloud follow https://github.com/dbader/schedule/pull/15 to find more details.

Thank you cfrco!

This is also in the FAQ now.


Workaround for labels defined in other files?

I have a hunch this will be difficult to get working properly, but let's say you have these files:
a.asm
include "a.inc"
segment_name SEGMENT USE64
    jmp mylabel
segment_name ENDS

a.inc
inc_segment_name SEGMENT USE64
    mylabel:
    hlt
inc_segment_name ENDS

"mylabel" is considered an undefined label, even though it will be defined once "a.inc" is included into the file.
We use this a lot and it results in AsmDude writing many "Undefined Label" warnings in Visual Studio's Error List.
Any ideas?

I'll give it a try, shouldn't be too difficult. Give me a few days to test it.

Thanks.
Do you think it can support the inverse?  (jmp in "a.inc", label definition in "a.asm")  My gut feeling is that would be even harder.

Includes can be read as "get me the content of that file and assume this content is here". I'm more worried about resolving network drives, relative paths, and other funky ways the include mechanism can have been misused.

externed labels should be considered too.
extern _printf . . . call _printf

I've added support for (Masm) includes, the Nasm alternatives will be added in the full release. If you find issues, please report those. Regards.
Version <IP_ADDRESS>

Found a silly bug in <IP_ADDRESS>. Please use Version <IP_ADDRESS>


Fix formatting in README

It just makes the first example in the "Usage" section display correctly by adding a blank line.

Thnks, details matter )


Data-Driven Thermal Models for Buildings

@theo-armour - just wanted to share this with you here:
https://medium.com/analytics-vidhya/data-drivexn-thermal-models-for-buildings-15385f744fc5

Ryan
Thanks for sharing.
Looks interesting. Lots of good metrics. But he needs help showing what the
building looks like. ;-)
Theo
On Sun, Dec 6, 2020 at 12:09 AM Ryan Wold<EMAIL_ADDRESS>wrote:

@theo-armour https://github.com/theo-armour - just wanted to share this
with you here:
https://medium.com/analytics-vidhya/data-drivexn-thermal-models-for-buildings-15385f744fc5
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/opentecture/mindmapping/issues/69, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEFWKTZEZVBLNP7IGG5NM3STM34PANCNFSM4UPEVCLA
.


collecting field coordinates that a service owns

What Changed
Why
Todo:

[ ] Add tests
[ ] Add docs

Can u provide a brief overview of why this change is useful and where is it used ?


Python package: genome view not loaded

I am trying to use the chromoscope package in Jupyter Notebook to load my data and use the genome view. However the view is not loading and the genome is not displayed.  Please see my notebook below:

My configuration (public data):
[
    {
        "id": "SRR7890905",
        "cancer": "breast",
        "assembly": "hg38",
        "vcf": "https://somatic-browser-test.s3.amazonaws.com/SNV_test_tumor_normal_with_panel.vcf.gz",
        "vcfIndex": "https://somatic-browser-test.s3.amazonaws.com/SNV_test_tumor_normal_with_panel.vcf.gz.tbi",
        "vcf2": "https://somatic-browser-test.s3.amazonaws.com/INDEL_test_tumor_normal_with_panel.vcf.gz",
        "vcf2Index": "https://somatic-browser-test.s3.amazonaws.com/INDEL_test_tumor_normal_with_panel.vcf.gz.tbi",
        "sv": "https://somatic-browser-test.s3.amazonaws.com/SVTYPE_SV_test_tumor_normal_with_panel.bedpe",
        "cnv":
"https://gist.githubusercontent.com/sehilyi/6fbceae35756b13472332d6b81b10803/raw/596428a8b0ebc00e7f8cbc52b050db0fbd6e19a5/SRR7890943.ascat.v3.cnv.tsv",
        "bam": "https://somatic-browser-test.s3.amazonaws.com/SRR7890905_GAPFI2USVS21.bam",
        "bai": "https://somatic-browser-test.s3.amazonaws.com/SRR7890905_GAPFI2USVS21.bam.bai",
        "note": "CNV profile - ASCAT. SVs - Sentieon. Mutations and indels - Sentieon"
    }
]

LINK to the browser with the data loaded.
The error I found in the browser console:

To reproduce my environment:
pyenv virtualenv 3.8.12 chromoscope_3812
pyenv activate chromoscope_3812
pip install ipython==8.12
pip install jupyterlab
pip install chromoscope

Please let me know if you have any ideas what might be wrong.
Thank you,
Dominika

@manzt Are you somehow familiar with this issue or know the potential source of this issue?

I am not able to reproduce this error locally. Could you share more information about your system/environment in which you are running the notebook?
 npx envinfo --system --browsers
  System:
    OS: macOS 12.6
    CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 1000.78 MB / 32.00 GB
    Shell: 5.8.1 - /bin/zsh
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 112.0.5615.137
    Chrome Canary: 115.0.5740.0
    Firefox Nightly: 113.0a1
    Safari: 16.0

python --version
# Python 3.8.12

pip freeze
# aiofiles==22.1.0
# aiosqlite==0.19.0
# anyio==3.6.2
# appnope==0.1.3
# argon2-cffi==21.3.0
# argon2-cffi-bindings==21.2.0
# arrow==1.2.3
# asttokens==2.2.1
# attrs==23.1.0
# Babel==2.12.1
# backcall==0.2.0
# beautifulsoup4==4.12.2
# bleach==6.0.0
# certifi==2022.12.7
# cffi==1.15.1
# charset-normalizer==3.1.0
# chromoscope==0.0.1
# click==8.1.3
# comm==0.1.3
# debugpy==1.6.7
# decorator==5.1.1
# defusedxml==0.7.1
# executing==1.2.0
# fastjsonschema==2.16.3
# fqdn==1.5.1
# h11==0.14.0
# idna==3.4
# importlib-metadata==6.6.0
# importlib-resources==5.12.0
# ipykernel==6.22.0
# ipython==8.12.0
# ipython-genutils==0.2.0
# isoduration==20.11.0
# jedi==0.18.2
# Jinja2==3.1.2
# json5==0.9.11
# jsonpointer==2.3
# jsonschema==4.17.3
# jupyter-events==0.6.3
# jupyter-ydoc==0.2.4
# jupyter_client==8.2.0
# jupyter_core==5.3.0
# jupyter_server==2.5.0
# jupyter_server_fileid==0.9.0
# jupyter_server_terminals==0.4.4
# jupyter_server_ydoc==0.8.0
# jupyterlab==3.6.3
# jupyterlab-pygments==0.2.2
# jupyterlab_server==2.22.1
# MarkupSafe==2.1.2
# matplotlib-inline==0.1.6
# mistune==2.0.5
# nbclassic==0.5.6
# nbclient==0.7.4
# nbconvert==7.3.1
# nbformat==5.8.0
# nest-asyncio==1.5.6
# notebook==6.5.4
# notebook_shim==0.2.3
# packaging==23.1
# pandocfilters==1.5.0
# parso==0.8.3
# pexpect==4.8.0
# pickleshare==0.7.5
# pkgutil_resolve_name==1.3.10
# platformdirs==3.5.0
# portpicker==1.5.2
# prometheus-client==0.16.0
# prompt-toolkit==3.0.38
# psutil==5.9.5
# ptyprocess==0.7.0
# pure-eval==0.2.2
# pycparser==2.21
# Pygments==2.15.1
# pyrsistent==0.19.3
# python-dateutil==2.8.2
# python-json-logger==2.0.7
# pytz==2023.3
# PyYAML==6.0
# pyzmq==25.0.2
# requests==2.29.0
# rfc3339-validator==0.1.4
# rfc3986-validator==0.1.1
# Send2Trash==1.8.2
# servir==0.0.6
# six==1.16.0
# sniffio==1.3.0
# soupsieve==2.4.1
# stack-data==0.6.2
# starlette==0.26.1
# terminado==0.17.1
# tinycss2==1.2.1
# tomli==2.0.1
# tornado==6.3.1
# traitlets==5.9.0
# typing_extensions==4.5.0
# uri-template==1.2.0
# urllib3==1.26.15
# uvicorn==0.22.0
# wcwidth==0.2.6
# webcolors==1.13
# webencodings==0.5.1
# websocket-client==1.5.1
# y-py==0.5.9
# ypy-websocket==0.8.2
# zipp==3.15.0

Yesterday I tried three different environments:

Initially I was using Jupyter Notebook App on HMS O2 (from HMS-RC Applications) . I used the following configuration:

Jupyter Notebook installed in Docker (Docker image:  jupyterhub/jupyterhub) , and then I used Jupyter in my local browser.

Jupyter Notebook installed on an AWS EC2.

The error was the same in these three options; probably HMS O2 is the most straightforward way to reproduce it (if you have an account there).
I also see a warning that might be useful:

But today, I run it locally on my computer and it loads perfectly fine without any issues!! ☺  Would that mean it's only for local environments not "remote" ones? I usually keep data on EC2/O2 so I was trying to use it there first, but I can also use it on my computer for now.

Hi @dmaziec, would you be able to clarity how you were able to run it locally?
I am also trying to run locally but am just getting the homepage of Chromoscope. It seems like the command is not loading/processing the config variable. I am using VSC with python 3.9.4.

@pagnasok Thank you for the question and for finding this issue! This was a bug. We, at some point, changed the URL of the application, but it was not properly reflected on the Python package.
I just updated and released the Python package, so this should be addressed in chromoscope==0.0.3.

Thank you! I installed v0.0.3, and it seems to be working now.


New: pass outfile to transforms via _flags

Adds _flags to the options, which is browserify compatible
Like browserify, you could expose other options passed to cpx to the transforms.

Codecov Report

Merging #35 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master      #35   +/-   ##
=======================================
  Coverage   84.83%   84.83%
=======================================
  Files          17       17
  Lines         554      554
=======================================
  Hits          470      470
  Misses         84       84

Impacted Files
Coverage Δ

lib/utils/copy-file.js
70.45% <100%> (ø)
:arrow_up:

bin/main.js
85.36% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

I apology that I have overlooked this PR.
I merged this PR in https://github.com/mysticatea/cpx/commit/f81df372efe9bfdc93fcefa4d9e8a23665927a7a.
Thank you for contributing.


Table header is not responsive

Describe the bug
Table looks broken when you have long labels in table header.
To Reproduce
Try to render following table:

      Very loooooooooooooooooooooooooooooong label
      Very loooooooooooooooooooooooooooooong label

    {
      [0,1,2,3,4].map(() => {
        return(

            testing values testing values testing values testing values
            testing values testing values testing values testing values

        )
      })
    }

Expected behavior
I am expecting to get the same behaviour as  tag for , so when there is no enough space, the line should break into multiple lines.
Screenshots

Desktop (please complete the following information):

OS: Mac OS
Browser: Chrome
Version: 74.0.3729.169

Hey @el-lsan! Thank you for creating this issue. I've added some overflow css. Take a look and let me know what you think. #103
https://deploy-preview-103--react-super-responsive-table.netlify.com/

npm install<EMAIL_ADDRESS>to install the changes.

@coston thanks a lot for the fix.
it is much better now, however in some cases it still looks broken

@coston  I encounter the same problem. Do you have any updates?
Thanks!

@DCosti how long is your header? You may need to tweak the included css.

@coston My header contains 20 characters. I tried to tweak the css but i didn't managed to solve it.


feat(send): add unified onchain/lightning switch

Description

Add ability to switch between sending from savings & spending for 0 amount unified QRs. For this I added a new field in the ui reducer paymentMethod that is set in handleData (last step of processUri) and read in the send flow. There is also a new QrType "Unified"
Refactor scanning logic to avoid duplication and improve readability. The goal is to have clear steps for processing any URI we support: 1. parse 2. validate 3. process/transform for handling 4. actually handle (UI actions)
Add e2e tests in new file send.e2e.js. I would like to have this be the main file for testing send flow since other tests are concerned with only onchain or lightning at the moment, but edge cases need to be handled for all variants.

Linked Issues/Tasks
Closes https://github.com/synonymdev/bitkit/issues/2003
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Refactoring (improving code without creating new functionality)

Tests

[x] Detox test
[ ] Unit test
[ ] No test

Screenshot / Video
https://github.com/user-attachments/assets/350d06ea-f895-4519-b75f-9913a037e231
QA Notes
I tested basic functionality as well as max amount, coin selection and slashpay.

Unit tests are failing

When my wallet has no LN channels and I scan LN+onchain qrcode, I get this error:

Should it be so?

I aslo have this error if I have 0 Onchain balance and scanning QRcode with Onchain address only

When my wallet has no LN channels and I scan LN+onchain qrcode, I get this error:
Should it be so?

Looks like this one is a regression.

I aslo have similar error if I have 0 Onchain balance and scanning QRcode with Onchain address only

This one is expected behavior.

Tapping on Available balance when trying to send from Spending account works only once
And stops working after switching to Savings and back
https://github.com/user-attachments/assets/f5ee62f9-4a30-4cc0-94c9-12f3cfbd58e6

When scan Unified QR code with onchain and LN amount exceeding your balance, bitkit opens Spending and allows me to specify the amount. And then fails.
https://github.com/user-attachments/assets/9f7bfe9d-ae6a-4005-91c1-3895b427f248
I actually can switch to Savings in this case.
IDK what should happend in this case, maybe just an error and nothing else?

Sometimes Bitkit doesn't allow me to choose how to send.
LN is forced in this example, while I have funds to pay via LN or on-chain.
https://github.com/user-attachments/assets/42d832c4-bd21-41fe-9884-c9accbcc8594

This one is expected behavior.

Error message doesn't make sense

After scanning the Unified QR without an amount and switching to Savings, I get the Spending MAX amount when I tap on Available balance.
https://github.com/user-attachments/assets/19c5c0d3-f192-474a-b59c-533d5fa4b26d

Sometimes Bitkit doesn't allow me to choose how to send. LN is forced in this example, while I have funds to pay via LN or on-chain.
kek2.mov

This feature is only for 0 amount unified invoices. See description at the top.

Tapping on Available balance when trying to send from Spending account works only once And stops working after switching to Savings and back

Fixed and added tests

This one is expected behavior.

Error message doesn't make sense

Fixed. Toast says "More ₿ needed to pay this Bitcoin invoice." now like before.

Think I fixed everything, hopefully it's good now.


DOC: better dataset crossrefs; move sidebar; better dataset page title

Main motivation for these changes is that when the docstring link in mne.datasets.__init__.py gets rendered by autodoc in doc/python_reference.rst, it ends up making a self-referential link.  Now it is a link to a different, more useful page (the datasets overview page). Also:

changes a couple crossrefs targeting datasets_index.rst from :doc: to :ref: style
updates the datasets_index.rst page title
moves the sidebar in datasets_index.rst so it doesn't crash with the TOC

Thanks @drammock


CI: Jenkinsfile logic for master builds isn't working correctly

A build of the master branch of Cilium using the Ginkgo CI  uses the BDD-PR section of the Jenkinsfile instead of the BDD-Master section. Luckily, there is no issue here as the two sections are functionally equivalent in terms of the tests that are ran at this point in time, but since there has been discussion to use different logic for when builds should fail for PRs vs in master, it behooves us to make sure this works correctly.
Note how BDD-Master is skipped and BDD-PR is used here: https://jenkins.cilium.io/job/cilium-ginkgo/job/cilium/job/master/277/flowGraphTable/
Jenkinsfile logic:
  stage('BDD-Test-Master') {
            when {
                expression {
                    return env.GIT_BRANCH == 'origin/master';
                }
            }
...
 stage('BDD-Test-PR') {
            when {
                expression {
                    return env.GIT_BRANCH != 'origin/master';
                }
            }
...

I wonder if it is because the branch name is 'master' and not 'origin/master'? I wasn't able to find what the value of GIT_BRANCH in the environment was when triaging this issue.
https://jenkins.cilium.io/job/cilium-ginkgo/job/cilium/job/master/277/git/ shows that this may be the case.

Fixed by https://github.com/cilium/cilium/pull/3082


added semver official regex pattern

resolves #4453

Description
Added support for full semver without breaking support for 2 group versioning

Checklist

[x] I have signed the CLA
[x] I have run this code in development and it appears to resolve the stated issue
[x] This PR includes tests, or tests are not required/relevant for this PR
[ ] I have updated the CHANGELOG.md and added information about my change

I tested some cases on regex101.com. Looks legit to me
Unfortunately there seems to be no opportunity to extend some test cases :/

Great. That should do the trick :)

@b0lle Should be better now

Also, I signed the CLA over the weekend, wondering why the bot wont recognize me.

@cla-bot check

@alswang18 it looks like your formatting was a bit off when you signed the CLA. It should be just your username alswang18, no @ or github url. If you sign with that format you should be good to go!

Just tried it again

@cla-bot check

@gshank Can we merge this in?

@alswang18 could you do one last thing and add an entry in the Changelog file for this change. It would be under section 1.1.0. Also add yourself as a contributor!

Got it, just added @leahwicz

Thanks @alswang18 for the contribution!!!

Some GitHub Checks funkiness so closing and reopening to kick them off

@leahwicz sure, when do we merge?


[MM-47099] Migrate expand view to typescript

Summary
Migrate expand view to typescript
Ticket Link
Fixes https://github.com/mattermost/mattermost-server/issues/21070
Fixes https://mattermost.atlassian.net/browse/MM-47099
Related Pull Requests
NA
Screenshots
NA
Release Note
- Migrate expand view to typescript

Hello @VishakhaPoonia,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

E2E tests not automatically triggered, because PR has no approval yet. Please ask a developer to review and then try again to attach the QA label.


WMS support?

First, let me say thank you, this has saved me an incredible amount of time and effort already.
Now I know this is for the WMTS tile layers, but is there a chance to adopt also the WMS layers? See this url:
https://wms.geo.admin.ch/?REQUEST=GetCapabilities&SERVICE=WMS&VERSION=1.3.0
Personally I'm interested in ch.bfe.elektrizitaetsproduktionsanlagen which is not in the WMTS file, only the WMS. Perhaps there is another way but so far I have not gotten any of the wms layers to work with leaflet 1.9.2 which I'm currently using, and all links I find are for an ancient leaflet version (0.7 something) that then doesn't play well with other things I'm using.
If you have already a way to make them work well, any input is welcome, otherwise this is essentially a feature request to have WMS layers as well :)

First, let me say thank you, this has saved me an incredible amount of time and effort already.

Cool, thank you for the feedback!
Hmm, this issue kind of nerd-sniped me because I discovered something new about WMS that I was not previously aware of...
maxzoom
So the first problem that I suspect you ran into is that WMS layers in Leaflet have maxzoom: 18 by default, see documentation:

Since Swisstopo services use somewhat special zoom levels that go from 0 to 28, but the ones < 14 are usually useless, you would therefore not see the WMS layer unless you zoom out almost completely.
This is fixed easily by overriding maxzoom, see running example here:
var overlay = L.tileLayer.wms("https://wms.geo.admin.ch/", {
  layers: "ch.bfe.elektrizitaetsproduktionsanlagen",
  format: "image/png",
  transparent: true,
  maxZoom: 27
});
map.addLayer(overlay);

This "works", but doesn't look good, there are some weird line artifacts:

gutter
I had a look at how the WMS layers are rendered on map.geo.admin.ch, and it turns out they use the gutter option available in the OpenLayers TileWMS class (with a value of 30 for the layer you mentioned), which also gives an explanation on why this is required:

=> The lazy fix would be to ask Swisstopo to "properly configure the WMS service", but they are clearly aware of the issue and must have decided it was easier to handle it on the front end using the gutter option. The reason I assume that is because the value for gutter is not hard-coded, but loaded from this layerConfig.json file with a value set per layer.
The way this gutter option works is like this:
Instead of requesting this 256x256 pixel WMS tile...:

...request a bigger WMS image with 30 pixels margin on every side...:

...then cut off the 30px margin and only use the center 256x256 px for display:

"Solution"
Unfortunately, there is no gutter option in L.TileLayer.WMS, so I made a quick draft of implementing my own:

I used some hacks to get the tiles positioned correctly + a relatively obscure CSS feature (clip-path: inset(30px);) to remove the 30px margin, probably a better way to do it would be to do the clipping in JavaScript, and avoid messing with the tile positioning.

Wow. I didn't expect all of this, thank you very much. This is amazing.
The zoom setting fixed it right up for me, so that bit was an instant cure.
And the hack works flawlessly for my use, thank you very much!
This would certainly be a good addition ot the plugin. You can also talk to them on their google group, they are rather responsive.

This would certainly be a good addition to the plugin.

I will leave the issue open for now, not sure yet if/how to integrate it, I guess I should at least add some documentation about WMS maxzoom. The reason I'm reluctant to add the GutterWMS hack as-is, is that it depends on some Leaflet internals that are not part of the API and could change in a future release.

You can also talk to them on their google group, they are rather responsive.

I would encourage you to do that if you think they could change something that is useful for you, since I'm (currently) not using WMS in any of my projects.

I had exactly the same problem with the "ch.bfe.elektrizitaetsproduktionsanlagen" layer. Thank you for the brilliant workaround.


Add mypy lint

adding mypy is a great addition
however i would hold off on merging this until all issues have been fixed,
feel free to also add fixes for the current issues that result in "all checks have failed"
i will also add it to the "reformat_code.sh" script so that we can incrementally add mypy fixes
untill "all tests pass"
(mho)

should now pass after: #282 has been merged


Couldn't pull from Visual Studio Bower

Awesome widget. Had to export code and add directly to my project. Couldn't pull using Visual Studio Bower / Nuget. Was hoping you can publish to that site.

Hi @brianro
It should work with the usual bower install command: bower install twygmbh/angular-auto-height
Or what do you mean with Bower / Nuget? Do you need a package in the Nuget-Repository?

Yep -  you’re right – it a nuget package access by the VS Bower system. If you add that it becomes highly accessible to the VS.Next system.
From: Emanuel Imhof<EMAIL_ADDRESS>Sent: Thursday, August 13, 2015 4:09 AM
To: twygmbh/angular-auto-height<EMAIL_ADDRESS>Cc: brianro<EMAIL_ADDRESS>Subject: Re: [angular-auto-height] Couldn't pull from Visual Studio Bower (#5)
Hi @brianro https://github.com/brianro
It should work with the usual bower install command: bower install twygmbh/angular-auto-height
Or what do you mean with Bower / Nuget? Do you need a package in the Nuget-Repository?
—
Reply to this email directly or view it on GitHub https://github.com/twygmbh/angular-auto-height/issues/5#issuecomment-130586535 .  https://github.com/notifications/beacon/ADYRDE7yhwZiHfFE8F-rhnIJJ6kGG-3Vks5onFYTgaJpZM4FqfYQ.gif


Import seed failed

This is the screen what you never want to see:

Both wallet is Sparrow 2.0.0
Seed words are triple-checked, on the new PC it has been pasted from a password manager.
How should I import the seed phrase into the new wallet?
Let's assume I don't have the old PC just the seed.

Hello @wacher74
It sounds like your query would be best dealt with by the support team.
I'll have to refer you to the official support live chat with the ticket ID SPA07638
Please see the link below to our dedicated support line:
Sparrow Network DApps Support Ticket Requests.
Click on the live chat icon at the bottom corner of the page to initiate chat with a live support agent.

Dear scammers,
I never go to an unknow server to get help. (anyway: your server had 404)
I tried securely erase the words in order to publish my issue, but my BTC has been moved to new wallet, of course.

Hello @wacher74
Try to use another browser

Actually, Sparrow has never changed in this regard. It has always allowed the import of Electrum wallet files (including ESVS seeds if present), but not ESVS seeds directly. Therefore, your old wallet was imported from a wallet file, not from seed words. I don't believe it's good idea to have two identical looking seed standards, so I have restricted Sparrow in this way.
That said, it may be that a more lenient approach is now a better fit. I will consider this further. For now, importing the seed into Electrum, and then importing the Electrum wallet into Sparrow will work.

Okay, then I won’t mix these things up, as I don’t understand everything anyway.
I don’t even know exactly where this seed phrase comes from. I also have a 13-year-old Electrum wallet, but I couldn’t manage to import that file. I tried quite a lot, and it’s likely that this was the result of a newer Electrum wallet.
In the end, I created a new wallet with the 'BIP39 24 words' setting. After that, I deleted it and successfully re-imported it, transferring the funds in the process.
Thank you for your help.
(Translated by ChatGPT)


Removed specific BridgeDb version from MANIFEST specs

Removes specific version dependencies for BridgeDb.

The patch has been merged via another branch into the master branch.


Error entering Exported folder

I'm submitting a ...

[X] bug report
[ ] feature request
[ ] support request

General information
Error when you try to enter "Exported" folder, wrong number of arguments passed to function build vídeo_listing.
Addon version used
13.21 (daily?) (current master branch)
Description
When you try to open "Exported" folder, Kodi throw this add-on error:
Type Error: build_video_listing() takes exactly 2 arguments (1 given)
As far as I could get, the problem is in "resources/lib/navigation/directory.py", line 132, where the function is called with only one argument:
126:    def exported(self, pathitems=None):
...
130:        if library_contents:
131:            listings.build_video_listing(
132:                api.custom_video_list(library_contents))
Steps to Reproduce

Just installed the add-on
Entered plugin and entered credentials
Entered settings and chose "Perform total sync now"
Tried to enter "Exported" folder (all others lists without problem)

Expected behavior: List the items exported
Actual behavior: Kodi add-on error
Context (Environment)
Windows 10.0.17134.590, Leia 18.0 (20/01/2019)
Installation

[ ] I'm using this Netflix Repo
[ ] I'm using other Netflix Repo (Please specify which)
[X] I'm using a different source (Please tell which)
Cloned 'master' repository

Operating System

[ ] Linux (x86/x64)
[ ] OSX (x86/x64)
[X] Windows (x86/x64)
[ ] Linux (ARM)
[ ] Android

Additional information on the environment
Windows 10.0.17134.590, Leia 18.0 (20/01/2019)
Other information
Include the 2nd parameter in the call of function build_video_listing(), inside function exported, line 132 of directory.py
Screenshots

Solved changing line 132 to:
api.custom_video_list(library_contents), g.MAIN_MENU_ITEMS['exported'])
I imagine you don't need a PR for that, right? If you do, please tell me.

thank you my oversight after many hours of testing i was particularly tired


[$500] Workspace - Green dot appears in employee's workspace chat when employee creates an expense request

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: v1.4.11-9
Reproducible in staging?:  Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause-Internal Team
Slack conversation: @
Action Performed:
Precondition: User must be an employee of a Collect workspace created from OD.

Go to the workspace chat.
Tap + > Request money > Manual.
Create a manual request.
Note that green dot shows up in LHN.
Click on the expense preview.
Return to the main workspace chat.
Note that the green dot disappears.

Expected Result:
In Step 3, after creating an expense request as employee, green dot should not appear in the workspace chat for employee in LHN because employee cannot pay the request.
Actual Result:
In Step 3, after creating the request, green dot appears next to the workspace chat in LHN. It disappears after opening expense report and revisiting workspace chat in Step 6.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
https://github.com/Expensify/App/assets/115492554/69efd1d3-0c29-4dfd-a188-707d2a37d5d1

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~010cfcd497243f2823
Upwork Job ID:<PHONE_NUMBER>716250624
Last Price Increase: 2023-12-12

Proposal
Please re-state the problem that we are trying to solve in this issue.
Workspace - Green dot appears in employee's workspace chat when employee creates an expense request
What is the root cause of that problem?
There is not check if the  request owner is current user
What changes do you think we should make in order to solve the problem?
Add condition if optionOrReport.ownerAccountID equals to current user account id and return false in this case in requiresAttentionFromCurrentUser function
What alternative solutions did you explore? (Optional)

Closing this as it's not associated with a VIP, Wave, or high priority item.


Update to go1.22; speed up recursiveScan

With Go 1.23.0 being released, I figured it was time for us to update bincapz to 1.22. This PR handles the Go update along with package updates, including clog which requires Go 1.22.
I also updated the slogtest.TestContextWithLogger calls to slogtest.Context in samples_test.go.
Additionally, I add some concurrency to recursiveScan which makes quite a big impact when scanning numerous directories/files:
main:
goos: linux
goarch: amd64
pkg: github.com/chainguard-dev/bincapz/samples
cpu: AMD Ryzen 7 7840U w/ Radeon  780M Graphics
BenchmarkRun-16    	       1<PHONE_NUMBER>3 ns/op	761214920 B/op	 4789175 allocs/op
PASS
ok  	github.com/chainguard-dev/bincapz/samples	83.323s
New code:
goos: linux
goarch: amd64
pkg: github.com/chainguard-dev/bincapz/samples
cpu: AMD Ryzen 7 7840U w/ Radeon  780M Graphics
BenchmarkRun-16    	       1<PHONE_NUMBER>6 ns/op	762749936 B/op	 4789434 allocs/op
PASS
ok  	github.com/chainguard-dev/bincapz/samples	50.402s
We're still hitting single-threaded bottlenecks during certain portions of the code execution so I'm tracking those down.

I may tweak the concurrency a bit tomorrow.

Let's use go1.23 which is already available!

I'm going to break this PR apart -- one for the updates and another for performance/feature work.


pkg-config: not found

I tried running npx glitch-deploy on Ubuntu 1804 on Windows 10, it's showing this error.
/bin/sh: 1: pkg-config: not found
gyp: Call to 'pkg-config --libs-only-l libsecret-1' returned exit status 127 while in binding.gyp. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336:16)
gyp ERR! stack     at emitTwo (events.js:126:13)
gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.4.0-17134-Microsoft
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/aps120797/.npm/_npx/932/lib/node_modules/glitch-deploy/node_modules/keytar
gyp ERR! node -v v8.11.2
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok

After this, it started downloading Chromium r515411.
Here's Ubuntu's configuration:
$ lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 18.04 LTS
Release:        18.04
Codename:       bionic

I am not sure what the error is, but I think it's worth submitting an issue. 😃

I couldn’t reproduce your issue, however I run into https://github.com/glitch-tools/glitch-deploy/issues/9


Quota Template with dimensions from request header

Describe the bug
I tried to deploy a redis request quota based on your example https://preliminary.istio.io/docs/tasks/policy-enforcement/rate-limiting.html.
The idea is here to use an authorization header to define as dimension for redisquota.
This doesn't seem to work. It seems that the authorization header is ignored.
Expected behavior
If I access the URL in two different requests with two different authorization headers I'll have access if for my authorization header the quota is not exceeded. For the other account with a maxAmount of 1 request in 20s the request should be denied.
Steps to reproduce the bug
Here is my configuration
apiVersion: "config.istio.io/v1alpha2"
kind: redisquota
metadata:
  name: handler
  namespace: istio-system
spec:
  connectionPoolSize: 10
  redisServerUrl: redis-master.redis:6379
  quotas:
  - name: requestcount.quota.istio-system
    maxAmount: 1
    validDuration: 20s
    bucketDuration: 500ms
    rateLimitAlgorithm: ROLLING_WINDOW
---
apiVersion: "config.istio.io/v1alpha2"
kind: quota
metadata:
  name: requestcount
  namespace: istio-system
spec:
  dimensions:
    source: request.headers["X-Test-Header"] | "unknown"
    destination: destination.labels["app"] | destination.workload.name | "unknown"
---
apiVersion: config.istio.io/v1alpha2
kind: rule
metadata:
  name: quota
  namespace: istio-system
spec:
  # quota only applies if you are not logged in.
  # match: match(request.headers["cookie"], "user=*") == false
  actions:
  - handler: handler.redisquota
    instances:
    - requestcount.quota
---
apiVersion: config.istio.io/v1alpha2
kind: QuotaSpec
metadata:
  name: request-count
  namespace: istio-system
spec:
  rules:
  - quotas:
    - charge: 1
      quota: requestcount
---
apiVersion: config.istio.io/v1alpha2
kind: QuotaSpecBinding
metadata:
  name: request-count
  namespace: istio-system
spec:
  quotaSpecs:
  - name: request-count
    namespace: istio-system
  services:
  - name: ms-1
    namespace: microservices
    #  - service: '*'  # Uncomment this to bind *all* services to request-count
---

root@busybox:/# echo "$(date)" && curl https://ms-1.example.play/api/ms1  --insecure -H "X-Test-Header: 789" && echo ""
Thu Sep  6 14:27:35 UTC 2018
Hello World from ms1
root@busybox:/# echo "$(date)" && curl https://ms-1.example.play/api/ms1  --insecure -H "X-Test-Header: 789" && echo ""
Thu Sep  6 14:27:36 UTC 2018
Hello World from ms1
root@busybox:/# echo "$(date)" && curl https://ms-1.example.play/api/ms1  --insecure -H "X-Test-Header: 789" && echo ""
Thu Sep  6 14:27:37 UTC 2018
RESOURCE_EXHAUSTED:Quota is exhausted for: requestcount
root@busybox:/# echo "$(date)" && curl https://ms-1.example.play/api/ms1  --insecure -H "X-Test-Header: 123" && echo ""
Thu Sep  6 14:27:41 UTC 2018
RESOURCE_EXHAUSTED:Quota is exhausted for: requestcount

Here are the calls to access it via an external busybox container:
Version
istioctl version
Version: 1.0.1
GitRevision: 42773aacced474d97159902d20579a25b1f98106
User: root@832d5020b1d4
Hub: gcr.io/istio-release
GolangVersion: go1.10.1
BuildStatus: Clean

kubectl version
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.0", GitCommit:"925c127ec6b946659ad0fd596fa959be43f0cc05", GitTreeState:"clean", BuildDate:"2017-12-16T03:16:50Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.0", GitCommit:"91e7b4fd31fcd3d5f436da26c980becec37ceefe", GitTreeState:"clean", BuildDate:"2018-06-27T20:08:34Z", GoVersion:"go1.10.2", Compiler:"gc", Platform:"linux/amd64"}

Is Istio Auth enabled or not?
~/Downloads/darwin-amd64/helm template install/kubernetes/helm/istio \
    --name istio \
    --namespace istio-system \
    --set global.mtls.enabled=true \
    --set global.proxy.includeIPRanges="<IP_ADDRESS>/24" \ # also include pod ip range to prevent direct access to port via port scan
    --set sidecarInjectorWebhook.enabled=false \
    --set ingress.enabled=false \
    --set gateways.istio-ingressgateway.enabled=true \
    --set gateways.istio-ingressgateway.type=NodePort \
    --set gateways.istio-egressgateway.enabled=true \
    --set gateways.istio-egressgateway.type=NodePort \
    --set tracing.enabled=true \
    --set kiali.enabled=true \
    --set security.enabled=true \
    > ../istio.yaml

Environment
Ubuntu 16.04

The rule in your configuration is applying quota unconditionally.
So all requests are going to be subject to the same quota requestcount.quota.istio-system, with source and destination dimensions.
If you wish you use the authorization header, you should

dimension quota by request.headers["authorization"] and you can also reinstate match condition in the rule which is commented out in the config.

Hi @mandarjog,
sorry I'm a bit confused.
How do I specify this, does I have to change this
  quotas:
  - name: requestcount.quota.istio-system
    maxAmount: 1
    validDuration: 20s
    bucketDuration: 500ms
    rateLimitAlgorithm: ROLLING_WINDOW

to
  quotas:
  - name:request.headers["authorization"]
    maxAmount: 1
    validDuration: 20s
    bucketDuration: 500ms
    rateLimitAlgorithm: ROLLING_WINDOW

?
Why do I need the match condition in the quota, I thought the match in it is only if you will bypass the quota for special users?

So to be more general, we are using in istio a JWT-Policy that connects to an keycloak server to validate JWTokens that are send as Authorization header.
Now I would be able to set Quotas per User.  Now I see that the jwt generates some values like: request.auth.principal.
I will do the quota dynamically per principal  because I don't know the users in the Keycloak.
As described in the tutorial https://preliminary.istio.io/docs/tasks/policy-enforcement/rate-limiting/ it can be per Client IP (In the above example we have effectively rate limited productpage at 2 rps per client IP). I copied the example above and adjusted it now to have as source of the dimensions in the quota-CRD the principal:
apiVersion: "config.istio.io/v1alpha2"
kind: quota
metadata:
  name: requestcount
  namespace: istio-system
spec:
  dimensions:
    source: request.auth.principal
    destination: destination.labels["app"] | destination.workload.name | "unknown"

So I don't understand why this and also my old example with authorization header won't work, when you describe in the tutorial, that it's possible by client ip?
Here is also my auth policy:
apiVersion: "authentication.istio.io/v1alpha1"
kind: "Policy"
metadata:
  name: "ms-1"
  namespace: microservices
spec:
  targets:
  - name: ms-1
  peers:
  - mtls:
      mode: STRICT
  origins:
  - jwt:
      issuer: "https://<url>/auth/realms/default"
      jwksUri: "https://<url>/auth/realms/default/protocol/openid-connect/certs"
      audiences:
        - test-api
  principalBinding: USE_ORIGIN

Is no quota being applied at all ? Or are all requests being rejected ?
https://github.com/istio/istio/wiki/Collecting-Logs-and-Debug-information#turn-on-debug-on-mixer
Turn on debug for API on mixer and send us logs from istio-policy.

It seems that the requests are all in one quota and not in seperate per principal.
Attached you can find two requests with two different users. The first user has access and the second not because he is in the same quota cache.
First User principal: https:///auth/realms/default/e8f6311e-57b0-49f2-bd84-b4e056ffd2f4
Second User principal: https:///auth/realms/default/e92d9f8a-ae6d-407f-889f-15a1121f33fc
2018-09-07T21:01:07.488465Z	debug	api	Dispatching Check
2018-09-07T21:01:07.488475Z	debug	No destinations found for variety: table='66', variety='0'
2018-09-07T21:01:07.488480Z	debug	api	Check approved
2018-09-07T21:01:07.492400Z	debug	api	Check (GlobalWordCount:203, DeduplicationID:03560275-a5cd-4c78-9d84-0a5164eba5687525633059764136553, Quota:map[requestcount:{1 false}])
2018-09-07T21:01:07.492417Z	debug	api	Dispatching Preprocess Check
2018-09-07T21:01:07.492522Z	debug	attributes	Creating bag with attributes: connection.mtls               : true
context.protocol              : http
context.reporter.kind         : inbound
context.reporter.uid          : kubernetes://ms-1-6fdfdd5557-r5j44.microservices
destination.ip                : [0 0 0 0 0 0 0 0 0 0 255 255 10 200 0 53]
destination.namespace         : microservices
destination.port              : 8080
destination.principal         : cluster.local/ns/microservices/sa/default
destination.service           : ms-1.microservices.svc.cluster.local
destination.service.host      : ms-1.microservices.svc.cluster.local
destination.service.name      : ms-1
destination.service.namespace : microservices
destination.service.uid       : istio://microservices/services/ms-1
destination.uid               : kubernetes://ms-1-6fdfdd5557-r5j44.microservices
origin.ip                     : [10 200 0 26]
request.auth.audiences        : test-api
request.auth.claims           : {request.auth.claims map[<removed for security reasons>] 0xc4368b2420}
request.auth.presenter        : test-api
request.auth.principal        : https://<removed for security reasons>/auth/realms/default/e8f6311e-57b0-49f2-bd84-b4e056ffd2f4
request.auth.raw_claims       : {<removed for security reasons>}
request.headers               : {request.headers map[x-b3-sampled:1 x-original-uri:/api/ms1 x-b3-traceid:34019ecc565da288 sec-istio-authn-payload:<removed for security reasons> x-request-id:6927fa83-c7ba-966b-9bf9-d15b2d64102b x-b3-flags:0 user-agent:curl/7.35.0 x-forwarded-proto:https x-b3-parentspanid:1ed56b64def8ab39 x-real-ip:<IP_ADDRESS> x-forwarded-port:443 content-length:0 x-forwarded-host:ms-1.example.play x-b3-spanid:cf4676fdf26e961f x-forwarded-for:<IP_ADDRESS>, <IP_ADDRESS> :method:GET accept:*/* :authority:ms-1.example.play x-scheme:https x-envoy-external-address:<IP_ADDRESS> :path:/api/ms1 authorization:Bearer <removed for security reasons>] 0xc4368b2420}
request.host                  : ms-1.example.play
request.method                : GET
request.path                  : /api/ms1
request.scheme                : http
request.time                  : 2018-09-07 21:01:09.303934952 +0000 UTC
request.useragent             : curl/7.35.0
source.principal              : cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
source.uid                    : kubernetes://istio-ingressgateway-5ccb8776dc-c5vr6.istio-system
source.user                   : cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account

2018-09-07T21:01:07.492554Z	debug	no rules for namespace, using defaults: table='66', variety='3', ns='microservices'
2018-09-07T21:01:07.492623Z	debug	begin dispatch: destination='kubernetes:handler.kubernetesenv.istio-system(kubernetesenv)'
2018-09-07T21:01:07.492690Z	debug	complete dispatch: destination='kubernetes:handler.kubernetesenv.istio-system(kubernetesenv)' {err:<nil>}
2018-09-07T21:01:07.492732Z	debug	api	Dispatching to main adapters after running processors
2018-09-07T21:01:07.492871Z	debug	api	Attribute Bag:
connection.mtls               : true
context.protocol              : http
context.reporter.kind         : inbound
context.reporter.uid          : kubernetes://ms-1-6fdfdd5557-r5j44.microservices
destination.ip                : [0 0 0 0 0 0 0 0 0 0 255 255 10 200 0 53]
destination.namespace         : microservices
destination.port              : 8080
destination.principal         : cluster.local/ns/microservices/sa/default
destination.service           : ms-1.microservices.svc.cluster.local
destination.service.host      : ms-1.microservices.svc.cluster.local
destination.service.name      : ms-1
destination.service.namespace : microservices
destination.service.uid       : istio://microservices/services/ms-1
destination.uid               : kubernetes://ms-1-6fdfdd5557-r5j44.microservices
origin.ip                     : [10 200 0 26]
request.auth.audiences        : test-api
request.auth.claims           : {<removed for security reasons>}
request.auth.presenter        : test-api
request.auth.principal        : https://<removed for security reasons>/auth/realms/default/e8f6311e-57b0-49f2-bd84-b4e056ffd2f4
request.auth.raw_claims       : {<removed for security reasons>}
request.headers               : {request.headers map[x-envoy-external-address:<IP_ADDRESS> :path:/api/ms1 authorization:Bearer <removed for security reasons> accept:*/* :authority:ms-1.example.play x-scheme:https x-request-id:6927fa83-c7ba-966b-9bf9-d15b2d64102b x-b3-flags:0 user-agent:curl/7.35.0 x-b3-sampled:1 x-original-uri:/api/ms1 x-b3-traceid:34019ecc565da288 sec-istio-authn-payload:<removed for security reasons> x-forwarded-port:443 content-length:0 x-forwarded-proto:https x-b3-parentspanid:1ed56b64def8ab39 x-real-ip:<IP_ADDRESS> :method:GET x-forwarded-host:ms-1.example.play x-b3-spanid:cf4676fdf26e961f x-forwarded-for:<IP_ADDRESS>, <IP_ADDRESS>] 0xc4368b2420}
request.host                  : ms-1.example.play
request.method                : GET
request.path                  : /api/ms1
request.scheme                : http
request.time                  : 2018-09-07 21:01:09.303934952 +0000 UTC
request.useragent             : curl/7.35.0
source.principal              : cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
source.uid                    : kubernetes://istio-ingressgateway-5ccb8776dc-c5vr6.istio-system
source.user                   : cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
---
destination.container.name    : ms-1
destination.labels            : map[app:ms-1 pod-template-hash:2989881113]
destination.name              : ms-1-6fdfdd5557-r5j44
destination.owner             : kubernetes://apis/apps/v1/namespaces/microservices/deployments/ms-1
destination.serviceAccount    : default
destination.workload.name     : ms-1
destination.workload.namespace: microservices
destination.workload.uid      : istio://microservices/workloads/ms-1
source.ip                     : [10 200 0 26]
source.labels                 : map[app:istio-ingressgateway istio:ingressgateway pod-template-hash:1776433287]
source.name                   : istio-ingressgateway-5ccb8776dc-c5vr6
source.namespace              : istio-system
source.owner                  : kubernetes://apis/apps/v1/namespaces/istio-system/deployments/istio-ingressgateway
source.serviceAccount         : istio-ingressgateway-service-account
source.workload.name          : istio-ingressgateway
source.workload.namespace     : istio-system
source.workload.uid           : istio://istio-system/workloads/istio-ingressgateway

2018-09-07T21:01:07.492887Z	debug	api	Dispatching Check
2018-09-07T21:01:07.492896Z	debug	No destinations found for variety: table='66', variety='0'
2018-09-07T21:01:07.492901Z	debug	api	Check approved
2018-09-07T21:01:07.492924Z	debug	api	Dispatching Quota: requestcount
2018-09-07T21:01:07.492931Z	debug	no rules for namespace, using defaults: table='66', variety='2', ns='microservices'
2018-09-07T21:01:07.492966Z	debug	begin dispatch: destination='quota:handler.redisquota.istio-system(redisquota)'
2018-09-07T21:01:07.492980Z	debug	adapters	key: requestcount.quota.istio-system maxAmount: 1	{"adapter": "handler.redisquota.istio-system"}
2018-09-07T21:01:07.494481Z	debug	complete dispatch: destination='quota:handler.redisquota.istio-system(redisquota)' {err:<nil>}
2018-09-07T21:01:07.494522Z	debug	api	Quota 'requestcount' result: v1.CheckResponse_QuotaResult{ValidDuration:20000000000, GrantedAmount:1, ReferencedAttributes:v1.ReferencedAttributes{Words:[]string(nil), AttributeMatches:[]v1.ReferencedAttributes_AttributeMatch(nil)}}
2018-09-07T21:01:09.778265Z	debug	istio.io/istio/mixer/adapter/kubernetesenv/cache.go:145: Watch close - *v1.Pod total 0 items received
2018-09-07T21:01:11.208946Z	debug	api	Check (GlobalWordCount:203, DeduplicationID:03560275-a5cd-4c78-9d84-0a5164eba5687525633059764136554, Quota:map[requestcount:{10 true}])
2018-09-07T21:01:11.208976Z	debug	api	Dispatching Preprocess Check
2018-09-07T21:01:11.209102Z	debug	attributes	Creating bag with attributes: check.cache_hit               : true
connection.mtls               : true
context.protocol              : http
context.reporter.kind         : inbound
context.reporter.uid          : kubernetes://ms-1-6fdfdd5557-r5j44.microservices
destination.ip                : [0 0 0 0 0 0 0 0 0 0 255 255 10 200 0 53]
destination.namespace         : microservices
destination.port              : 8080
destination.principal         : cluster.local/ns/microservices/sa/default
destination.service           : ms-1.microservices.svc.cluster.local
destination.service.host      : ms-1.microservices.svc.cluster.local
destination.service.name      : ms-1
destination.service.namespace : microservices
destination.service.uid       : istio://microservices/services/ms-1
destination.uid               : kubernetes://ms-1-6fdfdd5557-r5j44.microservices
origin.ip                     : [10 200 0 26]
quota.cache_hit               : true
request.auth.audiences        : test-api
request.auth.claims           : {<removed for security reasons>}
request.auth.presenter        : test-api
request.auth.principal        : https://<removed for security reasons>/auth/realms/default/e92d9f8a-ae6d-407f-889f-15a1121f33fc
request.auth.raw_claims       : {<removed for security reasons>}
request.headers               : {request.headers map[x-b3-parentspanid:c5dcad37ae33a331 x-b3-flags:0 x-b3-sampled:1 :authority:ms-1.example.play x-forwarded-proto:https :path:/api/ms1 x-scheme:https content-length:0 accept:*/* authorization:Bearer <removed for security reasons> user-agent:curl/7.35.0 x-forwarded-host:ms-1.example.play :method:GET x-original-uri:/api/ms1 x-b3-traceid:7d5bf7cea838e2c7 x-envoy-external-address:<IP_ADDRESS> x-real-ip:<IP_ADDRESS> x-b3-spanid:771883934f0f4cf9 x-request-id:37b6d066-3145-9035-b89c-ecc8a1fed955 x-forwarded-for:<IP_ADDRESS>, <IP_ADDRESS> x-forwarded-port:443 sec-istio-authn-payload:<removed for security reasons>] 0xc428332060}
request.host                  : ms-1.example.play
request.method                : GET
request.path                  : /api/ms1
request.scheme                : http
request.time                  : 2018-09-07 21:01:13.021201421 +0000 UTC
request.useragent             : curl/7.35.0
source.principal              : cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
source.uid                    : kubernetes://istio-ingressgateway-5ccb8776dc-c5vr6.istio-system
source.user                   : cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account

2018-09-07T21:01:11.209137Z	debug	Check approved from cache
2018-09-07T21:01:11.209149Z	debug	no rules for namespace, using defaults: table='66', variety='3', ns='microservices'
2018-09-07T21:01:11.209222Z	debug	begin dispatch: destination='kubernetes:handler.kubernetesenv.istio-system(kubernetesenv)'
2018-09-07T21:01:11.209312Z	debug	complete dispatch: destination='kubernetes:handler.kubernetesenv.istio-system(kubernetesenv)' {err:<nil>}
2018-09-07T21:01:11.209374Z	debug	api	Dispatching to main adapters after running processors
2018-09-07T21:01:11.209481Z	debug	api	Attribute Bag:
check.cache_hit               : true
connection.mtls               : true
context.protocol              : http
context.reporter.kind         : inbound
context.reporter.uid          : kubernetes://ms-1-6fdfdd5557-r5j44.microservices
destination.ip                : [0 0 0 0 0 0 0 0 0 0 255 255 10 200 0 53]
destination.namespace         : microservices
destination.port              : 8080
destination.principal         : cluster.local/ns/microservices/sa/default
destination.service           : ms-1.microservices.svc.cluster.local
destination.service.host      : ms-1.microservices.svc.cluster.local
destination.service.name      : ms-1
destination.service.namespace : microservices
destination.service.uid       : istio://microservices/services/ms-1
destination.uid               : kubernetes://ms-1-6fdfdd5557-r5j44.microservices
origin.ip                     : [10 200 0 26]
quota.cache_hit               : true
request.auth.audiences        : test-api
request.auth.claims           : {<removed for security reasons>}
request.auth.presenter        : test-api
request.auth.principal        : https://<removed for security reasons>/auth/realms/default/e92d9f8a-ae6d-407f-889f-15a1121f33fc
request.auth.raw_claims       : {<removed for security reasons>}
request.headers               : {request.headers map[x-original-uri:/api/ms1 x-b3-traceid:7d5bf7cea838e2c7 x-envoy-external-address:<IP_ADDRESS> x-real-ip:<IP_ADDRESS> x-b3-spanid:771883934f0f4cf9 :method:GET x-forwarded-for:<IP_ADDRESS>, <IP_ADDRESS> x-forwarded-port:443 sec-istio-authn-payload:<removed for security reasons> x-request-id:37b6d066-3145-9035-b89c-ecc8a1fed955 x-b3-flags:0 x-b3-sampled:1 :authority:ms-1.example.play x-b3-parentspanid:c5dcad37ae33a331 x-scheme:https content-length:0 accept:*/* authorization:Bearer <removed for security reasons> user-agent:curl/7.35.0 x-forwarded-host:ms-1.example.play x-forwarded-proto:https :path:/api/ms1] 0xc428332060}
request.host                  : ms-1.example.play
request.method                : GET
request.path                  : /api/ms1
request.scheme                : http
request.time                  : 2018-09-07 21:01:13.021201421 +0000 UTC
request.useragent             : curl/7.35.0
source.principal              : cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
source.uid                    : kubernetes://istio-ingressgateway-5ccb8776dc-c5vr6.istio-system
source.user                   : cluster.local/ns/istio-system/sa/istio-ingressgateway-service-account
---
destination.container.name    : ms-1
destination.labels            : map[app:ms-1 pod-template-hash:2989881113]
destination.name              : ms-1-6fdfdd5557-r5j44
destination.owner             : kubernetes://apis/apps/v1/namespaces/microservices/deployments/ms-1
destination.serviceAccount    : default
destination.workload.name     : ms-1
destination.workload.namespace: microservices
destination.workload.uid      : istio://microservices/workloads/ms-1
source.ip                     : [10 200 0 26]
source.labels                 : map[istio:ingressgateway pod-template-hash:1776433287 app:istio-ingressgateway]
source.name                   : istio-ingressgateway-5ccb8776dc-c5vr6
source.namespace              : istio-system
source.owner                  : kubernetes://apis/apps/v1/namespaces/istio-system/deployments/istio-ingressgateway
source.serviceAccount         : istio-ingressgateway-service-account
source.workload.name          : istio-ingressgateway
source.workload.namespace     : istio-system
source.workload.uid           : istio://istio-system/workloads/istio-ingressgateway

2018-09-07T21:01:11.209493Z	debug	api	Dispatching Check
2018-09-07T21:01:11.209504Z	debug	No destinations found for variety: table='66', variety='0'
2018-09-07T21:01:11.209508Z	debug	api	Check approved
2018-09-07T21:01:11.209530Z	debug	api	Dispatching Quota: requestcount
2018-09-07T21:01:11.209536Z	debug	no rules for namespace, using defaults: table='66', variety='2', ns='microservices'
2018-09-07T21:01:11.209557Z	debug	begin dispatch: destination='quota:handler.redisquota.istio-system(redisquota)'
2018-09-07T21:01:11.209572Z	debug	adapters	key: requestcount.quota.istio-system maxAmount: 1	{"adapter": "handler.redisquota.istio-system"}
2018-09-07T21:01:11.211306Z	debug	complete dispatch: destination='quota:handler.redisquota.istio-system(redisquota)' {err:<nil>}
2018-09-07T21:01:11.211335Z	debug	api	Quota denied: {8 handler.redisquota.istio-system:redisquota: Resource exhausted []}
2018-09-07T21:01:11.211349Z	debug	api	Quota 'requestcount' result: v1.CheckResponse_QuotaResult{ValidDuration:0, GrantedAmount:0, ReferencedAttributes:v1.ReferencedAttributes{Words:[]string(nil), AttributeMatches:[]v1.ReferencedAttributes_AttributeMatch(nil)}}

@bianpengyuan can you please take a look at this?
@DaspawnW are you able to replicate this by using memquota adapter?

I noticed the same behaviour when using request.headers["x-forwarded-for"].
Requests are not rate limited per client IP at all, even though the documentation clearly says so. I assume that there is some kind of general issue regarding the request counters.
The memquota adapter also seems to introduce some inconsistencies. Some requests are denied even though they should be allowed.
See https://groups.google.com/forum/#!topic/istio-users/iWOPtcUHINs for further information.

There are several separate issues:
@DaspawnW in the initial issue that you posted, the source dimension is configured as source: request.headers["X-Test-Header"] | "unknown", however header map key are all lower cased, which essentially makes source unknown in all instances and explains behavior you observed (quota enforcement cannot distinguish different test header). For the second issue with authorization header or auth principle, I am not sure what do you mean by "won't work". What do you observe exactly? Based on log seems like the quota adapter is invoked correctly.
@denniseffing I think this works as expected.. @mandarjog correct me if I'm wrong. Envoy starts multiple threads based on number of cores. Each thread only deals with one request at a time and also each thread instantiates a mixer filter (mixer client) to talk to mixer. Mixer client runs a prefetch algorithm which by default will fetch 10 tokens at the beginning, and exhausts the configured quota amount (5 per 5s). All other threads except the first thread cannot fetch any quota, which causes 429 even for the first five requests. I experimented with proxy concurrency as 1 and this behavior is gone.

@bianpengyuan Rate limiting per client IP (based on request.headers["x-forwarded-for"] as outlined in the Istio docs) doesn't work at all.
I tested this with the following shell script executing simultaneously on two different machines:
while true; do
  curl -o /dev/null --silent --head --write-out "$(date +"%H:%M:%S.%3N") %{http_code}\n" $1
done

Only 5 requests per 5 seconds are allowed overall, not for each machine.
I turned on debugging in Mixer to take a look at the attribute values:
request.headers map
{
  request.headers map[
    upgrade-insecure-requests:1
    x-forwarded-proto:http
    accept-encoding:gzip, deflate
    accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
    x-envoy-internal:true
    cache-control:max-age=0
    :method:GET
    x-forwarded-for:<IP_ADDRESS>
    user-agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36
    x-b3-traceid:64122dcb2ab6fce0
    x-b3-spanid:64122dcb2ab6fce0
    accept-language:de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7
    content-length:0 :path:/productpage
    x-request-id:bec0cbf7-f54f-946b-8655-a8968d0dd4db
    :authority:<IP_ADDRESS>:31380 x-b3-sampled:1
  ] 0xc4294c00c0
}

Selected quota override
quota override:
{
  map[
    destination:productpage
  ] 5 5s
} selected for {
  requestcount.quota.istio-system
    map[
      destination:productpage
      destinationVersion:v1
      source:<IP_ADDRESS>
  ]
}
{"adapter": "handler.memquota.istio-system"}

I don't know where the IP <IP_ADDRESS> for x-forwarded-for comes from, but it is definitely not the IP of the machine that made the request to the productpage in the first place. It seems to be a Cluster IP but I couldn't find a pod that uses it.
The IP is the same, regardless of the origin of the initial request. That also explains why the rate limit is not applied for each client IP.

@denniseffing That is your kube-proxy's IP

@bianpengyuan Yup, that makes sense. Do you have any thoughts on the rate limit per client IP issue?

Hi @bianpengyuan,
here a short example:
User 1 sends requests with a principal x (request.auth.principal). If his quota is exceeded he can't send any requests (as expected ;-) )
User 2 sends requests with a principal y (request.auth.principal). He is directly denied without any successful request.

The bug in rate limiting per client IP is directly related to #7679, #7328 and #7918.

Hi @denniseffing,
It seems to be related to the x-forwarded-ip but not to the custom header, or?

@DaspawnW When I first commented in this issue, I thought that your request.auth.principal issue is directly related to the rate limiting per client IP issue, but it is not. I didn't know that the x-forwarded-for header contains the wrong IP address (which is stated in #7679 and explains why rate limiting per client IP doesn't work).
I hope this clarifies the misunderstanding.


centos

Expected behavior
Actual behavior
Information about the Issue
Steps to reproduce the behavior

...
...

No information provided - Closing

docker pull centos

docker pull centos is timeout


Allow to specifc OrgID in ProviderConfig

Description of your changes

The ProviderConfig was extended by an additional optioal property orgID, which can be used to specify the Grafana Organization by the corresponding ID of it, in order to create ProviderConfig specific to a organization.
This is achieved by moving the orgID from the referenced secret's payload to ProviderConfig.Spec, resulting in increased flexibility, by eliminating the need to construct the secret's JSON payload dynamically.
If no orgID is specified, the value defaults to 1.
Example without orgID:
apiVersion: grafana.jet.crossplane.io/v1alpha1
kind: ProviderConfig
metadata:
  name: grafana-provider
spec:
  credentials:
    source: Secret
    secretRef:
      name: grafana-creds
      namespace: crossplane
      key: credentials

Example with orgID:
apiVersion: grafana.jet.crossplane.io/v1alpha1
kind: ProviderConfig
metadata:
  name: grafana-provider
spec:
  orgID: 1
  credentials:
    source: Secret
    secretRef:
      name: grafana-creds
      namespace: crossplane
      key: credentials

Fixes #2
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested

A ProviderConfig without orgID was created and a Folder resource has been provisioned.
It was succssfully created and reconciled inside the Grafana Organization with ID 1.
The ProviderConfig was updated with orgID: 2 and a Folder resource has been provisioned.
It was succssfully created and reconciled inside the Grafana Organization with ID 2.

@julienduchesne I've also removed the non-sensitive orgId from the ps.Env, so that it is exclusively handled in the ps.Configuration map with fa6a5fd2d294341f0ad51a4f2970ce99d92a8333


Mkdocs based documentation static site generation

This PR consists of changes to build and deploy a static site based on Mkdocs. The documentation site will be rebuild and deployed when there is a commit to the develop branch using github action.

@horsburgh Let me know if we should use the material theme as suggested by @devincowan. You can see the use of that theme here - https://cuahsi.github.io/mkdocs-example/sample_data/registering_samples/
The search functionality seems to be better in the material theme.

I didn't mean to take use back to debating themes, I think we already made that decision. I was just hoping we might be able to improve the search withing the readthedocs theme.
However, it looks like that isn't an option.
Here are two explanations of how the themes conduct their search:
Material

https://squidfunk.github.io/mkdocs-material/blog/2021/09/13/search-better-faster-smaller/
Client side, no page refresh
Has search previews and highlighting
Includes search as you type

Readthedocs

https://blog.readthedocs.com/search-improvements/
uses Elasticsearch
No "Search as you type"
No search previews

@pkdash and @devincowan - on today's CZHub CI Team call, we decided that people prefer the Material theme and we should use that one.


Z-Moves through protect aren't calculable

Z-moves through protected become quartered versions of their original damage rolls.

(Fixed by 5e8fbf9, whoops)


HELP! why log a warn when Channel connect failure .  version:netty-4.0.26.Final

version:netty-4.0.26.Final
when connect failure that not log anything in netty-4.0.25.Final.  But in netty-4.0.26.Final that will log warn "io.netty.channel.ChannelException: java.net.SocketException: Socket is closed".
I don't kown why and  how to shutdown  this warn.

I guess I have fixed this in 4.0.27.Final-SNAPSHOT. Could you try the snapshot build, @chzhuo ?

No,where is 4.0.27.Final-SNAPSHOT?   I think i need  come back to 4.0.25.Final

http://clinker.netty.io/jenkins/job/netty-oraclejdk7/branch/4.0/lastSuccessfulBuild/artifact/

@chzhuo let me close this... Please re-open if you still see the issue after upgrade to 4.0.27.Final.


Link diagnosis with visit

🚀 Feature Proposal
A diagnosis should be able to be connected to a visit. When a diagnosis is being created, a list of visits for the current patient should show.

Hi @jackcmeyer! I would love to try and tackle this issue.

Go for it @janmarkusmilan !


make correct aspect ratio on Moksha logo

Changed the aspect from 100:127 to 1:1 to fix the change of Logo's pixmap.
I've uplodade some useless .fuse_hidden file, please remove them (I've tried, but I've failed :( )

Merged and updated. Thank you!


[BUG] build error, "the type forward for ... causes a cycle" (Managed build only / windows 10 / visual studio)

I'm trying to build using the build instructions found here (Managed only building) but i ran into errors when building UWP
    C:\Users\Thomas\source\repos\SkiaSharp\binding\Binding.Shared\PlatformConfiguration.cs(37,15): error CS0103: The name 'Package' does not exist in the current context [C:\Users\Thomas\source\repos\SkiaSharp\binding\HarfBuzzSharp.UWP\HarfBuzzSharp.UWP.csproj]
         C:\Users\Thomas\source\repos\SkiaSharp\binding\Binding.Shared\PlatformConfiguration.cs(38,10): error CS0731: The type forwarder for type 'Windows.System.ProcessorArchitecture' in assembly 'Windows' causes a cycle [C:\Users\Thomas\source\repos\SkiaSharp\binding\HarfBuzzSharp.UWP\HarfBuzzSharp.UWP.csproj]
         C:\Users\Thomas\source\repos\SkiaSharp\binding\Binding.Shared\PlatformConfiguration.cs(38,10): error CS1069: The type name 'ProcessorArchitecture' could not be found in the namespace 'Windows.System'. This type has been forwarded to assembly 'Windows, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null, ContentType=WindowsRuntime' Consider adding a reference to that assembly. [C:\Users\Thomas\source\repos\SkiaSharp\binding\HarfBuzzSharp.UWP\HarfBuzzSharp.UWP.csproj]
         C:\Users\Thomas\source\repos\SkiaSharp\binding\Binding.Shared\PlatformConfiguration.cs(38,41): error CS0731: The type forwarder for type 'Windows.System.ProcessorArchitecture' in assembly 'Windows' causes a cycle [C:\Users\Thomas\source\repos\SkiaSharp\binding\HarfBuzzSharp.UWP\HarfBuzzSharp.UWP.csproj]
         C:\Users\Thomas\source\repos\SkiaSharp\binding\Binding.Shared\PlatformConfiguration.cs(38,41): error CS1069: The type name 'ProcessorArchitecture' could not be found in the namespace 'Windows.System'. This type has been forwarded to assembly 'Windows, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null, ContentType=WindowsRuntime' Consider adding a reference to that assembly. [C:\Users\Thomas\source\repos\SkiaSharp\binding\HarfBuzzSharp.UWP\HarfBuzzSharp.UWP.csproj]
         C:\Users\Thomas\source\repos\SkiaSharp\binding\Binding.Shared\PlatformConfiguration.cs(39,20): error CS0103: The name 'ProcessorArchitecture' does not exist in the current context [C:\Users\Thomas\source\repos\SkiaSharp\binding\HarfBuzzSharp.UWP\HarfBuzzSharp.UWP.csproj]

here is the full output of .\bootstrapper.ps1 -t everything --skipExternals=all
log.txt
I looked it up on google, some indications were pointing towards the fact that the windows10 sdk may be wrongly installed, i tried to uninstall and reinstall visual studio, the error remains.
Also one other problem that i noticed, is that the "Windows 10 SDK (10.0.10240)" is not available(anymore?) in the visual studio installer (so i did not install it, may the problem be coming from this?), are the compile instruction up to date ?
My ulterior motive for building skiasharp is to do some debugging and development for Xamarin.Forms on the Xamarin Android and Xamarin iOS platforms only , I dont need UWP. Is there a way to disable completely the build of UWP?
Expected Behavior
the compilation should be successful
Actual Behavior
the compilation triggers errors
Basic Information

Version with issue:  latest commit as of 29 March 2021 (1a779558b3696412f2c13b7fb64b554f30daf4e7)
IDE:  Visual Studio
Operating System Microsoft Windows 10 Professional edition , version 10.0.19042 Build 19042

after digging a little in the azure yaml config files , i found this:
https://github.com/mono/SkiaSharp/blob/1a779558b3696412f2c13b7fb64b554f30daf4e7/scripts/azure-templates-bootstrapper.yml#L122-L131
As i supposed downloading the exact version 10.0.10240 solved most of the build problems, even if i had to run some commands several times (i had to generate documentation, then re run externals-download and then the everything again ...)
also the nuget target does not work on windows as the "windows" solution does not build the ios stuff by default .
when using skipExternals(using downloaded native libraries), should that be possible to build the managed dll even for mac/ios and use the downloaded ios native stuff and build the complete nuget even on windows ? i dont think we need to run mtouch on the managed dll stuff as it will be done by projects using the library ...

solution:
add -packall=true -buildall=true options to the bootstrapper.ps1 commandline


 I guess it means, that it defaults to a very high scaling...
I'd think you could add a way-displays configuration like so (or like documented for way-displays):
.config/way-displays/cfg.yaml:
ARRANGE: ROW
ALIGN: TOP
SCALING: TRUE
AUTO_SCALE: TRUE
LOG_THRESHOLD: INFO

SCALE:
    - NAME_DESC: 'LG Display 0x05DB Unknown'
      SCALE: 1

This actually lead me to an idea: we could make the shortcuts for scaling persist!

I wonder why the default initial scale is so high for you. We didn't change anything about the defaults of way-displays..

@boredland thank you for taking the time to analyze it.
I will try to apply this next week :)

Added a hint regarding way-displays to the support docs. If it doesn't work, please give me some feedback!

@all-contributors please add @Tr4sK for reporting a bug


Handle breaking change in Dashboard API in version 1.208+

Description
There is a breaking change in version 1.208+ coming for the Dashboard API:
1) POST - /dashboards - Create a new dashboard

BEFORE:
• the owner property in the dashboardMetadata object within the request body must be null or undefined, otherwise the validation fails
• the sharingDetails property is present in dashboardMetadata

1.208+:
• It becomes mandatory to specify the owner property as a non-null value, otherwise the validation fails.
• dropped sharingDetails from dashboardMetadata

2) PUT - /dashboards/{id} - Update a dashboard

BEFORE:
• the owner property is not properly validated to always be not-null
• the sharingDetails property is present in dashboardMetadata

1.208+:
• the owner property will be always validated to be not-null
• dropped sharingDetails from dashboardMetadata

3) GET - /dashboards/{id} - Get a dashboard
BEFORE:
• the sharingDetails property is present in dashboardMetadata

1.208+:
• dropped sharingDetails from dashboardMetadata

Since this API is still in early-adoper state, its version will not be increased.
This is especially painful if the same configuration needs to be applied to environments in different versions. monaco should handle the apply of the config for the user in a graceful fashion.
Describe the solution you'd like
If you try to apply a dasboard configuration with the old (pre 1.208) format to an enviromnent which is on 1.208+:

monaco should insert a owners property into the json before throwing it to the API.
the user should get a warning message, indicating that the configuration needs to be updated.

If you try to apply a dasboard configuration with the new (1.208+) format to an enviromnent which is still on an older version pre 1.208:

monaco should remove the owners property from the json before throwing it to the API.

Describe alternatives you've considered
If you don't need to deploy configuration to multiple environments in different versions, you can fix your configurations like so:
Configuration yaml (note the double quotes ' and " for the owner):
myDashboard:
  - name: "My Dashboard"
  - owner<EMAIL_ADDRESS>
Dashboard JSON (there are no quotes for owners):
{
  "dashboardMetadata": {
    "name": "{{ .name }}",
    "shared": true,
    "owner": {{ .owner }},
   ...

@didiladi this would be the first time monaco modifies params on upload depending on cluster version?

@tatomir146 yes, this would be the first time we need to query the dynatrace version first. Do you see any other alternative way of implementing this? :thinking:

@tatomir146 yes, this would be the first time we need to query the dynatrace version first. Do you see any other alternative way of implementing this? :thinking:

Getting cluster version before updating would totally make sense e.g. to check if API is supported etc but I don't like the idea we are modifying JSON on places where there is no placeholder defined. This can actually be fixed bu just changing configuration and from 208 on this will be the standard. As there is a workaround for this I would probably skip this for now.

Getting cluster version before updating would totally make sense e.g. to check if API is supported etc but I don't like the idea we are modifying JSON on places where there is no placeholder defined. This can actually be fixed bu just changing configuration and from 208 on this will be the standard. As there is a workaround for this I would probably skip this for now.

Almost got a heart attach when try to run one of my Azure pipelines and all dashboard set-up was failing, after 3 weeks and it fails when was working before. Until I read this thread.

Almost got a heart attach when try to run one of my Azure pipelines and all dashboard set-up was failing, after 3 weeks and it fails when was working before. Until I read this thread.

My intention with this GitHub issue partly was to document the issue and describe the workaround above. I'm happy that this worked. :smile:
@tatomir146 I agree, this issue can be fixed by changing the configuration when deploying to 1.208+. Its not worth the effort to fix it in monaco.

My intention with this GitHub issue partly was to document the issue and describe the workaround above. I'm happy that this worked. :smile:
@tatomir146 I agree, this issue can be fixed by changing the configuration when deploying to 1.208+. Its not worth the effort to fix it in monaco.

Will be handled/discussed in #209 -> Closing this issue.


Redirect legacy relay route with params

Summary
This fixes the issue whereby params where not included when redirecting legacy relay routes.
Changes

Include params when redirecting legacy relay routes

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 5 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.03%) to 93.708%

Totals

Change from base Build<PHONE_NUMBER>:
0.03%

Covered Lines:
6088

Relevant Lines:
6286

💛  - Coveralls


Feature proposal

fly builds should allow filtering failed builds. e.g. fly -t target builds --status failed

would prefer to have people just use grep

For future reference my use case is the following: I am investigating failures in a job that runs every few seconds. I am fetching thousands of build results (~100K) just to grep them locally for the failed ones. This query eats up a lot of resources on the server side and makes me wait about a minute for the results to show up which is unacceptable! ;)


Yield Asset gas test

Task: Feature Name:
High Level Description
Specific Changes
Function x was added ...
Code

[ ] Unit test 100% coverage
[ ] Does your code follow the naming and code documentation guidelines?

Documentation

[ ] Is your code up to date with the spec?
[ ] Have you added your tests to the testing doc?

Can we close this ?