Add 'parameters' attribute on bars

Why?
I came across an issue where I needed more information on graph bars that meta or value could provide.
Solution
Add a new attribute called parameters that can be an object or anything the user needs to provide more information on every bar.
I've also renamed getMetaData  for getDataFromSelector because the path to extract data from parameters is the same as the one for meta.

Hey, how comes meta was not sufficient for your use-case? Can you give more details?

Hey,
I use the tooltip plugin and the meta value is used within the tooltip so I figured I should add a new possibility to pass information for every bar.
My use-case is that I have a statistics graph per day. On click of a bar, we need to know which day it is  with some other parameters in order to "drill down" into that day and display informations of that specific day.


fb-check-ttf.py: Test for each dependency at the start of the script

Did a fresh install on OS X 10.11.5, and I get this error.
I am missing something?
[~]-------> fontbakery-check-ttf.py /Users/alexei/github.com/cyrealtype/Lora-Cyrillic/Lora-Regular.ttf
ERROR    '/Users/alexei/github.com/cyrealtype/Lora-Cyrillic/Lora-Regular.ttf' is missing a METADATA.pb file!
ERROR    OS/2 VendorID is 'UKWN', a font editor default. You should set it to your own 4 character code, and register that code with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx
The following table(s) in the font have been ignored by FontForge
  Ignoring 'DSIG' digital signature table
Warning: Mac string is a subset of the Windows string in the 'name' table
 for the Fullname string in the English (US) language.
Traceback (most recent call last):
  File "/usr/local/bin/fontbakery-check-ttf.py", line 3064, in <module>
    main()
  File "/usr/local/bin/fontbakery-check-ttf.py", line 1874, in main
    dehinted.name])
  File "/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 523, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 711, in __init__
    errread, errwrite)
  File "/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1343, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

Hey Alexey!
try brew install ttfautohint

@felipesanches I thought we had checks at the very start of the script that tested for the presence of all dependencies, but now all I see is
https://github.com/googlefonts/fontbakery/blob/ced628d4af8b7db22f9bc348efd46721fddaeedb/fontbakery-check-ttf.py#L33-L36

@anthrotype
Hi Cosimo!

try brew install ttfautohint

Thank you, that actually worked for me.

We don't do it on the top.
We do check at runtime, such as here (checking if ot-sanitize is available):
https://github.com/googlefonts/fontbakery/blob/b4691fb581d545749b4b955c096506d5e5c9b9cd/fontbakery-check-ttf.py#L1503-L1510
I'll use the same approach for the availability of ttfautohint

Since you closed this please confirm that all dependencies are now checked.


Move "single_space_after_construct" to Symfony ruleset

Refs https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/4435#issuecomment-714363283

