Undefined function error "operator does not exist: text ->> unknown" with PostgreSQL

I'm a noob trying out the starter and followed the install instructions, except changed the DB_CONNECTION=pgsql in the .env file. The migrations and seeds ran without a hitch. However, when I navigate anywhere in the admin panel I get a query exception:
SQLSTATE[42883]: Undefined function: 7 ERROR: operator does not exist: text ->> unknown LINE 1: ...ifications"."notifiable_id" is not null and "data"->>'format... ^ HINT: No operator matches the given name and argument types. You might need to add explicit type casts.
select * from "notifications" where "notifications"."notifiable_type" = App\Models\User and "notifications"."notifiable_id" = 1 and "notifications"."notifiable_id" is not null and "data"->>'format' = filament order by "created_at" desc limit 51 offset 0
I've poked around a bit but not sure where to start troubleshooting this. Seems clearly to have to do with using PostgreSQL, but I'm looking for some expert guidance on how to go about fixing this. Any help?

Hey!
Looking at https://filamentphp.com/docs/3.x/notifications/database-notifications – it looks like you need to change the notifications migration to use $table->json('data') and then re-run the migrations/seeder.
Outside of that, I don't personally have any experience using Postgres with Filament.

Excellent. Changing the notifications table migration as instructed there did the trick. Thank you!

Glad it worked!


URL that returns latest stable version of EdgeDriver does not seem to take OS, CPU arch and major browser version into account

I honestly do not know how to quantify this. It is either the opening for a discussion about the difficulty of auto-updating EdgeDriver, or the URL that returns the "latest stable" version of EdgeDriver just isn't useful anymore.
Issue 168 in the WebDriverManager.Net project on GitHub reports that auto-updating EdgeDriver is broken. Their current logic for getting the "latest" driver goes as follows:

Get the version number returned by https://msedgedriver.azureedge.net/LATEST_STABLE
Using a pattern in the URL, get the zip file (either win32 or win64).

The problem is that the version number (as of right now) returns 103.0.1264.51. There is no win32 or win64 version of this driver. That version number is only valid for MacOS and Linux. While there is nothing inherently wrong with this, it does present problems when attempting to update EdgeDriver automatically. It means the "LATEST_STABLE" URL returns the latest stable version without respect to the operating system.
Is this a bug in the URL endpoint to return the latest stable version of EdgeDriver, or is this the intended behavior?
Do we just need to replumb the logic for inferring the latest EdgeDriver by downloading the 2.5MB XML file at https://msedgedriver.azureedge.net/ and parsing through it, thereby ignoring the LATEST_STABLE URL?
I guess I'm just looking for a little direction on how we should be using these public URLs to infer which EdgeDriver supports a particular version of Edge.
A valid answer could also be "this is not the place to request this kind of help" (but it would be nice to know where to submit this feedback).

Full disclosure, the logic for auto-updating ChromeDriver is suffering from a similar kind of issue, which of course is not something Microsoft has any control over.
AB#42619861

Hi @gburghardt. I actually just responded to a similar issue only a few minutes ago: https://github.com/MicrosoftEdge/EdgeWebDriver/issues/39
The LATEST_STABLE endpoint is indeed not very useful in its current state. Hopefully the info in that thread is helpful.

Adding this to our internal backlog. This will likely be useful for tools like WebDriverManager and Selenium Manager.

Hi guys,
I faced with the same issue (please link the #175 issue here) - is there any details on the issue roots?
Could you please clarify the purpose of /LATEST_STABLE Endpoint? What exact platform it's point to? I found out that it doesn't actually point to the latest build, as the MacOS driver build '130.0.2849.81' is newer than one it responds with ('130.0.2849.80').


Warn when ignoring

I had some color names as strings, e.g. 'green', and I was getting no styles showing up and no errors. I think it would help to have warnings in the console when something is ignored by a styled-component.

You mean you had quotes around some values?
Right now it's not possible for us to literally lint your CSS, I'm afraid 😞  You can try our stylelint-processor, or wait for v3 which will actually parse all CSS.


When disabling HDR ouput freezes on device

Bug report, debug log and your config file (FULL LOGS ARE MANDATORY)

logs
Steps to reproduce
Disable HDR (Global)
What is expected?
LEDs should continue to update
What is actually happening?
When HDR (Global) is disabled the LEDs stop updating on my second WLED device (below cabinet) after about 1 second. though my main device (around screen) keeps updating as expected. As soon as HDR (Global) is reenabled the second device resumes updating the LEDs as expected. (ignore the "disconnected" errors in the log - that was me attempting to diagnose)
System

HyperHDR Server:

Build:           (HEAD detached at v<IP_ADDRESS>beta1) (GitHub-ccd22a1/558c7e0-1703192848)
Build time:      Dec 23 2023 14:59:36
Git Remote:      https://github.com/awawa-dev/HyperHDR
Version:         <IP_ADDRESS>beta1
UI Lang:         auto (BrowserLang: en-GB)
Avail Capt:      Linux (V4L2)
Database:        read/write

HyperHDR Server OS:

Distribution:   Debian GNU/Linux 12 (bookworm)
Architecture:   arm64
CPU Type:       Raspberry Pi 5 Model B Rev 1.0
CPU Hardware:   c04170
Kernel:         linux (6.1.0-rpi6-rpi-2712 (WS: 64))
Qt Version:     5.15.8

Verify your live preview (must switch to instance1 first), I suspect probable black screen. Then remove your custom LUT and see if that helps. Next step is disabling the blackboarder detector.

Sorry, it was the black bar detection - when in HDR it wasn't sufficiently sensitive. I've increased the tolerance and now it's ok. I think Black isn't truly black when in SD mode requiring the tolerance to be increased.

vs HDR enabled (non HDR content)

Which grabber? ms2130? If so make sure you read the update: https://github.com/awawa-dev/HyperHDR/discussions/499#discussioncomment-7978410

Yeah, ms2130.  Looking at the capabilities of mine, it must have the newer firmware.  Can the "original" version be flashed?

Which model you have:  A, B or something other? In mentioned thread you will find links: one to the article and one to the application (just be careful, although it was scanned and nothing suspicious was detected). Also backup of earlier version of firmware could be found there.

it's one of the random named ones in the metal cases - same hardware IDs as the others though. I'll have a good look through the thread tomorrow, it's quite extensive!

How did you test SDR (app? if HyperHDR tone mapping was disabled? which version of LUT table?) and do you have a screenshot?
Try to capture this image https://github.com/awawa-dev/HyperHDR/blob/v<IP_ADDRESS>/resources/lut/calibration_sdr.png

Maybe you didn't disconnect the grabber after flashing and it didnt reboot? Anyway differences are clearly visibly for SDR. Here's my fresh results from HyperHDR app:
New firmware:

Old firmware:

On input (26,26,26): new firmware capture it as (38,38,38), old firmware (26,26,26)
On input (26,26,0): new firmware capture it as (36,40,17), old firmware (24,27,0)
On input (0,26,26): new firmware capture it as (18,41,35), old firmware (0,26,23)
....
The rest you can check yourself.
Anyway the initial issue was explained & resolved so that's all I think. You can follow our latest findings in the MS2130 thread.


Implement timeout methods in AsyncManualResetEvent

Looking at ManaulResetEvent, there are several WaitOne method overloads supporting a timeout argument.  It would be ideal if AsyncManualResetEvent could support these signatures as well:

WaitAsync(Int32 timeout)
WaitAsync(Int32 timeout, CancellationToken cancellationToken)
WaitAsync(TimeSpan timeout)
WaitAsync(TimeSpan timeout, CancellationToken cancellationToken)
Wait(Int32 timeout)
Wait(TimeSpan timeout)

I disagree. Using timeouts for synchronization primitives is problematic to begin with (they really encourage questionable code patterns).
I don't see any way I'll agree with adding int overloads, since those are essentially a holdover from p/Invoke signatures. I could possibly be persuaded to add TimeSpan signatures, but there would have to be a really good argument in favor of them. What's your use case?

I'm fine with no Int32 timeouts.
A few use cases:

We don't want to halt code execution in the case of a bug, so we have a very long timeout and report the issue to a monitoring service for further investigation.
We do not want long running unit tests.  Failing quickly lets us know that our code is not working properly so we can address the issue.

Next question: there are already CancellationToken overloads, which allow timeouts via cancellation tokens. Is there a reason these do not supply your needs?

ManualResetEvent does support a timeout param

Yes, in theory you could use a CancellationToken, but I cannot think of a way to get the timer to start at the correct time.  Here's my best stab at it - maybe I'm just being dense, but it quickly turned into an ugly hack.

async Task doSomethingAsync(CancellationToken cancellationToken)
{
    var timeout = TimeSpan.FromMinutes(2);
    var resetEvent = new AsyncManualResetEvent(false);

    // do something and hooks into `resetEvent`

    var receivedSignal = await resetEvent.WaitAsync(cancellationToken, timeout).ConfigureAwait(false);
}

vs
async Task doSomethingAsync(CancellationToken cancellationToken)
{
    var timeout = TimeSpan.FromMinutes(2);
    var resetEvent = new AsyncManualResetEvent(false);

    // do something.  Hooks into `resetEvent`

    var cancellationTokenSource = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken);
    Task.Run(() =>
    {
        await Task.Delay(timeout).ConfigureAwait(false);
        cancellationTokenSource..Cancel();
    });

    bool receivedSignal = false;

    try
    {
        await resetEvent.WaitAsync(cancellationToken).ConfigureAwait(false);
        receivedSignal = true;
    }
    catch (OperationCanceledException ex)
    {
        receivedSignal = false;
    }
}

The CancellationTokenSource has a CancelAfter method. So you could write
async Task DoSomethingAsync(CancellationToken cancellationToken)
{
var timeout = TimeSpan.FromMinutes(2);
    var resetEvent = new AsyncManualResetEvent(false);

    // do something.  Hooks into `resetEvent`

    var cancellationTokenSource = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken);
    bool receivedSignal = false;

    try
    {
        cancellationTokenSource.CancelAfter(timeout);
        await resetEvent.WaitAsync(cancellationToken).ConfigureAwait(false);
        receivedSignal = true;
    }
    catch (OperationCanceledException ex)
    {
        receivedSignal = false;
    }
}

Ok,  so
async Task doSomethingAsync(CancellationToken cancellationToken)
{
    var timeout = TimeSpan.FromMinutes(2);
    var resetEvent = new AsyncManualResetEvent(false);

    // do something and hooks into `resetEvent`

    var receivedSignal = await resetEvent.WaitAsync(cancellationToken, timeout).ConfigureAwait(false);
}

vs.
async Task DoSomethingAsync(CancellationToken cancellationToken)
{
    var timeout = TimeSpan.FromMinutes(2);
    var resetEvent = new AsyncManualResetEvent(false);

    // do something.  Hooks into `resetEvent`

    var cancellationTokenSource = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken);
    bool receivedSignal = false;

    try
    {
        cancellationTokenSource.CancelAfter(timeout);
        await resetEvent.WaitAsync(cancellationToken).ConfigureAwait(false);
        receivedSignal = true;
    }
    catch (OperationCanceledException ex)
    {
        receivedSignal = false;
    }
}

Slightly less hacky.  Shouldn't a library abstract that clutter away from the consumer?

