function app run with azurite failed

Which service(blob, file, queue, table) does this issue concern?
blob
Which version of the Azurite was used?
not sure, use VS 2022 17.4.4 extension
Where do you get Azurite? (npm, DockerHub, NuGet, Visual Studio Code Extension)
Visual Studio Extension
What's the Node.js version?
What problem was encountered?
Checked Azurite start successfully

However, when run function app, blob service will refuse connection.
[2023-02-16T03:43:45.570Z] Found C:\Projects\SHSOC.CoreV2\Doe.SHSOC.Function.App\Doe.SHSOC.Function.App.csproj. Using for user secrets file configuration.
[2023-02-16T03:43:54.955Z] There was an error performing a read operation on the Blob Storage Secret Repository.
[2023-02-16T03:43:54.958Z] Azure.Storage.Blobs: Service request failed.
[2023-02-16T03:43:54.959Z] Status: 403 (Forbidden)
[2023-02-16T03:43:54.961Z]
[2023-02-16T03:43:54.962Z] Content:
[2023-02-16T03:43:54.963Z]
local.setting.json as below

Steps to reproduce the issue?
If possible, please provide the debug log using the -d parameter, replacing <pathtodebuglog> with an appropriate path for your OS, or review the instructions for docker containers:
-d "<pathtodebuglog>"

Please be sure to remove any PII or sensitive information before sharing!
The debug log will log raw request headers and bodies, so that we can replay these against Azurite using REST and create tests to validate resolution.
Have you found a mitigation/solution?
Use Azure Storage Account can fix issue, but I want to check how to run it locally

@Bobilala
Would you please share the Azurite debug log for the request failed with 403?
We need the debug log to investigate the failure.

@blueww
May I know how can I get Azurite debug log? I just downloaded Visual Studio log and Function Core tools log, not sure whether is what you need.

@Bobilala
Debug log location can be specified by "--debug" or "-d" when start Azurite.
In the screen shot you shared, you can find the debug log location:

@blueww
I tried running the Azure Function with Azurite again today.
I have attached the debug log from today but did not see any 403 error in the log.
2023-02-20T23:24:18.088Z 	 info: Azurite Blob service is starting on <IP_ADDRESS>:10000
2023-02-20T23:24:18.089Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:24:18.089Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:24:18.125Z 	 info: BlobGCManager:start() Starting BlobGCManager. Set status to Initializing.
2023-02-20T23:24:18.126Z 	 info: BlobGCManager:start() Trigger mark and sweep loop. Set status to Running.
2023-02-20T23:24:18.126Z 	 info: BlobGCManager:markSweepLoop() Start next mark and sweep.
2023-02-20T23:24:18.126Z 	 info: BlobGCManager:markSweep() Get all extents.
2023-02-20T23:24:18.128Z 	 info: BlobGCManager:start() BlobGCManager successfully started.
2023-02-20T23:24:18.137Z 	 info: BlobGCManager:markSweep() Got 0 extents.
2023-02-20T23:24:18.137Z 	 info: BlobGCManager:markSweep() Get referred extents.
2023-02-20T23:24:18.138Z 	 info: BlobGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-20T23:24:18.138Z 	 info: BlobGCManager:markSweepLoop() Mark and sweep finished, taken 12ms.
2023-02-20T23:24:18.138Z 	 info: BlobGCManager:markSweepLoop() Sleep for 600000ms.
2023-02-20T23:24:18.141Z 	 info: Azurite Blob service successfully listens on http://<IP_ADDRESS>:10000
2023-02-20T23:24:18.142Z 	 info: Azurite Queue service is starting on <IP_ADDRESS>:10001
2023-02-20T23:24:18.142Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:24:18.142Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:24:18.173Z 	 info: QueueGCManager:start() Starting QueueGCManager, set status to Initializing
2023-02-20T23:24:18.173Z 	 info: QueueGCManager:start() Trigger mark and sweep loop, set status to Running.
2023-02-20T23:24:18.173Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-20T23:24:18.173Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-20T23:24:18.173Z 	 info: QueueGCManager:start() QueueGCManager successfully started.
2023-02-20T23:24:18.174Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-20T23:24:18.174Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-20T23:24:18.174Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-20T23:24:18.174Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 1ms.
2023-02-20T23:24:18.174Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-20T23:24:18.175Z 	 info: Azurite Queue service successfully listens on http://<IP_ADDRESS>:10001
2023-02-20T23:24:18.176Z 	 info: Azurite Table service is starting on <IP_ADDRESS>:10002
2023-02-20T23:24:18.176Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:24:18.176Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:24:18.189Z 	 info: Azurite Table service successfully listens on http://<IP_ADDRESS>:10002
2023-02-20T23:25:18.098Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:25:18.099Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:25:18.146Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:25:18.146Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:25:18.177Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-20T23:25:18.178Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-20T23:25:18.178Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-20T23:25:18.178Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-20T23:25:18.178Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-20T23:25:18.178Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 0ms.
2023-02-20T23:25:18.178Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-20T23:25:18.178Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:25:18.178Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:26:18.106Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:26:18.107Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:26:18.154Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:26:18.154Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:26:18.186Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-20T23:26:18.186Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-20T23:26:18.187Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-20T23:26:18.187Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-20T23:26:18.187Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-20T23:26:18.187Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 1ms.
2023-02-20T23:26:18.187Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-20T23:26:18.187Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:26:18.187Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:27:18.110Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:27:18.111Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:27:18.157Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:27:18.158Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:27:18.211Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-20T23:27:18.211Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-20T23:27:18.212Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-20T23:27:18.212Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-20T23:27:18.212Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-20T23:27:18.212Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 1ms.
2023-02-20T23:27:18.212Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-20T23:27:18.212Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:27:18.212Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:28:18.115Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:28:18.116Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:28:18.159Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:28:18.159Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:28:18.222Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-20T23:28:18.222Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-20T23:28:18.222Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-20T23:28:18.222Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-20T23:28:18.222Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-20T23:28:18.222Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 0ms.
2023-02-20T23:28:18.222Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-20T23:28:18.222Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:28:18.222Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:29:18.115Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-20T23:29:18.116Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-20T23:29:18.162Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined

@Bobilala
From the Azurite debug log, not request is received by Azurite.
We are not so familiar with function app. Please make sure you are really sending request to Azurite and get 403 error.

@blueww
Hi I tried again to run function app in VS 2022 and I can see Azurite Blob service successfully listens on http://<IP_ADDRESS>:10000/, but I still failed with 403
the exception in code:

the error message in console:
Azure.RequestFailedException
HResult=0x80131500
Message=Service request failed.
Status: 403 (Forbidden)
Content:

403 Forbidden: incorrect proxy service was requested

403 Forbidden: incorrect proxy service was requested
The webserver reported that an error occurred while trying to access the website. Please return to the previous page.

URL
http://<IP_ADDRESS>:10000/devstoreaccount1/azure-webjobs-hosts/locks/pvdsw1cwti0356-1154109527/Doe.SHSOC.Function.App.ScheduledJob.PerformScheduledJobs.ScheduleRun.Listener?comp=lease

Username

Group Name

Headers:
Connection: close
Cache-Control: no-cache
X-XSS-Protection: REDACTED
X-Content-Type-Options: REDACTED
Content-Type: text/html
Content-Length: 5574
Source=Azure.Storage.Blobs
StackTrace:
at Azure.Storage.Blobs.BlobRestClient.d__36.MoveNext()
at Azure.Storage.Blobs.Specialized.BlobLeaseClient.d__26.MoveNext()
at Azure.Storage.Blobs.Specialized.BlobLeaseClient.d__25.MoveNext()
at Microsoft.Azure.WebJobs.Host.BlobLeaseDistributedLockManager.d__15.MoveNext()
at Microsoft.Azure.WebJobs.Host.BlobLeaseDistributedLockManager.d__9.MoveNext()
at Microsoft.Azure.WebJobs.Host.SingletonManager.d__19.MoveNext() in C:\projects\azure-webjobs-sdk-rqm4t\src\Microsoft.Azure.WebJobs.Host\Singleton\SingletonManager.cs:line 113
This exception was originally thrown at this call stack:
[External Code]
Microsoft.Azure.WebJobs.Host.SingletonManager.TryLockAsync(string, string, Microsoft.Azure.WebJobs.SingletonAttribute, System.Threading.CancellationToken, bool) in SingletonManager.cs
the debug.log keep the same as yesterday, I didn't find any 403 in Azurite debug.log. Please help.

