steam: fix proton versions with pressure-vessel

Motivation for this change
As detailed in #100655, Proton 5.13 and onward, due to the addition of pressure-vessel, stopped working on NixOS. pressure-vessel implements its own wrapping and distribution logic, and assumes an FHS-compatible environment all across its inner workings. As such, the old way we wrapped Steam was no longer enough. It's still backwards compatible, to allow older Proton to work (maybe some optimization could be done with the knowledge learned here, though). This PR's purpose is to get newer Proton working, hopefully to the same extent it works on other typical FHS distributions.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)

Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)

[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"

[ ] Tested execution of all binary files (usually in ./result/bin/)

[ ] Determined the impact on package closure size (by running nix path-info -S before and after)

[ ] Ensured that relevant documentation is up to date

[x] Fits CONTRIBUTING.md.

Tested various 64 and 32 bit games on nvidia (@LuigiPiucco) and amdgpu (@ashkitten);

Used official (5.13 and Experimental) and unofficial (GE 5.21 and GE 6.1) Proton versions;

Additional details
A key component of how pressure-vessel works is ld.so.cache. Since neither NixOS nor our Steam bwrap provided one, it failed in multiple ways to find libraries. A cache was added to the bwrapping expression, along with a change to merge share folders of 32 and 64 bit packages, preferring 64 bit for conflicting files. This was to bring things like ICDs for both architectures. Environment variables and a few libraries were added to Steam's bwrap, and so were the system's graphics drivers. To this end, the programs.steam module was complemented, to add a version of Steam with appropriate drivers to systemPackages. As such, it is best to add Steam through programs.steam.enable = true, not by making it system-wide yourself.
Possible improvements to this PR include trying to find a better way to pass the system's drivers in a way that pressure-vessel will find them, allowing steam to be added and work without activating the module, and checking documentation to see if already points to programs.steam.
Fixes #100655.
Fixes #106571.
Fixes https://github.com/NixOS/nixpkgs/issues/103547

Have been using this patches for weeks now, thanks a lot @LuigiPiucco <3

Result of nixpkgs-review pr 114024 run on x86_64-linux 1

45 packages built:

Sylk
android-studio (androidStudioPackages.stable)
androidStudioPackages.beta
androidStudioPackages.canary
androidStudioPackages.dev
anki-bin
apple-music-electron
chrysalis
deltachat-electron
devdocs-desktop
electronplayer
irccloud
joplin-desktop
keeweb
kodiPlugins.steam-launcher
ledger-live-desktop
lens
lunar-client
lutris
lutris-free
marktext
minetime
molotov
mycrypto
notable
nuclear
p3x-onenote
plexamp
protontricks
radicle-upstream
rambox-pro
runwayml
ssb-patchwork
standardnotes
station
steam
steam-run
steam-run-native
steamcmd
timeular
trezor-suite
tusk
unityhub
wootility
zettlr

This works great for me, tried Mordhau with an AMD GPU on i3 using Proton Experimental in Steam.

Result of nixpkgs-review pr 114024 run on x86_64-linux 1

45 packages built:

Sylk
android-studio (androidStudioPackages.stable)
androidStudioPackages.beta
androidStudioPackages.canary
androidStudioPackages.dev
anki-bin
apple-music-electron
chrysalis
deltachat-electron
devdocs-desktop
electronplayer
irccloud
joplin-desktop
keeweb
kodiPlugins.steam-launcher
ledger-live-desktop
lens
lunar-client
lutris
lutris-free
marktext
minetime
molotov
mycrypto
notable
nuclear
p3x-onenote
plexamp
protontricks
radicle-upstream
rambox-pro
runwayml
ssb-patchwork
standardnotes
station
steam
steam-run
steam-run-native
steamcmd
timeular
trezor-suite
tusk
unityhub
wootility
zettlr

This looks good to me, I imagine @jonringer will want a look before merge though

Works also for me. AMD GPU using Proton 5.13-6.
Thanks!

this supersedes #102178

SteamVR isn't reacting to the presence sensor or the base stations existence but that also happens when I revert the patches; I'll have to test that after the next reboot.

According to @smcv, due to being inside a bwrap container, pressure-vessel games can't rely on udev (see https://github.com/NixOS/nixpkgs/issues/100655#issuecomment-765770722), having to do things the hard way and re-implement input logic. Since the devices they test the most with are official console-style controllers, things like flight sticks, VR gear, racing sim gear etc. are more likely to face problems.

Result of nixpkgs-review pr 114024 for https://github.com/NixOS/nixpkgs/pull/114024/commits/548d50d6952de1128b5cbd535bb5f8be9b7c843c

46 packages built:
- Sylk
- android-studio
- androidStudioPackages.beta
- androidStudioPackages.canary
- androidStudioPackages.dev
- anki-bin
- apple-music-electron
- chrysalis
- deltachat-electron
- devdocs-desktop
- electronplayer
- irccloud
- joplin-desktop
- keeweb
- kodiPlugins.steam-launcher
- ledger-live-desktop
- lens
- lunar-client
- lutris
- lutris-free
- marktext
- minetime
- molotov
- mycrypto
- notable
- nuclear
- p3x-onenote
- plexamp
- protontricks
- radicle-upstream
- rambox rambox-pro
- runwayml
- ssb-patchwork
- standardnotes
- station
- steam
- steam-run
- steam-run-native
- steamcmd
- timeular
- trezor-suite
- tusk
- unityhub
- wootility
- zettlr

Works flawlessly with one exception: With the latest Proton all my games first start with the wrong size:

This did not happen before. Other than that I am super happy, everything just went super smooth.

With the latest Proton all my games first start with the wrong size

I had a similar problem, though less pervasive. I have an ultrawide monitor, and games that weren't previously configured to run on its resolution (mostly the ones I hadn't played yet) would start on regular 1080p, and Steam would lower my desktop resolution to match. After changing the settings in game, though, it went away. Have you tried that? Do the settings reset on relaunching the game or anything weird like that?

It seems to happen on every game start. Changing the resolution manually does not seem to help.

Muito obrigado Luigi!

@lovesegfault
Obrigado pelo reconhecimento, mas não vamos esquecer de @ashkitten, @moben e @smcv. Não teria chegado nem perto sem a ajuda deles.

Thank you for recognition, but let's not forget @ashkitten, @moben and @smcv. I would not even have gotten close without them.

I can't get vsync to work, could this be breaking it? @LuigiPiucco

Roll back this change and see whether that fixes it @YellowOnion

My steam games crash with DirectX errors when I try to use these changes on nixos 20.09. I've overridden steam, steam-run and steam-run-native with versions from nixpkgs-unstable. I've also added programs.steam to disabledModules and imported <nixos-unstable/nixos/modules/programs/steam.nix>.
When I launch games with the proton debug log, I see that DXVK cannot detect my graphics card. For the record, I am using an NVIDIA GTX 1080 Ti with the proprietary video driver. Some games used to run fine before I attempted to use this patch.
info:  Game: 100orange.exe^M
info:  DXVK: v1.7-8-g51531e4a7^M
info:  Built-in extension providers:^M
info:    Win32 WSI^M
info:    OpenVR^M
42486.015:00c0:00c4:trace:loaddll:load_native_dll Loaded L"C:\\windows\\system32\\openvr_api_dxvk.dll" at 0x1800000: native
warn:  OpenVR: Failed to initialize OpenVR^M
info:  Enabled instance extensions:^M
info:    VK_KHR_get_surface_capabilities2^M
info:    VK_KHR_surface^M
info:    VK_KHR_win32_surface^M
warn:  Skipping Vulkan 1.0 adapter: llvmpipe (LLVM 11.1.0, 256 bits)^M
warn:  DXVK: No adapters found. Please check your device filter settings and Vulkan setup.^M

Am I doing something wrong in my config or is there a problem with the patch?

I have not tested with 20.09 and just overriding steam and the module. I build my config from master with nix flakes. Could you try it? Maybe back porting requires special attention.
Additionally, I have not checked if this has hit the nixpkgs-unstable channel yet, maybe it just isn't applied?
Regardless, I will take a look. I expect to be able to do so today, actually.

@LuigiPiucco this reminds me, i believe when adapting your changes i forgot to add vulkan-loader to multiPkgs. i don't think that's the cause of the issue here, but smvc did say we should probably add it to be safe.

Indeed, vulkan-loader also slipped by me. I'll wait on trying to fix @starcraft66 and @YellowOnion's issues before opening a new PR, though.

I can both confirm that it has hit nixos-unstable and that as far as I
can tell things are working great.

If you're using NixOS to game, you will probably want to follow unstable. There's a lot of fixes that are hard to capture, and it's often the case that the increased frequency of patches and version bumps "accidentally" solves a lot of issues with people as upstream sources fix existing issues.

@LuigiPiucco

I have not tested with 20.09 and just overriding steam and the module. I build my config from master with nix flakes. Could you try it?

I ported my config to flakes and switched to unstable which has all of the commits in this PR merged. Games still don't run and the proton debug log once again indicates that DXVK can't find a video adapter.
My config is here: https://github.com/starcraft66/os-config

@starcraft66 does it work in unstable?

@Atemu No, I can't get it to work on unstable.

