Webapp:"az webapp create" call fails - claiming ressource is in another resource group

Describe the bug
We have 2 resource groups.
Resource Group A and Resource Group B.
A webapp is created in Resource Group A.
A FunctionApp is created in Resource Group B.
The naming of the webapp is: xxx
The naming of the FunctionApp is: xxxsource
Whenever we try to run our az cli deployment step from Azure DevOps, we get this error when trying to deploy webapp (after FunctionApp has been deployed).
The webapp 'xxx' exists in resource group 'B' and does not match the value entered 'A'. Please re-run command with the correct parameters.
The webapp clearly does not exist in resource group B, but in A. But somehow the az cli command picks up the ressource from the wrong resource group. The only reason we can think of, is that the az cli does some sort of "StartsWith" matching to find the webapp name and checks if it exists.
Sometimes the pipeline runs fine and sometimes it fails - so it looks like a list is retrieved inside the az cli, where ordering is not guaranteed.
To Reproduce
Create two resource groups. Create a webapp in the first ResourceGroup and a FunctionApp in the second resource group.
The try to re-provision the webapp again from azure devops pipeline.
Expected behavior
The az cli script should not return an error stating that the resources exists in a wrong resource group when running "az webapp create" again.
Environment summary
Information from pipeline in Azure DevOps.
Task         : Azure CLI
Description  : Run Azure CLI commands against an Azure subscription in a PowerShell Core/Shell script when running on Linux agent or PowerShell/Powershell Core/Batch script when running on Windows agent.
Version      : 2.0.16
Author       : Microsoft Corporation
Help         : https://docs.microsoft.com/azure/devops/pipelines/tasks/deploy/azure-cli
C:\windows\system32\cmd.exe /D /S /C ""C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin\az.cmd" --version"
azure-cli                         2.10.1 *
command-modules-nspkg              2.0.3
core                              2.10.1 *
nspkg                              3.0.4
telemetry                          1.0.4 *
Extensions:
azure-devops                      0.18.0

webapp

@perkops Can you please let us know exactly what cli command you are using and also are you facing the same with the cli command itself without the azure Devops Cli ?

@perkops Can you please let us know exactly what cli command you are using and also are you facing the same with the cli command itself without the azure Devops Cli ?

Hi @ThejaChoudary,
We managed to work around this issue, by simply making the names not match that much, so I do not have the current error setup at hand atm. From my memory this was only an issue on Azure DevOps, and only sometimes, as I wrote in the initial text.
For the webapp part, the code looks like the following in one project:
Write-Host "  Create web app" -ForegroundColor DarkYellow
$output = az webapp create   --name $apiName
--resource-group $resourceGroupName   --plan $appServicePlanId
--tags $resourceTags
For the Function app part, the code looks like the following in another project:
Write-Host "  Creating function app" -ForegroundColor DarkYellow
$output = az functionapp create --name $functionAppName
--resource-group $resourceGroupName --storage-account $storageAccountId
--app-insights-key $instrumentationKey --plan $appServicePlanId
--runtime dotnet --functions-version 3
--tags $resourceTags
And then when we tried to provision webapp once again from CI/CD pipeline, it would sometimes fail, saying that the webapp was in another resource-group (than it was).

thanks for the update @perkops - have you tried to add a wait b/w the two create calls when calling via DevOps? Also if you repro this again can you run both CLI commands in AzureDevops with --debug at the end so we can get a stack trace & see if we can capture more info? Please feel free to re-activate when you have more info.

So - the two steps are actually from each of their own pipeline - so a wait would not work.
It cant give you more information than I have already provided - it should be enough to fix the error.

@panchagnula I cant find any button to re-activate the issue.

@perkops is there a reason you believe this is a CLI error? if you run the CLI commands without devops pipeline would it work?

@perkops is there a reason you believe this is a CLI error? if you run the CLI commands without devops pipeline would it work?

Yes - it works if we run the commands from local azure cli.

@perkops is there a reason you believe this is a CLI error? if you run the CLI commands without devops pipeline would it work?

Yes - it works if we run the commands from local azure cli.

That makes me believe its something to do with Devops pipeline & this is repo is for CLI only. @yonzhan this issue is specific to using CLI commands to devops pipeline any pointers on how to help @perkops ? Thanks!

devops pipeline service team should look into this.


added multi-species database support

Coverage remained the same at 81.503% when pulling 7ff3cb0de7d86cf28bb8adab18b4f24768a6e29e on danstaines:master into 3bb80640afcbb1cadc0d19fc11140dbb73582e6a on Ensembl:master.

You change a 1 to a 0 and then it's all fine?

its binary baby!

longer answer - this turns on the code which selects a list of
species_id from meta to give you one DBAdaptor per species rather than
one per db.

Ok... then I have nothing to add.

@premanand17 Best merge this in before branch tomorrow


Bug: disabled year range that the selected year belongs to

Hi,
I have encountered a wrong behavior in the calendar of years.
I have set a minDate option to limit years before 2015 and when I select a specific year, then click on the year range at the top of the calendar, it shows the range that my selected year belongs to as disabled.
Here's how it looks:

Regards,
Andrius

Same issue here. Hope this gets fixed soon :-1:

I was able to work around this particular bug by subscribing to the decades header click and cancelling the change (in my case I don't require decades when dealing with min/max date ranges)
$('th.picker-switch[data-action=pickerSwitch][title="Select Decade"]').click(function(){ return false; });

Thank you for fixing it!


Add validaterange to New-FileCatalog -CatalogVersion

PR Summary
Per https://docs.microsoft.com/en-us/windows/desktop/SecCrypto/makecat, the CatalogVersion can only have a value of 1 or 2.
PR Checklist

[x] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[x] Summarized changes
[x] Change is not breaking
[x] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[x] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: to the beginning of the title and remove the prefix when the PR is ready.

User-facing changes

[x] Not Applicable
OR
[ ] User-facing Documentation needed

[ ] Issue filed - Issue link:

Testing - New and feature

[ ] Not Applicable or can only be tested interactively
OR
[x] Make sure you've added a new test if existing tests do not effectively test the code changed

[ ] Add [feature] if the change is significant or affects feature tests

@anmenaga excellent point, didn't realize it had runtime check


Deprecation warning: moment construction falls back to js Date

This deprecated warning is pretty annoying as it consumes about 30 lines in console.
Deprecation warning: moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.
aa/<@http://localhost:5050/js/app.min.js:5:23913
da@http://localhost:5050/js/app.min.js:5:24393
Ba@http://localhost:5050/js/app.min.js:5:28179
Aa@http://localhost:5050/js/app.min.js:5:28076
za@http://localhost:5050/js/app.min.js:5:27797
Ca@http://localhost:5050/js/app.min.js:5:28492
Da@http://localhost:5050/js/app.min.js:5:28526
a@http://localhost:5050/js/app.min.js:5:17110
c/y@http://localhost:5050/js/app.min.js:6:21388
c/da@http://localhost:5050/js/app.min.js:7:4183
c/l.minDate@http://localhost:5050/js/app.min.js:7:13492
c/l.options/<@http://localhost:5050/js/app.min.js:7:10498
.each@http://localhost:5050/js/app.min.js:1:12918
c/l.options@http://localhost:5050/js/app.min.js:7:10403
c@http://localhost:5050/js/app.min.js:7:22230
a.fn.datetimepicker/<@http://localhost:5050/js/app.min.js:7:22726
.each@http://localhost:5050/js/app.min.js:1:12864
_.prototype.each@http://localhost:5050/js/app.min.js:1:10841
a.fn.datetimepicker@http://localhost:5050/js/app.min.js:7:22591
@http://localhost:5050/Artifacts/Management
_.Callbacks/k@http://localhost:5050/js/app.min.js:2:4256
_.Callbacks/l.fireWith@http://localhost:5050/js/app.min.js:2:5073
.ready@http://localhost:5050/js/app.min.js:2:6866
g@http://localhost:5050/js/app.min.js:1:1729

I have explicitly disabled console.warn to avoid this warning using the cache-and-restore technique:
var cachedWarn = console.warn;
console.warn = function () { };
$mySelector.datetimepicker({...})
console.warn = cachedWarn;

I also get this warning. Does anyone know if it's definitely the datepicker that is causing it?

Yes, it's the datepicker what is causing the warnings. It is because moment.js changed its constructor, and this datepicker uses moment.js. More info on the issue:
http://momentjs.com/guides/#/warnings/js-date/
https://github.com/moment/moment/issues/1407

As @mrndig metioned, just  overwrite createFromInputFallback, warning disappeared.

For what it's worth, I was able to remove the warning in my code by doing:
datePickerElement.datetimepicker().datetimepicker('defaultDate', initialDate);

instead of:
datePickerElement.datetimepicker({ defaultDate: initialDate });

This is caused by unreliable date/time formats. Just use any ISO one. e.g.:
instead of
defaultDate: "11/1/2013"
use
defaultDate: "2013-01-11"
probably @Eonasdan could change the documentation accordingly - just change the format?

Agree with @bouskdav
So whenever using a date string to config the datetimepicker, just use a JavaScript Date() object and call the toISOString() method.
For example, my case was setting today as the maxDate:
datetimepickerElement.datetimepicker({
    maxDate: new Date().toISOString(),
    format: "MM/DD/YYYY"
});


Autoplay watcher appears to not have made it to NPM

The Github version of the code has a watch function for autoplay on line 185 (https://github.com/baianat/hooper/blob/master/src/Carousel.js#L185) however the published version of 3.8.4 (at https://www.npmjs.com/package/hooper @ dist/hooper.js) does not seem to have that function.
I am installing from github for the moment to get around this, but an updated version on NPM would be good!

@joeswann Do you think this can be the reason for autoPlay not being responsive ? E.g different settings in breakpoints for autoplay are ignored ?


Add maxRedirects option from axios

It would be nice to have request option parity with axios for the 'maxRedirects' property at the per request level to allow NOT following any redirects.
E.g. I call an auth server and want to access the location header from a 302 response code without a redirect

:tada: This issue has been resolved in version 1.8.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Peer Review [V&V Plan] - usability survey

Artifact Under Review
V&V
Team Number for Team Doing the Review
Team 10
Description of Issue
How would you determine if your tests that conduct the usability test is considered 'passed' or not? Is there a satisfaction metric you're looking out for? For T-UH7, there's mention of frustration and an error rate, but there's only a 1-5 rating of the clarity of the error messages, how do you intend to measure those?

@Necried


some times its not opening if i open showGeneralDialog and close it then the drawer is not working

some times its not opening if i open showGeneralDialog and close it then the drawer is not working

i did some debuging and i saw that this issue come when i focus on TextFormField in that dialog, so i think it's not related to the dialog

after some more debugging i discovered that this issue happen when keyboard is shown

So looks like you need to dismiss the keyboard before opening the drawer. If you have suggestions to fix, please provide your code with PR and we can move forward.


Fix RPC subscribe with multiple books (RIPD-77):

Fix subscribe to multiple books to report all bids and asks or offers
Append Bids, Asks and Offers of each book to the result

Reviewers: @rec @ximinez

You should replace my change with the updated one...
Or even just wait, we can make sure that one is checked in before the other.  Your code is basically independent of my change.

Tom, I cherry picked your fix. Its using the version that your named 'reverse' as Vinnie suggested.
The jvOffers param will get stomped with each call to getBookPage, which is the intent.

You're behind the times, Vinnie's new suggestion is reversed (note the extra "d" on the end) and you don't have that!

OK, hmm, I clearly need to read the final code again.  Moment please...

Ah right you are sir. Cherry picked once more. That 'd' was brilliant :)

That lambda would omit calling reversed.

Looks good. This change underscores the need to have book subscription unit / integration tests.

There's a weirdness in the commits - the initial fix appears to be there twice??
If you fix up the commits, this looks good to me!

Done

Good news, bad news.
Good news: I wrote a test. https://github.com/ximinez/rippled/commit/2d89366bf5605792c7e4f0a4a6a059ac97122379
Bad news: It found a bug. The multiple book request seems to be returning duplicates of one book or the other. More details soon.

Duplicates in the bids or asks arrays?

All. Bids, asks, offers (depending on the value of both) are all duplicated.
Here's some extra output:
Received:  2
  TakerGets: 200/CNY/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh, TakerPays 100/JPY/rHb9C
JAWyB4rj91VRWn96DkukG4bwdtyTh
  TakerGets: 200/CNY/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh, TakerPays 100/JPY/rHb9C
JAWyB4rj91VRWn96DkukG4bwdtyTh
Found:  1
  TakerGets: 200/cny/root, TakerPays 100/jpy/root
Not found:  1
  TakerGets: 200, TakerPays 100/usd/root
    1) Multiple books: One side: Offers in book
    √ Multiple books: Both sides: Empty book (403ms)
