AuthorizeMiddleware requires authenticated user for all policy checks

Describe the bug
Unlike v10, v11 authorization middleware requires that a user be authenticated before it is evaluated against the policy.
These are the culprit lines as TryGetAuthenticatedPrincipal will return false and then it'll bail out early, without even trying to execute the policy.
https://github.com/ChilliCream/hotchocolate/blob/acc3e9ed48d9c41394df730601af4342972dafbe/src/HotChocolate/AspNetCore/src/AspNetCore.Authorization/AuthorizeMiddleware.cs#L104-L112
In our application, we had a policy that could be passed without authentication, and after upgrading to v11, we'd always get "AUTH_NOT_AUTHENTICATED", which confused me for a while.
I've checked, and this is different to how Microsoft.AspNetCore.Authorization works, meaning this is likely going to confuse folks, even if it's a very edge use case. They'll happily allow you to specify [Authorize(Policy = "SomePolicy")] and that policy will always be evaluated, even if the user is unauthenticated.
Note:
Michael mentioned there's potentially been some improvements/fixes to v10 AuthorizationMiddleware.cs that haven't been ported to v11. It's a bit hard to decipher though to do myself; so logging it and putting this at 11.0.9 milestone at his request.
To Reproduce
Steps to reproduce the behavior:

Setup a gql server with authorization enabled.
Define a policy that always succeeds, like so:
.AddAuthorization(o => o.AddPolicy(PolicyNames.AllowAnonymous, p => p.RequireAssertion(c => true)))
Annotate a field in your schema with that policy
Make a request for that field without authenticating and it fails with code AUTH_NOT_AUTHENTICATED.

Expected behavior
It should pass as the user's passed the policy requirement, even though they're not authenticated.
Desktop (please complete the following information):

OS: Win 10 latest.
Version: HC v11.0.8

Nice find, @benmccallum

Hello,
We can't use Authorization because of this bug. When we first log the user, we return it.
In that case we use authorization to be sure that the current user making the request as the right on the user we return.
But has we are not logged when entering the GraphQL request (but we are when leaving), the authorize directive can't return the user.
Thanks,

We can't use Authorization because of this bug.

Also blocked on this

Here's a repro that shows the difference between ASP.NET Core's and Hot Chocolate's authorization:

Repro...
The app below has an AllowAnonymous authorization handler that should accept all requests even if they are unauthenticated. Try the following routes:

/ - ✔ This minimal endpoint's authorization is bypassed by the AllowAnonymous authorization handler
/graphql - ❌The Banana Cake Pop endpoint fails to load the schema. The AllowAnonymous handler is never called by Hot Chocolate.

using Microsoft.AspNetCore.Authentication.JwtBearer;
using Microsoft.AspNetCore.Authorization;
using Microsoft.Identity.Web;

var builder = WebApplication.CreateBuilder(args);

builder.Services
    .AddGraphQLServer()
    .AddAuthorization()
    .AddQueryType<Query>();

builder
    .Services
    .AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
    .AddMicrosoftIdentityWebApi(builder.Configuration);

builder.Services.AddSingleton<IAuthorizationHandler, AllowAnonymous>();

var app = builder.Build();

app.UseRouting();

app.UseAuthentication();
app.UseAuthorization();

// This minimal API route requires authorization, however,
// this gets bypassed by the `AllowAnonymous` authorization handler
// An anonymous user can call this as expected!
app.MapGet("/", [Authorize] () => "Hello world");

app.MapGraphQL();

app.Run();

// This GraphQL API requires authorization. Ideally this should behave
// just like the minimal API route. However, Hot Chocolate does not call the
// `AllowAnonymous` authorization handler if the claims principal is not authenticated.
// In other words, this returns a 401 error for anonymous users :(
[HotChocolate.AspNetCore.Authorization.Authorize]
public class Query
{
    public Book GetBook() => new Book(Title: "Foo Bar");
}

public class AllowAnonymous : IAuthorizationHandler
{
    public Task HandleAsync(AuthorizationHandlerContext context)
    {
        // Pass all pending requirements even for anonymous users.
        foreach (var requirement in context.PendingRequirements.ToList())
            context.Succeed(requirement);

        return Task.CompletedTask;
    }
}

public record Book(string Title);

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Bad bot.

@loic-sharma thats quite creative :)

This will be fixed with rc2


Remove version: Google.Chrome.Canary version 128.0.6556.2

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

URL: https://dl.google.com/release2/chrome/a4l7tktzaiqzyotvhs5qkebl34_128.0.6556.2/128.0.6556.2_chrome_installer.exe
Response Error: The remote server returned an error: (404) Not Found.
(Automated message - build 912)


Collaborative wallet/Keys:

Feature Description

Currently, the collaborative key is directly associated with the collaborative wallet.we are giving the ability to separate the collaborative key from the collaborative wallet.
We are going to have one collaborative key by default and one hot wallet by default.The collab key corresponds to this hot wallet.

Pre-requisites/dependencies
Designs

Need one collaborative key by default.
Setting for collaborative key.
Move all other option like Show co-signer Details,Import collaboartive wallet,Act as co-signer from collaborative wallet to collaborative key's setting section.
In import section will have collaboartive wallet configuration file.
Need success message when keys get added.In Success message will give an option of "share the wallet configuration file" or "back it up" something like this.
Need a Success message whenever a vault get created.In this success message will give a CTA like "Download configuration file"
Subtext will be different for collaboartaive key in adding a new signer list.
Same as IKs and SS Seed key and collaborative key will have to options i.e New/existing .
Need UI for setuo collaborative wallet.

Verified this issue on keeper app v 1.2.0(319)


how can I create a tmpl file  through confd ？

I want to auto create a file "/etc/confd/templates/zookeeper.sh.tmpl",  Can you help me ?
data stored in etcd looks like this:
$etcdctl get /zookeeper/zookeeper01
1
my toml file is:
$ cat /etc/confd/conf.d/zookeeper.sh.tmpl.toml
[template]
src = "zookeeper.sh.tmpl.tmpl"
dest = "/etc/confd/templates/zookeeper.sh.tmpl"
keys = [
"/zookeeper",
]
I want the dest file "/etc/confd/templates/zookeeper.sh.tmpl"  to be：
$cat /etc/confd/templates/zookeeper.sh.tmpl
MYID={{ getv "/zookeeper/zookeeper01" }}
How can I write the "/etc/confd/templates/zookeeper.sh.tmpl.tmpl" to auto create "/etc/confd/templates/zookeeper.sh.tmpl" above? Can "zookeeper01" will be set by  a variable ?
I tried :
{{ $zk := ls "/zookeeper"}}
MYID=\{\{ getv "/zookeeper/{{index $zk 0 }}/1"  \}\}
However the result is :
MYID=\{\{ getv "/zookeeper/zookeeper01/1"  \}\}
How can I  get     MYID={{ getv "/zookeeper/zookeeper01/1"  }}  otherthan MYID=\{\{ getv "/zookeeper/zookeeper01/1" \}\}?
thanks~

I'm not quite sure I understand. You want confd to use a template to write out a template? You could run two separate confd processes, each with their own confdir but I'm not sure how well that will go.

OnSnail It seems you want to store the template in etcd and have confd process it from there?

Closing for now as this type of feature is out of scope for confd.


Why list of ports is empty?

Hello.
I started browsermob-proxy at production webserver:
/home/zaharov/install/jre1.8.0_144/bin/java -Dapp.name=browsermob-proxy -Dbasedir=/home/zaharov/browsermob-proxy-2.1.4 -jar /home/zaharov/browsermob-proxy-2.1.4/lib/browsermob-dist-2.1.4.jar --port=8080
When I try to request http://our_website:8080/proxy I see the response:
{"proxyList":[]}
Why this list could be empty? I tried to open some ports, for instance:
iptables -A INPUT -p tcp --dport 8083 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
It seems that there aren't other processes working with the port, so,
netstat -tulpn | grep LISTEN | grep 8083
returns empty string.
When I start browsermob-proxy at localhost I see the list full of ports starting with 8083.
Version of browsermob-proxy: 2.1.4.

The answer: we can force server to add new port by sending post request with empty data to http://our_website:8080/proxy.
An example: curl --data "" http://nabiraem.ru:8080/proxy


Could not publish a simple node.js app

This is the output when attempting to publish a simply test node.js app:
6:24:44 AM MyTestApp: Starting deployment...
6:24:44 AM MyTestApp: Creating zip package...
6:27:24 AM MyTestApp: Zip package size: 47.7 MB
6:27:29 AM MyTestApp: Fetching changes.
6:27:29 AM MyTestApp: Cleaning up temp folders from previous zip deployments and extracting pushed zip file /tmp/zipdeploy/65f48eb1-e944-430f-944a-10118ca761b1.zip (45.15 MB) to /tmp/zipdeploy/extracted
6:27:29 AM MyTestApp: Offset to Central Directory cannot be held in an Int64.
6:27:35 AM MyTestApp: Deployment failed.

It seems like this issue can happen randomly. Based off this and this issue, it seems like it has something to do with the zipping. We've changed the way we've zipped our files since then, so maybe this issue has gone away?
I know its over 2 years old, but if @tanzle-aames could confirm, that would be awesome!

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


Show error if near-shell is outdated for given node

Currently most of the problems people have is due to outdated NEAR Shell (and nearlib).
We should show an error:
"This shell is outdated, latest version is 0.x. Please update with npm install --update near-shell".
To detect outdated, we should specify version of RPC APIs that are required by given nearlib version.
If the API had a bump, this becomes outdated.
@frol for RPC API versioning.

Let's clarify the main use-case Illia brought up: we want to provide a better developer experience for our integrators when they stay at an old version of near-shell / nearlib and one day we make a backward-incompatible change (e.g. due to a change of internals, some information is not available anymore), and instead of raising weird errors, we would like to inform the developer, that nearlib should be updated.
In my opinion, versioning does not help here at all (e.g. nearlib user may use only a subset of APIs which did not change, but we will bug them to update), and backward-incompatible changes should not land to the API in the first place (well, we live in a real world, so I am open to better solutions).
@vgrichina @mikedotexe What are your thoughts on this matter?

Interesting. How about we take a similar approach that I've seen in a few cli tools.

So it will try to run the command, but show an informative message or banner. Then if the user receives a message or otherwise doesn't have the expected behavior, they can think to themself, "well I might as well try upgrading it like it's telling me."
We've had discussion about near shell building out verbosity flags, and this informative banner could be hidden if the user chooses.

@mikedotexe There is already such a banner in the near-shell implementation, but it just tries to upgrade to the latest version no matter what. Illia's point (I clarified it offline) was about future compatibility, i.e. when there is a user of an old version of near-shell/nearlib, who prefer to use the old version since they are happy with the stability, but then we introduce a breaking change that is incompatible with the old version, this is where we prefer giving a helpful message about the compatibility issue instead of just giving an error like "the endpoint does not exist" or "near node returned unexpected response".