@blueww Paste today debug.log
2023-02-22T05:01:51.462Z 	 info: Azurite Blob service is starting on <IP_ADDRESS>:10000
2023-02-22T05:01:51.464Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:01:51.464Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:01:51.508Z 	 info: BlobGCManager:start() Starting BlobGCManager. Set status to Initializing.
2023-02-22T05:01:51.509Z 	 info: BlobGCManager:start() Trigger mark and sweep loop. Set status to Running.
2023-02-22T05:01:51.509Z 	 info: BlobGCManager:markSweepLoop() Start next mark and sweep.
2023-02-22T05:01:51.510Z 	 info: BlobGCManager:markSweep() Get all extents.
2023-02-22T05:01:51.511Z 	 info: BlobGCManager:start() BlobGCManager successfully started.
2023-02-22T05:01:51.522Z 	 info: BlobGCManager:markSweep() Got 0 extents.
2023-02-22T05:01:51.523Z 	 info: BlobGCManager:markSweep() Get referred extents.
2023-02-22T05:01:51.524Z 	 info: BlobGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-22T05:01:51.524Z 	 info: BlobGCManager:markSweepLoop() Mark and sweep finished, taken 15ms.
2023-02-22T05:01:51.525Z 	 info: BlobGCManager:markSweepLoop() Sleep for 600000ms.
2023-02-22T05:01:51.528Z 	 info: Azurite Blob service successfully listens on http://<IP_ADDRESS>:10000
2023-02-22T05:01:51.529Z 	 info: Azurite Queue service is starting on <IP_ADDRESS>:10001
2023-02-22T05:01:51.529Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:01:51.529Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:01:51.551Z 	 info: QueueGCManager:start() Starting QueueGCManager, set status to Initializing
2023-02-22T05:01:51.551Z 	 info: QueueGCManager:start() Trigger mark and sweep loop, set status to Running.
2023-02-22T05:01:51.551Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-22T05:01:51.552Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-22T05:01:51.552Z 	 info: QueueGCManager:start() QueueGCManager successfully started.
2023-02-22T05:01:51.553Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-22T05:01:51.553Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-22T05:01:51.553Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-22T05:01:51.553Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 2ms.
2023-02-22T05:01:51.553Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-22T05:01:51.555Z 	 info: Azurite Queue service successfully listens on http://<IP_ADDRESS>:10001
2023-02-22T05:01:51.556Z 	 info: Azurite Table service is starting on <IP_ADDRESS>:10002
2023-02-22T05:01:51.556Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:01:51.556Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:01:51.573Z 	 info: Azurite Table service successfully listens on http://<IP_ADDRESS>:10002
2023-02-22T05:02:51.492Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:02:51.492Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:02:51.554Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:02:51.554Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:02:51.554Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-22T05:02:51.554Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-22T05:02:51.555Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-22T05:02:51.555Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-22T05:02:51.555Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-22T05:02:51.555Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 1ms.
2023-02-22T05:02:51.555Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-22T05:02:51.586Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:02:51.586Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:03:51.508Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:03:51.509Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:03:51.556Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:03:51.557Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:03:51.557Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-22T05:03:51.557Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-22T05:03:51.558Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-22T05:03:51.558Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-22T05:03:51.558Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-22T05:03:51.558Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 1ms.
2023-02-22T05:03:51.558Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-22T05:03:51.588Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:03:51.589Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:04:51.516Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:04:51.516Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:04:51.564Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:04:51.564Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:04:51.565Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-22T05:04:51.565Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-22T05:04:51.565Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-22T05:04:51.565Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-22T05:04:51.565Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-22T05:04:51.565Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 0ms.
2023-02-22T05:04:51.565Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-22T05:04:51.596Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:04:51.596Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:05:51.517Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:05:51.517Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:05:51.579Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:05:51.579Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:05:51.580Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-22T05:05:51.580Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-22T05:05:51.580Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-22T05:05:51.580Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-22T05:05:51.581Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-22T05:05:51.581Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 1ms.
2023-02-22T05:05:51.581Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-22T05:05:51.610Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:05:51.611Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:06:51.519Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:06:51.519Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:06:51.582Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:06:51.582Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:06:51.582Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-22T05:06:51.582Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-22T05:06:51.583Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-22T05:06:51.584Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-22T05:06:51.584Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-22T05:06:51.584Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 2ms.
2023-02-22T05:06:51.584Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-22T05:06:51.629Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:06:51.629Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:07:51.535Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:07:51.535Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:07:51.582Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:07:51.583Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.
2023-02-22T05:07:51.598Z 	 info: QueueGCManager:markSweepLoop() Start new mark and sweep.
2023-02-22T05:07:51.599Z 	 info: QueueGCManger:markSweep() Get all extents.
2023-02-22T05:07:51.599Z 	 info: QueueGCManager:marksweep() Get 0 extents.
2023-02-22T05:07:51.599Z 	 info: QueueGCManager:markSweep() Get referred extents, then remove from allExtents.
2023-02-22T05:07:51.599Z 	 info: QueueGCManager:markSweep() Got referred extents, unreferenced extents count is 0.
2023-02-22T05:07:51.599Z 	 info: QueueGCManager:markSweepLoop() Mark and sweep finished, take 0ms.
2023-02-22T05:07:51.599Z 	 info: QueueGCManager:markSweepLoop() Sleep for 60000
2023-02-22T05:07:51.631Z 	 info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
2023-02-22T05:07:51.631Z 	 info: AccountDataStore:init() Fallback to default emulator account devstoreaccount1.

@Bobilala
Thanks for the update!
However, from the Azurite debug log, still not request is received.
And the 403 error is "403 Forbidden: incorrect proxy service was requested".
This is not the error can be reported from Azurite or storage server.
Have configure some proxy locally that make the request is actually not send to Azurite?

@Bobilala
I will close this issue as not hear from you for a long time, and it looks a client-side issue.
Feel free to contact us again if need any further assistance on Azurite.

Hello, I've got the same issue recently with Azurite. When trying to start the Azurite Blob service it didn't succeeded and I've got the same error:
info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined
I was able to resolve my issue by simply deleting the whole Azurite folder under Temp: C:\Users<User>\AppData\Local\Temp\Azurite.

Hello, I've got the same issue recently with Azurite. When trying to start the Azurite Blob service it didn't succeeded and I've got the same error: info: AccountDataStore:init() Refresh accounts from environment variable AZURITE_ACCOUNTS with value undefined I was able to resolve my issue by simply deleting the whole Azurite folder under Temp: C:\Users\AppData\Local\Temp\Azurite.

Had this same issue with running Azure Function App with VS 2022 Version 17.9.3.
Deleted below folder and started working again
C:\Users\deepesh.kapadia\AppData\Local\.vstools\azurite


Replica sorting code

Adds a class to sort replicas with databases from MaxMind (like what the Rucio servers are supposed to do).

We agreed to move this to the Rucio DID finder so I will close this PR


cannot use cli with SSO accounts

Preflight checklist

[X] I could not find a solution in the existing issues, docs, nor discussions.
[X] I agree to follow this project's Code of Conduct.
[X] I have read and am following this repository's Contribution Guidelines.
[X] This issue affects my Ory Network project.
[X] I have joined the Ory Community Slack.
[X] I am signed up to the Ory Security Patch Newsletter.

Describe the bug
I signed up for Ory Network using Google sign-in. I cannot use ory auth, as it asks for password.
Reproducing the bug
Make an Ory account using Google sign-in. Try to use ory auth
Relevant log output
No response
Relevant configuration
No response
Version
Version:    v0.1.48
On which operating system are you observing this issue?
macOS
In which environment are you deploying?
Other
Additional Context
No response

As a workaround you can log into the Ory Console and create a password to be used with the CLI.
Please have a look at the documentation: https://www.ory.sh/docs/guides/cli/cli-basics#accounts-with-social-sign-in

This is resolved now as the CLI now uses oauth2 to sign in via the browser!


(ui-frontend-implementation): Adding Copy-to-clipboard button in the Install pop-up

(ui-frontend-implementation): Adding Copy-to-clipboard button in the Install pop-up
What happens:

Adding Copy-to-clipboard button in the modal code of crdlink in Install pop-up.

Anything else we need to know?:

Issue related to Repository :https://github.com/litmuschaos/charthub.litmuschaos.io)

Hi @aditya109, I need a bit more help here. Where can I find the Install pop-up?

Hi @agarwalrounak In regards to your doubt.. If you browse to hub.litmuschaos.io, and click any of the charts, on your right hand side column you have an install button. It is the one which is referred to here.

Hi @aditya109 I created a PR here that I think should work for you.

Hi @PatOConnor43, great work on this issue. Will review your PR.
It would be great if you could just star this repository, it would be great.
The link is this:
https://github.com/litmuschaos/litmus

@PatOConnor43 I have reviewed your PR. I would like you
to make the UI look like this:

The button works just like but just requires a tinge of UI change


ModuleNotFoundError: No module named 'MultiScaleDeformableAttention'

python3 projects/IDOL/train_net.py --config-file projects/IDOL/configs/ytvis19_swinL.yaml --num-gpus 2

