etcd snapshot restore downloaded from StorageGRID S3 bucket fails

What kind of request is this (question/bug/enhancement/feature request):
Bug/feature request
Steps to reproduce (least amount of steps as possible):
Configure an S3 backup to a NetApp StorageGRID bucket
Attempt to restore from a backup stored in the s3 location
Result:
The restore will fail with an empty zip file and the following error:
Unable to decompress [/backup/$FILE_NAME.zip] to [/backup/$FILE_NAME]: zip: not a valid zip file
Other details that may be helpful:
From the view of the S3 provider, we see a download successfully filled.
From RKE we see:
DEBU[0000] reading s3-endpoint-ca from [crt]
INFO[0000] Successfully downloaded [downstream-clusters/$FILE_NAME.zip]
INFO[0000] Decompressing etcd snapshot file [$FILE_NAME.zip]
FATA[0000] Unable to decompress [/backup/$FILE_NAME.zip] to [/backup/$FILE_NAME]: zip: not a valid zip file

Since we see a Successful download on the Rancher side, but an unsuccessful decompression, I traced the code and this is what I think is going on:
Hypothesis:
DownloadS3Backup from rke-tools main.go creates a file out of the first 0 bytes of the snapshot stored in StorageGRID (which, of course, can not be decompressed) and so the restore fails.
My reasoning:
It looks like DownloadS3Backup calls downloadFromS3WithPrefix to download the file.  downloadFromS3WithPrefix will use FGetObject which uses fGetObjectWithContext to copy a file of size n from the bucket/object depending on the md5sum it retrieves with objectStat.
According to someone from NetApp, StorageGRID does not have an API call for this, and we're not yet sure if this is a standard for s3.  If the md5sum that ends up in memory indicates an objectStat.Size of 0 bytes this would lead to the CopyN 'successfully' copying 0 bytes into the part file, and creating the empty .zip, which will pass all the checks until isCompressed actually attempts to decompress it.
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): v2.x
Downstream cluster deployed with StorageGRID s3 backend

gzrancher/rancher#10363

This may affect a larger subset of S3 providers and only work with Minio.
See Issue #22356 where our snapshot restore fails with Hitachi S3

Need to check if this is the same as https://gitlab.com/gitlab-org/gitlab-workhorse/-/issues/264

Tested on v2.4-head(3e543f7c4).  Restore was successful.
Deletion of snapshots was also functional.

Note: rke-tools version used on the v2.4-head-setup : "rancher/rke-tools:v0.1.62"

Tested on master-head(e20f472d4)

Steps:

Create a DO cluster configuring  S3 backup to a NetApp StorageGRID bucket as user1
Create a workload test1 and take a snapshot "snp1"
Create a workload test2 and take a snapshot "snp2"
Restore to snapshot "snp1".

Restore failed with the below error on master-head
Failed to download etcd snapshot from s3, exit code [1]: time="2020-07-27T18:52:49Z" level=fatal msg="Unable to decompress [/backup/c-hfjpr-ms-kn9l5_2020-07-27T18:14:10Z.zip] to [/backup/c-hfjpr-ms-kn9l5_2020-07-27T18:14:10Z]: zip: not a valid zip file"

Note: rke-tools version used on the master-setup : "rancher/rke-tools:v0.1.61"

Validated on master-head(c53a66e22) using rke version : v1.2.0-rc4
Steps:

Create a DO cluster configuring S3 backup to a NetApp StorageGRID bucket as user1
Create a workload test1 and take a snapshot "snp1"
Create a workload test2 and take a snapshot "snp2"
Restore to snapshot "snp1". Restore succeeds without any errors
Deletion of snapshots is also functional

rke-tools version used : rancher/rke-tools:v0.1.62


OPeNDAP/NetCDF access

This initially came up when experimenting with programmatic data access to PDC data. Data access (without download) is possible with most file formats (csv, tif, gpkg etc) but not with .nc.
library(httr2)
library(ncdf4)
library(sf)
library(terra)
library(stars)

# Reading csv directly----
csv_url <- "https://ramadda.data.bas.ac.uk/repository/entry/get/Goudier_beach_debris.csv?entryid=synth%3A32a8c71b-e70f-4fdf-9767-57b237b50660%3AL0dvdWRpZXJfYmVhY2hfZGVicmlzLmNzdg%3D%3D"

# Can be done through simple read.csv command
goudier_df <- read.csv(
  csv_url
)

# Reading a netcdf file directly does not work
nc_url <- "https://ramadda.data.bas.ac.uk/repository/entry/get/BAS_SONA_ShipResearch_RRSJamesClarkRoss_M_ScotiaSea_2006-10-31T04Z_2006-10-31T18Z.nc?entryid=synth%3Ac831d5e4-8d03-4aea-a6c6-6db101f36d8d%3AL0pSMTYxXzAwMi9CQVNfU09OQV9TaGlwUmVzZWFyY2hfUlJTSmFtZXNDbGFya1Jvc3NfTV9TY290aWFTZWFfMjAwNi0xMC0zMVQwNFpfMjAwNi0xMC0zMVQxOFoubmM%3D"

# However, unlike other file format reading in this url with ncdf4 directly does not work
sst_ncdf4 <- ncdf4::nc_open(
  nc_url
)

A bit of investigation showed this was also the case with most other data centres (EIDC, BODC, NGDC), bar CEDA which have OPeNDAP in place and its use documented OPeNDAP scripted interaction.
# The CEDA source is happy
ceda_cicero <- "https://dap.ceda.ac.uk/thredds/dodsC/badc/cru/data/cru_ts/cru_ts_3.24.01/data/tmp/cru_ts<IP_ADDRESS>1.2015.tmp.dat.nc"

sst_ceda <- nc_open(
  ceda_cicero
)

So, this is a NERC wide issue.
After conversation with PB, he said that Ramadda does have an OPeNDAP plugin so having OPeNDAP should be a possibility. Discussed in the past, and on the list of things to do but has not happened yet. Suggested that a use case could bump it up on the list of priorities. If there is any way I can help with its implementation under BOOST-EDS I think that would be great.
I think the use case would be in a cloud workflow where PDC data stored in an .nc files has to be read in, but don't want to burden the JASMIN storage capacity if it is not needed. It is possible to storage large files on JASMIN, no problem, but computationally not very efficient. Could turn a 10/15 minute process of data ingestion/manipulation into a 2 minute one, if a netCDF file could be queried directly. Something something net zero, making computing greener.
General Resources
OPeNDAP Quick Start Guide
How to set up an OPeNDAP server
The issue with netCDF data types
It's been done by others
Ramadda and OPeNDAP
I can't seem to find and OPeNDAP plugin as suggested, however I CAN find a thredds one
Thredds plugin download and a ramadda + thredds installation tutorial

Not tackling this as part of asli


Can't install this plugin in vscode

Tips:
Unable to install 'asvetliakov.vscode-neovim' extension because it is not compatible with the current version of VS Code (version 1.37.1).
NeoVim 0.0.50

@zct you can install latest version of VSCode 1.43.0. Also minimum supported version of NeoVim is 0.4.2.

@zct you can install latest version of VSCode 1.43.0. Also minimum supported version of NeoVim is 0.4.2.

thks~，it works


Error when running local test

