ci: add minimum GitHub token permissions for workflows

Description
This PR adds minimum token permissions for the GITHUB_TOKEN in GitHub Actions workflows using secure-workflows.
The GitHub Actions workflow has a GITHUB_TOKEN with write access to multiple scopes. Here is an example of the permissions in one of the workflow runs:
https://github.com/node-red/node-red/actions/runs/3158895012/jobs/5141453438#step:1:19
After this change, the scopes will be reduced to the minimum needed for the following workflows:

release.yml
tests.yml

Motivation and Context

This is a security best practice, so if the GITHUB_TOKEN is compromised due to a vulnerability or compromised Action, the damage will be reduced.
GitHub recommends defining minimum GITHUB_TOKEN permissions.
The Open Source Security Foundation (OpenSSF) Scorecards also treats not setting token permissions as a high-risk issue. This change will help increase the Scorecard score for this repository.

Signed-off-by: Ashish Kurmi<EMAIL_ADDRESS>

Coverage remained the same at 68.328% when pulling 87e7f3a61ca387b727df3b4b23701be89b4c217a on boahc077:github_actions_token_permission into f060309002e41ce0ab610b7d78f58f0ccdb4042d on node-red:master.

Thank you for this contribution. I have learnt something new here and will look to apply it else where.


If the input is invalid, don't make a request

Description
if the input is invalid, a request is made to validate the manual node Id which shouldn't be the case
288754910-2eaf062b-d427-482c-9e2e-1986d1a707e5.webm

Blocked on refactoring select node component

Verified,

Devnet
ec2ed3d
TC2439 - Input validation doesn't send requests

The wrong input in any of the resources or any solution doesn't perform a request.

Verified:

Devnet
ec2ed3d


Notebook API tests editor editing event

1) Notebook API tests
       editor editing event:
     Error: Timeout of 60000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/Users/runner/work/vscode/vscode/extensions/vscode-api-tests/out/singlefolder-tests/notebook.test.js)
      at listOnTimeout (internal/timers.js:554:17)
      at processTimers (internal/timers.js:497:7)

https://github.com/microsoft/vscode/runs/4721311082?check_suite_focus=true#step:16:526

#126371
reenabling this since I skipped all these tests in the browser, which is the only place they are flaky


NVM is not compatible with the npm config "prefix" option warning (Mac OS) + npm ERR! code ELIFECYCLE npm ERR! errno 11 npm ERR! Exit status 11

Operating system and version:
MAC OS High Siera 10.13.4
nvm debug output:

nvm --version: v0.33.11
$TERM_PROGRAM: Apple_Terminal
$SHELL: /bin/bash
$SHLVL: 1
$HOME: /Users/scottbarrett
$NVM_DIR: '$HOME/.nvm'
$PATH: $NVM_DIR/versions/node/v9.8.0/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Frameworks/Mono.framework/Versions/Current/Commands
$PREFIX: ''
$NPM_CONFIG_PREFIX: ''
$NVM_NODEJS_ORG_MIRROR: ''
$NVM_IOJS_ORG_MIRROR: ''
shell version: 'GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin17)'
uname -a: 'Darwin 17.5.0 Darwin Kernel Version 17.5.0: Mon Mar 5 22:24:32 PST 2018; root:xnu-4570.51.1~1/RELEASE_X86_64 x86_64'
OS version: Mac 10.13.4 17E199
curl: /usr/bin/curl, curl 7.54.0 (x86_64-apple-darwin17.0) libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
wget: not found
git: /usr/local/bin/git, git version 2.8.1
grep: /usr/bin/grep, grep (BSD grep) 2.5.1-FreeBSD
awk: /usr/bin/awk, awk version 20070501
sed: illegal option -- -
usage: sed script [-Ealn] [-i extension] [file ...]
       sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
sed: /usr/bin/sed,
cut: illegal option -- -
usage: cut -b list [-n] [file ...]
       cut -c list [file ...]
       cut -f list [-s] [-d delim] [file ...]
cut: /usr/bin/cut,
basename: illegal option -- -
usage: basename string [suffix]
       basename [-a] [-s suffix] string [...]
basename: /usr/bin/basename,
rm: illegal option -- -
usage: rm [-f | -i] [-dPRrvW] file ...
       unlink file
rm: /bin/rm,
mkdir: illegal option -- -
usage: mkdir [-pv] [-m mode] directory ...
mkdir: /bin/mkdir,
xargs: illegal option -- -
usage: xargs [-0opt] [-E eofstr] [-I replstr [-R replacements]] [-J replstr]
             [-L number] [-n number [-x]] [-P maxprocs] [-s size]
             [utility [argument ...]]
xargs: /usr/bin/xargs,
nvm current: v9.8.0
which node: $NVM_DIR/versions/node/v9.8.0/bin/node
which iojs:
which npm: $NVM_DIR/versions/node/v9.8.0/bin/npm
npm config get prefix: $NVM_DIR/versions/node/v9.8.0
npm root -g: $NVM_DIR/versions/node/v9.8.0/lib/node_modules

nvm ls output:

        v6.11.1
->       v9.8.0
         system