Received:  2
  TakerGets: 100/JPY/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh, TakerPays 500/CNY/rHb9C
JAWyB4rj91VRWn96DkukG4bwdtyTh
  TakerGets: 100/JPY/rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh, TakerPays 500/CNY/rHb9C
JAWyB4rj91VRWn96DkukG4bwdtyTh
Found:  1
  TakerGets: 100/jpy/root, TakerPays 500/cny/root
Not found:  1
  TakerGets: 100/usd/root, TakerPays 500
    2) Multiple books: Both sides: Offers in book

Never mind. There was a bug in the test. Updated test commit: https://github.com/ximinez/rippled/commit/514a7a0a5c8cf907289aab9eed925fb738a39132

Cherry picked Ed's new integration test.

I approve of adding the test. :+1:

:+1:


Cannot disable SwitchIntranetSitesToWorkProfile by command line

Hello Microsoft,
When precising a dedicated "Profile 1" to edge driver together with --disable-features=SwitchIntranetSitesToWorkProfile, opening an intranet URL will switch to "Work" Profile.
Only option found is to disable the feature manually when it occurs site by site (Do not switch) - notification is a nice feature, disabled by default (disabling the toggle button for the general feature does not have an effect), really bad for an automated test tool right?
Can we disable such switch feature by command line? It's really important we get rid of profile redirection when edgedriver is told to open a specific session. For now, we will document to customer that this is a Microsoft setting we are not able to handle by command lines with a dedicated public Knowledge Based Article listing problems with Edge (like clicking on a File Upload if "you're not a human"

again this seems a nice feature that would need a disabling capability).

More generally, we struggle a LOT with edge driver to find official Microsoft documentation about list of supported features & parameters that can be specified in the --enable-features or --disable-features. Most of the time, you can find policies but no useful list of parameters that actually work.
edge://version : Microsoft Edge | 120.0.2210.61 (Official build) (64-bit)
"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --allow-pre-commit-input --allow-running-insecure-content --disable-background-networking --disable-backgrounding-occluded-windows --disable-client-side-phishing-detection --disable-default-apps --disable-features=SwitchIntranetSitesToWorkProfile,StrictOriginIsolation,IsolateOrigins,site-per-process,CrossSiteDocumentBlockingIfIsolating,CrossSiteDocumentBlockingAlways --disable-hang-monitor --disable-popup-blocking --disable-prompt-on-repost --disable-site-isolation-trials --disable-sync --enable-automation --enable-features=msEdgeDeleteBrowsingDataOnExit --enable-logging --ignore-certificate-errors --log-level=0 --no-first-run --no-service-autorun --no-session-restore --password-store=basic --profile-directory="Profile 1" --remote-debugging-port=0 --test-type=webdriver --use-mock-keychain --user-data-dir="C:\Users\me\AppData\Local\Microsoft\Edge\User Data" --flag-switches-begin --flag-switches-end
Profile path C:\Users\me\AppData\Local\Microsoft\Edge\User Data\Profile 1
Best Regards,
Rémi from SAP Support.

I'd use the Guest Profile to avoid this issue, unless this Profile 1 you've created has some other configurations you need that weren't mentioned in your original post.
In Selenium [I'm using Java] I instantiate EdgeOptions then pass the --guest argument like so: options.addArguments("--guest");
If launching Edge from the CLI you should be able to pass it via --guest like you're passing your other arguments; "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" --guest.
Finally, since Edge is based on Chromium most -not all- switches from Chrome will work with Edge. This is considered the most comprehensive list of known switches.

Hi jbarkeri4,
Thanks for your hint and your quick reaction, it works but cannot be retained as a valid solution since the extensions are disabled in the guest session. Unfortunately, we do have to work with our extension whatever the dedicated profile is (Profile 1 was just a side-test).
Indeed, the guest session is able to keep navigation in its own profile while any other profile will be switching automatically to the Work profile unless the end user, site by site, is actively choosing the "Don't Switch" option. The problem I have is that there is no way to remove this feature (neither by command line nor by Profile 1 settings - not respected at runtime). This does not work unless each site is marked as Don't Switch. A nightmare since there's no final user on the Virtual Machine where the Automated Test Tool is deployed.
The current solution I imagine for our customers is to take a trainee to check each VM each morning to click on "Don't Switch" and pray the next day it's okay (for each customer). They wouldn't appreciate the manual effort to make the automation working.
In my opinion it's buggee. Since I never heard about a profile switch nor a "Work" profile in Chrome, I suppose this is additional layer from Microsoft and should be reported as a bug since the preferences are not working nor taken into account by command line (if at least one option was working I wouldn't opened this issue).
Is SwitchIntranetSitesToWorkProfile something in chromium really or added by Microsoft on top?
Would it be possible to report their bugs to MS Edge directly? Internally at SAP, we don't have a channel to report issues in Edge versions, our partnership is more Microsoft to SAP than bidirectional. I thought I was at the right place to report.
Additionally, I have posted this feedback  to make MS aware this issue here exists.
Best Regards,
Rémi from SAP Support.

@rmangin Ah, I see. Wasn't aware your requirements included an extension to be loaded in/with Profile 1. Unfortunately, as you've found Edge does not support extensions in its Guest Profile sessions.
 But if you have the ability to execute elevated commands on these VMs, you might consider the below Registry edit command [should work in both Command Prompt and PowerShell]:
reg add HKLM\SOFTWARE\Policies\Microsoft\Edge /v SwitchIntranetSitesToWorkProfile /t REG_DWORD /d 0x00000000
See if your Don't Switch option selection persists after a 24-hour period. It should 🤞🏻
To answer your question regarding SwitchIntranetSitesToWorkProfile that is indeed a Microsoft Edge-specific flag.
I have never had to report Edge-related issues to Microsoft outside of EdgeDriver, so I am not sure of any other channels outside of this GitHub repo Issue page we're currently on, I apologise. But as an aside, you might consider appending a summary of the issue you reported on this tracker to the one you submitted on the Edge-Developer repo Issue tracker. I can't speak for Microsoft but most forum users appreciate embedded info rather than links, which can break/be removed at any time.
Cheers.

Thanks for reporting this. I've added this to our internal backlog for investigation.


code repetition

most operations on the dataset are repeated identically for the train, test and validation set for the 3 studied cases.
This is an error prone approach, and is clear from the several commented pieces of code.
There should be a greater use of functions (with descriptive names, docstrings and testing associated, if possible)

This is the last commit for the resolution of the problem: https://github.com/JustWhit3/Software_and_Computing_program/commits/master.

This is the last commit for the resolution of the problem: https://github.com/JustWhit3/Software_and_Computing_program/commit/66f310251920d9f1343a0e90f9548c9798685f66.


[DMA 8/8] Burst configuration

Thank you for your contribution!
We appreciate the time and effort you've put into this pull request.
To help us review it efficiently, please ensure you've gone through the following checklist:
Submission Checklist 📝

[ ] I have updated existing examples or added new ones (if applicable).
[ ] I have used cargo xtask fmt-packages command to ensure that all changed code is formatted correctly.
[ ] My changes were added to the CHANGELOG.md in the proper section.
[ ] I have added necessary changes to user code to the Migration Guide.
[ ] My changes are in accordance to the esp-rs API guidelines

Extra:

[ ] I have read the CONTRIBUTING.md guide and followed its instructions.

Pull Request Details 📖
Description
This PR adds burst mode configuration to the DMA buffers. The PR also describes burst mode constraints for both internal and PSRAM accesses, where applicable.

we can probably enable external memory support in DmaRxBuf

Easier said than done.
Before this can happen, the work to remove DmaRxBuffer::length (and less importantly DmaTxBuffer as well) has to be done (which mostly means the SPI DMA driver has to take the length explicitly, rather than infer from the DmaRxBuffer).
Why? Enabling extmem support in DmaRxBuf means conforming to the 16,32,64 byte alignment in size. The means DmaRxBuffer::length() would always be a multiple of 16 (at least).
What happens when someone wants to receive 120 bytes of data into extmem? 120 bytes can't be aligned to 16, 32 or 64. The solution here is a DmaRxBuf of size 128 bytes and an SPI transaction length of 120.
Another nice thing about length() going away is the SPI DMA can be used with all buffer types, not just the linear/basic DmaRxBuf/DmaTxBuf.

What happens when someone wants to receive 120 bytes of data into extmem?

Note that length is always unconstrained, alignment requirements are for address and size only. For reads, the DMA will pad the received data to 128 bytes, using zeroes. Then the DMA sets the length to the actually received amount. For writes, Size, length and buffer address pointer in transmit descriptors are not necessarily aligned with block size

What happens when someone wants to receive 120 bytes of data into extmem?

Note that length is always unconstrained, alignment requirements are for address and size only. For reads, the DMA will pad the received data to 128 bytes, using zeroes. Then the DMA sets the length to the actually received amount. For writes, Size, length and buffer address pointer in transmit descriptors are not necessarily aligned with block size

Yes but how do you tell the SPI to only read 120 bytes, instead of the 128 that DmaRxBuf has been set to for alignment reasons?

Is there anything wrong with SPI_USR_MOSI_DBITLEN and SPI_USR_MISO_DBITLEN and their counterparts?

