Cannot build latest release (v1.13.1), cannot find package "github.com/k-sone/critbitgo" & dependency github.com/mjibson/appstats/ 410 Gone

What you expected to happen?
Building latest release (currently v1.13.1) succeeds.
What happened?
First, build fails because of an allegedly missing dependency. Quite questionable because go vendoring is used and vendor path exists. When trying fix it by letting go to reapply the vendor folder, that fails as well due to another dependency is gone.  Either way would not solve the issue, the second dependency is still missing in vendor. So the issue here is, the provided vendor folder must be complete, but according to my investigation, it is not.
How to reproduce it?

git clone https://github.com/weaveworks/scope.git ~/somewhere
cd ~/somewhere
git checkout v1.13.1
make BUILD_IN_CONTAINER=false [1]

the allegedly missing dependency exists in go.mod and in vendor tho [2]
according to GOPATH setting it will never look into this exact vendor folder, GO111MODULE should be on or this repo must be moved to GOPATH

tried: go mod vendor [3]
tried removing GO111MODULE=off (as I think this is overdue), results in the same error as previously [4]

went further though! But github.com/mjibson/appstats is still missing [5]

diff --git a/Makefile b/Makefile
index 2a318409..90e3c41a 100644
--- a/Makefile
+++ b/Makefile
@@ -103,7 +103,7 @@ $(SCOPE_EXE):

 %.codecgen.go: $(CODECGEN_EXE)
        rm -f $@; $(GO_HOST) build $(GO_BUILD_FLAGS) ./$(@D) # workaround for https://github.com/ugorji/go/issues/145