node -> stable (-> v9.8.0) (default)
stable -> 9.8 (-> v9.8.0) (default)
iojs -> N/A (default)
lts/* -> lts/carbon (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.14.3 (-> N/A)
lts/carbon -> v8.11.3 (-> N/A)

How did you install nvm? (e.g. install script in readme, Homebrew):
Install script in readme
What steps did you perform?
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

command -v nvm
added to bash profile:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

What happened?
I'd had some node/npm permissions issues due to a local node install in the root directory. Removed that and then got nvm to avoid the issues going forward. When trying to run some scripts in a project to restore a mongoDB schema which was working fine until this point i'm now getting the following error:

nvm is not compatible with the "npm_config_prefix" environment variable: currently set to "/Users/scottbarrett/.nvm/versions/node/v9.8.0"
Run `unset npm_config_prefix` to unset it.
npm ERR! code ELIFECYCLE
npm ERR! errno 11
npm ERR! Exit status 11

running unset npm_config_prefix has no impact, have also removed the prefix from the ~/.npmrc file in case a preset issue existed.

What did you expect to happen?

I expected the DB to restored as normal with no npm/nvm errors

Is there anything in any of your profile files (.bashrc, .bash_profile, .zshrc, etc) that modifies the PATH?

I've removed the prefix entirely from the npmrc file, this now tracks node versions correctly when switching between versions via nvm
npm ls -g --deph=0 returns:
/Users/scottbarrett/.nvm/versions/node/v10.7.0/lib
└──<EMAIL_ADDRESS>npm config get prefix returns:
/Users/scottbarrett/.nvm/versions/node/v10.7.0

Sounds resolved; happy to reopen if not.

Yeah please could this be reopened as still getting the issue

@sbarrett08 sure!
so with the prefix removed, you're still having trouble running nvm use?

It's not running nvm use that causes the issue, i can nvm use to switch or run any node version, however when i run some prebuilt npm commands which were working successfully previously i get the errors about the config prefix incompatibility and the npm error code 11.
Fairly certain it's not my npm commands or bash scripts that are the cause as they are basically just bash script commands which all work fine using independent execution. There are commands which execute a bash script && another npm command with the other npm command itself just being another bash script. The issue deffo seems to be around nvm/npm and this config prefix

ahhh - if you're running a bash script, it has to either inherit the PATH or re-source nvm itself. Can you elaborate on exactly what commands you're running, from the command line (where nvm's node is available)?

Yes for example we have one command

npm restore-db which in the package.json equates to bash scripts/dbImport.sh && npm run test-dbSetup

npm run test-dbSetup consists of bash scripts/dbImport.sh <params> followed by two params for folder/schema/collection
I can run the bash scripts/dbImport.sh independently and the npm run test-dbSetup command independantly, but the combination as at 1. results in the npm error

dbImport.sh probably has to source nvm.sh itself - otherwise it won't inherit the PATH (which is how node comes in)

Can you share the contents of dbImport.sh?

Forgive my ignorance in these areas i'm a junior and still trying to pick things up in respect of node etc. that script makes no reference to nvm.sh that i can see but are you saying that because of the script being called via npm it would need something additional to enable it to execute? The only source the script goes to in terms of contents is the bash profile to pick up some db params for host, port, username, pwd etc, should there be something else in the bash profile regarding the Path?
In the package.json i have an alias for some commands, these two aliases for example are combined into one command restore-db

"restore-db": "bash scripts/dbImport.sh && npm run test-dbSetup"
"test-dbSetup": "bash scripts/dbImport.sh param1 param2"

I can run bash scripts/dbImport.sh successfully with no issues by just entering it in the terminal and running without using npm. I can also run bash scripts/dbImport.sh <params> no problem.  Where i get the issue is when running via npm run test dbSetup or npm run restore-db this then generates the prefix error message
nvm is not compatible with the "npm_config_prefix" environment variable: currently set to "/Users/scottbarrett/.nvm/versions/node/v9.8.0" Run unset npm_config_prefixto unset it. npm ERR! code ELIFECYCLE npm ERR! errno 11 npm ERR! Module@version test-dbSetup:bash scripts/dbImport.sh param1 param2 npm ERR! Exit status 11

Unfortunately i'm restricted to what i'm allowed to share so i'm trying to redact as much as possible to keep within limits

Instead of using bash, can the script be made executable?

I don't think the script is the issue as there are other members on the team using nvm working on this particular module with the npm commands executing successfully and don't experience the same issue i get, nor have they ever seen this type of error before 😕

When i have ran the printenv command this is the PATH result from the output: PATH=/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/Users/scottbarrett/.nvm/versions/node/v9.8.0/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/usr/local/nodejs/bin:/usr/local/nodejs/bin:/usr/local/nodejs/bin:/usr/local/nodejs/bin

Hmm, i see the proper nvm path there shadowing your system node.
In the script environment, what do these commands output?

/Users/scottbarrett/.nvm/versions/node/v9.8.0/lib
└──<EMAIL_ADDRESS>/Users/scottbarrett/.nvm/versions/node/v9.8.0

When i added those commands to the script the above was the output, same as previous

Is your home directory a symlink? What shell are you using?

@ljharb Would removing an reinstalling nvm be an option to try?

@sbarrett08 it's certainly worth a shot.

Tried removing via the README uninstall option, reinstalled and still have the same issue :(

Just ran another nvm debug, here is the output, the prefix lines are all empty
nvm --version: v0.33.11 $TERM_PROGRAM: Apple_Terminal $SHELL: /bin/bash $SHLVL: 1 $HOME: /Users/scottbarrett $NVM_DIR: '$HOME/.nvm' $PATH: /usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:$NVM_DIR/versions/node/v9.8.0/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/apache-maven-3.3.9/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Frameworks/Mono.framework/Versions/Current/Commands $PREFIX: '' $NPM_CONFIG_PREFIX: '' $NVM_NODEJS_ORG_MIRROR: '' $NVM_IOJS_ORG_MIRROR: '' shell version: 'GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin17)' uname -a: 'Darwin 17.5.0 Darwin Kernel Version 17.5.0: Mon Mar 5 22:24:32 PST 2018; root:xnu-4570.51.1~1/RELEASE_X86_64 x86_64' OS version: Mac 10.13.4 17E199 curl: /usr/bin/curl, curl 7.54.0 (x86_64-apple-darwin17.0) libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0 wget: not found git: /usr/local/bin/git, git version 2.8.1 grep: /usr/bin/grep, grep (BSD grep) 2.5.1-FreeBSD awk: /usr/bin/awk, awk version 20070501 sed: illegal option -- - usage: sed script [-Ealn] [-i extension] [file ...]        sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...] sed: /usr/bin/sed,  cut: illegal option -- - usage: cut -b list [-n] [file ...]        cut -c list [file ...]        cut -f list [-s] [-d delim] [file ...] cut: /usr/bin/cut,  basename: illegal option -- - usage: basename string [suffix]        basename [-a] [-s suffix] string [...] basename: /usr/bin/basename,  rm: illegal option -- - usage: rm [-f | -i] [-dPRrvW] file ...        unlink file rm: /bin/rm,  mkdir: illegal option -- - usage: mkdir [-pv] [-m mode] directory ... mkdir: /bin/mkdir,  xargs: illegal option -- - usage: xargs [-0opt] [-E eofstr] [-I replstr [-R replacements]] [-J replstr]              [-L number] [-n number [-x]] [-P maxprocs] [-s size]              [utility [argument ...]] xargs: /usr/bin/xargs,  nvm current: v9.8.0 which node: $NVM_DIR/versions/node/v9.8.0/bin/node which iojs:  which npm: $NVM_DIR/versions/node/v9.8.0/bin/npm npm config get prefix: $NVM_DIR/versions/node/v9.8.0 npm root -g: $NVM_DIR/versions/node/v9.8.0/lib/node_modules

So, to reiterate:

nvm is working fine on the shell, and in npm run-scripts
nvm is working fine in your bash script when ran via the terminal
nvm is not working fine in your bash script when it is ran via npm run-script
nvm works fine on your coworkers' machines when running the bash script via npm run-script

Between your machine and a coworker's where it works - are there any differences in nvm debug output, printenv output, or node/npm/nvm versions?

I'd created a few commands and added to the scripts section of the package.json file the below:
"nvm-version-and-version": "nvm version && nvm version"
"nvm-version-check": "nvm version",
"nvm-npm-chaining": "nvm version && npm run nvm-version"
These all return the
sh: nvm: command not found
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
errors.
It's like nvm isn't being accessed or found via npm. Though when i added a command to check the node version this worked successfully though anything referencing nvm did not.

and similarly, node --version && node --version vs just node --version?

Yeah these commands work ok and return the node version,
"node-check": "node --version && node --version"
return:
> Service/module@versionNum node-check /Users/scottbarrett/Documents/Directory/sub-directory
> node --version && node --version
v9.8.0
v9.8.0
Also just, "node-check-single": "node --version"
returns v9.8.0

so you're saying that bash ./foo in a run-script works but bash ./foo && bash ./foo doesn't - to me that means that your script is doing something to mess up the $PATH so that the second script doesn't have node/npm available.
I'm not sure I can debug further without the full contents of the bash script.

Actually no, even bash ./foo in a run script isn't working when called via npm. It does work when just entered into the terminal as bash ./foo though.
For the script I've removed some parts that reference DB folders/collections/schema names and directories the top half of the script as below references the .bash_profile for db user creds preset
#!/bin/sh
exit on error
set -e
echo "Restoring DB..."
[ -f ~/.bash_profile ] && . ~/.bash_profile
dbHost=${pick up from bash_profile}
dbPort=${pick up from bash_profile}
dbUser=${pick up from bash_profile}
dbPwd=${pick up from bash_profile}
dbSSLMode=${pick up from bash_profile}
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd "$DIR"
outDB=${1:-schema}
inDB=${2:-data source}
Allow a specific collection to be restored, otherwise restore all
if then else statement to check/restore specific collection
drop db if exists
mongo commands
##set data directory to restore db to in repo folder structure
mongo commands to mongoRestore
echo "DB restored"

aha, [ -f ~/.bash_profile ] && . ~/.bash_profile might be the problem - presumably bash_profile has lines that source nvm itself. When you first load your terminal, is there a node/npm activated, or do you have to nvm use explicitly? What if you run nvm alias default node?

My bash profile doesn't have much in it, only a few api keys, some mongoDB params exported like DB_HOST, DB_USER etc.
I have these exports for some java stuff:
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=/usr/local/apache-maven-3.3.9/bin:$PATH
The only reference to nvm in the bash_profile is what gets added to the bash profile from the readme:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion
When i've opened a new terminal window there does seem to be node already active but it is the latest version of node installed as default via nvm, not explicitly invoked. nvm alias default node returns default -> node (-> v10.8.0)

Sourcing nvm.sh (via sourcing bash_profile) would re-use a potentially different version of node; on this case, 10.8 instead of 9.8.
tbh I’d recommend not relying on bash_profile in the script, but instead having it source a different .sh file.

It's not really an option for me to change this particular script as it's in use by all members of the team and works successfully for them. I think it's something somewhere in my mac that is causing this but aint got no clue where or what.
You mentioned before about a symlink, how could  i check for this?
When i've removed nvm from my system and installed node via brew the issue obviously is no longer present and everything works as expected.
With nvm installed I've removed all versions of node but one (6.11.1) so this should prevent the suggestion of different versions of node being re-used but the error is still present. There is a .nvmrc file present in the repo for the project with 6.11.1 as the node version so hence the keeping them the same version but still getting the error.

Are there any sort of preferences files or group user permissions somewhere that could be potential to look at?

Not that i can think of - I’d compare home dir file structures and permissions, env vars, profile files, with a coworker for whom it works, and see what differences pop up.

I'm having the same issue. It seems to be related to the fact that I recently updated nvm.
In iterm, I have this:
~ $ node --version
v10.9.0
~ $ nvm version
v10.9.0

But then I run tmux and see this message:

nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local"
Run npm config delete prefix or nvm use --delete-prefix v10.9.0 --silent to unset it.

In tmux, here's what the following commands display:
~ $ node --version
v9.7.1
~ $ nvm --version
0.33.11
~ $ nvm version
system
~ $ nvm ls default
        v10.9.0

@everdimension i believe this often happens in tmux if you're copying PATH variables, but changing them, as part of initializing tmux. Do you have anything in your tmux configs that might be doing this?

@ljharb
Thank you for replying so quickly.
Well, my tmux config has been unchanged for some time, and as far as I can tell there's only this line that interacts with PATH somehow:
set-option -g default-command "reattach-to-user-namespace -l zsh"

I'm also using both zsh and oh-my-zsh, their configs have been untouched for some time as well.

I have found this issue: https://github.com/creationix/nvm/issues/1652
The workaround from the first post helps, I have added this line
PATH="/usr/local/bin:$(getconf PATH)"

just before the line where I source nvm:
source $HOME/.nvm/nvm.sh

But as I understand it it's just a workaround and nvm used to work fine without it.

I can't imagine what would have changed in nvm that could affect this :-/

Couldn't resolve, had to give up and hopefully after a device wipe and reset it should be resolved.

My solution: Completely uninstall any node and node-related things (like nvm, node_moduls, $PATH vars...) on your computer including man files, packages, etc.
(https://stackoverflow.com/questions/11177954/how-do-i-completely-uninstall-node-js-and-reinstall-from-beginning-mac-os-x/11178106#11178106)
I then FIRST installed nvm again, and with nvm I installed various node version.
So far there is no annoying line in the Terminal, neither in the native one nor in VS Code.

What fixed this error for me, finally, after trying everything:
Uninstall npm.
Uninstall the homebrew version of nvm, reinstall via curl.
Most important:
In /usr/local/bin, delete the node alias.
Now it's finding the NVM default alias first, not whatever I installed via Xcode.

In my case I'm using a fresh install (no previous npm or node installation), and zsh, seems this line cause the problem: export NVM_DIR="$HOME/.nvm"
I replaced $HOME with the full path and is solved.

@ignaciocaamanio what is the value of $HOME on that line?

Sorry, I don't understand, you mean with what I replaced $HOME ?
I put: /home/nacho/.nvm

What I mean is, what is the exact value of the environment variable "HOME" - since i'd expect it to be equivalent to /home/nacho.

It is /home/nacho. I tried again with $HOME and the problem come back. Don't make sense but that is what happen.

That definitely doesn't make sense. Are you sure that's the value of it on the line immediately before the export NVM_DIR line?

I put echo $HOME before export NVM_DIR line and the output is /home/nacho, as expected.

i'm not sure what to do about that then - your fix shouldn't have been necessary, unless your shell itself is broken ¯\_(ツ)_/¯

Sorry to post another comment, @ljharb the nvm installation adds export NVM_DIR="$HOME/.nvm" to .bashrc
If I change it to export NVM_DIR="$HOME.nvm" (without slash) the nvm is not compatible with the npm config "prefix" option alert disappears. If I echo my $HOME the path ends with slash, previously I've copied the path wrong (without slash)

@ignaciocaamanio $HOME incorrectly has a trailing slash in it - remove that (wherever it's defined) and everything should work again.

Using the following fixed this issue for me:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion```

I have the same problem with vscode terminal (zsh)
`➜ nvm use
Found '/Users/.../project-name/.nvmrc' with version <10.17.0>
internal/modules/cjs/loader.js:638
throw err;
^
Error: Cannot find module '"/Users/infante/Library/Application'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:692:17)
at Module._preloadModules (internal/modules/cjs/loader.js:901:12)
at preloadModules (internal/bootstrap/node.js:602:7)
at startup (internal/bootstrap/node.js:273:9)
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
nvm is not compatible with the npm config "prefix" option: currently set to ""
Run nvm use --delete-prefix v10.17.0 to unset it.`


[DISCUSS] Validate new document writes against max_http_request_size

This supersedes #1200.
New Behaviour
This variant introduces no new config variable and no formula, instead, there is a set of three hurdles each doc write has to pass:

doc body size
individual attachment size
length of multipart representation of full doc body and including attachments.

The validation path is now the following:

If a new doc body is > max_document_size, we throw an error.
If a new attachment is > max_attachment_size, we throw an error.
If the new doc body plus new and/or existing attachments is > max_http_request_size, we throw an error.

Notes
This is again just a sketch to show how something like this could look like. The patch is fairly minimal, but it does include a full additional ?JSON_ENCODE of the doc body, and some munging of the attachment stubs, that I’d like to get a performance review for. I’m sure we can make this fast if we need to, but that would require a larger patch, so it’s this sketch for now.
Compatibility
This also sets the max_document_size to 2 GB, to restore 1.x and 2.0.x compatibility as per https://github.com/apache/couchdb/pull/1200#issuecomment-370489809
I’d suggest we make this a BC change in 3.0 to the suggest 64MB or whatever we feel is appropriate then.
Formalities

[x] Includes tests
[ ] Documentation has been updated // waiting for consensus before doing this

The travis fails here point to https://github.com/apache/couchdb/blob/master/test/javascript/tests/attachments.js#L300-L301 where we allow attachments stubs to be written verbatim and without length info. There is code to resolve this, but it requires reading the attachment info from disk.
I’m not yet implementing this because I wan’t a review of the approach here first. Could be perf-prohibitive on the write path, tho.

Note that whatever we do here - especially if this PR is not merged into 2.2.0 - needs to be documented for the 2.2.0 release, in light of the concerns raised in #1304.

I propose the following:

cherry-pick the change that restores the 4GB request size limit to master/2.2.0.
leave this branch/pr open until we made the validate-request-size-on-write function a) complete and b) fast.
when the function is ready, add it to a post 2.2.0 release with a note that in the future this will be enabled by default and a config option for folks to opt-in at that point.
eventually make it opt-out.

I don’t see this being finished any time soon, and since the end-result is functionally equivalent (sans the opt-in) for 2.2.0, this should not block 2.2.0.

@janl I'll try to make the function. It is close enough to the other one. Otherwise, I think we can keep it.

When we talk about 64Mb, 2Gb etc... are we talking about default values that can be raised by the user, or hard limits that the end user cannot change?
For example, if 64Mb is selected for 3.0, would individual users still be able to set 4Gb and more?
As far as we are concerned, we enjoy CouchDb for the ability to use it as a file server / streaming server and keep all the data in one place to ensure database consistency (compared to keeping references to third party storage services such as S3, and then keeping everything in sync, ensuring links are not dead etc... Couchdb is a blackbox neatly integrated with the Application Layer, thus greatly simplifying maintenance and system administration).
Filtered replication is particularly nice with this regard, since it becomes extremely easy to create clusters of multimedia attachments to balance load. For example, one cluster may only contains replicated videos, and the Application Layer uses Command-Query separation to route the user to the right cluster depending on the type of Query being performed. All of this is transparent from the application's perspective, the various addresses of clusters handling specific query types simply need to be configured during the deployment of the application, and further load balancing can be done at the DNS level.
CouchDb hugely simplifies the infrastructure work. The management of large multimedia clusters becomes a breeze with continuous filtered replication, and consumption by application users is very efficient thanks to CouchDb support for HTTP range requests.
It would be interesting to retain the ability to have large documents / attachments / requests sizes for those who know what they are doing.

@janl This is very stale. Any plans to get this in? I am preparing to mass-close old PRs that never got merged.

@janl This is very stale. Any plans to get this in? I am preparing to mass-close old PRs that never got merged.

@janl / @wohali : ping

@bessbd I think what Jan proposed in https://github.com/apache/couchdb/pull/1253#issuecomment-404873979 is basically done. We've pushed the default limit in 3.x pretty low, and as you know 4.0 changes all the rules.
I think it is probably safe to close this out, but I'd like to see @janl +1 that.

is there any update on this issue?

this is very stale.


Add support for or ignore legacy SI/SO encodings

Environment
Windows 10 1903 build 18362.418

Any other software?

Steps to reproduce
This happened suddenly after a recent windows 10 update , left my laptop installing some updates at night , to find this strange error in the morning when trying to ssh from a debian WSL instance

Expected behavior

Actual behavior

What's the font in that cmd window?

cascadia code

@otmos Could you copy and paste that character here, or tell us what character it is?
Does that repro if you ssh to the same server using the legacy console window (by launching Debian directly)?
Does htop display that character in the Terminal without sshing?
Does the character appear in other commandline applications as well, or just htop?

On local , the character doesn't show at all , everything is normal both on terminal and legacy console:

but in SSH , This character appears everywhere , in nano and even in the shell itself .

tried to copy it from nano , pasting it on notepad gave this

but searching it on google chrome gave a question mark

@miniksa does this look like the replacement character thing you fixed?
Helpful to know that A: this isn't unique to the Windows Terminal and B: this only repros over ssh.

No, not quite, @zadjii-msft.
@otmos... fill me in on the entire chain here. It could be any of the pieces involved.
I need you to fill in the blanks on this set of steps for me.

I'm starting from a Windows 10 1903 machine
I open a WSL ____(v1/v2)_____ instance in (___default conhost, I think___) that is using ____(Debian from the Windows Store, I think)____
Then I run ____(ssh.exe username@remotehost, with no other args, I think)____
After I log in to the ____(What version and flavor of Linux machine)____, I immediately run ____(htop, I think)_____.
Then I see the boxes.
I close the program. Then I run it again, redirecting it to a file by calling program > foo.txt.
It either runs to completion or I press Ctrl+C to end it after a moment or two.
I attached foo.txt here: ____(uploaded foo.txt)____

I'm starting from a Windows 10 1903 machine
I open a WSL V1 instance in default conhost or Windows Terminal that is using Debian from the Windows Store
Then I run ssh.exe username@remotehost
After I log in to the DISTRIB_DESCRIPTION="Ubuntu 16.04.5 LTS" , I immediately run Htop or nano then i begin to see the boxes.

I close the program.
Then I run it again, redirecting it to a file by calling program > foo.txt.
It either runs to completion or I press Ctrl+C to end it after a moment or two.
I attached foo.txt here:
foo.txt
Same machine on ssh from a Cloud9 IDE :

The boxes are literally 0xf in the stream, per what's in foo.txt. @zadjii-msft, any ideas? Could it be some setting in the termcap?

I haven't the darndest clue why we'd be getting "Shift In" (0xf, ^O) in the buffer ever. @j4james/ @egmontkob and ideas where those might come from?

I was staring at this the other day, and no, I have no idea. I don't recall ever seeing something like this.
foo.txt doesn't contain what you guys were asking for. It contains a 0x0f at the beginning and near its end, but the rest are literal caret ^ character followed by literal letter O or bracket [ or alike, no escape character in sight. It's sure not the raw output of htop. However, it might easily be the output of htop converted to these human-friendly ^-notations, e.g. by cat -v. And apparently whoever did this convertion also inserted actual ^O (0x0f aka. "shift in") characters??? Someone somehow broadcasting this character to all open file descriptors? Doesn't make too much sense.
Let's gzip it before uploading, that guarantees binary safe transfer (or, at least, it can be detected if the file gets corrupted).
Also, chances are that the app produces different output when redirected. Instead of redirection I recommend to launch script, then reproduce the bug, then quit script's shell (it tells you "Script done"), and then attach the (gzipped) typescript file.

The nano screenshot is IMO pretty misleading, as I have no idea what file is opened there, e.g. whether those rectangles are part of the file's contents or the actual bug we're hunting. Only the bottom rows prove that it's indeed buggy.
Could be a broken terminfo. Would be nice to see $TERM here vs. from that other terminal. Although the other terminal could just support ^O "shift in" and thus silently swallow these. I can't even exclude the possibility of a hardware issue, e.g. a transient memory failure resulting in broken terminfo residing in the memory. I'm not saying it's likely, but possible. Would be to see if the problem persists after the remote machine is rebooted, or is gone for good and we're left with an unresolved mystery.

In foo.txt, exactly the SGR sequences that reset all the attributes (and maybe enable bold), namely ^[[m, ^[[0m and ^[[0;1m are followed by ^O.
Sequences that tamper with the colors, such as ^[[30m, ^[[39;49m etc. are not followed by ^O.
(There's no SGR sequence in the file that would contain both 0/1 and 3x/4x.)
My best bet at this moment is an ncurses/terminfo bug (or hardware bug triggering faulty ncurses behavior), combined with that other emulator supporting and thus nopping on SI.
What's the output of tput sgr0 | cat -v?
Oh, wait a sec!!!
On my Ubuntu 19.10, the output of this is ^[(B^[[m (designates US charset to G0), which escape sequence is closely related to SI.
Could it be that emitting that SI was a feature of some older ncurses/terminfo?

Excerpt from ncurses-6.1/misc/terminfo.src:
iTerm2.app [...] sgr0=\E[m\017

and similar for e.g. linux-vt, putty, rxvt and quite a few others.
Apparently emitting SI is a feature of ncurses/terminfo.
At this point you can either blame the user for using an incorrect terminfo (which a perfectly valid blame as it might result in other problems too), or implement SI/SO :)

@egmontkob thanks for the great breakdown. I think there's probably two steps for us here:

Eat the SI/SO characters, to have users with this terminfo not totally broken.
Actually implement SI/SO.

I'd prefer break it down like this. Yea the terminfo is probably a bad terminfo and yea the user should change that, but also, we shouldn't just explode like this in that scenario. 1 is trivial enough to unblock this case, while (it sounds like) 2 is probably not that high of a priority feature that we can put off for a while.

I'd prefer break it down like this.

This would've been my conclusion too if it wasn't past midnight here :D

Here is a screenshot of nano trying to write into a new file if that will help

I tried to unset the $term variable too but nothing changed

And just to complete the picture:
Something that initially confused me was that the behavior seemed inconsistent. E.g. most of the time there's a rectangle when switching from grey to white, but no rectangle when switching from white to blue. However, in the very first screenshot, the row of PID 1334 is an exception to both of these "patterns".
The explanation to this is that probably we don't see the initial screen right after htop starts up, but after a couple of repaints, during which ncurses probably optimized by jumping over areas that it believed hadn't changed. And of course the reality was already off compared to ncurses's belief, so it could even matter if ncurses used relative or absolute cursor movement. Anyway, it's easy to imagine the aforementioned visual "pattern" breaking during such optimized partial repaints.

@otmos Thanks for the report and help, the mystery is solved now, no more screenshots are needed.
You might want to check your TERM (uppercase!) variable (echo $TERM) and share with us (I'm simply curious), and test if setting it to xterm-256color (export TERM=xterm-256color) fixes the issue for you (I think it should).

After setting TERM to xterm-256color , everything works as it should , and i understand how i came across this bug , it was a result of changing TERM to screen in order to fix a bug when scrolling in any app such as nano when in ssh mode from an AWS cloud9 instance

I think we'd love to hear that bug as well :)
Generally, TERM=screen or friends should be used if and only if you're inside screen or tmux.

Here is a video showcasing the bug
data - Cloud9 - Google Chrome 2019-11-15 16-40-28.zip

Note that SI and SO are covered by issue #3377, and I have a work-in-progress PR for that which I'm hoping to get back to soon.

Also if it helps, when $TERM = linux; and top is called, broken characters shows up too:

Thanks for your detailed and great analyst @egmontkob 👍 👌

The way it works is that enacs is \033(B\033)0 which configures G0 to be US-ASCII and G1 to be the ACS line drawing set. Then smacs and rmacs (and sgr0 as you have seen) use SI and SO to switch between G0 and G1 .
It is different in some entries (like xterm-256color) where enacs does nothing and smacs and rmacs just switch G0 between US-ASCII and ACS line drawing. This seems to be the new way of doing it, certainly for all the xterm entries that are still relevent.

The way it works is that enacs is \033(B\033)0 which configures G0 to be US-ASCII and G1 to be the ACS line drawing set. Then smacs and rmacs (and sgr0 as you have seen) use SI and SO to switch between G0 and G1 .
It is different in some entries (like xterm-256color) where enacs does nothing and smacs and rmacs just switch G0 between US-ASCII and ACS line drawing. This seems to be the new way of doing it, certainly for all the xterm entries that are still relevant.

Would it be possible to change tmux-256color to do something similar? I'm not privy to technical details, but looks like getting this bug fixed will probably take a long time.

If I recall correctly, this is in pull request. We deferred looking at that PR (with the blessing of the author) until after we launched v1 of Terminal, but we’ll make sure it gets back on our list.

@ismail - unlikely. tmux-256color is intended for use inside tmux which does support this; you should make sure that your TERM matches the terminal you are running.

@ismail - unlikely. tmux-256color is intended for use inside tmux which does support this; you should make sure that your TERM matches the terminal you are running.

I use tmux-256color everywhere and it works fine, except one place ;) Thanks for your reply!


Tasks get updated with heredoc style SQLs

Provider Version
The provider version you are using. Latest 0.25
Terraform Version
The version of Terraform you were using when the bug was encountered. 0.14.x
Describe the bug
When a task is created with SQL statement from file the resource is triggered to be re-created (or updated) all the time:
  # snowflake_task.test_task will be updated in-place
  ~ resource "snowflake_task" "test_task" {
        id                 = "MY_DB|CDATA|TEST_TASK"
        name               = "TEST_TASK"
      ~ sql_statement      = <<-EOT
            SELECT 1
        EOT

The resource definition is:
sql_statement = file("${path.module}/tasks/test_task.sql")

Expected behavior
The provider should not trigger update on the task.
Code samples and commands
This defintion works:
  sql_statement = "SELECT 1"

These definitions triggers always an update on the task:
   sql_statement = file("${path.module}/tasks/test_task.sql")

or
  sql_statement = <<EOF
SELECT 1
EOF

So I think the root cause is in the heredoc definition of the SQL statement. Because if it is defined as one liner in the terraform code, then it works and the task is not recreated. But when the SQL comes from a file or is defined as heredoc multiline string then it triggers update.
Additional context

Is it related to the fact that tasks do not have this normalize function for SQL statement? https://github.com/chanzuckerberg/terraform-provider-snowflake/blob/bbe05778e95fabe230fb488f789799ed6dc6657f/pkg/resources/view.go#L75 @alldoami  what do you think?


Remove location disabled pixel when there's not dialog prompt

Task/Issue URL: https://app.asana.com/0/414730916066338/1204082334468711/f
Description
We don't send location_disabled pixel anymore when the permission has been revoked forever by the user
Steps to test this PR

Uninstall previous version of Android app if already have permission configurations (or just clear storage on Settings)
Install form this branch
Navigate to maps.google.com
Tap on "Your Location 🎯" button -> Dialog prompt appears
Tap on "Enable" option -> System permission prompt appears
Select "Don't Allow" option
[x] Check pixel m_pc_s_l_d is fired
Tap on "Your Location 🎯" button again -> Dialog prompt appears
Tap on "Enable" option again-> System permission prompt appears
Select "Don't Allow" option again
[x] Check pixel m_pc_s_l_d is fired again
Tap on "Your Location 🎯" button (for the 3rd time)
[x] Check pixel m_pc_s_l_d is NOT fired

No UI changes

The naming of onSystemLocationPermissionDeniedTwice is a little confusing, especially since it is essentially just onSystemLocationPermissionDeniedForever but with an extra pixel call.
I think it's the twice part that i dislike the most, because it might not actually be the second time you've denied the request that this gets called (if you hit "maybe later" a few times on the system dialog)
But i also don't have any good suggestion for improvement! 😅 So happy to merge as is if you also can't think of way of naming this better.

This method is called the second time users don't allow permissions from the system permissions prompt so it's denied forever. It's true that you can deny more times from the rationale dialog prior the system one so I understand your confusion.
This flow will be refactored when migrating Location dialogs to match updated mic&camera ones, so let's keep it like this for the moment 👍


fix ci error in issue.2118.yaml

Signed-off-by: yxxhero<EMAIL_ADDRESS>Fixed: https://github.com/helmfile/helmfile/issues/318

done @mumoshu

@mumoshu  git::https://github.com/argoproj/argo-cd.git@manifests/crds?ref=master is not ok.

@mumoshu ready to merge.


Suggestion: Regarding ingredients

In order for the ingredients tab to be more useful, I think there should be a separate entry when adding an ingredient for quantity.
Example: 1 tsp olive oil
Example: 1 cup of basil, chopped (chopped would go in the notes section)
On the ingredients tab, each of these will register as a separate entry, which makes the ingredient page less useful.
Alternatively, you might consider removing the ingredients page altogether, in favor of using the already included search function. (Although slightly modified to encompass ingredients as part of recipes in search results)
Again-- just suggestions

Sorry for the delay and thanks for your suggestion.
This behavior is intentional, I just don't want to have too many fields to fill in when writing a recipe. Of course there could be much a more precise and detailed way to do, but the current way is a compromise that suits my needs.
Sorry :confused:


We need a better context menu contribution story

Testing https://github.com/Microsoft/vscode/issues/29466

fresh workspace
open context menu on an empty explorer

You get:

Most of the actions are not applicable. They should be either disabled or preferable not be there at all.

https://github.com/Microsoft/vscode/issues/991


Any real world examples?

Hello, and thank you for this library. It looks amazing.
I was wondering if there are any real world examples? Will love to take a look at something built with it.

Thank you for your kind words! This project is incomplete at the moment (only been working on it for two weeks) but it exists to help support me with my development with my GDScript Haxe target. So if you want to keep up with an implementation of a macro-built Haxe target, I'd recommend checking that out. :D

That's perfect! And thank you for other project too!

https://github.com/RobertBorghese/reflaxe.CSharp


Fix static padding calculation

Hello,
I was testing the models and found that the results were different between the EfficientNet model with static padding convolutions and the EfficientNet model with dynamic padding convolutions.
When I looked into the code I noticed that there was a difference in the padding's calculation.
The appropriate calculation is the one used for the dynamic padding ie:
[pad_w // 2, pad_w - pad_w // 2, pad_h // 2, pad_h - pad_h // 2] (code)
You can test it with the quick & dirty script I made:
import torch
import torchvision.transforms as transforms
from efficientnet_pytorch import EfficientNet

# Tensorflow-like EfficientNet pre-process step
test_input = torch.ones((1, 224, 224, 3))
test_input = test_input/255
mean = torch.Tensor([0.485, 0.456, 0.406])
std = torch.Tensor([0.229, 0.224, 0.225])
test_input = (test_input - mean) / torch.sqrt(std)
test_input = test_input.permute(0,3,2,1)

model = EfficientNet.from_pretrained('efficientnet-b0', image_size=None)  # Model using Conv2dDynamicSamePadding
model.eval()

model_wrong = EfficientNet.from_pretrained('efficientnet-b0') # Model using Conv2dStaticSamePadding
model_wrong.eval()

print(model(test_input).sum())
print(model_wrong(test_input).sum())

Thank you so much for spotting this! Merging.


Bootstrap with PSK fails with Anjay Demo Client

During our interoperability tests, we figured out that in PSK mode we could not establish a bootstrap between the Leshan Bootstrap Server and Anjay.  The bug seems to be related to Bootstrap ID lookup in Leshan.
This bug can easily be reproduced using the Leshan Demo Bootstrap server:

Bring up a Leshan Bootstrap Demo Server, e.g. using the following command
java -jar leshan-bsserver-demo-1.0.0-SNAPSHOT-jar-with-dependencies.jar  -wp 9080
Use the Web UI of the Demo Bootstrap Server (in our case at http://localhost:9080) to configure a bootstrap configuration: Endpoint=anjay2, SecurityMode=PSK, ID=foo (hex: 666f6f) and key = 626172 (ascii: bar)
Build Anjay using the default flags. Run the Anjay client against the demo bootstrap server. Please note that Anjay uses hex encoded strings for ID and PSK.
./demo -b -u coaps://localhost:5684 -s psk -e anjay2 -i 666f6f -k 626172
The Bootstrap Server declines the bootstrap process, because the ID "foo" is not found:

Oct 20, 2017 1:03:29 PM org.eclipse.californium.core.network.config.NetworkConfig store
INFO: writing properties to file /home/elias/lwm2m/leshan/leshan-bsserver-demo/target/Californium.properties
Oct 20, 2017 1:03:29 PM org.eclipse.californium.core.CoapServer start
INFO: Starting server
Oct 20, 2017 1:03:29 PM org.eclipse.californium.core.network.CoapEndpoint start
INFO: Starting endpoint at coap://<IP_ADDRESS>:5683
Oct 20, 2017 1:03:29 PM org.eclipse.californium.core.network.CoapEndpoint start
INFO: Started endpoint at coap://<IP_ADDRESS>:5683
Oct 20, 2017 1:03:29 PM org.eclipse.californium.core.network.CoapEndpoint start
INFO: Starting endpoint at coaps://<IP_ADDRESS>:5684
Oct 20, 2017 1:03:29 PM org.eclipse.californium.scandium.DTLSConnector start
INFO: DTLS connector listening on [<IP_ADDRESS>/<IP_ADDRESS>:5684] with MTU [1,280] using (inbound) datagram buffer size [16,474 bytes]
Oct 20, 2017 1:03:29 PM org.eclipse.californium.core.network.CoapEndpoint start
INFO: Started endpoint at coaps://<IP_ADDRESS>:5684
2017-10-20 13:03:29,137 INFO LeshanBootstrapServer - Bootstrap server started at coap://<IP_ADDRESS>/<IP_ADDRESS>:5683 coaps://<IP_ADDRESS>/<IP_ADDRESS>:5684
2017-10-20 13:03:29,286 INFO LeshanBootstrapServerDemo - Web server started at http://<IP_ADDRESS>:9080/.
Oct 20, 2017 1:04:06 PM org.eclipse.californium.scandium.DTLSConnector terminateOngoingHandshake
INFO: Aborting handshake with peer [/<IP_ADDRESS>:33369]: Cannot authenticate client, identity [foo] is unknown
Oct 20, 2017 1:04:07 PM org.eclipse.californium.scandium.DTLSConnector terminateOngoingHandshake
[...]

Of course, we tried to configure the demo bootstrap server with hexencoded IDs instead:
Endpoint=anjay2, SecurityMode=PSK, ID=666f6f) and key = 626172 (ascii: bar). The result is the same: The bootstrap server denies the DTLS Connection, because it doesn't find the ID "foo".

There is no way configure a secure connection to bootstrap server with the current UI.
See #374 ans tell us if it's help.

@eliasweingaertner After you start a BS demo server, it will create a data folder, you can add you own data in data/bootstrap.json, then it can support PSK.
For example:
"0": {
"uri": "coap://localhost:5683",
"bootstrapServer": true,
"securityMode": "PSK",
"publicKeyOrId": [
101,
112,
48,
48,
48,
49
],
"serverPublicKey": [],
"secretKey": [
18,
52,
86
]

I close this one.
Feel free to reopen it if needed.


server/config: keep compatible using option

What is changed and how it works?
Close #11861.
What's Changed:
Using Option for heavy_load_wait_duration to keep compatible with
versions prior to v5.3.
Check List
Tests

Manual test
Deploy a cluster using this PR, stop TiKV and replace it with v5.2.0, start TiKV.

Release note
None

/merge

/rebuild

/rebuild

/merge


Support SSO authentication in a non-default browser

From Marco on the Common Fate Community Slack:
I just discovered this software and I’m experimenting with it. I’m having some issues with the browser flow: my default browser is Chrome, but I’d like to use Firefox for the SSO Authentication flow; even if I’ve configured everything correctly (at least I think I do), when I run assume -c myprofile  the login flow always opens with Chrome.
.granted/config:
DefaultBrowser = "FIREFOX"
CustomBrowserPath = "/Applications/Firefox.app/Contents/MacOS/firefox"

.aws/config (redacted):
[profile myprofile]
sso_start_url=https://foo.bar/
sso_region=eu-west-1
sso_account_id=123456
sso_role_name=myRole
region=eu-west-1
output=json

Currently the SSO prompt always opens in the default browser, even if Firefox is used for AWS console access.
For some users (like myself) this is preferred, however other users like Marco would prefer to use Firefox for both SSO authentication and console access.
We should allow users to set an SSOBrowserPath in Granted's config file, and open this rather than the default browser if it is set.
DefaultBrowser = "FIREFOX"
CustomBrowserPath = "/Applications/Firefox.app/Contents/MacOS/firefox"
SSOBrowserPath = "/Applications/Firefox.app/Contents/MacOS/firefox"

This was fixed in #169


merge from arlac77/template-arlac77-github,arlac77/template-esm-only

package.json

chore(deps): add ^7.3.1 remove ^7.3.0 (devDependencies.c8)

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


svn2git process Error

Hi Team,
I am following the svn2git process but I got this below error.
" undefined local variable or method `stdin’ for #Svn2Git::Migration:0x0000563404427ac8 (NameError)
Did you mean? String "
Please provide any solution for this error.
Thanks,
Venkatesh

Someone found solution to this error?

Fixed in #328 by getting rid of managing stdin.

Had the tool running fine in WSL2 for nearly a day, until I had to ctrl+C out of the password "dialog" since my keyboard spammed letters. From that point, I was prompted for my password inline and always got the above error...
@skull-squadron I manually applied your patch to /var/lib/gems/3.0.0/gems/svn2git-2.4.0/lib/svn2git/migration.rb and it works - thanks so much!
From what I can tell, this seems to be the third and most recent fork of svn2git, is there any newer one under maintenance?


cctmp.json: The term 'cctmp.json' is not recognized as a name of a cmdlet

I read from Readme, support use ;cctmp.json follow -logger:F:\code\tools\MsBuildCompileCommandsJson\bin\Release\netstandard2.0\CompileCommandsJson.dll;cctmp.json to change export json file name, but I got below error:
cctmp.json: The term 'cctmp.json' is not recognized as a name of a cmdlet, function, script file, or executable program.
Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

So, could you please tell me what's wrong with my command?
 & "${env:ProgramFiles(x86)}\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\MSBuild.exe" -logger:F:\code\tools\MsBuildCompileCommandsJson\bin\Release\netstandard2.0\CompileCommandsJson.dll;cctmp.json ./YBlaze.sln /t:Rebuild

You'll need to escape the ; character for PowerShell so it is passed to msbuild and not interpreted as a command separator.

Got it, thanks!


Should we simply allow duplicate cases?

The main reason why we disallow duplicate cases and have a rule that says no two cases may operate on the same end of the same channel is that otherwise Select couldn't detect where a new iteration of the loop starts.
For example, the following code doesn't work because Select will assume that there is only one case in the loop and then go off the rails:
let mut sel = Select::new();
loop {
    if let Ok(_) = sel.recv(&rx) { println!("First!"); break; }
    if let Ok(_) = sel.recv(&rx) { println!("First!"); break; }
    if let Ok(_) = sel.recv(&rx2) { println!("Second!"); break; }
}

However, if we require that each iteration of the loop has to start with sel.step(), the problem goes away and Select can understand the same arrangement just fine:
let mut sel = Select::new();
loop {
    sel.step();
    if let Ok(_) = sel.recv(&rx) { println!("First!"); break; }
    if let Ok(_) = sel.recv(&rx) { println!("First!"); break; }
    if let Ok(_) = sel.recv(&rx2) { println!("Second!"); break; }
}

Requiring sel.step() at the beginning of the loop is surely a small unergonomic bump, but at the same time one of the subtler rules around selection simply goes away. Perhaps this is a net win?
cc @TimNN

Particularly with the macro available, this sounds to me like a net win.


Fix Error with nested schema and update-pushArray #827

The commit fix the issue #827:
When you have defined an 'update-pushArray' scope using dot notation:
{{ #autoForm scope="items.0.item" }}

The adjustSchema method behaves improperly because is unable to match the searchString defined as:
searchString = scope.+'.$.';
With SimpleSchema keys definition with the form of "items.$.item".
_.each(ss.schema(), function (val, key) {
      if (key.indexOf(searchString) === 0) {
        newSchemaDef[key.slice(searchString.length)] = val;
      }
    });

The fix: Replaces indexes on scope by '$' during the adjustSchema:
    var searchString = scope.replace(/[0-9]/g, "$") +'.$.';

Thanks for the PR. Fixed here: https://github.com/aldeed/meteor-autoform/commit/8544c659ea5235bbbc9f737e170d405c11e23cac
(FYI for the future, please submit PRs to devel branch.)


Use natural program names in browser tests

Description
Currently we use hyphenated program names in browser tests. These names used as both admin name and public name. Admin name should be hyphenated, but public name supposed to be human-readable space-separated string. This PR updates all test names to be human readable. addProgram function automatically slugifies to be used as admin name. That way tests can still pass single value which is automatically used in two different fields.
As side effect it exposed two other places in UI where we used admin names instead of public names: translation page and status page. I updated corresponding views in this PR as well.
Checklist
General

[ ] Added the correct label: < feature | bug | dependencies | infrastructure | ignore-for-release >
[ ] Created tests which fail without the change (if possible)
[ ] Extended the README / documentation, if necessary

User visible changes

[ ] Wrote browser tests using the validateAccessibility method
[ ] Manually tested at 200% size
[ ] Manually evaluated tab order

New Features

[ ] Add new FeatureFlag env vars to server/conf/application.conf
[ ] Conditioned new functionality on a FeatureFlag
[ ] Wrote browser tests with the feature flag off and on, etc.

Issue(s) this completes
Fixes #<issue_number>; Fixes #<issue_number>...

Codecov Report

Merging #3760 (e5fa389) into main (1dd7888) will decrease coverage by 0.00%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##               main    #3760      +/-   ##
============================================
- Coverage     80.54%   80.54%   -0.01%
- Complexity     2440     2441       +1
============================================
  Files           296      296
  Lines          9655     9653       -2
  Branches        660      660
============================================
- Hits           7777     7775       -2
  Misses         1624     1624
  Partials        254      254

Impacted Files
Coverage Δ

server/app/services/program/predicate/OrNode.java
100.00% <ø> (ø)

server/app/services/applicant/ApplicantData.java
96.36% <100.00%> (-0.13%)
:arrow_down:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Hyperlink support

Hi!
Thank you for this great library!
It's better than https://github.com/SheetJS/js-xlsx because it has styles and it easier to use. And it's pretty clear inside.
Are you planning to add Hyperlink support?
I can't find similar library which can add hyperlink to cell. It will be really useful.

Sure. I just got this working for you. I need a bit more time to get the code cleaned up and tested.

it's good news! Thank you very much!

All set. Just released v1.1.0 with hyperlink support. See the docs here:
https://github.com/dtjohnson/xlsx-populate#hyperlinks

Thanks a lot! You really helped me with my work task!


[API] Get the list of the experiments

Feature Request
/experiments/all: Get the list of the experiments
See here for details

Is the experiment_type the same as kind? If so, maybe it is better to rename this param to kind to be more unified among APIs.

@yeya24 I think yes, it can be changed to "kind".


Automated cherry pick of #1026: fix: misc 3level priviliges bugfixes

Cherry pick of #1026 on release/2.10.0.
#1026: fix: misc 3level priviliges bugfixes

Codecov Report

:exclamation: No coverage uploaded for pull request base (release/2.10.0@155e0d7). Click here to learn what that means.
The diff coverage is 0%.

@@               Coverage Diff                @@
##             release/2.10.0   #1027   +/-   ##
================================================
  Coverage                  ?    7.9%
================================================
  Files                     ?     356
  Lines                     ?   56274
  Branches                  ?       0
================================================
  Hits                      ?    4450
  Misses                    ?   51429
  Partials                  ?     395

Flag
Coverage Δ

#aFlag
7.9% <0%> (?)

Impacted Files
Coverage Δ

pkg/cloudcommon/db/virtualresource.go
0% <ø> (ø)

pkg/cloudcommon/db/domain.go
0% <ø> (ø)

pkg/keystone/tokens/handlers.go
0% <0%> (ø)

pkg/cloudcommon/policy/policy.go
2.01% <0%> (ø)

pkg/compute/models/keypairs.go
6.81% <0%> (ø)

pkg/cloudcommon/db/opslog.go
2.06% <0%> (ø)

pkg/cloudcommon/db/project.go
0% <0%> (ø)

pkg/cloudcommon/db/sharablevirtual.go
0% <0%> (ø)

pkg/cloudcommon/db/db_dispatcher.go
0% <0%> (ø)

pkg/util/netutils2/http.go
0% <0%> (ø)

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 155e0d7...cf52f43. Read the comment docs.


reloading model generated with features failed

train model with feature on master.
reloading the model generates:
/home/shared/lib/torch/latest/bin/luajit: ./onmt/modules/Generator.lua:57: assertion failed!

cannot reproduce with the following sequence:
th preprocess.lua -train_src data/src-train-case.txt -train_tgt data/tgt-train-case.txt -valid_src data/src-val-case.txt -valid_tgt data/tgt-val-case.txt -save_data data/demo-case-master -tgt_vocab_size 1000 -src_vocab_size 1000
th train.lua -data data/demo-case-train.t7 -save_model data/demo-case -end_epoch 1
th train.lua -data data/demo-case-train.t7 -save_model data/demo-case -end_epoch 2 -continue -train_from data/demo-case_epoch1_105.15.t7

the issue might have been coming from somewhere else

Reproduced with older models with features.


Update the Query Language High-Level API to Allow for Filtering with non-DataFrame Data

Currently, the filter field (Python dict) for a query node in the high-level query language API must be keyed on a column of the pandas.DataFrame stored within the GraphFrame. In the future, these filters should be allowed to be keyed on other node data not stored in the DataFrame, like the node's _depth and _hatchet_id fields.

I should mention that this behavior can be achieved with the low-level API already by using the name field of the DataFrame row passed into the filter function. For example, to get all nodes with a depth less than 5, you could use the following filter:
def match_depth(row):
    if row.name._depth < 5:
        return True
    return False

from hatchet import QueryMatcher

query = QueryMatcher().match("*", match_depth)
newgf = gf.filter(query, squash=True)


Include deep linkage as a principle.

Hi there! I think this is an awesome idea, and I'll definitely be sharing this around. One thing that for me is very important when building apps is the ability to share a URL - either with myself or with others - easily. By leveraging this built in feature of the web, it makes it much easier to share, bookmark, and be a good web citizen.
Organizationally I don't know if this makes sense in the Web applications should work everywhere section, but just wanted to start a conversation if you're open to it.
Thanks for making this! It's much appreciated.
Dean

Oh, I really like that @deanmarano. It reminds me of a point from this talk by Matt Haughey from a few years ago, suggesting to use "Permanent, human-readable clean URLs."

In fact, what do you think of using that language in addition to the deep links?

That's an awesome resource! After reading, I've changed the wording around a bit to include human language as well as permanence (which was something I didn't originally think of, but is equally as important).

:boom: Glad you liked that talk! Merging and will push to production. Thanks for contributing @deanmarano! I'll be adding a humans.txt file shortly with a list of contributors, reviewers, etc which will also be referenced in book. Are you ok with being included?

Yup! Thanks so much.


decide what requirements we have for projects/project leads

Anything immediately come to mind here? Are we thinking simple stuff like "be there on the day", or something more involved?

Duh @lorrainechu3n. I should learn to read. I can see your requirement that it's about OA / OD / OE. That makes sense, anything else? If not, we can probably have the header be this.

I'm thinking of linking out to a longer list, but wanted to see if you had
any other ideas - the copy is still a work in progress !!
On Sun, Oct 15, 2017 at 11:07 AM Joseph McArthur<EMAIL_ADDRESS>wrote:

Duh @lorrainechu3n https://github.com/lorrainechu3n. I should learn to
read. I can see your requirement that it's about OA / OD / OE. That makes
sense, anything else? If not, we can probably have the header be this.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/sparcopen/doathon-dev/issues/13#issuecomment-336717816,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJim7jyuB9ZTeetl7iHIxG7u0yTLS_ycks5ssh_HgaJpZM4P3aXc
.

I think an extra shout out for the CoC and mirroring Mozilla's

be a welcoming, enthusiastic, and patient project leader

is worth putting here so have done that.

I think this is all we can really ask from people at this point. Since it's a monday I think it's odd to say "be available".
Going to close for now, don't hesitate to re-open if you disagree!


fix(imports-first): solve problems with directives

We had two problems with respect to directives:
'use strict';

var x = require('x');

One was a logic error: we would walk up looking at tokens and checking them with isRequireStatement(); on reaching the directive the conditional here was broken, so we'd end up trying to destructure init from node.declarations, which was undefined.
So, we fix that bug, and doing that reveals some false positive lints because now they complain about imports not being before directives. This requires us to add some logic to allow directives at the top of the file without triggering the "imports-first" rule. Bogus "directives" (ie. a "use strict" not actually at the top of the file) are handled correctly; that is, imports after those do trigger an error, as shown in the tests.

Tested this in liferay-js-themes-toolkit and it's good, so going to merge.


Disable react/self-closing-comp

The current exclusion config for react seems to turn off a handful of jsx related rules.
How do you decide which rules to turn off?
Is the react/self-closing-comp rule a style related rule, should it be part of prettier exclusions?
Prettier seems to automatically correct this when saving, but while working on the file in the editor, i get 2 linting errors, one from prettier and another from airbnb config.
Please help me understand whether or not this is something that should be turned off by eslint-config-prettier?
(I am still trying to understand what to expect from prettier and eslint-config-prettier)

Good point, we should add this one.

It seems like a small change, would you accept a PR for it ?

Released in v4.1.0.


Angular 2 SPA Docker: Can't access site

Hi Guys
Hope you are well!
I've noticed strange behaviour regarding Docker containers and Angular2Spa where I can't access the site using the published IP port as usual. Opening the site on the published port, does not trigger activity on the Docker container. I did not see any obvious errors upon building the Docker image.

To ensure it is not something I changed on my project, I've created a freshly generated Angular2Spa (2.4.5) using generator-aspnetcore-spa 0.8.3 and generated a clean unmodified Docker image for Angular2Spa.
The test docker image shown above is available from the Docker hub-> https://hub.docker.com/r/lightfleet/jssdocker/
Please let me know if you need more detail or if I can be of any assistance.
Thanks!

Hi there,
I just had a similar issue (albeit with the Aurelia template). I solved it by adding an env variable:
ASPNETCORE_URLS=http://+:5000
Could you give that a try?

Your suggestion saved our docker deployments, thank you @pysco68!
I can confirm that this worked for Angular 2. I've added a new pull request for the fix https://github.com/aspnet/JavaScriptServices/pull/687.

 Glad I could help.
Still debugging another issue in the same context atm ^^"

Thanks for reporting this and submitting the PR.
As discussed in #687, we're removing the Dockerfile to be more consistent with other ASP.NET templates. Developers using Docker can add their own Dockerfile with their own config. As such, this is no longer applicable so I'll close it.


Python 2.7 support (super() argument 1 must be type, not classobj)

Currently if installation is attempted on Python 2.7, the following error is given (this should be improved):
File "~\uamqp\setup.py", line 92, in __init__
    super(UAMQPExtension, self).__init__(name, sources=[ ])
TypeError: super() argument 1 must be type, not classobj

Made some good progress here.
Here are some test builds for anyone wish to give it a try - I would appreciate any feedback and bug reports.
Haven't managed to get a Windows build running yet, but if anyone is keen to try the code is here:
https://github.com/annatisch/azure-uamqp-python/tree/py27
uamqp-1.1.0a1-cp27-cp27.zip

Phew - finally got windows builds working (FWIW - the only way I was able to get this running was to install an old Professional verison of Visual Studio 2008).
Test builds attached.
uamqp-1.1.0a1-cp27-cp27m-win.zip
FYI @digimaun

I have some interest in having this library (and azure-eventhub) python 2.7 compatible. So I decided to test these initial builds.
I haven't gone too deep yet, but 32bit windows build installed, and I could import uamqp in the python interpreter. The 64bit linux build installed fine too, but if I try to import uamqp in the 64bit linux interpreter, I get the following error message:
$ python -c 'import uamqp'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/greg/venv27/local/lib/python2.7/site-packages/uamqp/__init__.py", line 10, in <module>
    from uamqp import c_uamqp  # pylint: disable=import-self
ImportError: /home/greg/venv27/local/lib/python2.7/site-packages/uamqp/c_uamqp.so: undefined symbol: PyUnicodeUCS2_DecodeUTF8

I've been able to reproduce this on both Ubuntu 18.04 and WSL (upgraded to 16.04). Both are 64bit environments. I haven't gone so far as to test 64bit python on Windows or 32bit python on linux.
Steps to reproduce:

Create virtualenv

$ virtualenv venv27 --python /usr/bin/python2.7

Install uamqp from wheel

$ ./venv27/bin/python -m pip install wheels/uamqp-1.1.0a1-cp27-cp27mu-manylinux1_x86_64.whl

Import uamqp in python interpreter

$ ./venv27/bin/python -c 'import uamqp'

Thank you @gdooper for testing out these builds! :)
I will try to repro today

Hi @gdooper - I was able to repro this on the build I attached above.
However went I built a fresh wheel from my latest code it seems to work.
I intend to publish a release candidate tomorrow

It seems like the issue was that the cp27-cp27mu wheel was built with leftover intermediate 'build' files from the cp27-cp27m build. Deleting the 'build' folder between builds seems to resolve this issue.
https://github.com/annatisch/azure-uamqp-python/pull/2 should help.

oooooo! This is a great observation - thank you @gdooper! :)
I will amend my build script.

I think there are some manylinux wheels that aren't usable still. It seems like all of the 32bit wheels fail when you try to import uamqp after installing the wheel. Also the 64bit py34 manylinux wheel also fails when you try to import uamqp.
How am I testing?

Generate the docker images

docker build -t local/manylinux_crypto32 utils/ManyLinux_32bit/.
docker build -t local/manylinux_crypto64 utils/ManyLinux_64bit/.

Build the wheels

docker run --rm -v $PWD:/data local/manylinux_crypto32 /data/build_many_linux.sh
docker run --rm -v $PWD:/data local/manylinux_crypto64 /data/build_many_linux.sh

Save this script somewhere (e.g. test_many_linux.sh):

#!/bin/bash

# Test the wheels
for PYBIN in /opt/python/*/bin; do
        $PYBIN/pip install "certifi>=2017.4.17" "six~=1.0" "enum34>=1.0.4";
        $PYBIN/pip install uamqp --no-index -f /data/wheelhouse;
        $PYBIN/python -c 'import uamqp;print("*****Importing uamqp from wheel successful*****")';
