Retry Process Hang in .Net Framework for ASP.Net Core 2.2

Describe the bug
Below code will hang with Asp.net core 2.2 (.net framework) in Polly retry process.
(it works fine for .net core)
using System;
using System.Diagnostics;
using System.Net.Http;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Polly;

namespace WebApplication1
{
    public class Startup
    {
        // This method gets called by the runtime. Use this method to add services to the container.
        // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddHttpClient("httpClient").AddTransientHttpErrorPolicy((builder) => builder.
                OrResult((msg) => msg.StatusCode == System.Net.HttpStatusCode.NotFound).
                WaitAndRetryAsync(
                    6,
                    retryAttempt => TimeSpan.FromSeconds(1),
                    (exception, timeSpan, retryCount, context) =>
                    {
                        Debug.WriteLine($"Retrying: {retryCount}");
                    }
                ));
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.Run(async (context) =>
            {
                var clientFactory = app.ApplicationServices.GetService<IHttpClientFactory>();
                var client = clientFactory.CreateClient("httpClient");
                await client.SendAsync(new HttpRequestMessage(HttpMethod.Get, "https://docs.microsoft.com/Not-Existing"));

                await context.Response.WriteAsync("Hello World!");
            });
        }
    }
}

To Reproduce
Steps to reproduce the behavior:

Create Asp.net core 2.2 project with .net framework.
Add Nuget "Microsoft.Extensions.Http 2.2.0" and "Microsoft.Extensions.Http.Polly 2.2.0"
Paste above code to startup.cs
Build and run.

The project hang in retry process.
Actually, if you just create a simple console application with below code, it will also hang:
    class Program
    {
        static void Main(string[] args)
        {
            MyHandler h = new MyHandler();
            HttpClient c = new HttpClient(h);
            var result = c.GetAsync("https://docs.microsoft.com/non-existing", CancellationToken.None).ConfigureAwait(false).GetAwaiter().GetResult();
        }
    }

    class MyHandler : HttpClientHandler
    {
        protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
        {
            HttpResponseMessage result = null;
            for (int i = 0; i < 6; i++)
            {
                result = await base.SendAsync(request, cancellationToken).ConfigureAwait(false);
                if (result.IsSuccessStatusCode) break;
                Console.WriteLine($"Retrying1: {i + 1}");
            }

            return result;
        }
    }

In your console example it shouldn't if you switch Main to async
static async Task Main(string[] args)
{
    MyHandler h = new MyHandler();
    HttpClient c = new HttpClient(h);
    var result = await c.GetAsync("https://docs.microsoft.com/non-existing", CancellationToken.None).ConfigureAwait(false);
}

In your console example it shouldn't if you switch Main to async
static async Task Main(string[] args)
{
    MyHandler h = new MyHandler();
    HttpClient c = new HttpClient(h);
    var result = await c.GetAsync("https://docs.microsoft.com/non-existing", CancellationToken.None).ConfigureAwait(false);
}

I had already tried async Main. It was still not working. I think the issue related to HttpClientHandler implementation on SendAsync

/cc @glennc

I found if we dispose HttpResponseMessage, it will not hang any more:
using System;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        static async Task Main(string[] args)
        {
            MyHandler h = new MyHandler();
            HttpClient c = new HttpClient(h);
            var result = await c.GetAsync("https://docs.microsoft.com/non-existing", CancellationToken.None);
        }
    }

    class MyHandler : HttpClientHandler
    {
        protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
        {
            HttpResponseMessage result = null;
            for (int i = 0; i < 6; i++)
            {
                try
                {
                    result = await base.SendAsync(request, cancellationToken).ConfigureAwait(false);
                    Console.WriteLine($"Retrying1: {i + 1}");
                    if (result.IsSuccessStatusCode) break;
                }
                finally
                {
                    if (!result.IsSuccessStatusCode && i < 5)
                    {
                        result.Dispose();
                    }
                }
            }

            return result;
        }
    }
}

@glennc @jesong I can confirm this issue is present with ASP.NET Core 2.2 on top of .NET Framework. Also I found a workaround for Polly retries: You need to dispose the HttpResponseMessage in the onRetry callback.
Policy
    .Handle<HttpRequestException>()
    .OrResult<HttpResponseMessage>(msg => RetryableStatusCodesPredicate(msg.StatusCode))
    .RetryAsync(retryCount, onRetry: (x, i) =>
    {
        x.Result.Dispose(); // workaround for https://github.com/aspnet/Extensions/issues/1700
    }));

As resolved in the Polly issue, this is a .NET issue in full framework. There's no reaction from us here.


ROX-13170: Adding table row actions for flows table

Description
This PR adds the table row actions for the flows table. This is an iterative addition. You can find all the subtasks here: https://issues.redhat.com/browse/ROX-12904
Checklist

[x] Investigated and inspected CI test results
~[ ] Unit test and regression tests added~
~[ ] Evaluated and added CHANGELOG entry if required~
~[ ] Determined and documented upgrade steps~
~[ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)~

Screenshots
Add flow to baseline

Mark flow as anomalous

(I think you put the same screenshot in for both states, but code looks right.)

oops


Link to "master" in the footer points to a 410 page on GitHub

When clicking the link to master in the page footer, one would expect the link to point to the master branch of this repository. However, it points to https://github.com/NuGet/NuGetGallery/branches/master
Which appears to be retired by GitHub. As far as I can tell, the repository URI is obtained from the AssemblyInfo, which is declared:
[assembly: AssemblyMetadata("RepositoryUrl", "https://www.github.com/NuGet/NuGetGallery")]
This now also represents the URI to the master branch of the repository, as selecting "master" on the branches page for the repository points to the same resource as the RepositoryUrl specified in the metadata.
Fixing this should be trivial, it appears that the "branches/{branch}" combination in ApplicationVersion line 51 should simply be changed to
BranchUri = repositoryBase;
For the link in the footer to be working properly again.
I'd be happy to provide the above change in a PR if this is even deemed an issue.

@aevitas , thanks for letting us know!
Seems like the fix in the line you provided (https://github.com/NuGet/NuGetGallery/blob/master/src/NuGetGallery/Infrastructure/ApplicationVersionHelper.cs#L51)
should be to change from "branches" to "tree": https://github.com/NuGet/NuGetGallery/tree/master
A PR will be most welcome 👍


Use xtra::scoped where possible

This removes a substantial number of Tasks structs in favour of xtra::scoped, which is a bit cleaner for when the tasks are tied to the actor's lifecycle.
cc @klochowicz, this might be a little less ambitious than what you had in your branch, which is maybe why it works? There are some actors (Maker and Taker) which still have actor-lifetime tasks structs, which I haven't touched yet since they are involved in new, when the context is not yet available. Could some of these be moved to Actor::started, perhaps? edit: looks like I just assumed these are actors, but they aren't :sweat_smile:

I'll rebase to remove these fixup commits when this has been reviewed, if that's okay?

I'll rebase to remove these fixup commits when this has been reviewed, if that's okay?

perfect; adding fixup! was actually great, as I am in the middle of the review :)

Haha, it finally clicked for me that this is a better approach than just rebasing locally every time (especially after I noticed that it can make github comment threads disconnect)

Rebased & f0rce-pushed

bors r+

bors retry


{"error":["Field 'policy_name' invalid"]} running @ v0.10.0 gem chef-api

