Minimise connections

So this one serves two purposes:

The connection pool currently slows down substantially, when many connections are used. If we raise the PoolSize above a certain threshold, we end up with more and more pool timeouts. Our timeout settings are relatively low, but increasing the pool size seems to make matters only worse. I suspect it's due to the iterations on connList.Remove and connList.Replace. As these happen within a mutex, a failing connection effectively takes down everything else, causing the pool to block. I have turned the slice into a map, which should reduce the time spent within the lock.
We are using channels to hold our freeConn and they are FIFO by design. It also means that we round-robin across all our connections in the pool and large pools never actually shrink. I have replaced the channel with a LIFO stack which forces us to reuse connections that were most recently returned and reap unused connections.

I would also like to default IdleTimeout to something like time.Hour, if not provided.

$ benchcmp old.txt new.txt
benchmark                         old ns/op     new ns/op     delta
BenchmarkParseReplyStatus-4       123           113           -8.13%
BenchmarkParseReplyInt-4          102           102           +0.00%
BenchmarkParseReplyError-4        227           215           -5.29%
BenchmarkParseReplyString-4       170           178           +4.71%
BenchmarkParseReplySlice-4        901           889           -1.33%
BenchmarkAppendArgs-4             227           218           -3.96%
BenchmarkRedisClusterPing-4       9100          9183          +0.91%
BenchmarkPool-4                   241           308           +27.80%
BenchmarkRedisPing-4              7638          7528          -1.44%
BenchmarkRedisSet-4               18755         18934         +0.95%
BenchmarkRedisGetNil-4            7676          7668          -0.10%
BenchmarkRedisSetGet64Bytes-4     16940         16321         -3.65%
BenchmarkRedisSetGet1KB-4         17856         17755         -0.57%
BenchmarkRedisSetGet10KB-4        40290         37613         -6.64%
BenchmarkRedisSetGet1MB-4         2195778       2157348       -1.75%
BenchmarkRedisSetGetBytes-4       43140         37612         -12.81%
BenchmarkRedisMGet-4              8281          7888          -4.75%
BenchmarkSetExpire-4              19366         16504         -14.78%
BenchmarkPipeline-4               9863          9942          +0.80%
BenchmarkZAdd-4                   8951          8828          -1.37%

benchmark                         old allocs     new allocs     delta
BenchmarkParseReplyStatus-4       1              1              +0.00%
BenchmarkParseReplyInt-4          1              1              +0.00%
BenchmarkParseReplyError-4        2              2              +0.00%
BenchmarkParseReplyString-4       1              1              +0.00%
BenchmarkParseReplySlice-4        8              8              +0.00%
BenchmarkAppendArgs-4             0              0              +0.00%
BenchmarkRedisClusterPing-4       4              4              +0.00%
BenchmarkPool-4                   0              0              +0.00%
BenchmarkRedisPing-4              4              4              +0.00%
BenchmarkRedisSet-4               7              7              +0.00%
BenchmarkRedisGetNil-4            5              5              +0.00%
BenchmarkRedisSetGet64Bytes-4     11             11             +0.00%
BenchmarkRedisSetGet1KB-4         11             11             +0.00%
BenchmarkRedisSetGet10KB-4        12             12             +0.00%
BenchmarkRedisSetGet1MB-4         13             13             +0.00%
BenchmarkRedisSetGetBytes-4       12             12             +0.00%
BenchmarkRedisMGet-4              13             13             +0.00%
BenchmarkSetExpire-4              13             13             +0.00%
BenchmarkPipeline-4               17             17             +0.00%
BenchmarkZAdd-4                   8              8              +0.00%

benchmark                         old bytes     new bytes     delta
BenchmarkParseReplyStatus-4       32            32            +0.00%
BenchmarkParseReplyInt-4          8             8             +0.00%
BenchmarkParseReplyError-4        32            32            +0.00%
BenchmarkParseReplyString-4       32            32            +0.00%
BenchmarkParseReplySlice-4        170           170           +0.00%
BenchmarkAppendArgs-4             0             0             +0.00%
BenchmarkRedisClusterPing-4       116           116           +0.00%
BenchmarkPool-4                   0             0             +0.00%
BenchmarkRedisPing-4              116           116           +0.00%
BenchmarkRedisSet-4               10707         10707         +0.00%
BenchmarkRedisGetNil-4            160           160           +0.00%
BenchmarkRedisSetGet64Bytes-4     418           418           +0.00%
BenchmarkRedisSetGet1KB-4         1378          1378          +0.00%
BenchmarkRedisSetGet10KB-4        21349         21349         +0.00%
BenchmarkRedisSetGet1MB-4         2113967       2113942       -0.00%
BenchmarkRedisSetGetBytes-4       21365         21365         +0.00%
BenchmarkRedisMGet-4              352           352           +0.00%
BenchmarkSetExpire-4              380           380           +0.00%
BenchmarkPipeline-4               800           800           +0.00%
BenchmarkZAdd-4                   224           224           +0.00%

we end up with more and more pool timeouts

Can you share DiatTimeout and ReadTimeout? I suspect that you are affected by combination of:

read timeout -> connection is closed
dial timeout -> new connection can't be opened

I suspect it's due to the iterations on connList.Remove and connList.Replace

See https://github.com/go-redis/redis/pull/273. Remove is not very fast, but it is fast enough and does not become slower when pool size grows.

As these happen within a mutex, a failing connection effectively takes down everything else, causing the pool to block.

We hold lock only for adding/removing connection from the list. Lock is not held when connection is recycled.

It also means that we round-robin across all our connections in the pool and large pools never actually shrink.

True, but this does not look very important for Redis which can handle thousands of connections... I would like to fix this, but honestly I don't see how it can fix your issue.

Sure, I can give you some background. The settings are pretty standard (and generous):
opt := redis.ClusterOptions{
  PoolSize: 20,
  DialTimeout: 5*time.Second,
  ReadTimeout: time.Second,
  WriteTimeout: time.Second,
  PoolTimeout: time.Second,
}

Every now and then, we see "spikes" of redis: connection pool timeout, although there is no indication of a break-down on operational level. The cluster nodes are up, RDB/AOF are disabled, and there is nothing in the redis logs or in SLOWLOG that would indicate a "lock up". There is nothing that would suggest a network problem either.

The odd thing we have identified is that the frequency of these spikes is increasing when we increase the PoolSize. We bumped the value from 20 to 200 and the pool time outs instantly went through the roof.

True, but this does not look very important for Redis which can handle thousands of connections...

I don't think it's important to Redis, but it's important to the Go client. Assuming a PoolSize of 10 connections with a cluster of 200 nodes, you (worst case) end up with 2,000 open TCP connections and none of these will ever be retired.

Added your changes in https://github.com/go-redis/redis/pull/277

Tagged v3.5.0 with fixes from this PR.


Build things with JDK 17, but preserve Java 8 compat anyway

Right now, publishing fails because:

Mill 0.12.x publish tasks require JDK >= 11
using Java >= 11 but building for Java 8 requires passing --require 8 to javac and scalac
we're using "unsupported" JDK APIs (sun.misc.Signal stuff), and neither javac nor scalac accept options to enable access to it alongside --release 8 (javac doesn't accept --add-exports jdk.unsupported/sun.misc=ALL-UNNAMED alongside --release, and scalac doesn't allow passing such an option altogether anyway, see https://github.com/scala/scala/pull/10801)

To work around that, this PR:

uses JDK 17 everywhere on the CI
passes --release 8 to scalac
moves the (Java) file using unsupported JDK APIs to a separate pure Java cache-util module
passes -source 8 -target 8 -bootclasspath some-jdk-8/jre/lib/rt.jar to javac in order to allow access to unsupported JDK APIs

Scala 2:
  -Yrelease:<packages>                  Expose platform packages hidden under --release

in case that is useful. Not ported to Scala 3 (yet?), but maybe because there was no feedback.


How to change Python UWP to other version Python?

I created a new universal windows Python project. VS2017 select PythonUWPIot default. (Its version is 3.5 and I installed Python 2.7.13 before). How to change to 2.7.13. When right-click Python environment, i see that:

The UWP template only supports the specific Python version, since it has been modified to run under the UWP restrictions. We currently don't support changing it.
(cc @alanch-ms)

@zooba Thank for replying. Which Python version does the UWP support? 3.5? Have I to install Python? or use default Python UWP? How to install addition library as OpenCV for Python UWP?

I believe the latest release of CPython UWP is based on 3.5 still. Since this is a specially modified version of Python, you have to use it for this platform, and installing other versions doesn't make any difference (though of course, you can use other versions with regular Python projects other than UWP).
@alanch-ms will need to speak to the availability of 3rd-party libraries, but it's my understanding that you'll need to build them from source to be able to use them in UWP apps, and I'm not sure that the support for that exists yet.


[wip: test doc-build]

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Robyn CSV Data Dictionary?

Project Robyn
Describe issue
I have not been able to locate a Data Dictionary which describes each output from the various .csv file's which Robyn can output.
Namely, column descriptions and documentation for the following
    pareto_hyperparameters.csv
    pareto_aggregated.csv
    pareto_alldecomp_matrix.csv
    pareto_media_transform_matrix.csv
    pareto_hyperparameters.csv
    pareto_clusters_ci.csv
    pareto_clusters.csv'

Is there any documentation which elucidates the meaning of each column?
Thank you in advance!
Environment & Robyn version
Robyn: 3.10.3

yes her you go https://github.com/facebookexperimental/Robyn/blob/main/demo/schema.R


Added Manual

Added Manual to split up the readme
Addresses issue 451

I apologize for all of the commits added after the pull request. I made a small change to the .travis.yml file to build the manual and test it.

Manual
Here's what it looks like

Closing, since unfortunately mdbook doesn't have a man page renderer, see the issue I opened.
So sorry to close this, and thank you for taking the initiative on this!


exit_error if the hostname/IP address to be checked is empty

@atheurer I had to fix a type, can you re-review this please?


Lineage not detected using Unity Catalog enabled Cluster

Hi there,
In our setup, we've been testing the connector with great success for a pretty basic All-Purpose cluster with no isolation shared.
Since we also aim to use Unity Catalog, we have tried to test the connector with a Unity Catalog enabled cluster. Given that there's no possibility to edit Init Scripts for UC clusters with Shared Access mode, we have defined the Init Script on a global level.
Now we've tested that this global init script still ensures that the lineage connector works for the non-UC cluster, but we are not able to make it work for the UC cluster.
Seems like there are no messages coming in the Azure Functions, even though the clusters have identical setup, apart from the Shared/No isolation shared property which enables the Unity Catalog in our Workspace.
Any idea how to make sure that we can track Lineage using the Unity Catalog enabled cluster?
Thanks!
Desktop (please complete the following information):

OS: Windows
OpenLineage Version: 0.17.0
Databricks Runtime Version: 11.3 LTS
Cluster Type: Interactive - Standard DS3_v2
Cluster Mode: Unrestricted / Shared Access Mode (UC Enabled)
Using Credential Passthrough: No

Hi, @svnnl - We currently don't support Spark 3.3 which is in the 11.3 LTS.  That is why you're not seeing lineage.
We have been prioritizing a few other features but we will look into testing 11.3 ASAP.