Hi! 👋
Thanks for the project. I'm trying to test things locally, but am receiving failed to load the resty.core module when running make up
❯  make up
docker-compose down -v
WARNING: The COVERALLS_REPO_TOKEN variable is not set. Defaulting to a blank string.
WARNING: The TRAVIS_JOB_ID variable is not set. Defaulting to a blank string.
WARNING: The TRAVIS_BRANCH variable is not set. Defaulting to a blank string.
WARNING: The TRAVIS_REPO_SLUG variable is not set. Defaulting to a blank string.
Stopping nginx-lua-redis-rate-measuring_redis_cluster_1 ... done
Removing nginx-lua-redis-rate-measuring_nginx_1         ... done
Removing nginx-lua-redis-rate-measuring_redis_cluster_1 ... done
Removing network nginx-lua-redis-rate-measuring_default
docker-compose up nginx
WARNING: The COVERALLS_REPO_TOKEN variable is not set. Defaulting to a blank string.
WARNING: The TRAVIS_JOB_ID variable is not set. Defaulting to a blank string.
WARNING: The TRAVIS_BRANCH variable is not set. Defaulting to a blank string.
WARNING: The TRAVIS_REPO_SLUG variable is not set. Defaulting to a blank string.
Creating network "nginx-lua-redis-rate-measuring_default" with the default driver
Creating nginx-lua-redis-rate-measuring_redis_cluster_1 ... done
Creating nginx-lua-redis-rate-measuring_nginx_1         ... done
Attaching to nginx-lua-redis-rate-measuring_nginx_1
nginx_1          | 2019/08/02 17:10:23 [error] 1#1: lua_load_resty_core failed to load the resty.core module from https://github.com/openresty/lua-resty-core; ensure you are using an OpenResty release from https://openresty.org/en/download.html (rc: 2, reason: module 'resty.core' not found:
nginx_1          | 	no field package.preload['resty.core']
nginx_1          | 	no file '/usr/local/openresty/luajit/share/lua/5.1/resty/core.lua'
nginx_1          | 	no file '/lua/src/resty/core.lua'
nginx_1          | 	no file '/usr/local/openresty/luajit/lib/lua/5.1/resty/core.so'
nginx_1          | 	no file '/usr/local/openresty/luajit/lib/lua/5.1/resty.so')
nginx_1          | nginx: [error] lua_load_resty_core failed to load the resty.core module from https://github.com/openresty/lua-resty-core; ensure you are using an OpenResty release from https://openresty.org/en/download.html (rc: 2, reason: module 'resty.core' not found:
nginx_1          | 	no field package.preload['resty.core']
nginx_1          | 	no file '/usr/local/openresty/luajit/share/lua/5.1/resty/core.lua'
nginx_1          | 	no file '/lua/src/resty/core.lua'
nginx_1          | 	no file '/usr/local/openresty/luajit/lib/lua/5.1/resty/core.so'
nginx_1          | 	no file '/usr/local/openresty/luajit/lib/lua/5.1/resty.so')
nginx_1          | 2019/08/02 17:10:23 [error] 1#1: init_by_lua error: /usr/local/openresty/luajit/share/lua/5.1/resty/lock.lua:4: module 'resty.core.shdict' not found:
nginx_1          | 	no field package.preload['resty.core.shdict']
nginx_1          | 	no file '/usr/local/openresty/luajit/share/lua/5.1/resty/core/shdict.lua'
nginx_1          | 	no file '/lua/src/resty/core/shdict.lua'
nginx_1          | 	no file '/usr/local/openresty/luajit/lib/lua/5.1/resty/core/shdict.so'
nginx_1          | 	no file '/usr/local/openresty/luajit/lib/lua/5.1/resty.so'
nginx_1          | stack traceback:
nginx_1          | 	[C]: in function 'require'
nginx_1          | 	/usr/local/openresty/luajit/share/lua/5.1/resty/lock.lua:4: in main chunk
nginx_1          | 	[C]: in function 'require'
nginx_1          | 	...l/openresty/luajit/share/lua/5.1/resty-redis-cluster.lua:3: in main chunk
nginx_1          | 	[C]: in function 'require'
nginx_1          | 	init_by_lua:13: in main chunk
nginx-lua-redis-rate-measuring_nginx_1 exited with code 1

Any ideas? Thanks!

Hi @cookandy I'm seeing the same error as you =x i don't know why, the tests are passing okay make test but make up is not okay.

I think I got it do you mind to review https://github.com/leandromoreira/nginx-lua-redis-rate-measuring/pull/28


fix: getAbsoluteURL and remove unnecessary dot files

The dotfiles introduced in #103 and #104 are not needed since NEXT_PUBLIC_VERCEL_URL is already one of the exposed environment variable by Vercel. The original bug was not using the correct prefix in the getAbsoluteURL of util/browser.ts, which is fixed in this PR. After deploying this one, the custom environment variable in the Vercel settings is no longer required too - check out the Preview environment where it works w/o it.

Just as a question: are you sure we don't need that variable setup in vercel? Because when it was not there, using the exact same variable as you, the link was giving the link of the deployed address (so something like that https://evm-codes-git-fix-absolute-url-util-comity.vercel.app), and not the link of the "official" website.
So I think the variable should not be removed.

Just as a question: are you sure we don't need that variable setup in vercel? Because when it was not there, using the exact same variable as you, the link was giving the link of the deployed address (so something like that https://evm-codes-git-fix-absolute-url-util-comity.vercel.app), and not the link of the "official" website. So I think the variable should not be removed. @assimovt

That's from the preview environment, right? We still want to have those links in the branch previews. I think in production (main) it should be resolved to the custom domain - but we can easily verify it once this one is deployed, and keep it if necessary.

Just as a question: are you sure we don't need that variable setup in vercel? Because when it was not there, using the exact same variable as you, the link was giving the link of the deployed address (so something like that https://evm-codes-git-fix-absolute-url-util-comity.vercel.app), and not the link of the "official" website. So I think the variable should not be removed. @assimovt

That's from the preview environment, right? We still want to have those links in the branch previews. I think in production (main) it should be resolved to the custom domain - but we can easily verify it once this one is deployed, and keep it if necessary.

The variable in vercel is for the www.evm.codes for the real website, the PUBLIC URL thingy works as is for the preview


Generate SBOMs for JS components

We have SBOMs currently for Java and Go. We could use them here as well. I recommend this utility: https://github.com/marketplace/actions/cyclonedx-node-js-generate-sbom (we're using the clyclonedx format elsewhere and it's popular).
Definition of done:

SBOMs generated and attached to release artifact in GH, or otherwise made publicly available (for every release)
runtime dependencies only included
only includes dependencies of module in question (not of repo)

If someone else likes, this person can take it.
Otherwise I would do it 🙂

Just out of interest.
As OpenFeature is a CNCF project, wouldn't it make sense to use SPDX as format?
If so we could just use npm sbom to generate it, which we could also use for CycloneDX.

If someone else likes, this person can take it. Otherwise I would do it 🙂

Feel free!

Just out of interest @toddbaert. As OpenFeature is a CNCF project, wouldn't it make sense to use SPDX as format? (Edit: Just saw that CNCF is "supporter" of CycloneDX regarding to the Cyclone page, thought that CNCF might prefer SPDX as it is a Linux Foundation Project)
If so we could just use npm sbom to generate it, which we could also use for CycloneDX.

CycloneDX is a bit more minimalist and was specifically designed for SBOMs, whereas SPDX, is more general. We also use it in the Java SDK, so that's why I favor it, but I would be fine with SPDX as well.
As far as tooling, I think a github action is the easiest way since it will save you a bit of github yaml, but again I don't mind as long as it works!
Let me know if I should assign this to you.

Okay, sounds good to me!
I assigned myself and will do this in the next days.

Thanks! Whatever we do here we also can eventually do in the contribs. That will probably be a bit harder because it's a monorepo. It's also more important there, because we have more dependencies.
https://github.com/open-feature/js-sdk-contrib/issues/629


Fork into PR "Fix button name, state support in "Get started WPF""

This PR merges not into "main" but into PR https://github.com/MicrosoftDocs/edge-developer/pull/2135 which it is based on.
Rendered article for review:
https://review.docs.microsoft.com/en-us/microsoft-edge/webview2/get-started/wpf?branch=pr-en-us-2174
See top of article, re: selecting project templates, differentiating Core vs. Framework templates.
This PR fixes https://github.com/MicrosoftDocs/edge-developer/issues/2123.

Docs Build status updates of commit b5119b1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

CONTRIBUTING.md
:white_check_mark:Succeeded

microsoft-edge/developer/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/develop-web-microsoft-edge.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/about-tools.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/css-overview-tool.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-clear.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-font-element.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-media-query.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-open.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-report.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-scroll.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-sources-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-welcome.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/customize-devtools.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/learn-devtools-ui.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/landing/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-and-resend.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-then-send.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/entering-key-value-pairs.png
:white_check_mark:Succeeded
View

This comment lists only the first 25 files in the pull request.
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 19f0ee6:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-edge/webview2/get-started/wpf.md
:warning:Warning
View
Details

CONTRIBUTING.md
:white_check_mark:Succeeded

microsoft-edge/developer/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/develop-web-microsoft-edge.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/about-tools.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/css-overview-tool.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-clear.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-font-element.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-media-query.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-open.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-report.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-scroll.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-sources-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-welcome.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/customize-devtools.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/learn-devtools-ui.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/landing/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-and-resend.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-then-send.png
:white_check_mark:Succeeded
View

