Add CI job for GCC on MSYS2 on Windows

Hi @bustercopley. I wouldn't mind adding msys2 to the test matrix, but since I can't commit to maintaining it, I don't want a CI failure in msys2 to cause the entire CI job to get a big red X. Travis lets you tag a job with allow-failure for this, but it looks like GH Actions has been slow to implement this feature. See https://github.com/orgs/community/discussions/15452. (GH Actions continue-on-error tag is not what's needed here.)
Without that feature, my preference is to keep msys out of our CI matrix. I'm open to other suggestions.

Hi @ericniebler,
That's understandable. If there's progress on the GH Actions feature I might bring this up again. Thanks!


DO NOT MERGE! Fast Forward stable to 840aab3173eda08b32f844a041414ded1385f84e.

This PR will be merged automatically once checks are successful.

This change is

Jenkins job mixer/postsubmit passed


incorrect wrong team assignment message

In case the sides are switched after a knife round a "you're in the wrong team" messages is printed into chat (although the player is in the correct one).

Fixed with b8196ea6061110dd29a42cb24e35df03cd8ce7d6


Bug: Driver failed to activate with new version 0.3.1

Describe the bug
Lot's of problems with the new version of EqMac 0.3.1 on my Mac Mini 10.15.5. It try uninstall it with the sudo comand for it, and reinstall it but still "Driver failed to activate" error after that. Try again doesn't help.
But after a reboot of my Mac, the Install audio driver message came up and install it and it works at the moment. But after I install the latest version yesterday I did the same but this morning the Driver failed to activate came up again...
Steps to Reproduce
Steps to reproduce the behaviour (feel free to change the placeholder as you need):

Startup my Mac
EqMac show up
Scroll down to '....'
Driver failed to activate

Expected behaviour
A clear and concise description of what you expected to happen.
Setup information:

Audio device used for playback: [eg AirPods or Macbook speaker or Bose QC32]
Audio transmission interface: [eq HDMI or Bluetooth or 3.5mm Jack]
macOS Version: [e.g. 10.15]
eqMac Version [e.g. 0.3.1] (if audio related issue)
eqMac UI Version [e.g. ]1.2.0 (if UI related issue)
Driver version: 1.1.0

Screenshots or Console.app logs
If applicable, add screenshots to help explain your problem. Also you can run Console.app and apply filter for eqMac
Additional information
Add any other context about the problem here.

And still this morning the same issue after reboot my Mac. 'Driver failed to activate' Try again, but no luck...

I am unable to install due to this.  Running macOS 10.15.5.

I am having this issue as well.  Running macOS 10.15.4.  eqMac worked fine yesterday.  I shutdown my computer for the evening and rebooted this morning and have not been able to resolve the "Driver Failed to Activate" error.

Hope they solved it soon. It's annoying.

10.14.6 here, same issues.

So it's not typical a MacOS system issue because older OS's have the same problems.

Can you guys please try and download this version: https://github.com/bitgapp/eqMac/releases/tag/v0.3.2
and let me know if this issue is resolved.
I haven't been able to replicate your issue on my machine but I made some guesses as to why it might be happening.

@nodeful I just install this version, the update of the audio driver last too long so, I restarted my Mac and install the audio driver again and it works for now. Hopefully tomorrow after a new reboot also without problems.

@nodeful I also installed the Beta version.  The program was able to load this time.  However, there is no audio output when using eqMac.  As soon as I close the application the volume comes back.   Thanks for looking into this so quickly!

Fixed for me in v0.3.2. Driver install UX is not ideal, because it looks like a non-cancellable / non-closeable screen. I'm not sure if you can cancel the process, but needless to say this should be possible: the user can always kill the processes spawned by eqmac, or just restart their mac. That should not be what the user resorts to.

Ok looks like the issue is fixed in v0.3.2 I will make it live for everyone.
The driver install UX is the best it can be in this space and with my resources. The installation is not cancel-able because the thing that takes the longest is restarting Core Audio. What I can do is force people to restart their Mac after the driver is installed. Would that be better?

No, that would not be better. So you're restarting a certain service/daemon (or so) and waiting for it to restart? The restart process isn't cancellable, but the waiting is, isn't it?

Yeap waiting for CoreAudio to restart. Yeah the waiting for the process is cancellable, but it doesn't cancel the install anymore, would have to clean up the driver and restart the daemon again 😄 You can always do ⌘Q to quit eqMac at the moment

After a couple of days of good working of the EqMac app this morning again the 'Driver Failed To Activate' error after a reboot of my Mac. I reinstall it, reboot my Mac and it's working again. What's wrong?

Seems prematurely closed.  I get the issue with v0.3.2.

I was still seeing this with 0.3.2, so I did some hacking around with the eqMac scripts, and what I found is that the driver installation script is unable to restart coreaudiod. install_driver.sh is masking the error, but what's happening is that after copying the driver to the right location, the script tries to restart coreaudiod so it will use the new driver.
The problem is this:
$ sudo launchctl unload /System/Library/LaunchDaemons/com.apple.audio.coreaudiod.plist
/System/Library/LaunchDaemons/com.apple.audio.coreaudiod.plist: Operation not permitted while System Integrity Protection is engaged

So rebooting should work, since the driver would be present without needing to restart coreaudiod, but this is what was causing the driver to fail to activate for me.


unicode/utf16: add RuneLen

Sometimes it's useful to determine how many 16-bit words it'll take to encode a unicode rune with UTF16. We already have utf8.RuneLen, and one for utf16 could be useful.
It would look something like this (those are private constants inside of utf16):
// RuneLen returns the number of 16-bit words required to encode the rune.
// It returns -1 if the rune is not a valid value to encode in UTF-16.
func RuneLen(r rune) int {
	switch {
	case 0 <= r && r < surr1, surr3 <= r && r < surrSelf:
		return 1
	case surrSelf <= r && r <= maxRune:
		return 2
	default:
		return -1
	}
}

I don't see utf8.EncodedLen.  Do you mean EncodedLen or RuneLen?  We do have utf8.RuneLen.

Woops yes, I meant RuneLen. Fixed.

This proposal has been added to the active column of the proposals project
and will now be reviewed at the weekly proposal review meetings.
— rsc for the proposal review group

Based on the discussion above, this proposal seems like a likely accept.
— rsc for the proposal review group

No change in consensus, so accepted. 🎉
This issue now tracks the work of implementing the proposal.
— rsc for the proposal review group

Excellent! I will work on a patch

@bouk any update? I'm interested in this proposal landing soon, if you are focused on other projects I can take over this implementation.

I've created a PR: https://github.com/golang/go/pull/51894


Path-Finding Abnormalities

Description
It seems the path-finding still needs a little more fine tuning. Cims will be taking routes that seem off or a longer route. You can refer to the screenshots for a clearer picture.
Reproduction Steps
Add more steps as nessecary.
1.
2.
3.
Mod List
Please list the mods enabled when you noticed the bug.

TM:PE xx.xx

Output Log

Savegame (Optional)

Screenshots (Optional)

Additional Info

Can you capture where the destination is relatively to the start or the current position of the car? At least approximate direction? I too have my ideas why pathfinder makes cars so stubborn on taking clogged roads and inoptimal turns, and have some ideas how to improve it.

https://youtu.be/epYDpxCEocE
I changed the road junction properties as shown in the video at 2:52. You can watch the self-explanatory video. This bug has been reported here before by me but I can't seem to find the issue; where vehicles seem to ignore the traffic commands of traffic lights because of 2 junctions being too close to each other.
Do you think this traffic issue is caused by the same bug?

The link is not working. If i copy & paste it into the address bar, Youtube says the video is not available.

Oops... I changed the video from "private" to "unlisted". You try again.

The fact that buses use dead ends to turn around is not a bug, they have no shorter way around the block and they would not do it on the street.
The fact that some cars turn to that small street is definitely a routing bug.

@Shadertheboi Could you share your save game - it will make it much easier to replicate the issue.
There are issues if a road is too short, particularly with timed traffic lights as they need 1+ normal sized segments to work - see #302

https://steamcommunity.com/sharedfiles/filedetails/?id=1810062363
There you go

@aubergine10: Okay... I can confirm the path-finding of instances is also affected by roads that are too short between 2 junctions as mentioned in #302 and shown in my YouTube video at 0:28.
I had to trigger this for the road junctions so that the path-finding mechanism won't be broken.

The path-finding seems to be normal right now:

@aubergine10: If you have accessed my savegame, there is another interesting thing to note too. After activating the "Allow/disallow lane changing for vehicles going straight on" function city-wide, I don't have insane bottlenecks that are forever clogging my roads and not clearing.

@Shadertheboi Just noticed this closed - were there any remaining problems we need to investigate?

By activating the function that I mentioned above, it helps to mitigate the unnecessary eternal traffic jams in my city. But as I have also mentioned, I believe this issue is caused by the same bug mentioned in issue #302.
So perhaps, if anything needs to be looked at, issue #302 will be the one. However, if you feel that this issue still has other parts that needs to be looked at, feel free to reopen this issue. :)


how to handle this empty response scenario?

i checked in restaurant bot have 1000 stories but if i enters a questions in the order which is in stories list it is responding with correct answer but if i change the order of conversation which is not in stories list it is not responding with exact answer and sometimes it is showing errors and the response is empty. how to handle this empty response scenario?

Are you sure it's responding with an empty string? Could it just be listening? Can you post an example conversation and any errors? Also, how many epochs are you training for?
I haven't looked over those stories, but it seems like the model could be overfit and not generalizing very well.

i have used restaurant bot example and below is my training information
agent.train(
training_data_file,
max_history=4,
epochs=400,
batch_size=200,
validation_split=0.2
)

I'm not sure what you mean with "changing the order of conversation". Can you please post an example of a conversation that goes wrong? And also the errors you're getting.


Optimsitic: refine optimstic create/drop table

What problem does this PR solve?

Issue Number: close #3823
What is changed and how it works?

worker flush table info, put source tables when create/drop table
master watch source tables and add/remove table for lock

Check List
Tests

Unit test
Integration test
Manual test (add detailed scripts or steps below)
No code

Code changes

Has exported function/method change
Has exported variable/fields change
Has interface methods change
Has persistent data change

Side effects

Possible performance regression
Increased code complexity
Breaking backward compatibility

Related changes

Need to cherry-pick to the release branch
Need to update the documentation
Need to update key monitor metrics in both TiCDC document and official document

Release note
`None`.

/hold

Codecov Report

Merging #4497 (018a56f) into master (9607554) will decrease coverage by 0.1690%.
The diff coverage is 49.6014%.

:exclamation: Current head 018a56f differs from pull request most recent head 945a6ec. Consider uploading reports for the commit 945a6ec to get more accurate results

Flag
Coverage Δ

cdc
59.4553% <41.6065%> (-0.4669%)
:arrow_down:

dm
52.1118% <61.3636%> (+0.0829%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
@@               Coverage Diff                @@
##             master      #4497        +/-   ##
================================================
- Coverage   55.6402%   55.4712%   -0.1691%
================================================
  Files           494        508        +14
  Lines         61283      63496      +2213
================================================
+ Hits          34098      35222      +1124
- Misses        23750      24780      +1030
- Partials       3435       3494        +59

/unhold

/run-all-tests

/run-all-tests

/run-all-tests

cc @lichunzhu

/run-all-tests

/run-all-tests

/run-all-tests

/run-verify

/merge

/run-dm-integration-test

/run-dm-integration-test
/run-verify


Test On Prem Automate HA deployment on redhat  8.4

Descriptions
Need to test automate HA deployment on Redhat 8.4 for On Prem env.
Acceptance

In case deployment go without issue, then all commands should work as aspected, there should not be any glitch.

In case any manual step required to make deployment sucess then it should be documented and will automated if required.

In case deployment fails then detail analysis of failure should be documented, and also possible solutions  to make deployment successfully should be suggested.

Tested with this PR: https://github.com/chef/automate/pull/6555

PR for airgap env issue
https://github.com/chef/automate/pull/6555
https://github.com/chef/automate/pull/6540
AutomateHA setup is in this instance. This is the bastion server detail
ssh -i "meetg-canada.pem"<EMAIL_ADDRESS>


dtfs2-4545 changed portal-api scheduler to use env vars

Note: db changes for demo, dev, test, staging & prod are ones that had been applied to dev a couple of weeks agp but not carried over to other envs. It's worth doing in this rebuild.


slacs_kcwi_kinematics.py and test.py

I added the script I use for the slacs_kcwi_kinematics class and the test script for it. It can be run with two files datacube.fits and central_spectrum.fits. I will have to send the data separately to Anowar.

Thanks @shawnknabel! Can you kindly send the PR to ajshajib:dev branch instead? You may have to open a new PR and choose ajshajib:dev as the target branch of the PR. It's just a matter of housekeeping, and all of the codes would eventually be merged with the main branch after the initial restructuring.

You got it!
On Thu, Jan 11, 2024 at 3:01 PM Anowar Shajib @.***>
wrote:

Thanks @shawnknabel https://github.com/shawnknabel! Can you kindly send
the PR to ajshajib:dev https://github.com/ajshajib/squirrel/tree/dev
branch instead? You may have to open a new PR and choose ajshajib:dev
https://github.com/ajshajib/squirrel/tree/dev as the target branch of
the PR. It's just a matter of housekeeping, and all of the codes would
eventually be merged with the main branch after the initial restructuring.
—
Reply to this email directly, view it on GitHub
https://github.com/ajshajib/squirrel/pull/8#issuecomment-1888103421, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AMJGO4P3L24PBDV2U3FT6U3YOBVNPAVCNFSM6AAAAABBXHAR2WVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBYGEYDGNBSGE
.
You are receiving this because you were mentioned.Message ID:
@.***>


MudCollapse: Introduce StateManager / HasParameterChanged to fight with BL0007

Description
MudCollapse was selected as one of the most simplest component that has BL0007 problems.
This is inspired by the https://github.com/MudBlazor/MudBlazor/pull/8041
@tjscience offered: “StateHandler could be used more generally and not just within DataGrid for other components.“
This is improved version of StateHandler.
Changes done compared the one in https://github.com/MudBlazor/MudBlazor/pull/8041:

Named it StateManager.
Using Func for property to get rid of complexity to pass the property value once again in the SynchronizeParameterAsync method, it will be done automatically by invoking the Func.
"Attach" naming is used as opposed to "Create". I feel like "Attach" meaning suits more, because we basically attaching existing property(especially with Func) and the EventCallback rather than "Create" them.
StateManager is a struct instead of a class, just like the EventCallback, it's not as much for performance as struct by default are not nullable therefore compiler won't complain that it's not initialized since we assign it only on the OnInitialized lifecycle.

I added new Extensions for ParameterView, a HasParameterChanged, which I initially saw in the Radzen Blazor Framework (it's named differently).
With the StateManager conjunction it helps to move the [Parameter] logic to the SetParametersAsync area.
I thought about incorporating the HasParameterChanged inside the StateManager but this gives few complications:

We need property name, which is not really a problem,
It would force us to do initialize the StateManager in the constructor already, because on initial render SetParametersAsync can fire before the OnInitialized, it wouldn't be a problem if the HasParameterChanged was empty and returned always false, but there are cases when it's already changed on initial load and returns true, you can observe it via debugging if you play with it. Therefore we need to know the property name and the value beforehand.

Current design
private StateManager<bool> _expandedState;

protected override void OnInitialized()
{
	base.OnInitialized();

	_expandedState = StateManager.Attach(() => Expanded, ExpandedChanged);
}

protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	await _expandedState.SynchronizeParameterAsync();
}

public override async Task SetParametersAsync(ParameterView parameters)
{
	var expandedChanged = parameters.HasParameterChanged(nameof(Expanded), Expanded);

	await base.SetParametersAsync(parameters);

	if (expandedChanged)
	{
		...
	}
}

Design if we incorparate HasParameterChanged inside the StateManager
private StateManager<bool> _expandedState;

public MudCollapse()
{
	_expandedState = StateManager.Attach(nameof(Expanded), () => Expanded, ExpandedChanged);
}

protected override void OnInitialized()
{
	base.OnInitialized();

	StateManager.OnInitialized();
}

protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	await _expandedState.SynchronizeParameterAsync();
}

public override async Task SetParametersAsync(ParameterView parameters)
{
	var expandedChanged = _expandedState.HasParameterChanged(parameters);

	await base.SetParametersAsync(parameters);

	if (expandedChanged)
	{
		...
	}
}

NB! I want to note that the order here is important:
public override async Task SetParametersAsync(ParameterView parameters)
{
	var expandedChanged = parameters.HasParameterChanged(nameof(Expanded), Expanded);

	await base.SetParametersAsync(parameters);

	if (expandedChanged)
	{
		...
	}
}

We need to call HasParameterChanged before the SetParametersAsync otherwise it returns always false.
We can't put it in the end, if we start to do component manipulation the SetParametersAsync will throw that it's state is invalid.
Have you considered alternatives
Only source generator, but I don't think anyone has time for this for now.
How Has This Been Tested?
New unit test to make sure old behavior states. Existing unit tests. Visual check in docs see: https://github.com/MudBlazor/MudBlazor/pull/8258#issuecomment-1967552690
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[x] The PR is submitted to the correct branch (dev).
[x] My code follows the code style of this project.
[x] I've added relevant tests.

If anyone wants to test this PR or play with it please do, maybe I missed something.
I did testing with:
MudCollapse and components that depend on it: MudListeItem, MudNavGroup, MudExpansionPanel, MudTreeView and I haven't noticed any problems.

I will try to look at this today.

I am seeing some odd visual behaviour and the collapse_TwoWayBinding_Test1()  fails. I don't think StateManager<T> works when its a struct. A class appears to work fine.
Is there a reason to use SetParametersAsync at all? It seems to me the whole thing should be using OnParametersSetAsync. MudCollapse as an example removing SetParametersAsync and using OnParametersSetAsync:
protected override async Task OnParametersSetAsync()
    {
        await base.OnParametersSetAsync();
//Make synchronisation return if its changed??
        var expandedChanged = await _expandedState.SynchronizeParameterAsync();
        if (expandedChanged || !_isRendered)
        {
            _state = _expandedState.Value ? CollapseState.Entering : CollapseState.Exiting;
            _updateHeight = true;
            //compatibility
            await ExpandedChanged.InvokeAsync(_expandedState.Value);
        }

        _isRendered = true;
    }

It seems a little simpler and avoids the need for ParameterView ``HasParameterChanged, I returned if the parameter has changed in SynchronizeParameterAsync as a test.

I am seeing some odd visual behavior

Can you elaborate more about the odd visual behavior?

This is on mine machine, the rest of the components that I listed here are also fine
https://github.com/MudBlazor/MudBlazor/pull/8258#issuecomment-1967552690

the collapse_TwoWayBinding_Test1()  fails.

Also good on my machine

As you can see the the github worker also passed all tests https://github.com/MudBlazor/MudBlazor/pull/8258/checks

Is there a reason to use SetParametersAsync at all? It seems to me the whole thing should be using OnParametersSetAsync. MudCollapse as an example removing SetParametersAsync and using OnParametersSetAsync:

The reasons are not significant:

I saw Steve talking about it in the begging of https://github.com/dotnet/aspnetcore/issues/26230 but after reading it whole I see that OnParametersSetAsync can be used as well.
It's something I saw in other blazor framework.
My wish to decouple logic that OnParametersSetAsync we use to basically use to sync the value between parameter and inner state and that OnParametersSetAsync we use to handle logic that used to live in in the [Parameter]. But I guess it can be solved by good documentation.
I saw this diagram

And I got bothered that OnParameterSetAsync is not first render only while SetParameterAsync is, but I guess it's also not a big concern if OnParameterSetAsync is called multiple times, the EqualityComparer<T>.Default.Equals shouldn't be expensive.

I'm only happy if we can use OnParametersSetAsync only and not have additional HasParameterChanged as long as all use cases are covered and we create a standard on what all components must use and that it could be easily explained and used by all contributors, for example:
Don't do this
https://github.com/MudBlazor/MudBlazor/blob/8d491193a39861dae69ad85572d516a055d92fa7/src/MudBlazor/Components/TreeView/MudTreeViewItemToggleButton.razor#L60-L64
Do this
private StateManager<bool> _expanded;

protected override void OnInitialized()
{
	base.OnInitialized();
	StateManager.Attach(() => Expanded, ExpandedChanged);
}

private Task ToggleAsync()
{
	return _expanded.SetValueAsync(!_expanded.Value);
}

to avoid this https://learn.microsoft.com/en-us/aspnet/core/blazor/components/overwriting-parameters?view=aspnetcore-8.0#overwritten-parameters
And so on and so forth.

@peterthorpe81
I actually tried your suggested example:
protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	var expandedChanged = await _expandedState.SynchronizeParameterAsync();
	if (expandedChanged || !_isRendered)
	{
		_state = _expandedState.Value ? CollapseState.Entering : CollapseState.Exiting;
//Is this necessary?
		_updateHeight = true;
		//compatibility
		await ExpandedChanged.InvokeAsync(_expandedState.Value);
	}

	_isRendered = true;
}

And changed SynchronizeParameterAsync to return bool value when value changed, and now I'm seeing weird visual glitches and Collapse_TwoWayBinding_Test1() fails.
So perhaps you got a little bit confused with code, and what you said

I am seeing some odd visual behavior and the collapse_TwoWayBinding_Test1()  fails.

Is related to your code moddification and not mine.
Like I totally see opposite - my code works just fine, your code fails and gives visual glitch.

@henon can you double check, please.

Sure I will. I am sensing a little bit of friction in this thread. I am sure it is not intended.
@peterthorpe81 I want to say that the team appreciates your proposals and your continued involvement in the various PRs very much. In the end it doesn't count who suggested what but that we find the best solution everyone can agree with.

@henon can you double check, please.

I tried your branch and didn't see any visual glitch in MudCollapse.

upd: Apologies if I came across as frustrated in my message. I didn't mean to sound that way.