Hi @wjohnson, thanks for your reply, will eagerly await results on the testing and hopefully it can solve the issue.
Just FYI, we do, however, already have a cluster running currently on 11.3 LTS with Spark 3.3 without Unity Catalog enabled and are able to track lineage with it. The only apparent difference between the two clusters is the fact that one has Unity Catalog enabled and the other doesn't (See screenshots below).

Non-UC Cluster with 11.3 LTS - Lineage works.

UC Cluster with 11.3 LTS - Lineage doesn't work.

Hi @wjohnson , @svnnl , I'm confused about the compatibility of this lineage solution for ADB and Unity Catalog support. In this video https://youtu.be/Ae1goH1xOCY?si=OnNRgOGJcT_LTOCf the speaker is saying that it supports only the default Metastore, is that true? Thanks

Unfortunately, we won't be able to fix this without a solution from OpenLineage.  Unity Catalog metadata scanning is supported in Microsoft Purview and Lineage will be coming too.
I will document this limitation in the next release.


UNECESSARY SPACE AFTER NAVBAR ICON

Describe the feature
Unecessary space after navbar  elements is present . which i have fixed
Also padding is not present .
Additional :
I have added some hover effect to be attractive.
Add ScreenShots

Kindly assign me this issue to work on under GSSOC'24
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@Nih1tGupta i want to work for this please assign to me


Win/app updates2

add talk functionality to OpenThread.vcxproj

Codecov Report

Merging #27 into master will increase coverage by 1.73%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #27      +/-   ##
==========================================
+ Coverage   70.38%   72.11%   +1.73%
==========================================
  Files         142      142
  Lines       19323    18457     -866
  Branches     2366     2280      -86
==========================================
- Hits        13601    13311     -290
+ Misses       4825     4288     -537
+ Partials      897      858      -39

Impacted Files
Coverage Δ

src/ncp/ncp_base.cpp
26.31% <0%> (-10.2%)
:x:

src/core/thread/mle_router.cpp
79.27% <0%> (-0.17%)
:x:

src/core/net/dhcp6_client.cpp
79.03% <0%> (ø)
:white_check_mark:

examples/platforms/posix/radio.c
78.57% <0%> (+0.42%)
:white_check_mark:

src/core/thread/lowpan.cpp
93.72% <0%> (+0.71%)
:white_check_mark:

src/core/api/thread_api.cpp
46.32% <0%> (+0.86%)
:white_check_mark:

src/core/thread/mle.cpp
81.43% <0%> (+0.93%)
:white_check_mark:

src/core/mac/mac.cpp
80.18% <0%> (+1.06%)
:white_check_mark:

src/core/net/ip6_mpl.cpp
93.89% <0%> (+2.29%)
:white_check_mark:

src/core/thread/lowpan.hpp
100% <0%> (+2.63%)
:white_check_mark:

... and 3 more

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 974421d...c9091ea. Read the comment docs.


[DO NOT MERGE] Hotfix for Dash p2sh address

add lock script tests for dash / qtum
revert MUE and cleanup

@hewigovens can you rebase and let's get this merged into master

Hey, may I ask why MUE got removed from the code? Thanks

This was an urgent hotfix and caused by merging MUE which p2pkh prefix is duplicated with dash p2sh prefix

This was an urgent hotfix and caused by merging MUE which p2pkh prefix is duplicated with dash p2sh prefix

Is there any way this can be fixed and get MUE merged again?

MUE's p2pkh prefix is the same as Dash's p2sh prefix and reverse.
Please let me know, we would really love to have MUE on TrustWallet.
Thanks.

we understand, we have revised our requirements recently, we will be very careful when adding new coins, especially bitcoin fork


[DON'T REVIEW] feat: wip max in-flight pulls

Fixes #77

For now, pulling changes from https://github.com/warm-metal/csi-driver-image/pull/83 for testing this PR.

Ran tests:
$ cd cmd/plugin
$ go test -run TestNodePublishVolumeAsyncInFlightPulls

Test result
I1219 12:01:28.785605   28062 server.go:108] Listening for connections on address: &net.UnixAddr{Name:"//tmp/csi.sock", Net:"unix"}
I1219 12:01:30.789678   28062 node_server.go:62] mount request: volume_id:"docker.io/library/redis:latest" target_path:"test-path1" volume_capability:<access_mode:<mode:SINGLE_NODE_READER_ONLY > > volume_context:<key:"pullAlways" value:"true" >
I1219 12:01:30.795363   28062 pullexecutor.go:123] pull image "docker.io/library/redis:latest"
I1219 12:01:30.887674   28062 node_server.go:62] mount request: volume_id:"docker.io/library/ubuntu:latest" target_path:"test-path2" volume_capability:<access_mode:<mode:SINGLE_NODE_READER_ONLY > > volume_context:<key:"pullAlways" value:"true" >
E1219 12:01:35.788257   28062 node_server_test.go:266] context deadline exceeded; retrying: rpc error: code = DeadlineExceeded desc = context deadline exceeded
I1219 12:01:35.795929   28062 pullexecutor.go:123] pull image "docker.io/library/ubuntu:latest"
E1219 12:01:35.888196   28062 node_server_test.go:281] context deadline exceeded; retrying: rpc error: code = DeadlineExceeded desc = context deadline exceeded
I1219 12:01:35.888497   28062 node_server.go:62] mount request: volume_id:"docker.io/library/redis:latest" target_path:"test-path1" volume_capability:<access_mode:<mode:SINGLE_NODE_READER_ONLY > > volume_context:<key:"pullAlways" value:"true" >
I1219 12:01:35.989549   28062 node_server.go:62] mount request: volume_id:"docker.io/library/ubuntu:latest" target_path:"test-path2" volume_capability:<access_mode:<mode:SINGLE_NODE_READER_ONLY > > volume_context:<key:"pullAlways" value:"true" >
I1219 12:01:45.896044   28062 node_server_test.go:235] server was stopped
PASS
ok  	github.com/warm-metal/csi-driver-image/cmd/plugin	17.135s


Adding a Lambda Layer via Amplify Update overwrites previous dependency in backend-config.json

Describe the bug
When using amplify function update to update a pre-existing lambda function to add a lambda layer, the previous dependency (on the GraphQL API in this case) is overwritten.
Amplify CLI Version
4.23.0
To Reproduce
andrewjd@3c22fb7b2dea testgraphql % amplify init
Note: It is recommended to run this command from the root of your app directory
? Enter a name for the project testgraphql
? Enter a name for the environment dev
? Choose your default editor: None
? Choose the type of app that you're building javascript
Please tell us about your project
? What javascript framework are you using react
? Source Directory Path:  src
? Distribution Directory Path: build
? Build Command:  npm run-script build
? Start Command: npm run-script start
Using default provider  awscloudformation

For more information on AWS Profiles, see:
https://docs.aws.amazon.com/cli/latest/userguide/cli-multiple-profiles.html

? Do you want to use an AWS profile? Yes
? Please choose the profile you want to use default
Adding backend environment dev to AWS Amplify Console app: d1itndopb63vfw
⠋ Initializing project in the cloud...

CREATE_IN_PROGRESS amplify-testgraphql-dev-162557 AWS::CloudFormation::Stack Thu Jul 09 2020 16:25:59 GMT-0400 (Eastern Daylight Time) User Initiated
⠋ Initializing project in the cloud...

CREATE_IN_PROGRESS UnauthRole       AWS::IAM::Role  Thu Jul 09 2020 16:26:09 GMT-0400 (Eastern Daylight Time) Resource creation Initiated
CREATE_IN_PROGRESS UnauthRole       AWS::IAM::Role  Thu Jul 09 2020 16:26:08 GMT-0400 (Eastern Daylight Time)
CREATE_IN_PROGRESS DeploymentBucket AWS::S3::Bucket Thu Jul 09 2020 16:26:06 GMT-0400 (Eastern Daylight Time) Resource creation Initiated
CREATE_IN_PROGRESS AuthRole         AWS::IAM::Role  Thu Jul 09 2020 16:26:06 GMT-0400 (Eastern Daylight Time) Resource creation Initiated
CREATE_IN_PROGRESS AuthRole         AWS::IAM::Role  Thu Jul 09 2020 16:26:05 GMT-0400 (Eastern Daylight Time)
CREATE_IN_PROGRESS DeploymentBucket AWS::S3::Bucket Thu Jul 09 2020 16:26:05 GMT-0400 (Eastern Daylight Time)
⠙ Initializing project in the cloud...

CREATE_COMPLETE AuthRole AWS::IAM::Role Thu Jul 09 2020 16:26:19 GMT-0400 (Eastern Daylight Time)
⠦ Initializing project in the cloud...

CREATE_COMPLETE UnauthRole AWS::IAM::Role Thu Jul 09 2020 16:26:25 GMT-0400 (Eastern Daylight Time)
⠸ Initializing project in the cloud...

CREATE_COMPLETE DeploymentBucket AWS::S3::Bucket Thu Jul 09 2020 16:26:27 GMT-0400 (Eastern Daylight Time)
⠸ Initializing project in the cloud...

CREATE_COMPLETE amplify-testgraphql-dev-162557 AWS::CloudFormation::Stack Thu Jul 09 2020 16:26:30 GMT-0400 (Eastern Daylight Time)
✔ Successfully created initial AWS cloud resources for deployments.
✔ Initialized provider successfully.
Initialized your environment successfully.

Your project has been successfully initialized and connected to the cloud!

Some next steps:
"amplify status" will show you what you've added already and if it's locally configured or deployed
"amplify add <category>" will allow you to add features like user login or a backend API
"amplify push" will build all your local backend resources and provision it in the cloud
"amplify console" to open the Amplify Console and view your project status
"amplify publish" will build all your local backend and frontend resources (if you have hosting category added) and provision it in the cloud

Pro tip:
Try "amplify add api" to create a backend API and then "amplify publish" to deploy everything

andrewjd@3c22fb7b2dea testgraphql % amplify api add
? Please select from one of the below mentioned services: GraphQL
? Provide API name: testgraphql
? Choose the default authorization type for the API API key
? Enter a description for the API key:
? After how many days from now the API key should expire (1-365): 7
? Do you want to configure advanced settings for the GraphQL API No, I am done.
? Do you have an annotated GraphQL schema? No
? Do you want a guided schema creation? Yes
? What best describes your project: Single object with fields (e.g., “Todo” with ID, name, description)
? Do you want to edit the schema now? Yes

The following types do not have '@auth' enabled. Consider using @auth with @model
         - Todo
Learn more about @auth here: https://docs.amplify.aws/cli/graphql-transformer/directives#auth

GraphQL schema compiled successfully.

Edit your schema at /Users/andrewjd/WebstormProjects/testgraphql/amplify/backend/api/testgraphql/schema.graphql or place .graphql files in a directory at /Users/andrewjd/WebstormProjects/testgraphql/amplify/backend/api/testgraphql/schema
Successfully added resource testgraphql locally