I think this is mostly nearlib issue. nearlib needs to check /status endpoint (https://rpc.nearprotocol.com/status) and fail if nearcore version isn't supported according to semver pattern in given nearlib version.
@frol @ilblackdragon let's make sure nearcore releases follow http://semver.org/ convention, makes it easy to understand when there are breaking changes.

@vgrichina Well, nearcore might (will) have its own release cycle decoupled from the API versioning, which should follow the specification versioning (well, this is non-existent at this point in time).

@janedegtiareva what is current user experience when versions mismatch?


Organizer section showing html code and not following site design

Please fix the organizer section following design of site, e.g. add space at section end. Also fix html display.

@mariobehling Shall i work on this?

Fixed this issue, https://github.com/fossasia/open-event-wsgen/pull/2149.


RHEL EUS not available for version 8.3

Please add a note to the page to mention that EUS version locking for RedHat 8.3 is not possible, since RedHat decided to skip this version for EUS.
Source: https://access.redhat.com/support/policy/updates/errata
"_In Red Hat Enterprise Linux 8, EUS is planned for RHEL 8.1, 8.2, 8.4, 8.6, and 8.8 (see above chart).
8.1 (ends November 30, 2021)
8.2 (ends April 30, 2022)
8.4 (ends May 30, 2023)

Please see this Knowledgebase Article for more details on EUS_."
So, the only options are to version lock to 8.2 or older (if not already updated to 8.3) or just go for 8.4 ..
NOTE: 8.4 at the moment (May 21st 2021) doesn't have a EUS release yet.

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

ID: 5d7e0b6a-1b40-f874-4a68-f368761a1ef8
Version Independent ID: cca3c590-2725-6167-2cf0-412b1aae4433
Content: Red Hat Update Infrastructure - Azure Virtual Machines
Content Source: articles/virtual-machines/workloads/redhat/redhat-rhui.md
Service: virtual-machines
Sub-service: redhat
GitHub Login: @asinn826
Microsoft Alias: alsin

@marinnedea -
Thanks for brining this to our attention. We will investigate it further and update you shortly.

Hey @marinnedea, hope you're doing well! Thanks for the callout - tagging @mathapli and @Theresa-Nguyen to follow up.

@marinnedea - Thanks for bringing this to our attention. RHEL 8.3 is not an EUS release so it is end of life after RHEL 8.4 has
GA'd.
In Red Hat Enterprise Linux 8, EUS is planned for RHEL 8.1, 8.2, 8.4, 8.6, and 8.8 (see above chart).
•	8.1 (ends November 30, 2021)
•	8.2 (ends April 30, 2022)
•	8.4 (ends May 30, 2023)
LifeCycle page https://access.redhat.com/support/policy/updates/errata:
At this moment, Since there is no doc update required, We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


utils/escape_attr: enclose with quotes all elements but the first + tests

I found a lexing issue in nix when running nixpkgs-review for https://github.com/NixOS/nixpkgs/pull/247099.
It generated a line like haskelPackages.if and Nix confused it with a if statement.
I also added tests to check compliance.

@mergify queue


EnvoyFilter configuration for http local rate limit with descriptors

Envoy added the ability to set local rate limit using descriptors. Assuming this is available in Istio 1.9 through EnvoyFilter, could you please add a snippet to the local rate limit documentation here: https://istio.io/latest/docs/tasks/policy-enforcement/rate-limit/
Specifically, when I look at https://github.com/istio/proxy/pull/3161 to follow it as an example, I do not know where to place the rate limit actions in EnvoyFilter for it to take place with my local rate limit descriptors
rate_limits:
- actions:
  - request_headers:
      header_name: user-id
      descriptor_key: id

[X] Docs
[ ] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
**Affected features **
HTTP local Rate Limiting with descriptors using EnvoyFilter
Additional context
This is my EnvoyFilter config
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: inbound-8000
  namespace: app-ns
spec:
  configPatches:
    - applyTo: HTTP_FILTER
      listener:
        filterChain:
          filter:
            name: "envoy.http_connection_manager"
      patch:
        operation: INSERT_BEFORE
        value:
          name: envoy.filters.http.local_ratelimit
          typed_config:
            "@type": type.googleapis.com/udpa.type.v1.TypedStruct
            type_url: type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
            value:
              stat_prefix: http_local_rate_limiter

    - applyTo: HTTP_ROUTE
      match:
        context: SIDECAR_INBOUND
        routeConfiguration:
          vhost:
            name: "inbound|http|8000"
            route:
              name: "default"
      patch:
        operation: MERGE
        value:
          typed_per_filter_config:
            envoy.filters.http.local_ratelimit:
              "@type": type.googleapis.com/udpa.type.v1.TypedStruct
              type_url: type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
              value:
                stat_prefix: http_local_rate_limiter
                token_bucket:
                  max_tokens: 1
                  tokens_per_fill: 1
                  fill_interval: 20s
                filter_enabled:
                  runtime_key: local_rate_limit_enabled
                  default_value:
                    numerator: 100
                    denominator: HUNDRED
                filter_enforced:
                  runtime_key: local_rate_limit_enforced
                  default_value:
                    numerator: 100
                    denominator: HUNDRED
                response_headers_to_add:
                  - append: false
                    header:
                      key: x-local-rate-limit
                      value: 'true'
                descriptors:
                 - entries:
                   - key: id
                     value: a1
                   token_bucket:
                     max_tokens: 3
                     tokens_per_fill: 3
                     fill_interval: 20s

I tried multiple placements of
rate_limits:
- actions:
  - request_headers:
      header_name: user-id
      descriptor_key: id

but I just can't get it to work correctly. I do see perhaps a similar issue reported here https://github.com/envoyproxy/envoy/issues/14851 but I don't know how to translate that into Istio's EnvoyFilter.

Thank you!! I can finally configure this for the HTTP_ROUTE. For reference, here's my full EnvoyFilter
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: httpbin-inbound-8000
  namespace: app-namespace
spec:
  workloadSelector:
    labels:
      app: httpbin
  configPatches:
    - applyTo: HTTP_FILTER
      listener:
        filterChain:
          filter:
            name: "envoy.http_connection_manager"
      patch:
        operation: INSERT_BEFORE
        value:
          name: envoy.filters.http.local_ratelimit
          typed_config:
            "@type": type.googleapis.com/udpa.type.v1.TypedStruct
            type_url: type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
            value:
              stat_prefix: http_local_rate_limiter

    - applyTo: HTTP_ROUTE
      match:
        context: SIDECAR_INBOUND
        routeConfiguration:
          vhost:
            name: "inbound|http|8000"
      patch:
        operation: MERGE
        value:
          route:
            rate_limits:
              - actions:
                - request_headers:
                    header_name: "user-id"
                    descriptor_key: "ID"

          typed_per_filter_config:
            envoy.filters.http.local_ratelimit:
              "@type": type.googleapis.com/udpa.type.v1.TypedStruct
              type_url: type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
              value:
                stat_prefix: http_local_rate_limiter

                descriptors:
                 - entries:
                   - key: ID
                     value: a
                   token_bucket:
                     max_tokens: 2
                     tokens_per_fill: 2
                     fill_interval: 20s
                 - entries:
                   - key: ID
                     value: b
                   token_bucket:
                     max_tokens: 2
                     tokens_per_fill: 2
                     fill_interval: 20s

                filter_enabled:
                  runtime_key: local_rate_limit_enabled
                  default_value:
                    numerator: 100
                    denominator: HUNDRED
                filter_enforced:
                  runtime_key: local_rate_limit_enforced
                  default_value:
                    numerator: 100
                    denominator: HUNDRED
                response_headers_to_add:
                  - append: false
                    header:
                      key: x-local-rate-limit
                      value: 'true'
                token_bucket:
                  max_tokens: 10
                  tokens_per_fill: 10
                  fill_interval: 20s

Great, thanks!

@hania-elayoubi @bianpengyuan Could you please also help me understand what I am doing wrong here? I would highly appreciate it.
I have an application which has two endpoints: "/invocations" and "/ping". I am trying to setup local-rate-limit on both these endpoints such that rate-limiting of both endpoints is independent of each other. For example: I would want 1 request-per-second rate-limit for "/invocations" endpoint and an independent 1 request-per-second rate-limit for "/ping" endpoint.
This is the EnvoyFilter I am using:
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: distance-prediction-v1-ratelimit-svc
  namespace: istio-system
spec:
  workloadSelector:
    labels:
      app: distance-prediction
      version: v1
  configPatches:
    - applyTo: HTTP_FILTER
      match:
        context: SIDECAR_INBOUND
        listener:
          filterChain:
            filter:
              name: "envoy.filters.network.http_connection_manager"
      patch:
        operation: INSERT_BEFORE
        value:
          name: envoy.filters.http.local_ratelimit
          typed_config:
            "@type": type.googleapis.com/udpa.type.v1.TypedStruct
            type_url: type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
            value:
              stat_prefix: http_local_rate_limiter

    - applyTo: HTTP_ROUTE
      match:
        context: SIDECAR_INBOUND
        routeConfiguration:
          vhost:
            name: "inbound|http|8080"
            route:
              action: ANY
      patch:
        operation: MERGE
        value:
          route:
              rate_limits:
              - actions:
                - request_headers:
                    header_name: ":path"
                    descriptor_key: path
          typed_per_filter_config:
            envoy.filters.http.local_ratelimit:
              "@type": type.googleapis.com/udpa.type.v1.TypedStruct
              type_url: type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
              value:
                stat_prefix: http_local_rate_limiter
                token_bucket:
                  max_tokens: 1
                  tokens_per_fill: 1
                  fill_interval: 1s
                filter_enabled:
                  runtime_key: local_rate_limit_enabled
                  default_value:
                    numerator: 100
                    denominator: HUNDRED
                filter_enforced:
                  runtime_key: local_rate_limit_enforced
                  default_value:
                    numerator: 100
                    denominator: HUNDRED
                response_headers_to_add:
                  - append: false
                    header:
                      key: x-local-rate-limit
                      value: "true"
                descriptors:
                  - entries:
                    - key: path
                      value: /invocations
                    token_bucket:
                      max_tokens: 1
                      tokens_per_fill: 1
                      fill_interval: 1s
                  - entries:
                    - key: path
                      value: /ping
                    token_bucket:
                      max_tokens: 1
                      tokens_per_fill: 1
                      fill_interval: 1s

However, it seems that traffic to both endpoints is using same token bucket and thus rate-limiting is not independent. If I send 2 reqeusts-per-second to "/invocations" (using a simple while loop) and send 1 request-per-second to "/ping" endpoint, my expectation was that "/ping" endpoint would not get rate limited. However, I see both endpoints get rate-limited using common 1 request-per-second limit.
I am using Istio version: 1.8.1 and Kubernetes version: 1.19 (AWS EKS)

@hania-elayoubi @bianpengyuan Could you please also help me understand what I am doing wrong here? I would highly appreciate it.
I have an application which has two endpoints: "/invocations" and "/ping". I am trying to setup local-rate-limit on both these endpoints such that rate-limiting of both endpoints is independent of each other. For example: I would want 1 request-per-second rate-limit for "/invocations" endpoint and an independent 1 request-per-second rate-limit for "/ping" endpoint.
This is the EnvoyFilter I am using:
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  name: distance-prediction-v1-ratelimit-svc
  namespace: istio-system
spec:
  workloadSelector:
    labels:
      app: distance-prediction
      version: v1
  configPatches:
    - applyTo: HTTP_FILTER
      match:
        context: SIDECAR_INBOUND
        listener:
          filterChain:
            filter:
              name: "envoy.filters.network.http_connection_manager"
      patch:
        operation: INSERT_BEFORE
        value:
          name: envoy.filters.http.local_ratelimit
          typed_config:
            "@type": type.googleapis.com/udpa.type.v1.TypedStruct
            type_url: type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
            value:
              stat_prefix: http_local_rate_limiter

    - applyTo: HTTP_ROUTE
      match:
        context: SIDECAR_INBOUND
        routeConfiguration:
          vhost:
            name: "inbound|http|8080"
            route:
              action: ANY
      patch:
        operation: MERGE
        value:
          route:
              rate_limits:
              - actions:
                - request_headers:
                    header_name: ":path"
                    descriptor_key: path
          typed_per_filter_config:
            envoy.filters.http.local_ratelimit:
              "@type": type.googleapis.com/udpa.type.v1.TypedStruct
              type_url: type.googleapis.com/envoy.extensions.filters.http.local_ratelimit.v3.LocalRateLimit
              value:
                stat_prefix: http_local_rate_limiter
                token_bucket:
                  max_tokens: 1
                  tokens_per_fill: 1
                  fill_interval: 1s
                filter_enabled:
                  runtime_key: local_rate_limit_enabled
                  default_value:
                    numerator: 100
                    denominator: HUNDRED
                filter_enforced:
                  runtime_key: local_rate_limit_enforced
                  default_value:
                    numerator: 100
                    denominator: HUNDRED
                response_headers_to_add:
                  - append: false
                    header:
                      key: x-local-rate-limit
                      value: "true"
                descriptors:
                  - entries:
                    - key: path
                      value: /invocations
                    token_bucket:
                      max_tokens: 1
                      tokens_per_fill: 1
                      fill_interval: 1s
                  - entries:
                    - key: path
                      value: /ping
                    token_bucket:
                      max_tokens: 1
                      tokens_per_fill: 1
                      fill_interval: 1s

However, it seems that traffic to both endpoints is using same token bucket and thus rate-limiting is not independent. If I send 2 reqeusts-per-second to "/invocations" (using a simple while loop) and send 1 request-per-second to "/ping" endpoint, my expectation was that "/ping" endpoint would not get rate limited. However, I see both endpoints get rate-limited using common 1 request-per-second limit.
I am using Istio version: 1.8.1 and Kubernetes version: 1.19 (AWS EKS)

Hey did you get any solution for this?
Have the same doubt

However, it seems that traffic to both endpoints is using same token bucket and thus rate-limiting is not independent. If I send 2 reqeusts-per-second to "/invocations" (using a simple while loop) and send 1 request-per-second to "/ping" endpoint, my expectation was that "/ping" endpoint would not get rate limited. However, I see both endpoints get rate-limited using common 1 request-per-second limit.

I have the same issue, any solution for this problem?
Thanks

However, it seems that traffic to both endpoints is using same token bucket and thus rate-limiting is not independent. If I send 2 reqeusts-per-second to "/invocations" (using a simple while loop) and send 1 request-per-second to "/ping" endpoint, my expectation was that "/ping" endpoint would not get rate limited. However, I see both endpoints get rate-limited using common 1 request-per-second limit.

I have the same issue, any solution for this problem? Thanks

Maybe descriptor rate limit bucket will also consume per route bucket, it should work if the per route bucket is large enough.


DO NOT MERGE UNTIL o1js RELEASE 1.0:  Update all templates and examples to be compatible with aysnc circuits

Closes #604

@ymekuria can you also bump the version for o1js dependency (once released) and zkapp-cli (so that we can release it as well).


Content siblings autoscroll

Leftover from #157
Acceptance Criteria

[ ] When viewing a horizontal tile feed of content siblings it should auto scroll to the next one.

Duplicate of #217


IMPLEMENTED PRIORITY QUEUE USING LINKED LIST IN C

Have you read the Contributing Guidelines on Pull Requests?
Yes !
Description
I am GSSoC'21 participant
i have implemented priority queue using linked list in C language
so i request @HarshCasper to please review my PR :)
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
No