done

Run this script against the local/manylinux_crypto32 and local/manylinux_crypto64 docker images:

docker run --rm -v $PWD:/data local/manylinux_crypto32 /data/test_many_linux.sh
docker run --rm -v $PWD:/data local/manylinux_crypto64 /data/test_many_linux.sh

This isn't the best test plan, but it shows that some of the wheels are failing. You could probably integrate the above script into the build_many_linux.sh if you wanted to.
I've also tested some of the 32bit wheels against various versions of python on a 32bit Ubuntu 16.04 vagrant VM, and can confirm I get the same problem in that environment.

It's probably also worth testing the wheels on other platforms as well (eg. arm and osx)

Thanks @gdooper!
I'm running your test script now.
I already have a test VM I use to run on the OSX wheels - so will give that go too.
Unfortunately I haven't been able to properly support wheels for ARM yet.... can't quite get the build working end-to-end....

Hi @gdooper - I just did some tests and it seems to be related to Cython.
I updated the Cython build version 0.28.5, and I added the test script into the build_many_linux.sh script and now it all seems to be running cleanly for both 64 and 32bit Linux :)

The first Python 2.7 pre-release is now published!
You can install with:
pip install uamqp --pre

All feedback welcome!! :)

Python 2.7 support released in 1.1.0 :)