Hi, @tas50 Good day!
We tried using the latest gem v0.10.0, but we're having issues into it. Below are the error encountered.
Description
 {"error":["Field 'policy_name' invalid"]}
    from /home/jenkins/.chefdk/gem/ruby/2.6.0/gems/chef-api-0.10.0/lib/chef-api/connection.rb:304:in `block in request'
    from /opt/chefdk/embedded/lib/ruby/2.6.0/net/http.rb:920:in `start'
    from /home/jenkins/.chefdk/gem/ruby/2.6.0/gems/chef-api-0.10.0/lib/chef-api/connection.rb:290:in `request'
    from /home/jenkins/.chefdk/gem/ruby/2.6.0/gems/chef-api-0.10.0/lib/chef-api/connection.rb:142:in `put'
    from /home/jenkins/.chefdk/gem/ruby/2.6.0/gems/chef-api-0.10.0/lib/chef-api/resources/base.rb:162:in `put'
    from /home/jenkins/.chefdk/gem/ruby/2.6.0/gems/chef-api-0.10.0/lib/chef-api/resources/base.rb:685:in `save!'
    from /home/jenkins/.chefdk/gem/ruby/2.6.0/gems/chef-api-0.10.0/lib/chef-api/aclable.rb:23:in `save!'
    from patch_build_core.rb:76:in `block (3 levels) in <main>'
    from patch_build_core.rb:70:in `each'
    from patch_build_core.rb:70:in `block (2 levels) in <main>'
    from patch_build_core.rb:66:in `each'
    from patch_build_core.rb:66:in `block in <main>'
    from patch_build_core.rb:61:in `each'

We looked into this. The node object adds attributes for policy_name and policy_group (see https://github.com/chef/chef-api/blob/cfafa5a32f3d98d102c0a873a8d67c57abcfa2f4/lib/chef-api/resources/node.rb#L13). Assuming you want to create a node without these attributes, you must remove the attributes.
A better fix might be changing the serialization so that these attributes are omitted if nil.

Hi @tas50 just a query, about changes in v0.10.5 in nodes resources,
What was changed and it does not perform any updates to chef server?
Doing like:
nodes.update(run_list_add, 'run_list' => @run_lists_add)

Nothing happens compared before v0.10.x?

Hi @jtatum , if we will be modifying/updating an existing node like run_list and normal attributes using gem 0.10.x, what should be the values for this?

attribute :policy_name,  type: String

Your recommendation and comment are very much appreciated. Thank you!

@Doltair policy_name is the name of the Chef policy. If you don't know what policies are in Chef, you probably don't want to set a policy_name or a policy_group. The problem is, this gem sends both, whether you set one or not. We chose to fork this gem and and delete the policy_name and policy_group attributes. That's a workaround, not a "fix" though because the gem needs to support policy_name and/or policy_group when one is supplied.

To add further context, chef policies are optional. If you choose not to have, it is set to null.
I ran into the same problem when nodes.updates was called, it augments the payload with policy_name,  policy_group, and barf.
Removing policy_name,  policy_group, or marking them as optional is reasonable.
(cc  @tas50 )

Hi @tas50 , this repo has been marked as Deprecated. Is there a plan to write a new project to replace this?


fix(ui): only count enabled control adapters in collapse heading

What type of PR is this? (check all applicable)

[ ] Refactor
[ ] Feature
[x] Bug Fix
[ ] Optimization
[ ] Documentation Update
[ ] Community Node Submission

Have you discussed this change with the InvokeAI team?

[x] Yes
[ ] No, because:

Description
fix(ui): only count enabled control adapters in collapse heading
Related Tickets & Documents

Related https://discord.com/channels/1020123559063990373/1149513625321603162/1161845316094537810

@Millu this should go into 3.3.0


Fluctuating training loss

Red is training loss
Orange is valid loss
Other datasets show same behavior
Training loss fluctuates up and down drastically.  Anyone know why is this happening? Thank you

Try lowering learning rate.

Try lowering learning rate.

which parameter in config is actually LR?


Embed Scripts in PHP

I need to implement mediaelement player in a PHP file. But there is a weired problem.
For testing I use the test.html file,
When I use that prepared "test.html" file eveything looks great.
But when I rename that testfile to "test.php" the player looses the references to its buttons grafics. Missing : Player, Loudspeaker, Fullsceen Grafics. See screenshots
I other words using the scripts in a php file behaves different than in a html file.
Does anyone knows a solution for that weired thing ?

@Bengut Is this still an issue?

@Bengut Closing old issues. If you'd like to reopen this, let us know. Thanks!


Windows Package Manager 1.2 manifest schema

Description of the new feature / enhancement
This is a parent issue to track outstanding schema requests for the 1.2 schema.
Inclusion in this list is not a commitment. Other schema items may be added or removed.

Note: We will be targeting the 1.2 schema with the 1.3 client.

#1994
#1984
#1916
#1889
#1888
#1345
#1277
#607

Related to:

#1145
#970
#182
#140
microsoft/winget-cli-restsource/issues/118

Also related to schema, but not implemented or targeted for the 1.3 client release:

#163
#147

Proposed technical implementation details
No response

See:

#1997

@denelon - Is this completed?

LOL! Yes, this was complete, I was just looking at the related open issues and saw the one at the REST source that isn't marked complete, and the features enabled by the schema that still haven't been implemented.


[question] Adding device is not discovering which device is being used

I'm trying to add a zooz 4-in-1 sensor. It's adding fine but there are a few errors in the log. The device is communicating properly (motion shows in the log as expected) but the device name is not discovered.
I've included, then excluded, then included again the device. No change. I've also restarted the program.
Do I need to add to the device database like in openzwave times or is there something else going on?
Let me know if I can add any more helpful information. I could increase the log level if needed.
Hardware:
-zooz controller
-zwavejs2mqtt pulled from github today, installed with npm
-running on raspberry pi 4
Logs when including the device:
  z2m:Zwave Secure inclusion started +14s
  z2m:Zwave Success zwave api call startInclusion true +1ms
  z2m:Zwave Inclusion stopped +2s
  z2m:Zwave Node 6: added +240ms
  z2m:Zwave Node added 6 +1ms
  z2m:Zwave Node 6 is awake +9ms
  z2m:Zwave Node 6: value added: 114-0-manufacturerId => 634 +466ms
  z2m:Zwave Node 6: value added: 114-0-productType => 8225 +1ms
  z2m:Zwave Node 6: value added: 114-0-productId => 8449 +1ms
  z2m:Zwave Node 6: value added: 134-0-libraryType => 3 +190ms
  z2m:Zwave Node 6: value added: 134-0-protocolVersion => 4.54 +3ms
  z2m:Zwave Node 6: value added: 134-0-firmwareVersions => [ '32.2' ] +1ms
16:10:57.380 CNTRLR   [Node 006] did not respond after 1/3 attempts. Scheduling next try in 500 ms.
  z2m:Zwave Node 6: value added: 94-0-zwavePlusVersion => 1 +4s
  z2m:Zwave Node 6: value added: 94-0-nodeType => 0 +1ms
  z2m:Zwave Node 6: value added: 94-0-roleType => 6 +1ms
  z2m:Zwave Node 6: value added: 94-0-installerIcon => 3079 +0ms
  z2m:Zwave Node 6: value added: 94-0-userIcon => 3079 +1ms
  z2m:Zwave Node 6: value added: 128-0-level => 100 +181ms
  z2m:Zwave Node 6: value added: 128-0-isLow => false +1ms
  z2m:Zwave Node 6: metadata updated: 132-0-wakeUpInterval +161ms
  z2m:Zwave Node 6: value added: 132-0-wakeUpInterval => 43200 +160ms
  z2m:Zwave Node 6: value added: 132-0-controllerNodeId => 255 +2ms
  z2m:Zwave Node 6: metadata updated: 49-0-Air temperature +611ms
  z2m:Zwave Node 6: value added: 49-0-Air temperature => 27.32 +1ms
  z2m:Zwave Node 6: metadata updated: 49-0-Illuminance +322ms
  z2m:Zwave Node 6: value added: 49-0-Illuminance => 100 +1ms
16:11:01.848 CNTRLR   [Node 006] did not respond after 1/3 attempts. Scheduling next try in 500 ms.
  z2m:Zwave Node 6: metadata updated: 49-0-Humidity +3s
  z2m:Zwave Node 6: value added: 49-0-Humidity => 49.22 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-1 +7ms
  z2m:Zwave Node 6: metadata updated: 112-0-2 +2ms
  z2m:Zwave Node 6: metadata updated: 112-0-3 +3ms
  z2m:Zwave Node 6: metadata updated: 112-0-4 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-5 +4ms
  z2m:Zwave Node 6: metadata updated: 112-0-6 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-7 +1ms
  z2m:Zwave Node 6: value added: 112-0-1 => 1 +162ms
  z2m:Zwave Node 6: value added: 112-0-2 => 10 +160ms
  z2m:Zwave Node 6: value added: 112-0-3 => 10 +165ms
  z2m:Zwave Node 6: value added: 112-0-4 => 10 +164ms
  z2m:Zwave Node 6: value added: 112-0-5 => 15 +167ms
  z2m:Zwave Node 6: value added: 112-0-6 => 3 +164ms
  z2m:Zwave Node 6: value added: 112-0-7 => 4 +163ms
16:11:05.290 DRIVER   Could not assemble partial CCs because the payload is invalid. Dropping them.
16:11:06.822 CNTRLR   [Node 006] did not respond after 1/3 attempts. Scheduling next try in 500 ms.
16:11:07.492 DRIVER   Could not assemble partial CCs because the payload is invalid. Dropping them.
16:11:09.025 CNTRLR   [Node 006] did not respond after 2/3 attempts. Scheduling next try in 500 ms.
16:11:09.693 DRIVER   Could not assemble partial CCs because the payload is invalid. Dropping them.
16:11:11.229 CNTRLR   [Node 006] Interview attempt 1/5 failed, retrying in 5000 ms...
  z2m:Zwave Node 6: value updated: 128-0-level 100 => 100 +13s
  z2m:Zwave Node 6: value updated: 128-0-isLow false => false +1ms
  z2m:Zwave Node 6: value updated: 132-0-wakeUpInterval 43200 => 43200 +170ms
  z2m:Zwave Node 6: value updated: 132-0-controllerNodeId 255 => 1 +1ms
  z2m:Zwave Node 6: metadata updated: 49-0-Air temperature +161ms
  z2m:Zwave Node 6: value updated: 49-0-Air temperature 27.32 => 27.32 +1ms
  z2m:Zwave Node 6: metadata updated: 49-0-Illuminance +160ms
  z2m:Zwave Node 6: value updated: 49-0-Illuminance 100 => 100 +1ms
  z2m:Zwave Node 6: metadata updated: 49-0-Humidity +161ms
  z2m:Zwave Node 6: value updated: 49-0-Humidity 49.22 => 49.22 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-1 +6ms
  z2m:Zwave Node 6: metadata updated: 112-0-2 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-3 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-4 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-5 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-6 +1ms
  z2m:Zwave Node 6: metadata updated: 112-0-7 +0ms
  z2m:Zwave Node 6: value updated: 112-0-1 1 => 1 +170ms
  z2m:Zwave Node 6: value updated: 112-0-2 10 => 10 +164ms
  z2m:Zwave Node 6: value updated: 112-0-3 10 => 10 +158ms
  z2m:Zwave Node 6: value updated: 112-0-4 10 => 10 +154ms
  z2m:Zwave Node 6: value updated: 112-0-5 15 => 15 +154ms
  z2m:Zwave Node 6: value updated: 112-0-6 3 => 3 +168ms
  z2m:Zwave Node 6: value updated: 112-0-7 4 => 4 +158ms
16:11:21.099 CNTRLR   [Node 006] did not respond after 1/3 attempts. Scheduling next try in 500 ms.
16:11:21.765 DRIVER   Could not assemble partial CCs because the payload is invalid. Dropping them.
16:11:23.296 CNTRLR   [Node 006] did not respond after 2/3 attempts. Scheduling next try in 500 ms.
16:11:24.037 DRIVER   Could not assemble partial CCs because the payload is invalid. Dropping them.
16:11:25.492 CNTRLR   [Node 006] Interview attempt 2/5 failed, retrying in 10000 ms...
  z2m:Zwave Node 6 is now asleep +16s

Control panel screenshot:

@AlCalzone thank you for looking into this - is there an easy way for me to install the new branch into the zwavejs2mqtt system? I'd like to continue my testing so I can get to my change to the JS world away from the open zwave world.

not an easy way, but what you can do:

clone this repo, check out the branch
npx lerna bootstrap, then npx lerna exec -- npm link
in the zwavejs2mqtt directory run npm link zwave-js.

@AlCalzone Before npx lerna bootstrap needs also to run npm install
git clone https://github.com/zwave-js/node-zwave-js.git
cd node-zwave-js
# Build and bootstrap lerna
npm run prerelease
npx lerna exec -- npm link

# Go to zwavejs2mqtt folder
npm link zwave-js

lerna bootstrap does npm install internally. npx downloads a temporary copy of lerna and uses that. Or am I missing something here?

npx downloads a temporary copy of lerna and uses that. Or am I missing something here

Didn't know this, usually I always run npm install to run all deps

The problem is you need a global version of lerna to run the commands, have a local npm script or set up the PATH env manually to run a dependency. npx makes that easier, especially if you cannot be sure that someone has the necessary global deps.

Yes I know that what I didn't know is that it automatically download a dep if it's not present, I thought it only checked the binaries on node_modules/.bin and run them. Nice to know  :)

https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b mentions some more nice tricks (e.g. choosing node version).

@AlCalzone When I see this posts dated 3 years ago I feel so bad, I'm always updated with the news but I always miss something, thanks for the link! :)

This is included in v5.4.0

Awesome. Thank you!

Confirming this is fixed with my zwavejs2mqtt pull today.
Thanks again!


Swift module is consumed by executable in the same build

This story builds on the spike work in #1 to add polish and test coverage.
Test coverage:

[x] Incremental build works when module source is changed in ABI and non-ABI compatible ways. (Demonstrated here)
[x] Changes to the module project's build directory location are visible to the consuming component. (Demonstrated here)

@adammurdoch Can you review if the code I linked to each test case in the description is enough to close this issue?


Security headers and SSL/TLS cyphers monitors

⚠ Please verify that this feature request has NOT been suggested before.

[X] I checked and didn't find similar feature request

🏷 Feature Request Type
New Monitor
🔖 Feature description
Hi, thank you all for this amazing piece of software.
It is possible to integrate in some way the following monitors?

http security headers check (ex: https://github.com/juerkkil/securityheaders)
ssl security check (ex: https://github.com/drwetter/testssl.sh)

✔ Solution
Add 2 monitors type:

http security headers check
ssl security check

❓ Alternatives
push trigger to external scripts
📝 Additional Context
No response

Currently, it is possible to validate if specific headers are present with a set value using the Headers field when creating a new HTTP monitor, so you could possibly use this for the header validation provided that the value of the header doesn't change. As for the ssl checking, it does seem like a good idea but testssl.sh is a bash script so that sort of feature would probably need porting over to node. I think that this could be quite usefull, perticularly knowing what TLS versions and cypher sets a specified host currently offers.

Thank you for your prompt response!
I'll give a try by coding something and if planets schema will assist me I'll share that of course :)
For the SSL monitor I understand what You mean, maybe a simple "score" admins can set if weak cyphers are found will be enough to trigger a lot of app users to be aware about popular weaknesses.
This way can be of course infinite by integrating 3rd party tools like wpscan et similia ☕

I am going to split this issue:

header-query is going to be tracked in https://github.com/louislam/uptime-kuma/issues/3568
ssl score is going to be tracked in https://github.com/louislam/uptime-kuma/issues/3570

=> closing as a duplicate


Accordion add "on-open" function

I would like to execute a secondary function when the accordion panel is open.
This one would be executed at the same time that the toggleOpen() function
Any solution please ?

https://github.com/angular-ui/bootstrap#need-help


Returning Boolean Values from Functions

Challenge Name

Returning Boolean Values from Functions
Issue Description

return a===b showing error,
Browser Information

its working only return a<b?true:false;

Browser Name,chrome  Version: 54.0
Operating System: Windows10
Mobile, Desktop, or Tablet: desktop

Your Code

 return a==b;

Screenshot

@trinath503 I believe your code should check if a number is lesser than another number, not test if they are equal, as is evident by the function name isLess.
Please visit the Help Room first for help with challenges, in future!

@trinath503 the a === b was just an example for how you can just return a boolean value without the if/else statements. This challenge requires you to think about the original code and modify it yourself. Please think about how you can make
  if (a < b) {
    return true;
  } else {
    return false;
  }

into just a one line return statement.
This is a standard message notifying you that this issue seems to be a request for help. Instead of asking for help here, please click the "help" button on the challenge on Free Code Camp, which will take you to the help chatroom for that specific challenge. You can also view our full list of official chatrooms.
If you think I'm wrong in closing this issue, please reopen it and add further clarification. Thank you, and happy coding!


Fix control plane readiness

Description
Per title.
How was this PR tested?

Added unit test
Verified logs output 2024-03-29T00:38:43.814Z  INFO quickwit_serve: control plane is ready

PTAL @fulmicoton


check for null values when loading custom keys

Fixes #2336 .
I wrote some tests, but do we actually use custom keys at all?

Custom keys have been introduced quite recently. I think the original idea was to customize some community roles with them, e.g. when a role was related to a specific lesson we could add "lesson url" custom key and fill it out when assigning the role.

@pbanaszkiewicz this one is the hotfix that I mentioned yesterday

Looks good to me!


Don’t pass processor as argument to attachers

Attachers should be invoked with the processor as the context object, instead of a parameter.
Often, attachers don’t even need to interact with the processor, so it makes no sense to pass it first.
Removing it from the arguments makes it easier to use attachers to without unified, such as in the following code:
var toc = require('remark-toc')();
var tree = {type: 'root', children: [/* … */]};
console.log(toc(tree));

Here’s an example which this change would make much prettier: https://github.com/wooorm/rehype-format/blob/7715bf1f6f6d56025bd8fe260ea599d6954e75dd/index.js#L4


Make BatchIterator killable

Initially we'd planned to create a "KillableRegistry" in order to avoid
having to implement kill on each BatchIterator or BatchConsumer
implementation. But currently adding a KillableRegistry would involve a
lot of work which is not practical as we're still in the migration from
RowReceiver from BatchIterator.
This changes BatchIterator to extend Killable as a programatic solution
which we may revisit later on.
 Instead it causes further moveNext()
calls to fail.
This means for BatchConsumers it just looks like a regular failure -
from their perspective kill is no different to a regular error.

Codecov Report

Merging #5086 into batch-iterator will decrease coverage by 0.08%.
The diff coverage is 50%.

@@                 Coverage Diff                  @@
##             batch-iterator    #5086      +/-   ##
====================================================
- Coverage             82.32%   82.24%   -0.09%
+ Complexity            11098    11094       -4
====================================================
  Files                  1343     1343
  Lines                 45460    45503      +43
  Branches               5674     5682       +8
====================================================
- Hits                  37426    37423       -3
- Misses                 5379     5424      +45
- Partials               2655     2656       +1

Impacted Files
Coverage Δ
Complexity Δ

...eration/collect/collectors/CompositeCollector.java
88.23% <ø> (ø)
9 <0> (ø)
:x:

...ava/io/crate/operation/collect/CrateCollector.java
100% <ø> (ø)
0 <0> (ø)
:x:

...e/operation/collect/sources/FileCollectSource.java
88.46% <ø> (ø)
4 <0> (ø)
:x:

...main/java/io/crate/action/job/ContextPreparer.java
90.34% <ø> (+0.34%)
18 <0> (ø)
:x:

...rate/operation/collect/RemoteCollectorFactory.java
91.66% <ø> (ø)
5 <0> (ø)
:x:

.../operation/collect/collectors/RemoteCollector.java
78.26% <ø> (-0.32%)
11 <0> (ø)

...operation/collect/sources/SystemCollectSource.java
93.84% <ø> (ø)
26 <0> (ø)
:x:

...src/main/java/io/crate/data/RowsBatchIterator.java
95.23% <0%> (-4.77%)
11 <0> (ø)

...ain/java/io/crate/data/CompositeBatchIterator.java
86.53% <0%> (-5.3%)
21 <0> (ø)

...tion/projectors/IndexWriterCountBatchIterator.java
85.88% <0%> (-2.22%)
26 <0> (ø)

... and 56 more

Continue to review full report at Codecov.

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


Include unity InputManager.asset button/axis mappings in package.

Not sure how this is usually done when distributing assets, but we'll need this to avoid users from having to configure inputs manually.

It's already included, but it would be nice to not have to copy this into your own project.  I think we could probably have a editor script automatically load inputs into the InputManager for you in some kind of install step (like rewire does)
some possible options:
http://plyoung.appspot.com/blog/manipulating-input-manager-in-script.html

So you're saying we should use rewired instead?

@StephenHodgson Would be nice.  Know of a open source alternative? It would be nice to be able to bypass the Unity Input system, but that doesn't seem possible at the moment. Hopefully the new Input system will give us some options, but for now, it seems like it's still in development.

You could always get input from the native plugins.  That's what we're considering for the Mixed Reality toolkit Input system.

I don't think that's an option since the Input is mediated through the browser using Gamepad API.  There doesn't appear to be a good way to Input.GetAxis without using the Unity Input manager, so for now we will ask users to copy InputManager.asset into their own project until we find a better solution.

Fixed with https://github.com/mozilla/unity-webvr-export/commit/1853dbf2a581eb4c29fab79e518529399905d70a
Will come back to a better solution for this one at a later date.


"Copy Setting Name" on non-commonly used settings gives unexpected result

latest insiders.
Gear > Copy Setting Name of something in Commonly Used: get Files: Auto Save (or similar)
Gear > Copy Setting Name of something not in Commonly Used: get : Auto Save (or similar) (caterpillar emogi)

More generally I'm not sure if it makes sense to copy a setting's human readable name in the first place. is this for sharing settings to be searched for in the new editor? I feel like the more natural thing there is to copy the setting's fully quantified id so that people can search for it in the new editor or just paste it into the old.

I have no idea whether this will be useful, I just put it in... yeah I agree that we should be relying on IDs.

There is no longer copy settings name
Only copy id and copy as json -> verified


Strange delays on data channel request/response round trip implementation

In an experiment to replace webrtc-rs with str0m (as many others are looking to do), I ran into some strange delays happening when a javascript client and str0m server have a request/response round trip, where it takes the client ~1.5 seconds to receive the first payload after sending the request. The example code that contains the behavior can be found here: https://github.com/ozwaldorf/str0m-experiment
The request flow looks like this:
sequenceDiagram
    Client-->>Server: SDP (HTTP)
    Client-->>Server: WebRTC Connection
    Client-->>Server: Open data channel
    Server->>Client: Send total number of blocks
    loop Session
    Client->>+Server: Block number request
    Client-->Server: Strange 1.5s delay
    Server->>Client: Chunk 0
    Server->>Client: Chunk 1, 2, ..., 7, 8
    end

A client receives the total number of blocks for some content, and can request each block id. Each block is <=256KiB, and is chunked into 32KiB payloads and sent over the webrtc datachannel.
There is a very long time to first byte after sending each request for the next block, around 1.5 seconds, from when the javascript client sends the request to when it receives the first byte. Compared to similar code written with webrtc-rs, there aren't any delays with each ttfb being ~1ms.
The str0m server takes ~1ms to receive the request payload as a datachannel message, and ~220ms to write the 8 chunks to the rtc state and for the last chunk to be sent out over the socket. Should note, ~200ms of that time is a delay between sending the first packet and the second packet, and the rest of the other packets with the payloads only take a few ms between each other to send after that. A possible clue that I was able to find while inspecting network packets (via wireshark), is that there always seems to be a STUN request happening while there are no outgoing payload packets from the server.
I'd appreciate a glance over the example code, and any recommendations if there is any misuse of the library, but I haven't been able to find any glaring issues, thanks!

Hi @ozwaldorf! Welcome to str0m!
I think the problem in your code is here: https://github.com/ozwaldorf/str0m-experiment/blob/main/server/src/driver.rs#L85
This wait will always happen, also when you are sending new data. The key here is that when you use the webrtc_send macro, you must immediately follow up with a handle_output. Or in str0m terms: a data channel write must immediately be followed by poll_output.
In the chat example we have this max timeout of 100ms, which means a potential write would be max delayed by 100ms. https://github.com/algesten/str0m/blob/main/examples/chat.rs#L130 but this  is not optimal for a real server.
When you use tokio, I recommend using the tokio::select! macro here to make row 85 wait for one of three things.

The timeout (which in this case doesn't need to 100ms cap)
Incoming network data.
Wake-up after data channel write

Whichever case happens, it must swiftly loop back to handle_output.
Hope that helps!

Hey @algesten, thank you for the swift response!

When you use tokio, I recommend using the tokio::select! macro here to make row 85 wait for one of three things.

The timeout (which in this case doesn't need to 100ms cap)
Incoming network data.
Wake-up after data channel write

Interestingly, I had tried previously using this exact flow with a tokio::sync::Notify as a waker, suspecting that the socket read was hanging until it received the stun and allowed the rtc state to progress, but this didn't have any effect and still produced the delay, so I had ended up removing it from the experiment. It's worth mentioning though, that the notify behavior is to only queue once if the loop is not actively awaiting the notify, perhaps there needs to be a queue to skip the read task for every call to write?
I've updated the example source with the notify waker put back in, if you want to take a look again (https://github.com/ozwaldorf/str0m-experiment/commit/241ab16aca71a3e9cf47e472344dbc7352134b30) :pray:
Another solution I tried was using a channel for outgoing payloads instead of writing to the connection directly and waiting for a notify. The driver would select over either receiving from the socket, the timeout, or receiving an outgoing payload and calling write there, but this also didn't have any effect on the delay.

This looks better.
However, there's a big difference between this and the chat example – this loop drives all clients, whereas the way chat.rs is structured there is one such loop per client (this is also how we use it in our own production system with tokio).
I'm trying to think what the consequences of that would be.

It would not take advantage of a multi-core CPU, because there is one task.
There is unnecessary poll_output() because a data channel write would poll_output() on all clients (even though they weren't used for the data channel write).

Computers are fast, so for a test this maybe doesn't matter. I think it might scale badly if you get many clients.

Definitely agree, there is wasted iteration for idle clients while others are still progressing, but that shouldn't be too impactful for this simple experiment as the first test is over a local connection for a single client. With that being said, it's still super strange that it's taking ~1.5s for the first payload to be received after sending the request to the server. With webrtc-rs, this time to first byte is ~1ms, so there's definitely something off as there's several orders of magnitude difference

It's not clear to me what you mean with request here.
Are you saying once dtls and ice is setup and you enter the "loop" that for every block number request it takes 1.5s to get 8 chunks back to the client?

It's not clear to me what you mean with request here.
Are you saying once dtls and ice is setup and you enter the "loop" that for every block number request it takes 1.5s to get 8 chunks back to the client?

Yes, to follow in the flow chart, after the setup and the loop is entered, it takes around 1.5s to receive the first chunk back, although the other 7 chunks are received very quickly after with no delays. Every time it loops, there is the same delay on the first chunk consistently. Apologies if that wasn't clear before

You say that there was 200ms between first and second chunk. Where is that time spent, in str0m?

I am no expert on datachannels but things I would try.
Check how webrtc-rs datachannel is configured then configure str0m the same.
Configure datachannel as unordered/unreliable.
Add bias in your select to ensure you prioritize incoming packets before sending new ones.

send frame
2023-10-07T12:08:12.869Z ERROR [str0m_experiment::driver] payload: 32769
2023-10-07T12:08:12.869Z ERROR [str0m_experiment::driver] payload: 32769
2023-10-07T12:08:12.869Z ERROR [str0m_experiment::driver] payload: 32769
2023-10-07T12:08:12.869Z ERROR [str0m_experiment::driver] payload: 32769
2023-10-07T12:08:12.869Z ERROR [str0m_experiment::driver] payload: 32769
2023-10-07T12:08:12.869Z ERROR [str0m_experiment::driver] payload: 32769
2023-10-07T12:08:12.869Z ERROR [str0m_experiment::driver] payload: 32769
2023-10-07T12:08:12.869Z ERROR [str0m_experiment::driver] payload: 32769
2023-10-07T12:08:12.870Z ERROR [str0m_experiment::driver] send: 1185
2023-10-07T12:08:13.071Z ERROR [str0m_experiment::driver] send: 65
2023-10-07T12:08:13.072Z ERROR [str0m_experiment::driver] recv: 65
2023-10-07T12:08:13.072Z ERROR [str0m_experiment::driver] send: 1185
2023-10-07T12:08:13.278Z ERROR [str0m_experiment::driver] recv: 65
2023-10-07T12:08:13.279Z ERROR [str0m_experiment::driver] send: 1185
2023-10-07T12:08:13.279Z ERROR [str0m_experiment::driver] recv: 69
2023-10-07T12:08:13.279Z ERROR [str0m_experiment::driver] send: 1185
2023-10-07T12:08:13.279Z ERROR [str0m_experiment::driver] recv: 73
2023-10-07T12:08:13.279Z ERROR [str0m_experiment::driver] send: 1185
2023-10-07T12:08:13.280Z ERROR [str0m_experiment::driver] recv: 73
…
2023-10-07T12:08:14.344Z ERROR [str0m_experiment::driver] recv: 89

To flush the contents out we waited 12.869 to 14.344 = 1.475 seconds.
The above usage pattern is one we haven't tested much, it loads up str0m with 200k+ of data then flushes it all out. This triggered a bug where we throw away half the SCTP packets. I imagine the reason it worked at all is because of resends.
This test fails when I fix str0m, but it seems to be client specific:
Uncaught DOMException: Failed to execute 'appendBuffer' on 'SourceBuffer': This SourceBuffer is still processing an 'appendBuffer' or 'remove' operation.

@ozwaldorf thanks for reporting this bug!

Awesome work @algesten! Thanks for the fix


integral, p.48, line 5

I don't know how to interpret the integrand dP_X(dx). Please, give an explanation or a fix if this is a typo.

see response on researchgate. Mathematical typesetting does not work well here.


EPE3D, Acc5 and Acc10 computation on 4DMatch

Hi Yang, how are EPE3D, Acc5 and Acc10 computed on 4DMatch? Are they computed on ALL points in the source point cloud or only the points from "metric_index" in the dataset?

Thanks a lot. And are there full registration results on 4DMatch and 4DLoMatch? I only see the results on 4 shapes in the paper.

The full registration results is not published yet, we will put it on arxiv in a few weeks.

Results can be found here: https://arxiv.org/pdf/2205.12796.pdf


Added ndjson support

Resolves #55
Adds support for ndjson. Both convert from and to ndjson works. For reading, pyarrow.json is used (note: pyarrow.dataset does not support ndjson, so we have to read a dataset fully into memory). For writing, the ndjson module is used.

This is WIP; there seems to be something wrong when converting from ndjson to the other formats.

Now it works. But I still want to make some improvements to the conversion tests.

I made some improvements that should make the test code a bit more clear and remove a lot of duplication from the schema (all kinds of variants for the different format, each with a subset of suppoted types).

I haven't had a chance to dig into this more deeply, but I'm getting a funny error on linux only: https://github.com/voltrondata-labs/arrowbench/actions/runs/3395986451/jobs/5646533349#step:10:272

It seems the memory usage was too high, so the program would get killed when convering a large dataset like fanniemae. This last change should help.

I just rebased this to get the new env var for not-changing permissions, testing over an arrowbench again


Point-and-click from source code to PDF

Grim--seems like pdf.js doesn't support this: https://github.com/mozilla/pdf.js/issues/9657

Could use window.scrollTo, but will need to figure out a way to map from notes on the score to the (x, y) coords.

https://github.com/James-Yu/LaTeX-Workshop/blob/137307dbeaeed97f7719e69742beb5041ac552d4/viewer/latexworkshop.ts#L230


ci: publishing assets only from master

Here we want to compare the two outcomes of builds made against master and other branches:
 - &run_script
    run: |
      if [[ $CIRCLE_BRANCH == 'master' ]]; then
        yarn release --$GRID_ENV;
      else
        yarn build --$GRID_ENV;
      fi;

https://github.com/ethereum/grid/blob/master/.circleci/config.yml#L58-L63
Closes #229

Builds from master happening here: https://circleci.com/gh/ethereum/grid/1473

lgtm


conjure-up openstack on 16.04 still not working

conjure-up openstack
[sudo] password for sysadmin:
Reading package lists...
Building dependency tree...
Reading state information...
The following packages were automatically installed and are no longer required:
python-backports.ssl-match-hostname python-jujuclient python-websocket
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
python3-appdirs python3-cinderclient python3-cliff python3-cmd2 python3-debtcollector python3-funcsigs python3-glanceclient python3-json-pointer python3-jsonpatch python3-keyring python3-keystoneauth1 python3-keystoneclient python3-monotonic python3-msgpack
python3-neutronclient python3-novaclient python3-openstackclient python3-openstacksdk python3-os-client-config python3-oslo.config python3-oslo.i18n python3-oslo.serialization python3-oslo.utils python3-positional python3-requestsexceptions
python3-secretstorage python3-stevedore python3-unicodecsv python3-warlock python3-wrapt
Suggested packages:
python-cliff-doc python-debtcollector-doc python-funcsigs-doc python-glanceclient-doc gir1.2-gnomekeyring-1.0 python3-pykde4 python-keystoneauth1-doc python3-requests-kerberos python-openstacksdk-doc python-os-client-config-doc python-positional-doc
gnome-keyring python-secretstorage-doc
The following NEW packages will be installed:
openstack python3-appdirs python3-cinderclient python3-cliff python3-cmd2 python3-debtcollector python3-funcsigs python3-glanceclient python3-json-pointer python3-jsonpatch python3-keyring python3-keystoneauth1 python3-keystoneclient python3-monotonic
python3-msgpack python3-neutronclient python3-novaclient python3-openstackclient python3-openstacksdk python3-os-client-config python3-oslo.config python3-oslo.i18n python3-oslo.serialization python3-oslo.utils python3-positional python3-requestsexceptions
python3-secretstorage python3-stevedore python3-unicodecsv python3-warlock python3-wrapt
0 upgraded, 31 newly installed, 0 to remove and 0 not upgraded.
Need to get 92.7 kB/1,515 kB of archives.
After this operation, 12.6 MB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 python3-keystoneauth1 all 2.4.1-1ubuntu<IP_ADDRESS> [92.7 kB]
Fetched 92.7 kB in 1s (63.2 kB/s)
Extracting templates from packages: 100%
Selecting previously unselected package python3-cmd2.
(Reading database ... 125601 files and directories currently installed.)
Preparing to unpack .../python3-cmd2_0.6.8-1_all.deb ...
Unpacking python3-cmd2 (0.6.8-1) ...
Selecting previously unselected package python3-wrapt.
Preparing to unpack .../python3-wrapt_1.8.0-5build2_amd64.deb ...
Unpacking python3-wrapt (1.8.0-5build2) ...
Selecting previously unselected package python3-appdirs.
Preparing to unpack .../python3-appdirs_1.4.0-2_all.deb ...
Unpacking python3-appdirs (1.4.0-2) ...
Selecting previously unselected package python3-debtcollector.
Preparing to unpack .../python3-debtcollector_1.3.0-2_all.deb ...
Unpacking python3-debtcollector (1.3.0-2) ...
Selecting previously unselected package python3-keyring.
Preparing to unpack .../python3-keyring_7.3-1ubuntu1_all.deb ...
Unpacking python3-keyring (7.3-1ubuntu1) ...
Selecting previously unselected package python3-positional.
Preparing to unpack .../python3-positional_1.0.1-2_all.deb ...
Unpacking python3-positional (1.0.1-2) ...
Selecting previously unselected package python3-stevedore.
Preparing to unpack .../python3-stevedore_1.12.0-1_all.deb ...
Unpacking python3-stevedore (1.12.0-1) ...
Selecting previously unselected package python3-keystoneauth1.
Preparing to unpack .../python3-keystoneauth1_2.4.1-1ubuntu<IP_ADDRESS>_all.deb ...
Unpacking python3-keystoneauth1 (2.4.1-1ubuntu<IP_ADDRESS>) ...
Selecting previously unselected package python3-oslo.config.
Preparing to unpack .../python3-oslo.config_1%3a3.9.0-3_all.deb ...
Unpacking python3-oslo.config (1:3.9.0-3) ...
Selecting previously unselected package python3-oslo.i18n.
Preparing to unpack .../python3-oslo.i18n_3.5.0-2_all.deb ...
Unpacking python3-oslo.i18n (3.5.0-2) ...
Selecting previously unselected package python3-msgpack.
Preparing to unpack .../python3-msgpack_0.4.6-1build1_amd64.deb ...
Unpacking python3-msgpack (0.4.6-1build1) ...
Selecting previously unselected package python3-funcsigs.
Preparing to unpack .../python3-funcsigs_0.4-2_all.deb ...
Unpacking python3-funcsigs (0.4-2) ...
Selecting previously unselected package python3-monotonic.
Preparing to unpack .../python3-monotonic_0.6-2_all.deb ...
Unpacking python3-monotonic (0.6-2) ...
Selecting previously unselected package python3-oslo.utils.
Preparing to unpack .../python3-oslo.utils_3.8.0-2_all.deb ...
Unpacking python3-oslo.utils (3.8.0-2) ...
Selecting previously unselected package python3-oslo.serialization.
Preparing to unpack .../python3-oslo.serialization_2.4.0-2_all.deb ...
Unpacking python3-oslo.serialization (2.4.0-2) ...
Selecting previously unselected package python3-keystoneclient.
Preparing to unpack .../python3-keystoneclient_1%3a2.3.1-2_all.deb ...
Unpacking python3-keystoneclient (1:2.3.1-2) ...
Selecting previously unselected package python3-cinderclient.
Preparing to unpack .../python3-cinderclient_1%3a1.6.0-2_all.deb ...
Unpacking python3-cinderclient (1:1.6.0-2) ...
Selecting previously unselected package python3-unicodecsv.
Preparing to unpack .../python3-unicodecsv_0.14.1-1_all.deb ...
Unpacking python3-unicodecsv (0.14.1-1) ...
Selecting previously unselected package python3-cliff.
Preparing to unpack .../python3-cliff_1.15.0-2ubuntu2_all.deb ...
Unpacking python3-cliff (1.15.0-2ubuntu2) ...
Selecting previously unselected package python3-json-pointer.
Preparing to unpack .../python3-json-pointer_1.9-3_all.deb ...
Unpacking python3-json-pointer (1.9-3) ...
Selecting previously unselected package python3-jsonpatch.
Preparing to unpack .../python3-jsonpatch_1.19-3_all.deb ...
Unpacking python3-jsonpatch (1.19-3) ...
Selecting previously unselected package python3-requestsexceptions.
Preparing to unpack .../python3-requestsexceptions_1.1.2-0ubuntu1_all.deb ...
Unpacking python3-requestsexceptions (1.1.2-0ubuntu1) ...
Selecting previously unselected package python3-os-client-config.
Preparing to unpack .../python3-os-client-config_1.16.0-0ubuntu1_all.deb ...
Unpacking python3-os-client-config (1.16.0-0ubuntu1) ...
Selecting previously unselected package python3-neutronclient.
Preparing to unpack .../python3-neutronclient_1%3a4.1.1-2_all.deb ...
Unpacking python3-neutronclient (1:4.1.1-2) ...
Selecting previously unselected package python3-novaclient.
Preparing to unpack .../python3-novaclient_2%3a3.3.1-2_all.deb ...
Unpacking python3-novaclient (2:3.3.1-2) ...
Selecting previously unselected package python3-warlock.
Preparing to unpack .../python3-warlock_1.1.0-1_all.deb ...
Unpacking python3-warlock (1.1.0-1) ...
Selecting previously unselected package python3-glanceclient.
Preparing to unpack .../python3-glanceclient_1%3a2.0.0-2ubuntu<IP_ADDRESS>_all.deb ...
Unpacking python3-glanceclient (1:2.0.0-2ubuntu<IP_ADDRESS>) ...
Selecting previously unselected package python3-openstacksdk.
Preparing to unpack .../python3-openstacksdk_0.8.1-2_all.deb ...
Unpacking python3-openstacksdk (0.8.1-2) ...
Selecting previously unselected package python3-openstackclient.
Preparing to unpack .../python3-openstackclient_2.3.0-2_all.deb ...
Unpacking python3-openstackclient (2.3.0-2) ...
Selecting previously unselected package python3-secretstorage.
Preparing to unpack .../python3-secretstorage_2.1.3-1_all.deb ...
Unpacking python3-secretstorage (2.1.3-1) ...
Selecting previously unselected package openstack.
Preparing to unpack .../openstack_<IP_ADDRESS>.04.1_all.deb ...
Unpacking openstack (<IP_ADDRESS>.04.1) ...
Setting up python3-cmd2 (0.6.8-1) ...
Setting up python3-wrapt (1.8.0-5build2) ...
Setting up python3-appdirs (1.4.0-2) ...
Setting up python3-debtcollector (1.3.0-2) ...
Setting up python3-keyring (7.3-1ubuntu1) ...
Setting up python3-positional (1.0.1-2) ...
Setting up python3-stevedore (1.12.0-1) ...
Setting up python3-keystoneauth1 (2.4.1-1ubuntu<IP_ADDRESS>) ...
Setting up python3-oslo.config (1:3.9.0-3) ...
update-alternatives: using /usr/bin/python3-oslo-config-generator to provide /usr/bin/oslo-config-generator (oslo-config-generator) in auto mode
Setting up python3-oslo.i18n (3.5.0-2) ...
Setting up python3-msgpack (0.4.6-1build1) ...
Setting up python3-funcsigs (0.4-2) ...
Setting up python3-monotonic (0.6-2) ...
Setting up python3-oslo.utils (3.8.0-2) ...
Setting up python3-oslo.serialization (2.4.0-2) ...
Setting up python3-keystoneclient (1:2.3.1-2) ...
update-alternatives: using /usr/bin/python3-keystone to provide /usr/bin/keystone (keystone) in auto mode
Setting up python3-cinderclient (1:1.6.0-2) ...
update-alternatives: using /usr/bin/python3-cinder to provide /usr/bin/cinder (cinder) in auto mode
Setting up python3-unicodecsv (0.14.1-1) ...
Setting up python3-cliff (1.15.0-2ubuntu2) ...
Setting up python3-json-pointer (1.9-3) ...
update-alternatives: using /usr/bin/python3-jsonpointer to provide /usr/bin/jsonpointer (jsonpointer) in auto mode
Setting up python3-jsonpatch (1.19-3) ...
update-alternatives: using /usr/bin/python3-jsondiff to provide /usr/bin/jsondiff (jsondiff) in auto mode
update-alternatives: using /usr/bin/python3-jsonpatch to provide /usr/bin/jsonpatch (jsonpatch) in auto mode
Setting up python3-requestsexceptions (1.1.2-0ubuntu1) ...
Setting up python3-os-client-config (1.16.0-0ubuntu1) ...
Setting up python3-neutronclient (1:4.1.1-2) ...
update-alternatives: using /usr/bin/python3-neutron to provide /usr/bin/neutron (neutron) in auto mode
Setting up python3-novaclient (2:3.3.1-2) ...
update-alternatives: using /usr/bin/python3-nova to provide /usr/bin/nova (nova) in auto mode
Setting up python3-warlock (1.1.0-1) ...
Setting up python3-glanceclient (1:2.0.0-2ubuntu<IP_ADDRESS>) ...
update-alternatives: using /usr/bin/python3-glance to provide /usr/bin/glance (glance) in auto mode
Setting up python3-openstacksdk (0.8.1-2) ...
Setting up python3-openstackclient (2.3.0-2) ...
update-alternatives: using /usr/bin/python3-openstack to provide /usr/bin/openstack (openstack) in auto mode
Setting up python3-secretstorage (2.1.3-1) ...
Setting up openstack (<IP_ADDRESS>.04.1) ...
Exception in ev.run():
Traceback (most recent call last):
File "/usr/share/conjure-up/ubuntui/ev.py", line 83, in run
cls.loop.run()
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 278, in run
self._run()
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 376, in _run
self.event_loop.run()
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 1328, in run
raise self._exc_info0.with_traceback(self._exc_info[2])
File "/usr/lib/python3.5/asyncio/events.py", line 125, in _run
self._callback(*self._args)
File "/usr/lib/python3/dist-packages/urwid/raw_display.py", line 393, in
event_loop, callback, self.get_available_raw_input())
File "/usr/lib/python3/dist-packages/urwid/raw_display.py", line 493, in parse_input
callback(processed, processed_codes)
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 403, in _update
self.process_input(keys)
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 503, in process_input
k = self._topmost_widget.keypress(self.screen_size, k)
File "/usr/lib/python3/dist-packages/urwid/wimp.py", line 643, in keypress
return self._current_widget.keypress(size, key)
File "/usr/lib/python3/dist-packages/urwid/container.py", line 1128, in keypress
return self.body.keypress( (maxcol, remaining), key )
File "/usr/share/conjure-up/conjure/ui/views/welcome.py", line 35, in keypress
return super().keypress(size, key)
File "/usr/lib/python3/dist-packages/urwid/decoration.py", line 836, in keypress
return self._original_widget.keypress((maxcol,), key)
File "/usr/lib/python3/dist-packages/urwid/container.py", line 1587, in keypress
key = self.focus.keypress(tsize, key)
File "/usr/lib/python3/dist-packages/urwid/decoration.py", line 621, in keypress
return self._original_widget.keypress(maxvals, key)
File "/usr/lib/python3/dist-packages/urwid/container.py", line 1587, in keypress
key = self.focus.keypress(tsize, key)
File "/usr/lib/python3/dist-packages/urwid/container.py", line 2269, in keypress
key = w.keypress((mc,) + size[1:], key)
File "/usr/lib/python3/dist-packages/urwid/wimp.py", line 535, in keypress
self._emit('click')
File "/usr/lib/python3/dist-packages/urwid/widget.py", line 463, in _emit
signals.emit_signal(self, name, self, *args)
File "/usr/lib/python3/dist-packages/urwid/signals.py", line 264, in emit
result |= self._call_callback(callback, user_arg, user_args, args)
File "/usr/lib/python3/dist-packages/urwid/signals.py", line 294, in _call_callback
return bool(callback(*args_to_pass))
File "/usr/share/conjure-up/conjure/ui/views/welcome.py", line 72, in done
self.cb(result.label)
File "/usr/share/conjure-up/conjure/controllers/welcome.py", line 31, in finish
self.app.controllers['jujucontroller'].render()
File "/usr/share/conjure-up/conjure/controllers/jujucontroller.py", line 153, in render
Juju.switch(c)
File "/usr/share/conjure-up/conjure/juju.py", line 241, in switch
cls.login(True)
File "/usr/share/conjure-up/conjure/juju.py", line 96, in login
password = account['users'][current_user]['password']
TypeError: list indices must be integers or slices, not NoneType
Traceback (most recent call last):
File "/usr/bin/conjure-up", line 9, in
load_entry_point('conjure-up==0.1.2', 'console_scripts', 'conjure-up')()
File "/usr/share/conjure-up/conjure/app.py", line 222, in main
app.start()
File "/usr/share/conjure-up/conjure/app.py", line 171, in start
EventLoop.run()
File "/usr/share/conjure-up/ubuntui/ev.py", line 83, in run
cls.loop.run()
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 278, in run
self._run()
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 376, in _run
self.event_loop.run()
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 1328, in run
raise self._exc_info0.with_traceback(self._exc_info[2])
File "/usr/lib/python3.5/asyncio/events.py", line 125, in _run
self._callback(*self._args)
File "/usr/lib/python3/dist-packages/urwid/raw_display.py", line 393, in
event_loop, callback, self.get_available_raw_input())
File "/usr/lib/python3/dist-packages/urwid/raw_display.py", line 493, in parse_input
callback(processed, processed_codes)
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 403, in _update
self.process_input(keys)
File "/usr/lib/python3/dist-packages/urwid/main_loop.py", line 503, in process_input
k = self._topmost_widget.keypress(self.screen_size, k)
File "/usr/lib/python3/dist-packages/urwid/wimp.py", line 643, in keypress
return self._current_widget.keypress(size, key)
File "/usr/lib/python3/dist-packages/urwid/container.py", line 1128, in keypress
return self.body.keypress( (maxcol, remaining), key )
File "/usr/share/conjure-up/conjure/ui/views/welcome.py", line 35, in keypress
return super().keypress(size, key)
File "/usr/lib/python3/dist-packages/urwid/decoration.py", line 836, in keypress
return self._original_widget.keypress((maxcol,), key)
File "/usr/lib/python3/dist-packages/urwid/container.py", line 1587, in keypress
key = self.focus.keypress(tsize, key)
File "/usr/lib/python3/dist-packages/urwid/decoration.py", line 621, in keypress
return self._original_widget.keypress(maxvals, key)
File "/usr/lib/python3/dist-packages/urwid/container.py", line 1587, in keypress
key = self.focus.keypress(tsize, key)
File "/usr/lib/python3/dist-packages/urwid/container.py", line 2269, in keypress
key = w.keypress((mc,) + size[1:], key)
File "/usr/lib/python3/dist-packages/urwid/wimp.py", line 535, in keypress
self._emit('click')
File "/usr/lib/python3/dist-packages/urwid/widget.py", line 463, in _emit
signals.emit_signal(self, name, self, *args)
File "/usr/lib/python3/dist-packages/urwid/signals.py", line 264, in emit
result |= self._call_callback(callback, user_arg, user_args, args)
File "/usr/lib/python3/dist-packages/urwid/signals.py", line 294, in _call_callback
return bool(callback(*args_to_pass))
File "/usr/share/conjure-up/conjure/ui/views/welcome.py", line 72, in done
self.cb(result.label)
File "/usr/share/conjure-up/conjure/controllers/welcome.py", line 31, in finish
self.app.controllers['jujucontroller'].render()
File "/usr/share/conjure-up/conjure/controllers/jujucontroller.py", line 153, in render
Juju.switch(c)
File "/usr/share/conjure-up/conjure/juju.py", line 241, in switch
cls.login(True)
File "/usr/share/conjure-up/conjure/juju.py", line 96, in login
password = account['users'][current_user]['password']
TypeError: list indices must be integers or slices, not NoneType
sysadmin@cloud:~$ juju version
2.0-beta13-xenial-amd64

This is due to us following beta releases of Juju. You need to install the pre-releases now until we get to a spot where a new version can be uploaded to the archive.
See http://conjure-up.io for information on installing the prerelease, essentially:
$ sudo apt-add-repository ppa:conjure-up/next
$ sudo apt-add-repository ppa:juju/devel
$ sudo apt update
$ sudo apt install conjure-up
$ conjure-up openstack


build: fix migrate by removing @analogjs/trpc from packageGroup

Refs: #1123
PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/analogjs/analog/blob/main/CONTRIBUTING.md#-commit-message-guidelines
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[x] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

Which package are you modifying?

[x] vite-plugin-angular
[x] vite-plugin-nitro
[x] vitest-angular
[x] astro-angular
[ ] create-analog
[x] router
[x] platform
[x] content
[ ] nx-plugin
[x] trpc

What is the current behavior?
nx migrate failes with cannot find package<EMAIL_ADDRESS>Closes #1123
What is the new behavior?
nx migate works
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information
[optional] What gif best describes this PR or how it makes you feel?

Thanks! @allcontributors add @WolfSoko for infra


Add instructions for initialising submodules when building locally

Hey sorry i completely forgot about that part. Very cool that you added it!


respect hidden layers in aseprite files

Sprites can have layers marked as hidden, which can be useful for example to have contrasting background when drawing in Aseprite but it should be transparent in the game.
With this code change, atlas builder will not render those layers to the atlas.png file.

Thank you!


Retries for K8S Client

Description
Changes proposed in this pull request:

introduction of error retries in K8S client

Related issue(s)

/test pre-master-hydroform


Actors' response blocked until the interactive console is stimulated

I deployed https://github.com/threefoldfoundation/tft-stellar/tree/master/ThreeBotPackages/unlock-service in a threebot in a local container( started with j.servers.threebot.start(), then executed the following request in a different shell:
 curl -v -H "Content-Type: application/json" -d '{ "args": { "unlockhash": "TBRWRROFJZ7XITHGYCNI2TMVGSATRAUE5LY2KPBV2RIAVMXUDMTA3APV","transaction_xdr":"AAAAAOZagjJNeF2pQReStULsfSDHk6WoYTloVY7NBq8AbbgsAAAAZAAMY10AAAADAAAAAQAAAABedOIYAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAABAG24LAAAAEDPghy9Oq3+WYK0wTYnj3gyFwYqRzkDxkBWLdQAG8ykZxY+CMLBpz4tW6/M+ctInZNdVu6dzrajSC4mrlBY5uoM"  }}' "http://localhost:7000/threefoldfoundation/unlock_service/create_unlockhash_transaction"
*   Trying ::1...
* TCP_NODELAY set
* Connected to localhost (::1) port 7000 (#0)
> POST /threefoldfoundation/unlock_service/create_unlockhash_transaction HTTP/1.1
> Host: localhost:7000
> User-Agent: curl/7.64.1
> Accept: */*
> Content-Type: application/json
> Content-Length: 397
>
* upload completely sent off: 397 out of 397 bytes
< HTTP/1.1 200 OK
< Server: openresty/<IP_ADDRESS>
< Date: Thu, 23 Apr 2020 06:24:36 GMT
< Content-Type: application/json
< Content-Length: 394
< Connection: keep-alive
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Methods: GET, POST, PUT, OPTIONS, DELETE
< Access-Control-Allow-Headers: Origin, Accept, Content-Type, X-Requested-With, X-CSRF-Token
<

It was blocked until I went  to the  kosmos shell, presssed "Enter", then I immediately got the right response in the curl shell:
* Connection #0 to host localhost left intact
{"unlockhash": "TBRWRROFJZ7XITHGYCNI2TMVGSATRAUE5LY2KPBV2RIAVMXUDMTA3APV", "transaction_xdr": "AAAAAOZagjJNeF2pQReStULsfSDHk6WoYTloVY7NBq8AbbgsAAAAZAAMY10AAAADAAAAAQAAAABedOIYAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAABAG24LAAAAEDPghy9Oq3+WYK0wTYnj3gyFwYqRzkDxkBWLdQAG8ykZxY+CMLBpz4tW6/M+ctInZNdVu6dzrajSC4mrlBY5uoM", "id": 1}* Closing connection 0

from the chat:
can you try passing with_shell=False
kosmos -p 'j.servers.threebot.start(with_shell=False)'

using this and then from another kosmos:
j.tools.threebot_packages.threefoldfoundation__unlock_service.start() did the trick

can't reproduce now

using container shell

Started the server using 3bot start

Added the package from admin dashboard

tried the curl command


Add alternative way to install kubectl

Hi,
I've added an alternative way to install kubectl for homebrew users. With homebrew it's a little bit easier to install and keep kubectl up to date.

I signed it!

@FuriKuri What release of kubectl does homebrew install?
Right now, we strongly recommend that the release of kubectl match the release of the K8s cluster. How would homebrew allow them to be kept in sync?
cc @kubernetes/kubectl

The current version, which homebrew will install, is v1.3.7.
To my knowledge, it's necessary to create a pull request to the homebrew-core repository, to update the version of a formula. So homebrew depends on PR from the community.

Personally I like the homebrew installation way, but I worry about how we can keep in sync.

Yeah, I understand the convenience that brew adds for Mac users but I don't think we should explicitly promote it in our guides, unless we decide to officially maintain it (not the case currently AFAIK).
https://github.com/Homebrew/homebrew-core/blob/master/Formula/kubernetes-cli.rb

Yeah, consider we will not officially maintain it as for now, no need to explicitly promote it in our user guides.

Should this PR be closed then?

Should this PR be closed then?

Yes, anyway thanks @FuriKuri!

FYI there is a discussion about mentioning brew install in a more comprehensive kubectl install guide here:
https://github.com/kubernetes/kubernetes.github.io/pull/1508#issuecomment-255497615

Closing this pull request per the discussion.


What is the maximum number products an API Management instance may have?

The section https://docs.microsoft.com/en-us/azure/azure-resource-manager/management/azure-subscription-service-limits#api-management-limits does not state what is the maximum number of products an API Management instance may have.
I did find this thread, https://social.msdn.microsoft.com/Forums/en-US/29a11782-1f89-47bc-a71c-0a39f47db686/maximum-number-of-products?forum=azureapimgmt where it says it is unlimited, but I would like a more official answer.

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

ID: 36f49a06-90b1-cbe1-3853-2c38277b79f8
Version Independent ID: 02ff6f6c-3ef6-b48f-060d-b290419e0aba
Content: Azure subscription limits and quotas - Azure Resource Manager
Content Source: articles/azure-resource-manager/management/azure-subscription-service-limits.md
Service: azure-resource-manager
Sub-service: management
GitHub Login: @tfitzmac
Microsoft Alias: tomfitz

@vladvino - can you confirm that there are no limits on the number of products that can be created in an API Management instance?

@dlepow - do you know if there is a limit on the number of products in an API Management instance?

I got an answer from @vladvino that "If it's not on the list, there is no imposed limit." so closing this.


fix(tree-view): remove duplicate aria roll from treenode

Signed-off-by: Scott Mathis<EMAIL_ADDRESS>PR Checklist
Please check if your PR fulfills the following requirements:

[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)
[ ] If applicable, have a visual design approval

PR Type
What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] clarity.design website / infrastructure changes
[ ] Other... Please describe:

What is the current behavior?

Issue Number: ..from a11y list
What is the new behavior?
The aria role now only exists on the tree-node's focusable content container. Previously, both the content container of the tree item and its parent angular component had the same role. This was a problem for the a11y team's automated tests.
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information

This is a fix that can be backported.


Hydration error upon wrapper not rendering children (e.g. when wrapper returns null)

Describe the bug
Rendering this with SSR:
function Page() {
  return (
    <>

        Hello

    </>
  );
}

function Head({ children }) {
  return null
}

Leads to an hydration error:
renderPageClientSide.js?v=893d3cd7:200 Error: Hydration Mismatch. Unable to find DOM nodes for hydration key: 000021030
    at getNextElement (chunk-JDADEQKQ.js?v=893d3cd7:361:37)
    at get children (+Page.tsx:15:12)
    at Head2 (+Page.tsx:22:17)
    at @solid-refresh:25:42
    at untrack (chunk-MLLIFDXK.js?v=893d3cd7:442:12)
    at HMRComp.createMemo.name [as fn] (@solid-refresh:25:28)
    at runComputation (chunk-MLLIFDXK.js?v=893d3cd7:712:22)
    at updateComputation (chunk-MLLIFDXK.js?v=893d3cd7:695:3)
    at createMemo (chunk-MLLIFDXK.js?v=893d3cd7:257:10)
    at [solid-refresh]Head (@solid-refresh:22:20)

Your Example Website or App
https://github.com/brillout/solid-bug-wrapper-children-skip
Steps to Reproduce the Bug or Issue
https://github.com/brillout/solid-bug-wrapper-children-skip#readme
Expected behavior
No hydration error.
Screenshots or Videos
No response
Platform

OS: Linux
Browser: Chrome
Version:  1.8.19

Additional context
We're trying to implement a  component for vike-solid.

Like vike-react's  component: https://vike.dev/useConfig#config-head
Similarly to Next.js's  component: https://nextjs.org/docs/pages/api-reference/components/head

The problem here is eagerly rendering the children and then not inserting them which messes with id creation matching. I understand that this is a simplified execution but often these cases are masking something else that is undesirable to do anyway like creating children multiple times etc..
Related issue: https://github.com/solidjs/solid/issues/1977
Comment: https://github.com/solidjs/solid/issues/1977#issuecomment-1881539822

I'm interested in people's opinion on this is. There are options. But you understand the reason it can't hydrate is it can't find nodes that it is creating at that point because they weren't in the DOM. It means they were created unnecessarily on the server and we have no choice but to create them again in the browser since they don't exist.
The challenge might be that there is no way to differentiate this from any other sort of hydration error. At the point of creation, it isn't possible to know that this is because you don't intend to insert these nodes or that something else has gone wrong. So the only way to make this case pass is to not complain on any hydration error and just yolo it. That seems dangerous and even harder to debug.

eagerly rendering the children

I see.

I'm interested in people's opinion on this is.

I don't much about Solid internals, so I ain't sure. But, in principle, if the wrapper synchronously returns null then Solid could interpret this as "ignore children". Although, if the hydration error is currently shown synchronously, this would require the hydration error to be shown asynchronously in the next tick.

A user-land workaround is to use <Show>: https://github.com/vikejs/vike-solid/pull/104/commits/3d01dc7001c1fd2ef9b364a509966cbf1b04a00a. Although it's a bit of a bummer as it requires the user to always wrap  with <Show>.
Any ideas for a workaround that would enable the user to simply write the following?
import { Head } from 'vike-solid/Head'

function Movies() {
  // Fetch data
  const data = useSomeDataFetchingTool()

  // Render UI and  tags
  return (

      <meta property="og:image" content={data.previewImage} />

{
      data.movies.map(({ title }) => (

{title}

      ))
    }

  )
}

But, in principle, if the wrapper synchronously returns null then Solid could interpret this as "ignore children". Although, if the hydration error is currently shown synchronously, this would require the hydration error to be shown asynchronously in the next tick.

Yeah that's too late unfortunately.. the problem is this destructuring renders the children:
function Head({ children }) {}

Before we even get a null return or anything. There is no VDOM with Solid so like you use props.children.. well you've rendered children.
Ideally the Head component would just not render anything inline ever. I'm gathering that stuff gets inserted in the head. I think though hydration Id's would still get messed up here because of the sequencing. We handle Asset rendering a little differently in @solidjs/meta it relies on useAssets which pull things outside of this whole loop.
With streaming this whole topic in general is a pain to deal with for anyone and I think should eventually be handled by the core render libraries themselves. Like something you'd import from solid-js/web. We've been making do with our meta library so far but it took some doing. I intend to introduce core primitives to make handling automatic.

Indeed, removing the destructuring solves the issue.

We handle Asset rendering a little differently in @solidjs/meta it relies on useAssets which pull things outside of this whole loop. With streaming this whole topic in general is a pain to deal with for anyone and I think should eventually be handled by the core render libraries themselves. Like something you'd import from solid-js/web. We've been making do with our meta library so far but it took some doing. I intend to introduce core primitives to make handling automatic.

Sounds good!


Size error with sharded Mixtral and quantization

System Info
AWS g5.12xlarge with 4x A10s. Details of environment would be specified in docker image.
Information

[X] Docker
[ ] The CLI directly

Tasks

[X] An officially supported command
[ ] My own modifications

Reproduction
Using TGI latest (4cb7c8ab86a48d5445ba2237044a3855d989d94d77224dd4d80bc469f962d2ca) on EC2 with a g5.12xlarge. This image was published 2 days ago so I assume includes all hotfixes up to and including 1.3.3. Command is as follows:
docker run --gpus all --shm-size 1g -p 8080:80 -v /opt/dlami/nvme/data ghcr.io/huggingface/text-generation-inference:latest --model-id TheBloke/Mixtral-8x7B-Instruct-v0.1-GPTQ --sharded true --num-shard 4 --quantize gptq
Command looks standard, with the additional volume mounted on the nvme, and enabling sharding.
Expected behavior
I get an error to do with world size.
2023-12-17T06:28:28.002180Z  WARN text_generation_launcher: Disabling exllama v2 and using v1 instead because there are issues when sharding
2023-12-17T06:28:30.812512Z  INFO text_generation_launcher: Using exllama kernels v1
2023-12-17T06:28:30.816449Z ERROR text_generation_launcher: Error when initializing model
...
    self.model = MixtralModel(config, weights)
  File "/opt/conda/lib/python3.10/site-packages/text_generation_server/models/custom_modeling/flash_mixtral_modeling.py", line 749, in __init__
    [
  File "/opt/conda/lib/python3.10/site-packages/text_generation_server/models/custom_modeling/flash_mixtral_modeling.py", line 750, in <listcomp>
    MixtralLayer(
  File "/opt/conda/lib/python3.10/site-packages/text_generation_server/models/custom_modeling/flash_mixtral_modeling.py", line 684, in __init__
    self.self_attn = MixtralAttention(
  File "/opt/conda/lib/python3.10/site-packages/text_generation_server/models/custom_modeling/flash_mixtral_modeling.py", line 226, in __init__
    self.o_proj = TensorParallelRowLinear.load(
  File "/opt/conda/lib/python3.10/site-packages/text_generation_server/utils/layers.py", line 478, in load
    weight = weights.get_multi_weights_row(prefix, quantize=config.quantize)
  File "/opt/conda/lib/python3.10/site-packages/text_generation_server/utils/weights.py", line 285, in get_multi_weights_row
    qzeros = self.get_sharded(f"{prefix}.qzeros", dim=0)
  File "/opt/conda/lib/python3.10/site-packages/text_generation_server/utils/weights.py", line 118, in get_sharded
    size % world_size == 0
AssertionError: The choosen size 1 is not compatible with sharding on 4 shards

That's not the full traceback, but I think the important points.
I didn't get much from looking at this, but one thing of note is that TGI immediately abandons attempts to use exllama v2 kernels, no reason is given as to why, and falls back to v1.

Pumping to remove stale, since AFAIK this isn't fixed yet and no PR has linked it.

the same issue when I run c4ai-command-r-v01-4bit


getting new intermittent connection timed out errors with AWS cloud

STDERR:
2018-05-15 10:27:30,568 6d120d50 MainThread aws_dynamodb_ycsb(1/1) pkb.py:791 ERROR    Exception running benchmark
Traceback (most recent call last):
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/pkb.py", line 789, in RunBenchmarkTask
RunBenchmark(spec, collector)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/pkb.py", line 651, in RunBenchmark
DoPreparePhase(spec, detailed_timer)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/pkb.py", line 501, in DoPreparePhase
spec.BenchmarkPrepare(spec)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/linux_benchmarks/aws_dynamodb_ycsb_benchmark.py", line 111, in Prepare
vm_util.RunThreaded(_Install, vms)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/background_tasks.py", line 624, in RunThreaded
max_concurrency=max_concurrent_threads)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/background_tasks.py", line 568, in RunParallelThreads
errors.VmUtil.ThreadException)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/background_tasks.py", line 543, in _RunParallelTasks
'{0}{1}'.format(os.linesep, os.linesep.join(error_strings)))
ThreadException: The following exceptions occurred during parallel execution:
Exception occurred while calling _Install(<IP_ADDRESS>):
Traceback (most recent call last):
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/background_tasks.py", line 235, in Run
self.return_value = self.target(*self.args, **self.kwargs)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/linux_benchmarks/aws_dynamodb_ycsb_benchmark.py", line 153, in _Install
vm.RemoteCopy(FLAGS.aws_dynamodb_ycsb_awscredentials_properties, AWS_CREDENTIAL_DIR)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/linux_virtual_machine.py", line 509, in RemoteCopy
self.RemoteHostCopy(file_path, remote_path, copy_to)
File "/usr/local/google/home/flint/Documents/test/PerfKitBenchmarker/perfkitbenchmarker/linux_virtual_machine.py", line 547, in RemoteHostCopy
raise errors.VirtualMachine.RemoteCommandError(error_text)
RemoteCommandError: Got non-zero return code (1) executing scp -P 22 -pr -2 -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o IdentitiesOnly=yes -o PreferredAuthentications=publickey -o PasswordAuthentication=no -o ConnectTimeout=30 -o GSSAPIAuthentication=no -o ServerAliveInterval=30 -o ServerAliveCountMax=10 -i /tmp/perfkitbenchmarker/runs/6d120d50/perfkitbenchmarker_keyfile ./AWSCredentials.properties ubuntu@<IP_ADDRESS>:/tmp/AWSCredentials.properties
STDOUT: STDERR: ssh: connect to host <IP_ADDRESS> port 22: Connection timed out
lost connection
This was working before fine, something change on AWS side?

this may being caused by connection issues with github from aws trying to download ycsb.

looks like this isn't a pkb issue, but a aws/github connection issue, ill close it.


contracts: implement HMAC SHA512-256, as it's used throughout the Oasis ecosystem

I forgot to run format on the code after adding comments.
For clarity, which style do you prefer:
diff --git a/contracts/contracts/HMAC_sha512_256.sol b/contracts/contracts/HMAC_sha512_256.sol
index 119f907..06becfc 100644
--- a/contracts/contracts/HMAC_sha512_256.sol
+++ b/contracts/contracts/HMAC_sha512_256.sol
@@ -51,12 +51,12 @@ function HMAC_sha512_256(bytes memory key, bytes memory message)
             let size := mload(key)
             // Call the identity precompile to copy memory
             success := staticcall(
-                gas(),           // Forward all available gas
-                PRECOMPILE_IDENTITY_ADDRESS,  // Address of the identity precompile
-                add(32, key),    // Start of the key data (skip the length prefix)
-                size,            // Length of data to copy
-                buf,             // Destination to copy to
-                size             // Amount of memory to copy
+                gas(), // Forward all available gas
+                PRECOMPILE_IDENTITY_ADDRESS, // Address of the identity precompile
+                add(32, key), // Start of the key data (skip the length prefix)
+                size, // Length of data to copy
+                buf, // Destination to copy to
+                size // Amount of memory to copy
             )
         }

The auth tests are still causing intermittent failures

Auth tests are still intermittently failing

SIWE auth tests are still intermittently failing

I think I found the issue https://github.com/oasisprotocol/sapphire-paratime/issues/443. Will fix it


Simplify Promise nesting

If you need to keep past promise results in scope, you can just nest.   There's no need for creating and de-structuring objects.  This makes the code look more complex than it would be in callbacks, when in reality the pyramid approach of callbacks works just as well if you accept small amounts of promise nesting.
Promises are about fixing error propagation and zalgo, not fixing the pyramid of doom.  The pyramid of doom is almost never a real/significant problem, so we should just accept it existing here.

The diff is a lot clearer if you ignore whitespace: https://github.com/reactjs/redux/pull/2007/files?w=1

Thanks!


KataGo-raw does not point to valid commit atm

I'm having trouble figuring out what commit 42892e for KataGo-raw is — navigating to https://github.com/HumanCompatibleAI/KataGo-custom/tree/42892ea19b4256803ba7a0ff18d1096a84d11fe6 gives me a 404
Originally posted by @tomtseng in https://github.com/HumanCompatibleAI/go_attack/issues/60#issuecomment-1312361371

fixed, needed to pull the latest upstream changes from lightvector/KataGo into a branch in HumanCompatibleAI/KataGo-custom


Pulling a few more active maintainers?

Just curious if this repository is going to be actively maintained going forward, since it's gone somewhat stagnant. We definitely appreciate having this utility around (big quality of life improvement when using Python and gRPC/protobuf).
Wondering whether we should either (a.) invite in a few more active maintainers for this repo (i.e., to help review/merge PR's, etc.) or (b.) fork it and move on.

Hi, sorry about the silence here. I just went through the PR backlog and reviewed/merged them. The other 2 maintainers are currently on vacation, but I think we are interested in community pull requests.  I also think it would be awesome if more maintainers want to step up, though I'm not too sure if we can add outside maintainers to a project on company github. We can check on this internally and get back to you.

Thanks for the kind words.
I'll look into whether additional maintainers could work w/ the Dropbox github org.
In the meantime between guido, dzbarsky, and I, we should be able to go through the PRs.

FWIW, maintenance cost will certainly go down once #22 is complete which should accelerate things.


Edit the install instructions

Addresses #192.
Minor edits to text and formatting.
We probably still need to specify where to save the yaml files. Folks will likely need more info on getting the json file, but we'll see.

ty!


Dependency resolution errors

I am unable to reach download the twitter-finagle dependency and am getting the following error:
[error] Server access Error: Connection timed out url=http://maven.websudos.co.uk/ext-release-local/com/twitter/finagle-zookeeper_2.11/6.24.0/finagle-zookeeper_2.11-6.24.0.pom

Hi @melodious,
Please read the README as Maven Websudos is no longer available. All our artefacts are now available via Bintray.
Regards.

Thanks for the quick reply. I missed that since the websudos is still listed under the section "Integrating phantom in your project"


mock_sqs's create_queue is missing "sqs" in its url

Hi,
I'm trying to use the moto library to mock sqs functionality to write test cases for code that uses the sqs features. What I have noticed is that the create_queue method of the sqs client is creating the wrong url. Below is a sample code that can be used to reproduce the issue:
import boto3
from moto import mock_sqs

@mock_sqs
def create_sqs_url():
    sqs_client = boto3.client(
        "sqs",
        region_name = "me-south-1"
    )

    queue_instance = sqs_client.create_queue(QueueName='test-queue')
    print(f"queue_instance: {queue_instance}")
    queue_url = queue_instance["QueueUrl"]
    print(f"queue_url : {queue_url}")

create_sqs_url()

Version of libraries used are as follows:
Package            Version
------------------ ---------
boto3              1.20.31
botocore           1.23.54
certifi            2023.7.22
cffi               1.16.0
charset-normalizer 3.3.0
cryptography       41.0.4
idna               3.4
Jinja2             3.1.2
jmespath           0.10.0
MarkupSafe         2.1.3
moto               4.2.5
pip                23.2.1
pycparser          2.21
python-dateutil    2.8.2
PyYAML             6.0.1
requests           2.31.0
responses          0.23.3
s3transfer         0.5.2
setuptools         68.2.2
six                1.16.0
types-PyYAML       <IP_ADDRESS>
urllib3            1.26.17
Werkzeug           3.0.0
wheel              0.41.2
xmltodict          0.13.0

Python version used here is 3.8 ( Using anaconda environment on Ubuntu 22.04.3 MATE 1.26.0)
Received output
queue_instance: {'QueueUrl': 'https://me-south-1.queue.amazonaws.com/123456789012/test-queue', 'ResponseMetadata': {'RequestId': 'RKDFh79QCjWDyM0B5WkMsQK2RpTBqiFjJChA0WUOqOXv9JUC5HJa', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'amazon.com', 'date': 'Fri, 13 Oct 2023 17:09:40 GMT', 'x-amzn-requestid': 'RKDFh79QCjWDyM0B5WkMsQK2RpTBqiFjJChA0WUOqOXv9JUC5HJa', 'x-amz-crc32': '2313260786'}, 'RetryAttempts': 0}}
queue_url : https://me-south-1.queue.amazonaws.com/123456789012/test-queue

Expected
queue_url should start with https://sqs.
I just wanted to know if this is intended or is there something wrong in my code or the wrong libraries are being used with the moto library.

Hi @Lemorra, that behaviour is dependent on which version of botocore/boto3 you use. If you upgrade both to the most recent version, it will show https://sqs.me-south-.....`.
Note that this is not dependent on Moto - we just intercept everything that's send to *.queue.amazonaws.com, and mirror whatever URL botocore uses. It looks like that botocore has changed the URL endpoint at some point.

