Option to merge tags on deploy

(I understand that this might not be up to Bicep to solve.)
Is your feature request related to a problem? Please describe.
ARM deployments currently replaces current tags. Some tags might be set manually or by other automation. Which means:

Information might be lost.
What-If lists a lot more resources are to be modified, just because it will remove tags not defined in Bicep.

The ARM API supports different operations against tags, as shown with the Update-AzTag PowerShell command which supports ( https://learn.microsoft.com/en-us/powershell/module/az.resources/update-aztag?view=azps-12.4.0#-operation ):

Merge: Set tags defined with the request, don't touch the existing ones unless they are in conflict.
Replace: The same as what ARM deploy does.
Delete: Remove tags.

Describe the solution you'd like
The ability to set tag deployment behavior on different scopes. Sometimes it makes sense to have it for the whole deployment. Other times maybe override on a per resource basis.

@o-l-a-v - can you add a little more detail to this one? How are you declaring tags in your bicep file today and does the behavior vary between different resource types? Can you also share what you would want the bicep code to look if we were to address this issue?
As you mention, tags are not owned by our team, but we'd be happy to get the conversation started once we have those details.

I'm declaring tags in Bicep like everyone else. I also know how to merge two or more objects to use some tags for all resources etc.
The problem is when tags are added outside of Bicep. It could be manually, it could be with other automation tools. For instance I have a PowerShell script that sets created date retrieved from the ARM API, because this value can't be fetched by Bicep at deploy time, at least not that I know of.
Barebone PowerShell example to get created date from ARM API
# Import modules
Import-Module -Name 'Az.Accounts', 'Az.ResourceGraph'

# Get all subscriptions
$AzSubscriptions = [array](Get-AzSubscription)

# Add resources and resource groups with CreatedTime and ChangedTime from the ARM API
foreach ($AzSubscription in $AzSubscriptions) {
    $null = Add-Member -InputObject $AzSubscription
    $null = Add-Member -InputObject $AzSubscription -MemberType 'NoteProperty' -Force -Name 'Resources' -Value (
        [PSCustomObject[]](
            $(
                [string[]](
                    'resources',
                    'resourceGroups'
                )
            ).ForEach{
                (
                    ConvertFrom-Json -InputObject (
                        (
                            Invoke-AzRestMethod -Method 'GET' -Path ('/subscriptions/{0}/{1}?$expand=createdTime,changedTime&api-version=2021-04-01' -f $AzSubscription.'Id', $_)
                        ).'Content'
                    )
                ).'value' | Select-Object -Property 'Id','CreatedTime','ChangedTime'
            } | Sort-Object -Property 'Id'
        )
    )
}

The problem then becomes that next time Bicep deploys, tags not defined in Bicep get's nuked.
The ARM API supports merging tags as already mentioned. If ARM / Bicep deploy could utalize that somehow, my expected behavior would be that deploy would overwrite all existing tags with conflicting name, but not touch tags not defined in Bicep.
I don't know if this is even possible, how it could be done, and what the syntax would be. Maybe like we have targetScope we could set tagWriteOperation with default Replace but optional Merge? 🤔

Got it. I don't know the latest on how tags are handled. At one point, tags were all handled separately by each Resource Provider, but I know there are/were efforts to centralize tag management. I'm going to transfer this to bicep-types-az and will make the right stakeholders aware of this. That being said, I wouldn't expect changes to this situation quickly.


Enable badge display solely from repo/home page URL

Make it easy to display the current CII Best Practices badge given just a URL (repo and/or home page).
Add this to support an OpenSSF working group.
We'll have to figure out what to do if there are "0 matches" or "more than 1 matches" (suggestions welcome).

Proposed solution here:
https://github.com/coreinfrastructure/best-practices-badge/pull/1461

Done! It's implemented. Not pushed to production, but it will be soon.
Now dashboards that want a simple display of a CII Badge result for MY_URL (the home page or repo URL) can do this:

Note the img src=... value uses ?as_badge&url=...; that searches for the given URL, and then shows the result (if there is one) as a badge. The <a href=... enables interested viewers to click on the information to learn more.
See the API documentation:
https://github.com/coreinfrastructure/best-practices-badge/blob/master/doc/api.md


Null embedding hypersurface

Some initial code for null embedding hypersurface of schwarzschild spacetime with plotting example.
Further can be improved upon to implement metric of this surface and solving for geodesics equation to find the spacial path traced by the light rays around a massive body

Docstrings are also required. Don't forget the tests @spino17
Sorry for bugging, but that's how open source works.

Can we replace file name schwarzschild_hypersurafce_example with something more concise and generic?

@Masquerade0097 kindly review!

Can we replace file name schwarzschild_hypersurafce_example with something more concise and generic
Class would be implemented later and this is just an example so it is good to go with the same name as modules related to the hypersurfaces would be implemented in future.

I feel that non-tested and API breaking code should not be in the library. This is a developed project now and we know people are using it by the number of stars. If this violates the API, make a repository in your private account. Push the code in proper format slowly. I don't agree with pushing a example code snippet into a library. This just decreases the code quality.

Class would be implemented later and this is just an example so it is good to go with the same name as modules related to the hypersurfaces would be implemented in future

If this is an example, please make a Jupyter notebook and push he notebook in examples. But that is also arguable as the notebooks are for depicting how the library is used. And this does not import a single thing from einsteinpy.


Fix path in production environment

Related Issue:
#317
Summary:

There's been some issues with path and @AWolf81 had some suggestions in Gitter, so I've been playing around with it.

it wasn't working because there was no .bashrc or .bash_profile in my setup.

Hm 🤔 Do you think it's a common case to not have a .[shell]rc or even a .bash_profile? I'm wondering if we should create a .bash_profile if an rc file cannot be found, and output export PATH=$PATH. Or do you think it's not good to force the .bash_profile and we should provide a good error message/let the user decide what to use?
To the other stuff - tbh the whole path stuff confuses me so I'll have to do some reading. But as long as there's a .bash_profile then it was finding the Node path for you right? I think if you're going to test nvm then you will need to either remove your system Node or comment this out:
if (nodePath) {
  // Node found
  return resolve();
}

Because I have both system + nvm default running and it was finding the path early and returning due to the above, so I had to comment it out to test the rest of the logic in the file.

This wouldn’t work for fish, which doesn’t support && (; might be more portable) and reads from ~/.config/fish/config.fish.

@j-f1 Ah, good point. I'll do a check for it, do you know if echo $SHELL will produce a result like /bin/fish? I guess I can install it and run it as my shell temporarily for testing (or do you know an easier way?).
It looks like && is getting added in 3.0, do you think we have to modify the command?

I think using the ; is a good idea, especially since our target audience may not have the latest versions of everything.
You should definitely try fish :)

So I've run into an issue with $SHELL, it seems that Fish doesn't set the SHELL env variable so echo $SHELL is returning Zsh for me (despite installing and setting Fish as default).
This comment has a command that is more accurate (it successfully returns the correct shell for me):
dscl . -read /Users/${username} UserShell

@j-f1 @AWolf81 What do you think?

@melanieseltzer you should be able to just use fix-path when the Electron app launches, it uses the built-in binary env to log out all environment variables on the host and then grab the $PATH from there, or use a sensible set of defaults ('./node_modules/.bin', '/.nodebrew/current/bin','/usr/local/bin').
fix-path is just a small abstraction on top of shell-path that calls the sync export from shell-path and then appends the result to process.env.PATH. Here's the entire source:

'use strict';
const shellPath = require('shell-path');

module.exports = () => {
	if (process.platform !== 'darwin') {
		return;
	}

	process.env.PATH = shellPath.sync() || [
		'./node_modules/.bin',
		'/.nodebrew/current/bin',
		'/usr/local/bin',
		process.env.PATH
	].join(':');
};

I'm confused because it seems like we're already using it? See this note here about it in the main Electron process file (it's called in production?).
But it's failing according to this line which is the file that's being edited in this PR.

Ah you're right, I totally missed that. Thanks for the clarification.
So with this build, everything works alright on Mac in production? Since fix-path relies on env under the hood, it's possible that env also doesn't load the correct shell config files in a production environment for whatever, in which case this PR is the correct solution.
I'll try and test sometime tomorrow on Mac and see how much I can replicate.

It's building from this branch (other than the issue from #370 but that's a separate thing) and I don't see the missing Node error that appears for me in production 0.3.0 otherwise.
But I think I agree with @AWolf81 that this PR seems a little convoluted - he even encountered an edge case (documented above) where he had no .bashrc or .bash_profile so my sourcing code failed until he added one.
Maybe we should investigate why fix-path is not working in the production distribution only, I don't know too much about it so I could only play around a bit. No combination of fix-path, shell-path, or shell-env was working for me (I played around with adding it to this block). I'm stumped! Appreciate the extra eyes on this :)

@melanieseltzer Maybe it's related to our webpack env handling in config/env.js.
I think we could check if there is something happening with the filtering or we could add the path fix for production there. I haven't tried anything here as I think this path issue is just happening on Mac with production build.

