[BUG] PnP and Azure functions assembly conflict. Could not load type 'Microsoft.Extensions.Logging.Abstractions.Internal.NullScope' from assembly 'Microsoft.Extensions.Logging.Abstractions'

Reporting an Issue or Missing Feature
This is an issue related to PnP using a conflicting assembly dependency than what
the Azure functions service loads by default. To be more specific, the issue occurs for us
with the module Microsoft.Extensions.Logging.Abstractions on each call of
Connect-PnPOnline. PowerShell 7.2 on Azure functions automatically loads
version <IP_ADDRESS> while the one included with PnP is <IP_ADDRESS>. I have tried many
potential resolutions but have been unable to fix (Wrapping in ThreadJob does not work).
The one solution about downgrading from 7.2 to 7.0 is not an option for us, as we require
7.2 for its functionalities. Due to this issue, we are unable to rely on PnP for our needs at
the moment. If a fix for PnP in this scenario is possible, please do. If not, then notify of any
possible workarounds. This problem had me stumped for a while, so anything that can be
done about it is appreciated.
Expected behavior
Successful connection via Connect-PnPOnline cmdlet.
Actual behavior
An error related to a module in Azure functions:

Steps to reproduce behavior

Create an Azure functions app version 4.0 and set it to use PowerShell 7.2
Add PnP.PowerShell 1.10.0 to the requirements.psd1 file.
Create a basic function that just tries to execute Connect-PnPOnline. Ensure it logs error info.
Deploy the function to the cloud and execute via your API. (<app_url>/api/<func_name>)
Wait a bit for logs to save, then go to monitor log menu for that function.
View its logs and observe error.

NOTE: To reproduce, ensure code is run in the cloud within an Azure function. Running Connect-PnPOnline
locally will likely NOT cause an error. (The Azure assemblies won't be loaded)
What is the version of the Cmdlet module you are running?
PnP.PowerShell 1.10.0, PowerShell Core 7.2
Which operating system/environment are you running PnP PowerShell on?

[ ] Linux
[ ] MacOS
[ ] Windows
[ ] Azure Cloud Shell
[X] Azure Functions
[ ] Other : please specify

@jmartncp bit of a shot in the dark but have you tried upgrading to PnP.PowerShell v1.11?

@jmartncp bit of a shot in the dark but have you tried upgrading to PnP.PowerShell v1.11?

Yes I have. I actually tried both upgrading and downgrading. Neither made much of a difference though.

I'm pretty sure I encountered the exact same issue after I erroneously created a new function app on PS Core 7.2, I downgraded it to 7.0 and everything was fine then (though I know this information isn't helpful).
@veronicageek are there any plans for PnP PS where it will support this scenario?

I had the exact same issue. Downgrading the Function App to use PowerShell 7.0 instead of latest (7.2) fixed this for me!

I had the exact same issue. Downgrading the Function App to use PowerShell 7.0 instead of latest (7.2) fixed this for me!

As I mentioned, this wasn't an option due to security facilities only present in 7.2. I suppose if you had the option you could do that, though I am not sure if I would consider that a 'fix'. Thanks for your thoughts though.

@jmartncp - can you try commenting out the Az modules from requirements.psd1 files and then load PnP PowerShell ? I think there might be some conflict between these modules.

@jmartncp - can you try commenting out the Az modules from requirements.psd1 files and then load PnP PowerShell ? I think there might be some conflict between these modules.

They were already commented out. I wasn't using them to begin with, I only had PnP as my single dependency. Azure functions still attempts to load particular modules, like the Microsoft.Extensions.Logging one you see in the screenshot.

I am seeing exactly the same behaviour and error with 7.2 and Azure functions. Downgrading to 7.0 fixes it for me also but would prefer not to have to.

omg!! They are deprecating P.S 7.0 in december and still we have this crap! All our azure functions will fail that is it?

They won't fail as such, but the platform will be unsupported going forward.

This is certainly turning in to a bit of an issue. While you could continue running 7.0, some organisations will have policies regarding out of support software and may not allow you to continue using a solution which isn't fully supported. Does anyone know of a way to stipulate which version Microsoft.Extensions.Logging.Abstractions Azure Functions loads? (as a workaround)

So I fixed it... by rebuilding Pnp.Powershell and Pnp.Framework. Updated refs to all Microsoft.Extensions.* from 2.2.0 to <IP_ADDRESS>
PnP.Framework.csproj:

PnP.PowerShell.csproj:

I rebuilded a local module and uploaded it to my Azure function, so no more managed dependencies... referencing directly the module in scripts.

So it is concluding that Pnp.Powershell should upgrade microsoft.Extensions.* dependencies in project. There is no impacts moving from 2.2.0 to <IP_ADDRESS>...

@Micael-stack what testing have you done to conclude that there is no breaking changes in upgrading the extensions?
Of course, upgrading the extensions would solve this issue but doing this could inadvertently introduce other bugs relating to wherever these dependencies are used in the PnP solution.

Our module is used in multiple client services for site provisioning creation from teams to communication sites with full assets. I would not say that I am covering 100% cases but from my point with my dev Team it does the trick.

I am experiencing the same issue. Downgrading to PowerShell version 7.0 fixes the issue, but this can only be a temporary solution since we have to upgrade to 7.2 by December 3th 2022. Our customer won't allow out of support software running on their tenant.

@BarasG yes, I raised this as a concern above. PnP.PowerShell is probably used in countless Azure Functions, surely this means every single one of them would be in an unsupportable state from Microsoft's viewpoint on December 3rd 2022.

Confirmed this was the fix for me as well.. downgrading to runtime 7.0.

Downgrading to PS 7.0 did it

+1, Me too

I'm facing the same issue. Downgrading solves it for now, but please implement the real fix soon PnP team, so we all can benefit from PowerShell 7.2.

I'm also facing this issue but cannot downgrade to PowerShell 7.0 because I use the Powershell module 'AzureAD'. That module requires the use of TLS 1.2 or higher. So, upgrading from 7.0 to 7.2 solves the new TLS requirements for AzureAD but breaks the Connect-PnPOnline cmdlet... Really, really annoying since the fact that some production Azure Functions are just not working anymore...

+1, the same for us

@gautamdsheth , do you have any idea if the pnp.powershell is adapted on this issue or when it will happen?
Thanks for your feedback!

We just ran into this same issue when trying to get our functions upgraded before the December 3rd deprecation of 7.0. It would really help to understand if/when we can expect a fix to be released.

So I fixed it... by rebuilding Pnp.Powershell and Pnp.Framework. Updated refs to all Microsoft.Extensions.* from 2.2.0 to <IP_ADDRESS>
PnP.Framework.csproj:
PnP.PowerShell.csproj:
I rebuilded a local module and uploaded it to my Azure function, so no more managed dependencies... referencing directly the module in scripts.

@Micael-stack - can you give a bit more detail on where I could find these files to modify and where they would need to be uploaded?  I'm somewhat familar with Kudu for doing this type of thing, but am not seeing PnP.PowerShell.csproj or PnP.Framework.csproj anywhere.

Running into this error as well. Downgrading to 7.0 is a workaround but definitely not a resolution as support is being depreciated.

Hello all on this thread, we are looking into fixing this for Azure functions.
Is more complex than we initially thought.
It is surely at the top of our minds and a priority issue for us. Will try to fix it asap but can't provide an ETA at this point.

So I fixed it... by rebuilding Pnp.Powershell and Pnp.Framework. Updated refs to all Microsoft.Extensions.* from 2.2.0 to <IP_ADDRESS>
PnP.Framework.csproj:
PnP.PowerShell.csproj:
I rebuilded a local module and uploaded it to my Azure function, so no more managed dependencies... referencing directly the module in scripts.

@Micael-stack - can you give a bit more detail on where I could find these files to modify and where they would need to be uploaded? I'm somewhat familar with Kudu for doing this type of thing, but am not seeing PnP.PowerShell.csproj or PnP.Framework.csproj anywhere.

@Micael-stack Do you mind sharing project and binaries?

+1 to needing a solution for this. Our clients will not allow use of unsupported versions in prod so we're under pressure to resolve this ASAP before December and can't stay on 7.0. Heavy usage of PnP PowerShell so rebuilding not an ideal scenario. Any more details on whether @Micael-stack's approach is at all plausible?

Hi, I have created a pull request. I did a fork too, if it isnt approved so here it is :
https://github.com/Micael-stack/powershell/tree/fix/support-powershell7.2-azure-function
Instructions to get your own files :

Clone the git branch mentionned here

Run the powershell script in ".\Build\Build-Debug.ps1"
. .\Build\Build-Debug.ps1

At the end of the script, there should be a module folder in your Documents/Powershell/Modules/Pnp.Powershell