Hi @bblommers, apologies for the late reply. Yes, after upgrading I'm able to get the proper url. Thanks!


Evaluation result with officially released weights.

Thanks a lot for your excellent job. I wonder how you evaluate the trained model, do you use ./scripts/more/eval/pope.sh, which uses llava.eval.model_vqa_loader for evaluation (seems no modification from llava1.5). However, I downloaded your released model weight (LLaVA_MORE-llama_3_1-8B-finetuning) and do evaluation, but find extremely low results for textvqa (only 38.66%) and gqa (52.39%). Is there something wrong with the evaluation? Thanks a lot for your help.

Hi @YuchenLiu98, thank you once again for your interest in our LLaVA-MORE project.
For evaluation purposes, we use the lmms-eval library (https://github.com/EvolvingLMMs-Lab/lmms-eval), in which we integrate our models.
Regarding the results on Text-VQA, please note that the results shown in our table are calculated by considering the OCR tokens as part of the input prompt.
https://github.com/EvolvingLMMs-Lab/lmms-eval/issues/6


does this work with version 6.2? and how do i get the exe?

does this work with version 6.2? and how do i get the exe?

This PoC is only tested on version 7.2, to get the exe you compile the code using Visual Studio.


Generate Caption  on my own boxes

hello.Could you please tell me how to use 'demo.py' to generate captions on boxes I give to it? I don't need it to do object detection.

Hi @guoyanan1g , you can check this fork: https://github.com/xk-huang/Promptable-GRiT


pinColor not true for IOS devices

Bug
I set marker's pinColor = '#b5faff' but it shown '#45878c' in ios devices.
On Android, it worked fine.

This still seems to be an issue this can be seen in this example snack. It is the result of using PROVIDER_GOOGLE. I'm guessing the problem starts somewhere in AirGoogleMaps when passing these values.


Attaching to the global object

In certain cases, not all, it's best to be explicit when passing arguments to the IIFE.
        return support;
    };

})(this); // Best to be explicit and use window instead