Redirect tool PRs to new bpftrace-tool-shed

As discussed in office hours, there will be a new repository to hold community contributed bpftrace tools. Until it's created, this ticket holds some state we need to remember.

For https://github.com/iovisor/bpftrace/pull/2593, @llaoj has asked to be notified when the new repo is created

https://github.com/iovisor/bpftrace/pull/2437 is a good candidate

https://github.com/iovisor/bpftrace/pull/1903 is a good candidate

https://github.com/iovisor/bpftrace/pull/1903 is good as well

another candidate: #2898

I guess we might be waiting on our new github home to do this? (cc @ajor)

waiting for the new repo

New repo has been created: https://github.com/bpftrace/user-tools
Please send PRs!
I'll bump the existing PRs as well


Ask Yogasutra: agraph error

Error in agraph graph display. streamlit-agraph/issues/61
While running 'examples/karate_club_graph.py' as is, got following error:
StreamlitAPIException: To use Custom Components in Streamlit, you need to install PyArrow. To do so locally:

pip install pyarrow

And if you're using Streamlit Cloud, add "pyarrow" to your requirements.txt.

Traceback:
File "karate_club_graph.py", line 30, in <module>
    return_value = agraph(nodes=nodes,
File "...envs\genai\lib\site-packages\streamlit_agraph\__init__.py", line 38, in agraph
    component_value = _agraph(data=data_json, config=config_json)

I do have pyarrow installed, but still ..

I uninstalled the existing with pip uninstall streamlit, then reinstalled it with conda install -c conda-forge streamlit, this seems to work


Limit numbers in ordered list markers

There currently is no limit to how large the numbers in ordered lists can be.
The reference implementation runs on JavaScript which means it just uses
floating-point numbers:
9999999999999999999999999.

It might be useful to set a reasonable max limit so implementations that use float and int
can easily match. Preferably the limit is on the number of digits so that no
number parsing is required when identifying list items.
Commonmark has a limit of 9 decimal digits, which can fit in both a 32-bit unsigned and a double precision float.
However, we also have alphabetic and roman numerals. Roman numerals can be very
long and still be small but alphabetic numerals grow fast. The largest number
of alphabetic digits we can use for 32-bit unsigned integers is 6 (zzzzzz <
(1<<32) < zzzzzzz). 6 would be pretty limiting for roman numerals so they might
need separate limits even though they are ambiguous initially.

Pandoc last time I looked didn't allow alphabetic markers after z, so no aa,
ab, ac, .... I've never actually run into it but I think it should be possible
in principle. The source code for the Perl module Number::Latin has a
conversion algorithm.
The highest number which can be expressed as a roman numeral with ASCII letters
is 4999. After that you get overbars like V̅ 5000, X̅ 10000 or cute looking things
like  CCI 5000, CCIƆƆ 10000. I dont know how many letters numerals for up to
4999 can have, but you should hardly run into a problem on that account.
I wonder how high list markers would reasonably get in the wild. I'd
imagine both HTML an TeX (for example) have some limit at least in practice,
but one would think lists so long as to run into technical problems are
exceedingly rare, so I can't imagine it would be a problem for the actual
limit to be implementation dependent.

@bpj do you happen to know what the longest (character-length) roman numeral is?

@jgm I was mistaken that the highest number expressible in ASCII letters be 4999. If you use the subtractive model for 4, 9, 14, 19… which most modern algorithms do the limit is 3999 which is MMMCMXCIX, although the Romans themselves would have written 4000 MMMM and 4999 MMMMDCCCCLXXXXVIIII.
If I am not mistaken the longest possible with ASCII letters with the modern subtractive model would be 3888 which is MMMDCCCLXXXVIII.
From 4000/5000 and up once you start using inverted C’s there isn’t really any limit since at least in theory you just keep adding (inverted) C’s for each power ad infinitum. The highest number for which Unicode has a glyph is 100,000 which is ↈ or CCCIƆƆƆ and that may vell be a limit in practice. With the overline/vinculum, which multiplies the number it is placed over with 1,000 the highest single-letter number would be M̅ 1,000,000 although nothing stops you from writing say M̅M̅ for 2,000,000. The Romans would not likely ever have dealt with numbers that high, and for computing they would have used an abacus anyway, or possibly Milesian (Greek) numerals.
AFAIK the only ones who (still) use high roman numerals routinely are the BBC who give the year in roman numerals in the aftertexts to their programmes, where for example 1988 would have been MCMLXXXVIII which should be the longest they ever used since 1998 is MCMXCVIII which is two characters shorter.

Pandoc last time I looked didn't allow alphabetic markers after z, so no aa,
ab, ac, ....

Djot.js also seems to only parse single letter markers.

If I am not mistaken the longest possible with ASCII letters with the modern subtractive model would be 3888 which is MMMDCCCLXXXVIII.

So reasonable limits could be

9 for decimal,
1 for alphabetic and
15 for roman numerals?


[Release] Update Package.swift with 10.15.0 RC0 Firestore binary artifact URL

update URL to point to 10.15.0 resource
update checksum

#no-changelog

CI is now green. @andrewheard, this PR is gtg for a review.


Add to homebrew

"Itd be cool"™ if dug was distributable via homebrew. I think it owuld be best if it supported both linux and osx, both of which we are currently building in the ci/cd.
I've never packaged anything with homebrew, heres some documentation:
https://docs.brew.sh/Adding-Software-to-Homebrew
Annoyingly I havent found an example of a dotnet app being distributed via homebrew, Im sure its possible though.

+1 for this.
Some brew formulas can have pre compiled software (binary releases)

Adding to Linux Homebrew here: https://github.com/Homebrew/linuxbrew-core/pull/23837
If that goes well I'll borrow a macbook and try to get it onto the mac homebrew
I have no idea how homebrew works, but this Formula appears to work locally so hopefully its all good :sweat_smile:

@MattInternet let me know if I can help with testing macOs formula

@dimitre I tried adding dug to normal (mac) homebrew here: https://github.com/Homebrew/homebrew-core/pull/81465
But they dont seem to like the license. I'll watch the linuxbrew one but I wouldnt be surprised if it fails for the same reason. In the link the moderator posted it mentioned them preferring non-binaries. I could try that but it might be a while until I want to battle Ruby to do it, if you'd like to give it a swing that'd be awesome. That still doesnt address the license issue though :disappointed:

Gonna close this since it looks like Homebrew wont accept dug's license


Sync Bug - Pulling data issue possible network issue

Receiving an error when trying to sync?
There was a problem pulling data from Todoist. Is your internet connection working?
Anyone else seeing this, I have:

confirmed that my api key is correct
have the start and end in the daily note
turn off my vpn and attempt again (which is what is in the screenshot)

Hi @erauner12,
Thanks for the bug report.
Can you please share more information about how this bug occurred?
Your operation system, plugin version and information from the console log.
Also, can you check if this issue persists if you disable "Subtask rendering in the plugin settings"?

strange, I just tried again today. And I was not able to re-create?

@erauner12 Possibly it can be an issue on the Todoist side. Also, I highly recommend updating the plugin to the latest version. Because in the new version, we migrated to the newest API. The old one is deprecated and that can be the reason why it is not working correctly.
Also, I do plan to update the notification message, to make it more informative. Currently, it displays "Check your internet connection" for all possible scenarios, even when the issue is not with your connection, but with Todoist itself.

Same problem for me since 1 hour, installed this morning (Italy) and it was working, now I have the problem, say one time every two tries.

Hi @erauner12, Thanks for the bug report. Can you please share more information about how this bug occurred? Your operation system, plugin version and information from the console log. Also, can you check if this issue persists if you disable "Subtask rendering in the plugin settings"?

Hi @Ledaryy ,  I made some testing, and I found that disabling the "Render subtasks" options solves the problem. I switched it off and on many times and I found that: when it's off, fetching gets always completed, when it's on fetching most of times fails.

Hey there!
Sorry for a bit of delay. I have done a couple of tests and am not sure if that is possible to solve on our side. The issue happens when we fetch the list of all finished tasks and then try to fetch every single task to extract more information. And when we try to fetch a single task from that list, it says that there is no task with this ID. Looks like nonsense to me.
At the moment I will create a handler that will just not render these "failed" tasks but will render all the rest. Also, the information about non-rendered will be saved to the console, just in case.


Few Typos in read.me

There are few typos that I caught in the read.me file. Can I go ahead and correct them and make it much more enjoyable to read?

You're always welcome to make a pull request with changes you want to propose.

Closing since there has been no additional information provided to make changes. Feel free to PR them.


upload on conda-forge

@ambv if you agree I would like to upload black on the conda-forge repository. Is this ok for you? Would you like to be added as a feedstock maintainer together with me?

Yes on both counts. Thanks for helping spread Black :-)