Alright, after lots of experimenting I think I've found a solution using shell-path. I think fix-path is not working in our case due to Mac apps not getting access to env variables if launched from GUI. When launched from terminal everything is fine, so that's why things worked in dev here (since running Guppy in dev launches it from terminal via yarn start).
@superhawk610 let me know what you think. It's building with yarn dist for me and I'm no longer receiving the Node missing error (I'm using NVM). All Node related things seem to be working fine (create new project, dev server, etc).

Hmm, I'm getting Node not found in both dev and prod builds. My Node installation is at ~/n/bin and $PATH configuration is done in my .zshrc with this script:
export N_PREFIX="$HOME/n"; [[ :$PATH: == *":$N_PREFIX/bin:"* ]] || PATH+=":$N_PREFIX    /bin"  # Added by n-install (see http://git.io/n-install-repo).

Here's the path listed in the alert:
// DEV
/.cargo/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/aaronross/code/guppy/node_modules/.bin:/Users/aaronross/code/node_modules/.bin:/Users/aaronross/node_modules/.bin:/Users/node_modules/.bin:/node_modules/.bin:/Users/aaronross/code/guppy/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS

// PROD
/.cargo/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/node_modules/.bin:/Users/aaronross/code/guppy/dist/mac/Guppy.app/Contents/Frameworks/Guppy Helper.app/Contents/MacOS

It's interesting that the paths are absolute in dev and relative in prod, perhaps that's something that also needs to be investigated?

Huh. Darn it! Well, there was actually one other thing that was also working for me, but I wasn't sure what to think of it. It's spawning an interactive shell and running echo $PATH. Actually the more I'm reading, the more I think this might be the issue for you:
https://github.com/sindresorhus/fix-path/issues/3#issuecomment-120547010:

I have a feeling this might be that you have those $PATH additions exported in .zshrc and not .zshenv. Is this the case? The .zshrc file is only loaded in interactive terminals, which exec isn't, and you should not be used for exporting environment variables, like $PATH.

I did a test and added your n-install stuff into my own .zshrc, and used the above method like so (note the TEST verbiage):
export N_PREFIX="$HOME/n"; [[ :$PATH: == *":$N_PREFIX/bin:"* ]] || PATH+=":$N_PREFIX/bin/TEST"
# Added by n-install (see http://git.io/n-install-repo).

Modified the code to be:
const fixedPath = shellPath.sync();
const fixedPathFromInteractiveShell = childProcess
  .execFileSync(window.process.env.SHELL, ['-i', '-c', 'echo $PATH'])
  .toString()
  .trim();

window.process.env.PATH = fixedPath + fixedPathFromInteractiveShell;

resolve();

I successfully get the n-install stuff from my .zshrc into my path in dev and prod:
dev: /usr/local/git/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/melleh/Sites/guppy/node_modules/.bin:/Users/melleh/Sites/node_modules/.bin:/Users/melleh/node_modules/.bin:/Users/node_modules/.bin:/node_modules/.bin:/Users/melleh/Sites/guppy/node_modules/electron/dist/Electron.app/Contents/Frameworks/Electron Helper.app/Contents/MacOS:/usr/local/go/bin/Users/melleh/bin:/usr/local/bin:/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/melleh/Sites/guppy/node_modules/.bin:/var/folders/m9/rh39vf_j4s3gr52kcqtfcc5h0000gn/T/yarn--1554486651248-0.5182929671326244:/Users/melleh/Sites/guppy/node_modules/.bin:/Users/melleh/.config/yarn/link/node_modules/.bin:/Users/melleh/Sites/guppy/node_modules/.bin:/Users/melleh/.config/yarn/link/node_modules/.bin:/usr/local/libexec/lib/node_modules/npm/bin/node-gyp-bin:/usr/local/lib/node_modules/npm/bin/node-gyp-bin:/usr/local/bin/node_modules/npm/bin/node-gyp-bin:/Users/melleh/bin:/usr/local/bin:/usr/local/git/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/melleh/n/bin/TEST
prod: /usr/local/git/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/node_modules/.bin:/Users/melleh/Sites/guppy/dist/mac/Guppy.app/Contents/Frameworks/Guppy Helper.app/Contents/MacOS:/usr/local/go/bin/Users/melleh/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/melleh/n/bin/TEST
I'm not sure if using both shellPath and spawning the interactive shell is overkill, it seems to return a lot in dev compared to prod, and I'm really confused why that is.
But nevertheless, does the above code work for you? I didn't want to commit it in case it's another dead end.

Nice, yeah this works for me. shellPath uses shell-env under the hood, which in turn just wraps the output from env in a non-interactive shell, so I wonder if just using echo $PATHin an interactive shell like you've proposed wouldn't be a sufficient solution on its own?

Ah! I see what it's doing now, took a bit to wrap my head around. Yes, I think it should be sufficient on its own since it catches everything, including stuff exported from dotfiles.
Just not sure why there's so much stuff getting inserted into PATH in the dev environment, is that just some Electron dev specific stuff?
dev:
/Users/melleh/bin:/usr/local/bin:/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/melleh/Sites/guppy/node_modules/.bin:/var/folders/m9/rh39vf_j4s3gr52kcqtfcc5h0000gn/T/yarn--1554580655799-0.4203236455267696:/Users/melleh/Sites/guppy/node_modules/.bin:/Users/melleh/.config/yarn/link/node_modules/.bin:/Users/melleh/Sites/guppy/node_modules/.bin:/Users/melleh/.config/yarn/link/node_modules/.bin:/usr/local/libexec/lib/node_modules/npm/bin/node-gyp-bin:/usr/local/lib/node_modules/npm/bin/node-gyp-bin:/usr/local/bin/node_modules/npm/bin/node-gyp-bin:/Users/melleh/bin:/usr/local/bin:/usr/local/git/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/melleh/n/bin/TESTINGZSHRC
prod (system node):
/Users/melleh/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/melleh/n/bin/TESTINGZSHRC
prod (nvm node):
/Users/melleh/.nvm/versions/node/v11.4.0/bin:/Users/melleh/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/melleh/n/bin/TESTINGZSHRC

Yeah I'm fairly certain the extra junk in dev is coming from Electron, I get some warning about the Node version in that /var/folders/m9/... not matching every time I launch with yarn start.


Does dual display Mini Display port work?

Hi! Not able to get video out for mini display port in dual monitor setup. Can you confirm it works on your side?
Thanks!

This should be working
Can you confirm the following

Kext versions
OS
Does it display if you unplug then plug in the cable
IOReg of system with connected displays

Thanks

Hello,
Apologies for the late reply.
OS: Big Sur: 11.0 Beta (20A5374i)
It blanks both displays and the working display never recovers. I have to reboot the machine in order for the working display to work again.
Kext Versions:
as.vit9696.Lilu (1.4.8)
as.vit9696.WhateverGreen (1.4.3)
org.vanilla.driver.CPUFriend (1.2.2)
org.acidanthera.NVMeFix (1.0.4)
as.vit9696.AppleALC (1.5.3)
com.rehabman.driver.USBInjectAll
as.vit9696.VirtualSMC (1.1.7)
com.zxystd.itlwm (1.2.0)
com.insanelymac.IntelMausiEthernet (2.5.1d1)
com.zxystd.IntelBluetoothFirmware (1.1.2)
IOReg- see attached
Thank you!

On Sep 26, 2020, at 5:07 PM, Alex Potter<EMAIL_ADDRESS>wrote:
This should be working
Can you confirm the following
Kext versions
OS
Does it display if you unplug then plug in the cable
IOReg of system with connected displays
Thanks
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/alexpotter1/intel-nuc6i7kyk-opencore/issues/11#issuecomment-699465713, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQQJWWFFDSZGOTYKOAVUIS3SHWVLPANCNFSM4R2VMSCA.

Just a heads up. I installed Catalina. I can see 2 display settings. But
the Mini DisplayPort isn’t showing the desktop. However it is active. On
Big Sur, the monitor’s LED status was blinking.
On Sat, Sep 26, 2020 at 5:07 PM Alex Potter<EMAIL_ADDRESS>wrote:

This should be working
Can you confirm the following

Kext versions

OS

Does it display if you unplug then plug in the cable

IOReg of system with connected displays

Thanks
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/alexpotter1/intel-nuc6i7kyk-opencore/issues/11#issuecomment-699465713,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQQJWWFFDSZGOTYKOAVUIS3SHWVLPANCNFSM4R2VMSCA
.
--

sent from my iPhone

I got it installed on Catalina and I'll stay on this OS for a few months. I unplugged and plugged the mini display adapter and hdmi a few times to get both displays to work. Now i'm scurred to reboot this thing. :) I will close this thread.
Thank you!


Additional Unit test Fix for 12107

Fixes #12107
Status
ready
Description
With PR #12108 we forgot to fix one Unit test and remove tow commented  lines. The current PR addresses this.
Is it backward compatible (if not, which system it affects?)
YES
Related PRs
#12108
External dependencies / deployment changes
No

@amaltaro  this is all  fixed here. I am merging this PR so that others do not wait  for their broken unit tests. Please leave any comments in a post merge the review if you have any.

@todor-ivanov did you merge it by mistake? I don't understand why you would not wait for Jenkins CI to do its job and come back with the result(!)

hi @amaltaro  no I did not merge it by mistake ... .it was a simple fix and the tests were successful, and I did not want to stop other peoples' work with a failing unit test.

Because I have no idea why would jenkins claim it is failed... since this was exactly the test  that this PR fixes and I have tested even before I  created  the PR.
----------------------------------------------------------------------
Ran 3 tests in 0.093s

OK

So I have no idea why jenkins reports this as  a failure.

and you can also see this  very same test have changed from failure to success in the PR which @anpicci is working:
(which was actually the initial request, because of which we noticed we have missed this one here):
https://cmssdt.cern.ch/dmwm-jenkins/view/All/job/DMWM-WMCore-PR-test/15239/artifact/artifacts/PullRequestReport.html#pylintpy3
Here is the report from Andrea's PR jenkins actions, which I triggered upon merging this test:
WMCore_t.ReqMgr_t.Utils_t.Validation_t.ValidationTests:testValidateRequestAllowedArgs changed from failure to success

I do not think we have anything to do here. I only wonder if we can force Jenkins to run the tests again on an already merged PR ....

@todor-ivanov now it has been merged already and we know everything is working as expected, as you retrieved this information from Andrea.
For future occasions though, please give Jenkins the 15-20min to run its job and do not merge anything before Jenkins tests come back and usual tests are successful. We know that it is not 100% of the time that Jenkins and localhost unit tests match, so it's always wise to wait for Jenkins.


BUG: Changed sample_dict of CARDAnnotationDirectoryFormat to return a non nested dict

solves #72

Changed function sample_dict of CARDAnnotationDirectoryFormat to be similar to the sample_dict of CARDAlleleAnnotationDirectoryFormat to be not nested.
It now returns a dict with keys "sample_id/mag_id" and values are lists of full paths to annotation files
This fixes the bug described in #72 and also makes the usage of sample dict in partition_card_annotations much more straight forward.

Set up an environment for apple intel
mamba create -yn q2-amr \
  -c conda-forge -c bioconda -c qiime2 -c defaults \
  -c https://packages.qiime2.org/qiime2/2024.2/shotgun/released/ \
  qiime2 q2cli q2templates q2-types rgi

conda activate q2-amr

pip install --no-deps --force-reinstall \
  git+https://github.com/misialq/rgi.git@py38-fix \

pip install git+https://github.com/qiime2/qiime2.git

Run it locally

First, clone the repo and checkout the PR branch:

git clone https://github.com/bokulich-lab/q2-amr.git
cd q2-amr
git fetch origin pull/73/head:pr-73
git checkout pr-73
pip install -e .

Hi @misialq
Can you look this over?
With this change the partition action now works correctly and is much easier.