Fixes #3497


Crashing post integrating Flurry 2.2.0 Unity SDK

Unity Version: 2018.4.3.f1
Unity Flurry Plugin Version: 2.2.0
Platform: Android
Problem
Crashes in Android 5 OS (Alot of times)
At
acquire_object line 3
libbinder.android::acquire_object(android::spandroid::ProcessState const&, flat_binder_object const&, void const*)
Crashlytics Log
Caused by java.lang.Error
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 5df8c130 Build fingerprint: 'htc/a51cml_dtul_00401/htc_a51cml_dtul:5.1/LMY47D/831274.2:user/release-keys' Revision: '0' pid: 2286, tid: 6642, name: Flurry #11 >>> com.TheAppGuruz.IndianChef <<< r0 c1f766ec r1 5df8c130 r2 ae477578 r3 ae19cb70 r4 ae477578 r5 ae477578 r6 00000000 r7 00000005 r8 00000000 r9 5df8c130 sl c1f766ec fp 00000000 ip f70cde30 sp c1f766b8 lr f70c1401 pc f70c08e0 cpsr dac50d10
Screen Shot Attached.

Hoping For a Quick Solution
Thanks
Rudra

Hello Rudra,
We are investigating the issue. Are there further back trace details you can share?
If possible can you share the link to this crashlytics report?

Hi,
Thanks for the response
This is the max  details that we have. (As Per Crashlytics)
For Android OS 5
Caused by java.lang.Error: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr a5c712f0
Build fingerprint: 'vivo/PD1602/PD1602:5.1.1/LMY47V/compiler01071221:user/release-keys'
Revision: '0'
pid: 29331, tid: 2049, name: Flurry #4  >>> com.TheAppGuruz.IndianChef <<<
r0 d6aff6fc  r1 a5c712f0  r2 ad4a3d70  r3 f6f03190
r4 ad4a3d70  r5 ad4a3d70  r6 00000000  r7 00000005
r8 00000000  r9 a5c712f0  sl d6aff6fc  fp 00000000
ip 1fffffff  sp d6aff6c8  lr f6f2a7f9  pc f6f29d80  cpsr ef8bfd10
   at libbinder.android::acquire_object(android::sp<android::ProcessState> const&, flat_binder_object const&, void const*)(acquire_object:3)
   at libbinder.android::Parcel::appendFrom(android::Parcel const*, unsigned int, unsigned int)(Parcel:324)
   at libandroid_runtime.0007eca1()
   at boot.0091b54b()

For Android OS 4
pid: 6114, tid: 6818, name: Flurry #4  >>> com.TheAppGuruz.IndianChef <<<
r0 85ffdac4  r1 04410188  r2 829aec68  r3 8fb1e180
r4 829aec68  r5 829aec68  r6 00000005  r7 00000000
r8 04410188  r9 00000000  sl 7e559eb8  fp 00000000
ip 748f2008  sp 85ffda98  lr 401b8c2b  pc 401b81b8  cpsr 85ffd7a8
   at libbinder.android::acquire_object(android::sp<android::ProcessState> const&, android::flat_binder_object const&, void const*)(acquire_object:3)
   at libbinder.android::Parcel::appendFrom(android::Parcel const*, unsigned int, unsigned int)(Parcel:274)
   at libandroid_runtime.0006bc1f()
   at libdvm.dvmPlatformInvoke(dvmPlatformInvoke:112)
   at libdvm.dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)(dvmCallJNIMethod:398)
   at libdvm.000267e0()
   at libdvm.dvmMterpStd(Thread*)(dvmMterpStd:76)
   at libdvm.dvmInterpret(Thread*, Method const*, JValue*)(dvmInterpret:184)
   at libdvm.dvmCallMethodV(Thread*, Method const*, Object*, bool, JValue*, std::__va_list)(dvmCallMethodV:336)
   at libdvm.dvmCallMethod(Thread*, Method const*, Object*, JValue*, ...)(dvmCallMethod:20)
   at libdvm.00054b63()
   at libc.__thread_entry(__thread_entry:72)
   at libc.pthread_create(pthread_create:240)

I Hope this Helps

@rudragesota Was this crash happened on the previous versions? I.e., crash starts from 2.2.0.

@rudragesota When I try to install a simple Unity app without Flurry on Android 5 (Nexus 4), I got Failure [INSTALL_FAILED_NO_MATCHING_ABIS] install error. I.e., when you are trying to install an app that has native libraries and it doesn't have a native library for your cpu architecture. For example if you compiled an app for armv7.

Do you get the same crash when not using Flurry?
Please update your Unity Android Player setting by changing Target Architectures from ARMv7 to x86.

@rudragesota Was this crash happened on the previous versions? I.e., crash starts from 2.2.0.

This Crash existed before 2.2.0 too.
To Deal with it , We had previously used self made Unity Plugin (Via Flurry Android SDK. I am quite sure this crash did not exist at that time).
Something is going wrong only when we are using official Flurry SDK.

@rudragesota When I try to install a simple Unity app without Flurry on Android 5 (Nexus 4), I got Failure [INSTALL_FAILED_NO_MATCHING_ABIS] install error. I.e., when you are trying to install an app that has native libraries and it doesn't have a native library for your cpu architecture. For example if you compiled an app for armv7.

Do you get the same crash when not using Flurry?
Please update your Unity Android Player setting by changing Target Architectures from ARMv7 to x86.

-> I am quite sure Target Architecture is not the problem here. As this crashes occurs even on ARMv7.
For example it occurred on  Oppo A37f (ARM based)
Plus these crashes occur randomly even after long sessions times of 30 mins. ( i.e not necessarily at the start)

@rudragesota Thanks a lot for the information!

We had previously used self made Unity Plugin (Via Flurry Android SDK. I am quite sure this crash did not exist at that time)

Do you know what Flurry Android SDK version you were using without this issue?

Now It's Difficult to pinpoint the SDK . But our assumption is Flurry Android SDK version was 8.1.0/8.2.0.