This comment lists only the first 25 files in the pull request.

microsoft-edge/webview2/get-started/wpf.md

Line 35, Column 4: [Warning: duplicate-alt-text - See documentation] Alt text 'The Visual Studio 'Modifying' dialog to install .NET project templates for the '.NET desktop development' card' is duplicated. Within an article, alt text must be unique.
Line 39, Column 4: [Warning: duplicate-alt-text - See documentation] Alt text 'The Visual Studio 'Modifying' dialog to install .NET project templates for the '.NET desktop development' card' is duplicated. Within an article, alt text must be unique.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit c803b2b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

CONTRIBUTING.md
:white_check_mark:Succeeded

microsoft-edge/developer/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/develop-web-microsoft-edge.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/about-tools.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/css-overview-tool.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-clear.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-font-element.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-media-query.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-open.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-report.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-scroll.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-sources-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-welcome.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/customize-devtools.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/learn-devtools-ui.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/landing/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-and-resend.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-then-send.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/entering-key-value-pairs.png
:white_check_mark:Succeeded
View

This comment lists only the first 25 files in the pull request.
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 38e5106:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

CONTRIBUTING.md
:white_check_mark:Succeeded

microsoft-edge/developer/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/develop-web-microsoft-edge.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/about-tools.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/css-overview-tool.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-clear.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-font-element.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-media-query.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-open.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-report.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-scroll.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-sources-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-welcome.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/customize-devtools.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/learn-devtools-ui.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/landing/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-and-resend.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-then-send.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/entering-key-value-pairs.png
:white_check_mark:Succeeded
View

This comment lists only the first 25 files in the pull request.
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit e9e0a42:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

CONTRIBUTING.md
:white_check_mark:Succeeded

microsoft-edge/developer/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/develop-web-microsoft-edge.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/about-tools.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/css-overview-tool.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-clear.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-contrast-issues-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-elements-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-font-element.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-media-query.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-open.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-report.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-scroll.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-sources-tool.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/css/images/css-overview-tool-welcome.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/customize-devtools.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/customize/index-images/learn-devtools-ui.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/experimental-features/index.md
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/landing/index.yml
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-and-resend.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/edit-then-send.png
:white_check_mark:Succeeded
View

microsoft-edge/devtools-guide-chromium/network-console/images/entering-key-value-pairs.png
:white_check_mark:Succeeded
View

This comment lists only the first 25 files in the pull request.
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 31aec39:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: CannotMergeCommit] Cannot merge commit 31aec39d4dbf6ab802d47b8f09882234a6a1ac09 in branch user/mikehoffms/getstart-wpf of repository https://github.com/mikehoffms/edge-developer into branch user/v-mhoffman/getstart-wpf (commit 35f71177e38e348e3c12778eac24aa17667894b7). Please follow this documentation: https://help.github.com/articles/resolving-a-merge-conflict-using-the-command-line/ to use git.exe to resolve you content conflicts locally and then push to remote.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit b025361:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error: CannotMergeCommit] Cannot merge commit b0253616b54ea00cb9368b05d61a9324ca157e06 in branch user/mikehoffms/getstart-wpf of repository https://github.com/mikehoffms/edge-developer into branch user/v-mhoffman/getstart-wpf (commit 35f71177e38e348e3c12778eac24aa17667894b7). Please follow this documentation: https://help.github.com/articles/resolving-a-merge-conflict-using-the-command-line/ to use git.exe to resolve you content conflicts locally and then push to remote.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 2256e02:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/devtools-guide-chromium/device-mode/geolocation.md
:white_check_mark:Succeeded
View

microsoft-edge/media/windows-keyboard-logo.png
:white_check_mark:Succeeded
View

microsoft-edge/toc.yml
:white_check_mark:Succeeded
View

microsoft-edge/webview2/code-samples-links.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/basic-authentication.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/distribution.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/navigation-events.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/process-model.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/threading-model.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/concepts/user-data-folder.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/get-started.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/media/install-nuget.png
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/media/vs2022-create-a-new-project.png
:white_check_mark:Succeeded
n/a (file deleted or renamed)

microsoft-edge/webview2/get-started/media/wpf-getting-started-create-core-add-info.png
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/media/wpf-getting-started-create-fw.png
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/media/wpf-getting-started-mng-nuget.png
:white_check_mark:Succeeded
n/a (file deleted or renamed)

microsoft-edge/webview2/get-started/media/wpf-getting-started-wpf-core.png
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/win32.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/winforms.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/winui.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/winui2.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/wpf.md
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/wpf-images/config-new-core-project-2022.png
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/wpf-images/dotnet-framework-setup-successful.png
:white_check_mark:Succeeded
View

microsoft-edge/webview2/get-started/wpf-images/empty-app-without-webview2.png
:white_check_mark:Succeeded
View

This comment lists only the first 25 files in the pull request.
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Questions about evaluation

Hi, I'm starting to dive into Presidio and it's a great tool! I plan to expand the functionalities to detect other types of information; do you think I could use your evaluation code to test how well they work? And do I need to build a specific dataset for that? Thanks

Hi @albusdemens, thanks for your issue.
The code in this repo is meant to be used for evaluation of either Presidio or any other model. There's a need for a dataset at least to perform evaluation on existing models/techniques.
See a high level view of the steps needed here: https://github.com/microsoft/presidio/issues/742#issuecomment-903581824

Hi @omri374, thank you for your reply and for the information!


Support msrest 0.4.28 / msrestazure 0.4.27

View a preview at https://prompt.ws/r/Azure/azure-cli/5950
This is an experimental preview for @microsoft users.

FYI @derekbekoe @troydai Will release msrest/msrestazure with the new session stuff today, and merge this PR right after the CI is clear.


Warning CS1701 after updating Newtonsoft.Json to 7.0.1

I started receiving this warning in a C# project after Xamarin Studio notified me that there was an update available for Newtonsoft.Json
Warning CS1701: Assuming assembly reference `Newtonsoft.Json, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' matches assembly `Newtonsoft.Json, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'. You may need to supply runtime policy (CS1701)

I get this same error too.

Looking at the config files. It seems like Refit is using Version <IP_ADDRESS> of Newtonsoft.Json. This might need an upgrade at some point.

It would be very nice if you merge the PR from martijn00. I need the update of the newtonsoft.json for a project I'm working on.

Uses 9.0.1 currently


dap.step_in() could not jump to the target location

Version confirmation

[x] Confirm

Neovim version
NVIM v0.8.1
Operating system/version
macOS 13.1
Terminal name/version
Build 3.4.18
$TERM environment variable
No response
Branch info
main (Default/Latest)
Fetch Preferences
SSH (use_ssh = true)
How to reproduce the issue
This problem occurred when I was using lldb to debug a c++ program

set a breakpoint
call dap.continue() start debugging
stop at breakpoint
call dap.step_into()
DAP throw the error: Stop at line x but switchbuf setting prevented jump to location. Target buffer xx not open in any window?

PS: I have verified that this buffer does not appear in any window.
Expected behavior
the running cursor will jump into the function and this buffer will change
Actual behavior
the running cursor seems to jump into the function but the buffer doesn't change.
Additional information
No response

Maybe check #420 first?

Maybe check #420 first?

I have already changed the lldb path but It doesn't work for me.
It seems that lldb works fine, and I can get the result, even when I use dap.step_into() the program is still running, only the buffer doesn't change.
I also try dap.step_into() in golang, The same problem also occurs.

Will try to reproduce this on macOS later. Your executable consists of multiple object files, right? (i.e., there is more than one source .cxx file when you compile)
In addition, are you using lldb or lldb-vscode? They cannot be used interchangeably.

Will try to reproduce this on macOS later. Your executable consists of multiple object files, right? (i.e., there is more than one source .cxx file when you compile)
In addition, are you using lldb or lldb-vscode? They cannot be used interchangeably.

Sorry, my explanation is not accurate, I actually use lldb-vscode and my executable consists of multiple object files

Thank you for the information 👍 I will look into this issue after resolving https://github.com/ayamir/nvimdots/issues/422#issuecomment-1383043124.

Can reproduce. Will push a fix.

@csyJoy #424 should fix this problem. No issues were found in the small test I wrote.
https://user-images.githubusercontent.com/50296129/212527897-5f7420a4-de8c-4ed8-85d9-0339d1efc2ac.mp4