Well, you could add the whole logic into an Extension Method of AsyncManualResetEvent. That way you have the "ugly" code only once, and I don't think it's that ugly.
Null checking asside, here some code.
`public static async Task WaitAsync(this AsyncManualResetEvent mEvent, TimeSpan timeout, CancellationToken token = default)
{
var timeOut = new CancellationTokenSource(timeout);
var comp = CancellationTokenSource.CreateLinkedTokenSource(timeOut.Token, token);
        try
        {
            await mEvent.WaitAsync(comp.Token).ConfigureAwait(false);
            return true;
        }
        catch (OperationCanceledException e)
        {
            token.ThrowIfCancellationRequested(); //Forward OperationCanceledException from external Token
            return false; //Here the OperationCanceledException was raised by Timeout
        }
    }`

 public async Task<bool> WaitAsync(TimeSpan timeout, CancellationToken cancellationToken = default)
    {
        var isTimeout = false;
        var eventTask = _asyncManualResetEvent.WaitAsync(cancellationToken);
        if (await Task.WhenAny(eventTask, Task.Delay(timeout, cancellationToken)) != eventTask)
        {
            isTimeout = true;
            //complete task
            _asyncManualResetEvent.Set();
        }
        return !isTimeout;
    }

@Soon5 in your code you dispose neither timeOut nor comp although CancellationTokenSource implements IDisposable. Are you sure that doesn't introduce a memory leak?
My modified code with using statements and without rethrowing exceptions:
    public static async Task<bool> WaitAsync(this AsyncManualResetEvent mEvent, TimeSpan timeout, CancellationToken token = default)
    {
        using var timeOut = new CancellationTokenSource(timeout);
        using var combined = CancellationTokenSource.CreateLinkedTokenSource(timeOut.Token, token);

        try
        {
            await mEvent.WaitAsync(combined.Token).ConfigureAwait(false);
            return true;
        }
        // Don't catch the OperationCanceledException from external Token
        catch (OperationCanceledException) when (!token.IsCancellationRequested)
        {
            return false; //Here the OperationCanceledException was raised by Timeout
        }
    }

You are right. Thanks for updating the code. Three years ago when I wrote that code, the using statements were very new and didn't yet make it into my usual behaviour. Also I read an article a while ago, that in some circumstances not disposing CTS can introduce Memory leaks, so I also now dispose them.
That code was never intended to be used out of the box, it was mere an Idea on how the requested feature could look like, that's why also omitted the usual input checking and stuff. Still it's good that you point out that missing stuff as well.


Windows Volume binding does not support read only :ro mode?

Windows Volume binding does not support read only :ro mode? Is that supposed to be like that? Is there any documentation related to Windows specific volume binding?
$ docker run -v c:\test:c:\test:ro windowsservercore powershell

results into:
$ C:\Program Files\Docker\docker.exe: Error response from daemon: Invalid bind mount spec "c:\\test:c:\\test:ro": Invalid volume specification: 'c:\test:c:\test:ro'.
See 'C:\Program Files\Docker\docker.exe run --help'.

BUG REPORT INFORMATION
Output of docker version:
Client:
 Version:      1.13.0-dev
 API version:  1.25
 Go version:   go1.6.3
 Git commit:   919257d
 Built:        Wed Aug  3 09:51:21 2016
 OS/Arch:      windows/amd64

Server:
 Version:      1.13.0-dev
 API version:  1.25
 Go version:   go1.6.3
 Git commit:   919257d
 Built:        Wed Aug  3 09:51:21 2016
 OS/Arch:      windows/amd64

Output of docker info:
Containers: 15
 Running: 3
 Paused: 0
 Stopped: 12
Images: 13
Server Version: 1.13.0-dev
Storage Driver: windowsfilter
 Windows:
Logging Driver: json-file
Plugins:
 Volume: local
 Network: nat null overlay
Swarm: inactive
Security Options:
Kernel Version: 10.0 14300 (14300.1045.amd64fre.rs1_release_svc.160705-1059)
Operating System: Windows Server 2016 Datacenter Technical Preview 5
OSType: windows
Architecture: x86_64
CPUs: 8
Total Memory: 28 GiB
Name: ACHEU001
ID: HS6A:DEGI:TTDB:YSUP:UZBP:DEXN:ILXE:BSHT:QYF3:WKAH:WIME:JMBW
Docker Root Dir: C:\ProgramData\docker
Debug Mode (client): true
Debug Mode (server): true
 File Descriptors: -1
 Goroutines: 53
 System Time: 2016-08-05T14:17:06.1810283Z
 EventsListeners: 0
Registry: https://index.docker.io/v1/
Insecure Registries:
 <IP_ADDRESS>/8
Live Restore Enabled: false

Additional environment details (AWS, VirtualBox, physical, etc.):
Azure Windows Server 2016 TP5

Is that related https://github.com/docker/docker/commit/e5261d6e4a1e96d4c0fa4b4480042046b695eda1 ?

Windows RS1 now supports read-only volumes, so this issue is resolved, but
@jstarks is RS1 publicly available?

No, RS1 (i.e. Server 2016 RTM) is not publicly available. I believe this should work with --isolation=hyperv even on Server 2016 TP5, though.

RS1 is now publicly available, so closing this issue


Add i18n for track easing and baking dialogs

Field labels.
Transition type and ease type in the dropdown. Context is used because these are very simple words, some of which are already used in different contexts.

Thanks!


Bring PoC changes into master

Fixes #41

Note - some of these changes were already applied by @connorkuehl

Note - some of these changes were already applied by @connorkuehl

@MikeCamel These changes resemble an earlier draft of some changes I've iterated on and already merged into this crate.

@MikeCamel These changes resemble an earlier draft of some changes I've iterated on and already merged into this crate. Have you tested your PoC with the sev master branch?

ciborium master would require those changes... guess it's time for a new ciborium release

ciborium master would require those changes... guess it's time for a new ciborium release

or the other way round :-)

or the other way round :-)

@MikeCamel These changes resemble an earlier draft of some changes I've iterated on and already merged into this crate.

Yes - I get multiple failures on cargo build.

@MikeCamel These changes resemble an earlier draft of some changes I've iterated on and already merged into this crate.

Yes - I get multiple failures on cargo build.

As per @connorkuehl's point, this replicates other changes.  Moved to upstream sev, as this branch no longer required.

As per @connorkuehl's point, this replicates other changes.  Moved to upstream sev, as this branch no longer required.


Use Python lint tool prior to public release

I recommend we use a tool such as pyflakes or pylint to check for certain types of inconsistencies in taxii-client. For instance:
jhg@earthenware:~/intelworks/taxii-client-master$ find -name '*.py' -exec pyflakes {} \;
./tests/test_client11.py:2: 'urllib2' imported but unused
./tests/test_client11.py:12: 'from libtaxii.constants import *' used; unable to detect undefined names
./tests/test_client11.py:13: 'from fixtures11 import *' used; unable to detect undefined names
./tests/test_client11.py:330: local variable 'response' is assigned to but never used
./tests/test_client11.py:348: local variable 'response' is assigned to but never used
./tests/test_client10.py:2: 'urllib2' imported but unused
./tests/test_client10.py:12: 'from libtaxii.constants import *' used; unable to detect undefined names
./tests/test_client10.py:13: 'from fixtures10 import *' used; unable to detect undefined names
./tests/test_client10.py:229: local variable 'response' is assigned to but never used
./taxii_client/client11.py:1: 'datetime' imported but unused
./taxii_client/client11.py:4: 'from libtaxii.constants import *' used; unable to detect undefined names
./taxii_client/client11.py:7: 'ContentBlock' imported but unused
./taxii_client/client11.py:7: 'ts_to_date' imported but unused
./taxii_client/client11.py:111: local variable 'response' is assigned to but never used
./taxii_client/client10.py:3: 'from libtaxii.constants import *' used; unable to detect undefined names
./taxii_client/client10.py:53: local variable 'response' is assigned to but never used
./taxii_client/abstract.py:6: 'ST_NOT_FOUND' imported but unused
./taxii_client/__init__.py:5: 'ContentBlock' imported but unused

Especially noticeable are the unused imports, which should be removed in a public version (imho).

covered by integrating with landscape.io


jQuery confusion

I'm confused (on a low level ...)!
when trying to apply the attached 'tooltip.txt' jQuery sample in Orchard 1.10.2
the tooltip appears BUT, after 5s, it disappears automatically. I'd like to have it as long as 'mouseover'.
In a 'HTML Layout' I use (Orchard 1.10.2):

Top tooltip

ToolTip.txt: in this sample the 'tooltip' stays as long as the mouse is over it!
Questions:

I would have thought to set different parameters in the appropriate 'alternate view'!?
where do I see which parameters/variables are used?
PS: In 'Orchard.Resources' I read "Depreciated in 1.10 for e.g. jQueryUI !?! .............

I know I probably need a crash course ...
Thanks for your time and help, ed

Maybe try to ask this on gitter, you should have some answers. It's not really a bug in Orchard.

thanks Sebastien,
never thought this to be an Orchard bug - its more my deficit
Thanks for the gitter advise


Drop dependency on k8s.io/kubernetes