@rudragesota Thanks! We are investigating the native crash issue.

@rudragesota Could you please include how you initialize Flurry, and do you use Flurry's nativeCrash module in your app? Thanks!

@rudragesota Do you use Flurry Push (messaging) in your app?

Update
Few More Fatal Crashes are adding Up
Occurs on Android OS 4 and 5
Caused by java.lang.Error: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr debe6010
Build fingerprint: 'OPPO/F1f/F1f:5.1.1/LMY47V/1510798994:user/release-keys'
Revision: '0'
pid: 23974, tid: 29256, name: Flurry #28  >>> com.TheAppGuruz.IndianChef <<<
r0 d4701010  r1 debe6010  r2 00011fcc  r3 00000008
r4 addf4448  r5 00000000  r6 00000000  r7 00000005
r8 00000006  r9 b03af550  sl cd6bf6fc  fp 00015014
ip 00000000  sp cd6bf6e0  lr f7509073  pc f7496bb0  cpsr df24ed10
   at libc.__memcpy_base(__memcpy_base:88)
   at libbinder.android::Parcel::appendFrom(android::Parcel const*, unsigned int, unsigned int)(Parcel:158)
   at Unknown.fffffffd()

ScreenShot

@rudragesota Do you use Flurry Push (messaging) in your app?

No, we are not using It. We are using Firebase Push Notifications(Cloud Messaging) for that purpose.

@rudragesota Could you please include how you initialize Flurry, and do you use Flurry's nativeCrash module in your app? Thanks!

We are currently initialising as below
new Flurry.Builder()
                  .WithCrashReporting(true)
                  .WithLogEnabled(true)
                  .WithLogLevel(Flurry.LogLevel.VERBOSE)
                  //.withMessaging(true);
                  .Build(FLURRY_API_KEY);

@rudragesota

No, we are not using It. We are using Firebase Push Notifications(Cloud Messaging) for that purpose.

Probably Firebase Push and Flurry Push have some conflict here. Because you do not use Flurry Push in your app, please remove the following file (Flurry Push library) from your project to see whether the problem will be resolved or not.
$PROJ_ROOT/Assets/Plugins/Android/flurry-marketing.aar

Thanks
We will try it out and get back to you after we give an update next week.

We just released a new 2.4.0 Flurry Unity plugins, one for Analytics only, the other for With-Push. In your case, please use the Analytics only package flurry-sdk-2.4.0.unitypackage. Thanks for your feedback and support!

Closed


request help: install-dependencies.md need Chinese ver

Issue description
https://github.com/apache/incubator-apisix/blob/master/doc/install-dependencies.md
Environment

apisix version (cmd: apisix version):
OS:

What's wrong with you？
You can view git history for help.

@Miss-you do you mean we need to add Chinease doc for https://github.com/apache/incubator-apisix/blob/master/doc/install-dependencies.md?

Yes, I think the Chinese version of the APISIX dependent environment installation guide is necessary.
This document is called install-dependencies-cn.md


Make DEP a yellow waiting dot instead of a red cross.

The red cross tells people something failed, but actually it's just waiting. Make this more like WIP, which is a yellow waiting dot for WIP PRs. The effect is the same: can't be submitted, but the message is better.

Hi, @iphydf thanks for opening this!
DEP follows the way GitHub status API works. The app has to report one of 4 states: error, failure, pending, or success per check.

Failed state means the assertion that made by that app wasn't true, for example, Travis reports "fail" we the script (mostly tests) exists with a non-zero code.

Pending state basically means "I'm working on it". It only meant to tell the developer that the app received the event but would take some time to report the final result.

Error state means the "check" couldn't run because of e.g. misconfigured params.

Success state means the "checks" passed.

The red cross tells people something failed

I understand that might be confusing but GitHub shows the "red cross" sign for both "failed" and "error" states. This can't be controlled by the app (DEP in this case).
However, currently, DEP doesn't report error state, so the "red cross" always means some dependencies are still unresolved.
That being said, I think reporting pending instead of failure would be more confusing.
Sorry, but can't help much on this. The app should follow the way GitHub integrations work.

Ok, I'll keep using Reviewable, WIP, and other "broken" apps then, and can't use this correctly implemented DEP app. I understand that the states are described in that way, and I agree with your interpretation, but it doesn't match the reality (such is the life on Github, I am very aware, given that I create my own integrations as well).

Ok, I'll keep using Reviewable, WIP, and other "broken" apps then

I wasn't aware of those apps.  And I didn't mean those apps are "broken". I'm just trying to make the app works the way GitHub users expect - I assume.

I'm curious, why is it not acceptable for it to be a red X in your scenario? I know that sometimes I don't like to do "changes requested" reviews, because they use the same red X, and I'm worried that it will look scary to the requester.
But it doesn't mean that, and with the words we use we can be clear that we're happy for their contribution, and they're well on the way, just something needs to happen first. That's the same here. It's not that it cannot be accepted, it's that something needs to happen first. That red x is more of a sign to tell the maintainers that "this isn't ready yet, do not merge it" than "this is a failure of a pull request and should never be considered again". That would be a closed PR.
I think we do ourselves and contributors a disservice by being scared of the red X. That's my general philosophy on it, and you may have further constraints that force you to avoid it anyway, but that's my thinking on why that Red X, even though it can look a bit scary at times, is the best thing to use here, and other similar places. We shouldn't be scared of using it.

The red X means one of the checks failed. In our workflows, this almost always means something actionable for the contributor. The maintainers look at PRs with a yellow dot, because those have probably passed checks. On rare occasions, a yellow PR is in fact not ready for review, and then it's either explicitly marked as WIP, or we find that travis is running (but that's done after 3-4 minutes, so it should still be ready for review).
This is not about scaring users, it's to make life easier for maintainers. Looking at https://github.com/TokTok/c-toxcore/pulls (or the soon-to-be-fixed global pull request dashboard), I and other reviewers can tell at a glance which PRs might need review (and personally I mostly ignore the colourful tags that some maintainers put on there). All PRs that currenty have the red X on them, except the "Make conferences persist ..." one are in the state "action required from submitter". The "Make conf.." PR is dependent on another PR, but ready for review, no action required from submitter, it's just waiting.
Maybe this is misinterpreting Github's intentions for the statuses, but we make the tools we use work the way we can.

I decided to see if I could look up the semantics that GitHub defines, which of course is what we'd want to follow. I'm afraid that I haven't been able to find any clearly defined semantics in the commit statuses documentation. It just says the 4 types of statuses that may be set, it doesn't give any guidelines, that I've found, on when to use one or the other.
My intuition has been the same as the maintainer of this project. But I also see where you're coming from @iphydf , and I don't know that your view of it is strictly wrong either. With some guidance from GitHub, this might be an clearer choice to make.
Clearly GitHub isn't all that worried about stuff being "pending" for a long time. Reviews can potentially be pending for quite a while.
I typically see "pending" statuses as meaning (with my maintainer hat on) "don't look at this just yet, some of the automated checks are still running". I think this is likely consistent with what GitHub sees as the correct interpretation, and to demonstrate that I offer as evidence that the "pending" state (or approved or changes required, even) do not show up as the icon in the list of pull requests. Since any pending state will mark it as pending, unless there's an error, they seem to think that it's ok to use a checkmark to indicate that things are ready to dig into from the list, and I'd be inclined to agree with that assessment as  a general rule.
It's also definitely true that other review 3rd party apps have used the pending state, which doesn't get the same special treatment as GitHub's reviews, as meaning "a review is needed". So I'm not sure there's a clear answer, unfortunately.

A less than ideal possibility might be to allow the status put on the commit to be configured by the repository. Probably the easiest way to do that would be to have it in a configuration file like we do for .travis.yml. I'm not keen on the idea of adding configuration, but if we do, that's probably the most "Right" way to do it.

Interesting, so what you're saying is that "pending" overrides "failed"? I thought any "failed" check will set the red cross, regardless of whether other things are pending or not.

Interesting, so what you're saying is that "pending" overrides "failed"? I thought any "failed" check will set the red cross, regardless of whether other things are pending or not.

No, it won't override, I just wrote imprecisely when I said "error". I meant "error or failure", sorry.

A less than ideal possibility might be to allow the status put on the commit to be configured by the repository. Probably the easiest way to do that would be to have it in a configuration file like we do for .travis.yml. I'm not keen on the idea of adding configuration, but if we do, that's probably the most "Right" way to do it.

I took this idea but from a different perspective and built an app that lets you choose when a pull request is ready for review based on its statuses.
Sample config
# File: .github/review-me.yml
when:
  continuous-integration/travis-ci/pr: success
  wip: pending
  dep: failure

# Override default label (optional)
label: 'Review Me'

It simply adds the review label if all when conditions matched the pull request's head statuses. Otherwise, it removes the label (if any).
Hope it helps regarding this issue.
Full source/docs: https://github.com/ahmed-taj/probot-review-me

Hey nice :) that'll be useful, thanks!

I like it. Good work @ahmed-taj !


Configuration handling improved

There were bugs in the previous scheme.

The same scheme is used when producing the server configuration file in Server.hs. Should we change it there as well? And more generally, can we merge the configuration building code in Server.hs and Client.hs to reduce duplication of code? It's not exactly the same however as the server configuration doesn't interpolate with the command line options.


Update MBH so MBH will say current schedule when asked.

Most streamers have their streaming schedule posted below the stream on the channel page. Others have it as a command where bots like nightbot, moobot, and streamlabs will either periodically post the schedule in chat or when triggered by a command such as !schedule. Since you do not use any of those bots, it would be cool to have MBH say the schedule when asked.

I am sure the twitch api would give me access to the schedule.
I am almost positive that mbh can listen to a !schedule and not have to put the !mbh in front of it.
Great suggestion.

Yo @B0tzerker, look what I found..... https://github.com/TwitchLib/TwitchLib.Api/blob/master/TwitchLib.Api.Helix/Schedule.cs
Seems we are gonna need to crack open the Api for this one....

Implemented the command to put the next stream in to chat.


Add includePaths to gulp style via configuration

Fisrt of all, thanks for this great, clean and simple boilerplate.
I noticed that many people are having issues with bootstrap and bower. I did.
What I ended up doing was adding includePaths to the styles task via the configuration, something like:
.pipe(sass({
    ...
    includePaths: config.styles.sassIncludePaths
}))

And then in the config.js file we can do something like this:
'styles': {
    ...
    'sassIncludePaths': [
        ...
        'node_modules/bootstrap-sass/assets/stylesheets',
        'node_modules/another-npm-package/assets'
    ]
}

This way we can easily @import components to our main.scss file...
@import 'bootstrap'

...and we avoid hacking the gulp tasks.

Added in #72


allow specification of update strategy on slaves