Hey @misialq, yes I know what the problem is with the overwriting. Here I changed the structure to not be a nested dictionary because this approach is much easier to work with in the partition actions #54. I dont think it makes sense that sample_dict returns a nested dict because I cant see any advantage of that approach.
But I should have created a new issue, this PR now does not really fit to the linked issue anymore.
Can you have a look at #54, there I already implemented the changes from this PR and this change makes the code much more readable.

Well, let me list some reasons/thoughts as to why it would be beneficial to do it this way:

in short, this is the most intuitive way to represent the hierarchical nature of the directories you are trying to get the paths for
in your case, the keys of the dictionary would just become very "strange", frankensteinian strings which would be a mixture of less-random sample names and completely random UUIDs with dashes in them separated by a slash - good luck to anyone who has to debug this ever in the future
when looking at this nested dict it is immediately obvious what is represented by which level - it's not really more difficult to work with it, it just requires a slight code rewrite
the method is called sample_dict which implies it will return information about "samples" - not some arbitrary combination of strings which happen to be "sample/mag" in this case
if anyone ever needs to collect a list of sample IDs or mag IDs they will just need to call the keys method on your dictionary (or the nested dictionaries) without worrying about anything else - this is one of the main reasons for introducing this method in the first place
this representation will allow splitting your datasets based on sample or mag or both if ever required - it wouldn't be possible if you do it in your "simplified" way

I did check out your other PR and I don't see how it would be more difficult to use the sample_dict I had originally proposed. In fact, if you had implemented the partitioning in a fashion similar to how we did it in other places you would end up with the same amount of code, if not less. Please check out my comments on the PR you linked to see what I mean. Please do let me know, though, in case I missed something which is specific to the CARD directory formats - we can discuss more.

Yes those are very valid points :)
My keys with a slash definitely feel hacky.
I looked at the comments on #54 and I know about your implementation in the moshpit function and my first attempt was similar. The difference between the structure of SampleData[MAgs] and SampleData[CardAnnotation] is that there are multiple files per MAG in SampleData[CardAnnotation] and when using the array split function it splits the files that belong to one MAG into different partitions, but I just have to adjust the list to have one entry per MAG with two paths.


Garden info on Stats screen displays incorrect "required" cookies amount.

When viewing the Garden section of the Stats screen, the "cookies required for max" values are actually the max reward values. The cookies required for max are considerably higher (33.3x for Bakeberries and Chocoroots, 25x for Queenbeet, 12.5x for Duketater).
The expected rewards when hovering the plants in your garden display the correct calculation is done to show the amount that will be gained based on current bank and CPS.

I will take a look at this tonight and hope to push a hot fix tonight.

