1

---  # document start
Comments in YAML look like this.
YAML supports single-line comments.
################
SCALAR TYPES
################
Our root object (which continues for the entire document) will be a map,
which is equivalent to a dictionary, hash or object in other languages.
key: value
another_key: Another value goes here.
a_number_value: 100
scientific_notation: 1e+12
hex_notation: 0x123  # evaluates to 291
octal_notation: 0123 # evaluates to 83
The number 1 will be interpreted as a number, not a boolean.
If you want it to be interpreted as a boolean, use true.
boolean: true
null_value: null
another_null_value: ~
key with spaces: value
Yes and No (doesn't matter the case) will be evaluated to boolean
true and false values respectively.
To use the actual value use single or double quotes.
no: no            # evaluates to "no": false
yes: No           # evaluates to "yes": false
not_enclosed: yes # evaluates to "not_enclosed": true
enclosed: "yes"   # evaluates to "enclosed": yes
Notice that strings don't need to be quoted. However, they can be.
however: 'A string, enclosed in quotes.'
'Keys can be quoted too.': "Useful if you want to put a ':' in your key."
single quotes: 'have ''one'' escape pattern'
double quotes: "have many: ", \0, \t, \u263A, \x0d\x0a == \r\n, and more."
UTF-8/16/32 characters need to be encoded
Superscript two: \u00B2
Special characters must be enclosed in single or double quotes
special_characters: "[ John ] & { Jane } - "
Multiple-line strings can be written either as a 'literal block' (using |),
or a 'folded block' (using '>').
Literal block turn every newline within the string into a literal newline (\n).
Folded block removes newlines within the string.
literal_block: |
This entire block of text will be the value of the 'literal_block' key,
with line breaks being preserved.
The literal continues until de-dented, and the leading indentation is
stripped.
  Any lines that are 'more-indented' keep the rest of their indentation -
  these lines will be indented by 4 spaces.

folded_style: >
This entire block of text will be the value of 'folded_style', but this
time, all newlines will be replaced with a single space.
Blank lines, like above, are converted to a newline character.
  'More-indented' lines keep their newlines, too -
  this text will appear over two lines.

|- and >- removes the trailing blank lines (also called literal/block "strip")
literal_strip: |-
This entire block of text will be the value of the 'literal_strip' key,
with trailing blank line being stripped.
block_strip: >-
This entire block of text will be the value of 'block_strip', but this
time, all newlines will be replaced with a single space and
trailing blank line being stripped.
|+ and >+ keeps trailing blank lines (also called literal/block "keep")
literal_keep: |+
This entire block of text will be the value of the 'literal_keep' key,
with trailing blank line being kept.
block_keep: >+
This entire block of text will be the value of 'block_keep', but this
time, all newlines will be replaced with a single space and
trailing blank line being kept.
####################
COLLECTION TYPES
####################
Nesting uses indentation. 2 space indent is preferred (but not required).
a_nested_map:
key: value
another_key: Another Value
another_nested_map:
hello: hello
Maps don't have to have string keys.
0.25: a float key
Keys can also be complex, like multi-line objects
We use ? followed by a space to indicate the start of a complex key.
? |
This is a key
that has multiple lines
: and this is its value
YAML also allows mapping between sequences with the complex key syntax
Some language parsers might complain
An example
? - Manchester United

Real Madrid
: [ 2001-01-01, 2002-02-02 ]

Sequences (equivalent to lists or arrays) look like this
(note that the '-' counts as indentation):
a_sequence:

Item 1
Item 2
0.5  # sequences can contain disparate types.
Item 4
key: value
another_key: another_value

This is a sequence
inside another sequence

Nested sequence indicators
can be collapsed

Since YAML is a superset of JSON, you can also write JSON-style maps and
sequences:
json_map: { "key": "value" }
json_seq: [ 3, 2, 1, "takeoff" ]
and quotes are optional: { key: [ 3, 2, 1, takeoff ] }
#######################
EXTRA YAML FEATURES
#######################
YAML also has a handy feature called 'anchors', which let you easily duplicate
content across your document.
Anchors identified by & character which define the value.
Aliases identified by * character which acts as "see above" command.
Both of these keys will have the same value:
anchored_content: &anchor_name This string will appear as the value of two keys.
other_anchor: *anchor_name
Anchors can be used to duplicate/inherit properties
base: &base
name: Everyone has same name
The expression << is called 'Merge Key Language-Independent Type'. It is used to
indicate that all the keys of one or more specified maps should be inserted
into the current map.
NOTE: If key already exists alias will not be merged
foo:
<<: *base # doesn't merge the anchor
age: 10
name: John
bar:
<<: *base # base anchor will be merged
age: 20
foo name won't be changed and it will be: John. On the other hand, bar's name will be changed to the base one: Everyone has same name
YAML also has tags, which you can use to explicitly declare types.
Syntax: !![typeName] [value]
explicit_boolean: !!bool true
explicit_integer: !!int 42
explicit_float: !!float -42.24
explicit_string: !!str 0.5
explicit_datetime: !!timestamp 2022-11-17 12:34:56.78 +9
explicit_null: !!null null
Some parsers implement language specific tags, like this one for Python's
complex number type.
python_complex_number: !!python/complex 1+2j
We can also use yaml complex keys with language specific tags
? !!python/tuple [ 5, 7 ]
: Fifty Seven
Would be {(5, 7): 'Fifty Seven'} in Python
####################
EXTRA YAML TYPES
####################
Strings and numbers aren't the only scalars that YAML can understand.
ISO-formatted date and datetime literals are also parsed.
datetime_canonical: 2001-12-15T02:59:43.1Z
datetime_space_separated_with_time_zone: 2001-12-14 21:59:43.10 -5
date_implicit: 2002-12-14
date_explicit: !!timestamp 2002-12-14
The !!binary tag indicates that a string is actually a base64-encoded
representation of a binary blob.
gif_file: !!binary |
R0lGODlhDAAMAIQAAP//9/X17unp5WZmZgAAAOfn515eXvPz7Y6OjuDg4J+fn5
OTk6enp56enmlpaWNjY6Ojo4SEhP/++f/++f/++f/++f/++f/++f/++f/++f/+
+f/++f/++f/++f/++f/++SH+Dk1hZGUgd2l0aCBHSU1QACwAAAAADAAMAAAFLC
AgjoEwnuNAFOhpEMTRiggcz4BNJHrv/zCFcLiwMWYNG84BwwEeECcgggoBADs=
YAML also has a set type, which looks like this:
set:
? item1
? item2
? item3
or: { item1, item2, item3 }
Sets are just maps with null values; the above is equivalent to:
set2:
item1: null
item2: null
item3: null
...  # document end

f499a83bcc2835411e0b9ea1699cf763294e2daa


ValueError: Array has no mass

Source of the issue with access to data: https://sourceforge.net/p/spinalcordtoolbox/help/19/
Probably a regression bug caused by recent changes in straightening algo.
Syntax + Error:
sct_label_vertebrae -i 546586_T2w_medula.nii -s 546586_T2w_medula_seg.nii.gz -c t2

--
Spinal Cord Toolbox (master/fc2fc50f2061b1046ec53376fa371da014b5ac46)
Running /Users/julien/code/sct/scripts/sct_label_vertebrae.py -i 546586_T2w_medula.nii -s 546586_T2w_medula_seg.nii.gz -c t2

Create temporary folder (/var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145931.531250-label_vertebrae-T8hIRE)...

Copying input data to tmp folder...

Create label to identify disc...
Creating temporary folder...
Run C2-C3 detector...
C2-C3 detected...
Remove temporary files...
rm -rf /var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145934.104675-fNP60f
WARNING: File /var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145931.531250-label_vertebrae-T8hIRE/labelz.nii.gz already exists. Will overwrite it.

Done! To view results, type:
fsleyes /var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145931.531250-label_vertebrae-T8hIRE/labelz.nii.gz &

Straighten spinal cord...
sct_straighten_spinalcord -i data.nii -s segmentation.nii.gz -r 1 # in /private/var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145931.531250-label_vertebrae-T8hIRE

Resample to 0.5mm isotropic...
sct_resample -i data_straight.nii -mm 0.5x0.5x0.5 -x linear -o data_straightr.nii # in /private/var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145931.531250-label_vertebrae-T8hIRE

Apply straightening to segmentation...
sct_apply_transfo -i segmentation.nii.gz -d data_straightr.nii -w warp_curve2straight.nii.gz -o segmentation_straight.nii.gz -x linear # in /private/var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145931.531250-label_vertebrae-T8hIRE
sct_maths -i segmentation_straight.nii.gz -thr 0.5 -o segmentation_straight.nii.gz # in /private/var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145931.531250-label_vertebrae-T8hIRE

And apply straightening to label...
sct_apply_transfo -i labelz.nii.gz -d data_straightr.nii -w warp_curve2straight.nii.gz -o labelz_straight.nii.gz -x nn # in /private/var/folders/6f/wy6ljmx9453cgth2qwv5l1s80000gn/T/sct-20190219145931.531250-label_vertebrae-T8hIRE

Get z and disc values from straight label...
Traceback (most recent call last):
  File "/Users/julien/code/sct/scripts/sct_label_vertebrae.py", line 897, in <module>
    main()
  File "/Users/julien/code/sct/scripts/sct_label_vertebrae.py", line 303, in main
    init_disc = get_z_and_disc_values_from_label('labelz_straight.nii.gz')
  File "/Users/julien/code/sct/scripts/sct_label_vertebrae.py", line 641, in get_z_and_disc_values_from_label
    x_label, y_label, z_label = center_of_mass(nii.data)
  File "/Users/julien/code/sct/scripts/sct_label_vertebrae.py", line 42, in center_of_mass
    raise ValueError("Array has no mass")
ValueError: Array has no mass
Sentry is attempting to send 1 pending error messages
Waiting up to 10 seconds
Press Ctrl-C to quit
Total processing time: 0 min 55 s

Fixed by #2175


Unique rootns ifaces

ref #400
Hi @steiler
I had a look at #400 and I propose we change it as per this PR.
There are two small issues that I noticed in your PR

we need to account for all kinds which interfaces appear in root netns: bridge, ovs-bridge and host kinds.
we don't need to check for uniqueness of container interfaces, as it has already been checked here

So I cut out the pieces that I don't think are needed here.
Can you check this PR and see if I missed something imoportant?

Looks good to me.
I have just had a check for host-mode in it at the beginning but that is not adding any interfaces.
But ovs-bridge and host kinds seem to me to be right to be checked here.


Installed, but can't execute

Has anyone seen this before? GitLens has stopped working for me, and removing and reinstalling hasn't made any difference. If I turn on verbose logging for GitLens, nothing is logged, it's like it's completely not running in VS Code.
I even tried showing the welcome screen using the command palette in VS Code, and it presented me with the above error command 'gitLens.showWelcomePage' not found.
It used to work on this machine, it was great. Only recently noticed it stopped, I'm not often in VS Code these days so I don't exactly know when it stopped working. I'm stumped.

GitLens Version: 8.1.1
VSCode Version: 1.21.1
OS Version: MacOS 10.13.3

Steps to Reproduce:

Install GitLens

I willing to bet this is an installation issue. Could you try removing GitLens again, completely exit all instances of vscode, start vscode, exit vscode. Then verify that in ~/.vscode/extensions there are no folders that start with eamodio.gitlens-. If there are please remove them. After that you should be able to start vscode and install GitLens again.
Please let me know if this helps.

I'm getting the same issue on Linux Mint 18.3 with GitLens version 8.1.1 and VSCode 1.21.1. I wiped out the extensions directory and even all my local settings, but that didn't resolve the problem. In addition to that error, GitLens isn't showing up on Explorer. There is no option to display it.
I downloaded and installed a copy of 8.0.2, and that works without any problems.

@aghecht Thank you for the additional information! If you open the devtools (Developer: Toggle Developer Tools from the command palette) do you see any errors in the console? If so can you post them here?
Thanks!

@eamodio
I was seeing a 'could not parse package.json' error. I looked at the directory, and this is what I saw:

I'm not sure how those files got zeroed out.

@aghecht are you installing GitLens from the marketplace or from the vsix directly? (for the 8.1.1 version)

@eamodio I installed 8.1.1 from the marketplace. The previous versions were installed directly by extracting the contents of the install file and copying over the 'extension' directory.

Could you try downloading 8.1.1 from GitHub and then when everything is clean, use vscode's built-in support for installing a vsix and see if that works? You can access it via the ... menu in the extensions pane

@eamodio Yup, I had to uninstall it from VS Code, and I noticed the folder was still present in .vscode/extensions/. I manually removed that, opened VS and reinstalled the package and it worked again. Thanks, I should have tried that myself!

@eamodio Downloading 8.1.1 from GitHub and installing the vsix file works.

@aghecht I'm so confused 😕 — there seems to be some bad behavior with extension installation lately. So both vsix work, but installing from the marketplace still doesn't?

@eamodio You and me both. I have been seeing a little bit of weirdness with extension installation over the past week. GitLens is one of my most used plugins, which is why I would notice it first.

Just installed GitLens for the first time on Ubuntu 15.6, Code 1.21.1 (GitLens 8.1.1)
Welcome page and settings are working - nothing else seems to exist. No comments on files under Git, no Git Explorer pane in Explorer view, and only two GitLens commands in command Pallette (Welcome and Settings) (both of which work fine). As I'm new to GitLens I may be missing a step - I'm using git locally with files synced to a local gitlab server.
I've unistalled/exited/cleared .extensions/.gitlens. and installed vsix from GitHub. Nothing seems to help.
Developer console is showing nothing of interest - in fact I'm seeing little evidence of GitLens in the developer tools at all, other than if I change a setting and get the following as expected.
[Embedded Page] SettingsApp.executeCommand: command=command:gitlens.saveSettings?%7B%22changes%22:%7B%22gitExplorer.enabled%22:true%7D,%22scope%22:%22user%22,%22uri%22:%22gitlens://authority/settings%22%7D
Any other info I can gather to try and help?

@rjh21 Can you try https://github.com/eamodio/vscode-gitlens/issues/295#issuecomment-377961163 to see if that helps? And sorry for the long delay :(

@aghecht are you still experience this issue?

I had the same issue with a clean install of 8.2.1 from the marketplace.
I tried:
Restarting, uninstalling, reinstalling restarting. (Wiggling).
Installing the 8.2.1.vsix manually. (Hitting it with a hammer).
Installing 8.2.0.vsix manually. (Hitting it with an old hammer)l
In the end I had to disable automatic plugin updates, remove the folders in .vscode/extensions and then manually install gitlens-8.2.0.vsix from the ... menu in marketplace. Now it starts fine!

I'd like to try this as well, as I'm also having this issue, but I can't find old releases.
@simon-engledew  Where did you donwload the gitlens-8.2.0.vsix file?

@eamodio I'm on Win10 x64. I will have a little debugging session tomorrow. This was happening on my work laptop. I can however confirm, that it's not happening on my personal laptop, which also runs Win10 x64.

I'm on macOS. I installed the vsix file from the Github releases page.
I had a poke around in the extensions folder while the install was broken and all the files appeared to be present and correct.

Also finding this issue, Win10 x64 with VSCode 1.22.2 installing GitLens 8.2.3 from the marketplace.
Tried the steps of uninstalling, deleting the leftover folder in the extensions directory, and reinstalling without any luck. Going to try the vsix method now.

@Novynn Any chance you can re-break this with logging turned on so I can see what the underlying issue is?

Who on this thread had this issue "fixed" by setting the git.path setting? And who is still having issues? I really want to get to the bottom of this.

If you're referring to the log messages in the Developer Tools console, there were only the same messages as I mentioned above, "command gitlens.### not found".
I'm not sure how to enable any more verbose logging than this, could you direct me?

Sure, sorry -- please enable output channel logging by setting "gitlens.outputLevel": "verbose" in your settings.json. This will enable logging to the GitLens channel in the Output pane. Once enabled, please attempt to reproduce the issue and attach the log lines from the GitLens channel.

 With git enabled it appears to find the git path automatically without it having to be set:
Git found: 2.16.2.windows.1 @ C:\Program Files\Git\cmd\git.exe in 70 ms
So my contribution won't be of much help I'm afraid, maybe someone with more sane default settings can help you out.
Thanks for your extension by the way, super handy.

@Novynn Thank you for you help. It seems at least I should add a notification or something that lets you know GitLens won't work with "git.enabled": false

Anyone still experiencing this issue?

I got this issue today.
I set the "gitlens.advanced.git" to my current git bin path and everything is working now.
VSCode 1.22.2
OS: Ubuntu 16.04.4 LTS

So in my case it was because my user settings had: "git.path": "/usr/bin/env git"
I think I had this because at home I use Arch but at work I have to use a Mac.
Whats weird is that this works on the mac, but not on my home machine.
The fix was to just completely remove the git.path settings and then reinstall the extension.

I am seeing something similar.  I have VSC v1.23.0 installed with GitLens 8.2.4 (and previous versions didn't work either).  I am getting the following in the Output terminal:
Git found: 2.7.4 @ /users/mrhicks/bin/git in 6 ms
Starting repository search in 1 folders
Searching for repositories (depth=1) in '/users/mrhicks/projects/xxx/repo' ...
Running(/users/mrhicks/projects/xxx/repo): git rev-parse --show-toplevel
GitLens(v8.2.4) activated in 27 ms
FAILED(/users/mrhicks/projects/xxx/repo): git rev-parse --show-toplevel FAILED in 11 ms
Running(/users/mrhicks/projects/xxx/repo): git rev-parse --show-toplevel
FAILED(/users/mrhicks/projects/xxx/repo): git rev-parse --show-toplevel FAILED in 2 ms
Searching for repositories (depth=1) in '/users/mrhicks/projects/xxx/repo' took 78 ms
Running(/users/mrhicks/.config/Code/User): git rev-parse --show-toplevel
FAILED(/users/mrhicks/.config/Code/User): git rev-parse --show-toplevel FAILED in 3 ms
isTracked('/users/mrhicks/.config/Code/User/settings.json', 'undefined', 'undefined')
Running(): git ls-files /users/mrhicks/.config/Code/User/settings.json
FAILED(): git ls-files /users/mrhicks/.config/Code/User/settings.json FAILED in 2 ms

if I run the git command git rev-parse --show-toplevel I do get an output that shows "/users/mrhicks/projects/xxx/repo".
in VSC, if I select the Source Control icon I do see the branch that I checkout, so it seems some level of git is working within VSC.

Any updates on this problem. I tried every method above but no luck. I removed extensions folder, disable auto update, install from vsix version, 8.1.1, 8.2.4 but none working, only 2 commands appear.

Thank god, I found the problem. I turn on the "gitlens.outputLevel": "verbose", then check the output (take me sometimes to find the log), and there are a folder inside the workspace is not a git repository and it failed checking it. I removed that folder from workspace and gitlens works as expected.
@eamodio I think you could improve this behavior, when there are directory which is not a git folder, you can ignore it and continue indexing other. Could it be possible?

@halink0803 Can you provide the logs for the issue you saw? And explain in more detail what you mean with a folder inside the workspaces that is not a git repo?

@halink0803 There error is benign -- it is expected (and handled) for any root without a git repo. Could there have been any other changes?

@LordHog Can you post the first few lines of the Git channel in the Output pane? I want to see what version & location of Git vscode found and is using

@eamodio No, there is no other changes. Just remove and add a directory. I would provide more information if I find any.

FYI GitLens 8.3.3 now uses the same git path that vscode uses (if you have the built-in Git extension enabled) and you haven't set gitlens.advanced.git. Hopefully that will resolve any issues where vscode works, but GitLens isn't.

I am going to close this as 8.3.3 should hopefully address these issues, but if not please post with logs and we can re-open this.

After upgrading I needed to set the gitlens.advanced.git setting.  So, for me, I needed to set it to:
"gitlens.advanced.git": "/usr/bin/git",
Now gitlens appears to be working now.

@LordHog can you post logs when that setting isn't set and when it is? I'd like to see the difference in the got version found

Mr. @eamodio ,
Here is the log when the setting isn't configured:
Git found: 2.7.4 @ /users/mrhicks/bin/git in 14 ms
Starting repository search in 1 folders
Searching for repositories (depth=1) in '/users/mrhicks/projects/eagle/repo' ...
Running(/users/mrhicks/projects/eagle/repo): git rev-parse --show-toplevel
GitLens(v8.3.3) activated in 68 ms
FAILED(/users/mrhicks/projects/eagle/repo): git rev-parse --show-toplevel FAILED in 14 ms
Running(/users/mrhicks/projects/eagle/repo): git rev-parse --show-toplevel
FAILED(/users/mrhicks/projects/eagle/repo): git rev-parse --show-toplevel FAILED in 5 ms
Searching for repositories (depth=1) in '/users/mrhicks/projects/eagle/repo' took 73 ms
Running(/users/mrhicks/.config/Code/User): git rev-parse --show-toplevel
Awaiting(/users/mrhicks/.config/Code/User): git rev-parse --show-toplevel
FAILED(/users/mrhicks/.config/Code/User): git rev-parse --show-toplevel FAILED in 6 ms
FAILED(/users/mrhicks/.config/Code/User): git rev-parse --show-toplevel FAILED in 0 ms
isTracked('/users/mrhicks/.config/Code/User/settings.json', 'undefined', 'undefined')
Running(): git ls-files /users/mrhicks/.config/Code/User/settings.json
FAILED(): git ls-files /users/mrhicks/.config/Code/User/settings.json FAILED in 4 ms

As from the output, it seems that gitlens thinks it found git in /users/mrhicks/bin/git, but this really isn't where git is at (I just noticed this).  This is a directory of some git scripts that I have as you will see below.
Here is some console output.  As you can see, git is located in /usr/bin/git or is the one the system is using.
[mrhicks@XXX repo]$ which git
/usr/bin/git

[mrhicks@XXX repo]$ whereis git
git: /usr/bin/git /users/mrhicks/bin/git /usr/share/man/man1/git.1.gz

[mrhicks@XXX repo]$ echo $PATH
.:/users/mrhicks/bin:/users/mrhicks/.local/bin:/usr/local/XXX/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/xtensa/XtDevTools/install/tools/RG-2017.5-linux/XtensaTools/bin

[mrhicks@XXX repo]$ l ~/bin/
total 17M
drwxrwxr-x  4 mrhicks nve_collab 4.0K May  7 18:52 .
drwxrwx--- 26 mrhicks nve_collab 4.0K Jun  3 19:51 ..
-rwxrwxr-x  1 mrhicks nve_collab  143 Apr 17 16:46 chmod_release_scripts.sh
-rwxrwxr--  1 mrhicks nve_collab  11K May 15 18:44 eagle_flash
drwxrwxr-x  2 mrhicks nve_collab 4.0K Apr 17 16:46 git
-rwxrwxr-x  1 mrhicks nve_collab  16M Apr 17 16:46 grv
-rwxrwxr-x  1 mrhicks nve_collab  821 Apr 17 16:46 packagePrj
-rwxr-xr-x  1 mrhicks wheel      529K May  7 18:48 rar
drwxrwxr-x  2 mrhicks nve_collab 4.0K Apr 17 17:26 snap_archive
-rwxr-xr-x  1 mrhicks wheel      301K May  7 18:48 unrar

[mrhicks@XXX repo]$ l ~/bin/git/
total 24K
drwxrwxr-x 2 mrhicks nve_collab 4.0K Apr 17 16:46 .
drwxrwxr-x 4 mrhicks nve_collab 4.0K May  7 18:52 ..
-rw-rwxr-- 1 mrhicks nve_collab 3.3K Apr 17 16:46 common_git_merge.bash
-rw-rwxr-- 1 mrhicks nve_collab 2.9K Apr 17 16:46 createtask.py
-rw-rwxr-- 1 mrhicks nve_collab 1.9K Apr 17 16:46 ftl_git_merge.bash
-rw-rwxr-- 1 mrhicks nve_collab 1.8K Apr 17 16:46 hotfix_git_merge.bash

I haven't tried it, but I might image if I changed the directory name from /users/mrhicks/bin/git to /users/mrhicks/bin/git_scripts it might work and sure enough it does
Git found: 2.7.4 @ /usr/bin/git in 14 ms
Starting repository search in 1 folders
Searching for repositories (depth=1) in '/users/mrhicks/projects/eagle/repo' ...
Running(/users/mrhicks/projects/eagle/repo): git rev-parse --show-toplevel
GitLens(v8.3.3) activated in 65 ms

So, I image gitlen is just looking for a directory called git and not verifying the actual executable exist there???

Either way, I do have gitlens working now on the CentOS machine, so I am happy

Like @SiTaggart told us, just:

uninstall extension,
remove folder on .vscode/extensions/,
install again;

Now work very well, tnks

Not sure if this helps anyone, but I thought I'd post what worked for me.
For me, this issue affected installation of any extension from the marketplace.
In VSCode, I went to View ---> Open View...
I then clicked on Log (Shared). Inspecting the log that appears, I found that the installation process was unable to access ~/.vscode/extensions/.obsolete due to issues with permissions. I cd'd into the directory and confirmed with ls -la that the file owner was root. I used chown <my_user> .obsolete to change the file owner. Then I restarted VSCode, and it worked :)


feat: Add optional fee to be paid to the offering party

Adds an optional fee to be added to the payout function. This fee will be deducted from the accepting party payouts. This allows the offering party to charge for a fee his offering.
In 10101 we used to charge fees by automatically paying an invoice issued by the coordinator, which is not optimal as

It is a trusted setup, where the coordinator trusts that the counter party pays the invoice.
It is pretty failure prune to immediately pay an invoice after updating the subchannel. We used to add a 5 seconds sleep to ensure everything is updated.

This change will allow us to charge fees (unilaterally) in an un-trusted way.

I'm ok with the concept of having a party pay a fee (we actually had that in the cfd-dlc library originally but I didn't port it to rust-dlc). But I'm not convinced with your approach, it doesn't really make sense to me to have it as part of the payout function. I would put it on the OfferedContract probably because your approach means it'll only be available for numerical contracts, but someone might want the same functionality for enumerated contracts.

Closing as @luckysori pointed out that this can be done without rust-dlc changes.


Stuck at random stages of building

Bug report
Description
When I want to build my app (completed Nextjs guide minus last 3 lessons) and run npm run build it completes the server, then is always stuck at one point for the client (always past 60%).
To Reproduce
Clone https://github.com/FreeLineTM/next.js-stuck-build.
Run npm install and then npm run build.
Expected behavior
Build to complete and be ready for production.
System information

OS: Ubuntu 18.04 Windows Subsystem for Linux
Version of Next.js: 7.0.2

Something weird is going on. I created an app with create-next-app (with TypeScript) and it is now building fine. There has to be something causing it in the "learning app".

Exactly what I was thinking from those other issues.

yarn build
yarn run v1.5.1
$ next build
[16:58:04] Compiling client
[16:58:12] Compiling server
[16:58:15] Compiled server in 2s
[16:58:20] Compiled client in 16s
Done in 17.81s.

Just ran on ubuntu with subsystem for linux and it works fine.
What version of Node.js are you on?

I'm running 11.0.0. What about you?

No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:        16.04
Codename:       xenial

I updated my wsl ubuntu, npm, node.
npm -v 6.4.1
node -v v10.13.0
I get hanging here on one of my projects:
[12:22:38 PM] Compiling client
[12:22:38 PM] Compiling server
> Using external babel configuration
> Location: "project/.babelrc"
[12:22:51 PM] Compiled server in 13s
(node:9759) DeprecationWarning: Chunk.mapModules: Use Array.from(chunk.modulesIterable, fn) instead

The other more complicated projects is working now.  It has worked once before and then started hanging so I am not sure what is going on.  It may be nothing but the one that is working now is not showing the node:9759) DeprecationWarning: Chunk.mapModules message.  Is it possible that the logging of that message is freaking out WSL for some reason?  Could next perhaps update to Array.from like it suggests?