Zip it, and upload it to your azure function, if not in git push setup ( I use the powershell tool in azure portal and upload the zip here :

Reference the powershell module in your code like this : Import-Module .\Pnp.PowerShell\PnP.PowerShell.psd1

That's it, you should be running with no problems!

You cannot use anymore PNP.Powershell managed dependencies like this. Remove it if you do from requirements.psd1

Thanks!

Thanks @Micael-stack for your efforts. We're currently working with the Product Group to see how this can be addressed on the Azure Function side. Lowering our version references is not sustainable in the long run as the .NET versions should be aligned for optimal performance and stability. The PG is currently looking at how they can change Azure Functions to fix this on their side.

@KoenZomers That is why my pull request, to raise Pnp.PowerShell to use newer package versions to be compatible with Azure function, that is at a later version with packages.

I see. Thanks for elaborating. For the current version that might work, but we're aiming to go for .NET 6 support in the next version and there this would not be an option. I'll discuss it in our team if we could apply your suggestion in the meantime.

I did myself a version with PnP.Core and PnP.Framework locally built with .NET 6 and i did upgrade the packages (Microsoft.Extensions.Logging.Abstractions and others) to the <IP_ADDRESS>, and did test PnP.PowerShell with a build .Net6 profil too and everything seemed working (building the projects, not going farther though...)!

@KoenZomers if the solution proposed by @Micael-stack is suitable while you work with the PG and towards .NET 6 that would make a lot of us very happy!

We're experiencing this issue as well. seeing as PS7.2 will be deprecated in a week or so I hope this issue gets appropriate attention.

No worries @BeekvanV, we're working closely with the Product Group for a solution on this. We're currently testing a resolution for this internally. Thus far things are looking well. It will not be that your current Azure Functions will stop working on December 3rd. The permanent resolution for this will follow in January or February as things look like now.

Hi @KoenZomers!

It will not be that your current Azure Functions will stop working on December 3rd.

Could you clarify? Does this mean that we can safely ignore the error message and continue using PS7.0 until resolution is available and we can safely switch to 7.2? In that case please update the date in deprecation message in Azure. Just making sure our prod environment does not stop working suddenly

Hi, I have created a pull request. I did a fork too, if it isnt approved so here it is :
https://github.com/Micael-stack/powershell/tree/fix/support-powershell7.2-azure-function
Instructions to get your own files :

Clone the git branch mentionned here
Run the powershell script in ".\Build\Build-Debug.ps1"
. .\Build\Build-Debug.ps1
At the end of the script, there should be a module folder in your Documents/Powershell/Modules/Pnp.Powershell
Zip it, and upload it to your azure function, if not in git push setup ( I use the powershell tool in azure portal and upload the zip here :

Reference the powershell module in your code like this : Import-Module .\Pnp.PowerShell\PnP.PowerShell.psd1

That's it, you should be running with no problems!

You cannot use anymore PNP.Powershell managed dependencies like this. Remove it if you do from requirements.psd1

Thanks!

@Micael-stack
Is it possible to upload your build?
I have created a build according to your instructions, unfortunately it does not work (same error again).
@KoenZomers

It will not be that your current Azure Functions will stop working on December 3rd.

See jukka76 post. What does this mean for us?

pnp.powershell 1.7.0 is supporting with powershell 7.2 and higher versions giving the reported error.  until the fix comes to continue to support after 3rd Dec, we can use this solution. If the requirement is to use higher version of pnp.powershell then downgrading powershell version to 7.0 is the workaround.

pnp.powershell 1.7.0 is supporting with powershell 7.2 and higher versions giving the reported error. until the fix comes to continue to support after 3rd Dec, we can use this solution. If the requirement is to use higher version of pnp.powershell then downgrading powershell version to 7.0 is the workaround.

No, version 1.7.0 does not work either, see screnshot below.
I tested some more and the fix from @Micael-stack works. Only the login (Connection-PNPOnline) via certficate does not work. Via user/password, app ID / secret and acsses token works.

@Francisco-Gamino can you comment on the rollout of the updated Azure Functions in January and the situation between now and then with PowerShell 7.0 Azure Functions being deprecated?

@Henry-Sir Hi, sorry for the delay. Yep ok just testes with the fork I did, since Pnp.Powershell 1.12 my fix stopped working. Sorry for that. I will have to try another way but running out of time!
I will try to save up some time this week or the next to bend my head over it.

I have the same issue in Azure using 1.12.0 on a function that I could only use PowerShell 7.0 (no other option)
The error is on a statement:
 $appConn = Connect-PnPOnline  -Url $appUrl  -Tenant $env:TenantId -ClientId $env:ClientId  -CertificateBase64Encoded $env:CertificatePFX -CertificatePassword $CertificatePassWord -ReturnConnection
Should I downgrade to 1.10.0 or maybe less?
Is there another fix?

@Francisco-Gamino can you comment on the rollout of the updated Azure Functions in January and the situation between now and then with PowerShell 7.0 Azure Functions being deprecated?

The PowerShell 7.2 language worker with the fix will start rolling out January 3rd, and it is expected to complete in one or two weeks. In the meantime, we are committing to provide support for the apps that are on PowerShell 7.0 until this deployment completes.
/cc @anirudhgarg @anatolib @MadhuraBharadwaj-MSFT @michaelpeng36 @VpOfEngineering

I set the PowerShell to 7.0 and it works now.
But I have a timeout issue. the plan is premium but I get a "Timeout value of 00:30:00 exceeded by function 'Functions.DailyMaintenance' " so paying more does not help?
I have SCM_LOGSTREAM_TIMEOUT set to 43200 seconds
Any ideas

I set the PowerShell to 7.0 and it works now.
But I have a timeout issue. the plan is premium but I get a "Timeout value of 00:30:00 exceeded by function 'Functions.DailyMaintenance' " so paying more does not help?
I have SCM_LOGSTREAM_TIMEOUT set to 43200 seconds
Any ideas?

30 mins is default for premium.
You need to adjust the functionTimeout parameter in host.json.
For premium functions the upper limit is technically unbounded, but Microsoft only guarantee 60 mins of continuous running (i.e it might be restarted after that time, so needs to handle that gracefully).

"functionTimeout": "10:00:00", is 10 hours?

@Ofer-Gal yes, so when you're in basic plan, the maximum is :
functionTimeout": "00:10:00"
And for premium :
functionTimeout": "00:30:00"

How do i force PowerShell version to 7.0 in an Azure function?

@SaadKnowIT You can't anymore from the interface, this is exacly what MS removed!
I don't know if by Powershell it still possible or by templating bicep.

@Francisco-Gamino can you comment on the rollout of the updated Azure Functions in January and the situation between now and then with PowerShell 7.0 Azure Functions being deprecated?

The PowerShell 7.2 language worker with the fix will start rolling out January 3rd, and it is expected to complete in one or two weeks. In the meantime, we are committing to provide support for the apps that are on PowerShell 7.0 until this deployment completes.
/cc @anirudhgarg @AnatoliB @MadhuraBharadwaj-MSFT @michaelpeng36 @VpOfEngineering

To downgrade your function app from PowerShell 7.2 to PowerShell 7.0, follow these steps:
Prerequisites: Az.Functions and Az.Resources, which can be downloaded from the PowerShell Gallery.
$SubId = "<your sub id>"
$ResourceGroupName = "<your resource group name>"
$AppName = "your app name"

Set-AzContext -Subscription $Subscription | Out-Null

For a Windows function app
Set-AzResource -ResourceId "/subscriptions/$SubId/resourceGroups/$ResourceGroupName/providers/Microsoft.Web/sites/$AppName/config/web" -UsePatchSemantics -Properties @{ powerShellVersion = '~7' } -Force

# Restart your app for the version changes to take effect
Restart-AzFunctionApp -Name $AppName -ResourceGroupName $ResourceGroupName -Force

# Verify that version was updated
$app = Get-AzFunctionApp -Name $AppName -ResourceGroupName $ResourceGroupName
$app.SiteConfig.PowerShellVersion

For a Linux function app
Set-AzResource -ResourceId "/subscriptions/$SubId/resourceGroups/$ResourceGroupName/providers/Microsoft.Web/sites/$AppName/config/web" -UsePatchSemantics -Properties @{ linuxFxVersion = 'PowerShell|7' } -Force

# Restart your app for the version changes to take effect
Restart-AzFunctionApp -Name $AppName -ResourceGroupName $ResourceGroupName -Force

# Verify that version was updated
$app = Get-AzFunctionApp -Name $AppName -ResourceGroupName $ResourceGroupName
$app.SiteConfig.LinuxFxVersion

If you have any questions on why PowerShell 7.0 is "~7", please see https://github.com/Azure/azure-functions-powershell-worker/issues/885

Please try to stay on topic. This error about the error in the title. Create new issues for other problems.

Please try to stay on topic. This error about the error in the title. Create new issues for other problems.

I'm getting the same error as in this thread
2022-12-11T07:19:52Z   [Error]   ERROR: Could not load type 'Microsoft.Extensions.Logging.Abstractions.Internal.NullScope

As of today, I can't select PowerShell 7.0 anymore and both 1.12.0 and 1.11.0 show the error
Could not load type 'Microsoft.Extensions.Logging.Abstractions.Internal.NullScope
Any solution in the future?

@Ofer-Gal - Right now, you can create a PS 7.2 function app and downgrade to 7.0 using the script in the comments above here. You will be able to use PnP PS 1.11 and 1.12
After mid-Jan, when Microsoft's rollout of the fix is completed, you will be able to use PnP PowerShell in PS 7.2 function app. But then, you will need to use the PnP PowerShell nightly build's which are based on .NET 6.

Now it runs only with 1.12.0 but the statement:
Set-PnPListItem  -List $sitesList -Identity $item -Values @{ "LastMaintenance" = (Get-Date) ; } -Connection $appConn
Errors:
 EXCEPTION: The collection has not been initialized. It has not been requested or the request has not been executed. It may need to be explicitly requested.
same code runs fine on the desktop.
is there a another way to do the update ?

I am also having an issue with my Azure Function... I have downgraded the Azure Function to .Net Core 7.0 and am using PnP.PowerShell v1.12.0 with Connect-PnPOnline and -CertificateBase64Encoded authentication to connect to a AzureKeyVault
I have numerous errors with thing like Get-PnPList which works fine on my local client connecting via -Interactive but not in the Function APP using -CertificateBase64Encoded?
Super frustrating... Any suggestions would be appreciated on how to get around this?

@Francisco-Gamino can you comment on the rollout of the updated Azure Functions in January and the situation between now and then with PowerShell 7.0 Azure Functions being deprecated?

The PowerShell 7.2 language worker with the fix will start rolling out January 3rd, and it is expected to complete in one or two weeks. In the meantime, we are committing to provide support for the apps that are on PowerShell 7.0 until this deployment completes.
/cc @anirudhgarg @AnatoliB @MadhuraBharadwaj-MSFT @michaelpeng36 @VpOfEngineering

The Functions release with the fix for the PowerShell 7.2 language worker has been delayed. Currently, the release is set to start deploying on January 17th, 2023 and it is expected to be completed in one or two weeks if no blocking issues are found. I will continue to update this issue with the deployment status as more information becomes available. Thank you.

Do we expect the fix to also be rolled out at the same time to Azure Function Core Tools as we get the same issue with 4.9.495 x64, which means it is not possible to test locally before deployment.
The DLL Hell, if I remove the "FUNCTIONS_WORKER_RUNTIME_VERSION" : "7.2" statement from my settings it works, the  MSGraph PowerShell modules no longer longer work due to a different DLL issue!!!!!

How were you able to delete the "FUNCTIONS_WORKER_RUNTIME_VERSION"?
I only see it as a dropdown with 7.0 and 7.2 options.
Is there a file I can edit anywhere?

How were you able to delete the "FUNCTIONS_WORKER_RUNTIME_VERSION"? I only see it as a dropdown with 7.0 and 7.2 options. Is there a file I can edit anywhere?

@Ofer-Gal  What are you trying to achieve? To role back to version 7.0 you can use a PowerShell script.
# Configure App to use .Net Core 7.0
$SubId = "<SubScriptionID>"
$ResourceGroupName = "RGXXX"
$AppName = "func-AppName"
$TenantID = "TenantID"

Connect-AzAccount -Tenant $TenantID -SubscriptionId $SubId

Set-AzContext -Subscription $SubId | Out-Null

Set-AzResource -ResourceId "/subscriptions/$SubId/resourceGroups/$ResourceGroupName/providers/Microsoft.Web/sites/$AppName/config/web" -UsePatchSemantics -Properties @{ powerShellVersion = '~7' } -Force

# Restart your app for the version changes to take effect
Restart-AzFunctionApp -Name $AppName -ResourceGroupName $ResourceGroupName -Force

# Verify that version was updated
$app = Get-AzFunctionApp -Name $AppName -ResourceGroupName $ResourceGroupName
$app.SiteConfig.PowerShellVersion

Or you can see the FUNCTIONS_WORKER_RUNTIME_VERSION locally in VSCode in the local.settings.json file.

I thought you removed it altogether.
I got it back to 7.0 with the script too.

@Ofer-Gal  On your connection string have you remembered to add the parameter -returnconnection?

I did.

As of 2023-01-12. the issue persists. And there is no option to go back to PowerShell 7.0.

@sli701  You can use the powershell script above to rollback to powershell core 7.0 on your function spp.

@myatix , was able to give a try on the Cloud Shell, it is able to rollback. not sure why it is not working when using Local Power Shell Command. However, it does work on the cloud shell, thanks for the help!

@Francisco-Gamino Has the fix for Azure Functions been released?  If yes, is it available in the West Europe region?

and it is expected to be completed in one or two weeks if no blocking issues are found.

The Functions version 14.15.1 deployment that was supposed to start on 1/17/23 has been delayed. However, the deployment started rolling out today 1/23/23, and it is expected to be completed by the beginning of next week if no blocking issues are found.
/cc @anirudhgarg @AnatoliB @MadhuraBharadwaj-MSFT @michaelpeng36 @VpOfEngineering

Hi everyone, we're still facing delays in rolling out 4.15.1. We will keep updates here as we fix the issues and continue the rollout. Thank you all for your patience.

Hi everyone, we're still facing delays in rolling out 4.15.1. We will keep updates here as we fix the issues and continue the rollout. Thank you all for your patience.

Do we have any update on when we can expect the rollout of '4.15.1'

Barring any issues, we should be fully rolled out by the beginning of next week.

Will any action need to be taken? Will our currently failing Azure Functions start working again next week without interaction?
Thank you.

Will functions where a workaround was applied stop working?
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: Clam- @.>
Sent: Tuesday, January 31, 2023 2:37:26 PM
To: pnp/powershell @.>
Cc: svermaak @.>; Comment @.>
Subject: Re: [pnp/powershell] [BUG] PnP and Azure functions assembly conflict. Could not load type 'Microsoft.Extensions.Logging.Abstractions.Internal.NullScope' from assembly 'Microsoft.Extensions.Logging.Abstractions' (Issue #2136)
Will any action need to be taken? Will our currently failing Azure Functions start working again next week without interaction?
Thank you.
—
Reply to this email directly, view it on GitHubhttps://github.com/pnp/powershell/issues/2136#issuecomment-1409704908, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AC5RDEFS5GWCNNYKOSN63UDWVCCHNANCNFSM53M6HTGQ.
You are receiving this because you commented.Message ID: @.***>

The PowerShell 7.2 language worker which is being deployed with 4.15.1 updates Microsoft.Extensions.Logging.Abstractions to version 6.0.3. If the workaround was applied to the PowerShell 7.0 language worker, then this should continue to work as no changes has been introduced to this version given that it has reached EOL.
@KoenZomers -- Could you please comment on next steps after 4.15.1 completes rolling out? Thank you.

Just tested this in an environment which has version 4.15.x.x , works perfectly fine !
To fix this issue in your environment, please wait till the fix is there.
Once the fix is available, you will need to update the PnP PowerShell to the latest nightly builds.
You need to explicitly specify the version number like 2.0.1-nightly or later.
The code will keep working as it is.
Once a major release of PnP PowerShell is done, you can also specify it as a wildcard entry 2.x

It would be good to know when the next major release of PnP will be out that works with the Azure fix. Some clients don't like to use nightly versions in production :) thanks!

Just tested this in an environment which has version 4.15.x.x

How does one know if their environment is 4.15.x?

You need to explicitly specify the version number like 2.0.1-nightly or later.

How does one do this?
Thank you.

@Clam-
It is in the Azure function overview page:

You can specify the version of PnP PowerShell here:
App Files > Requirements.psd1 file

As a workaround, my Azure functions were working fine with PS 7.0. and PnP.PowerShell 1.2. To test the above fix I updated the functions to use PS 7.2 and switched PnP.PowerShell to 2.0.6-nightly. And I am seeing the following exception now when making a call to New-PnPWeb. Any thoughts??
ERROR: System.Net.Http.HttpRequestException: Error while copying content to a stream. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host.. ---> System.Net.Sockets.SocketException (10054): An existing connection was forcibly closed by the remote host. --- End of inner exception stack trace --- at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken) at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token) at System.Net.Security.SslStream.EnsureFullTlsFrameAsync[TIOAdapter](TIOAdapter adapter) at System.Net.Security.SslStream.ReadAsyncInternal[TIOAdapter](TIOAdapter adapter, Memory`1 buffer) at System.Net.Http.HttpConnection.FillAsync(Boolean async)
.................................
.................................

If you are not running a consumption plan, but under an app service plan, I ran into a weird issue and found a workaround. I was on a B2 sku and kept getting the nullscope error. I was not downgrading my ps version due to other production functions running on the same app plan. Maybe Azure gov does not back patch existing hosts or not fully finished yet. To make it work, upgrade your plan to a PV2/V3 and it will move it to a new host which should have the patched runtime. I verified it worked, then moved it back to a B2 plan which was put on a host that was patched as well.

@Francisco-Gamino  Do we know if 4.15.1 Azure function updates were pushed to Azure Gov ?

Going to close this issue. It has been fixed from Microsoft side when using Az function 4.15.x or later version. To use PnP PowerShell, as we mentioned, please use the latest 2.x.x-nightly builds.
@desmay - no idea if this has been fixed for Azure Gov, but you can reach out to Microsoft support/PG for more information on this.
We have no ETA on the major release of PnP PowerShell as of now.

Hi All,
I recently upgraded PnP.Powershell from the 2.x.x-nightly to 2.1.1 and can confirm that it is working fine.  I have deployed it to our prod tenant for almost a month now so far no errors or issues..
Regards
Karthik Ramasubramanian
Senior Digital Productivity Developer
Norton Rose Fulbright Canada LLP / S.E.N.C.R.L., s.r.l.
45 O'Connor Street, Suite 1500, Ottawa, ON K1P 1A4, Canada
T: +1<PHONE_NUMBER>  |  M: +1<PHONE_NUMBER>  |  F: +1<PHONE_NUMBER>
<EMAIL_ADDRESS>NORTON ROSE FULBRIGHT
From: Fringie @.>
Sent: May 18, 2023 9:45 AM
To: pnp/powershell @.>
Cc: Karthik Ramasubramanian (he/him/his) @.>; Comment @.>
Subject: Re: [pnp/powershell] [BUG] PnP and Azure functions assembly conflict. Could not load type 'Microsoft.Extensions.Logging.Abstractions.Internal.NullScope' from assembly 'Microsoft.Extensions.Logging.Abstractions' (Issue #2136)
[External Email – Use Caution]
Any update on this?
Going to close this issue. It has been fixed from Microsoft side when using Az function 4.15.x or later version. To use PnP PowerShell, as we mentioned, please use the latest 2.x.x-nightly builds.
@desmayhttps://github.com/desmay - no idea if this has been fixed for Azure Gov, but you can reach out to Microsoft support/PG for more information on this.
We have no ETA on the major release of PnP PowerShell as of now.
I am getting this issue with:
Azure Functions Core Tools
Core Tools Version: 4.0.5148 Commit hash: N/A (64-bit)
Function Runtime Version: <IP_ADDRESS>92
Can you advise?
—
Reply to this email directly, view it on GitHubhttps://github.com/pnp/powershell/issues/2136#issuecomment-1553079938, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKJU7QZIEUY6ZD42RJIHA6LXGYRVVANCNFSM53M6HTGQ.
You are receiving this because you commented.Message ID<EMAIL_ADDRESS>Law around the world
Le droit à l’échelle mondiale
nortonrosefulbright.com
CONFIDENTIALITY NOTICE: This email is confidential and may be privileged. If you are not the intended recipient please notify the sender immediately and delete it.
AVIS DE CONFIDENTIALITÉ : Ce courriel est confidentiel et peut être protégé par le secret professionnel. Si vous n’en êtes pas le destinataire visé, veuillez en aviser l’expéditeur immédiatement et le supprimer.


Implement stereoisomer enumeration

What does this implement/fix? Explain your changes.
Adds the ability to do stereochemistry expansion on molecules, including a heuristic to check whether or not the resulting structures are physically reasonable.
Any other comments?
Once we have some experience with the basics, moving this from Python to C++ is pretty straightforward.
@bp-kelley : since I know you've thought about this, your feedback on the approach would be really useful.
Relevant to #626

Also: expanding this to support double bond stereochem turns out to be pretty easy. Is it worth doing?

@coleb : I think we've talked about this before too, so you may also have some thoughts.

@greglandrum
(1)  it is useful to ignore some nitrogen stereo swaps as they really don't change the conformation that much especially when using the  mmff94s variant where aniline nitrogens are planar due to time averaging.  Saves a power of 2 on the swaps as well.
(2) there is no 2

@bp-kelley : point 1 makes sense. Can you provide some examples of N atoms that the RDKit considers (potential) stereocenters where the swaps can be ignored?

Hi guys, late to the party as I've actually been on vacation during my vacation. Some general notes below:

The trick of trying the embedding is quite cute and cool, though I typically only do stereo enumeration before doing conformer generation so I wouldn't use it.

Should we consider an options object as the number of options to the function appears to be growing large, and will likely grow larger.

Should this automatically de-duplicate isomers? For example, the following are the same and a trip through MolToSmiles would deduplicate them.
FC@@HC@@HF
FC@HC@HF

I find it more useful to generate a random subset of isomers instead of reordering the stereo centers. We could collapse maxNumCenters and randomizeOrderOfCenters into a single maxIsomers argument that can be documented as 'maxIsomers: the maximum number of isomers to yield, if the number of possible isomers is greater than maxIsomers, a random subset will be yielded. If 0, all isomers are yielded. Since every additional stereo center doubles the number of results (and execution time) it's important to keep an eye on this.'

I definitely agree that bond stereo enumeration should be included, that's why I wanted the CIS/TRANS stuff in RDKit in the last release. :-)

This code currently doesn't handle pseudo-stereo centers (stereo centers that only exist whenever other stereo centers are set that create asymmetry). For example: CCC=CC(=C(CC)CO)C=CCC has 4 unique isomers:

The way I work around that here is to recursively look for more stereo centers on an isomer once an isomer is created: https://gist.github.com/coleb/9d132e053d40cacb648e1c3c9bd6a625
The gist contains the current stereo enumeration code I've been using and the test cases I've found that deal with the pseudo-stereo center case.  And coming up with a way to deal with pseudo-chiral and sampling a subset of stereo centers will be definitely be tricky. I could maybe bite off integrating this stuff together as my RDKit UGM hack day project, that would be fun.

I'm also slow since my vacation was also really a vacation. I'm back now though.
@coleb : thanks for the suggestions. Most of it makes sense to me and I think integrating your work would make a lot of sense. Would it help if I got a start on implementing things like the options argument and left the more complex bit of integrating your changes for dependant stereochemistry to you?

@greglandrum, yes, that would definitely help as there aren't many examples in the codebase I could base that off of yet.

Alright. Will try and get something in tomorrow. Will ping you when the code is there.

@coleb : the first pass at using an option class is now there.

@greglandrum I'll dig up some examples this week (hopefully)

@bp-kelley: if you're talking about three-coordinate Ns, you can avoid the searching since the RDKit currently doesn't consider them as possible chiral centers:
In [2]: Chem.CanonSmiles('CC[N@](Cl)F')
Out[2]: 'CCN(F)Cl'

@greglandrum @coleb Are we sufficient for adding a first pass at this?  We can add additional options later.
As for nitrogens, the biggest offenders are aniline:

The "first pass" argument is a reasonable one.
I think the current state of this PR is better than nothing (which is what's currently in the code).
As long as @coleb agrees I think it'd be fine to merge this (with a comment about known weaknesses, which I will add) and then add his enhancements when they are ready

I would make at least one change as a first pass, just remove the randomizeOrderOfCenters option as it conflicts with how I would like to implement a subsetting mechanism. Also, I don't think APIs should call 'random.seed' as that has side effects outside the calling function.
Another small change to consider is renaming from GenerateAllStereoisomers to GenerateStereoisomers as it won't necessarily generate 'all' of them, and shorter is usually better in naming.
Hoping to make this my hack day next week!

Those both make sense. I just removed the random option (I like having something like that in there, but we can add it back later if we want) and renamed to GenerateStereoisomers().

@greglandrum @coleb Going to merge tonight if I don't hear from either of you.


Rewrite interview using React and Redux

This PR will add a new React/Redux based interview, which replaces project_questions. It will also remove the vendor file system and django-compressor/SASS. So far the following changes are implemented:

Add project_interview view
Refactor webpack config

coverage: 91.556% (-0.04%) from 91.591%
when pulling ec8f53fc278d5a4c1949d6b7a3d9f7de9cc0e199 on interview
into c945d7d9ef5efdccb2d7b41b914ff50ea6f7b49c on main.


Clarify how to set Nullable warnings or Nullable annotations as the default.

Type of issue
Missing information
Description
The page describes 4 choices in your project.
First 2 can be set by Enable/disable setting in the project.
It’s not clear how to setup Nullable warnings as the default and Nullable annotations as the default.
Page URL
https://learn.microsoft.com/en-us/dotnet/csharp/nullable-migration-strategies
Content source URL
https://github.com/dotnet/docs/blob/main/docs/csharp/nullable-migration-strategies.md
Document Version Independent Id
99552131-8839-7c22-fcdc-2baa7722e756
Article author
@BillWagner
Metadata

ID: fc516159-d7e1-46ba-7d31-538a0b811491
Service: dotnet-csharp
Sub-service: null-safety

Hi @michael-freidgeim-webjet
Thanks for pointing this out.
This article should mention the Nullable setting in the project file, and link to the section in the compiler options for that option.
I've added this to our backlog, and added the "help wanted" label if someone wants to submit a PR before we make our next update.


Official releases in upstream moby

Upstream doc PR https://github.com/moby/moby/pull/38620
Primary goal here is better stability in the upstream engine.

This is currently a bit stalled on talks with upstream maintainers.
Currently looking at introducing changes in smaller steps in order to reduce friction/changes required for Docker CE (official) releases... step one of which is to have a release branch cut from moby/moby with cherry-picks/backports happening in moby/moby reviewed/accepted by actual moby maintainers and the community at large.


Multiple traits to create a service

Both the container trait and the service trait allow to configure a service. Does anyone recall why?
Can we rationalize it?
@jamesnetherton , @astefanutti

It's coming from 45d5666e699460da51051874fd918dfe82399300. The intent was about getting the Prometheus trait aware of the service trait. But it leaked into the container trait and the Prometheus trait had to be fixed in 64553ae05309806ebbdf999179a3edc4bcc425ee anyway.
I agree it's still confusing and can likely be improved.

The original "design" was to have the service trait as master and other traits to customize the service created by the servce trait.

I think now we have a single point where the service is created an other traits can amend it so, can we close this on @nicolaferraro ?


Fix error on double Kill calls

This returns a typed error for calls to Kill when the process has
already finished.
Fixes #999
Signed-off-by: Michael Crosby<EMAIL_ADDRESS>

Codecov Report

Merging #1008 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1008   +/-   ##
=======================================
  Coverage   59.05%   59.05%
=======================================
  Files           5        5
  Lines         779      779
=======================================
  Hits          460      460
  Misses        205      205
  Partials      114      114

Continue to review full report at Codecov.

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

needs rebase

Rebased

Thanks for the fix.
Just curious,  is there similar problem with windows? Do we also need to fix it?

needs a rebase

@mlaventure updated


docs: code snippet updates

Overview

Updating code snippet to new patterns in ~anticipation for FE guild tutorial

PR Checklist

[x] Related to designs:
[ ] Related to JIRA ticket: ABC-123
[x] I have run this code to verify it works
[x] This PR includes unit tests for the code change

🚀 Styleguide deploy preview ready!https://624f2ffc3fb0a23cc675deb3--gamut-preview.netlify.appDeploy Logs


Ability to get secondary error info (e.g. from 3rd party sasl lib)

running ldapsearch can often print 'additional info' on error e.g.
[root@7f7b9d2027ca qinstall]# LD_LIBRARY_PATH=/usr/lib/:$LD_LIBRARY_PATH ldapsearch -H ldap://simon.edt.org  -D 'dc=edt,dc=org' -Y GSSAPI -N 1
SASL/GSSAPI authentication started
ldap_sasl_interactive_bind: Local error (-2)
	additional info: SASL(-1): generic failure: GSSAPI Error: Unspecified GSS failure.  Minor code may provide more information (Server<EMAIL_ADDRESS>not found in Kerberos database)

currently, for -2 error, running
.ldap.err2string[-2i]
gives
"Local error"
as per first line of the ldapsearch error, but would be helpful to be able to get what ldapsearch shows for its 'additional info'.

Extra info appears to come from getting value of LDAP_OPT_DIAGNOSTIC_MESSAGE message (rather than any return values/etc of function directly)
https://github.com/openldap/openldap/blob/992815ced57d77b4a3ff554dc5a84412531cf4dd/clients/tools/common.c#L1552


draw_networkx_edge_labels does not work for multidigraph

The dictionary returned by nx.get_edge_attributes has the structure (source, dest, enum):attr, where the third field just enumerates the occurrences of each edge. This third field is necessary because keys have to be unique in the dictionary. However this will imply that it cannot be used in nx.draw_networkx_edge_labels, because it expects a (source, dest):attr structured dict.
Any plan to fix this bug

I would not call this a bug -- rather a limitation.  It is an intentional design due to the incomplete treatment of multiedges in our drawing package. If all the edges are drawn on top of each other how do we label the edges? You can, however, construct a single label for all the multiedges between two nodes and use that with the currently available tools.
I think the next step in solving this issue is to figure out a good way to handle drawing the multiedges.

I'm going to close this as it is not an issue with nx-guides, but with networkx itself.
You can create a new issue on the networkx/networkx repository to continue the conversation (or you can still post here even with it closed).

Hi Dan,Thank you for replyYou have provided 'multidigraph' for multiple connections (with same source and atrget) and those are not met for display lebal for each edge.
I beleive it is bug. Although, you have choice to fix or not
Thank you, Shiv, 91-9108282540
On Friday, 6 May, 2022, 06:47:07 pm IST, Dan Schult<EMAIL_ADDRESS>wrote:

I would not call this a bug -- rather a limitation. It is an intentional design due to the incomplete treatment of multiedges in our drawing package. If all the edges are drawn on top of each other how do we label the edges? You can, however, construct a single label for all the multiedges between two nodes and use that with the currently available tools.
I think the next step in solving this issue is to figure out a good way to handle drawing the multiedges.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Select defaultAppearance is broken

Issue type
I'm submitting a ...  (check one with "x")

[x] bug report
[ ] feature request

Issue description
Current behavior:
On iOS, trying to use a Select results in an error that has to due with an unsupported style configuration. This is using a very vanilla implementation of Select but I am using hooks.
Expected behavior:
Should render a Select properly.
Steps to reproduce:
Add a Select to some component.
Related code:
              <Select
                  data={items}
                  selectedOption={selectedOrg}
                  onSelect={(selectedOption: SelectOption): void => {
                    setSelectedOrg(selectedOption);
                  }}
               />

Here's the error
console.error: "
Select: unsupported configuration.
Using UI Kitten components is only possible with configuring ApplicationProvider.
📖 Documentation: https://akveo.github.io/react-native-ui-kitten/docs/guides/install-ui-kitten#configure-application-root

In case you have all in place, there might be an incorrect usage of a "styled" function.
📖 Documentation: https://akveo.github.io/react-native-ui-kitten/docs/design-system/custom-component-mapping"

Object.__expoConsoleLog
    RemoteConsole.js:80:31
Object.console.error
    YellowBox.js:59:8
Object.error
    muteWarnings.fx.js:26:18
new
    styleConsumer.service.js:23:20
Wrapper._this.onInit
    styleConsumer.component.js:126:31
Wrapper._this.renderWrappedElement
    styleConsumer.component.js:140:25
renderWithHooks
    ReactNativeRenderer-dev.js:9473:17
mountIndeterminateComponent
    ReactNativeRenderer-dev.js:11993:12
beginWork
    ReactNativeRenderer-dev.js:12835:13

Other information:
I have a hunch its from this commit: https://github.com/akveo/react-native-ui-kitten/commit/6eec5ca#commitcomment-35059486
OS, device, package version
iOS 12.4, iPhone Xs Max simulator, 34.0.0

@32penkin package.json:
"react-native-ui-kitten": "^4.2.0-beta.1",
"@eva-design/eva": "^1.0.1"

That's what I was using when I posted this.

I guess I need @eva-design/eva": "^1.1.0-beta.1"?

yep, latest of both fixed it. Thanks @32penkin


Locker fills first pass

About the PR

helping out with #683
Why / Balance

i would hope the marines would have some stuff in all those closets they keep around i guess. massively shifts balance of the game in favor of marines, who can now respond to atmospheric hazards, fire, and biohazards
Technical details

Media

[ ] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

not sure how, but i've fucked the map up on this one. will try again without the map


Doesn't start on windows 7 x64 SP1

Cannot start server on Windows 7 x64 SP1

I pulled master branch.
Run "npm install" - all dependencies are resolved
Run "npm start" - got an erorr (see npm-debug.txt)

npm-debug.txt

Hello @alexmkdn,
I didn't really investigate right now, but I just wanted to put up a note relative to your log.
Although it may not be the issue at hand, I see that you are using node v 6.6.0. Please be aware that we are currently essentially deploying and testing with the 4.4 (and soon the 4.5) versions of node. As such, it is not excluded that some new/reworked API may  become an issue during the runtime.
As none of us (in the Scality team) are not developping this product on Windows systems, I do not know if any of us has the means to investigate this. I'll let them voice the results of their investigation if any.

@DavidPineauScality I have investigated this. There is an issue with babel not picking up the directories/files from the ignore list and the other one relates to error code not being checked for while we are initializing directories for the file backend. For this reason, I have opted to statically compile utapi, as it's a dependency of S3.
Here are the PRs #214  and #215. Utapi PR is https://github.com/scality/utapi/pull/49

@rahulreddy Can we close it as a duplicate of #155 then ? :)

@DavidPineauScality Sure!
@alexmkdn Please follow https://github.com/scality/S3/issues/155 for updates.


feat(menu): Vertical menu

Menu
A vertical menu displays elements vertically.
This is the basic implementation which covers default menu only. Other variations will be handled in separate PR(s).
TODO

[x] Conformance test
[x] Minimal doc site example
[x] Stardust base theme
[ ] Teams Light theme
[ ] Teams Dark theme
[ ] Teams Contrast theme
[ ] Confirm RTL usage
[ ] W3 accessibility check
[ ] Stardust accessibility check
[ ] Update glossary props table
[x] Update the CHANGELOG.md

API Proposal
Vertical

A vertical menu displays elements vertically.
<Menu vertical>
  <Menu.Item vertical name='inbox' active={activeItem === 'inbox'} onClick={this.handleItemClick}>
    Inbox
  </Menu.Item>

  <Menu.Item vertical name='spam' active={activeItem === 'spam'} onClick={this.handleItemClick}>
    Spam
  </Menu.Item>

  <Menu.Item vertical name='updates' active={activeItem === 'updates'} onClick={this.handleItemClick}>
    Updates
  </Menu.Item>
</Menu>

<button>Click</button>

The primary implementation of the vertical menu is not consistent with the default:

Is this going to be implemented in separate PR? I would rather have this implemented in this PR, as the only thing not corresponding is the background color of the active and hovered ListItems.

I didn't have the latest changes localy. Looks ok, approved.


Backward on tensors inside training_step

What is your question?
Is it safe to call .backward() on tensors inside .training_step? It is the case for example if loss depends on the gradients.

Might need to use retain_graph if you do. But otherwise no problem.
If you don't need lightning's .backward, override the method.

@williamFalcon thank you for your answer. I wanted to override .backward, I think it is more proper way to do what I want, but I need to access some tensors from the training_step, but .backward accepts only loss from training_step. Is there a proper way to get access? To save somehow what I need and then pass it to lightning's .backward?


Disqus does not show if there is ngAnimate.

Hello,
Disqus only shows if I go to the page directly, but if I navigate to other pages with ngAnimate the disqus will just show loading and disappears. But if I refresh the current page, the disqus will appear. Removing ngAnimate will solve this issue.

Hi, thanks for the report. Unfortunately I do not have time to look into this at the moment - I am prioritizing issues in the dirPagination module (since it is much more widely used in production). If you get anywhere with this yourself, please update this issue to help others with the same.


Document which verison of select2 is being wrapped.

Could you include somehwere what equivalent version of Select2 is included in this package?

I don't quite understand, please could you clarify…

I mean, is the react-select2-wrapper a wrapper for the original select2 package and, if so, do you track the version of that package? It would be useful to know because if, for example, select2 upgrade their package and you haven't upgraded yours with the same functionality, then the developers using your package will know not to expect certain features, or expect certain things not to be working.

According to the specified rule: >= 4.0.0 and < 5.0.0 (Latest version 4.0.3)


Adding optional flag filter-unobserved-features-from-phylogeny to improve running time

Looks good @esayyari! I think once you run flake8 and address the comments from @ElDeveloper and @fedarko, this should be good to merge.

Added a test function to core_test.py for filtering unobserved features and fixed Flake8

Fixing failed tests by passing to "filter_unobserved_features_from_phylogeny=False" to tests in test_core.py

Fixing Flake8 issues

Fixing flake8 issues

Looks good to me, thanks so much @esayyari


node throws Unhandled 'error' event

Terminal Output
(node:33024) ExperimentalWarning: Custom ESM Loaders is an experimental feature. This feature could change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
node:events:505
      throw er; // Unhandled 'error' event
      ^

Error: EAGAIN: resource temporarily unavailable, read
Emitted 'error' event on ReadStream instance at:
    at emitErrorNT (node:internal/streams/destroy:151:8)
    at emitErrorCloseNT (node:internal/streams/destroy:116:3)
    at processTicksAndRejections (node:internal/process/task_queues:82:21) {
  errno: -35,
  code: 'EAGAIN',
  syscall: 'read'
}

Node.js v18.3.0

> Test run finished at 6/10/2022, 10:05:09 PM <

playwright.config.ts
import type { PlaywrightTestConfig } from '@playwright/test';

const config: PlaywrightTestConfig = {
	use: {
		baseURL: "https://localhost:3000",
	},

	webServer: {
		command: 'npm run build && npm run preview',
		port: 3000
	}
};

export default config;

test.ts
import { expect, test } from '@playwright/test';

test('index page has expected h1', async ({ page }) => {
	await page.goto('/');
	expect(await page.textContent('h1')).toBe('Welcome to SvelteKit');
});

Index Page

Welcome to SvelteKit

Visit kit.svelte.dev to read the documentation

Duplicate of #174


Returning nil value from lua_mongo_collection_drop_index()

Sent you a PR for this branch just for formatting. I'm happy with this to go into the indexing branch. Good work. Sorry for the delays, I got caught up in #63.

I changed my mind. I merged and then made the changes myself. Nice work.


For URL search parameter, the :above modifier is not implemented correctly.

The :above modifier is not implemented correctly.
The STU3 spec was a little bit vague about what :above should do but the CI build of the R4 spec (http://build.fhir.org/search.html#uri) has a bit more context and example for how :above should behave. Based on that description, the current implementation is incorrect.

AB#76065


Inconsistent information about which trigger should be used for pages.

Inconsistent information about which trigger should be used for pages to add additional fields to the set of field to be loaded.

When the platform implicitly uses partial records, add the extra fields by calling AddLoadFields [...] from the OnOpenPage trigger on OData pages.

vs.

Add the field to the set of fields to be loaded via the AddLoadFields method on the OnFindRecord trigger.

What trigger should be used, OnOpenPage or OnFindRecord ?

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

ID: 1c67b2cc-343c-b1ef-ed99-6eaf1a611548
Version Independent ID: 32de46ff-68e9-b2f3-0aaa-e69cc79bb0ff
Content: Using partial records - Business Central
Content Source: dev-itpro/developer/devenv-partial-records.md
Service: dynamics-365-business-central
GitHub Login: @jswymer
Microsoft Alias: jswymer

@SusanneWindfeldPedersen what information do you need?


Cant run requirements

Hi I need some help here. I run dephpugger requirements and this is what i get
Fatal error: Uncaught Error: Class 'Dephpug\Console\CliCommand' not found in /root/.composer/vendor/tacnoman/dephpugger/src/Dephpug/Dephpugger.php:28
Stack trace:
#0 /root/.composer/vendor/tacnoman/dephpugger/bin/dephpugger(48): Dephpug\Dephpugger->run()
#1 {main}
  thrown in /root/.composer/vendor/tacnoman/dephpugger/src/Dephpug/Dephpugger.php on line 28
The command '/bin/sh -c dephpugger requirements' returned a non-zero code: 255

any idea what is wrong?

Hello @liaogz82
Sorry about my delay.
We had this problem versions ago. Are you using the latest version?

Yes I am sure the problem is still there. Check out
https://github.com/tacnoman/dephpugger/issues/26
On Mon, 19 Nov 2018 at 9:45 PM, Renato Cassino<EMAIL_ADDRESS>wrote:

Hello @liaogz82 https://github.com/liaogz82
Sorry about my delay.
We had this problem versions ago. Are you using the latest version?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tacnoman/dephpugger/issues/25#issuecomment-439897479,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AATWa8JE4hWHsrRuosHVnzdljBoEXDlSks5uwrYGgaJpZM4VDj-k
.


[DS-4410] New email template sent to a newly-registered user.

Fixes: #7748
https://jira.lyrasis.org/browse/DS-4410
If enabled, this patch causes a "welcome letter" to go out to any newly registered user.
Very lightly tested.
Also replaces references to deprecated ConfigurationManager, since the new code already used an instance of ConfigurationService when I moved it into EPersonConsumer.

Close/open again to get the tests un-stuck.

Documentation updated.


Transform doesn't work in supervised mode

Hello!
When I try to use transform() method of umap model trained in supervised mode on continuous data, I get the following error:
IndexError: Failed at nopython (convert to parfors)
list index out of range
The embeddings_ of the model are constructed without error during training and are not nan.
Could you please look into it?

Generally speaking this has worked just fine on the examples I have; are you able to share your data so I can attempt to reproduce the problem (I understand if this is not the case)?

Got the data that reproduce error and which I can share.
The code to reproduce is:
X = np.load("X.reproduces.umap.error.npy") Y = np.load("Y.reproduces.umap.error.npy") trans = umap.UMAP(     n_components=2, random_state=42, min_dist=0.0,      local_connectivity=1, target_weight=0.5, metric="euclidean" ) trans.fit(     X, y=Y.round(2) ) coords = trans.transform(X[0:1000])

Thanks for the data, it certainly helps. Unfortunately on my current test machine it seems to be working just fine:

For reference I am running a fairly recent version of numba (v0.40.0), but if you are at the current requirements you should be fine. It may be worth upgrading your numba installation in case that can resolve the issue.

Updating to 0.41 numba solved my problem. Thank you!


Windows Voice typing Not Working

Windows Voice typing is not working while pressing Windows + H button,
is showing it is managed by your organisation in settings
Type windows + H
Nothing happening
Expected behavior
Starts the windows speech typing panel
Had to follow this video to fix this
https://www.youtube.com/watch?v=NRZqnwz4MSQ&t=181s

Can confirm that this is an issue when running the script. Had to re-enable twice now. Thanks for sharing the video link. Would have been massively helpful a few weeks back.

@makhal-sandip @Don-Keballs  the whole purpose of this script is to turn off non essential services so you can free up system resources. Think about it, the script can not read your mind and chose the services that should not be turned off.
What I would recommend is either not running this script or you can turn off non essential services (for you) manually.
Folding that functionality into the script is not feasible because it will turn into manual process where people will have to pick and chose which services to shutdown.

Puedo confirmar que se trata de un problema al ejecutar el script. Tuve que volver a habilitarlo dos veces ahora. Gracias por compartir el enlace del vídeo. Habría sido de gran ayuda hace unas semanas.

Could help me? I've used this script but now dont work the Speech with online voices in programs that use SAPI5, dont detect my lenguagues, and when try add voices it crash.
What should I re-activate, what service or what thing? Help guys @KonTy @Don-Keballs


[DNM] consumer: enhance kafka consumer

What problem does this PR solve?

Issue Number: close #xxx
What is changed and how it works?
Check List
Tests

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

Code changes

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

Side effects

Possible performance regression
Increased code complexity
Breaking backward compatibility

Related changes

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

Release note
Please add a release note.

Please refer to [Release Notes Language Style Guide](https://pingcap.github.io/tidb-dev-guide/contribute-to-tidb/release-notes-style-guide.html) to write a quality release note.

If you don't think this PR needs a release note then fill it with `None`.

/run-all-tests

/run-all-tests

/run-all-tests

/run-all-tests

Codecov Report

Merging #5420 (8f39d6b) into master (687e248) will decrease coverage by 0.0971%.
The diff coverage is 52.0088%.

Flag
Coverage Δ

cdc
61.1462% <52.0088%> (+0.5475%)
:arrow_up:

dm
52.0455% <ø> (-0.4241%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.
@@               Coverage Diff                @@
##             master      #5420        +/-   ##
================================================
- Coverage   56.1240%   56.0268%   -0.0972%
================================================
  Files           522        528         +6
  Lines         65325      69481      +4156
================================================
+ Hits          36663      38928      +2265
- Misses        25094      26848      +1754
- Partials       3568       3705       +137


Ball blocker is not blocking balls during play

One ball also starts in the opening allowing it to be picked up when the game hasn't started


Deal with the {{page}} macro in en-US JavaScript documentation

In https://github.com/mdn/sprints/issues/2520 we're trying to decide what to do with all the KumaScript macro calls in our JavaScript documentation.
Mostly we should be able to make a single choice about each macro, but as noted in https://github.com/mdn/sprints/issues/2520#issuecomment-582067362, the {{page}} macro is a bit of a chameleon.
Florian has already removed a lot of these uses in https://github.com/mdn/sprints/issues/2571, but there are 48 left.
So this user story is to decide what to do about all the remaining uses of this macro in the en-US JS documentation.
Acceptance criteria

either no more uses of the {{page}} macro in the en-US JS docs, or any remaining uses are accounted for as part of "replace" triage (meaning, we have an explicit plan for dealing with them in the scraping step).

A lot of the Intl pages still use {{page}}, so I think this task will also include the work in https://github.com/mdn/sprints/issues/2537. Once we've done that, we can add constructor pages, remove prototype pages, and any additional {{page}} usages.

Here's what left of {{page}}
Random pages with page macro calls:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Cheatsheet
https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference

Intl related page macro calls:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt/toLocaleString
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleDateString
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/localeCompare
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/toLocaleString

Prototype page macro call (these will go away soon, when these pages get constructor pages instead of prototype pages):

https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Collator
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat
https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/PluralRules
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat

This is now done except two pages:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Cheatsheet
https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference

The Cheatsheet is relatively new, I don't know what to do about this.
The reference seems to be duplicating a lot of info from the listings on the Standard build objects, Statements, and Operators reference listing pages and I wonder if I want to re-do this page to look like a much better overview using the tiles that I've used on https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Guide
Thoughts?

https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference

This one is a landing page, and {{page}} is being used more or less to assemble lists of links to put in it. We would like to have a consistent way to create and render landing pages, rather than it being a free-for-all.
In "structured markdown" we have a definition of a landing page already. One thing we have to do for the JS docs, is work out, for all the landing pages, how we would scrape them into structured markdown and what kinds of upstream changes would be needed to make them scrapable (aka stumptown-compatible).
Some landing pages look quite easily scrapable (e.g. https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors, which basically consists of some prose followed by a ListSubpages macro call. ListSubpages maps quite cleanly onto the stumptown "link list" thing.
So what I'd suggest for this page is:

decide how we want this page to look
if we can build a page like that in a way that's compatible with the landing page recipe, (e.g. replace page calls with ListSubpages calls) then do that.
if we can't, because the landing page recipe and associated primitives are not powerful enough, consider whether we want to extend the way we want to represent landing pages as structured markdown, so we can meet the needs of this page. For example, supporting tags and letting link lists filter by tags.

I would also say, I'm never very keen on documentation that imposes a lot of taxonomy on readers, since taxonomy tends to get subjective or make demands on readers. For example, what does "fundamental object" really mean? Why isn't Number a fundamental object? What does "structured data" mean as a category? What value are these categories giving to users?

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Cheatsheet

This one is difficult. As you say it is new, and it's a useful page, and transclusion is the best way to do this :(. Now the regex docs are split into separate pages, having a one-page cheatsheet seems really useful.
Perhaps keep this page (maybe renamed to "Regular expression syntax" or something), and have the pages on the particular categories (e.g. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Assertions) link to the relevant section of this page?
@SphinxKnight , any views on this?

As said earlier, this is pretty recent.
I'm not really keen of removing content from detailed pages and link to this page (after all having the "syntax" is part of the "recipe" of other pages in the JS Ref).
All in all, for a single page, I consider the cost of duplicating such tables in this cheatsheet (and maintaining them here) is lower than the costs of other solution.
Give me a go and I'll take care of that.
P.S. For the Reference page, I concur with what has been said before, having a "JS Guide"-like/landing page would be far better :)

Perhaps keep this page (maybe renamed to "Regular expression syntax" or something), and have the pages on the particular categories (e.g. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Assertions) link to the relevant section of this page?

This could work indeed.

All in all, for a single page, I consider the cost of duplicating such tables in this cheatsheet (and maintaining them here) is lower than the costs of other solution.
Give me a go and I'll take care of that.

I also agree to this and I'm not sure I have a preference right now. I think we should just try one option and see how it feels. @SphinxKnight do you want to give this a try and report back?

I went with duplicating content in the cheatsheet and added a
Please do not forget to edit this page as well. Thanks!
 in the different pages (incl. the cheatsheet)
Only 1 remains:

[ ] https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference
☠

Thank you @SphinxKnight :+1: I guess that could work.
For the reference page, I went ahead with what I meant earlier: It now looks like the Guide landing page: https://wiki.developer.mozilla.org/en-US/docs/Web/JavaScript/Reference
What do you think, Will?

What do you think, Will?

As far as the scope of this bug is "what shall we do about calls to {{page}}" - people of course use {{page}}, as well as things like {{ListSubPages}} and (stumptown "directory link lists") to help maintenance, because the source only lives in one place. One option for removing these macros is always to duplicate the content.
So from that narrow perspective, that's the solution chosen here. It has the disadvantage that when more items are added this has to be updated, and the advantage that there's no clever stuff to worry about.
As far as "stumptown-compatible" is concerned, this solution has the problem that it uses custom styling via CSS classes, so we can't represent it using plain Markdown prose. We could implement something like this if we represented the collections of links using a link list, then said to the renderer "the correct way to render a link list is as a card grid". But then every link list gets rendered like this, and we have to decide if that's appropriate.
In general it's helpful I think to try to separate the way we author the content from how we would like it rendered, and that's one of the things stumptown tries to achieve. That's why we invent things like link lists rather than using blobs of Markdown.
So: how would we author a solution like this in structured Markdown? As plain prose or using some abstract structure like a link list?
I think one limitation about this particular option is that it doesn't show short descriptions, which I think can be very helpful in landing pages, where the page title alone doesn't always give you enough information about what the thing is. In general though, I care less about specific choices about how landing pages are rendered (like, are they a table, or a ul, or a dl, or a grid, do they show short descriptions...) than that they are all authored and rendered consistently, and that the authoring interface is relatively simple and understandable.

So: how would we author a solution like this in structured Markdown? As plain prose or using some abstract structure like a link list?

Good question, at this point I'm not sure if we need a structure for this page, but as it is used both on the overview for the JS guide and now here (and I also think it would be nice for the header list), it seems like this kind of structure "high level landing page" is a common pattern.

I think one limitation about this particular option is that it doesn't show short descriptions, which I think can be very helpful in landing pages, where the page title alone doesn't always give you enough information about what the thing is.

I think it would be a good idea to think about "lists without short description" as a thing that stumptown could do and then have the renderer render out the tiles or something else that looks nice.
I agree to be consistent when authoring and rendering content. This pattern (high level landing page without short description) I've only seen now and I'm not sure what everyone else thinks about it or whether we need this page type. I think I would like to continue that conversation later when we have dealt with more content and this comes up again (and if it doesn't, find a different solution than a new content type).
If you like, I can capture this in a new issue, but I would like to close this one now.

OK, let's close this. We should have a separate story for "dealing with the JS landing pages" and we can look at this then.

Thank you, Will! :)


Support comments

Hi,
I like the tool and would like to use it in pre-commit, but it removes comments (lines starting with #) from my setup.cfg.
I know the support won't be that easy since ConfigParser doesn't keep the comments in a structure.

duplicate of #21 - afaik it's intractable

I've reconsidered my pro-tip of line based staging and undo comment changes:

https://github.com/asottile/setup-cfg-fmt/pull/21#issuecomment-1135513559

it's extremely annoying when rebasing say 50+ commits and have to undo the changes for each commit. so removing the hook in my project:

https://github.com/Taxel/PlexTraktSync/pull/1187

for future me, you used these command:
git diff setup.cfg|patch -R -p1 && git rebase --continue && pre-commit run --all-files


[Not4Review] Noencap issue 3505

Test fix with noEncap mode

Codecov Report

Merging #3520 (5e122fc) into main (2c7d486) will decrease coverage by 27.39%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             main    #3520       +/-   ##
===========================================
- Coverage   65.58%   38.18%   -27.40%
===========================================
  Files         277      114      -163
  Lines       27264    15000    -12264
===========================================
- Hits        17881     5728    -12153
- Misses       7483     8799     +1316
+ Partials     1900      473     -1427

Flag
Coverage Δ

integration-tests
38.18% <ø> (?)

kind-e2e-tests
?

unit-tests
?

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/agent/openflow/pipeline.go

pkg/features/antrea_features.go

...piserver/registry/controlplane/egressgroup/rest.go

pkg/agent/util/sysctl/sysctl_linux.go

pkg/util/flowexport/flowexport.go

pkg/ovs/openflow/logs.go

pkg/apis/crd/v1alpha2/register.go

pkg/ipam/ipallocator/allocator.go

pkg/agent/nodeportlocal/util/parse_port.go

...egator/apiserver/handlers/recordmetrics/handler.go

... and 381 more

/test-windows-all

/test-windows-proxyall-e2e

Reopen it just for CI test

/test-windows-all


Alt + Drag & Drop move as an alternative to moved zoomed

We should be able to do a drag-and-drop action via alt-right mouse click or something like that, to move the trixelGrid when we're in zoomed mode, as an alternative to the keyboard arrows.

Going to change this to a combination of:

hold space bar
drag mouse (click -> hold + move)


Docker support

Hi!
Today I was basically too lazy to install the pandoc pdf stuff again, so here is an initial version with docker support - if you're interrested.

Hi,
sorry for letting you wait. When trying USE_DOCKER=1 make pdf (on Ubuntu), it asks me for sudo for changing some file permissions:
...
0d27bc851ca6: Pull complete
Digest: sha256:d8c318f5570f79ff6a84c999b908126ae9da9342b8d58f1a9c8546aea441d3a1
Status: Downloaded newer image for marcelhuberfoo/pandoc-gitit:latest
echo "Set permissions of docker-created files back again"
Set permissions of docker-created files back again
sudo chown -R philipp:philipp build
[sudo] password for philipp:

I haven't used docker before. Is that normal/intended/neccessary?
Other than that, this looks like a nice option, and I'll merge it after this question is resolved.
Thanks!

This is due to the docker container runs as root inside - which is not really nice, but the default
I think I could change that somehow... I'll check

Hm, this causes another permission error on my machine:
python3 ./src/trello2md.py --output build/export.md export.json --comments --header
Sucessfully translated to "build/export.md"!
docker run --env "UNAME=1000:1000" --volume /home/philipp/git/trello2md:/data marcelhuberfoo/pandoc-gitit pandoc -f markdown -t latex build/export.md -o build/export.pdf --template=tex/trello.latex --latex-engine=xelatex "--variable=title:export"
pandoc: build/export.pdf: openBinaryFile: permission denied (Permission denied)
Makefile:77: recipe for target 'build/export.pdf' failed
make: *** [build/export.pdf] Error 1

However, I have found it to work with changing the command to:
MDPROC = docker run --volume $(shell pwd):/data:z marcelhuberfoo/pandoc-gitit pandoc

(see here). Does that work for you, too?

Did you do remove the build/ directory before trying the new version?

For me it works when having both UNAME set and ":z" option on the volume. (see last commit)
Setting this UNAME should be fine for selinux also.
if you still have problems, please send me the output of
ls -lZ ; ls -lZ build/
before and after you run make

Works now, great.
Thanks again for your contributions!


"flutter run" sometimes fails when using android alarm manager (resolved by "flutter clean")

For some reason, if I use Android Alarm Manager, then sometimes subsequent runs of "flutter run" hang after the "Installing" step, waiting for the observatory port. I sometimes see a flash of white on the device around the time it's trying to launch the app, then it goes back to the home screen. Maybe the app is already running because a timer fired or something, and we don't have a way to shut down the app fully?
Running "flutter clean" for some reason fixes it. Running "flutter run" many times in a row seems to work fine, I think it probably only fails if it's been a while since the last "flutter run" (which is why I suspect it has something to do with the timers firing in the first place).
cc @bkonyi

@Hixie, have you encountered this lately?

I suspect this is related to https://github.com/flutter/flutter/issues/16604

I suspect this is related to #16604

You're probably right. I don't think this is alarm manager specific. Closing as a duplicate for now.


Mascot always clickable

As Kiloutre pointed out I made a copy/paste error at the end of the main.css file, which has been fixed.

Coverage remained the same at 39.704% when pulling 96bfb3e4a8282b9182f701a24ae27c74d4ae36e4 on EmanuelN:style/mascot into 6209dfbfb24263c7509ca7c0b1a564572779a400 on NyaaPantsu:dev.

Coverage remained the same at 39.704% when pulling 5a163c23df5c3cad45d23c699a4225d505ec3005 on EmanuelN:style/mascot into 6209dfbfb24263c7509ca7c0b1a564572779a400 on NyaaPantsu:dev.

Coverage remained the same at 39.704% when pulling b2b8d8d188dce279e720c01d197203a4e81a9806 on EmanuelN:style/mascot into 424e26d476ad985b81ac052833b58164e37c6641 on NyaaPantsu:dev.


The System VMs Agent state is not Up after upgrade to CloudStack <IP_ADDRESS>

ISSUE TYPE

Other

COMPONENT NAME

System VMs

CLOUDSTACK VERSION

CloudStack <IP_ADDRESS>

OS / ENVIRONMENT
# rpm -qa | grep cloudstack
cloudstack-management-<IP_ADDRESS>-1.el7.x86_64
cloudstack-common-<IP_ADDRESS>-1.el7.x86_64

# rpm -qa | grep cloudstack
cloudstack-agent-<IP_ADDRESS>-shapeblue0.el8.x86_64
cloudstack-common-<IP_ADDRESS>-shapeblue0.el8.x86_64

# cat /etc/os-release
NAME="Oracle Linux Server"
VERSION="8.3"
ID="ol"
ID_LIKE="fedora"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="8.3"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Oracle Linux Server 8.3"

SUMMARY
The System VMs Agent state is not Up after upgrade from <IP_ADDRESS> to CloudStack <IP_ADDRESS>
STEPS TO REPRODUCE
we using the doc as below:
upgrade the cloudstack
EXPECTED RESULTS
The  System VMs Agent state is OK.
ACTUAL RESULTS
The  System VMs Agent state is not OK.

There is no valid log error message in the log file.
2022-10-13 00:01:50,636 DEBUG [kvm.resource.LibvirtComputingResource] (UgentTask-5:null) (logid:) Execution is successful.
2022-10-13 00:01:50,637 DEBUG [kvm.resource.LibvirtConnection] (UgentTask-5:null) (logid:) Looking for libvirtd connection at: qemu:///system
2022-10-13 00:01:50,648 DEBUG [cloud.agent.Agent] (UgentTask-5:null) (logid:) Sending ping: Seq 32-380:  { Cmd , MgmtId: -1, via: 32, Ver: v1, Flags: 11, [{"com.cloud.agent.api.PingRoutingWithNwGroupsCommand":{"newGroupStates":{"i-2-26018-VM":["26018","2"],"i-2-26020-VM":["26020","2"],"i-2-25943-VM":["25943","4"],"i-2-25969-VM":["25969","2"],"i-2-25950-VM":["25950","2"],"i-2-25937-VM":["25937","4"],"i-2-26008-VM":["26008","2"],"i-2-25931-VM":["25931","5"],"i-2-26007-VM":["26007","2"],"i-2-26005-VM":["26005","5"],"i-2-25959-VM":["25959","2"],"i-2-25948-VM":["25948","3"],"i-2-26012-VM":["26012","2"],"i-2-26017-VM":["26017","2"]},"_hostVmStateReport":{"i-2-26018-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"r-25932-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-26020-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-25943-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-25969-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-25950-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-25937-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"r-25938-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-26008-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"s-26559-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-25931-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-26007-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-26005-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-25959-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-25948-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-26012-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"v-26560-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"},"i-2-26017-VM":{"state":"PowerOn","host":"whdckvm007.cn.prod"}},"_gatewayAccessible":"true","_vnetAccessible":"true","hostType":"Routing","hostId":"32","wait":"0","bypassHostMaintenance":"false"}}] }
2022-10-13 00:01:50,913 DEBUG [cloud.agent.Agent] (Agent-Handler-1:null) (logid:) Received response: Seq 32-380:  { Ans: , MgmtId:<PHONE_NUMBER>15, via: 32, Ver: v1, Flags: 100010, [{"com.cloud.agent.api.PingAnswer":{"_command":{"hostType":"Routing","hostId":"32","wait":"0","bypassHostMaintenance":"false"},"result":"true","wait":"0","bypassHostMaintenance":"false"}}] }
2022-10-13 00:02:23,580 DEBUG [cloud.agent.Agent] (agentRequest-Handler-1:null) (logid:d574e7cf) Processing command: com.cloud.agent.api.GetHostStatsCommand
2022-10-13 00:02:27,142 DEBUG [cloud.agent.Agent] (agentRequest-Handler-2:null) (logid:621fd576) Processing command: com.cloud.agent.api.GetStorageStatsCommand
2022-10-13 00:02:27,142 INFO  [kvm.storage.LibvirtStorageAdaptor] (agentRequest-Handler-2:null) (logid:621fd576) Trying to fetch storage pool b4fb50ca-79f2-46ba-bd1b-092f9bd14d4e from libvirt
2022-10-13 00:02:27,142 DEBUG [kvm.resource.LibvirtConnection] (agentRequest-Handler-2:null) (logid:621fd576) Looking for libvirtd connection at: qemu:///system
2022-10-13 00:02:27,158 INFO  [kvm.storage.LibvirtStorageAdaptor] (agentRequest-Handler-2:null) (logid:621fd576) Asking libvirt to refresh storage pool b4fb50ca-79f2-46ba-bd1b-092f9bd14d4e
2022-10-13 00:02:27,160 DEBUG [kvm.storage.LibvirtStorageAdaptor] (agentRequest-Handler-2:null) (logid:621fd576) Successfully refreshed pool b4fb50ca-79f2-46ba-bd1b-092f9bd14d4e Capacity: (49.98 GB)<PHONE_NUMBER>0 Used: (10.98 GB)<PHONE_NUMBER>2 Available: (39.00 GB)<PHONE_NUMBER>8
2022-10-13 00:02:27,244 DEBUG [cloud.agent.Agent] (agentRequest-Handler-4:null) (logid:621fd576) Processing command: com.cloud.agent.api.GetStorageStatsCommand
2022-10-13 00:02:27,244 INFO  [kvm.storage.LibvirtStorageAdaptor] (agentRequest-Handler-4:null) (logid:621fd576) Trying to fetch storage pool 0edb0e58-6b90-3bee-8e7b-13007b0f7bf9 from libvirt
2022-10-13 00:02:27,244 DEBUG [kvm.resource.LibvirtConnection] (agentRequest-Handler-4:null) (logid:621fd576) Looking for libvirtd connection at: qemu:///system

I have test all the connection:
The cloudstack manager node ip: <IP_ADDRESS>
The agent host node ip: <IP_ADDRESS>
The KVM vm instance IP:

<IP_ADDRESS> (VLAN1)
<IP_ADDRESS> (VLAN2)

The virtual routes ip:

r-25938-VM: <IP_ADDRESS> (VLAN1)
r-25932-VM: <IP_ADDRESS> (VLAN2)

The system vm ip:

s-26559-VM
v-26560-VM

The system vm can ping all the ip address:
The Second Storage VM: s-26559-VM

The console proxy VM: v-26560-VM

The virtual route can also ping all the ip:

The manager node can ping all the address:

But I don't know why the System VMs Agent state is not Up,  Can you give some suggestions on how to troubleshoot this problem?  If you need more information, please ask.

@xuanyuanaosheng ,
first one question; you mention you used the upgrade guide from 4.15.x, but your rpm output above show only <IP_ADDRESS> and <IP_ADDRESS>. Which upgrade did you perform?
Then about the issue. If all features function ok, I don´t think the state display is a problem. You can destroy and systemvm that doesn´t show a good status and wait for a new one to come up again. That should remove the problem. If some functionality is not working that would also be the first course of action.

@DaanHoogland
we upgrade CloudStack from version <IP_ADDRESS> to  <IP_ADDRESS> .
@slavkap
The status of the secondary storage of the problematic cluster:
The second storage is using nfs:

<EMAIL_ADDRESS>image]# pwd
/image
<EMAIL_ADDRESS>image]# ls
snapshots  template  volumes
<EMAIL_ADDRESS>image]# ifconfig | grep inet
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
        inet6 fe80::ecde:53ff:fecb:df73  prefixlen 64  scopeid 0x20<link>
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
        inet6 fe80::bc35:98ff:fe7a:d06a  prefixlen 64  scopeid 0x20<link>
        inet6 fe80::9c75:d0ff:fed5:53ed  prefixlen 64  scopeid 0x20<link>
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
<EMAIL_ADDRESS>image]# tree ./*
./snapshots
./template
└── tmpl
    ├── 1
    │   ├── 3
    │   │   ├── 68d8aa03-dbce-4335-b2fa-4812a4ca65dc.qcow2
    │   │   └── template.properties
    │   └── 4
    │       └── template.properties
    └── 2
        ├── 232
        │   └── template.properties
        ├── 247
        │   ├── 247-2-d800137d-4247-3e93-a3cb-915ba60c921e.iso
        │   └── template.properties
        └── 248
            ├── 4b1ec60e-f0d3-3307-a321-a13152959117.qcow2
            └── template.properties
./volumes

8 directories, 8 files

And the directory of the storage system virtual machine is empty:

The status of the secondary storage of our another normal cluster:
<EMAIL_ADDRESS>image]# pwd
/image
<EMAIL_ADDRESS>image]# ls
snapshots  template  volumes
<EMAIL_ADDRESS>image]# ifconfig | grep inet
        inet6 fe80::9edc:71ff:feca:93b0  prefixlen 64  scopeid 0x20<link>
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
        inet6 fe80::9edc:71ff:feca:93b0  prefixlen 64  scopeid 0x20<link>
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
<EMAIL_ADDRESS>image]# tree ./*
./snapshots
./template
└── tmpl
    ├── 1
    │   ├── 253
    │   │   ├── 253-1-59fef5e9-6616-3704-acf0-a0a5838dd1ae.iso
    │   │   └── template.properties
    │   ├── 255
    │   │   ├── 255-1-d3e4c0b7-81af-3dc1-96ea-010a16b78c24.iso
    │   │   └── template.properties
    │   ├── 3
    │   │   ├── dea9fed0-a166-45f3-b4d9-39edc1744ff6.qcow2
    │   │   └── template.properties
    │   └── 4
    │       ├── 02fc4431-c4b4-3407-bff6-50d367eb9ee8.qcow2
    │       └── template.properties
    └── 2
        ├── 247
        │   ├── 247-2-d800137d-4247-3e93-a3cb-915ba60c921e.iso
        │   └── template.properties
        ├── 248
        │   ├── 58a5fd71-e52e-3de0-9046-ba6a44df69ea.qcow2
        │   └── template.properties
        └── 257
            ├── 68b2c597-f9c5-3d2c-94be-fe7205e94ce2.qcow2
            └── template.properties
./volumes

10 directories, 14 files

And the directory of the storage system virtual machine is empty:

snapshots  template  volumes

@xuanyuanaosheng
can you share the content of /etc/cloudstack-release in systemvm ?
When you upgrade cloudstack-management using official packages, a new systemvm template will be registered automatically.
Please check if there is a new systemvm template for <IP_ADDRESS> and it has been downloaded to all secondary storages.

@DaanHoogland @weizhouapache @slavkap
The systemvm version is 4.16.1.
root@s-26640-VM:~# cat /etc/cloudstack-release
Cloudstack Release 4.16.1 Mon 31 Jan 2022 10:02:56 AM UTC

----------------------------------------------------------------------------
root@v-26641-VM:~# cat /etc/cloudstack-release
Cloudstack Release 4.16.1 Mon 31 Jan 2022 10:02:56 AM UTC

I have do as below steps in cloudstack management node:

download: systemvmtemplate-4.17.0-kvm.qcow2.bz2
mount second storage node to management node:

mount <IP_ADDRESS>:/image /image

/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /image -f systemvmtemplate-4.17.0-kvm.qcow2.bz2 -h kvm -F

But I think it is failed.  How to upgrade the systemvm template manually?

@DaanHoogland @weizhouapache @slavkap Any idears?

@DaanHoogland @weizhouapache @slavkap The systemvm version is 4.16.1.
root@s-26640-VM:~# cat /etc/cloudstack-release
Cloudstack Release 4.16.1 Mon 31 Jan 2022 10:02:56 AM UTC

----------------------------------------------------------------------------
root@v-26641-VM:~# cat /etc/cloudstack-release
Cloudstack Release 4.16.1 Mon 31 Jan 2022 10:02:56 AM UTC

The cloudstack management node version:
# rpm -qa | grep cloudstack
cloudstack-management-<IP_ADDRESS>-1.el7.x86_64
cloudstack-common-<IP_ADDRESS>-1.el7.x86_64

I have do as below steps in cloudstack management node:

download: systemvmtemplate-4.17.0-kvm.qcow2.bz2
mount second storage node to management node:

mount <IP_ADDRESS>:/image /image

/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /image -f systemvmtemplate-4.17.0-kvm.qcow2.bz2 -h kvm -F

But I think it is failed. How to upgrade the systemvm template manually?

@xuanyuanaosheng
the script downloads the template to secondary storage and overwrite the last systemvm template.
but the references of the template on primary storage pools are not updated, which are save in template_spool_ref table
as a workaround, you can remove the records from template_spool_ref table (delete from template_spool_ref where template_id=xxxxxx). Please backup your database before the change.
After that, cloudstack will copy the systemvm template from secondary storage to primary storage pools when new systemvms/vrs are created.

@DaanHoogland @weizhouapache @slavkap
The Second storage config is nfs://<IP_ADDRESS>/image
# tree ./*
./tmpl
├── 1
│   ├── 3
│   │   ├── afd37f36-3775-49b7-bd1e-1af1c52cfe1c.qcow2
│   │   └── template.properties
│   └── 4
│       └── template.properties
└── 2
    ├── 232
    │   └── template.properties
    ├── 247
    │   ├── 247-2-d800137d-4247-3e93-a3cb-915ba60c921e.iso
    │   └── template.properties
    └── 248
        ├── 4b1ec60e-f0d3-3307-a321-a13152959117.qcow2
        └── template.properties

7 directories, 8 files

# cat tmpl/1/3/template.properties
filename=afd37f36-3775-49b7-bd1e-1af1c52cfe1c.qcow2
description=SystemVM Template
hvm=false
size=453181440
qcow2=true
id=3
public=true
qcow2.filename=afd37f36-3775-49b7-bd1e-1af1c52cfe1c.qcow2
uniquename=routing-3
qcow2.virtualsize=4194304000
virtualsize=4194304000
qcow2.size=453181440

The path is afd37f36-3775-49b7-bd1e-1af1c52cfe1c
and the mysql template_spool_ref related to primary storage is c3098158-93e3-40b1-a3e4-882c0f2a47b5 and dea9fed0-a166-45f3-b4d9-39edc1744ff6
I delete the record using:
# DELETE from template_spool_ref WHERE local_path = 'c3098158-93e3-40b1-a3e4-882c0f2a47b5';
# DELETE from template_spool_ref WHERE local_path = 'dea9fed0-a166-45f3-b4d9-39edc1744ff6';

I delete record in template_spool_ref  and delete the systemvm in cloudstack web ui.
But when the new systemvms started.

There is no  copy the systemvm template from secondary storage to primary storage pools when new systemvms/vrs are created.

@DaanHoogland @weizhouapache @slavkap
The Second storage config is nfs://<IP_ADDRESS>/image
# tree ./*
./tmpl
├── 1
│   ├── 3
│   │   ├── afd37f36-3775-49b7-bd1e-1af1c52cfe1c.qcow2
│   │   └── template.properties
│   └── 4
│       └── template.properties
└── 2
    ├── 232
    │   └── template.properties
    ├── 247
    │   ├── 247-2-d800137d-4247-3e93-a3cb-915ba60c921e.iso
    │   └── template.properties
    └── 248
        ├── 4b1ec60e-f0d3-3307-a321-a13152959117.qcow2
        └── template.properties

7 directories, 8 files

# cat tmpl/1/3/template.properties
filename=afd37f36-3775-49b7-bd1e-1af1c52cfe1c.qcow2
description=SystemVM Template
hvm=false
size=453181440
qcow2=true
id=3
public=true
qcow2.filename=afd37f36-3775-49b7-bd1e-1af1c52cfe1c.qcow2
uniquename=routing-3
qcow2.virtualsize=4194304000
virtualsize=4194304000
qcow2.size=453181440

The path is afd37f36-3775-49b7-bd1e-1af1c52cfe1c
and the mysql template_spool_ref related to primary storage is c3098158-93e3-40b1-a3e4-882c0f2a47b5 and dea9fed0-a166-45f3-b4d9-39edc1744ff6
I delete the record using:
# DELETE from template_spool_ref WHERE local_path = 'c3098158-93e3-40b1-a3e4-882c0f2a47b5';
# DELETE from template_spool_ref WHERE local_path = 'dea9fed0-a166-45f3-b4d9-39edc1744ff6';

I delete record in template_spool_ref and delete the systemvm in cloudstack web ui.
But when the new systemvms restarted. there is no new records in mysql

and the system vm version is still:
root@s-27372-VM:/usr/local/cloud# cat /etc/cloudstack-release
Cloudstack Release 4.16.1 Mon 31 Jan 2022 10:02:56 AM UTC
root@s-27372-VM:/usr/local/cloud# ls /usr/local/cloud/
root@s-27372-VM:/usr/local/cloud#
root@s-27372-VM:/usr/local/cloud# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            640M     0  640M   0% /dev
tmpfs           262M  468K  262M   1% /run
/dev/vda6       3.2G  1.3G  2.0G  40% /
tmpfs           655M     0  655M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
/dev/vda1       366M   45M  322M  13% /boot
tmpfs           131M     0  131M   0% /run/user/0

There is no copy the systemvm template from secondary storage to primary storage pools when new systemvms/vrs are created.

@xuanyuanaosheng
can you check if the vm_template_id of the vm_instance is 3 ?
select vm_template_id from vm_instance where id=27372;

@weizhouapache The sql result is

@weizhouapache The sql result is

and more ?
select pool_id from volumes where instance_id=27372;
select * from template_spool_ref where template_id=3 and pool_id in (select pool_id from volumes where instance_id=27372);

@weizhouapache

The result is empty:

@weizhouapache I restart the cloudstack-agent server and find some new info:
please search afd37f36-3775-49b7-bd1e-1af1c52cfe1c and s-27557-VM

management-server.log

@weizhouapache I restart the cloudstack-agent server and has been restarted repeatedly. I find some new info:

please search afd37f36-3775-49b7-bd1e-1af1c52cfe1c and s-27557-VM key word

management-server.log
I find logs in cloudstack ：
2022-10-24 17:14:06,876 INFO  [c.c.v.VirtualMachineManagerImpl] (secstorage-1:ctx-d8dfa196) (logid:78bc21f1) allocating virtual machine from template:afd37f36-3775-49b7-bd1e-1af1c52cfe1c with
 hostname:s-27557-VM and 3 networks

the file name on secondary storage is c3098158-93e3-40b1-a3e4-882c0f2a47b5.qcow2 in database, but actual file name is afd37f36-3775-49b7-bd1e-1af1c52cfe1c.qcow2
select * from template_store_ref where template_id=3;
you may need to update install_path in the table.

@weizhouapache

@DaanHoogland @weizhouapache @slavkap
It has worked as expected.

Thank you, and I will close this issue.
I think a new featue: Cloud you please add a button to update the system vm template manually ?

@xuanyuanaosheng
I think the cloudstack release note has descibred how to register the new systemvm template.
(cloud-install-sys-tmplt is not recommended for existing platforms).
from 4.17, the systemvm templates have been bundled with the cloudstack-management package so users do not need to register new systemvm template. If needed, new systemvm template can still be registered

register template
change template type to SYSTEM
update router.template.xx in global setting to the new template

@weizhouapache  OK, Thanks