Yeah this is a consequence of the design right now 🤷♂

Indeed

I'm guessing we could add a read_length (in spirit, not necessarily in name) field to DmaRxBuf, that we'd use to set up the peripherals. That value wouldn't affect the descriptors, but users could use it to set an upper limit to how much data they want to read.

Yeah that would work but supporting that on other infinite-length descriptors would be awkward.

Yeah that would work but supporting that on other infinite-length descriptors would be awkward.

Please explain this a bit

Yeah that would work but supporting that on other infinite-length descriptors would be awkward.

Please explain this a bit

Oops typo. I meant buffers not descriptors. (I need to read my comments more)
DmaRxStreamBuf doesn't really have a length, you can use it to receive data forever so there's no such thing as a "max" length.

DmaRxStreamBuf doesn't really have a length, you can use it to receive data forever so there's no such thing as a "max" length.

Do you expect that to work with peripherals where the peripheral dictates how much it reads?
I propose splitting DmaRxBuffer into 2:
trait DmaRxBufferNoLength {} // Need to load coffee for better names
trait DmaRxBuffer: DmaRxBufferNoLength {
    fn set_read_len(&mut self, len: usize) -> Result<(), ...>;
    fn read_len(&self) -> usize;
}

Peripherals can take either of them depending on their needs. For Tx I don't see the need, so if you can point at something that would be great.

Do you expect that to work with peripherals where the peripheral dictates how much it reads? Especially if there is no TxBuf pair associated to the transfers. I can see slave mode SPI using indeterminate length RX buffers by themselves.

Yes! I'm proposing that the peripheral takes the length. I.e. spi_dma.read(120, dma_rx_buf).
The use case I'm thinking of is the user wants to send (or read) 30000 bytes to an spi device but doesn't want to allocate a 30,000 byte buffer. They could make do with 4000 bytes only and stream the data with a stream buf.
SPI and parl io have special interrupts to let the user know when they were too slow.

Alright, that sounds to me like a problem for later. For now, if someone is fine with block aligned reads, they are free to allocate the RX buffer in PSRAM.

Moved this PR back a spot, as this is probably the bigger and more complex change.

I chose not to change Preparation here. It's not because I'm against such change, but the PR is big as is, and that change isn't exactly important right now.

Now that DmaRxBuf has become more configurable, SpiDmaBus will need some changes to accommodate this, otherwise it'll panic when it sets the length to something misaligned.
At construction time, SpiDmaBus needs to turn off bursting (and also reject PSRAM buffers) on the DmaRxBuf it gets.
(Turning off bursting might not exactly be an option on the base ESP32 I suppose)
(Or we can do the thing with the separate lengths :slightly_smiling_face:)

I could've sworn there were changes made to the SPI driver, do you accidentally revert them?

Not accidentally, those changes didn't work

Will those be coming in a subsequent PR or in this one?

I don't intend to change this PR unless some issue comes up.


NXP: CAN: Add LPC MCAN support

Add a NXP LPC MCAN-specific front-end for the generic Bosch MCAN driver and enable it for the lpcxpresso55s16 board.

This driver is not yet functional. It fails to leave initialisation mode during boot (the INIT bit remains set in the CCCR register):
D: IP rel: 3.2.1 05.3.32
D: Presc: 3, TS1: 223, TS2: 32
D: Sample-point err : 0
E: Failed to leave init mode
E: failed to initialize mcan (err -5)
*** Booting Zephyr OS build v2.6.0-rc2-105-g4446ab7625f6  ***

    Assertion failed at WEST_TOPDIR/zephyr/tests/drivers/can/api/src/main.c:736: test_main: (can_dev is NULL)
Device not found


shell script evidence source

execute shell script (or shell command) and use result as evidence

Hmmm, interesting. I'm curious, what kind of scripts would you use as evidence source?

This would allow you to use anything as an evidence source.  Maybe the return value of a DNS query, content of a web page or whatever the script writer wants.

I'd like some more information from you @stribor if you could.  How are you expecting ControlPlane to interact with the script.  More specifically do you want the script to simply return a 0/1 or true/false to ControlPlane or do you want to be able to configure ControlPlane rules that can match any arbitrary text?  Doing 0/1 true/false would be much easier but if you can make a good case for something beyond that I'll consider it.

Moving this up because I haven't heard back from @stribor

For now just implement it using the exit status, which can be 0 (OK), 1 (error) up to 255. Plenty of room there, no need to process the actual output to stdout or errout (which could be very intensive in some scripts with loads of output).

Sorry for not replying sooner.
There could be lots of scripting possibilities, easy extending possibilities of ControlPlane
i.e. calling nmap or ping some machines, mac address look up, querying local dns,
checking if something is mounted (i.e. external hdd/nas disk)
call external program that turns on webcam snaps picture and parses it to "see" where computer is, this would fit pretty well on confidence as source with low confidence (i.e. webcamsnap | gocr  | grep for some text behind me in office)
That was of the top of my mind.
My idea was for users to able to easily extend ControlPlane without need to wait for feature request to be fulfilled or to mess with objective-c source code, just add call "simple" shell script to do the dirty work.

Pardon the dupe.  I was thinking "Rules" vs "Evidence Sources".
From the other issue: execution interval should be customizable, as different scripts may have different ideal intervals.  It might be appropriate to run one every two minutes, and another one every fifteen seconds.  Relatedly, it would be nice to execute all scripts and reset their interval timers upon system wake, ControlPlane starting, etc.
I agree a simple zero/nonzero exit code determination should be enough for a rule or evidence source to "match".  Text parsing can/should be performed by the script itself.

Yes, I'll be building in the ability to select how often the script should run.  Thanks for the additional input, it helps.
On Nov 10, 2011, at 11:35 AM, curby wrote:

Pardon the dupe.  I was thinking "Rules" vs "Evidence Sources".
From the other issue: execution interval should be customizable, as different scripts may have different ideal intervals.  It might be appropriate to run one every two minutes, and another one every fifteen seconds.  Relatedly, it would be nice to execute all scripts and reset their interval timers upon system wake, ControlPlane starting, etc.
I agree a simple zero/nonzero exit code determination should be enough for a rule or evidence source to "match".  Text parsing can/should be performed by the script itself.

Reply to this email directly or view it on GitHub:
https://github.com/dustinrue/ControlPlane/issues/61#issuecomment-2698350

Support for ShellScripts as an evidence source has been added /cc @stribor @curby


Cannot dynamic import multiple times a mocked module

Describe the bug
When dynamically importing several times the same mocked module, we may fail to import it on subsequent imports.
Reproduction
The reproduction will be clearer than the description above:
// src/main.js
const load = () => import("./constants");
export async function preload() {
  load();
}
export async function compute() {
  return (await load()).default;
}

// test/main.spec.js
import { test, vi ,expect} from "vitest";
import { preload, compute } from "../src/main";

vi.mock("../src/constants.js", () => ({ default: "from-mock" }));

test("sum", async () => {
  preload();
  expect(await compute()).toBe("from-mock"); // failing, we receive the unmocked value, if we drop preload it works
  // if we change compute to do: return { first: (await load()).default, second: (await load()).default };
  // we receive the unmocked and the mocked value
});

Reproduction at: https://github.com/dubzzz/imported-twice-vitest-bug
System Info
System:
    OS: Linux 6.5 Ubuntu 20.04.6 LTS (Focal Fossa)
    CPU: (2) x64 Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
    Memory: 5.50 GB / 7.74 GB
    Container: Yes
    Shell: 5.0.17 - /bin/bash
  Binaries:
    Node: 20.17.0 - ~/nvm/current/bin/node
    Yarn: 1.22.22 - /usr/bin/yarn
    npm: 10.8.2 - ~/nvm/current/bin/npm
    pnpm: 9.11.0 - ~/nvm/current/bin/pnpm
  npmPackages:
    vitest: ^2.1.8 => 2.1.8

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Thanks for the reproduction. It looks like there is some race condition around VitestMocker
https://github.com/vitest-dev/vitest/blob/2ce84d0f2642cf4dda930edb20158c28e17a274d/packages/vitest/src/runtime/mocker.ts#L162
https://github.com/vitest-dev/vitest/blob/2ce84d0f2642cf4dda930edb20158c28e17a274d/packages/vitest/src/runtime/mocker.ts#L356
There's a logic to bail out early when cyclic import, but that got kicked in even though this is not a cyclic import. I don't have a fix yet. For now, I prepared a simpler repro for debugging.
https://stackblitz.com/edit/github-r4fmamrp?file=test%2Fautomock.spec.js
import { expect, test, vi } from 'vitest';

vi.mock('./factory-target', () => ({ default: 'mocked' }));

test('automock', async () => {
  await import('node:path'); // need this to flush `Vitestmocker.resolveMocks`

  const all = await Promise.all([
    import('./factory-target').then((v) => v.default),
    import('./factory-target').then((v) => v.default),
    import('./factory-target').then((v) => v.default),
  ]);
  expect(all).toMatchInlineSnapshot(`
    [
      "mocked",
      "original",    // <- should be "mocked"
      "original",    // <
    ]
  `);
});

import { expect, test, vi } from 'vitest';

vi.mock('./automock-target');

test('automock', async () => {
  await import('node:path'); // need this to flush `Vitestmocker.resolveMocks`

  const all = await Promise.all([
    import('./automock-target').then((v) => v.default),
    import('./automock-target').then((v) => v.default),
    import('./automock-target').then((v) => v.default),
  ]);
  expect(all).toMatchInlineSnapshot(`
    [
      "original",
      undefined,   // <- should be "original"
      undefined,   // <
    ]
  `);
});