Some next steps:
"amplify push" will build all your local backend resources and provision it in the cloud
"amplify publish" will build all your local backend and frontend resources (if you have hosting category added) and provision it in the cloud

andrewjd@3c22fb7b2dea testgraphql %
andrewjd@3c22fb7b2dea testgraphql % amplify function add
? Select which capability you want to add: Lambda function (serverless function)
? Provide a friendly name for your resource to be used as a label for this category in the project: testgraphql9dc3586c
? Provide the AWS Lambda function name: testgraphql9dc3586c
? Choose the runtime that you want to use: Python
Only one template found - using Hello World by default.
? Do you want to access other resources in this project from your Lambda function? Yes
? Select the category storage
Storage category has a resource called Todo:@model(appsync)
? Select the operations you want to permit for Todo:@model(appsync) read

You can access the following resource attributes as environment variables from your Lambda function
        API_TESTGRAPHQL_GRAPHQLAPIIDOUTPUT
        API_TESTGRAPHQL_TODOTABLE_ARN
        API_TESTGRAPHQL_TODOTABLE_NAME
? Do you want to invoke this function on a recurring schedule? No
? Do you want to configure Lambda layers for this function? No
? Do you want to edit the local lambda function now? No
Successfully added resource testgraphql9dc3586c locally.

Next steps:
Check out sample function code generated in <project-dir>/amplify/backend/function/testgraphql9dc3586c/src
"amplify function build" builds all of your functions currently in the project
"amplify mock function <functionName>" runs your function locally
"amplify push" builds all of your local backend resources and provisions them in the cloud
"amplify publish" builds all of your local backend and front-end resources (if you added hosting category) and provisions them in the cloud

andrewjd@3c22fb7b2dea testgraphql % amplify function add
? Select which capability you want to add: Lambda layer (shared code & resource used across functions)
? Provide a name for your Lambda layer: testgraphql7133f3f3
? Select up to 2 compatible runtimes: Python
? The current AWS account will always have access to this layer.
Optionally, configure who else can access this layer. (Hit <Enter> to skip)
✅ Lambda layer folders & files created:
amplify/backend/function/testgraphql7133f3f3

Next steps:
Move your libraries to the following folder:
[Python]: amplify/backend/function/testgraphql7133f3f3/lib/python/lib/python3.8/site-packages

Include any files you want to share across runtimes in this folder:
amplify/backend/function/testgraphql7133f3f3/opt

"amplify function update <function-name>" - configure a function with this Lambda layer
"amplify push" - builds all of your local backend resources and provisions them in the cloud

andrewjd@3c22fb7b2dea testgraphql % amplify update function
? Select which capability you want to update: Lambda function (serverless function)
? Select the Lambda function you want to update testgraphql9dc3586c
? Do you want to update the Lambda function permissions to access other resources in this project? No
? Do you want to invoke this function on a recurring schedule? No
? Do you want to configure Lambda layers for this function? Yes
? Provide existing layers or select layers in this project to access from this function (pick up to 5): testgraphql7133f3f3
? Select a version for testgraphql7133f3f3: 1
? Do you want to edit the local lambda function now? No

Expected behavior
The entry for our function in backend-config.json should reflect the function's dependency on both the GraphQL api (for access to the DynamoDB table) and the lambda layer:
"dependsOn": [
	{
		"category": "api",
		"resourceName": "testgraphql",
		"attributes": [
			"GraphQLAPIIdOutput"
		]
	},
	{
		"category": "function",
		"resourceName": "testgraphql7133f3f3",
		"attributes": [
			"Arn"
		]
	}
]

However, when performing the steps above, I get this instead:
"dependsOn": [
	{
		"category": "function",
		"resourceName": "testgraphql7133f3f3",
		"attributes": [
			"Arn"
		]
	}
]

I'm not super sure what the consequences are, but it seems that if you create a function after the lambda layer is created and associate the layer with the function at creation time, backend-config.json is set up according to the first snippet, which seems to be the correct behavior.
Desktop (please complete the following information):

OS: MacOS Catalina
Node Version: v14.4.0

Thanks for the bug report @Andrew-Dickinson. I was able to reproduce.

As a work-around, am I able to just manually add the previous contents to the function in backend-config.js, or are there likely other side-effects I should be worried about?

@Andrew-Dickinson I think the best work-around for now is to use amplify update function and pick all the options in a single run through of the options (both enabling API permissions and adding a layer in this case).

A fix has been merged and will go out with the next release. Thanks again for the detailed bug report @Andrew-Dickinson!


Shared Layout

From what I can tell, it is not possible for Blazor Pages (.razor) and Razor Pages (.cshtml) to share a single layout file.  Is that correct?  Whether it is or is not, I think it should be called out in this documentation, as it seems like a common case.  For instance, if you create a new Blazor application and include authorization, you are now in a hybrid environment where the Identity pages are all .cshtml, and have a separate layout from the Blazor pages.

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

Note to self: https://github.com/aspnet/AspNetCore/issues/10883

Here,my Upvote to migrate all obsolete Identity razor pages to blazor components.


Migrate to Jest testing framework

Coverage decreased (-3.2%) to 78.426% when pulling 212c9ae0b12f4574f72aa846b7c583a8a479fcbe on add-jest into ad4b4f8532c39bb4696b201b21de8b6aaa88751c on master.


Page page number not decoded correctly

Using spring-cloud-openfeign version 2.1.3-RELEASE
It appears that the jackson mixin for Page is not quite correct
PageJacksonModule.java#L67
and
 PageJacksonModule.java#L85
both use "page" as the JsonProperty but I believe it should be "number"
Here is an example of the default output of a Page from a restcontroller ( content removed )
{   "content": [   ],   "pageable": {     "sort": {       "sorted": false,       "unsorted": true,       "empty": true     },     "pageSize": 20,     "pageNumber": 1,     "offset": 20,     "paged": true,     "unpaged": false   },   "totalElements": 403,   "last": false,   "totalPages": 21,   "sort": {     "sorted": false,     "unsorted": true,     "empty": true   },   "first": false,   "numberOfElements": 20,   "size": 20,   "number": 1,   "empty": false }
Happy to submit a PR if my theory is correct.

Yes please submit a PR and include a test


Bastion etcd config - old s3 downloader + no CA.

Hi there,
Happy to open a PR but just wanted to validate the problem first. Seems the bastion cannot connect to the etcd2 cluster because it's missing the CA. This keeps it from being able to issue the lock in order to update itself.
Additionally, it appears to still have to old s3 downloader script (as opposed to the go binary).

hi @jasisk - yeah the bastion has been neglected. It just needs to be brought up to par with the master/worker nodes.

Perfect. Just the validation I need. :grinning:
I'll take a crack at fixing. Leaving this open until then.

awesome - ty

@jasisk did you have a chance to look into this? I'm noticing the same issue on a fresh cluster.

did you have a chance to look into this?

I did. Fixed it locally. Let me clean up what I have and rebase it.

@jasisk I ended up fixing it myself as well (see PR above). It was a good opportunity for me to learn more about how the different parts of tack work together.

no longer using s3 for shipping around certs


Automatically logout if JWT expires

Currently the UI does not periodically check if the JWT expires, which can cause subscriptions to fail and the UI becomes unusable. We should check the validity of the JWT periodically, and redirect to login if it expires.

This was partially covered in https://github.com/NASA-AMMOS/aerie-ui/issues/659, but we are still seeing this behavior so need to re-visit.

Closed by https://github.com/NASA-AMMOS/aerie-ui/pull/975? @duranb

Closed by #975? @duranb

Technically it was also resolved by #729, but there was some SSR weirdness that broke it.


Default Java Fuzzer Example Fails

Expected Behavior
A straightforward fuzzing run from the example from the docs must succeed
Actual Behavior
It fails with the following error when trying to run the simple Java Fuzzer.
ERROR: Projects/fuzz-sample/BUILD:3:15: in java_binary rule //:JavaFuzzTest_metadata_: need at least one of 'main_class' or Java source files
ERROR: Projects/fuzz-sample/BUILD:3:15: in java_binary rule //:JavaFuzzTest_metadata_: main_class was not provided and cannot be inferred: source path doesn't include a known root (java, javatests, src, testsrc)
ERROR: Projects/fuzz-sample/BUILD:3:15: Analysis of target '//:JavaFuzzTest_metadata_' failed
ERROR: Analysis of target '//:JavaFuzzTest_run' failed; build aborted:
INFO: Elapsed time: 13.079s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (72 packages loaded, 1459 targets configured)
ERROR: Build failed. Not running target

BUILD
load("@rules_fuzzing//fuzzing:java_defs.bzl", "java_fuzz_test")

java_fuzz_test(
    name = "JavaFuzzTest",
    srcs = ["src/com/example/JavaFuzzTest.java"],
    # target_class is not needed if using the Maven directory layout.
    # target_class = "com.example.JavaFuzzTest",
)

Steps to Reproduce the Problem

Follow instructions from https://github.com/bazelbuild/rules_fuzzing#java-fuzzing
Run bazel run --config=jazzer //:JavaFuzzTest_run

Specifications

Version: bazel 6.3.2-homebrew
Platform: macOS

Ignore the above comment, I used the wrong target. works as expected with the change.

Ignore the above comment, I used the wrong target. works as expected with the change.

Just for the sake of posterity: You need to bazel run //:JavaFuzzTest_run. Glad that you figured it out!


Open up visibility of tf_imports

This is so other people can build web apps with the new build rules for
TensorBoard, based on Closure Rules web_library.

The failing test appears to be flaky. We can merge this as soon as Dandelion approves.


feature request: expose Apotheosis boss spawn sounds in the Extreme Sound Muffler interface

Exposing the boss spawn sounds in the Extreme Sound Muffler interface would allow dynamic configuration of the sounds during gameplay rather than requiring editing of a config file.

The boss spawn sound is not a special sound that can be exposed in such a manner, it is just the vanilla sound block.end_portal.spawn


Support user designation of _delta_log location

Hi, this is a feature request to support user designated location of the _delta_log folder. While it is possible to create an external table from the parquet files alone; something like Snowflake/Azure Data Warehouse is not able to understand what the _delta_log folder is an errors out when making an external table. Would it be possible to support the ability to designate the save location of the _delta_logs so that these tools can read the folder while still being able to take advantage of Delta? I understand this would complicate the read, as you would need to pass both the parquet location and the _delta_log folder, but would it be better to be explicit rather than implicit here?
Maybe make the implicit way the default and allow the user the option to  explicitly store these elsewhere?

Hi Kieran,
Reading the underlying data files directly is not guaranteed to return a consistent view of the table; the ACID guarantees of Delta Lake are predicated on going through the transaction log for writes and reads. Even if we moved the _delta_log folder outside of the table, you would not be able to create an external table from that folder.
Once we have SQL DDL/DML support (which we are actively working on), you can use the normal SQL Spark APIs to create Delta tables in the Hive metastore. It might be possible to support other tools reading a snapshot of a Delta table but we have no current plans to support that now.

Hi Mukul,
Do y'all have a timeline on that SQL DDL/DML support?

Even if we moved the _delta_log folder outside of the table, you would not be able to create an external table from that folder.