Thanks timneutkens...that is interesting to know and helps give me a place to start narrowing down why only one of two nearly identical projects hangs.

Is this related?  https://github.com/zeit/next.js/issues/5777


[WFCORE-6966] Remove org.jboss.as.controller.parsing.Namespace

Only the last commit is relevant on this PR.
https://issues.redhat.com/browse/WFCORE-6966
This PR depends on https://github.com/wildfly/wildfly/pull/18153 which in turn depends on https://github.com/wildfly/wildfly-core/pull/6134 but it should be possible to follow the sequence without requiring a coordinated WildFly Core release with one of the PRs.
I will leave as draft for now while the other two progress.

Core -> WildFly Preview Integration Build 13912 outcome was FAILURE using a merge of d6dac4a2ec989d0b567f82f58a5b48a2cb0b92a1
Summary: Exit code 1 (Step: Build & test full (Maven)) Build time: 00:03:26

Core -> Full Integration Build 13840 outcome was FAILURE using a merge of d6dac4a2ec989d0b567f82f58a5b48a2cb0b92a1
Summary: Exit code 1 (Step: Build full with JDK 17 (Maven)) Build time: 00:03:45

Core -> Full Integration Build 14132 outcome was FAILURE using a merge of d6dac4a2ec989d0b567f82f58a5b48a2cb0b92a1
Summary: Exit code 1 (Step: Build full with JDK 17 (Maven)) Build time: 00:04:47