@starcraft66, I've analysed your config and nothing jumps out as a potential cause. The only thing a bit strange is that on nixpkgs-unstable, the last two commits aren't applied, but they were just documentation anyway. I'd suggest using master instead of nixpkgs-unstable in the future, though.
To try and find the problem, we need more info. First, I will shortly create a branch with vulkan-loader, maybe we luck out and that's what's missing (I don't think that's the case, but trying won't hurt). In the more likely case there's something else, I ask that you run:
# ~/steam.log may be modified to /tmp/steam.log if you prefer
PRESSURE_VESSEL_VERBOSE=1 CAPSULE_DEBUG=all steam 2>&1 | tee ~/steam.log

after completely stopping Steam, then try to start a game, wait for it to fail to the end, close steam. Post ~/steam.log in a gist or whatever is most convenient, link it here.
An additional step, if you're willing, is to modify the proton file you're using (the location varies with your version, common paths are ~/.steam/root/compatibilitytools.d/<Proton name and version>/proton and ~/.steam/root/steamapps/common/<Proton name and version>/proton) to define a function:
def print_dir_tree(rootDir):
    list_dirs = os.walk(rootDir)
    for root, dirs, files in list_dirs:
        for d in dirs:
            print(os.path.join(root, d))
        for f in files:
            print(os.path.join(root, f))

And then call it after if __name__ == "main":
print_dir_tree("/overrides")

If you do this before launching the game, it will add to the log the list of things it actually loaded.

print_dir_tree("/overrides")

You don't need this. If you do a Help -> System Information in Steam itself, it will produce JSON reports describing:

the state of the system in the LD_LIBRARY_PATH Steam Runtime (used for native Linux games by default)
the state of the system in the scout container runtime (used for native Linux games on an opt-in basis) if installed
the state of the system in the soldier container runtime (used for Proton 5.13+, and maybe future native Linux games) if installed

For the container runtimes, these include a listing of what's in /overrides.
The reports are primarily intended for Valve bug reporting, but they should be equally useful for distros. They're produced by the steam-runtime-system-info tool, which is part of the same project as pressure-vessel.

Thanks @smcv, this helps quite a lot.

I did the following hack which I think should be equivalent

I don't think it is, the steam-runtime-system-info is managed by steam and should be in ~/.steam/root/steamapps/common/SteamLinuxRuntime_soldier/pressure-vessel/bin. Run it like so:
steam-run ~/.steam/root/steamapps/common/SteamLinuxRuntime_soldier/pressure-vessel/bin/steam-runtime-system-info

From your logs, the only problem I can find is that the 32 bit nvidia ICD fails to load, which is because I think I forgot to apply the edit that created it from a previous version. But that should only matter for 32 bit games. And regardless of that, I've just noticed the same error on my machine, and 32 bit games still work.
I'm going to add the ICD tomorrow (it's late where I live). The last things we can try are looking at proton's log with WINEDEBUG=+loaddll and deleting the game's prefix in ~/.steam/root/steamapps/compatdata/<App id>. The latter helped me in the past with DXVK errors, but that was early on and with a different compatibility strategy. As a last resort, running with LD_DEBUG=all and looking at the proton log near the failure might yield some answers.