Huge +1 for conda-forge.

almost done: https://github.com/conda-forge/staged-recipes/pull/5778

done. @ambv I think you need to accept your invitation to join the conda forge team.


randomize_seed fails to generate seed if seed is -1

Confirm

This is fixed in 1.20.0 for Forge.
I'm not sure if it was back-ported for previous versions.


odo delete -o json is returning nothing / blank (log.Errorf issues)

[kind/bug]

How did you run odo exactly?
odo delete -o json
Actual behavior
Blank output
Expected behavior
Having an output such as this:
ithub.com/openshift/odo  remove-fmt-error ✔                                                                                0m
▶ ./odo delete --context ~/nodejs-ex -o json
{"kind":"Error","apiVersion":"odo.openshift.io/v1alpha1","metadata":{"creationTimestamp":null},"message":"Component nodejs-nodejs-ex-xbgn does not exist on the cluster"}

Any logs, error output, etc?
The main issue is that we are logging errors, but either not returning or simply outputting and continuing with the code, for example: https://github.com/openshift/odo/blob/master/pkg/odo/cli/component/delete.go#L63
We need to either return or use util.LogErrorAndExit

/unassign @cdrage
/area json-output

Currently when I execute the same command
$ odo delete --context tttt/ -o json
 ✗  Machine readable output is not yet implemented for this command