(For CI failure see #5226)

Has this been approved by the Symfony core team?

Has this been approved by the Symfony core team?

I had asked @nicolas-grekas in https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/4998#issuecomment-653889555, maybe they will want to confirm here?

can you rebase on latest of master to see the tests?

Rebased, CI green now (thanks to Graham Campbell). Also I forgot to notify @localheinz (for information)

reworked to match new rulesets structure in #5252
thanks for working on this, @guilliamxavier !


server.lua:12: attempt to call  a nil value (global 'GetMaxChunkID'

Am I missing something???

GetMaxChunkID is in grid.lua and is a script that is loaded on the client and server, maybe your server file is loading for the grid for some reason

is there a way to fix this?

Well I solved it by moving the resource somewhere else, but now I'm not getting any errors but still with;
[Mumble]
[Warning] Not connected to mumble

That error comes from having either voice chat disabled in your GTA settings or not running onesync on your server or if you are  trying to use an external server and it's not online

Can you explain, trying to use an external server and it's not online, because I know it's not my GTA serttings nor is it my server not running onesync.

you'd know if you are trying to use an external server, you need to set the option manually in the config, so if it's not that then it's one of the first 2 issues.

 Thank you so much. Sorry for wasting your time.


disallowKeywordsInComments: disallow todo and fixme

@mrjoelkemp

Coverage increased (+0.02%) when pulling f0c5a40efa523581c02c4d1cc35d5109449013a9 on joesepi:disallow-keywords into b4ab2287c1cd0052bf13a69c61302b8e24933035 on jscs-dev:master.

Coverage increased (+0.02%) when pulling ffdbc65941a8fa08a3f313e189c15fac8cb8c10a on joesepi:disallow-keywords into b4ab2287c1cd0052bf13a69c61302b8e24933035 on jscs-dev:master.

I did a couple commit --amends after an initial style check fail. That's part of the reason why you see two coverall reports.

This fix is for this feature request:
https://github.com/jscs-dev/node-jscs/issues/646

@joesepi, thanks for contributing, friend!
Good work. Found a few nits to address, but also:

commit message should say which issue it closes:

disallowKeywordsInComments: new rule

Fixes #646

the rule should take in true or a string that represents a regex to use instead of the default "/Joel/".

Thanks again!

@mrjoelkemp and @mikesherov and whoever else is interested. I updated the rule and test. I moved the bit where the comment is broken up by lines (for better carat placement) out of the check itself. My intent, after discussing it with Joel earlier, is to move it to a comment util or somewhere similar. I thought this would be a good point to get feedback and if things are good, I can pull it out entirely. Thanks!!

@joesepi you have a few style violations in your code, which is why travis is failing. Running npm test locally will reveal the erros so you don't have to wait for travis.

@mikesherov and @mrjoelkemp and others: all good comments. Thank you. I have updated the code and ran npm test locally so Travis shouldn't complain. Please recheck and comment if need be.

Coverage decreased (-0.25%) to 94.89% when pulling a952d2ee4d25982356511017834c70410ceb9553 on joesepi:disallow-keywords into 30049c1da94b590b783c1ba948da1d639b8c06bc on jscs-dev:master.

You guys, these are all great comments. Thank you! The code has improved greatly. Check it out!
@mrjoelkemp @mikesherov @zxqfox

Coverage decreased (-0.12%) to 95.02% when pulling 40f34a96c1c4a33f7e9f727828dd0c4b2f435505 on joesepi:disallow-keywords into 30049c1da94b590b783c1ba948da1d639b8c06bc on jscs-dev:master.

ping @joesepi

Sorry folks. I wanted to wrap this up before I went on vacation but it didn't happen. I will try to finish it in the coming days.

Landed with the fixes mentioned! Thanks again for the hard work here @joesepi !


Add timeout to requests calls

Many developers will be surprised to learn that requests library calls do not include timeouts by default. This means that an attempted request could hang indefinitely if no connection is established or if no data is received from the server.
The requests documentation suggests that most calls should explicitly include a timeout parameter. This codemod adds a default timeout value in order to set an upper bound on connection times and ensure that requests connect or fail in a timely manner. This value also ensures the connection will timeout if the server does not respond with data within a reasonable amount of time.
While timeout values will be application dependent, we believe that this codemod adds a reasonable default that serves as an appropriate ceiling for most situations.
Our changes look like the following:
 import requests

- requests.get("http://example.com")
+ requests.get("http://example.com", timeout=60)

More reading

https://docs.python-requests.org/en/master/user/quickstart/#timeouts

I have additional improvements ready for this repo! If you want to see them, leave the comment:
@pixeebot next

... and I will open a new PR right away!
Powered by: pixeebot (codemod ID: pixee:python/add-requests-timeouts)

added here: https://github.com/JupiterOne/jupiterone-api-client-python/blob/main/jupiterone/client.py#L95


Confirm that fill value types match builder types

https://github.com/dantrim/parquet-writer/blob/4894784504c2b9ae86cf1f74260ba88f81fe17a9/src/cpp/parquet_writer.cpp#L323
Each instance of the constexpr knows which type the input data is, which in principle can be checked against the builder type if needed.
Need to think about this, but it would help provide better error messages in the cases where calls to Writer::fill are provided incorrect data types (e.g. uint32_t instead of int32_t. This would also help narrow the potential for errors related to filling struct types and mis-ordering fields.

addressed in #20


Add nodeSelector option for helm chart

Add nodeSelector to templates in the helm chart. This will enables users to better select what nodes can be scheduled for kuberhealthy without modifying the cluster-wide tolerations just for kuberhealthy. Default values for the nodeSelector have been left empty for those who don't care for this functionality.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Stem plot doesn't show (on python)

Hi all and thanks for the great work on this library.
I am still getting familiarized with the API using the Python demo code, but I am having problem getting the stem plot to work.
I am using the exact code from demo.py:
# stemplot
Y = np.linspace(0, 2 * math.pi, 70)
X = np.column_stack((np.sin(Y), np.cos(Y)))
viz.stem(
    X=X,
    Y=Y,
    opts=dict(legend=['Sine', 'Cosine'])
)

But nothing shows up on the client. There is no output error either (running on iPython the result from running that black is u'pane_34ecea25d1... so it seems to be correctly creating a pane, but it's just not showing.
(I am running Python 2.7.12 btw)

same here with python 3.6

The equivalent code in Lua works correctly:
viz = require 'visdom'()
Y = torch.range(0, 2 * math.pi, 2 * math.pi / 70)
X = torch.cat(torch.sin(Y), torch.cos(Y), 2)
viz:stem{X = X, Y = Y, options = {legend = {'Sine', 'Cosine'}}}

I'm looking into the Python wrapper to see what is happening.

The underlying issue is that the data generated by the stem plot creates NaNs, which aren't turned into null by the JSON decoder. I will send out a fix soon.

Solved by https://github.com/facebookresearch/visdom/commit/930f7802e5214535da1cf46b01b961313813e1c4.


osconfig_agent: add structured logging

Here is an example log output:
insertId: usv1ycg1pa3yfp
jsonPayload:
localTimestamp: '2018-12-17T18:55:46.670894Z'
message: Gathering instance inventory.
logName: projects//logs/osconfig
receiveTimestamp: '2018-12-17T18:55:47.690763956Z'
resource:
labels:
instance_id: 'xxxxxxxxxxxxxxxxxx'
project_id:
zone: us-central1-c
type: gce_instance
severity: INFO
sourceLocation:
file: inventory.go
function: github.com/GoogleCloudPlatform/compute-image-tools/cli_tools/osconfig_agent/inventory.RunInventory
line: '133'
timestamp: '2018-12-17T18:55:46.670894800Z'


Update unhead minimum version

Environment
Nuxt project info:                                                                                17:32:00

Operating System: Linux
Node Version:     v16.20.0
Nuxt Version:     3.7.0
CLI Version:      3.7.3
Nitro Version:    2.6.2
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      app, ssr
Runtime Modules:  -
Build Modules:    -

Reproduction
https://stackblitz.com/edit/github-vbzu4s?file=nuxt.config.ts
Describe the bug
If the project currently has an older version of unhead (like 1.3.9), the template heading doesn't work well with the separator.
In the reproduction environment, the title should be "My site name" and it is "| My site name".
With the latest version of unhead (1.4.1) it works well.
Additional context
No response
Logs
No response

this should be implemented


Image import not reporting errors

Bug description
Image import does not report errors correctly. I tried different invalid tar files and portainer always says "Image successfully uploaded" but the image is not listed later. This is problematic when you think you have a valid image like I did. The image I had was created using windows powershell and redirection operator docker save busybox > busybox.tar. This does produce broken images (https://stackoverflow.com/questions/51389226/). When I tried to load these images locally docker does report correctly Error processing tar file(exit status 1): archive/tar: invalid tar header.
Expected behavior
Container should correctly report the error so that you know something is wrong with your image. It would be gread if the original error message is included and maybe a hint that there exists problems with docker save and windows powershell.
Steps to reproduce the issue:

Go to http://portainerhost:port/#/images/import
Click on 'Select file'
Select any invalid file
Click on 'Upload'
A banner occurs saying "Image successfully uploaded" but in reality an error occured
The image is not listed under images

Technical details:

Portainer version: Image latest (I think its 1.23.0)
Docker version: 19.03.5
Platform: linux x86_64 Ubuntu 18.04.3 LTS
Command used to start Portainer: docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
Browser: Version 81.0.4044.122 (Offizieller Build) (64-Bit)

I did some tests with version 2.1.1 and still not working.
Any updates when we going to have this working?


partial decode ggml bin for more info

This looks great. Would be worth a look from @pdevine on the model config structs (added him as a reviewer so he sees this :-)


Cannot write anything in input

I am trying to use an example from documentation:
<input type="text" id="date" />
$(document).ready(function(){
  $("#date").inputmask("d/m/y",{ "placeholder": "dd/mm/yyyy" });
});

This code is not working with the latest version of inputmask (3.3.4-101), but working with old one (3.3.4-92), check also this example in plunker: http://plnkr.co/edit/imD8pkfbIjbqqqFWs3EF?p=preview

@andreyezy ,
WHen you look at the changelog you can read that I removed the definitions for d, m, y and others, as people expected that they provide full validation for dates etc.  So I left only the date aliases which provide the functionality.  I will replace the example from the readme.
Thx for reporting

Thank you for your answer!
Yes, please add an example that shows how to specify date format like dd-mm-yyyy or mm-dd-yyyy in the latest version 👍
Another question: you do have certain validation of dates in old versions (for ex. 3.3.4-92), so that user cannot write month "13" or year "3000". But user can write date 31.02.2016 although it cannot be more that 29th of February.
Is that what you mean by "full validation for dates"?

@andreyezy ,
An example is already in the https://github.com/RobinHerbots/Inputmask#date--datetime-extensions


Horizontal line missing under socials

current:
https://main--zeiss--hlxsites.hlx.page/de/semiconductor-manufacturing-technology/news-und-events/smt-pressemeldung/2023/neue-multifunktionsfabrik-in-wetzlar

expected:
https://www.zeiss.de/semiconductor-manufacturing-technology/news-und-events/smt-pressemeldung/2023/neue-multifunktionsfabrik-in-wetzlar.html

I think this is present on some pages and absent on others. Probably it can be based on an author provided setting.
See  item 2 of #126

Yes correct the horizontal line is not on https://www.zeiss.de/semiconductor-manufacturing-technology/news-und-events/smt-pressemeldung/ausgezeichnete-ausbildung-bei-zeiss.html


Crashing upon joining multiplayer

Player connects to the server for a very short time then gets disconnected and this fatal error pops up a few times in the log
Minecraft version: 1.16.5
Forge version: 36.2.9
w2w: 1.16.1-<IP_ADDRESS>
Xaero's Minimap: 21.21.0_Forge_1.16.5
Waystones: 1.16.5-7.6.3
[13:47:00] [Render thread/FATAL]: Error executing task on Client
java.lang.NullPointerException: null
	at noobanidus.mods.w2w.WaypointHandler.makeWaypoint(WaypointHandler.java:29) ~[?:?]
	at noobanidus.mods.w2w.WaystonePacket.handle(WaystonePacket.java:44) ~[?:?]
	at noobanidus.mods.w2w.WaystonePacket.lambda$handle$0(WaystonePacket.java:39) ~[?:?]
	at noobanidus.mods.w2w.WaystonePacket$$Lambda$24280/1091450535.run(Unknown Source) ~[?:?]
	at net.minecraftforge.fml.network.NetworkEvent$Context.enqueueWork(NetworkEvent.java:215) ~[?:?]
	at noobanidus.mods.w2w.WaystonePacket.handle(WaystonePacket.java:39) ~[?:?]
	at noobanidus.mods.w2w.Networking$$Lambda$20264/1825061347.accept(Unknown Source) ~[?:?]
	at net.minecraftforge.fml.network.simple.IndexedMessageCodec.lambda$tryDecode$3(IndexedMessageCodec.java:128) ~[?:?]
	at net.minecraftforge.fml.network.simple.IndexedMessageCodec$$Lambda$22706/516743121.accept(Unknown Source) ~[?:?]
	at java.util.Optional.ifPresent(Optional.java:159) ~[?:1.8.0_51]
	at net.minecraftforge.fml.network.simple.IndexedMessageCodec.tryDecode(IndexedMessageCodec.java:128) ~[?:?]
	at net.minecraftforge.fml.network.simple.IndexedMessageCodec.consume(IndexedMessageCodec.java:162) ~[?:?]
	at net.minecraftforge.fml.network.simple.SimpleChannel.networkEventListener(SimpleChannel.java:80) ~[?:?]
	at net.minecraftforge.fml.network.simple.SimpleChannel$$Lambda$2897/1682999176.accept(Unknown Source) ~[?:?]
	at net.minecraftforge.eventbus.EventBus.doCastFilter(EventBus.java:247) ~[eventbus-4.0.0.jar:?]
	at net.minecraftforge.eventbus.EventBus.lambda$addListener$11(EventBus.java:239) ~[eventbus-4.0.0.jar:?]
	at net.minecraftforge.eventbus.EventBus$$Lambda$2899/1461565620.invoke(Unknown Source) ~[?:?]
	at net.minecraftforge.eventbus.EventBus$$Lambda$2538/260376462.invoke(Unknown Source) ~[?:?]
	at net.minecraftforge.eventbus.EventBus.post(EventBus.java:302) ~[eventbus-4.0.0.jar:?]
	at net.minecraftforge.eventbus.EventBus.post(EventBus.java:283) ~[eventbus-4.0.0.jar:?]
	at net.minecraftforge.fml.network.NetworkInstance.dispatch(NetworkInstance.java:86) ~[?:?]
	at net.minecraftforge.fml.network.NetworkHooks.lambda$onCustomPayload$1(NetworkHooks.java:91) ~[?:?]
	at net.minecraftforge.fml.network.NetworkHooks$$Lambda$22689/900938546.apply(Unknown Source) ~[?:?]
	at java.util.Optional.map(Optional.java:215) ~[?:1.8.0_51]
	at net.minecraftforge.fml.network.NetworkHooks.onCustomPayload(NetworkHooks.java:91) ~[?:?]
	at net.minecraft.client.network.play.ClientPlayNetHandler.func_147240_a(ClientPlayNetHandler.java:1904) ~[?:?]
	at net.minecraft.network.play.server.SCustomPayloadPlayPacket.func_148833_a(SCustomPayloadPlayPacket.java:59) ~[?:?]
	at net.minecraft.network.play.server.SCustomPayloadPlayPacket.func_148833_a(SCustomPayloadPlayPacket.java:11) ~[?:?]
	at net.minecraft.network.PacketThreadUtil.func_225383_a(SourceFile:21) ~[?:?]
	at net.minecraft.network.PacketThreadUtil$$Lambda$23181/2076779844.run(Unknown Source) ~[?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213166_h(SourceFile:144) [?:?]
	at net.minecraft.util.concurrent.RecursiveEventLoop.func_213166_h(SourceFile:23) [?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213168_p(SourceFile:118) [?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213160_bf(SourceFile:103) [?:?]
	at net.minecraft.client.Minecraft.func_195542_b(Minecraft.java:948) [?:?]
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:607) [?:?]
	at net.minecraft.client.main.Main.main(Main.java:184) [?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_51]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_51]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_51]
	at java.lang.reflect.Method.invoke(Method.java:497) ~[?:1.8.0_51]
	at net.minecraftforge.fml.loading.FMLClientLaunchProvider.lambda$launchService$0(FMLClientLaunchProvider.java:51) [forge-1.16.5-36.2.9.jar:36.2]
	at net.minecraftforge.fml.loading.FMLClientLaunchProvider$$Lambda$478/789885174.call(Unknown Source) [forge-1.16.5-36.2.9.jar:36.2]
	at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:37) [modlauncher-8.0.9.jar:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:54) [modlauncher-8.0.9.jar:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:72) [modlauncher-8.0.9.jar:?]
	at cpw.mods.modlauncher.Launcher.run(Launcher.java:82) [modlauncher-8.0.9.jar:?]
	at cpw.mods.modlauncher.Launcher.main(Launcher.java:66) [modlauncher-8.0.9.jar:?]

I'm afraid it looks like Xaero's has changed the internals again. I'm going to have to look to see if there's an API of some description to handle it.

As Xaero's has no actual API and there's regular code changes that make it difficult to keep up-to-date or maintain backwards compatibility, I'm either going to have to talk to Xaero about an API or retire this mod. Unfortunately, I think the latter is my preferred option at the minute, as my plate is pretty full.


Support customization of unit price in UI

Support customization of unit price in the UI to allow for the inclusion of additional costs, such as software licenses, in the unit price formula.
In this way, we can manually calculate the costs into the unit price through the billing model, without developing relevant function pages.

No more valid in the latest version


Allreduce broken on simulator

The simulator does not write the results of allreduce back correctly.

@TristanLaan could you describe how to reproduce this? I can't reproduce it with test_sim.py --all.

I can't reproduce it anymore as well, seems to be solved.


Very slow performance with Kafka Consumer

Description
I'm opening a new issue, based on this one:https://github.com/confluentinc/confluent-kafka-dotnet/issues/554
We've tried all the configuration available in our disposal and in the issue above, but still the max performance we could achieve was around 600messages per second, without any processing on our side.
for example, with Java consumer (and console consumer) we can achieve a rate of 100 times that number, (60K)
We are not 100% sure why. And we are certain it is something one our side, and we should achieve more.
We are using blocking.ms =1, latest (0.11.5) SDK and tried sync, async, less frequent commits, StoreOffsets, nothing really seems like it increasing performance.
How to reproduce
Simple Kafka consumer,
Poll instead of consume with events.
commit % 400, 5, and 100
Checklist
Please provide the following information:

[V] Confluent.Kafka nuget version: 0.11.5
[V] Apache Kafka version:  1.0.0
[ ] Client configuration: changing....
[V] Operating system: Centos 7.4
[ ] Provide logs (with "debug" : "..." as necessary in configuration)
[ ] Provide broker log excerpts
[ ] Critical issue

if you run the benchmark test, what throughput do you get? on my machine to a local broker, 0.11.5 gives me about 150k msg/s (1.0-experimental is about double that).
https://github.com/confluentinc/confluent-kafka-dotnet/tree/master/test/Confluent.Kafka.Benchmark

Hi, since it is a very long holiday in Israel I will update on Wednesday when I will have access to the machines. I'm waiting to see the results as much as you do.

Using the benchmark we've managed to digest (with consume and poll) around 30K messages in 450ms which is about 65K per second. on a dev machine.
So back to the drawing board, why our client in the app being so slow. the implementations seems similar. But the core issue is that this is probably not the sdk's fault.
Thanks.

Hi @roikatz,
Would you mind sharing the root cause of the slow performance if it is not much trouble for you?
We are currently experiencing very similar behavior with latency optimized setup from the docs
Thanks


Rename the class "Indentifiers" to "Session"

Rename the class Indentifiers to Session since the class caters to all the necessary details of a session.
This is a precursor to bring in the "Sampling" changes.
#no-changelog

I'm not sure what's the purpose of doing this. I think this name is confusing with other classes such as SessionsStartEvent and FirebaseSessions. I also worry about adding too much responsibility to 1 class.

I'm not sure what's the purpose of doing this. I think this name is confusing with other classes such as SessionsStartEvent and FirebaseSessions. I also worry about adding [too much responsibility to 1 class].

Session is a data construct on its own (containing its own attributes like sessionID, previous sessionId, should sample and more) - The current class identifiers is a generic class containing all the identifiers which does not provide separation of concerns.
Session is just the construct - SessionStartEvent is the event that gets dispatched to Firelog. So, they are separate. I don't think that would be confusing.
About FirebaseSessions, I think that would need some renaming, but since it is namespaced with Firebase - I would not be worried as that is how the library is named and it is needed to identify the starting class of the library.


Implement an Axon Server plugin to be able to manipulate events in Axon Server console.

maybe this will be helpful: https://discuss.axoniq.io/t/looking-for-an-example-of-a-simple-axon-server-plugin/3417

see https://github.com/holixon/axon-avro-serializer/pull/93

implemented by 66e8700332729ce872ec7cd93f399ddc33a3e44e


All chains from Chain-Reg should be added to the test matrix.

[ ] bitcanna
[ ] cosmoshub
[ ] firmachain
[ ] likecoin
[ ] persistence
[ ] stargaze
[ ] bitsong
[ ] cronos
[ ] gravitybridge
[ ] lumnetwork
[ ] provenance
[ ] starname
[ ] bostrom
[ ] cryptoorgchain
[ ] impacthub
[ ] microtick
[ ] regen
[ ] terra
[ ] agoric
[ ] carbon
[ ] decentr
[ ] injective
[ ] nomic
[ ] rizon
[ ] akash
[ ] cerberus
[ ] desmos
[ ] irisnet
[ ] odin
[ ] secretnetwork
[ ] thorchain
[ ] arkh
[ ] dig
[ ] juno
[ ] oraichain
[ ] sentinel
[ ] umee
[ ] cheqd
[ ] emoney
[ ] kava
[ ] osmosis
[ ] shentu
[ ] vidulum
[ ] axelar
[ ] chihuahua
[ ] evmos
[ ] kichain
[ ] panacea
[ ] sifchain
[ ] bandchain
[ ] comdex
[ ] fetchhub
[ ] konstellation
[ ] sommelier

Blocked on https://github.com/strangelove-ventures/interchaintest/issues/407

This should be merged first: https://github.com/strangelove-ventures/interchaintest/pull/399

Test seems to have a race condition. :-(


silx.io: Changed open function behavior: lock HDF5 files when opening them

Checklist:

[x] The PR title is formatted as: <Module or Topic>: <Action> <Summary> (see contributing guidelines)

This PR reverts PR #3939 which disabled HDF5 file locking when opening a file with silx.io.open.
Disabling HDF5 file locking is causing trouble (see #4071) because there is an issue with external links when file locking is disabled (see https://forum.hdfgroup.org/t/external-link-and-file-locking-disabled-issue/12012).
So as of today, disabling file locking when opening a HDf5 file is not safe and IMO shouldn't be the default.
Looking at the Larch link in the issues PR #3939 solved(see issues #3938, #3936), it looks it is calling directly h5py_utils.File instead of silx.io.open for hdf5 file so it should not be affected.
attn @woutdenolf @maurov

@t20100 thanks for making me aware of this change. In Larch, the wanted default behavior is to have file locking disabled by default because we want to be able to read HDF5 files while their are open in BLISS for writing, without blocking or corrupting the file. My understanding is that silx.io.h5py_utils.File is the entry point for this behavior. Do you confirm it?

My understanding is that silx.io.h5py_utils.File is the entry point for this behavior. Do you confirm it?

Yes, I confirm. You can also use h5py.File(... locking=False) with recent versions of h5py and libhdf5 (with h5py_utils.File you don't have to care about the versions).
However beware that we recently found an issue with external links when disabling file locking: If you open a hdf5 file and access an external link from it, the "external" file is opened with file locking. This is causing issues which motivates reverting the change in silx.io.open.

However beware that we recently found an issue with external links when disabling file locking: If you open a hdf5 file and access an external link from it, the "external" file is opened with file locking. This is causing issues which motivates reverting the change in silx.io.open.

Thanks for letting me know about this bug. Please, could you tell me how to programmatically recognize that a group in a HDF5 is an external link?

You can use h5py.Group.get and h5py.ExternalLink:
isinstance(h5group.get("/h5/path", getlink=True), h5py.ExternalLink)
# or
h5group.get("/h5/path", getclass=True, getlink=True) is h5py.ExternalLink

But beware (again!), this only tells you whether or not the last part of the path is an external link.
For instance, "/ext_link_group/data" will not be reported as an external link even if "/ext_link_group" is an external link to a group... You need to check each part of the path.


Movie Fluid optical flow not working

Hi,
I'm trying to get the Pixelflow Movie Fluid sketch working on a 2013 Mac Pro. Whenever I run the sketch, my video plays, but the optical flow doesn't appear to be affecting the fluid. There's some slight blurring and smoothing going on in density mode, but the temperature, velocity, and pressure modes are either black or just the regular video. However, I am able to affect the fluid by clicking and dragging the mouse. When I run the sketch I get this in the console: "WARNING: Output of vertex shader 'line_domain' not read by fragment shader"
Here are the specs of the machine:
Mac Pro (Late 2013)
macOS Sierra v10.12.5
3.5 GHz 6-Core Intel Xeon ES
32 GB 1866 MHz DDR3
AMD FirePro D700 6144 MB
There's also this info that prints in the console when I run the sketch, if that's helpful:
OPENGL_VENDOR:         ATI Technologies Inc.
OPENGL_RENDERER:       AMD Radeon HD - FirePro D700 OpenGL Engine
OPENGL_VERSION:        4.1 ATI-1.51.8
GLSLVersionString:     #version 410 core
GLSLVersionNumber:     4.10.0
GLVersion:             4.1 (Core profile, arb, compat[ES2, ES3], FBO, hardware) - 4.1 ATI-1.51.8
GLVendorVersionNumber: 1.51.8 (ATI-1.51.8)
Any ideas? Thanks!

What version of pixelflow are you using?
Just in case, make sure you update to the latest v0.60, and also have the latest version of your graphics-card driver installed. (https://github.com/diwi/PixelFlow/issues/7)
Does the Exampe "OpticalFlow_Basic" work? ... to rule out any other potential error-sources.
When you run it, you should get something like this on the screen.
You can ignore the warning, it shouldnt cause any real issues.

Thanks for the quick response! After updating to Pixelflow v0.60 and restarting, OpticalFlow_Basic still isn't working.

I have the latest update for my graphics drivers. I just updated them two days ago.

Thats weird, no errors printed and unfortunately very difficult to debug for me since i cant reproduce this error in any way.
There is another example called ImageProcessing_Filter.
I built it for testing various filters, ... like gaussian blur and sobel egde, both used for the optical flow. So if you run this example and test both filters, it would narrow the source of errors a bit.
By any chance, are there other examples that fail to run as well? like the fluid simulations, skylight renderer?

When I run ImageProcessing_Filter and select Distance Transform / Voronoi the console continuously prints "DistanceTransform.create update | GL_ERROR: invalid operation." Nothing else returns an error or appears to now work.
Most other examples I've tried--including fluid simulation and skylight renderer sketches--appear to run fine. The ones that give me trouble are the Capture and Optical flow sketches. When I ran OpticalFlow_CaptureVerletParticles and was dragging the mouse around I got an error "ArrayIndexOutOfBoundsException: - 530" and then the sketch froze. Seems to happen when I drag the mouse beyond the bottom of the window. Not sure if that's in any way related to the other issues I'm having.
Another curious issue is that when I run OpticalFlow_Capture, the webcam feed comes on for a moment, then the webcam turns off. After that, if I go into another application like Photobooth, the webcam doesn't work until I unplug it and plug it back in again. I tried another webcam and had a similar thing happen. With the second camera the feed didn't even come on for a second. The camera just turned off immediately. It couldn't be seen by Photobooth until unplugged and replugged.
Sorry if including these other issues is confusing rather than helpful. I know relatively little about Javascript and even less about GLSL so I'm not sure how these problems might be related. Thanks!

the ArrayIndexOutOfBoundsException will be fixed in the next release.
For now you can manually fix your local example like i did here, adding these 2 lines:
https://github.com/diwi/PixelFlow/blob/master/examples/OpticalFlow_CaptureVerletParticles/OpticalFlow_CaptureVerletParticles.java#L228
Webcam issues on OpticalFlow_Capture:
Its probably best to check if capturing itself is the problem and test it in a separate very simple sketch, ... again to minimize the possible source for this error.
You could try to test some of the capture examples here:
https://processing.org/reference/libraries/video/index.html
https://processing.org/reference/libraries/video/Capture.html
Other than that, I'm afraid, the optical flow and distance transform problems you encounter can only be fixed by debugging more in depth (especially since no meaningful errors are thrown) on a similar machine to yours.

Thanks so much for your help. I understand there isn't much you can do without error information or access to my machine. I'll keep working at it and let you know if I find anything useful.

Same issue on my computer
OS Sierra / iMac 2012 / Processing 3.3.5

I'm still having issues with the Capture Fluid sketch, but I did get the Movie Fluid sketch working! I figured it out on accident. I dragged the Temporal Smoothing slider all the way down to zero and suddenly the  velocity vectors started up. From there I could drag the value up and down and it would continue working. It just needed that kick in the pants to get started for some reason. Again, this only worked with the Movie Fluid sketch. The Capture Fluid sketch on my machine still won't hold onto a webcam feed longer than half a second.

thanks for this info, thats actually quite helpful!
there could be a bug in the library as the Optical flow textures are not cleared at program start.
until there is a new release available a workaround is to call reset once in the beginning:
    opticalflow = new DwOpticalFlow(context, pg_movie_w, pg_movie_h);
    opticalflow.reset();

i cant say yet if this fixes some problem for you, but its work trying.
I will further check for errors.

this should be fixed now in release v0.62 (32).


DAC API Interface

Simple API interface for the DAC

Please only commit 1 commit.

Is there a way for me to remove the 4 other commits?    They are from earlier when I was trying to update my repository.  Do i just need to make a new pull request and try not to add them?  Or do i need to back my repository up before them and then update it?

Codecov Report

Merging #118 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #118   +/-   ##
======================================
  Coverage    88.8%   88.8%
======================================
  Files           6       6
  Lines         268     268
======================================
  Hits          238     238
  Misses         30      30

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 99fd046...43ba165. Read the comment docs.


Update provider onboarding instructions

Updates the instructions for adding a new bridged provider to our internal automation ecosystem.
This pull request falls short of adding full documentation for possible config settings, which is more involved and needs a follow-up, but it corrects out of date information.

Followup from https://github.com/pulumi/platform-providers-team/pull/135.


Allow filtering in VRP output.

In both the vrps command and the HTTP server’s VRP output endpoints, allow limiting output by specifying a list of prefixes and ASNs. For vrps, this should be via the command line. For HTTP, use the query string.

Woah, 7h between Twitter-Feature-Request and first PR. I applaud 👏


Build system improvements

This PR brings hipSOLVER's build system more in line with hipBLAS's.
Although it would be nice to get it in for the next release, it's not essential. Don't feel pressured to review it for tomorrow.

The update to use config-mode search for the NVIDIA backend is an important build system change and we should keep it tightly focused so that it can be easily reverted. I know the inconsistent formatting drives you nuts, but we should keep those sorts of changes separate.

Yeah, I was going to focus on the build changes only, but then I got carried away after reformatting the pieces I borrowed from hipBLAS. Since all the changes (other than formatting) are based on something I saw in hipBLAS, any objections you have to changes in this PR suggest that we might want to propose tweaks to hipBLAS's build system to bring it more in line with hipSOLVER's.


Small problem with the Floss during an analysis of an old malware (ZeusBanking)

While performing few tests using Floss, I found an error during a quick analysis of the ZeusBanking (version Nov/2013):
root@kali:~# /root/floss -v -a invoice_2318362983713_823931342io.pdf.exe

....(snip)...
0x0003D8DD   4	5
0x0003D8E1   5#555<5V5
0x0003D90D   4P5
0x0003D921   9(909

Static UTF-16 strings
Offset       String
----------   -------------------------------------
0x00001450   @5-
0x0000988B   @5O
0x000311BC    !"#$%&'()*+,-./0123456789:;<

Traceback (most recent call last):
  File "<string>", line 409, in <module>
  File "<string>", line 374, in main
  File "site-packages/viv_utils/__init__.py", line 34, in getWorkspace
  File "site-packages/vivisect/__init__.py", line 2107, in loadFromFile
  File "site-packages/vivisect/parsers/pe.py", line 30, in parseFile
  File "site-packages/vivisect/parsers/pe.py", line 96, in loadPeIntoWorkspace
  File "site-packages/PE/__init__.py", line 408, in getDllName
  File "site-packages/PE/__init__.py", line 1035, in __getattr__
  File "site-packages/PE/__init__.py", line 892, in parseExports
IndexError: tuple index out of range
main returned -1

I hope it can help you to improve the tool.
Have a nice day.
Alexandre Borges.

Hi Alexandre,
Thanks for reporting this issue. I hope we can fix it soon for you!
Can you share the sample?

looks like an issue with vivisect's PE parser

Hi Willi,
Good evening. How are you?
Sure, I can. It follows the sample attached. The password is infected.
I’ve faced problems with other different samples, but I’m trying to avoid overloading you with more problems.
Finally, I’ve written a very quick post about Floss (https://alexandreborges.org/2016/05/01/initial-static-analysis-using-floss/) because professionals need know about it.
Thank you for your message and have a nice day.
Alexandre.
De: Willi Ballenthin<EMAIL_ADDRESS>Enviada em: domingo, 1 de maio de 2016 18:20
Para: fireeye/flare-floss
Cc: alexandreborges; Author
Assunto: Re: [fireeye/flare-floss] Small problem with the Floss during an analysis of an old malware (ZeusBanking) (#126)
Hi Alexandre,
Thanks for reporting this issue. I hope we can fix it soon for you!
Can you share the sample?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub https://github.com/fireeye/flare-floss/issues/126#issuecomment-216073448 https://github.com/notifications/beacon/AMjivXH0WDx8uFQyw3nkeSl3UFLYnGMDks5p9RkcgaJpZM4ITi0H.gif

would you mind uploading the file to a third party site, or emailing me<EMAIL_ADDRESS>and Moritz<EMAIL_ADDRESS>with the file? github didn't attach the file to the issue tracker on github.
also, please feel free to report as many issues as you! hopefully we can close out many at the same time with a bit of planning.

hi @alexandreborges without access to the sample we won't be able to fix the bug. would you please upload the file to a shared workspace, or email it directly to us?

I can reproduce the error with the file with MD5 hash EA039A854D20D7734C5ADD48F1A51C34.
Is that the sample you were looking at, @alexandreborges?

Willi,
Good afternoon. How are you?
Last Sunday night, I sent the sample, according to your request, for your personal e-mail on Gmail and Moritz. Did you receive it? I can retransmit it again.
Have a nice day and thanks for the message.
Alexandre.
De: Willi Ballenthin<EMAIL_ADDRESS>Enviada em: sexta-feira, 6 de maio de 2016 12:58
Para: fireeye/flare-floss
Cc: alexandreborges; Mention
Assunto: Re: [fireeye/flare-floss] Small problem with the Floss during an analysis of an old malware (ZeusBanking) (#126)
hi @alexandreborges https://github.com/alexandreborges  without access to the sample we won't be able to fix the bug. would you please upload the file to a shared workspace, or email it directly to us?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub https://github.com/fireeye/flare-floss/issues/126#issuecomment-217483431 https://github.com/notifications/beacon/AMjivVDpGWTS2FXOtUEuOn0mvjGZVsBRks5p-2UCgaJpZM4ITi0H.gif

Este email foi escaneado pelo Avast antivírus.
https://www.avast.com/antivirus

hey @alexandreborges no, I didn't get the email (just checked again on gmail, and still don't see it). When you have a moment (no rush!) would you send the sample again?

Moritz,
Good afternoon. How are you?
Last Sunday I sent you the sample to your e-mail on FireEye. Did you receive it?
About your question, it is the same sample. See the output below, please:
root@kali # md5sum invoice_2318362983713_823931342io.pdf.exe
ea039a854d20d7734c5add48f1a51c34  invoice_2318362983713_823931342io.pdf.exe
Have a nice day, Moritz.
Alexandre.
De: mr-tz<EMAIL_ADDRESS>Enviada em: sexta-feira, 6 de maio de 2016 16:00
Para: fireeye/flare-floss
Cc: alexandreborges; Mention
Assunto: Re: [fireeye/flare-floss] Small problem with the Floss during an analysis of an old malware (ZeusBanking) (#126)
I can reproduce the error with the file with MD5 hash EA039A854D20D7734C5ADD48F1A51C34.
Is that the sample you were looking at, @alexandreborges https://github.com/alexandreborges ?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub https://github.com/fireeye/flare-floss/issues/126#issuecomment-217530310 https://github.com/notifications/beacon/AMjivfIRgZjVkExPO9m_djUjDTqTyAY0ks5p-4_KgaJpZM4ITi0H.gif

Este email foi escaneado pelo Avast antivírus.
https://www.avast.com/antivirus

Thanks, we have the sample.

this is an issue with the PE parser in vivisect. i will be reporting the issue and submitting a fix upstream.
this sample has some of the structures needed to export routines, but not all of them. specifically, the name and ordinal tables have a bunch of entries, but the function pointer table has no entries. vivisect assumes that this table will have at least one entry. the fix is to bail early if there are no entries in the function pointer table.

fixed in upstream vivisect. nightly builds should pick up this change today.

vivisect PR is https://github.com/vivisect/vivisect/pull/129


TextField's cursor overlaps label

Use case
I use the default text theme given by Material 3. Every text style has height as specified here:
EditableText is the base for all text fields and it uses the cursor size obtained from TextPainter (see here).
The problem is that TextPainter favors line height and therefore cursor size becomes larger.
If a label is also provided for a text field, the cursor overlaps the label.
The basic behavior of the text field:

TextField that uses font size as cursor size:

Proposal 1
Override cursor size to text style's font size.
In most projects, we create wrappers so to customize Material components and this issue can easily be addressed as well, without any changes to SDK (but feels like a problem, though).
Proposal 2
TextField with a label can be bigger so that it favors the line height and the cursor doesn't overlap the label.

Thanks for filing this @hawkkiller.
I see there is an already open issue describing your use case https://github.com/flutter/flutter/issues/141354.
Can you check this out?
If not, kindly help with more information on how it differs from yours.
Thank you!

@dam-ease thanks, it describes the issue I'm having. Closing.


VS Code still crashes in Mac OS Sonoma, vscode 1.84.1

hallo, VS Code still crashes in Mac OS Sonoma, vscode 1.84.1
➜  ~ code --disable-gpu
➜  ~ code --status

Version:          Code 1.84.1 (2b35e1e6d88f1ce073683991d1eff5284a32690f, 2023-11-06T12:37:18.666Z)
OS Version:       Darwin x64 23.1.0
CPUs:             Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz (8 x 2700)
Memory (System):  16.00GB (0.35GB free)
Load (avg):       5, 3, 3
VM:               0%
Screen Reader:    no
Process Argv:     --disable-gpu --crash-reporter-id 8fb189c2-2e57-4991-8371-96c8bbddcf37
GPU Status:       2d_canvas:                              unavailable_software
                  canvas_oop_rasterization:               disabled_off
                  direct_rendering_display_compositor:    disabled_off_ok
                  gpu_compositing:                        disabled_software
                  multiple_raster_threads:                enabled_on
                  opengl:                                 disabled_off
                  rasterization:                          disabled_software
                  raw_draw:                               disabled_off_ok
                  video_decode:                           disabled_software
                  video_encode:                           disabled_software
                  vulkan:                                 disabled_off
                  webgl:                                  unavailable_software
                  webgl2:                                 unavailable_software
                  webgpu:                                 unavailable_software

This issue is close but the bug persists: https://github.com/microsoft/vscode/issues/184542
Originally posted by @brauliobarahona in https://github.com/microsoft/vscode/issues/196302#issuecomment-1797958343

Hi @brauliobarahona

Does the crash happen immediately for you?
Can you run code --verbose and then paste the output around when the crash occurs?
Can you create and upload a crash report, following the guide at https://github.com/microsoft/vscode/wiki/Native-Crash-Issues?

Try enabling SIP if it hasn't been enabled yet! This fixed it for me.

@rzhao271 quite quickly it gets unresponsive, when I have all extensions enabled. When I disabled all extensions it seems that it takes a bit longer to crash
I launched with verbose (all extensions enabled and did not disabled gpu) and I immediately get a "The Window is not responding" pop up window, when I get the status
Version:          Code 1.84.1 (2b35e1e6d88f1ce073683991d1eff5284a32690f, 2023-11-06T12:37:18.666Z)
OS Version:       Darwin x64 23.1.0
CPUs:             Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz (8 x 2700)
Memory (System):  16.00GB (0.03GB free)
Load (avg):       4, 3, 3
VM:               0%
Screen Reader:    no
Process Argv:     --verbose --crash-reporter-id 8fb189c2-2e57-4991-8371-96c8bbddcf37
GPU Status:       2d_canvas:                              enabled
                  canvas_oop_rasterization:               disabled_off
                  direct_rendering_display_compositor:    disabled_off_ok
                  gpu_compositing:                        enabled
                  multiple_raster_threads:                enabled_on
                  opengl:                                 enabled_on
                  rasterization:                          enabled
                  raw_draw:                               disabled_off_ok
                  video_decode:                           enabled
                  video_encode:                           enabled
                  vulkan:                                 disabled_off
                  webgl:                                  enabled
                  webgl2:                                 enabled
                  webgpu:                                 enabled

After a few minutes and a lot of noise, it seems some memory is released (?)
Version:          Code 1.84.1 (2b35e1e6d88f1ce073683991d1eff5284a32690f, 2023-11-06T12:37:18.666Z)
OS Version:       Darwin x64 23.1.0
CPUs:             Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz (8 x 2700)
Memory (System):  16.00GB (7.34GB free)
Load (avg):       3, 3, 3
VM:               0%
Screen Reader:    no
Process Argv:     --verbose --crash-reporter-id 8fb189c2-2e57-4991-8371-96c8bbddcf37
GPU Status:       2d_canvas:                              enabled
                  canvas_oop_rasterization:               disabled_off
                  direct_rendering_display_compositor:    disabled_off_ok
                  gpu_compositing:                        enabled
                  multiple_raster_threads:                enabled_on
                  opengl:                                 enabled_on
                  rasterization:                          enabled
                  raw_draw:                               disabled_off_ok
                  video_decode:                           enabled
                  video_encode:                           enabled
                  vulkan:                                 disabled_off
                  webgl:                                  enabled
                  webgl2:                                 enabled
                  webgpu:                                 enabled

Meanwhile (part of) the output from verbose is
[main 2023-11-08T19:48:25.598Z] menubarService#updateMenubar 1
[main 2023-11-08T19:48:27.320Z] resolveShellEnv(): skipped (VSCODE_CLI is set)
[81700:1108/204828.644567:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[main 2023-11-08T19:48:31.732Z] CodeWindow: detected unresponsive
[main 2023-11-08T19:48:34.059Z] resolveShellEnv(): skipped (VSCODE_CLI is set)
[main 2023-11-08T19:48:35.463Z] update#checkForUpdates, state =  idle
[main 2023-11-08T19:48:35.464Z] update#setState checking for updates
[main 2023-11-08T19:48:35.751Z] update#setState idle
[main 2023-11-08T19:48:37.759Z] resolveShellEnv(): skipped (VSCODE_CLI is set)
[main 2023-11-08T19:48:53.020Z] app#activate
[81700:1108/204853.088076:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[81700:1108/204858.171851:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[81700:1108/204906.350097:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[main 2023-11-08T19:49:09.651Z] Received request for main process info from other instance.

<--- Last few GCs --->
na[81837:0x10000850000]     3741 ms: Mark-Compact 11.4 (16.9) -> 10.2 (16.9) MB, 3.53 / 0.01 ms  (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 675 ms) (average mu = 0.996, current mu = 0.998) external fina[81837:0x10000850000]    29544 ms: Mark-Compact 10.3 (16.9) -> 10.2 (13.9) MB, 3.57 / 0.01 ms  (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 23373 ms) (average mu = 1.000, current mu = 1.000) external fi

<--- JS stacktrace --->

[81837:1108/204925.222153:ERROR:v8_initializer.cc(753)] V8 process OOM (Oilpan: Reserving memory.).
[1108/204925.447096:ERROR:directory_reader_posix.cc(42)] opendir /Users/username/Library/Application Support/Code/Crashpad/attachments/84032c31-be02-475a-9301-1ec440ced7b6: No such file or directory (2)
[81700:1108/205006.404364:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[main 2023-11-08T19:50:22.519Z] Received request for main process info from other instance.
[1108/205025.484115:ERROR:http_transport_mac.mm(262)] The request timed out. (NSURLErrorDomain -1001)
[81700:1108/205106.444833:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[81700:1108/205112.525725:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[81700:1108/205116.843957:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[81700:1108/205123.397057:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[81700:1108/205125.057255:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[81700:1108/205206.478212:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[81700:1108/205306.514806:INFO:CONSOLE(645)] "%cDEBUG background: #eee; color: #888 Comments: URIs of continue on comments to add to storage .", source: vscode-file://vscode-app/Applications/Visual%20Studio%20Code%202.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js (645)
[main 2023-11-08T19:53:12.113Z] resolveShellEnv(): skipped (VSCODE_CLI is set)

I hope this helps ... unfortunately I am in the middle of some work, so I am partly happily back to SublimeText and Ipython shell for a while, the next week or so, I would be happy to help more

Hhhhhh

Hi @brauliobarahona, I'm wondering if you're still seeing the issue on the newest VS Code?
Also, I'd like to confirm whether it's a hang or a crash? If it's a crash, could you create and upload a crash report, following the guide at https://github.com/microsoft/vscode/wiki/Native-Crash-Issues?
@deepak1556 any other ideas on what would be good to attach to the issue? The issue looks like an OOM.

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


fix table view for image and text based on discussions for local importances and data analysis

Description
Based on recent discussions, we found that the table view is confusing for users.  As a short-term fix, the table view has been duplicated across data analysis and feature importances components.  In the longer term future, we are still discussing what the UI design might look like.  This PR fixes this, which was already partly done in:
https://github.com/microsoft/responsible-ai-toolbox/pull/1726
so that the heading text is more consistent, the data analysis table can't be selected, and the feature importances for the text dashboard can once again be selected (as PR broke the selection mechanism for text dashboard).
Screenshot where data analysis is no longer selectable:

Local importance selection is fixed in text case again (with new header text):

Updated local importances section for tabular data (with new header text):

Checklist

[ ] I have added screenshots above for all UI changes.
[ ] I have added e2e tests for all UI changes.
[ ] Documentation was updated if it was needed.

Codecov Report

Merging #1735 (79c6af7) into main (c86bfff) will increase coverage by 13.58%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main    #1735       +/-   ##
===========================================
+ Coverage   78.95%   92.53%   +13.58%
===========================================
  Files          19       17        -2
  Lines        1321     1300       -21
===========================================
+ Hits         1043     1203      +160
+ Misses        278       97      -181

Flag
Coverage Δ

unittests
92.53% <ø> (+13.58%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

raiwidgets/raiwidgets/error_analysis_dashboard.py

...dgets/raiwidgets/error_analysis_dashboard_input.py

raiwidgets/raiwidgets/responsibleai_dashboard.py

...idgets/raiwidgets/responsibleai_dashboard_input.py

...iwidgets/raiwidgets/fairness_metric_calculation.py

...iwidgets/raiwidgets/model_performance_dashboard.py

raiwidgets/raiwidgets/__init__.py

raiwidgets/raiwidgets/error_handling.py

raiwidgets/raiwidgets/explanation_dashboard.py

raiwidgets/raiwidgets/error_analysis_constants.py

... and 26 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Add Project-Page

Closes #94

@AdityaPainuli i think @RakeshSangem is working on new design of add project page. the current design has alignment issues. Please wait till the design is ready.

Got it 👍

@AdityaPainuli Browse files container border border not visible in the light mode. Could you fix that?

Yes thanks for the suggestion will take a look into it 👍

Yes thanks for the suggestion will take a look into it 👍

Awesome👍

@AdityaPainuli Could you fix the button width same as input fields! What do you think @rohitdasu ?
Reference image

thanks @RakeshSangem for pointing this. @AdityaPainuli please follow the design.

also the note text below dropdown should be left aligned.

refer

also the note text below dropdown should be left aligned.

thanks rohit, I missed that one:(

@AdityaPainuli Could you fix the button width same as input fields! What do you think @rohitdasu ?
Reference image

For the submit button, should I go with our advice of making it the same width as the input fields or with the Figma design?

@AdityaPainuli Could you fix the button width same as input fields! What do you think @rohitdasu ?
Reference image

For the submit button, should I go with your advice of making it the same width as the input fields or with the Figma design?

Figma 🙌

@AdityaPainuli Could you fix the button width same as input fields! What do you think @rohitdasu ?
Reference image

For the submit button, should I go with your advice of making it the same width as the input fields or with the Figma design?

I would say, Just fix the issue only. It's looking good with the same size as input fields.

@AdityaPainuli Could you fix the button width same as input fields! What do you think @rohitdasu ?
Reference image

For the submit button, should I go with your advice of making it the same width as the input fields or with the Figma design?

I would say, Just fix the issue only. It's looking good with the same size as input fields.

it's not good idea for larger screens imo. we can do this for smaller screens but not for larger ones.

an do this for smaller screens but not fo

you are saying right let's go with Figma design.

Add Project page should take the full width

This is how it should be


SLATM excessive "print" statement

Current version of SLATM code prints mbtype value, see the corresponding commit.

Fixed.


Change Column title

Column title was changed from layouts to "Learn Git and GitHub"

Good work, no issue found


masked convolution for convolutional networks that consider HOP

🚀 Feature
Hello,
Thank you for providing this great library. Is it possible to provide a masked version of the convolutional networks that consider HOP, i.e. ChebConv, TAGConv, SGConv?
Let's say that the module accepts parameters of each of these convolutional networks plus a mask that indicates the center nodes that we want to compute convolution around them. Note that the neighboring nodes can be outside this mask. That's why simple cutting the graph is not working because we want to use also neighboring nodes that are not in the mask in the message passing algorithm.
I see that you have already implemented  DenseGCNConv,  DenseSAGEConv, and  DenseGraphConv, but :

first these convolutional networks only consider 1 hop neighborhood.
I don't know if even in this one-hop neighborhood they consider neighbor nodes that are not in the mask.

If I understand you correctly, you are looking for a way to get the L-Hop subgraph around masked nodes? You can do this with the `k_hop_subgraph utility function.

And then apply convolution around each node in a for loop? Is it efficient in terms of performance?

I see, k_hop_subgraph currently only works for a single node. It should be no problem to extend this to multiple nodes.

I don't think that it is efficient, because finding subgraph is already I have to do it per node, and then applying convolution on each node would cause the running time to increase drastically.
I just want in the convolution to choose the central nodes to apply the convolution around them.

I see, k_hop_subgraph currently only works for a single node. It should be no problem to extend this to multiple nodes.

Yes, exactly, you answered faster. But also I want in the convolution to choose the central nodes to apply the convolution around them, but as I said, in the message passing of convolution it is possible to pass messages from the nodes which are not in the mask.

Well, i see no reason to put that behaviour inside each convolution when it is basically just a modified input. Note that k_hop_subgraph now supports passing in multiple nodes in master (either via list, tuple, or tensor).

Ok. I see.
Thank you very much

Just a question:
Let's say I have n nodes in the mask (out of m nodes of the whole graph with n < m). I want to apply TAGConv with K=4 on these n nodes while the whole graph has m nodes. I don't understand how we can do this even now that k_hop_subgraph supports multiple nodes

subset, sub_edge_index, mapping, _ = k_hop_subgraph(node_idx, edge_index,
                                                    k=4, relabel_nodes=True)
h= F.relu(conv1(x[subset], sub_edge_index))
...
h= F.relu(convx(x[subset], sub_edge_index))
out = h[mapping]

Maybe, I have not explained clearly what I want. Imagine this simple program:

import torch
import torch_geometric

B = 1  # batch size
in_channels = 1
out_channels = 8
K = 2   # Number of hops
node_dim = 1    # data is in form [batch_size, num_nodes, num_features]
conv = torch_geometric.nn.TAGConv(in_channels=in_channels, out_channels=out_channels, K=K, node_dim=node_dim) # Graph convolution: 'ChebConv', 'TAGConv', 'SGConv',

edge_index = torch.tensor([[0, 1, 3, 2],
                           [1, 3, 2, 0]])
N= edge_index.max().item() + 1

interested_nodes = torch.tensor([1,2])
subset, sub_edge_index, mapping, _ = torch_geometric.utils.k_hop_subgraph(interested_nodes, edge_index=edge_index, num_hops=K, relabel_nodes=True)

x= torch.randn(B, N, in_channels)

# print("x=", x)

out1 = conv(x, edge_index=edge_index)
print("conv at interested nodes=", out1.index_select(node_dim, interested_nodes))
out2 = conv(x.index_select(node_dim, subset), sub_edge_index)
print("out2=", out2)

Basically what I want is that I want to have out1.index_select(node_dim, interested_nodes), but without doing the convolution on the whole x because x is very big. However, the solution that you gave not only doesn't give the same answer but also the size doesn't match.

For me, the output is the same. Note that you again need to filter out2 to only contain the important nodes (not the ones that were used directly in message passing):
out2 = out2.index_select(node_dim, mapping)

Thank you for your answer. Maybe my example was very easy because then hop 2 contains the whole graph. In the following code which I used the same code but for a more complex graph as below

the answer is not the same. Let's assume the masked nodes are nodes 1,2. Note that since I used random generation for input x each time the difference is different, but sometimes the difference is as big as 0.03 between each element:
import torch
import torch_geometric
import itertools
import numpy as np

B = 1  # batch size
in_channels = 1
out_channels = 8
K = 2   # Number of hops
node_dim = 1    # data is in form [batch_size, num_nodes, num_features]
conv = torch_geometric.nn.TAGConv(in_channels=in_channels, out_channels=out_channels, K=K, node_dim=node_dim) # Graph convolution: 'ChebConv', 'TAGConv', 'SGConv',

# create a graph which consists of 2 hexagone which are linked with one edge between not 0 and 9
edge_index = list(itertools.permutations(range(0,6), 2)) + list(itertools.permutations(range(6,12), 2)) + [(0,9), (9,0)]
edge_index = np.transpose(edge_index)
edge_index = torch.from_numpy(edge_index)
# print("edge_index=", edge_index)
N= edge_index.max().item() + 1

interested_nodes = torch.tensor([1,2])
subset, sub_edge_index, mapping, _ = torch_geometric.utils.k_hop_subgraph(interested_nodes, edge_index=edge_index, num_hops=K, relabel_nodes=True)

x= torch.randn(B, N, in_channels)

# print("x=", x)
# print("subset=", subset)
# print("sub_edge_index=", sub_edge_index)

out1 = conv(x, edge_index=edge_index)
# print("out1 (before)=", out1)
out1 = out1.index_select(node_dim, interested_nodes)

out2 = conv(x.index_select(node_dim, subset), sub_edge_index)
# print("out2 (before)=", out2)
out2 = out2.index_select(node_dim, mapping)
print("diff (out2-out1)=", out2-out1)
# print("out1=", out1)
# print("out2=", out2)

I found the issue. Not sure if it is a bug though. TAGConv/GCNConv normalization depends on the node degree and the degrees of its neighbors. In the subgraph, the degree of neighbors is a different one. I therefore added the normalize argument to TAGConv (which was already present in GCNConv) so that you can now precompute normalization coefficients and pass them to the operator:
out1 = conv(x, edge_index=edge_index)

conv.normalize = False
edge_index, edge_weight = torch_geometric.nn.TAGConv.norm(edge_index, num_nodes=N)

interested_nodes = torch.tensor([1, 2])
subset, sub_edge_index, mapping, edge_mask = torch_geometric.utils.k_hop_subgraph(interested_nodes, edge_index, num_hops=K, relabel_nodes=True)

out2 = conv(x.index_select(node_dim, subset), sub_edge_index, edge_weight[edge_mask])

out1 = out1.index_select(node_dim, interested_nodes)
out2 = out2.index_select(node_dim, mapping)
print("diff (out2-out1)=", out2 - out1)


Fatal Exception: java.lang.NoClassDefFoundError android/telephony/CellInfoGsm

Hi,
On specific mobiles eventbus crashes with following error.
Fatal Exception: java.lang.NoClassDefFoundError
android/telephony/CellInfoGsm
de.greenrobot.event.SubscriberMethodFinder.findSubscriberMethods
Caused by java.lang.ClassNotFoundException
dalvik.system.BaseDexClassLoader.findClass (BaseDexClassLoader.java:61)
java.lang.Class.getDeclaredMethods (Class.java:703)
de.greenrobot.event.SubscriberMethodFinder.findSubscriberMethods (SubscriberMethodFinder.java:75)
de.greenrobot.event.EventBus.register (EventBus.java:163)
de.greenrobot.event.EventBus.registerSticky (EventBus.java:151)
Looks like findSubscriberMethods is trying to access methods which are marked as @TargetApi(17) while the phone is using api 16. Hence eventbus is not able to find those classes which are not available in api 16. Looks like a bug. Is there any workaround?

Same here, I get the exception:
Fatal Exception: java.lang.NoClassDefFoundError
android/os/PersistableBundle
on specific mobile devices

It is an issue with reflection in Event Bus, because of proguard Event Bus
is not able to find some classes which it is trying to get via reflection.
Solution that worked for me -
Only required if you use AsyncExecutor
-keepclassmembers class * extends
de.greenrobot.event.util.ThrowableFailureEvent {
*;
}
add this to proguard-project.txt
Pankaj
Co-Founder, EnglishDost
B.Tech, Comp Sci & Engg,
IIT Madras, Class of 2008
9886259533
On Wed, Feb 25, 2015 at 1:32 PM, greenrobot<EMAIL_ADDRESS>wrote:

This looks like some kind of Android bug. If you have time and know how to
do it, you could test if that occurs with the annotations branch. This code
is not present anymore here.
—
Reply to this email directly or view it on GitHub
https://github.com/greenrobot/EventBus/issues/149#issuecomment-75920225.

I'm seeing this issue too. I did a little digging into the code and found the issue.
It does seem to be an Android quirk (specifically in java.lang.Class), but I think it was introduced into EventBus at e47442b684f04b4d346bb1d0af526908fda7cc1c.
SubscriberMethodFinder#findSubscriberMethods used to use Class#getMethods(), which doesn't check method signatures (for things such as argument types that don't exist). This was changed to use Class#getDeclaredMethods(), which does check, and throws an exception if nothing goes wrong.
See lines 763, 770, and 822 in https://android.googlesource.com/platform/libcore/+/a8a489492749b845cc2a85d67c664449d7b0b019/libart/src/main/java/java/lang/Class.java.

Yes that is correct.
Pankaj
Co-Founder, EnglishDost
B.Tech, Comp Sci & Engg,
IIT Madras, Class of 2008
9886259533
On Fri, Feb 27, 2015 at 7:21 AM, Dan Huang<EMAIL_ADDRESS>wrote:

I'm seeing this issue too. I did a little digging into the code and found
the issue.
It does seem to be an Android quirk (specifically in java.lang.Class), but
I think it was introduced into EventBus at e47442b
https://github.com/greenrobot/EventBus/commit/e47442b684f04b4d346bb1d0af526908fda7cc1c
.
SubscriberMethodFinder#findSubscriberMethods used to use
Class#getMethods(), which doesn't check method signatures (for things
such as argument types that don't exist). This was changed to use
Class#getDeclaredMethods(), which does check, and throws an exception if
nothing goes wrong.
See lines 763, 770, and 822 in
https://android.googlesource.com/platform/libcore/+/a8a489492749b845cc2a85d67c664449d7b0b019/libart/src/main/java/java/lang/Class.java
.
—
Reply to this email directly or view it on GitHub
https://github.com/greenrobot/EventBus/issues/149#issuecomment-76316437.

You only need to call getMethods once, not for each superclass, so it might
be faster if we add that optimization.
On Fri, Feb 27, 2015 at 12:09 AM, greenrobot<EMAIL_ADDRESS>wrote:

Thanks for investigating. getMethods is much slower than
getDeclaredMethods. Maybe in combination with try/catch...
—
Reply to this email directly or view it on GitHub
https://github.com/greenrobot/EventBus/issues/149#issuecomment-76353534.

removed onRestoreInstanceState from my activity and problem solved

I am still seeing this in EventBus 3.0.0 when a class I'm using EventBus in has some method which references a higher API than the device I am running on.
Please see this tiny sample project:
https://gist.github.com/skyler-b/2bfea0b0bbb4ebdb5080
Which crashes on launch:

java.lang.NoClassDefFoundError: android/webkit/PermissionRequest
at java.lang.Class.getDeclaredMethods(Native Method)
at java.lang.Class.getPublicMethodsRecursive(Class.java:894)
at java.lang.Class.getMethods(Class.java:877)
at org.greenrobot.eventbus.SubscriberMethodFinder.findUsingReflectionInSingleClass(SubscriberMethodFinder.java:157)
at org.greenrobot.eventbus.SubscriberMethodFinder.findUsingInfo(SubscriberMethodFinder.java:88)
at org.greenrobot.eventbus.SubscriberMethodFinder.findSubscriberMethods(SubscriberMethodFinder.java:64)
at org.greenrobot.eventbus.EventBus.register(EventBus.java:136)

@greenrobot can we re-open this?

I hadn't heard of the subscriber index, but yes, after adding it to my project the crash does go away. Great work around, thanks for the tip!

@greenrobot if you refer to the gist I posted (https://gist.github.com/skyler-b/2bfea0b0bbb4ebdb5080), it pinpoints the issue pretty concisely. The crash posted occurs on a 4.4.2 emulator.

@greenrobot Yes - a private method with an advanced API does not cause a crash. For example, in my sample project, making someMethod private does prevent the crash.

Document looks great, thanks for the explanation!

getMethods also occur NoClassDefFoundError on some devices,maybe add catch around getMethods
        Method[] methods;         try {             // This is faster than getMethods, especially when subscribers are fat classes like Activities             methods = findState.clazz.getDeclaredMethods();         } catch (Throwable th) {             try {                 methods = findState.clazz.getMethods();             }catch (Throwable th2){                 return;             }finally {                 findState.skipSuperClasses = true;             }         }

getMethods also occur NoClassDefFoundError on some devices,maybe add catch around getMethods
Method[] methods;
try {
	// This is faster than getMethods, especially when subscribers are fat classes like Activities
	methods = findState.clazz.getDeclaredMethods();
} catch (Throwable th) {
	try {
		methods = findState.clazz.getMethods();
	}catch (Throwable th2){
		return;
	}finally {
		findState.skipSuperClasses = true;
	}
}


pip-review hangs when running

I've been using pip-review for a while, but it has just seemed to stop working recently.  when I try to run it on the command line with the -i option, it just sits and hangs and never returns anything.  I finally have to Ctrl-C to get out of it, then it shows:
C:\Users>pip-review -i
Operation cancelled by user
Traceback (most recent call last):
File "c:\python27\lib\runpy.py", line 162, in run_module_as_main
"main", fname, loader, pkg_name)
File "c:\python27\lib\runpy.py", line 72, in run_code
exec code in run_globals
File "c:\Python27\Scripts\pip-review.exe_main.py", line 9, in
File "c:\Python27\Lib\site-packages\pip_review_main.py", line 201, in main
outdated = get_outdated_packages(forwarded)
File "c:\Python27\Lib\site-packages\pip_review_main_.py", line 185, in get_outdated_packages
output = check_output(command).decode('utf-8')
File "c:\python27\lib\subprocess.py", line 567, in check_output
output, unused_err = process.communicate()
File "c:\python27\lib\subprocess.py", line 791, in communicate
stdout = _eintr_retry_call(self.stdout.read)
File "c:\python27\lib\subprocess.py", line 476, in _eintr_retry_call
return func(*args)
KeyboardInterrupt
I'm using Python 2.7.11 on a Windows 7 machine.

Thanks for reporting this. Which version of pip-review and which version of pip are you using? Did you recently update either of those?

I'm using pip version 18.0, which was recently updated.  pip-review is at 1.0, which I think is the latest.
From: Julian Gonggrijp<EMAIL_ADDRESS>To: jgonggrijp/pip-review<EMAIL_ADDRESS>Cc: texasreddog<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Sent: Friday, September 21, 2018 1:56 PM
Subject: Re: [jgonggrijp/pip-review] pip-review hangs when running (#64)
Thanks for reporting this. Which version of pip-review and which version of pip are you using? Did you recently update either of those?—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

It may very well be the case that pip-review 1.0 (which is indeed the latest version) isn't compatible with pip 18. I haven't tested this combination yet. I'll look into it.

On my mac, pip-review 1.0 works fine with pip 18, both under python 2.7 and python 3.5. So if this is a real issue, it is probably windows-specific. I need help from a Windows user to figure out what is causing this issue. @texasreddog, could you give this a try, perhaps with a fresh virtual environment to rule out side effects from installed other packages?


Installation flow fails with slack_oauth_invalid_state when running an app on Firebase Hosting

Description
Describe your issue here.
I'm using /slack/install to install my distributed app to a test workspace. Everything works perfectly fine using ngrok but as soon as I deploy my app to my server the installation fails with the page /slack/oauth_redirect?code=... saying
Oops, Something Went Wrong!
Please try again or contact the app owner (reason: slack_oauth_invalid_state)
The server debug log says
[ERROR]  OAuth:InstallProvider:0 Error: The state parameter is not for this browser session.

My code is pretty much like this by @seratch but using Firestore as database (again, everything works perfectly fine with ngrok).
What type of issue is this? (place an x in one of the [ ])

[ ] bug
[ ] enhancement (feature request)
[x] question
[ ] documentation related
[ ] example code related
[ ] testing related
[ ] discussion

Requirements (place an x in each of the [ ])

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've searched for any related issues and avoided creating a duplicate issue.

Bug Report
Filling out the following details about bugs will help us solve your issue sooner.
Reproducible in:
package version: @slack/bolt 3.12.2 and @slack/oauth 2.6.0
node version: 18
OS version(s): Google Firebase
Steps to reproduce:

Build a bolt app like so but use Firebase as installation store
open https://de29-...-8e61.ngrok.io/slack/install and go through the install flow. The flow succeeds with the page https://de29-...-8e61.ngrok.io/slack/oauth_redirect?code=15... saying

Thank you!
Redirecting to the Slack App... click [here]. If you use the browser version of Slack, click this link instead.

deploy the same app to Firebase using Firebase Hosting
open https:///slack/install and go through the install flow. The flow ends with the page https:///slack/oauth_redirect?code=15... saying

Oops, Something Went Wrong!
Please try again or contact the app owner (reason: slack_oauth_invalid_state)
Expected result:
Installation should succeed.
Actual result:
Installation flow fails with slack_oauth_invalid_state and a debug log
[ERROR]  OAuth:InstallProvider:0 Error: The state parameter is not for this browser session.
Attachments:
Logs, screenshots, screencast, sample project, funny gif, etc.

Hi @multimanic, thanks for asking the question!
We don't officially support the runtime, so we are not able to help you out on how to deploy apps onto Firebase Hosting. That aside, possible causes of your issue can be:

The domain for your /slack/install and /slack/oauth_redirect may not be the same. In this case, the state parameter validation fails as it relies on 1st party cookie to transfer the state through the redirections between slack.com and your site.
I don't know well about Firebase Hosting but if the hosting service does not allow usual set-cookie response headers like the OAuth package does, you may have to disable the state verification (it's not great for security though) otherwise, implement your own OAuth flow handlers.

I hope this was helpful to you.

Thank you so much @seratch for unblocking me after 4 days of desperation. I also had a hunch that the state verification is the issue. However, I can see all the cookies set and sent on firebase like on ngrok.
Deactivating the state verification solved the problem. Can you elaborate in the security risks?
And is the StateStore and alternative to the cookie-based state verification? If so, is there any sample code? I couldn't find any. I think Firestore would be a simple StateStore, right?

@multimanic

Deactivating the state verification solved the problem.

First off, the ideal solution is identifying the cause of your situation with Firebase and keeping the state verification on. Generally speaking, I don't recommend disabling it. With that being said, if you think the risk is acceptable for your app after going through this reply, it's your decision.

Can you elaborate in the security risks?

The security risk is not specific to Slack's OAuth flow. It is a general CSRF attack risk for your end users who install our app. Refer to the following resources:

https://github.com/slackapi/node-slack-sdk/issues/1435
https://datatracker.ietf.org/doc/html/rfc6749#section-10.12
https://auth0.com/docs/secure/attack-protection/state-parameters

As mentioned in the above resources, when an attacker navigates your end user to a redirect URL with the attacker's auth code parameter and a valid state, your end user may complete their OAuth flow with an unexpected association. So, verifying the state through the end-to-end OAuth flow is a highly recommended security measure for apps providing OAuth flows. That's why our SDKs enable the verification by default.
As long as you are aware of the risk with the lack of state parameter, you can go ahead with it. If you don't offer any account mapping feature like associating a Slack workspace/user with your external service account, the risk should be quite limited. Otherwise, we highly recommend implementing something that ensures the same user visiting both /slack/install and /slack/oauth_redirect in an OAuth flow. For this, the most common way should be managing the user's state by setting browser cookies like our library does.

And is the StateStore and alternative to the cookie-based state verification? If so, is there any sample code? I couldn't find any. I think Firestore would be a simple StateStore, right?

No, actually. StateStore provides the abstraction of the server-side state value storage, and it does not offer any functionality to manage browser cookies. Just having a server-side state store is not a complete solution as the security measure. If an attacker issues their state parameter on their side plus share the authorize URL with the generated state parameter with their target user agent, the attack still can succeed (because the state parameter value is not yet consumed on the server-side). Since the past implementation was not secure enough this way, I've resolved the potential risk at https://github.com/slackapi/node-slack-sdk/issues/1435.
I hope this comment answers your questions. If everything is clear now, would you mind closing this issue?

Thanks @seratch  and I agree, I should fix this.
Here is my understanding of the flow ad the code:

the page https://<my-host>/slack/install generates a code for the "state" and sets a cookie called slack-app-oauth-state. The page alos displays a button which points the browser to a page on https://slack.com/oauth/... and includes a URL parameter state which has the same state value.
This URL parameter is carried through the OAuth flow ending with the page https://<my-host>/slack/oauth_redirect being loaded. This page also reads the cookie called slack-app-oauth-state and compares it with the URL parameter state. If they are not equal the InvalidStateError is thrown.

That said, I tried to compare the network trace and the cookies of my ngrok and my host. They are exactly the same.

the page https://<my-host>/slack/install includes a response header:

set-cookie: slack-app-oauth-state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbnN0YWxsT3B0aW9ucyI6eyJzY29wZXMiOlsiYXBwX21lbnRpb25zOnJlYWQiLCJjaGF0OndyaXRlIiwiY2hhdDp3cml0ZS5wdWJsaWMiLCJjb21tYW5kcyIsImdyb3Vwczp3cml0ZSIsImltOndyaXRlIiwibXBpbTp3cml0ZSIsInVzZXJzOnJlYWQuZW1haWwiLCJ1c2VyczpyZWFkIl19LCJub3ciOiIyMDIzLTAxLTMxVDIxOjM3OjE3LjIwMVoiLCJyYW5kb20iOjY2OTMxMSwiaWF0IjoxNjc1MjAxMDM3fQ.jFYu4tWbqB7uREQba28W3u-zBrfxVTpwI_GjtThqwCM; Path=/; Max-Age=600; HttpOnly; Secure

followed by this sequence
https://slack.com/oauth/v2/authorize?scope=app_mentions:read,chat:write,chat:write.public,commands,groups:write,im:write,mpim:write,users:read.email,users:read&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbnN0YWxsT3B0aW9ucyI6eyJzY29wZXMiOlsiYXBwX21lbnRpb25zOnJlYWQiLCJjaGF0OndyaXRlIiwiY2hhdDp3cml0ZS5wdWJsaWMiLCJjb21tYW5kcyIsImdyb3Vwczp3cml0ZSIsImltOndyaXRlIiwibXBpbTp3cml0ZSIsInVzZXJzOnJlYWQuZW1haWwiLCJ1c2VyczpyZWFkIl19LCJub3ciOiIyMDIzLTAxLTMxVDIxOjM3OjE3LjIwMVoiLCJyYW5kb20iOjY2OTMxMSwiaWF0IjoxNjc1MjAxMDM3fQ.jFYu4tWbqB7uREQba28W3u-zBrfxVTpwI_GjtThqwCM&client_id=<client-ID>

https://slack.com/oauth/v2/authorize?scope=app_mentions:read,chat:write,chat:write.public,commands,groups:write,im:write,mpim:write,users:read.email,users:read&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbnN0YWxsT3B0aW9ucyI6eyJzY29wZXMiOlsiYXBwX21lbnRpb25zOnJlYWQiLCJjaGF0OndyaXRlIiwiY2hhdDp3cml0ZS5wdWJsaWMiLCJjb21tYW5kcyIsImdyb3Vwczp3cml0ZSIsImltOndyaXRlIiwibXBpbTp3cml0ZSIsInVzZXJzOnJlYWQuZW1haWwiLCJ1c2VyczpyZWFkIl19LCJub3ciOiIyMDIzLTAxLTMxVDIxOjM3OjE3LjIwMVoiLCJyYW5kb20iOjY2OTMxMSwiaWF0IjoxNjc1MjAxMDM3fQ.jFYu4tWbqB7uREQba28W3u-zBrfxVTpwI_GjtThqwCM&client_id=<client-ID>&tracked=1

https://<my-workspace>.slack.com/oauth?client_id=<client-ID>&scope=app_mentions:read,chat:write,chat:write.public,commands,groups:write,im:write,mpim:write,users:read.email,users:read&user_scope=&redirect_uri=&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbnN0YWxsT3B0aW9ucyI6eyJzY29wZXMiOlsiYXBwX21lbnRpb25zOnJlYWQiLCJjaGF0OndyaXRlIiwiY2hhdDp3cml0ZS5wdWJsaWMiLCJjb21tYW5kcyIsImdyb3Vwczp3cml0ZSIsImltOndyaXRlIiwibXBpbTp3cml0ZSIsInVzZXJzOnJlYWQuZW1haWwiLCJ1c2VyczpyZWFkIl19LCJub3ciOiIyMDIzLTAxLTMxVDIxOjM3OjE3LjIwMVoiLCJyYW5kb20iOjY2OTMxMSwiaWF0IjoxNjc1MjAxMDM3fQ.jFYu4tWbqB7uREQba28W3u-zBrfxVTpwI_GjtThqwCM&granular_bot_scope=1&single_channel=0&install_redirect=&tracked=1&team=

finally the page
https://dev.goldie.ai/slack/oauth_redirect?code=1509222955907.4725617052005.1b74ee7e3308fce9c3e5ed7c3a22ad124245d29098bf3921a08b1ba0e547ac63&state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbnN0YWxsT3B0aW9ucyI6eyJzY29wZXMiOlsiYXBwX21lbnRpb25zOnJlYWQiLCJjaGF0OndyaXRlIiwiY2hhdDp3cml0ZS5wdWJsaWMiLCJjb21tYW5kcyIsImdyb3Vwczp3cml0ZSIsImltOndyaXRlIiwibXBpbTp3cml0ZSIsInVzZXJzOnJlYWQuZW1haWwiLCJ1c2VyczpyZWFkIl19LCJub3ciOiIyMDIzLTAxLTMxVDIxOjM3OjE3LjIwMVoiLCJyYW5kb20iOjY2OTMxMSwiaWF0IjoxNjc1MjAxMDM3fQ.jFYu4tWbqB7uREQba28W3u-zBrfxVTpwI_GjtThqwCM

includes a request header
_ga=GA1.1.1963021477.1672902855; _ga_8F0NMFFQ6D=GS1.1.16729028<IP_ADDRESS>29039<IP_ADDRESS>; slack-app-oauth-state=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbnN0YWxsT3B0aW9ucyI6eyJzY29wZXMiOlsiYXBwX21lbnRpb25zOnJlYWQiLCJjaGF0OndyaXRlIiwiY2hhdDp3cml0ZS5wdWJsaWMiLCJjb21tYW5kcyIsImdyb3Vwczp3cml0ZSIsImltOndyaXRlIiwibXBpbTp3cml0ZSIsInVzZXJzOnJlYWQuZW1haWwiLCJ1c2VyczpyZWFkIl19LCJub3ciOiIyMDIzLTAxLTMxVDIxOjM3OjE3LjIwMVoiLCJyYW5kb20iOjY2OTMxMSwiaWF0IjoxNjc1MjAxMDM3fQ.jFYu4tWbqB7uREQba28W3u-zBrfxVTpwI_GjtThqwCM

The state value matches in all URL parameters and slack-app-oauth-state cookies but it still fails with the InvalidStateError. I'm puzzled.

@seratch can you confirm that my understanding of the code is correct?
Or does the network trace give you any clues what the problem might be?

@multimanic I am still unsure about the cause of your issue here, but one possibility is that your app on Firebase Hosting platform may be failing to access the request header data including cookies. Adding some print debug logs like console.log(request.headers) (note that this is pseudo code) and see the difference between the app on your local machine and on Firebase. If that's not the case, I don't have any meaningful suggestion on this.

Your instinct is good. I just found https://firebase.google.com/docs/hosting/manage-cache#using_cookies says

When using Firebase Hosting together with Cloud Functions or Cloud Run, cookies are generally stripped from incoming requests. This is necessary to allow for efficient CDN cache behavior. Only the specially-named __session cookie is permitted to pass through to the execution of your app.

When present, the __session cookie is automatically made a part of the cache key, meaning that it's impossible for two users with different cookies to receive the other's cached response. Only use the __session cookie if your app serves different content depending on user authorization.

I will test what happens if I use stateCookieName = '__session', and post an update for future reference.

SOLUTION - SOLUTION - SOLUTION - SOLUTION - SOLUTION
It is possible to use Firebase Cloud Functions with Firebase Hosting with distributed apps (using Bolt JS's /slack/install). If you get the error slack_oauth_invalid_state it's because Firebase Hosting together with Cloud Functions or Cloud Run, cookies are generally stripped from incoming requests - except a cookie called __session. The solution is to make use of the parameter stateCookieName the framework provides which allows you to rename the cookie from the default slack-app-oauth-state to __session.
Example:
const config = require('./config/config');

const functions = require('firebase-functions');
const firebase = require('firebase-admin');
const { App, ExpressReceiver } = require('@slack/bolt');
const { LogLevel } = require("@slack/logger");

const firebaseApp = firebase.initializeApp(
    functions.config().firebase
);
const db = firebaseApp.firestore();
firebase.firestore().settings({
    ignoreUndefinedProperties: true,
})

const expressReceiver = new ExpressReceiver({
    logLevel: LogLevel.DEBUG,
    signingSecret: config.slack.signingSecret,
    clientId: config.slack.clientId,
    clientSecret: config.slack.clientSecret,
    stateSecret: config.slack.stateSecret,
    scopes: config.slack.scopes,
    endpoints: '/slack/events',
    processBeforeResponse: true,
    installationStore: {
        storeInstallation: async (installation) => {
            if (installation.isEnterpriseInstall && installation.enterprise !== undefined) {
                return await db.collection(config.firebase.slackTeams).doc(installation.enterprise.id).set(installation);
            }
            if (installation.team !== undefined) {
                return await db.collection(config.firebase.slackTeams).doc(installation.team.id).set(installation);
            }
            throw new Error('Failed saving installation data to Firebase');
        },
        fetchInstallation: async (installQuery) => {
            if (installQuery.isEnterpriseInstall && installQuery.enterpriseId !== undefined) {
                return await getTeamRecord(installQuery.enterpriseId);
            }
            if (installQuery.teamId !== undefined) {
                return await getTeamRecord(installQuery.teamId);
            }
            throw new Error('Failed fetching installQuery');
        },
        deleteInstallation: async (installQuery) => {
            if (installQuery.isEnterpriseInstall && installQuery.enterpriseId !== undefined) {
                return await db.collection(config.firebase.slackTeams).doc(installQuery.enterpriseId).delete();
            }
            if (installQuery.teamId !== undefined) {
                return await db.collection(config.firebase.slackTeams).doc(installQuery.teamId).delete();
            }
            throw new Error('Failed to delete installQuery');
        },
    },
    installerOptions: {
        directInstall: false,
        stateVerification: true,
        stateCookieName: '__session',
    }
});

const app = new App({
    receiver: expressReceiver,
    processBeforeResponse: true,
    stateSecret: config.slack.stateSecret,
});

app.command('/say-hi', async ({ command, ack, say }) => {
    await ack();
    const { botToken } = await app.receiver.installer.authorize({teamId: command.team_id});
    app.client.chat.postMessage({
        token: botToken,
        channel: command.user_id,
        text: "Hi back!",
        as_user: true,
    });
});

exports.slack = functions.https.onRequest(expressReceiver.app);

How wise of you @seratch to make the cookie name configurable :)


Close emoji menu after pressing send

Is your feature request related to a problem? Please describe.
The Emoji menu has to be closed manually even after pressing send
Describe the solution you'd like
Close the emoji menu automatically after pressing send
Describe alternatives you've considered
Manually press the button

Is this kofta or kibbeh?

It is the React frontend

Please provide more details regarding the browser / platform you are using.

As Kofta is deprecated and Kibbeh correctly handles this, this issue will be closed. If it occures to you in Kibbeh, please reopen


Conda-forge package ?

Hi @felix-hilden,
This is a really neat library, and I have many repositories that could benefit enormously from this functionality. I'm wondering if you would be interested in making this available via conda-forge. The benefit of conda-forge is it would make this package available as a compiled binary in the Anaconda ecosystem (and you'd also get another badge for your Readme!). Once it's in the conda-forge repository, upkeep is fully automated, so no extra work on your part!
If this is of interest to you, I would be willing to draft the PR and maintain the conda-forge package, with you listed as primary maintainer. Please let me know!

Thank you for the suggestion! I'm interested, although please do take all the credit you can 😄 I don't really know anything about conda-forge. Does that require changes on our part (the PR you mentioned)? Is it overall a big task?
The readme badge will be immensely valuable for that sweet street cred! Nice 😜

That's great! Everyone loves badges!
Anaconda/conda-forge is incredibly useful for ensuring that environments are reproducible across platforms and OSes. It's fantastic for containerization. And no, I don't imagine any changes will be needed here. If there's anything, I'll mention it in the conda-forge PR or in this issue.
I'll tag you on the PR when it's up. Best!

PR is up! https://github.com/conda-forge/staged-recipes/pull/20403


[Bug report]The image of the authorization server has the CORS issue in the scenario of https enabled

Version
main branch
Describe what's wrong

Error message and/or stacktrace
N/A
How to reproduce

docker run -p 8177:8177 --name sample-auth-server -d datastrato/sample-authorization-server:0.3.0
enable https for the gravitino server
access url: https://localhost:8433/
login in with clientId test, clientSecret test, and scope test

Additional context
image code repo url:
https://github.com/datastrato/gravitino/tree/authorization-server-docker-image
configuration step reference doc:
https://datastrato.ai/docs/0.3.1/security/

I should add an another policy for Nignx server of OAuth server.


Set expiration date for invitation links

Currently if we create an invitation link of our orga it will expire after some days.
But we don't know when or after how much time.
We would like to set or deactivate it.
Our orga is hosted at zulipchat.com
It seems that a link is only valid for 10 days.
Then we hope that some member of our community raise a issue ticket, so that we can renew the link again.
See the code below for the variable value.
https://github.com/zulip/zulip/blob/aeb0dc726967eae6c0ec8d4c5fa084cd2ca5e1c5/zproject/default_settings.py#L349

Will be fixed by https://github.com/zulip/zulip/issues/19680