No worries :)

As for SynchronizeParameterAsync I understand why it is called that way but maybe we should consider calling it simply OnParameterSetAsync because it will be called only in OnParametersSetAsync like this.

Yeah, I guess it would simplify things, considering that StateManager is specifically should be used only for Blazor parameters and EventCallback.  I even though of adding something like StateSet/ParameterSetwhere you could supply a list ofStateManager`s and if you have like > 5 parameters to not do something like:
protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	await _one.OnParametersSetAsync();
	await _two.OnParametersSetAsync();
	await _three.OnParametersSetAsync();
	await _four.OnParametersSetAsync();
	await _five.OnParametersSetAsync();
}

but instead do
protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	await _stateSet.OnParametersSetAsync();
}

I even thought of

Yep, we think along the same lines. Like I wrote above, maybe you can find a way so that the base class can call these for all the parameters automatically.

@peterthorpe81
I actually tried your suggested example:
protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	var expandedChanged = await _expandedState.SynchronizeParameterAsync();
	if (expandedChanged || !_isRendered)
	{
		_state = _expandedState.Value ? CollapseState.Entering : CollapseState.Exiting;
		//Is this necessary?
		_updateHeight = true;
		//compatibility
		await ExpandedChanged.InvokeAsync(_expandedState.Value);
	}

	_isRendered = true;
}

I made the change to SynchronizeParameterAsync to return a bool value and return true when there's a change. However, after this modification, I encountered some unexpected visual glitches, and Collapse_TwoWayBinding_Test1() fails.
It seems there might have been some confusion. It appears that the issue you mentioned

"I am seeing some odd visual behavior and the collapse_TwoWayBinding_Test1() fails"

Might be linked to the modifications you made rather than to my original code.
At present, it appears that retaining SetParametersAsync along with HasParameterChanged is necessary.
@henon can you double check, please.
upd: Apologies if I came across as frustrated in my message. I didn't mean to sound that way.

I will have to double check tomorrow on my work computer.

As for SynchronizeParameterAsync I understand why it is called that way but maybe we should consider calling it simply OnParameterSetAsync because it will be called only in OnParametersSetAsync like this.

Yeah, I guess it would simplify things, considering that StateManager is specifically only for Blazor parameters and EventCallbacks. I even though of adding something like StateSet / ParameterSet where you could supply a list of StateManagers and if you have like > 5 parameters to not do something like:
protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	await _one.OnParametersSetAsync();
	await _two.OnParametersSetAsync();
	await _three.OnParametersSetAsync();
	await _four.OnParametersSetAsync();
	await _five.OnParametersSetAsync();
}

but instead do
protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	await _stateSet.OnParametersSetAsync();
}

Not sure if it's wort implementing.

I think it may be. ColumnState on the original PR

@peterthorpe81
I actually tried your suggested example:
protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	var expandedChanged = await _expandedState.SynchronizeParameterAsync();
	if (expandedChanged || !_isRendered)
	{
		_state = _expandedState.Value ? CollapseState.Entering : CollapseState.Exiting;
		//Is this necessary?
		_updateHeight = true;
		//compatibility
		await ExpandedChanged.InvokeAsync(_expandedState.Value);
	}

	_isRendered = true;
}

I made the change to SynchronizeParameterAsync to return a bool value and return true when there's a change. However, after this modification, I encountered some unexpected visual glitches, and Collapse_TwoWayBinding_Test1() fails.
It seems there might have been some confusion. It appears that the issue you mentioned

"I am seeing some odd visual behavior and the collapse_TwoWayBinding_Test1() fails"

Might be linked to the modifications you made rather than to my original code.
At present, it appears that retaining SetParametersAsync along with HasParameterChanged is necessary.
@henon can you double check, please.
upd: Apologies if I came across as frustrated in my message. I didn't mean to sound that way.

@peterthorpe81
I actually tried your suggested example:
protected override async Task OnParametersSetAsync()
{
	await base.OnParametersSetAsync();
	var expandedChanged = await _expandedState.SynchronizeParameterAsync();
	if (expandedChanged || !_isRendered)
	{
		_state = _expandedState.Value ? CollapseState.Entering : CollapseState.Exiting;
		//Is this necessary?
		_updateHeight = true;
		//compatibility
		await ExpandedChanged.InvokeAsync(_expandedState.Value);
	}

	_isRendered = true;
}

I made the change to SynchronizeParameterAsync to return a bool value and return true when there's a change. However, after this modification, I encountered some unexpected visual glitches, and Collapse_TwoWayBinding_Test1() fails.
It seems there might have been some confusion. It appears that the issue you mentioned

"I am seeing some odd visual behavior and the collapse_TwoWayBinding_Test1() fails"

Might be linked to the modifications you made rather than to my original code.
At present, it appears that retaining SetParametersAsync along with HasParameterChanged is necessary.
@henon can you double check, please.
upd: Apologies if I came across as frustrated in my message. I didn't mean to sound that way.

Perhaps, I was 99% sure I was on the PR code, I will double check tomorrow as I can't replicate at home (so it probably was a mistake). If I try the above code with StateHandler as a class it works but as a struct it doesn't which I find odd in itself.

If you change my implementation and just change the SetValueAsync method to the above and set StateManager to a class it all appears to work.

Yeah, I noticed already that struct doesn't work in some cases, I changed it to class since we initialize now in the constructor.

I commited new changes, something very close what @henon asked
private ParameterState<bool> _expandedState;

public MudCollapse()
{
	_expandedState = ParameterState.Attach(nameof(Expanded), () => Expanded, () => ExpandedChanged, ExpandedParameterChangedHandler);
	RegisterParams(_expandedState);
}

private async Task ExpandedParameterChangedHandler()
{
	// Expanded property change logic.
}

This is how it looks now.
The ExpandedParameterChangedHandler is optional in the constructor and it supports both sync and async versions of methods / lambdas.

Awesome, all the extra code vanished from MudCollapse, it is almost as it was before :D
The first component where I want to test this is MudButtonGroup. There we already use SetParametersAsync instead of code in the setters and it has quite a few parameters.
I still think unifying registration and parameter definition in one line would be cool, especially with many parameters, but that is a small detail. Does anything speak against it?

Ok, I see, it is a ReadOnlyCollection.

What if a class derives from a class that derives from MudComponentBase and wants to register additional parameters?

What if a class derives from a class that derives from MudComponentBase and wants to register additional parameters?

You make a good point, if there is component A that uses this, then component B that inherits A and wants additional parameters then A will lose them. So i guess it has to be mutable to accept new ones. I didn't think of this scenario.

I added an xmldoc for ComponentBase.RegisterParameter. When we have a final version of it which everyone agrees with, we can copy it to the other overloads

We have flaky test Failed GridView_ChooseColor [515 ms] which is not related

The new section in CONTRIBUTING.md:

Parameter Registration or why can't I have logic in a parameter setter
MudBlazor parameters shall be auto-properties, meaning that there must not be logic in the property getter or setter. This rule prevents update-loops and other nasty bugs such as swallowed exceptions due to unobserved async discards.
"This is quite inconvenient" you may say, where do I call the EventCallback and how to react to parameter changes? Luckily the MudBlazor team has got your back. Thanks to our ParameterState framework you don't need to keep track of
old parameter values in fields mess around with SetParametersAsync.
TLDR; Register your parameters in the constructor with a change handler that contains all the code you want to execute when the parameter value changes.
Example of a bad Parameter definition
Here is a real example of a parameter with additional logic in the setter, which is now forbidden.
private bool _expanded;

[Parameter]
public bool Expanded
{
    get => _expanded;
    set
    {
	if (_expanded == value)
	    return;
	_expanded = value;
	if (_isRendered)
	{
	    _state = _expanded ?
    }
}

Note how the setter is invoking async functions which can not be awaited, because property setters can only have synchronous code. As a result, the async
functions are invoked and their return value Task is discarded. This not only creates hard to test multi-threaded behavior, it also prevents the user of this
component from being able to catch any errors in the asnc functions. Any exceptions that happen in these asynchronous functions may or may not bubble up
to the user. In some cases Blazor just catches them and they are silently ignored, in other cases they may cause application crashes that can't be prevented with try catch.
The alternative would be to move the code from the setter into SetParametersAsync and depending on the component you would also need code in OnInitializedAsync.
This is cumbersome and error prone and requires you to keep track of the old parameter value in a field and write a series of if statements in SetParametersAsync if there are multiple parameters.
Using our new ParameterState pattern all this is not required.
Example of a good Parameter definition
private ParameterState<bool> _expandedState;

[Parameter]
public bool Expanded { get; set; }

In the constructor, we register the parameter so that the base class can manage it for us automatically behind the scenes:
public MudCollapse()
{
    _expandedState = RegisterParameter(
			nameof(Expanded),    // the property name is needed for automatic value change detection in SetParametersAsync
			() => Expanded,     // a get func enabling the ParameterState to read the parameter value w/o resorting to Reflection
			() => ExpandedChanged,     // a get func enabling the ParameterState to get the EventCallback of the parameter
			ExpandedParameterChangedHandlerAsync    // the change handler
		);
}

The code from the setter moves into the change handler function which is async so the called functions can be awaited.
private async Task ExpandedParameterChangedHandlerAsync()
{
    if (_isRendered)
    {
	_state = _expandedState.Value ? CollapseState.Entering : CollapseState.Exiting;
	await UpdateHeightAsync();  // async Task not discarded
	_updateHeight = true;
    }
    else if (_expandedState.Value)
    {
	_state = CollapseState.Entered;
    }
    await ExpandedChanged.InvokeAsync(_expandedState.Value); // async Task not discarded
}

What about the bad parameters all over the MudBlazor code base?
We are slowly but surely refactoring all of those, you can help if you like.

@ScarletKuro what do you think about always supplying the old and new values into the change handler?

@ScarletKuro what do you think about always supplying the old and new values into the change handler i.e. using ParameterChangeArgs or so?

Hmmm we can, I don't see issues with that.

Then I guess we should.

Then I guess we should.

Nvm, the ParameterChangedEventArgs would be need the generics to know the type of last and new value, but then this means the IParameterComponentLifeCycle would need to have it too since it the one that contains the Task ParameterChangeHandleAsync(); but it cannot be generic because the ParameterSet stores them as list
https://github.com/MudBlazor/MudBlazor/blob/f247086a7a1bc367ee72519089085302d2e6f5b9/src/MudBlazor/State/ParameterSet.cs#L24
Otherwise we wouldn't be able to add any type of the ParameterState<T>. At least I don't know any good way to solve this.

We could use type object for OldValue and NewValue?

Yea, but im not fan of object, when there is great alternative to call _xyzState variable if you need the previous and new value in the handler.

The new value is already assigned when the handler is executed, right. So how to get the old value?

Ok, if it is possible to get LastValue from the ParameterState, that is good enough.

The new value is already assigned when the handler is executed, right? So how to get the old value?

It's not, the ParameterChangeHandleAsync is called before OnInitialized and OnParametersSet, the SetParametersAsync doesn't override the _lastValue in the ParameterState, so it should store the previous one.

That sounds like sometimes the new value is applied and sometimes not, depending on where we are in the component life cycle? If so, that would be bad.

It's not, the ParameterChangeHandleAsync is called before OnInitialized and OnParametersSet, the SetParametersAsync doesn't override the _lastValue in the ParameterState, so it should store the previous one.

Ok nvm, my assumption was incorrect.
https://github.com/MudBlazor/MudBlazor/blob/f247086a7a1bc367ee72519089085302d2e6f5b9/src/MudBlazor/State/ParameterSet.cs#L68-L80
When this is called, the
https://github.com/MudBlazor/MudBlazor/blob/f247086a7a1bc367ee72519089085302d2e6f5b9/src/MudBlazor/State/ParameterSet.cs#L74
will also call the ParameterSet will be called
https://github.com/MudBlazor/MudBlazor/blob/f247086a7a1bc367ee72519089085302d2e6f5b9/src/MudBlazor/State/ParameterStateOfT.cs#L88-L96
then it will hit the If and override the
_lastValue and set the Value that corresponds to the new value.
And when this is invoked
https://github.com/MudBlazor/MudBlazor/blob/f247086a7a1bc367ee72519089085302d2e6f5b9/src/MudBlazor/State/ParameterSet.cs#L78
We will know the correct new Value but we will not know the last value.
But do we have a scenario when we really need the last value?
Customers can't use this new ParameterState anyway since everything is internal, and we will need it for ourselves well think then i will figure something, but currently I haven't found a use for it.

I am speaking from experience with INotifyPropertyChanged and INotifyPropertyChanging. The former doesn't give you the last value while the latter does give it. In some scenarios I have needed it. I am sure there is a way to safe the old value in the state. But I guess we can address this when we really need it.

Ok.
Once we solve the @peterthorpe81  datagrid thingy issue from here https://github.com/MudBlazor/MudBlazor/pull/8258#issuecomment-1971658254
and I add few more samples to CONTRIBUTING.md this is ready to merge.

Ok, now when I did the datagrid myself I verified that this check was necessary.
@peterthorpe81 pls review that the datagrid works as expected, then I can migrate the tests, I guess it can stay in this PR to not do it back and worth.

This is a list of problematic components:
MudAutocomplete
MudCarousel
MudChipSet
MudColorPicker
MudBaseDatePicker
MudDateRangePicker
MudDialog
MudDialogInstance
MudDrawer
MudExpansionPanel
MudFileUpload
MudFocusTrap
MudForm
MudHidden
MudList
MudListItem
MudMask
MudMessageBox
MudNavGroup
MudNavLink
MudNavMenu
MudNumericField
MudPagination
MudPicker
MudProgressCircular
MudProgressLinear
MudRadio
MudRadioGroup
MudRating
MudRTLProvider
MudSlider
MudTabs
MudTextField
MudThemingProvider
MudTimePicker
MudTooltip
MudTreeViewItem
MudToggleIconButton - paremeter overrite

This list might be not full as I looked really briefly. Not cases are easy solvable, it's when getter has custom logic, especially hard ones are when converter is involved. But back then I was saying that converters need a huge rework is well, but for now it's another titanic work.

Added the last missing xml docs for the RegisterParameter and merged the tests from #8041
If @peterthorpe81 won't reply by the end of this week I'm going to merge this, since I haven't found any problems with the Hidden implementation.
Also, since I dogfeed the DataGrid Hidden issue we probably need to manually mention this in the release note that it fixes the problem for #7966, #7985, #7953

@ScarletKuro Yes, please merge as you please. If there should be anything we have overlooked for datagrid @peterthorpe81 can still PR an amendment or use a different approach in datagrid should it really be necessary.
Thanks to @peterthorpe81 who had the initial idea for this, thanks to @ScarletKuro for developing it further into a general purpose tool and doing all the development work on this amazing framework and thanks to everyone else who collaborated or reviewed.

@ScarletKuro This is brilliant thanks for all the work on it!!! I confirm optional binding scenarios like https://github.com/MudBlazor/MudBlazor/pull/8258#issuecomment-1971658254 appear to work.
I think there are a few subtle issues with the Hidden fix public methods in Column.Razor.cs . I'm happy to do a PR after for that though as I know you are 49 commits deep and it's not core to this. Grouping needs fixing too anyway.
If you did want it in I'm looking a this bit of Column.razor.cs:
public async Task HideAsync()
{
    await HiddenState.SetValueAsync(true);
    await HiddenChanged.InvokeAsync(HiddenState.Value);
}

public async Task ShowAsync()
{
    await HiddenState.SetValueAsync(false);
    await HiddenChanged.InvokeAsync(HiddenState.Value);
}

public async Task ToggleAsync()
{
    await HiddenState.SetValueAsync(!HiddenState.Value);
    await HiddenChanged.InvokeAsync(HiddenState.Value);
    ((IMudStateHasChanged)DataGrid).StateHasChanged();
}

HiddenChanged.InvokeAsync doesn't need calling its called in SetValeuAsync its the grid that needs re-rendering. Something like this:
public async Task HideAsync(bool renderGrid = true)
{
    await HiddenState.SetValueAsync(true);
    if (renderGrid)
        ((IMudStateHasChanged)DataGrid).StateHasChanged();
}

public async Task ShowAsync(bool renderGrid = true)
{
    await HiddenState.SetValueAsync(false);
    if (renderGrid)
        ((IMudStateHasChanged)DataGrid).StateHasChanged();
}
//NAME ISSUE?
public async Task ToggleAsync(bool renderGrid = true)
{
    await HiddenState.SetValueAsync(!HiddenState.Value);
    if (renderGrid)
        ((IMudStateHasChanged)DataGrid).StateHasChanged();
}

HeaderCell.razor.cs:
internal async Task HideColumnAsync()
{
    if (Column != null)
    {
        await Column.HideAsync();
//REMOVE THIS
        //((IMudStateHasChanged)DataGrid).StateHasChanged();
    }
}

Again, Brilliant work!

HiddenChanged.InvokeAsync doesn't need calling its called in SetValeuAsync its the grid that needs re-rendering. Something like this:

You are right, got a brain lag. Thanks for noticing, I will fix that moment since it's critical, the rest you can do in a follow up PR.

Hi @peterthorpe81
Do you plan to PR fix for Grouping  etc?


Best practice for mix precision training

I am trying to fine-tune CLIP models on new datasets. What's the best practice for mix precision training?
Using Adam, I got errors either nan or inf since attribute eps is hard to specify for Half and float32. My walk around is to divide parameters into two groups and specify different eps. Any better solutions?

@jongwook Thanks. fp32 for optimization and fp16 for forward/backward. Switching back and forth works!

hello, I met the same problem with you.
Can you show the specific solution about this problem. I try the code as below but it not work for me.
with amp.autocast():             out = net(photo1,token)

@cupcakefromchina Convert parameters and grads to fp 32 before applying Adam, then convert it back
def convert_models_to_fp32(model):
for p in model.parameters():
p.data = p.data.float()
p.grad.data = p.grad.data.float()
def convert_models_to_mix(model):
clip.model.convert_weights(model)
---- your train function ------
convert model to fp32
convert_models_to_fp32(model)
optimizer.step()
convert model back to mixed precision
convert_models_to_mix(model)

@cupcakefromchina Convert parameters and grads to fp 32 before applying Adam, then convert it back
def convert_models_to_fp32(model):
    for p in model.parameters():
        p.data = p.data.float()
        p.grad.data = p.grad.data.float()

def convert_models_to_mix(model):
    clip.model.convert_weights(model)

---- your train function ------
convert_models_to_fp32(model)
optimizer.step()
convert_models_to_mix(model)

Thank you for your solution. But there is still a question. Which object is the "clip" represent? I don't understand this function and find no api in the original code.
def convert_models_to_mix(model):     clip.model.convert_weights(model)

@cupcakefromchina here

@qingerVT I was trying out training on my own dataset too and was facing the exact same issue. Thanks for pointing out the stuff about mixed precision training, will definitely try it out, thanks!
I'm curious though, are you able to see the loss decreasing in that case? For me it always ends up blowing up, maybe small batch size is a problem, I have only a single GPU machine.
@KeremTurgutlu Could you weigh in too if training is working out? Also, I've taken a look at your code and it would be really useful to me. Could you maybe point out how I can go about adding the open souce CLIP weights for finetuning? Still quite new to pytorch.

@KeremTurgutlu Could you weigh in too if training is working out? Also, I've taken a look at your code and it would be really useful to me. Could you maybe point out how I can go about adding the open souce CLIP weights for finetuning? Still quite new to pytorch.

Yes, I have successfully trained CLIP on my own data and performance is close to open source model with just 5.5 million image-text pairs. I am working on wrapping up the code for both training from scratch and fine-tuning. In the meantime you can watch this branch, should be complete in 1-2 days.

@cupcakefromchina Convert parameters and grads to fp 32 before applying Adam, then convert it back
def convert_models_to_fp32(model):
    for p in model.parameters():
        p.data = p.data.float()
        p.grad.data = p.grad.data.float()

def convert_models_to_mix(model):
    clip.model.convert_weights(model)

---- your train function ------
convert_models_to_fp32(model)
optimizer.step()
convert_models_to_mix(model)

Thank you for your solution. But there is still a question. Which object is the "clip" represent? I don't understand this function and find no api in the original code.
def convert_models_to_mix(model): clip.model.convert_weights(model)

yes, loss is decreasing. Function convert_weights() is in clip/model.py. Try
export PYTHONPATH=/your/path/CLIP:$PYTHONPATH

can I know what's the differences between
def convert_models_to_fp32(model):
    for p in model.parameters():
        p.data = p.data.float()
        p.grad.data = p.grad.data.float()

vs
model.float() ?

can I know what's the differences between
def convert_models_to_fp32(model):
    for p in model.parameters():
        p.data = p.data.float()
        p.grad.data = p.grad.data.float()

vs
model.float() ?

Ah, no difference :)

@jongwook. @qingerVT . Hi.  I have a simple question. I understand the solution below about the mix precision training. I know the converting to fp16 is to save cuda memory, with negligible loss of Acc. However, what are the advantages of the below referenced method over the usual methods, such as Apex and torch.cuda.amp work well?

@cupcakefromchina Convert parameters and grads to fp 32 before applying Adam, then convert it back
def convert_models_to_fp32(model):
    for p in model.parameters():
        p.data = p.data.float()
        p.grad.data = p.grad.data.float()

def convert_models_to_mix(model):
    clip.model.convert_weights(model)

---- your train function ------
convert_models_to_fp32(model)
optimizer.step()
convert_models_to_mix(model)

@nbl97 Not much, just that we wanted to have a granular control over which operation is in which dtype. Not that torch AMP is mature, I'd use it if I were to start a project from scratch.

@nbl97 Not much, just that we wanted to have a granular control over which operation is in which dtype. Not that torch AMP is mature, I'd use it if I were to start a project from scratch.

@jongwook  As we all know, converting fp32 to fp16 may drop Acc, however, what is the performance if we convert fp16 to fp32 ? When useing CLIP pretrained model on my own task, what is the performance if I always use fp32 and never convert the model? Do you have experience about that? Thanks in advance.


Some source code not reflected in published version

Checklist

[X] I've looked at the documentation to make sure the behavior isn't documented and expected.
[X] I'm sure this is an issue with Leaflet, not with my app or other dependencies (Angular, Cordova, React, etc.).
[X] I've searched through the current issues to make sure this hasn't been reported yet.
[X] I agree to follow the Code of Conduct that this project adheres to.

Steps to reproduce

On current github sources, there is this line of code:

https://github.com/Leaflet/Leaflet/blob/399ed2105220f10b79e69b57420597e03502e611/src/map/Map.js#L206
This code's version is coming from PR#6685.

On npm repository, the /src/map/Map.js file doesn't include this code (neither does the built /dist file<EMAIL_ADDRESS>
I also checked on older version like 1.7.1 and 1.6.0.
It looks like this PR#6685 has been merged to the github sources, but is never deployed to production?
Expected behavior
I expect the production version published on npm to included all source code from Github (in the /dist folder as well as /src folder).
Current behavior
The current code published to npm doesn't reflect all the source code present on Github. In particular the code merged by PR#6685
Minimal example reproducing the issue
No response
Environment

Leaflet version: 1.8.0
Browser (with version): Vivaldi 5.2.2623.48
OS/Platform (with version): MacOS BigSur 11.6

Thank you for taking time to report this. But when you look on the release date of 1.8.0 you will see, that #6685 is merged after the release. So everthing is as expected. The change will be in the next release 1.9.0.
The main branch is not in sync with the lastest release.

🤦♂ I just looked at the PR creation date, which is 2019. So I assumed it has been merged long time ago haha
Sorry for the inconvenence, and thank you for this very quick reply!


chore: release main

:robot: I have created a release beep boop
postgres-env: 2.2.1
2.2.1 (2024-11-10)
Bug Fixes

🐛 fix templates options (#238) (eccf905)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

postgres-env-v2.2.1
:sunflower:


Unable to edit injected GeoJson shapes

Environment:

node-red-contrib-web-worldmap v2.4.2
node-red v1.0.6
Node.js v10.20.1
Running within docker container - Docker Desktop <IP_ADDRESS>, Engine 19.03.8 on Windows 10 [10.0.19041.329]

Injecting:
{"name":"zone1","editable":true,"clickable":true,"area":[[51.05,-0.08],[51.5,-1],[51.2,-0.047]]}
Editing works properly starting v2.4.2
But when injecting:
{ "name": "zone2", "geojson": { "type": "Polygon", "coordinates": [ [ [ -0.08, 51.05 ], [ -1, 51.5 ], [ -0.047, 51.2 ], [ -0.08, 51.05 ] ] ] }, "layer": "layer1", "editable": "true", "clickable": "true" }
Unable to edit the polygon.

I don't think geojson shapes are inherently editable in leaflet.
I'm happy to be shown otherwise - if anyone wants to suggest a pull request ?

Sorry I didn't consider looking at the code until now, I thought that the .area, .line jsons that are sent/received by Worldmap nodes are something you've implemented in the integration with node red. Just noticed that it is actually Leaflet itself that handles all this, including .geoJson. So this means that it is up to Leaflet to enable editing geoJson.
A workaround is to convert geoJson or WKT to Leaflet format (-is that a proper name?) before sending it to Worldmap - perhaps there's that does just that?


Roll engine 39c46dea4b73..7234cc463402 (4 commits)

https://github.com/flutter/engine/compare/39c46dea4b73...7234cc463402
git log 39c46dea4b7347a252218aaff5caac5dc2fec8cd..7234cc4634024c488ec68fac80a0ee59fe22a73a --no-merges --oneline
7234cc463 Roll src/third_party/skia 705e67347962..9159c8ef83b2 (1 commits) (flutter/engine#8014)
8a0b054a4 Roll src/third_party/skia<PHONE_NUMBER>1a..705e67347962 (7 commits) (flutter/engine#8013)
36cdd2ee6 Roll src/third_party/skia 436d47d5bde9..09198525261a (6 commits) (flutter/engine#8012)
9bef73a1a Roll src/third_party/skia e1f5b644656f..436d47d5bde9 (3 commits) (flutter/engine#8009)
The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff (garyq@google.com), and stop
the roller if necessary.

Trybots failed. These were the failed builds: https://cirrus-ci.com/task/5325008697032704

Commit queue failed; closing this roll.


Implement utilities to train generative models for Scarlet

This issue is to keep track of the development necessary to train generative models for use with Scarlet for deblending.

[x] : Implement PixelCNN model in g2g
[x] : Define training set properties from GalSim COSMOS dataset
[ ] : Train model
[ ] : Add export scripts to make a scarlet friendly tf hub module

Just to keep track of things, this issue is connected to the scarlet implementation of deblending with ML learned priors here: https://github.com/pmelchior/scarlet/issues/128
I'm opening branch u/EiffL/pixelcnn to work on it.

I've added code to generate cosmos postage stamps at HSC resolution, and implemented the pixel cnn model. Note that there might still be some work needed on the effective PSF used for cosmos, generated here https://github.com/ml4astro/galaxy2galaxy/blob/master/notebooks/AccessingHSCProblems.ipynb
There are traces of aliasing in some images...


exec sp_executesql does not show Query Plan

Azure Data Studio Version: 1.14.1

Steps to Reproduce:

Run this: (using any table)

select * from Users
exec sp_executesql N'select * from Users'

Then click "Explain".  My result:

As you can see, when exec sp_executesql is used, there is no query plan available.
The same set of queries running SSMS result in:

This behavior is consistent across ADS and SSMS for estimated plans.  When viewing actual plans in the new query plan viewer feature in the latest release, the plans display correctly (and the same between ADS and SSMS).


Connecting Wells Fargo direct feed not working correctly on mobile. You land on the sign in page after connecting

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

Version Number:
Reproducible in staging?:
Reproducible in production?:
If this was caught on HybridApp, is this reproducible on New Expensify Standalone?:
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @joekaufmanexpensify
Slack conversation (hyperlinked to channel name): ts_external_expensify_expense
Action Performed:

Enable company card in workspace
Click Add card and choose Wells forgo bank
Enter credentials and click connect

Expected Result:
User redirected to the feed page
Actual Result:
User redirected to sign in page
Workaround:
Unknown
Platforms:

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

[ ] Android: Standalone
[ ] Android: HybridApp
[ ] Android: mWeb Chrome
[x] iOS: Standalone
[x] iOS: HybridApp
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence

https://github.com/user-attachments/assets/755c6fb9-b6f2-49ee-bdee-396fe865ca6f
View all open jobs on GitHub

@joekaufmanexpensify I am not able to see any difference in how wells fargo would handle this compared to other banks. Can you please confirm you can only reproduce this for this bank and not for others on mobile?

Hi, I'm Viktoryia from Callstack - expert contributor group - and I would like to work on this issue.

It's not overdue, we are actively discussing it in slack.

It seems to be API-related, caused by pusher updates raised last week see more details in the slack.

We figured out that the issue here is we intentionally disabled onyx updates for the webview temporarily as part of a performance issue. As soon as they're re-enabled, this issue should be resolved.
Closing this for now as we shouldn't need to do anything here. I'll just retest this once onyx updates are re-enabled!


Windows fix

This branch contains fixes for running the example on Windows. See #1 for more information. All members which are forced to use Windows should review this.

At now there exist two docker compose files docker-compose.yml and docker-compose.logging.yml. Looking at the file names the intention is not clear. I think we have to improve on that.
1. Solution: Renaming
docker-compose.yml -> docker-compose.syslogd.yml
docker-compose.logging -> docker-compose.default.yml
2. Solution: Switch to default logging
Is there any reason we want to log with syslogd? I am not a docker specialist.
3. Solution: Remain
If there is a good reason for logging with syslogd we should appreciate that and get to used by it.


$pubsub->listen can not be used in the startup

Mojo::Pg version: 2.28
Perl version: v5.20.2
Operating system: Debian and kernel 3.16.7

Steps to reproduce the behavior
cann't use $pubsub->listen in startup:
sub startup {
  my $self = shift;
  $self->helper(pg => sub {
  state $pg = Mojo::Pg->new('postgresql:///db')});
    $self->pg->pubsub->listen(
    permission => sub {
      my ($pubsub, $payload) = @_;
      $self->get_permission_cache;
    });
...
}

However, such this statement in the help is the performance of normal:
$self->attr('permission');
  $self->helper(
    get_permission_cache => sub {
      $self->{permission} = {};
      Mojo::IOLoop->delay(
	sub {
	  my $delay = shift;
	  my $sql   = "SELECT roles.id,key FROM roles " .
	              "JOIN permissions ON permissions.id = ANY(roles.permissions)";
	  $self->pg->db->query($sql, $delay->begin);
	},
	sub {
	  my ($delay, $err, $result) = @_;
	  if ($err or not $result->rows){
	    # 考虑是否退出?
	  }
	  foreach ($result->hash){
	    $self->{permission}->{$_->{key}}->{$_->{id}} = 1;
	  }

	  $self->pg->pubsub->unlisten('permission');
	  $self->pg->pubsub->listen(
	    permission => sub {
	      my ($pubsub, $payload) = @_;
	      $self->get_permission_cache;
	    });
	});
    });

updated formatting

I don't understand the problem. Certainly listen does work in the startup method

Until you have more details this has to be closed as not reproducible. It may be reopened with more details or a running example.

For the record, the pubsub system only works while the loop is running, so I guess I should say, listen works but you won't see any results until the loop starts; which happens after startup completes. In your delay example, you might try adding ->wait to the end to make it portable between before and after the loop starts.

I have a few tests:
Test 1)
sub startup {
  my $self = shift;
  $self->config(hypnotoad => {workers => 4});
  $self->helper(
    pg => sub {
      state $pg = Mojo::Pg->new('postgresql:///db')});

  $self->pg->pubsub->listen(
    cache => sub {
      my ($pubsub, $payload) = @_;
      $self->log->info($payload);
    });
}

Try to send a notify in other controller.
  $self->pg->pubsub->notify(cache => 'update!');

Nothing happens.
Test 2)
  $self->pg->pubsub->on(
    reconnect => sub {
      my ($pubsub, $db) = @_;
      $pubsub->listen(
	cache => sub {
	  my ($pubsub, $payload) = @_;
	  $self->log->info($payload);
	});
    });

Only one info contain the $payload when send notify once.
Test 3)
  $self->helper(
    test_pubsub => sub {
      Mojo::IOLoop->delay(
	sub {
	  my $delay = shift;
	  my $sql   = 'SELECT 1 + 1';
	  $self->pg->db->query($sql, $delay->begin);
	},
	sub {
	  $self->pg->pubsub->unlisten('cache');
	  $self->pg->pubsub->listen(
	    cache => sub {
	      my ($pubsub, $payload) = @_;
	      $self->log->info($payload);
	    });
	});
    });

  $self->test_pubsub;

4 info contain the $payload, maybe from the 4 workers.
This is what I need.
also test redis pub/sub
sub startup {
  my $self = shift;
  $self->config(hypnotoad => {workers => 4});
  $self->helper(redis => sub {state $redis = Mojo::Redis2->new()});

  $self->redis->subscribe(['cache']);
  $self->redis->on(
    message => sub {
      my (undef, $message, $channel) = @_;
      if ($channel eq 'cache'){
      	$self->log->info($message);
      }
    });
}

Only 3 info contain the $message, I don't know why.

There is fork-safety code in Mojo::Pg::PubSub (https://github.com/kraih/mojo-pg/blob/master/lib/Mojo/Pg/PubSub.pm#L31), so this might be a bug if that code doesn't work. Afraid i don't have time to take a closer look at it now.

There were bugs, but the behavior described here is intended i'm afraid. I've added a note to the docs. https://github.com/kraih/mojo-pg/commit/74d26c4d6160717caa0c2f39332ac892bbf779ca


styleUrls and nativescript

I just came across a small issue while trying to style some components using Nativescript. It seems like the DecoratorUtils is getting rid of the styleUrls metadata for native:
if (metadata.styleUrls && CoreConfigService.IS_MOBILE_NATIVE()) {
      // {N} doesn't support all css properties, therefore remove styleUrls to be safe
      delete metadata.styleUrls;
}

which means you can't add custom component-specific styles out of the box?
While I understand why you're doing this (because of the limited css support), I think it's maybe a bit extreme to remove it all? That basically means that for nativescript, you'd need to have all your css in app.css (which is a bit painful to maintain I would have thought?) or, of course you can just get rid of that statement...
Just wondering if somebody has some alternative or what your general thoughts are really...

We could bring this back. The biggest issue is that when unsupported css is used, it can break the {N} app entirely. For instance :host is not supported by NativeScript currently.
Thoughts are welcome if we should just allow this to be left up to the developer to figure out?
Basically it would boil down to developers needing to put only web only css properties in their global css file and keep their component styling to cross platform css styles only.

@arnaudvalle Turns out latest NativeScript does not have issue with the styles. The styleUrls are no longer stripped on latest master and you can use them now, thanks for bringing this up 👍

nice one @NathanWalker - thanks for looking into this


Collections URL broken

Please describe the bug
This is giving an error message: https://swiftpackageindex.com/AudioKit/collection.json
Explain the steps needed to reproduce the bug
Go to https://swiftpackageindex.com/AudioKit/collection.json
See bug.
What was the expected behaviour?
JSON for AudioKit Packages

Thanks a lot for the report, @aure ! This seems to affect collections generally 😣

According to a local bisect it looks like #2060 broke this. However, it's unclear to me how a) that PR would have anything to do with collections and b) why the collection tests wouldn't catch this.

Specifically, the error is an unexpected force-unwrap in PacakageCollection+VersionResult.swift:

which in this case I triggered via
curl -s "http://localhost:8080/AudioKit/collection.json"

Deleted that previous analysis. After re-testing a third time it's not reproducible on #2060. I reset the db and re-applied migrations. Might have had something to do with the fact that I jumped over the migration when bisecting without applying the db changes for the revision correctly.

I suspect this is config level breakage. I'm getting this error locally which I thought was as issue with my local setup:
❯ curl -s "http://localhost:8080/AudioKit/collection.json"
{"error":true,"reason":"invalidCertChain"}⏎

But I suspect something's changed with respect to the cert chain/the certs. That would perhaps explain why no tests fired, because I'm not sure to what extent we have coverage with the full live setup in CI.
If that's the issue, we need to add a collection url to our smoke tests.

FWIW, I see no such error in the prod logs, which might mean it's not the actual error or a logging gap.

Seems to be more of a puzzle than usual, didn't think I'd stump y'all. :)

Ah, now it's failing - we hadn't triggered CI runs in the last couple of days:

https://github.com/SwiftPackageIndex/SwiftPackageIndex-Server/actions/runs/3408252222/jobs/5668668270
I suspect this is certificate related.
@daveverwer I recall we renewed our dev account recently so this might mean our certificate needs to be renewed.

It's almost certainly that. I'll renew it. Thanks so much for the bug report @aure! I'll also put a reminder in to do it in advance next year.

Tested in production and all is now fixed 👍


Set minimum number of plaintiffs to 1 (also add default of 1?)

Minimum was already set. I added default and cleaned up a bit. #57

Fixed by #57


[Feature] Add support for commands history (up/down arrows)

@marcinbor85 Are you working on this? If you arent I'd love to contribute, I have a question abt the input buffer however

Hi @GhostFire90
I´ve implemented this in https://github.com/RoStCode/microshell/tree/issue6_cmd_history and it is working good in a "production environment". However, I would say that code is not yet ready for prime time. Some unit tests are missing and code could be improved. Feel free to try it out and suggest improvements.

@RoStCode Sounds good! thank you for the reply, do you have specific src files you worked in for it? im curious how you implemented it

What do you mean? All code is visible in the branch linked.


Allow Symphony.Extensions variable to the javascript

We should think about adding a general container to the JavaScript Symphony object allowing extensions to globally store functions – somethings like Symphony.Extensions = {};.
See https://github.com/nilshoerrmann/datetime/commit/b808b422a8167c99a2eb4ec88e60c580f8f09de4#commitcomment-459703.

Sharing functions between extensions is a rare (and hypothetical?) use case and I feel we are over thinking this at the moment. Symphony.ExtensionName, as implemented by some extensions, is a unique signature and should suffice.


ci(github): added twig cypress tests to test workflow

Fixed #947
This PR makes the cypress tests for twig run within the test workflow. To do this, it spins up a docker container using the ilo base theme image and overwrites the build artifacts inside the image with the artifacts generated in the workflow.  It then runs the cypress tests against this container.
I also updated the version of all the actions that are being used in the workflow and fixed the caching of pnpm dependencies. It drops the matrix runner since Mac OS runners don't support running docker.

Hey @bashlk is this ready to merge now?

Hi @justintemps, no it isn't - I intended to create this as a draft PR but accidentally created it as a normal PR. I needed to create it because Github often does not trigger GitHub Actions for branches that don't have a PR. I will edit this PR and let you know once it is ready to merge.

For some reason, the GitHub Action keeps getting cancelled - have we hit some kind of quota limit?

Not that I'm aware of...
On Wed, May 22, 2024 at 11:50 AM Prabashwara Seneviratne <
@.***> wrote:

For some reason, the GitHub Action keeps getting cancelled - have we hit
some kind of quota limit?
—
Reply to this email directly, view it on GitHub
https://github.com/international-labour-organization/designsystem/pull/1024#issuecomment-2124350360,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC6TUGZH4RWYYS63MVUGZXLZDRS73AVCNFSM6AAAAABIBMLXT6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMRUGM2TAMZWGA
.
You are receiving this because you were mentioned.Message ID:
<international-labour-organization/designsystem/pull/1024/c2124350360@
github.com>

@justintemps This is now ready to merge.

Hey @bashlk weren't we going to remove the macos actions?


Any way to clone only the subrepositories?

🤓 Question
Seems like the following workflow is not implemented.
git clone<EMAIL_ADDRESS>cd myrepo
meta git clone<EMAIL_ADDRESS>.

With the last command, I only want to clone the sub-repositories into their respective directories.
Any solutions?

I can't see the contents of your top level repo but I assume it's a meta repo. If that's the case, just type meta git update.


Implement Rigidbody sync in new 1.3 network transforms

Is your feature request related to a problem? Please describe.
The 1.3 branch breaks physics-based network object and sync functionality.
Describe the solution you'd like
Add option to sync Rigidbody including axis restrictions, preferably.
Additional context
1.2 screenshots:

I'm currently in the preproduction process of my project which is multiplayer a sports game of sorts and I will have a rigid body ball in it of course. So this is kind of a huge deal for me as well as I'm considering to use Mirror.

Would velocity be helpful for anyone?  I don't want to rip out old Rigidbody stuff as I'm not familiar with them enough. But it would be nice to for me to have this on a spawn payload to simulate simple rigidbody stuff client side.

Would velocity be helpful for anyone? I don't want to rip out old Rigidbody stuff as I'm not familiar with them enough. But it would be nice to have this on a spawn payload to simulate simple rigidbody stuff client side.
Edit: Might as well just make a NetworkRigidbody by the time I find a decent looking way to do it in NetworkTransform

I'm having a similar problem syncing a hockey puck on my simple multiplayer test game. Fully described here: https://gamedev.stackexchange.com/questions/169257/spawned-network-object-with-rigidbody-moves-at-different-velocity-angle-pos-on-t
A NetworkRigidbody.cs would be amazing help for me. Not only to use it in this project, but to look at and better understand how the syncing process works

This issue is a couple months old and I see a NetworkRigidBody component in the API, is this issue considered solved by now?

Where is the Network Rigidbody??

This issue is a couple months old and I see a NetworkRigidBody component in the API, is this issue considered solved by now?

Where is the NetworkRigidBody at?

There isn't one. If you search for "NetworkRigidBody", there's a promise in the readme file to add it later, and that's it.

Is there any update with NetworkRigidBody?

Will this feature be available ?

Any update on this yet? All I am seeing is just a promise, no results

Some work started in https://github.com/vis2k/Mirror/pull/1822

Cool! Thanks for letting me know. Is there anything I can do until that is available? I want to have a rigidbody projectile with no client authority.

Support is handled through Discord, not in old feature request tickets.


Update test.yml

Update windows and macOS builds to python 3.10

Codecov Report

Merging #121 (cc4bb52) into main (cc917cb) will decrease coverage by 0.57%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##              main     #121      +/-   ##
===========================================
- Coverage   100.00%   99.42%   -0.58%
===========================================
  Files            8        8
  Lines          375      350      -25
  Branches        34       30       -4
===========================================
- Hits           375      348      -27
- Misses           0        1       +1
- Partials         0        1       +1

Impacted Files
Coverage Δ

smtpdfix/controller.py
98.07% <0.00%> (-1.93%)
:arrow_down:

smtpdfix/fixture.py
100.00% <0.00%> (ø)

smtpdfix/handlers.py
100.00% <0.00%> (ø)

smtpdfix/configuration.py
100.00% <0.00%> (ø)

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 cc917cb...cc4bb52. Read the comment docs.


Exclude archive.* namespace from Dendron index

Please Select if your Request is Either something new or an Enhancement

[x] Enhancement of an existing Feature.
[ ] Request of a new feature.

Please select the area your request applys to. (Multiple selections are Possible)

[ ] Onboard. Initial vault setup and import/export pods
[ ] Create. Note creation, lookup, snippets and templates
[x] Retrieve. Backlinks, references, graph view
[ ] Structure. Refactoring, multi-vault and schemas
[ ] Publish. Sharing your repo with the world
[ ] Misc (Choose this if your not sure)

Is your feature request related to a problem? Please describe
The Dendron: Archive Hierarchy command moves the current file and its descendants into the archive.* namespace. For this to be really useful, shouldn't the archive.* namespace be excluded from Dendron's index, so that they don't show up in Backlinks, the Graph, or as targets for wikilinks?
Describe the solution you'd like
Please exclude the archive.* namespace from the Dendron index.

Please make this a config thing.
Sometimes I see myself achieving a Hierarchy because it is stable and will no longer be changed, in that way I would still prefer to have it be indexed and allow me to quickly link to a hierarchy that got archived.

Hey, @ddbrierton, there are already two issues that referred to a similar concept in the sense that they both asking for an option to exclude hierarchies (archive for example) from various Dendron functionalities--subtree hoisting (where you filter the tree and restrict the lookup to a certain hierarchy) and adding a sort option to remove archive notes from the top lookup results:

https://github.com/dendronhq/dendron/issues/664
https://github.com/dendronhq/dendron/issues/2561

I realize that this is is not exactly matches that ones I linked, but I think they are related enough, so that when the dev teams gets to considering/implementing this, they taking into account related concerns.

Referenced subtree hoisting although appears to have high potential for usage is likely an epic level item to implement properly.
While adding a configuration to exclude  notes from the index (or I should say NOT include into index) which start with archive is a couple days max worth of effort (potentially just a day).


minor typo

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.
[x] Have you successfully run brew tests with your changes locally?

Fixed minor typo -- missing preposition.

:+1: for grammar

I read most of the doc pages yesterday and had a whole bunch of nits fixed in a local branch. Guess I'm gonna let them slip because there are simply too many of them... Just saying.

@zmwangx it's your call, but I'm happy to review the branch if you push it, even if it's not everything

Thanks!


NDKEvent set author(user) always sets an 'undefined' author regardless of user value

This is probably unintended.

Looking through the code, I can't see how this would happen. Do you have a way to reproduce this?

Going to close for now but feel free to reopen.


refactored code for footer component

Description of PR
refactored footer component
Type of PR

[ ] Bugfix
[x] New feature

Relevant Issues
Fixes #686 .
Checklist

[x] Compiles and passes lint tests
[x] Properly formatted
[x] Tested on desktop
[x] Tested on phone

@jeremyphilemon can you please review?

@himanshu8426 can you please rebase the PR and keep it updated until it gets reviewed?
It might take a little while but we will get to it. Thanks for contributing.

Hey thanks for the PR! Unfortunately, the footer was eventually turned into a component when we pushed the redesign today. However, thank you so much for your patience - feel free to open PRs against available issues :)


Ensure our dependencies are up-to-date

Description
I would like us to keep our tools sharp, therefore I would suggest to add a tool like Renovate to help us keep our dependencies and dev dependencies up-to-date.
What it does is scanning this repository for the package.json files and updating the dependencies for them in individual PRs.
It provides a lot of configuration options, e.g. grouping certain dependencies together, automerging if the tests are green, etc.

What JS dependencies does Detox have that would benefit from such a system?
The most important ones are in native and those often require work to merge.

@DanielMSchmidt , maybe I'm a bit outdated on this subject and don't understand some latest things, but how do you think: maybe simple adding  david-dm badges already could make 80% of helpful impact for us? If yes, maybe you could prepare PR with this, of course if the repo owners will also agree to add it.

@LeoNatan , the positive impact that we keep track of vulnerabilities in packages we use. Honestly speaking, I don't know whether we need to worry about vulnerabilities as detox is just a tool on a dev and CI environment that is not running 24/7 publicly open. But it is a nice to have indeed.
We can recall an example with ws package. It is listed here:
https://david-dm.org/wix/detox?path=detox

@noomorph I disagree there, the tool you linked only picks up one package.json it seems and I think having something telling us that we have outdated dependencies is not as helpful as something doing PRs with dependency updates.

Since Detox is a local tool meant for development, I see vuln considerations as moot. On the other hand, we should strive to push versions of open source where it improves our development experience (such as Node).


Add arch linux support for install script

I don't wanna search up which packages I need again when I setup a new laptop

@Champers5000 lmao arch strikes back


ValueError: If printing histograms, validation_data must be provided, and cannot be a generator.

After i trained the first epoch，i meet this error
File "/home/s405/pengcheng/project/Keras-FCN/train.py", line 232, in
label_suffix=label_suffix, ignore_label=ignore_label, label_cval=label_cval)
File "/home/s405/pengcheng/project/Keras-FCN/train.py", line 164, in train
class_weight=class_weight
File "/usr/local/lib/python3.4/dist-packages/keras/legacy/interfaces.py", line 87, in wrapper
return func(*args, **kwargs)
File "/usr/local/lib/python3.4/dist-packages/keras/engine/training.py", line 2082, in fit_generator
callbacks.on_epoch_end(epoch, epoch_logs)
File "/usr/local/lib/python3.4/dist-packages/keras/callbacks.py", line 77, in on_epoch_end
callback.on_epoch_end(epoch, logs)
File "/usr/local/lib/python3.4/dist-packages/keras/callbacks.py", line 751, in on_epoch_end
raise ValueError('If printing histograms, validation_data must be '
ValueError: If printing histograms, validation_data must be provided, and cannot be a generator.
I don't know how to fix this problem, can you give me some suggestions?

I have also meet this error and I could not solve it yet ! Need help also！

@xiaofengqing   Comment out this code: # if K.backend() == 'tensorflow':
#     tensorboard = TensorBoard(log_dir=os.path.join(save_path, 'logs'), histogram_freq=10, write_graph=True)
#     callbacks.append(tensorboard)
Then it can run.

Change histogram_freq=10 to histogram_freq=0 you can still use tensor board with this fix rather than removing it all together.

It is general issue with keras/tboard that you cannot get histograms with a validation_generator, changing histogram_freq=0 stops it trying to produce them.

@zwlshine
I tried following lines and did not work for me.
if K.backend() == 'tensorflow':
tensorboard = TensorBoard(log_dir=os.path.join(save_path, 'logs'), histogram_freq=10, write_graph=True)
callbacks.append(tensorboard)
@IsaacIsOkay
When  I turned  histogram_freq to zero, it worked.

How is turning histogram_freq to zero a fix?!

@mueller91 you can pass validation data separately to generate the histograms I think in a separate step, but yeah it isn't whats needed really.

@mueller91 I am not sure if you still have this issue, but this issue https://github.com/keras-team/keras/issues/3358 and the suggested solution by juiceboxjoe helped me.

Change histogram_freq=10 to histogram_freq=0 you can still use tensor board with this fix rather than removing it all together.

the original callbacks.py is with histogram_freq=0, but i still have ValueError: If printing histograms, validation_data must be provided, and cannot be a generator.

Is there a method from a validation generator, that would just spit out a bunch of them to test with?
something along the line of get_validation(validation_generator) that would return what we need to add there?

It is general issue with keras/tboard that you cannot get histograms with a validation_generator, changing histogram_freq=0 stops it trying to produce them.

What's the issue? Why it is not possible when the validation set is a generator?


My Javascript generated source differs from your example (how to use it)

Hi
I have got a small api and generate some code for it. I am figuring out how to use it.
From the examples I found this https://github.com/OpenAPITools/openapi-generator/blob/master/samples/client/petstore/javascript/docs/PetApi.md#addPet
So I have tried to apply this example for my api. But I don't get it working, nothing is send to the api server.
I have got this:
var Api = require('api')
vae UserApi = new Api.UserApi()
var body = new Api.NewUserRequest()
body.name = 'test name'
body.email = 'test email'
UserApi.createUser(body, callback)

This is the generated UserApi:
import ApiClient from "../ApiClient";
import ErrorResponse from '../model/ErrorResponse';
import NewUserRequest from '../model/NewUserRequest';
import User from '../model/User';

/**
* User service.
* @module api/UserApi
* @version 1.0
*/
export default class UserApi {

    /**
    * Constructs a new UserApi.
    * @alias module:api/UserApi
    * @class
    * @param {module:ApiClient} [apiClient] Optional API client implementation to use,
    * default to {@link module:ApiClient#instance} if unspecified.
    */
    constructor(apiClient) {
        this.apiClient = apiClient || ApiClient.instance;
    }

    /**
     * Callback function to receive the result of the createUser operation.
     * @callback module:api/UserApi~createUserCallback
     * @param {String} error Error message, if any.
     * @param data This operation does not return a value.
     * @param {String} response The complete HTTP response.
     */

    /**
     * Create user
     * @param {Object} opts Optional parameters
     * @param {module:model/NewUserRequest} opts.newUserRequest
     * @param {module:api/UserApi~createUserCallback} callback The callback function, accepting three arguments: error, data, response
     */
    createUser(opts, callback) {
      opts = opts || {};
      let postBody = opts['newUserRequest'];

      let pathParams = {
      };
      let queryParams = {
      };
      let headerParams = {
      };
      let formParams = {
      };

      let authNames = [];
      let contentTypes = ['application/json'];
      let accepts = ['application/json'];
      let returnType = null;
      return this.apiClient.callApi(
        '/users', 'POST',
        pathParams, queryParams, headerParams, formParams, postBody,
        authNames, contentTypes, accepts, returnType, null, callback
      );
    }

I did some research how the UserApi must send the request and found the line
 let postBody = opts['newUserRequest'];
This differs from the generated pet store api from the examples:
https://github.com/OpenAPITools/openapi-generator/blob/master/samples/client/petstore/javascript/src/api/PetApi.js
check the addPet function
How should I use my generated code to get it working?

Please raise tooling-related issues on the relevant repository (https://github.com/OpenAPITools/openapi-generator). This repository is for the OpenAPI specification itself. Thanks.


docs: add Scaling the cluster to clustering article

What type of PR is this?
documentation
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

cc: @vrajashkr

@mbshields Also add a note at the end that the "sync" feature is compatible with this change in that whether it is on-demand or periodic, the repo names are hashed to a particular node and only that node will do the sync.

Just curious - will the commits be squashed into a single one for merge?


Webview's "retainContextWhenHidden" is broken in the latest 1.28

VSCode Version: 1.28-insider ( 99b5434b0a90a024caab1cb35a1f7ca06708fefc )
OS Version: macOS 10.13.6

See https://github.com/platformio/platformio-vscode-ide/issues/346 .
@mjbvz Could you fix this issue? Otherwise, we have to inform our community to avoid updating to VSCode 1.28. It totally breaks our web-based PlatformIO Home.
Thanks in advance!

Yes needs fixing on our side
In the future please make sure you have users testing your extension on VS Code insiders. As far as I can tell this has been broken over the entire month that 1.28 insiders has been going out

Thanks, it's my mistake. Next time I'll open issue here.

Not your fault. We really need better test coverage on our side. The timing here is unfortunate since we're only hearing about this a few days before we planned to ship 1.28. Since the webview is such as complicated area, we currently do reply on extension authors reporting issues with it

Is it possible to cover "retainContextWhenHidden" with a unit test?
P.S; Thanks for the quick fix! 👍


[Support] Previously working pivpn not working anymore

In raising this issue, I confirm the following:
{please fill the checkboxes, e.g: [X]}

[x] I have read and understood the contributors guide.
[x] The issue I am reporting can be replicated.
[x] The issue I am reporting can be is directly related to the pivpn installer script.
[x] The issue I am reporting isn't a duplicate (see FAQs, closed issues, and open issues).

Issue
Hello,
I'm seeking help on recovering service with a up-to-now successfully working pivpn, that for some reason has stopped working correctly.
I'm using tunnelblink  for Mac OS and the OpenVPN client for iOS. With neither of these devices I am able to stablish the VPN. I've also tried it with my wife's iOS device (and user) and it won't work either.
Tunnelblink shows this:
2020-07-11 09:18:09.747171 *Tunnelblick: macOS 10.13.6 (17G13035); Tunnelblick 3.8.2a (build 5481); prior version 3.8.2 (build 5480)
2020-07-11 09:18:10.558714 *Tunnelblick: Attempting connection with marc-raspberry using shadow copy; Set nameserver = 769; monitoring connection
2020-07-11 09:18:10.560531 *Tunnelblick: openvpnstart start marc-raspberry.tblk 58685 769 0 1 0 1098160 -ptADGNWradsgnw 2.4.9-openssl-1.1.1e
2020-07-11 09:18:10.622481 *Tunnelblick: openvpnstart starting OpenVPN
2020-07-11 09:18:11.035814 OpenVPN 2.4.9 x86_64-apple-darwin [SSL (OpenSSL)] [LZO] [LZ4] [MH/RECVDA] [AEAD] built on May 22 2020
2020-07-11 09:18:11.036583 library versions: OpenSSL 1.1.1e  17 Mar 2020, LZO 2.10
2020-07-11 09:18:11.039326 MANAGEMENT: TCP Socket listening on [AF_INET]<IP_ADDRESS>:58685
2020-07-11 09:18:11.039428 Need hold release from management interface, waiting...
2020-07-11 09:18:11.830707 *Tunnelblick: openvpnstart log:
     OpenVPN started successfully.
     Command used to start OpenVPN (one argument per displayed line):
          /Applications/Tunnelblick.app/Contents/Resources/openvpn/openvpn-2.4.9-openssl-1.1.1e/openvpn
          --daemon
          --log /Library/Application Support/Tunnelblick/Logs/-SUsers-Smarc-SLibrary-SApplication Support-STunnelblick-SConfigurations-Smarc--raspberry.tblk-SContents-SResources-Sconfig.ovpn.769_0_1_0_1098160.58685.openvpn.log
          --cd /Library/Application Support/Tunnelblick/Users/marc/marc-raspberry.tblk/Contents/Resources
          --machine-readable-output
          --setenv IV_GUI_VER "net.tunnelblick.tunnelblick 5481 3.8.2a (build 5481)"
          --verb 3
          --config /Library/Application Support/Tunnelblick/Users/marc/marc-raspberry.tblk/Contents/Resources/config.ovpn
          --setenv TUNNELBLICK_CONFIG_FOLDER /Library/Application Support/Tunnelblick/Users/marc/marc-raspberry.tblk/Contents/Resources
          --verb 3
          --cd /Library/Application Support/Tunnelblick/Users/marc/marc-raspberry.tblk/Contents/Resources
          --management <IP_ADDRESS> 58685 /Library/Application Support/Tunnelblick/opnclkpbcoenngfjceghpnmknpedijoianmndibm.mip
          --management-query-passwords
          --management-hold
          --script-security 2
          --route-up /Applications/Tunnelblick.app/Contents/Resources/client.up.tunnelblick.sh -9 -d -f -m -p -w -ptADGNWradsgnw
          --down /Applications/Tunnelblick.app/Contents/Resources/client.down.tunnelblick.sh -9 -d -f -m -p -w -ptADGNWradsgnw
2020-07-11 09:18:11.846608 MANAGEMENT: Client connected from [AF_INET]<IP_ADDRESS>:58685
2020-07-11 09:18:11.921286 MANAGEMENT: CMD 'pid'
2020-07-11 09:18:11.921420 MANAGEMENT: CMD 'auth-retry interact'
2020-07-11 09:18:11.921517 MANAGEMENT: CMD 'state on'
2020-07-11 09:18:11.921596 MANAGEMENT: CMD 'state'
2020-07-11 09:18:11.921739 MANAGEMENT: CMD 'bytecount 1'
2020-07-11 09:18:11.924431 *Tunnelblick: Established communication with OpenVPN
2020-07-11 09:18:11.945621 *Tunnelblick: >INFO:OpenVPN Management Interface Version 1 -- type 'help' for more info
2020-07-11 09:18:11.949374 MANAGEMENT: CMD 'hold release'
2020-07-11 09:18:11.949899 NOTE: the current --script-security setting may allow this configuration to call user-defined scripts
2020-07-11 09:18:12.002775 *Tunnelblick: Obtained passphrase from the Keychain
2020-07-11 09:18:12.005990 MANAGEMENT: CMD 'password [...]'
2020-07-11 09:18:12.035558 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
2020-07-11 09:18:12.037265 Outgoing Control Channel Authentication: Using 256 bit message hash 'SHA256' for HMAC authentication
2020-07-11 09:18:12.037337 Incoming Control Channel Authentication: Using 256 bit message hash 'SHA256' for HMAC authentication
2020-07-11 09:18:12.039181 MANAGEMENT: >STATE:1594451892,RESOLVE,,,,,,
2020-07-11 09:18:12.105820 TCP/UDP: Preserving recently used remote address: [AF_INET]my.ip:1194
2020-07-11 09:18:12.105954 Socket Buffers: R=[196724->196724] S=[9216->9216]
2020-07-11 09:18:12.105993 UDP link local: (not bound)
2020-07-11 09:18:12.106032 UDP link remote: [AF_INET]<IP_ADDRESS>:1194
2020-07-11 09:18:12.106211 MANAGEMENT: >STATE:1594451892,WAIT,,,,,,
2020-07-11 09:18:12.220408 MANAGEMENT: >STATE:1594451892,AUTH,,,,,,
2020-07-11 09:18:12.220520 TLS: Initial packet from [AF_INET]my.ip:1194, sid=4ebd3132 81868466
2020-07-11 09:18:12.389697 VERIFY OK: depth=1, CN=ChangeMe
2020-07-11 09:18:12.395441 VERIFY KU OK
2020-07-11 09:18:12.395520 Validating certificate extended key usage
2020-07-11 09:18:12.395551 ++ Certificate has EKU (str) TLS Web Server Authentication, expects TLS Web Server Authentication
2020-07-11 09:18:12.395576 VERIFY EKU OK
2020-07-11 09:18:12.395600 VERIFY X509NAME OK: CN=server_TvfPZ3SNozEb5cmX
2020-07-11 09:18:12.395624 VERIFY OK: depth=0, CN=server_TvfPZ3SNozEb5cmX
2020-07-11 09:19:13.099508 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
2020-07-11 09:19:13.103636 TLS Error: TLS handshake failed

I've noticed from recent logs that one month ago the autoupdater process running on my Pi updated this
Unattended upgrade returned: True

Packages that were upgraded:
ca-certificates

I recently had to reboot the Pi and that may triggered for the Pi to use a new version of this, which may be now the root cause for this.
Could somebody help me fix this problem?

Please note that I have not included the output of
curl -L install.pivpn.dev | bash

because I'm opening this issue while being away from home, and when I run this command an installation wizard is firing up and I'm concerned I may even worsen the situation, locking myself out of my network for good.

I have seen something similar to this on logs (Windows to PI), specifically the TLS handshake fail, when you are connecting to the wrong address.  How are you determining the ip address <IP_ADDRESS> is correct?  The problem I had was because I had not put the dynamic dns address into the pivpn config, it worked for a while and then the ip address at the remote end changed and it started failing.  My resolution was to edit the client file to put in the dynamic ip address

I have seen something similar to this on logs (Windows to PI), specifically the TLS handshake fail, when you are connecting to the wrong address.  How are you determining the ip address <IP_ADDRESS> is correct?  The problem I had was because I had not put the dynamic dns address into the pivpn config, it worked for a while and then the ip address at the remote end changed and it started failing.  My resolution was to edit the client file to put in the dynamic ip address

Thanks for your answer @shelleycat485 . I have a dynamic up updater and I've checked that the up address corresponds to my connection. My VPN setup has been working with a dynamic ip for a couple of years already just fine. Thanks anyway.

It is not DNS.
@marcgarciamarti You will have to check your server log to find the answer.

here is the log output:

sorry that I had to upload it as a picture but there is no way I can copy the text properly. CRL seems to have expired... in the past I would work this around by simply adding a dummy user and then revoking it, but it does not seem to work anymore Any ideas?
millions of thanks

This has been addressed a while a go, now I think the CRL lasts 3650 or 1080 days. Closing as it seems you have solved.


[$250] [HOLD for payment 2024-10-17] [Wave Control] [QBD] Handle the initial connection for QBD

Will be worked on by an external contributor (see https://expensify.slack.com/archives/C03SLTAEULW/p1726876645021139).
Design doc link: https://docs.google.com/document/d/1LQNlTBlHjFqRdru_4UkqVr0QRseNNDq2IhFFpXcgfwY/edit#bookmark=id.uy1tfxvjfmf3
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~021847419775270058956
Upwork Job ID:<PHONE_NUMBER>270058956
Last Price Increase: 2024-10-18
Automatic offers:

hoangzinh | Reviewer | 104527673
ZhenjaHorbach | Contributor | 104527674

Issue OwnerCurrent Issue Owner: @
Issue OwnerCurrent Issue Owner: @hoangzinh

@hoangzinh can you please accept the job and reply here once you have?
https://www.upwork.com/jobs/~021847419775270058956
You were assigned on the date of your eligibility, since you're not setup on NewDot payments yet and I want to err on the safe side, I want to pay this via Upwork.

Contributor: @hoangzinh paid $250 via Upwork
Contributor+: @ZhenjaHorbach owed $250 via Upwork
@ZhenjaHorbach can you please accept the job and reply here once you have?
https://www.upwork.com/jobs/~021847419775270058956
Also, plz complete the BZ checklist.
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

[ ] [@] The PR that introduced the bug has been identified. Link to the PR:
[ ] [@] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
[ ] [@] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
[ ] [@] Determine if we should create a regression test for this bug.
[ ] [@] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
[ ] [@BZ] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

Thanks @ZhenjaHorbach , you've ben paid, payment confirmation updated above
test case created

https://github.com/Expensify/Expensify/issues/438053


[fmt] Update to 7.0.1

Fix #12767
Update fmt to the latest version 7.0.1
Note: No feature need to test

Duplicate of #12312


Retrieving Documents with Embed Structure

Today if I insert a document with embed structures like:
InsertDocument[coll, {"a" -> {"b" -> {"c" -> 1}, "d" -> {"e" -> 1}}}]
when I try to retrieve it using FindDocuments[coll]I get:
{{_id->56940b53f99bf4d2e3f258a0,a->Removed[JavaObject1473478154780673]}}
In the command line the data is inserted ok.
By the way, amazing package.

Working on a fix right now, thanks for reporting this!

Tks for your fast reply. Will help me a lot.


Support poky

Support poky which is reference distribution of Yocto project.

Thanks.

Released as v2.41.0.