Thanks a lot for your investigation.
I just wanted to share how I found this issue. My test case is far from being the code I had initially 😅
I found this bug with a pretty usual React pattern around lazy loading (written from mobile do sorry for typos):
const Authenticated = lazy(() => import('./Authenticated')

function App() {
  const isAuthenticated = useIsAuthenticated()
  useEffect(() => {
    import('./Authenticated') // fire early load while user still logging
  })
  if (! isAuthenticated) return <Login />
  return <Suspense><Authenticated /></Suspense>
}


Transform HTML entities to unicode

The Babel JSX compiler converts HTML entities into the unicode characters they represent. In ReScript, we have to use the actual unicode directly. For some characters, like   this isn't always convenient.
Would it be possible for the React PPX to do the same transformation that Babel does? See their entity map for reference: https://github.com/babel/babel/blob/b3e2bcda73dea7d68b4c82bfabb92acb11b1ed90/packages/babel-parser/src/plugins/jsx/xhtml.js
Babel example
Input
let f = () => <div> </div>;

output
let f = () => /*#__PURE__*/React.createElement("div", null, "\xA0");

ReScript example
Input
let f = () => <div> {React.string(" ")} </div>

Output
function f(param) {
  return React.createElement("div", undefined, " ");
}

Note that "  will render as-is, not as an actual nonbreaking space character.

Will need to investigate what's possible!

Even if it isn't possible to transform strings via PPX, another possibility would be to include the entities as values like let nbsp = `\xa0`, which could be used like <div> {React.string(`foo${React.nbsp}bar`)} </div> .
Still a bit clunky, but it seems preferable to having to write the unicode by hand.

@johnridesabike I just asked Ricky and Maxim if it makes sense to first-class this into the syntax / ppx, and its hard to say if this particular feature would be justifiable from a complexity POV... or if it even makes sense in the long run.
So, would it be an option to create some independent HtmlEntity module (maybe within an example/) directory, that implements all the unicode characters mentioned above, and add an extra section to the rescript-react docs that points to that particular for copy / paste, so ppl can quickly use it in the manner you just described with {foo${HtmlEntity.nbsp}bar}? With @inline, this would actually be zero-cost even.
I personally created my own entity bindings in user-space, but having more guidance on the topic in the docs would be great.

That seems like a reasonable compromise. IMO the fact that there is no documentation on the topic, combined with people being used to HTML entities "just working" in Babel JSX, is the main issue. Even a unicode table in the docs that people can copy/paste from would be useful.
For the hypothetical HtmlEntity module, are you thinking of putting that in an example/ directory within the rescript-react repository, or make a separate repo (or even just a gist) that people can use to copy/paste from?

For anyone interested in copying entities into their own project, I just pushed a commit with an HtmlEntity module here: https://github.com/johnridesabike/coronate/blob/e42688a04f34eccf0003b428e0f13054dd80a9b2/src/HtmlEntities.res

Thanks Jon!
We could put your file in an "extra" folder in this project and link to it?

Yes! It was very easy to adapt from the Babel file, so feel free to link, copy, or do whatever with it.

@ryyppy Actually why put it into an "extra folder" and not make it a direct part of @rescript/react? Or maybe even the compiler (Dom.HtmlEntity or whatever)?
/cc @cristianoc

I don't see a problem with including it in Dom or Js or something similar. There's nothing React-specific in the file I made, even though it's based on the Babel-React source. It could be used with any kind of JavaScript output.


What is the exact version of tensorflow and Keras needed if I want to run the code？

tensorflow1.8-1.15 will be OK to run this model.


gemmlowp external dependency has been added to CMake.

Hi guys!
While compiling tf_core_kernels in Ubuntu using cmake, I found out that 'gemmlowp' external dependency is missing from CMake file. I just added and everything compiled.

Can one of the admins verify this patch?

@tensorflow-jenkins test this please.

Thanks for the contribution! I'm a little concerned that this will cause problems with the Windows CMake build (since IIRC gemmlowp uses some POSIX-specific headers), but we'll see how the tests look....

It's OK! I'll make it work just for unix based systems if something goes wrong.

Looks good, though I'm a little surprised... the file tensorflow/contrib/cmake/patches/gemmlowp/CMakeFiles.txt doesn't seem to do anything (unless there's some CMake implicit behavior that I wasn't aware of...).
Was the build not working before you made this PR? I'm concerned it might be a no-op....

Yes, me too !! I wasn't waiting for success for Windows build. I'll double check the issue and I'll post the errors I get.

Thanks for looking into it!

I cloned a fresh version of tensorflow form google repo. I started compilation on a fresh Ubuntu 16.04 LTS. Despite compiling zlib, grpc said it can't find the zlib.h .So I installed zlib1g-dev using apt-get.
loading initial cache file /home/kamran/data/prj/tensorflow/tensorflow/contrib/cmake/build/grpc/tmp/grpc-cache-.cmake
-- Configuring done
-- Generating done
-- Build files have been written to: /home/kamran/data/prj/tensorflow/tensorflow/contrib/cmake/build/grpc/src/grpc
[  1%] Performing build step for 'grpc'
[ 19%] Built target gpr
[ 19%] Building C object CMakeFiles/grpc_unsecure.dir/src/core/lib/compression/message_compress.c.o
/home/kamran/data/prj/tensorflow/tensorflow/contrib/cmake/build/grpc/src/grpc/src/core/lib/compression/message_compress.c:41:18: fatal error: zlib.h: No such file or directory
compilation terminated.
CMakeFiles/grpc_unsecure.dir/build.make:302: recipe for target 'CMakeFiles/grpc_unsecure.dir/src/core/lib/compression/message_compress.c.o' failed
make[5]: *** [CMakeFiles/grpc_unsecure.dir/src/core/lib/compression/message_compress.c.o] Error 1
CMakeFiles/Makefile2:104: recipe for target 'CMakeFiles/grpc_unsecure.dir/all' failed
make[4]: *** [CMakeFiles/grpc_unsecure.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make[3]: *** [all] Error 2
CMakeFiles/grpc.dir/build.make:113: recipe for target 'grpc/src/grpc-stamp/grpc-build' failed
make[2]: *** [grpc/src/grpc-stamp/grpc-build] Error 2
CMakeFiles/Makefile2:1595: recipe for target 'CMakeFiles/grpc.dir/all' failed
make[1]: *** [CMakeFiles/grpc.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
Compilation continued. The next error was for gemmlowp. Here is the error I got:
[ 45%] Building CXX object CMakeFiles/tf_core_ops.dir/home/kamran/data/prj/tensorflow/tensorflow/core/user_ops/fact.cc.o
[ 45%] Built target tf_core_ops
Scanning dependencies of target tf_core_direct_session
[ 46%] Building CXX object CMakeFiles/tf_core_direct_session.dir/home/kamran/data/prj/tensorflow/tensorflow/core/common_runtime/direct_session.cc.o
[ 46%] Building CXX object CMakeFiles/tf_core_direct_session.dir/home/kamran/data/prj/tensorflow/tensorflow/core/debug/debug_io_utils.cc.o
[ 46%] Building CXX object CMakeFiles/tf_core_direct_session.dir/home/kamran/data/prj/tensorflow/tensorflow/core/debug/debug_gateway.cc.o
[ 46%] Building CXX object CMakeFiles/tf_core_direct_session.dir/home/kamran/data/prj/tensorflow/tensorflow/core/debug/debug_graph_utils.cc.o
[ 46%] Built target tf_core_direct_session
Scanning dependencies of target tf_core_kernels
[ 46%] Building CXX object CMakeFiles/tf_core_kernels.dir/home/kamran/data/prj/tensorflow/tensorflow/core/kernels/one_hot_op.cc.o
[ 46%] Building CXX object CMakeFiles/tf_core_kernels.dir/home/kamran/data/prj/tensorflow/tensorflow/core/kernels/topk_op.cc.o
[ 46%] Building CXX object CMakeFiles/tf_core_kernels.dir/home/kamran/data/prj/tensorflow/tensorflow/core/kernels/quantized_conv_ops.cc.o
/home/kamran/data/prj/tensorflow/tensorflow/core/kernels/quantized_conv_ops.cc:21:29: fatal error: public/gemmlowp.h: No such file or directory
compilation terminated.
CMakeFiles/tf_core_kernels.dir/build.make:110: recipe for target 'CMakeFiles/tf_core_kernels.dir/home/kamran/data/prj/tensorflow/tensorflow/core/kernels/quantized_conv_ops.cc.o' failed
make[2]: *** [CMakeFiles/tf_core_kernels.dir/home/kamran/data/prj/tensorflow/tensorflow/core/kernels/quantized_conv_ops.cc.o] Error 1
CMakeFiles/Makefile2:3282: recipe for target 'CMakeFiles/tf_core_kernels.dir/all' failed
make[1]: *** [CMakeFiles/tf_core_kernels.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
I did clone another fresh version and I applied the PR. Everything compiled successfully. I don’t argue about the zlib right now but I think PR is not a no-op. About the Windows, there should be something preventing the gemmlowp entering the build process.

Ah, now I get it - it's a headers-only library, so there's no build step required. OK, changes look good and I'll run the tests just to confirm no breakage. Thanks!

@tensorflow-jenkins test this please.

Thank you. Is there any mailing list to ask questions about TF?

The best place for questions is the [tensorflow] tag on Stack Overflow!

I meant that I want to ask questions and give suggestions about the way examples are built and libraries are produced. I want to discuss ideas.

@tensorflow-jenkins test this please.

It seems some tests were failed becuase of some internal error, right ?

This is good to merge.


HTTP basic authentication.

Fixes #78.
I have not yet added any documentation/tests/etc, since I'd like to make sure you're happy with the approach.
I modelled the interface on request's basic auth, ie. adding an auth key to the config object, which can contain any combination of user/username and pass/password.
Thanks for creating axios, the codebase is very pleasant :)

Thanks for this PR. Looks great. Please add tests, and docs, then I'll get it merged.

@mzabriskie any chances of getting this merged?

@dzannotti yes, I intend to merge. @lachenmayer said that he would add some tests, and documentation first. Just waiting on that.

Sorry, haven't gotten around to this yet, should be able to do that tomorrow!

@lachenmayer any chance of getting this resolved? If not I'll do it myself.

Any updates on this? Would be really useful.

Closed in favor of #167


[BUG] - cardano-node fatal Error on starting the mainnet node with existing configuration files.

Internal/External
External
Area
Other   Any other topic (Delegation, Ranking, ...).
Summary
Cardano-node is shutting down due to a fatal Error while reading the topology file. This error happens only for mainnet, testnet is working fine.
Steps to reproduce
Steps to reproduce the behavior:
All the files were downloaded from and run the bash with following commands.
https://hydra.iohk.io/build/13695229/download/1/index.html
cardano-node run  --config $HOME/cardano-mainnet/mainnet-config.json
--database-path $HOME/cardano-mainnet/db
--socket-path $HOME/cardano-mainnet/db/node.socket
--host-addr <IP_ADDRESS>
--port 1302
--topology $HOME/cardano-mainnet/mainnet-topology.json
Error:
cardano-node: FatalError {fatalErrorMessage = "Cardano.Node.Run.handleSimpleNodeNonP2P.readTopologyFile: Cardano.Node.Configuration.Topology.readTopologyFile: home/cardano-mainnet/mainnet-topology.json\r: openBinaryFile: does not exist (No such file or directory)"}
Expected behavior
Node should start and sync the db
System info

OS Name: Ubuntu 64 bit
OS Version : 22.04
Node version : 1.35.3 git rev 950c4e222086fed5ca53564e642434ce9307b0b9
CLI version : 1.35.3 git rev 950c4e222086fed5ca53564e642434ce9307b0b9

Screenshots and attachments

If applicable, add screenshots, config files and/or logs to help explain the problem.

Additional context
Add any other context about the problem here.

The problem and its solution is plain from the error message:
cardano-node: FatalError {fatalErrorMessage = "Cardano.Node.Run.handleSimpleNodeNonP2P.readTopologyFile: Cardano.Node.Configuration.Topology.readTopologyFile: home/cardano-mainnet/mainnet-topology.json\r: openBinaryFile: does not exist (No such file or directory)"}

The file topology file seems to be missing. Provide a topology file (same please you got mainnet-config.json) and it should be fine.
Also check how you have defined the $HOME environment variable. There should be a leading /.

Hi Erik,
There was another problem with bash, not sorted out all okay. Thank you


Added RecordRawTransaction action

Also sneaked in a small STAS test (unknowingly)

Codecov Report

Merging #125 (ca0183e) into master (2bc26bb) will decrease coverage by 0.04%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #125      +/-   ##
==========================================
- Coverage   50.56%   50.52%   -0.05%
==========================================
  Files         108      108
  Lines       11650    11660      +10
==========================================
  Hits         5891     5891
- Misses       5356     5366      +10
  Partials      403      403

Flag
Coverage Δ

unittests
50.52% <0.00%> (-0.05%)
:arrow_down:

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

Impacted Files
Coverage Δ

action_transaction.go
31.00% <0.00%> (-1.13%)
:arrow_down:

utils/destination_types.go
63.07% <0.00%> (-2.01%)
:arrow_down:

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 2bc26bb...ca0183e. Read the comment docs.


fix: frontend request paths

Issue # (if applicable)
use discovery api to find the backend and use fetch api to automatically add the authentication token to the request
closes #57
Reason for this change
See #57
Description of changes

Description of how you validated changes

Checklist

[x] My code adheres to the CONTRIBUTING GUIDE

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

Thanks @drodil we'll be adding more tests soon to pick up stuff like this.

After more testing I'm running in to issues with cross-service authentication when the plugins try to call the catalog client. Looks like theres changes needed, I'm working on it now.

@niallthomson yeah you are missing the auth token for CatalogApi. You should use the coreservices.auth for getting token on behalf of the user. Something like this: https://github.com/backstage/backstage/blob/master/plugins/notifications-backend/src/service/router.ts#L92 but probably the onBehalfOf should come from httpAuth.credentials so that there is a check for user permissions to specific catalog entity.

Merged #59, will be checking backwards compatibility for some of the changes to see if docs need updated and then will release.


Create crypto-finance-forum.md

@WinsCodes new event, please add this as the host logo:

@laeccles This event has been added to the PL Events Portal.


Updating all material and emotion packages to their latest compatible versions

Current dependencies on/for this PR:

main

PR #2020   👈

This stack of pull requests is managed by Graphite.


ci: put smtp info as sealed secrets

:tada: This PR is included in version 1.1.3 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


fix: fix regex for multi-digit counts

Signed-off-by: Bob Callaway<EMAIL_ADDRESS>

Codecov Report

Merging #1321 (591927d) into main (b446717) will decrease coverage by 20.44%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@             Coverage Diff             @@
##             main    #1321       +/-   ##
===========================================
- Coverage   63.29%   42.86%   -20.44%
===========================================
  Files          82       74        -8
  Lines        7869     7421      -448
===========================================
- Hits         4981     3181     -1800
- Misses       2259     3911     +1652
+ Partials      629      329      -300

Flag
Coverage Δ

e2etests
?

unittests
42.86% <ø> (+0.04%)
:arrow_up:

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

 Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Adds Signature Update Endpoint - Merge after PR #753

Issues:  #707
Problem:
Seventh Sixth of the ASM PR series, this PR has to be merged after PR #753.
Analysis:
Adds Signature Update ASM endpoint with functional and unit tests.
Tests:
Unit Tests
Flake8
Functional Tests

@zancas @caphrim007 @jasonrahm

@wojtek0806 next

@caphrim007 done


*: Replace github.com/nspcc-dev/neofs-api-go/v2 module

[x] ReadFromV2 / WriteToV2
[x] request/response sign/verify funcs
[x] Client

coding is now complete. Looking at the failed AIO tests
im almost 100% sure some diffs can be considered as a separate change not related to the main commit. Due to the large volume, I decided not to bother and get a fully working final result. Separation would require more time than benefit
also pay attention to doc proposals (@roman-khimov):

https://github.com/nspcc-dev/neofs-sdk-go/pull/667#discussion_r1879849516
https://github.com/nspcc-dev/neofs-sdk-go/pull/667#discussion_r1879850259

misclick

Can we go type by type with this?

all types follow the same approach. We can discuss on one example yeah

I mean the PR. Initial patches can be merged as is. But types better be converted one after another, at least per-package. Some other client changes also deserve additional attention, but it's impossible to check.

got it. No, I won't do this. All these types follow the same approach. Maintaining 20 commits 1 depending from all others is just a meaningless overhead. Pkgs can be reviewed one by one instead. Although I understand ur concern, it'd be hard to review for me as well
also, I wouldn't be able to fix panics in tests

i'll try my best to split 1 commit into 3 ones:
1 all packages except client
2. client
3. simplify client implementation

nah, ive done my maximum and just split client/*  changes from the rest. No matter how hard I try to go pkg-by-pkg, it only leads to panics and redundant hacks. At this point it's just not worth the time


⚠ Bofrost.be has degraded performance

In 9c55ea9, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1196 ms

Resolved: Bofrost.be performance has improved in ae0e642.


attributes shall be resolveable on registered clients

Is your feature request related to a problem? Please describe.
When I register a client like:
from authlib.integrations.starlette_client import OAuth,
oauth = OAuth()
oauth.register(
        name="example",
        client_id=client_id,
        client_secret=client_secret,
        server_metadata_url=well_known_url,
        client_kwargs={"scope": "openid profile email"},
        code_challenge_method="S256",
    )

and I access it via:
oauth.example.authorize_redirect(request, redirect_uri)
the attribute "authorize_redirect" is not resolvable via my editor (VSCode) and Pylance complains
"authorize_redirect" is not a known member of "None".
Describe the solution you'd like
Registered clients shall be resolvable on the client object, so that I can easily browse references of authlib registered clients using my editor.
There is kind some magic happening in the background e.g. which OAuth client is finally chosen. It would be great to get this visible on each registered client.

You can use:
client = oauth.create_client('example')
client.authorize_redirect

Your editor should be able to inspect in this way.


Deprecate <0.12.x graphql for most packages, upgrade codemirror to interface/parser 2.x

because utils now requires graphql-js < 0.12.x
make sure all downstream dependents reflect that peer resolution change
upgrade codemirror-graphql to use ^2.0.1 interface/parser

@Neitsch this plus package bumps as the icing on the cake for this round? looks like we will need a few minor/major bumps because of this, even?

hmm... might need to just close this and slice this differently yet again, haha


README.md: fix image src links pointing to website

Fix image src links pointing to website image folder. Addresses https://github.com/flutter/website/pull/1169#issuecomment-415220826.

LGTM

Sorry that I interferred here :-/
I found https://github.com/flutter/flutter/issues/20940 and updated the README directly.

No worries. The important point is that it is fixed. Thanks!


Sporadic buffer overrun

@EDsteve @OOHehir  I noticed sporadic buffer overruns. WAV buffer as well as inference buffer overruns.
I attached a log file and the config
I have seen this in various sporadic occurance of this, even with rather low sample rates.
I did a test with disabled "logToSdCard" and the result is much better, but still even here some WAV buffer overrun appear:
log without sdcard logging

@OOHehir I added a commit which pins each of the critical tasks to a specific core to give the system less random nature.
My idea was to keep I2S sample & wav writer on core 0 which giving AI a separate core 1 as it will be the most performance intense task. But that is free to be changed.
I also added the core IDs of the tasks to the performance monitor

@LIFsCode Do you think SD card access is the bottleneck? The EI task writes to the SD card with inference results just in case you're not aware....
ED has asked for a change (#68) to this logging which should result in less SD access. Also I'll make the wav_writer & inference tasks less verbose which should reduce the logging required.

@LIFsCode There's scope for more terminal output reduction if necessary

@OOHehir @EDsteve I did some more tests last week and I'm pretty sure the SD card writing is the bottle neck. Unfortunately this also depends on the SD card type itself.
In fact the theoretically achievable speed is high enough for our requirements, but somehow we seem to be far off this theoretical speed.
I will write some tests to get a better understanding of the achievable write speeds with different file sizes. Let's hope this gives us a better understanding

@OOHehir @EDsteve I did a lot of measurements the last weeks and it turns out it is very likely that the buffer overuns are related to the SD card write speed.
I noticed significant different amount of buffer overruns with different SD card types which have differen write speed performance. I guess that's one of the reasons for different error probability in our different setups.
Besides that I could identify several things affecting the SD card wirte performance:

Multiple Filesystem updates will significantly slow down write speed as it will result in intensive read modify write operations. File system updates are triggered by creating files, fsync, renaming etc.
small file writing has also extremely bad impact concerning write performance

To sum it up, I guess the Log to SD card (and maybe the AI CVS file, but most likely neglectable) is the major cause for the WAV Buffer overruns.
I will try to work around that issue by assembling the log data first in a RAM buffer and writing only full sector size entries to the file system, but that will take a while. This would include extracting the Lof file write to a low priority system task, so that it does not interfer with the WAV writer. Currently the Log files are written from the same context where the last ESP_LOGI() message is called and that could be a high priority task, thus potentially blocking the WAV writer
@OOHehir: what do you think about replacing the 2 WAV Buffers by e.g. 4 buffers (maybe half the size each) that would give us more tolerance if another SD card write is currently happeing and the SD card writing is taking longer.

@LIFsCode @EDsteve A number of related observations:

Currently after a wav file is being finished the header (at the start of the file) is amended with the actual file size. This involves a seek which I imagine (haven't tested) attracts a performance penalty. Fixing the file size (#71) to exactly 60 secs (for example) would allow this the header to be written correctly at file creation.
Most file openings or writes require a SD card check for available size & mount state. I imagine this attracts another penalty. Perhaps a low priority thread which runs once per minute (at most) that checks the card is mounted & records the available size would be more appropriate. Operations would then just check this retained value at opening/ write.

@LIFsCode Sure, I can modify the code, might be Friday before I get a chance. Perhaps benchmarking the change would be useful but I imagine it would be hard to get consistent/ useful results.

@LIFsCode @EDsteve I tried reducing the two WAVFileWriter buffers from
 static const size_t wav_static_buffer_size = (static_cast<int>((1024 * 3) * 2/512)) * 512;

to
 static const size_t wav_static_buffer_size = (static_cast<int>((1024 * 1) * 2/512)) * 512;

The results look encouraging, during a quick test I didn't observe any unexpected wav buffer overruns. I attach logs of the output with the write performance output. I'm using a class 10 card, the write performance is:
larger buffers generally 1024 MB/s (worst 204 MB.s)
smaller buffers generally 680 MB/s (worst 151 MB.s)
Perhaps more than 2 buffers won't be required? It'll need more testing of course. I've made the changes on the PerfDebugging branch.

I didn't upload the logs either!
buffer_1024.txt
buffer_3072.txt

@OOHehir: I just run the code with reduced buffer sizes and acutally I get significant more WAV buffer overruns.
I think that makes sense, since the write speed is slower with smaller files. I guess the different behavior concerning buffer overruns highly depends on the used sd card.

@OOHehir Here is the summary of tests I did with SD card write speed with different file & block sizes

#### Test with ESP IDF

I (11790) SD_TEST: Total file size same as block size
I (11791) SD_TEST:     1 passes @  1KB = 1024
I (11971) SD_TEST: Write:     5 kB/s
I (11971) SD_TEST: Read:   204 kB/s
I (11981) SD_TEST:     1 passes @  2KB = 2048
I (12011) SD_TEST: Write:    55 kB/s
I (12021) SD_TEST: Read:   292 kB/s
I (12031) SD_TEST:     1 passes @  4KB = 4096
I (12061) SD_TEST: Write:   110 kB/s
I (12071) SD_TEST: Read:   372 kB/s
I (12081) SD_TEST:     1 passes @  8KB = 8192
I (12111) SD_TEST: Write:   221 kB/s
I (12121) SD_TEST: Read:   512 kB/s
I (12131) SD_TEST:     1 passes @ 16KB = 16384
I (12171) SD_TEST: Write:   390 kB/s
I (12201) SD_TEST: Read:   564 kB/s
I (12201) SD_TEST:     1 passes @ 32KB = 32768
I (12241) SD_TEST: Write:   712 kB/s
I (12301) SD_TEST: Read:   606 kB/s
I (12301) SD_TEST:     1 passes @ 64KB = 65536
I (12351) SD_TEST: Write:  1213 kB/s
I (12491) SD_TEST: Read:   481 kB/s
I (12491) SD_TEST: Done.

I (8780) SD_TEST: Total file size 1048576
I (8990) SD_TEST:  1024 passes @  1KB = 1048576
I (108610) SD_TEST: Write:    10 kB/s
I (110150) SD_TEST: Read:   682 kB/s
I (110860) SD_TEST:   512 passes @  2KB = 1048576
I (113070) SD_TEST: Write:   358 kB/s
I (114630) SD_TEST: Read:   672 kB/s
I (114650) SD_TEST:   256 passes @  4KB = 1048576
I (116070) SD_TEST: Write:   730 kB/s
I (117630) SD_TEST: Read:   672 kB/s
I (117650) SD_TEST:   128 passes @  8KB = 1048576
I (119290) SD_TEST: Write:   630 kB/s
I (120930) SD_TEST: Read:   642 kB/s
I (121260) SD_TEST:    64 passes @ 16KB = 1048576
I (122750) SD_TEST: Write:   575 kB/s
I (124380) SD_TEST: Read:   644 kB/s
I (124740) SD_TEST:    32 passes @ 32KB = 1048576
I (125650) SD_TEST: Write:   826 kB/s
I (127400) SD_TEST: Read:   597 kB/s
I (127430) SD_TEST:    16 passes @ 64KB = 1048576
I (128330) SD_TEST: Write:  1132 kB/s
I (130490) SD_TEST: Read:   485 kB/s
I (130490) SD_TEST: Done.

#### Test with ESP IDF

I (9711) SD_TEST: Total file size 1048576
I (9841) SD_TEST:  1024 passes @  1KB = 1048576
I (109693) SD_TEST: Write:    10 kB/s
I (111736) SD_TEST: Read:   513 kB/s
I (112033) SD_TEST:   512 passes @  2KB = 1048576
I (113935) SD_TEST: Write:   477 kB/s
I (116002) SD_TEST: Read:   507 kB/s
I (116019) SD_TEST:   256 passes @  4KB = 1048576
I (117064) SD_TEST: Write:   988 kB/s
I (119134) SD_TEST: Read:   506 kB/s
I (119152) SD_TEST:   128 passes @  8KB = 1048576
I (120279) SD_TEST: Write:   916 kB/s
I (122336) SD_TEST: Read:   509 kB/s
I (122362) SD_TEST:    64 passes @ 16KB = 1048576
I (123792) SD_TEST: Write:   720 kB/s
I (125849) SD_TEST: Read:   509 kB/s
I (125880) SD_TEST:    32 passes @ 32KB = 1048576
I (126720) SD_TEST: Write:  1205 kB/s
I (129244) SD_TEST: Read:   415 kB/s
I (129275) SD_TEST:    16 passes @ 64KB = 1048576
I (129787) SD_TEST: Write:  1934 kB/s
I (132300) SD_TEST: Read:   417 kB/s
I (132301) SD_TEST: Done.

The actual values differ quite a lot, so this is not statistically proven, but gives a hint about effect of write block size and write performance.
It is always the same file size which is written, but with different number of blocks with different sizes.
This clearly shows that block writes with less than 2 or 4k are extremely inefficient.
So this is definetly a strong hint to rework the logging framework: https://github.com/LIFsCode/ELOC-3.0/issues/73

@LIFsCode Out of interest do you know what SD class the card above is? I'm using a class 10.
Do you think reducing the wav buffer size is useful/ worthwhile? Currently the wav class writes out to the SD card when a buffer is filled & a signal is received from the I2S class. If we want multiple (i.e >2) wav buffers it might make sense to move to a single circular buffer & write out in 2K chunks. I'd be concerned that if the ELOC is expected to record for hours continuously this may just put off the inevitable overruns however.
The other option is to restrict support to SD cards of a min class. A quick look online suggests Class 10 cards are fairly common/ min standard.

I must admit I have no idea, I'm using a fairly old SD cardamd I can't read the model anymore, so it's most likely not a class 10

@LIFsCode @EDsteve OK, I'll think I'll revert the changes above & come back to this if its still an issue after #73 is implemented

@EDsteve I added a new command with this commit 104111e: getSdSpeedTest
This gives you a measure for the speed of the sd card. Should only be executed when the ELOC is idle.
It tests writing a 512kByte file with different block sizes (1k - 64k)

@LIFsCode
Took a while but i have results. All cards we use have minimum 220KB/s write speads. That should be fine.
Here two screenshots from Lexar card and Sandisk:

LEXAR:
SANDISK:

@EDsteve Have you seen this issue recently? Think it can be closed?

@OOHehir
You are right. Haven't seen it in a long time. -> CLOSED


content(rxjs): avoid memory leaks

Use publishReplay and refCount instead of shareReplay to avoid memory leaks.
See https://github.com/ReactiveX/rxjs/issues/3336

I'll update this asap with the refCount and a link to the publishReplay(1).refCount()

@thekiba Would you like to change this PR to the latest API of shareReplay to avoid possible memory leaks with shareReplay(1). Now that this PR was merged, I think we can change it.

@d3lm Thanks for, I can.
But what do you think about that? https://github.com/ReactiveX/rxjs/issues/4530
shareReplay still has different behavior with publishReplay and refCount.

Thanks for changing your PR. I think that what's discussed in the issue you mentioned is for this checklist item negligible because shareReplay, with the new config option, doesn't cause memory leaks anymore. The point of discussion in that issue is that it still doesn't behave the same way as publishReplay().refCount() but that is by design, to make shareReplay and other variants such as share retryable as opposed to the solution with publishReplay.
I think we can merge this one.
@KwintenP What do you say?

SGTM. Thanks for your addition!


A bug about DeviceScaleFactor

code :
package main

import (
	"fmt"

	"github.com/hajimehoshi/ebiten/v2"
	"github.com/hajimehoshi/ebiten/v2/inpututil"
)

type Test struct {
	isHighDPI bool
	c         WindowDragCoordinator
}

func (t *Test) Update() error {
	t.c.Update()
	return nil
}

func (t *Test) Draw(screen *ebiten.Image) {
	return
}

func (t *Test) Layout(outsideWidth, outsideHeight int) (screenWidth, screenHeight int) {
	if t.isHighDPI {
		s := ebiten.DeviceScaleFactor()
		return int(s) * outsideWidth, int(s) * outsideHeight
	}
	return outsideWidth, outsideHeight
}

func NewTest() *Test {
	return &Test{}
}

func main() {
	g := NewTest()
	g.isHighDPI = false
	ebiten.SetWindowSize(200, 200)
	err := ebiten.RunGame(g)
	if err != nil {
		fmt.Println(err)
	}
}

type Point struct {
	x, y int
}

type mouse struct {
	current, init Point
}

func (m mouse) String() string {
	return fmt.Sprintf("x %d y %d  fx %d fy %d", m.current.x, m.current.y, m.init.x, m.init.y)
}

func (m mouse) Diff() (dx, dy int) {
	return m.current.x - m.init.x, m.current.y - m.init.y
}

func (m *mouse) SetInitPosition() {
	m.init.x, m.init.y = ebiten.CursorPosition()
}

func (m *mouse) RefreshCurrentPosition() {
	m.current.x, m.current.y = ebiten.CursorPosition()
}

type window struct {
	current, init Point
}

func (w *window) RefreshCurrentPosition() {
	w.current.x, w.current.y = ebiten.WindowPosition()
}

func (w *window) GetSize() (width, height int) {
	return ebiten.WindowSize()
}

func (w *window) SetInitPosition() {
	w.init.x, w.init.y = ebiten.WindowPosition()
}

func (w *window) GetMax() (x, y int) {
	wWidth, wHeight := w.GetSize()
	mx, my := ebiten.ScreenSizeInFullscreen()
	return mx - wWidth, my - wHeight
}

func (w *window) MoveBy(dx, dy int) {
	w.current.x += dx
	w.current.y += dy
	maxX, maxy := w.GetMax()
	if w.current.x < 0 {
		w.current.x = 0
	}
	if w.current.x > maxX {
		w.current.x = maxX
	}
	if w.current.y < 0 {
		w.current.y = 0
	}
	if w.current.y > maxy {
		w.current.y = maxy
	}
	ebiten.SetWindowPosition(w.current.x, w.current.y)
}

type WindowDragCoordinator struct {
	mouse  mouse
	window window
	isHold bool
}

func (c *WindowDragCoordinator) Update() {
	if inpututil.IsMouseButtonJustPressed(ebiten.MouseButtonLeft) {
		c.mouse.SetInitPosition()
		c.window.SetInitPosition()
		c.isHold = true
		return
	}
	if inpututil.IsMouseButtonJustReleased(ebiten.MouseButtonLeft) {
		c.isHold = false
		return
	}
	if !c.isHold {
		return
	}
	c.mouse.RefreshCurrentPosition()
	c.window.RefreshCurrentPosition()
	c.window.MoveBy(c.mouse.Diff())
}

Are you using macOS?

yes

I cannot reproduce this.

What does DeviceScaleFactor return?
Are you using multiple monitors?

From your code, I don't think this is a bug. Two types of units are mixed:

SetWindowPosition accepts a device-independent pixel that is NOT affected by DeviceScaleFactor
CursorPosition returns a logical position that is affected by DeviceScaleFactor

So, in hi-DPI mode, you should divide m.current.x and m.current.y by DeviceScaleFactor.
Does this make sense?

I usually use another monitor, but after unplugging the monitor, it still appears.
I hope the following information is useful.
OS: MacBook Pro (13-inch, M1, 2020) Apple M1
DeviceScaleFactor  return 2

I cannot reproduce this.

What does DeviceScaleFactor return?
Are you using multiple monitors?

Thanks, i'll try right away

From your code, I don't think this is a bug. Two types of units are mixed:

SetWindowPosition accepts a device-independent pixel that is NOT affected by DeviceScaleFactor
CursorPosition returns a logical position that is affected by DeviceScaleFactor

So, in hi-DPI mode, you should divide m.current.x and m.current.y by DeviceScaleFactor.
Does this make sense?

Thanks, i'll try right away

From your code, I don't think this is a bug. Two types of units are mixed:

SetWindowPosition accepts a device-independent pixel that is NOT affected by DeviceScaleFactor
CursorPosition returns a logical position that is affected by DeviceScaleFactor

So, in hi-DPI mode, you should divide m.current.x and m.current.y by DeviceScaleFactor.
Does this make sense?

Thanks for telling this, but it didn't work after I tried
func (m mouse) DiffWithDeviceScaleFactor(scale float64) (dx, dy int) {
	dx, dy = m.Diff()
	dx /= int(scale)
	dy /= int(scale)
	return
}

....

	if c.isHiDPI {
		c.window.MoveBy(c.mouse.DiffWithDeviceScaleFactor(ebiten.DeviceScaleFactor()))
	} else {
		c.window.MoveBy(c.mouse.Diff())
	}

The branch version I use : master
commitId: dd4d2f6aa046

c.mouse.DiffWithDeviceScaleFactor(ebiten.DeviceScaleFactor())

What kind of values are obtained here?

c.mouse.DiffWithDeviceScaleFactor(ebiten.DeviceScaleFactor())

What kind of values are obtained here?

Sorry, my fault, I did not assign the c.isHiDPI variable correctly, which caused the logic to not take effect. Now the problem is solved.
Thank you so much again

I'm happy that you have solved the issue!


Added source generator for component registry

This PR adds a source generator that creates a [Component] attribute for you and if you mark your components with it, it will automatically register them in the component registry on application launch. This fixes some AOT issues.
This new package should probably be deployed as it's own NuGet package

Looks great so far! :)
Just my two cents, it would be great if you could add some sort of data model class. This is normally not required but i think it often makes the code more readable. And the code-generating methods could be outsourced to a stringbuilder overload to decouple it further. The other two gens are already using that approach, so all of them would use an equal approach ^^
So it would work like this:

Create the Model, the struct/class that represents the GeneratedComponentRegistry with the Types it will register
Convert that model to string by a StringBuilder extension e.g. like : new StringBuilder.AppendGeneratedComponentRegistry(Model model);

However that's complaining at a high level, otherwise its fine and I'm thankful for this addition! :)

@genaray Let me know if these new changes are good. :)


any movement on this project?

Is there an updated fork of this project?
Chipmunk 6 is the current version.
I have this integration working in a demo app on iOS 5 (seriously).
I am looking for a chipmunk ruby integration that can target at least version 5 of chipmunk. thanks
taking this project at least this far.

Hey,
I'm not really improving this project as I don't use Chipmunk-Ruby at the moment. But feel free to fork it and upgrade or improve the way you like.
Personally I don't have time to continue with this project at the moment.
-- Ladislav


Error in format of meter phase to phase voltage variables, some prefix c_ issues, storage to influxdb

Hi.
Thanks for nice work.
I found small errors on following inverter telegrams:

Please correct formta of four voltages to unsigned from signed values in your program.
Line to Line Voltage
40199 M_AC_Voltage_L L
40201 M_AC_Voltage_A B
40202 M_AC_Voltage_B C
40203 M_AC_Voltage_C A

All meter variables should be have not the same prefix as inverter c_ vars, maybe m_ ?
Same battery variables not c_vars, maybe b_ ? Or is this correct ?
After change of prefix I can see in json all meter variables.
In normal ASCII non json format the meter variavbles are not shown.

Storage in influxdb should be by measutrement in separate series, not all in a serie like inverter and meter ....
This needs parsing of json variables before storage into Influxdb.

Best regards,
Jozef

It's working now for me, also please close issue. I'm importing modbus vars into openhab2.

Hi.
The text formated, non JSON output displays only INVERTER values.
Why I can't see in text values from meter1 please ?


Correctly serialising a convolution layers

Closes #67.

Coverage remained the same at 100.0% when pulling 99bce395fe9bd8f67584217ad269133de7a1a10d on conv into d1825810e87897683ef9c48a0935d78b6ec6d6f3 on master.


请问有人运行成功了吗这个代码？可以请教一下吗/

我运行成功了但是作者给出requirement缺失了很多，需要自行安装库

Besides, the file “super_resolution.yaml” needs to be modified according to your own path.

Besides, the file “super_resolution.yaml” needs to be modified according to your own path.

hello, can you save the SR images when Test_model is ASTER?  I have some questions.  See Issues...
my email<EMAIL_ADDRESS>

Besides, the file “super_resolution.yaml” needs to be modified according to your own path.

I met some questions when I ran this code.For example,'RuntimeError: cuDNN error: CUDNN_STATUS_EXECUTION_FAILED'occurred after several training epoches.Can you contact me to make a communication,thanks.my<EMAIL_ADDRESS>

I ran it successfully. But the requirements given by the author are incomplete, and you need to install the missing libraries yourself

Why does the eval stage take a particularly long time and half an hour? I trained for 100 epochs, and the highest accuracy is only about 73%.


Add missing semicolon to knobs addon readme

What I did
Fix missing semicolon in knobs addon readme

thanks @desfero @wuweiweiwu !


Add 'override' to built-in make variables

Summary
Currently, setting CXXFLAGS and friends from the command line for make drops all the custom configuration we do. This causes issues like https://github.com/stan-dev/cmdstanpy/issues/732
This uses make's override directive:

If a variable has been set with a command argument (see Overriding Variables), then ordinary assignments in the makefile are ignored. If you want to set the variable in the makefile even though it was set with a command argument, you can use an override directive...
To append more text to a variable defined on the command line, use:
override variable += more text

Tests
None
Side Effects
This does make it difficult to completely replace the CXXFLAGS variable Stan uses, but I think that is okay? We allow you to configure basically all the individual pieces already using e.g. TBB_LIB
Release notes
Checklist

[x] Copyright holder: (fill in copyright holder information)
The copyright holder is typically you or your assignee, such as a university or company. By submitting this pull request, the copyright holder is agreeing to the license the submitted work under the following licenses:
- Code: BSD 3-clause (https://opensource.org/licenses/BSD-3-Clause)
- Documentation: CC-BY 4.0 (https://creativecommons.org/licenses/by/4.0/)

[x] the basic tests are passing

unit tests pass (to run, use: ./runTests.py test/unit)
header checks pass, (make test-headers)
dependencies checks pass, (make test-math-dependencies)
docs build, (make doxygen)
code passes the built in C++ standards checks (make cpplint)

[x] the code is written in idiomatic C++ and changes are documented in the doxygen

[x] the new changes are tested

Whoa. Are we on make 4.4 yet? I don't think the override keyword is available for 3.81.

@WardBrian awesome! I didn't realize override was in 3.81.
+1 to @SteveBronder's approval!


chore: add default_version and codeowner_team to .repo-metadata.json

Set codeowner_team to @googleapis/api-bigquery as codeowner. This change is needed for the following synthtool PRs.
googleapis/synthtool#1201
googleapis/synthtool#1114

Investigating Kokoro failure here: https://github.com/googleapis/python-bigquery-sqlalchemy/issues/346


[BUG] Get-PnPList -Identity Lists/ListName fails with an exception if List does not exist

Reporting an Issue or Missing Feature
An Issue with Get-PnPList when used with the -Identity  switch
Expected behavior
The command  Get-PnPList -Identity "Lists/Pages" should either retuirn a list reference or $null if no such List exists
Actual behavior
Get-PnPList -Identity Lists/Pages Get-PnPList: List 'Lists/Pages' does not exist at site with URL 'https://ELIDED.sharepoint.com/teams-and-projects/platform-dev/operational-services'.
Steps to reproduce behavior
Connect-PnPOnline https://myIntranet.sharepoint.com/sites/mySite
Get-PnPList -Identity Lists/Pages
What is the version of the Cmdlet module you are running?
2.2
Which operating system/environment are you running PnP PowerShell on?

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

hi @TullettJay , this is as designed.
You can specify -ErrorAction SilentlyContinue and it will return null.


EMP-953 Update Spend v4 documentation with restrictions and char length

What does this PR do?
Update Spend v4 documentation with restrictions and char length
Motivation and Context:
Users need to know character lengths for fields and chart restrictions.

@wujasmine We put the length requirements at the end of the description typically because that allows for a better table structure. Where you have YYYYMMDD for the format, that should stay in the format column.

@RoAnnC1, so should the description should be looked like the following? Or can you provide a sample? Thanks.

Name
Type
Format
Description

reimbursementCurrency
string
-
Required Valid three digit or letter currency code in the list of system reimbursement currencies. Length: 3 characters only

@eddyclhung
The above format is correct. Although it would be clearer to say either "Maximum length 3 characters" or "Length 3 characters"
The first implies there's a range from 1-3, the second is that it's always 3.

RoAnnC1

Sounds good, will edit!

@RoAnnC1  Let me know if everything looks OK now, thanks!


networking demo

empyrean just shared this on irc: https://github.com/jrimclean/godot-networking

https://github.com/Calinou/awesome-godot/commit/26975301b0e1aaa51ef433ddea129528c389c4fa


tex2jax, $ delimiters might ignore escaped $

Via the AMS. With processEscapes:true, e.g., this

 \$1 -- \$2 -- \$3 -- $4 -- \$5 -- \$6

is turned into

 $1 -- $2 -- $3 -- $4 -- \$5 -- \$6

I'm guessing tex2jax starts lookin for another $ to match $4, reaches the end of the text node, realizes it can stop and never goes back to convert the escaped \$.
Would you consider this a bug?

Thanks, Davide.

No problem.  It looks like I will be putting together a 2.7.4 release (for within the next two weeks).  If you have anything else in the hopper that you haven't reported, let me know.

==> In testsuite
Parsing/issue1960.html


Update Inventory Setups to v1.20.0 and update Bank Tag Layouts to 1.4.33 (Core BTL Migration)

Core BTL migration for inventory setups.
Disable inventory setups integration in hub BTL

I approve


Input type not propagated to native input

Describe the bug
When setting the type of an input to "number" and then binding the value it will result in a string being assigned instead of a number.
Reproduction
https://stackblitz.com/edit/github-xrre8u?file=src%2Froutes%2F%2Bpage.svelte
Logs
No response
System Info
System:
    OS: Linux 5.15 Debian GNU/Linux 11 (bullseye) 11 (bullseye)
    CPU: (16) x64 AMD Ryzen 7 5800X 8-Core Processor
    Memory: 10.56 GB / 15.57 GB
    Container: Yes
    Shell: 5.1.4 - /bin/bash
Binaries:
    Node: 20.9.0 - ~/.nvm/versions/node/v20.9.0/bin/node
    npm: 10.1.0 - ~/.nvm/versions/node/v20.9.0/bin/npm
    pnpm: 8.14.1 - ~/.nvm/versions/node/v20.9.0/bin/pnpm
    bun: 1.0.2 - ~/.bun/bin/bun
npmPackages:
    @sveltejs/kit: ^2.3.2 => 2.3.2
    bits-ui: ^0.14.0 => 0.14.0
    formsnap: ^0.4.2 => 0.4.2
    svelte: ^4.2.8 => 4.2.8
    sveltekit-superforms: ^1.13.3 => 1.13.3

Severity
annoyance

duplicate of #312 and #146
if you're looking for a workaround for zod, check out #574

I saw that solution but in my case i'm not using zod so that's not a solution. I have fixed it by just converting the string to a number in a later stage of my process but it would be useful to be able to just bind the value. I have also figured out that this seems to be svelte expected behaviour.
#146 Proposed a solution but is hacky as they mention.

Yeah this is expected behavior. If you want, you could create a separate NumberInput component.


switching window

Switch window function is still good before, now also need to choose, very troublesome

。


Partner Articles link white screen

Likely a martsy issue, on prod, clicked through to a partner in search, tapping their articles showed a white screen:

Is this what you mean by blank?
https://m.artsy.net/ybca/articles

Moved to https://github.com/artsy/microgravity/issues/956.

Fixed.


map does not adapt map view to show all information of infowindows

Context
If you enable the Popups option of a Builder map and click on a geometry that is located at the corner of the screen, when you click on the geometry and the infowindow appears, the view of the map does not adapt the center view for the infowindow, part of the infowindow is hided by the limits of the screen.
Steps to Reproduce

Create a map with CARTO
Enable the infowindow popup
Click on a geometry that is near the limits of the screen/map view
Part of the infowindow is hided by the limits of the screen/infowindow and you need to change the map view manually to see all the information of the infowindow.

Current Result
This is the current result when you click on a geometry that is near the limits of the screen/map view.

Expected result
It is expected that the center view of the map will change in order to show all the information of the infowindow

That's a problem from CARTO.js, reassigning and moving there @alonsogarciapablo.

Issue moved to CartoDB/cartodb.js #1509 via ZenHub


Doxygen infrastructure

Doxygen has been included in the build system.
The documentation is generated simultaneously with the binaries during build
with 'make', or independently with 'make doc'.
Documentation files are stored by default into build/doc.
Signed-off-by: Guilherme Campos Camargo<EMAIL_ADDRESS>

LGTM. I was wondering if it would be better or not to wait until we have actual documentation on the code, but I think it's harmless to just merge this now and keep on adding docs in separate commits, so go for it.


Is this project dead?

Hi, this plugin is not compatible with latest versions of the arango-java-driver as it uses deprecated/non existing methods. Any plans to update it @bguerout ? Thanks 🙏

Don't known exactly what is ArangoDB.
A fork of MongoDB ?


Tests and benchmarks don't work

I installed mongofill-hhvm and I tried to execute
php ./vendor/bin/athletic -b tests/bootstrap.php  -p tests/Mongofill/Benchmarks/

but it seems to me that files are missing starting from ./vendor/bin/athletic.
Then I tried to run just bootstrap.php, now the missing file was autoload.php.
I think there are just some missing files and maybe my mongofill-hhvm is working fine, but I was looking for a quick way to check that.

you must to use composer.


Update access_mutual_tls_certificate.md

At this time, you can only use the MTLS API with API key and not API token. See JIRA TRAIN-1690

thanks for the PR! unfortunately, the file you've edited is a generated artifact of the documentation process. to see how to make changes to the documentation, you're best to check out https://github.com/cloudflare/terraform-provider-cloudflare/blob/master/contributing/registry-documentation.md


data-show doesn't work for modal

The documentation implies that by setting data-show on a modal, I can get a dialog to open on page load without any corresponding javascript.
http://jsfiddle.net/KBqr4/1/
I fooled around with it,  data-keyboard="1" works for true and data-keyboard="" works for false, but data-show="1" doesn't appear to have any effect.
It's easy enough to use Javascript; a note in the documentation that data-show doesn't work will satisfy me and hopefully prevent others from wasting time trying to get it to work.

Bootstrap version 3.3.2 and I still have a hard time understanding this.
Shouldn't the bootstrap.js file contain the:
$('*[data-show]').modalDataShow(); in a $(document).ready(function()?
Thus any modal you have where you add the option data-show="true", it will display the modal popup when the page renders?
If you put data-backdrop="static" you don't need to add javascript in order for the modal not to close when the user clicks anywhere on the screen.
I guess that is why it doesn't feel very logical.
Maybe the option has some other meaning and a few of us are misinterpreting it as an option to show when the page renders. Maybe a *Note on this option to explain the option isn't for that but for something else and if you do want it to work like that then the line above in your document.ready will achieve that type of functionality when your page renders.
Thanks for any clarification.


Is it safe to use for locale storage - even storing very big structs?

Hi Guys,
we are looking for a binary serialization solution to our in-house in-memory db. It mainly storing objects in memory,
and save it to the disk when data update occurs. We have tested bincode and it's awesome, but is it mature enough
to use very safely for data serialization as a storage? So is there any chance, that a long running process, serializing data structs and save them to the local disk; after a year of running, after a restart, somehow would not be able to deserialize the objects?
Till now we used yaml serialization, but bincode is way more performant.
I did read that between minor version updates, bincode is safe. But I could not find an RFC standard for bincode. So as it seems to be not a standard, is there any way for breaking changes in serialization format?
Thank you in advance!

Never mind, I trust you guys.

There is no RFC standard. I am currently working on writing a standard but it may never become an IETF standard since those are notoriously difficult to get. Right now we guarantee that minor version changes will not break existing code.


Interoperability with linear algebra package?

I'm trying to do physical simulation and need to represents position, velocity, acceleration and light quantities in a 3D space. The linear package is really fine for this kind of work, but unfortunately it does not compose well with dimensional.
Is there any recommended package / way of doing "simple" 3D space manipulation with dimensional?

I'm sorry but we don't really have a good story for this (yet?). That is the short answer.
I have a rudimentary linear algebra library at bjornbm/dimensional-homo (not on Hackage) which I use for my simple needs. You are welcome to take a look and see if it might be adequate for what you want to do. Note that the "backend" linear algebra library is the very simple numeric-quest as it was easy to use and adequate for a proof-of-concept. If performance is important one would want to replace it with another backend.


Remove seconds, regardless if it has AM/PM or not.

This will trim the seconds, even if the string ends in AM or PM.

Actually no, I remember now why I had the lookup.  It was to prevent stripping the AM/PM as part of the match.

I'll let you do the merge and squash if you decide to take the pull versus doing the squash on my end.

I'll end up squashing, but I see you've added a repeat group to the :00. I'd prefer not to change "11:00:00 am" to "11 am", so that all entries have a consistent style.

Will unixTimeToString always return seconds?  If not, a single :00 will
cause 9:00 am to truncate to 9 am.  Do we need to account for that cause?
On Jun 14, 2016 12:39 PM, "Dave Ingram"<EMAIL_ADDRESS>wrote:

I'll end up squashing, but I see you've added a repeat group to the :00.
I'd prefer not to change "11:00:00 am" to "11 am", so that all entries have
a consistent style.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/iitc-project/ingress-intel-total-conversion/pull/968#issuecomment-225958022,
or mute the thread
https://github.com/notifications/unsubscribe/AA-GFU2PjpXKGfMfRzcvGUONqfrpILcyks5qLudLgaJpZM4D4Dga
.

Maybe just me, but I'm not sure why we have am/pm inn the first place - 24hr clock all the way to avoid ambiguity

@imsaguy Under the hood, unixTimeToString calls toLocaleTimeString, which always returns seconds.
That being said, we don't have any guarantees about exactly how that output is formatted. Maybe we should detect whether the user prefers 12-hour or 24-hour and then just use a specific canned format rather than a locale-specific one. There are many more outputs returned than this function copes with — see the MDN page linked above for some examples.
@PrinterElf Many American agents in particular prefer the 12-hour clock to 24-hour.

I think the filtering of am/pm should be done on as part of the API rather than post processing such as we see here.  Otherwise, it'd be just was straightforward to make this a Date object here and format it the way you please, rather than trying to parse random strings.  And if someone else tweaks unixTimeToString() later on, you wouldn't have gained much.


Add helper method for accessing typedarray contents (squashed)

I made a new PR for this, since the previous one was a bit cluttered and I also had a fork of NAN which used that branch, and pushing the rebased code would've broken it.  This PR is rebased, squashed and merges cleanly into the master.

Merged as 17b51294c801e534479d5463697a73462d0ca555


Add encore private data to the data release process

As a developer I want to add encore private data to the data release process because encore data will be used by the partner platform instance.
Background
Every time a new evidence resource is added to the data release, the BE team needs to verify PIS, ETL, GraphQL and POS integrity in order to ingest and to show the data correctly.
Tasks

[x]  PIS: copy the data manually until the new approach is not implemented
[x] Configure the ETL config file (review Daniel PR to ETL repo)
[x] Add the following fields to the GraphQL evidence endpoint (for istance):

    "interactingTargetFromSourceId": "ATR",
     "phenotypicConsequenceLogFoldChange": -0.94566,
     "phenotypicConsequenceFDR": 0.126694,
     "phenotypicConsequencePValue": 0.014117,
     "geneticInteractionMethod": "gemini",
     "geneticInteractionScore": -0.2,
     "geneticInteractionPValue": 0.004,
     "geneticInteractionFDR": 0.08

Acceptance tests

[ ] Verify the ingestion of the data using the GraphQL evidence endpoint modified

The weight of this datasource following the other example of other partner instance evidence is set to 0.5, it also reflects the "work in progress" nature of these sources.
  {id: "encore", weight: 0.5, data-type = "ot_partner", propagate = true},

This already is part of the previous PPP release.


Update Select.php

Adding the case on _get() magic methods to retrieve the Order Param, this can be useful to manipulate the order param, checking it before send a Query

This issue has been moved from the zendframework repository as part of the bug migration program as outlined here - http://framework.zend.com/blog/2016-04-11-issue-closures.html
New issue can be found at: https://github.com/zendframework/zend-db/issues/141


support for auto discover of genBinaryOutput

https://github.com/esphome/esphome/pull/7340 adds zigbee support to esphome on nrf52840. genBinaryOutput clusters were implemented in hope that it would be discovered automatically. Auto discovery works for genBinaryInput but it does not for output https://github.com/esphome/esphome/pull/7340#issuecomment-2325216093. genBinaryOutput was implemented instead of genOnOff since it support description which could be used to distinguished clusters after https://github.com/zigpy/zha/issues/160 gets implemented.

Can you provide sample firmware for something like the nRF52840 to test this out?