Makes sense, fixed.


Fix #12793: Add support for Cohere Embedding V3

**Description:**Fix issue #12793. Reference.

Added new mandatory parameter input_type

Dependencies: None

Thanks @ashish-dahal for the contribution! I had merged https://github.com/langchain-ai/langchain/pull/12940 already which resolves this issue, nonetheless your work is very much appreciated!


fix: Prompt variable reads unprocessed spaces on both sides

Before:

Now:

Nice fix.  Thank you!


Unable to dump recording in Java format

I'm using ClientAndProxy.startClientAndProxy(18080).dumpToLogAsJava(), but I have also tried other approaches, e.g. https://stackoverflow.com/questions/37685731/
Even though I see this in the log:
2016-06-08 12:18:59.075 [MockServer HttpProxy Thread] INFO  o.m.p.h.HttpProxy:82 - MockServer proxy started on port: 18080
2016-06-08 12:18:59.078 [MockServer HttpProxy Thread] DEBUG o.m.c.ConfigurationProperties:211 - Property file not found on classpath using path [mockserver.properties]
2016-06-08 12:18:59.078 [MockServer HttpProxy Thread] DEBUG o.m.c.ConfigurationProperties:215 - Property file not found using path [mockserver.properties]
2016-06-08 12:18:59.095 [main] DEBUG o.m.c.n.NettyHttpClient:34 - Sending request: {
  "method" : "PUT",
  "path" : "/dumpToLog?type=java"
}