I get this as an output.
Which would mean this is not a bug but a feature @cdrage ?

seems like this is a duplicate of https://github.com/openshift/odo/issues/2056.
Closing this one as its newer


[faq] Added 'advanced osm editing' section

Added an 'advanced osm editing' section to the faq, so this page can be linked to in https://github.com/organicmaps/organicmaps/pull/7748.
See also  #203

I updated the faq page:

I added mobile editor, but placed ID first as editing is easier on a bigger screen and with mouse and keyboard.
I left everyting in one faq page as scattering the text would make it hard to read

Updated the faq page and included your suggestions.

@map-per FYI for the future PRs: with a write access to the repo, if you push a branch here, then its preview can be available for anyone.

We can proceed with the PR to unblock other tasks, although the text already looks too complicated for a non-geeky, non-OSM user. It would be great to stick to the most important, precise, succinct info for new users on the initial page, and move any details for those who are interested to a different page. Otherwise, there is a risk that your grandma just closes the long web page with a lot of text without reading it, and won't proceed with any contributions.
You can test it with OM + a link to this page combo with any (non-geeky) person who didn't know about OM and OSM before.

I think it's OK that this page explains more difficult content, as it is about advanced editing.
For simple editing with OM we should create a separate faq page.

There is an important UX flow nuance: all OM users (including complete newbies) will see the related message when they try to add something on the map and won't find the interested object.
That means that the landing page should be easy to digest for all OM users. Those who is interested in more advanced details, may click to read them.