Do y'all have a recommendation on how to export data from delta to a data warehouse or are we thinking about this wrong.  Should delta be the source for a data warehouse?

SQL support depends on some parsing changes we’d need to make in Spark; we’re hoping to have something in the next couple months. Before then, you can still use the batch or streaming DataFrame APIs (in Scala or Python) to read the table. While you can’t statically look at the data files in your Delta table, Delta does play nicely as a Spark Structured Streaming source with all the usual exactly-once guarantees streaming has.
If you want to use existing data warehouses like Azure SQL DW or Snowflake, you can still use Delta for the ETL processes and use existing Spark connectors to write data out to these services. A fairly typical use case is to also use Delta as a last hop before pushing to a data warehouse, because then the Delta table data can also be used to do ML.

That seems fine for now! Is there a way for me to track the SQL DDM process?

We're still working on finalizing the processes for this sort of stuff; we'll keep you posted. Thanks for bearing with us while we sort that out!

@kjthebard I have created specific issues for building APIs for DMLs like Merge (#42), Update (#43) and Delete (#44). Please vote and have any further discussion on them in those issues. For now, I am closing this issue. Feel free to reopen it if you have more questions on non-DML stuff.


Fix for Yahoo Finance throwing a 403 for no headers

Yahoo Finance now throws a 403 forbidden exception for requests without headers. This PR is to fix this issue. Please see screenshot for proof of error and correctness
Before fix:
https://imgur.com/VGGvqJr
After fix:
https://imgur.com/tMw20AX

Thanks for fixing, merged this with the repo. Will also update the PYPI release.

You made a small error in the code, the string no longer included the f prefix which caused 'ticker' to become unused. Fixed that and updated the package.


Update documentation to emphasize multi env

The newly added multi env features work really well and have been a highly requested feature for a long time. It's here now and unit tests are passing so let's spread the word!

duplicates #74


Convert the Texts "Loading" and "Now" as parameters in the SplashScreen class

User should be able to customize the words below the CircularProgressIndicator:
Text("Loading",style: widget.styleTextUnderTheLoader
),
new Center(child: Text("Now",style: widget.styleTextUnderTheLoader
),

Totally agree with you on that,


Compilation fails: Error compiling Cython file

Compiling dwave/samplers/tree/sample.pyx because it changed.
Compiling dwave/samplers/tree/solve.pyx because it changed.
Compiling dwave/samplers/tree/utilities.pyx because it changed.
[1/3] Cythonizing dwave/samplers/tree/sample.pyx

Error compiling Cython file:
------------------------------------------------------------
...
                         double** single_mrg_data, int* single_mrg_len,
                         double** pair_mrg_data, int* pair_mrg_rows, int* pair_mrg_cols,
                         int** pair_data, int* pair_rows, int* pair_cols) except +

@cython.annotation_typing(False)  # maintain Cython2 behavior
def sample_bqm_wrapper(bqm: BinaryQuadraticModel,
^
------------------------------------------------------------

dwave/samplers/tree/sample.pyx:52:0: The annotation_typing compiler directive is not allowed in function scope
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "setup.py", line 53, in <module>
    ext_modules=cythonize(
  File "/usr/local/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 1115, in cythonize
    cythonize_one(*args)
  File "/usr/local/lib/python3.9/site-packages/Cython/Build/Dependencies.py", line 1238, in cythonize_one
    raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: dwave/samplers/tree/sample.pyx
*** Error code 1

Version: 1.2.0
FreeBSD 13.2

Ok, thanks.


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/24388

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/24513

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/24539

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/26148


Signup count

What's this PR do?
Adds pagination to /signups index endpoint.
Adds count and page query parameters.
How should this be manually tested?
Hit /signups endpoint and top of response should look like this:
meta: {
  pagination: {
    total: 3299,
    per_page: 25,
    current_page: 9,
    total_pages: 132,
    links: {
      prev_uri: "http://dev.dosomething.org:8888/api/v1/signups?count=25&page=8",
      next_uri: "http://dev.dosomething.org:8888/api/v1/signups?count=25&page=10"
    }
  }
},

/signups?count=3&page=9 should display three signup objects and take you to page 9. To test this further, change the values of these params.
Any background context you want to provide?
Adds pagination to index referenced in #6118
What are the relevant tickets?
Fixes #6230

looks ok from my end :+1:
cc @aaronschachter @jonuy  notifying you of api updates


UseInfiniteQuery fetchNextPage() methos doesn't work on

I have been trying to use UseInfiniteQuery method in <script setup> butt I just keep getting error
Uncaught TypeError: fetchNextPage is not a function

Live Demo: https://stackblitz.com/edit/vitejs-vite-yx2juo?file=src%2FApp.vue&terminal=dev
Note: I also am not able to use other variables as well, but I can use them inside the DOM. I don't think this is something we are expecting?

Functions are refs so you have to add .value to it
fetchNextPage.value()

@shoaibsharif This is something that needs to be fixed in v2, as it's kind of unexpected that functions are returned as refs.

@DamianOsipiuk Then what about for data? I can't get acess to that either. I get undefined when I am trying to get data in

@DamianOsipiuk Then what about for data? I can't get acess to that either. I get undefined when I am trying to get data in

@wobsoriano , data.value is not working either. Check the same demo, where I am trying to access data.value.pages but I keep getting undefined console.

@wobsoriano , data.value is not working either. Check the same demo, where I am trying to access data.value.pages but I keep getting undefined console.

Because like react-query, if there's no cached data then you will always get undefined. Try to use a watcher and see the value of data change.

Because like react-query, if there's no cached data then you will always get undefined. Try to use a watcher and see the value of data change.

I think you should check the demo, I am trying to access the data after I click the button and that point I have data cached.

FYI Optional Chaining doesn't work on templates. Remove that and it should work.

Also was trying to get the data on watch. This is what I was trying to do:
watch(data, (newValue) => {
  console.log(newValue.pages[0].map((a) => a.id));
});

I keep getting error
newValue.pages[0].map is not a function

In Vue3 optional chaining works. If I remove the optional chaining from the demo it will throw me an error. Try it out.

I am talking about your optional chaining in template. This will not work:
<template v-for="page in data?.pages" :key="page.id">

Also, like I said, data will be undefined at first, so if you want to use a watcher you can use optional chaining or
watch(data, (newValue) => {
  if (newValue) { // Check if newValue has value
    console.log(newValue.pages[0].map((a) => a.id));
  }
});

This video should explain what errors I am getting. https://www.loom.com/share/da2fea0d1aeb4bbb93e6c210227316a7

https://stackoverflow.com/a/68609994/11976847

That compiler only works for Vue 2 and Webpack, your project is Vue 3 and Vite. How is that working?

@shoaibsharif I think the simplest solution for you would be to compute pages before passing it to template:
const pages = computed(() => data.value?.pages)

And use pages in the template instead of data.pages.
<template v-for="page in pages" :key="page.id">

Checked on your demo and it works as expected.

Function can be called without value in https://github.com/DamianOsipiuk/vue-query/releases/tag/v2.0.0-alpha.1


⚠ Bofrost.de has degraded performance

In 1a326a6, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1906 ms

Resolved: Bofrost.de performance has improved in 4bc5b41.


✨ ♻ Some errors, refactor

Added local library instead git link
Import types
Added some icons
Refactor all icons

Co-authored-by: Pablo Castellanos<EMAIL_ADDRESS>


4: add blinded analysis model and corresponding sample function

closes #4

Had hoped to look at his today but day is slipping away. Will try by eob Mon


Not able to find 'x-amzn-requestid' when ConditionalCheckFailedException happen

We are using the Dynamoid Gem in our project
We are currectly want to implement Exception handling from the Dynamoid
Different types of exceptions are handled by
begin
// some code where exception may happen
rescue Exception => e
p e.message
end
For ConditionalCheckFailedException we are not able to get e.http_response.headers["x-amzn-requestid"]

Hi, @manabendrawelcome.

The exception class you're catching is Dynamoid::Errors::ConditionalCheckFailedException rather than assumed/expected Aws::DynamoDB::Errors::ConditionalCheckFailedException. Dynamoid's exception wraps the original exception, which you can reach using the #inner_exception method. This wrapper exists for compatibility with ActiveRecord.
Even on Aws::DynamoDB::Errors::ConditionalCheckFailedException, you cannot reach for http_response directly -- that method does not exist as per the SDK. Instead you have to go through #context. Here's an example.
Unrelated, but a bonus: avoid rescuing Exception.

I am glad you're using Dynamoid! Please continue reporting any potential issues and suggestions.

Hi phillipmw... Thanks for your reply.
We are using sdk 1 and when exception occurring dynamoid block catching the exception And I am still not getting any #context or 'x-amzn-requestid'
below is the code...
begin
d = Dynamo::DeviceStreamName.new
d.id = "111"
d.save
rescue AWS::DynamoDB::Errors::ConditionalCheckFailedException => e
p "error happen"
rescue Dynamoid::Errors::ConditionalCheckFailedException => e
p "error happen111"
e.methods
end
Response:
"error happen111"
=> [:exception, :==, :to_s, :message, :inspect, :backtrace, :set_backtrace, :blame_file!, :blamed_files, :describe_blame, :copy_blame!, :in?, :psych_to_yaml, :to_yaml_properties, :to_yaml, :blank?, :present?, :presence, :acts_like?, :try, :html_safe?, :duplicable?, :to_json, :instance_values, :instance_variable_names, :as_json, :attr_encrypted_options=, :`, :to_param, :to_query, :with_options, :methods, :private_methods, :protected_methods, :public_methods, :singleton_methods, :dclone, :pry, :binding, :is_haml?, :map_csv, :import, :map_csv_with_data, :send_mail, :send_mail_with_subject, :send_welcome_mail, :send_device_share_invitation, :send_batch_location_convert_report, :send_recurly_exception_mail, :send_s3_folder_cleanup_report, :send_hubble_device_issue_mail, :send_free_trial_mail, :send_free_trial_expiring_mail, :send_free_trial_expired_mail, :send_generic_mail, :pretty_print, :pretty_print_cycle, :pretty_print_instance_variables, :pretty_print_inspect, :to_v8, :to_ruby, :delay, :delay, :send_later, :send_at, :require_all, :require_rel, :load_all, :load_rel, :autoload_all, :autoload_rel, :decrypt, :encrypt, :evaluated_attr_encrypted_options_for, :evaluate_attr_encrypted_option, :require_or_load, :require_dependency, :require_association, :load_dependency, :load, :require, :unloadable, :nil?, :===, :=~, :!~, :eql?, :hash, :<=>, :class, :singleton_class, :clone, :dup, :initialize_dup, :initialize_clone, :taint, :tainted?, :untaint, :untrust, :untrusted?, :trust, :freeze, :frozen?, :instance_variables, :instance_variable_get, :instance_variable_set, :instance_variable_defined?, :instance_of?, :kind_of?, :is_a?, :tap, :send, :public_send, :respond_to?, :respond_to_missing?, :extend, :display, :method, :public_method, :define_singleton_method, :object_id, :to_enum, :enum_for, :gem, :psych_y, :class_eval, :silence_warnings, :enable_warnings, :with_warnings, :silence_stderr, :silence_stream, :suppress, :capture, :silence, :quietly, :debugger, :breakpoint, :ai, :awesome_inspect, :awesome_print, :suppress_warnings, :require_with_backports, :pretty_inspect, :equal?, :!, :!=, :instance_eval, :instance_exec, :send, :id]

Ah, my comment about #inner_exception is true only for the most recent version of Dynamoid, version 1.0.0. Naturally, I suggest you use the most recent version of all your gems.
With the older version, there isn't a way to get the instance of AWS::DynamoDB::Errors::ConditionalCheckFailedException -- in the code you're using, https://github.com/Dynamoid/Dynamoid/blob/v0.7.1/lib/dynamoid/adapter/aws_sdk.rb, Dynamoid::Errors::ConditionalCheckFailedException isn't a wrapper at all. We just catch the original exception from AWS SDK and re-throw a different exception.
So, if you need that header, upgrade to gem version 1. :)


[WIP] Enable rotation trigger for shoot observability credentials

How to categorize this PR?

/area security
/kind enhancement
What this PR does / why we need it:
This PR does following two things :

Introduces annotation gardener.cloud/operation=rotate-observability-credentials to enable end user to rotate observability-ingress-users credentials. Rotation information are updated under Shootstatus .status.credentials.rotation.observability.
Auto rotates operator's  observability-ingress credentials after every 30 days.

Which issue(s) this PR fixes:
Part of https://github.com/gardener/gardener/issues/5827
Special notes for your reviewer:
Release note:

New annotation `gardener.cloud/operation=rotate-observability-credentials` is introduced to enable end user to rotate `observability-ingress-users` credentials.

Auto rotation of operator's  `observability-ingress` credentials every 30 days.

/assign

/test pull-gardener-integration

/test pull-gardener-integration


Don't raise an exception on failure to CreateBucket

Traceback (most recent call last):
  File "/opt/crash_uploader", line 165, in <module>
    upload_user_coredump(pid, executable)
  File "/opt/crash_uploader", line 123, in upload_user_coredump
    with smart_open(dumpfile, 'wb') as s3out:
  File "/usr/local/lib/python2.7/dist-packages/smart_open/smart_open_lib.py", line 175, in smart_open
    return s3_open_uri(parsed_uri, mode, **kw)
  File "/usr/local/lib/python2.7/dist-packages/smart_open/smart_open_lib.py", line 255, in s3_open_uri
    fobj = smart_open_s3.open(parsed_uri.bucket_id, parsed_uri.key_id, s3_mode, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/smart_open/s3.py", line 60, in open
    fileobj = BufferedOutputBase(bucket_id, key_id, min_part_size=s3_min_part_size, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/smart_open/s3.py", line 255, in __init__
    s3.create_bucket(Bucket=bucket)
  File "/usr/local/lib/python2.7/dist-packages/boto3/resources/factory.py", line 520, in do_action
    response = action(self, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/boto3/resources/action.py", line 83, in __call__
    response = getattr(parent.meta.client, operation_name)(**params)
  File "/usr/local/lib/python2.7/dist-packages/botocore/client.py", line 314, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/usr/local/lib/python2.7/dist-packages/botocore/client.py", line 612, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (AccessDenied) when calling the CreateBucket operation: Access Denied

In general implicit bucket creation seems like a bad call, in case of a misconfig. But if it is going to happen, it definitely shouldn't block writing to that bucket if it already exists. (In our case this is running from an IAM box that does not have permission to create buckets, but can write to an existing bucket.)
Testing indicates this broke in 1.5.4

Creating buckets by default would definitely be a bug, that's horrible, I agree.
@menshikh-iv what happened in 1.5.4?

Hit it myself now.
Wasted 4 hours 😢 😢 😢 😢 😢

Also ran into this. Is there any toggle for specifiying? Or should we just assume that it will always try to create a bucket? Just afraid of the typo scenario which would auto-create a bucket that shouldn't exist 😨

@menshikh-iv we need the bug fix release ASAP.

@piskvorky work on it, will release smart_open today

@menshikh-iv @piskvorky  I don't believe this issue is resolved. I am still running into it in 1.5.5
According to the original error the issue is occurring on line 255 of s3.py.

From here things get a little strange, I have been debugging and found that the error still occurs when running the program normally. But while debugging with VSC the error does not occur and the upload occurs as expected.
Context:

s3 bucket exists
IAM user has write permission but not permission to create_bucket
program still attempts to create bucket at line 255 of s3.py in normal execution only. In debug mode issue does not occur.

This is a big blocker for me so I will be updating if I find anything, in the mean time any ideas are welcome.


Add custom mint module

This include:

Base module by #33
Fix module imports
Add Proto files (rebuild)
Juno tokenomics impl

close #27
Test: https://github.com/disperze/Juno/blob/mint-module/x/mint/types/minter_test.go#L12

Should I merge yours into mine,
mine into yours
or one of ours into main then the other?
  Interesting!

@faddat i can bring #37 changes after merge.

Proofs
Mint params -> "blocks_per_year": "50"

Supply fixed after 0 inflation

Rewards after 0 inflation

no txs

some txs

Some mint_params are not used

inflation_rate_change
inflation_max
inflation_min
goal_bonded

do i need to remove them?

Some mint_params are not used
* `inflation_rate_change`

* `inflation_max`

* `inflation_min`

* `goal_bonded`

do i need to remove them?

Yes better to remove.
Also would be cool to have phases as parameters as well, so we can edit using governance.
Thanks for the good work! Will start reviewing it now.

My review is about 24 hours out.  As a preliminary, I just want to say that it looks great!

Tests passed

on it now....

lgtm


Redesigning the Publications Page

Hello :)
While crawling through the website I found the Publications page.
The contributions parts look horrible:

I am thinking of turning it into a grid design.
Similar to the one in the teams page.

Any improvements to this page will be helpful. Could you add cards for these pages (and add their DOI links in a dropdown?)

@agriyakhetarpal
Is this better? If it is i will do the rest

This looks good! Sure, please do the rest. Could you mark the preprint and DOI buttons in different colours?

This looks good! Sure, please do the rest. Could you mark the preprint and DOI buttons in different colours?

Sure

Do you have an ides why this error is occuring?
Error: error building site: render: failed to render pages: render of "page" failed: "/workspace/pybamm.org/layouts/_default/single.html:19:9": execute of template failed: template: _default/single.html:19:9: executing "main" at <.Content>: error calling Content: "/workspace/pybamm.org/content/publications.md:19:1": failed to render shortcode "grid": failed to process shortcode: "/workspace/pybamm.org/themes/scientific-python-hugo-theme/layouts/shortcodes/grid.html:107:41": execute of template failed: template: shortcodes/grid.html:107:41: executing "shortcodes/grid.html" at <transform.Unmarshal>: error calling Unmarshal: "_stream.toml:30:42": unmarshal failed: toml: expected newline but got U+0052 'R'

File: https://github.com/Bashamega/pybamm.org/blob/bashamemga/redesign-page/content/publications.md

This looks a bit tricky to debug – I am not sure about where this is coming from. Could you remove the grid, and then add the cards one by one and then check?

I have solved @agriyakhetarpal . Check this: #148


🧑💻 : Add red color on wrong and green for right input

🔴 Title: Add red color on wrong and green for right input
🔴 Bug : Enhancement Aim:
Currently, the Hangman game just disables the button with a light green color either the input is wrong or right  which is now much user friendly. This enhancement aims to improve the user experience .
🔴 Changes :
Just a little color css enhancement
Screenshots 📷
N/A
✅ Details to Include When Taking the Issue:
Name : Tanuj Bhatia (istanujbhatia)
Participant Role (Specify the Open Source Program name, e.g., GSSOC, Hacktoberfest, etc.): GSSOC Extd, Hacktoberfest
Happy Contributing! 🚀
Feel free to adjust any details to fit your specific approach!

someone working on it,Do not get demotivated and raise new issue


TS6133: 'index' is declared but its value is never read when using

Hi there 👋🏻 ,
I hope you are fine, thanks for your amazing job.
I am getting this issue when I use a template to wrap an element from headlessui lib:
<template v-for="(person, index) in people" :key="index">
  <ListboxOption
    :value="person"
    :disabled="person.unavailable"
    as="template"
  >
    <li>
      {{ person.name }}
    </li>
  </ListboxOption>
</template>

Binaries:
  Node: 16.14.2
  npm: 7.17.0
npmPackages:
  typescript: 5.0.4
  vue: 3.3.0-beta.2
  vue-tsc: 1.5.4

Repro repo: https://stackblitz.com/edit/vitejs-vite-fv2zbg?file=src/App.vue
Wish you a great day 🌞
Stay safe

Duplicate of #329.
You can rename index to _index as a workaround.


[BUG] EnvironmentCredential changes behavior of DefaultAzureCredential even when it is excluded

Library name and version
Azure.Identity 1.10.3
Describe the bug
If you use DefaultAzureCredential in the following way:
DefaultAzureCredentialOptions options = new DefaultAzureCredentialOptions()
    {
         ExcludeEnvironmentCredential = true,
         ExcludeInteractiveBrowserCredential = true,
         ExcludeManagedIdentityCredential = true,
         ExcludeWorkloadIdentityCredential = true,
         ExcludeAzureCliCredential = true,
         ExcludeAzurePowerShellCredential = true,
         ExcludeSharedTokenCacheCredential = false,
         ExcludeAzureDeveloperCliCredential = false,
         ExcludeVisualStudioCodeCredential = false,
         ExcludeVisualStudioCredential = false,
    };

    DefaultAzureCredential tokenCredential = new DefaultAzureCredential(options);

(note: ExcludeEnvironmentCredential is set to true). and the AZURE_TENANT_ID environment variable is set, the default tenant is reset by the the credential anyway for subsequent credential checks.
For development environment, we have a key vault in one local tenant for development with our startup secrets, after which it uses production services in the default (set by AZURE_TANANT_ID) for the rest of the azure blobs and data.
Because of this behavior, it is not possible to do development in the development environment unless you replicate all the azure environment items into the development environment.
I'm trying specifying the tenant id specifically in TokenRequestContext() to see if that helps.
Expected behavior
If TokenRequestContext has a null TenantId setting, it should pick the local one, not the one from AZURE_TENANT_ID, since ExcludeEnvironmentCredential is set to true
Actual behavior
It changes the tenant id to that set by AZURE_TENANT_ID environment variable w/o looking at the options.
Reproduction Steps
Use the code above to get a token for the scope "https://vault.azure.net/.default" with and without AZURE_TENANT_ID set. You'll see the default tenant changes.
Environment
dotnet 6.0
This is an ASP.NET web application. ASP.NetCore 6.0.24
Azure.Identity 1.10.3

Hi @nschuessler -

If TokenRequestContext has a null TenantId setting, it should pick the local one, not the one from AZURE_TENANT_ID, since ExcludeEnvironmentCredential is set to true

In your code, where is the "local" TenantId being configured? In the example above, there is no TenantId option set.
The current expected behavior for the AZURE_TENANT_ID environment variable is that if no explicit tenant Id is supplied in the options, the one from the environment is used (if set). This is unrelated to the EnvironmentCredential itself.
If you have some clients that need to use different TenantIds, you will need to configure those clients with distinct credential instances with the preferred TenantId configured in the options.

In my case, I used the default of 'null' for tenant. And it picked up the tenant where my user account/machine where I do my development are hosted for most simple projects.
AccessToken token = await tokenCredential.GetTokenAsync(
    requestContext: new TokenRequestContext(
        scopes: new string[] { "https://vault.azure.com/.default" }), // tenantId is null by default.
    cancellationToken: cancellationToken);

How does it make sense to pick up a user credential for the current logged in VSO development environment (this goes for CLI credential, powershell credential, shared cache credential ...),  and the honor AZURE_TENANT_ID which points elsewhere?  They will never match right?
If you can't find all the credentials you need to auth in the SAME place from the same method, then use none of them and try the next credential right?

Thanks for the feedback, @nschuessler. What I've described is the actual behavior, and changing it would be a breaking change. Do you have any additional questions about how to get the correct TenantId set for your scenario?

Thanks initial question is answered.


Error when php artisan la:install (Laravel 5.4)

[Exception]
LAInstall::handle Unable to install : file(/var/www/html/app/Http/routes.php): failed to open stream: No suc
h file or directory

open your laravel logs,
it causes file permission. The permission should be 777. @naijab

https://stackoverflow.com/questions/39313536/missing-routes-php-file-in-new-laravel-project

The first thing is Laraadmin still better using Laravel ver 5.2 👯♂

Laravel 5.4 is not compatible with Laradmin

Yeah it tries to use the wrong routes file and also uses Illuminate\Foundation\Auth\Access\AuthorizesResources; which is not in 5.4 anymore.
Any word when LA is going to be 5.4 compatible?


Changing root directory

I installed a new drive and would like to move all results to the new drive on the computer. However, I think the root directory (aap.acq_details.root) in the aap structure for the main analysis and the one in each module needs to be updated because otherwise the analysis will try accessing them in the old folder (?)
Is there an easy way to do this?

If you want to carry on with the analysis, the  you only need to change the path in your script, an aa will pick up the thread.
However, keep in mind that the aap structures in the already processed modules will not change, which might be an issue if you want to use them, e.g., for pipeline connection.
To update the aap structure, you need to change the aap.acq_details.root on the top and in the internal structure:
aap.acq_details.root = CURRENTROOT;
aap.internal.aap_initial.acq_details.root = CURRENTROOT;

and save the aap structure.

I was intending to use it with pipeline connection. (Receive final output of preprocessing and do GLM) I guess then I'll need to re-preprocess the data in the new directory.

You do not have to re-process but update the aap structures; however, it might be easier depending on the amount and complexity of the data and the available computational power.

I need to go into each module's aap.acq_details.root for each participant and update, right? I may just rather re-analyze than do that haha!

I wrote a script that does this.
Shall we implement this to the repo as well? How should I go about it?
old_root = 'F:\fr-pr-3\A_block';
new_root = 'F:\fr-pr-3\move_test';
search_path = 'F:\fr-pr-3\move_test\studyA_prep';

[~,d]=dos(['dir /s /b ' fullfile(search_path,'aap_parameters*.mat')]);  % OS dir command
d=textscan(d,'%s','delimiter','\n'); d=d{:};   % convert string to cellstr array
for i=1:length(d)
    %disp(d{i});
    aap = load(d{i},"aap").aap;
    old_path = aap.acq_details.root;
    new_path = strrep(old_path,old_root,new_root);
    aap.acq_details.root = new_path;
    save(d{i},"aap");
end

Searching files and folders is much easier and cross-platform compatible with spm_select.
You have to change not only aap.acq_details.root but also aap.internal.aap_initial.acq_details.root.
The line aap = load(d{i},"aap").aap looks 'pythonic' to me and I do not think will work in MATLAB. Only load(d{i},"aap") should suffice.

Do you know if spm_select can give the full path of the files?
[a b] = spm_select('ExtFPListRec', pwd, 'aap_parameters*.mat');
this returns directories where the aap_parameter files exist, not their full path.

Try FPListRec instead ExtFPListRec. And use .* instead of * to match any character any times. I suggest you to study the spm_select documentation (at the top of the function) and the regular expressions, which it uses as a search pattern.

Thanks. I had been consulting the spm_select documentation for a good 30 mins but I couldn't figure out the problem.
[files dirs] = spm_select('FPListRec', pwd, 'aap_parameters.*');
Provided that all files which contain "aap_parameters" are matrices, it should work. Which is the case when I ran the function.

That is why I also suggested studying regular expressions.

Yeah, I agree. So here's my regex version.
[files,dirs] = spm_select('FPListRec', search_path, '.*aap_parameters.*\.mat$');

Sure! But it is more like an aa tool than part of the engine, because users are likely to call it outside an aa workflow. Therefor, name it aa_change_root and put into <aa path>/aa_tools


Add "page break" markers (e.g "---") to text to force breaks of text during book creation

Currently pages break by tokens.  Sometimes it would be nice to break chapters or sections forcibly.
e.g., creating a book with text
Hello.
---
Goodbye.

creates a book with two pages: "Hello.", "Goodbye."  This page break marker does not change the max words per page, it works with it.
Test cases:

text with and without breaks
no blank pages should be created -- e.g. two lines with separators right next to each other shouldn't be created
no blank lines at top or bottom of page when split

Fixed in develop

Launched in 3.2.3.


Add comment to indicate auto-generated code

Hi, would be good if the auto-generated code would contain some comment header to indicate it was auto-generated by snowflaqe, maybe even including the date / GraphQL URI / name of query file, and a link to the snowflaqe repo of course.
This would avoid people manually editing these files.

Hi @OttoBos, this sounds like a good idea. I'll add it as a configuration option sometime soon 😄

Fixed as of v1.19 🚀 Snowflaqe will now emit code generation metadata when when the option emitMetadata is set to true
{
    "emitMetadata": true
}

This option is set to false by default when you do not provide in the configuration.


[Q] How to build

I want to test minor changes for Scratch Blocks in Scratch VM. When I use build.py, it generates some scripts for me, but not in dest/. Scratch VM requires dest/vertical.js, but it doesn't change.

Sorry, we made some changes when we started publishing to npm.  For now, you want to use npm run prepublish to get the files that scratch-vm needs.
I'll make building less obtuse and document this.

Thanks.

For now, I testing it on experimental playground


[Question] Timezone in get_forecasts

First of all, thanks for making this available!
Question
When I do call the get_forecasts service on the weather entity provided by this integration, the datetime fields don't include a timezone offset (see screenshot, taken at 20:06+02:00 / 18:06+00:00). I wonder whether I have to interpret the given datetimes as my local timezone (which would be +02:00, so the first forecast entry would be of 20:00+02:00) or as UTC (+00:00, where I still have to convert, so the first entry would be of 20:00+00:00 thus 22:00+02:00).

Thanks for the feedback!
The API for the KMI / IRM does not specify any timezone but the forecast mainly makes sense for the related city.  You can safely assume that all timestamps without timezone offset are in Brussels time (unless otherwise stated with a timezone offset).  The first datetime attribute in your screenshot is equivalent to 2024-05-06T20:00:00+02:00
If you find values that should be in Brussels time but clearly are not, then it's a bug


Mapping a json to an Object adding a data not included in response

Hello, sorry for this is not an issue.
Your JSON dictionary:
{
"data": [
{
"ID": 5,
"Descrizione": "test"
}
]
}

### Your model:
import ObjectMapper

class ObjectResponse: Mappable {
    var data: [MyObject]?
    required init?(map: Map){
    }

    func mapping(map: Map) {
        data <- map["data"]
    }
}

class MyObject: Mappable {
    var externalID: Int16
    var descrizione: String?
    var id: NSNumber?
    required init?(map: Map){
    }
    func mapping(map: Map) {
        id <- map["ID"]
        descrizione <- map["Descrizione"]
    }
}

What you did:
I want to write a value into externalID which is not inside the Json. Is this possible? In case, can you explain, better if with an example, how to do it?
Thanks

i have solved by iterating data object in alamofire completion handler


Deprecated selectors (1.8.0-beta* console warnings)

Upgraded the following syntax theme selectors in `/home/mishak/.atom/packages/genesis-syntax/index.less` for shadow DOM compatibility:

`.editor .selection .region` => `:host .selection .region`

See the upgrade guide for information on removing this warning.

+1


Changes for 1fh capstone flow on unit map

Schema changed for campaign.levels.nextLevels and similarly for classroom - nextLevels is now an object
Changes in the next level logic
Changes in building the level status map

Design doc with description of the new next level logic:
https://docs.google.com/document/d/1XTVtPjG_9gGic3FBPC7PYClTrf82fhxyzMnXzCK529Q/edit#heading=h.z287uqh1z7hk (specially section "How to handle non-linear flow(1FH Capstone)")

Thanks, @AndrewJakubowicz. You are correct with your assumption.
However, I would re-phrase it - capstone levels unlock new levels based on what stage has been completed (instead of boolean complete/incomplete status). Hence they need to be checked for completion of stages and the levels unlocked by those stages even if it has not been fully complete.
To avoid confusion in the code, I have renamed the confusing variable as hasCompletedStages. But feel free to let me know if this may still appear confusing.

Looks good!


refactor: createPost handler

Related Issue
Refactored : handleSubmit handler in CreatePost
Description
earlier create post component would send toastify and resets the states even if the post was not able to save in the database, made a negation in if condition so that toastify and state would not able to reset if the problem has occurred during saving of post in DB

Pakage lock !?😅 Yarn should've stoped it tho !

@Girishbari Suggested some changes, please improve. Also create an issue first and linked that to this PR


Make workflows selectable

This PR (re-)adds a CLI to the project for easier usage.
Furthermore, it allows users to specify which workflows are run on the data they provide in ./gt.

Are there plans to merge this pull request? I have local changes (support for podman) pending which would cause merge conflicts with the changes here.


Add Chengxuan to GitHub

Please include:

GitHub ID to add: Chengxuan
Project to be added to: FireFly
Team to be added to: https://github.com/orgs/hyperledger/teams/firefly-committers

Invite sent!


502 "operation was canceled" when user makes multiple requests thru oauth2_proxy

I'm using oauth2_proxy (latest version of master) to proxy to a fairly low-traffic internal server running nginx and serving some static files, along with a database. A single page-load requests about 30 files (JS assets, CSS, etc.).
Sporadically, at least one of these ~31 request will fail; often multiple fail; occasionally, they all succeed. Refreshing the page several times eventually gets you a success, usually. Different requests that fail at different instances -- and the requests that fail can be to either upstream.
Expected behavior is that all completeable requests are completed.
The error message at for the failed requests (sanitized for internal info) looks like this:
<IP_ADDRESS> -<EMAIL_ADDRESS>[01/Nov/2016:15:19:43 +0000] nginxupstream.internal.mycorp.tld GET nginxupstream.internal.mycorp.local "/js/some_resource.js" HTTP/1.1 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:49.0) Gecko/20100101 Firefox/49.0" 502 0 0.002
2016/11/01 15:19:43 reverseproxy.go:279: http: proxy error: dial tcp: lookup stevedore.adm.svc.prd.local on <IP_ADDRESS>:53: dial udp <IP_ADDRESS>:53: operation was canceled

Because requests to either upstream can fail, I assume this is an issue with my deployment of oauth2_proxy. Perhaps it's choking on being asked to make 30ish requests in a single second? I don't know what to make of the dial udp operation was canceled stuff -- perhaps you do.
 (This accounts for some of the funny looking routing, with that .local address.)
Looking forward to hearing back from you if you can help. Great tool, super useful; I'm very appreciative of it. Please let me know if there's additional information I can offer that's helpful in debugging. Thanks!

@jeremybmerrill interesting. the operation was canceled part is odd, but it does implicate DNS resolution from inside your container in general.
 If you are having actual DNS server capacity issues you might need to use a local caching dns proxy (I have had good success running dnsmasq on every host)

Ah, that's a very good idea, @jehiah. I'll bug our Kubernetes people and see if occasionally-failing DNS resolution is a plausible thing. And I'll try what you suggest too. Thanks!

Turns out this is a known bug with our Kubernetes (that I just hadn't encountered before), not a oauth2_proxy problem. Sorry for the false alarm and thanks for the terrific tool.

no worries. thanks for the follow up!

@jeremybmerrill can you post a link to the upstream kubernetes issue?  I have hit this on Kubernetes also, but not using ouath2_proxy

@caleblloyd: I'm afraid I don't remember. I'm a mere user of the kubernetes cluster and one of our admins fixed it, I think.

@jeremybmerrill Could you provide some more information about what he did to fix it? I'm having the same issue.

@sergiosarmentosilva I asked and he didn't remember either. Around that time, we were dealing with some issue where connections were being reused in the kubernetes-dns-proxy, so that when a service moved from one pod to another, the proxy might send traffic for that service to the old pod, resulting in traffic for app A showing up at app B. Another issue we apparently had was sporadic failures in flanneld, which we fixed by restarting flanneld. But I don't think either of these issues was the source of the oauth2_proxy problem... whatever the solution was is lost in the sea of memories. Sorry about that.


docs: blogs.md created

Blog file added
Are we trying to achieve this here in this issue #90 @derberg @alequetzalli

Related issue(s)

@alequetzalli I'll leave it up to you for technical review as well as you published articles already so you are able to verify if the instructions are accurate.
my only suggestion is that probably this doc like all others should land in community repo, as all community docs should be there. Anyway, ping if you need me

agreed, we need to move this to community repo because this is community documentation, not a blog post 😄
@octonawish-akcodes, can you move this PR to community repo? does that make sense?

@alequetzalli I'll leave it up to you for technical review as well as you published articles already so you are able to verify if the instructions are accurate.
my only suggestion is that probably this doc like all others should land in community repo, as all community docs should be there. Anyway, ping if you need me

agreed, we need to move this to community repo because this is community documentation, not a blog post 😄
@octonawish-akcodes, can you move this PR to community repo? does that make sense?

Sure but which issue should I mention there

the same issue you used here, silly 😜  @octonawish-akcodes

@octonawish-akcodes I have re-written this doc to make it easier/faster. Please make sure you copy over this new CORRECTED doc content to your new community PR 😄

Done here

closing, work continues in https://github.com/asyncapi/community/pull/592


Add analytic entailment task

This task tests the ability of language models to identify cases of analytic entailment, i.e., entailment that holds in virtue of meaning.

@googlebot I signed it!

@googlebot I signed it!

@ejerzak We are now requesting that task authors please include an explicit section in the README.md file called "data source", listing exactly where you got your data from (or explicitly state that you made it up yourself). Many thanks!

@nayeon7lee are one of the assigned reviewers for this task.  Please provide feedback and be sure to notify me with a formal accept or does not meet criteria by Tuesday June 22 (if you have not already done so).

@pliang279 are one of the assigned reviewers for this task.  Please provide feedback and be sure to notify me with a formal accept or does not meet criteria by Tuesday June 22 (if you have not already done so).

The amount of tasks we received this round is tremendous.  With so many tasks to review we have decided to extend the review period to Tuesday, June 29.
Reviewers: if the submitter has made revisions please be sure to notify me with a formal ”accept” or ”does not meet criteria” by Tuesday, June 29  (if you haven't already done so).
this is an automated message

Meta review: Task looks good. Just one comment / questions above from spot-reading some of the examples.

Meta Accept. Thank you!


feat: add technoportal information

Add the TechnoPortal information.

Top perfect. Good job with the image too ;)


Add KEVM cheatcodes

Component
Forge
Describe the feature you would like
While integrating Foundry with KEVM, we have implemented/renamed the following cheatcodes on the KEVM side, which could be useful to also have on the Foundry side. For details of the signatures we're using, you can look at this file.

expectRegularCall: Expect a call using the CALL opcode and specified parameters
expectStaticCall: Expect a call using the STATICCALL opcode and specified parameters
expectDelegateCall: Expect a call using the DELEGATECALL opcode and specified parameters
expectNoCall: Expect no calls to be made after this cheat code
expectCreate: Expects the deployment of the specified bytecode by the specified address using the CREATE opcode
expectCreate2: Expects the deployment of the specified bytecode by the specified address using the CREATE2 opcode
symbolicStorage: Make the storage of a given address "symbolic." Any subsequent SLOAD reads a random value, and then the random value that was read is memorized (so if you SLOAD the same slot again, you get the same result)

For expect cheatcodes other than expectRegularCall and expectStaticCall, we don't have tests showing their behavior, but they should be similar to the call tests. For symbolicStorage we have this test.
Additional context
No response

Another one we're adding is infiniteGas(): https://github.com/runtimeverification/evm-semantics/pull/1524
This can probably be a no-op on the Foundry side, as I doubt that it will exercise many cases where infinite gas is actually called for. But for symbolic reasoning it's needed.

forge does have pauseGasMetering and resumeGasMetering cheats which effectively give the same behavior, perhaps you could use those cheat names on the KEVM side to prevent needing an infiniteGas cheat also?

Well, it's different semantics really, infinite gas means you still get gas metering but it won't run out, so you can still tell how much gas something used. Maybe you also mean that? We'll take a look. But would also be nice to have the setSymbolicStorage (or setArbitraryStorage), whcih I think should not be too hard for Foundry. It's really by far the most useful one we use.

@gakonst , I had a conversation with @mds1 about this at EthDenver, and I tried to emphasize that symbolicStorage (or arbitraryStorage, is really a massive leap in expressive power both for us and for Foundry.
When you are testing against contract state, Foundry is currently verifying that "against an initial deployment of the contract, the given property holds". Being able to fuzz against storage makes it instead that "against an arbitrary intermediate state, the given property holds", it is a massive generalization. For verification, it honestly does not even make much benefit to verify without this extra expressive power.
Cheatcode vm.setArbitraryStorage(address) and vm.setArbitraryStorage() (which uses current address or prank address), can operate in the fuzzing setting as following:

Mark that accounts storage as arbitrary (boolean flag?)
Every sstore that comes through, you do a normal write.
On sload, you first check: Has that storage slot already been written?

If so, you return the written value.
If not, you generate a random uint256, and write it to the storage.

That way, every storage slot is being fuzzed over, and you can still do vm.assume(...) on read storage slots to enforce certain contract invariants. But subsequent reads from the same slot should give back the same value as before.
Note this is more general than just being able to say that some particular value is arbitrary, which can already be achieved by passing in a random uint256 to the test function and writing it to the storage slot you want to be arbitrary.

Agreed, I do think these would be generically useful and they all seem pretty straightforward to implement, cc @mattsse.
@ehildenb I think 1 or 2 examples of how usage would look in practice would be valuable. Would this be a good example demonstrating the use of setArbitraryStorage?
contract ERC20Burn is Test {
  ERC20 token;

  function setUp() public {
    token = new ERC20("Token", "TKN");
    vm.setArbitraryStorage(address(token));
  }

  // QUESTION: Is this supposed to be structured as a fuzz test? Or maybe we need another
  // way to specify how many runs to execute since it is different than a regular fuzz test
  function test_BurnsTheUsersFullTokenBalance() {
    // Owner should be able to burn all of the user's tokens. When the burn
    // method checks the user's balance, the `setArbitraryStorage` tells forge
    // to put a random value there since it has not yet been accessed.
    vm.prank(owner);
    token.burn(user);
    assertEq(token.balanceOf(user), 0);
  }
}

That looks like an excellent test! If you had a token which just implemented the burn as a no-op, this test would pass without setArbitraryStorage every time. But with that, it would fail correctly.

wen symbolicStorage

I think we can use freshStorage() instead of symbolicStorage(), to not confuse users of the fuzzer.

for keeping scope and progress relevant, remaining expect*Call cheatcodes to add will be tracked with https://github.com/foundry-rs/foundry/issues/9310


Require bzip2 on *nix

If you run CMake and then build on *nix without having bzip2-devel installed, build will fail with linker error for -lbz2. This is due to the fact that ZLIB_BZIP2_FILES is added to compile target for WIN32 only. So, bzip2 is compiled from source on Windows but not for *nix. This change fails the CMake build if bzip2 is missing.

CMake output with this commit:

-- Found BZip2: /usr/lib64/libbz2.so (found version "1.0.6")

If bzip2-devel is missing:

CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
Could NOT find BZip2 (missing: BZIP2_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake/Modules/FindBZip2.cmake:54 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:266 (find_package)
-- Configuring incomplete, errors occurred!
See also "/home/cen/git/StormLib/build/CMakeFiles/CMakeOutput.log".


JSONDecodingOptions.swift is missing from the XCode project

Or was probably never added. Only affects the 0.9.903 tag.

See #565 & #567

How soon can we get a new tag with this fix?


Some minor changes.

Add the directory stubs, and a php-config.ini, which accepts the file upload up to 100MB.

I apologize for having mistaken the repository.


Routing

This PR is more of a RFC about routing. Note however that commit 6f7afe9 is an independent fix.

Updated.

Rebased, updated with:

Changes suggested by checkpatch
Removed routing entry from TODO list

Updates:

Fix segfault on 'Routing messags' patch
Two new patches:

Fix an issue with UDP endpoints
Handle more than one 'master' endpoint, or endpoints which we listen from

One more patch with scripts that simulate mavlink messages. I'd like to squash them on 'routing' patch before merge. Didn't just squash to avoid messing someone review.

I did some tests with the routing feature and it is working for the scenarios I tested

Nice. There are some leftovers that can be done on top. Applied, thanks.


Requires user to install additional libs, but no doc about that, and no auto install script either.

Talon version.
On the beta version on one computer and public on another. In transition to beta 100%. Both latest releases.
Why I landed here.
Came here originally trying to figure out why the switch wired controller dpad keys weren’t registering at all (still not solved… recognizes everything but dpad), but ended up learning about wiring up the parrot cluck for wake, and a couple other things.
How to proceed past issue?
So, When I started talon with this config, it auto-installed torch (would like to understand why it is needed, but minor). It also relies on Ollama and google translate libs, but those aren’t automatically installed. So I’m not sure if I should try to install those or just revert to community config.
How to approach this repo?
Lastly, How should I be using this repo? Not entirely sure if this is meant to be a drop in alternative to the community config or if this is meant to serve as an example about how the community config can be enhanced.
Thank you!

Torch is installed automatically because it's needed by the parent integration. ollama and other third party dependencies are my own and not something Talon knows about.
In most of these files I leave installation instructions in the file itself. eg:
https://github.com/AndreasArvidsson/andreas-talon/blob/56426e2ad227e652a3ea9d54f3462112f492b5ac/plugins/llm/ollama.py#L1-L2
This repository is not really meant for public consumption. It's just my personal repository of user scripts.
Even though I think I have a lot off improvements compared to community and I try to add stuff to community when I have some spare time. This is not really made to be a community replacement. For example I basically don't have any settings and instead the code just does what I think it should do without the ability to change behavior with settings. Compare this to community where we have a lot of settings and tags to help users to easily change behavior.

am ending up going piece meal, mostly based on community. This is a good resource though! And search.talonvoice.com! Thanks again for what you do! Closing this issue.

Basing your scripts on community and then copying from other repository sounds like a good plan.
Glad to help! :)


[indexer] Introduce watermarks table

Description
Introduce new update_watermarks fn to indexer_store trait. Accepts a Vec<Watermark>, where Watermark is essentially an enum of UpperBound|LowerBound|LowerBoundTail.
committer

`Watermark::new_upper_bound
store.update_watermarks(watermarks)

pruner

Watermark::new_lower_bound and ::new_lower_bound_tail
store.update_watermarks(watermarks)

pg_indexer_store

one public entry point that accepts Vec<Watermark>
groups by enum variant and handles each in bulk

watermarks table looks like this when run with epochs-to-keep: 1
     entity      | epoch_hi | epoch_lo |   hi   |  lo  | timestamp_ms  | pruned_lo
-----------------+----------+----------+--------+------+---------------+-----------
 epochs          |        1 |        1 |      1 |    1 |<PHONE_NUMBER>443 |
 events          |        1 |        1 | 994511 | 6764 |<PHONE_NUMBER>443 |      4931
 checkpoints     |        1 |        1 |  12907 | 5544 |<PHONE_NUMBER>443 |      4425
 objects_history |        1 |        1 |  12907 | 5544 |<PHONE_NUMBER>443 |      4425
 transactions    |        1 |        1 | 994511 | 6764 |<PHONE_NUMBER>443 |      4931

Test plan
How did you test the new or updated feature?

Release notes
Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that a user might notice and any actions they must take to implement updates.

[ ] Protocol:
[ ] Nodes (Validators and Full nodes):
[ ] Indexer:
[ ] JSON-RPC:
[ ] GraphQL:
[ ] CLI:
[ ] Rust SDK:
[ ] REST API:

This PR has gotten a bit unwieldy in light of all the comments and changes.  Gonna chunk it into smaller bits for easier review


Cleanup renamed packages

We need to define procedures on which we remove this files or moved them to a different repository.

Overriding to fix validation errors


RISC-V Venus Simulator Extension

[ ] Extension name: RISC-V Venus Simulator
[ ] Extension GitHub or homepage: https://github.com/hm-riscv/vscode-riscv-venus
[ ] Extension VSCode : https://marketplace.visualstudio.com/items?itemName=hm.riscv-venus

Thanks for opening an extension request!
We are currently in the process of switching extension marketplaces and transitioning over to Open VSX.
Once https://github.com/eclipse/openvsx/issues/249 is implemented, we can fully make this transition. Therefore, we are no longer accepting new requests for extension requests.
We suggest installing the VSIX file and then installing into code-server as a temporary workaround. See docs for more info.


ci: fix test

Fix timing issue where the tests can't connect to the docker daemon before docker daemon is ready

good catch @LiamEderzeel, Thanks!


[OTEL-2071] Map deployment.environment.name to env (#29157)

(cherry picked from commit 0c2181220f857d533dca5717dad396e6c20a19bb)

What does this PR do?

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge

/merge


Implementing Modals using Ractive

Using them with bootstrap, but want to make unlimited nested modals.

The idea is to make a switchable DOM branches using a component like this:
Open Modal
{{#if (is_modal_shown)}}

{{/if}}
but the issue is: how to move newly shown Modal out of main DOM branch (cause nested modals will cause bad css things like being inside "overflow: hidden") without Ractive rendering and two-ways binding braking.
Thank for any effort.

Here's a simple version of pattern I'm using. Assumes a #popup-host in the DOM where it can be  "above" the other stuff:
<div id='popup''>
	{{#if ready}}
		<!-- content goes here, or: -->
        {{yield}}
	{{/if}}
</div>

component.exports = {
	data: {
		ready: false,
	},
	close: function(){
		this.set('ready', false).then(function(){
			this.fire('close');
		}.bind(this));
	},
	onteardown: function(){
		if(this.host){
			this.host.innerHTML = '';
			this.host = void 0;
		}

	},
	onrender: function(){
		var host = this.host = document.getElementById('popup-host');
        host.appendChild(this.nodes.popup);
   		this.set('ready', true);
	}
}

The way we do it is we mount modals on body as a separate component and the main app as a component. To bridge them, we either use listeners or data stores (basically an event emitter that carries values).
// app.html

// listen for clicks that call this event
this.on('openModalOne', function(){
  // Basically just sets the flag for modalOne to true and emits a change event
  ExternalDataSource.openModalOne();
});

// modals.html

// Modals not nested, they're siblings so they don't clip each other
{{# isModalOneOpen }}<Modal />{{/}}
{{# isModalTwoOpen }}<Modal />{{/}}
{{# isModalThreeOpen }}<Modal />{{/}}

<script>
component.exports{
  data: {
    isModalOneOpen: false,
    isModalTwoOpen: false,
    isModalThreeOpen: false,
  },
  oninit: function(){
    // Listen to emitted changes and update modal states
    ExternalDataSource.listen(function(){
      // These are just getters for the flags in the emitter
      isModalOneOpen: ExternalDataSource.getModalOneState(),
      isModalTwoOpen: ExternalDataSource.getModalTwoState(),
      isModalThreeOpen: ExternalDataSource.getModalThreeState(),
    });
  }
}
</script>

// main.js

var App = require('rvc!path/to/app');
var Modals = require('rvc!path/to/modals');

new App({
  el: 'wherever your app mounts',
});

new Modals({
  // mount it to body so they're relative to the viewport and can fill the screen properly
  el: 'body',
  append: true,
});

Thank you for variants!
martypdx, understood the idea, it's close to one I'm going to use. The only question is should it break the ractive rendering of modals sub-components and their two-ways binding? As I understand the ractive logic, I need make ractive to detach and reconnect the child to popup-host. Should it be implemented using http://docs.ractivejs.org/latest/ractive-insert ? It's very lack of documentation for this topic.
*fskreuz, that's also good, but you see, I have no way to add new popups without modification of root ractive template. But I got the idea of using listeners to switch the modals, thank you for it.

@alexmakeev I'm not sure if you're wanting to maintain the data bindings or not. The solution I outlined maintains the bindings. Here's the basic idea: http://jsfiddle.net/g39f563h/. As you edit in the popup notice the items stay in sync.

@martypdx very thanks for jsfiddle! Haven't event think that native JS appendChild would preserve bindings. It really works.


Please add the release date of the mdatp App version

[Enter feedback here]
Hopefully the release date of the App version will also be included.
For the MDAV platform version, the release date is listed, so MDE on macOS should also be listed.
[Reason]
To know when it was possible to upgrade.
When a bug-fixed version is released, It is possible to track when the version has been upgraded and to track the application status of the user environment.

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

ID: 00948177-b26b-c26c-8ff3-7ad66f388623
Version Independent ID: f370db23-e9ec-93c1-9ce2-957e111dcfce
Content: What's new in Microsoft Defender for Endpoint on Mac
Content Source: microsoft-365/security/defender-endpoint/mac-whatsnew.md
Product: m365-security
Technology: mde
GitHub Login: @Dansimp
Microsoft Alias: dansimp

@Dansimp Please help us resolving this issue. Thanks

Is this request being reviewed? Thank you.

To make it easier for you to submit feedback on articles on learn.microsoft.com, we're transitioning our feedback system from GitHub Issues to a new experience.
As part of the transition, this GitHub Issue will be moved to a private repository. We're moving Issues to another repository so we can continue working on Issues that were open at the time of the transition. When this Issue is moved, you'll no longer be able to access it.
If you want to provide additional information before this Issue is moved, please update this Issue before December 15th, 2023.
With the new experience, you no longer need to sign in to GitHub to enter and submit your feedback. Instead, you can choose directly on each article's page whether the article was helpful. Then you can then choose one or more reasons for your feedback and optionally provide additional context before you select Submit.
Here's what the new experience looks like.
Note: The new experience is being rolled out across learn.microsoft.com in phases. If you don't see the new experience on an article, please check back later.
First, select whether the article was helpful:

Then, choose at least one reason for your feedback and optionally provide additional details about your feedback:

Article was helpful
Article was unhelpful

Finally, select Submit and you're done!


changed placeholders to placeholderMap

Change placeholders to placeholdermap to make lookups easier.
I'm not sure but I also wanted to change
_on([sortableElement, placeholder], 'drop', function (e) {

to
_on(sortableElement, 'drop', function (e) {

It doesn't look like it would affect anything, but I'm not sure.

Coverage remained the same at 82.407% when pulling e214ca76fba36458e75d268a3e184544f5e8ff41 on mfriesen:placeholder into<PHONE_NUMBER>c0276eb1f8f5d943463813d40b62b0 on lukasoppermann:master.

Hey, @mfriesen this currently has a bug (apart from the styling) because of which the items are moved into other items. If you run npm run build and move items you can see that you can "nest" items. I did not yet figure out which line is the issue, but we need to fix this first.

@lukasoppermann  I've fixed up the branch


Wrong Port is used when connecting to MySql database

Even when selecting "MySQL" in the connection prompt, the UI still tries to connect on the PostgreSQL standard port.
In the screenshot below you can see the connection prompt as well as the exception thrown. In the exception you can see which port is used.

Might be related to #337.


Travis, Docker containers to build .debs for stretch and xenial (no trusty)

Still plenty of room for improvement.
Achtung:

setup Travis encryption on main theQRL repo
deb and gh_pages merge scripts need to be changed to push the *.debs to theQRL/QRL repo
Corresponding $GITHUB_TOKEN
Docker env files are not as useful as I thought. Might want to get rid of them.

Not final enough


Want to output logs without installing env_logger

Question
I want to output logs without installing env_logger
Currently, log crate should be required separately from tide.
Is it possible to complete it with only tide?
It is good that users can output log with less crate

Additional context

No yeah, the log crate definitely requires its own frontend. I recommend using https://docs.rs/femme/1.2.0/femme/ for that. Though if you'd like to implement a more minimal version, you can always implement a variation on https://github.com/lrlna/femme/pull/4.
Hope this is helpful!

thx!