allow specification of update strategy on slaves, you should be able to specify stuff like maxUnavailable on slave updates. Otherwise, all your slaves may restart while the master is terminating/initializing. If this happens your slaves will be down just as long as the master

/ok-to-test


ddc full null safety support

(epic to track all issues related to null safety completeness).

I believe this work is already complete. Please reopen if I am mistaken.


Web - Room - Unable to use arrow keys to select notification options

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

Action Performed:

Go to staging.new..expensify.com
Go to any room
Click on room header
Go to Settings > Notify me about new messages
Use keyboard arrow keys to navigate the options

Expected Result:
User is able to use arrow keys to select notification options
Actual Result:
User is unable to use arrow keys to select notification options
Workaround: Unknown
Platforms:

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

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/78819774/81f301c3-70ee-4773-b750-98d0e920bb3e
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
View all open jobs on GitHub

This is not a bug as we haven't implemented arrow selection on any of the select list. As in language also user is not able to select the language using arrow keys.
Arrow keys navigation is Currently Implemented at:

Messages List
Selecting a user from user's list
Emoji List
Attachment picker
Context Menu List

I agree - @jeet-dhandha - do you have the GH/PRs handy where we reference this? If anything, this would be a new feature request, and a low priority one at that so closing for now.

@sophiepintoraetz - I just searched through the code for the list. Don't have any particular PR.


Https support

APIs need moving to https with cert signed by the CM

started in ade78e6529274fba06afc6e7cb9316f7955d3bb2

On this note, should the WebSocket part also be encrypted through TLS/SSL (and all ws:// → wss://)? Not sure if that happens automatically when the server the WebSocketServer is on is HTTPS.

On this note, should the WebSocket part also be encrypted through TLS/SSL

Yep and it think it is but it needs testing.
see lines 57 to 78 of main.js

Implemented ade78e6529274fba06afc6e7cb9316f7955d3bb2


Set-AzKeyVaultSecret & Get-AzKeyVaultSecret return error code 'Forbidden'

Please add setting the key vault access policy after keyvault creation, i.e. Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ServicePrincipalName $appId -PermissionsToSecrets Get,Set

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

ID: f88c5a5a-7172-3836-e882-7a08b69e9572
Version Independent ID: 07c17d2d-ed23-4639-d698-c1285178196a
Content: Quickstart: Set & retrieve a secret from Key Vault using PowerShell
Content Source: articles/key-vault/quick-create-powershell.md
Service: key-vault
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

@fawohlsc Thanks for your feedback! We will investigate and update as appropriate.

@fawohlsc we have a similar issue reference here and I checking with internally if we can add more clarity in the documentation around the same.

@msmbaldwin can you please help.

@SaurabhSharma-MSFT
Yes the issue stated is similar to mine, if not even the same.

@fawohlsc As per the product team it seems like a defect in Cloud Shell.  I have assigned this issue to author which will help updating the documentation to reflect this case.

I got the same error when attempting to create a secret - the access policy is not set.
my cloud powershell is version 7, local powershell is 5.1

set-azkeyvaultsecret : Operation returned an invalid status code 'Forbidden'
At line:1 char:1

set-azkeyvaultsecret -vaultname hel*****ault2 -name DemoPassword - ...                                             + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                     + CategoryInfo          : CloseError: (:) [Set-AzKeyVaultSecret], KeyVaultErrorException                                + FullyQualifiedErrorId : Microsoft.Azure.Commands.KeyVault.SetAzureKeyVaultSecret

If executed directly on cloud shell, it works. But when done through devops pipeline I got this error

"Set-AzKeyVaultSecret : Operation returned an invalid status code 'Forbidden'"

[CmdletBinding()]
param (
    $rgName,
    $keyVaultName,
    $storageAccountName,
    $adfName,
    $secretName
)
# $rgName='myrg'
# $storageAccountName='mystrg'
# $secretName='mykey'
# $keyVaultName='mykvt'
# $adfName='myadf'
Write-Host "##Starting #### kv = $($keyVaultName) , st= $($storageAccountName) adf= $($adfName) rg= $($rgName)"

Write-Host "Adding data lake storage Key to key vault"

$storageAccountKey = (Get-AzStorageAccountKey  -ResourceGroupName $rgName -Name $storageAccountName).Value[0]
$secretVal = ConvertTo-SecureString -String $storageAccountKey -AsPlainText -Force
Set-AzKeyVaultSecret -VaultName $keyVaultName -Name $secretName -SecretValue $secretVal

Write-Host "completed adding key"

Write-Host "Adding permissions to key vault"
$objectId=(Get-AzureRmDataFactoryV2 -ResourceGroupName $rgName -Name $adfName).Identity.PrincipalId
Write-Host "### objectId =" + $objectId
$appId = (Get-AzureRmADServicePrincipal -ObjectId $objectId).ApplicationId
Write-Host "### appId =" + $appId
Set-AzKeyVaultAccessPolicy -VaultName $keyVaultName -ServicePrincipalName $appId -PermissionsToSecrets Get
Write-Host "### Successs!~ ###"

#this line below if executed from azure shell works! (after creating 'test.ps1')
# ./test.ps1 -rgName "myrg" -keyVaultName "mykvt" -storageAccountName "mystrg" -adfName "myadf" -secretName "mykey"

Updated #please-close


Unless you have tag-match set, tag-match-latest does nothing on tag push.

Behaviour
Steps to reproduce this issue

Set tag-match-latest: false without tag-match.
Push a new tag
Observe meta output includes latest tag.

Expected behaviour

Latest tag should be disableable without settings tag-match.

Actual behaviour

Latest tag is set when I wanted it to not be set.

name: Build Docker Image

on:
  push:
    tags:
      - 'v*.*.*'

jobs:
  publish:
    runs-on: ubuntu-latest
    steps:
      -
        uses: actions/checkout@v2
        with:
          fetch-depth: 0
      -
        name: Docker meta
        id: docker_meta
        uses: crazy-max/ghaction-docker-meta@v1
        with:
          images: ${{ github.repository }}/web-noteskin-editor
          tag-sha: true
          tag-match-latest: false
      -
        name: Set up QEMU
        uses: docker/setup-qemu-action@v1
      -
        name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v1
      -
        name: Login to GitHub Container Registry
        uses: docker/login-action@v1
        with:
          registry: ghcr.io
          username: ${{ github.repository_owner }}
          password: ${{ secrets.CR_PAT }}
      -
        name: Build and Push
        uses: docker/build-push-action@v2
        with:
          context: .
          file: ./Dockerfile
          push: false
          tags: ${{ steps.docker_meta.outputs.tags }}
          labels: ${{ steps.docker_meta.outputs.labels }}

Logs
Docker tags
  flashflashrevolution/web-noteskin-editor/web-noteskin-editor:v0.0.1
  flashflashrevolution/web-noteskin-editor/web-noteskin-editor:latest
  flashflashrevolution/web-noteskin-editor/web-noteskin-editor:sha-f7fda8a

Note
The following config works as expected.
      -
        name: Docker meta
        id: docker_meta
        uses: crazy-max/ghaction-docker-meta@v1
        with:
          images: ${{ github.repository }}/web-noteskin-editor
          tag-match: v(.*)
          tag-sha: true
          tag-match-latest: false

@Zageron Actually this is not a bug, tag-match-latest set latest Docker tag if tag-match matches. If you don't specify tag-match it will not be used but we could enhance this behavior and also handle tag-match-latest in case a GitHub push tag event occurs.

@Zageron Can you test with uses: crazy-max/ghaction-docker-meta@tag-match-latest?

@crazy-max Forgot to reply here, tested and it works as expected! Thanks for the rapid revising. ;)


fix: Fix bg color not working properley

Hey can you release this to pip, i want to use this for somethinhy

Cant do atm sorry

@sumeshir26 published

thabks!


[BUG] update  the  directory  of resource  is error

update the  directory occasionally appears the resource file does't exist, and the actual update directory is successful

Which version of Dolphin Scheduler:
-[dev]

I saw the error is resource not exist.If need update the resource,It should exist in hdfs.


ESP32 Can't connect to Thinger.io

Hello sir, I'm sorry.
Previously, i have a tutorial about using thinger.io to control the esp32. But now, I follow my tutorial, the thinger.io in the website, my device still disconnect in state column. I use the example code of thinger.io/esp32 . The source is done uploading and the wifi has been connected to esp32, but thinger.io in the website still disconnect. Thank you for your support

Fixed on latest version 2.17.0!


autowake application also automatically bound to autosleep service instance

[Running on code from the develop branch]
I create a service instance of autosleep and the instance ignores the autosleep application (of course) but binds to the autowake application.
Shouldn't the autowake application also be by default, neglected by the autosleep app?
Thanks and Regards,
Pradyut.

thanks @pradyutsarma for this feedback and suggestion.
Indeed the current self exclusion from enrollment should be extended to the autowakeup app.
As a short term workaround, I'll enhance the documentation to suggest to deploy autosleep and autowake up in a distinct separate space from enrolled spaces.

Oops 😄
Another short term workaround could be to use the exclude-from-auto-enrollment parameter to filter the autowakeup app.

Hi everyone
We had a look at this issue and we chose to implement the following mechanism in next release:
The SpaceEnroller worker (in charge of automatically binding the applications to autosleep) will automatically filter out the applications that are map to a route with a host equals to "*" (using CF java client).
This means having to retrieve all routes for all application during our scans, but we think it's acceptable.
feel free to react. 😄

after an offline discussion with @gberche-orange, we decided it wouldn't be necessary, as this use case should never occure in production. We will keep using the exclude-from-auto-enrollment workaround in our acceptance tests


Does it support importing the AWQ model and then exporting it in the compressed-tensor format?

It would be an interesting feature to write a converted from AutoAWQ format to compressed-tensors, this is not a priority but is possible.


[Other] : Add new pages gallery

What would you like to share?
I would like to add new page displaying the popular people who used our website to create there personal pages , in this component there will be swiper framer motion functionality will be there which displays our popular user , so that new customer trust us .
Additional information

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

not required at the moment


Chrome "mixed content" error breaks Blip after 1 second

In at least Mac Chrome 51.0.2704.103 (64-bit), Blip only shows valid graph points for the first second after a refresh, then shows a max-latency red line after that. Refreshing always fixes it for a second, then it breaks again.
The JavaScript console says Mixed content: The page was loaded over HTTPS, but requested in insecure endpoint coming from jquery.min.js.
In Safari, Blip works fine without issue.

Here's what that looks like.

Thanks! Knowing this, I can switch the URL from https:// to http:// and have it work in Chrome

https now fails in Safari 10.0.2 on OS X 10.11.6:
(this connection is up and working, btw)

https fails on iOS too, making it hard to use this excellent tool on iPhones and iPads. Booping over to http works great though!