/retest

The PR this depends on has been merged to running tests again.

Thanks @darranl


Horizontal scrolling of the treeview

Hi,
I'm this widget and so far, it works flawlessly. But I see that, as the number levels in the tree go higher - eventually I see the overflow error on the right of the tree.
How can the tree view auto scroll to the right as the depth of the tree increases. Can you please point to an example for the same?

是一樣的麽？？
The following StackOverflowError was thrown while handling a gesture:
Stack Overflow
When the exception was thrown, this was the stack:
#0      TreeViewController._selectAllChild (package:list_treeview/tree/controller/tree_controller.dart:353:3)
#1      TreeViewController._selectAllChild (package:list_treeview/tree/controller/tree_controller.dart:357:7)
#2      TreeViewController._selectAllChild (package:list_treeview/tree/controller/tree_controller.dart:357:7)


Create export-csonlineaudiofile

New cmdlet documentation

Docs Build status updates of commit 6331d04:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

skype/skype-ps/export-csonlineaudiofile
:white_check_mark:Succeeded

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


WHat is Actual Minimum System Requirements?

I confused about system requirements.It says:
Linux 3.10+
512 MB of ram per server
75 MB of ram per node
200 MB of disk space
x86_64, ARMv7, ARM64
What is the meaning of :
512 MB of ram per server
and
75 MB of ram per node
What is the difference of node and server ?

AFAIK the server is the control node of K3s and the node is the worker.

I would agree with @vFondevilla on that one.

server = controller + worker

it's the default server function, but can use "--disable-agent" option to disable the worker/node feature.

node = worker

Can I run it on raspberry pi model 2 with 1 Gb ram and 4 vcpus ?

@raul1991 yes, I have done that myself.


Auto-generated trace library (GAPIC only)

ISTM you want to move trace/docs/ to docs/trace/?
Also, please make PRs from branches in your own fork of this repo (rather then making branches directly in this repo).

@dhermes Yeah the docs should live in docs/trace. Will move it later.
And sorry for forgetting to make PRs from my own fork... I remember you told me in last PR though. I spent quite a while separating the previous large PR to two PRs this afternoon because of some weird errors and then forgot that.
#3513 is based on the trace-autogen branch, which is the manual layer on top of the autogen layer. So I think the merging order should be merging the manual one to this autogen branch first then merge the autogen branch to master.

The trace team is working on adding v2 of the API, timeline hazy, but v1 is in reasonably heavy use and will presumably remain so.  The two apis are quite similar, just some renaming and slightly restructuring.  It seems reasonable to me to have autogen code for v1 now, add v2 later, and have the manual layer work for both.  But @lukesneeringer will have to say for sure.

Also, my git (lack of skill) is entirely to blame for any problems with these two pull requests, although @liyanhui1228 was much too kind to say so :)  We spent a while trying to resurrect the previous pull request from a deleted branch.

Please don't hesitate to reach out for git issues. I'm a bit of a git
surgeon.
On Wed, Jun 21, 2017, 2:17 AM Douglas Greiman<EMAIL_ADDRESS>wrote:

Also, my git (lack of skill) is entirely to blame for any problems with
these two pull requests, although @liyanhui1228
https://github.com/liyanhui1228 was much too kind to say so :) We spent
a while trying to resurrect the previous pull request from a deleted branch.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/google-cloud-python/pull/3512#issuecomment-310020238,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAPUc6y5M7kYSa2rd7M4P99dSMFZ6A_Cks5sGN-ygaJpZM4N--OD
.

@lukesneeringer Are there any plan for updating the autogen code to use the v2 API? I have #3513 ongoing based on this PR, so if there are anything needed to be changed in the autogen code please let me know.

Hi @liyanhui1228,
How did you generate this code? I want to make sure I get proto docstrings added in, is why I ask. It should just entail re-generating with the newest Artman.
Happy to do it and update this PR; I just need to know what you based it off of.

@lukesneeringer Are there any plan for updating the autogen code to use the v2 API? I have #3513 ongoing based on this PR, so if there are anything needed to be changed in the autogen code please let me know.

This is based off of v1, yes? Most likely they can live side by side.

@lukesneeringer This is just the one you generated before, I wasn't able to reopen that closed PR so I open a new one for the autogen code. It would be great if you regenerate and update this PR, I just need to know if there is any change for calling the APIs as my manual code PR is based on this.

@dhermes I'm looking at it right now.

Thanks!


Bug #1438 - round up memory size for decompressing glyph

Closes #1438
Corrected computation of memory size needed to decompress a glyph. The prior code rounded down, leading to a memory overrun in certain cases.

Thanks for the pull request!


[FUZZ] lodestar - Cannot read property 'toString' of undefined

I've identified a fuzzer crash and am contributing to the security of Ethereum 2!
I've done and provided the following:

[x] Checked to see if any other [FUZZ] issue already refers to that crasher
[x] Attached the crashing input (either attached to the issue as a .zip or .gz, or as a link to a file sharing service)
[x] Noted the beacon-fuzz version or commit used.
[x] Provided crash output
[x] Noted the command or fuzzer used to generate the crash
[x] Name of the original crash file
[ ] (Optional but optimal) Checked if the crash can be consistently replicated by re-running the input.

Info to Reproduce

Command run: e.g. eth2fuzz_lodestar continuously --infinite --filter lodestar
Crasher file name: crash-d89e24778114bb05e5541d096cd86dba4ab6ce3f5ca71394fa757868c07ede7b
Client exercised: lodestart
Fuzzing engine used (if applicable):

Crash output and stacktrace
d89e24778114bb05e5541d096cd86dba4ab6ce3f5ca71394fa757868c07ede7b.zip
enr:,0Q

=================================================================
TypeError: Cannot read property 'toString' of undefined
    at Object.toBigIntBE (/eth2fuzz/node_modules/bigint-buffer/dist/node.js:1:5452)
    at Function.decodeFromValues (/eth2fuzz/node_modules/@chainsafe/discv5/lib/enr/enr.js:1:26148)
    at Function.decode (/eth2fuzz/node_modules/@chainsafe/discv5/lib/enr/enr.js:1:26556)
    at Function.decodeTxt (/eth2fuzz/node_modules/@chainsafe/discv5/lib/enr/enr.js:1:26863)
    at Object.fuzz_lodestar_enr (/eth2fuzz/workspace/targets/js/lib.js:1:8102)
    at Worker.fuzz [as fn] (/eth2fuzz/workspace/jsfuzz/lodestar_enr.js:1:1039)
    at process.<anonymous> (/usr/lib/node_modules/jsfuzz/build/src/worker.js:63:30)
    at process.emit (events.js:314:20)
    at emit (internal/child_process.js:906:12)
    at processTicksAndRejections (internal/process/task_queues.js:81:21)
crash was written to crash-d89e24778114bb05e5541d096cd86dba4ab6ce3f5ca71394fa757868c07ede7b
crash(hex)=656e723a2c3051
Worker exited

Your Environment

Fuzzer ran: eth2fuzz_lodestar continuously --infinite --filter lodestar
Version/Commit used: f4e4baebb6be13350e4dacce096c16bd7b50635f
Operating System and version: Running in docker on Windows Subsystem for Linux 2 / Ubuntu 20.04 LTS

Thanks @MysticRyuujin and congratulations on spotting a valid bug on Lodestar! This has been raised with the Lodestar development team in this issue. Closing this issue at it is a duplicate of #52.


Add openjdk11 builds in CI

Let's see how CI handle it
Maybe we could also try testing different JDK only on one Scala version

Nice. Seems to work.


Command 'V: Run current file' resulted in an error (command 'v.run' not found)

Visual Studio Code:  version 1.52.1.
Manually installed from downloaded vscode-vlang-0.1.6.vsix file.
In the extension settings,  configured to the V executable file path.
With running the V Run current file command, it shows error as below:
Command 'V: Run current file' resulted in an error (command 'v.run' not found)

It works normally after i upgrade to vscode-vlang-0.1.7.vsix.
So i guess this issue can be closed now.

It works normally after i upgrade to vscode-vlang-0.1.7.vsix.
So i guess this issue can be closed now.


RAC5278: remove nested parallel in post test groovy script

Remove nested parallel in post test

BUILD on-build-config #426 : FAILURE

test this please

BUILD on-build-config #430 : FAILURE

Jenkins Test failed, please address the issue. "Manifest miss"

BUILD on-build-config #482 : FAILURE

BUILD on-build-config #531 : FAILURE

BUILD on-build-config #532 : FAILURE

BUILD on-build-config #533 : FAILURE

test this please

BUILD on-build-config #559 : FAILURE

BUILD on-build-config #560 : FAILURE


feature: added ability to label points and toggle their visibility.

Hi.
When playing with the  scrambled-seas mod, it may be convenient to label points. Here's the feature implemented.

Yes, I did it clumsily quickly :) and all those edits are of course better. I honestly didn’t figure out how to do the text offset correctly.

Ok. Thank you. 😄


Updated

please add my file to in your repository with label hacktoberfest.

Please 🥺 add my 3/4 please help. 🙏🙏


supports_transfers always returns true

Template

Version of vulkano: 0.11.1
OS: ubuntu18.04
GPU (the selected PhysicalDevice): Quadro P4000
GPU Driver: 3<IP_ADDRESS>
Upload of a reasonably minimal complete main.rs: main.zip

Issue
The supports_transfers check is ignoring the flags and always returning true.
If https://www.reddit.com/r/vulkan/comments/4x0lbu/nvidias_lone_transfer_queue/ is accurate (I am struggling to find anything else arguing either way) then being able to identify the DMA transfer queue will be crucial to decent performance when lots of transfers are needed.
Introduced by https://github.com/vulkano-rs/vulkano/pull/536
My simple test program is producing:
#0: g:true c:true, t:true
#1: g:false c:false, t:true
#2: g:false c:true, t:true

for the GPU: https://vulkan.gpuinfo.org/displayreport.php?id=5364#queuefamilies

Recommend closing or doing a PR on the docs to reference the original source of the assumption.
https://vulkan-tutorial.com/Vertex_buffers/Staging_buffer#page_Transfer_queue

The good news is that any queue family with VK_QUEUE_GRAPHICS_BIT or VK_QUEUE_COMPUTE_BIT capabilities already implicitly support VK_QUEUE_TRANSFER_BIT operations. The implementation is not required to explicitly list it in queueFlags in those cases.

Vulkano docs related to the assumption that graphics or compute implies transfer:
https://docs.rs/vulkano/0.11.1/vulkano/instance/struct.QueueFamily.html#method.supports_transfers

Note: Queues that support graphics or compute operations also always support transfer operations. As of writing this, this function will always return true. The purpose of this function is to be future-proofed in case queues that don't support transfer operations are ever added to Vulkan.

Related source
https://github.com/vulkano-rs/vulkano/blob/d8fbef1a20465b67d53b8f329f0828eadb18fb2f/vulkano/src/instance/instance.rs#L1081-L1085
Blame doesn't reference the docs that back up the assumption.
https://github.com/vulkano-rs/vulkano/commit/8574583409cddc201cfb995d4f48f995060482d4
Reproduced on GeForce GTX 1060:
https://vulkan.gpuinfo.org/displayreport.php?id=5227#queuefamilies
Test code
    #[test]
    fn test_queue_bits() {
        let instance = Instance::new(None, &vulkano_win::required_extensions(), None).unwrap();
        let physical = PhysicalDevice::enumerate(&instance).next().unwrap();

        for (i, q) in physical.queue_families().enumerate() {
            println!(
                "#{}: count:{}, g:{}, c:{}, t:{}",
                i,
                q.queues_count(),
                q.supports_graphics(),
                q.supports_compute(),
                q.supports_transfers(),
            );
        }
    }

cargo test test_queue_bits -- --nocapture
running 1 test
#0: count:16, g:true, c:true, t:true
#1: count:1, g:false, c:false, t:true
#2: count:8, g:false, c:true, t:true
test enwin::tests::test_queue_bits ... ok

I was actually going to look up how to create a transfer operation and try to fail it on the compute queue but immediately ran into the Vulkan docs saying that the capability was implied by compute / graphics.

I did some more digging, and found the following.
https://www.khronos.org/assets/uploads/developers/library/2018-vulkanised/03-Steven-Tovey-VulkanMemoryManagement_Vulkanised2018.pdf slide 34-37
https://gpuopen.com/concurrent-execution-asynchronous-queues/ Copy Queue(DirectX 12) / Transfer Queue (Vulkan): DMA transfers of data over the PCIe bus
These all state that the queue with the transfer bit is what you should be using for and transfers between host and device. It does also say that the queue used should really depend on a number of factors, so this is a decision that should be left up to the user to decide on a per transfer basis.
As it stands supports_transfers() is useless in any decision making on this. As a workaround I am having to do supports_transfers() && !supports_compute() && !supports_graphics() to figure out the true transfer queue, and then handling if that doesn't match anything (Intel GPU's only have a single queue family).
It could be that the solution for this is not to change the behaviour of supports_transfers(), but to instead add another method supports_dma_transfers() which returns the true value of the flags?

I read similar indications.  It does seem true on Nvidia devices that the transfer-only queue family has a special relationship with the DMA module.
In short, I support making all three functions report only their correct bit and changing the docs so that supports_graphics and supports_compute repeat the claims in the Vulkan docs instead of the current situation, hacking the supports_transfers function.
As for your individual problem, you probably still need to filter the families even with the change because Nvidia devices' graphics queues do appear universal and any other universal or multi-purpose queues will likely not be the one with tighter relationship to the DMA.
I've made my own GpuPicker to find a discrete graphics device and avoid any built-in graphics.  Finding queues and devices is pretty common busy work.  A higher level module could be useful.  If you open up a PR for fixing the transfer queue / docs, I'll put out a proposal API.
The several buckets of trivia to uncover:

Are there queue families that don't report transfer capability but actually have it and would be precluded from performing transfers if we don't assume it in code?  I believe the answer is no because I don't find the supports_transfers or the vk::QUEUE_TRANSFER_BIT being used internally anywhere to gate any commands.  I don't think we would incorrectly lock out devices from handling certain commands.
Would true graphics-only and compute-only queues be harmed by the removal?  No because they should be failing the operations in the current configuration, and the Vulkan docs say we should assume the capability regardless of the reporting.
Would users who trusted the current documentation be given an unwelcome surprise when supports_graphics no longer is coerced to imply transfers?  No because of 2 and the only way they would be denied functionality is if they are incorrectly using supports_transfers to find graphics queue families.  Such a hack would be very unlikely to have developed.
Do we need to touch sparse queues at all?  No.  They report only the sparse bit.

@Julusian  I suppose since you're wanting the DMA dedicated queue, you're aware of either sharing or transferring ownership of resources across queue families.
I ran into the issue last night and am sorting out both what Vulkano already supports and how to do it in Vulkan to see if our API is missing anything.
vkSharingMode is something that attracted my attention.  Other documents are suggesting transferring ownership but I haven't found the right API vocabulary for it yet to see if it needs to be implemented in Vulkano or not.
https://docs.rs/vulkano/0.11.1/vulkano/sync/enum.SharingMode.html

VkBufferMemoryBarrier
QueueFamily arguments pull off the ownership transfer, and it looks like we support them.  https://docs.rs/vulkano/0.11.1/vulkano/command_buffer/sys/struct.UnsafeCommandBufferBuilderPipelineBarrier.html#method.add_image_memory_barrier
So.. looks like the only thing still needing work is to change all the supports_* calls to tell the truth

Whoops, I have had very little time to play with vulkan in rust so completely forgot to respond to this.
Thanks for doing a PR.

As for your individual problem, you probably still need to filter the families even with the change because Nvidia devices' graphics queues do appear universal and any other universal or multi-purpose queues will likely not be the one with tighter relationship to the DMA.

That is true, but now my check can be more accurate in finding the DMA queue, rather than assuming it to be the one without graphics or compute capabilities.

I suppose since you're wanting the DMA dedicated queue, you're aware of either sharing or transferring ownership of resources across queue families.

I am vaguely aware of it  but only enough to set everything to be owned by all the queues I use. Optimising performance in my vulkan code is not something I have though about much at all yet.


Strange eyes in GAN

I notice in your GAN version, there are strange swirls and lines in the eyes. This doesn't happen without the GAN.

I notice in your GAN version, there are strange swirls and lines in the eyes. This doesn't happen without the GAN.
Yes.I retrained ESRGAN with face data and had the same problem.For now, I have no idea how to fix it.

I notice in your GAN version, there are strange swirls and lines in the eyes. This doesn't happen without the GAN.
Yes.I retrained ESRGAN with face data and had the same problem.For now, I have no idea how to fix it.

Dear Jzijin:
Thank you for implementing Super_FAN. I also implemented URDGN with the same dataset settings. The URDGN is also a GAN-based FSR model. The strange swirls and lines in the eyes might be introduced by the normalization. You can refer to StyleGAN-V2.
THX a lot for your excellent job~


Enable reactive containerpool for all open environments.

This is a stepping stone to make the new pool the default for everything.
Communication will be done via dev list.

what about this one: https://github.com/apache/incubator-openwhisk/blob/9401f8b29ae2ddc470d9e543f0f790776ae0b028/ansible/group_vars/all#L163

@rabbah see the mail on the dev list:
http://mail-archives.apache.org/mod_mbox/incubator-openwhisk-dev/201707.mbox/<2d9fc7eb-46c0-49b1-b7fc-ba2bde4157c7%40me.com>
I'll change that parameter in about a weeks time (it could be breaking for existing deployments) and scheduled the whole old pool to be removed mid of August.


TypeError: emoji() takes 1 positional argument but 2 were given

    @inter_client.slash_command(guild_ids=bonbot_support)
    async def emoji(ctx):
        pass
    @emoji.sub_command(description="steal an emoji with an option to lock it to a role", options=[Option("emoji", "an emoji to steal", OptionType.STRING, required=True),
    Option("role", "A role to lock this emoji to. (User must have this role to use emoji)", OptionType.ROLE)], guild_ids=bonbot_support)
    @slash_commands.guild_only()
    @slash_commands.has_permissions(manage_emojis=True)
    async def steal(self, ctx, emoji, role):
        c = commands.EmojiConverter() # create instance
        emoji_final = await c.convert(emoji)
        # fetch the emoji asset and read it as bytes.
        emoji_bytes = await emoji_final.read()

        emoji_roles = [role]
        await ctx.guild.create_custom_emoji(name=emoji_final.name, image=emoji_bytes, roles=emoji_roles)
        await ctx.send("Created emoji!", ephemeral=True)

I get this error when I run this code, I even added print("number") after every step and it doesn't print anything. Not sure what is happening, I have asked for help in several servers and nobody can figure it out. When I run the same code as a regular command, (removing the components parts) it works flawlessly. Full error: https://mystb.in/UrwPutsGarlic.apache

thanks so much, that worked. I can't believe I missed something so simple, here I was thinking it was something super big.


Elect a Chairperson

Per the Charter, CommComm gets to elect a Chairperson.

The CC will elect from amongst voting CC members a CC Chairperson to work on building an agenda for CC meetings and collaborate with the Individual Membership Directors the wishes of the CC to the Board for a term of one year according to the Node.js Foundation’s By-laws. The CC shall hold annual elections to select a CC Chairperson; there are no limits on the number of terms a CC Chairperson may serve.

We do not have a predefined process for this - let's get that figured out!
(e.g.: Nominations open for 1 week, voting open 1 week)

Just noticed that @emilyrose & @jpwesselink are not watching the repo so... PING! FYI!

So to give a little more context to this. The community committee's charter states that we need to elect a chairperson.
The charter describes the chairperson as:

The CC will elect from amongst voting CC members a CC Chairperson to work on building an agenda for CC meetings and collaborate with the Individual Membership Directors the wishes of the CC to the Board for a term of one year according to the Node.js Foundation’s By-laws. The CC shall hold annual elections to select a CC Chairperson; there are no limits on the number of terms a CC Chairperson may serve.

To break down the the role a bit further:

Create each meeting's agenda. We have a tool to create agenda's called make-node-meeting which makes the agenda creation process a lot easier
Create the event and make sure it is live-streamed in YouTube. There's a document explaining how to do this somewhere, but for the life of me I can't remember where.
Chair each meeting. There are several sections to each meeting, which you can see listed in https://github.com/nodejs/community-committee/pull/32, and it is the chairperson's responsibility to ensure that the meeting stays on track, sticks to the agenda, and finishes within the allotted time.
Collaborate with @williamkapke and @ashleygwilliams on presenting things to the board from CommComm that need attention. This part of the role is murkier than the others because there is not existing precedent for this kind of division of labor within the Foundation. It's up to the incoming chairperson and the individual directors to really flesh out what this looks like.

If this sounds like something you're interested in, let us know!

Because this group is still growing, I would recommend setting a short term this time around so that you can return for another election after the group has grown.

Because this group is still growing, I would recommend setting a short term this time around so that you can return for another election after the group has grown.

Following this train of thought, I recommend we try and get https://github.com/nodejs/community-committee/issues/31 figured out for the next election, not this one, so that we can get someone elected fairly quickly. Thoughts?

After giving it some thought, I'm announcing my intention to run for this position 😄

So do we need to open a separate issue regarding the shortened term for the chairperson or just chat about it as a second bullet for this issue in question?

@williamkapke What further steps are needed in this, now that @nebrius has been elected unopposed?

Just a PR to the README indicating that he holds that honor!
In the TSC repo, I made the members list have pictures (just to jazz things up), I made everyone alphabetically ordered, BUT put the Chair/Director at the top noting that position:

@williamkapke Done! I tried converting the list to a table, but Markdown formatting hates my attempts at tables 😞
Here's the PR: https://github.com/nodejs/community-committee/pull/58

PR was merged, so I'm going to go ahead and close this issue. Feel free to reopen if there's any outstanding work still to be done.


trying to fix a build problem

first pull request, just wanted to make sure that the issue I opened is linked to the test branch, nothing to review for now

As I can see it's linked to the issue.
PS: the build issue from 4913dcaccc20f77d64919039fcbe1ac9e673642f was fixed by 39bebe9dfa7527ac1d88463bd4724619026e8a65

yes I noticed that, thanks for solving it


Translate README to German

This translation takes into account the edit made to the Running section in #1317.

Please add details on availability of support in German. Can you volunteer to provide support in the IRC channel for German users? Either way, mention it in the README.

In the Japanese readme I said "私の名前はSirCmpwnです。助けのはIRCとGitHubで日本語で頑張ります", which introduces my IRC handle and says I will do my best to help in Japanese on IRC or GitHub. I also said later, regarding the config file: 英語は難しいのばIRCで助けのを尋ねる。￼日本語助けのはUTC-4。Which means "ask in IRC if you have trouble with the english config file, japanese help is available in the UTC-4 timezone".

@refacto Thanks for the review! (I also included a lot of changes based on a review by @minus7)

Can you sync with master and update the links at the top of each README?

Regarding support: I may be able to provide some support in #sway when I have the time and if there's a person needing support in German.

Are you able to idle in the channel?

Yup!

Cool! What's your nick?

#azarus

Danke!


Multiple networks?

I sometimes have a machine on multiple networks at once.  In wireguard, this is easy as I can just create a new config with a different interface name, and they can both run without conflict.
Is this use case supported on netbird?  I can't find any information about it in the docs or issues.

Hi @bj0, currently, we don't offer straight support for multiple Wireguard connections as you would need to set the daemon listening address, a custom config path, and the new interface name needs to be updated in the configuration file.
Let me know if you need a guide for it to try this out.
we will evaluate the options to make this possible in an easier manner and perhaps work on it in the next few days.

A guide would be cool, but I can figure out those options pretty easy.  My main question is how would you "manage" or "auth" this second network?  Would you need a second oauth account (im currently just using a google account)?

Hello @bj0 with the release v0.9.0 you are able to run the following steps to achieve that. Below are the steps:
For a 2 connection example on a single Linux with SystemD, the steps are:
stop and uninstall the daemon
sudo netbird service stop
sudo netbird service uninstall

Create custom login files and login:
Assuming we have two accounts, ACCOUNT-A and ACCOUNT-B:
netbird login --config ./config-wt1.json --log-file console --setup-key ACCOUNT-A-AAA...
netbird login --config ./config-wt2.json --log-file console --setup-key ACCOUNT-B-BBB...