every() returning false positive when applied on empty result.

Hello,
we just found a behaviour of every() we are not sure, if it is working as intended or it is rather a bug. When applying every() on an empty result of find(), we seem to get a false-positive.
We would rather expect false to be returned in that case.
For a better explanation I attached the following test scenario.
Please excuse me, if this is just caused by a misunderstanding on our side.
const wrapper = shallow(

,
  );
  describe('.every() with non empty result on find()', () => {
    it('returns true for elements on existing class selector', () => {
      expect(wrapper.find('.foo').every('p')).toBe(true);
    });
    it('returns true for one element on existing element selector', () => {
      expect(wrapper.find('div').every('div')).toBe(true);
    });
  });
  describe('.every() with empty result on find()', () => {
    it('returns empty list for non existing selector', () => {
      expect(wrapper.find('.boom').length).toBe(0);
    });
    it('returns false for every() on non existing selector', () => {
      expect(wrapper.find('.boom').every('p')).toBe(false);
    });
  });

Current behavior
.every() with non empty result on find()
      ✓ returns true for elements on existing class selector (4ms)
      ✓ returns true for one element on existing element selector
    .every() with empty result on find()
      ✓ returns empty list for non existing selector (3ms)
      ✕ returns false for every() on non existing selector (3ms)

Expected behavior
All tests pass.
Your environment
API

[X] shallow

Version

library
version

enzyme
3.10.0

react
16.11.0

react-dom
16.11.0

react-test-renderer
16.11.0

adapter (below)
1.15.1

Adapter

[X] enzyme-adapter-react-16
[ ] enzyme-adapter-react-16.3
[ ] enzyme-adapter-react-16.2
[ ] enzyme-adapter-react-16.1
[ ] enzyme-adapter-react-15
[ ] enzyme-adapter-react-15.4
[ ] enzyme-adapter-react-14
[ ] enzyme-adapter-react-13
[ ] enzyme-adapter-react-helper
[ ] others ( )

🤦♂ Just learned sth. new!
It turns out even the native array method is implemented like this. This is not very intuitive, but of course a valid definition.

Note: This method returns true for any condition put on an empty array.

(s. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every)
I will close this issue therefore. Thx!


⚠ 2 Minutes de génie (staging) has degraded performance

In b0f348a, 2 Minutes de génie (staging) (https://2mdgstaging.gitlab.io/) experienced degraded performance:

HTTP code: 502
Response time: 3169 ms

Resolved: 2 Minutes de génie (staging) performance has improved in 5cf627b.


Rely on go to parallelize test suites

We're not running tests in the go way.
We have a single make task which does some setup, and runs a bunch of different test suites separately. Most of these could be parallelized. This gets especially true after addressing #1049

These tests already run in parellel. They could maybe be made a little more parallel by running all the test suites together but I doubt it would have much effect given that almost all of our tests are in a single package.


Sonarr v4 connectivity issues

Hello trying to get this working with Sonarr v4, one thing they added was require authentication to be enabled on Sonarr.  But it also allows for disabling when coming from a local address.  No matter though it doesn't appear to work.  Errors when attempting to make the connection.  Radarr and Readarr all behave fine just not Sonarr.  Sonarr is up and running accessible direct, via proxy and from other apps fine just not Posterr
posterr  | 6/23/2023, 4:00:31 PM *Sonarr - Get calendar data: Request failed with status code 404
posterr  | 6/23/2023, 4:00:31 PM *Sonarr - Get raw data: AxiosError: Request failed with status code 404
posterr  | 6/23/2023, 4:00:31 PM *Coming Soon - TV: AxiosError: Request failed with status code 404
Debug page when testing Sonarr results:
posterr  | 6/23/2023, 4:04:15 PM *SONARR CHECK - Get calendar data: Request failed with status code 404
posterr  | (node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 26)

V3 is the latest stable release, so v4 is not yet supported. I have the code ready to go, but cant release it until is stable.

Recently having swapped over to the beta v4 build didn't think to check if would effect posterr. D'oh! Whoops.
Was wondering if you'd consider releasing a beta tag version or something similar for posterr that included the v4 changes. :) Love posterr so can't wait for sonarr to go stable and have coming soon again. Thanks!


Error running Spage2Vec

Hello!
I ran the following command from the jupyter notebook on using spage2vec
assert len(layer_sizes) == len(num_samples)

graphsage = GraphSAGE(
    layer_sizes=layer_sizes, generator=train_gen, aggregator=AttentionalAggregator, bias=True, dropout=0.0, normalize="l2", kernel_regularizer='l1'
)

and got the following error:
TypeError                                 Traceback (most recent call last)
<ipython-input-41-f1ae536eeb07> in <module>()
      4
      5 graphsage = GraphSAGE(
----> 6     layer_sizes=layer_sizes, generator=train_gen, aggregator=AttentionalAggregator, bias=True, dropout=0.0, normalize="l2", kernel_regularizer='l1'
      7 )

/u/home/r/rlittman/project-rlittman/miniconda3/envs/spage2vec/lib/python3.7/site-packages/stellargraph/layer/graphsage.py in __init__(self, layer_sizes, generator, aggregator, bias, dropout, normalize, activations, **kwargs)
    814         # Get the input_dim and num_samples
    815         if generator is not None:
--> 816             self._get_sizes_from_generator(generator)
    817         else:
    818             self._get_sizes_from_keywords(kwargs)

/u/home/r/rlittman/project-rlittman/miniconda3/envs/spage2vec/lib/python3.7/site-packages/stellargraph/layer/graphsage.py in _get_sizes_from_generator(self, generator)
    867                     + errmsg
    868                 )
--> 869             raise TypeError(errmsg)
    870
    871         self.n_samples = generator.num_samples