@LuigiPiucco I ran rm -rf ~/.steam/root/steamapps/compatdata/*
Here's the output of the proper steam-runtime-system-info command you posted and the steam proton debug log with Modern Warfare 2's custom launch options set to PROTON_LOG=1 WINEDEBUG=+loaddll %command%.

Also here is a link to the massive LD_DEBUG=all log.

Upon inspecting your logs and comparing to mine, plus taking a new look at your config, these are my thoughts:

The only errors I could find in the logs, other than DXVK not finding the adapter, were things like:13247:	/overrides/lib/i386-linux-gnu/vulkan_imp_layer/steamoverlayvulkanlayer.so: error: symbol lookup error: undefined symbol: vkNegotiateLoaderLayerInterfaceVersion (fatal)

But I'm not sure what this means. It says (fatal), but ld.so seems to continue its linkage. Plus, they all seem to be related to Steam's overlay, which, to my understanding, we don't have control over, other than enable/disable in Steam.
Your proton log looks very similar to mine, no apparent errors and all, it just fails in finding the adapter for some reason...
I couldn't find the following in your config:hardware.opengl.enable = true;
hardware.opengl.driSupport32Bit = true;
hardware.opengl.driSupport = true;

The first two should be enabled by programs.steam.enable = true;, but the third isn't, maybe that's an error on our part. It was like that before my edits, but I can't see a reason why it shouldn't enable both DRI options.
I think you might have tried this, but is older proton also not working? 5.0 and downward, 5.9-GE-8-ST if you want to test with GloriousEggroll's version.
Also, just as a sanity check, do vulkaninfo and steam-run vulkan-info point to anything problematic?

I couldn't find the following in your config

I actually removed those because I saw programs.steam.enable = true; enable them, or so I thought. I put them back and it made no difference.

Plus, they all seem to be related to Steam's overlay, which, to my understanding, we don't have control over, other than enable/disable in Steam.

I tried disabling my steam overlay but it didn't change anything sadly.

I think you might have tried this, but is older proton also not working? 5.0 and downward, 5.9-GE-8-ST if you want to test with GloriousEggroll's version.

I tested all the way down to Proton 5.0 previously. I just tested and was able to run Modern Warfare 2 with Proton 4.11 and under actually. Looking at the change log, I suspect this is because proton 5.0 made DXVK the default for Direct3D 9 games (which MW2 probably is seeing as it came out in 2009) and that it used WINED3D before that (the game runs in proton 5.0 with PROTON_USE_WINED3D=1 but not any later proton version).

Also, just as a sanity check, do vulkaninfo and steam-run vulkan-info point to anything problematic?

Doesn't look like it, I just ran both and diff'd the output:
❯ diff vki1.txt vki2.txt
840c840
< 		budget =<PHONE_NUMBER> (0x1c3ec0000) (7.06 GiB)
---
> 		budget =<PHONE_NUMBER> (0x1c4ac0000) (7.07 GiB)

Looking at the change log, I suspect this is because proton 5.0 made DXVK the default

In that case it's a problem with Vulkan, rather than a problem with the pressure-vessel containers. (Proton 5.0 didn't use those, they're new in 5.13.)

For the record, I have no problem using vulkan outside of pressure-vessel, here's Dota 2 running the native linux binary with the rendering engine set to vulkan.

This is a very strange issue, I'm not entirely sure how to tackle it. Doing some research, I didn't find anything pointing to the problem being game-specific, the only remark is that it's a D3D9 game, so maybe disabling newer APIs might change things? Plus, you said you tested other games as well, this probably won't help.
We could enable DXVK debug mode with DXVK_LOG_LEVEL=debug, and if that points nowhere, check with validation layers by adding vulkan-validation-layers to the Steam expression's extraLibraries and setting VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation. To do so,

Disable the programs.steam module;
Enable opengl/dri and the things the module does;
Override steam with the nvidia drivers and the validation layers;
Add the overridden steam to environment.systemPackages;
Add the above variable definition to the game command;

The missing ICD and automatic hardware.opengl.driSupport = true fixes are in my branch now, but I'll wait to open a PR, I really want to fix @starcraft66's issue. Also, it just occurred to me, did you test Proton 5.0, with DXVK, without my patches? Since the issue likely has to do with DXVK and vulkan, I'd like to make sure it really stops working because of this pull.

@LuigiPiucco I updated my input with your nixpkgs and everything is working now, I can start Modern Warfare 2, Among Us, 100% Orange Juice (all games which I tested previously and didn't run because DXVK couldn't find the video adapter). I can only assume that the 32-bit Nvidia ICD files were to blame!

I think it's safe to say that could could open a new PR to add those fixes in.

SteamVR isn't reacting to the presence sensor or the base stations existence but that also happens when I revert the patches; I'll have to test that after the next reboot.

After getting SteamVR to work with the Index, it does indeed work; hooray!

Wow, I wasn't expecting that, that's great. I just created the PR. #114884

When will this be available in unstable?

When will this be available in unstable?

Should already be there: https://nixpk.gs/pr-tracker.html?pr=114024

@jasonodoom should already be available https://status.nixos.org/
nix-channel --update
sudo !!
nixos-rebuild switch

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/steam-doesnt-detect-nvidia-graphics-device-after-update/11957/2

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/build-a-yocto-rootfs-inside-nix/2643/23

Few issues I've noticed:

System tray is broken, for example Rockstar  and EGS launcher the tray icons shows up in it's own window.
mouse cursor is default x cursor and not my gnome-shell one.
copy and paste does not work.

These sound like Steam on Xwayland or WINE issues, not NixOS issues. I would try reproducing them another GNOME distro or X11. In any case, I'm pretty sure they're unrelated to pressure-vessel and NixOS, but please create another issue if you think it's due to NixOS to avoid pinging everyone in this thread.

System tray issue is WINE related behaviour; It has behaved like that as far back as I remember on GNOME @YellowOnion.

Actually, I am using i3 + lxqt (not gnome), and the system tray icon is broken for me too. It just happened after an update without any changes on my part.

Might be related:
I'm on i3 no DE and my steam tray icon is broken too when launching from rofi. If I launch from my terminal steam the icon shows up fine.
Clicking on the steam icon is still unthemed x11 look but IDK if it was ever different, I've not done that too often so I dont remember.

Might be related:
I'm on i3 no DE and my steam tray icon is broken too when launching from rofi. If I launch from my terminal steam the icon shows up fine. It worked fine before
Clicking on the steam icon is still unthemed x11 look but IDK if it was ever different, I've not done that too often so I dont remember.

I do not think its related, steam icon is broken for a long time (check https://github.com/NixOS/nixpkgs/issues/87774).
I also use rofi here but with awesomewm, no icon launched by rofi or terminal.
Not sure about other launchers like Rockstar one, but like @hpfr said, its better to create a issue and map it from there.


Fix/country map interactions

Calculation data was not being used on the country map. The map was not showing the real difference between absolute values and per capita or per GDP.
We need to import all the countries wb_extra data to be able to show them with the calculations  in the map.

[x] Create a WB data index endpoint
[x] Update the provider to parse all the countries data
[x] Update calculation for all the countries in the map selector

⚠  I've found a bug!
The map is not being coloured in the first load when the metric is the absolute value, could you please review it?


Feature request: ability to remove submissions from admin

@johanandre Would the data be deleted entirely or would you say some kind of 'archive' would make more sense? I assume if the latter that the archive would only be accessible on an admin account, not a client account.

@MartyWallace That sounds terrific!

Hi @johanandre, I've added the ability to delete form submissions in 1.2.0.


Directly cancel build if there is only one

Can't "promise" anything.

Released in 1.0.1

:heart:


AttributeBonus does not respect Leveled advantages

Levels are not taken into account when attribute bonuses are updating attributes.

I will try to resolve this in an appropriate manner

Solved by commit 07f707ddf3cecc53c79a0a44cba82eb0113c0010.
This assumes all attribute bonuses of leveled advantages are themselves leveled


Make emitted event kebab-case, to support using in-DOM templates

HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates.
We should use "row-click" instead of "rowClick".
vuejs/vue#5186 (comment)

I am now emitting both row-click and rowClick

Thanks!

Excuse me.. what does "in-DOM template" mean?


NIFI-1682 Adding RollingWindowOperation processor

Hey @pvillard31, thanks for the feedback. I believe I've addressed all the comments. For the exception handling I created another relationship. The set state fail relationship will typically be routed back to be retried while the "failure" would be routed off.
I also adjusted the "get" state failures to match UpdateAttribute (it is put back on the queue). This is done because any problems with getting the state are framework related and "punishing" the FlowFile for framework problems is counterproductive.

@JPercivall - needs rebasing again. :-(

Hey @trixpan, sorry for the delay but I just rebased it again.

I'm a 👍, will merge @JPercivall


run update axonivy next before building & manual package lock fix

... as we do it in other repos

same problem as here https://github.com/axonivy/form-editor-client/pull/60


[CSL-2303] Add debug logging when computing balance

See https://github.com/input-output-hk/cardano-sl/pull/2542 for the companion PR.
I have tried to keep logging at minimum before going off the tangent, and to avoid expensive logging. There is certainly a trade-off here to be made.

Otherwise looks fine and we should squash down to one patch as in PR #2542

This is stale, as the purpose it was created for is now moot.


Version 2.0.1

As I believe we are working on a fix for the issues with the 11.0.0 SDK (rx incompatibility) I am going to hold this a day or two.  If no update comes I will release this on top of 11.0.0.

@samtstern SGTM!

Ok travis has an error with the SDK license but given that the build passed before I updated to 11.0.1 and everything passes locally I am going to merge this over Travis' objections.
Never liked that Travis guy anyway.

Never liked that Travis guy anyway.

😆
Seriously though, same. I got so frustrated trying to get Travis happy with the preview build tools a while back that I said "Screw it!" and spent a day figuring out how to take control of my dependencies. Might as well get that going for FirebaseUI so I made #756.


Python interpreter list showing each python.org install twice

Environment data

VS Code version: 1.52.1
Extension version (available under the Extensions sidebar): v2021.1.502429796
OS and version: macOS 11.2
Python version (& distribution if applicable, e.g. Anaconda): Lots

Expected behaviour
The environment selection window will show my python versions (all from the default macOS installer at Python.org) each once only
Actual behaviour
Each version is shown twice:

Those two 3.8 interpreters are symlinks to the same file:
 ls -lah /Library/Frameworks/Python.framework/Versions/3.8/bin/python3
lrwxr-xr-x  1 root  admin     9B  5 May  2020 /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 -> python3.8

ls -lah /usr/local/bin/python3.8
lrwxr-xr-x  1 root  wheel    71B  5 May  2020 /usr/local/bin/python3.8 -> ../../../Library/Frameworks/Python.framework/Versions/3.8/bin/python3.8

These symlinks are default for the python.org installer for macOS.
Logs

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

Error 2021-02-03 11:26:44: Failed to get interpreter information for '/usr/local/bin/python3-32' [Error: Command failed: "/usr/local/bin/python3-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
/bin/sh: /usr/local/bin/python3-32: Bad CPU type in executable

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: 126,
  signal: null,
  cmd: '"/usr/local/bin/python3-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/usr/local/bin/python2-32' [Error: Command failed: "/usr/local/bin/python2-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
/bin/sh: /usr/local/bin/python2-32: Bad CPU type in executable

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: 126,
  signal: null,
  cmd: '"/usr/local/bin/python2-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/usr/local/bin/python3-32' [Error: Command failed: "/usr/local/bin/python3-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
/bin/sh: /usr/local/bin/python3-32: Bad CPU type in executable

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: 126,
  signal: null,
  cmd: '"/usr/local/bin/python3-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/usr/local/bin/python2-32' [Error: Command failed: "/usr/local/bin/python2-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
/bin/sh: /usr/local/bin/python2-32: Bad CPU type in executable

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: 126,
  signal: null,
  cmd: '"/usr/local/bin/python2-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/Library/Frameworks/Python.framework/Versions/2.7/bin/python2-32' [Error: Command failed: "/Library/Frameworks/Python.framework/Versions/2.7/bin/python2-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
/bin/sh: /Library/Frameworks/Python.framework/Versions/2.7/bin/python2-32: Bad CPU type in executable

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: 126,
  signal: null,
  cmd: '"/Library/Frameworks/Python.framework/Versions/2.7/bin/python2-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/Library/Frameworks/Python.framework/Versions/3.5/bin/python3-32' [Error: Command failed: "/Library/Frameworks/Python.framework/Versions/3.5/bin/python3-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
/bin/sh: /Library/Frameworks/Python.framework/Versions/3.5/bin/python3-32: Bad CPU type in executable

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: 126,
  signal: null,
  cmd: '"/Library/Frameworks/Python.framework/Versions/3.5/bin/python3-32" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/Library/Frameworks/Python.framework/Versions/3.5/bin/python3' [Error: Command failed: "/Library/Frameworks/Python.framework/Versions/3.5/bin/python3" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
dyld: Library not loaded: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
  Referenced from: /Library/Frameworks/Python.framework/Versions/3.5/Resources/Python.app/Contents/MacOS/Python
  Reason: image not found

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: null,
  signal: 'SIGABRT',
  cmd: '"/Library/Frameworks/Python.framework/Versions/3.5/bin/python3" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5' [Error: Command failed: "/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
dyld: Library not loaded: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
  Referenced from: /Library/Frameworks/Python.framework/Versions/3.5/Resources/Python.app/Contents/MacOS/Python
  Reason: image not found

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: null,
  signal: 'SIGABRT',
  cmd: '"/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/usr/local/bin/python3.5' [Error: Command failed: "/usr/local/bin/python3.5" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
dyld: Library not loaded: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
  Referenced from: /Library/Frameworks/Python.framework/Versions/3.5/Resources/Python.app/Contents/MacOS/Python
  Reason: image not found

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Process.ChildProcess._handle.onexit (internal/child_process.js:283:5)] {
  killed: false,
  code: null,
  signal: 'SIGABRT',
  cmd: '"/usr/local/bin/python3.5" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Error 2021-02-03 11:26:44: Failed to get interpreter information for '/usr/local/bin/python3.5' [Error: Command failed: "/usr/local/bin/python3.5" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"
dyld: Library not loaded: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
  Referenced from: /Library/Frameworks/Python.framework/Versions/3.5/Resources/Python.app/Contents/MacOS/Python
  Reason: image not found

	at ChildProcess.exithandler (child_process.js:304:12)
	at ChildProcess.emit (events.js:223:5)
	at maybeClose (internal/child_process.js:1021:16)
	at Socket.<anonymous> (internal/child_process.js:430:11)
	at Socket.emit (events.js:223:5)
	at Pipe.<anonymous> (net.js:664:12)] {
  killed: false,
  code: null,
  signal: 'SIGABRT',
  cmd: '"/usr/local/bin/python3.5" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/pyvsc-run-isolated.py" "/Users/anthonyshaw/.vscode/extensions/ms-python.python-2021.1.502429796/pythonFiles/interpreterInfo.py"'
}
Starting Pylance language server.
Python interpreter path: /Library/Frameworks/Python.framework/Versions/3.9/bin/python3
> conda --version

Thank you for reporting this @tonybaloney!
We're reworking how we discover interpreters in the extension (#12020), and so far I can't repro this while using our shiny new algorithm:
ls -lah /usr/local/bin/python3.9
lrwxr-xr-x  1 root  wheel    71B  3 Feb 15:22 /usr/local/bin/python3.9 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9

We'll just have to make sure it stays that way once we roll it out 🙂

@kimadeline thanks for the quick response.
I've just enabled the pythonDiscoveryModule from the experimental features in the weekly build, it does resolve this bug.. however it does show each interpreter twice still (for a different reason).
It's showing both the relative and absolute paths to the same interpreters

Huh, that I couldn't repro though. What happens if you enable both pythonDiscoveryModule and pythonDiscoveryModuleWithoutWatcher experiments?

here's my global settings:
{
    "window.zoomLevel": 1,
    "git.autofetch": true,
    "C_Cpp.updateChannel": "Insiders",

    "scm.alwaysShowActions": true,
    "scm.alwaysShowRepositories": true,

    "python.analysis.memory.keepLibraryAst": true,
    "python.linting.banditEnabled": true,
    "python.linting.banditPath": "/Library/Frameworks/Python.framework/Versions/2.7/bin/bandit",
    "python.languageServer": "Pylance",
    "python.analysis.typeCheckingMode": "basic",
    "python.experiments.optInto": [
        "pythonDiscoveryModule"
    ],
    "python.insidersChannel": "weekly",
    "python.pythonPath": "/Library/Frameworks/Python.framework/Versions/3.9/bin/python3",

    "workbench.colorTheme": "Material Theme Lighter",
    "workbench.startupEditor": "readme",
    "materialTheme.accent": "Cyan",

    "terminal.external.osxExec": "iTerm.app",
    "terminal.integrated.fontFamily": "MesloLGS NF",
    "terminal.integrated.rendererType": "canvas",

    "editor.fontFamily": "Anonymice Nerd Font Mono",
    "editor.fontSize": 14,

    "window.dialogStyle": "custom",
    "window.titleBarStyle": "native",
    "window.nativeTabs": true,
    "cmake.configureOnOpen": true,
    "git.confirmSync": false,
    "files.associations": {
        "*.asm": "masm",
        "*.S": "asm"
    },
    "codeQL.telemetry.enableTelemetry": false,
    "testMate.cpp.log.logSentry": "enable",
}

Can you try adding pythonDiscoveryModuleWithoutWatcher in the  "python.experiments.optInto" array?

Hi @tonybaloney, does this problem still happen with the latest Insiders build of the extension?

this is what I get for the latest insiders build

I just tried the "pythonDiscoveryModuleWithoutWatcher" experiment, but it highlighted it as an invalid option

Ah yes, sorry, we removed pythonDiscoveryModuleWithoutWatcher recently.
It seems that you're also seeing #15312, with one of the duplicate paths shown being one relative to your home folder (../../../Library/Frameworks/blah), and the other one being the absolute one (/Library/Frameworks/blah). Maybe fixing #15312 will fix this as well, if not, we'll have to dig a little bit deeper.
Thank you for the update!

@tonybaloney We just released a fix for https://github.com/microsoft/vscode-python/issues/15312 in the insiders build of the extension that should solve this when in pythonDiscoveryModule experiment.


Add directory-related shims

This PR adds support for mkdir, rmdir, opendir, closedir, and readdir64_r.
Open directory streams are tracked through a HashMap indexed by pointer locations, which holds directory iterators. Since DIR is an opaque type in glibc, I represent them with 1-byte allocations, and then just use their pointers in HashMap lookups.
Tests are included to exercise the new functionality.

:umbrella: The latest upstream changes (presumably #1159) made this pull request unmergeable. Please resolve the merge conflicts.

:umbrella: The latest upstream changes (presumably #1158) made this pull request unmergeable. Please resolve the merge conflicts.

:umbrella: The latest upstream changes (presumably #1156) made this pull request unmergeable. Please resolve the merge conflicts.

Rebase is good to go

:umbrella: The latest upstream changes (presumably #1167) made this pull request unmergeable. Please resolve the merge conflicts.

This looks great overall, we are in the nitpicking phase now. :)

Awesome, thanks a lot for all of this. :) @bors r+

:pushpin: Commit df59d7ff749a685d6259271be9c0d6466b347f2f has been approved by RalfJung

:hourglass: Testing commit df59d7ff749a685d6259271be9c0d6466b347f2f with merge 5a8c1943e94ce8bf5ed28a4aee7f9a07b8a0e123...

:broken_heart: Test failed - status-appveyor

@bors r+

:pushpin: Commit 62f9f4c578ab2780468ac3a25fe46d0d9a1c8146 has been approved by RalfJung

:hourglass: Testing commit 62f9f4c578ab2780468ac3a25fe46d0d9a1c8146 with merge c0934e1eca0e1333a433588c82ad21cc00fea777...

:sunny: Test successful - checks-travis, status-appveyor
Approved by: RalfJung
Pushing c0934e1eca0e1333a433588c82ad21cc00fea777 to master...


Add serge-rs as a contributor to VPR

@tangxifan, @vaughnbetz,   @serge-rs is trying to open a PR to the openfpga feature branch for VPR for a bug fix in VPR
https://github.com/verilog-to-routing/vtr-verilog-to-routing/tree/openfpga
He has no contributor's right. Can you add him to the list of developers?
Thanks
Alain

I've sent an invite to the vtr committers group to @serge-rs .  Once he accepts he should have full rights.

@vaughnbetz Thanks for the help!


Release v1.2.5

Bugfixes:

use new version of @stellar/frontend-helpers and include env-config.js in index.html

Preview is available here:http://stellar-demo-wallet-pr244.previews.kube001.services.stellar-ops.com/


[Sechub Client] Hints on misspelled words in the configuration

Problem
With more and more scan types and tools added the configuration, becomes slightly more complex. A configuration like this:
{
  "apiVersion" : "1.0",
  "data" : {
    "sources" : [ {
      "name" : "code",
      "fileSystem" : {
        "folders" : [ "myProject/source" ]
      }
    } ]
  },
  "licenseScan" : {
    "use" : [ "code"]
  }
}

contains several words which can be misspelled by accident. Words with potential of getting misspelled are "sources", "apiVersion", "fileSystem", "folders", "licenseScan" and "use". For example, a user wrote "source" without an s or flesystem without an i and a lower case s in the configuration.
One single misspelled word will lead to errors from the server. The server parses the configuration and is very strict, as it should be.
Solution
Instead of making the server more forgiving or less strict, the client should help the user to create a well-formed  configuration file. The client should point out mistakes and provide hints to the user. For example, let's assume the user  forgets to write an s at the end and writes instead source. The client should tell user that something is wrong and what the user could have meant.
For example, Unknown element source. Did you mean sources?.
This could be achieved is, by having a list of all allowed key words (or a JSON schema) and calculating to which keyword the misspelled word of the user is most closely related. It might be possible to calculate the edit distance of the keyword and misspelled word. The most famous edit distance is probably the Levenshtein distance.

I won't step into the complex area of spell correction.
But we could add functionality to the client like generating an initial sechub.json.
I can imagine that this could be helpful.

To help with the generation of an initial sechub.json is a good idea. However, one should create a separate issue for that.
Regarding the issue, I did not mean to really do spell checking like a word processor does.
My idea is, create a JSON Schema of our config file. Once we have a JSON Schema, we can validate the config file from the user against the schema before the user sends it to the server.
There are several tools written in Go which can do that: https://json-schema.org/implementations.html#validator-go.
For many keys in the config file there is only one way to write them or in case of enums only a very limited amount of possibilities. Let's assume somebody writes source instead of sources, a custom validator could check, whether source is closer to sources or binaries (e.g. using edit distance), the only two possible options. The validator can tell the user, that source should probably be sources.
Something like:
L34: You wrote `source` instead of `sources`. Did you mean `sources`?

In summary, the main value would come from having a JSON Schema of the SecHub config for the SecHub Client to validate against, that can prevent most errors before sending it to the client.
In addition, it would be nice to provide additional support in the error messages to the user. Basically, to help the user to figure out issues in the config even faster.


Issues with parameter entities;

xmlint --valid Document.xml passes the following dtd/xml combo which use parameter entities.
Whereas: raku -M  LibXML::Document -e'LibXML::Document.parse(:file<Document.xml>).validate'
Fails with:
validity error : Element Document content does not follow the DTD, expecting (P | H1 | H2)*, got (H1 P H3 )
validity error : No declaration for element P
  in block <unit> at -e line 1

The Raku LibXML bindings don't seem to be doing the same parameterization as xmllint.
Furthermore it seems a but confused in that it expects the external DtD tree structure, but objects to 'P' as an element.
Investigation needed.
Document.dtd:
<!ENTITY % Document-Elements-Extra "">
<!ELEMENT Document (P|H1|H2 %Document-Elements-Extra;)*>
<!ELEMENT P (#PCDATA)>
<!ELEMENT H1 (#PCDATA)>
<!ELEMENT H2 (#PCDATA)>

Document.xml
<!DOCTYPE Document SYSTEM "Document.dtd" [
    <!ATTLIST P type CDATA #IMPLIED>
    <!ELEMENT H3 (#PCDATA)>
    <!ENTITY % Document-Elements-Extra "|H3">
]>
<Document>

Level 1 Header

This is a test of DtD parameter entities

Level 3 Header

</Document>

Perl's XML::LibXML handles this without any errors.
use XML::LibXML;
my $parser = XML::LibXML->new;
my $doc    = $parser->parse_file("Document.xml");
$doc->validate;

So it does seem to be a problem with the Raku port.

Notices a different in that Perl has both internalSubset anmd externalSubset defined. Whereas Raku doesn't have an external subset.
Perl:
use XML::LibXML;
my $parser = XML::LibXML->new;
my $doc    = $parser->parse_file("Document.xml");
print defined($doc->internalSubset) . "\n";   # 1
print defined($doc->externalSubset) . "\n";  # 1

Raku:
use LibXML::Document;

my LibXML::Document $doc .= parse: :file<Document.xml>;
say $doc.internalSubset.defined;   # True
say $doc.externalSubset.defined;  # False

It seems to be a difference in options.
raku -M LibXML::Document -e'LibXML::Document.parse(:file<Document.xml>, :dtd).validate'
does work and load both the internal and external subsets.

Actually Perl XML::LibXML version  matters. I was running the Debian installed 2.0134.
When run against the latest, behaviour is the same. Automatic loading of DtDs has been disabled there as well for security reasons.
Sorry, overthinking this. No real problem.


I would like to add 2 of my projects to index.md

Project name
index.md
Improvements suggested

Would like to add age calculator and form validation to index.md.

Pls assign me this under lgmsoc


Code is always being instrumented

Code is always being instrumented for code coverage, regardless of whether we are building for test.

@nwmac Can you confirm if this needs QA validation?

@sowmyav27 no QA required :)


Boolean question type support for pretty checkbox widget

Added support for:

boolean question type
multiple pretty checkbox states based on css classes in widget.settings

Any good?

Sorry for delay. We worked on the editor usability improvements and missed this. We'll defenitely take a look.

Thanks!


Add ExtractTarStreamFromTarReader

This PR has two commits:

fix unbuffered channel and allow detection of expired timer in goroutine

resolves an issue whereby a goroutine would hang/leak if a timer expired (and also checks within the goroutine to see if the timer has expired according to reccomended practice)

add a function ExtractTarStreamFromTarReader which is just like ExtractTarStreamWithLogging but accepts a tar.Reader-like object.  This is a prereq for cleanup in origin/pkg/bootstrap which should use this code.

[test]

LGTM
[test] failure is a yum mirror issue

[merge]


How to manually install terraform-lsp

Can you document the way to manually install terraform-lsp so the extension won't try to download it?
My scenario:
We are creating linux servers in an isolated environment that do not have access to the internet.  We are using the VSCode SSH Remote feature to connect to those servers and we are editing terraform project there.
We can preinstall terraform-lsp there and configure VSCode to find it.  I downloaded terraform-lsp and installed it to /usr/local/bin/.
I set this configuration:
"terraform.languageServer": {
    "pathToBinary": "/usr/local/bin/terraform-lsp",
    "enabled": true,
    "args": []
},

But, when I start a project, it still asks to download terraform-lsp
Would you like to install Terraform Language Server from juliosueiras/terraform-lsp?
This provides experimental Terraform 0.12 support
I cancel and eventually I get this error message:
Failed starting language server. Error: HttpError: request to https://api.github.com/repos/juliosueiras/terraform-lsp/releases failed, reason: connect ETIMEDOUT <IP_ADDRESS>:80
Is there anything else in the configuration I should do?  Or maybe a place to put the terraform-lsp binary?  Note, since we are pre-building images for the SSH server, it needs to be somewhere that all users can access.
Finally, the Remote SSH extension has a way to download extensions from the computer running VSCode and then transfer the extension through the SSH session to install it there.  I don't know if this is supplied in a way that other extensions can use, but that would be a great solution for all of this.

I too am getting this issue. I have the language server installed with my system package manager, so there's no need for the extension to install it.
Maybe a flag to stop the extension controlling it altogether is the ideal implementation? terraform.languageServer.useSystem: true or alike?

My workaround at present : check out the source tree for terraform-lsp, build it, and place a softlink to the binary in the extension folder. I'm doing this because I'm fixing bugs in it as and when I can (I have what I would guess is some fairly complex code with lots of constructed maps and local vars and the LSP crashing has been quite frequent.)

We just released v2.0.0-rc.1 of the extension. The main features include:

Added syntax support for 0.12
Added terraform-ls usage by default (currently on 0.3.0, which offers basic provider code completion)

You can find additional information and specifics in the release notes and CHANGELOG.
With this release we expect that many of the prior issues and PRs are no longer relevant or have been addressed, and are therefore being closed. If you feel the action taken on an issue or PR is in error, please comment as such and we can figure out the appropriate way to address it.
We plan to add the final 2.0.0 release to the marketplace soon, but are actively seeking your feedback now on the release candidates. You can download the .vsix from the releases page and manually install it in VS Code to try it out.


Add support for MySQL.

Will not implement unless there is an outcry. SQLlite is out database of choice since it is zero-configuration.


Dockerfile.guardian-ui builds static assets at runtime

This is memory intensive. Failed on $6 digital ocean server. Eventually just embed the build/ directory when we create the container. This line:
CMD if [ ! -z "$REACT_APP_FM_CONFIG_API" ]; then yarn build;fi && serve -s apps/guardian-ui/build/

This was fixed by #72 (and #74 fixes some issues with #72)


Rejected documentation edit pull request

Describe the bug
I tried to submit a very small pull request to improve the documentation. But got a very long CI/CD error mentioning a circular dependency. That does not seem reasonable given the small change I made.
The original commit changing the documentation
https://github.com/sveltejs/kit/commit/015b12fd83edc68178251db95d24f34449702d47
The Pull Request workflow
https://github.com/sveltejs/kit/actions/runs/2198644618
I can't see where I might have done something wrong, but if so, please let me know and forgive me for creating an issue.
Reproduction
See the above links.
Logs
No response
System Info
Not relevant

Severity
blocking an upgrade
Additional Information
No response

You just ran into a flaky test. There's an issue already for the specific test that failed for you at #4681 - the logs linked to in that issue are in fact the very run where you ran into this.


Deployment.md in yeoman generator for basic bot is missing 'services'

Sample information

Sample type: \generators\
Sample language: JS and TS
Sample name: 13.basic-bot

Describe the bug
The deployment.md instructions for basic-bot should read
msbot clone ***services*** ...

Right now it just has msbot clone followed by the arguments and that's incorrect.
[bug]

this is fixed in the 4.0.10 release of gnerator-botbuilder


It doesn't update Storyboard in Xcode 12.3

The LayoutHelper is working, but the changes doesn't appear in a Storyboard after select a different device. I added changes for iPhone SE and iPhone 8 Plus for example

Thanks for informing @elanovasconcelos .  Can you share more info for me to debug?

Closing the issue due to no response.


Cannot GET /favicon.ico

Good morning my friends
I implemented this project in
https://acid-express-labs-ts.herokuapp.com/
But we see that the file "/favicon.ico" is not loaded
I even put a file in "src/public/favicon.ico"
But when building the project we see in "dist/public" the absence of this file
Thank you in advance if you can help

I edited the "copyStaticAssets.ts" file and added
shell.cp("-R", "src/public/favicon.ico", "dist/public/favicon.ico");
and it worked

just clarification. This project has no its own favicon.ico in the assets. One needs to adds it to the assets thx!


Patch 1

Add users using trait. Can be used in front end user(s) can be selected before uploading them.

What is this for? This looks like it's simply a copy of the Import console command with some things modified.
I don't think there is a need for this, as you can use the Import command for importing users and extend it with your own custom command for further functionality.
There's also no tests in this, so I can't merge this in.


Versioning for powershell host service app?

The <IP_ADDRESS> versions are applicable only upon Dev Builds; on the builds spit out by AppVeyor, they should match the build numbers there.  Is that what is expected, @EricMSFT ?

Although, File Description, we'll want to update that to something more human-friendly :)

Oh sounds good to me, as long as official build number is fine.
And I agree that it'd good to have human-friendly description.


Adding code owners for respective metrics workbooks

PR Checklist

[ ] Explain your changes, so people looking at the PR know what and why, the code changes are the how.
[ ] if updating templates, it is helpful to post a screenshot of what the changes look like.
[ ] if updating templates, ensure that your parameters and steps have meaningful names.
[ ] if adding new templates, or changing items in a gallery, it's helpful to post a screenshot of what the gallery looks like now

@gardnerjr Please help with approval for addition of RP specific owners within Network Insights templates.

@sayghosh i don't think this will work as is.  the rules for CODEOWNERS (see here)

Order is important; the last matching pattern takes the most precedence.

i think you'll want to flip the order of your changes, and you'll want to copy the owners from the previous line to the new lines and add the new people?  otherwise, the new paths only include that one user and our team.  the new paths should include all the relevant people who can approve.

to verify your changes, the simplest way is this:
https://www.npmjs.com/package/codeowners
install that npm package, then go into the workbooks/network insights folder and do codeowners audit and it will tell you who is codeowner on each file.

@gardnerjr Changed the order and added initial owners as well to the two new code paths.

FYI though, you should really be filling in the PR description with some information about what/why, like the checklist says you should.


REF: remove split

Should we remove split? We could get similar results with
map(lambda x: x, zip(s0, s1), input_info={0: ((), 0)})

Or at the very least make split take in a positional argument about which chunk to take.


Replace fabs call in C++ implementation.

Slight performance improvement by negating a value that is known to be
negative instead of calling fabs().
Copied from #150.

Hey Doug, I think we need to use the latest version of Bazel in Travis-CI. Is that an easy configuration option?

The Bazel version is downloaded and defined in .travel.yml. Currently it's on 0.5.3 so yeah it probably needs updating. I'm trying to update the Baze and closure rules versions in #173 but I'm having trouble getting it green.

I think you can try syncing this branch and picking up the #173 changes - the build should work (hopefully!).

Thanks, it works now!


build: add BUILDER=podman

Fixes: #1062

Codecov Report

Merging #1153 (d6cc809) into main (a7ed0a0) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #1153   +/-   ##
=======================================
  Coverage   52.96%   52.96%
=======================================
  Files          40       40
  Lines        4358     4358
=======================================
  Hits         2308     2308
  Misses       1923     1923
  Partials      127      127

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

@mythi should we also update CI jobs to use this builder?

@mythi should we also update CI jobs to use this builder?

I thought about but did not want to explode the build matrix from 2 x N to 3 x N :-) Do you think we should add it?

Probably not :) Currently CI job is the slowest one. We need to speed it up before introducing new things that may slow it down even more.
However, we need to test all builders anyway. Can you create an issue about this?

However, we need to test all builders anyway. Can you create an issue about this?

done (#1154)


.github/workflows: docker build publish on anything with a version v

Came as a suggestion from @MSevey

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

Project coverage is 46.51%. Comparing base (2469e7a) to head (8be5e26).
Report is 316 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3787      +/-   ##
==========================================
+ Coverage   44.83%   46.51%   +1.67%
==========================================
  Files         265      314      +49
  Lines       14620    17999    +3379
==========================================
+ Hits         6555     8372    +1817
- Misses       7313     8610    +1297
- Partials      752     1017     +265

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


suggested Adjustment to first test case

Language
C#
Challenge
Planet Express #243

I thought the first test case input would make more sense as an empty list instead of a list with a placeholder inside. If I were an intergalactic dispatcher and I didn't have any deliveries scheduled yet, I think I would just have an empty list. When I did want to schedule one, I wouldn't want to have to delete the placeholder entry before I added my first delivery to the schedule.

Agreed. I was wondering if this wouldn't be the better way to handle when I was going over the solution last night.


chore: fix link to PyPI

Fix linked to a specific project in project/docs/source/installation.md.jinja

@all-contributors please add @34j for code


SSG: performance with large page amount

The problem
HTML payloads of static pages grow linearly with the number of them. This is already evident in the 03_demo example. Each pokemon has an entry in __WAKU_ROUTER_PREFETCH__ that points to the identical component. The /SHOULD_SKIP entry also grows. With a larger number of pages, the build breaks due to memory issues (or node simply not being able to JSON.stringify the build config in https://github.com/dai-shi/waku/blob/6550a0d26e7830527c767fcda8eb906aeb0f1266/packages/waku/src/lib/builder/build.ts#L692).
Solutions

I switched router prefetching to a pattern instead of path-based model. That way each static page needs only one entry. Not one for each static path.
The shouldSkipObj (https://github.com/dai-shi/waku/blob/6550a0d26e7830527c767fcda8eb906aeb0f1266/packages/waku/src/router/define-router.ts#L96) grows with each page entry. To be completely honest, I don't know enough about the rendering process to judge if each page would need skip lists for each other page component. But that growth during rendering felt weird, so i just moved the object one scope level down to reset it for each page. It's a complete shot in the dark, but it did hit something.

Notes

The ssg-performance fixture renders 10k pages in about a minute on my M1. Before it would just break.
The build config serialization might still break at some threshold, due to JSON.stringify limits.

The problem

Nice catch. I didn't know the exact problem, but I felt like the approach had some limits.
I haven't looked into the code, I will later. You know how CIs are failing?
Having a test is great, because eventually we would like to revisit shouldSkip mechanism.

You know how CIs are failing?

Playwright browsers fail to install there:
E: The repository 'https://packages.microsoft.com/ubuntu/22.04/prod jammy InRelease' is no longer signed.

Having a test is great, because eventually we would like to revisit shouldSkip mechanism.

Absolutely. The change was more based on gut feeling rather than confident understanding.
I traced down the use of /SHOULD_SKIP into getSkipList ...
https://github.com/dai-shi/waku/blob/6550a0d26e7830527c767fcda8eb906aeb0f1266/packages/waku/src/router/client.ts#L213-L242

... which filters components of the current route path during fetching and pre-fetching of RSC payloads ...
https://github.com/dai-shi/waku/blob/6550a0d26e7830527c767fcda8eb906aeb0f1266/packages/waku/src/router/client.ts#L281-L297
https://github.com/dai-shi/waku/blob/6550a0d26e7830527c767fcda8eb906aeb0f1266/packages/waku/src/router/client.ts#L325-L332
I did not see how components of other routes could have an effect here, but I might be missing something. If you can help me to understand what it is actually supposed to do, I would be able to implement a test.

If you can help me to understand what it is actually supposed to do, I would be able to implement a test.

The current design is the client side doesn't (shouldn't) know about the server-side route configs. What the client knows is if it should skip certain route (or maybe tell what it has in its cache to the server, and the server decides what to respond).
But, e2e tests shouldn't depend on implementation details and what should be tested is route: 'static' and route: 'dynamic' behavior.
I really wish to refactor the internal mechanism. Hopefully some time soonish.

But, e2e tests shouldn't depend on implementation details and what should be tested is route: 'static' and route: 'dynamic' behavior.

You mean render: 'static' and render: 'dynamic'? This is covered by a lot of integration tests already, no?

You mean render: 'static' and render: 'dynamic'?

You are right. My bad.

This is covered by a lot of integration tests already, no?

I don't remember if we have such tests that they ensure static pages are really "static". I don't think so.

I found another issue: While generating the build config, all routes are rendered for collecting modules for prefetching:
https://github.com/dai-shi/waku/blob/6550a0d26e7830527c767fcda8eb906aeb0f1266/packages/waku/src/router/define-router.ts#L155-L163
This runs sequentially and currently blocks parallel rendering of pages. Thats probably not the best solution, since rendering all static instances of the same route to collect modules feels wrong, but fixing that would be a bigger endeavour. Parallelizing at least makes things work for now. Data requests should implement good caching though, since they run 3 times per page.

@dai-shi : Is that what you had in mind? https://github.com/dai-shi/waku/pull/668/commits/a4d88782b02712f42ca1901d1da65f27fc4478a2

@dai-shi : Is that what you had in mind? a4d8878

Thanks. Hm, it looks good for the start, but what I meant with really "static" is that the static page has something like Date.now(), and if you reload the page, the date won't change.
To be honest, it's not fully implemented:

SSR/SSG are fine
RSC isn't static, so client routing may render static page again. (I hope to work on it after v0.21.0.)

Though, if client caches the rsc payload, it will skip it with shouldSkip. (Also, wanted to revisit in the future.)

In DEV, static pages always rerender (I don't think it's solvable.)

Re: https://github.com/dai-shi/waku/pull/668#issuecomment-2077905809
See also #543. We would like to change unstable_collectClientModue so that it statically analyzes the code, instead of executing it. https://github.com/dai-shi/waku/pull/573#discussion_r1514091960

See also https://github.com/dai-shi/waku/issues/543. We would like to change unstable_collectClientModue so that it statically analyzes the code, instead of executing it. https://github.com/dai-shi/waku/pull/573#discussion_r1514091960

That would have been my next question. Thanks!

Thanks. Hm, it looks good for the start, but what I meant with really "static" is that the static page has something like Date.now(), and if you reload the page, the date won't change.

So we want to test when components are executed. I changed the testcase to cover that (I hope 🤞 ).
Unfortunately I have no clue where the test fails come from. It only uses tsconfig.e2e.json for typechecks?

It only uses tsconfig.e2e.json for typechecks?

You need to add new tests in "references".

Ok, apparently using createPages in a fixture also leads to type errors. I switched it to file based routing instead.

Ok, apparently using createPages in a fixture also leads to type errors.

That sounds somewhat unexpected. Can you elaborate? (Sorry, I haven't had time to look into it yet.)

After adding the test package tsconfig.json files to references the type errors reduced, but some remained.
https://github.com/dai-shi/waku/actions/runs/8847605068/job/24295760378
Declaration files for react-server-dom-webpack could not be found. I noticed that no other fixtures use createPages and I wanted to know if there is a connection. The history is in my last 3 commits.

I feel a little dumb now 😬 Thank you for fixing it!

I feel a little dumb now 😬 Thank you for fixing it!

tbh, I don't know how it fixes it the problem.
import { createPages } from 'waku' should work in the app code.
There must be something different in e2e/fixtures setup. (cc @himself65 who should be more familiar with this.)

Please check ci error.
By the way, would you be able to join my discord server? We have #waku channel there and we can communicate about the development. https://discord.gg/MrQdmzd

tbh, I don't know how it fixes it the problem. import { createPages } from 'waku' should work in the app code. There must be something different in e2e/fixtures setup. (cc @himself65 who should be more familiar with this.)

I think the issues is related to this: https://github.com/dai-shi/waku/blob/c0eb2c9260a931d20d4087948ffa3ef9cd70d87e/tsconfig.json#L21-L22
The waku import only includes main.ts and the missing types are in types.d.ts. waku/* contains everything. In areal application this is not an issue because waku itself is not typechecked in this case.

Hm, isn't that types only? But, yeah something like that causes not resolving to main.react-server.ts.

The problem is just types. I appears as soon as a fixture imports something from waku, and not waku/[whatever].
I will open another PR, along with another typechecking issue that I've seen.


[20.03] rt: fix build error

Backport of #80677
Motivation for this change
ZHF: #80379
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

This still seems to fail at tests.

Yes, sucessful build requires #83565 too.

Merged the other PR, this one now appears to pass all buid/tests with nixpkgs-review:
[8 built, 213 copied (69.1 MiB), 19.8 MiB DL]
https://github.com/NixOS/nixpkgs/pull/83566
1 package built:
rt


Update two vertex in batch mode leads to wrong result

OrientDb: 2.0.14
Orientjs
begin
LET t0 = UPDATE Node SET Points = 0
LET t1 = UPDATE Node SET Position = "admin"
return [$t0, $t1]

Result:
[ { classId: -2, value: null }, { classId: -2, value: null } ]

Expect somethink like this:
[ number, number ]
Result in 2.1.2 but in Studio
{
    "result": [
        {
            "@type": "d",
            "@version": 0,
            "value": [
                13,
                13
            ]
        }
    ],
    "notification": "Query executed  in 0.091 sec. Returned 1 record(s)"
}

BTW: It is very hard to take orientdb serious when such simple things doesn't works. In almost every release there is a regression. Orientdb should be focused on qualitity not in features. This is my perspective in 6 month orientdb.

@StarpTech  "BTW: It is very hard to take orientdb serious when such simple things doesn't works. In almost every release there is a regression. Orientdb should be focused on qualitity not in features. This is my perspective in 6 month orientdb." I feel the same way.. OrientDB is trying to do many things instead of doing half and right. Like my issue here: #5089 made me halt developing since some things are breaking because of that and also I cannot run my tests without them freezing randomly because of that #5033.. That's why I might be moving to TitanDB/TinkerPop/Cassandra soon..

@StarpTech what's your goal? Retrieving the updated RIDs or the number of updated records?

@zifnab87 sorry you already have an open issue that by the way I cannot reproduce it (please provide a test case if you really want quick help). Please don't comment any other issue not related to the problem with your complaints. Thanks.

Isn't it related to !3994? maybe 7b3011e hasn't been merged to OrientDB 2.0/2.1 ?

@lvca I want to retrieve the same result like in 2.0.X and in studio in other words the count of updated records. At the moment I have to fire two seperate querys.

[offtopic]@lvca it won't happen again I am sorry. I am just very frustrated especially with the closed issue that should be reproducible.[/offtopic]

@StarpTech which version of orientjs are you using?

@lvca 2.0.0

Could you please try 2.1?

Of course I will do it but the driver is in alpha status even if it works it is not acceptable for production.

2.1 is not in alpha, it has been released about 2 weeks ago:
https://www.npmjs.com/package/orientjs

The master branch is 2.0.0 and in the readme of tag 2.0.1 they say
"status: alpha This is work in progress, alpha quality software. Please report any bugs you find so that we can improve the library for everyone."

@lvca same result
[ { classId: -2, value: null }, { classId: -2, value: null } ]

Reading this thread, if the correct result comes from Studio, then I'd deduce the problem is more likely in Orientjs, as Luca pointed out to try the newest version, I'd agree Orientjs is the place to look for the issue. There was a similar issue with the PHP driver cutting off longs to only 2 decimal places. It was reported in the PHPOrient repo and fixed relatively quickly. This issue might be better off in the Orientjs repo???
Scott

@smolinari if you read my last comment you can see that the issue on db level.

How can Studio return the proper result, if the database is causing the issue? Or is it a different protocol being used for OrientJS than what Studio uses?
Scott

Of course the binary protocol and http are different.

@StarpTech In order to understand where is the problem, could you try the sam batch from console, please?

Orientdb 2.1.4
Result via console
@lvca with a clean database and only 1 class called ``Node`
orientdb {db=test}> script sql
[Started multi-line command. Type just 'end' to finish and execute]
orientdb {db=test}> begin
orientdb {db=test}> LET t0 = UPDATE Node SET Points = 0
orientdb {db=test}> LET t1 = UPDATE Node SET Position = "admin"
orientdb {db=test}> return [$t0, $t1]
orientdb {db=test}> end

Server side script executed in 0.009000 sec(s). Value returned is: [0, 0]

with my develop database:
orientdb> script sql
[Started multi-line command. Type just 'end' to finish and execute]
orientdb> begin
orientdb> LET t0 = UPDATE Node SET Points = 0
orientdb> LET t1 = UPDATE Node SET Position = "admin"
orientdb> return [$t0, $t1]
orientdb> end

Error: java.lang.NullPointerException

orientdb>

@lvca anything new?

@lvca do you working on this?

@lvca any updates?

I hit what is likely the same issue via gremlin queries -- see the first example from the gremlin docs on the select operator:
http://gremlindocs.spmallette.documentup.com/#select
gremlin> g.v(1).as('x').out('knows').as('y').select

Via Studio, everything works fine. However, via the binary interface (using via pyorient), there are two cases. When x knows exactly one person, I get everything back correctly; however, when x knows more than one person, I get null records back, and OrientDB prints the following warning to the log:
WARNI {db=<...>} Cannot serialize record: [<...>] [ONetworkProtocolBinary]

Hi guys, we just released v2.1.6. Are you able to reproduce it with v2.1.6?

I'll attempt to repro as soon as brew is updated to show 2.1.6 as the newest version, hopefully in the next day or so.

Seems to work fine both in Studio and via the console in 2.1.6:
orientdb {db=multi_vertex}> gremlin g.v('#12:0').as('x').out('Knows').as('y').select
orientdb {db=multi_vertex}> end

[Person#12:0{name:abc,out_Knows:[size=1]} v2, Person#12:1{name:def,in_Knows:[size=1]} v2]

The issue should be closed. Thanks!

Cool, thanks.

Its not fixed
@lvca Tested with 2.1.8 in orientjs with:
begin
LET t0 = CREATE VERTEX Fitness CLUSTER DE_fitness content {"DisplayName":"Bernd Eck","Active":true,"Position":"fitness_member","Mid":"4561","Email":"berndeck1@local","Created":1451949088839}
LET t1 = UPDATE Node ADD References = $t0 WHERE Mid = "5681ee64b5c1433c28131e6e"
LET t2 = UPDATE $t0 SET SponsoredBy = ( select from Node WHERE Mid = "5681ee64b5c1433c28131e6e" )
commit\nreturn [$t0,$t1,$t2]

result:
[ { '@type': 'd',
    '@class': 'Fitness',
    DisplayName: 'Bernd Eck',
    Active: true,
    Position: 'fitness_member',
    Mid: '4561',
    Email: 'berndeck1@local',
    Created: Tue Jan 05 2016 00:11:28 GMT+0100 (W. Europe Standard Time),
    SponsoredBy: { [String: '#18:0'] cluster: 18, position: 0 },
    '@rid': { [String: '#20:3'] cluster: 20, position: 3 },
    '@version': 1 },
  { classId: -2, value: null },
  { classId: -2, value: null } ]

Its not fixed
@lvca Tested with 2.1.8 in orientjs with:
begin
LET t0 = CREATE VERTEX Fitness CLUSTER DE_fitness content {"DisplayName":"Bernd Eck","Active":true,"Position":"fitness_member","Mid":"4561","Email":"berndeck1@local","Created":1451949088839}
LET t1 = UPDATE Node ADD References = $t0 WHERE Mid = "5681ee64b5c1433c28131e6e"
LET t2 = UPDATE $t0 SET SponsoredBy = ( select from Node WHERE Mid = "5681ee64b5c1433c28131e6e" )
commit\nreturn [$t0,$t1,$t2]

result:
[ { '@type': 'd',
    '@class': 'Fitness',
    DisplayName: 'Bernd Eck',
    Active: true,
    Position: 'fitness_member',
    Mid: '4561',
    Email: 'berndeck1@local',
    Created: Tue Jan 05 2016 00:11:28 GMT+0100 (W. Europe Standard Time),
    SponsoredBy: { [String: '#18:0'] cluster: 18, position: 0 },
    '@rid': { [String: '#20:3'] cluster: 20, position: 3 },
    '@version': 1 },
  { classId: -2, value: null },
  { classId: -2, value: null } ]

Can you check the server log and see if the same warning I was getting is printed there in your case? It might be a separate bug that is getting hit now.

@obi1kenobi the original issue was about orientjs and batch command. Your issue works with gremlin and console. I wondered why your issue was handled as the same. Your bug might be a seperate one. Thanks.

I figured that since we were both getting the same error (Cannot serialize record: [<...>] [ONetworkProtocolBinary]) in the log, it may be the same underlying issue. Sorry to hear it wasn't actually fixed, hope it gets fixed soon!

It still exists in 2.1.X please make a hotfix. This feature is essential to work with orientdb.

@luigidellaquila @lvca

hi @StarpTech
the problem is that the binary protocol is not able to to handle this result set
begin
LET t0 = CREATE VERTEX Fitness CLUSTER DE_fitness content {"DisplayName":"Bernd Eck","Active":true,"Position":"fitness_member","Mid":"4561","Email":"berndeck1@local","Created":1451949088839}
LET t1 = UPDATE Node ADD References = $t0 WHERE Mid = "5681ee64b5c1433c28131e6e"
LET t2 = UPDATE $t0 SET SponsoredBy = ( select from Node WHERE Mid = "5681ee64b5c1433c28131e6e" )
commit
return [$t0,$t1,$t2]

In your case would be
[Object,number,number]
You should wrap the return value in a single Object, something like this
begin
LET t0 = CREATE VERTEX Fitness CLUSTER DE_fitness content {"DisplayName":"Bernd Eck","Active":true,"Position":"fitness_member","Mid":"4561","Email":"berndeck1@local","Created":1451949088839}
LET t1 = UPDATE Node ADD References = $t0 WHERE Mid = "5681ee64b5c1433c28131e6e"
LET t2 = UPDATE $t0 SET SponsoredBy = ( select from Node WHERE Mid = "5681ee64b5c1433c28131e6e" )
commit
return  { "vertexCreated" : $t0, "nodeUpdated" : $t1, "fitnessUpdated" : $t2}

@maggiolo00 good to know. Is this safe for the future? Will it be fixed?

doesn't work in 2.2.0-SNAPSHOT develop@r76eb89664869753ee518b741fd2009d2255877c8; 2016-03-14 03:29:50+0000:
orientdb {db=testdb}> script sql
[Started multi-line command. Type just 'end' to finish and execute]
orientdb {db=testdb}> begin
orientdb {db=testdb}> let t0 = update C1 set points = 0
orientdb {db=testdb}> let t1 = update C1 set position = "admin"
orientdb {db=testdb}> return { "first": $t0, "second": $t1 }
orientdb {db=testdb}> end

Server side script executed in 0.052000 sec(s). Value returned is: [null, null]

server log says:
2016-04-05 20:02:41:802 WARNI {db=testdb} Cannot serialize record: 1 [ONetworkProtocolBinary]
2016-04-05 20:02:41:804 WARNI {db=testdb} Cannot serialize record: 1 [ONetworkProtocolBinary]

@nagarajasr thanks for testing.

@StarpTech
@nagarajasr
sorry yes you are right my bad.
@tglman any hint on a fix on this?

@StarpTech
i've found a solution
You can write your batch in this way
begin
LET t0 = CREATE VERTEX Fitness CLUSTER DE_fitness content {"DisplayName":"Bernd Eck","Active":true,"Position":"fitness_member","Mid":"4561","Email":"berndeck1@local","Created":1451949088839}
LET t1 = UPDATE Node ADD References = $t0 WHERE Mid = "5681ee64b5c1433c28131e6e"
LET t2 = UPDATE $t0 SET SponsoredBy = ( select from Node WHERE Mid = "5681ee64b5c1433c28131e6e" )
commit
select $t0,$t1,$t2

@maggiolo00  Found or just checked out? Is this the common way? I build my base on such solutions.

@StarpTech
This will work because it is handle with the SQL of OrientDB so the result set.
The other one with custom return was never supported and will give error until the binary protocol will support this kind of serialization. The binary protocol is able to serialize only a collection of documents as result set. That is why you get because the collection returned from the batchScript is [Object,number,number]
2016-04-05 20:02:41:802 WARNI {db=testdb} Cannot serialize record: 1 [ONetworkProtocolBinary]
2016-04-05 20:02:41:804 WARNI {db=testdb} Cannot serialize record: 1 [ONetworkProtocolBinary]

Than the docu is completly wrong
return , where value can be:
any value. Example: return 3
any variable with $ as prefix. Example: return $a
arrays. Example: return [ $a, $b ]
maps. Example: return { 'first' : $a, 'second' : $b }

http://orientdb.com/docs/2.1/SQL-batch.html

That's bad.
As a first step I'm fixing the docs adding some clarifications.
Then we have to see how to fix these problems on the binary protocol (on http everything works fine, so the problem is in the serialization)
Thanks
Luigi

@maggiolo00 using the select statement fix it but now we are working with a different data structure. This example shows that the transaction feature must be refactored!
e.g
[ { '@type': 'd',
    '$t0': [ [Object] ],
    '$t1': { [String: '#17:0'] cluster: 17, position: 0 },
    '$t2': [ [Object] ],
    '$t3': 1,
    '$t4': 1,
    '@rid': { [String: '#-2:1'] cluster: -2, position: 1 },
    '@version': 0 } ]

@luigidellaquila seriously, we are talking about the result of an update statement. I'm ready to try develop releases but this issue exists since 4 months. Now, you are talking about a structural problem and that orientjs cant serialize simple literals. This is ok you can serve documents like SUM() it does but then in the correct response format (return { a: $b } or [$a]). Its hard for me to take orientdb seriously and I'm thinking about to change when such important issue dont fixed within a fair range.

@luigidellaquila is the http protocol more stable than the binary ?

Hi @StarpTech
Probably it's not a matter of stability, just that the binary format does not support some kinds of result sets while the HTTP protocol.
In terms of stability I can say that they are equivalent.
Thanks
Luigi

It would be nice to have the difference documented, so users can make an informed choice. That or get feature parity between the two protocols (which is what I would personally want).
And what about performance? I would assume the binary protocol is faster?
Scott

@smolinari I added a note to the docs (not yet published, we will do it in short).
The HTTP protocol is a little bit slower than the binary one, because of the size of the messages, but the different is not significant compared to the whole elaboration
Thanks
Luigi

@luigidellaquila ok you prefer to use the http protocol when performance does not matter? Is the http protocol 100% compatible when I switch in orientjs to http ?

hi @StarpTech
orientjs api  should be te same with binary/rest but i cannot guarantee that it is 100% compatible. In a normal scenario you use http or binary. If you switch you will probably encounter some issues. We can with the help of @tglman try to solve this issue of the return of a batch script

The second solution would be the best. I think it can't be difficult to fix this in the binary driver. Please let me know when @tglman work on this issue.

@maggiolo00 What is the status of this issue? Is orientdb able to handle his own result sets ?
As very similiar issue I get in this example:
begin
		LET t0 = SELECT COUNT(*) FROM (TRAVERSE References FROM (SELECT FROM CLUSTER:[DE_business,Node, DE_root] WHERE Mid = '${userId}' ) MAXDEPTH 1 )
		LET t1 = SELECT FROM CLUSTER:[DE_business,Node, DE_root]
		return [$t0,$t1]
		commit

result:
{ data: { classId: -2, value: null }, count: 6 }

in studio it works.

Hey guys, what's the status of this issue?

Hi @lvca
I think it is done and should be released with OrientDB 2.1.17.
@tglman  am i right?
It is done also in OrientJS as well but not yet released on npm

@maggiolo00 i'm afraid not!
Sorry @tglman @luigidellaquila @lvca  but I can't believe it. I kept trying in vain since two months and now I can determine a big issue or in other word mistake in the implementation of return literals in the binary driver.

Can you post it here?

{
    "result": [
        {
            "@type": "d",
            "@version": 0,
            "value": [
                [

                ],
                [

                ],
                [

                ],
                [

                ],
                [

                ],
                [

                ],
                [

                ]
            ]
        }
    ],
    "notification": "Query executed  in 0.064 sec. Returned 1 record(s)"
}

@StarpTech
those are empy array. If you try orientjs 2.1.17-beta you should see those well deserialized as i wrote you in prjhub

if you confirm this i can promote the fix and release 2.1.17

@maggiolo00 good news it works like expected.

I couldn't know that a new version was released. You did it 2 hours ago ^^

Cool, so it looks like this is closed, right? Closing.


pr2_kinematics: 1.0.9-0 in 'melodic/distribution.yaml' [bloom]

Increasing version of package(s) in repository pr2_kinematics to 1.0.9-0:

upstream repository: https://github.com/PR2/pr2_kinematics.git
release repository: https://github.com/pr2-gbp/pr2_kinematics-release.git
distro file: melodic/distribution.yaml
bloom version: 0.6.6
previous version for package: null

pr2_arm_kinematics
* Merge pull request #10 <https://github.com/pr2/pr2_kinematics/issues/10> from k-okada/use_pose
  PoseMsgToKDL is deperecated use poseMsgToKDL
* Merge pull request #9 <https://github.com/pr2/pr2_kinematics/issues/9> from k-okada/remove_get_solver_info2
  remove GetKinematicsSolverInfo, whcih is deprecated in kinetic
* Merge pull request #8 <https://github.com/pr2/pr2_kinematics/issues/8> from k-okada/add_c11
  add c++11 option for error: ‘shared_ptr’ in namespace ‘std’ does not …
* Merge pull request #7 <https://github.com/pr2/pr2_kinematics/issues/7> from k-okada/orp
  change maintainer to ROS orphaned package maintainer
* change maintainer to ROS orphaned package maintainer
* PoseMsgToKDL is deperecated use poseMsgToKDL
* remove GetKinematicsSolverInfo, whcih is deprecated in kinetic https://github.com/ros-planning/moveit_msgs/issues/3
* add c++11 option for error: ‘shared_ptr’ in namespace ‘std’ does not name a template type typedef std::shared_ptr<Type> Name##Ptr; error
* Contributors: Kei Okada

pr2_kinematics
* Merge pull request #11 <https://github.com/pr2/pr2_kinematics/issues/11> from k-okada/orp2
  change maintainer to ROS orphaned package maintainer
* change maintainer to ROS orphaned package maintainer
* Contributors: Kei Okada

Looks like this is failing to build:
http://build.ros.org/job/Mdev__pr2_kinematics__ubuntu_bionic_amd64/1/
@k-okada can you either fix the issue upstream and make a new release or revert this pull request?


In the training stage the result wav is  normal， but use synthesize.py I get a very short wav.

Hi how did u solve this, I am getting same issue


Create a factory with the data of an array

Laravel Version: 5.7.*
PHP Version: 7.2.9
Database Driver & Version: sqlite 7.2.8

Description:
I want to fill my categories table via a factory(), here is my code:
$factory->define(App\Category::class, function (Faker $faker) {
    $categories = ['Hardware', 'Software', 'Planning', 'Tools'];
    foreach ($categories as $category) {
        return [
            'name' => $category
        ];
    }
});

Problem:
When I call this factory in my code: $categories = factory(Category::class)->create(); and I check the database, the categories table only contains Hardware...
This is normal because the first round of loop the return is executed so the foreach ends, but then how to make my table is fully filled?
Steps To Reproduce:
php artisan make:factory CategoryFactory -m Category

Factory should create only one instance at a time. You can use seeders to create many categories.


SyntaxError: Invalid or unexpected token

trying to install gives an Error

13 Dec 06:26:07 - [warn] [node-red-contrib-alexa-home-skill/alexa] SyntaxError: Invalid or unexpected token

I'm on Windows 10 and tried with different versions of node > 12.0.0
tried installing via the pallette, by hand unsing npm and cloning the repository and running it locally.
the problem is caused by the mqtt package. it seems version 2.x.x will cause this Error. after trying mqtt v2.0.1 and v2.18.8 with node version 15,14,13 and 12 (all producing the same error) i gave up digging any further.
updating to mqtt@latest (4.2.6) fixes the issue...

I should technically support Node 8 until Node-RED v2.0 ships early next year.
It looks like core Node-RED has pinned at v4.2.6 for the same reason


Feature request: show linter messages in a tooltip on mouse hover

Right now, the only two ways I can see to view linter messages are via inline overlay messages, or via the status bar.
The inline messages are not ideal because they often cover up my code as I move through it, and can overlap (or be overlapped by) autocomplete-plus suggestions. The status bar is also not ideal because it takes up a lot of screen real estate, and its variable size (including not being displayed at all) means that its constantly moving around as I move my cursor through my code, which is distracting.
I would like to see a third option: a mouse cursor tooltip. Just like the browser shows a HTML element's tooltip when you hover the mouse cursor over an element for a second or two, I would like linter to show messages as a (small, unobtrusive) tooltip when you hover over the message source.
"Message source" in this case could be the text itself and/or the gutter icon. If you have "show highlighting" on, it makes sense to have the tooltip appear when you hover over the highlighted text. If you have "show gutters" on, it also makes sense to have the tooltip appear when you hover over the gutter of the offending line. A user who wants only subtle linter notifications can enable only gutter icons, and then hover over them to get the message text.
This seems like an elegant solution for seeing linter notifications and being able to get the message text, without those notifications/messages getting in the way of editing. Obviously, a mouse cursor-based solution would not be as ideal for somebody who primarily navigates with the keyboard, but that's why the old options for inline/status bar messages should be kept, too.

I like this idea as well, it would be useful for supporting various users styles.


armv7s is not included in libcrypto and libssl builds

See https://github.com/jasonacox/Build-OpenSSL-cURL/blob/master/openssl/openssl-build.sh#L200
That script builds in folder /tmp/${OPENSSL_VERSION}-iOS-armv7s but that build is not included in the following lipo command:
https://github.com/jasonacox/Build-OpenSSL-cURL/blob/master/openssl/openssl-build.sh#L207

Good catch - thanks for the PR!


Feature query annotation

annotate queries that pass through Readyset.route
use custom tag to indicate a query has been proxied to ReadySet
toggle this feature on using config.query_annotations = true

I'm sharing the failing code. I'm having a major difficulty with the testing environment setup with enabling QueryLogs. By default, it should at least add /*application:MyApp*/ to every query in test.log.

