[Bug]: Incorrect definition for ManagedServiceIdentityType

Describe the bug
Bug behavior
Current ManagedServiceIdentityType's SystemAndUserAssigned is defined as: https://github.com/Azure/typespec-azure/blob/c76a9c190ec5753627e56365dce8dd0ca53486f3/packages/typespec-azure-resource-manager/lib/common-types/managed-identity.tsp#L72-L85
Take V3 for example, enum member name we get from compiler is SystemAndUserAssignedV3. See generated SDK: https://github.com/microsoft/typespec/pull/4315/files/b0cfe2976511dc7603f8dc1a08226cdcdbde17f1..094fc884697aa3884e1e8ce01e6c553382a4d16a#r1741451408
Playground
Expected behavior
enum member name should be SystemAndUserAssigned across all versions(V3, V4, V5, etc.).
Fix using @tadelesh 's approach:
Playground
I tried @clientName, and blocked by duplicate enum name, though effectively they won't coexist in a given version:
union DogKind {
  string,

  Golden: "golden_dog",

  @added(Versions.v2023_11_01)
  @removed(Versions.v2023_12_01_preview)
  @clientName("Bull")
  Bull1: "bull_dog",

  @added(Versions.v2023_12_01_preview)
  @clientName("Bull")
  Bull2: "bull_dog",
}

error:  @azure-tools/typespec-client-generator-core/duplicate-client-name: Client name: "Bull" is duplicated in language scope: "AllScopes"
Reproduction
typespec-autorest seems to suffer the same issue, see https://github.com/microsoft/typespec/pull/4315#discussion_r1741514879
Checklist

[X] Follow our Code of Conduct
[X] Check that this issue is about the Azure libraries for typespec. For bug in the typespec language or core libraries file it in the TypeSpec repo
[X] Check that there isn't already an issue that request the same bug to avoid creating a duplicate.
[X] The provided reproduction is a minimal reproducible example of the bug.

How are you obtaining the name from the compiler?  You must project the program into the appropriate version for the versioning decorators to take effect.

How are you obtaining the name from the compiler? You must project the program into the appropriate version for the versioning decorators to take effect and the name to be changed.

I'm getting it from TCGC, which I believe is using the projected program.
Here's a result from Playground, which also has the same issue.


AWS Deployment and Bedrock Support

Is your feature request related to a problem? Please describe.
Can we have support to deploy this into AWS and use Bedrock with Claude in addition to OpenAI and Anthropic? Similar to the https://github.com/aws-samples/bedrock-claude-chat?tab=readme-ov-file#-super-easy-deployment
Describe the solution you'd like
Provide step by step guide on who to host this on AWS using Bedrock with Claude, similar to the instructions at: https://github.com/aws-samples/bedrock-claude-chat?tab=readme-ov-file#-super-easy-deployment

+1 for this!


What do you think about Rancher Longhorn distributed block storage solution?

Hi,
I didn't see Rancher Longhorn in Distributed block storage solution list. Do you think that Longhorn can be an alternative to portworx?
Best regards,
Stéphane

Portworx works well enough for the time being, but it is proprietary software. Any potential alternative should match the following criteria besides being reliable:

Dynamic volume provisioning using a PersistentVolumeClaim
Deployment as a DaemonSet (no configuration/scripts outside of the manifest)
Painless operations (preferably running within a single pod)
Open source or a proprietary solution better than the current one

Longhorn could indeed be an alternative if they integrate better with Kubernetes.

I'm currently evaluating Rook, means it's running on my cluster for a couple of weeks. So far so good! Discussions going on here: https://github.com/hobby-kube/manifests/pull/1
As soon as I find the time, I'm most likely going to update the guide to recommend using Rook. Mostly because it's an open source solution, offers straight forward setup and seems pretty robust.


Problem with some Continental A2L

Hi there,
i do have some issues when trying to convert a Continental A2L to json.
I've created a paste to show the output. Of course i can supply you with that A2L, but i'd love to do that on a direct way.
Maybe you can take a look at it. INCA does take that A2L without any error.
https://pastebin.com/yYUEVzUg

It looks like the identifier of an element contains a round bracket ')', ')' which is - at least according to the 1.6 standard - not allowed.
To be sure and maybe fix some other issues it would be great to see the A2L file. Can you send it to me?
andreas aaatttt lord-luncher.de
I want the parser to be also usefull to identify wrong A2L file, so I would not just allow round brackets. But it should be fine if I add the round brackets plus adding a warning when round brackets are contained in the identifier.But first we should check if my guess is right and round brakcets are actually the problem :-D

Yeah, very strange.. Maybe we can fix that issue. I've send you an E-Mail with that A2L :)