On Brave, even after I edited the url to http://, I got  auto-redirected to https://, which breaks after a second.  I had to turn off Upgrade connections to HTTPS on brave://settings.

I think switching to https://mlab-ns.appspot.com/ndt_ssl?policy=all might help here, it gives the FQDNs as dash separated so that they can be contacted over HTTPS. https://github.com/m-lab/mlab-ns/pull/51

I was able to make this work by enabling mixed content like this https://stackoverflow.com/questions/18321032/how-to-get-chrome-to-allow-mixed-content

This essentially doesn't work for me in Brave, Firefox or Edge on Windows. I get a few pings then it looks like what @dgentry shared above.
I'm on gig fiber with traffic shaping in place to prevent buffer bloat (via OPNsense), so I have very low latency even on loaded connections. Still, was curious to try this tool. Not curious enough to turn off https or mixed-content warnings though.

same in firefox

In Firefox, it works after you "disable protection" under the padlock icon.

you can also do this in chrome: click on the padlock icon, site settings, set "Insecure content" to allow

fixed in master! Should show up on the original server soon. Meanwhile, a different test server that doesn't seem to trigger the problem: http://blip.apenwarr.ca/


clientv3: translate WithPrefix() into WithFromKey() for empty key

Users seem to expect the client to do this.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@6ad9d16). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master    #7752   +/-   ##
=========================================
  Coverage          ?   75.71%
=========================================
  Files             ?      331
  Lines             ?    26011
  Branches          ?        0
=========================================
  Hits              ?    19693
  Misses            ?     4894
  Partials          ?     1424

Impacted Files
Coverage Δ

clientv3/op.go
67.89% <100%> (ø)

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 6ad9d16...f92c11e. Read the comment docs.

lgtm

lgtm


Feature/part page

Pull Request Test Coverage Report for Build 169584974

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 36.53%

Totals

Change from base Build 167798278:
0.0%

Covered Lines:
104

Relevant Lines:
318

💛  - Coveralls


discovery: Ignore ephemeral UDP ports

What does this PR do?
As in NPM (see initializePortBind() in pkg/network/tracer/connection), ignore ephemeral port binds on UDP as they are more likely to be from clients calling bind with port 0.

Motivation
https://datadoghq.atlassian.net/browse/USMON-1219

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


Added swipe to cancel functionality on the batch jobs #137

Related Issues

https://github.com/hotwax/job-manager/issues/137
Closes #
https://github.com/hotwax/job-manager/commit/cfcf91e29b8670f98ae9a1211256c24ce583e715
Short Description and Why It's Useful

Now user will easily be able to delete a batch by just swiping and confirming to delete it.
Functionality screenshots

Video demonstration
https://user-images.githubusercontent.com/62360781/168566868-266db50a-46e3-48a0-b41e-514fea61b303.mov

@shashwatbanPlease add a screenshot and a video of the functionality.

@shashwatbanPlease add a screenshot and a video of the functionality.

Done sir!


wrong variable names

the variable name generating the nonce is wrong like below.
Need to change m_libspdm_challenge_request1 to m_libspdm_challenge_request3.
https://github.com/DMTF/libspdm/blob/1897d6580214cdc242e0acf72b9519bdc9de076b/unit_test/test_spdm_responder/challenge_auth.c#L478-L481
There are same cases in libspdm_test_responder_measurements_case9, 10, 12, 13 and 14.

I will check it.

I mean there are wrong variable in libspdm_test_responder_challenge_auth_case9, 10, 12, 13 and 14 like libspdm_test_responder_challenge_auth_case8.


Apply formatMemory on Storage Size Units in Cluster Storage Table

https://issues.redhat.com/browse/RHOAIENG-16797
Description

Before

After

How Has This Been Tested?

Go to Data Science Projects
Select a project -> Workbenches
Create workbench
Scroll down to "Cluster storage" table
Verify the correct units are applied

Test Impact

N/A, tests updated in #3338
Request review criteria:

Self checklist (all need to be checked):

[x] The developer has manually tested the changes and verified that the changes work
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has added tests or explained why testing cannot be added (unit or cypress tests for related changes)

If you have UI changes:

[x] Included any necessary screenshots or gifs if it was a UI change.
[ ] Included tags to the UX team if it was a UI/UX change.

After the PR is posted & before it merges:

[x] The developer has tested their solution on a cluster by using the image produced by the PR to main

@jenny-s51 there is a cypress test failure

/lgtm
/approve


:sparkles: Add Python Class

Adding a note here for type py hint support (todo), see https://pyo3.rs/v0.20.0/python_typing_hints


Implement Missing Meta Tags, Generate Sitemap, and Create robots.txt for SEO Improvement

The current website is missing several crucial meta tags that are essential for search engine optimization (SEO). Additionally, we need to generate a sitemap and create a robots.txt file to enhance the site's visibility and crawling efficiency for search engines.
Tasks:
Add Missing Meta Tags:

Title tags
Description tags
Keywords tags
Open Graph tags for social media sharing
Robots meta tag
Generate Sitemap:

Create an XML sitemap that includes all relevant pages of the website to facilitate better indexing by search engines.
Create robots.txt File:
Implement a robots.txt file to guide search engine crawlers on which pages to index and which to avoid.
Labels:

GSSoC
Hacktoberfest

Assignment:

Please assign this issue to @myselfshivams.

@myselfshivams please add the necessary tags and a robots.txt file. The tags should read: "TTURL - One Click URL Shortener."

Hi @muruga21,
Thanks for the feedback! I’ll add the necessary meta tags, including the title "TTURL - One Click URL Shortener," as well as create the robots.txt file and generate the sitemap. I’ll keep you updated on my progress.
Let me know if you have any additional requirements!
Best,
@myselfshivams


UHF-8411: UHF-8411: Make paragraph select elements width bigger.

UHF-8411

After updating paragraph labels with the text "(supported in other languages)", it is too long for the fixed width of 400px of the select element.
What was done

Made the select width 500px instead of 400px.

How to install

Make sure your Etusivu instance is up and running on the branch from the PR mentioned below.

git fetch
git checkout UHF-8411_Update-paragraph-labels)

Update the HDBT Admin theme

composer require drupal/hdbt_admin:dev-UHF-8411_Select-width-with-new-labels

Run make drush-cr drush-cim

How to test

[ ] Go edit or add a page and see the dropdown for adding a paragraph. The long labels should fit in the select element (on mobile size it's ugly still).
[ ] Check that code follows our standards

Other PRs

https://github.com/City-of-Helsinki/drupal-helfi-etusivu/pull/361

Feels a bit dirty fix but fits the tickets story points. Tried to set the width to auto but other problems arose. Let's perhaps fiddle with this more in other ticket if needed.


Use renamed GtkMenuExt

Use changes from https://github.com/gtk-rs/gtk/pull/712 https://github.com/gtk-rs/gtk/pull/714
cc @GuillaumeGomez

@GuillaumeGomez added it first


My docs won't build on master

Describe the bug
Sphinx docs fail to build with Furo. The error message is:
Theme error:
An error happened in rendering the page index.
Reason: FileNotFoundError(2, 'No such file or directory')

To Reproduce
Steps to reproduce the behavior:
In a new virtual environment, use pip install on
sphinx==3.1.2
git+https://github.com/pradyunsg/furo@d5df1d4d07eb01ae49e50bbbb6d0fa6c6e6dd9fa

Make a docs folder somewhere, and inside it run sphinx-quickstart. The defaults are fine. Name/Author/Release can be Furo or whatever.
Run make html, and the new docs should build with the default "alabaster" theme.
Change the html_theme = 'alabaster' line in the conf.py that the quickstart generated to html_theme = 'furo' instead.
Run make html again. You should see the error message. The html docs are still alabaster.
Expected behavior
Docs should have built with the Furo theme.
Desktop (please complete the following information):

OS: Windows
Browser: Irrelevant, but Edge
Furo Version: master (d5df1d4)

git+https://github.com/pradyunsg/furo@d5df1d4d07eb01ae49e50bbbb6d0fa6c6e6dd9fa

Furo is not usable directly from the VCS repository, since the compiled assets are not tracked (the final JS/CSS).

FYI: To install the development version of Furo, you need to:

clone the repository and cd into it.
run npm install
run ./node_modules/bin/gulp build
run pip install .

I don't plan on changing this at this time; and there's a lot of interesting discussion in https://github.com/executablebooks/meta/issues/137 about these things.

Closing since I don't think there's anything actionable here at this time.
I'll be cutting a release soon, which would hopefully mean that you won't need to try pinning to a specific commit. :)


DropDown MemberSelector property is not working on selected item

Hello,
The DropDown MemberSelector property is working properly on the list, but it's not working on the selected item. See screenshots below`

This is my .xaml code
<DropDown MemberSelector="Name" Items="{Binding Items}" Width="200" Height="40" />
and the code in the ViewModel file
    public class MainWindowViewModel : ViewModelBase
    {
        public List<Model> Items => new List<Model>
        {
            new Model
            {
                Name = "A",
                Number = 5
            },
            new Model
            {
                Name = "B",
                Number = 12
            }
        };
    }

    public class Model
    {
        public string Name { get; set; }
        public int Number { get; set; }
    }

Thank you!

this issues hsould be already fixed in master by #2122

I'm not quite sure I know if it's fixed in master by #2122 or not. I was using the Alavonia project template, which I believe is using version 0.6.1.

Thanks guys,
It works with the beta version build.
So, this is no longer a bug/issue.


Reduce syntactic noise

Prerequisites
Here are a few things you should provide to help me understand the issue:

Rust version : 1.55.0
nom version : 7.0.0
nom compilation features used: default

Test case
I wanted to experiment with porting toml_edit to nom.  Papercuts I ran into