TypeError: Generator should be an instance of GraphSAGENodeGenerator or GraphSAGELinkGenerator
```

Hi,
please be sure to use the same library versions specified in the README (stellargraph==0.8.1) to reproduce the notebooks. If you instead prefer to use the latest version of the libraries you can take a look at this demo notebook  of stellargraph  to adapt the methods with the latest library version.

Hi,
please be sure to use the same library versions specified in the README (stellargraph==0.8.1) to reproduce the notebooks. If you instead prefer to use the latest version of the libraries you can take a look at this demo notebook  of stellargraph  to adapt the methods with the latest library version.


Language Request: fish

Language
Fish is the scripting language of the Fish Shell.
Here's what it looks like:
# an example fish function
function echo-variable --no-scope-shadowing
    if set -q -- $argv
        set varname $argv
    else
        set varname (echo $argv | string upper)
    end
    eval 'echo $'$varname
end

Additional resources

Fish website

(interestingly, the github tokenizer is off in the above function - echo-variable is one token, echo should not be highlit here)

Would greatly appreciate this!

+1 on this


Workflow configuration

This page provides very limited information about how to configure the workflows or links to how generic workflow is configured.  Key issues:

How is line level versus header lever approval configured.
How is the Expense line item auto posting configured.  This is a fairly unique aspect of Expense report workflow management and should be documented.

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

ID: d2a2984b-d4f6-598a-759b-f4727db31afe
Version Independent ID: 6a0e4f85-2e80-fc7a-4f9b-009bb052a8cd
Content: Set up workflows for Expense management - Finance | Dynamics 365
Content Source: articles/finance/expense-management/expense-workflows.md
Service: dynamics-ax-applications
Product: ****
Technology: ****
GitHub Login: @ShylaThompson
Microsoft Alias: shylaw

@RobertRudd, thanks for the feedback.
@roschlom, please review and make updates, if needed.

Bug #443094 logged to track this issue.


Set gRPC channel argument about keepalive ping's timeout and ping without rpc and adding method that both reads all remaining messages & finishes session.

PR Description :
Set gRPC channel argument about keepalive ping's timeout and ping without rpc.
[[p4_runtime_session] Add method that both reads all remaining messages & finishes session.
Build Results :
bibhuprasad@b621e980bfc1:/sonic/src/sonic-p4rt/sonic-pins$ bazel build $BAZEL_BUILD_OPTS p4_pdpi/...
INFO: Analyzed 70 targets (1 packages loaded, 90 targets configured).
INFO: Found 70 targets...
INFO: Elapsed time: 9.693s, Critical Path: 7.68s
INFO: 4 processes: 1 internal, 3 linux-sandbox.
INFO: Build completed successfully, 4 total actions
bibhuprasad@b621e980bfc1:/sonic/src/sonic-p4rt/sonic-pins$ bazel build $BAZEL_BUILD_OPTS p4rt_app/...
INFO: Analyzed 92 targets (0 packages loaded, 0 targets configured).
INFO: Found 92 targets...
INFO: Elapsed time: 0.581s, Critical Path: 0.03s
INFO: 1 process: 1 internal.
INFO: Build completed successfully, 1 total action
UT Results :
bibhuprasad@b621e980bfc1:/sonic/src/sonic-p4rt/sonic-pins$ bazel test $BAZEL_BUILD_OPTS p4_pdpi/...
INFO: Analyzed 70 targets (0 packages loaded, 0 targets configured).
INFO: Found 44 targets and 26 test targets...
INFO: Elapsed time: 0.581s, Critical Path: 0.03s
INFO: 1 process: 1 internal.
INFO: Build completed successfully, 1 total action
//p4_pdpi:ir_tools_test                                         (cached) PASSED in 0.3s
//p4_pdpi/netaddr:ipv4_address_and_network_address_test         (cached) PASSED in 0.3s
//p4_pdpi/netaddr:ipv6_address_test                             (cached) PASSED in 0.2s
//p4_pdpi/netaddr:mac_address_test                              (cached) PASSED in 0.2s
//p4_pdpi/string_encodings:bit_string_test                      (cached) PASSED in 0.2s
//p4_pdpi/string_encodings:byte_string_test                     (cached) PASSED in 0.3s
//p4_pdpi/string_encodings:decimal_string_test                  (cached) PASSED in 0.0s
//p4_pdpi/string_encodings:decimal_string_test_runner           (cached) PASSED in 0.0s
//p4_pdpi/string_encodings:hex_string_test                      (cached) PASSED in 0.1s
//p4_pdpi/string_encodings:hex_string_test_runner               (cached) PASSED in 0.1s
//p4_pdpi/string_encodings:readable_byte_string_test            (cached) PASSED in 0.2s
//p4_pdpi/testing:helper_function_test                          (cached) PASSED in 0.3s
//p4_pdpi/testing:info_test                                     (cached) PASSED in 0.0s
//p4_pdpi/testing:info_test_runner                              (cached) PASSED in 0.1s
//p4_pdpi/testing:main_pd_test                                  (cached) PASSED in 0.0s
//p4_pdpi/testing:packet_io_test                                (cached) PASSED in 0.1s
//p4_pdpi/testing:packet_io_test_runner                         (cached) PASSED in 0.0s
//p4_pdpi/testing:rpc_test                                      (cached) PASSED in 0.0s
//p4_pdpi/testing:rpc_test_runner                               (cached) PASSED in 0.1s
//p4_pdpi/testing:sequencing_test                               (cached) PASSED in 0.0s
//p4_pdpi/testing:sequencing_test_runner                        (cached) PASSED in 0.1s
//p4_pdpi/testing:table_entry_gunit_test                        (cached) PASSED in 0.3s
//p4_pdpi/testing:table_entry_test                              (cached) PASSED in 0.0s
//p4_pdpi/testing:table_entry_test_runner                       (cached) PASSED in 0.1s
//p4_pdpi/utils:annotation_parser_test                          (cached) PASSED in 0.2s
//p4_pdpi/utils:ir_test                                         (cached) PASSED in 0.3s
Executed 0 out of 26 tests: 26 tests pass.
INFO: Build completed successfully, 1 total action

Will fix and rasie it again.


VSCode highlights folders as present in git when no child paths are tracked in git

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.93.1 (Universal)
OS Version: 15.0 (24A335)

Steps to Reproduce:

Create a Yarn project.

I noticed that VSCode often mistakenly highlights directories in the color representing unmodified paths that are tracked in version control. But git doesn't track directories unless at least one descendant (non-directory) file path is tracked. So the color is wrong.
This happens with lots of programming languages, but it's worst of all with Node.js's Yarn mess.

@mcandre, could you please share a screenshot as well as the exact command that you ran to create a yarn project? Thanks!


BLD: Update meson.build files for C++ Cython support

Update relevant meson.build files to make use of the newly added C++ support for Cython in meson as the intermediate language.
Reference issue
Addresses #66
What does this implement/fix?
Skips the intermediate step of converting .pyx files to .cpp files using custom_target(),
instead, uses the new support for C++ Cython in meson to directly provide the .pxy file as an input to python.extension_module(), with the additional keyword-argument override_options : ['cython_language=cpp']

Thanks @dhruv9vats, looks like a great start. To make CI pass, https://github.com/rgommers/scipy/blob/meson/.github/workflows/linux.yml#L51 should be pointed at the Meson master branch.

I need to press a button for CI to run, and I'm about to sign off. In case you want to iterate more, you can run the CI job locally with act, see https://github.com/rgommers/scipy/blob/meson/ACT-USAGE.md

In the Linux Tests CI check, under the Install SciPy task, on the very last line, there is this error:
Standard error:
/sbin/ldconfig.real: Can't create temporary cache file /etc/ld.so.cache~: Permission denied

and while I'm also getting it locally, it seems to be a meson issue, as this PR to meson@master aims to address this.

In the Linux Tests CI check, under the Install SciPy task, on the very last line, there is this error:

Thanks for pointing that out. So it doesn't cause an error, and it should be fixed upstream soon. Hence we can ignore it here.

@Smit-create, @matthew-brett, @HarshCasper FYI: after this PR an updated Meson version is needed to build. I synced https://github.com/rgommers/meson/tree/scipy with current Meson master.


chore(package): update kronos-service to version 4.17.1

:tada: This PR is included in version 2.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Determine azure-rest-api-specs PR review workflow

There is a workflow that is being followed by several actors when a PR is submitted against https://github.com/Azure/azure-rest-api-specs
This work item is about mapping out this entire workflow. This will allow us to make informed improvements to it and provide support to involved actors when necessary, including the PR submitter and the assigned PR reviewer. One person that can help with that is Mike Kistler, who is a member of the API Stewardship Board.
Specifically, we want to understand what are the responsibilities of the auto-assigned PR assignee (see below).
Notes on the workflow
The guidance to submit a PR is here:
https://aka.ms/specprreview
Once this happens, a person is assigned at random to it, per this list:
https://github.com/Azure/azure-rest-api-specs/blob/main/.github/pull_request_assignment.yml
After this there is a flow based on labels depending on what happens.
For example, if a breaking change is detected by the OAD tool from Unified Pipeline, then the PR gets auto-labelled with a label denoting there is a breaking change requiring review. Then a reviewer from a "breaking change board" is adding another label, e.g. one denoting that the breaking change got approved.
There is also suppression process, described here:
https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/85/Swagger-Suppression-Process
Related work

https://github.com/Azure/azure-sdk-tools/issues/5867

The guidance to submit a PR is here:
https://aka.ms/specprreview

I wish this was the only place where there is guidance. Here are the other links I have seen people use and share around. I have been collecting them but haven't had the time to look at each and see the accuracy of the information, etc. Sharing them here as FYI for you:

https://dev.azure.com/azure-sdk/internal/_wiki/wikis/internal.wiki/630/Walkthrough-Creating-a-new-service-specification-in-a-team
https://armwiki.azurewebsites.net/rp_onboarding/process/api_review.html
https://github.com/Azure/typespec-azure/blob/update-checkin-doc/docs/howtos/rest-api-publish/checking-in-api-specs-guide.md

@mikekistler @josefree are a couple folks that I think can help with this.

Closing as completed. Big chunk of this work was taken care in:

https://github.com/Azure/azure-sdk-tools/issues/6618

Other parts are obsolete / subsumed / no longer applicable. Yet other elements are scheduled to be done in other work items, like:

https://github.com/Azure/azure-sdk-tools/issues/6374


Get live reloading to work when changing the build.gradle file

Currently, live reloading works great if you modify source in your project. But tweak your build.gradle file, which itself may inluence how code gets generated? No luck -- you need to "Q" the server and rerun kobweb.
Most users won't be using these advanced features for a while or too often, so it's not critical to get this working ASAP, but probably sooner than later. I'll mark this as a 1.1 feature for now but may still try to get it done for 1.0.

It's certainly worth investigating -- it may be as easy as changing the list of @Input files to the genSite task to include build.gradle[.kts] files.

I ended up doing this a few days ago.


code-insiders cannot be launched on Windows

VS Code and OS Version:

Version: 1.54.0-insider (user setup)
Commit: 40b3204d70a9c72305c613164272175d0b344b5f
Date: 2021-02-10T17:39:27.208Z
Electron: 11.2.3
Chrome: 87.0.4280.141
Node.js: 12.18.3
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19042

just noticed that the file structure for code-insiders changed to:
 Directory of C:\Users\<username>\AppData\Local\Programs\Microsoft VS Code Insiders

02/10/2021  06:09 PM    <DIR>          .
02/10/2021  06:09 PM    <DIR>          ..
02/10/2021  06:09 PM    <DIR>          bin
02/10/2021  06:09 PM    <DIR>          locales
02/04/2021  03:58 PM    <DIR>          resources
02/10/2021  06:09 PM    <DIR>          swiftshader
02/10/2021  01:51 PM    <DIR>          tools
02/10/2021  01:51 PM        92,257,520 unins000.dat
02/10/2021  01:51 PM         2,627,472 unins000.exe
02/10/2021  01:51 PM            23,365 unins000.msg
02/10/2021  01:51 PM    <DIR>          _
               3 File(s)     94,908,357 bytes
               8 Dir(s)  683,068,620,800 bytes free

and the "Code - Insiders.exe" executable is moved inside the _ directory. For this reason, the default shortcut (pointing to "C:\Users\<username>\AppData\Local\Programs\Microsoft VS Code Insiders\Code - Insiders.exe"``) and PATH` variable does not work anymore