We can proceed with the PR to unblock other tasks

Then let's merge this and do further improvements in the next iterations

We could move community, wiki and data model to a dedicated OpenStreetMap page. And as soon as we have an Organic Maps editing page (for grannies) we could move the OSM Notes section there.
I think, for the FAQ, the Organic Maps editing page is the highest priority now.


Implement configuration for acceptance test node to retain p2p port number

Description
There's some use-cases (#528) where it is required that an acceptance testing node needs to retain its p2p port across restarts. In this case enode URLs are being compared for permissioning checks.
Acceptance Criteria
Node p2p port persists across restart.

Note: Preserving the p2p port will lead to failures because of port conflicts.  You'd have to use something like docker to provide isolation between tests.


fix(framework): pin to kernel 6.3.12-200

@castrojo should rename the PR to say 6.3.12, not 6.3.11 ;-) but otherwise G2G

@castrojo should rename the PR to say 6.3.12, not 6.3.11 ;-) but otherwise G2G

Oh, i can do that mysefl. :-) all good

oh yeah, but it fails because of version deps :-1:

Yeah, a full kernel downgrade is more complex than I realized. Maybe someday it'll be this clean.


Extract reporting classes from core into new rendering subproject in core-runtime

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

Pull Request Feedback (Trigger) (Check)

I've triggered the following builds for you. Click here to see all build failures.

Pull Request Feedback (Trigger) (Check)

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

Pull Request Feedback (Trigger) (Check)

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

Pull Request Feedback (Trigger) (Check)

@bot-gradle test and merge


[FEATURE] Support SQL/PPL transport interface

SQL/PPL aims to replace DSL as a more powerful and common query engine. SQL feature needs to be accessible by more features to leverage its power. But currently only REST Interface is provided, which can’t be applied to user case like background jobs(no auth is maintained). SQL Transport interface enables other features running on the same node to access SQL/PPL through transport layer communication, without user auth, and also avoid network hop
This is some foundation work that needs to be done

[ ] #667
[ ] Add SQL Transport Interface, and refactor existing Rest Interface to move handler logic to transport handler

duplicate

duplicate