Now, we need to edit each configuration file and change the WgIface, WgPort and update the IFaceBlackList:
# FROM
    "WgIface": "wt0",
    "WgPort": 51820,
    "IFaceBlackList": [
        "wt0",
        ...

# TO
# interface wt1:
        "WgIface": "wt1",
        "WgPort": 50001,
    "IFaceBlackList": [
        "wt",
        ...
# interface wt2:
        "WgIface": "wt2",
        "WgPort": 50002,
    "IFaceBlackList": [
        "wt",
        ...

move the files to the default config location /etc/netbird
sudo mv  ./config-wt1.json /etc/netbird/config-wt1.json
sudo mv  ./config-wt2.json /etc/netbird/config-wt2.json

install the wt1 service pointing to the config location:
sudo netbird service install --config /etc/netbird/config-wt1.json

let's edit the systemd file /etc/systemd/system/netbird.service and update the ExecStart and rename it
# FROM
ExecStart=/usr/bin/netbird "service" "run" "--config" "/etc/netbird/config-wt1.json" "--log-level" "info"

# TO
ExecStart=/usr/bin/netbird "service" "run" "--config" "/etc/netbird/config-wt1.json" "--log-level" "info" "--daemon-addr" "unix:///var/run/netbird-wt1.sock" "--log-file" "/var/log/netbird/client-wt1.log"

# rename
sudo mv /etc/systemd/system/netbird.service /etc/systemd/system/netbird-wt1.service

make a copy of the service file for the interface wt2, then update its ExecStart
sudo cp /etc/systemd/system/netbird-wt1.service /etc/systemd/system/netbird-wt2.service

# FROM
ExecStart=/usr/bin/netbird "service" "run" "--config" "/etc/netbird/config-wt1.json" "--log-level" "info" "--daemon-addr" "unix:///var/run/netbird-wt1.sock" "--log-file" "/var/log/netbird/client-wt1.log"
# TO
ExecStart=/usr/bin/netbird "service" "run" "--config" "/etc/netbird/config-wt2.json" "--log-level" "info" "--daemon-addr" "unix:///var/run/netbird-wt2.sock" "--log-file" "/var/log/netbird/client-wt2.log"

reload systemd
sudo systemctl daemon-reload

start each interface service
sudo systemctl start netbird-wt1
sudo systemctl start netbird-wt2

Note For direct connection to work, you will need peers to be running the latest version

@mlsmaycon thx for the Tutorial
Please consider to implement this kind of multi- tenancy/instances in all of your components natively.
This might work for an Advanced Linux User, but its difficult for e.g. Windows GUI Client User
There will be enough use-cases for this in the future (Both, Client and UI/Management Side)
and it might be easier to design/implement this directly in the beginning 😀
Thx!

Thanks @mlsmaycon !  That's super helpful, I'll give it a try when I get a second oidp/network going.
I was thinking about this while reading through the access control documentation.  Another potential solution might be, instead of a separate network, a "shared" group where you could add peers from a different network (obviously on the same mediation server).  That way you wouldn't need to run double everything, but it would rely on the mediation server much more.

@mlsmaycon thx for the Tutorial Please consider to implement this kind of multi- tenancy/instances in all of your components natively. This might work for an Advanced Linux User, but its difficult for e.g. Windows GUI Client User
There will be enough use-cases for this in the future (Both, Client and UI/Management Side) and it might be easier to design/implement this directly in the beginning 😀
Thx!

Thanks, @fti7 we are definitely thinking about improving that experience. We built the ground for it with smaller CGNAT and random networks.
Moving forward, maybe we can use a bit of input from you folks, how would you see a multi-tenancy setup? Would be more based on company/personal domain, accounts, or networks?

Sure, here is my POV:
Multi Tenancy for me means full Isolation.
The scenario what mostly like gonna happen is that in multiple Parties are using Netbird with either your shared Management Server or setting up an own one.
They are completely isolated and dont talk to each other. The only thing, what you already mentioned is the Collision of the CGNAT Subnet.
But i guess that shouldnt be an big issue if they are getting smaller and the reserved Subnet per "Management Server Tenant" gets randomized.
If this still happens, it should be possible to change this reserved Subnet as an Admin on one of the Servers
Scenario 1
Im a Freelancer and use Netbird for my private Network using app.netbird.io and working for 2 Companies which each have their own selfhosted Management Server.
In this Scenario only the Clients need some Modifications.
How it should look like (Example Windows GUI Client):
The Clients have a list where i can add/remove multiple "Profiles"
A Profile is basically some Config which i get from an Admin via a QR Code/File/Copy&Paste and contains

Tenant ID (I would use some UUID; Can help for further Scenarios where you uniquely need to identify tenants )
Tenant/Profile Name (Possible to overwrite by the User)
Management URL
Admin URL
Optionally: Setup Key
CGNAT Subnet, to directly see if there are Collisions... but that could also be checked after calling the Management Server; It should only allow one Enabled/Active Connection per Subnet... multiple Entries with the same Subnet in general should be allowed (Example: Your company has a Main VPN Mgmt Server and some Disaster Recovery Backup one in a different Datacenter; Both have the same CGNAT Subnet)

Each Profile List entry will have some ON/OFF Toggle for globally turning off the Connection (e.g. im Working for Company #2 only 1 Week per Month, and dont want to have this Connection open all the time)
For the Linux Client, you can implement some "Add/Delete/Enable/Disable Profile" command through the CLI
Scenario 2
Multi Tenancy for the Management Server
Scenario: I want to have multiple Isolated "Networks" for whatever reason. (e.g. one for my private Smarthome Network and one only for my Friends, sharing a Minecraft Server)

Just add an Dropdown Field on the upper left Navigation bar where the User can choose which Tenant is currently active in the UI
One User can belong to multiple Tenants with different Roles (Admin/Regular Peer)
You need also a "Superuser" Role which is able to manage the tenants per Management Server

I guess this two are the most Important Scenarios which is needed to build up complex Architectures
Later you could for example add an fancy Gateway function to connect two Tenants (Kind of Site2Site VPN) -> Example: You have two Companies which each use their own Netbird and want to share some Services Transparently (Without adding the opposite Profiles to all employees)....
But...., thats stuff for some advanced Use Cases in the Future..... 😀

@fti7 thank you so much for your suggestions and my apologies for not giving feedback earlier, we are aligned on the use cases, for the profile switching I think we can improve a bit more and make things more simpler, just by connecting and the app will handle the rest, and in case you are connecting to multiple self-hosted we can add a Add profile with custom manager.
We are looking at a major account refactor that will allow for better multi-tenancy and isolation. The same goes for the network range management.
Time wise, these changes might come in Q4 or early Q1/2023.

@mlsmaycon This is great! It seems like this is a solution for combining meshnets of my friends' networks and my own? I came accross this because I opened a case for something very similar over on innernet here. If you wouldn't mind reading my use-case over there, would you mind clarifying if and how this would work for it?

We are looking at a major account refactor that will allow for better multi-tenancy and isolation. The same goes for the network range management.
Time wise, these changes might come in Q4 or early Q1/2023.

Are these features released or still in development? If in development, is there a new roadmap?

I'm evaluating Netbird and super impressed so far!  Our use case requires key employees to have access to multiple client isolated networks from a single device.  Any updates on this?

Any update on this?

Any update on this?

Multi Tenancy would be so nice. What are the current news on this? Thanks a lot.

I converted the guide from @mlsmaycon to use it on windows with the help of nssm. only DNS is not working that well. you can find it on my wiki: link

@mlsmaycon I would love to see both options.
I use Netbird for my HomeNetwork and plan to use it as a self hosted Tailscale-competitor option at my corp.
Additionally at the corp, I'd love to see multi tenancy, here an example use case:
Network 1 is for road warriors / remote access for all clients with their personal username (SSO)
Network 2 is for admin only stuff like remotely accessing these client machines and they're automatically onboarded via access key and always runs as a service. This would make managing these machines much easier. Example: rdp access, vnc from login screen via netbird-network2 only, etc.
Are there any plans for payed self-hosted enterprise plans incl. logging / reporting, support, etc?
We want to self host but are "blind" and don't have any access and traffic reports.
We want to support the project.
We want to get customer support if needed.

@mlsmaycon I would love to see both options.
I use Netbird for my HomeNetwork and plan to use it as a self hosted Tailscale-competitor option at my corp.
Additionally at the corp, I'd love to see multi tenancy, here an example use case:
Network 1 is for road warriors / remote access for all clients with their personal username (SSO)
Network 2 is for admin only stuff like remotely accessing these client machines and they're automatically onboarded via access key and always runs as a service. This would make managing these machines much easier. Example: rdp access, vnc from login screen via netbird-network2 only, etc.
Are there any plans for payed self-hosted enterprise plans incl. logging / reporting, support, etc?
We want to self host but are "blind" and don't have any access and traffic reports.
We want to support the project.
We want to get customer support if needed.

@mlsmaycon I would love to see both options.
I use Netbird for my HomeNetwork and plan to use it as a self hosted Tailscale-competitor option at my corp.
Additionally at the corp, I'd love to see multi tenancy, here an example use case:
Network 1 is for road warriors / remote access for all clients with their personal username (SSO)
Network 2 is for admin only stuff like remotely accessing these client machines and they're automatically onboarded via access key and always runs as a service. This would make managing these machines much easier. Example: rdp access, vnc from login screen via netbird-network2 only, etc.
Are there any plans for payed self-hosted enterprise plans incl. logging / reporting, support, etc?
We want to self host but are "blind" and don't have any access and traffic reports.
We want to support the project.
We want to get customer support if needed.

Trying to figure out the steps on macOS:
WgIface must use inteface prefix utun, Example: utun90 for home and utun91 for work (check if free with ifconfig).
Otherwise you get this:
2024-09-06T16:01:47+02:00 ERRO client/internal/connect.go:263: error while starting Netbird Connection Engine: create wg interface: Interface name must be utun[0-9]

sudo launchctl load -w /Library/LaunchDaemons/netbird-home.plist
sudo launchctl load -w /Library/LaunchDaemons/netbird-work.plist

To check status
netbird status --config /etc/netbird/config-home.json --log-level info --daemon-addr unix:///var/run/netbird-home.sock
netbird status --config /etc/netbird/config-work.json --log-level info --daemon-addr unix:///var/run/netbird-tpg.sock

Currently I still struggle a bit...
They are connected successfuly but even can't ping their own address.
I checked for subnet overlap > no!

Hello,
I have successfuly working 2 netbird on 2 networks for Windows guest. The DNS remains a problem. I am using a DNS proxy, Acrylic, however it is possible to start a single netbird instance with <IP_ADDRESS> as a custom DNS. The second netbird instance fails then. What is blocking pultiple netbird instances to use the same DNS server?

@mlsmaycon, you seemed quite motivated to push this along 2 years ago but I cannot see an option for switching profiles in the latest client for windows. Has this been shelved?

Hello I am correctly using 2 netbird instances on my Mac:
/Library/LaunchDaemons/netbird-work.plist with a configuration file mapped to /var/run/netbird-work.sock
/Library/LaunchDaemons/netbird-home.plist with a configuration file mapped to /var/run/netbird-home.sock
I saw that DNS configuration is set via the latest daemon started.
which is logic, seeing the source code you are dealing with scutil on Darwin systems and using uniq keys State:/Network/Service/NetBird-Match/DNS & State:/Network/Service/NetBird-Search/DNS
How do you plan to deal with multiple tenancy ?
I think it can be possible to use namespaced keys to permit multitennancy
for example:
State:/Network/Service/NetBird-Work-Match/DNS vs State:/Network/Service/NetBird-Home-Match/DNS
but I guess it will be different on Windows & Linux (I saw your trick with eBPF)
While waiting a solution on a Darwin system, I did this very simple override:
# cat /etc/resolver/<NETBIRD DOMAIN FOR WORK>
nameserver <IP_ADDRESS>

# cat /etc/resolver/<NETBIRD DOMAIN FOR HOME>
nameserver <IP_ADDRESS>

This would be amazing to be able to do! Though it partly sounds like what  is doing.


Enhancement backup command

Add command backup
-Allows the user to create and name an xml of the current state of the investigapptor
Update developer guide and portfolio

Pull Request Test Coverage Report for Build 116

9 of 29 (31.03%) changed or added relevant lines in 6 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.6%) to 77.468%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/main/java/seedu/investigapptor/logic/parser/InvestigapptorParser.java
0
1
0.0%

src/main/java/seedu/investigapptor/model/ModelManager.java
0
2
0.0%

src/main/java/seedu/investigapptor/storage/StorageManager.java
4
8
50.0%

src/main/java/seedu/investigapptor/logic/parser/BackupCommandParser.java
0
6
0.0%

src/main/java/seedu/investigapptor/logic/commands/BackupCommand.java
0
7
0.0%

Files with Coverage Reduction
New Missed Lines
%

src/main/java/seedu/investigapptor/storage/StorageManager.java
1
81.82%

Totals

Change from base Build 112:
-0.6%

Covered Lines:
1609

Relevant Lines:
2077

💛  - Coveralls

fixes #64


Taal: The final countdown

Steps to get rid of msl/sync-taal-taam:

[x] Merge master to dev
[x] Merge dev to msl/sync-taal-taam
[x] Check that all tests are taal-confirmed and that all Taam tests have a counterpart in Taal
[ ] Verify that all Taal tests currently pass

[ ] 1D
[ ] 2D
[ ] 3D
[ ] paper-self-gravitating-gas-dynamics
[ ] special elixirs

[ ] Remove taal-confirmed from the Taal tests (they can remain in Taam for reference, since we will delete the entire files anyways)
[ ] Merge msl/sync-taal-taam to dev

From now on, most changes should probably be done in separate PRs, but need to be coordinated since they are serialized (many change the reference results of the tests). We should also consider if we bundle those changes that will modify all test references (marked as :weary:):

[ ] Apply fixes to MHD's calcflux (c6f4cf4), this will need done for 1D, 2D, and 3D
[ ] Fix calculation of c_h for MHD
[ ] :weary: Revert CFL crippling in Taal introduced in #267
[ ] :weary: Restore Taal default for analysis nodes (to be discussed if really necessary)

IIRC, @gregorgassner wanted to use the former Taal default, which is also the default in Flexi et al. (NAnalyze = 2*N).

IIRC, @gregorgassner wanted to use the former Taal default, which is also the default in Flexi et al. (NAnalyze = 2*N).

I don't care either way. But if you're also for the change, let's do it, but let's do it together with the CFL change.


A11y_GradeB_VSCode_Keyboard shortcut reads words together - Blind: Arrow key navigation to row Find the instructions to use " space or enter" to change the shortcut key is not read

GitHubTags:#A11ySev2;#A11yTCS;#A11yMAS;#DesktopApp;#Visual Studio Code Client;#WCAG3.3.2;#DesktopApp;#BM-VisualStudioCode-Win32-Nov2021;#NVDA;#Win32;#Win11;#AINotInScope;
Environment Details:
Application Name: Visual Studio Code
Version: 1.79.0-insider (user setup)
OS build 25300.1000
JAWS 2023.2303.144
Repro Steps:

Launch Visual Studio Code insiders
Navigate to settings and press enter
tab to keyboard shortcut and press enter
use down key and navigate to a row
start JAWS

Actual:
Arrow key navigation to row Find the instructions to use " space or enter" to change the shortcut key is not read
Expected:
Arrow key navigation to row Find the instructions to use " space or enter" to change the shortcut key should be read
User Impact:
screen reader users will not know how to change the keys
Attachment
Hint for screen reader would help-jaws.webm

@meganrogge Would you like to look into this and give insights or what is expected to be done?

I think this is a great use case for an accessibility.verbosity setting and aria-label hint like use space or enter to change the keybinding


Add error message for empty matcher string

Description

There should be a custom error to indicate that matcher strings must not be empty.
Either that, or allow empty matcher strings.

I think that an empty matcher string should be considered acceptable. No error message should be needed, and that an explicit parser should just pass the input through, unmodified, while producing an Ok result.


add support for Meta Programming System (MPS)

Adding support for Meta Programming System (MPS).
Meta Programming System is a open source tool from JetBrains:
https://www.jetbrains.com/mps/
Description
It is used to define custom (programming) languages and code generators
and it also used to use these languages. MPS stores the programs in its
AST form serialised to XML. MPS by default uses two file extensions:
most commonly .mps:
https://github.com/search?utf8=✓&q=extension%3Amps+persistence+&type=Code
and far less common .mpsr
https://github.com/search?utf8=✓&q=extension%3Ampsr+persistence+&type=Code
The later is used when programms are stored over mutiple files the first
is used when a complete programm is stored in a single file.
Checklist:

[ ] I am associating a language with a new file extension.

[ ] The new extension is used in hundreds of repositories on GitHub.com

Search results for each extension:

https://github.com/search?utf8=✓&type=Code&ref=searchresults&q=extension%3AFOOBAR+KEYWORDS+NOT+nothack

[ ] I have included a real-world usage sample for all extensions added in this PR:

Sample source(s):

[URL to each sample source, if applicable]

Sample license(s):

[ ] I have included a change to the heuristics to distinguish my language from others using the same extension.

[x ] I am adding a new language.

[x] The extension of the new language is used in hundreds of repositories on GitHub.com.

Search results for each extension:

https://github.com/search?utf8=✓&q=extension%3Amps+persistence+&type=Code

[x] I have included a real-world usage sample for all extensions added in this PR:

Sample source(s):

a file describing how a language in MPS should be build
a file describing the editor aspect of a language

Sample license(s): Apache 2.0 https://github.com/coolya/mps-generator-editors/blob/master/LICENSE

[ ] I have included a syntax highlighting grammar.

I did not do that since the files are xml files where a grammar already existed.

[ ] I have included a change to the heuristics to distinguish my language from others using the same extension.

I did not do that as there where no other languages associated with this extension.

[ ] I am fixing a misclassified language

[ ] I have included a new sample for the misclassified language:

Sample source(s):

[URL to each sample source, if applicable]

Sample license(s):

[ ] I have included a change to the heuristics to distinguish my language from others using the same extension.

[ ] I am changing the source of a syntax highlighting grammar

Old: https://github-lightshow.herokuapp.com/
New: https://github-lightshow.herokuapp.com/

[ ] I am adding new or changing current functionality

[ ] I have added or updated the tests for the new or changed functionality.

Flagging as stale.

There's now 329 results, larger than 100!
@pchaigno Could you please re-open this issue?

@coolya Hi! Are you interested in addressing the comments about adding an extension to XML?

Sorry for the huge delay. I some missed this back in April then entirely forgot about it. Sorry for that.
Regarding the change to XML I'm not so sure if that aligns with my intention behind this PR. My motivation behind this change was to help people to understand what the content of the repository is. I think indexing the files as XML wouldn't help there.
I would argue files from MPS are more like e.g. SVG files. While SVG files are technically XML, a user  wouldn't typically look at them in their textual/xml representation. Of course looking at these files in a text editor works and if they are small enough it's possible to make sense of the content but usually this is not what people tend to do. For MPS files this is similar, they are technically XML but in all typical use cases these files are never read by human nor edited directly.
If I take a look at the other files classified as XML, they are typically configuration files which don't make up a large part of a codebase, or XML files that also edited as XML with a text editor. In a project that uses MPS the MPS files usually take up a significant part of the code in the repository.  On the other hand ANT files are classified as dedicated language even if these files are typically edited as XML. I'm a bit puzzled how the decision is taken if it's a dedicated language or not.
I know the community around MPS is small compared to other programming languages or tools and maybe it's no relevant enough to show it as a first class language on Github and I can totally understand that.


Update php.nanorc

Added protected as a structure keyword for use in classes (along with private and public)

Looks good!


[beta][UX] Change in color for tooltip for test case and new challenge

The tooltip or or small modal window that appears with each new challenge and with each test run, has a background:black and color:white
Please consider changing to  background:yellow and color:black

@tommygebru hmmm... I was about to say that I think everything looks fine as is, but I tried it out, and I don't think it's an altogether bad suggestion. Looks nice in both modes and I think is a bit more visible:

@no-stack-dub-sack
Actually I misspoke, the color should represent Freecodecamp to the fullest and should be a recommended color
https://www.freecodecamp.com/design-style-guide/
I think this is a great choice #FF9C2A with a text of  #333333

@tommygebru I actually consulted the styleguide before testing this out. and both are recommended colors!

Should this change be made across the site or as a part of a 'high-contrast' mode as discussed in: https://github.com/freeCodeCamp/freeCodeCamp/issues/8845 ?

@dhcodes Not sure, what do you think about the current white on black? I mean, it's pretty visible, but the yellow/black does stand out a bit more

Can't get a lot more contrast than black and white! 😛
I like the yellow background for the attention grabbing, but I'm afraid it may be too much for the bigger toasts, like the reset code one.

@systimotic I agree that for now we should just leave this as is. Seems minor to me and I think the current design works ok.

@tommygebru What do you think?

I would still prefer a Primary color over Secondary for the tooltip when considering a choice that will compliment the Night Mode theme.
https://github.com/freeCodeCamp/freeCodeCamp/issues/12953
Keep in mind my example for a Night Mode refresh is to remove Freecodecamp from a monotone state and preserve a dark theme that is more engaging like the Freecodecamp Community.


Correct way to use BRPopLPush

Using BRPopLPush causes the connections to constantly timeout. What's the correct way to block indefinitely?
reading from redis: read tcp [::1]:39370-\u003e[::1]:6379: i/o timeout
It seems that the PoolTimeout controls this, but I am not entirely sure that's correct behavior.

What did you try so far? BRPopLPush("a", "b", 0) should work.

@vmihailenco By default the PoolTimeout is set to connection timeout + 1 second, so this will timeout after one second. If we change the PoolTimeout to 5 seconds, it will timeout after 5 seconds.

It does not seem to be true - https://github.com/go-redis/redis/blob/master/commands.go#L10-L15

@vmihailenco You are absolutely right. Maybe when I tried it, it I have had too many concurrent BRPopLPush, since when the open connections are more than the Pool's max they start dropping.
In any case, I am sorry for bothering you :)


[Fix #7410] Add printf as a typical format string context

The cop Style/FormatStringToken used to treat sprintf, format, and % methods as typical use cases of printf-style format strings, but ironically not the printf method itself.
This fixes #7410.

Nice catch!


Add option for time zone

Swift has issues importing different time zones

What does this mean?

Reopen when issue is clarified


Add Libre Translate instead of Google Translate for page translation

I'm always frustrated when Google Translate is collecting my data, when I translate the content of web pages in the browser.
I want to Thorium Browser to provide an option to use self-hosted LibreTranslate as a backend for pages translation in Thorium.

Thank you for your suggestion, but considering factors including practical and financial factors, we will continue to use Google Translate.

Financial factors... what? Who are you, btw?

I think they meant to add an option to use libretranslate on their own self-hosted platforms, not by the collaborators on this repo

Yes, I only asked for the addition of a setting to select the translation service.
However, the discussion from the very beginning took a direction not typical for open projects. I can't recall a single hobby project where money was mentioned in the first response to a feature request. And for the response to come from a 'partner' of the developer, whose contribution to the project is hard to trace. The developer's busyness, as well as reduced interest or communication skills, are quite common. But from collaborators who assist him at his request, it would be logical to expect more rational behavior. I mean, a rational response to a request to a hobby project is to discuss technical details. I was genuinely surprised that this did not follow.
But perhaps we can help the project's collaborators find answers to some obvious questions. About the fact that any funding for such a project will be scrutinized for user data trading and espionage. One must be very careless (or very inexperienced) collaborator to even hint at money in connection with a product that touches private data. Such discussions made me feel vulnerable from the fact that, as it turns out, the thorium project is ready to do anything for money. I would like this ticket to serve as a cautionary example for all collaborators on how to damage the reputation of a project with a single short comment.


Convert to noarch

As this is a metapackage just to select the kind of aarch64 platform that is targeted, it could be converted to noarch
This would help with situations like cross-compiling where the package is currently not installable on other architectures

@conda-forge-admin , please re-render

Closed by https://github.com/conda-forge/arm-variant-feedstock/pull/5


Update Node.js needed

Describe the request
When running Arduino lint I get the message below:
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, arduino/arduino-lint-action@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Describe the current behavior
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3, arduino/arduino-lint-action@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
'arduino/arduino-lint-action' version
arduino/arduino-lint-action@v4
Additional context
See https://github.com/RobTillaart/MAX471_RT/actions/runs/7725600945/job/21060166703
Issue checklist

[X] I searched for previous requests in the issue tracker
[X] I verified the feature was still missing when using the latest version
[X] My request contains all necessary details

Slint checking is failing.
The following actions uses Node.js version which is deprecated and will be forced to run on node20<EMAIL_ADDRESS>For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/

I don't know if it helps.
I changed from basic yml
on: [push, pull_request]
jobs:
  lint:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: arduino/arduino-lint-action@v1

to the 'complex' - I also added name - and it works.
name: arduino-lint

on: [push, pull_request]
jobs:
  lint:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: arduino/arduino-lint-action@v1

@clavisound
The name is another issue - https://github.com/arduino/arduino-lint-action/issues/11
which is indeed easy to fix.
The node.js needs a merge of PR #350 or some a subset of that, I never dived into its code.


Update README.md

Fixes two links in the readme file

Yes, thanks for that. I missed those links.

Thanks for the quick turnaround.


[SPARK-10449][SQL][WIP] Don't merge decimal types with incompatable precision or scales

From JIRA: Schema merging should only handle struct fields. But currently we also reconcile decimal precision and scale information.

Merged build triggered.

Merged build started.

Test build #42077 has started for   PR 8634 at commit 7a58ff8.

Test build #42077 has finished for   PR 8634 at commit 7a58ff8.

This patch fails Scala style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42077/
Test FAILed.

Merged build triggered.

Merged build started.

Test build #42078 has started for   PR 8634 at commit 29d640d.

Test build #42078 has finished for   PR 8634 at commit 29d640d.

This patch fails SparkR unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42078/
Test FAILed.

jenkins, retest this please.

Merged build triggered.

Merged build started.

Test build #42081 has started for   PR 8634 at commit 29d640d.

Test build #42081 has finished for   PR 8634 at commit 29d640d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42081/
Test PASSed.

Merged build triggered.

Merged build started.

Test build #42103 has started for   PR 8634 at commit ab50e2d.

Test build #42103 has finished for   PR 8634 at commit ab50e2d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42103/
Test PASSed.

Merged build finished. Test PASSed.

ping @liancheng does the updated version look OK to you?

@holdenk Sorry that I forgot to track this one... And yeah it LGTM now. Thanks for fixing this!

Merging to master.


Is allowed domain setting related to automatic picture download?

I checked automatic picture download behavior in my tenant in the following step:

Add a user to a Teams group, and the user receive the notification from<EMAIL_ADDRESS>The notification is delivered to user's Inbox, and automatic picture download is disabled.
Add the domain "email.teams.microsoft.com" to "Allowed domain" of my default spam filter.
After few hours, automatic picture download is still disabled.
When I add the sender to safe sender list, automatic picture download is enabled.

As a result, it looks like automatic picture download is disabled by default even if the domain is listed on spam filter's allowed domain. If my understanding is correct, description about automatic download in this page is really confusing and I recommend to remove it.

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

ID: 43bc0cae-682a-7227-35d6-d3c37545a3a4
Version Independent ID: fbcd00ac-8899-fb95-28aa-dfc523b81c65
Content: Add the Microsoft Teams SMTP domain as an accepted domain in Exchange Online
Content Source: Teams/SMTP-accepted-domain.md
Service: msteams
GitHub Login: @LolaJacobsen
Microsoft Alias: lolaj

@hishikitetsuya - thank you for taking the time to research and provide your results. I am not a SME in this area and I think you know much more than I do on this one. Would you be willing to open a Pull Request to add your valuable knowledge into the article? You would then get contributor credit and show up here: https://github.com/MicrosoftDocs/OfficeDocs-SkypeForBusiness/graphs/contributors
If you are willing to submit a Pull Request you can find out how to do it in the README that shows up at the bottom of the main repo here: https://github.com/MicrosoftDocs/OfficeDocs-SkypeForBusiness
If you would rather not submit a Pull Request it is very much appreciated that you submitted the information through the issue list here. I will look for a subject matter expert that can submit a Pull Request and get this merged to make the article less confusing.

Thanks for PR @hishikitetsuya and sorry for taking so long to close this out. Much appreciated!


Tank disallows insertion of concrete powder

Issue Description:
Even though tanks are supposed to be able to accept concrete powder they won't unless they already contain water.
I'm trying to automate production of concrete and I have a Refined Storage recipe that has a concrete powder and a bucket's worth of water as inputs. The crafting fails because the Tank rejects the concrete powder.
What happens:
An empty tank won't allow you to insert concrete powder.
What you expected to happen:
The concrete powder should go in the appropriate slot and just sit there until water is put into the tank, similar to how it just sits there if the tank runs out of water.
Steps to reproduce:

Place a Tank in the world
Try to put concrete powder in it.

Affected Versions (Do not use "latest"):

EnderIO: 5.2.59
EnderCore: 0.5.76
Minecraft: 1.12.2
Forge: <IP_ADDRESS>54
SpongeForge? no
Optifine? no
Single Player

Your most recent log file where the issue was present:
N/A

it requires water first before transforming into concrete

Did you even read this before closing it? How can you say it could be RS's fault when I can't even manually put in the concrete powder? RS couldn't insert it because the tank itself rejected the item.

Also I don't know what you mean by "AE2 seems pull item out of the tank even crafting them". That looks like a word salad to me.

https://youtu.be/3bzRxutebZU actually did some testing about it lol

So as I understand it, RS checks that every ingredient in a recipe is able to be put into an inventory before it actually puts anything in so that it can avoid putting in a partial recipe (doing so might cause problems with automation, I think. I know the alloy smelter at least can start making something different from what was intended if it doesn't get everything all at once). RS has no way of knowing that there's a special dance it has to do to get both the water and the concrete powder into the tank. I could prefill the tank with water but I wanted to use that tank to make lava buckets too.
I ran into a similar issue where a Slice'n'Splice didn't want to accept ingredients for a z-logic controller. I was able to work around it by having RS dump everything into a chest and having the Slice'n'Splice pull from the chest. I can't do that here because I'd need buffer inventory that can hold both the powder and the water.
To me it just seems that having the tank reject concrete powder when it's empty only creates problems.

As far as i know tanks have 3 different fluid -> item "uses" water for concrete... lava for item voiding.... and experience for mending..  does this happen for mending tools as well? will they not go into the tank if there is no exp?

Works as designed. The fluid determines which recipes it can execute. The tank is primarily a tank, the recipes are just an addon, that's why we don't lock the tank functionality to match the items.

I'm not asking for you to "lock the tank functionality". If someone puts concrete powder in the tank and then fills the tank with lava who cares? You can already do that: 1. Put a single bucket of water in 2. Put a stack of powder in (which empties the tank) 3. Pump lava in.
This idiosyncratic locking system doesn't help players in any way when it comes to the tank. It just creates incompatibilities with with mods that don't special case how they interact with Ender IO machines.


A boolean matrix alteration per gene per sample

Hello @PoisonAlien
Again, this is not an issue with maftools
How I can obtain alterations in a boolean matrix for a set of genes? I mean in a way where samples are in rows and genes in columns; in such a matrix 1 is if a given gene has altered in a given sample and 0 when there is no altercation in this gene in this sample (regardless of type of mutation)
Thank you in any case

There is an internal function which does this. You can call it with :::
> om = maftools:::createOncoMatrix(m = laml, g = c("DNMT3A", "FLT3"))
> names(om)
[1] "oncoMatrix"    "numericMatrix" "vc"

It will return a list of matrices which includes a numericMatrix element which is what you're interested in. Values are integer coded for the variant classification, and those codes are explained in vc slot.
> om$vc
                  0                   1                   2                   3
                 "" "Missense_Mutation"       "Splice_Site" "Nonsense_Mutation"
                  4                   5                   6                   7
  "Frame_Shift_Del"      "In_Frame_Ins"      "In_Frame_Del"         "Multi_Hit"

Sorry @PoisonAlien
Given a maf object, how we define the average of mutated gene per sample?
I mean for a list of genes let's say cancer drivers
I thought of creating a boolean matrix, then converting everything > 1 to 1 and finally averaging the 1s
But I am not sure if this makes sense

Can you describe this in more detail? I can't seem to understand what you mean by average of mutated gene per sample

Sorry @PoisonAlien  you alright, what I have asked was unclear
Actually yesterday I showed the boss that a list of cancer drivers are exclusively mutated in non-responders to chemotherapy using maftools compare function of two maf objects
She then asked me what is the average of mutated drivers in each group (responders and non-responders)
I hope I have understood her well and can convey the message