just noticed that the file structure for code-insiders changed to:

This was very likely due to a broken update process. Can you completely uninstall and reinstall VS Code? If it happens again, can you try disabling Windows background updates? Set update.enableWindowsBackgroundUpdates to false.

This was very likely due to a broken update process. Can you completely uninstall and reinstall VS Code? If it happens again, can you try disabling Windows background updates? Set update.enableWindowsBackgroundUpdates to false.

Thanks! I was wondering if this can be recovered, but I'll go ahead and reinstall =)


generic snapshot

Hey thanks for giving us such an awesome tool - I use it almost every day in my own unit testing work!
I would be interested in support for generic snapshots. Here is some code that illustrates what does NOT work, as already documented, and an undocumented workaround I was able to figure out:
from inline_snapshot import snapshot

from types import SimpleNamespace

def bold(text):
    return f"{text}"

def test_bold():
    assert bold('word') == snapshot("word")

    assert bold('__generic__text__') == _generic_bold_snapshot

    replacement_text = 'replacement text'

    # DOES NOT WORK - BUT WILL WORK WITH --inline-snapshot-disable option flag:
    # assert bold(replacement_text) == _generic_bold_snapshot.replace('__generic__text__', replacement_text)

    # USING UNDOCUMENTED WORKAROUND - WILL FAIL WITH --inline-snapshot-disable option flag:
    assert bold(replacement_text) == _generic_bold_snapshot.get_result(SimpleNamespace(create=False, fix=False)).replace('__generic__text__', replacement_text)

_generic_bold_snapshot = snapshot("__generic__text__")

(I would more likely be using a generic snapshot with list of strings in my work.)
I think the undocumented workaround is very clearly hackish and potentially subject to easy breakage.
A nicer, documented API for this would be really awesome.
I may be able to work on a proposal someday, unfortunately cannot make any promises at this point.
Thanks and thanks again!

P.S. My results would change if I would test with the --inline-snapshot-disable flag, and I have updated a couple test comments with this info.

Great that you like it.
It is the intention that snapshots cannot be read (because it should not be necessary).
You can use the value which you compare with the snapshot instead.
The following code should work for you.
from inline_snapshot import snapshot

def bold(text):
    return f"{text}"

def test_bold():
    assert bold("word") == snapshot("word")

    generic_bold = bold("__generic__text__")

    assert generic_bold == snapshot("__generic__text__")

    replacement_text = "replacement text"

    assert bold(replacement_text) == generic_bold.replace(
        "__generic__text__", replacement_text
    )

I do not expose the value which is stored inside the snapshot because it difficult to know which value the user expects.

the current value which is written in the source code
the value after a potential fix

I think the code is easier to read if you use the values which you already have and where you can easily reason about their values.
Please let me know if the code above works for you.

Makes sense, thanks. I would personally favor keeping the generic snapshot at the end, as it could be over 100 lines with a list of tuples and/or dicts with the generic patterns to be replaced in my case.
Here is an example that shows how that kind of generic comparison could be done with a function that returns a list of strings:
from inline_snapshot import snapshot

# ================================================

# SOURCE TO BE TESTED

def work(text):
    return [f"{text}.html", f"{text}"]

# ================================================

# SINGLE NON-GENERIC TEST CASE

def test_work_with_single_word_inline():
    assert work("word") == snapshot(["word.html", "word"])

# ================================================

# TEST WITH GENERIC REPLACEMENT IN ITS OWN MODULE

def test_work_with_replacement_text():
    replacement_text = "replacement text"

    assert work(replacement_text) == get_expected_work_result(replacement_text)

# ================================================

# FOR A GENERIC TEST MODULE

def get_expected_work_result(text):
    return [x.replace("__generic__text__", text) for x in _generic_work_result]

# ---

def _get_generic_work_result():
    return work(__GENERIC__TEXT__)

# ---

__GENERIC__TEXT__ = "__generic__text__"

# ---

def test_generic_work_result():
    generic_work = work(__GENERIC__TEXT__)

    assert generic_work == _generic_work_snapshot

# ---

_generic_work_result = _get_generic_work_result()

_generic_work_snapshot = snapshot(
    ["__generic__text__.html", "__generic__text__"]
)

In the real world I would likely want to alphabetize the test cases & test file names to be sure to test & update the generic test cases before attempting any of the tests using the text replacement. I may also use pytest -x or --maxfail=... to avoid the extra noise in case of any generic test failures.
I would love to see this documented better, may try to contribute something (someday).

You could use something like pytest-depends (I have no personal experience using it) or you could use a fixture like this:
from inline_snapshot import snapshot

# ================================================

# SOURCE TO BE TESTED

def work(text):
    return [f"{text}.html", f"{text}"]

# ================================================

# SINGLE NON-GENERIC TEST CASE

def test_work_with_single_word_inline():
    assert work("word") == snapshot(["word.html", "word"])

# ================================================

# TEST WITH GENERIC REPLACEMENT IN ITS OWN MODULE

def test_work_with_replacement_text1(get_expected_work_result):
    replacement_text = "replacement text 1"

    assert work(replacement_text) == get_expected_work_result(replacement_text)

def test_work_with_replacement_text2(get_expected_work_result):
    replacement_text = "replacement text 2"

    assert work(replacement_text) == get_expected_work_result(replacement_text)

# ================================================

# THE PYTEST FIXTURE

import pytest

__GENERIC__TEXT__ = "__generic__text__"

@pytest.fixture(scope="session")
def get_expected_work_result():
    print("fixture is only run one time because of the session scope")

    _generic_work_result = work(__GENERIC__TEXT__)

    assert _generic_work_result == _generic_work_snapshot

    def get_result(text):
        return [x.replace("__generic__text__", text) for x in _generic_work_result]

    return get_result

_generic_work_snapshot = snapshot(
    ["__generic__text__.html", "__generic__text__"]
)

I would love to see this documented better, may try to contribute something (someday).

I will add an examples section to the documentation with some common pattern how inline-snapshot can be used. I hope this will provide some guidance for using inline-snapshot in more advanced ways.
I also want to thank you for your support. This motivates me to continue my work :smiley: .

Thanks and thanks for the info in the other issues I raised.

Apologies I hit the wrong button (still getting used to a new laptop I just started using) ... @pytest.fixture does seem to make it much more readable than what I made, and using pytest-depends could be an nice improvement as well.
At this point I may put the generic snapshot on hold in favor of another, though likely dumber approach.
I am definitely looking forward to the updated documentation, whenever (and if ever) you get the chance to update it. And my contribution was meant only as a small token of appreciation, does not come close to justice for how much this has helped me with my work. I am hoping to get something more from the client but cannot promise anything for anytime soon (if ever). Sure hope this project will get some more updates, even if they are very small. Thanks again in any case.