The records are still formatted as json:
2016-06-08 12:19:02.319 [nioEventLoopGroup-3-2] INFO  o.m.p.h.HttpProxyHandler:32 - returning response:

        {
          "statusCode" : 200,
          "headers" : [ {
            "name" : "Server",
            "values" : [ "Jetty(9.3.0.v20150612)" ]
          }, {
            "name" : "Content-Length",
            "values" : [ "174" ]
          }, {
            "name" : "Date",
            "values" : [ "Wed, 08 Jun 2016 10:19:02 GMT" ]
          }, {
            "name" : "Content-Type",
            "values" : [ "application/json" ]
          } ],
          "body" : "{\"fsitems\":[],\"next\":null,\"about\":\"http://localhost:8080/sources/f7ba0eb2-d372-4257-8624-e1cee0522a05/searches/e8ec24bf-5101-496e-9258-3d491b48ad53/results?next=0&limit=100\"}"
        }

 for request as json:

        {
          "method" : "GET",
          "path" : "/sources/f7ba0eb2-d372-4257-8624-e1cee0522a05/searches/e8ec24bf-5101-496e-9258-3d491b48ad53/results",
          "headers" : [ {
            "name" : "accept-encoding",
            "values" : [ "gzip" ]
          }, {
            "name" : "user-agent",
            "values" : [ "unirest-java/1.3.11" ]
          }, {
            "name" : "Host",
            "values" : [ "localhost:8080" ]
          }, {
            "name" : "Content-Length",
            "values" : [ "0" ]
          } ],
          "keepAlive" : true,
          "secure" : false
        }

 as curl:

        curl -v 'http://localhost:8080/sources/f7ba0eb2-d372-4257-8624-e1cee0522a05/searches/e8ec24bf-5101-496e-9258-3d491b48ad53/results' -H 'accept-encoding: gzip' --compress -H 'user-agent: unirest-java/1.3.11' -H 'Host: localhost:8080' -H 'Content-Length: 0'