Deep module nesting makes it slow to walk around docs
Deep module nesting makes it annoying to fully qualify functions
use nom::...::*; led to conflicts between nom, my parserr, and std (especially char0
After a foray with combine, a lot of the syntactic noise of nom stands out (though I still prefer nom)

An example parser
use nom::{
    branch::*, bytes::complete::*, character::complete::*, combinator::*, error::context, multi::*,
    sequence::*, AsChar, IResult,
};

...

pub(crate) fn dec_int(input: &str) -> IResult<&str, &str> {
    recognize(tuple((
        opt(alt((char('+'), char('-')))),
        alt((
            char('0'),
            map(
                tuple((
                    satisfy(|c| ('1'..='9').contains(&c)),
                    take_while(is_dec_digit_with_sep),
                )),
                |t| t.0,
            ),
        )),
    )))(input)
}

Ideal:
pub(crate) fn dec_int(input: &str) -> nom::IResult<&str, &str> {
    ((
        nom::opt(nom::alt(('+', '-'))),
        nom::alt((
            '0',
            ((
                satisfy(|c| ('1'..='9').contains(&c)),
                take_while(is_dec_digit_with_sep),
            )).map(|t| t.0)
        ))
    )).recognize()(input)

Unsure how much is even possible or what downsides there might be, but ideas include

Flatten modules, where possible (work like https://github.com/Geal/nom/issues/1393 can help keep it navigatable)
impl Parser for u8, &[u8], char, and &str, reducing the need for char and tag

Maybe even implement parsers for ranges of u8 and char

impl Parser for tuples, reducing the need for tuple(())
Emphasize Parser::map in "choose your combinator" and docs (I didn't know it existed until I started writing this)
Add additional inherent functions to Parser, like

Parser::between(first, third)
`Parser::terminated_by(second)
Parser::preceded_by(first)
Parser::recognize()
Parser::consumed()
Parser::verify(bool)
Parser::cut()
Parser::complete()
Parser::context(ctx)
Thought process:

Avoid yoda speak (foo.not(), granted preceded_by somewhat violates that)
self should be a parser that is returning its value

Figured I'd create this on issue for exploring the ideas and then create individual ones, rather than flood the issue list with every random idea

My personal way to import nom module is as follow:
use nom::{
    branch, bytes::complete as bytes, character::complete as character, combinator, multi,
    sequence, AsChar, IResult as Outcome,
};

pub(crate) fn dec_int(input: &str) -> IResult<&str, &str> {
    combinator::recognize(sequence::tuple((
        combinator::opt(multi::alt((character::char('+'), character::char('-')))),
        multi::alt((
            character::char('0'),
            combinator::map(
                sequence::tuple((
                    character::satisfy(|c| ('1'..='9').contains(&c)),
                    multi::take_while(is_dec_digit_with_sep),
                )),
                |t| t.0,
            ),
        )),
    )))(input)
}

You get the idea. I think it's quite clear that way, that easy to read and write. I opposite to flattering module.

impl Parser for u8, &[u8], char, and &str, reducing the need for char and tag

That should be possible, for char yes, for u8 I'm not sure could be confusing and allow mistake, yes for &[u8] and &str.

These look like interesting suggestions, and more methods in Parser would be nice. I'm not sure about putting too much emphasis on method calls though (well, for map it's natural). Personally I like that there are multiple styles available, and maybe that is what the docs should show.
Maybe a prelude module could help too? Like, bring in all the streaming style parsers with ll the combinators

For the module hierarchy and allowing impl Parser for &str / char. u8, it'd be nice if we had a way to make code polymorphic over the parser type (stream vs complete).
combine handles this by having streaming vs complete be different parse functions on the trait.  This requires people implementing the parser trait to implement both methods.  I assume we couldn't make one an inherent method in terms of the other because that would cause papercuts for one of the two workflows.  I also appreciate the simplicity of the signature for function parsers and am unsure of a good way to preserve that.


add support for index hints in Update statement for MySQL

add support for index hints in update statment for mysql

Documentation:
https://dev.mysql.com/doc/refman/8.0/en/update.html
https://dev.mysql.com/doc/refman/8.0/en/select.html
https://dev.mysql.com/doc/refman/8.0/en/join.html

Example sql:

UPDATE demo FORCE INDEX (idx_demo) SET col1 = NULL WHERE col2 = 1

Greetings!
Thank you for your contribution. Although I have some concerns.
Please have a look at https://manticore-projects.com/JSQLParser/contribution.html#amend-the-code for some tips, on how to craft PRs.

Thanks for the review, I will look into it

Is that still relevant? Otherwise I would close this eventually.

Any feedback please? I would like top close this otherwise.


Styles are not applying to first content page

I am setting up a OnboardingViewController with multiple content pages, then specifying all of the padding options that I would like. However, the options are not applying to the first content page (only the following). What am I doing wrong?

Perhaps you could share your code?
On Mon, Oct 12, 2015 at 6:06 PM Andrew Havens<EMAIL_ADDRESS>wrote:

I am setting up a OnboardingViewController with multiple content pages,
then specifying all of the padding options that I would like. However, the
options are not applying to the first content page (only the following).
What am I doing wrong?
—
Reply to this email directly or view it on GitHub
https://github.com/mamaral/Onboard/issues/89.

Well...my code is written in RubyMotion, but don't let that deter you. It should get the point across:
def on_appear
  present_onboarding
end

def present_onboarding
  first_slide = OnboardingContentViewController.contentWithTitle(nil, body: "Page body goes here.", image: image.resource('onboarding/image1'), buttonText: "Text For Button", action: -> {
      # do something here when users press the button, like ask for location services permissions, register for push notifications, connect to social media, or finish the onboarding process
  })
  first_slide.movesToNextViewController = true

  second_slide = OnboardingContentViewController.contentWithTitle(nil, body: "Page body goes here.", image: image.resource('onboarding/image2'), buttonText: "Text For Button", action: -> {
      # do something here when users press the button, like ask for location services permissions, register for push notifications, connect to social media, or finish the onboarding process
  })

  onboardingVC = OnboardingViewController.onboardWithBackgroundImage(nil, contents: [first_slide, second_slide])
  onboardingVC.swipingEnabled = true
  onboardingVC.view.backgroundColor = color.white # This doesn't seem to work
  onboardingVC.shouldMaskBackground = false
  onboardingVC.shouldBlurBackground = false

  # These options only seem to apply to the second slide
  onboardingVC.setTopPadding 0
  onboardingVC.setUnderIconPadding 0
  onboardingVC.setUnderTitlePadding 0
  onboardingVC.setUnderPageControlPadding 0
  onboardingVC.setBottomPadding 0

  onboardingVC.titleFontSize = 20

  onboardingVC.allowSkipping = true
  onboardingVC.skipHandler = -> {
    mp 'called skip onboarding'
  }

  presentViewController(onboardingVC, animated: true, completion: nil)
end

This results in the following...
Left (extra space on left and top), Right: No extra padding on top (as desired).

And this is the goal of what I'm trying to achieve. Note that this is presented as a modal that is intended to be smaller than the screen. I'm currently using MZFormSheetPresentationController for this which is working nicely for presenting a modal.

@andrewhavens the issue is happening because you are calling
onboardingVC.view.backgroundColor = color.white
before you set all the other parameters like padding etc, which in turn calls loadView on the view controller and it build it's view hierarchy (mind that you haven't set the padding yet). what you can do to avoid this is to set the background color as your last set up step.
not sure if this is a bug though, it's just that you shouldn't access the view property from outside

I fixed some of the ordering of the view stuff and directly exposed the UI elements in v2.2.0, check that out as it will hopefully address this.


.Net: Compiler error CA2007 for ChatHistoryChannel in main branch

Describe the bug
There is an  CA2007 eror for dotnet/src/Agents/Abstractions/ChatHistoryChannel.cs#L28
To Reproduce
Steps to reproduce the behavior:

Go to : https://github.com/microsoft/semantic-kernel/blob/ed1770c40b397b6c413d4cd697c09cd30f699fa4/dotnet/src/Agents/Abstractions/ChatHistoryChannel.cs#L28

Expected behavior
Should add CongureAwait(false)
 await foreach (var message in historyHandler.InvokeAsync(this._history, cancellationToken).ConfigureAwait(false))

Screenshots
If applicable, add screenshots to help explain your problem.
Platform

OS: Windows
IDE:Visual Studio
Language: C#
Source: main

Additional context
Add any other context about the problem here.

Interesting. I'm wondering why CI didn't catch that.

This is already addressed by https://github.com/microsoft/semantic-kernel/pull/4387; it just needs someone to review it.

This is already addressed by #4387; it just needs someone to review it.

@stephentoub This is done, PR is merged. Although it didn't contain changes in ChatHistoryChannel class, mentioned in this issue. Should we fix it in separate PR?

Although it didn't contain changes in ChatHistoryChannel class, mentioned in this issue. Should we fix it in separate PR?

Ah, that was just added to the repo. Yeah, we can fix it separately. We can also explicitly bump/pin the version of the analyzers being used if we want to; I expect the reason it's showing up for @dengyakui locally in VS is because their VS is bringing in a newer version of the analyzers than the 8.0 version being used by the .NET 8 SDK in CI.

@stephentoub :
Yeah, I was using Visual Studio 2022 17.10.0 Preview 3.0 and dotnet sdk: 9.0.100-preview.2.24157.14


Use Peek to test Simple Send tests, move receiveBatch and streamingReceiver tests to their own files

Adding all send/receive related tests to the same file will make it hard to maintain very soon. This issue is to

[x] Move receiveBatch and streamingReceiver tests to their own files
[ ] Use Peek instead of ReceiveBatch to test Send scenarios

Using Peek instead of ReceiveBatch for testing would require us to add a clean up step in between tests.
The receive in clean up wouldnt work because the peek still has lock on the message.
Its not worth it, so not making the change from receive to peek for testing send


Update to Django 1.10

Closes #4174
Things we need to check:

https://docs.djangoproject.com/en/2.0/releases/1.10/#removed-weak-password-hashers-from-the-default-password-hashers-setting we are using a salted sha1 to hash the user passwords (at least in our tests fixtures), these hashes were removed in 1.10. We need to check if we have these hashes in the db (I'm not sure and the docs didn't mention, but what will happen to this users? the change is automatically? Are their required to change the password?)

we need to upgrade tastypie, because of https://docs.djangoproject.com/en/2.0/releases/1.10/#features-removed-in-1-10 (tastpie 0.13.1 uses get_all_field_names() we need to update to 0.13.2/3) This is blocked because of https://github.com/rtfd/readthedocs.org/issues/3570#issuecomment-401184862

Make sure we are using a supported postgres version https://docs.djangoproject.com/en/2.0/releases/1.10/#dropped-support-for-postgresql-9-1

A new migration for users was added in this version

Looks like some changes were made to the BaseCommand class too. option_list was deprecated in django 1.8 https://docs.djangoproject.com/en/1.9/howto/custom-management-commands/#django.core.management.BaseCommand.option_list we can fix that in another PR.

we are using a salted sha1 to hash the user passwords (at least in our tests fixtures)

Just to clarify in case anybody comes by and reads this, we are not using this in production. We are using PBKDF2 with 20k iterations. By upgrading to Django 1.10, this will change to 30k iterations whenever somebody logs in.

I'm trying that right now, seems to work.

@ericholscher we only have this test for creating a project (for superusers only), I'm not sure if that is something we use https://github.com/rtfd/readthedocs.org/blob/d413341097466f90ca10eabadc347d35970847df/readthedocs/rtd_tests/tests/test_api.py#L420-L432

@ericholscher we only have this test for creating a project (for superusers only), I'm not sure if that is something we use

Don't believe so -- it is likely from when we used it from the builders in the past.

Just noting here that we're targeting django 1.10 for our version 3.0, so i think we should probably back burner this project for right now. Our version 3.0 is probably a couple months out realistically, once we've wrapped up the yaml and search feature changes.


Update 'ru' localization

Hello,
Made some updating for 'ru' localization
Best regards

Thank you for your contribution

Shall I megre this @yukiokun057

Yeah, of course 🙂

Thanks again @yukiokun057

Thanks so much for your help.
Unfortunately these changes need to be made to the .resx file for the language instead of the .xlf file as these are sometimes overwritten.

Should the Multilingual App Toolkit automatic convert the *.xlf files in the MultilingualResources a directory into *.resx files during build?

no it only translates the .resx files into the selected languages then converts .resx to .xlf, not the other way round.

If so, the *.resx files will be the ones that changes during build. The *.xlf files should stay constant, shouldn't they?

other way round

Do you mean it converts Strings.resx file (the main file) into multiple languages and save them in the Properties directory with names such as `Strings.es.resx
Then why do we have the *.xlf files if they don't serve any purpose?

@Samuel12331
https://docs.microsoft.com/en-us/windows/uwp/design/globalizing/use-mat#option-2-send-the-xlf-files-to-a-third-party-for-translation

👍


fail_text/fail_color are broken

Regression?
No
Hyprlock Info and Version
hyprlock-0.4.1-1.fc40.src.rpm
 Hyprlock config
input-field {
	outline_thickness = 0
}

Compositor Info and Version
 System/Version info
Hyprland, built from branch  at commit fe7b748eb668136dd0558b7c8279bfcd7ab4d759  (props: bump version to 0.39.1).
Date: Tue Apr 16 16:01:03 2024
Tag: v0.39.1, commits: 4460

flags: (if any)

System Information:
System name: Linux
Node name: redacted
Release: 6.10.6-200.fc40.x86_64
Version: #1 SMP PREEMPT_DYNAMIC Mon Aug 19 14:09:30 UTC 2024

GPU information:
04:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Rembrandt [Radeon 680M] [1002:1681] (rev d2) (prog-if 00 [VGA controller])

os-release: NAME="Fedora Linux"
VERSION="40 (KDE Plasma)"
ID=fedora
VERSION_ID=40
VERSION_CODENAME=""
PLATFORM_ID="platform:f40"
PRETTY_NAME="Fedora Linux 40 (KDE Plasma)"
ANSI_COLOR="0;38;2;60;110;180"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:40"
DEFAULT_HOSTNAME="fedora"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f40/system-administrators-guide/"
SUPPORT_URL="https://ask.fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=40
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=40
SUPPORT_END=2025-05-13
VARIANT="KDE Plasma"
VARIANT_ID=kde

plugins:

Description
As per documentation:

fail_color = rgb(204, 34, 34) # if authentication failed, changes outer_color and fail message color

When outline_thickness set to 0, the color of the inner box will be changed instead of the outer.

So when outline_thickness set to 0 and authentication fails, both the text an the box will the same color. It is impossible to set them to different colors.
But the box is colored "correctly" only for the first authentication failure. For all subsequent failures it is colored check_color for some reason.
And the icing on the cake: swap_font_color has no effect on fail_text.
How to reproduce

Set outline_thickness = 0.
Fail authentication. fail_text is unreadable.
Fail authentication again. fail_text is readable, but the box color is wrong.
Repeat 1-3 with swap_font_color = true. No difference.

Crash reports, logs, images, videos
No response

For now you can mitigate this by using pango markup to set the color of the fail text like this: fail_text=$FAIL.
But it seems like the swap_font_color is actually broken and the behavior with outline_thickness = 0 as well.


Update active-directory-tou.md

Changed "too" in the FAQ to "to."

@jameswh3 : Thanks for your contribution! The author, @billmath, has been notified to review your proposed change.

Merging per Angela's approval in email.


Fix bug that cannot include single quote in table comment

What
As a title.
I achieved that by doubling the backslashs.
Why
In the current version (2.0.1), including single quotes in table comments results in an error.
# Schemafile
create_table "users", comment: "'" do |t|
end

$ ridgepole -c config.yml --apply --file test.schema --mysql-change-table-comment
Apply `Schemafile`

-- execute("ALTER TABLE `users` COMMENT='''")
[ERROR] Mysql2::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''''' at line 1
* 1: execute "ALTER TABLE `users` COMMENT='\''"
	/Users/wada.mitsuaki/.local/share/mise/installs/ruby/3.1.4/lib/ruby/gems/3.1.0/gems/mysql2-0.5.6/lib/mysql2/client.rb:151:in `_query'

The cause is that the number of backslashes for escaping is only half of the required amount. Here, since the output is being made by puts, half of the necessary amount is removed.
# ⛔ Current version
execute "ALTER TABLE `users` COMMENT='\''"

# ✅ Required (At this patch)
execute "ALTER TABLE `users` COMMENT='\\''"

Therefore, I doubled the backslashes to fix that.
Test at local
# Schemafile
create_table "users", comment: "'" do |t|
end

$ bin/ridgepole -c config.yml --apply --file test.schema --drop-table --mysql-change-table-comment
Apply `test.schema`
-- create_table("users", {:comment=>"'"})
   -> 0.0093s

$ mysql -uroot
mysql> SHOW CREATE TABLE my_db.users;
+-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                |
+-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| users | CREATE TABLE `users` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='''' |
+-------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.01 sec)

coverage: 96.845%. remained the same
when pulling b077b4e6cb822ca2a60c1a647a1cbbf564431cd6 on mi-wada:fix-bug-cannot-include-single-quote-in-table-comment
into 7198ff507b0ac3592cd41f4fb30ffb023d51ffab on ridgepole:2.0.

v2.0.2 has been released.


tiddlywiki update to 0.0.4

link changed to:
mac32 or mac64
I chose 64.

Thank you for the contribution. It will be merged in a different pull request due to some simple recommended alterations. Your contribution is still included (and still credited to you), with the appropriate modifications, when applicable.
Changes:

Separated versions by cpu type.

cheers! ;)


Pull in data and info for upcoming and current shutdowns

https://www.mbta.com/alerts/subway?alerts_timeframe=upcoming
Use the API to be a source of info

Current shutdowns should be available as GTFS alerts. I'm not sure if GTFS shows upcoming shutdowns.

Yeah I started looking into things and it only helps us keep Current shutdowns up to date, and via the alerts, upcoming in the next 7 days. Would be good to catch last minute changes to shutdowns


Disabled live tests that were failing due to service bug

Related - https://github.com/Azure/azure-sdk-for-net/issues/16516

net - storage - ci


Updated Czech localization [cs-CZ]

Updated the Czech localization to support new features like the Focus Timer and others,

Thank you!!


thunderbird*: 115.3.x -> 115.4.1

https://www.thunderbird.net/en-US/thunderbird/115.3.3/releasenotes/
https://www.thunderbird.net/en-US/thunderbird/115.4.1/releasenotes/
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Some security fixes are mentioned, but probably nothing serious for people who didn't enable scripting, etc.


[vue3-apollo-quasar] 6. Ensure kit on website

Background
The website has attempted to include all the kits appropriately but may need some added configuration to display correctly.
Acceptance

Ensure the kit displays on the website
Add any missing logos for technologies as needed

Kit displays on the website with all technology logos required.


LetsEnrypt - MythicBeasts

Would it be possible to add MythicBeasts to the list of DNS providers for the LetsEncrypt add-on?
Or at least help out in how to get it configured manually somehow?

No bot 🤖 give the people time to work man

No

Hi 👋
This is the issue tracker for the add-ons, for feature requests please raise those on the forum https://community.home-assistant.io/c/feature-requests, thanks 👍
If you need support with the existing methods please use our forum or discord, thanks 👍
https://www.home-assistant.io/help/


BUG: interpolating Dask Array with NumPy Arrays completely blows up the chunk size for multiple dimensions

What happened?
Interpolating rechecks to -1 along the interpolation axis, doing this for many dimensions at once will blow up the chunk sizes :(

This seems to happen when you put stuff into blockwise, I think we might want to rechunk the coordinates to the proper chunk size, but not sure
What did you expect to happen?
Keep chunk sizes consistent through rechunking the other dimensions appropriately I guess
@dcherian would your current work in this area impact this?
Minimal Complete Verifiable Example
import dask.array as da

import dask.array
import pandas as pd
import numpy as np

import xarray as xr

arr = xr.DataArray(
    da.random.random((1, 75902, 45910), chunks=(1, "auto", -1)),
    dims=["band", "y", "x"],
    coords={"x": np.linspace(-73.58, -62.11, 45910), "y": np.linspace(-36.08, -55.05, 75902)},
    name="bla",
)

arr2 = xr.DataArray(
    da.random.random((1, 75902, 45910), chunks=(1, "auto", -1)),
    dims=["band", "y", "x"],
    coords={"x": np.linspace(-73.58, -62.11, 45910), "y": np.linspace(-36.08, -55.05, 75902)},
    name="bla",
)

x = arr2.interp(
    x=arr.coords["x"],
    y=arr.coords["y"],
    method="linear",
)

MVCE confirmation

[ ] Minimal example — the example is as focused as reasonably possible to demonstrate the underlying issue in xarray.
[ ] Complete example — the example is self-contained, including all data and the text of any traceback.
[ ] Verifiable example — the example copy & pastes into an IPython prompt or Binder notebook, returning the result.
[ ] New issue — a search of GitHub Issues suggests this is not a duplicate.
[ ] Recent environment — the issue occurs with the latest version of xarray and its dependencies.

Relevant log output
No response
Anything else we need to know?
 Is it better with https://github.com/pydata/xarray/pull/9881?

yes does dask.array.apply_gufunc not auto rechunk the other axes yet when allow_rechunk=True? we can explicitly request this on the Xarray end if needed. This codepath will still be active for any spline interpolations.

Yikes, no :(
This function is complicated... I'll look into this on our end, that should work differently imo
Yeah requesting this on our end for the current code path would be helpful too I think (I don't think that we would want to change how blockwise alignment works)

Right allow_rechunk should rechunk to 1 along core-dimensions and adjust any others as neccessary.

let's continue the discussion with https://github.com/pydata/xarray/issues/6799#issuecomment-2555414780


feat: export database data

I hereby agree to the terms of the GreptimeDB CLA.
Refer to a related PR or issue link (optional)
What's changed and what's your intention?
CLI: support exporting database data with a time range
Checklist

[ ] I have written the necessary rustdoc comments.
[ ] I have added the necessary unit tests and integration tests.
[x] This PR requires documentation updates.

Summary by CodeRabbit

New Features

Introduced support for exporting database data, with a new DatabaseData option.
Deprecated the TableData export target.

Enhancements

Improved the export functionality to handle database data asynchronously for better performance.

@WenyXu @waynexia PTAL

@fengjiachun  Good job. The task #4276 should be started!