Dependency execSync for win64 requires rebuilding with node-gyp

solved as described in https://github.com/mgutz/execSync/issues/24#issuecomment-59258561 - But only after installation, for that installation instance only. This is also affecting ember-cli-deploy for Windows
as I think I'm one of the few (the only?) contributor here with Windows, I'll try and take ownership of this as well - just posting this issue to have something to refer to / some discussion points
execSync is used for executing git tagging only - before ember-deploy had a dependency on gitty (iirc) (which was also problematic under Windows). So, maybe

consider alternative ways for getting the git version tag
consider alternatives to execSync (for example sync-exec)
use io.js and node.js v0.12 execSync

Most likely we can do some 0.12+ detection, then otherwise require sync-exec.

hey @duizendnegen if you have time to quickly test a branch where sync-exec is used as replacement that'd be awesome. It'll at least see if exploring sync-exec is viable solution:
https://github.com/joebartels/ember-cli-deploy/tree/swap_sync_exec
a similar concern was brought up regards to execSync in https://github.com/ember-cli/ember-cli-deploy/issues/90

That's great @joebartels! Should merge that, that solves my issues. It even has a pass-through for node.js >= 0.12, using the native call.

Thanks for giving it a try. Glad it worked. Put a PR in so hopefully it'll get merged or the attn. needed for a  solution to get into master. https://github.com/ember-cli/ember-cli-deploy/pull/93


takeUntil not cooperating with toPromise

(Potential) Bug Report
Current Behavior
For:
A.pipe(takeUntil(B)).subscribe(doSomething);

If B fires, then doSomething is never called (as expected).
But if I convert to a promise:
A.pipe(takeUntil(B)).toPromise().then(doSomething);

Now doSomething is called as soon as B fires!
Expected behavior
Scenario 2 should behave like scenario 1. I.e. B should not trigger the promise.
Environment

Runtime: [Chrome 84]
RxJS version: 6.5.4

This is not a big but works as designed. Takeuntil will complete the observable (which is key for to promise to work). If you would use the 'complete' callback inside subscribe and call doSomething there, it would behave the same. Close this as this is intended behavior


Remove year from WHATWG copyright notices

Follows https://github.com/whatwg/sg/pull/132.

I expect this will cause tests to fail, but per https://github.com/tabatkins/bikeshed/issues/1506 tests aren't running on PRs.

Please don't merge this until https://github.com/whatwg/sg/pull/132 has been merged, in case we figure out there are more things that need to change.

This duplicates https://github.com/tabatkins/bikeshed/pull/1714.


Improve BED Classifier

This issue will track Phase 2 of the Bed Classifier system. Phase 1: https://github.com/databio/bedboss/issues/34
As we populate the database, we will find some BED files are not correctly classified.
A current example from the most recent upload: https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSM6754599
We can start with narrowpeak classification, using GEOFetch to pull narrowpeaks and run BedClassifier on these files to determine where the false negatives occur, adjust the classification algorithm, and then re-insert the new (and hopefully more accurate) classifications.

@donaldcampbelljr can you update as to the status of this here?

This phase has not begun yet. The initial strategy posted above is still a good place to start, I believe. We did discuss potentially adding a column to the database that notes the discrepancy between the bedboss classification and the user/file extension classification (giving us a list of files to check). I don't believe this functionality was added to bedboss, however.


Update stable version in repo from 1.3.12 to 1.4.1

Think about update stable version to 1.4.1
Version: stable=1.3.12 (104 days old) => latest=1.4.1 (15 days old)
Installs: stable=262 (47.12%), latest=77 (13.85%), total=556
Click to use developer portal
Click to edit
Do not close this issue manually as a new issue will be created if condition for update still exists.
Please drop a comment if any reason exists which blocks updating to version 1.4.1 at this time.
Note: This is an automatically generated message and not personally authored by bluefox!
@mcm1957 for evidence

Is there any reason to delay adding this adapter to stable any longer?
Please drop a commit if you know any reason to refrain from adding.
If there is no response until 1.9.2024 we could decide to update anyway.

This issue seems to be outdated.
This issue suggests to update the stable version of this adapter to 1.4.1 but the current stable version is already 1.4.1.
So this issue should be closed.
@mcm1957 for evidence


Build Error

Hi there, I'm just trying to build webrecorder-electron for the first time and am noticing an error:
6863 INFO: Loading module hook "hook-webrecorder.py"...
Traceback (most recent call last):
  File "/usr/local/bin/pyinstaller", line 11, in <module>
    sys.exit(run())
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/__main__.py", line 90, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/__main__.py", line 46, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/building/build_main.py", line 788, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/building/build_main.py", line 734, in build
    exec(text, spec_namespace)
  File "<string>", line 16, in <module>
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/building/build_main.py", line 212, in __init__
    self.__postinit__()
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/building/datastruct.py", line 161, in __postinit__
    self.assemble()
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/building/build_main.py", line 470, in assemble
    module_hook.post_graph()
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/building/imphook.py", line 409, in post_graph
    self._load_hook_module()
  File "/usr/local/lib/python2.7/site-packages/PyInstaller/building/imphook.py", line 376, in _load_hook_module
    self.hook_module_name, self.hook_filename)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/webrecorder/webrecorder/webrecorder/standalone/hooks/hook-webrecorder.py", line 4, in <module>
    from webrecorder.standalone.assetsutils import build, get_version_str
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/webrecorder/webrecorder/webrecorder/standalone/assetsutils.py", line 2, in <module>
    from webassets.script import GenericArgparseImplementation
ImportError: No module named webassets.script
~/Projects/webrecorderplayer-electron/build.standalone/webrecorder/webrecorder
cp: webrecorder/standalone/dist/webrecorder_player: No such file or directory

It seems like this causes the player to fail to start the Python binary?

we used pyinstaller with python 3.4 or 3.5, never tested on 2.7. documentation still needs some adjustments.
in the meanwhile you can download this prebuilt binary from travis-ci
and save into ./python-binaries/webrecorder(don't forget chmod +x)
a github release will follow very soon

Ah, good catch. I see now that build-macos.sh is throwing off this error:
The path python3.5 (from --python=python3.5) does not exist

FWIW I updated updated the virtualenv creation to use 3.6 (which I have):
virtualenv -p python3.6 venv && source venv/bin/activate

and now I see:
75 INFO: Analyzing base_library.zip ...
Traceback (most recent call last):
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/bin/pyinstaller", line 11, in <module>
    sys.exit(run())
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/__main__.py", line 90, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/__main__.py", line 46, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/building/build_main.py", line 788, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/building/build_main.py", line 734, in build
    exec(text, spec_namespace)
  File "<string>", line 16, in <module>
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/building/build_main.py", line 212, in __init__
    self.__postinit__()
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/building/datastruct.py", line 161, in __postinit__
    self.assemble()
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/building/build_main.py", line 317, in assemble
    excludes=self.excludes, user_hook_dirs=self.hookspath)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/depend/analysis.py", line 560, in initialize_modgraph
    graph.import_hook(m)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/lib/modulegraph/modulegraph.py", line 1509, in import_hook
    source_package, target_module_partname, level)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/lib/modulegraph/modulegraph.py", line 1661, in _find_head_package
    target_module_headname, target_package_name, source_package)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/depend/analysis.py", line 209, in _safe_import_module
    module_basename, module_name, parent_package)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/lib/modulegraph/modulegraph.py", line 2077, in _safe_import_module
    module_name, file_handle, pathname, metadata)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/lib/modulegraph/modulegraph.py", line 2167, in _load_module
    self._scan_code(m, co, co_ast)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/lib/modulegraph/modulegraph.py", line 2585, in _scan_code
    module, module_code_object, is_scanning_imports=False)
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/lib/modulegraph/modulegraph.py", line 2831, in _scan_bytecode
    global_attr_name = get_operation_arg_name()
  File "/Users/ed/Projects/webrecorderplayer-electron/build.standalone/venv/lib/python3.6/site-packages/PyInstaller/lib/modulegraph/modulegraph.py", line 2731, in get_operation_arg_name
    return module_code_object.co_names[co_names_index]
IndexError: tuple index out of range
~/Projects/webrecorderplayer-electron/build.standalone/webrecorder/webrecorder
cp: webrecorder/standalone/dist/webrecorder_player: No such file or directory

Python 3.6 is not yet supported by pyinstaller
https://github.com/pyinstaller/pyinstaller/pull/2341