So I checked your file and I was right: The A2L file contains identifiers with round brackets.
Not only that but some identifiers even contain '#'
IDENTIFIER :
	[a-zA-Z_][a-zA-Z0-9_\-#]*
	(('[' [a-zA-Z0-9_#]+ ']') | ('(' [a-zA-Z0-9_#]+ ')'))*
	([_.] [a-zA-Z0-9_\-#]*
		(('[' [a-zA-Z0-9_#]+ ']') | ('(' [a-zA-Z0-9_#]+ ')'))*
	)*;

This is now the new identifier specification I came up with but I still need to implement a warning which ready in the file you sent me.
Next step is to write a check and a warning if there is a round bracket or a # in the identifier.

Great! Thanks for your time. Looking forward to a new release with a fix for that.

Fixed and released with release 2.6.3

Thank you!
Is that just a warning or does the parser ignore that?
Line 1694943@12: The identifier contains an invalid character '(',')','#': AIRM_Port_flap_power_stage_diagnosis_(Appl__Inc_)


new map

I want to suggest using a relief map of the seabed. A "flat" biome map, in my opinion, is not at all interesting.
I converted the file ...\Subnautica\AssetBundles\lod3worldmeshes, which contains model of octets with a size of 160 m with a resolution of 4 m. After removing unnecessary and erroneous octets and merging them into one, it is possible to create a height map. Below are examples of ready-made maps.
Top view, applied filter Ambient Occlusion (can be combined with a biome map for the effect of relief):

And here the coloring of each point is added depending on its height:

But since the game is extremely "vertical", one card is not enough for orienting by the height (depth). Here we can use the "side view":

Or even something like X-ray:

If you are interested, you can suggest changing the colors in the depth gradient or specifying the desired size of the map (or tiles). I hope that this will be useful.

I agree. The perfect map would actually be entirely 3D, but that's beyond my skill set.
I solve this issue by having multiple "layers" that switch automatically. So when you enter the ILZ or the lost river, or the shroom caves then you get a different map, specific to that zone/area.
I'm not sure the other maps would add all that much, although the X-Ray map might be interesting to add as an alternative. It looks out of data though, the east entrance to the Lost River isn't shaped like that anymore.

Out of data? LOD3 used in Seaglide's radar and Scanner Room, if the source (AssetBundles) is no longer relevant, then on the radar in the game will be displayed incorrect data.
By the way, what do you compare with? If with the image lost-river-polygon.png, how and from what it was generated?

Meant out of date.
I created the maps I use (other than the all biome one) by actually travelling around the area and recording my route, then drawing it based on those points and the biome reported for each. Not brilliant, but fairly accurate.

Yes you are right. Some entrances to underwater caves are really closed or moved to other places. It turns out that the "source" used by me is completely irrelevant.
I'll try to process the LOD level higher. Still, with ready 3D models (meshes) it's easier to work than to reconstruct the game world from octets ;)

How did you render them, is the code available somewhere?

extract all meshes from ...\Subnautica\AssetBundles\lod3worldmeshes with AssetsBundleExtractor 2.2beta1 (or any Unity model converter can be used)
load these models into Meshlab, remove unnecessary (bottom at the level of three kilometers, side "walls"), clean (combine vertices, fix a bunch of irregular surfaces).
in Meshlab can be visualized AO and beautiful X-Ray shader, but to build a depth map I used CloudCompare v2.10.alpha
Unfortunately, ready-made models of the world are too big so that I can share them somewhere.

Wow this is incredibly neat! You should consider joining our modding discord! We'd love to have you. https://discord.gg/9MfKs2s
I've been making something sort of related that involves extracting the octree data from the compiled batch data and generating a 3d mesh using my implementation of a dual contouring algorithm with a catmull clark subdivision pass, which I guess could then be exported like this. I'd love to talk more about the specifics on the discord.

What could be really cool if to take a framework like threejs or just plain webgl and get an x-ray view of where you are.

updated maps:

Used lod4worldmeshes and now everything looks much better (except for the area under the "Aurora"). I also tried to apply an array of points from /subnautica-map/data-source/*.json, мatches wherever possible:

If somewhere to get the biome boundaries for each (or necessary) voxel/octet, then in addition to the depth, the map is also automatically colored according to the type of biome. If the developers again dig out new caves and tunnels, I'm afraid to imagine how long it takes to manually re-navigate along the borders. And this is if after an early release there will be a debug-console and the opportunity to be injected into the game code.

I've taken the existing images and overlayed them with the ones provided by @hhrhhr .  I've also added labels to the maps as I felt that was very needed.  You can see them here.  @hhrhhr didn't upload a topography of the other layers but if he can I'd be happy to add them in.

Hey. Can I use your maps in my mod?
https://www.nexusmods.com/subnautica/mods/12

@newman55 fine with me but I used @hhrhhr topology stuff to make it so I'd recommend getting his approval as well.

Hi, I was wondering if anyone knows where I can find the lod3worldmeshes file, it doesn't seem to be located in the AssetBundles folder anymore and when I search for the file windows returns 0 results, did the subnautica devs remove the file or something? if so is there a different file I can use or could someone send me the lod3worldmeshes file?
Thanks,
Niels

It looks that the world files were hidden in recent updates. I can't seem to find it anywhere in the assetbundles or streaming assets.
I really wanted to make a 3d visualization map for myself :(
Did you end up finding it @sampniels ?

@Fonserbc
Yes, these files are removed from the game. But what @hhrhhr did still remained. See the link.
https://forums.unknownworlds.com/discussion/147269/maps-in-games-folder/p2


Release notes for Gradle 8.1

Merging with optimism since this was reviewed in a doc.
Validated all links and section levels.

@bot-gradle test and merge

I've triggered a build for you.


What's the license for the code in this repo?

I'd like to use the files in this repo in a project of mine where I run tests targeting Docker Engine against alternative options like Balena. Before I start copying things over I'd need to know about the conditions under which I am allowed to do so though.
Would you be able to provide a license along with the files?

Hey @m90 , the license for all balena projects in this org is Apache License v2.0 and I've added a LICENSE file to this repo!

Brilliant, thank you very much!


[BUG] Components Libraries such as Fluent UI not working with Plasmo

What happened?
Tried creating elements using the fluent UI component library and it didn't show any style for the provided components, I read posts about mounting them but it wasn't clear on how to do it actually.
Version
Latest
What OS are you seeing the problem on?
Linux
What browsers are you seeing the problem on?
Chrome
Relevant log output
No response
(OPTIONAL) Contribution

[ ] I would like to fix this BUG via a PR

Code of Conduct

[X] I agree to follow this project's Code of Conduct
[X] I checked the current issues for duplicate problems.

see: https://github.com/PlasmoHQ/plasmo/issues/687


Unable to use set_notification_handler

Hello,
I am trying to set a notification handler to listen for events. I have set up multiple channels and I have a notification handler who's signature is:
(XXXXX::XXXX is namespace blanked out)
void XXXXX::XXXX::Connection_Notification(const tao::pq::notification &message)
When I try to execute:
conn->set_notification_handler(Connection_Notification);
I am getting an error , "no instance of overload function tao::pq::connection::set_notification_handler matches the argument list (void(const tao::pq::notification &message))"
Any ideas what is wrong with the function signature I am providing? Thanks in advance.

Can you copy-paste the exact and full error message?

Without further feedback from your side I'm afraid there is nothing we can do. The only thing I can advise is to double-check that XXXX::XXXX:: is really just namespaces as you say and not a class/struct. If your method is a non-static member of a class/struct, it would explain why it's not a candidate, as it can only be called on an object, not as a free-standing function.

Hi,
In my previous response, I did a std::bind and got things to compile up. It
was my mistake in that the compiler was giving the correct error in that
using the function directly, it had the wrong signature since it specified
a named input variable. By binding my function to a std:: function, I could
then use that. Sorry for report a non-issue that was because of my mistake.
Thanks to you and your team for the support.
On Mon, Dec 6, 2021, 1:39 PM Daniel Frey @.***> wrote:

Without further feedback from your side I'm afraid there is nothing we can
do. The only thing I can advise is to double-check that XXXX::XXXX:: is
really just namespaces as you say and not a class/struct. If your
method is a non-static member of a class/struct, it would explain why it's
not a candidate, as it can only be called on an object, not as a
free-standing function.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/taocpp/taopq/issues/58#issuecomment-987257484, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ACXFSHO2DSWSYTRF5JQIOBLUPUURRANCNFSM5JCVS45Q
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


Run tests on self-contained test project without dotnet runtime

Description
similar to https://github.com/microsoft/vstest/issues/775
But we don't want to install dotnet core runtime. In order to run self-cotnained tests. Since it is self-contained, it should no longer required dotnet core runtime.
This could greatly help testing IOT device. Since requiring dotnet core runtime is much harder for such devices with limited internet access.
Steps to reproduce
dotnet new xunit
dotnet publish -r linux-arm /p:selfcontained=true /p:UseAppHost=true
Expected behavior
There is an vstest executable to run the tests
Actual behavior
There is only an test dll executable, which is no use.

+1 we would like a self contained vstest.console executable to run test executions cross platform without installing the runtime.

Played with this over lunch. One way would be to import the cli package and then invoke the test project direcly, passing on the parameters for test console:
# file Program.cs
using System.IO;
using System.Linq;
using System.Reflection;

namespace self_contained
{
    public static class Program
    {
        public static int Main(string[] args)
        {
            var currentAssembly = typeof(Program).Assembly.Location;
            var assemblyDir = Path.GetDirectoryName(currentAssembly);
            Directory.SetCurrentDirectory(assemblyDir);

            var argsWithPath = args.Concat(new[] { currentAssembly }).ToArray();
            var asm = Assembly.LoadFrom(Path.Combine(assemblyDir, @"vstest.console.dll"));

            var program = asm.GetTypes().Where(t => t.Name == "Program").First();
            var main = program.GetMethods().Where(m => m.Name == "Main").First();

            return (int)main.Invoke(null, new object[] { argsWithPath });
        }
    }
}

# file self-contained.csproj
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <GenerateProgramFile>false</GenerateProgramFile>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <RootNamespace>self_contained</RootNamespace>

    <IsPackable>false</IsPackable>

    <StartupObject></StartupObject>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.5.0" />
    <PackageReference Include="Microsoft.TestPlatform.CLI" Version="16.5.0" />
    <PackageReference Include="xunit" Version="2.4.0" />
    <PackageReference Include="xunit.runner.visualstudio" Version="2.4.0" />
    <PackageReference Include="coverlet.collector" Version="1.2.0" />
  </ItemGroup>
</Project>

# file UnitTest1.cs
using System;
using Xunit;

namespace self_contained
{
    public class UnitTest1
    {
        [Fact]
        public void Test1()
        {
            throw new Exception("faaaaail");
        }
    }
}

Notice <GenerateProgramFile>false</GenerateProgramFile> which prevents test.sdk from emitting defualt entrypoint.
Then I just did
dotnet publish -r linux-x64 /p:selfcontained=true /p:UseAppHost=true .\self-contained.csproj --output publish

The runtime is different than yours, but I was able to run it in WSL2 as:
/mnt/c/projects/temp/self-contained$ publish/self-contained
Microsoft (R) Test Execution Command Line Tool Version 16.5.0
Copyright (c) Microsoft Corporation.  All rights reserved.

Starting test execution, please wait...

A total of 1 test files matched the specified pattern.
[xUnit.net 00:00:01.80]     self_contained.UnitTest1.Test1 [FAIL]
  X self_contained.UnitTest1.Test1 [10ms]
  Error Message:
   System.Exception : faaaaail
  Stack Trace:
     at self_contained.UnitTest1.Test1() in C:\projects\temp\self-contained\UnitTest1.cs:line 11

Test Run Failed.
Total tests: 1
     Failed: 1
 Total time: 3.4949 Seconds

I am not sure what savings this will bring, because it does not seem much smaller than installing the appropriate runtime on the target machine and running vstest console and test host using that. This approach will also require you to copy all the dlls to the target machine everytime, while if you install on the target machine you can use it for many runs.

@nohwnd I did indeed try your workaround, but when trying to run on a machine that doesn't have dotnet installed I do also get the Could not find 'dotnet' host error that you linked in #2337.
Does this mean that test projects cannot actually be packaged up to be truly self-contained?

I did one more prototype somewhere. What we would need to do would be:

do the thing above
add a condition that would do the same for testhost.dll when "testhost" option is passed

This way we have 1 executable that we build from the test project that refers both to vstest.console, and testhost and also contains the tests.

change the testhost provider code in vstest.console to be able to detect this mode of execution and calls the current executable passing all the parameters testhost would get + the additional --testhost parameter.

This way when we build the test project as self-contained we will have have the runtime and the executable for the target system in the publish folder. This executable would then be run in place of vstest.console, and testhost, and would also provide the tests. Say it's called MyCode.Tests.exe (exe is here just to show that this is executable, as opposed to a dll, this is of course OS dependent):
MyCode.Tests.exe -> loads vstest.console.dll and runs the Main it in. Telling it to run tests in MyCode.Tests.dll
-> This would then go on till the point where testhost.exe would normally be called, failing with the error you see above because we are missing dotnet executable. But instead we would call:
MyCode.Tests.exe --testhost  -> this would load testhost.dll and run the Main from it. Passing MyCode.Tests.dll as the DLL that has the tests.
It's difficult to explain, sorry.
One more option would be to have InProcess test execution for .Net Core assemblies. But this would only work when running with single .dll, because we would not be able to multiplex to multiple testhosts as we do normally. Then only the steps above would need to be done.

@nohwnd Thanks for the reply and the thought.  For my particular use case, we have decided to use either a console app or a service to run some high-level end-to-end tests outside of the xUnit framework.  Not being able to run in self-contained mode was just one of the many factors that contributed to that.  I still think that being able to run tests in self-contained mode would be extremely helpful.  Thanks again!

This is a great suggestion, but we won't be implementing this into TestPlatform any time soon, sorry.


Question on dockerfile python:3.6-alpine and CVEs

We've been running CVE scans on our actions and recently got a hit for several critical CVEs for libexpat when we using the publish action (CVE-2021-45960, CVE-2021-46143, CVE-2022-22822 to CVE-2022-22827) which popped up over the weekend and have been fixed by the newest version of libexpat.
I'm assuming libexpat is included through the python:3.6-alpine container by default is this something that can be updated here? or would a newer build of the python:3.6-alpine need to be published? (not sure if that will happen since it seems like python:3.6-alpine has been EOL over at https://github.com/docker-library/python )

Interesting, looking into it.

Upgraded to python:3.8-alpine, this will be released soon.

This has been released as v1.28 and is available through v1 as well.


Preempting jobs in a queue

When a job of higher priority enters a queue (i.e., a PriorityQueue), we should have an option to enable preempting the job that is currently in service. If a preemption occurs, the time in service on the active job is stored and the job is moved back into the queue. It may be possible to do this with interrupt!. Maybe just need to sit down and write an example of how to do this.

Supplementary information:
Here is an example of how to use a PriorityQueue rather than a Channel to model a M/M/1 queue:
using DiscreteEvents, DataStructures, Distributions, Random

mutable struct Client
    id::Int
    arrive::Float64  # arrival time at Server A
    start::Float64  # beginning of service time at Server A
    leave::Float64  # end of service time
    priority::Int # client priority
end

mutable struct Server
    id::Int
    svcdist::Distribution
    tbusy::Float64
end

has_pending_jobs(input) = !isempty(input)
function serve(clk, srvr, input, output, limit)
    # client = take!(input) # use this if priorities don't matter (queue is a Channel)
    @wait clk has_pending_jobs(input) #!isempty(inpug) fails and needs to be wrapped (need to make macro more robust)
    client = dequeue!(input)
    st = clk.time
    client.start = clk.time
    @delay clk rand(srvr.svcdist)
    client.leave = clk.time
    srvr.tbusy += clk.time - st
    push!(output, client)
    length(output) == limit && stop!(clk)
end

function arrive(clk, input, count)
    count[1] += 1
    client = Client(count[1], clk.time, 0.0, 0.0, rand(0:10))
    # push!(input, client) # use this if priorities don't matter (queue is a Channel)
    enqueue!(input, client, client.priority)
end

Random.seed!(0)

N = 100
M_serve = Exponential(1)
M_arr = Exponential(1)
count = [0]

clock = Clock()
# input = Channel{Client}(Inf) # use this if priorities don't matter (queue is a Channel)
input = PriorityQueue{Client, Real}()
output = Client[]

srvr = Server(1, M_serve, 0.0)
@event arrive(clock, input, count) every M_arr
@process serve(clock, srvr, input, output, N)
@run! clock 20

Preemption can be down as follows:
using DiscreteEvents, DataStructures, Distributions, Random

mutable struct Client
    id::Int
    arrive::Float64  # arrival time at Server A
    start::Any  # beginning of service time at Server A
    leave::Float64  # end of service time
    service::Float64 # time in service
    priority::Int # client priority
end

mutable struct Server
    id::Int
    svcdist::Distribution
    job::Any#Pair{Client,Real}
    tbusy::Float64
end

struct Preempt end #preemption event

has_pending_jobs(input) = !isempty(input)
function serve(clk, srvr, input, output, limit)
    @wait clk has_pending_jobs(input) #!isempty(input) fails and needs to be wrapped (need to make macro more robust)
    @wait clk isnothing(srvr.job)
    try
        client = dequeue!(input)
        srvr.job = client
        st = clk.time
        client.start = clk.time
        duration = rand(truncated(srvr.svcdist, client.service, Inf)) - client.service #expected remaining processing time
        @delay clk duration
        client.leave = clk.time
        srvr.tbusy += clk.time - st
        push!(output, client)
        srvr.job = nothing
        length(output) == limit && stop!(clk)
    catch exc
        if exc isa PrcException && exc.event isa Preempt
            println("Preempted client $(srvr.job.id) at $(tau(clk))")
            if !isnothing(srvr.job.start) #update service time only if job has a start time
                srvr.job.service += clk.time - srvr.job.start
            end
            srvr.job.start = nothing
            enqueue!(input, srvr.job, srvr.job.priority)
            srvr.job = nothing
        else
            rethrow(exc)
        end
    end
end

function arrive_preempt(clk, srvr, srv_prc, input, count, M_arr, limit)
    count[1] += 1
    client = Client(count[1], clk.time, 0.0, 0.0, 0.0, rand(0:10))
    enqueue!(input, client, client.priority)
    if !isnothing(srvr.job) && client.priority < srvr.job.priority
        prc = clk.processes[srv_prc]
        interrupt!(prc, Preempt(), nothing)
    end
    @delay clk rand(M_arr)
    count[1] == limit && stop!(clk)
end

Random.seed!(0)

N = 100
M_serve = Exponential(1)
M_arr = Exponential(1)
count = [0]

clock = Clock()
input = PriorityQueue{Client, Real}()
output = Client[]

srvr = Server(1, M_serve, nothing, 0.0)
srv_prc = @process serve(clock, srvr, input, output, N)
@process arrive_preempt(clock, srvr, srv_prc, input, count, M_arr, N*2)
@run! clock 50

There are issues with DataStructures.jl when it comes to breaking ties: https://github.com/JuliaCollections/DataStructures.jl/issues/498#issuecomment-1527779264
It makes more sense to use a fifo (first in first out) for jobs of the same priority. However this is not guaranteed in DataStructures.jl.

So do you think we should implement this ourselves? How important is that?
I understand, for example, that it could be used to model multitasking. What kind of applications are you thinking of?

I found you can use a tuple for the priority which has the priority and arrival time. This way ties are broken properly. So I don't think we need to implement anything here. I can just add a server multitasking example with this to the list of examples.


qemu-x86_64-softmmu: general failure (possibly not enough privileges)

Hi All,  Please your comments in the following issue:
Describe the issue:
Creating an VM for Ubuntu x86_64 using Emulation.
Starting the machine to initiate installation I got the following:
"qemu-x86_64-softmmu: -netdev vmnet-shared,id=net0: cannot create vmnet interface: general failure (possibly not enough privileges)"
Configuration:
UTM installed without any modification.
UTM Version:    Latest version -> 3.2.4 (58)
macOS Version:    Monterrey - 12.5.1
Mac Chip (Intel, M1, ...):  Apple M1
Crash log:   No UTM crash,  error trying to start a VM.
Debug log:  Attached debug.log file.
Upload VM:  Attached config.plist file.
Appreciated any comment.
Thanks.
debug copy.log
config copy.plist.txt

Sounds like you are using a version of UTM that does not have the virtual networking permission (entitlement). How did you install UTM?

It could be vmnet is busy,  (possibly not enough privileges) could happen in UTM 4 if it crash... I had a similar but instead it was sharing...
Try to reboot your machine... or use bridge... with en0

Thx "conath", I´ve installed the file form mac.getutm.app and also I´ve installed from App Store the same results.
Thx "gustaf71",  sorry for ignorance but how do I use bridge ?

You will find it at device network -> network mode (tab scroll), set the empty textfield to en0

It could be vmnet is busy, (possibly not enough privileges) could happen in UTM 4 if it crash... I had a similar but instead it was sharing...
Try to reboot your machine... or use bridge... with en0

thank you reboot worked❤

I noticed that I experience this error if nothing is bound to port 53.
Normally mDNSResponder is bound to port 53 but when I run the Cloudflare WARP client, mDNSResponder is no longer running and the Cloudflare WARP client is bound to port 53.
Sometimes - after the Cloudflare WARP client is stopped, mDNSResponder does not start up right away and during the time before mDNSResponder is running again I get error "qemu-x86_64-softmmu: -netdev vmnet-shared,id=net0: cannot create vmnet interface: general failure (possibly not enough privileges)".

@Odaeus same here... did not work 2 times, searched the web, found this issue, retried -> worked again

Check with ifconfig if a bridge network in the same IP range already exists. Whenever I see this error, another app e.g. Docker Desktop already uses the same range (and UTM does not have enough privileges to take it over, hence the misleading error message...?)


Size request always returning A1 size

No matter what pdf (page) I call pdfPageSize on it returns the dimensions of an A1 paper. Is this a default when it can't read the size?

I was unaware that the size calculated is 1/72 inch as described in the Android PdfRenderer doc ("Returns the height of the PdfRenderer.Page object in points (1/72")."). My apologies


[Mike] Fix link

Nit - fix link in Readme.
I tested it locally in VSCode, link now works.

FYI, there are few other links that need to be fixed too. I'll make a new PR.


Ad-hoc does not work, failing grafana template variables parsing

Ad-hoc filter fails to work in queries with grafana's variables due to parse failing.
What happened:

Added ad-hoc variable to dashboard with panels with clickhouse datasource .
Selected a column to filter by with value

What you expected to happen:

See the data filter by ad-hoc filter

How to reproduce it (as minimally and precisely as possible):
1 Add a clickhouse datasource
2 Create a dashboard with clickhouse datasource panel
3 Use any grafana's template in query, like SQL comment /* ${__dashboard} */
4 Add variable ad-hoc with that datasource
5 Open JS console in browser
6 Select column from ad-hoc variable and you will see the error message like on this screenshot

Environment:

Grafana version: 10.3.3
Plugin version: 4.0.2
User OS & Browser: os x sonoma, chrome 120.0.6099.129

The exception happens during AST parsing by https://github.com/oguimbal/pgsql-ast-parser
@SpencerTorres, did we change the order of operations?
@mikhno-s, did it work in the previous version of the connector?

@mshustov yes, it work before 4.0.2


Remove prettier because I don't understand it

I am not that pretty and not many people care (myself included).

I agree with @thebsdbox, having run-it-and-forget-it formatters that gofmt is famous for is nice. What didn't you understand about it @gianarb?

I agree with you all. But 99% of the PR landing here requires me to fix
prettier or to tell the owner of the PR to do so. It is a waste of time I
would like to invest in other way.
I will add it back with a better as soon as we can figure out a way to have
a more descriptive output from it. Because when you look at why your PR is
red it is hard to tell if it is prettier why. I think it does not help
On Thu, Mar 18, 2021 at 2:39 PM Manuel Mendez @.***>
wrote:

I agree with @thebsdbox https://github.com/thebsdbox, having
run-it-and-forget-it formatters that gofmt is famous for is nice. What
didn't you understand about it @gianarb https://github.com/gianarb?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tinkerbell/hub/pull/31#issuecomment-801933060, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMOAO5PSOIZ67WHASQ24Q3TEH67VANCNFSM4ZMDAWCA
.


Before running

If you are working with python 3 (instead of python 2 which this code is written for) :
for  "File "./code/2-enrollment/enrollment.py", line 201, in main" & "in File "./code/3-evaluation/evaluation.py", line 202, in main"
change: name 'xrange' to 'range'
prefect

thank you!


Enable only_throw_errors

Fixes https://github.com/flutter/flutter/issues/5792
I decided to not attempt to port flutter_test to a world with exception objects, and I exempted the dev directory and some test directories that make extensive use of the "throw string" pattern. The idea here is mostly to prevent us from violating this in the framework, that's where it matters most.

cc @goderbauer


Improve Pie Chart

To dos:

[x] Implement enum types
[x] Auto generate title and sub title
[x] Show total number and percentage
[x] Show date range

https://github.com/hellowin/kanca/pull/103


New/userfaultfd support

What type of PR is this?
/kind feature
Any specific area of the project related to this PR?
/area driver-kmod
/area driver-ebpf
/area libscap
What this PR does / why we need it:
Adds support for tracing the userfaultfd syscall.
Which issue(s) this PR fixes:
NONE
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
new: userfaultfd support

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leodido
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leodido]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Detect Touch ID fingerprint unlock dialog using Yabai rules and signals?

Is there a way to detect the Touch ID fingerprint unlock dialog using Yabai rules and signals? I'm trying to automatically disable focus_follows_mouse autofocus when the TouchID dialog appears because TouchID only works when that dialog is focused.
I've tried querying for all windows but the Touch ID dialog doesn't appear as a window as far as I can tell.
yabai -m query --windows

Same here, I'm interested in ignoring the touch id dialog, leaving it at the top of windows, any ideas?

Looking for the solution as well

For anyone still looking for this, this worked for me: #1219 (comment)
i simply added yabai -m rule --add title="^$" manage=off to my yabairc.
Im not sure whether this causes problems with Yabai not managing other windows, but so far i had no issues.

Your rule just describes windows with an empty title.
Should also work this way:
yabai -m rule --add title="" manage=off
But yes this should cover dialogs like the one from the bitwarden browser plugin 👍

I also had to add yabai -m rule --add app="^coreautha$" manage=off for the touch id dialog, but now it's working fine, thanks ;)


navigationDelegate in web

navigationDelegate method don work in web render app.

same issue

Hello, @mahanabd @artem312 @aperez-kueski, this is actually noted here, precisely:

NavigationDelegate only has effect when using SourceType.urlBypass because click handlers can only be registered for this type of source (for now, soon they may also work when using SourceType.html - see src/view/impl/web.dart around line 220)

I've been playing with the example app and the navigationDelegate works perfectly fine when using SourceType.urlBypass.
I guess I could eventually make it also work for SourceType.html, but that's pretty much it. There's no way to make it work with SourceType.url, at least not as far as I know.
Also, @aperez-kueski, you're right. The navigation delegate only triggers on user interaction, such as when clicking a link.
This is intended behaviour because this is how it works on mobile, too. I may or may not be able to make it work for all history change events (such as changing the url from the controller, etc), but even if I do it would then behave differently compared to the mobile version. That being said, this feature is not really something I'm willing to add anytime soon. You can still fork the package and implement it yourself, if that's something you need for your use-case.

@adrianflutur i am using SourceType.html, how can I make it work on WEB?

@kekko7072 You can't right now

@kekko7072 we have just implemented a workaround that may work for you. Caveat: we control the HTML content loaded into our WebViewX widget. We need to control how anchors behave - launching some urls and some are intercepted and loaded within the app itself.
Ideally we would simply utilise the NavigationDelegate, but that doesn't work for web at the moment. To get around this we implement a piece of javascript code that tells the browser not to respond to the click event of anchors. We insert this script into the body of the HTML content. This is as follows:

Then we add some jsContent and a dartCallBack to the WebViewX widget. As follows:
jsContent: const {
        EmbeddedJsContent(
          webJs:
              "function sendNavigationEvent(url) { NavigationCallback(url) }",
          mobileJs:
              "function sendNavigationEvent(url) { NavigationCallback.postMessage(url) }",
        ),
      },
      dartCallBacks: {
        DartCallback(
          name: 'NavigationCallback',
          callBack: (url) => _interceptNavigation(url),
        )
      },

This ensures that the browser does not immediately respond to an anchor being clicked and instead passes the URL back to the dart function _interceptNavigation(url). This function looks as follows:
void _interceptNavigation(String url) {
    Uri uri = Uri.parse(url);

    if (_deepLinksService.isDeepLink(uri)) {
      // This is an internal link, so get the deeplinking service to handle it
      _deepLinksService.navigateToDeepLink(uri, context);
    } else {
      _launchURL(url);
    }
}

We parse the Url and determine if this is content that we should be loading within the app. If it is something that the app should handle, it does so. If not, it launches the Url using the web, iOS or Android default method.
I'm not sure if this helps at all, but it ensures we have consistent cross platform web, iOS and Android behaviour.
Lastly, kudos to @adrianflutur - nice work on the most fully featured package that works cross platform. Great work.

@alexanderkenney so I can enable it using an upgrade? Thanks

@kekko7072 no. Its not an upgrade. It's a workaround that we use to ensure we get consistent behaviour across iOS, Android and web. Take a look at the code above to see how we have implemented it.
Essentially we insert a script into the HTML to stop links navigating to the URL, extract the Url and pass it back to the flutter screen. Then we have a dart method that takes the Url and works out what to do with it. From the dart method it is then possible to launch a browser, open internally or do something else.

@kekko7072 no. Its not an upgrade. It's a workaround that we use to ensure we get consistent behaviour across iOS, Android and web. Take a look at the code above to see how we have implemented it.
Essentially it makes use of the EmbeddedJsContent and dartCallback options available to webviewx.

ok perfect

sendNavigationEvent

Hello @alexanderkenney, I'm trying this approach but I'm getting the next error:
Uncaught (in promise) ReferenceError: onSuccessAuthEvent is not defined
    at onSuccessAuth ((index):1:600)
    at e.C [as callback] (web3auth.tsx:152:12)
    at get_user_data_use_case.ts:31:22
    at b (regeneratorRuntime.js:86:17)
    at Generator._invoke (regeneratorRuntime.js:66:24)
    at Generator.next (regeneratorRuntime.js:117:21)
    at a (asyncToGenerator.js:3:20)
    at f (asyncToGenerator.js:25:9)

My code: index.html

Flutter web:
return WebViewX(
      initialContent: url,
      height: screenSize.height,
      width: screenSize.width,
      javascriptMode: JavascriptMode.unrestricted,
      jsContent: const {
        EmbeddedJsContent(
          js: "function onSuccessAuthEvent(data) { OnSuccessAuthCallback(data) }",
        ),
      },
      dartCallBacks: {
        DartCallback(
          name: 'OnSuccessAuthCallback',
          callBack: (data) => _onSuccessAuth(data),
        )
      },
    );

Any idea about what is wrong here?

I found the issue, looks like webviewx doesn't support jsContent with SourceType.url when source != 'about:blank'.
https://github.com/adrianflutur/webviewx/blob/e10be277c2b73c6177a0ce97dab079a8c5a9fe35/lib/src/view/impl/web.dart#L418-L455


fix/Include six

Description
This PR fixes https://github.com/Miserlou/Zappa/issues/845 by including six in the uploaded Lambda. The original problem is that deploying on Python 3.6 gives the following error ImportError: No module named six.moves.http_client
Miserlou said that the inclusion of six was the problem in https://github.com/requests/requests/issues/3985#issuecomment-296244685
GitHub Issues
https://github.com/Miserlou/Zappa/issues/845

Coverage remained the same at 73.295% when pulling b112427f70be5a15387c0dfe224dbe73fda55c8e on jakul:patch-1 into b7c16d3ac62aa496dfce8ba533dc64cd20376269 on Miserlou:master.

But you've only changed the code if if sys.version_info[0] < 3:..?

Oops.


[PROFILE ADDITION]

Profile screenshot

Hey! Check my gihub profile.

closing. there was no corresponding pull request. Feel free to reopen at anytime


[Feature Request] Multiple queues

I don't know how many people would use this kind of feature and if it's worth or possible implementing it.

Could you explain a bit more? Maybe add a screenshot. As I honestly have no idea what does multiple queues mean. Do you for example mean, that you're able to listen to your favorite playlist which is in queue number one and then there's also another queue with some other playlist and you can freely switch between them?

It is like playlists, but the queue position is saved when you start another playlist/album, like in musicolet. All in all it is easier to switch between playlists/albums without loosing the queue progress.


Forward logon reason

Hello,
It should be nice to forward the logon result somewhere, because when the bot got disconnected, we never know why.
Thanks!

You mean the disconnected event?

The logOn event, to know. we don't know the "status"

I don't follow. If loggedOn is emitted, then it was OK. If there was a temporary failure (like ServiceUnavailable or TryAnotherCM) then it will keep trying to reconnect until it succeeds, or a permanent failure is encountered (which is emitted in the error event).


BART: disable returning kv states since there exists an on device cache

What does this PR do?

Fixes # (issue)
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

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


Congratulations and questions

Amazing work! Awesome, really!
Two questions:

why isn't it on awesome-go yet (https://github.com/avelino/awesome-go)?

Can I generate GraphQL?

Thank you!

I didn't submit go-zero to awecome-go, will do it later. Thanks for pointing out.
Did you mean generate GraphQL from .api file?

Amazing work! Awesome, really!
Two questions:

why isn't it on awesome-go yet (https://github.com/avelino/awesome-go)?
Can I generate GraphQL?

The awesome-go PR.
https://github.com/avelino/awesome-go/pull/3397

Did you mean generate GraphQL from .api file?

Yeah. I would like to generate GraphQL API with your tool. Is it possible?

Sorry, not supported yet.
goctl support plugins. Maybe you can write a GraghQL plugin to do that.

Sorry, not supported yet.
goctl support plugins. Maybe you can write a GraghQL plugin to do that.

It's great


[LLVMCPU] Update the tile&fuse MultiTilingExpert pipeline

The tilePass is updated with tileRootAndFuseInputOperands pass.

Can you link it to the issues if it fixes some issues?


Public embeds of Odyssey maps are failing

Steps to reproduce it

Create a visualization.
Add a couple of slides.
Share the map (so you can see the embed).

Expected result
A beautiful Odyssey map :+1:
Actual result
A nasty error :-1:
The problematic line seems to be:
https://github.com/CartoDB/cartodb/blob/master/app/models/carto/visualization.rb#L73
Error log:
undefined method `to_vizjson' for nil:NilClass
Extracted source (around line #35):

32:
33:
34:
35:         <%= @visualization.to_vizjson[:likes] %>
36:
37:
38:

Rails.root: /vagrant

Application Trace | Framework Trace | Full Trace
app/models/visualization/vizjson.rb:147:in `block in children_for'

Actually it's the same than #3464.


Add prop for target reference

I think there are many cases where you need to specify refence manually.
I using fullcalendar and need popup for this, but i can't set every card in calendar in slots, because fullcalendar not use vue.
And i have one more case.

      <template slot="row" scope="row">
        <budget-item
          :item="row"
          :activeComment="comment && comment.index === row.index"
          :currentMonth="row.index === 1"
          @openPopup="openPopup"
          @openCommentModal="openCommentModal"/>
      </template>

  <v-popover :open="Boolean(subTable)" target="subTableTarget" trigger="manual" v-if="subTable">
    <budget-sub-item :profiles="subTable.profiles"
                     :currentMonth="subTable.index === 1"
                     :familyRatio="subTable.ratio"
                     slot="popover"/>
  </v-popover>

event openPopup fire on every hover.
Thx in advance for your work.

Thanks for posting an issue! I'm sorry but I don't understand what your problem is, could you reformulate please?

I want manually set reference target for popover component, with out using slot.
Example:
I have fullcalendar, it's jquery plugin. On click i can trigger popover, but i can't use v-popover because can't set reference slot.

<template>

    <fullcalendar :events="someEvents"
                  @click="clickHandler" />
    <v-popover :ref-target="eventTarget" :open="Boolean(data)" trigger="manual" :key="data.id">

        {{ data.title }}
        {{ data.date }}

    </v-popover>

</template>

Well, you can:
this.$refs.myPopover.$refs.popover
this.$refs.myPopover.$refs.trigger

@Akryum it's not work

I don't know this plugin, but here is a very basic example that should work:
<v-popover @show="onShow">
  <button>click me</button>

</v-popover>

methods: {
  onShow () {
    if (!this.calendar) {
      this.calendar = true
      $(this.$refs.target).fullCalendar()
    }
  },
},

what this? i never talk about it. I ask about how me set trigger for popover via props.
Example:
You have 150 div elements, for every div element you must set 1 popover = 150 div + 150 popover.
Or you can create 1 popover and manual change target refence for popover.

Sorry, but I didn't understand what you where saying about reference the whole time. Your issue seems to be that you need a way to change the target trigger element, correct?

yes, i want change target trigger element by props.

@Akryum I actually have a somewhat similar issue. I have a popover that needs to be trigged many times on the same page by different elements and would like to programmatically hide/show and dynamically set the reference element. Is this currently possible?

@Akryum I see, it looks like you can manually set the trigger with this.$refs.myPopover.$refs.trigger;

@Akryum hi! I anyway can't understand how create popup from this this.$refs.myPopver.$refs.trigger
https://p91k69z5qj.codesandbox.io/
I create example. I all time get error Cannot read property 'parentNode' of undefined

I was able to set the trigger using the following: this.$refs.userPopover.$refs.trigger = ref; with a manual trigger. However, I have thus far been unsuccessful in dynamically changing the trigger using the same code once instantiated.

Hi!
Any news?

Implemented in v3 alpha

Just for reference: https://github.com/Akryum/v-tooltip/blob/adbec36bda6d7a5eabb953435a4946fe7bc5c198/src/components/Popper.vue#L44L47

+1, i have the same issue
I can't find anything related to this in the documents


[Phcode.dev Bot] Publishing Release v2.0.3 to Extension Store

Thank you for contributing to phcode.dev extension store.
Please track extension/theme publish status by clicking this link.
You may close this issue at any time.

Extension successfully published to store. You can close this issue at any time.


"LTE" "CONNECT OFFLINE"

Describe the bug
I am using "Prime Lite" and live in Korea.
Since some time ago, the "LTE" connection status on the home screen appears to be normal, but the "CONNECT" status is maintained as "OFFLINE", and logs are not uploaded while driving.
I don't know why. Before that, it was always connected and worked well.
Provide a route where the issue occurs
1618132d68afc876
openpilot version
0.9.6 master-ci
Additional info
No response

We do not provide support for getting your own SIM working with prime lite.


A proposal to update to README.md

Added guide for Visual Studio 2017 projectfile.csproj
Added a hint about controller namespaces

Thank you!


Fixed gradients moving and zeroing

Fixing https://github.com/dotnet/TorchSharp/issues/1191
Modified to behave like PyTorch / LibTorch, see here: https://github.com/pytorch/pytorch/blob/main/torch/csrc/api/src/nn/module.cpp#L253 and https://github.com/pytorch/pytorch/blob/main/torch/nn/modules/module.py#L836
Important to note: This introduces a breaking change, as calling zero_grad() by default now converts gradients to null.
This is probably a good breaking change, because up until now it wasn't consistent and modules that were managed by LibTorch (like Linear) had their gradients set to null whereas the modules managed by TorchSharp had their gradients set to zero.

Before you merge, I'm still perplexed about something in his code. I'll update you when I figure it out.

There's still time to make a release tomorrow. After that, I'll be out for the rest of the year.

Okay, so this is the core reason of this issue, is that the underlying Module.to() in LibTorch moves the data of each tensor, but keeps the gradient as is.

Okay, so this is the core reason of this issue, is that the underlying Module.to() in LibTorch moves the data of each tensor, but keeps the gradient as is.

And that should only be a problem if there is ever a scenario when you would want to move a module without clearing the gradients, such as in the middle of an epoch. Why would you ever do that?

I agree that it's a weird scenario, but the way LibTorch handles it seems wrong.
When you move a tensor separately, it doesn't copy the gradients. But when you move tensors as part of a module, it does copy the gradients.

I agree that it's a weird scenario, but the way LibTorch handles it seems wrong. When you move a tensor separately, it doesn't copy the gradients. But when you move tensors as part of a module, it does copy the gradients.

So is your change consistent with LibTorch, or consistent between Tensor and Module?

Neither. Consistent with PyTorch.
Tensor.to will create a new tensor without the gradient.
Module.to will move the tensors and the gradients with them.
In LibTorch module.to leaves the gradients on the old device.

Neither. Consistent with PyTorch. Tensor.to will create a new tensor without the gradient. (Let me confirm that this is the behavior of PyTorch). Module.to will move the tensors and the gradients with them.
In LibTorch module.to leaves the gradients on the old device.

Okay, that sounds best.


Compile with nuitka instead of cx_Freeze

nuitka does boost performance a bit by converting the code to c+, also they have a guide on how to setup github action to publish binary, I wont trust or run any binary compiled on random person's pc

I'll look into Nuitka in the future ~ if it magically converts everything to C+ that's actually a huge potential performance boost when OSCLeash is handling avatars with LOTS of parameters that update every frame.
All of OSCLeash is available here on Github so anyone concerned can always build it themselves if they want to. I'd still love to have actions set up eventually but my only concern is that to solve a lot false positives, I built my own bootloader (see https://github.com/ZenithVal/OSCLeash/issues/21) and I don't know if I can implement this into Actions? (Never really used them before, apologies)


Feature/harmonize events gdev 1558

Replaced event_type/topic defaults with examples
Added validation_failure event handling (reject upload)
Added test case for unhappy path

Co-authored-by: Moritz Hahn<EMAIL_ADDRESS>Co-authored-by: Kersten Breuer<EMAIL_ADDRESS>
upload_rejected_event_type/type might be a more apt description from the service's perspective for what ist currently validation_failure_event_topic/type.
Just give me a heads up, if I should change that.

In deed, upload_rejected_event_type might be more appropriate, so if you like, change it.


Bump 1.10 to Marathon 1.5.11

High-level description
What features does this change enable? What bugs does this change fix?
MARATHON-8311 Metrics for suppress operations.
MARATHON-8304 Activate HeartbeatMonitor before Marathon is connected to Mesos.
MARATHON-8310 Ignore MARATHON_APP_ env vars.
Corresponding DC/OS tickets (obligatory)
These DC/OS JIRA ticket(s) must be updated (ideally closed) in the moment this PR lands:

DCOS-39258 Release Marathon 1.5.11 for DC/OS 1.10.

Checklist for all PRs

[x] Added a comprehensible changelog entry to CHANGES.md or explain why this is not a user-facing change:
[x] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Change log from the last version integrated (this should be a link to commits for easy verification and review): https://github.com/mesosphere/marathon/releases/tag/v1.5.11
[x] Test Results: https://jenkins.mesosphere.com/service/jenkins/view/Marathon/job/marathon-team-releases/job/marathon-community-release-1.5/87/console
[ ] Code Coverage (if available): [link to code coverage report]

PLEASE FILL IN THE TEMPLATE ABOVE / DO NOT REMOVE ANY SECTIONS ABOVE THIS LINE
Instructions and review process
What is the review process and when will my changes land?
All PRs require 2 approvals using GitHub's pull request reviews.
Reviewers should be:

Developers who understand the code being modified.
Developers responsible for code that interacts with or depends on the code being modified.

It is best to proactively ask for 2 reviews by @mentioning the candidate reviewers in the PR comments area. The responsibility is on the developer submitting the PR to follow-up with reviewers and make sure a PR is reviewed in a timely manner. Once a PR has 2 ship-it's, no red reviews, and all tests are green it will be included in the next train.

@mesosphere-mergebot label ready for review

@mesosphere-mergebot bump-ee

@orsenthil please have a look at this weird build: https://teamcity.mesosphere.io/viewLog.html?tab=buildLog&logTab=tree&filter=debug&expand=all&buildId=1125950&_focus=4014
it looks like the instance got shut down or the network shut down during the test
thanks @gpaul for looking into that with me!

@mesosphere-mergebot label Ship It

@jeschkies this does not have ship it because the bump-ee PR isn't all green yet.

Why that is ... I don't know. Maybe @cprovencher or @orsenthil could shed some light?

@orsenthil yes https://jira.mesosphere.com/browse/DCOS-39258


Adding CommonMark (Markdown) linters

[x] Created CommonMark sub-section in linters section
[x] Added 3 Markdown linters

The tricky thing here is that they are in fact Markdown linters. Markdown is 99% compatible with CommonMark. I do not know whether I should create new section for Markdown (also adding John Gruber's introduction link) or put linters in CommonMark's section. I chose the 2nd variant, but I can redo the commit if you decide to do the opposite.
The bad thing about Markdown is that it does not have full spec and there are many different implementations with their own nuances, like Github-flavoured Markdown. Also it might be misleading for newbies if you have both Markdown and CommonMark sections.

I understand, that's the trouble with Markdown but I don't think I agree with your approach to it. Before accepting or refusing the PR I would like to hear your thoughts on this:

Markdown doesn't have a full spec but I think the first coesive specification was John Grueber's.

All flavours of Markdown, even though they have their on nuances, mostly have a backbone that is mostly based in John Gruebrr's specification, evento CommonMark hás a lot of John's Markdown.

What if instead of having sections for each flavour and a separate for Markdown we have a generic section called "Markdown" and inside that section se have sub sections for each flavour? And we  can also add a separation in an index to make it clear right from the start.
That way, when you start reading you'll search for Markdown and see all different flavous, separated but in the same section.
What's do you think?

What if instead of having sections for each flavour and a separate for Markdown we have a generic section called "Markdown" and inside that section se have sub sections for each flavour? And we can also add a separation in an index to make it clear right from the start.

It sounds good and right. It can be something like this:
## Specs
...

### Markdown

- link to John Gruber's spec
- CommonMark's spec

## Linters

### Markdown

- link to linter 1
- link to linter 2

Yeah, something like:
## Specs
...

### Markdown

- (John Gruber's)[link to John Gruber's spec]
- (CommonMark)[link to CommonMark's spec]

...

## Linters

### Markdown

- link to linter 1
- link to linter 2

#### CommonMark

- link to linter 3

#### GitHub Flavored Markdown

- link to linter 4

What do you think?

I actually simplified that.
There is no need have different linters for Markdown, CommonMark, GFM. It is usually the same linters with just little options:
https://github.com/wooorm/remark#remarkprocessvalue-options-done
http://take.ms/ZFA3F

Makes sense, I accepted it! Thanks for the help @igorshubovych!


Edit: Track persistence rate for variants of edit over X seconds/minutes

What:

We don’t have a similar concept of “completion acceptance rate” for Edits. Edits are applied by default, so there is no actual acceptance action.
We should instead, try to track the persistence of an edit over X seconds/minutes.

How:

We already have a persistence tracker for completions, we can use this for Edits.
We need to use chunks from the diff to track specific lines, rather than the whole edit. Tracking the entire selection range will be misleading, as the edit may only actually change a few characters or lines.
We need to ensure that we correctly calculate a % of code left from the edit, combining both deletions and insertions. For deletions, we need to be tracking that code that Cody deleted, remains deleted.

There's some discussion about this in this thread: https://sourcegraph.slack.com/archives/CN4FC7XT4/p1710299380435099
One problem with persistence is that edits can also just delete code and if that happens we have no ranges that we can track after. We don't know if newly inserted characters are trying to undo the completion or adding more text. Might need some thinking about how we can make this work well 🤔

Done


Default installation fails late, if magic DNS isn't working - no fallback, no error

If one follows the default installation epinio install, the installation will configure a system DOMAIN by using
<traefik-public-IP>.omg.howdoi.website
If the magic DNS service isn't working, the installation will fail at the end, e.g. when trying to access the API.
However, if the magic DNS service would work, could have been checked with a test IP even before we start the installation.
One thing to consider is, we most likely should check that from within the kube cluster, and not, or not only from the host that runs epinio/kubectl.
However, we should check if e.g. <IP_ADDRESS>.omg.howdoi.website resolves to <IP_ADDRESS>, before we start installing epinio, and if not, just error out before installing anything, or clean up with what we started with.
In addition, it could make sense to have other magic DNS services as fallback - so e.g. we could test and configure
<IP_ADDRESS>.nip.io (<traefik-public-IP>.nip.io), and/or
<IP_ADDRESS>.xip.io (<traefik-public-IP>.xip.io)
as fallbacks, if the preferred one doesn't work at install time.

Our magic DNS is just a convenience for demos and development. We shouldn't create features in Epinio around omg.howdoi.website. Also any check that the system domain resolves to some specific IP address could lead to problems if there is networking that we don't take into account (proxies, load balancers etc). For example, once I used the loadbalancer-ip flag on the minikube installation with a domain that didn't resolve to the traefik IP address (the one from the flag), but resolved to the VMs "floating" IP (had ports forwarded and all). That resulted in an error, because we have a check to see if they match. My setup would have otherwise worked, it's just that Epinio tries to be smart and fails.
I will close this. Please open if you think I missed something and we should discuss more. Maybe we can convert it to a discussion then.


Add scripts to perform unit tests

E.g. simply link to go test or mvn test.
Note that these tests should run in containers for maximum portability.

Done in testing/


fix: false negatives for _created()

Make _created() return a bool. If you want the state, just call _status().
state can be preparing or shutoff, and still _created() should return True. Otherwise, a stopped machine won't be destroyed with molecule destroy.
I also added _running(), which properly tells if the VM is running. It is used for calling up(). Otherwise, a stopped machine won't be started before testing.

I'd say the status failure is not related to this change.

tbh, I've noticed your issue in the past but didn't look at it, since the only way to trigger it for me was to stop manually with vagrant and I'm not sure it's a good idea to not use molecule to handle the box. How did you manage to trigger it ? Is there any hope to be able to add a small test case based on it ?
For the CI, there's an other failure in it anyway. I'm meant to work on it for quite some time so I hope I'm going to have a look at it today.

I'd say I hit some upstream bug because it was behaving wierd, but in any case you can just molecule test --destroy never and reboot. The vm will be powered off and testing again will fail.

This patch is really needed. I'm getting bugged by the qemu session problems upstream in vagrant-libvirt such as https://github.com/vagrant-libvirt/vagrant-libvirt/issues/958, and this patch is a necessity.

@apatard please review and merge if ok.

I am afraid CI needs to be fixed first. right?

CI problems don't seem related... but it would be good anyway of course.

@ssbarnea I was hoping to find a way to write a test case for this but kind of lost hope, which is sad. For the CI, i've yet to understand why Zuul is again failing and Zuul failures are always painful to debug

btw, the CI failure is probably not related to this PR

Yes, the main branch is broken with the same problem.

OK, changed.

for the zuul failure, looks like it's related to https://github.com/ansible/ansible-zuul-jobs/commit/472249173a10a53e6924f4df772cd993bce439e4. I'll work on changing the molecule-vagrant configuration to use centos-8-stream.


Github Auth errors are logged

Fixes #64

Thanks! If you fix the two small nits i'll merge it in :)

Hmmm actually did you try it out?
I don't think that it works. Authentication is asynchronous so it wouldn't throw synchronously. Also, if it actually threw an error then the entire node process would be killed with the correct error. But that's not what was described in the issue.

@vjeux Actually I think authentication is the one function in the GitHub API that is synchronous.

@vjeux I thought it was straightforward and didnt actually test.
@jgardella it is synchronous because its not making any api calls.  https://github.com/mikedeboer/node-github/blob/master/index.js#L417 I also looked at that doc and came up with this implementation.
The actually issue is in the AuthCookie

Should we just log or halt the application running by throwing an error?

Either way is fine for me. Both are not going to work and the person will have to look the logs anyway to figure out what happened

Hey gang, this is great, I now know that I'm getting auth errors.
I'm using a Machine User account - it has a username, password, token, and 2-factor auth enabled - so I'm not certain what combination of codes to use to get into private repos, nor how to debug it further.
Any advice?


Is there an upscaler guide?

I did not see any existing issues for this so I wager I'm just an idiot... and have missed something.
I am just starting on using SD and Unfortunately I have a 6900XT so i'm taking the hard road it seems.
Anyway, my issue is that when I try and use the upscaler with prompts exact to my original image, no matter what size i generate... (It says trained in 512x512 but it doesn't work, even with 128x128,) the X4 upscaler seems to fail with the errors below.
If I read correctly, it should take up to a 512x512 image and upscale it to 2048x2048 maximum?
Let me know if you need more info and i'll get it back to you.
Error(s):
size mismatch for decoder.up_blocks.2.resnets.2.conv2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
50it [00:13,  3.84it/s]
Traceback (most recent call last):
File "gradio\routes.py", line 439, in run_predict
File "gradio\blocks.py", line 1384, in process_api
File "gradio\blocks.py", line 1103, in call_function
File "gradio\utils.py", line 343, in async_iteration
File "gradio\utils.py", line 336, in anext
File "anyio\to_thread.py", line 33, in run_sync
File "anyio_backends_asyncio.py", line 877, in run_sync_in_worker_thread
File "anyio_backends_asyncio.py", line 807, in run
File "gradio\utils.py", line 319, in run_sync_iterator_async
File "gradio\utils.py", line 688, in gen_wrapper
File "ui\upscaler_ui.py", line 191, in upscaler_inf
File "apps\stable_diffusion\src\pipelines\pipeline_shark_stable_diffusion_upscaler.py", line 346, in generate_images
File "apps\stable_diffusion\src\pipelines\pipeline_shark_stable_diffusion_utils.py", line 150, in load_vae
File "apps\stable_diffusion\src\models\model_wrappers.py", line 848, in vae
File "apps\stable_diffusion\src\models\model_wrappers.py", line 840, in vae
File "apps\stable_diffusion\src\models\model_wrappers.py", line 315, in get_vae
File "apps\stable_diffusion\src\models\model_wrappers.py", line 302, in init
File "torch\nn\modules\module.py", line 2056, in load_state_dict
raise RuntimeError('Error(s) in loading state_dict for {}:\n\t{}'.format(
SystemExit: Error(s) in loading state_dict for AutoencoderKL:
Missing key(s) in state_dict: "decoder.up_blocks.1.resnets.0.conv_shortcut.weight", "decoder.up_blocks.1.resnets.0.conv_shortcut.bias".
Unexpected key(s) in state_dict: "encoder.down_blocks.3.resnets.0.norm1.weight", "encoder.down_blocks.3.resnets.0.norm1.bias", "encoder.down_blocks.3.resnets.0.conv1.weight", "encoder.down_blocks.3.resnets.0.conv1.bias", "encoder.down_blocks.3.resnets.0.norm2.weight", "encoder.down_blocks.3.resnets.0.norm2.bias", "encoder.down_blocks.3.resnets.0.conv2.weight", "encoder.down_blocks.3.resnets.0.conv2.bias", "encoder.down_blocks.3.resnets.1.norm1.weight", "encoder.down_blocks.3.resnets.1.norm1.bias", "encoder.down_blocks.3.resnets.1.conv1.weight", "encoder.down_blocks.3.resnets.1.conv1.bias", "encoder.down_blocks.3.resnets.1.norm2.weight", "encoder.down_blocks.3.resnets.1.norm2.bias", "encoder.down_blocks.3.resnets.1.conv2.weight", "encoder.down_blocks.3.resnets.1.conv2.bias", "encoder.down_blocks.2.downsamplers.0.conv.weight", "encoder.down_blocks.2.downsamplers.0.conv.bias", "decoder.up_blocks.3.resnets.0.norm1.weight", "decoder.up_blocks.3.resnets.0.norm1.bias", "decoder.up_blocks.3.resnets.0.conv1.weight", "decoder.up_blocks.3.resnets.0.conv1.bias", "decoder.up_blocks.3.resnets.0.norm2.weight", "decoder.up_blocks.3.resnets.0.norm2.bias", "decoder.up_blocks.3.resnets.0.conv2.weight", "decoder.up_blocks.3.resnets.0.conv2.bias", "decoder.up_blocks.3.resnets.0.conv_shortcut.weight", "decoder.up_blocks.3.resnets.0.conv_shortcut.bias", "decoder.up_blocks.3.resnets.1.norm1.weight", "decoder.up_blocks.3.resnets.1.norm1.bias", "decoder.up_blocks.3.resnets.1.conv1.weight", "decoder.up_blocks.3.resnets.1.conv1.bias", "decoder.up_blocks.3.resnets.1.norm2.weight", "decoder.up_blocks.3.resnets.1.norm2.bias", "decoder.up_blocks.3.resnets.1.conv2.weight", "decoder.up_blocks.3.resnets.1.conv2.bias", "decoder.up_blocks.3.resnets.2.norm1.weight", "decoder.up_blocks.3.resnets.2.norm1.bias", "decoder.up_blocks.3.resnets.2.conv1.weight", "decoder.up_blocks.3.resnets.2.conv1.bias", "decoder.up_blocks.3.resnets.2.norm2.weight", "decoder.up_blocks.3.resnets.2.norm2.bias", "decoder.up_blocks.3.resnets.2.conv2.weight", "decoder.up_blocks.3.resnets.2.conv2.bias", "decoder.up_blocks.2.upsamplers.0.conv.weight", "decoder.up_blocks.2.upsamplers.0.conv.bias".
size mismatch for decoder.up_blocks.1.resnets.0.conv1.weight: copying a param with shape torch.Size([512, 512, 3, 3]) from checkpoint, the shape in current model is torch.Size([256, 512, 3, 3]).
size mismatch for decoder.up_blocks.1.resnets.0.conv1.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.0.norm2.weight: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.0.norm2.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.0.conv2.weight: copying a param with shape torch.Size([512, 512, 3, 3]) from checkpoint, the shape in current model is torch.Size([256, 256, 3, 3]).
size mismatch for decoder.up_blocks.1.resnets.0.conv2.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.1.norm1.weight: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.1.norm1.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.1.conv1.weight: copying a param with shape torch.Size([512, 512, 3, 3]) from checkpoint, the shape in current model is torch.Size([256, 256, 3, 3]).
size mismatch for decoder.up_blocks.1.resnets.1.conv1.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.1.norm2.weight: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.1.norm2.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.1.conv2.weight: copying a param with shape torch.Size([512, 512, 3, 3]) from checkpoint, the shape in current model is torch.Size([256, 256, 3, 3]).
size mismatch for decoder.up_blocks.1.resnets.1.conv2.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.2.norm1.weight: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.2.norm1.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.2.conv1.weight: copying a param with shape torch.Size([512, 512, 3, 3]) from checkpoint, the shape in current model is torch.Size([256, 256, 3, 3]).
size mismatch for decoder.up_blocks.1.resnets.2.conv1.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.2.norm2.weight: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.2.norm2.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.resnets.2.conv2.weight: copying a param with shape torch.Size([512, 512, 3, 3]) from checkpoint, the shape in current model is torch.Size([256, 256, 3, 3]).
size mismatch for decoder.up_blocks.1.resnets.2.conv2.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.1.upsamplers.0.conv.weight: copying a param with shape torch.Size([512, 512, 3, 3]) from checkpoint, the shape in current model is torch.Size([256, 256, 3, 3]).
size mismatch for decoder.up_blocks.1.upsamplers.0.conv.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.2.resnets.0.norm1.weight: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.2.resnets.0.norm1.bias: copying a param with shape torch.Size([512]) from checkpoint, the shape in current model is torch.Size([256]).
size mismatch for decoder.up_blocks.2.resnets.0.conv1.weight: copying a param with shape torch.Size([256, 512, 3, 3]) from checkpoint, the shape in current model is torch.Size([128, 256, 3, 3]).
size mismatch for decoder.up_blocks.2.resnets.0.conv1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.0.norm2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.0.norm2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.0.conv2.weight: copying a param with shape torch.Size([256, 256, 3, 3]) from checkpoint, the shape in current model is torch.Size([128, 128, 3, 3]).
size mismatch for decoder.up_blocks.2.resnets.0.conv2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.0.conv_shortcut.weight: copying a param with shape torch.Size([256, 512, 1, 1]) from checkpoint, the shape in current model is torch.Size([128, 256, 1, 1]).
size mismatch for decoder.up_blocks.2.resnets.0.conv_shortcut.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.1.norm1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.1.norm1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.1.conv1.weight: copying a param with shape torch.Size([256, 256, 3, 3]) from checkpoint, the shape in current model is torch.Size([128, 128, 3, 3]).
size mismatch for decoder.up_blocks.2.resnets.1.conv1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.1.norm2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.1.norm2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.1.conv2.weight: copying a param with shape torch.Size([256, 256, 3, 3]) from checkpoint, the shape in current model is torch.Size([128, 128, 3, 3]).
size mismatch for decoder.up_blocks.2.resnets.1.conv2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.2.norm1.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.2.norm1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.2.conv1.weight: copying a param with shape torch.Size([256, 256, 3, 3]) from checkpoint, the shape in current model is torch.Size([128, 128, 3, 3]).
size mismatch for decoder.up_blocks.2.resnets.2.conv1.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.2.norm2.weight: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.2.norm2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
size mismatch for decoder.up_blocks.2.resnets.2.conv2.weight: copying a param with shape torch.Size([256, 256, 3, 3]) from checkpoint, the shape in current model is torch.Size([128, 128, 3, 3]).
size mismatch for decoder.up_blocks.2.resnets.2.conv2.bias: copying a param with shape torch.Size([256]) from checkpoint, the shape in current model is torch.Size([128]).
I'm using :
SHARK : nodai_shark_studio_20230713_819
default upscaler showing is : https://huggingface.co/stabilityai/stable-diffusion-x4-upscaler
thanks

The stable diffusion upscaler is always generated with a 128x128 config since it operates in blocks.    I can't say why you're getting that error though, unless you've got a custom VAE plugged in or something is broken with the huggingface repo right now.  I'll point some stuff out while I'm here:
The "size" parameters are a red herring, sorta.  AFAICT the input image is always upscaled by 4 to a max of 2048, but for some pants-crappingly insane reason you need to set those dimensions to the ratio of the two dimensions...   not the actual ratio, though, the inverted ratio.  So to upscale a 768h x 512w image, since the highest number you can set in the UI is 512, I have to set the input as 384h x 512w or the output is squashed.  Then, since it's done in 128x128 blocks, this is how long it takes:

50it [00:04, 11.06it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.85it/s]
50it [00:04, 11.07it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.86it/s]
50it [00:04, 11.21it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.79it/s]
50it [00:04, 11.08it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.82it/s]
50it [00:04, 11.15it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.81it/s]
50it [00:04, 11.08it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.74it/s]
50it [00:04, 11.28it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.70it/s]
50it [00:04, 11.11it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.72it/s]
50it [00:04, 11.16it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.82it/s]
50it [00:04, 10.97it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.75it/s]
50it [00:04, 10.97it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.92it/s]
50it [00:04, 11.02it/s]
100%|████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00,  3.88it/s]

for a 1536x2048 output.
My honest advice is to avoid it entirely.  It has a bad tendency of producing blocky artifacts at boundaries, some of them are reliably in the same spots.  I suspect it's maybe a precision issue, but it's not very impressive.
Until Shark gets UI support I'd just grab https://github.com/xinntao/Real-ESRGAN-ncnn-vulkan
I've been using it on video for a while now.  It was faster than realtime for 480p video sources with smaller models on my 6900XT.   On the 7900XTX it takes under 3 minutes to convert 22 minutes of frames from 30fps SD video.
Single frames take longer to load the model and initialize vulkan than they do to upscale it.
Compared to the above 12 step process, realesrgan with one of the much slower fp32 precision model versions (Ultrasharp-x4) takes under 4s:
The current time is:  5:56:44.84

realesrgan-ncnn-vulkan -n UltraSharp-opt-fp32-x4 -i 013243__photorealistic_2460524766.png -o up.png -s 4 -j 1:16:1 -v
[0 AMD Radeon RX 7900 XTX]  queueC=1[2]  queueG=0[1]  queueT=2[2]
[0 AMD Radeon RX 7900 XTX]  bugsbn1=0  bugbilz=0  bugcopc=0  bugihfa=0
[0 AMD Radeon RX 7900 XTX]  fp16-p/s/a=1/1/1  int8-p/s/a=1/1/1
[0 AMD Radeon RX 7900 XTX]  subgroup=64  basic=1  vote=1  ballot=1  shuffle=1
0.00%
8.33%
16.67%
25.00%
33.33%
41.67%
50.00%
58.33%
66.67%
75.00%
83.33%
91.67%
013243__photorealistic_2460524766.png -> up.png done

The current time is:  5:56:48.56

This results in a 2048x3072 image which is higher than you'll be able to get shark to produce with sd-x4.
Upscaling that upscaled image through the same pipeline again takes 21 seconds this time which is still ~2.5x faster than sd-4x and results in an 8192 x 12288 image which is more than you'll conceivably need for anything.  It still looks impressively good at that scale.
stable-diffusion-x4-upscaler is the only thing that works with the UI right now regardless of what upscalers you drop in.  This may change.
The only conceivable use would be prompting + LoRAs and CFG weighting to change the output, but in my limited tests this didn't really change the output.
There's a script in the full shark git to call the pytorch versions of the ESRGAN models but I haven't tried it to compare speed.  The ncnn-vulkan build hasn't been updated since last year so it's presumably non-optimal for RDNA3 but it's still faster than anything I need.  Whether or not the shark version will be faster is anybody's guess, I've just been too lazy to play with the script for it.

It probably should have worked...  I think the Shark upscaler UI hardcodes the image block size @ 128x128 for one thing.  You might be able to get it to work by changing that in "apps\stable_diffusion\web\ui\upscaler_ui.py" where args.width and args.height are set to 128 for the model config.  I'm still not convinced x4 upscale works correctly in shark because of the bizarre block artifacts.  You should be able to spot 128x128 blocks of the upscaled image where some have very high detail / texture and some don't, and the colors are off between them.  The algorithm was supposed to be recognizing neighbor block features and blending them for each block but I don't think it does that in Shark's case, I dunno.  There's a bunch of difficulty comparing code with base diffusers because none of the classes in Shark derive from the class hierarchy in diffusers, which uses a bunch of Mixins and such to deal with things like embeddings across various pipelines more easily, whereas Shark has  tons of custom model loading code due to the compilation
I'm guessing what broke 128x128 working was the weird hack in place to redirect the 768 stability-2 / stability-2.1 models to the base versions of same when pulling the configs and everything.  I've hit issues with this more or less constantly (there's an exciting issue where if you install the stability-2 model which is 768x768, shark tunes it (or not, either way the wrong thing is being compiled)  with the stability-2.1-base configs and downloads the .bins from that, which causes a catastrophic issue where model speed drops from ~10it/s to 10+s / it.  I don't know exactly what it's doing except a tight loop using very little surface area of the GPU is being executed causing the boost speed to jump to 100MHz higher than I have the max set at (over 3GHz) while still using very little power (130W) and slows down the entire UI in Windows, but not enough to cause the driver to go unresponsive and be force-reset.
Supposedly the 768x768 models are disabled because of an issue with the latents not decoding correctly in fp16, although fixed VAEs for this issue have existed for a long time (there's already a fixed fp16 VAE for SDXL 1.0 and that came out like yesterday) so I'm not sure where the issue is there at this point.  I've only been able to get 768x768 to work by leaving the model as the default stability-2.1 variant pulled directly from huggingface.  Using a local 768x768 model like stablity-v2 causes some kind of catastrophic compilation failure I keep meaning to file a bug on where speed decreases 100x per iteration (tuned or not), the GPU starts running faster than the maximum specified boost clock (but only pulls about 1/3 its available wattage, probably indicating it's running a tight loop that isn't distributed across CUs properly but I can't say why it violates boost clocks), and the whole system becomes choppy due to whatever is going on there but the video driver stays just responsive enough to not trigger the Windows driver reset.  If you're bored enough and wait the 10-12s per iteration to let this finish it still produces noise because it's using the non FP16 compatible VAEs.  I can't say why 768x768 works on the default 2.1 model unless someone fixed the VAE there or Shark is force-loading something.


Implement Python bindings for BallistaContext

Is your feature request related to a problem or challenge? Please describe what you are trying to do.
We have Python bindings for DataFusion's ExecutionContext. It would be good to also support Ballista's BallistaContext so that we can use Python to run distributed queries.
Describe the solution you'd like
Probably something like this?
import ballista

ctx = ballista.BallistaContext
df = ctx.read_parquet(...)

Describe alternatives you've considered
Another approach might be to have ballista be an optional feature of DataFusion and then enable new methods on the DataFusion ExecutionContext instead but that would probably result in tons of additional dependencies and blur the lines between DataFusion and Ballista and I think there is a strong case for DataFusion=lib/embedded and Ballista=distributed.
Additional context
N/A

@andygrove hope to work on this, if you don't have any other plan.

Thank you @djKooks that would be great

@andygrove
Would it be okay to put like following?
...
ballista/
   - rust/
   - ui/
   - python/     <- create binding here
datafusion/
datafusion-cli/
...

Yes, I think that makes sense.

I would be interested to hear what others think though. @alamb @Dandandan @jorgecarleitao @houqp do you have an opinion on this?

I agree that this makes the most sense 👍
Out of curiosity, do the bindings come with the client and executors, or just the client?

I agree having a separate python binding for Ballista in the location suggested by @djKooks  in https://github.com/apache/arrow-datafusion/issues/861#issuecomment-899453613 makes sense to me

@alamb @jorgecarleitao @andygrove thanks for suggestion 🙇

do the bindings come with the client and executors, or just the client?

I think it will be enough to do with client only in first step, but do you have any more suggestion?

I do not have any more to add here -- since I don't use the python bindings myself I don't have a lot to offer with specifics

@andygrove  @alamb @jorgecarleitao thanks for comment.
Will start implementation in following branch https://github.com/apache/arrow-datafusion/pull/988
(will request for review when ready 🙇 )


Please Help! router-view vs nuxt component

Hello there,
I am using the "nuxt" component to embed route components in a layout but it seems that events from v-on are not being listened to.
This is something that is expected to work but doesn't:
<nuxt v-on:some-event="doSomething()" />

Should I be using  instead? When using , events are picked up but there is an error in the console that reads
[Vue warn]: Error in mounted hook: "TypeError: Cannot set property '$loading' of undefined"

(found in <Root>)

Thank you very much! 😄

Looks like event handler is triggered just fine to me. Based on the error message, my guess is you are referring to wrong this in mounted. This can happen if you use an arrow function as mounted lifecycle hook - see the documentation.
Can you embedded the entire code or the repository regarding this error?

Never mind - looks like $loading is nuxt internal and I also checked that @click doesn't work on <nuxt /> too.
Still, embedding the code would help IMO. Sorry for the confusion 😅 and good luck!

Here is a simplified example of the source code we are working with.
https://glitch.com/edit/#!/stupid-hide?path=package.json:13:37
Here is the demo:
https://stupid-hide.glitch.me/

@PiusNyakoojo why don't you use the store in this case?

Well, this was a simple case.
The code looks more like this:
<router-view
  :dark-header="darkHeader"
  v-on:show-media="selectDialog(dialogTypes.media, $event)"
  v-on:show-error="selectDialog(dialogTypes.error, $event)"
  v-on:show-message="selectDialog(dialogTypes.message, $event)"
  v-on:are-you-sure="selectDialog(dialogTypes.areYouSure, $event)"
  v-on:set-dark-header="setDarkHeader($event)"
  v-on:dialog-selected="selectDialog($event)"
  v-on:close-dialog="hideOverlay()"></router-view>

Are you suggesting to use the store to communicate these things? That could work. I'll have to think about the complexity of this implementation. On initial thought it seems so bothersome, but maybe it's not 😄

After some thought, your suggestion seems to work better than doing things in the default layout.
Thanks a lot @alexchopin  😃
Thanks also to you @heejongahn 😊
For those who might benefit from this, here is the source code of the previous example updated to use the store technique:
https://glitch.com/edit/#!/aspiring-iron?path=package.json:2:22
Here is the demo:
https://aspiring-iron.glitch.me/

replace <router-view></router-view> with <nuxt></nuxt> if u got similar problem


prompt adam2 - script output without new line, is not being displayed

Hey,
Not sure if this is the right place to report zsh issues. Please direct me to the correct place if you happen to know. Thank you!
I'm using adam2 prompt for last 5 years and only today it struck to me that the scripts which produce output without a trailing newline character, is not being displayed.
For example:
(1) This doesn't display any output: echo -n "foo"

(2) However, this works correctly:  echo  "foo"

To setup this, I simply did this
autoload -Uz promptinit
promptinit
prompt adam2
However, if I switch to adam1 or any other prompt, the issue as described in (1) does not happen.

Moved to Stackoverflow - https://stackoverflow.com/questions/47061766/zsh-prompt-adam2-script-output-without-newline-is-not-being-displayed


Add parent references support to load/save

Restores the correct parent chain relationship
between images on docker load if multiple images
have been saved.
cc @aaronlehmann
Signed-off-by: Tonis Tiigi<EMAIL_ADDRESS>

LGTM

LGTM

Are we now supposed to use this to save an image after every Dockerfile instruction, then re-load all those images, in order to load a saved image with build cache intact? Or is docker save and docker load supposed to be enough, like it was before 1.10?

Does this fix #20316 and #20131?

@Encaitar no it doesn't, but possibly can be used to create an external tool for populating the local cache (see https://github.com/docker/docker/issues/20316#issuecomment-206640001)
https://github.com/docker/docker/issues/20131 is not a bug, that is by design; i.e. docker pull doesn't need to pull parent images to obtain their layers, so the "history" shows that those images are not present locally

@tonistiigi @thaJeztah is it possible to export/import just the parent/child relationships and then pull the image data from the registry?

@graingert You can't save such tarballs directly from Docker but the tarballs containing only the parent chain data should be loadable after pull.

@tonistiigi is there a specification of this parent chain tar?

@graingert It's the same format as for regular save https://github.com/docker/docker/pull/22264/files#diff-b1247b61dc69edc892f3be4ea4f300a6R631 , just if there is no layer file in tar but the layer is already loaded from pull, there should not be any error.


Unsafe module2

Same as before but with improved commit messages
(this is the second try for this branch as first time build failed due to code in doc failing)

It looks great thanks @jule64 and @cesartl, I just made a few minor comments.

👍


allow preload in default player

The default player had auto hardcoded. This PR allows the preload property to be passed into the player, defaulting to auto.

You can already override this using fileConfig.attributes:
<ReactPlayer
  playing
  url='file.mp4'
  fileConfig={{ attributes: { preload: 'whatever' }}}
/>

Adding a top level preload prop for the sake of one player seems like overkill.


Optional properties, that have been assigned, are lost when exported

This might be WAI, but I've created a repro repo (see Travis build for error log).

Closing: invalid issue


API down?

Hi there,
I am trying to make a call to http://phisix-api.appspot.com/stocks.json and is working fine last night. But today I am getting null response and 404 on other calls instead
{"stock":null,"as_of":null}

Turns out that the pse.com.ph is the one who was down. This is scraping data from that site it seems. All good now. Thank you so much!


Split out ConsumerGroupIndex and DestinationIndex

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#553
#552  👈
#551
#550
#549
#548
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @acco and the rest of your teammates on  Graphite


Testing newly added skill crashes with (intermediate value).map is not a function

Project

Virtual Assistant
Description

Testing newly added skill crashes with (intermediate value).map is not a function
To Reproduce

I deployed a new skill and followed the instructions to test it out.
Testing out the sample skill using the default utterance "sample dialog" I see that dispatcher gets the right intent, the bot shows three dots like it's trying to respond and then I get the following error
[LUIS] (intermediate value).map is not a function
I've added break points in MySkill.cs but it never hits that.

Expected behavior

I should get a response from my skill as the documentation describes
Screenshots

Additional context

Hi,
The LUIS aspect I think might be unrelated. Sounds like it's not able to match the dispatch intent (using l_ prefixed) to a skill in your configuration. Sometimes a capitalisation issue. Can you check your app.config skill entries have an entry with a dispatchIntent that matches the name? Stick a breakpoint in maindialog.cs line 175 to double check too.

 [LUIS] (intermediate value).map is not a function is an emulator error, not a bot error. If you notice, it will pop up in the log window every time you click the link to view a LUIS trace.
In addition to checking your appsettings.json as @darrenj mentioned, make sure you have added a project reference in the VirtualAssistant solution to your skill project. That is what usually causes this behavior for me.

@lauren-mills @darrenj Thank you for your inputs It helped unblock me. It was a naming disparity between the LUIS model, dispatch. I can close this ticket now.