Traceback (most recent call last):
File "projects/IDOL/train_net.py", line 26, in
from detectron2.projects.idol import add_idol_config, build_detection_train_loader, build_detection_test_loader
File "/home/user/PycharmProjects/VNext/projects/IDOL/idol/init.py", line 2, in
from .idol import IDOL
File "/home/user/PycharmProjects/VNext/projects/IDOL/idol/idol.py", line 17, in
from .models.deformable_detr import DeformableDETR, SetCriterion
File "/home/user/PycharmProjects/VNext/projects/IDOL/idol/models/deformable_detr    from .deformable_transformer import build_deforamble_transformer
File "/home/user/PycharmProjects/VNext/projects/IDOL/idol/models/deformable_transformer.py", line 25, in
from .ops.modules import MSDeformAttn
File "/home/user/PycharmProjects/VNext/projects/IDOL/idol/models/ops/modules/init.py", line 9, in
from .ms_deform_attn import MSDeformAttn
File "/home/user/PycharmProjects/VNext/projects/IDOL/idol/models/ops/modules/ms_deform_attn.py", line 21, in
from ..functions import MSDeformAttnFunction
File "/home/user/PycharmProjects/VNext/projects/IDOL/idol/models/ops/functions/init.py", line 9, in
from .ms_deform_attn_func import MSDeformAttnFunction
File "/home/user/PycharmProjects/VNext/projects/IDOL/idol/models/ops/functions/ms_deform_attn_func.py", line 18, in
import MultiScaleDeformableAttention as MSDA
ModuleNotFoundError: No module named 'MultiScaleDeformableAttention'

i meet same problems too, how do you solve it ?


Update description to emphasize that bundled version exists

I'm working on a software that can't expect user to install hwlock library and the fact that hwlocality has bundled (it is typically called vendored though) version is a big win.
However, I noticed it much later because the first line in prerequisites is:

You will need a system with hwloc >=2.0.0 and associated development packages installed.

I think it should mention right there something like "or optionally vendored version can be used".
Similarly https://crates.io/crates/hwlocality-sys mentions bindings, but not the fact that it has vendored option too.
Without reading cargo features and/or source code it is not possible to discover that, while for me the fact that I can statically link to a recent version of the library is a major benefit of the library comparing to the alternatives.

Indeed, I was wondering whether this feature was worth its code complexity cost back when @uglyoldbob submitted it, but since then I've needed to use hwlocality on CentOS7 (which is sadly popular with my sysadmins), and the bundling feature has been a lifesaver there. So in the end I'm glad we did what it took to make it work.
I'm not opposed to renaming it to "vendor-hwloc" or something if you think that would be more intuitive to users, and I'll tweak the docs to make its existence more obvious. Thanks for your feedback!

openssl crate and I believe a few others literally call the feature vendored: https://docs.rs/openssl/0.10.62/openssl/#vendored


Failing test

Notebook API tests
change cell language:
Error: Timeout of 60000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (D:\a\1\s\extensions\vscode-api-tests\out\singlefolder-tests\notebook.test.js)
at listOnTimeout (internal/timers.js:549:17)
at processTimers (internal/timers.js:492:7)

https://monacotools.visualstudio.com/Monaco/_build/results?buildId=107717&view=logs&j=ca7250c6-0e2d-5a52-28a2-5c6aea023c92&t=ecafce82-b377-508c-0af4-b6b1aa68a502

Skipped the failing test temporarily. Please fix it and enable.

This is no longer needed since now you can only change language through TextDocument.

aaf6287ecccebda0eba6f78c86670aeb3d8dfe22


CatalogCategoryTree 502 Bad Gateway

Hello Guys,
When I make a call to the CatalogCategoryTree I get a 502 Bad Gateway error see Screenshot
I have already replace the API and API2 files to check if there is a error in it.
Thanks for the support!

Hi,
Can you suggest a PR to fix it ?
Thanks


Can't run plugins from a subdirectory

Looks like the plugin name is being treated as an import path.
$ mkdir foo/src/bar
$ cd foo/src
$ gb env
GB_PROJECT_DIR=/Users/rb/go/foo
$ cd bar
$ gb env
FATAL command "env" failed: plugin: unable to locate "gb-bar/env": exec: "gb-bar/env": stat gb-bar/env: no such file or directory

Probably because gb env doesn't take any arguments, I'll fix this.
On Sun, May 10, 2015 at 6:03 AM, Ryan Brown<EMAIL_ADDRESS>wrote:

Looks like the plugin name is being treated as an import path.
$ mkdir foo/src/bar
$ cd foo/src
$ gb env
GB_PROJECT_DIR=/Users/rb/go/foo
$ cd bar
$ gb env
FATAL command "env" failed: plugin: unable to locate "gb-bar/env": exec: "gb-bar/env": stat gb-bar/env: no such file or directory
—
Reply to this email directly or view it on GitHub
https://github.com/constabulary/gb/issues/60.


How I Create dynamically from MutableList and ArrayListOff

I want to make data form and get data ID from local sqlite android database.
I Have Followed Every Tutorial in this Library Guide.
now I want to make Dynamic Fragment. And calculate according to the variable array for repetition.
If Library uses View pager can I make it dynamic?

No Response


Change content-type for Packages and Release files to text/plain

This will solve the issue #78 . I saw similar change for content-types were done previously in PR #28, not sure when it got lost. Also I have used UTF-8 instead us-ascii as ASCII is a sub-set of UTF-8 anyway, plus it might be that maintainer name can include some special characters (ą, ł, ę, etc.). But if I am missing something here I might set it to ASCII. I have tested in on S3 bucket and works as expected (files display in the browser instead of being downloaded).

I dug deeper to discover this: https://github.com/krobertson/deb-s3/commit/6c825e9059272afae0dd3199561607799ba2389f not sure what was the UTF-8 issue then. If you remember and can check/confirm if my PR does not introduce it back it would be great.

Thanks!


Button to copy s3 urls to clipboard

See https://forum.image.sc/t/ome-zarr-conversion-tool/62234/10?u=will-moore
As requested, the NGFF blog posts now have a (Copy) button which copies the S3 endpoint to clipboard.

The text changes from "Copy" to "Copied!" for a second to indicate that it worked.
To test, click "Copy" button from each of the 3 pages and paste somewhere to check it.

Great! Looks good to me!

Works on firefox. Chrome & Safari don't. (Can be viewed under https://snoopycrimecop.github.io/www.openmicroscopy.org/2020/11/04/zarr-data.html)


doc: add circuit-breaker example for cilium service mesh

Ref #27525

@youngnick  @learnitall  could you review this pr?

Hey @teyuchang, my apologies for the delay in getting eyes on this. I'll take a look first thing tomorrow.

/test

@tanjunchen looks like this is almost ready to merge. The last hold up is that not all conversations have been resolved. Please take a look at the remaining ones and resolve them if appropriate, then ping me for the merge.

@tanjunchen looks like this is almost ready to merge. The last hold up is that not all conversations have been resolved. Please take a look at the remaining ones and resolve them if appropriate, then ping me for the merge.

done. @lmb

/test

/ci-gingko


Create greetings.yml

This PR adds a workflow to respond to issues and PR from first-time contributors. The message content used can be updated and I'm open to ideas for iteration.

LGTM!


Refactor pgbench tests.

Remove batch_others/test_pgbench.py. It was a quick check that pgbench
works, without actually recording any performance numbers, but that
doesn't seem very interesting anymore. Remove it to avoid confusing it
with the actual pgbench benchmarks

Run pgbench with "-n" and "-S" options, for two different workloads:
simple-updates, and SELECT-only. Previously, we would only run it with
the "default" TPCB-like workload. That's more or less the same as the
simple-update (-n) workload, but I think the simple-upload workload
is more relevant for testing storage performance. The SELECT-only
workload is a new thing to measure.

Merge test_perf_pgbench.py and test_perf_pgbench_remote.py. I added
a new "remote" implementation of the PgCompare class, which allows
running the same tests against an already-running Postgres instance.

Make the PgBenchRunResult.parse_from_output function more
flexible. pgbench can print different lines depending on the
command-line options, but the parsing function expected a particular
set of lines.

1. This way test results wont be compatible with already collected results. Probably not a big deal, but anyway. This will create some noise in grafana. Maybe just delete old results for this test.

Yeah, I think that's fine.

2. Lets record hardcoded parameters for pgbench with `MetricValue.TEST_PARAM` because otherwise it would be impossible to distinguish test runs with different params. Parameters can be changed in the future, or we bring back parametrized runs

Ok.