Yeah, we've been running with Python 3.5 currently. Do you want to try with 3.5?

It obviously works with 3.5 -- congrats on the release! -- so I'll close this.

I'm actually having some trouble with python3.5 as well on my Mac using python3.5-dev installed with pyenv.
32193 INFO: Python library not in binary depedencies. Doing additional searching...
Traceback (most recent call last):
  File "/Users/ed/.pyenv/versions/webrecorderplayer/bin/pyinstaller", line 11, in <module>
    load_entry_point('PyInstaller==3.2.1', 'console_scripts', 'pyinstaller')()
  File "/Users/ed/.pyenv/versions/3.5-dev/envs/webrecorderplayer/lib/python3.5/site-packages/PyInstaller/__main__.py", line 90, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "/Users/ed/.pyenv/versions/3.5-dev/envs/webrecorderplayer/lib/python3.5/site-packages/PyInstaller/__main__.py", line 46, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "/Users/ed/.pyenv/versions/3.5-dev/envs/webrecorderplayer/lib/python3.5/site-packages/PyInstaller/building/build_main.py", line 788, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
  File "/Users/ed/.pyenv/versions/3.5-dev/envs/webrecorderplayer/lib/python3.5/site-packages/PyInstaller/building/build_main.py", line 734, in build
    exec(text, spec_namespace)
  File "<string>", line 16, in <module>
  File "/Users/ed/.pyenv/versions/3.5-dev/envs/webrecorderplayer/lib/python3.5/site-packages/PyInstaller/building/build_main.py", line 212, in __init__
    self.__postinit__()
  File "/Users/ed/.pyenv/versions/3.5-dev/envs/webrecorderplayer/lib/python3.5/site-packages/PyInstaller/building/datastruct.py", line 161, in __postinit__
    self.assemble()
  File "/Users/ed/.pyenv/versions/3.5-dev/envs/webrecorderplayer/lib/python3.5/site-packages/PyInstaller/building/build_main.py", line 543, in assemble
    self._check_python_library(self.binaries)
  File "/Users/ed/.pyenv/versions/3.5-dev/envs/webrecorderplayer/lib/python3.5/site-packages/PyInstaller/building/build_main.py", line 626, in _check_python_library
    raise IOError(msg)
OSError: Python library not found: libpython3.5.dylib, .Python, Python, libpython3.5m.dylib
This would mean your Python installation doesn't come with proper library files.
This usually happens by missing development package, or unsuitable build parameters of Python installation.

* On Debian/Ubuntu, you would need to install Python development packages
  * apt-get install python3-dev
  * apt-get install python-dev
* If you're building Python by yourself, please rebuild your Python with `--enable-shared` (or, `--enable-framework` on Darwin)

Is there a better way to build on Mac without installing 3.5 globally? Or are you mostly building on Linux?

install python with pyenv this way:
PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.5.3;

we had the same issue with travis-ci

Success!

Btw, are installers for OS X and Windows available anywhere yet?

Installers? Do you mean the latest release?  You can download it here :)
https://github.com/webrecorder/webrecorderplayer-electron/releases/latest
We officially released 1.0.0 yesterday:
https://twitter.com/webrecorder_io/status/847573532728975361

Ahh yes, I just found it myself by clicking on Releases thanks!


Measurements types rebuilded

Define measurement types
As per user case: IUC10
Link: https://github.com/rhus/charging-docs/wiki/Requirements:-Collection-and-Mediation
Trello card: https://trello.com/c/vxZVQPCe/8-define-measurement-types
Description:
As an administrator, I want to be able to define new measurements and their relationship. For instance: I want to be able to measure in MB, and I relate that to KB and B. I can also measure in MiB, KiB.
Implementation:
We have created a model measure (chargeback_rate_detail_measure) that has the attributes: name, units, units_display and step. Units is an arrangement of units of measurement eg. "B, KB, MB ...". A step reference to the distance between units, this then facilitates conversion between measurements. The Measures are loaded from a yml file, later when the Develop do a seed, this data are loaded from the yml and saved on the ManageIQ bd.
Every rate detail (chargeback_rate_detail) has a reference to its measure. As soon as you create or edit a rapid rate it is now possible to define a rate value in response to these new units of measure. The cost is then calculated taking into account the conversion of the units designated by the user ManageIQ units used to measure the use and utilization.
To be done:
An administrator can edit these units from the Configure/Configuration/Region/Chargeback online editing in this section the yml file.

https://help.github.com/articles/ignoring-files/
git config --global core.excludesfile ~/.gitignore_global

You can ignore files without writing them in the .gitignore file_
If you don't want to create a .gitignore file to share with others, you can create rules that are not committed with the repository. You can use this technique for locally-generated files that you don't expect other users to generate, such as files created by your editor.
Use your favorite text editor to open the file called .git/info/exclude within the root of your Git repository. Any rule you add here will not be checked in, and will only ignore files for your local repository.
In Terminal, navigate to the location of your Git repository.
Using your favorite text editor, open the file .git/info/exclude.

This looks pretty good @amaurygonzalez .  Looking forward to getting this in.

I have recode taking into account most your comments. Thanks!

I have recode taking into account most your comments. Thanks

I am writing a doc about this user case https://github.com/rhus/charging-docs/wiki/The-new-Rate.-Define-variable-measure-types

@Fryguy, We have addressed the nil pointer


Change Instruction::Constrain(lhs, rhs, msg) to Instruction::Constrain(bool, msg)

Problem
Including the equality as part of the constrain statement can lead to some missed bugs (https://github.com/noir-lang/noir/pull/3740) and extra needed optimizations (https://github.com/noir-lang/noir/pull/3708) stemming from the need to implement code twice - once for Instruction::Constrain, and once for the equality operator in a binary instruction.
Happy Case
We can change Instruction::Constrain back to taking a single ValueId argument. To ensure the generated Acir is just as efficient, when converting the new constrain to acir we can check if its argument is an equality node and if so keep the current codepath for an equality constraint. If it is not an equality we can fallback to an == true like we do today in SSA.
Alternatives Considered
No response
Additional Context
No response
Would you like to submit a PR for this Issue?
No
Support Needs
No response

I've been doing some thinking on this and I don't think that it would be useful for us to make Instruction::Constrain to be unary.
The bug in #3740 is due to us (me) allowing an array equality to slip into SSA by trying to do an optimisation during codegen, this is fully fixed in #3916. After this Instruction::Constrain will be defined to only work on primitive values - either primitive types directly or a predicate for more complex types. An unary constrain instruction can't protect against it holding a ValueId which doesn't correspond to a boolean value any more than a boolean constrain can however.
I don't believe that the optimizations in #3708 are unnecessary if we want to maintain performance. If constrains are going to be working on predicate values then we need to be able to work backwards to build the actual set of constraints which the predicate encodes.
We then could switch to an unary constrain instruction but it has a number of downsides:

A unary constrain would slow down SSA

The construct Constrain(lhs, rhs) would have to turn into Constrain(Not(Eq(lhs, rhs))). This has the knock-on effect of slowing down the SSA passes due to the number of new instructions.

A boolean constraints are easier to decompose into simpler constraints.

The less expressive form of the constrain instruction adds some hurdles to decomposing constraints as done in #3892. Rather than being able to just return a new list of constraints and insert them all at once, we'd need to insert extra instructions to calculate the values being constrained and then use the results from this in our new constraints.

A boolean constraint makes it easier to inline the constrained value elsewhere in the program.

See https://github.com/noir-lang/noir/pull/3708#issuecomment-1852323673

Boolean constrains are easier to reason about.

Personally I find it much easier to reason about Constrain(lhs, rhs) vs Constrain(Not(Eq(lhs, rhs))) and it results in a much more readable SSA.

To ensure the generated Acir is just as efficient, when converting the new constrain to acir we can check if its argument is an equality node and if so keep the current codepath for an equality constraint.

I'm not a fan of this solution as we'd need to perform look-ahead behaviour as otherwise the ACIR for the equality predicate will already have been generated.

@TomAFrench yes, I still think this could be an improvement. We can explore it later when we focus on code quality & documentation before 1.0


[BUG] adding a cat to a new note does not work (no error)

If you try to add a cat to a new note you are editing, the Rust command is never executed
If you exit to list of notes and then back to the note to edit, adding the cat then works

This has been fixed