Kubernetes intentionally ships a broken go.mod file to discourage people from depending on k8s.io/kubernetes (see kubernetes/kubernetes#79384). As a result, in order to depend on operator-sdk, we must go through major hacks to get go modules working.
Is it feasible to drop this dependency?
kubernetes/kubernetes#79384 (comment) indicates it may be possible to move the controller library out of k8s.io/kubernetes, and I think the only other usage is kubectl which can already use k8s.io/api and k8s.io/kubectl

@howardjohn I would love to drop the dependency on k8s.io/kubernetes. Last I checked, the only reason k8s.io/kubernetes is required by operator-sdk is because of a transitive dependency from Helm (which is mentioned in kubernetes/kubernetes#79384).
Based on the discussion in https://github.com/helm/helm/issues/6606, it sounds like only Helm 3 will be targeted, which will mean some moderate refactoring in this project's helm-operator to facilitate this. That's not a huge concern, because we're planning to bump to Helm 3 anyway.
Lastly, it is possible we will have to wait on a controller-runtime release that supports the same version of Kubernetes that the Helm 3 release that removes this dependency supports.

Looks like operator-framework/operator-lifecycle-manager also requires k8s.io/kubernetes, so we'll have to look into dropping that dependency there too.

@joelanford  Turned out to be running the go get command from a directory with a go.mod that doesn't have the k8s dependencies (i.e. replace).  I was trying to test out doc generation from the project https://github.com/ahmetb/gen-crd-api-reference-docs so I was running in that directory.  Running elsewhere and I don't see the problem.  Thanks!
BTW, is there any other recommended way to generate API docs?

/remove-lifecycle rotten

@howardjohn  Seems you are using it as a library, what parts of the SDK are you using when importing it? We've talked about making a library at some point which might help with this issue depending on what parts are being used. Clearly, if it's helm a separate library that supported that probably wouldn't fix the issue. But I'd like a little more information about your use cases.

 We removed these a while back, so it doesn't personally impact me, but may be useful forohters

It's been awhile since I looked at this, but it appears that the only remaining blocker for this issue is that operator-sdk has a transitive dependency on k8s.io/kubernetes via its OLM dependency.
$ go mod graph | grep ' k8s.io/kubernetes'
github.com/operator-framework/operator-sdk<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
If you're wondering why that first operator-sdk entry shows up, it is because it is listed as indirect in the go.mod file. Searching operator-sdk code for k8s.io/kubernetes imports yields no results:
$ find . -name '*.go' -exec grep 'k8s.io/kubernetes' {} \; | wc -l
0


audit: allow skipping audit methods.

Add --only and --except methods which can be used to selectively enable or disable audit groups.
CC @ilovezfs is this what you had in mind? Is this useful to you?

@GauthamGoli Thoughts on best way to approach this with RuboCop? Would be great to have similar functionality there.

@MikeMcQuaid Similar functionality is possible. RuboCop also has --only and --except options, Registry class keeps track of all cops in an array. The cops can be filtered based on --only and --except and pass them as options to check_style_json call in style.rb

@GauthamGoli A PR that passed those through would be amazing. You up for that?

@MikeMcQuaid Yeah, I will submit a PR.


Split DB into schemas

So SQLAlchemy is a bit prickly when it comes to handling schemas, so using this workaround to be able to create schemas. There's probably a couple different ways of doing this, like setting up a trigger outlined here, though either one seems fine to me. Alternatively, we would use some sort of migration library like alembic, though that seems like a bit of work if we're just trying to create schemas.

Codecov Report

Merging #38 into master will increase coverage by 0.2%.
The diff coverage is 50%.

@@           Coverage Diff            @@
##           master     #38     +/-   ##
========================================
+ Coverage   68.09%   68.3%   +0.2%
========================================
  Files          11      11
  Lines         304     306      +2
========================================
+ Hits          207     209      +2
  Misses         97      97

Impacted Files
Coverage Δ

nycodex/scrape/__init__.py
100% <100%> (ø)
:arrow_up:

nycodex/db/metadata.py
100% <100%> (ø)
:arrow_up:

nycodex/scrape/dataset.py
44.54% <25%> (+0.5%)
:arrow_up:

Continue to review full report at Codecov.

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


{Compute} az vm create & az vm update: improve argument help message

Description
Fix: https://github.com/Azure/azure-cli/issues/22069
Improve help message of arguments:
--host
--host-group

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Compute


Humble request

Please dear good sir, could you please make a linux version available, of course if you are willing to do so generously.
Or perhaps a version that can run on Wine.
Thank you in advance

Not happening, most Linux users prefer command line anyway.

I've been a happy Linux sysadmin for more than 10 years now and I can say with confidence having the ability to rapidly preview, drag-and-drop, and interpolate models without mountains of typing or creating 20 bash scripts is by far an improvement in workflow. I understand your reluctance to even attempt this but to immediately dismiss the concept with a statement about "most" Linux users is a faulty generalization and an informal fallacy. I would throw money towards the goal of a working interface for linux or at least some method for getting it functional in wine. I dislike dual-booting and as you know Virtualization just doesn't suffice in this case. Not to mention numerous dependency issues with ESRGAN depending on the linux distribution you use, having something consistent would be much better.

NCNN produces this error under wine

But the Pytorch does work but only in CPU mode which is obviously much slower.
When trying upscale in GPU mode it throws this error
[CMD] /C cd /D "Z:\home\buymymojo\Cupscale 1.39.0f1\CupscaleData\bin\esrgan-pyto
rch" & "Z:\home\buymymojo\Cupscale 1.39.0f1\CupscaleData\bin\py\python.exe" upsc
ale.py --input "Z:\home\buymymojo\Cupscale 1.39.0f1\CupscaleData\preview" --outp
ut "Z:\home\buymymojo\Cupscale 1.39.0f1\CupscaleData\preview-out"   --device_id
0   --alpha_mode 1   "Z:\home\buymymojo\Cupscale 1.39.0f1\CupscaleData\models\ES
RGAN\Generic\4x_NMKD-Superscale-SP_178000_G.pth"
[Python] Traceback (most recent call last):
[Python]   File "upscale.py", line 11, in <module>
[Python]     import torch
[Python]   File "Z:\home\buymymojo\Cupscale 1.39.0f1\CupscaleData\bin\py\Lib\sit
e-packages\torch\__init__.py", line 116, in <module>
[Python]     raise err
[Python] OSError: [WinError -529697949] <no description> Error loading "Z:\home\
buymymojo\Cupscale 1.39.0f1\CupscaleData\bin\py\Lib\site-packages\torch\lib\torc
h_python.dll" or one of its dependencies.
[ESRGAN] Upscaling Error: Index was outside the bounds of the array.
  at Cupscale.Main.Upscale.Run (System.String inpath, System.String outpath, Cup
scale.Data.ModelData mdl, System.Boolean cacheSplitDepth, System.Boolean alpha,
Cupscale.UI.PreviewUi+PreviewMode mode, System.Boolean showTileProgress) [0x0040
d] in <263174a4b4a54bd7b0ce2696f5fa92f2>:0

Another issue unrelated to the actual upscale process in zooming and panning around an image is slower under wine compared to native windows. a native linux version of cupscale would be much appreciated and more useful then just a CMD program. no other software lets you preview the scale on a small chunk of the image before scaling the full image.

any hope for this? I generally do not do CLI if I an avoid it. And really don't know how to CLI this stuff anyways.

any hope for this? I generally do not do CLI if I an avoid it. And really don't know how to CLI this stuff anyways.

To do this in Cli I use to the same fork of ESRGAN that cupscale is based off which just uses python, it works but doesn't let you just do parts of the image easily to test like cupscale does
https://github.com/JoeyBallentine/ESRGAN

@michael-conrad nope


ARROW-16734: [C++] Bump vendored version of protobuf

@github-actions crossbow submit -g cpp

@github-actions crossbow submit -g cpp

@pitrou @lidavidm The latest version of protocol buffers is the following (there was a change of schema versioning between v3.20 and v21):
ARROW_PROTOBUF_BUILD_VERSION=v21.2
ARROW_PROTOBUF_BUILD_SHA256_CHECKSUM=9ae699200f3a80c735f9dc3b20e46d447584266f4601403e8fe5b97005f204dd

If I try to set the latest version all code and test works but there is a failure on the thread-sanitizer job building substrait.
See part of the stack trace for this build (https://github.com/ursacomputing/crossbow/runs/7302033023?check_suite_focus=true):
[86/902] Building CXX object CMakeFiles/substrait.dir/substrait_ep-generated/substrait/type.pb.cc.o
FAILED: CMakeFiles/substrait.dir/substrait_ep-generated/substrait/type.pb.cc.o
/usr/bin/ccache /usr/lib/ccache/clang++-12  -DARROW_HAVE_RUNTIME_AVX2 -DARROW_HAVE_RUNTIME_AVX512 -DARROW_HAVE_RUNTIME_BMI2 -DARROW_HAVE_RUNTIME_SSE4_2 -DARROW_HAVE_SSE4_2 -DARROW_NO_DEPRECATED_API -DARROW_WITH_RE2 -DARROW_WITH_TIMING_TESTS -DARROW_WITH_UTF8PROC -DDYNAMIC_ANNOTATIONS_ENABLED -DTHREAD_SANITIZER -D_GLIBCXX_EXTERN_TEMPLATE=0 -Isubstrait_ep-generated -Iprotobuf_ep-install/include -Isrc -I/arrow/cpp/src -I/arrow/cpp/src/generated -Qunused-arguments -fcolor-diagnostics -ggdb -O0  -Wall -Wextra -Wdocumentation -Wshorten-64-to-32 -Wno-missing-braces -Wno-unused-parameter -Wno-constant-logical-operand -Wno-return-stack-address -Werror -Wno-unknown-warning-option -Wno-pass-failed -msse4.2  -fsanitize-blacklist=/arrow/cpp/build-support/sanitizer-disallowed-entries.txt -g -fPIC   -fsanitize=thread -std=c++11 -MD -MT CMakeFiles/substrait.dir/substrait_ep-generated/substrait/type.pb.cc.o -MF CMakeFiles/substrait.dir/substrait_ep-generated/substrait/type.pb.cc.o.d -o CMakeFiles/substrait.dir/substrait_ep-generated/substrait/type.pb.cc.o -c substrait_ep-generated/substrait/type.pb.cc
In file included from substrait_ep-generated/substrait/type.pb.cc:4:
In file included from substrait_ep-generated/substrait/type.pb.h:28:
In file included from protobuf_ep-install/include/google/protobuf/generated_message_reflection.h:47:
In file included from protobuf_ep-install/include/google/protobuf/unknown_field_set.h:53:
protobuf_ep-install/include/google/protobuf/parse_context.h:328:47: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
    int chunk_size = buffer_end_ + kSlopBytes - ptr;
        ~~~~~~~~~~   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
protobuf_ep-install/include/google/protobuf/parse_context.h:342:45: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
      chunk_size = buffer_end_ + kSlopBytes - ptr;
                 ~ ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
protobuf_ep-install/include/google/protobuf/parse_context.h:786:41: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
  int nbytes = buffer_end_ + kSlopBytes - ptr;
      ~~~~~~   ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
protobuf_ep-install/include/google/protobuf/parse_context.h:804:39: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
    nbytes = buffer_end_ + kSlopBytes - ptr;
           ~ ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
protobuf_ep-install/include/google/protobuf/parse_context.h:836:32: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
  int chunk_size = buffer_end_ - ptr;
      ~~~~~~~~~~   ~~~~~~~~~~~~^~~~~
protobuf_ep-install/include/google/protobuf/parse_context.h:840:23: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
    int overrun = ptr - buffer_end_;
        ~~~~~~~   ~~~~^~~~~~~~~~~~~
protobuf_ep-install/include/google/protobuf/parse_context.h:861:30: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
    chunk_size = buffer_end_ - ptr;
               ~ ~~~~~~~~~~~~^~~~~
protobuf_ep-install/include/google/protobuf/parse_context.h:884:25: error: implicit conversion loses integer precision: 'uint64_t' (aka 'unsigned long') to 'uint32_t' (aka 'unsigned int') [-Werror,-Wshorten-64-to-32]
  uint32_t number = tag >> 3;
           ~~~~~~   ~~~~^~~~
8 errors generated.

This seems to be a substrait issue more than ARROW but I wanted to get your thoughts on this.
The current updated version on this PR is the latest before the change of schema versioning which works for the sanitizer job (I reproduced the issue locally).

this is really a protobuf issue and we already suppress such warnings for MSVC which is stricter about these things
https://github.com/apache/arrow/blob/8608e193c14427d22324023a7a9849f9389c9f8a/cpp/cmake_modules/ThirdpartyToolchain.cmake#L1733-L1742
looks like we need to suppress them for all compilers now

@github-actions crossbow submit -g cpp


Judder experimented when looking around

Configuration :

Windows 8.1
Oculus Rift DK2
Runtime 0.6
Chromium 44.0.2383.0

Reproduction steps :

Launch the example at /index.html
Rotate the oculus by 90° with quick and repeated motion

Expected result :

The camera should look at the aim of the oculus in a smoothless fashion

Actual result :

Judders are experimented while doing the motion

Other informations :

I updated with the latest commits to experience this problem which I didn't have before. I tried to roll back to commit ae349e914e85e4887246108c4d36a3b8f6f3e74f and I don't experience the problem anymore.

Thanks for the amazing work though, all the other features are working neatly!

Confused by this one. If you have an Oculus plugged in, the polyfill shouldn't be enabled at all. I'm assuming you're using a WebVR-enabled browser build? Could you try testing again, this is very mysterious?

I'm using the chromium webVR enabled version yes. And I do reproduce, it's like the camera would try to get rotation information that it has trouble to have when the oculus is not facing or moving too quickly?

Could you capture a video? The polyfill should not enabled in that case, so
you should log a bug against the WebVR implementation.
On Tue, Sep 15, 2015 at 6:36 PM tbalouet<EMAIL_ADDRESS>wrote:

I'm using the chromium webVR enabled version yes. And I do reproduce, it's
like the camera would try to get rotation information that it has trouble
to have when the oculus is not facing or moving too quickly?
—
Reply to this email directly or view it on GitHub
https://github.com/borismus/webvr-boilerplate/issues/37#issuecomment-140594861
.

I'll try to do that tonight, thanks for the attention!
2015-09-15 18:40 GMT-07:00 Boris Smus<EMAIL_ADDRESS>
Could you capture a video? The polyfill should not enabled in that case, so
you should log a bug against the WebVR implementation.
On Tue, Sep 15, 2015 at 6:36 PM tbalouet<EMAIL_ADDRESS>wrote:

I'm using the chromium webVR enabled version yes. And I do reproduce,
it's
like the camera would try to get rotation information that it has trouble
to have when the oculus is not facing or moving too quickly?
—
Reply to this email directly or view it on GitHub
<
https://github.com/borismus/webvr-boilerplate/issues/37#issuecomment-140594861
.

—
Reply to this email directly or view it on GitHub
https://github.com/borismus/webvr-boilerplate/issues/37#issuecomment-140595427
.

--
http://www.beloola.com
Thomas BALOUET  http://beloola.com/balou
http://www.twitter.com/thomasbalou*
https://fr.linkedin.com/in/thomasbalouet*
VR CREATIVE ENGINEER @Beloola
Tel : +33 (0)651-886-140

Hey, I uploadd a video here : you can see that it seems okay for a certain time but by doing the same movement at some point it jumps out :
https://youtu.be/SxshFTmSv4Q

This is likely not a WebVR boilerplate issue, but something with the underlying Chrome/FF implementation. Unless you have a reason to think it's boilerplate-specific, in which case please re-open.


[typo] (docs)Row storage mode can only be turned on when creating a table

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


[Enhancement]: Add scontrol function that calls scontrol on host

The slurmctld operator relies on scontrol for various operations such as triggering the reload of the Slurm configuration without being required to hard restart the slurmctld service.
It can be a simple method definition like we have for systemctl, mungectl, and snap, and raise SlurmOpsError if there are any issues encountered when performing operations on Slurm.

scontrol is also already aliased as well by the Slurm snap so we don't need to worry about the slurm.scontrol vs scontrol difference.


dragstart event reported before pointerdown

Version

Phaser Version: 3.22.0
Operating system: macOS catalina
Browser: Chrome 80.0.3987.163

Description

in an object where on() has been called to register callbacks for pointerdown and dragstart/drag/dragend, dragstart is called before pointerdown. This seem incorrect, as, for example, one may want to mark an object as selected on pointerdown, and records deltas for selected objects (possibly more than one) on dragstart, so that on drag they can all be moved together, but with the reversed event one is forced to consider as selected the object for which the event was notified, even if it is not yet selected.
I would expect the order to be pointerdown, dragstart, drag, dragend, pointerup. Instead, the observed order is: dragstart, pointerdown, drag, dragend, pointerup
Example Test Code
class Example1 extends Phaser.Scene {
constructor() {
super({ key:'Example1' })
}
preload() {
this.load.baseURL = 'https://examples.phaser.io/assets/';
this.load.crossOrigin = 'anonymous';
this.load.image('phaser', 'sprites/phaser-dude.png');

}
create() {
this.image  = this.add.image( 50, 50, 'phaser' );
this.image.setInteractive();
this.input.setDraggable(this.image);
this.input.on('pointerdown', function( event ) {console.log('pointerdown'); });
this.input.on('pointerup', function( event ) {console.log('pointerup'); });
this.input.on('dragstart', function(event) {console.log('dragstart'); });
this.input.on('drag', function(event) {console.log('drag');});
this.input.on('dragend', function(event) {console.log('dragend');});
}
}
var config = {
type: Phaser.AUTO,
width: 800,
height: 600,
physics: {
default: 'arcade',
arcade: {
gravity: {
y: 200
}
}
},
scene: [
Example1
]
}
var game = new Phaser.Game( config );
Additional Information

While I agree it would make more sense the other way around (as it would match the DOM), it's been this way for years now and I'm not going to change it at this stage in Phaser 3s life, sorry, as I don't consider it a big enough issue that can't be easily worked around as-is.


Is it free to use?

Is it free to use?

Yes, you can try it for free. We have ESP Insights Dashboard deployed as a service, where you can signup, and login to check all the diagnostics information remotely via web browser.

So in the future it will be a paid service，Can individual developers have several free keys?

It would be a paid service in future for commercial use. Plan is to maintain it free for individual developers with some monthly usage limits may be.


Spectaql theme wrong styling for codeblock

Steps:

Choose the specaql theme.
Add a codeblock to x-introItems

It renders assuming a black background, which is incorrect. This bug only occurs on this theme.

I'm not sure if this is a bug, but rather you don't like that aspect of the spectaql theme. I would agree that the code block stylings are not great. Perhaps in the future we'll try to improve that, but because you can customize that with your own them, I don't think there's any work for me to do here right now.


Add translation and FB.ui

Add translation for "Share" in french and add support to FB.ui because Facebook Sharer is now deprecated, but let possibility to use both.

0.3.3 released


cc1plus: error: unrecognised command line option ‘-std=c++11’

I've got that Issue after typing make I have the newest version of g++

That is very strange if you're using the latest g++. What is your g++ version? Do g++ --version. You'll need g++ 4.3+ for -std=c++11 to work.

I know, but it doesn't I am using Ubuntu 12.04

Strange. A possible quick workaround is to try changing the Makefile to say -std=c++0x instead of -std=c++11. But this version of g++ should really support the latter option.

I put that command but now I have the following erros:
conversion.cpp:119:16: error: cannot declare variable ‘g_numpyAllocator’ to be of abstract type ‘NumpyAllocator’
conversion.cpp:64:7: note:   because the following virtual functions are pure within ‘NumpyAllocator’:
/usr/local/include/opencv2/core/mat.hpp:405:23: note: 	virtual cv::UMatData* cv::MatAllocator::allocate(int, const int*, int, void*, size_t*, int, cv::UMatUsageFlags) const
/usr/local/include/opencv2/core/mat.hpp:407:18: note: 	virtual bool cv::MatAllocator::allocate(cv::UMatData*, int, cv::UMatUsageFlags) const
/usr/local/include/opencv2/core/mat.hpp:408:18: note: 	virtual void cv::MatAllocator::deallocate(cv::UMatData*) const
conversion.cpp: In member function ‘cv::Mat NDArrayConverter::toMat(const PyObject*)’:
conversion.cpp:202:11: error: ‘class cv::Mat’ has no member named ‘refcount’
conversion.cpp: In member function ‘PyObject* NDArrayConverter::toNDArray(const cv::Mat&)’:
conversion.cpp:223:12: error: ‘class cv::Mat’ has no member named ‘refcount’
conversion.cpp:230:36: error: ‘class cv::Mat’ has no member named ‘refcount’
conversion.cpp:231:1: warning: control reaches end of non-void function [-Wreturn-type]
conversion.h: At global scope:
conversion.h:13:18: warning: ‘opencv_error’ defined but not used [-Wunused-variable]
conversion.cpp:51:18: warning: ‘PyObject* failmsgp(const char*, ...)’ defined but not used [-Wunused-function]
conversion.cpp:7:13: warning: ‘void init()’ defined but not used [-Wunused-function]
make: *** [conversion.o] Error 1

The same issue, what can I do?

I am sorry for the delay, to answer, the thing it is that you have also to activate the version.
I dont remember so well, but I think this is the solution http://askubuntu.com/questions/269257/how-to-activate-gcc-4-7-version

@hiostreas Thanks for your solution, hopefully it helps others. I never had to activate the version on my box (Fedora).


Adds test (and comment) on 'Serving apps at' ready signal

Here's a start. I guess checking for a url could be done, but that would have to be part of the "spec" then I guess.

I'm trying to think about how this could be improved further, but I guess what's important is that there is some message that can be relied on. So let it be "Serving apps at" for the rest of Flexx' lifetime :)


Lost State with a deep effect stack

This one is mega puzzling, but the following test case fails for me
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE LambdaCase #-}
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -Wno-incomplete-patterns #-}

module CircuitHub.PNP.Job.Controller.PickAndPlace.Weirdness (main, tests) where

-- effectful
import Effectful (Eff, Effect, runEff)
import Effectful.Dispatch.Dynamic (interpret, reinterpret)
import Effectful.State.Static.Local (execState, modifyM)

-- effectful-th
import Effectful.TH (makeEffect)

-- tasty
import Test.Tasty (TestTree, defaultMain)

-- tasty-hunit
import Test.Tasty.HUnit (testCase, (@?=))

data Foo :: Effect
makeEffect ''Foo

runFoo :: forall es a.

I should note that using State.Shared this works fine, so it seems like a weird Env update.

We've also found that you can shove all those outer runFoos into the reinterpret and this still fails. It seems that the reinterpret is the real culprit here - but only with lots of runFoos!

It seems that the reinterpret is the real culprit here - but only with lots of runFoos!

Not quite, this is enough to reproduce:
tests :: TestTree
tests =
  testCase "Weird bug" $ do
    i <- runEff $ do
      i' <- execState (1::Int) $ do
        modifyM @Int $ \_ -> do
          _ <- runReader () $ pure ()
          pure (42 :: Int)
      pure $ i'
    i @?= 42

The problem is running enough effects within modifyM so that the internal array in Storage gets expanded. It gets expanded when the code tries to put 2^n+1th effect for the first time (it's 33 in your example).
Fix incoming.

Amazing, thank you!


AutoSlug with consistent API

Fixes: #493

This PR resolves the issue of slugs being handled differently between the UI, ORM, CSV and API.  Introduced a new field called AutoSlugField based on django-slugger.

Sorry for the delay in getting to this! Big changeset here but this really looks great. Might make sense to add some documentation, perhaps in nautobot/docs/development/best-practices.md?

Sure! I can add some documentation on the best-practices.  It would  help so that we don't have to do another big change like this in the future.

Looks great to me, one question though. One can still specify their own slug value correct?

Looks great to me, one question though. One can still specify their own slug value correct?

Correct, I explain more above. The provided value is used for the slug and works on all Interfaces (API, UI, CSV, and ORM).


(IContainer Updates Phase 3) Op processing management: resume, deltaManager

Requirement
Client applications require a way to manually control when ops are being processed. This is useful both from a UX perspective, i.e. how FFX uses it to process ops prior to rendering a view, and for control over a test harness. One of the most extensively used classes in our end-to-end-tests is the loaderContainerTracker which exposes an API for tests to use when they need to resume and pause ops on containers created by a specific loader.
The current delta manager API which is currently being used for this needs to be improved. To an outside developer, deltaManager is almost incomprehensible due to the myriad of functionality available on its public API. Furthermore, it also exposes values such as sequence number information, access to the inbound and outbound delta queues themselves, service configuration info, and client details that we might not want developers accessing. As such, a more condensed public API is needed.
The new API should be made available and tested such that it does not create any modifications or regressions to the behavior in the sequencing of ops as it would have occurred were direct control applied to the delta manager itself. I.e. the same sequence of operations conducted through the delta manager API and the new API should result in ops being processed in the same order
Proposed Solution
PR: [Draft WiP] Move op processing control and tracking to container level by sumedhb1995 · Pull Request #8707 · microsoft/FluidFramework (github.com)
In the described PR, the idea is to open up a new interface on IContainer where me migrate some of the functionality from deltaManager and expose it there in a more controlled fashion. The overarching concept here is that we can take the functionality we want to expose from delta manager in a piecemeal fashion and provide it as a new interface on IContainer, until we can deprecate delta manager altogether and only use the new API. Here, we are specifically targeting the functionality for controlling the op stream.
To provide the controls necessary for our users, we provide a new containerOpController value on the IContainer interface. It is of type IContainerOpController and provides four functions:

pauseProcessing(): Promise;
Pause all queue activities on the current container
resumeProcessing(): void;
Resume all queue activities on the current container
processIncoming(): Promise;
Pause all queue activities, and resume only inbound to process ops until it is idle. All queues are left in the paused state after the function
processOutgoing(): Promise;
Pause all queue activities, and resume only outbound to process ops until it is idle. All queues are left in the paused state after the function

Requirement Fulfillment (in order of requirements presented above):
These four APIs fulfill the requirements of both UI-based clients to control when op processing is being paused and resumed, as well as all the necessities of our end-to-end-tests harnesses. In fact, as a way of testing the PR, it refactors the loaderContainerTracker to use the containerOpController in order to manipulate and synchronize the operations of each individual container that the loader creates, instead of reaching into the deltaManager for each of them. This is an example of how this allows the container to independently provide the knobs for its op flow instead of requiring higher-level components to reach into their inner workings.
These four APIs provide an easily understandable way of controlling the op stream. While the move of the other interfaces, such as client ID and if the current client is a summarize client or not, do also need to be moved off of delta manager, that should come in subsequent PRs. This one, however, allows us to capture one of the most popular uses of delta manager, which control over the inbound and outbound queues.
Since loaderContainerTracker is used extensively in our DDS and end-to-end-tests, by incorporating its refactoring into this PR, we have an extensive number of test suites running to ensure that the order of operations stays the same despite the change in the interface with which we apply the control. Furthermore, even after containerOpController is exposed and released, deltaManager will still be available so that our customers can migrated gracefully

Moved to ADO


Theme support

my default windows theme is dark, when i open netron app, it default is dark, but i like netron is light mode, so , how can i change it?
please help!
my netron version is 6.8.2

@jcyhcs theming is not supported beyond following the OS light mode and dark mode theme.


Terminal not responding

I am a python programmer, I really like using VS code for writing my programs, but from past weeks I have this problem that, when I 'Kill the terminal window' (To start fresh), the program stops responding, and then after a minute or so, a window pops up saying "Do you want to reopen the application?", I always click on reopen then it restarts the program with the project file open. But nowadays this window always comes, I Need Help!

In my case, killing the terminal during debugging (e.g. at breakpoint) causing terminal to not respond as above 100% of the time
possibly related to #78138

/duplicate https://github.com/microsoft/vscode/issues/76548


Gitlab deployment error on AppService

Repro steps.
I'm building using .NET Command Line Tools (2.0.0) on my local machine.
The error occurs when deploying to my AppService via Gitlab and when trying to execute webjobs based on ASP.NET Core 2.0.
The log/error given by the failure.
I lost the log from the last failed deployment, and unfortunately I cannot compromise our Production environment again, but the error message is the same as on WebJob execution.
D:\Program Files (x86)\dotnet\sdk\2.0.0\NuGet.targets(102,5): error : Could not find file 'D:\home\.nuget\microsoft.netcore.platforms\2.0.0\microsoft.netcore.platforms.nuspec'. [D:\local\Temp\jobs\continuous\prod-bearings-jobs\zp0zeytq.i22\Bearings.VG.Jobs\Bearings.VG.Jobs.csproj
Debug your Azure website remotely.
prod-bearings-vocationalguidance-api
Thank you for the help.

That's not enough detail to investigate. Can you provide a repro per this page? Thanks!


Can't drag VS Code to the side of monitor

When I drag VS Code to the side of my monitor, I expect it to resize and take up 50% of the screen. It does not do that with Vibrancy installed.

What does it do instead? Also, which OS are you using?

It makes the window smaller, and doesn't "snap" it.
I am on Windows 11

Thanks for the workaround. The issue also happens when moving the window around. My monitor is 3860 x 1600 with 175% scaling, if that would also be relevant to this issue.
Don't mind the incorrect cursor position in the recordings, that's another bug with ShareX lol
Resizing window:

Dragging window to side:


Set og:image for root page

Checklist

[x] I have read the newlest tutorials and know the correct effect of the functional design.
[x] There is no similar question on existing issues (including closed ones).
[x] I have tried to find the answer on Jekyll Forum and StackOverflow.
[x] My question is based on the latest code of the master branch.
[x] I have read doc of jekyll seo tag

Description
Can you provide guidance on how to set the og:image tag for the root page of my website using this Jekyll theme? I am able to set the og:image for individual posts, but am unsure of how to set it for the root page.
I tried adding this string to _config.yml:
image: /assets/logo.png

but it does not seem to be showing up on the root page of my website. Can you please provide guidance on how to properly set the og:image tag for the root page using this Jekyll theme?

I apologize for the confusion. I found the issue and it turns out I needed to add the og:image tag to the index.html file, not _config.yml. Thank you


TypeError: Cannot read property 'kind' of undefined in 'Object.isIdentifier' during 'getApplicableRefactors'

This issue comes from crash dumps in telemetry. We've tried to de-duplicate issues on a best-effort basis, comparing the sequence of methods called and the command requested while ignoring line numbers.
TypeScript Version Prefix: 2.7.2
VSCode Version 1.21.0-insider
command requested: getApplicableRefactors
hitting sessions: 236
proportion of all sessions: 0.016821097647897364
five line hash: 54033b24909e23a7a9508761a2b13436
stack
TypeError: Cannot read property 'kind' of undefined
    at Object.isIdentifier (tsserver.js:9640:20)
    at Object.isExportsIdentifier (tsserver.js:7264:19)
    at Object.isExportsOrModuleExportsOrAlias (tsserver.js:19989:19)
    at isAtTriggerLocation (tsserver.js:80194:31)
    at isAtTriggerLocation (tsserver.js:80197:44)
    at Object.getAvailableActions (tsserver.js:80169:21)
    at unknown (tsserver.js:77283:128)
    at getIterator (tsserver.js:1734:23)
    at Object.next (tsserver.js:1729:35)
    at Object.arrayFrom (tsserver.js:2268:32)
    at Object.getApplicableRefactors (tsserver.js:77282:23)
    at Object.getApplicableRefactors (tsserver.js:83497:32)
    at IOSession.Session.getApplicableRefactors (tsserver.js:90354:53)
    at Session.handlers.ts.createMapFromTemplate._a.(anonymous function) (tsserver.js:89310:61)
    at unknown (tsserver.js:90553:88)
    at IOSession.Session.executeWithRequestId (tsserver.js:90544:28)
    at IOSession.Session.executeCommand (tsserver.js:90553:33)
    at IOSession.Session.onMessage (tsserver.js:90573:35)
    at Interface.<anonymous> (tsserver.js:91774:27)
    at emitOne (events.js:96:13)
    at Interface.emit (events.js:191:7)
    at Interface._onLine (readline.js:241:10)
    at Interface._normalWrite (readline.js:384:12)
    at Socket.ondata (readline.js:101:10)
    at emitOne (events.js:96:13)
    at Socket.emit (events.js:191:7)
    at readableAddChunk (_stream_readable.js:178:18)
    at Socket.Readable.push (_stream_readable.js:136:10)
    at Pipe.onread (net.js:560:20)

Exact duplicate of #22547 -- @aozgaa Your script must be posting twice.


Duplicate pod IPs after uninstall / reinstall of Calico

Expected Behavior
The expected behavior is that calico should assign unique pod ips.
Current Behavior
Calico is assigning non unique pod ips which are also not as per pod cidr.
pi@pi:~ $ k get pods -A -o wide
NAMESPACE     NAME                                       READY   STATUS    RESTARTS        AGE     IP             NODE       NOMINATED NODE   READINESS GATES
default       nginx-8f458dc5b-cwk5g                      1/1     Running   0               6m34s   <IP_ADDRESS>     kworker1   <none>           <none>
default       nginx2-7cc8cd4598-w2bhd                    1/1     Running   0               8s      <IP_ADDRESS>     kworker1   <none>           <none>
kube-system   calico-kube-controllers-56cdb7c587-r5nt2   1/1     Running   1               4h44m   <IP_ADDRESS>     kworker2   <none>           <none>
kube-system   calico-node-4tskn                          1/1     Running   0               4h44m   <IP_ADDRESS>   kmaster1   <none>           <none>
kube-system   calico-node-j79sh                          1/1     Running   1 (4h25m ago)   4h44m   <IP_ADDRESS>   kworker1   <none>           <none>
kube-system   calico-node-tjcnf                          1/1     Running   1 (4h24m ago)   4h43m   <IP_ADDRESS>   kworker2   <none>           <none>
kube-system   coredns-6d4b75cb6d-dmnm9                   1/1     Running   5               13d     <IP_ADDRESS>     kmaster1   <none>           <none>
kube-system   coredns-6d4b75cb6d-wbfwl                   1/1     Running   5               13d     <IP_ADDRESS>     kmaster1   <none>           <none>
kube-system   etcd-kmaster1                              1/1     Running   6 (27h ago)     13d     <IP_ADDRESS>   kmaster1   <none>           <none>
kube-system   kube-apiserver-kmaster1                    1/1     Running   6 (27h ago)     13d     <IP_ADDRESS>   kmaster1   <none>           <none>
kube-system   kube-controller-manager-kmaster1           1/1     Running   7 (27h ago)     13d     <IP_ADDRESS>   kmaster1   <none>           <none>
kube-system   kube-proxy-8v86w                           1/1     Running   5               13d     <IP_ADDRESS>   kmaster1   <none>           <none>
kube-system   kube-proxy-p4srj                           1/1     Running   6 (4h24m ago)   13d     <IP_ADDRESS>   kworker2   <none>           <none>
kube-system   kube-proxy-ptbjk                           1/1     Running   7 (4h25m ago)   13d     <IP_ADDRESS>   kworker1   <none>           <none>
kube-system   kube-scheduler-kmaster1                    1/1     Running   7 (27h ago)     13d     <IP_ADDRESS>   kmaster1   <none>           <none>

Also

pi@pi:~ $ kubectl get node -o jsonpath='{.items[*].spec.podCIDR}'
<IP_ADDRESS>/24 <IP_ADDRESS>/24 <IP_ADDRESS>/24pi@pi:~ $

Any idea what's wrong here?

@caseydavenport  I uninstalled and installed it again but it didn't work. The IPAMBlock looks like this

This is what IPAMBlock for kmaster1 is
apiVersion: crd.projectcalico.org/v1
kind: IPAMBlock
metadata:
  annotations:
    projectcalico.org/metadata: '{"creationTimestamp":null}'
  creationTimestamp: '2022-06-26T21:16:02Z'
  generation: 2
  managedFields:
    - apiVersion: crd.projectcalico.org/v1
      fieldsType: FieldsV1
      fieldsV1:
        f:metadata:
          f:annotations:
            .: {}
            f:projectcalico.org/metadata: {}
        f:spec:
          .: {}
          f:affinity: {}
          f:allocations: {}
          f:attributes: {}
          f:cidr: {}
          f:deleted: {}
          f:sequenceNumber: {}
          f:sequenceNumberForAllocation:
            .: {}
            f:0: {}
          f:strictAffinity: {}
          f:unallocated: {}
      manager: Go-http-client
      operation: Update
      time: '2022-06-26T21:16:02Z'
  name: 192-168-69-192-26
  resourceVersion: '2405289'
  uid: a848c9c9-632c-447f-a774-3912bbdef430
  selfLink: /apis/crd.projectcalico.org/v1/ipamblocks/192-168-69-192-26
spec:
  affinity: host:kmaster1
  allocations:
    - 0
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
    - null
  attributes:
    - handle_id: ipip-tunnel-addr-kmaster1
      secondary:
        node: kmaster1
        type: ipipTunnelAddress
  cidr: <IP_ADDRESS>/26
  deleted: false
  sequenceNumber:<PHONE_NUMBER>593256200
  sequenceNumberForAllocation:
    '0':<PHONE_NUMBER>593256200
  strictAffinity: false
  unallocated:
    - 1
    - 2
    - 3
    - 4
    - 5
    - 6
    - 7
    - 8
    - 9
    - 10
    - 11
    - 12
    - 13
    - 14
    - 15
    - 16
    - 17
    - 18
    - 19
    - 20
    - 21
    - 22
    - 23
    - 24
    - 25
    - 26
    - 27
    - 28
    - 29
    - 30
    - 31
    - 32
    - 33
    - 34
    - 35
    - 36
    - 37
    - 38
    - 39
    - 40
    - 41
    - 42
    - 43
    - 44
    - 45
    - 46
    - 47
    - 48
    - 49
    - 50
    - 51
    - 52
    - 53
    - 54
    - 55
    - 56
    - 57
    - 58
    - 59
    - 60
    - 61
    - 62
    - 63

I'm sorry I'm not very familiar with IPAMBlocks. From the documentation, I couldn't really understand how it works.

It's probably best to recreate the cluster and make sure all Calico data is cleared.

Recreating the cluster didn't help. I had the same issue. Finally, this solution fixed the issue and now the IPs are allocated by calico and IPAMBlocks also have the assigned IP information.


Phpunit9

Please see the discussion in #107.
The current version-locked PHPUnit dependency uses the each() function, which has been removed in PHP 8.
This PR would work best if the 0.x versions continue to support PHP 5.4 (if desirable), and a new 1.x release line supports PHP 7.4 and 8.x.
The former PR (#108) just adds PHP 8.0 to the supported versions in Composer without updating these unit tests.

I am ok to support only PHP 7.3+ going forward.  I would not like to gratuitously break backward compatibility for older versions in the library, but for the test and CI I am ok to move to 7.3+ only.  Please update the travis config in this PR to remove pre-7.3 versions and also to start testing newer versions (travis currently is only testing up to 7.4).  Once travis passes 7.3-8.0 I will merge this PR.
Thanks!

👍 Thanks! I'm on it.

I modified .travis.dhall and used dhall-to-yaml-ng to build the new .travis.yml. I'm verifying the new tests on TravisCI from my fork now. I'll report back shortly.

I had to update the Travis build file to use Ubuntu Xenial (16.04) rather than Trusty (14.04), since the latter doesn't have a PHP 8.0 package. Since tests are running on PHP 7.3+ now, Ubuntu could probably be bumped up to Bionic (18.04) or Focal (20.04). I just followed convention and used the oldest one that supported all versions.
I'm re-running those last few tests and we should be good.

Alright, all the tests pass in Travis with PHP 7.3, 7.4, and 8.0.


Initial support for empty deployments with GGP as a Lambda function

Fixes #131 and #200
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Running integration tests

Integration tests passed


Change delimiter enhancement for HUGO

DelimiterLeft and DelimiterRight can be set in config file. Default is "{{" and "}}".

Thanks for this. As you might notice, there are plenty test failures.
Some general comments:
I havent read too carefully through your changes, but:

Changes in 7 files tells me that this can be done much simpler. My initial thought when I looked at it was to hook into the AddInternalTemplate or something: https://github.com/spf13/hugo/blob/be2097e1ad789eca5d893805a059d94defbe5c48/tpl/template.go#L139
Your commit log looks messy and none of your commit messages ends with the magic Fixes #1044 A good resource for quality commit messages: http://chris.beams.io/posts/git-commit/

Thank you very much for your Feedback, your comments and all the additional information that you gave me. I really appreciate it! I also agree with your recommendations and already changed a lot of the code, but it will take more time to figure out how to deal with github in a good quality way ...
Important: When I analyzed the code I found several code blocks that generate pure HTML Code or files without using the template package. For example in htmlredirect.go to create aliases and there are other places as well.
For that reason I think we still need a helper function to correct the delimiters in that code. So I like to keep the function in the helper package, if that is okay? Otherwise I am totaly open to any suggestion to solve this problem.
I will come back, as soon I find out how to do the rebase thing :),
thanks again, marc

None of your changes tells me that the SetDelim method will have to live outside the tpl package, and if so, it should have a different name (you lose the package context). No need to "fix" the templates in the tests. I would, however, expect to see some test cases that loop over both the regular case and some others to verify that the end result is the same.
For rebase, this resource may help: http://discuss.gohugo.io/t/howto-rebase-your-feature-branch/442/3

@danke-click How is this coming along? Do you need any more help?

@danke-click any updates on this?

No. I've made all the changes, including all your recommendations a long
time ago.
Problem is, I don't have time to learn github, how to maintain a clear
commit log etc.  -  sorry, but I don't think I'll send any updates anymore.
From my point of view it is faar tooo complicated to deal with a system
like github if you don't use it regularly.
Am 24.07.2015 um 11:46 schrieb Bjørn Erik Pedersen:

@danke-click https://github.com/danke-click any updates on this?
—
Reply to this email directly or view it on GitHub
https://github.com/spf13/hugo/pull/1052#issuecomment-124458207.

Replaced by https://github.com/spf13/hugo/issues/1300


Improvement of StreamCallback

Description:
I´m working with Siddhi for a few weeks now. I wonder if there is a reason why the receive method in StreamCallback returns an object array instead of a map. The keys of the map could be the names of the attributes or the aliases defined in the select-statement.
Suggested Labels:
Improvement, new Feature

Thanks for your contribution, please find the fix in PR #1014
Please reopen this ticket if you find any issues.


Consider increasing account nonce size

Currently, account nonce is specified to be just a single field element (64 bits). However, as described in https://github.com/0xPolygonMiden/miden-base/issues/22#issuecomment-1426869356, it may be desirable to let users set account nonces to random values. However, we also want to minimize a chance of a user accidentally using the same nonce more than once as it may lead to some security problems. Thus, it is probably a good idea to increase the size of the nonce.
Assuming account ID is reduced to a single field element as suggested in #8, we have the account consisting of the following components:

Account ID - 1 field element.
Account vault root - 4 field elements.
Account storage root - 4 field elements.
Account code root - 4 field elements.
Account nonce - ?

Thus, if size of the nonce is 3 or fewer elements, we can compute hash of the account state in 2 permutations of the hash function.
So, to summarize, we can increase nonce size to 2 or 3 field elements without any impact on efficiency of computing account state commitment. I think 2 elements is probably enough, but open to other suggestions too.

Can you help me better understand this proposed nonce model please.
If I'm not mistaken I believe the proposal was to increase the nonce range to some large value (2-3 field elements).  The idea would then be that a transaction is only valid if the new nonce is different to the last.  However I don't understand how this achieves replay protection.
Lets consider the following scenario.  Account 1 executes 2 transactions which create notes A and B respectively.  These two transactions have two different nonces.  What's stopping an adversary from iteratively replaying those two transactions over an over again.  I think we would need some way to track the nonces that have already been play in some form of structure, probably a spare merkle tree.
Not sure if I'm missing something?

We are no longer implementing a random nonce model.  As such this issue is stale.  Could you please confirm @bobbinth and if so please close.


Hi, how to keep driver running after click overlays？

@di3663 do you mean driver should continue automatically without click or anything?

@di3663 use the alloseClose option. Check this demo


Create Wireframes

[ ] Wireframes
[ ] Mockup

@taypsl - hey would love if you can contribute your creativity to mocking up and wireframing some of the app; I think you have pretty much an idea of what the app is doing - let me know if you have questions! we can always polish it up with the others as we develop more!


Exceptions in MudInput OnBlur handlers are not observable

Bug type
Component
Component name
MudInput
What happened?
When an exception is thrown in an async handler for the MudInputs OnBlur event then it is difficult to observe reliably (e.g. it circumvents ErrorBoundaries). This seems to be because the OnBlur handler is executed inside an async void method and is not actually awaited like one would expect. If the same handler is used for a MudButton OnClick event then everything works as expected and the exception can be handled using an ErrorBoundary.
Example handler to trigger the behaviour:
public async Task HandleOnBlurAsync()
{
    await Task.Delay(100);
    throw new Exception("Something went wrong...");
}

Expected behavior
The async handler is awaited and any thrown exceptions are observable (e.g. using an ErrorBoundary).
Reproduction link
https://try.mudblazor.com/snippet/QOwdkmvIplIxkslV
Reproduction steps

Create a new component with MudTextField and an async handler for OnBlur
In the async handler await any Task (e.g. Task.Delay(100) )
After the await throw any Exception
Wrap your component in an ErrorBoundary (preferably with ErrorContent for easy verification if an exception was handled)
Run the app, enter text into the input field and click outside the input field to trigger the blur event

Minimal setup (try.mudblazor.com seems to be broken at the moment):
<ErrorBoundary>
    <ChildContent>
        <MudTextField @bind-Value="Text" OnBlur="@HandleAsync" Variant="Variant.Outlined"
            Label="Type here and blur input to show wrong exception handling"/>
        <br/>
        <MudButton OnClick="@HandleAsync">Click me to show correct exception handling</MudButton>
    </ChildContent>
    <ErrorContent>
        <MudAlert Severity="Severity.Error">Oh my! We caught an error and handled it!</MudAlert>
    </ErrorContent>
</ErrorBoundary>

@code {
    public string Text { get; set; } = "";

    public async Task HandleAsync()
    {
        await Task.Delay(100);
        throw new Exception("Something went wrong...");
    }
}

Relevant log output
No response
Version (bug)
6.1.8
Version (working)
No response
What browsers are you seeing the problem on?
Firefox
On what operating system are you experiencing the issue?
Windows
Pull Request

[ ] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Same for the OnKeyDown event. Any update about this issue?

Same is true for the OnKeyDown event. Any update about this issue?

Fixed thanks to @ScarletKuro


Interactive Terminal: Undo Latest Update

In the latest iteration of VSCode, the terminal and side panel just...don't work.  Like, I have no idea what y'all did, but exiting the interactive terminal doesn't even close the side panel.  Why is this a good idea?
When operational, the Terminal panel, which no longer has an icon/tab at the top of the side panel, has a downward-facing caret.  When typing Exit into the terminal, the terminal interface disappears, but the downward caret stays.  Clicking on the terminal bar causes the terminal and Problems (why?) pane to collapse
My info:

Version: 1.64.0
Commit: 5554b12acf27056905806867f251c859323ff7e9
Date: 2022-02-03T04:23:11.224Z
Electron: 13.5.2
Chromium: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Linux x64 5.10.0-5mx-amd64

Screenshots of the evolution:
Terminal open to prompt:

After typing exit and pressing Enter:

After clicking on Terminal bar:

@MarkMoretto sorry for the confusion here. It looks like the terminal is placed within the problems tab. is this expected for you? if not, can you please try: Right click the terminal icon and click "reset location"

Hi,  thanks for the response!
It seems to be alright today.  i have the keystroke CTRL + j set to launch the terminal and typing exit appears to work.  I also launch VSCode with the --disable-gpu flag, but that doesn't seem to impact the platform.
As of now, I have successfully move the side panel/terminal window from the bottom to the right side of the window via drag-and-drop, but there is only a terminal icon at the top of the side panel.
When right-clicking the terminal icon, there's options to Reset Terminal and Hide Terminal, but nothing about moving it back to the bottom of the window.
The trash can icon is there, the plus sign (+) select menu is there with different terminals, and clicking the name of the current terminal brings up a menu with Change icon..., Split terminal,  Change color..., etc.
tl;dr - Terminal seems okay for now, but options to move the panel might be missing.

"Reset Location" will move it to the bottom of the window. Additionally "Move Views to Panel" moves them to the bottom panel.

I mean, with all due respect, why is it this complicated?  It worked fine before.

I'm having trouble understanding what the current difficulties you are having are. The screenshots you shared show that the terminal was nested inside the problems views which seemed to be the original problem but was not a choice we made. If it happened unintentionally, its possible there is a bug, or you moved it by mistake and the behavior was not what you expect. I would like to help you get to the state you like with the functionality we provide. Screen shots and descriptions are helpful. again, I am sorry for the confusion.


check wasm-bindgen version if running with target web

#633 with merge, edits, and test

CI should fail on branch but not PR on debug assertions test bug that has already been fixed on master

👍


Domain suffix is same as hostname

Describe the bug 🪲
Domain suffix is not computed properly. For devices that do not have the FQDN as the hostname, Domain suffix is coming same as hostname.
To Reproduce 🪜
Steps to reproduce the behavior:

Device should have short hostname
Device should be in pre-provisioning state
Attempting AMT configuration fails with domain suffix mismatch error

Expected behavior
Currently rpc is considering FQDN to be same as hostname, this can be solved actual FQDN is requested like hostname -f in case of Linux
Screenshots 🖼

AMT Device (please complete the following information): 🖥

OS: Linux
AMT Version: 12
AMT Configuration Mode: Admin Control Mode
Network Configuration: Static IP

Service Deployment (please complete the following information): ⛈

Deployment Type: K3s
Component & Version: 2.12

Hello! The team will look into this more.  Can you please provide the output of an amtinfo call on the device?
sudo ./rpc amtinfo

I have a similar problem. I had already formulated a wall of text thinking it was a USB vs iPXE problem for me. Then when creating the command outputs I noticed that my "rpc version" differ.
In short in "RPC version 2.7.0" the DNS suffix still works while in "RPC version 2.10.0" and "RPC version 2.15.1" this does not work anymore.
I use the rpc-go client in SystemRescue (Arch Linux) to set up AMT. Since SystemRescue has the hostname "sysrescue" by default, I set the file "/etc/hostname" without content and set "dhcp=dhclient", as well as "hostname-mode=dhcp" in the file "/etc/NetworkManager/NetworkManager.conf" (hostname and domain prefix in SystemRescue is automatically set correctly).
Here are the command outputs:

hostnamectl status

   Static hostname: (unset)
Transient hostname: pc12386
         Icon name: computer-desktop
           Chassis: desktop 🖥
        Machine ID: [hidden]
           Boot ID: [hidden]
  Operating System: SystemRescue 10.01
            Kernel: Linux 6.1.30-1-lts
      Architecture: x86-64
   Hardware Vendor: MSI
    Hardware Model: [hidden]
  Firmware Version: [hidden]
     Firmware Date: [hidden]

hostname

pc12386

rpc amtinfo for (RPC Version 2.7.0)

Version			: 9.1.45
Build Number		: 3000
SKU			: 8
UUID			: 00000000-0000-0000-0000-000000000000
Control Mode		: pre-provisioning state
DNS Suffix		:
DNS Suffix (OS)		: Mathematik.Uni-Marburg.DE
Hostname (OS)		: pc12386
RAS Network      	: unknown
RAS Remote Status	: not connected
RAS Trigger      	: user initiated
RAS MPS Hostname 	:
---Wired Adapter---
DHCP Enabled 		: true
DHCP Mode    		: passive
Link Status  		: up
IP Address   		: <IP_ADDRESS>
MAC Address  		: 44:8a:5b:a6:05:f1
---Wireless Adapter---
DHCP Enabled 		: false
DHCP Mode    		: passive
Link Status  		: down
IP Address   		: <IP_ADDRESS>
MAC Address  		: 00:00:00:00:00:00

rpc amtinfo for (RPC Version 2.15.1)

Version			: 9.1.45
Build Number		: 3000
SKU			: 8
Features		: AMT Pro
UUID			: 00000000-0000-0000-0000-000000000000
Control Mode		: pre-provisioning state
DNS Suffix		:
DNS Suffix (OS)		: pc12386
Hostname (OS)		: pc12386
RAS Network      	: unknown
RAS Remote Status	: not connected
RAS Trigger      	: user initiated
RAS MPS Hostname 	:
---Wired Adapter---
DHCP Enabled 		: true
DHCP Mode    		: passive
Link Status  		: up
IP Address   		: <IP_ADDRESS>
MAC Address  		: 44:8a:5b:a6:05:f1
---Wireless Adapter---
DHCP Enabled 		: false
DHCP Mode    		: passive
Link Status  		: down
IP Address   		: <IP_ADDRESS>
MAC Address  		: 00:00:00:00:00:00

Just going to add that V2.10.0 had this issues already implemented and from what I can see there has been a shift in how the DNS names are gathered.
Sadly Linux got the short end of the stick:
https://github.com/open-amt-cloud-toolkit/rpc-go/commit/dc13b2619a00b29c26e80aabd075ad6e123399d7

This seems to happen if the Linux machine does not use an explicit domain in its hostname, in this case os.Hostname() only returns the short hostname. Interestingly, hostname -f on the shell is able to report a fqdn, so the information is available in some other way. The solution is probably to look into the implementation there in order to pull in the same data source.

I looked into the hostname [sources}(https://sources.debian.org/src/hostname/3.23%2Bnmu2/hostname.c/). From my understanding (I'm not that fluent in C), it basically looks up the short hostname and calls getaddrinfo on it. In Go this should translate to something like os.Hostname() -> net.LookupHost() -> net.LookupAddr. I will try this out and see if I can make a PR.


fix: clear all console warnings

Signed-off-by: sh1luo<EMAIL_ADDRESS>

Before:

After:

change a to button and add css style, referer here

Demo link?

I think there is no need for a demo link here, just clone the pr , npm run start,

@sh1luo plz provide one

@hsluoyz demo link: http://<IP_ADDRESS>:8000/


Integrate yarn (npm replacement)

A new package manager called yarn is ready (might replace npm)
http://blog.npmjs.org/post/151660845210/hello-yarn
It might be a nice feature to add

Merged pull request. Yarn support will be in 0.14.

THANKS


(Windows) Updated installation script not working

hey @patrick-mccourt, just tried to "upgrade" from my previous Jabba install (original shyiko repo), but I'm running into some issues with this one..
I'm not all that familiar with GitHub's API though, so all I can do here is drop some notes on what's happening. please do let me know if there is anything specific you'd like me to check, yeah?

first I checked the current value of [Net.ServicePointManager]::SecurityProtocol, which came back as SystemDefault. then I ran the command..
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

..which changed this to Tls12. I then ran the following installation command..
Invoke-Expression (Invoke-WebRequest https://github.com/Jabba-Team/jabba/raw/main/install.ps1 -UseBasicParsing).Content

..which throws out the following error:
Invoke-RestMethod:
Line |
   9 |  … aVersion = (Invoke-RestMethod https://api.github.com/repos/Jabba-Team …
     |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | {"message":"Not Found","documentation_url":"https://docs.github.com/rest/reference/repos#get-the-latest-release"}

digging a little deeper, if I try run the following command directly:
Invoke-RestMethod https://api.github.com/repos/Jabba-Team/jabba/releases/tags/latest

I see the following error:
Invoke-RestMethod: {"message":"Not Found","documentation_url":"https://docs.github.com/rest/reference/repos#get-a-release-by-tag-name"}

testing this with shyiko/jabba/releases/tags/latest, I do return a valid response.
testing this with Jabba-Team/jabba/releases, I only see a single release in the respnse.
testing this with /tags/0.12.0-alpha1, I do get a valid response, but:

tag_name shows 0.12.0-alpha1
name shows 0.12.1-alpha1

any ideas what might be going wrong here?

Thanks @ZaLiTHkA, As you may have guessed, I hadn't yet tested this on Windows. I am going to be away for the rest of the weekend so I'll look at this properly on Monday
But for now, I've re-named the release now so it matches the tag so that one problem should be okay now.

no worries.. please do let me know if you do need some extra testing then, I have both Windows 10 and 11 with PowerShell 7.2.6. 👍🏼

Hi @ZaLiTHkA, I've just been tinkering with this on Win11 with PowerShell 5.1 and get the same as you did above. I believe the problem is that 0.12.0-alpha1 is marked as a pre-release and the api call to latest fetches the latest release, but there are none.
There are a couple of things you can do as a workaround that seem to work for me:

Set the JABBA_INDEX variable with your current installation:

$env:JABBA_INDEX='https://raw.githubusercontent.com/Jabba-Team/jabba/main/index.json'
I've tried this myself by installing 0.11.2 from the original repo and setting the variable, ls-remote gives me the updated jdk indexes and I was able to install temurin 19 with jabba install temurin@19

Set the JABBA_VERSION variable before running the new install script:

$env:JABBA_VERSION='0.12.0-alpha1'
then the install command, this skips the api call to find 'latest' and installs the alpha version from the new repo.
Option 1 is probably my recommendation for now, as in terms of functionality, 0.11.2 is exactly the same as 0.12.0-alpha1, just a change of repository. Once a full release of 0.12.0 is available these workarounds won't be needed.
If you did want to go ahead with upgrading now,  then I'd be curious on the experience and if all your previously installed jdks were all still present and working. I'd recommend making a copy of your %USERPROFILE%/.jabba folder before trying again though, just to be safe.
Please note as well, the names of some of the provided jdks may be different, so the readme is out of date, for example openjdk is not available in the new index, it's called oracle_open_jdk instead. There may be other differences too.

Hi @ZaLiTHkA, I've just been tinkering with this on Win11 with PowerShell 5.1 and get the same as you did above. I believe the problem is that 0.12.0-alpha1 is marked as a pre-release and the api call to latest fetches the latest release, but there are none.

yup, that makes perfect sense.. I haven't really used the GH API all that much, but that is logical behaviour after all. (:

with that said, I also just realised something.. at present, I'm only using this on Windows. so each time I've come to the README file to grab the install command, I've simply scrolled straight to it.
meanwhile, further up the same file it actually mentions installing specific versions by setting JABBA_VERSION first. 🤦🏼 really helps to RTFM hey.

anyways, I opted to install 0.12.0-alpha1, simply because that feels like the most appropriate way to test it.. so, the installation went without a hitch:
# 00:25:01 littl@Monstrosity   ~ 
❯ $env:JABBA_VERSION='0.12.0-alpha1'
# 00:25:22 littl@Monstrosity   ~ 
❯ $env:JABBA_VERSION
0.12.0-alpha1
# 00:25:27 littl@Monstrosity   ~ 
❯ iex (iwr https://github.com/Jabba-Team/jabba/raw/main/install.ps1 -UseBasicParsing).Content
Installing v0.12.0-alpha1...

Skipped update of D:\Users\Dre\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 (source string already present)

Installation completed
(if you have any problems please report them at https://github.com/Jabba-Team/jabba/issues)
# 00:27:41 littl@Monstrosity   ~ 
❯ jabba --version
0.12.0-alpha1

..and all of my existing Java installations still work as expected:
# 00:28:08 littl@Monstrosity   ~ 
❯ jabba ls
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS># 00:29:13 littl@Monstrosity   ~ 
❯ cat C:\Users\littl\.jabba\default.alias
<EMAIL_ADDRESS># 00:30:08 littl@Monstrosity   ~ 
❯ java -version
openjdk version "11.0.10" 2021-01-19 LTS
OpenJDK Runtime Environment Zulu11.45+27-CA (build 11.0.10+9-LTS)
OpenJDK 64-Bit Server VM Zulu11.45+27-CA (build 11.0.10+9-LTS, mixed mode)
# 00:31:17 littl@Monstrosity   ~ 
❯ jabba use<EMAIL_ADDRESS># 00:31:57 littl@Monstrosity   ~ 
❯ java -version
openjdk version "1.7.0_292"
OpenJDK Runtime Environment (Zulu <IP_ADDRESS>-CA-win64) (build 1.7.0_292-b07)
OpenJDK 64-Bit Server VM (Zulu <IP_ADDRESS>-CA-win64) (build 24.292-b07, mixed mode)

lastly, I am seeing a metric ton of JDKs (won't post the output, don't worry) when I run jabba ls-remote, so it's most definitely working with the new API. 🖖🏼

in a separate comment now... what I thought was an issue, was simply a misunderstanding. commit a0d6422 does nothing to install.ps1 other than update GitHub repo URLs.
I'd like to peruse the README file properly now. which means I will most likely want to restructure it.. I kinda already do now.
so I'll close this issue off for now then, since it doesn't serve much purpose. I might be sending a documentation PR in the near future then. (:

Hi @ZaLiTHkA, just as an FYI, I've just released 0.12.0 as a full release. Again no code changes, just finalised the migration. The Windows installer still didn't work though. I've figured out why. The Windows Installer reads the "release notes" section of a release and parses it into the "version"  I've released 0.12.0 with '0.12.0' as the release notes and the Windows Installer worked for me.
Something for the backlog :)

thanks for the feedback.. :) I must say, this is starting to make me wonder about the current installation process, especially the Windows script, but also the Unix scripts.
would you be open to other installation options? perhaps something that can be automated from a Git tag to build and publish installation packages for all supported platforms?
if so, I think we should open a new issue (or "discussion") and do some brainstorming... 😎

Agree, I've raised #11 to discuss.


RabbitMQ crashes on startup with DNS backend

Hi there, I've been trying to use this plugin but have not been able to get it working or figure out the cause of the issue :(
I am using the release version 0.4.1 with RabbitMQ version 3.5.6
The environment variables assigned are:
AUTOCLUSTER_TYPE=dns
AUTOCLUSTER_HOST=myhost

The error log from rabbitmq is the following:
Error description:
   {could_not_start,rabbit,
       {{case_clause,[]},
        [{autocluster,ensure_registered,2,
             [{file,"src/autocluster.erl"},{line,97}]},
         {autocluster,init,0,[{file,"src/autocluster.erl"},{line,27}]},
         {rabbit,'-run_step/2-lc$^1/1-1-',1,[]},
         {rabbit,run_step,2,[]},
         {rabbit,'-run_boot_steps/1-lc$^0/1-0-',1,[]},
         {rabbit,run_boot_steps,1,[]},
         {rabbit,start,2,[]},
         {application_master,start_it_old,4,
             [{file,"application_master.erl"},{line,273}]}]}}

At first I thought it was because the DNS query was failing. I then went into the container and ran an erlang shell, tried using inet_res:lookup and it correctly returned the ips.
I've tried adding the explicit logging configuration to RabbitMQ to see if I had a better error message to give me any clues on what's happening but it didn't show anything additional.
Please let me know if you need any additional information

That's pretty odd, as it would imply that the module is returning [] instead of {ok, []} and I don't see how that can happen. I'm trying to replicate...

I finally found the problem. The problem was on my end :(
To give some background, we're using Kubernetes on the Google Cloud, and they have something called "headless services" which gathers endpoints and can be DNS queried returning the A records for those ips, but unfortunately we don't have the reverse lookup for the IPs.
Because of the that the inet_res:gethostbyaddr is giving an error, but I'm not sure why the error doesn't show up anywhere on the stack traces, logs, etc. since I'm not very familiar with Erlang.

Thanks for the update, that looks like I can get more meaningful logging in with this info.

Encountering the same problem trying to use autocluster within kubernetes.  Were you able to overcome this issue?

No, I decided to manually build the clustering logic since I could not get gethostbyaddr to return the pod's IP address since I assumed that was the reason autocluster was not working.
Sorry I can't be of much help.

You were definitely of help @Draiken, you helped me look in the right direction.
My setup is slightly different, I'm running kubernetes within AWS instead of GCE, and not running headless.  But the underlying problem seems to be the same:  net_res:gethostbyname("rabbitmq") returns the correct ip of the container, but the problem is that inet_res:gethostbyaddr for the same ip resolves to the AWS EC2 host instance rather than the rabbitmq docker container.
I switched from DNS to ETCD to see if that was any different, but the same issue applies.  I then tried manually clustering but rabbitmq needs the hostname of its peers, which without a kubernetes service creating for each pod (and defeating the purpose of a replication controller) its not possible (tried using a headless service but encountered the same problem).
So seeing as I now already have etcd deployed, I modified my pods to record the host and ip in etcd on the postStart lifecycle event, and tear it down on postStop.  I then modified my rabbitmq startup script to read all entries from etcd, and add to /etc/hosts.  Now that the peer hosts are known, the etcd mode of this auto cluster works fine, the only change I needed to make was to remove an extra '/' character in the retrieval of the NodeName.

Thanks for the detailed analysis and results here. Sorry for the troubles!

I am running into this issue as well using autocluster in a EC2 environment with autoscaling groups. Reverse DNS does not match the hostname as we don't use EC2 hostnames and have no control over the reverse DNS as we use Route53.
Would it be possible to find a solution for this?
Also could you please make this fail with an error message more indicative of the problem?


Describe how to run the standard simulation tests with joshua

There are lots of simulaton tests of fondationdb in the test subdirectory of the sourcecode.
joshua requires a tarball fo running a test. What should be in the tarball for running the standard simulation tests from the test subdirectory? Do I need to pack the test subdirectory to the tarball? Do I need to pack fdbserver and other executables in the tarball?
It would be nice to have an example of such tarball described in the readme.md

Yes, that's something missing in the README.md.
FYI, the tarball can be generated when building foundationdb, e.g., ninja package_tests.

After
python3 -m joshua.joshua -C ../devops/clusters/joshua/fdb.cluster start --tarball '/home/oleg/work/fdb/FoundationDb/bld/packages/correctness-6.2.33.tar.gz'

something went wrong. The agent failed with
[oleg@oleg2 FdbJoshua]$ docker run --rm  --security-opt label=disable -v /home/oleg/work/fdb/devops/clusters/joshua:/opt/joshua -it foundationdb/joshua-agent:latest
Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.
Exception in thread Thread-2:
Traceback (most recent call last):
  File "/opt/rh/rh-python38/root/usr/lib64/python3.8/threading.py", line 932, in _bootstrap_inner
    self.run()
  File "/opt/rh/rh-python38/root/usr/lib64/python3.8/threading.py", line 870, in run
    self._target(*self._args, **self._kwargs)
  File "/opt/rh/rh-python38/root/usr/local/lib64/python3.8/site-packages/joshua/joshua_agent.py", line 658, in agent
    retcode = run_ensemble(chosen_ensemble, save_on, work_dir=work_dir, timeout_command_timeout=timeout_command_timeout)
  File "/opt/rh/rh-python38/root/usr/local/lib64/python3.8/site-packages/joshua/joshua_agent.py", line 362, in run_ensemble
    for k, v in env_settings:
ValueError: not enough values to unpack (expected 2, got 1)

This seems to be a bug introduced by #3.

Can you try edit line 360 of /opt/rh/rh-python38/root/usr/local/lib64/python3.8/site-packages/joshua/joshua_agent.py to:
    if 'env' in properties and properties['env']:

I couldn't test the change you proposed, but tested #12. The agent stopped crashing,
[oleg@oleg2 FdbJoshua]$ docker run --rm  --security-opt label=disable -v /home/oleg/work/fdb/devops/clusters/joshua:/opt/joshua -it foundationdb/joshua-agent:latest
Emulate Docker CLI using podman. Create /etc/containers/nodocker to quiet msg.
Unpacking/var/joshua/ensembles/20210409-151019-oleg-618f4164d06d707d
20210409-151019-oleg-618f4164d06d707d6151521263419774359./joshua_test
103

20210409-151019-oleg-618f4164d06d707d4568811136083724774./joshua_test
103

20210409-151019-oleg-618f4164d06d707d5441746154163069208./joshua_test
103

20210409-151019-oleg-618f4164d06d707d3795326571262142719./joshua_test
103

20210409-151019-oleg-618f4164d06d707d2012513511425241517./joshua_test
103

20210409-151019-oleg-618f4164d06d707d4496758372103192668./joshua_test
103

20210409-151019-oleg-618f4164d06d707d2537493284973285639./joshua_test
103

20210409-151019-oleg-618f4164d06d707d6154259346310925684./joshua_test
103

20210409-151019-oleg-618f4164d06d707d1768467256300473424./joshua_test
103

20210409-151019-oleg-618f4164d06d707d6198835866733904722./joshua_test
103

20210409-151019-oleg-618f4164d06d707d3421236884922169869./joshua_test
<jobstopped>
20210409-151019-oleg-618f4164d06d707d805089129740123916./joshua_test
<jobstopped>
20210409-151019-oleg-618f4164d06d707d2605797536880722932./joshua_test
<jobstopped>
removing 20210409-151019-oleg-618f4164d06d707d /var/joshua/ensembles/20210409-151019-oleg-618f4164d06d707d

But I cann't see their result:
[oleg@oleg2 FdbJoshua]$ python3 -m joshua.joshua -C ../devops/clusters/joshua/fdb.cluster tail
No active ensembles

The tail command looks for the active ensemble or the given one, so in order to see your results, use:
python3 -m joshua.joshua -C ../devops/clusters/joshua/fdb.cluster tail 20210409-151019-oleg-618f4164d06d707d

You can optionally give --errors --xml arguments.

Is there a capability of displaying a list of tests ran in the past?
Is there a forum to discuss joshua?

Is there a capability of displaying a list of tests ran in the past?
Yes. Use python3 -m joshua.joshua list --stopped.

Is there a forum to discuss joshua?
I think https://forums.foundationdb.org/ could be a good place.

I started a topic in https://forums.foundationdb.org/t/simulation-testing-of-foundationdb/2654 tu discuss how to run tests.
Seems some extra info should be added to README.md

I would love a full example which include:

how to start Joshua for testing purpose on a single machine,
how to use Joshua.

My usecase is to run some simulation the rust client using the bindingTester.


Create Initial Draft of Hoop Detection Model

We need the initial notebook for the Hoop Model. It should be quite similar to the ball detection one but with the different dataset and maybe some tweaks to the data loading if necessary.

I have committed the initial draft of the hoop model. We can see if there are any revisions necessary.

I have fixed the bounding box issue and the model seems to be better but still has some issues with getting the correct location.

This is the tensorboard for training the hoop model:

I will commit the file.


Styles issue. Some items are not aligned properly

Text should be centered:

it's fixed and merged in master