For review, I would recommend double-checking this snippet of code:
    initializer 'readyset.query_annotator' do |app|
      setup_query_annotator
    end

    def setup_query_annotator
      config.after_initialize do
        ...
      end
    end

I'm a bit unsure about the usage of config.after_initialize as opposed to alternatives.

That was a rough rebase, but now a spec isn't passing anymore :((. Gotta figure it out.

@helpotters Apologies for rough rebase -- I merged a bunch of big changes to main over the past week or two! The failing spec is my fault -- I can spend some time digging into this later today

@helpotters Fixed in #72

:notes: This is ready for another go :notes:

@helpotters Looks great! Ready to merge after a rebase to resolve the merge conflict


[Feature: Add the option to enable cmp]

Hello, amazing plugin btw.
Sometimes I want to use the cmp for snippets, or all kind of completions, doesn't matter if the hidden text shows in the cmp.
Would be amazing if you add an option to enable cmp:
require("cloak").setup({
        disable_cmp = false.  -- default true
        -- ...
})

Thanks.

Could you just uncloak the file while you are working on it?
I see a possible use case being you are working on a file with cloaked stuff, but most parts of the file are not cloaked but wont have auto completion due to the whole file having cmp disabled.


[SPARK-7069][SQL] Rename NativeType -> AtomicType

This also contains https://github.com/apache/spark/pull/5646

Test build #30816 has started for   PR 5650 at commit 97d2e1d.

Going to re-open a PR.

Test build #30816 has finished for   PR 5650 at commit 97d2e1d.

This patch fails MiMa tests.

This patch merges cleanly.

This patch adds the following public classes (experimental):

    class FreqItemset(namedtuple("FreqItemset", ["items", "freq"])):

protected[sql] abstract class AtomicType extends DataType

abstract class NumericType extends AtomicType

 class Encoder[T <: AtomicType](columnType: NativeColumnType[T]) extends compression.Encoder[T]

  class Decoder[T <: AtomicType](buffer: ByteBuffer, columnType: NativeColumnType[T])

 class Encoder[T <: AtomicType](columnType: NativeColumnType[T]) extends compression.Encoder[T]

  class Decoder[T <: AtomicType](buffer: ByteBuffer, columnType: NativeColumnType[T])

 class Encoder[T <: AtomicType](columnType: NativeColumnType[T]) extends compression.Encoder[T]

  class Decoder[T <: AtomicType](buffer: ByteBuffer, columnType: NativeColumnType[T])

This patch does not change any dependencies.

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