(FYI: This is not caused by the recent update; I've seen it on .4 but forgot to file a report about it)


CUDA error: all CUDA-capable devices are busy or unavailable

import torch
torch.cuda.is_available()
True
a = torch.tensor(1)
a.cuda()
Traceback (most recent call last):
File "", line 1, in
RuntimeError: CUDA error: all CUDA-capable devices are busy or unavailable

windows：20231.1005

the issue is fixed in the very latest Windows release 20236

I'm using 20241, but cuda is still not working in mu wsl. Previously, when I use 20176, it worked

@hanxiaotian It still happens in some scenarios. The issue appears in the build 20241 release notes so you will need to wait for a fix.

We’re investigating GPU Compute scenarios, such as using CUDA and DirectML, not working inside of the Windows Subsystem for Linux (WSL).


Retry on bad Elasticsearch cluster status in e2e

A change to using two Elasticsearch pods seems to make the service come up slower so we should check for a 200 status and retry if we don't get one in the grace period.

@roberthbailey @quinton-hoole

This isn't going to fix the problems that @mbforbes was seeing with the reboot test unless this test happens to run first...

Even though this won't fix @mbforbes's problem it seems like it will help make the elastic search test more reliable. Will merge in the morning.

Thanks. Looking again the what is going on I suspect this is an over-reaction on my part, but one that hopefully does no harm.

Before this change, we only fell out of the retry loop after the gracePeriod, right?  That's definitely not right, and this is better.
This PR might collide with #8399.   You probably want to check that.

I think this is taken care of by #8399, so I'm going to close it in favor of that PR. @satnam6502 please reopen if you'd still like to see this merged.

Yes, as Quinton says, this actually makes the test a bit more robust. Thank you.

@satnam6502 you need to rebase now that #8399 is in. And can you verify that this is still necessary? I think that the poll calls may take care of this already.

I did not notice the use of expectNoError(wait.Poll.

Also, the change to expectNoError(wait.Poll(10*,.. has broken this test. It can never pass. Who made this change?


Update ja_JP Address Provider

Japan changed official pronunciation of Georgia based on the English pronunciation.
Reference
http://agenda.ge/en/news/2015/815

Thanks!


Update references from dickeyxxx to jdxcode

@bigkevmcd any chance you can review this and/or merge it?


Feature add exclude support for reposync

For example, this package is broken in rhn:
gfs2-utils-3.0.12-23.el6.x86_6 FAILED
gfs2-utils-3.0.12-23.el6.x86_64: [Errno 256] No more mirrors to try.
WARNING:root:sync failed: rhel-6-x86_64-os

$ rm /var/repo/yum/rhel/6/x86_64/os/Packages/gfs2-utils-3.0.12-23.el6.x86_64.rpm
rm: remove regular empty file ‘/var/repo/yum/rhel/6/x86_64/os/Packages/gfs2-utils-3.0.12-23.el6.x86_64.rpm’?

Add exclude option:
$ cat /home/repo/config/rhel-6-x86_64.repo | grep exclu -B4 -A1
[rhel-6-x86_64-os]
auth = rhel-6-main
url = https://cdn.redhat.com/content/dist/rhel/server/6/6Server/x86_64/os
path = rhel/6/x86_64/os
exclude = gfs2-utils*
createrepo = true

Run with reposync:
...
Removing obsolete gfs2-utils-3.0.12-23.el6.x86_64.rpm
INFO:root:generating package metadata: rhel-6-x86_64-os
...

yum.conf(5)
exclude List of packages to exclude from all repositories, so yum works as if that package was never in  the
              repositories.  This  should be a space separated list.  This is commonly used so a package isn't upgraded or
              installed accidentally, but can be used to remove packages in any way that "yum list"  will  show  packages.
              Shell globs using wildcards (eg. * and ?) are allowed.

@mmyagkov Thanks for the pull request. I have some mixed feelings.
Regarding your particular issue, you should open a support case with Red Hat regarding the missing package. If this was a package such as udev or redhat-release you'd be in trouble! I have experienced this same problem. I have noticed that sometimes running a sync a few times will eventually fetch the package. As a matter of fact, I am currently dealing with this for an openstack repo and rhel-7-supplementary-sprm repo - I have engaged Red Hat.
Outside of this use case, I'm not sure when one would want to exclude packages from Red Hat repositories. I am actually rather surprised that reposync respected the exclude option in the yum config. Did you verify that the gfs2-utils package was not download? I've seen reposync fail to download a package the first time, but a second run results in successful download.
I lean towards not accepting this PR, as I see this as an unnecessary feature, but I could probably be convinced to easily change my mind.

@pyther Thanks for the feedback.
reposync exclude option may be required if in production environment you do not use KDE, Gnome, etc.. for example. Do not make sense to keep a copy of the full repository, if for understandable reasons, most will never be used.

@mmyagkov Thanks for the explanation. I live in a world where disk space is plentiful and I would prefer wasted storage than potentially broken repos, but I realize I'm lucky and can understand where you are coming from. I'll work on merging this in.

@pyther You say as a programmer, and not as a system administrator. I would prefer to work and updated repository here and now, rather than waiting on the RHN fixes. An exception can be removed completely when similar problems of this kind will be removed. Security issues are concerned not only there, where I came from ;)


Proxy can't connect to Functions CLI v4

Azure Static Web Apps CLI can't connect to Azure Functions V4 CLI. The same issue with webpack or parcel proxy.
[swa] × Waiting for http://localhost:7071 to be ready
[swa] Could not connect to "http://localhost:7071". Is the server up and running?

But when I go to localhost:7071 I can see the "Your Functions 4.0 app is up and running" page working just find and I can send requests using postman or web browser and they work just fine.
> func --version
4.0.3780

I'm running Windows 11 22000.282. Tried turning the firewall off but didn't help.
Repro: https://github.com/uxsoft/swa-bolero-template/

switching from node 17 to node resolved the  issue for me as well!

Similiar here. Failed on Node 16 and 17 (same scenarios). Switching to node@14 on mac fixed the issue but it feels like a workaround with 16 being the current LTS

Digging around a bit, it seems like this is related to https://github.com/nodejs/node/issues/40702

NodeJS Version 16 LTS is working fine on Windows 10. Remember to reboot after uninstall / install.
This issue can be closed, since it is not a related Issue to static-web-apps-cli? @anthonychu

The issue for me was on Node 17, not Node 16. It works for me on Node 16 too but that doesn't solve the issue.

@uxsoft  The underlying Azure Function Core Tools tool does not support Node.js 17. We've added a check (https://github.com/Azure/static-web-apps-cli/commit/d1b83d5bc3d13e991626f4366d54f49fb8ea5334) to prevent this issue.
For more information about supported Azure Function Core Tools versions: https://aka.ms/functions-node-versions.
I am closing this thread. Please open a new issue if needed.

This is not exclusively an issue with functions core tools. The same issue appears when setting the APIs to be served from a local server on Node 17 without running functions core tools at all.

@zachmatson the SWA CLI uses Azure Functions Core Tools to run the API on your behalf.

I get the same issues with Node 18, so stick with 16 for now for an easy life.


Add check for CNI plugins before tearing down pod network

Currently, locking behavior occurs if a user creates a sandbox pod and then tries to remove / delete it without having any CNI plugins initialized on their system.
Sample flow
pod-config.json:, per crictl docs
{
  "metadata": {
    "name": "nginx-sandbox",
    "namespace": "default",
    "attempt": 1,
    "uid": "65fb5845de97d8a4"
  },
  "log_directory": "/tmp",
  "linux": {
  }
}

Running sandbox pod - receive CNI plugin error:
root@3cd5ffda91af:~# crictl runp pod-config.json
WARN[0000] runtime connect using default endpoints: [unix:///run/containerd/containerd.sock unix:///run/crio/crio.sock unix:///var/run/cri-dockerd.sock]. As the default settings are now deprecated, you should set the endpoint instead.
E0922 01:07:22.941363     315 log.go:32] "RunPodSandbox from runtime service failed" err="rpc error: code = Unknown desc = failed to setup network for sandbox \"c4c57d078fc28ae83f4fd22167a23aa62e5ca77a09e9e1e62de72bc0135031ef\": cni plugin not initialized"
FATA[0003] run pod sandbox: rpc error: code = Unknown desc = failed to setup network for sandbox "c4c57d078fc28ae83f4fd22167a23aa62e5ca77a09e9e1e62de72bc0135031ef": cni plugin not initialized

Pod shows up as NotReady:
root@3cd5ffda91af:~# crictl pods
WARN[0000] runtime connect using default endpoints: [unix:///run/containerd/containerd.sock unix:///run/crio/crio.sock unix:///var/run/cri-dockerd.sock]. As the default settings are now deprecated, you should set the endpoint instead.
POD ID              CREATED             STATE               NAME                NAMESPACE           ATTEMPT             RUNTIME
c4c57d078fc28       270 years ago       NotReady            nginx-sandbox       default             1                   (default)

Locking behavior - cannot stop / remove pod due to CNI plugin error:
root@3cd5ffda91af:~# crictl stopp c4
WARN[0000] runtime connect using default endpoints: [unix:///run/containerd/containerd.sock unix:///run/crio/crio.sock unix:///var/run/cri-dockerd.sock]. As the default settings are now deprecated, you should set the endpoint instead.
E0922 01:07:43.024652     335 log.go:32] "StopPodSandbox from runtime service failed" err="rpc error: code = Unknown desc = failed to destroy network for sandbox \"c4c57d078fc28ae83f4fd22167a23aa62e5ca77a09e9e1e62de72bc0135031ef\": cni plugin not initialized" podSandboxID="c4"
FATA[0000] stopping the pod sandbox "c4": rpc error: code = Unknown desc = failed to destroy network for sandbox "c4c57d078fc28ae83f4fd22167a23aa62e5ca77a09e9e1e62de72bc0135031ef": cni plugin not initialized

root@3cd5ffda91af:~# crictl rmp c4
WARN[0000] runtime connect using default endpoints: [unix:///run/containerd/containerd.sock unix:///run/crio/crio.sock unix:///var/run/cri-dockerd.sock]. As the default settings are now deprecated, you should set the endpoint instead.
E0922 01:07:48.578086     345 log.go:32] "RemovePodSandbox from runtime service failed" err="rpc error: code = Unknown desc = failed to forcibly stop sandbox \"c4c57d078fc28ae83f4fd22167a23aa62e5ca77a09e9e1e62de72bc0135031ef\": failed to destroy network for sandbox \"c4c57d078fc28ae83f4fd22167a23aa62e5ca77a09e9e1e62de72bc0135031ef\": cni plugin not initialized" podSandboxID="c4"
removing the pod sandbox "c4": rpc error: code = Unknown desc = failed to forcibly stop sandbox "c4c57d078fc28ae83f4fd22167a23aa62e5ca77a09e9e1e62de72bc0135031ef": failed to destroy network for sandbox "c4c57d078fc28ae83f4fd22167a23aa62e5ca77a09e9e1e62de72bc0135031ef": cni plugin not initialized

Changes made
Current code:
https://github.com/containerd/containerd/blob/db974495988697929521bc4f1c97d7e41f7ff648/internal/cri/server/sandbox_stop.go#L114-L116
Added a minor change to the above sandbox_stop.go code so that the pod network teardown will only be performed if CNIResult returns a valid value:
if sandbox.CNIResult != nil {
	if err := c.teardownPodNetwork(ctx, sandbox); err != nil {
		return fmt.Errorf("failed to destroy network for sandbox %q: %w", id, err)
	}
}

This avoids the locking behavior, so the pods are able to be stopped and / or removed as expected:
root@03195a9aecb5:/src# crictl rmp c4
DEBU[0000] get runtime connection
Stopped sandbox c4

root@03195a9aecb5:/src# crictl rmp c4
DEBU[0000] get runtime connection
Removed sandbox c4

root@03195a9aecb5:/src# crictl pods
DEBU[0000] get runtime connection
DEBU[0000] ListPodSandboxRequest: &ListPodSandboxRequest{Filter:&PodSandboxFilter{Id:,State:nil,LabelSelector:map[string]string{},},}
DEBU[0000] ListPodSandboxResponse: []
POD ID              CREATED             STATE               NAME                NAMESPACE           ATTEMPT             RUNTIME
``

/ok-to-test

/test pull-containerd-k8s-e2e-ec2

Additionally, the following needs to be fixed in a follow up PR as the defer'd tear down will also fail and "block" the netns removal. @fuweid FYI.. probably should not be deferring tear down before the network bring up.


fix #1010

To solve this issue we can either do a complex SQL command or simply verify per filepath_id and return true/false. For simplicity and to keep a similar-to-previous/detailed-structure decided to go with the latter option.

Coverage decreased (-0.01%) to 91.471% when pulling 7f97f2af181b7f32c8bef387fdad14459a52a8d1 on antgonza:fix-1010 into 15fcceb1277034b93d0d12d7b56ba9238e8d3e56 on biocore:master.

Coverage decreased (-0.01%) to 91.473% when pulling 23104d7b4005ec0590fff37993949f5abd0269a6 on antgonza:fix-1010 into 15fcceb1277034b93d0d12d7b56ba9238e8d3e56 on biocore:master.

Coverage decreased (-0.02%) to 91.525% when pulling 661342fe263d0945d5bb9ded7b76ef4b5aa36ad4 on antgonza:fix-1010 into 4e380e04488c353a741c0766bf478778aa30ffbc on biocore:master.

Ready for another review.

Coverage decreased (-0.03%) to 91.515% when pulling fcd249bb17c839ec5e895373aaa665125150dfa1 on antgonza:fix-1010 into 4e380e04488c353a741c0766bf478778aa30ffbc on biocore:master.

nothing stood out to me, :+1:


Shifter embed guide information in rig

option to build guide from the rig
option to snap guide to rig position. We can use the rig to edit character proportions

@Lohult  😄

@miquelcampos you are my rigging Santa Claus, Miguel. Thanks for this.

@Lohult it is not perfect the data will be embedded at generation time. Old rigs can't extract the guide 😅


Crash when opening AboutActivity

Hello and thanks a lot for putting in place this awesome system 😄
During my efforts of setting up squanchy for Droidcon Greece 2019 I stumbled upon a crash.
Environment Observed on

App Version: commit 998a3b9
OS Version: Any

Steps to reproduce

Open AboutActivity
App crash with: ApplicationComponent has not been set

Solution
In AboutComponent.kt modify it like so:
fun aboutComponent(activity: AppCompatActivity): AboutComponent =
    DaggerAboutComponent.builder()
        .applicationComponent(activity.applicationComponent) // add this line
        .activity(activity)
        .build()

I would be more than happy to provide a Pull Request for this issue 😄

Hey @cmargonis, good catch! Feel free to open a PR! :)

Closing this since #632 was merged 😄


Add some credits

Maybe I've missed that point but if I recall correctly, Phippy was introduced in 2016 from Matt Butcher at Deis.
Their website says

The guide was written by Matt Butcher (@technosophos), Illustrated by Bailey Beougher, and designed by Karen Chu.

https://deis.com/blog/2016/kubernetes-illustrated-guide/
So it would be fair to pay some respect to the author

@ThorstenHans we did mention the original story in the introduction paragraph on the readme. I noticed that link has been moved to a "read-aloud" video of the story rather than the original blog post, so I added a credits section, which was one of the requests @Stellaleigh had made earlier that I'd not been able to get to. I added the section, a link to @technosophos's twitter and blog post, and called him out in the introduction and credits section. Thanks so much for reporting this issue, and for giving me the opportunity to thank Matt and the DEIS crew for the story.


[Bug]: Cannot open the web app running on a remote docker engine

Is there an existing issue for this?

[X] I have searched the existing issues

Example public repository
coolify
Description
Hello,
I am trying to host a web application using Coolify on a "remote" docker engine. I however either get 404 or "Invalid certificate" on the target URL. Is there some extra step required compared to the local docker engine? I couldn't find anything on the documentation. There is already a bot running on the remote docker without issues, and the  "custom proxy" is disabled.
Thanks a lot
P.S. In both cases (404 and Invalid Certificate) the URL is correctly resolved and pinging works. By the way, I just saw that the custom proxy has been enabled (automatically?). I have tried setting the address in my DNS record to both the IP of the machine where Coolify is running and the IP of the remote Docker machine (which one id the right way?). Also, does enabling the custom proxy on remote machine make a difference?
Steps To Reproduce

Try to deploy a web application on a remote docker engine

Version
3.12.8 (also had this on earlier version, as old as 3.10.* as far as I remember)

Same

I'm closing this issue, because tracking features will be moved to GitHub discussions. Github issues will be only for bugs.
Version 4 is in full focus. v3 related issues will be closed, if it is not a critical bug.
Thanks for your understanding.


Publish without version bumping

Assume the developer has already set the version that is supposed to be published in the respective package.json, and publish it.
This would for instance play much better with CI/CD setups where you want a CI/CD server to do the publishing.
This would also be a simple way to support independent versioning of packages.

Added in v1.7.0 (with the --no-bump flag).
Thanks for the suggestion!


Masks not show

Hi,
I trained a model with your medium tutorial and used your create_mask_rcnn_tf_record_multi.py which doesn't exist anymore. The bounding boxes is good but there is no mask. Do you know what the reason is for that?

I have same problem.

hii,
actually i am facing with same issue not able mask object and detect as well . it just shows box to complete image. what can i do? i and training data for my own dataset.

@monikawaghole There was an issue about tf record. I fixed it.
https://github.com/ucaglarcaliskan/Custom-Mask-RCNN-using-Tensorfow-Object-detection-API

hey  thanks.. it works good. but i need to train the dataset for nail . i
have collected images and form the dataset folder . but in my case i want
to detect more than one nail in a realtime basis. when i put hand
infront of camera ,its should only detect the nails of 5 fingers and
masking them with white color .bounding boxes not needed. so in this case ,
there are multiple object of same class ie. multiple object of nail. means
multiple nails at a time and mask it.but in these cup speaker project , it
allows us to detect only one object of the same class. so what changes we
need to do if i am following the same tutorial to build my nail project
with it?? i have all dataset which i am sharing with you. should i use xml
files for it??please suggest me .
thanks for the help..☺☺
On Sat, May 23, 2020 at 4:55 AM Uğur Çağlar Çalışkan <
<EMAIL_ADDRESS>wrote:

Closed #20
https://github.com/vijendra1125/Custom-Mask-RCNN-Using-Tensorfow-Object-Detection-API/issues/20
.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/vijendra1125/Custom-Mask-RCNN-Using-Tensorfow-Object-Detection-API/issues/20#event-3366412018,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADE6PUTWOWPNHMQ5M7CTG3LRS4CVRANCNFSM4JJCAUOQ
.

--
Hello Sir,
Below is my cv.
Thanks & Regards,
Monika Waghole
7083798676/
8668953719


Weight decay during training

Hi Gengshan,
In the supplementary material of VCN, you highlight that the weight decay term in PWCNet is removed. May I ask what's the effect of removing it? Is it for faster training or performance boost?
Best Regards,
Jianyuan

Hi Jianyuan,
From my view, weight decay is added to regularize the model / reduce overfitting, and VCN is already "regularized" in its structure, and does not need extra regularization. As I can remember in experiments, it performs better without weight decay.

Thanks for your quick reply.


Single Model in multiple collections?

Example detailing the issue:
http://stackoverflow.com/questions/22838095/can-a-single-backbone-model-instance-be-in-two-collections-at-once
While it's clear from that answer that models can be placed in multiple without any problems, but I've noticed that at least one plugin relies on detecting that a model is part of a particular extension by querying the model.collection property. Since this property only allow one collection, this often throws errors.  Would it be possible, or advisable, to make this property into an array of all the collections of which the model is a member?

What is the use case for 1 model in >1 collection??


Kmail "Unable to obtain agent type ''."

Describe the bug
When starting Kmail I get these errors:
org.kde.pim.akonadicore: Unable to obtain agent type for default resource agent configuration  "/nix/store/09r2b1rhrd6ay2zmdspkk4ysbhivls6m-kdepim-runtime-24.05.0/share/akonadi/firstrun/birthdaycalendar"
org.kde.pim.akonadicore: Unable to obtain agent type for default resource agent configuration  "/nix/store/09r2b1rhrd6ay2zmdspkk4ysbhivls6m-kdepim-runtime-24.05.0/share/akonadi/firstrun/defaultaddressbook"
org.kde.pim.akonadicore: Unable to obtain agent type for default resource agent configuration  "/nix/store/09r2b1rhrd6ay2zmdspkk4ysbhivls6m-kdepim-runtime-24.05.0/share/akonadi/firstrun/defaultcalendar"
org.kde.pim.akonadicore: Unable to obtain agent type for default resource agent configuration  "/nix/store/09r2b1rhrd6ay2zmdspkk4ysbhivls6m-kdepim-runtime-24.05.0/share/akonadi/firstrun/defaultnotebook"
Path override failed for key base::DIR_APP_DICTIONARIES and path '/nix/store/8444gfwrcwgpm50ls2c2vwrjrzfjzh1h-kmail-24.05.0/bin/qtwebengine_dictionaries'
Path override failed for key base::DIR_APP_DICTIONARIES and path '/nix/store/2pjgr8dk8z7m4rrmbiar026g3vyz7m8m-qtwebengine-6.7.1/Path override failed for key base::DIR_APP_DICTIONARIES and path '/nix/store/2pjgr8dk8z7m4rrmbiar026g3vyz7m8m-qtwebengine-6.7.1/libexec/qtwebengine_dictionaries'
libexec/qtwebengine_dictionaries'
org.kde.pim.akonadicore: "Unable to obtain agent type ''."
org.kde.pim.akonadicore: Failed SpecialCollectionsRequestJob::slotResult "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.mailcommon: "The Email program encountered a fatal error and will terminate now.\nThe error was:\nUnable to obtain agent type ''."
org.kde.pim.akonadicore: "Unable to obtain agent type ''."
org.kde.pim.akonadicore: Failed SpecialCollectionsRequestJob::slotResult "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.mailcommon: "The Email program encountered a fatal error and will terminate now.\nThe error was:\nUnable to obtain agent type ''."
org.kde.pim.akonadicore: Failed to request resource "" : "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.akonadicore: "Unable to obtain agent type ''."
org.kde.pim.akonadicore: Failed SpecialCollectionsRequestJob::slotResult "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.mailcommon: "The Email program encountered a fatal error and will terminate now.\nThe error was:\nUnable to obtain agent type ''."
org.kde.pim.akonadicore: Failed to request resource "" : "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.akonadicore: "Unable to obtain agent type ''."
org.kde.pim.akonadicore: Failed SpecialCollectionsRequestJob::slotResult "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.mailcommon: "The Email program encountered a fatal error and will terminate now.\nThe error was:\nUnable to obtain agent type ''."
org.kde.pim.akonadicore: Failed to request resource "" : "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.akonadicore: "Unable to obtain agent type ''."
org.kde.pim.akonadicore: Failed SpecialCollectionsRequestJob::slotResult "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.mailcommon: "The Email program encountered a fatal error and will terminate now.\nThe error was:\nUnable to obtain agent type ''."
org.kde.pim.akonadicore: Failed to request resource "" : "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.akonadicore: "Unable to obtain agent type ''."
org.kde.pim.akonadicore: Failed SpecialCollectionsRequestJob::slotResult "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"
org.kde.pim.mailcommon: "The Email program encountered a fatal error and will terminate now.\nThe error was:\nUnable to obtain agent type ''."
org.kde.pim.akonadicore: Failed to request resource "" : "Cannot connect to the Akonadi service. (Unable to obtain agent type ''.)"

It seems it can't connect to akonadi.
Steps To Reproduce
Steps to reproduce the behavior:

Install kmail on nixos-unstable with:

pkgs.kdePackages.kmail
pkgs.kdePackages.kmail-account-wizard
pkgs.kdePackages.kmailtransport
pkgs.kdePackages.akonadi
pkgs.kdePackages.kdepim-addons

Open Kmail

Screenshots

Metadata
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.6.32, NixOS, 24.11 (Vicuña), 24.11.20240612.57d6973`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.2`
 - channels(root): `"nixos"`
 - channels(ariel): `"nixos-23.11"`
 - nixpkgs: `/nix/store/dydg48djlykksz8cxq0xjplyxpa9pvf4-source`

Add a :+1: reaction to issues you find important.

I'm getting the same errors. Using GDB, I could find out that one of the

org.kde.pim.akonadicore: "Unable to obtain agent type ''."

errors originates from this line, which is reached with mDefaultResourceType equal to "akonadi_maildir_resource". This looks up "akonadi_maildir_resource" in a map, doesn't find it there, and returns the default (invalid) AgentType. (The map has 7 elements at the time.)
Don't know what that means, though.

It turns out that these Akonadi agents are just executables. akonadictl status lists the ones that you have installed. In my case, akonadi_maildir_resource was missing. It is provided by pkgs.kdePackages.kdepim-runtime. After adding it and restarting Akonadi, KMail opened without the error.
Maybe the problem is then that kdepim-runtime is not automatically installed together with kmail.

possibly you might be interested in this pr https://github.com/NixOS/nixpkgs/pull/299599


Adapt otel exponential histogram data

I find the OpenTelemetryMetricRequestProcessor#adaptMetrics in otel-receiver-plugin can not process exponential histogram metric. But some service will use this exponentialHistogram instead of histogram metric, such as statsd receiver in opentelemetry collector. So I do this pull request to adapt this case.
The related discussion about this pull request is in issue #10341.

[ ] If this is non-trivial feature, paste the links/URLs to the design doc.

[ ] Update the documentation to include this new feature.

[ ] Tests(including UT, IT, E2E) are added to verify the new feature.

[ ] If it's UI related, attach the screenshots below.

[ ] If this pull request closes/resolves/fixes an existing issue, replace the issue number. Closes #.

[x] Update the CHANGES log.

Please build a test case for the convert, as otel exponential histogram is pretty new for many people.

Please build a test case for the convert, as otel exponential histogram is pretty new for many people.

Ok, I get it. I will add the test case into the test dir. I think I need some time to learn how to build my test case because it is different from the plugin-test which I done before.

We just need a unit test.

@mufiye One question, does this histogram always build bucket boundaries as integers?  Could it be a very small double? Because when we calculate percentile from the histogram (usually we do today), the values are bucket boundaries and they should be integer/long only.

@mufiye One question, does this histogram always build bucket boundaries as integers? Could it be a very small double?

This histogram always builds bucket boundaries as double. I don't fully understand what you mean.

@mufiye One question, does this histogram always build bucket boundaries as integers? Could it be a very small double? Because when we calculate percentile from the histogram (usually we do today), the values are bucket boundaries and they should be integer/long only.

I have understood this question. I think the small double case maybe happen.

@mufiye One question, does this histogram always build bucket boundaries as integers? Could it be a very small double? Because when we calculate percentile from the histogram (usually we do today), the values are bucket boundaries and they should be integer/long only.

I have understood this question. I think the small double case maybe happen. But this case also maybe happen for otel histogram data.

If current, the buckets of airflow definition are good, we should be fine. Otherwise, we may need some closure to process the buckets, such as maybe, we need multiple 1000 from microsecond to millisecond precision.

I review the data collected from airflow and find there are some small timer data, such as 1.182709 and 1.348083 in one exponentialHistogram data. Where should I add the closure?

When you write MAL.

I review the data collected from airflow and find there are some small timer data, such as 1.182709 and 1.348083 in one exponentialHistogram data. Where should I add the closure?

When you write MAL.

I read other services' otel rule cases and meter analysis language but have no idea how to do this. Could you explain it more?

There is no other for these. Because they don't use small doubles as buckets.
If you want to learn this for now, then MAL is groovy based script. SampleFamily is the root class running in MAL engine, and this is the type referred by the metric name of the expression.
You can see SampleFamily#filter(Closure<Boolean> filter), this is what I mean about closure. It means a code block as an inner class for the metric process.
We don't have a similar mechanism for this, but from what you described these buckets, we seem to need one for the exponential histogram.  For example, we may need buildBucketsFromExponentialHistogram(..., Closure<Boolean> processor) as another new method. Then we could write some codes in the MAL expression to do mutiple 1000(ns -> ms) mentioned above.

If you want to learn this for now, then MAL is groovy based script. SampleFamily is the root class running in MAL engine, and this is the type referred by the metric name of the expression. You can see SampleFamily#filter(Closure<Boolean> filter), this is what I mean about closure. It means a code block as an inner class for the metric process. We don't have a similar mechanism for this, but from what you described these buckets, we seem to need one for the exponential histogram. For example, we may need buildBucketsFromExponentialHistogram(..., Closure<Boolean> processor) as another new method. Then we could write some codes in the MAL expression to do mutiple 1000(ns -> ms) mentioned above.

I think I need to fully understand the meter analyzer code first. In my current opinion, the function can not be put into the OpenTelemetryMetricRequestProcessor#adaptMetrics part and should be put in the analyzer part. And should we also consider small double data case for "otel histogram data"? Anyway, the difference between histogram and ExponentialHistogram is that the latter does the data compression.

the function can not be put into the OpenTelemetryMetricRequestProcessor#adaptMetrics part and should be put in the analyzer part. And should we also consider small double data case for "otel histogram data"?

Yes, it should be on the MAL(SampleFamily) part.


logo

The current logo is too confusing.
I'm not very good at drawing, so I'm looking for help.

How about these?

It kind of looks like your existing logo
It has the letters R and C outlined in rust (for Rust and Container)
It has the name of the library in a graffiti style in the bottom right

@cr0ax
Oh! That's a very nice picture! Thank you very much.
This idea is so great, I'm impressed. However, I felt it was a little difficult to convey to others. The Rust and Container concept is achieved by adding rust to the container, so how about making it a square like a standard container?

It has the letters R and C outlined in rust (for Rust and Container)

Nevertheless, I'm trying to respect your opinion and would love to hear it.
By the way, you don't have to refer to the previous logo if you want!

It kind of looks like your existing logo

@cr0ax
Sorry, my comment above was heavily edited from my first comment.
I think it's a very nice logo and I'd like to use it!

how about this?

@cr0ax
Your first one and this one are both great!
Hmm, I'm pretty torn on which one to choose, so would you mind submitting your favorite in PR?
In PR, you can have docs/youki.png overwritten.

@cr0ax Thanks!


feat(flame_test): Add helper function for creating golden tests

Description
Added new function testGolden() that reduces the boilerplate of writing golden tests to a minimum.
Checklist

[x] The title of my PR starts with a Conventional Commit prefix (fix:, feat:, docs: etc).
[x] I have read the Contributor Guide and followed the process outlined for submitting PRs.
[x] I have updated/added tests for ALL new/updated/fixed functionality.
[x] I have updated/added relevant documentation in docs and added dartdoc comments with ///.
[-] I have updated/added relevant examples in examples.

Breaking Change

[-] Yes, this is a breaking change.
[x] No, this is not a breaking change.

The scope that you add in the conventional commit tag doesn't have to be the package, Melos already figures that out. The scope is more to group things belonging to the same epic I think, like the text one you created.


Send multiple images, send remote image, type in UTF-8 (arabic, hebrew etc...)

⚠ IMPORTANT POINTS: ⚠

added remote requests to download remote image and turn it into a local image
added a new call sendmultiwhatmsg_instantly to send multiple messages at once (with/without image)
added pynput to type messages, supports UTF-8 (Hebrew, Arabic, etc...)

Any idea when this will be merged ?

@Ankit404butfound any chance to merge it?

it will be merged? it's useful features


raspberry pi 5 chromium run demo

Have I written custom code (as opposed to using a stock example script provided in MediaPipe)
No
OS Platform and Distribution
ubuntu 24.04 on raspberry pi 5
Mobile device if the issue happens on mobile device
No response
Browser and version if the issue happens on browser
chromium 124.0.6367.118
Programming Language and version
js
MediaPipe version
0.10.3
Bazel version
No response
Solution
gesture recognizer
Android Studio, NDK, SDK versions (if issue is related to building in Android environment)
No response
Xcode & Tulsi version (if issue is related to building for iOS)
No response
Describe the actual behavior
when i use chromium brower open example on codepen,The developer tool displays the following error:"gl_texture_buffer.cc:205 check failed:prod_token""
Describe the expected behaviour
Can get detect results after call detectForVideo api
Standalone code/steps you may have used to try to get what you need
https://codepen.io/mediapipe-preview/pen/zYamdVd
open above url on chromium browser

Other info / Complete Logs
No response

@tyrmullen Do you have a suggestion here?


Trim identifiers entered at the command line

What qualifies as an identifier?

An identifier is valid if it passes this test:
x.length() > 1 && x.length() < 31 && x.matches("^[a-zA-Z]+[a-zA-Z0-9-_+]*$");

(source-code)
In English:

At least one character long
No more than 30 characters long
Must start with a letter
May contain numbers, -, _ or +
Upper-case and lower-case are allowed

Some examples can found in the unit-tests.
We try to follow this-naming-convention in the official cook-book.

(Added an issue on the docs for this)

Well, what do you mean by 'trim'?

In the CLI the user may enter an identifier surrounded by white-space. In this case, we should trim the input before checking if the identifier is valid.


Help To Download

I need help to download the file and be able to use the application please I did it and a step by step tutorial was deleted

You mean help to download the builder? Just download it here: https://github.com/UnamSanctam/UnamDownloader/releases and run it, if it gets detected by the antivirus then you'll need to add an exclusion to where you download it.

I was able to install it, now I want to know how I can configure SilentCryptoMiner and be able to infect a person

You can find the wiki for the SilentCryptoMiner here: https://github.com/UnamSanctam/SilentCryptoMiner/wiki, there are also some premade example settings there that you can base things upon.


I can't use layer style

hello, .thank you for your work.
I deleted and reinstalled many times. I followed all the steps exactly. But I still get the same error and unfortunately I cannot use this beautiful work.
Please help fix it?

I need to see more console information. Please copy the complete information of ComfyUI from startup form terminal window, save it as a txt file and send it here.

The details are like this. I hope this is enough to diagnose the problem.

That's the infomation, but I need everything from the beginning.

That's the infomation, but I need everything from the beginning.

Thank you. How can I send ?
There are too many loaded objects and the initial information does not appear in the console

That's the infomation, but I need everything from the beginning.

Thank you. How can I send ? There are too many loaded objects and the initial information does not appear in the console

Use the mouse wheel in the terminal window, select all content, press Ctrl+C to copy, then create a txt file, paste it into the file and save it.

Am also facing this problem when attempting to use some workflows

The details are like this. I hope this is enough to diagnose the problem.

It seems that there is a problem with the mediapipe dependency package. Try uninstalling and reinstalling mediapipe==0.10.14,  Use the command pip uninstall mediapipe and  pip install mediapipe==0.10.14,  Please ensure that it is executed in the Python environment of your ComfyUI.

Detaylar şu şekilde. Umarım bu sorunu teşhis etmek için yeterlidir.

Bağımlılık paketinde bir sorun var gibi görünüyor . mediapipe==0.10.14'ü kaldırıp yeniden yüklemeyi deneyin, ve mediapipekomutunu kullanın , Lütfen ComfyUI'nizin Python ortamında yürütüldüğünden emin olun.pip uninstall mediapipe``pip install mediapipe==0.10.14

layerstyle_problem.txt
There are also other non-transferable add-ons. I would be very happy if there is a solution for them too. Thank you again.


Help or Questions

Hi!
First of all, great plugin and thanks for your effort in making and maintaining it. One question:
As far as I understand, if not all days are checked for watering or a temperature limit criteria is not met on a watering day, then the watering deficit is summed up and will be compensated on the next possible watering day.
Day 1 --> calculated ET0 3mm, watering 3mm, deficit 0mm
Day 2 --> calculated ET0 4mm, no watering possible or not checked, deficit 4mm
Day 3 --> caclulated ET0 5mm, no watering possible or not checked, deficit 4+5=9mm
Day 4 --> caclulated ET0 6mm, watering 4+9+6=19mm, deficit 0mm
Day 5 --> ....
Is my understanding correct?
What happens when home bridge is re-booted or crashes and needs reboot on day 3? Will the deficit value be stored somewhere or is it reset to 0?
Thanks a lot.
Cheers Christian

Hi Christian - the way to look at it is that at any given point of time the intent is to calculate “for how many days further” must you water today if today is the day that watering is permitted as per your schedule. So recovering from a crash is irrelevant because historic watering is not a factor!
Looking at it another way, lets say today(my Sunday) I reboot the system with a zone set for watering on Mondays and Thursdays. The plugin calculates the watering requirements between Monday and Thursdays and waters on Monday. At ALL points of time between Monday and Thursday’s scheduled watering time, the plugin will calculate the watering requirement for future "Thu/Fri/Sat/Sun" and irrigate on Thursday.
So watering is predictive and not deficit-based which eliminates the relevance or reboot - hope I was able to explain this?

On 17-Apr-2022, at 11:39, jchristianj @.***> wrote:
Hi!
First of all, great plugin and thanks for your effort in making and maintaining it. One question:
As far as I understand, if not all days are checked for watering or a temperature limit criteria is not met on a watering day, then the watering deficit is summed up and will be compensated on the next possible watering day.
Day 1 --> calculated ET0 3mm, watering 3mm, deficit 0mm
Day 2 --> calculated ET0 4mm, no watering possible or not checked, deficit 4mm
Day 3 --> caclulated ET0 5mm, no watering possible or not checked, deficit 4+5=9mm
Day 4 --> caclulated ET0 6mm, watering 4+9+6=19mm, deficit 0mm
Day 5 --> ....
Is my understanding correct?
What happens when home bridge is re-booted or crashes and needs reboot on day 3? Will the deficit value be stored somewhere or is it reset to 0?
Thanks a lot.
Cheers Christian
—
Reply to this email directly, view it on GitHub https://github.com/MTry/homebridge-smart-irrigation/issues/32, or unsubscribe https://github.com/notifications/unsubscribe-auth/AQP4KMAGAAH2EEFVXNOSGBTVFOTKTANCNFSM5TTNB2RQ.
You are receiving this because you were assigned.

Very well, thank you. Understood this and played around with the settings just to get a feeling of that logic.
Another point I may ask you about: I have two watering zones which are irrigated in 2 cycles. If I skip one zone (e.g. it is not the zone's watering day), then both cycles of the watered zone are directly executed one after the other. This leads to a malfunction in homekit I assume: After first watering cycle the valve is switched off, and in the same second it is switched on again. As I am using an Eve Water valve which reacts a bit slow, so it does somehow not open for the second cycle.
Is it possible to add a timer of lets say 30 seconds between the cycles?
A workaround could be to add a third zone (dummy zone) which is included in watering every day for a fixed value of 1 minute, but this is not very elegant. Any ideas from your side?

Your workaround is brilliant!! 🙂
Your suggestion is well noted though as it is a very likely scenario - will work on adding this feature of a "gap" between cycles for sure.. and even a 5 second gap between cycles, even for multi-zone setups isn't going to hurt anyone.
Thanks for your suggestion!


Efficient implementation of all_reduce and all_gather for collect_lora_a

Feature request
We noticed that collect_lora_a() is calling all_gather and all_reduce every time.
Do you think you could give a more efficient implementation of this soon? If not, could you give us ideas to implement this on our own?
Thanks.
Motivation
We observe significant time spent on all_reduce and all_gather during lora adapter inference: 60% of first token communication time "with adapter" is spent on all_gather operations while without adapters it's only 0.01% (and the communication is 55% of GPU operations time).
And thus the first token latency is making a big difference on user experience.
Your contribution
We can do the implementation of the advice is clear.

Hey @hayleyhu,
Thanks for submitting this issue. To clarify: are you running with the SGMV kernel disabled (latest version of LoRAX should log whether it is enabled or not during initialization)?
When using SGMV, we only run the all_gather and all_reduce once per layer, which is optimal. It is true that when SGMV is disabled we do it once per adapter, which is much slower, but this is primarily a fallback code path that most users shouldn't be encountering.

SGMV is enabled. Still the all_gather and all_reduce time is very high.


Task bar icon is missing, also no menu

Using:
o email-oauth2-proxy-2022-10-24
o Fedora 34
o Python 3.9.13
o KDE 5.24.4
Created a virtual env and installed all required packages (pip install -r requirements.txt). When I run the script, the task bar icon doesn't show. If I put my mouse over the blank spot, the string "Email OAuth 2.0 Proxy" will popup. Clicking left or right mouse button doesn't bring up a menu or display anything else.
Set up fetchmail to call email-oauth2-proxy at which point I see the log message "Please authorise your account ... from the menu". No icon, no menu, no way to get a menu from the blank icon.
If there is anything you would like to try or information needed, let me know. Was hoping to be able to fetch my MS Outlook email again since MS has now turned of Basic Auth and fetchmail 6.x doesn't work with oauth2 yet.

In case anybody else is having this problem, I did figure it out. Turns out, you need to install pygobject (pip install pygobject) and the icon and menu are now visible. Not sure if other platforms need this, so not sure the proper way to include this in requirements.txt.

Thanks for following up with the solution you found.
The pystray FAQ covers this situation – when using that module in a virtualenv on Linux there are additional dependencies. I'll add a link to this in the proxy's readme.


ocs: replace appregistry with index image

Appregistry has been deprecated for a while now and
the recent MCG changes mean that the operator cannot be
deployed with the current ocs-registry. This is a good time
to move to using the index image format.
Signed-off-by: N Balachandran<EMAIL_ADDRESS>

/hold

/lgtm cancel

@nbalacha I think if this PR is stale now, We can close it


Refactor Lookups Controller

Reduces AbcSize of LookupsController#lookups_general from 82.13 to <= 17 (the current default).
Fixes other RuboCop offenses in the controller.

Coverage: 93.647% (-0.01%) from 93.661% when pulling 6b9a90148abf7411a9da4cbf47c0466564802f07 on jdc-lookups-refactor into c20bcb5bfcbe15881da2bd458d19f22735e716d2 on main.

@nimmolo, @jason
I'd like to merge this in the next day or two unless there are objections.

Thanks Joe. I'm not sure I entirely get what's going on in this controller, but the refactor seems good fwiw.
I'm guessing it has to do with links to objects within Textile such as comments and descriptions, and not instantiating the referred objects.

Nimmo:
Thanks for the feedback. You are correct.
It also allows external links that are independent of the object id. (The
object id can change, at least for Names and Locations, at least in the
event of merger.)

Joe

On Thu, May 18, 2023 at 12:32 PM andrew nimmo @.***>
wrote:

Thanks Joe. I'm not sure I entirely get what's going on in this
controller, but the refactor seems good fwiw.
I'm guessing it has to do with links to objects within Textile such as
comments and descriptions, and not instantiating the referred objects.
—
Reply to this email directly, view it on GitHub
https://github.com/MushroomObserver/mushroom-observer/pull/1498#issuecomment-1553315766,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAALDFE4VAFGHMH6MG7WMUTXGZFIHANCNFSM6AAAAAAXXTGFJU
.
You are receiving this because you authored the thread.Message ID:
@.***>

This looks good to me, too.  Thanks for cleaning it up, Joe.


Can it support GPT4 or GPT3.5

I am wondering if it is possible, and how, we can make it support GPT4 or 3.5?

There's not really any problem in principle, but it's a bit annoying to do because OpenAI changed the interface for ChatGPT and GPT4 (where the input is segmented into messages with the user and assistant, as opposed to being able to prompt however you want); additionally text-davinci-002 let you specify suffixes in addition to prefixes, which the later models don't. Also, due to the API limitations, you wouldn't be able to use the detailed controller, so you'd have to turn that off. It's quite possible that switching OPT to ChatGPT or GPT4 makes up for the loss, though.
So the overall structure of generation would probably work similarly, but using ChatGPT or GPT4 would probably require going through and replacing all the places where we call davinci or text-davinci-002, especially in https://github.com/yangkevin2/doc-story-generation/blob/main/story_generation/common/summarizer/models/gpt3_summarizer.py , and then tweaking the prompts as necessary; it might take a bit of manual experimentation.

Hi, please see https://github.com/facebookresearch/doc-storygen-v2. It should be easier to directly swap that LM API (it should already be usable with 3.5) to GPT4.


Office Online App stops responding via PREVIEW/EDIT, when it is running from AWS EC2

We've faced problem with running our integration tests in AWS EC2: time to time when we tried to open document for edit/preview Office Online App (Excel, Powerpoint, Word, no matter what application) show error notification 'Not responding'.
We do not have such problem, when we run tests in different place in California.
So, it will be pretty nice if you'll help us with it and take a look in your logs, what can be the reason of this error. Here is Session ID from one of these error notifications:
a9cebe5c-2ad9-413b-877d-10c10c2db561

@lostbeaver Unfortunately I don't see any record of that session in any of our logs. I suggest moving this conversation to the CSPP Yammer group, which is a better place for support of particular integration issues as opposed to documentation issues.
Regardless, we'll need a Fiddler trace of the failures in order to investigate more deeply.


Master

Updated the script based on a forum post to be able to get good iso
images for El Capitan.  This technique seems to work for Yosemite, El
Capitan and Sierra.

I've verified that Scott's modifications for the script work for the El Capitan installer.

++ Thanks so much for the work on this!


unnorm_key

Hi
Thanks for the OpenVLA! I followed your instructions to finetune the model with lora on my own dataset, and tried to test model output with quickstart codes, where i change the path to the local ckpt path. I wonder how should i set unnorm_key?|
The thrown error:
  File "/root/.cache/huggingface/modules/transformers_modules/OpenVLA-hf-ckpt+MY_DATASET_NAME+b16+lr-0.0005+lora-r32+dropout-0.0--image_aug/modeling_prismatic.py", line 540, in _check_unnorm_key
    assert len(norm_stats) == 1, (
AssertionError: Your model was trained on more than one dataset, please pass a `unnorm_key` from the following options to choose the statistics used for un-normalizing actions: dict_keys(['austin_buds_dataset_converted_externally_to_rlds', 'austin_sailor_dataset_converted_externally_to_rlds', 'austin_sirius_dataset_converted_externally_to_rlds', 'bc_z', 'berkeley_autolab_ur5', 'berkeley_cable_routing', 'berkeley_fanuc_manipulation', 'bridge_orig', 'cmu_stretch', 'dlr_edan_shared_control_converted_externally_to_rlds', 'dobbe', 'fmb_dataset', 'fractal20220817_data', 'furniture_bench_dataset_converted_externally_to_rlds', 'iamlab_cmu_pickup_insert_converted_externally_to_rlds', 'jaco_play', 'kuka', 'nyu_franka_play_dataset_converted_externally_to_rlds', 'roboturk', 'stanford_hydra_dataset_converted_externally_to_rlds', 'taco_play', 'toto', 'ucsd_kitchen_dataset_converted_externally_to_rlds', 'utaustin_mutex', 'viola'])

All these keys are used in openvla pretraining, instead of the finetune dataset i use. So i do not know how to set unnorm_key.
Regards

Hi @RussRobin,
Upon fine-tuning OpenVLA, a dataset_statistics.json file containing the unnorm_key and corresponding action un-normalization statistics should have been stored in your run directory. You should load this in and store the un-normalization statistics inside the VLA object before running inference. Please see an example of how to do this in the openvla_utils.py file > function get_vla() as shown here.
Also, we recently pushed another inference example -- this time in LIBERO simulation so that people can try OpenVLA even if they don't have physical robot hardware. Please see the LIBERO Simulation Benchmark Evaluations section in the updated README for details. In particular, you may find our LIBERO eval script (run_libero_eval.py) useful to consult when trying to run fine-tuned OpenVLA models for your own use case.
-Moo Jin

Thanks for your reply!


Minor correction: "heretrix" is female

Heretrix is a female noun, and therefore, it would be more consistent to refer to the software as the "queen" of archival crawls instead of the "king".

@mhucka good catch, thanks for this!
Merging


Following other users with a newly created SkyID account sometimes fails

Analyze state with extensive debugging

Fixed in the latest release, will get more reliable with official WebSocket endpoint


C++ Code style

@sdatkinson I know these things are all very subjective, but I find the code style rules that you've imposed on the C++ source code a bit strange and extremely painful to work with.
iPlug2's UI code uses a lot of lambdas and it's very hard to fit them in with the 80 char line limit.
Other gripes...
this-> used all over the place unnecessarily
void _Function() I find the underscore unsightly
sorry :-)

No worries--I'm very unopinionated about what the style is as long as (1) there is a style and (2) it can be applied with a single command (see format.bash).
If you want to change things, all I ask is that it be as easy to enact as it currently is (i.e. running that script).

🎉


[Bug]: Multiple Buttons shown on event detail child event card when logged out

Contact Details
No response
What happened?
"Mehr erfahren" and "Anmelden" are both shown. Should only be "Anmelden" in this case.
What browsers are you seeing the problem on?
No response
Relevant log output
No response

Already fixed!


Add azure-arm-eventhub to packages-legacy

Testing to see if adding an entry to packages-legacy file is enough to make the ref docs appear in the legacy moniker
cc @scbedd, @danieljurek

Docs Build status updates of commit 8661a1e:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

ci-configs/packages-legacy.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Update app-capability-declarations.md

bolded gazeinput API reference link to match format of other capabilities

@msatranjr


Test DANDI upload issue

Confused why there are problems with tests in https://github.com/catalystneuro/neuroconv/pull/349
No dandi releases since then, most recent scheduled tests on main ran fine

Aaaaand todays scheduled tests failed as well: https://github.com/catalystneuro/neuroconv/actions/runs/4305560686/jobs/7508176166

Well, DANDI team contacted.
Maybe set this to skip for the time being and unskip when its resolved

LGTM. I think this is the right move as it allows us to move forward with other active PRs


Interpreters don't work on NixOS

Steps to Reproduce
Just run rye sync or any other command that runs the python interpreter
Logs
Installed binary to /home/hitalo/.rye/shims/rye
Bootstrapping rye internals
Downloading<EMAIL_ADDRESS>Checking checksum
Unpacking
Downloaded<EMAIL_ADDRESS>error: unable to create self venv using<EMAIL_ADDRESS>It might be that the used Python build is incompatible with this machine. For more information see https://rye-up.com/guide/installation/

Caused by:
    No such file or directory (os error 2)

Version Info
rye 0.31.0
commit: 0.31.0 (1980-01-01)
platform: linux (x86_64)
self-python: not bootstrapped (target<EMAIL_ADDRESS>symlink support: true
uv enabled: false

The Python binaries we are currently distribution are relying on glibc and dynamic loading of libraries. The way NixOS works, we would either have to rely on a system python (which somewhat defeats the purpose of rye) or rely on static Python builds (with their own limitations).
NixOS is very specific about how they deal with dynamic loading. It is basically impossible to download a binary and have it "just work" (unless it's fully static), since NixOS binaries are either build within NixOS and directly refer to libraires in the nix store (/nix/...) or the elf is patched to find the right dynamic libray in the nix store (since /usr/lib, etc isn't populated).
I think it would be best for NixOS to provide it's own patched rye in nixpkgs, that relies on system python. Alternatively one would provide a set of nix expressions that allow for registering nixpkgs Python as rye toolchains. This way one could easily build a flake that pulls in NixOS Python packages. Notable, maybe you have luck with using a FHS environment with rye.
For now, I think (I am not the maintainer, so that's all Armin's call), given the nature of NixOS and software for NixOS, it is out of scope to support NixOS.

The Python binaries we are currently distribution are relying on glibc and dynamic loading of libraries. The way NixOS works, we would either have to rely on a system python (which somewhat defeats the purpose of rye) or rely on static Python builds (with their own limitations).
NixOS is very specific about how they deal with dynamic loading. It is basically impossible to download a binary and have it "just work" (unless it's fully static), since NixOS binaries are either build within NixOS and directly refer to libraires in the nix store (/nix/...) or the elf is patched to find the right dynamic libray in the nix store (since /usr/lib, etc isn't populated).
I think it would be best for NixOS to provide it's own patched rye in nixpkgs, that relies on system python. Alternatively one would provide a set of nix expressions that allow for registering nixpkgs Python as rye toolchains. This way one could easily build a flake that pulls in NixOS Python packages. Notable, maybe you have luck with using a FHS environment with rye.
For now, I think (I am not the maintainer, so that's all Armin's call), given the nature of NixOS and software for NixOS, it is out of scope to support NixOS.

Got it, thanks for the tip about using an FHS environment, I'll try to solve the problem for now.

This command did the trick
$ rye toolchain register `which python3.11`
Registered /etc/profiles/per-user/not7cd/bin/python3.11 as<EMAIL_ADDRESS>

I'm a bit confused - as there's rye package in NixPkgs?
https://search.nixos.org/packages?channel=24.11&show=rye&from=0&size=50&sort=relevance&type=packages&query=rye
But when I try to run rye after installing it - it says rye isn't installed, and prompts me to run the installer?
Is that safe to run here?


llvmPackages_12: reorganize files

Restructure pkgs/development/compilers/llvm/12 in a similar spirit
as #117433 to mirror the other llvm directories.

Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Thanks!


Conditional parameter type based on generic type has inconsistent behavior when generic type passed as generic argument

Bug Report
🔎 Search Terms
generic conditional parameter type inconsistent behavior
I tried to search a lot of terms but I don't even know how to name this problem.
🕗 Version & Regression Information

This is the behavior in every version I tried (I tried all playground versions), and I reviewed the FAQ.

⏯ Playground Link
Playground link with relevant code
💻 Code

class SomeType {}

function getType<T = void>(..._: T extends void ? ["You must provide a type parameter"] : [T?]): SomeType | undefined
{
    return new SomeType();
}

class Bar
{
    getType<T>(t?: T): SomeType | undefined
    {
        return getType<T>(); // Not working here! <----------------------------------
        return getType<T>(t); // Not working either!

        return getType<T>("You must provide a type parameter"); // Not working either! What is T when it does not meet any side of the ternary operator?
    }
}

const t = undefined;

getType<Bar>(); // Working here!
getType<Bar>(t); // Working here!

getType(); // Correct error!
getType(t);  // Correct error!

🙁 Actual behavior
Call of getType<T>() function with generic parameter as generic argument does not work the same way as call with specific type getType<Bar>().
🙂 Expected behavior
Both cases should work the same way.

I was gonna report this as a separate bug, but I feel like this is probably related to your issue --
playground code
// Evaluates to any if T is assignable to U, and never otherwise
type Assignable<T, U> = T extends U ? any : never;
// string | null is apparently assignable to string..?
type A = Assignable<string | null, string>;

// Oh wait, this one properly evaluates to never...
type B = (string | null) extends (string) ? any : never;

Basically, if you hover over A (and actually use it in-code), then A has the type any, implying that string | null can be assigned to type string. B however, evaluates to never, despite doing the exact same check, just without the generic types.

@Hookyns There's absolutely no way for TypeScript to figure out what T is within your method, both first and second option could be valid, but there's just not enough information to figure it out.

To elaborate on the above: My understanding is, when conditional types are instantiated with a generic type parameter, their evaluation is deferred and assignability is determined by an internal check isTypeIdenticalTo.  This is a much stricter check than the usual assignability rules.  See my comment here:
https://github.com/microsoft/TypeScript/issues/27024#issuecomment-510924206
This particular check can only be satisfied by another conditional type.  T is not a conditional type.

@Hookyns There's absolutely no way for TypeScript to figure out what T is within your method, both first and second option could be valid, but there's just not enough information to figure it out.

@MartinJohns Even if I use constraint, so it cannot be void (so false branch should be used), it does not work.
And t is not the point.
So @fatcerberus seems be right.
But this behavior is not intended and my code should be compiled without errors, right? Cuz it is valid code IMHO.
Updated example which is a little more complex but closer to my case. Playground
class SomeType
{
    public readonly ctor: Function;
    constructor(...) { ... }
}

// https://github.com/Hookyns/ts-reflection
function getType<T = void>(..._: T extends void ? ["You must provide a type parameter"] : []): SomeType // <----------
{
    return new SomeType({ ctor: Object, /* and more information */});
}

class ServiceProvider
{
    getService<TDependency extends IService>(t?: SomeType): TDependency // <--- even with constraint; now it cannot be void, never
    {
        t = t ?? getType<TDependency>(); // Not working here! <----------
        return Reflect.construct(t.ctor, []);
    }
}

interface IService
{
    foo(): void;
}

class SomeService implements IService
{
    constructor() {}
    foo() {}
}

const sp = new ServiceProvider();

const someService = sp.getService<SomeService>();
someService .foo();

getType<SomeService>(); // Working here! <----------
getType(); // Correct error, because required generic parameter is missing!

And a minimal example:
function foo<T = void>(arg: T extends void ? true : false): T | undefined
{
    return undefined;
}

function callFoo<T extends boolean>()
{
    foo<T>(true); // error, boolean is not assignable...
    foo<T>(false); // same error
}

callFoo<true>();

It doesn't work here, because TypeScript doesn't know what type you're having here. TDependency is not an actual type, it's a placeholder for whatever type is passed along. Without knowing the actual type it can't resolve the conditional type. It can't verify whether TDependency extends void, because it's not known what TDependency is.

Thank You @MartinJohns for explanation what generic means. :expressionless:

And constraints are not considered for this.

So it sounds like TypeScript can and should do that, but TypeScript don't do that. What is the definition of bug, please?
Doesn't matter if it is difficult to implement or not. Is it valid? Should it work? Yes! Or no? Tell me it is a bug and I can invest my time to try to figure it out and maybe make a PR. Just don't say it is working like a charm and it is intended behavior because You don't want to implement it. Just say OK, it is a bug but it will be almost impossible to implement that. Then I will be happy.
And what about this? If TypeScript can report error for const x: T = undefined; it should be able to use the information elsewhere.
function getType<T = undefined>(arg: T extends undefined ? true : false)
{
}

function callFoo<T extends boolean>()
{
    const x: T = undefined; // Error, 'T' is not assignable to type T. Interesting.. TypeScript know what T is, that it cannot be undefined.
    getType<T>(false); // Ohh.. error... it may be undefined.. Sounds like BUG for me.
}

It’s not a bug.  TS can’t resolve the conditional type because it doesn’t know what the type is inside the generic function.  The caller has to provide it.

function foo<T = void>(arg: T extends void ? true : false): T | undefined
{
    return undefined;
}

function callFoo<T extends boolean>()
{
    foo<T>(true); // error
    foo<T>(false); // hypothetical universe where this doesn't error
}

callFoo<never>() // ok; never extends boolean

foo<never>(false) // this errors because never extends void
                  // note that this didn't error in the `callFoo` invocation

Sorry for my sarcasm, but it seems like You are trying to throw everything, no matter what, just to, idk, hide a bug.

I'm not part of the TypeScript team, and I'm not trying to hide anything. I was merely trying to explain you why it's not a bug and you're mistaken.

@Hookyns  It feels like you are expecting modus tollens to apply to the evaluation of the conditional types. If the value argument is the literal false, then the type level expression T extends undefined must be false, which makes some kind of sense and probably is intuitive if you come from a propositional logic background.
However, this just isn't how conditional types are evaluated, changing this should be a very signficant breaking change, and changing this would introduce signficant structure comparsion checks that would create an performance overhead that would make the feature unsuable.


plugins: fix optimization.splitChunks.automaticNamePrefix

Fix : https://github.com/webpack/webpack.js.org/issues/3822

[x] Read and sign the [CLA][1]. PRs that haven't signed it won't be accepted.
[x] Make sure your PR complies with the [writer's guide][2].
[x] Review the diff carefully as sometimes this can reveal issues.
[x] Do not abandon your Pull Request: [Stale Pull Requests][3].

automaticNamePrefix has been removed in v5