3. Previous benchmarking job was running for around 40 minutes and served as some sort of a stress test for staging. New configuration substitutes the old one with only one test with a 45 seconds workload duration. So IMO it is better to increase duration here

Huh, really? The parameters in .github/workflows/benchmarking.yml were:
        TEST_PG_BENCH_TRANSACTIONS_MATRIX: "5000,10000,20000"
        TEST_PG_BENCH_SCALES_MATRIX: "10,15"

20000 transactions would only run for a few seconds. What am I missing?

@hlinnaka

20000 transactions would only run for a few seconds. What am I missing?

these are the latest successful runs:

some around 40 minutes around 2 month ago:

link to a random 40+ one: https://github.com/neondatabase/neon/actions/runs/1857351678
So I'm plus one to bring back the matrix. We're close to WAL truncation support on safekeepers, when it is done we can really increase these numbers without human powered GC :)

I'm +1 on having longer tests; I didn't realize that we were running longer tests already.
This raises the question: Why are the pgbench tests so slow on staging? We're only getting about 33 tps. Is the pgbench client in a different region than the server?
I don't think the old parameters made much sense, so there's not much point in trying to run the exact same tests as before. So let's think a bit what we would actually want to run on staging. I propose:

Scales: 10 and 100. The old scales, 10 and 15 were very close to each other, you're unlikely to be much difference between those.
Instead of a fixed number of transactions, let's run the test for a fixed duration. For now, let's aim for around 30 minutes runtime, same ballpark as with the old tests.
Use multiple connections to stress the server a little harder.

I updated this PR with that proposal. What do you think?

Looks good for me. Please check that remote test works well against staging. Through local run or via benchmarking job. To run it for your branch you can uncomment the trigger here https://github.com/neondatabase/neon/blob/main/.github/workflows/benchmarking.yml#L4

I just tried that, but it didn't work:
E       psycopg2.OperationalError: connection to server at "start.stage.zenith.tech" (<IP_ADDRESS>), port 5432 failed: ERROR:  Console responded with an HTTP status: 401 Unauthorized

Any ideas?

Ok I've now refactored the code around connection options. It's in a separate commit as part of this PR, "Refactor connection option handling in python tests". Please take another look.

Ok, pushed. Thanks for the review!


Update step-5-establish-trust-between-priv-corp-forests.md

command should use  /quarantine:NO to disable SID filtering
Command is in fact documented correct in step "Deploy MIM PAM with Windows Server 2016"

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

I see this is still pending
Let me be more specific in identify where the issue is:
https://docs.microsoft.com/en-us/microsoft-identity-manager/pam/step-5-establish-trust-between-priv-corp-forests
"Give forests read access to Active Directory"
Step: 10.Use netdom to ensure SID history is enabled and SID filtering is disabled. Type:
netdom trust contoso.local /quarantine:NO /domain priv.contoso.local
netdom trust /enablesidhistory:yes /domain priv.contoso.local
Documentation is missing the :NO to disable SID filtering
Command is in fact documented correct in step "Deploy MIM PAM with Windows Server 2016"

Thank you for your feedback. I have made updates based on this.

@mistermik : Thanks for your contribution! The author, @billmath, has been notified to review your proposed change.

These changes were already pulled in.
#please-close


No Joy following README

ran the pip install uiwiz and copied the sample code, i get the following
Traceback (most recent call last):
File "/Users/mikeh/devtemp/_python_GUI/24-11-UIWiz/main.py", line 8, in
async def home_page(request: Request):
^^^^^^^
NameError: name 'Request' is not defined

@rapidarchitect Ah sorry for that.
I have updated the README.
Thanks for the feedback!


Make Oso work with Google Firebase

This is an external tracking issue to:

Gauge interest from the community for this feature
Learn about what you'd want to see out of it if we worked on it.

So please:

Upvote the issue if it's important to you, and
Comment with any relevant info on your requirements use cases, etc.

Thanks!
PS We do all our internal engineering issue tracking separately in Notion, so you won't necessarily see regular updates to the project status here even once we begin work.

w00t! I enthusiastically upvote! Thanks for creating this.
Our goal is to make our firestore.rules a lot more manageable. It's gotten unwieldy before even adding many roles.
Requirements for our project:

Firestore support. We aren't using RealTime DB, though support for that would also be a plus.
Continue to use firestore.rules, for performance instead of forcing all access through Cloud Functions

Wish:

Use Oso REPL with the Firebase local emulator to develop rules before deployment.

Hope I'm ok to give this a bump and ask if it's something in the roadmap?
We're also on the brink of adding a lot more complexity to our firestore.rules doc and it seems like Oso would be a better solution 🙏

Hey @Jeddf, what would you want/expect to see out of a Firebase integration?
FWIW I believe we have folks using Firebase Authentication with Oso Cloud


Automated cherry pick of #6205: Do not try to update type of Secret in selfSignedCertProvider

Cherry pick of #6205 on release-1.13.
#6205: Do not try to update type of Secret in selfSignedCertProvider
For details on the cherry pick process, see the cherry pick requests page.

/skip-all


Do Fantasy Consoles with WASM support belong here?

Sorry if this is in the wrong place!
Some fantasy consoles support WASM, such as wasm4 and tic-80 as their game code / scripting language. These kinda function like engines or frameworks in which they provide apis to handle input, rendering, audio, etc. Rust has great support for WebAssembly both in compiler and documentation support.
Should these projects also be added to the list? If so, should there be another category created for them, or would they fall under game engines, or something else? I'd prefer if they existed in their own category as developing for them often is a unique experience in itself.
Shameless plug: I'm the developer of the Gamercade fantasy console and currently all of my example projects are written in Rust. Would love to get more people into Fantasy Console Game development!

We already have godot-rust and other bindings to non-Rust engines here, so I personally think that projects like Gamercade are there too, at least if they have a convenient and documented way of integrating with Rust.

What about maybe even linking to awesome-wasm (or other WASM-related aggregator)? I say this having literally been working on a WASM game in Rust and not knowing any of this stuff existed 😅 Maybe it's just my ignorance tho, fairly new to WASM.

I've only tried wasm4, and there are great docs some bootstrap-type tools to get started with various languages, including Rust.
Gamercade's docs are pretty rough at the moment, but I can confirm that it works with Rust as both the app itself and all of my test games are done via Rust and the wasm32-unknown-unknown target.
I'll add some docs about how to use Rust specifically, and make the PRs for it if it sounds good for you all. :)


Playlist

First of all, i think this is an amazing aplication, but when i try to play a playlist it just does not work,
im using http://www.youtube.com/watch?v=hJCgq7nViP4&list=UUSXm6c-n6lsjtyjvdD0bFVw
that playlist but only the first song plays.

This is a real neat script, but I wish you could get the playlist feature working because that is what I really need.   Any chance on tweaking this code out to work with new playlists, or is this project dead?  Thanks!

@alleyvandal
Looking at the rendering on my example page, it looks like YouTube no longer allows the usage of the old video player - which means that there's pretty much no use to this project anymore.
The player should work with any real playlist (even new ones) - just not with fake ones like "uploaded by"


Upgrade to Scala 2.13.1

I tried to open a PR for this but got stuck on a sbt-pgp download error. This error also occurs if I clone and sbt build with no changes.
[error] (coursierResolutions) coursier.error.ResolutionError$CantDownloadModule: Error downloading com.jsuereth:sbt-pgp;sbtVersion=1.0;scalaVersion=2.12:2.0.0
[error]   Not found
[error]   not found: ~/.ivy2/local/com.jsuereth/sbt-pgp/scala_2.12/sbt_1.0/2.0.0/ivys/ivy.xml
[error]   not found: https://repo1.maven.org/maven2/com/jsuereth/sbt-pgp_2.12_1.0/2.0.0/sbt-pgp-2.0.0.pom
[error]   download error: Caught javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target (sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target) while downloading https://repo.typesafe.com/typesafe/ivy-releases/com.jsuereth/sbt-pgp/scala_2.12/sbt_1.0/2.0.0/ivys/ivy.xml

hi @ryanberckmans, I tried to clone, add scala 2.13.1 version and sbt  +publishLocal without error.
Try to check your network configuration, do you use an http proxy?

Hi @gekomad. I don't use an http proxy. Have hit this error before in other projects. It's probably related to the SSL certs on my macbook pro. Glad it worked for you.
Cool library!


Feature/name refactor

new trimmer.rs used byt chunked with left, right align implemented.
trimmer.rs could be used by non chunked

now it compiles even with rayon


Request new iRODS VMs

Need an iRODS icat VM for prod and dev. The target for MyHPOM is AWS which may not be suitable for replicas. The /projects NetApp has a two week backup span, which is OK for now.