Solved (I think) http://stackoverflow.com/a/37701108/1237617 but you might want to update your documentation as it took me 2 days to figure it out.


fix(artifacts): fix copypasta fail for run hint inference

The checks for PowerShell and sh were swapped around which resulted in generated sites recommending irm for shell scripts and curl for PowerShell ones :D
No tests failed post this change so I guess there is no coverage, I can add a test if someone can point to where it should go.

Rebased to pull in https://github.com/axodotdev/oranda/pull/451 for green checks

Weirdly, I'd expect https://opensource.axo.dev/oranda/ to be broken by this bug, but it seems to show the correct instructions:

@msfjarvis does this happen on any of your pages? just trying to get an overview of when exactly this breaks

@msfjarvis does this happen on any of your pages? just trying to get an overview of when exactly this breaks

It does. The repository is here, and the deployed page can be found here.


Decryption of SHA-512 iterations

Dear Sir,
I could not understand how to decrypt following hash; could you please help me to learn the decryption for your AES-Killer  software. As bellow information collect from gurnec/btcrecover - GitHub.
Partial Bitcoin Core encrypted master key, salt, iter_count, and crc in base64:
Wallet difficulty: 191,354 SHA-512 iterations
YmM6b+q1Ayn54BVFdreDdkg/4LoNdYiRbzuQLundXcJL7w4b2m7KUXzCFdU7AQBlRG0B | base64 -d

Hi @ashraful1980
I am afraid that AES Killer can't help you in this regard.


update tutorial for adding new property

Hello,
landscape label: both
Sprint Label: SCPTest-2008A
Scenario Label: SCPTest-fabap
Scenario URL:
https://developers.sap.com/tutorials/cp-portal-cloud-foundry-gateway-connection.html#a48dd50f-47cb-481c-a796-e00dd6fd1255
Step 2.5: Enter the following Additional Properties depending on your scenario. Click the New Property button each time to add a new property.
while adding new properties in the destination, "sap-platform" will not be there in the list. user needs to manually add this.
Solution: Mention in the tutorial like for the others which are not available and needs to be added manually (Like HTML5.DynamicDestination  (enter this property manually as it is not available in the dropdown list)
please refer to the attchment:

Thanks,
Shubham

@LindsayBert  Hi Lindsay - can you add this comment to the tutorial?
Thanks
Iris

Updated

Thank you for your feedback. The issue seems to be resolved, so I am closing the issue.
If you still have questions, feel free to reopen the issue.


Demo Error Problem

When I click the https://huggingface.co/spaces/haotiz/glip-zeroshot-demo, I met with the built error problem.

Same here