-       cd $(@D) && $(WITH_GO_HOST_ENV) GO111MODULE=off $(shell pwd)/$(CODECGEN_EXE) -d $(CODECGEN_UID) -rt $(GO_BUILD_TAGS) -u -o $(@F) $(notdir $(call GET_CODECGEN_DEPS,$(@D)))
+       cd $(@D) && $(WITH_GO_HOST_ENV) $(shell pwd)/$(CODECGEN_EXE) -d $(CODECGEN_UID) -rt $(GO_BUILD_TAGS) -u -o $(@F) $(notdir $(call GET_CODECGEN_DEPS,$(@D)))

 $(CODECGEN_EXE): $(CODECGEN_DIR)/*.go
        mkdir -p $(@D)

Anything else we need to know?

minor: build helper esc was missing and Makefile seems not to handle its installation, I had to go get github.com/mjibson/esc

Versions:
$ go version
go version go1.14.7 linux/amd64

$ go env
GO111MODULE="auto"
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/REDACTED/.cache/go-build"
GOENV="/home/REDACTED/.config/go/env"
GOEXE=""
GOFLAGS="-buildmode=pie"
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY="REDACTED,*.REDACTED"
GONOSUMDB="REDACTED,*.REDACTED"
GOOS="linux"
GOPATH="/home/REDACTED/Projects/go"
GOPRIVATE="REDACTED,*.REDACTED"
GOPROXY="goproxy-1.REDACTED,direct"
GOROOT="/usr/lib/go-1.14"
GOSUMDB="off"
GOTMPDIR=""
GOTOOLDIR="/usr/lib/go-1.14/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/REDACTED/Projects/github.com/weaveworks/scope/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build194517409=/tmp/go-build -gno-record-gcc-switches"

$ nvm current
v10.24.0

$ node --version
v10.24.0

$ npm --version
6.14.11

$ yarn --version
1.22.5

Logs:
[1]
$ make BUILD_IN_CONTAINER=false
...
cd report && unset GOOS GOARCH; GOGC=off CGO_ENABLED=1 GO111MODULE=off /home/REDACTED/Projects/github.com/weaveworks/scope/vendor/github.com/ugorji/go/codec/codecgen/bin/codecgen_linux_amd64 -d 0 -rt 'netgo unsafe' -u -o report.codecgen.go backcompat.go report.go map_values.go latest_map_generated.go map_keys.go map_helpers.go id_list.go censor.go topology.go string_set.go dns.go controls.go metadata_template.go table.go sets.go marshal.go tools.go metric_template.go id.go node.go datatypes.go node_set.go networks.go metric_row.go metrics.go
codecgen error: error running 'go run codecgen-main-6179.generated.go': exit status 1, console: networks.go:8:2: cannot find package "github.com/k-sone/critbitgo" in any of:
	/usr/lib/go-1.14/src/github.com/k-sone/critbitgo (from $GOROOT)
	/home/REDACTED/Projects/go/src/github.com/k-sone/critbitgo (from $GOPATH)
marshal.go:15:2: cannot find package "github.com/opentracing/opentracing-go" in any of:
	/usr/lib/go-1.14/src/github.com/opentracing/opentracing-go (from $GOROOT)
	/home/REDACTED/Projects/go/src/github.com/opentracing/opentracing-go (from $GOPATH)
marshal.go:16:2: cannot find package "github.com/opentracing/opentracing-go/log" in any of:
	/usr/lib/go-1.14/src/github.com/opentracing/opentracing-go/log (from $GOROOT)
	/home/REDACTED/Projects/go/src/github.com/opentracing/opentracing-go/log (from $GOPATH)
backcompat.go:9:2: cannot find package "github.com/ugorji/go/codec" in any of:
	/usr/lib/go-1.14/src/github.com/ugorji/go/codec (from $GOROOT)
	/home/REDACTED/Projects/go/src/github.com/ugorji/go/codec (from $GOPATH)
node.go:8:2: cannot find package "github.com/weaveworks/common/mtime" in any of:
	/usr/lib/go-1.14/src/github.com/weaveworks/common/mtime (from $GOROOT)
	/home/REDACTED/Projects/go/src/github.com/weaveworks/common/mtime (from $GOPATH)
map_helpers.go:10:2: cannot find package "github.com/weaveworks/ps" in any of:
	/usr/lib/go-1.14/src/github.com/weaveworks/ps (from $GOROOT)
	/home/REDACTED/Projects/go/src/github.com/weaveworks/ps (from $GOPATH)
report.go:9:2: cannot find package "github.com/weaveworks/scope/common/xfer" in any of:
	/usr/lib/go-1.14/src/github.com/weaveworks/scope/common/xfer (from $GOROOT)
	/home/REDACTED/Projects/go/src/github.com/weaveworks/scope/common/xfer (from $GOPATH)
node_set.go:11:2: cannot find package "github.com/weaveworks/scope/test/reflect" in any of:
	/usr/lib/go-1.14/src/github.com/weaveworks/scope/test/reflect (from $GOROOT)
	/home/REDACTED/Projects/go/src/github.com/weaveworks/scope/test/reflect (from $GOPATH)

Makefile:105: recipe for target 'report/report.codecgen.go' failed
make: *** [report/report.codecgen.go] Error 1

[2]
$ grep "github.com/k-sone/critbitgo" go.mod
	github.com/k-sone/critbitgo v1.2.0

$ ls vendor/github.com/k-sone/critbitgo/
CHANGES.md  critbit.go  LICENSE  map.go  net.go  README.md

[3]
$ env GOPROXY=proxy.golang.org go mod vendor
go<EMAIL_ADDRESS>reading<EMAIL_ADDRESS>410 Gone
	server response:
	not found<EMAIL_ADDRESS>invalid version: git fetch -f origin refs/heads/*:refs/heads/* refs/tags/*:refs/tags/* in /tmp/gopath/pkg/mod/cache/vcs/444aab7ea271b6130ec26c66b91d9ad882ee59ce867f2107d31a0875343c64c2: exit status 128:
		fatal: could not read Username for 'https://github.com': terminal prompts disabled

There is no need to enable terminal prompts, the repo is just gone.
[4]
$ make prog/scope BUILD_IN_CONTAINER=false
rm -f report/report.codecgen.go; unset GOOS GOARCH; env GOGC=off CGO_ENABLED=1 go build -mod vendor -ldflags "-extldflags \"-static\" -X main.version=2f9ccdc8 -s -w" -tags 'netgo unsafe' ./report # workaround for https://github.com/ugorji/go/issues/145
cd report && unset GOOS GOARCH; GOGC=off CGO_ENABLED=1 /home/REDACTED/Projects/github.com/weaveworks/scope/vendor/github.com/ugorji/go/codec/codecgen/bin/codecgen_linux_amd64 -d 0 -rt 'netgo unsafe' -u -o report.codecgen.go backcompat.go report.go map_values.go latest_map_generated.go map_keys.go map_helpers.go id_list.go censor.go topology.go string_set.go dns.go controls.go metadata_template.go table.go sets.go marshal.go tools.go metric_template.go id.go node.go datatypes.go node_set.go networks.go metric_row.go metrics.go
codecgen error: error running 'go run codecgen-main-4973.generated.go': exit status 1, console: go<EMAIL_ADDRESS>invalid version: git fetch -f origin refs/heads/*:refs/heads/* refs/tags/*:refs/tags/* in /home/REDACTED/Projects/go/pkg/mod/cache/vcs/444aab7ea271b6130ec26c66b91d9ad882ee59ce867f2107d31a0875343c64c2: exit status 128:
	fatal: could not read Username for 'https://github.com': terminal prompts disabled

Makefile:105: recipe for target 'report/report.codecgen.go' failed
make: *** [report/report.codecgen.go] Error 1

[5]
$ grep "github.com/mjibson/appstats" go.mod
	github.com/mjibson/appstats v0.0.0-20151004071057-0542d5f0e87e // indirect
$ ls vendor/github.com/mjibson/appstats
ls: cannot access 'vendor/github.com/mjibson/appstats': No such file or directory

See work in progress to update the build at #3833

I believe this is fixed now.


Keybase is killing my battery

Not sure what's going on, but Keybase seems to be consuming a lot of energy according to OS X's Activity Monitor.  Is this expected at this point in development?  Sent some logs if they are useful in troubleshooting this: a1b2ad5ee2e84a1fbe97a01c
Some screenshares:

and then...

Maybe related, but when I Quit Keybase.app from the menubar there are still some keybase processes hanging around.
Before quitting:
❯ ps aux | grep -i keybase
crcastle        29616  22.8  1.0  3329068  84964   ??  S     2:41PM   0:02.98 /Applications/Keybase.app/Contents/Frameworks/Keybase Helper.app/Contents/MacOS/Keybase Helper --type=renderer --no-sandbox --lang=en-US --node-integration=true --num-raster-threads=2 --enable-zero-copy --content-image-texture-target=3553,3553,3553,3553,3553,34037,3553,3553,3553,34037,3553,34037,34037 --video-image-texture-target=34037 --channel=29612.1.804710486
crcastle        29614  10.5  0.3  2718484  27360   ??  S     2:41PM   0:01.20 /Applications/Keybase.app/Contents/Frameworks/Keybase Helper.app/Contents/MacOS/Keybase Helper --type=gpu-process --channel=29612.0.1497789292 --no-sandbox --supports-dual-gpus=false --gpu-driver-bug-workarounds=14,15,29,34,38,47,51,58,64 --gpu-vendor-id=0x8086 --gpu-device-id=0x162b --gpu-driver-vendor --gpu-driver-version
crcastle        29612   9.3  0.9  3420768  74916   ??  S     2:41PM   0:01.78 /Applications/Keybase.app/Contents/MacOS/Electron
crcastle        29617   0.1  1.1  3345660  96124   ??  S     2:41PM   0:01.32 /Applications/Keybase.app/Contents/Frameworks/Keybase Helper.app/Contents/MacOS/Keybase Helper --type=renderer --no-sandbox --lang=en-US --node-integration=true --num-raster-threads=2 --enable-zero-copy --content-image-texture-target=3553,3553,3553,3553,3553,34037,3553,3553,3553,34037,3553,34037,34037 --video-image-texture-target=34037 --channel=29612.2.217889654
crcastle        26035   0.0  1.3 573441920 113160   ??  S     9:09AM   0:02.86 /Applications/Keybase.app/Contents/SharedSupport/bin/kbfs -debug /keybase
crcastle        26015   0.0  0.2 573452052  20512   ??  S     9:08AM   0:02.04 /Applications/Keybase.app/Contents/SharedSupport/bin/keybase -d service
root              775   0.0  0.0  2471628    968   ??  Ss   Thu02PM   0:00.04 /Library/PrivilegedHelperTools/keybase.Helper
crcastle        29846   0.0  0.0  2432792    560 s000  R+    2:41PM   0:00.00 grep --color=auto -i keybase

After quitting:
❯ ps aux | grep -i keybase
crcastle        26035   0.0  1.3 573441920 113160   ??  S     9:09AM   0:02.86 /Applications/Keybase.app/Contents/SharedSupport/bin/kbfs -debug /keybase
crcastle        26015   0.0  0.2 573453100  20588   ??  S     9:08AM   0:02.06 /Applications/Keybase.app/Contents/SharedSupport/bin/keybase -d service
root              775   0.0  0.0  2471628    968   ??    I assume this has something to do with launchctl or some other watchdog.

Thanks!  Sure seems like a bug, we'll check it out.

Having the same issue. See #2349.
I can make the issue go away by clicking on the system menu bar icon, which opens the window showing my KBFS shared directories. After a while (~ one day) the issue comes back again.

:+1: from me as well. It just seems strange that it's using so many resources when it shouldn't be doing much...
I just uploaded my logs as well in case it helps you out: 1e299338d3e272028bc4b21c

Clicking on the menubar and opening the window once a day has been working for me while waiting for a fix.

Sorry for not updating this issue.  We pushed a fix!  But we also broke the updater.  So please run keybase update run to get the latest build, and check that your version (keybase version) is -20160404 or later, and let us know if you still see this.

@bkendall It looks like you're already on the latest version.    If so, we'll take another look.

@cjb I just let activity monitor run for a little bit - looks like it still sits around 3-4% CPU

and the energy monitor is still reporting high impact:

I'm 90% sure that I had restarted my computer after updating this, and I haven't opened the UI for keybase yet. Don't know if that's useful, but given the comment about opening that window, thought I would mention it.
Anything else I can dig into for you locally?

Thanks, that's very helpful.  Want to confirm that it stops when you open the menu icon?

I would say that was a success.

For kicks, I just uploaded my logs again as well: bf92354ff8b8d6d00a6cd51c

Just updated.  Gonna let it run for a few days and will report back with some observations/stats.  Thanks @cjb!

I updated yesterday, and my observations seem to match @bkendall's.  Keybase.app is still using 2-7% CPU doing "nothing" until I click the menu dock icon.
Sent some logs in if they're helpful: a8edac59627e24d386d4041c (generated these a minute or two after click the menu dock icon)

The update seems to have fixed the problem for me. I've made sure not to click on the icon and I have not seen any high CPU usage from keybase.

Same for me: After upgrading to the latest keybase version 2 days ago cpu usage and power consumption improved substantially.

This issue has also been resolved for me.

Still actual issue for me. Keybase usage 60-70% of CPU when idling

my log id: da26a6133cabdc62351bd91c

@pvllltk It looks like you're not using one of our download builds -- please switch to https://keybase.io/download


Create U2 Wrapper for Material Components

https://github.com/material-components/material-components-web

@mdittmer

No longer a priority. Will not implement.


SubViewportContainer processing Key Input Events before other Control-Nodes

Godot version
v4.1.1.stable.official [bd6af8e0e]
System information
Windows 10
Issue description
The docs state that inputs are processed in the order of _input() > _gui_input() > _shortcut_input() > _unhandled_input() > _unhandled_key_input(). However, SubViewportContainer overrides this ordering by propagating all input (key) events at input(). This triggers all input event functions of its child nodes before all other Control nodes, completely messing up the ordering.
This is a continuation of #58334
although this merge fixed the problem when events contain a position, it does not affect key-press events.
(other related issues are #48401 #48368 and #39666)
@Sauermann
Steps to reproduce

Download reproduction project
Run the project
Left-click on the LineEdit to apply focus
Press any button on the keyboard
Watch the wrong order appear in the console

Correct ordering is:
1		2			3				4					5
_input() > _gui_input() > _shortcut_input() > _unhandled_input() > _unhandled_key_input()
But instead, the ordering is 1, 3, 4, 5, 2
SceneTree

LineEdit.gd
extends LineEdit

func _input(event: InputEvent) -> void:
	if event is InputEventKey:
		printt(1, "input")

func _gui_input(event: InputEvent) -> void:
	if event is InputEventKey:
		printt(2, "gui_input")

Player.gd
extends Node2D

func _shortcut_input(event: InputEvent) -> void:
	if event is InputEventKey:
		printt(3, "_shortcut_input")

func _unhandled_input(event: InputEvent) -> void:
	if event is InputEventKey:
		printt(4, "_unhandled_input")

func _unhandled_key_input(event: InputEvent) -> void:
	printt(5, "_unhandled_key_input")

Minimal reproduction project
SubViewportContainer key input bug reproduction project.zip

I believe, that the problem you describe is a duplicate of #79235 and got fixed in current master by #79248.
Can you please verify, if your problem is still apparent in Godot V4.2 dev3?
Also please be aware that this order _input() > _gui_input() > _shortcut_input() > _unhandled_input() > _unhandled_key_input()  is guaranteed only within a single Viewport.
In your description, you are utilizing different Viewports:

root viewport with LineEdit
SubViewport with Node2D

So the above order is not guaranteed for comparing LineEdit and Node2D.

Thank you, fixed in v4.2.dev3.official [013e8e3af]


perf: improve accuracy and add tests

what are major changes to this PR?
are you aware that we support hex notation for float so it is more precise and reliable, e.g,
println(0x1.91eb851eb851fp+1) // 3.14

what are major changes to this PR? are you aware that we support hex notation for float so it is more precise and reliable, e.g,
println(0x1.91eb851eb851fp+1) // 3.14

Okey, Let me explain.

Since the number of bits in Double is currently tentative, I consider the behavior of the trunc angle to be unsafe and remove it for now.
I found after adding a new set of large angle tests that I couldn't get within 1e-12 on javascript backends, so I extended the error range to 1e-11.
Regarding the hex form of storing decimals, I've switched to it and got a tiny improvement in precision, thanks!

Since the number of bits in Double is currently tentative, I consider the behavior of the trunc angle to be unsafe and remove it for now.

Can you elaborate a little bit? Note Double is IEEE-754 on all platforms.

I found after adding a new set of large angle tests that I couldn't get within 1e-12 on javascript backends, so I extended the error range to 1e-11.

Note the JS backend may not be heavily tested, if you can narrow down a little bit, we can have a look cc @hackwaly


Disable switching between shared and user's dashboard tabs while reloading

Current coverage is 36.79% (diff: 100%)

Merging #267 into develop will not change coverage

@@            develop       #267   diff @@
==========================================
  Files           261        261
  Lines         14234      14234
  Methods           0          0
  Messages          0          0
  Branches       2395       2395
==========================================
  Hits           5237       5237
  Misses         8273       8273
  Partials        724        724

Powered by Codecov. Last update 45c2d0e...48f51d7


Correct select randombot sql wildcard syntax error

Used to prevent
# Delete all random bot accounts (reset randombots)
AiPlayerbot.DeleteRandomBotAccounts = 1

from working.

I must have missed this earlier. Thank you for another great PR!


add stripJavaArchivesHook and use treewide

Description of changes
Tracking issue: https://github.com/NixOS/nixpkgs/issues/278518
Supersedes https://github.com/NixOS/nixpkgs/pull/278322
Supersedes https://github.com/NixOS/nixpkgs/pull/286805 (pretty similar to this, but would add a new package)
Supersedes https://github.com/NixOS/nixpkgs/pull/294516
This is my 3rd (or 4th) and hopefully final attempt at making a setup-hook, which can be used to strip all .jar files from their timestamps.
This time I didn't have to do a lot of work because it turns out the strip-nondeterminism package already handles everything I wanted to do.
This PR has 4 commits:

Update and rename the hook, replacing canonicalize-jars-hook (added as an alias)
Make existing packages using canonicalize-jars-hook use the non-alias name for the hook
Migrate all previous attempts at java determinism, which didn't use canonicalize-jars-hook
(I only did the ant ones. maven and gradle might be in another PR as those are a bit different)
Migrate a non-ant package too

# Shorter builds
nix build .#{calcoo,mkgmap,mkgmap-splitter,pattypan,dayon,jameica,trimmomatic,jasmin,freetts,javaCup,hydraAntLogger,jdepend,javacc,jpsxdec,ili2c,fop,swt}
# Longer builds
nix build .#{jogl,abcl,prismlauncher-unwrapped}

# Run the commands again with the `--rebuild` flag to check for determinism

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Can you add the hook to cie-middleware-linux and bisq-desktop? Both are using strip-nondeterminism.

Can you add the hook to cie-middleware-linux and bisq-desktop? Both are using strip-nondeterminism.

AFACT cie-middleware-linux doesn't build on master ATM, but I'll try the other one

AFACT cie-middleware-linux doesn't build on master ATM

Oof, I need to update it.

Documentation? There is a Java section in the Nixpkgs manual...

Documentation? There is a Java section in the Nixpkgs manual...

I was planning on doing a rework of the java packaging docs in another PR, but I guess it wouldn't hurt putting some docs in this PR too. Though I will only add stuff related to this hook.

I updated the main java packaging example to be more up-to-date and to use stripJavaArchivesHook. You can see that the docs are a bit old so I'll still to a proper docs rewrite in a followup PR.

For the records, nixpkgs-review is happy on Linux x86_64
Result of nixpkgs-review pr 296549 run on x86_64-linux 1

6 packages marked as broken and skipped:

python311Packages.kmapper
python311Packages.kmapper.dist
python311Packages.scikit-tda
python311Packages.scikit-tda.dist
spring
springLobby

79 packages built:

abcl
ipscan (angryipscanner)
asciidoc-full
asciidoc-full-with-plugins
asciidoc-full-with-plugins.dist
asciidoc-full.dist
bisq-desktop
calcoo
checkov
checkov.dist
clevis
clevis.man
dayon
disorderfs
fop
freetts
gephi
gpsbabel-gui
gpsbabel-gui.doc
hal-hardware-analyzer
hydraAntLogger
igraph
igraph.dev
igraph.doc
ili2c
jameica
jasmin
javaCup
javacc
jdepend
jogl
jpsxdec
rep (kakounePlugins.rep)
libleidenalg
luksmeta
mkgmap
mkgmap-splitter
pattypan
prismlauncher
prismlauncher-qt5
prismlauncher-qt5-unwrapped
prismlauncher-unwrapped
processing
python311Packages.explorerscript
python311Packages.explorerscript.dist
python311Packages.igraph
python311Packages.igraph.dist
python311Packages.leidenalg
python311Packages.leidenalg.dist
python311Packages.skytemple-dtef
python311Packages.skytemple-dtef.dist
python311Packages.skytemple-files
python311Packages.skytemple-files.dist
python311Packages.skytemple-ssb-debugger
python311Packages.skytemple-ssb-debugger.dist
python311Packages.textnets
python311Packages.textnets.dist
python312Packages.explorerscript
python312Packages.explorerscript.dist
python312Packages.igraph
python312Packages.igraph.dist
python312Packages.leidenalg
python312Packages.leidenalg.dist
python312Packages.skytemple-dtef
python312Packages.skytemple-dtef.dist
python312Packages.skytemple-files
python312Packages.skytemple-files.dist
python312Packages.skytemple-ssb-debugger
python312Packages.skytemple-ssb-debugger.dist
skytemple
skytemple.dist
stripJavaArchivesHook
swt
swt_jdk8
tang
tang.man
trimmomatic
tuxguitar
vuze


Ability to make SDK versions from GitHub releases

This means that we don't need to wait for https://download.dfinity.systems/sdk/manifest.json to be updated before using a version that has been tagged on GitHub.
For example, at the time of writing version 0.10.101 isn't present in manifest.json but is on GitHub at https://github.com/dfinity/sdk/releases/tag/0.10.101

Build failure possibly related to https://github.com/NixOS/patchelf/issues/255#issuecomment-907561501

I can now reproduce the CI failures locally in a NixOS VM.


docker compose 运行失败

一直报错 bin.sh 和 run.sh 找不到
2024-05-11 18:05:31 /bin/sh: /run.sh: not found
2024-05-11 18:05:36 /bin/sh: /run.sh: not found
2024-05-11 18:05:44 /bin/sh: /run.sh: not found
2024-05-11 18:05:51 /bin/sh: /run.sh: not found
2024-05-11 18:05:55 /bin/sh: /run.sh: not found
2024-05-11 18:05:59 /bin/sh: /run.sh: not found
2024-05-11 18:06:03 /bin/sh: /run.sh: not found
2024-05-11 18:06:11 /bin/sh: /run.sh: not found
2024-05-11 18:06:25 /bin/sh: /run.sh: not found
2024-05-11 18:06:52 /bin/sh: /run.sh: not found

是不是window系统

是的

一样的问题，win版本的docker desktop。

 docker-compose up -d
ERROR: The Compose file './docker-compose.yml' is invalid because:
Unsupported config option for volumes: 'conf_mysql'
Unsupported config option for x-logging: 'driver'
Unsupported config option for networks: 'meedu-network'
Unsupported config option for services: 'meilisearch'

Ubuntu18 docker-compose 1.17.1,
 docker-compose up -d
ERROR: The Compose file './docker-compose.yml' is invalid because:
Unsupported config option for volumes: 'conf_mysql'
Unsupported config option for x-logging: 'driver'
Unsupported config option for networks: 'meedu-network'
Unsupported config option for services: 'meilisearch'

docker-compose版本低了，不支持目前meedu仓库的compose.yml编排文件


Install Instructions

Thanks for updating and maintaining this library.  Sort of a newbie here - but what's the best way to install this version?  pip/conda still look to the old codebase and version 0.1.8.  Any chance you could update the Install Instructions in the ReadMe with the new info?

Figured out the workaround until it gets added to pip, which was probably obvious, but since this is really just the core.py file, I just copy and pasted to replace what was installed in my local site-packages on the original jinjasql library.  Worked fine.

Thanks @andrewt-cville. Use this way to install this jinjasql
pip install git+https://github.com/pythonutilities/jinjasql@main
I would advice to you use the tagged version. Closing this

please use this tag for the latest current release
https://github.com/pythonutilities/jinjasql/tree/0.1.10
More releases here - https://github.com/pythonutilities/jinjasql/releases

@andrewt-cville They've put this onto PyPi as "jinjasql2" just a few minutes ago:
https://pypi.org/project/jinjasql2/

@andrewt-cville They've added this to PyPi as "jinjasql2" just a few minutes ago:
https://pypi.org/project/jinjasql2/

Great news. Thank you!


[After Dialer] Network

Add Network implementation

Codecov Report

Merging #180 into feature/dialer will decrease coverage by 0.14%.
The diff coverage is 0%.

@@               Coverage Diff                @@
##           feature/dialer   #180      +/-   ##
================================================
- Coverage           74.14%    74%   -0.15%
================================================
  Files                 340    343       +3
  Lines                9873   9889      +16
  Branches             5189   5192       +3
================================================
- Hits                 7320   7318       -2
- Misses               1324   1342      +18
  Partials             1229   1229

Impacted Files
Coverage Δ

core/libp2p/network/network.hpp
0% <ø> (ø)

core/libp2p/network/impl/network_impl.cpp
0% <0%> (ø)

core/libp2p/network/impl/network_impl.hpp
0% <0%> (ø)

core/libp2p/muxer/yamux/yamuxed_connection.cpp
54.97% <0%> (-0.53%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5548f2c...795325c. Read the comment docs.

This PR is bugged


Camel K CLI asks for an OpenAPI v2 when also v3 is supported

When running Kamel run --help the result text states that for the --open-api options it requires an Open API spec v2. If Camel supports v2 and v3 then the command should be updated to reflect this.

Fixed already.


TIKA-2100 extract content language from html lang attribute

The recommended way of declaring the language of an HTML document is to specify it in the lang attribute of the <html> tag.
Tika currently not only ignores this attribute, but also removes it from its SAX output, making it unavailable to client applications.
This PR adds the value of the lang attribute to the documents metadata (under the existing key Metadata.CONTENT_LANGUAGE) and also makes it available in the SAX output.

I reverted the automatic changes to the import statements (there are unused imports, though).
But I don't see how to add the language information to the output HTML without fiddling with XHTMLContentHandler...

this LGTM - @tballison are we good to commit this?

@tballison I hear you and am open to alternatives. What is a better way to do this? I think missing the lang attribute is a pretty bad thing and have seen it in the past. It feels like HTMLParser as a parser should contribute it (and I don't think you object to that) perhaps via Metadata.set and then what should we do to propagate it?

If :lang is special, we should treat it specially :).  If there are other
attrs that go on the html entity, we can add them later? Onward!
On Sat, May 26, 2018 at 3:26 PM Chris Mattmann<EMAIL_ADDRESS>wrote:

@tballison https://github.com/tballison I hear you and am open to
alternatives. What is a better way to do this? I think missing the lang
attribute is a pretty bad thing and have seen it in the past. It feels like
HTMLParser as a parser should contribute it (and I don't think you object
to that) perhaps via Metadata.set and then what should we do to propagate
it?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/apache/tika/pull/238#issuecomment-392283049, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGbWvr0PxWiZRcDWrjJq2St5NmMcdldfks5t2axbgaJpZM4UN5BA
.

So... go forth!
Side note: It’d be fun to see counts for elements w a lang attr in our
corpus.
On Sat, May 26, 2018 at 3:41 PM Tim Allison<EMAIL_ADDRESS>wrote:

If :lang is special, we should treat it specially :).  If there are other
attrs that go on the html entity, we can add them later? Onward!
On Sat, May 26, 2018 at 3:26 PM Chris Mattmann<EMAIL_ADDRESS>wrote:

@tballison https://github.com/tballison I hear you and am open to
alternatives. What is a better way to do this? I think missing the lang
attribute is a pretty bad thing and have seen it in the past. It feels like
HTMLParser as a parser should contribute it (and I don't think you object
to that) perhaps via Metadata.set and then what should we do to propagate
it?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/apache/tika/pull/238#issuecomment-392283049, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGbWvr0PxWiZRcDWrjJq2St5NmMcdldfks5t2axbgaJpZM4UN5BA
.

So, do I still need to change something ?

You’re good. I’m away from my keyboard today but will be back tomorrow.
On Mon, May 28, 2018 at 3:44 AM GerardBouchar<EMAIL_ADDRESS>wrote:

So, do I still need to change something ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/apache/tika/pull/238#issuecomment-392447144, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGbWvlyh0Z_j2wiQW_JBVwMc-C9GgVMMks5t26rfgaJpZM4UN5BA
.


feat(order): Added Ordering to ES_Search

Please Review
@J-Fid
@seenusuvarna
@rkenyon1969
@mleeBoeing

For testing:
http://localhost:8001/api/listings/essearch/?search=&offset=0&category=Business&category=Books+and+Reference&limit=24&ordering=title&ordering=total_rate1

Not Fully Tested

For testing: Change URL ordering parameter to just order
http://localhost:8001/api/listings/essearch/?search=&offset=0&category=Business&category=Books+and+Reference&limit=24&order=title&order=total_votes

@lsemesky @blynch11p


how many steps should i wait till it starts speaking ?

what does starts speaking mean?
according to configs/freevc.json, it logs every log_interval=200, steps, evals every eval_interval=10000 steps.

my model is not giving any output after 200k steps , how many steps do i need to wait till i get some output ?

i have trained my model for 100k steps after your pretrained checkpoint and it's still giving me noise as a output.

Do you mean, using your 100k checkpoint, you get noise as output no matter what you input?
In that case I think maybe your training process has some problem. Common reasons may be unsuitable learning rate, batch size, dataset size, problematic data preprocessing, etc.

i added vctk dataset along with my dataset and output is coming now, thank you for sharing this great work .


ClassName::methodName" Routes support for PHP 5.3

Hello !
In order to be able to map Controllers instances to Slim Routes, I added "ClassName::methodName" Routes support for PHP 5.3 (an instance of $className is automatically created instead of calling the method statically).
It shouldn't change anything on PHP < 5.3, because is_callable() will then return false.
As you can see, it's a very minor addition... but it can be a very handy one :-)

According to PHP's documentation this syntax is already reserved for calling static methods on a class (PHP 5.2.3 and up).
// Type 4: Static class method call (As of PHP 5.2.3)
call_user_func('MyClass::myCallbackMethod');

This change will therefore break existing Slim applications. Maybe use something like ClassName#methodName?

Hmmm... PHP developers are used to the :: syntax, it may be better to keep it ?
I can a new PR with a check of the php static nature of the called function ; this way, users would be able to use static methods or instance methods, with the same syntax.

What if we use "#" as a separator between a class name and its instance method name ? (i.e. myClass#myMethod)
This is not "PHP standard", but we are used to this notation (in documentations, for exemple), and it can be intuitive.
What's your opinion about it ? :-)


Equipped Backpack goes to player inventory and throws items on the ground when sleeping in a SleepingBag mod sleeping bag.

MC version : 1.10.2
Forge Version : <IP_ADDRESS>4
Backpacks version : 1.10.2 -1.6.0
Conflicting mod : SleepingBad version : 1.10.2-1.4.0
When sleeping in sleeping bag while backpack from Wearable Backpacks is equipped, the sleeping bag disappears, player does not sleep and backpack goes to player's inventory, and backpack, contents are thrown from inventory onto the ground.
Issue reported to SleepingBag repository here: https://github.com/shadowfacts/SleepingBag/issues/14

That certainly is a conflict that might not possible to solve due to how the two mods are designed. Backpacks, for example, are specifically made in a way that the item never stores the backpack's contents. They're stored on the entity that has the backpack equipped, or the tile entity when placed down. When a backpack is unequipped by irregular means, the wearer dies or the block is broken without being equipped, it will drop everything inside it.
To avoid this issue, you may turn off the equipAsChestArmor config setting.
To fix this issue on my end, I can only think of storing the contents on the item.
To fix this issue on SleepingBag's end - without changing the mechanic where the bag item is equipped briefly - the only solution I can see is temporarily moving the backpack to the "hidden" backpack "slot".

Thanks for the response.
For the purposes of the modpack this is in, I suppose setting equipAsChestArmor to false will be an acceptable workaround, although I assume this would also disable other players accessing backpack inventories.
I'll leave this open until I get a response from shadowfacts/SleepingBag to see if there will be any solution, and let you close it as you see fit.
Thanks again.

although I assume this would also disable other players accessing backpack inventories

It doesn't disable that feature. The backpack will function identical, including it rendering on players. The only difference is where the item is stored when equipped. It also doesn't function as armor, and doesn't wear down and break.


transmission: fix log level bounds to match the transmission wiki

Description of changes
The message-level was constrained to 3, but the transmission wiki states that it can go up to 6. So PR updates the allowed values for message-level to match the wiki.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Of course, thanks for looking at this.


Refactor clear method of CacheMongoose class

Is your feature request related to a problem? Please describe.
Instead of checking whether the key is falsy or not we can check if it is undefined, so I can remove a key which is an empty string.
Describe the solution you'd like
I want to be able to pass an empty string and clear that key.
Describe alternatives you've considered
if (customKey != null) or if (customKey !== undefined) instead of if (customKey)

Good Idea, but why you need an empty string key?

PR: https://github.com/ilovepixelart/ts-cache-mongoose/pull/67

Released: https://github.com/ilovepixelart/ts-cache-mongoose/releases/tag/v1.0.8


feat: gas report

I'm going to remove the compare_snapshot check. In fact, in order to realize this check, we first need to retrieve from the github API the previous artifact. The issue is that these artifacts are generated when committed on the main branch. In order to handle it, I will create another pull_request with the check.

So now, merging this branch into main will initiate the gas_report generation. We will then have an artifact, available on the github API, that will be available for the compare_snapshot function.

So now, merging this branch into main will initiate the gas_report generation. We will then have an artifact, available on the github API, that will be available for the compare_snapshot function.

Is the gas_snapshot.json file supposed to be commited ? Im not sure

You are right:
    json.dump(sorted_results, outfile, indent=4) ```, will recreate it.


Prevent email clash when using multiple clusters

This should prevent a person using the same email on different clusters
from overwriting their previous credentials with the generated one by
suffixing the email with the cluster name.

This was explicitly moved in https://github.com/heptiolabs/gangway/pull/87. If we submitted this PR upstream, it would be rejected. Can we not fix it in a more appropriate way?

Sure @benlangfeld. Did not see that. Let me find a better way then.


List of FLARM stations being not traced

For tracking and anti-collision purposes I am having on board FLARM and OGN devices together with Stratux. Those devices shall not be traced and not be sent out as a nearby traffic. Would be possible to add this feature into future release (the same way as mode S hex code)?

Edit: I realized, that I can file OGN/FLARM ID as Mode S hex code and it worked the same way – particular OGN/FLARM device is not send as nearby traffic. Would it be possible to file more than one device which would be except from traffic list? I saw similar request in this forum, my apology for creating this new topic.


CRTF region reading failure

This is another CARTA-written CRTF file.  We need to support the labelcolor keyword.
File test.crtf:
#CRTFv0 CASA Region Text Format version 0
poly [[238.29839664deg, -54.60647979deg], [238.29935543deg, -54.60610099deg], [238.30011816deg, -54.60598728deg], [238.30035808deg, -54.60646691deg], [238.29933401deg, -54.60708556deg], [238.29868031deg, -54.60743908deg], [238.29820094deg, -54.60771684deg], [238.29728571deg, -54.60814611deg], [238.29626149deg, -54.60858802deg], [238.29523727deg, -54.60908040deg], [238.29423473deg, -54.60920672deg], [238.29399489deg, -54.60885331deg], [238.29440888deg, -54.60841148deg], [238.29510618deg, -54.60793175deg], [238.29560731deg, -54.60741417deg], [238.29589059deg, -54.60726267deg], [238.29669691deg, -54.60707325deg], [238.29721997deg, -54.60704794deg], [238.29783007deg, -54.60665657deg]] coord=ICRS, corr=[I], linewidth=2, linestyle=-, symsize=1, symthick=1, color=2ee6d6, font=Helvetica, fontsize=10, fontstyle=bold, usetex=false, label="region18", labelcolor=green, labelpos=top

regions.Regions.read('test.crtf')
Traceback (most recent call last):
  File "<ipython-input-15-bb42a7655814>", line 1, in <module>
    regions.Regions.read('test.crtf')
  File "/orange/adamginsburg/miniconda3/envs/python39/lib/python3.9/site-packages/regions/core/regions.py", line 160, in read
    return RegionsRegistry.read(filename, cls, format=format,
  File "/orange/adamginsburg/miniconda3/envs/python39/lib/python3.9/site-packages/regions/core/registry.py", line 76, in read
    raise IORegistryError(msg) from None
IORegistryError: No reader defined for format "crtf" and class "Regions".

The available formats for the Regions class are:

Format Parse Serialize Read Write Auto-identify
------ ----- --------- ---- ----- -------------
  crtf   Yes       Yes  Yes   Yes           Yes
   ds9   Yes       Yes  Yes   Yes           Yes
  fits   Yes       Yes  Yes   Yes           Yes

regions.io.crtf.read.read_crtf('test.crtf')
WARNING: AstropyDeprecationWarning: The read_crtf function is deprecated and may be removed in a future version.
        Use `regions.Regions.read` instead. [warnings]
Traceback (most recent call last):
  File "<ipython-input-17-892939c6132c>", line 1, in <module>
    regions.io.crtf.read.read_crtf('test.crtf')
  File "/home/adamginsburg/.local/lib/python3.9/site-packages/astropy/utils/decorators.py", line 125, in deprecated_func
    return func(*args, **kwargs)
  File "/orange/adamginsburg/miniconda3/envs/python39/lib/python3.9/site-packages/regions/io/crtf/read.py", line 549, in read_crtf
    return _read_crtf(filename, errors=errors, cache=cache)
  File "/orange/adamginsburg/miniconda3/envs/python39/lib/python3.9/site-packages/regions/io/crtf/read.py", line 80, in _read_crtf
    return _parse_crtf(region_string, errors=errors)
  File "/orange/adamginsburg/miniconda3/envs/python39/lib/python3.9/site-packages/regions/io/crtf/read.py", line 89, in _parse_crtf
    return Regions(parser.shapes.to_regions())
  File "/orange/adamginsburg/miniconda3/envs/python39/lib/python3.9/site-packages/regions/io/core.py", line 122, in to_regions
    region = shape.to_region()
  File "/orange/adamginsburg/miniconda3/envs/python39/lib/python3.9/site-packages/regions/io/core.py", line 694, in to_region
    reg.meta[key] = self.meta[key]
  File "/orange/adamginsburg/miniconda3/envs/python39/lib/python3.9/site-packages/regions/core/metadata.py", line 37, in __setitem__
    raise KeyError(f'{key} is not a valid key for this class.')
KeyError: 'labelcolor is not a valid key for this class.'

uh, hm.  We support labelcolor.  I don't know why the issue is being raised.

Was any progress ever made on this issue? I just ran into it again. As before, I can solve it be manually deleting all the labels from my regions in the .crtf files, but it would be nice to not have to.

Fixed in #473.


Does PolicyScopeGroupID support AzureAD groups?

PolicyScopeGroupID is somewhat unclear. Can AzureAD groups be used?
Would be good to give some examples on grouptypes recommended for this.

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

ID: a47ca7d5-2598-0c06-03fd-854f94cf6bbe
Version Independent ID: a57408f6-16ca-3fcb-0c04-48a7a5f9942d
Content: New-ApplicationAccessPolicy (ExchangePowerShell)
Content Source: exchange/exchange-ps/exchange/New-ApplicationAccessPolicy.md
Service: exchange-powershell
GitHub Login: @chrisda
Microsoft Alias: chrisda

Checking

As far as I know, the documentation is as detailed as possible in this regard: Values for the PolicyScopeGroupID parameter must be security principles by definition of Exchange Online. The only group type usable in this regard would be mail-enabled security groups, which disqualifies Azure AD groups. The introduction of the following article could pose as some form of confirmation for this: Learn about groups and access rights in Azure Active Directory

@DMoenks is correct: mail-enabled security groups are the only types of groups that you can use with the parameter.
On the whole, I found the entire description a bit lacking, so I clarified and reorganized. Hopefully, that will help:

The PolicyScopeGroupID parameter specifies the recipient to define in the policy. Valid recipient types are security principals in Exchange Online (users or groups that can have permissions assigned to them). For example:

Mailboxes with associated user accounts (UserMailbox)
Mail users, also known as mail-enabled users (MailUser)
Mail-enabled security groups (MailUniversalSecurityGroup)

You can use any value that uniquely identifies the recipient. For example:

Name
Distinguished name (DN)
Display name
Email address
GUID

To verify that a recipient is a security principal, run either of the following commands: Get-Recipient -Identity <RecipientIdentity> | Select-Object IsValidSecurityPrincipal or Get-Recipient -ResultSize unlimited | Format-Table -Auto Name,RecipientType,RecipientTypeDetails,IsValidSecurityPrincipal.
You can't use recipients that aren't security principals with this parameter. For example, the following types of recipients won't work:

Discovery mailboxes (DiscoveryMailbox)
Dynamic distribution groups (DynamicDistributionGroup)
Distribution groups (MailUniversalDistributionGroup)
Mail contacts (MailContact)
Mail-enabled public folders (PublicFolder)
Microsoft 365 Groups (GroupMailbox)
Resource mailboxes (RoomMailbox or EquipmentMailbox)
Shared mailboxes (SharedMailbox)

If you need to scope the policy to shared mailboxes, you can add the shared mailboxes as members of a mail-enabled security group.

Thanks for the reply and the clarification.
If only mail-enabled security groups are supported - that means a cloud only environment do not support this feature, since mail-enabled security groups needs to be synced from on-prem?

@andersidahl, not at all. You can create and use mail-enabled security groups in cloud-only environments. See here.


Content files do not get copied

Description

Paket version 5.194.3

I have a NuGet package with a Content folder which contains 1 file. Whatever I try, it is impossible to get this Content file to show up in my project.
Repro steps
Clone https://github.com/Informatievlaanderen/example-registry.git at commit https://github.com/Informatievlaanderen/example-registry/commit/04fb3fe67341aa679d5aed24db4192fd5fcb20e8
https://github.com/Informatievlaanderen/example-registry/blob/04fb3fe67341aa679d5aed24db4192fd5fcb20e8/paket.dependencies#L33 lists nuget Be.Vlaanderen.Basisregisters.Testing.Infrastructure.Events ~> 1.0 content: true, copy_content_to_output_dir: always, copy_local: true (Yes, I tried it all eventually :p)
https://github.com/Informatievlaanderen/example-registry/blob/04fb3fe67341aa679d5aed24db4192fd5fcb20e8/test/ExampleRegistry.Tests/paket.references#L8 references this package
When I run paket install --force nothing gets added to the project:

In the packages folder I can see the package with the Content folder:

Expected behavior
I expect the InfrastructureEventsTest.cs folder to be copied to the folder. Just need the file to be copied, MSBuild (.NET Core) should probably take care of the rest.
Actual behavior
Nothing happens
Known workarounds
No idea.

I also see this.
It would appear that content only works on old style projects and not sdk style.
@forki can you confirm if this is intended behaviour?

looking at install process, this looks a bit suspect...
https://github.com/fsprojects/Paket/blob/d2a8061b46d6b2889fd89ac3d35410fe618ff7b0/src/Paket.Core/Installation/InstallProcess.fs#L538-L543
The "resolved" is never used after being passed in.
And on the < tools version 15 is passes usedPackages, rather than Map.Empty.
I can't get paket building locally though, so hard to prove or test!

Adding this in case it's of use to anyone else that runs into this issue:
The nuspec docs state that content elements won't be picked up in the new-style projects. Instead you should use contentFiles.
https://docs.microsoft.com/en-us/nuget/reference/nuspec#including-content-files
I won't pretend to have the time/patience to understand why this has been changed, but for me the solution was to update paket.template (of the package being consumed) to copy the output files to contentFiles/any/any rather than into content.
Hopefully this saves someone some time in the future 🤷

I assume, if you want it to support both...you need to put the files into the nuget package twice....can we get a slow clap for Microsoft...

Yep, that's what I ended up doing.


Wilcard current status

Hi
I have a few questions. Would you pl. reply?
a. Wildcard is not maintained any longer. Can we still use it in production?
b. This package is not published on npm. Any specific reason?
c. There is a wildcard equivalent, namely, trpc. Here is the link: https://github.com/trpc/trpc/
Could you pl. give your opinion what shall we we use? I am looking forward to use Fastify in the backend and React SSR on frontend.
Thanks

Use Telefunc.

Is telefunc production ready? Could you pl. tell what makes it superior than others?

Thank you so much for offering the support like a professional within 24 hours for an open source project.
a. I do not want to use Zod to define the telefunction arguments. I am simply looking for validations like date, number: min-max, sting matching, regular expression matching for strong passwords, a value must be one among the following types.. enum
i. Not only zod, the developer should be able to use any validation library like yup, joi, superstruct etc.
ii. Shared validation is an ideal solution. For example, create a file named validations.ts inside the shared folder. At client side, invoke these validations before we update a db. At client side, access this same set of validations before we submit a form to the server.
Here is a detailed list of different types of validations.. see its Readme.md file.. https://github.com/jquense/yup
b. SuperJSON allows us to able to transparently use e.g. standard Date/Map/Sets over the wire between the server and client. Can we use something like SuperJSON in telefunc?
Some suggestions:
a. The following methods like register(), login() don't need to be prtoected while all other, let's say, 100 API routes need to be. Placing the Abort code inside the 100 methods is tedious.
Instead, use decorators just like NestJS does
@IsAuthenticated()
@IsRole("Admin")
async listUSers (...)
b. The usage of shield looks a bit ambiguous. 100 RPC methods resulting in 100 shields.
shield(onCommentDelete, [shield.type.number])
export async function onCommentDelete(id) { ... }
Here the function name is duplicated. If 5 arguments, shield.type.xxx will occur 5 times. Also, a parameter type is missing in the function's signatures, readability suffers.
Probably, intead of shield, just use a decorator named RPC indicating that it can be accessed from the client side.
@RPC
const onCommentDelete = (id: number): boolean => { ... }
The telefunc should be able to infer the parameter and return types from within the method defintion itself. No need of shield in this case.
Last but not the least, I really don't know whether all this stuff like Context, Authentication, Permission, Abort really required. According to me, let the developer handle all this  itself.  If Telefunc still wants to provide support for Context, Abort, etc. good enough. But it should be optional, let him use whatever libraries and framework features he wants to use for Error Handling, Validation, making the Context available to RPC methods, etc.
Loking forward to hear from you.
Thanks

Thank you so much for offering the support like a professional within 24 hours for an open source project.
a. I do not want to use Zod to define the telefunction arguments. I am simply looking for validations like date, number: min-max, sting matching, regular expression matching for strong passwords, a value must be one among the following types.. enum
i. Not only zod, the developer should be able to use any validation library like yup, joi, superstruct etc.
ii. Shared validation is an ideal solution. For example, create a file named validations.ts inside the shared folder. At client side, invoke these validations before we update a db. At client side, access this same set of validations before we submit a form to the server.
Here is a detailed list of different types of validations.. see its Readme.md file.. https://github.com/jquense/yup
b. SuperJSON allows us to able to transparently use e.g. standard Date/Map/Sets over the wire between the server and client. Can we use something like SuperJSON in telefunc?
Some suggestions:
a. The following methods like register(), login() don't need to be prtoected while all other, let's say, 100 API routes need to be. Placing the Abort code inside the 100 methods is tedious.
Instead, use decorators just like NestJS does
@IsAuthenticated()
@IsRole("Admin")
async listUSers (...)

b. The usage of shield is monotonous. 100 RPC methods resulting in 100 shields.
shield(onCommentDelete, [shield.type.number])
export async function onCommentDelete(id) { ... }

Here the function name is duplicated. If 5 arguments, shield.type.xxx will occur 5 times. Also, a parameter type is missing in the function's signatures, readability suffers.
Probably, intead of shield, just use a decorator named RPC indicating that it can be accessed from the client side.
@RPC
const onCommentDelete = (id: number): boolean => { ... }

The telefunc should be able to infer the parameter and return types from within the method definition itself. No need of shield in this case.
Last but not the least, I really don't know whether all this stuff like Context, Authentication, Permission, Abort is really required. According to me, let the developer handle all this  by himself.  If telefunc still wants to provide support for Context, Abort, etc. good enough. But it should be optional, let him use whatever libraries and framework features he wants to use for Error Handling, Validation, making the Context available to RPC methods, etc.
To infer the types, this package might be of help to you:
https://www.npmjs.com/package/reflect-metadata
Looking forward to hear from you.
Thanks

This syntax is better than the previous one. I'll read the documentation.
Thanks

Feel free to further ask questions after you're more familiar with Telefunc's way of doing things.

There is no reliable way to infer TS types at runtime, and reflect-metadata won't change that.

Actually, we could make it work.
I'm working on other things right now, but if you'd be up to contribute we can start implementing it.

I could not get back to you earlier. For now, I decided not to use the RPC in my current project. I am sorry I won't be able to devote time as I quite busy with the new project.
This link may give you some leads if you want to implement it.


Add service

To get information on managed ClusterAPI clusters:

query => /capiclusters
result:

[{"namespace":"default","name":"clusterapi-workload","clusterInfo":{"labels":{"cluster.x-k8s.io/cluster-name":"clusterapi-workload","env":"fv","topology.cluster.x-k8s.io/owned":""},"version":"v1.27.0","ready":true,"failureMessage":null}}]

To get information on managed SveltosClusters:

query => /sveltosclusters

Will fix ut in a separate PR.
Merging this to allow integration to proceed.


How to catch stack overflow?

Occasionally from time to time you'll accidentally write a deeply recursive function which blows the stack. Ideally this is caught and identified immediately, but sometimes a stack overflow can cause crazy corruption throughout the system and be otherwise very hard to debug.
Currently there's no mechanism for catching a stack overflow with wasm, and a stack overflow ends up corrupting the globals section most likely (oh dear!).

I think we might have run into this with stdweb... https://github.com/benkonz/texture_issue/pull/1#issuecomment-382498172

yes it would be awesome to know how to debug this thing

Maybe Rust could have a special compiler flag that introduces additional stack overflow checks and panics if it detects one.

@CryZe Yeah, that's definitely a good idea, even if it would be opt-out.

I think we should change the memory layout constructed by lld, as described in https://github.com/rust-lang-nursery/rust-wasm/issues/81#issuecomment-382880848

Yeah I do think that it's probably best to just change the default layout at this time. One unfortunate part is that it's still not easy to diagnose (a "segfault" and stack overflow look exactly the same). I think the only way we could handle that currently, though, would be to add a condition on all function calls that  checks the current stack pointer (which may have a perf hit)

I believe this was covered by --stack-first in LLD on https://github.com/rust-lang-nursery/rust-wasm/issues/81

Hey guys! I've been struggling with trying to detect (in JS) when a stack overflow occurs in my rust code (wasm). I see this issue has been closed for a while, but I'm not sure how to fix this myself. I'm hoping to be able to know when this happens, as well as when Exceptions like this happen:
Uncaught (in promise) RuntimeError: memory access out of bounds

Is this possible or no? Currently the promise that is returned from WASM just never resolves, which leaves the user spinning forever. Any ideas?

Hey guys! I've been struggling with trying to detect (in JS) when a stack overflow occurs in my rust code (wasm). I see this issue has been closed for a while, but I'm not sure how to fix this myself. I'm hoping to be able to know when this happens, as well as when Exceptions like this happen:
Uncaught (in promise) RuntimeError: memory access out of bounds

Is this possible or no? Currently the promise that is returned from WASM just never resolves, which leaves the user spinning forever. Any ideas?

@pjtatlow window.addEventListener('unhandledrejection', (event) => { ... }) works to catch such exceptions for me in Firefox and Safari, though it doesn't work in Chrome or Edge. See https://github.com/rustwasm/wasm-bindgen/issues/2392 for more details.

@pjtatlow window.addEventListener('unhandledrejection', (event) => { ... }) works to catch such exceptions for me in Firefox and Safari, though it doesn't work in Chrome or Edge. See https://github.com/rustwasm/wasm-bindgen/issues/2392 for more details.


BITMAKER-3249: Fix nested dictionaries parsing in estela-web job detail page

Description
Items with nested dictionaries, e.g.:
{
  "personal_info": {
    "name": "Ana",
    "age": 17
  }
}

break the job detail page because it cannot parse nested dictionaries.
Completion criteria:

Flatten JSON before showing items in estela-web. For example, the above example would be shown as personal_info.name: Ana and personal_info.age: 17

Issue
https://tasks.bitmaker.dev/issues/3249
Checklist before requesting a review

[x] I have performed a self-review of my code.
[x] My code follows the style guidelines of this project.
[x] I have made corresponding changes to the documentation.
[x] New and existing tests pass locally with my changes.
[x] If this change is a core feature, I have added thorough tests.
[x] If this change affects or depends on the behavior of other estela repositories, I have created pull requests with the relevant changes in the affected repositories. Please, refer to our official documentation.
[x] I understand that my pull request may be closed if it becomes obvious or I did not perform all of the steps above.

Closing this PR in favour of #192 , where it will be handled in a better way.


Cannot connect to webserver after configuration

Hi,
I can configure the wifi setup without a problem, but when it connects to my home wifi network I cannot open the IR management web interface, nor it can be pinged on the given ip adres.
However logging seems normal (see below)
ESP8266 IR Controller
Config pin GPIO10 set to: 1
mounted file system
*WM: Adding parameter
*WM: hostname
*WM: Adding parameter
*WM: passcode
*WM: Adding parameter
*WM: port_str
*WM: Adding parameter
*WM: user_id
Using Static IP
*WM:
*WM: AutoConnect
*WM: Connecting as wifi client...
*WM: Custom STA IP/GW/Subnet
*WM: <IP_ADDRESS>
*WM: Using last saved values, should be faster
*WM: Connection result:
*WM: 0
Entered config mode
<IP_ADDRESS>
IR Controller Configuration
*WM:
*WM: Configuring access point...
*WM: IR Controller Configuration
*WM: AP IP address:
*WM: <IP_ADDRESS>
*WM: HTTP server started
*WM: Request redirected to captive portal
*WM: Handle root
*WM: Request redirected to captive portal
*WM: Handle root
*WM: Request redirected to captive portal
*WM: Handle root
*WM: Scan done
*WM: DUP AP: Home2
*WM: Home2
*WM: -70
*WM: Sent config page
*WM: Request redirected to captive portal
*WM: Handle root
*WM: WiFi save
*WM: Parameter
*WM: hostname
*WM: IRBLASTER
*WM: Parameter
*WM: passcode
*WM: 12345678
*WM: Parameter
*WM: port_str
*WM: 80
*WM: Parameter
*WM: user_id
*WM:
*WM: static ip
*WM: <IP_ADDRESS>
*WM: static gateway
*WM: <IP_ADDRESS>
*WM: static netmask
*WM: <IP_ADDRESS>
*WM: Sent wifi save page
*WM: Connecting to new AP
*WM: Connecting as wifi client...
*WM: Custom STA IP/GW/Subnet
*WM: <IP_ADDRESS>
*WM: Already connected. Bailing out.
Should save config
WiFi connected! User chose hostname 'IRBLASTER' passcode '12345678' and port '80'
config...
{"hostname":"IRBLASTER","passcode":"12345678","port_str":"80","user_id":"","ip":"<IP_ADDRESS>","gw":"<IP_ADDRESS>","sn":"<IP_ADDRESS>"}
Writing config file
Config written successfully
*WM: freeing allocated params!
WiFi configuration complete
Local IP: <IP_ADDRESS>
URL to send commands: http://IRBLASTER.local:80
ArduinoOTA started
MDNS http service added. Hostname is set to IRBLASTER.local:80
HTTP Server started on port 80
Ready to send and receive IR signals
Turning off the LED to save power.

And you've got everything configured on the same subnet? Post your computer and router IP configurations as well as the URL you're trying

I am experiencing the same thing.
I can ping the ESP for a few seconds after a reboot/connect cycle and if i hit the webserver instantly after it boots and connects i can view the page, but it is only operational for a couple of seconds.   the whole device seems to crash at that point.
I did make sure to use the lwIP variant 1.4, but it didn't seem to make a difference.  I also tried 2 different devices, a standard nodeMCU 1.0 device, and a wemos v1 device.  Both experienced the same problem.

I've the same problem here

I missed that bug. I'll try downgrading the board library tonight when I get home.

Hi all, really hoping someone can help me debug. I am unable to connect to the webserver, even after downgrading to ESP8266 2.4.0 and using "IwIP variant Prebuilt". The serial plotter reads:
ESP8266 IR Controller
Config pin GPIO10 set to: 1
mounted file system
*WM: Adding parameter
*WM: hostname
*WM: Adding parameter
*WM: passcode
*WM: Adding parameter
*WM: port_str
*WM: Adding parameter
*WM: user_id
Using Static IP
*WM:
*WM: AutoConnect
*WM: Connecting as wifi client...
*WM: Custom STA IP/GW/Subnet
*WM: <IP_ADDRESS>
*WM: Using last saved values, should be faster
*WM: Connection result:
*WM: 3
*WM: IP Address:
*WM: <IP_ADDRESS>
WiFi connected! User chose hostname 'IRBLASTER' passcode '2345' and port '80'
*WM: freeing allocated params!
WiFi configuration complete
Local IP: <IP_ADDRESS>
URL to send commands: http://IRBLASTER.local:80
ArduinoOTA started
MDNS http service added. Hostname is set to IRBLASTER.local:80
HTTP Server started on port 80
Turning off the LED to save power.
Error retrieving external IP
HTTP Code: -1
connection refused
External IP address request took 5002 ms
Ready to send and receive IR signals
Signal received:
One line: FFFFFFFFFFFFFFFF:NEC:0 (Repeat)
uint16_t  rawData[3] = {8864,2360, 520};  // NEC FFFFFFFFFFFFFFFF
uint64_t  data = 0xFFFFFFFFFFFFFFFF;
Turning off the LED to save power.

From what i see the issue is that it's not setting the default IP to my subnet. Any ideas? Thanks in advance!

One thing you could try is to turn off the static up and use DHCP.  Just try commenting out :
wifiManager.setSTAStaticIPConfig(sip, sgw, ssn);
And wifiManager will default to DHCP.    Then you can make sure everything is still running and hasn't crashed.

One thing you could try is to turn off the static up and use DHCP. Just try commenting out :
wifiManager.setSTAStaticIPConfig(sip, sgw, ssn);
And wifiManager will default to DHCP. Then you can make sure everything is still running and hasn't crashed.

Cap, thank you so much! That indeed got it working. I was able to get the local server running and configure the device. It's showing up on my Alexa app, unfortunately when I try to issue a command to Alexa it says the device is not responding. If I open up the device on the app, it just shows device info, not the Power On/Off functionality i added. Any idea if that's normal?

That’s normal. Did you forward your ports and are able to view the device from your external IP? And if DHCP is working then I would guess you didn’t configure your static network settings correctly
Sent from my iPhone

On Oct 10, 2018, at 2:53 AM, Jonathan Selenkow<EMAIL_ADDRESS>wrote:
One thing you could try is to turn off the static up and use DHCP. Just try commenting out :
wifiManager.setSTAStaticIPConfig(sip, sgw, ssn);
And wifiManager will default to DHCP. Then you can make sure everything is still running and hasn't crashed.
Cap, thank you so much! That indeed got it working. I was able to get the local server running and configure the device. It's showing up on my Alexa app, unfortunately when I try to issue a command to Alexa it says the device is not responding. If I open up the device on the app, it just shows device info, not the Power On/Off functionality i added. Any idea if that's normal?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Why is it defaulting to static, though? DHCP is the better default for the vast majority of users.

I'm afraid this is happening to me with DHCP as well. It seems like the ESP is disassociating from the WiFi access point, as I can no longer see it in the list of devices on the router after a few seconds. I don't know why this might be, though...

Even with LwIP 1.4, I am experiencing crashes. Does anyone have a working build they can upload somewhere?

I'm not able to connect to the esp8266 with port forwarding turned on (am trying to connect to external IP from my cell phone, not sure if that's right. will need to find some documentation). When connecting locally, getting unresponsive pages/poor performance. Additionally, seeing these logs in my router:
Wed Oct 10 22:18:01 2018 | Critical (3) | SYNC Timing Synchronization failure - Failed to acquire QAM/...
Wed Oct 10 22:18:03 2018 | Warning (5) | MDD message timeout;CM-MAC=00:40:36:4b:f7:40;CMTS-MAC=00:01:...

DHCP isn't the default because its a static device with port forwarding, using DHCP doesn't make sense as any time DHCP reassigns IP address your port forwarding settings will fail
Post your full Arduino build settings (should be displayed at the status bar at the bottom of your IDE), and post all your router IP address settings (IP, subnet) and post the static settings you were trying to assign.
Only thing you don't need to post is your external IP address, and I wouldn't advise that.

Also, are there any special networking circumstances? Like are you behind a double NAT for instance?

@mdhiggins I assign static IP addresses on my router, so the DHCP server always assigns the same address, and it's easier than typing all the information in. Myself, I didn't build using Arduino IDE, I used PlatformIO with 2.4.0 and LwIP 1.4, as in #222, but there's a lot of instability, the device disassociates, hangs, etc.

I think if you run the firmware in #222 you'll see the same thing, since the build is pretty repeatable.

Do you have all the same issues when using Arduino? I’ve never used platform IO
Sent from my iPhone

On Oct 11, 2018, at 7:08 AM, Stavros Korokithakis<EMAIL_ADDRESS>wrote:
I think if you run the firmware in #222 you'll see the same thing, since the build is pretty repeatable.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

I'm not entirely sure, I've never used Arduino and IDE I don't even have it installed :/

I mean its tough for me to support a platform I've never used and didn't design the project for. Are others using PIO and having the same experience?
And I acknowledge that routers can keep IP addresses by using static settings and matched the MAC addresses but not all routers have this feature so static makes sense; plus its very basic information that it needs, just an IP and the subnet/router. It would be nice if Wifimanager more directly supported both modes but it does not.
I'm looking at the platform IO settings that are from the git pull and I would try changing the  board
Use nodemcuv2 instead of whatever is in there and also change to stable 2.4.0 not 2.4.0-rc2 as I'm not sure when the networking memory leak was introduced but it might be present in the rc2 build, just use the stable build.

Also looking at the build flags and I see PIO_FRAMEWORK_ARDUINO_LWIP_HIGHER_BANDWIDTH
Not 100% sure if that is equivalent to lwIP v1.4 prebuilt that's included with the nodemcuv2 board option that Arduino IDE uses (the high bandwidth and low bandwidth variants are not options when you switch to the correct board) but looking at the PIO documentation I don't see any additional build flags

d581294747eee5a7dbef4ed8ff2227a420dd9a79
May need to mess with the lwIP variant still but give that a try

My problem seems to have been with my router, I realized this when my ESPs started disconnecting one by one. In my case I set my router's encryption to TKIP/AES and everything was fixed. Ignore me, PlatformIO builds work fine.

DHCP isn't the default because its a static device with port forwarding, using DHCP doesn't make sense as any time DHCP reassigns IP address your port forwarding settings will fail
Post your full Arduino build settings (should be displayed at the status bar at the bottom of your IDE), and post all your router IP address settings (IP, subnet) and post the static settings you were trying to assign.

Hi Mike,
Thanks for the support, really hoping to get this working! Noted about DHCP, I will switch to static once i get it running (for some reason can't retrieve external IP when using static). I've double checked the IPs for now to make sure they haven't changed.

Here's my build settings: NodeMCU 1.0 (ESP-12E Module), 80MHz, 4M (1M SPIFFS), v1.4 Prebuilt, Disabled, Non, 115200 on Com4
Chip Model: ESP8266MOD
Gateway: <IP_ADDRESS>
ESP ip: <IP_ADDRESS>:80
i have set up port forwarding and specified the external/internal IP addresses and the correct port. There is also a DMZ function i turned on for the local IP which bypasses firewall

I ran through the process again, this time specifying my amazon  user id in the user_id field. I updated the passcode and edited the request url but getting the same result. (i left hostname at default, i'm unable to connect using mdns anyways so using local ip).
This time I'm getting a new message from the serial plotter:
Epoch time from timeServer is unexpectedly old, probably failed connection to the time server. Check your network settings
37
Invalid EPOCH time, security checks may fail if unable to sync with NTP server

Dumb question, but could you please confirm which of the urls from captured signal to specify? (i.e, external, hostname, local) I'm assuming external is correct, but what are the others for?

I wouldn't use both port forwarding and DMZ, just do port forwarding as you are opening up way more ports than you need to use DMZ
I assume your router's local IP address is also <IP_ADDRESS> and you can access the ESP8266's web portal
Your build settings all look correct, but its still failing to get the EPOCH time. EPOCH time is unix time, which should be a large number (can see the current unix time here https://www.epochconverter.com/)
Sometimes I've seen it fail due to strange DNS setups where the router didn't support DNS hosting, a limitation to WiFiManager's static IP address settings. Was the EPOCH time giving you an error and small number when you did the settings via DHCP?
One thing you can try to take DNS out of the equation is to modify the blueprint and change line 71 from
const char* poolServerName = "time.google.com"; to const char* poolServerName = "<IP_ADDRESS>";
This is the direct IP to time.google.com so you don't depend on DNS and see if that fetches the appropriate EPOCH time

And yes, Alexa needs to be pointing to the external IP address since the commands from the skill come from Amazon's servers outside of your local network, and you should be able to access your device's status page from your external IP address

I use DHCP to assign a static ip. Recently I added a secured iot vlan and
was able to shift all of my IR blasters to the new subnet and had
everything up and running on the new subnet in a matter of minutes without
having to recompile or try to get OTA to work.  This is especially nice in
the case of the blasters I have embedded in waterproof boxes mounted
outside used for controlling cheap floodlights.
On Fri, Oct 12, 2018, 6:49 AM Michael Higgins<EMAIL_ADDRESS>wrote:

And yes, Alexa needs to be pointing to the external IP address since the
commands from the skill come from Amazon's servers outside of your local
network, and you should be able to access your device's status page from
your external IP address
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mdhiggins/ESP8266-HTTP-IR-Blaster/issues/214#issuecomment-429299578,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEAwYndm6EP3y6pifSX992dJ3suowyo6ks5ukIHXgaJpZM4Wxa5p
.


[Feature request] Add Pre Configured Path For Different Genshin Directory

The Ability To Add Other Genshin Version Directory And Just Switch To Em At Instance By Just Accessing A Panel Definitely Gonna Increase Quality of Life, Take Minecraft Launcher For Example XD.

Not sure if newer servers (and their data) are backwards compatible with older clients. So you possibly would not only need to change the genshin client, but also the server.


The "designs" directory should have an index file

The designs directory has quite a large number of designs but no information at all about them. It would be good to have a README.md file which described some information about each design.
Relevant information would be;

Name.
Short description.
Who made it.
Type of design.
Where / when it was taped out.
Link to the current status on CI.
Link to a dashboard which shows the metrics about the design over time.

Maybe status / build badges would be good too...

The designs directory has quite a large number of designs but no information at all about them. It would be good to have a README.md file which described some information about each design.
Relevant information would be;
* Name.

* Short description.

* Who made it.

* Type of design.

* Where / when it was taped out.

* Link to the current status on CI.

* Link to a dashboard which shows the metrics about the design over time.

We are maintains a spreadsheet internally, which contain all above details.
I will make it as markdown format.

@vvbandeira
As we are maintaining spreadsheet here: https://docs.google.com/spreadsheets/d/1WEw40LbszfU73tOpUKDtW8G1I-jhOVI5yRYKzGZa8EI/edit#gid=0
Is possible to create a link to such spreadsheet, so whenever we update, its automatically get update here as well?

@vijayank88 we could add a URL to the spreadsheet, but I believe that having a README.md index as Tim suggested is a better practice. This way the list is contained in the repo itself.

@mithro
Please check this fork https://github.com/vijayank88/OpenLane-MPW-CI/blob/mpw_readme/MPW-2_README.md
Created for MPW-2 shuttle design list and its URL.
Please review and let me know to update or discard any columns from the markdown file.

It looks like it is heading in the right direction, but the README should be for the whole directory not a specific MPW? I shouldn't need to understand the efabless MPW runs to understand the contents of this directory.


Failed to create CoreCLR, HRESULT: 0x80004005

Issue Type: Bug
Open python project from code opened out of a Debian terminal running in WSL.
Extension version: 2019.9.34911
VS Code version: Code 1.38.1 (b37e54c98e1a74ba89e03073e5a3761284e3ffb0, 2019-09-11T13:35:15.005Z)
OS version: Windows_NT x64 10.0.18362
Remote OS version: Linux x64 4.4.0-18362-Microsoft

System Info

Item
Value

CPUs
Intel(R) Xeon(R) W-2125 CPU @ 4.00GHz (8 x 4008)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwareoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: enabledskia_deferred_display_list: disabled_offskia_renderer: disabled_offsurface_synchronization: enabled_onvideo_decode: enabledviz_display_compositor: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.66GB (18.01GB free)

Process Argv
--folder-uri=vscode-remote://wsl+Debian/home/srankin/src/phoenix-labs/python-monorepo --remote=wsl+Debian

Screen Reader
no

VM
0%

Item
Value

Remote
WSL: Debian

OS
Linux x64 4.4.0-18362-Microsoft

CPUs
Intel(R) Xeon(R) W-2125 CPU @ 4.00GHz (8 x 4008)

Memory (System)
31.66GB (18.01GB free)

VM
0%

The download is likely corrupted. Try deleting the downloaded folder and retrigger a download. https://github.com/microsoft/vscode-python/issues/3977 contains some instructions to do this.

This may also happen if you switch from stable to beta and back without deleting language server folder. See https://github.com/microsoft/python-language-server/wiki/Versioning-and-download-channels

@jakebailey what is the "downloaded folder" you are referring to? Is this the Extensions folder?
I don't have a folder whose name begins with ms-python.python despite this extension being enabled.

Also that issue [1] states that I should see the version in the Output window for Python and I definitely do not,
User belongs to experiment group 'ShowPlayIcon - start'
User belongs to experiment group 'AA_testing - experiment'
> conda --version
> python3.6 -c "import sys;print(sys.executable)"
> python2 -c "import sys;print(sys.executable)"
> python3.7 -c "import sys;print(sys.executable)"
> ~/.local/share/virtualenvs/python-monorepo-0N0D55HM/bin/python -c "import sys;print(sys.executable)"
> python -c "import sys;print(sys.executable)"
> python3 -c "import sys;print(sys.executable)"
> conda info --json
> pipenv --version
cwd: ~/src/phoenix-labs/python-monorepo
Starting Microsoft Python language server.
> pipenv --version

@MikhailArkhipov I have never switched between stable and beta.
I'm going to uninstall the extension and re-install to see if that helps.
[1] https://github.com/microsoft/vscode-python/issues/3977

The language server is not starting, so it's not going to print its version. Knowing the version is not important to removing it.
Reinstalling an extension does not help. VS Code doesn't actually uninstall extensions immediately, just marks them as uninstalled without deleting them.
The download folder is a folder that starts with languageServer in the folder for the extension with the name ms-python.python. If you don't have that on your system, then I'm not sure how the extension is running on your machine... If you're using VS Code remote, maybe the directory is living on another system and you'll have to find it there. Otherwise, I'm not sure where it could be and would suggest searching the system (maybe by using the explorer, or some other program like Everything).

No dice. However, looking at the Output for the Python Language Server I see the following so perhaps this isn't using a Windows path as [1] describes?
Downloading https://pvsc.azureedge.net/python-language-server-stable/Python-Language-Server-linux-x<IP_ADDRESS>.nupkg...
Language server dowload complete
Unpacking archive... done

[1] https://github.com/microsoft/vscode-python/issues/3977

I missed that this was WSL, so I'm not entirely certain where it's going to be storing the extension, but you might be able to use a WSL terminal and find .vscode there.

It does look like there's a .vscode directory in my $HOME,
PC-SRANKIN% pwd
/home/srankin/.vscode-server/extensions
PC-SRANKIN% ls -al
total 0
drwxrwxrwx 1 srankin srankin 4096 Sep 27 14:51 .
drwxrwxrwx 1 srankin srankin 4096 Aug  9 11:29 ..
drwxrwxrwx 1 srankin srankin 4096 Sep 18 14:37 gabrielbb.vscode-lombok-0.9.9
drwxrwxrwx 1 srankin srankin 4096 Aug 23 10:35 jeff-hykin.code-eol-1.0.8
drwxrwxrwx 1 srankin srankin 4096 Sep 27 14:51 ms-python.python-2019.9.34911
drwxrwxrwx 1 srankin srankin 4096 Sep 18 10:09 redhat.java-0.49.0
drwxrwxrwx 1 srankin srankin 4096 Aug 28 12:18 visualstudioexptteam.vscodeintellicode-1.1.9
drwxrwxrwx 1 srankin srankin 4096 Sep 24 10:26 vscjava.vscode-java-debug-0.22.0
drwxrwxrwx 1 srankin srankin 4096 Aug 28 12:17 vscjava.vscode-java-dependency-0.5.1
drwxrwxrwx 1 srankin srankin 4096 Sep  3 10:23 vscjava.vscode-java-pack-0.8.0
drwxrwxrwx 1 srankin srankin 4096 Sep 26 09:10 vscjava.vscode-java-test-0.20.0
drwxrwxrwx 1 srankin srankin 4096 Sep 27 13:15 vscjava.vscode-maven-0.19.1

that timestamp looks like when I just re-installed it.
Should I just run Code on the regular Windows side and install the extension there? Not sure what to try next?

I don't have any experience running the extension via WSL personally, but you should be able to go into that ms-python.python directory and delete the languageServer folder to trigger a re-download, if the issue is just that the download was bad. The timestamp may not matter if VS Code is caching uninstalled extensions for future installs.

Unfortunately deleting the languageServer.0.4.24 folder and restarting Code didn't improve anything. I'm starting to wonder if there's some bigger problem with the CoreCLR on this version of Debian or within WSL after seeing a number of references from other projects with this same sort of Failed to create CoreCLR, HRESULT: 0X800004005?
(python-monorepo) PC-SRANKIN% cd
(python-monorepo) PC-SRANKIN% cd .vscode-server
(python-monorepo) PC-SRANKIN% ls -al
total 0
drwxrwxrwx 1 srankin srankin 4096 Aug  9 11:29 .
drwxr-xr-x 1 srankin srankin 4096 Sep 27 14:59 ..
drwxrwxrwx 1 srankin srankin 4096 Sep 17 14:36 bin
drwxrwxrwx 1 srankin srankin 4096 Sep 27 14:50 data
drwxrwxrwx 1 srankin srankin 4096 Sep 27 14:51 extensions
(python-monorepo) PC-SRANKIN% cd extensions
(python-monorepo) PC-SRANKIN% ls
gabrielbb.vscode-lombok-0.9.9  visualstudioexptteam.vscodeintellicode-1.1.9  vscjava.vscode-java-test-0.20.0
jeff-hykin.code-eol-1.0.8      vscjava.vscode-java-debug-0.22.0              vscjava.vscode-maven-0.19.1
ms-python.python-2019.9.34911  vscjava.vscode-java-dependency-0.5.1
redhat.java-0.49.0             vscjava.vscode-java-pack-0.8.0
(python-monorepo) PC-SRANKIN% cd ms-python.python-2019.9.34911
(python-monorepo) PC-SRANKIN% ls -al
total 1504
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:51 .
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:51 ..
-rw-rw-r-- 1 srankin srankin 245654 Sep 27 14:50 CHANGELOG.md
-rw-r--r-- 1 srankin srankin   1773 Sep 27 14:50 experiments.json
-rw-r--r-- 1 srankin srankin  48597 Sep 27 14:50 icon.png
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:50 languages
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:51 languageServer.0.4.24
-rw-r--r-- 1 srankin srankin   1095 Sep 27 14:50 LICENSE.txt
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:50 out
-rw-r--r-- 1 srankin srankin  86058 Sep 27 14:51 package.json
-rw-r--r-- 1 srankin srankin   2379 Sep 27 14:50 package.nls.de.json
-rw-r--r-- 1 srankin srankin   2465 Sep 27 14:50 package.nls.es.json
-rw-r--r-- 1 srankin srankin   2481 Sep 27 14:50 package.nls.fr.json
-rw-r--r-- 1 srankin srankin   2349 Sep 27 14:50 package.nls.it.json
-rw-r--r-- 1 srankin srankin   2182 Sep 27 14:50 package.nls.ja.json
-rw-r--r-- 1 srankin srankin  29134 Sep 27 14:50 package.nls.json
-rw-r--r-- 1 srankin srankin   2036 Sep 27 14:50 package.nls.ko-kr.json
-rw-r--r-- 1 srankin srankin  14187 Sep 27 14:50 package.nls.nl.json
-rw-r--r-- 1 srankin srankin   4296 Sep 27 14:50 package.nls.pl.json
-rw-r--r-- 1 srankin srankin   2436 Sep 27 14:50 package.nls.pt-br.json
-rw-r--r-- 1 srankin srankin   3217 Sep 27 14:50 package.nls.ru.json
-rw-r--r-- 1 srankin srankin   2269 Sep 27 14:50 package.nls.zh-cn.json
-rw-r--r-- 1 srankin srankin   2288 Sep 27 14:50 package.nls.zh-tw.json
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:51 pythonFiles
-rw-rw-r-- 1 srankin srankin   6013 Sep 27 14:51 README.md
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:51 resources
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:51 schemas
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:51 snippets
drwxrwxrwx 1 srankin srankin   4096 Sep 27 14:51 syntaxes
-rw-r--r-- 1 srankin srankin 941944 Sep 27 14:51 ThirdPartyNotices-Distribution.txt
-rw-r--r-- 1 srankin srankin  54926 Sep 27 14:51 ThirdPartyNotices-Repository.txt
-rw-rw-r-- 1 srankin srankin   3117 Sep 27 14:50 .vsixmanifest
(python-monorepo) PC-SRANKIN% rm -rf ./languageServer.0.4.24
(python-monorepo) PC-SRANKIN% cd ~/src/phoenix-labs/python-monorepo
(python-monorepo) PC-SRANKIN% code .

A quick search nets dotnet/core-setup#4149 and dotnet/core-setup#6692, indicating that the tempdir isn't writable for some reason.

Those are two of the issues I saw when searching and troubleshooting before posting this issue. I also tried the suggested workaround from [1] before launching code .,
export COMPlus_EnableDiagnostics=0

to no avail. I do have the same trouble making a fifo as one of the updates in [1] describes,
(python-monorepo) PC-SRANKIN% pwd
/mnt/c/Users/srankin/AppData/Local
(python-monorepo) PC-SRANKIN% pwd
/mnt/c/Users/srankin/AppData/Local
(python-monorepo) PC-SRANKIN% mkfifo testfifo
mkfifo: cannot create fifo 'testfifo': Operation not permitted
(python-monorepo) PC-SRANKIN% cd /tmp
(python-monorepo) PC-SRANKIN% mkfifo testfifo
(python-monorepo) PC-SRANKIN% ls -ltr testfifo
prw-rw-rw- 1 srankin srankin 0 Sep 27 15:28 testfifo
(python-monorepo) PC-SRANKIN% env |grep COM
COMPlus_EnabledDiagnostics=0

As far as I can tell my %LOCALAPPDATA%\Temp folder is writeable,
drwxrwxrwx 1 srankin srankin  4096 Sep 27 15:23  Temp
(python-monorepo) PC-SRANKIN% pwd
/mnt/c/Users/srankin/AppData/Local

[1] https://github.com/dotnet/coreclr/pull/15878

(python-monorepo) PC-SRANKIN% env |grep TMP
TMPDIR=/mnt/c/Users/srankin/AppData/Local/Temp

As an additional test I made a hello.py in C:\Users\srankin\ and opened it with Code and it suggested I install the Python extension and reload (which I did). I confirmed this downloaded a Python Language Server into C:\Users\srankin\.vscode\extensions\ms-python.python-2019.9.34911.
When I opened the original project I had been looking at the VSCode extensions panel suggested I should install the Python extension in WSL (which I did). Unfortunately, I still receive the same errors from the Python Language Server about failing to create CoreCLR and closing the server.

#1619 was the same thing, but happened on macOS.

https://stackoverflow.com/questions/38235855/when-dotnet-tool-wont-start-up-failed-to-initialize-what-environment-variable suggests setting
COREHOST_TRACE=1

to get more info.

https://stackoverflow.com/questions/38235855/when-dotnet-tool-wont-start-up-failed-to-initialize-what-environment-variable suggests setting
COREHOST_TRACE=1

to get more info. Also does dotnet --version work? What does it output? Although this will fail if .NET is not installed (which is normal since LS packages everything it needs).

after I type in set COREHOST_TRACE=1 in command line,there is no echo result.
where is more info, I seems know nothing.
what does your LS mean?
output of dotnet --version
.NET Core SDK (reflecting any global.json):
 Version:   3.0.100
 Commit:    04339c3a26

Runtime Environment:
 OS Name:     Mac OS X
 OS Version:  10.14
 OS Platform: Darwin
 RID:         osx.10.14-x64
 Base Path:   /usr/local/share/dotnet/sdk/3.0.100/

Host (useful for support):
  Version: 3.0.0
  Commit:  7d57652f33

.NET Core SDKs installed:
  3.0.100 [/usr/local/share/dotnet/sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.1.13 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

COREHOST_TRACE=1 would need to be set in the environment that the LS starts in. I'm not sure if it'd pass through, but you might be able to do an export COREHOST_TRACE=1, then launch code from the terminal (code ., or the full path to the code binary in the Applications folder), and then see if the LS outputs something there via stderr.

#1619 was the same thing, but happened on macOS.

yes...but  this problem is still unsolved, so I still use intellisense for auto-complete until this bug is fixed

Try removing 2.x version as described here https://docs.microsoft.com/en-us/dotnet/core/versions/remove-runtime-sdk-versions?tabs=macos i.e. this
Microsoft.NETCore.App 2.1.13 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

Try removing 2.x version as described here https://docs.microsoft.com/en-us/dotnet/core/versions/remove-runtime-sdk-versions?tabs=macos i.e. this
Microsoft.NETCore.App 2.1.13 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]

after do this, that problem is still.

Did you try setting COREHOST_TRACE=1 to get more info on the CLR failure.

Did you try setting COREHOST_TRACE=1 to get more info on the CLR failure.
yes,i did.  there is no more info,the same as before.

Downloading https://pvsc.azureedge.net/python-language-server-stable/Python-Language-Server-osx-x<IP_ADDRESS>.nupkg...
Language server dowload complete
Unpacking archive... done
Failed to create CoreCLR, HRESULT: 0x80004005
[Info  - 1:00:33 PM] Connection to server got closed. Server will restart.
Failed to create CoreCLR, HRESULT: 0x80004005
[Info  - 1:00:33 PM] Connection to server got closed. Server will restart.
Failed to create CoreCLR, HRESULT: 0x80004005
[Info  - 1:00:33 PM] Connection to server got closed. Server will restart.
Failed to create CoreCLR, HRESULT: 0x80004005
[Info  - 1:00:34 PM] Connection to server got closed. Server will restart.
Failed to create CoreCLR, HRESULT: 0x80004005
[Error - 1:00:34 PM] Connection to server got closed. Server will not be restarted.

Frankly, we are not CLR experts, there are few closed issues in dotnet repo on this. Perhaps this one about ulimit? https://github.com/dotnet/cli/issues/10071

Ported to https://github.com/dotnet/cli/issues/12809

Frankly, we are not CLR experts, there are few closed issues in dotnet repo on this. Perhaps this one about ulimit? dotnet/cli#10071
when I do this(type in "ulimit -n 4096" in terminal,but system default value is 256),that problem is still and log doesn't change.

Closing since there is nothing we can do with CLR behavior. Upstream issue is still open.


Regex search in file results in ReDoS

Regarding https://github.com/microsoft/vscode/issues/97238#issuecomment-631545925 , that looks to be mentioning a search in file, where we use the built-in JavaScript regex, so these two issues are AFAICT unrelated.
Originally posted by @alexdima in https://github.com/microsoft/vscode/issues/97238#issuecomment-702157124

A regex search of a file with the following causes a hang:
smallest_valid_png = %w[89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 00 01 00 00 00 01 08 06 00 00 00 1f 15 c4 89 00 00 00 0a 49 44 41 54 78 9c 63 00 01 00 00 05 00 01 0d 0a 2d b4 00 00 00 00 49 45 4e 44 ae 42 60 82]

regex:
(?:smallest_valid_png = %w\[)(?:.*( ))*\]

Affects the latest stable release and insider release.

Version: 1.49.2
Commit: e5e9e69aed6e1984f7499b7af85b3d05f9a6883a
Date: 2020-09-24T16:23:52.277Z
Electron: 9.2.1
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: <IP_ADDRESS>-electron.0
OS: Darwin x64 19.6.0

Version: 1.50.0-insider
Commit: 228973889bc0e352f7cd11cc14755893f8d81864
Date: 2020-10-01T05:28:37.293Z
Electron: 9.2.1
Chrome: 83.0.4103.122
Node.js: 12.14.1
V8: <IP_ADDRESS>-electron.0
OS: Darwin x64 19.6.0

I tried the input at https://regex101.com/ and it appears the regex suffers from catastrophic backtracking:

More info: http://www.regular-expressions.info/catastrophic.html
There are many such regular expressions and from what I could tell, v8 or other JS engines don't care to hear about them and they recommend to simply avoid such regexes.


Duplicated code for conflicts and dependencies

The modules that implement the search for conflicts and dependencies have lot of duplicated code. In particular, some pushout complements are calculated in multiple places, some searches for morphisms are repeated in multiple places. We should try to reduce this duplication.

Why are there multiple functions findAllDeleteUse, findAllProduceForbid, etc, instead of just one findAllConflicts whose result can be filtered as required?


[Website] Allow place holders to be used in code examples

Summary
Addresses an issue introduced in #2025 where the API Reference doc fails to be generated when the website is built.
As part of the website generation script, the markdown source files are converted into React components, and the markdown content is HTML-fied and injected into the component. Prior to this fix, any place holders in the original markdown document will persist in the React component. This results in a script error as the variable used in the example is, as expected, not defined in this context:
Error: ReferenceError: received is not defined
    at /Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/guard.js:27:12
    at onOutputGenerated (/Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/index.js:96:9)
    at Object.done (/Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/DefaultRouter.js:345:7)
    at renderReactPage (/Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/renderReactPage.js:130:17)
    at renderComponentPackage (/Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/DefaultRouter.js:331:3)
    at routePackageHandler (/Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/DefaultRouter.js:274:5)
    at onComputePackage (/Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/index.js:100:9)
    at /Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/guard.js:29:10
    at onWarmed (/Users/hramos/git/react/jest/website/node_modules/react-page-middleware/src/Packager.js:270:9)
    at /Users/hramos/git/react/jest/website/node_modules/react-page-middleware/node_modules/async/lib/async.js:116:25

We address this by escaping the dollar sign in any place holders being used in the original markdown document.
The regex used to do this should match, at minimum, the existing place holders:
${received}
${pass ? 'not ' : ''}
${actual}
${this.utils.printExpected(expected)}
${this.utils.printReceived(received)}

Test plan
Built and ran the website locally. The API Reference doc is generated successfully, and the sample code is displayed is correct.
Capture of the actual API Reference doc as generated once this fix is in place (highlights added by the author are not present in the website as generated):

thank you!