Created and verified, although /var is being increased to 14G to match data.hydroshare.org (see https://help.renci.org/SelfService/Display.html?id=404)


Tests for voltage dependency function/procedures.

Adds tests the demonstrates how the voltage v behaves when passed to functions or procedures.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (master@ada65df). Click here to learn what that means.

Additional details and impacted files
@@            Coverage Diff            @@
##             master    #1253   +/-   ##
=========================================
  Coverage          ?   86.40%
=========================================
  Files             ?      176
  Lines             ?    13213
  Branches          ?        0
=========================================
  Hits              ?    11417
  Misses            ?     1796
  Partials          ?        0

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


updated

@ashiscs will you update this PR with a more descriptive title and reference the issue number that it addresses?

we don't actually, the lint changes I brought in will circumvent it.


[Karma Conf] Edge case of repeated tests

Running tests in record mode in several terminals at the same time seems to be causing Karma to repeat the execution of individual tests several times. I was able to spot up to 5 repetitions of a single test. I haven't been able to test this further. I only know for sure that this doesn't happen if tests are executed on record mode in a single terminal, for a single project.

I was able to reproduce it by recording the keyvault-secret tests, all at once, in one terminal. The tests started to repeat.

My theories
Based on the current info, here are my theories

I'm inclining to think that it is karma and not the recorder which means I bet this repros in live mode as well.

[ ] TO DO - Verify if this repros in "live" mode, if it does, then it is confirmed that this is Karma's behavior

I'm also thinking that this has to do with using the same port in the karma.conf

[ ] TO DO - Verify that this doesn't repro if you use different ports in different packages

Are we sure we don't see the issue when running tests of a single package?

[ ] TO DO - See if it repros with a single package

This repetition is caused by karma and not the recorder, hence updating the title appropriately

@HarshaNalluru while that is true, if this gets completely disassociated from the recorder, it will be harder to track it. We mainly see this while running recorded tests.

Clsoing since it is not relevant anymore


Puppetboard failing on querying environments

Puppetboard dies with HTTP Error 500 when calling https://puppetboard.local/puppetboard,
apparantly (judging from the backtrace) when querying environments from the puppetDB.
OS:
CentOS Linux release 7.3.1611 (Core)
SELinux has been ruled out, set to permissive.
Querying puppetDB:
sudo -u puppetboard curl --cert /etc/puppetlabs/puppet/ssl/certs/puppetboard.local.crt --key /etc/puppetlabs/puppet/ssl/private_keys/puppetboard.local.pem --cacert /etc/puppetlabs/puppet/ssl/certs/puppetboard.local.crt -vvv -X GET "https://puppetdb.local:8081/status/v1/services/puppetdb-status"
* About to connect() to puppetdb.local port 8081 (#0)
*   Trying xxxx...
* Connected to puppetdb.local (xxxx) port 8081 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/puppetlabs/puppet/ssl/certs/puppetboard.local.crt
  CApath: none
* NSS: client certificate from file
*       subject: CN=puppetboard.local
*       start date: Apr 11 20:05:52 2017 GMT
*       expire date: Apr 11 20:05:52 2022 GMT
*       common name: puppetboard.local
*       issuer: CN=Puppet CA: puzo.local
* SSL connection using TLS_RSA_WITH_AES_256_CBC_SHA
* Server certificate:
*       subject: CN=puppetdb.local
*       start date: Apr 06 17:28:55 2017 GMT
*       expire date: Apr 06 17:28:55 2022 GMT
*       common name: puppetdb.local
*       issuer: CN=Puppet CA: puzo.local
> GET /status/v1/services/puppetdb-status HTTP/1.1
> User-Agent: curl/7.29.0
> Host: puppetdb.local:8081
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Thu, 13 Apr 2017 07:33:23 GMT
< Content-Type: application/json; charset=utf-8
< Content-Length: 238
< Server: Jetty(9.2.z-SNAPSHOT)
<
* Connection #0 to host puppetdb.local left intact
{"service_version":"4.4.0","service_status_version":1,"detail_level":"info","state":"running","status":{"maintenance_mode?":false,"queue_depth":0,"read_db_up?":true,"write_db_up?":true},"active_alerts":[],"service_name":"puppetdb-status"}

Querying environments:
sudo -u puppetboard curl --cert /etc/puppetlabs/puppet/ssl/certs/puppetboard.local.crt --key /etc/puppetlabs/puppet/ssl/private_keys/puppetboard.local.pem --cacert /etc/puppetlabs/puppet/ssl/certs/puppetboard.local.crt -X GET "https://puppetdb.local:8081/pdb/query/v4/environments"

[{"name":"production"},{"name":"test"}]

Excerpt from httpd logs:
[Thu Apr 13 09:50:59.697668 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348] [2017-04-13 09:50:59,697] ERROR in app: Exception on /puppetboard/ [GET]
[Thu Apr 13 09:50:59.697699 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348] Traceback (most recent call last):
[Thu Apr 13 09:50:59.697704 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/flask/app.py", line 1982, in wsgi_app
[Thu Apr 13 09:50:59.697711 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     response = self.full_dispatch_request()
[Thu Apr 13 09:50:59.697714 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/flask/app.py", line 1614, in full_dispatch_request
[Thu Apr 13 09:50:59.697717 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     rv = self.handle_user_exception(e)
[Thu Apr 13 09:50:59.697720 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/flask/app.py", line 1512, in handle_user_exception
[Thu Apr 13 09:50:59.697724 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     return self.handle_http_exception(e)
[Thu Apr 13 09:50:59.697726 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/flask/app.py", line 1471, in handle_http_exception
[Thu Apr 13 09:50:59.697730 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     return handler(e)
[Thu Apr 13 09:50:59.697733 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/puppetboard/puppetboard/app.py", line 150, in server_error
[Thu Apr 13 09:50:59.697736 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     envs = environments()
[Thu Apr 13 09:50:59.697739 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/puppetboard/puppetboard/app.py", line 98, in environments
[Thu Apr 13 09:50:59.697742 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     envs = get_or_abort(puppetdb.environments)
[Thu Apr 13 09:50:59.697745 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/puppetboard/puppetboard/utils.py", line 96, in get_or_abort
[Thu Apr 13 09:50:59.697748 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     abort(500)
[Thu Apr 13 09:50:59.697751 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/werkzeug/exceptions.py", line 707, in abort
[Thu Apr 13 09:50:59.697754 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     return _aborter(status, *args, **kwargs)
[Thu Apr 13 09:50:59.697757 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/werkzeug/exceptions.py", line 687, in __call__
[Thu Apr 13 09:50:59.697760 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     raise self.mapping[code](*args, **kwargs)
[Thu Apr 13 09:50:59.697763 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348] InternalServerError: 500 Internal Server Error: The server encountered an internal error and was unable to complete your request.  Either the server is overloaded or there is an error in the application.
[Thu Apr 13 09:50:59.713264 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348] mod_wsgi (pid=27611): Exception occurred processing WSGI script '/srv/puppetboard/puppetboard/wsgi.py'.
[Thu Apr 13 09:50:59.713296 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348] Traceback (most recent call last):
[Thu Apr 13 09:50:59.713310 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/flask/app.py", line 1997, in __call__
[Thu Apr 13 09:50:59.713346 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     return self.wsgi_app(environ, start_response)
[Thu Apr 13 09:50:59.713365 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/flask/app.py", line 1985, in wsgi_app
[Thu Apr 13 09:50:59.713396 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     response = self.handle_exception(e)
[Thu Apr 13 09:50:59.713406 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/flask/app.py", line 1547, in handle_exception
[Thu Apr 13 09:50:59.713418 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     return self.finalize_request(handler(e), from_error_handler=True)
[Thu Apr 13 09:50:59.713426 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/puppetboard/puppetboard/app.py", line 150, in server_error
[Thu Apr 13 09:50:59.713440 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     envs = environments()
[Thu Apr 13 09:50:59.713447 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/puppetboard/puppetboard/app.py", line 98, in environments
[Thu Apr 13 09:50:59.713460 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     envs = get_or_abort(puppetdb.environments)
[Thu Apr 13 09:50:59.713467 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/puppetboard/puppetboard/utils.py", line 96, in get_or_abort
[Thu Apr 13 09:50:59.713478 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     abort(500)
[Thu Apr 13 09:50:59.713485 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/werkzeug/exceptions.py", line 707, in abort
[Thu Apr 13 09:50:59.713503 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     return _aborter(status, *args, **kwargs)
[Thu Apr 13 09:50:59.713510 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]   File "/srv/puppetboard/virtenv-puppetboard/lib/python2.7/site-packages/werkzeug/exceptions.py", line 687, in __call__
[Thu Apr 13 09:50:59.713521 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348]     raise self.mapping[code](*args, **kwargs)
[Thu Apr 13 09:50:59.713554 2017] [:error] [pid 27611:tid<PHONE_NUMBER>24896] [remote xxxx:56348] InternalServerError: 500 Internal Server Error: The server encountered an internal error and was unable to complete your request.  Either the server is overloaded or there is an error in the application.

What's the settings look like for your puppetboard?

# cat /srv/puppetboard/puppetboard/settings.py
DEV_LISTEN_HOST = '<IP_ADDRESS>'
DEV_LISTEN_PORT = 5000
LOGLEVEL = 'info'
PUPPETDB_HOST = 'puppetdb.local'
PUPPETDB_PORT = 8081
PUPPETDB_SSL_VERIFY = True
PUPPETDB_KEY = '/etc/puppetlabs/puppet/ssl/private_keys/puppetboard.local.pem'
PUPPETDB_CERT = '/etc/puppetlabs/puppet/ssl/certs/puppetboard.local.pem'
PUPPETDB_TIMEOUT = 20
UNRESPONSIVE_HOURS = 3
ENABLE_CATALOG = False
ENABLE_QUERY = True
LOCALISE_TIMESTAMP = True
OFFLINE_MODE = True
PUPPETDB_EXPERIMENTAL = False
DEFAULT_ENVIRONMENT = 'production'
REPORTS_COUNT = 10

Is puppet board running as root?  It may not have access to /etc/puppetlabs/puppet/ssl/private_keys/puppetboard.local.pem

I've adjusted the permissions manually with chown for testing, I ran the curl command (see above) with sudo to check if it works.

From the doc, PUPPETDB_SSL_VERIFY = True is mis leading:
Settings should look like:
PUPPETDB_SSL_VERIFY = /path/to/ca/keyfile.pem
PUPPETDB_KEY = /path/to/private/keyfile.pem
PUPPETDB_CERT = /path/to/public/keyfile.crt

Ok - I had merged cert and CA cert into one file (with .crt suffix).
Reverting the the cert-only file with .pem suffix, referencing /etc/puppetlabs/puppet/ssl/certs/ca.pem for the CA cert, and restarting httpd doesn't make a difference.

nevermind,
looks good now! Thanks!

No problem.


Wildcard versions in composer.json

Are you open to using >X.Y.Z, <X.Y+1 in composer.json rather than exact versions.  I can provide a PR if the answer is yes.  This would make dependency resolution easier when using OroCRM with other things.

This will be a problem. We had issues with 3rd party bundles upgrades in >X.Y.Z, <X.Y+1 range before and this is the reason why we locked to exact version.


HTTP Error 407: Proxy Authentication Required

I also have this problem, Mac OS X 10.12 "Sierra". It's picking up on my HTTP proxy but not on the credentials.


Update ot-pre-configured-appliances.md

removed the word capacity

@arielsaghiv : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

#sign-off

#sign-off

#sign-off


Mutually exclusive guard constraints and 'never'

Applying two mutually exclusive guard constraints doesn't lead to 'never' type in the following case:
function ololo() {
    let stringOrNumber: string | number = 3 > 5 ? "a" : 7;

    if (typeof stringOrNumber === "number") {
        if (typeof stringOrNumber !== "number") {
            stringOrNumber; // shouldn't this be 'never'?
        }
    }

Seems that it should.

Intellisense (TS 2.0.0) tells the innermost stringOrNumber is a string.

I mean you could argue that, but at the same time when the code is illogical and unreachable at run-time, why would you expect the control flow to work?  What benefit would there be in coding for that?

This is working as intended as per #8548. There are a number of subtle issues interacting here and we haven't come up with a better place to land yet.


Add confirmationsRequired for not executed txs

Closes #1148
Start returning confirmationsRequired for transactions that are not executed (using the last available Safe status). Previously null was returned.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 87.907%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
6266

Relevant Lines:
7128

💛  - Coveralls

@fmrsabino This is something pending for a long time and I realised there was a simple way to achieve that. Would it break something on the cgw?

@fmrsabino This is something pending for a long time and I realised there was a simple way to achieve that. Would it break something on the cgw?

Should be good on the API level: https://github.com/safe-global/safe-client-gateway/blob/cd7aceb2035f1431b0a4221e3a0b0cabb010e0a1/src/common/models/backend/transactions.rs#L54
We consider this to be optional.

Thanks @fmrsabino , then we are good to merge


Make sure you have nested all HTML elements in .container-fluid.

Challenge Use Responsive Design with Bootstrap Fluid Containers has an issue.
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" type="text/css">

CatPhotoApp

Click here for cat photos.

Things cats love:

cat nip

laser pointers

lasagna

Top 3 things cats hate:

flea treatment

thunder

other cats

<form action="/submit-cat-photo">
  <input type="radio" name="indoor-outdoor"> Indoor
  <input type="radio" name="indoor-outdoor"> Outdoor
  <input type="checkbox" name="personality"> Loving
  <input type="checkbox" name="personality"> Lazy
  <input type="checkbox" name="personality"> Crazy
  <input type="text" placeholder="cat photo URL" required>
  <button type="submit">Submit</button>
</form>

Thank you for reporting this issue.
This is a standard message notifying you that this issue seems to be a request for help. Instead of asking for help here, please click the "Help" button on the challenge on freeCodeCamp, which will take you to the help chatroom for that specific challenge. You can also view our full list of official chatrooms.
If you think I'm wrong in closing this issue, please reopen it and add further clarification. Thank you, and happy coding.

@ndyarborough thanks for the issue but if you get stuck or have questions with a challenge in the future, please first ask questions to the Help Room. As @texas2010 has mentioned, if you're not asking for coding help and have a bug to report, please respond accordingly. Happy coding!

you wrote :
Your div element should have the # class container-fluid

"Make sure you have nested all HTML elements in .container-fluid." I don't understand.

"Make sure you have nested all HTML elements in .container-fluid." I don't understand.

I didn't understand that line either - my best guess was that by including the container-fluid class in the  sections then it addressed that point and passed the exercise.

I've passed the challenge but I wasn't sure at all! I just decided to made a container-fluid inside the style element and after the end of the style I proceeded to put a div with the container-liquid class and put the closing tag at the end of the code. But still I think I didnt really get it. I only put the  before the  until the end because those parts are what I thought the 'all' HTML elements but isnt

Hi @byerchl
Please use our freeCodeCamp Forum or freeCodeCamp Gitter for help queries.
Github is used for reporting issues.

hello my name is Srs3dpro
the code for div you have:
here is the solution is this,
You have to include class in div in order to excute  the code correctly.
I hope this helps you.
Happy coding!
Srs3dpro


ArrayV completely crashes when a highlight is out of bounds

Run certain sorts (e.g. Grailsort) on the max length, and the entire program will freeze up.

Related: #61


How to load directives and magic when using npm module.

Hi, thanks for the great lib. I am attempting to use this library in a bundled that is being built with esbuild.
There is not mention of how to load the directives and magics when importing into a bundle. I tried following the instructions found here, but I couldn't get it to work.
Any help would be highly appreciated.
Thanks.

Normally it is not a good practice to bundle Alpinejs. If you are using it with React, Vue or other frameworks, you have to understand most of these frameworks are based on virtual DOM not real DOM. Mix Alpinejs with React/Vue may cause unexpected issue. Anyway, could you share a minimal sample esbuild project of your problem?

I decided on not bundling in the end. Thanks.


qownnotes: 19.2.3 -> 19.3.0

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/qownnotes/versions.
meta.description for qownnotes is: '"Plain-text file notepad and todo-list manager with markdown support and ownCloud / Nextcloud integration"'.

Checks done (click to expand)

built on NixOS
Warning: no invocation of /nix/store/5kr3vii9qvlwp1qady81b0s9i8jm3jjf-qownnotes-19.3.0/bin/QOwnNotes had a zero exit code or showed the expected version
0 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 19.3.0 with grep in /nix/store/5kr3vii9qvlwp1qady81b0s9i8jm3jjf-qownnotes-19.3.0
directory tree listing: https://gist.github.com/1fca97a45a31538f7438cd82bcb0ffec
du listing: https://gist.github.com/e5eb82714c31864c85da49059b3662cd

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)
1 package rebuild(s)
1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
qownnotes

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/5kr3vii9qvlwp1qady81b0s9i8jm3jjf-qownnotes-19.3.0 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A qownnotes https://github.com/r-ryantm/nixpkgs/archive/419e25e0ef95b0ed04fe6bf076024e1adc718a5e.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/5kr3vii9qvlwp1qady81b0s9i8jm3jjf-qownnotes-19.3.0
ls -la /nix/store/5kr3vii9qvlwp1qady81b0s9i8jm3jjf-qownnotes-19.3.0/bin

cc @dtzWill for testing.

Looks good, thanks!


Add --dryrun flag to skip doWorkload

Resolves #61.  If the --dryrun flag is added on the command line, the program will run the same but will skip running the workloads and leave the workload results columns out of the output dataframe.

Codecov Report

Merging #76 into develop will decrease coverage by 0.06%.
The diff coverage is 97.05%.

@@            Coverage Diff             @@
##           develop     #76      +/-   ##
==========================================
- Coverage    86.97%   86.9%   -0.07%
==========================================
  Files           23      24       +1
  Lines          453     443      -10
  Branches        23      25       +2
==========================================
- Hits           394     385       -9
+ Misses          59      58       -1

Impacted Files
Coverage Δ

...bench/workload/ml/LogisticRegressionWorkload.scala
100% <ø> (ø)
:arrow_up:

.../sparktc/sparkbench/workload/sql/SQLWorkload.scala
100% <ø> (ø)
:arrow_up:

...arktc/sparkbench/workload/exercise/CacheTest.scala
9.09% <0%> (+0.75%)
:arrow_up:

.../com/ibm/sparktc/sparkbench/cli/Configurator.scala
100% <100%> (ø)
:arrow_up:

...com/ibm/sparktc/sparkbench/workload/Workload.scala
100% <100%> (ø)
:arrow_up:

...parktc/sparkbench/workload/ml/KMeansWorkload.scala
85.71% <100%> (-1.56%)
:arrow_down:

.../com/ibm/sparktc/sparkbench/cli/GlobalConfig.scala
100% <100%> (ø)

...ibm/sparktc/sparkbench/workload/SuiteKickoff.scala
100% <100%> (ø)
:arrow_up:

.../workload/exercise/PartitionAndSleepWorkload.scala
100% <100%> (ø)
:arrow_up:

...m/sparktc/sparkbench/sparklaunch/SparkLaunch.scala
74.19% <100%> (+3.82%)
:arrow_up:

... and 5 more

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 807e532...a7025c4. Read the comment docs.

This isn't ready to merge yet.  There's a small symptom -- the workload name column in the results has a dummy value -- that reflects a deeper structural problem that I think may take some work to resolve.  I'm making the pull request now so we can track this.


Symbolic encode for BigInteger

Hello, Peter Olson.
I did write modified bigInt with supporting encoding for BigIntegers using alphabet and UNICODE symbols. You can see this here: https://github.com/username1565/BigInteger/commit/58de5fefde2d2830de0a77eddafad5b6e51da595 and compare files, to see changes.
Test page available here: https://github.com/username1565/BigInteger/blob/master/test_encoding_and_decoding.html
Now, BigInteger size is 172KB, but this can be lesser if spaces replace to Tab.
Also, I did add cube root calculating algorithm in separate page, here: https://github.com/username1565/BigInteger/blob/master/cube_root.html
You can play with it in your spare time.

Sorry, this change more than triples the size of the library. I don't think this will be used be enough users to justify that amount of bloat.

Ok, I'll delete this from pull request and you can find all changes on my page:
https://github.com/username1565/BigInteger.js
Maybe you can do yourself symbolic encoding and decoding BigIntegers with lower file size,
of couse - if you interested this.
Also you can update BigRat.
Have a nice day.


fix: sizeMode => target

In cypress, sizeMode is deprecated.
So I replaced all of them to target.

Amazing work @TroyTae Thanks so much


Add experimental support for helm chart certification

This PR adds experimental hooks into Chart-Verifier, which is the tooling used for Helm Chart certification on OpenShift.
This integration is purely experimental, and as such is hidden to not distract from Preflight's current use cases. The subcommands have been so noted in their descriptions.
To invoke this, try:
# these mean the same thing
preflight experimental helm-chart verify <chart>
preflight exp chart-verifier verify <chart>

Aliases have been provided purely for convenience.

Coverage: 82.038% (-0.05%) from 82.09% when pulling 5e9c16aab982a5ccf5234ee598ceddd27dac6815 on komish:experimental into 92dd12abcad68f2b6a38b2275dc55c31406bb4d3 on redhat-openshift-ecosystem:main.

check workload

check workload preflight-green

check workload preflight-green

check workload preflight-green

This has been rebased. The DCI failure might indicate another issue so I'll be looking to check that when it comes through with this latest rebase. Reviews re-requested from original reviewers.

check workload preflight-green

hi @komish here are the logs of failure
TASK [Run preflight check container on operator image gcr.io/kubebuilder/kube-rbac-proxy@sha256:db06cc4c084dd0253134f156dddaaf53ef1c3fb3cc809e5d81711baa4029ea4c with preflight binary]
1s
task path: /usr/share/dci-openshift-app-agent/roles/preflight/tasks/test_preflight_check_container_binary.yml:52
fatal: [jumphost]: FAILED! => {"changed": true, "cmd": "/tmp/preflight_tmp_dir.b3u5kcik/preflight-source/preflight check container gcr.io/kubebuilder/kube-rbac-proxy@sha256:db06cc4c084dd0253134f156dddaaf53ef1c3fb3cc809e5d81711baa4029ea4c  --submit \n", "delta": "0:00:00.040703", "end": "2023-03-15 10:00:45.343363", "msg": "non-zero return code", "rc": 1, "start": "2023-03-15 10:00:45.302660", "stderr": "Error: certification Project ID must be specified when --submit is present\nUsage:\n  preflight check container [flags]\n\nExamples:\n  preflight check container quay.io/repo-name/container-name:version\n\nFlags:\n      --certification-project-id string   Certification Project ID from connect.redhat.com/projects/{certification-project-id}/overview\n                                          URL paramater. This value may differ from the PID on the overview page. (env: PFLT_CERTIFICATION_PROJECT_ID)\n  -h, --help                              help for container\n      --insecure                          Use insecure protocol for the registry. Default is False. Cannot be used with submit.\n      --platform string                   Architecture of image to pull. Defaults to current platform. (default \"amd64\")\n      --pyxis-api-token string            API token for Pyxis authentication (env: PFLT_PYXIS_API_TOKEN)\n      --pyxis-env string                  Env to use for Pyxis submissions. (default \"prod\")\n      --pyxis-host string                 Host to use for Pyxis submissions. This will override Pyxis Env. Only set this if you know what you are doing.\n                                          If you do set it, it should include just the host, and the URI path. (env: PFLT_PYXIS_HOST)\n  -s, --submit                            submit check container results to Red Hat\n\nGlobal Flags:\n      --artifacts string       Where check-specific artifacts will be written. (env: PFLT_ARTIFACTS)\n  -d, --docker-config string   Path to docker config.json file. This value is optional for publicly accessible images.\n                               However, it is strongly encouraged for public Docker Hub images,\n                               due to the rate limit imposed for unauthenticated requests. (env: PFLT_DOCKERCONFIG)\n      --logfile string         Where the execution logfile will be written. (env: PFLT_LOGFILE)\n      --loglevel string        The verbosity of the preflight tool itself. Ex. warn, debug, trace, info, error. (env: PFLT_LOGLEVEL)\n\n2023/03/15 10:00:45 certification Project ID must be specified when --submit is present", "stderr_lines": ["Error: certification Project ID must be specified when --submit is present", "Usage:", "  preflight check container [flags]", "", "Examples:", "  preflight check container quay.io/repo-name/container-name:version", "", "Flags:", "      --certification-project-id string   Certification Project ID from connect.redhat.com/projects/{certification-project-id}/overview", "                                          URL paramater. This value may differ from the PID on the overview page. (env: PFLT_CERTIFICATION_PROJECT_ID)", "  -h, --help                              help for container", "      --insecure                          Use insecure protocol for the registry. Default is False. Cannot be used with submit.", "      --platform string                   Architecture of image to pull. Defaults to current platform. (default \"amd64\")", "      --pyxis-api-token string            API token for Pyxis authentication (env: PFLT_PYXIS_API_TOKEN)", "      --pyxis-env string                  Env to use for Pyxis submissions. (default \"prod\")", "      --pyxis-host string                 Host to use for Pyxis submissions. This will override Pyxis Env. Only set this if you know what you are doing.", "                                          If you do set it, it should include just the host, and the URI path. (env: PFLT_PYXIS_HOST)", "  -s, --submit                            submit check container results to Red Hat", "", "Global Flags:", "      --artifacts string       Where check-specific artifacts will be written. (env: PFLT_ARTIFACTS)", "  -d, --docker-config string   Path to docker config.json file. This value is optional for publicly accessible images.", "                               However, it is strongly encouraged for public Docker Hub images,", "                               due to the rate limit imposed for unauthenticated requests. (env: PFLT_DOCKERCONFIG)", "      --logfile string         Where the execution logfile will be written. (env: PFLT_LOGFILE)", "      --loglevel string        The verbosity of the preflight tool itself. Ex. warn, debug, trace, info, error. (env: PFLT_LOGLEVEL)", "", "2023/03/15 10:00:45 certification Project ID must be specified when --submit is present"], "stdout": "", "stdout_lines": []}
...ignoring

Merged a dependency update that caused this to need a rebase, so that rebase has been pushed up.

@komish, I think I have an idea of what's happening.
It seems that your change is causing the file config.yaml, which we use to provide some settings, as well as certification_project_id, to be discarded.
config.yaml
{% if partner_creds | length %}
dockerConfig: {{ preflight_tmp_dir.path }}/config.json
{% endif %}
loglevel: trace
junit: true
logfile: {{ preflight_container_artifacts.path }}/preflight.log
artifacts: {{ preflight_container_artifacts.path }}
{% if cert_project_id | default('') | length %}
certification_project_id: {{ cert_project_id }}
pyxis_api_token: {{ lookup('file', pyxis_apikey_path) }}
{% endif %}

@tkrishtop
Thanks for digging in. I did manual testing here and can't seem to reproduce the issue with config.yaml. I'm able to run a similar command like yours and I seem to get past flag validation.
# config.yaml, placed in the same directory as preflight.
certification_project_id:<PHONE_NUMBER>84789
pyxis_api_token: example
loglevel: trace

I seem to get past flag validation. With stubbed values, I obviously fail to make API calls, but you get the idea.
 ⤿ ./preflight check container quay.io/opdev/simple-demo-operater:latest
time="2023-03-15T16:25:26-05:00" level=info msg="certification library version" version="0.0.0 <commit: 23d3b48a6123858a75895b935acd68b8fd205ae6>"
time="2023-03-15T16:25:26-05:00" level=trace msg="pyxis URL" url="{\"Scheme\":\"https\",\"Opaque\":\"\",\"User\":null,\"Host\":\"catalog.redhat.com\",\"Path\":\"/api/containers/v1/projects/certification/id/192390823184789\",\"RawPath\":\"\",\"OmitHost\":false,\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\",\"RawFragment\":\"\"}"

Granted, the only backing I have here is that the certification project ID is making it into our query URL in the above trace output. I printed out the configuration received by Preflight in a debug environment as well and I'm seeing values coming through from the config.
Version I worked with (matches the latest push in this PR)
 ⤿ git rev-parse HEAD
23d3b48a6123858a75895b935acd68b8fd205ae6

 ⤿ ./preflight --version
preflight version 0.0.0 <commit: 23d3b48a6123858a75895b935acd68b8fd205ae6>

Is there an empty value somewhere that's not getting subbed into the template? Is the config file in a different place than usual (this one seems unlikely).

I re-tested in local and confirm that on my laptop everything works
$ cat config.yaml
loglevel: trace
junit: true
certification_project_id: XXX
pyxis_api_token: XXX

./preflight check container gcr.io/kubebuilder/kube-rbac-proxy@sha256:db06cc4c084dd0253134f156dddaaf53ef1c3fb3cc809e5d81711baa4029ea4c --submit

The only difference with DCI config is dockerConfig setting, keep checking
{% if partner_creds | length %}
dockerConfig: {{ preflight_tmp_dir.path }}/config.json
{% endif %}
loglevel: trace
junit: true
logfile: {{ preflight_container_artifacts.path }}/preflight.log
artifacts: {{ preflight_container_artifacts.path }}
{% if cert_project_id | default('') | length %}
certification_project_id: {{ cert_project_id }}
pyxis_api_token: {{ lookup('file', pyxis_apikey_path) }}
{% endif %}

Anyway, the issue seems to be on our side.

Re-tested with DCI.

Create two different folders:

A log folder for the artifacts and preflight.log
A config folder for the preflight binary and docker config

Place config.yaml in the log folder
Chdir to the log folder and run preflight, using the complete path to the preflight binary

On this PR, the things stopped to work.
"dest": "/tmp/preflight_container_artifacts.l7lshkhp/config.yaml"

dockerConfig: /tmp/preflight_tmp_dir.heggq9vk/config.json
loglevel: trace
junit: true
logfile: /tmp/preflight_container_artifacts.l7lshkhp/preflight.log
artifacts: /tmp/preflight_container_artifacts.l7lshkhp
certification_project_id: XXX
pyxis_api_token: XXX

/tmp/preflight_tmp_dir.heggq9vk/preflight-source/preflight check container
gcr.io/kubebuilder/kube-rbac-proxy@sha256:db06cc4c084dd0253134f156dddaaf53ef1c3fb3cc809e5d81711baa4029ea4c
--submit
Error: certification Project ID must be specified when --submit is present

To place config.yaml in both folders, log and config, didn't work: https://www.distributed-ci.io/jobs/f9d361e7-4564-4847-a3ff-19153822fc63/jobStates?sort=date&task=26a2bb7d-350f-49f8-a245-581f988396d7
"dest": "/tmp/preflight_container_artifacts.jlwqka_u/config.yaml"

"dest": "/tmp/preflight_tmp_dir.fzdb67t0/preflight-source/config.yaml"

dockerConfig: /tmp/preflight_tmp_dir.fzdb67t0/config.json
loglevel: trace
junit: true
logfile: /tmp/preflight_container_artifacts.jlwqka_u/preflight.log
artifacts: /tmp/preflight_container_artifacts.jlwqka_u
certification_project_id: XXX
pyxis_api_token: XXX

/tmp/preflight_tmp_dir.fzdb67t0/preflight-source/preflight check container
gcr.io/kubebuilder/kube-rbac-proxy@sha256:db06cc4c084dd0253134f156dddaaf53ef1c3fb3cc809e5d81711baa4029ea4c
--submit
Error: certification Project ID must be specified when --submit is present

I'm currently testing the following logic to see if it will fix the situation: https://www.distributed-ci.io/jobs/1cad6ae1-b9d1-4e55-a455-d9c14cea05fc/jobStates?sort=date

Create two different folders:

A log folder for the artifacts and preflight.log
A config folder for the preflight binary and docker config

Place config.yaml in the both folders
Chdir to the config folder and run preflight, using the complete path to the preflight binary

Hi @tonyskapunk, I'm off this afternoon and not sure if I can provide a working fix before then. Could you please cover for me?

@komish thanks for the debugging time today, it was uncovered that if a ~/config.json file existed the change in this PR somehow reads from it and ignores the ./config.yaml we will wait for you to find a way to handle that. Thanks again!

check workload preflight-green

@komish thanks for the debugging time today, it was uncovered that if a ~/config.json file existed the change in this PR somehow reads from it and ignores the ./config.yaml we will wait for you to find a way to handle that. Thanks again!

Confirmed. For the record, this was due to the fact that the incoming cobra commands had an init function in their respective package that would configure the viper global instance to include $HOME as a possible location for configuration files.
Preflight specifically looks for a file called config in your current working directory. We've explicitly defined yaml as the file format, but for whatever reason, viper also reads in json files. To that end, when the package containing the experimental cobra commands initialized, it configured the global viper instance (which preflight shared) to look for things in the home directory, and that would apparently override the default location.
This PR fixes this because the initialization of the viper instance is no longer shared.
It may also be wise in the future to go ahead and look for a config file with a specific name (e.g. preflight.yaml) instead of a generic name which can be relevant to a great many projects. That'll be solved at a future date.


Allow specifying config file on stdin

Allow to use config file syntax via stdin to allow automation and sharing presets as runnable one-liners.
Example usage:
printf '25,38,39,40 steady ff0000\narrows steady 0000ff' | python3 ./msi_perkeyrgb/main.py -c -

Thank you for a really nice tool by the way :+1:
Also can report MSI GL63 8SDK is working flawlessly using GE63 preset.

Thank you !


How to disable annoying Gofmt Errors buffer?

After executing gofmt-before-save command, it opens a new window displaying various errors message, how can I disable this window from opening ?

Adding this line to my config solved my problem , I recommend to add this to README file so others can use it, feel free to close this issue.
(setq gofmt-show-errors nil)

The option is documented in Emacs's customization system (M-x customize-group RET go RET). The README does not contain a copy of all of the mode's documentation, just an introduction to the project.
I'm glad you were able to fix your problem.