Editor window flicker and game silently restarts while trying to write d3d12.dll in project dir

Tested versions
-4.3.stable & (-.mono)
Due to D3D12 being supported from 4.3 earlier versions are probably unaffected
System information
Godot v4.3.stable.mono - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 6GB (NVIDIA; <IP_ADDRESS>03) - Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz (8 Threads)
Issue description
I noticed a weird flicker on the editor title window when the game was running, and in my peripheral vision i would often see something change in the taskbar, which turned out to be the game window closing for a split second and reopening (renderer crash perhaps?).
For now, I only looked at ProcMon and saw, that when the flicker/game reappearance happens, godot is trying to write d3d12.dll to my project dir and then gpu driver files get called
I will try to dig deeper into this shortly.
NOTE: This issue persists when Fallback to D3D12 is disabled

Steps to reproduce
Underlying cause not yet discovered but for me:

Open any project
Run game and wait until window flickers
Notice game sometimes reopening in the taskbar for a split second

Minimal reproduction project (MRP)
N/A

Possibly related Issue Comment
as nvldumdx.dll also gets loaded every frame when I resize the game window with vsync

This also affects the editor window.
System Info:
Godot v4.2.beta (a574c02) - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 2070 (NVIDIA; <IP_ADDRESS>98) - Intel(R) Core(TM) i7-10750H CPU @ 2.60GHz (12 Threads)
When the debugger is attached I get this in the debug console:
Exception thrown at 0x00007FFDF5F04FFC in godot.windows.editor.dev.x86_64.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000009E7AFF24D0.
Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvmii.inf_amd64_bbbaf2edf0a69617\Display.NvContainer\MessageBus.dll'.
Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvmii.inf_amd64_bbbaf2edf0a69617\nvwgf2umx.dll'.
Unloaded 'C:\Windows\System32\DriverStore\FileRepository\nvmii.inf_amd64_bbbaf2edf0a69617\nvldumdx.dll'.
Unloaded 'C:\Windows\System32\ntasn1.dll'.
Unloaded 'C:\Windows\System32\ncrypt.dll'.
Unloaded 'C:\Windows\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_3e62be9c39fb0007\igd10iumd64.dll'.
Loaded 'C:\Windows\System32\DriverStore\FileRepository\nvmii.inf_amd64_bbbaf2edf0a69617\nvldumdx.dll'.
Loaded 'C:\Windows\System32\DriverStore\FileRepository\nvmii.inf_amd64_bbbaf2edf0a69617\nvwgf2umx.dll'.
Loaded 'C:\Windows\System32\DriverStore\FileRepository\nvmii.inf_amd64_bbbaf2edf0a69617\Display.NvContainer\MessageBus.dll'.
Exception thrown at 0x00007FFDF5F04FFC in godot.windows.editor.dev.x86_64.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000009E7AFE4110.
Exception thrown at 0x00007FFDF5F04FFC in godot.windows.editor.dev.x86_64.exe: Microsoft C++ exception: Poco::NotFoundException at memory location 0x0000009E7AFE4150.
Loaded 'C:\Windows\System32\DriverStore\FileRepository\iigd_dch.inf_amd64_3e62be9c39fb0007\igd10iumd64.dll'.
Loaded 'C:\Windows\System32\ncrypt.dll'.
Loaded 'C:\Windows\System32\ntasn1.dll'.

These messages continuously repeat while resizing.


opticalbar: distorted results

Describe the bug
We are experiencing problems with stereodem extraction from declassified satellite images kh 4b.
The problem is that edges of the result are shifted by several km towards the center of the image, as if the panorama correction is not working properly.
To Reproduce
Follow the example in https://stereopipeline.readthedocs.io/en/latest/examples.html#declassified-satellite-images-kh-4b
with DS1043-2201DA006, DS1043-2201DF006.
Providing 34 evenly spaced GCPs to bundle_adjust did not improve the results.
Expected behavior
The geolocation of the result is similarly accurate across the whole scene without distortions at the far edges.
Your Environment (please complete the following information):

OS: Linux Fedora 34, Centos 7
ASP Version: 2.7.0

Thank you for letting us know. ASP's support for KH cameras is rather experimental. There is film warping that we don't model, and it is an open question about how well we model the cameras or solve for them given the model. It will take a good amount of work for us to improve the support for these cameras, and for the time being we have no funding for this.
Maybe things may work better for smaller sections of the images, so mosaicking just one or two observations.

The example in the manual recommends a sanity check: mapproject the images with these cameras before proceeding with stereo processing. Interestingly, the result of mapproject is very good and it appears that correction for the KH panorama cameras is properly applied. It seems that this panorama correction is missing in the stereodem. Maybe this helps to narrow down any efforts for improvement.

Thank you for letting us know. ASP's support for KH cameras is rather experimental. There is film warping that we don't model, and it is an open question about how well we model the cameras or solve for them given the model. It will take a good amount of work for us to improve the support for these cameras, and for the time being we have no funding for this.

Do you have any estimate what range of funding might be required here? Please feel free to answer via email to me.

BTW, a paper on related work for KH-4 is being published. (https://arxiv.org/pdf/2201.07756.pdf) They model rigorously the optical bar sensor but do not deal with the distortion due to film scanning.


Add a sample Python code

@jbouzak Hi John, could you please help review the pull request? Thanks!


Switch back to crates.io version of binary_heap_plus

Switch back to the crates.io version of binary_heap_plus after https://github.com/sekineh/binary-heap-plus-rs/pull/1 is merged and published.

Solved in 43bd0a6.


Example has unused Field

I'm not sure if it is a mistake or not, but this doesn't seem to be used.

yes, definitely looks like a mistake!

I'll create a PR

Closed in favor of #59


Task/correct model choices

What's this PR do?
It corrects the choices fields on ever model so their non readable part, can be accessible programatically.
Where should the reviewer start?
The reviewer should check that the choices where changed properly.
How should this be manually tested?
N/A
Any background context you want to provide?
This was originally proposed by @csssaz
This template was adapted ~stolen~ from Quickleft/Sprint.ly

Codecov Report

Merging #35 into develop will increase coverage by 0.18%.
The diff coverage is 100%.

@@             Coverage Diff             @@
##           develop      #35      +/-   ##
===========================================
+ Coverage    94.41%   94.59%   +0.18%
===========================================
  Files           74       75       +1
  Lines         1039     1074      +35
===========================================
+ Hits           981     1016      +35
  Misses          58       58

Impacted Files
Coverage Δ

familias/migrations/0008_auto_20170303_2331.py
100% <100%> (ø)

familias/models.py
94.11% <100%> (+4.64%)
:white_check_mark:

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 8cd57fc...3b3c3c6. Read the comment docs.


Update zio-prelude to 1.0.0-RC31

About this PR
📦 Updates dev.zio:zio-prelude from 1.0.0-RC21 to 1.0.0-RC31
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio", artifactId = "zio-prelude" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "dev.zio", artifactId = "zio-prelude" }
}]

labels: library-update, early-semver-pre-release, semver-spec-pre-release, commit-count:1

Superseded by #592.


x/net/http2: panic on (*clientStream).bufPipe.Write

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go1.8.3
What operating system and processor architecture are you using (go env)?
freebsd, amd64
What did you do?
We a getting panics in http2 code while using it as a client (direct use of http2.Transport).
We are still trying to find a way to reproduce it.
Could be related to #20501.
What did you expect to see?
No panic.
What did you see instead?
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x6e21f7]

goroutine 3963 [running]:
golang.org/x/net/http2.(*pipe).Write(0xc42066e8e8, 0xc420790000, 0x56, 0x295, 0x0, 0x0, 0x0)
    src/golang.org/x/net/http2/pipe.go:85 +0x107
golang.org/x/net/http2.(*clientConnReadLoop).processData(0xc4201c0fb0, 0xc420397470, 0xc420397470, 0x0)
    src/golang.org/x/net/http2/transport.go:1819 +0x2dc
golang.org/x/net/http2.(*clientConnReadLoop).run(0xc4201c0fb0, 0x7ec5e0, 0xc4201e87b0)
    src/golang.org/x/net/http2/transport.go:1467 +0x861
golang.org/x/net/http2.(*ClientConn).readLoop(0xc4207de340)
    src/golang.org/x/net/http2/transport.go:1359 +0xa6
created by golang.org/x/net/http2.(*Transport).newClientConn
    src/golang.org/x/net/http2/transport.go:535 +0x728

@rs I see this happens on go1.8.3, how about on go1.9rc2 or on tip? Also if possible perhaps a repro, please?
/cc @tombergan

I’m using x/net/http2 directly so it should not be affected by the version of go.
I’m working on a repro.

@rs thanks for letting me know. Empirically I'd have thought that mattered because I could find go18.go, go19.go files in x/net/http2
$ find . -type f  -name "go[1-9]*"
./go16.go
./go17.go
./go17_not18.go
./go18.go
./go18_test.go
./go19.go
./go19_test.go

but on further examination, doesn't seem like a lot has changed at least between go1.8 and go1.9 in there so I get what you mean, thanks.

One way to reproduce (I can't assert that's what happen here), is to have a broken server sending DATA frame before HEADERS frame. Here is a way to reproduce the crash:
https://play.golang.org/p/itUqFozrTC
2017/08/17 20:21:26 server: got preface: "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n"
2017/08/17 20:21:26 server: write SETTINGS frame
2017/08/17 20:21:26 server: waiting for frame
2017/08/17 20:21:26 server: got frame: &http2.SettingsFrame{FrameHeader:http2.FrameHeader{valid:true, Type:0x4, Flags:0x0, Length:0x12, StreamID:0x0}, p:[]uint8{0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x40, 0x0, 0x0, 0x0, 0x6, 0x0, 0xa0, 0x0, 0x0}}
2017/08/17 20:21:26 server: sending SETTINGS ACK frame
2017/08/17 20:21:26 server: waiting for frame
2017/08/17 20:21:26 server: got frame: &http2.WindowUpdateFrame{FrameHeader:http2.FrameHeader{valid:true, Type:0x8, Flags:0x0, Length:0x4, StreamID:0x0}, Increment:0x40000000}
2017/08/17 20:21:26 server: waiting for frame
2017/08/17 20:21:26 client: sending request
2017/08/17 20:21:26 server: got frame: &http2.HeadersFrame{FrameHeader:http2.FrameHeader{valid:true, Type:0x1, Flags:0x5, Length:0x19, StreamID:0x1}, Priority:http2.PriorityParam{StreamDep:0x0, Exclusive:false, Weight:0x0}, headerFragBuf:[]uint8{0x81, 0x82, 0x84, 0x47, 0x0, 0x50, 0x83, 0x9b, 0xd9, 0xab, 0x7a, 0x8d, 0xc4, 0x75, 0xa7, 0x4a, 0x6b, 0x58, 0x94, 0x18, 0xb5, 0x25, 0x81, 0x2e, 0xf}}
2017/08/17 20:21:26 server: sending DATA frame
2017/08/17 20:21:26 server: waiting for frame
2017/08/17 20:21:26 server: got frame: &http2.SettingsFrame{FrameHeader:http2.FrameHeader{valid:true, Type:0x4, Flags:0x1, Length:0x0, StreamID:0x0}, p:[]uint8{}}
2017/08/17 20:21:26 server: sending SETTINGS ACK frame
2017/08/17 20:21:26 server: waiting for frame
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x11f0eb7]

goroutine 36 [running]:
golang.org/x/net/http2.(*pipe).Write(0xc4200f03e8, 0xc4200776a0, 0x4, 0xc, 0x0, 0x0, 0x0)
	/Users/rs/go/src/golang.org/x/net/http2/pipe.go:85 +0x107
golang.org/x/net/http2.(*clientConnReadLoop).processData(0xc42003afb0, 0xc42007d380, 0xc42007d380, 0x0)
	/Users/rs/go/src/golang.org/x/net/http2/transport.go:1832 +0x2cc
golang.org/x/net/http2.(*clientConnReadLoop).run(0xc42003afb0, 0x129cd88, 0xc4200997b0)
	/Users/rs/go/src/golang.org/x/net/http2/transport.go:1468 +0x861
golang.org/x/net/http2.(*ClientConn).readLoop(0xc42008ad00)
	/Users/rs/go/src/golang.org/x/net/http2/transport.go:1359 +0xa6
created by golang.org/x/net/http2.(*Transport).newClientConn
	/Users/rs/go/src/golang.org/x/net/http2/transport.go:582 +0x728
exit status 2

One way to reproduce (I can't assert that's what happen here), is to have a broken server sending DATA frame before HEADERS frame. Here is a way to reproduce the crash:
https://play.golang.org/p/itUqFozrTC
2017/08/17 20:21:26 server: got preface: "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n"
2017/08/17 20:21:26 server: write SETTINGS frame
2017/08/17 20:21:26 server: waiting for frame
2017/08/17 20:21:26 server: got frame: &http2.SettingsFrame{FrameHeader:http2.FrameHeader{valid:true, Type:0x4, Flags:0x0, Length:0x12, StreamID:0x0}, p:[]uint8{0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x0, 0x40, 0x0, 0x0, 0x0, 0x6, 0x0, 0xa0, 0x0, 0x0}}
2017/08/17 20:21:26 server: sending SETTINGS ACK frame
2017/08/17 20:21:26 server: waiting for frame
2017/08/17 20:21:26 server: got frame: &http2.WindowUpdateFrame{FrameHeader:http2.FrameHeader{valid:true, Type:0x8, Flags:0x0, Length:0x4, StreamID:0x0}, Increment:0x40000000}
2017/08/17 20:21:26 server: waiting for frame
2017/08/17 20:21:26 client: sending request
2017/08/17 20:21:26 server: got frame: &http2.HeadersFrame{FrameHeader:http2.FrameHeader{valid:true, Type:0x1, Flags:0x5, Length:0x19, StreamID:0x1}, Priority:http2.PriorityParam{StreamDep:0x0, Exclusive:false, Weight:0x0}, headerFragBuf:[]uint8{0x81, 0x82, 0x84, 0x47, 0x0, 0x50, 0x83, 0x9b, 0xd9, 0xab, 0x7a, 0x8d, 0xc4, 0x75, 0xa7, 0x4a, 0x6b, 0x58, 0x94, 0x18, 0xb5, 0x25, 0x81, 0x2e, 0xf}}
2017/08/17 20:21:26 server: sending DATA frame
2017/08/17 20:21:26 server: waiting for frame
2017/08/17 20:21:26 server: got frame: &http2.SettingsFrame{FrameHeader:http2.FrameHeader{valid:true, Type:0x4, Flags:0x1, Length:0x0, StreamID:0x0}, p:[]uint8{}}
2017/08/17 20:21:26 server: sending SETTINGS ACK frame
2017/08/17 20:21:26 server: waiting for frame
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x11f0eb7]

goroutine 36 [running]:
golang.org/x/net/http2.(*pipe).Write(0xc4200f03e8, 0xc4200776a0, 0x4, 0xc, 0x0, 0x0, 0x0)
	/Users/rs/go/src/golang.org/x/net/http2/pipe.go:85 +0x107
golang.org/x/net/http2.(*clientConnReadLoop).processData(0xc42003afb0, 0xc42007d380, 0xc42007d380, 0x0)
	/Users/rs/go/src/golang.org/x/net/http2/transport.go:1832 +0x2cc
golang.org/x/net/http2.(*clientConnReadLoop).run(0xc42003afb0, 0x129cd88, 0xc4200997b0)
	/Users/rs/go/src/golang.org/x/net/http2/transport.go:1468 +0x861
golang.org/x/net/http2.(*ClientConn).readLoop(0xc42008ad00)
	/Users/rs/go/src/golang.org/x/net/http2/transport.go:1359 +0xa6
created by golang.org/x/net/http2.(*Transport).newClientConn
	/Users/rs/go/src/golang.org/x/net/http2/transport.go:582 +0x728
exit status 2

cc @tombergan @bradfitz

Reopening: this is fixed in x/net/http2 but needs to be imported into net/http. I will do that eventually.

FYI, this fix did not solve our panic issue. It must be another code path leading to a nil pipeBuffer.

Are you using x/net/http2 directly or net/http? The fix has not been imported into net/http yet. If you're using x/net/http2, can you post a stack trace?

Yes we are using x/net/http2 directly. Here is the stack trace:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x76a747]

goroutine 121 [running]:
golang.org/x/net/http2.(*pipe).Write(0xc4204c8668, 0xc420191500, 0x7, 0x1400, 0x0, 0x0, 0x0)
	src/golang.org/x/net/http2/pipe.go:85 +0x107
golang.org/x/net/http2.(*clientConnReadLoop).processData(0xc4202bdfb0, 0xc420522c90, 0xc420522c90, 0x0)
	src/golang.org/x/net/http2/transport.go:1831 +0x2ec
golang.org/x/net/http2.(*clientConnReadLoop).run(0xc4202bdfb0, 0x89ba98, 0xc4202c6fb0)
	src/golang.org/x/net/http2/transport.go:1471 +0x7f8
golang.org/x/net/http2.(*ClientConn).readLoop(0xc4203d3040)
	src/golang.org/x/net/http2/transport.go:1359 +0xa6
created by golang.org/x/net/http2.(*Transport).newClientConn
	src/golang.org/x/net/http2/transport.go:535 +0x728

@tombergan any clue?

@rs so I am using Go1.8.3 and I've gone through the net repo commit by commit, running the reproducer you posted.
Some actionable observations/questions:

Tip of x/net/http2 is at https://github.com/golang/net/tree/66aacef3dd8a676686c7ae3716979581e8b03c47/http2

https://github.com/golang/net/tree/1c05540f6879653db88113bc4a2b70aec4bd491f is the first hash on which I am able to reproduce your crash. From there on, I am able to keep the crash going until we encounter
https://github.com/golang/net/tree/5961165da77ad3a2abf3a77ea904c13a76b0b073/http2 which doesn't crash and successfully spits out a PROTOCOL_ERROR. That is about ~62 commits before your first fix at https://github.com/golang/net/commit/57efc9c3d9f91fb3277f8da1cff370539c4d3dc5.
Here is a gist of the diff of what added, to make your repro break https://gist.github.com/odeke-em/d5f1690f0343885d4ce780f975576b3b
Therefore I assume your code was definitely before https://github.com/golang/net/commit/57efc9c3d9f91fb3277f8da1cff370539c4d3dc5 but probably after https://github.com/golang/net/tree/5961165da77ad3a2abf3a77ea904c13a76b0b073/http2.
If so, none of those commits' line numbers match your report in https://github.com/golang/go/issues/21466#issue-250508775, most of the last line crashes happen on 534 and that's 1 line from your crash report. I am also using Go1.8.3 which makes me think that perhaps that's a custom patched x/net/http2 that you are using?

Could you please provide the hash of the commit in your x/net repo currently for the latest report in https://github.com/golang/go/issues/21466#issuecomment-328721910 and for future crashes too?

My code is locked on golang/net@59a0b19 with a few unrelated (waiting for upstream) patches. That's why the line numbers don't match.
I'm not using http2 thru the standard library but as a standalone lib so the version of Go should have minimal impact.
The reproducer I provided was based on an assumption of a code path the would lead to this panic. It was an actual bug but apparently not the bug hitting my code. There must be another code path that is problematic.

Can you provide links to the lines of code in the stack trace from this comment? The line numbers are kind of non-sensical even at golang/net@59a0b19.
Is it possible to sync to head to verify this is not happening because you're missing some patch added since Jun 3? Note that there have been 13 patches since then. If you're running an old version with custom patches, it's going to be very difficult to verify that there's a bug in head rather than in your old branch plus patches.

I'm locked on this rev because I can't go past golang/net@1c0554 without risking blocking requests due to the way the connection pool is handled today (cf discussion in #17776).
Here is the stack trace with line number shifted to the current master:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x76a747]

goroutine 121 [running]:
golang.org/x/net/http2.(*pipe).Write(0xc4204c8668, 0xc420191500, 0x7, 0x1400, 0x0, 0x0, 0x0)
	src/golang.org/x/net/http2/pipe.go:85 +0x107
golang.org/x/net/http2.(*clientConnReadLoop).processData(0xc4202bdfb0, 0xc420522c90, 0xc420522c90, 0x0)
	src/golang.org/x/net/http2/transport.go:1878 +0x2ec
golang.org/x/net/http2.(*clientConnReadLoop).run(0xc4202bdfb0, 0x89ba98, 0xc4202c6fb0)
	src/golang.org/x/net/http2/transport.go:1506 +0x7f8
golang.org/x/net/http2.(*ClientConn).readLoop(0xc4203d3040)
	src/golang.org/x/net/http2/transport.go:1397 +0xa6
created by golang.org/x/net/http2.(*Transport).newClientConn
	src/golang.org/x/net/http2/transport.go:581 +0x728

Is it possible to get an http2debug trace? If not, anything else you could mention about the request would be useful.
Possible: if it's a HEAD request, then cs.bufPipe.b will be nil. If DATA comes in response to a HEAD, we might crash (I'm not sure -- a test case would verify).
Possible: we are not forgetting the stream after an error reading the response header. For example, we might need to call forgetStream here. Unfortunately, the cancel/forget logic is currently a bit ad hoc and should be cleaned up.
We could prevent any crash like this by checking if cs.bufPipe.p is nil here, but I'd rather understand why p is nil before doing anything.

Unfortunately I currently have no way to link the request responsible for this crash with the panic.
I can't enable http2debug as it would hurt perf and produce too much logs. We get about 25 panics per day across many servers. When a server get affected, it generally get several crashes in a row then nothing for days (or ever).
I agree, I would prefer to get to the bottom of it instead of masking the problem with a check on cs.bufPipe.p.

Possible: if it's a HEAD request, then cs.bufPipe.b will be nil. If DATA comes in response to a HEAD, we might crash (I'm not sure -- a test case would verify).

Repro'd with the following test:
func TestTransportResponseDataWithHeadRequest(t *testing.T) {
    ct := newClientTester(t)
    ct.client = func() error {
        defer ct.cc.(*net.TCPConn).CloseWrite()
        req := httptest.NewRequest("HEAD", "https://dummy.tld/", nil)
        resp, err := ct.tr.RoundTrip(req)
        if err != nil {
            return fmt.Errorf("RoundTrip expected response, got error: %v", err)
        }
        defer resp.Body.Close()
        _, err = ioutil.ReadAll(resp.Body)
        return err
    }
    ct.server = func() error {
        ct.greet()
        for {
            f, err := ct.fr.ReadFrame()
            if err == io.EOF {
                return nil
            } else if err != nil {
                return err
            }
            switch f := f.(type) {
            case *WindowUpdateFrame, *SettingsFrame:
            case *HeadersFrame:
                // Send a HEAD response with a stray DATA frame.
                var buf bytes.Buffer
                enc := hpack.NewEncoder(&buf)
                enc.WriteField(hpack.HeaderField{Name: ":status", Value: "200"})
                ct.fr.WriteHeaders(HeadersFrameParam{
                    StreamID:      f.StreamID,
                    EndHeaders:    true,
                    EndStream:     false,
                    BlockFragment: buf.Bytes(),
                })
                ct.fr.WriteData(f.StreamID, true, []byte("payload"))
            default:
                return fmt.Errorf("Unexpected client frame %v", f)
            }
        }
    }
    ct.run()
}

@rs: I mailed a patch. Unfortunately I cannot be sure it will fix all of your panics. Can you try patching it locally and let me know? Thanks!

Sure I will. Thank you for your help. I will keep you posted.


Restoring nuget packages does not work on Mac any more

With the latest commits on master, restoring nuget packages does not work any more in VS for Mac. I get the following errors:
/usr/local/share/dotnet/sdk/5.0.202/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(63,5): error NETSDK1100: Windows is required to build Windows desktop applications. [/Users/janus/github/Mapsui/Mapsui.Rendering.Xaml/Mapsui.Rendering.Xaml.csproj]
/usr/local/share/dotnet/sdk/5.0.202/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(63,5): error NETSDK1100: Windows is required to build Windows desktop applications. [/Users/janus/github/Mapsui/Mapsui.UI.Wpf/Mapsui.UI.Wpf.csproj]
/usr/local/share/dotnet/sdk/5.0.202/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(63,5): error NETSDK1100: Windows is required to build Windows desktop applications. [/Users/janus/github/Mapsui/Samples/Mapsui.Samples.Wpf.Editing/Mapsui.Samples.Wpf.Editing.csproj]
/usr/local/share/dotnet/sdk/5.0.202/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(63,5): error NETSDK1100: Windows is required to build Windows desktop applications. [/Users/janus/github/Mapsui/Samples/Mapsui.Samples.Wpf/Mapsui.Samples.Wpf.csproj]

I think this is happening since a99ae93a830b39f7abe0dad8f62e1a8feb2491b8, and it's preventing me from building Mapsui on MacOS.
See also https://github.com/dotnet/sdk/issues/3803 and https://github.com/dotnet/sdk/issues/3592.
Any suggestions on how to fix it?

Are you building Mapsui.sln or Mapsui.iOS.sln?

Are you building Mapsui.sln or Mapsui.iOS.sln?

I am building Mapsui.sln. That used to work well.
What exactly is Mapsui.iOS.sln?

What exactly is Mapsui.iOS.sln?

Trying to answer that myself: It's unfortunately not documented, but from the name and content it seems like this is a solution that contains everything needed to build iOS-related stuff.
Btw: Mapsui.iOS.sln is not affected by the errors mentioned above, since it does not include the corresponding projects.
In principle it would be nice if a second solution file would not be necessary at all, and until recently it actually was not really needed AFAICS. Due to the errors above it became necessary again. But IMHO it falls short of the requirements.
In general there are target platforms that can only be built on Windows (UWP/WPF), ones that can only be built on Mac (iOS/MacOS) and those that can be built on both (e.g. Android and generic libs).
Mapsui.iOS.sln falls short in the sense that it only includes the iOS-specific stuff, but misses some of the Android (and Desktop) parts. What we'd need rather than a Mapsui.iOS.sln would be a Mapsui.Mac.sln, which should include everything that could be built on Mac.
@pauldendulk If you agree, I'll throw a PR at this problem that extends and renames Mapsui.iOS.sln.

I created it because the last time I tried it was not possible to build Mapsui.sln on Mac, but that was a long time ago. (It would be better if VS just ignored the files it can not build so we could work with one project). I created it for my own purpose, just building iOS, I never did serious development on Mac, so I just needed the iOS projects. Including the Android projects for Mac developers is good idea. I will merge the PR.

I created it because the last time I tried it was not possible to build Mapsui.sln on Mac, but that was a long time ago. (It would be better if VS just ignored the files it can not build so we could work with one project).

Yes, UWP projects are ignored/disabled in VS4Mac without any problems. The same should be done for WPF stuff. To my understanding the NETSDK1100 errors above are a bug, and there are at least two related issues in dotnet (see above).

I created it for my own purpose, just building iOS, I never did serious development on Mac, so I just needed the iOS projects.

I pretty much only do development on MacOS, mostly because I'm targeting both iOS and Android, and also I kinda dislike Windows ;)
Unfortunately one often gets the impression that all the build tooling for .NET is still pretty Windows-centric, and Mac is a bit of a stepchild (not to speak of Linux).

Including the Android projects for Mac developers is good idea. I will merge the PR.

Thanks a lot 👍


Add descriptors

Resolves #86
To do:

[ ] Update README
[ ] Update API docs

Thinking about our discussion yesterday @alinelena, did you actually want the mean descriptor for each atom (since you mentioned it's a lot of data), rather than per element, or is it fine as it is?
If we want an option for each atom, I'd probably swap out the current flag and always save the mean for each element.


Unuable to distingish overloads in breadcrumbs or outline

Please describe the problem.
For hints on what information is helpful, see: https://clangd.llvm.org/troubleshooting.html

These pictures illustrates how vscode-clangd snd ccls handle member function symbols.
vscode-clangd only shows the name of the function which is not enough in the case of a overloaded function. ccls provides parameter and return value information which the only way to tell these functions apart.
If you can, provide a minimal chunk of code that shows the problem (either inline, or attach it if larger).
class x {
void y(int e){}
void y(){}
}
Logs
Please attach the clangd log from the "Output" window if you can.
If possible, run with --log=verbose - note that the logs will include the contents of open files!
System information
Clangd version (from the log, or clangd --version): 10.0.1-++20200708122807+ef32c611aa2-1~exp1~20200707223407.61
clangd extension version: 0.1.7
Operating system: Linux-x64

Transferred to the clangd repo as the issue here is on the server side. The documentSymbols response that is used for outline and breadcrumbs does not include the method signatures.

looks like we don't populate the detail field of DocumentSymbol, we should populate the function signature in this case.

Hi!
I want to try to solve this issue.
Built the project and ran check-clangd tests. Now I'm exploring the codebase.
Is it better to start by writing tests?

Hi @iammorjj, first of all thanks for taking your time!
Yes, usually starting by writing small unittests to ensure the output looks like what we want is a good practice.
After writing tests, you can even send them out for review to ensure we are all on the same page, before diving into implementation.
Another good step before diving into the implementation is usually describing the solution you have in mind, so that
relevant people can provide guidance if there are some concerns you've skipped over about the other systems. That
way you can save some cycles in the code review and make sure you don't spend time on implementing a semi-working solution.

Hello again,
I put some tests, correct me if something is wrong. Comments contain expected data. (https://github.com/iammorjj/llvm-project/commit/84c039289cbb44fbd82817ebde1e316f5c3896c3)
I guess 'detail' field is always empty because we miss it in this part of code. Continuing research😃

Yes! This looks sensible to me, the one thing you might wanna tweak is in DocumentSymbol, we probably don't want ot populate detail with symbol name again. You can use getSignautre helper we have in clangd to just fetch the signature and display that instead.
Also I would add some templated functions to the tests, to ensure behaviour on those are still sensible.
As an additional enhancement we might want to add -> RetType to our signature representations, but that can be done separately.
Thanks for working on this!


How to get keys/credentials for consumers?

Hello, guys.
is it possible to get/list keys and/or credentials for consumers? (e.g. apikey, oauth2, etc)
i've been trying to figure out a way, but can't seem to find it.

Found.


upgrade chart versions

change jenkins-x/jenkins-x-platform to version 0.0.3847
change jenkins-x/prow to version 0.0.481

/test all


Need ability to specify the nature(observed, potential, suggested, imperative, etc) of an action

Background

NOTE: Details will be provided soon!

Hi, @Bradichus .  Thank you for starting this Issue.  Please email me or @ me in a comment when you have finished its description.  GitHub does not send email notices for edits.

Hi @ajnelson-nist will do! I am helping out @sbarnum with the ground work of several Change Proposals so expect to see more issues populate today. All descriptions will start the same way 'More details soon' so don't panic haha

@ajnelson-nist Closing as this is a repeat of #552

@Bradichus Thank you for the notice.  Please let me know when 552 is ready.  I still see a "more details coming soon" note, so I am assuming for now it is still under construction.


play-jongo for play 2.4.x

Dear,
have you plan a release for the new play 2.4.1 version?

I run into an issue when i tried to upgrade to 2.4.1. Any plans of upgrading
lay.api.UnexpectedException: Unexpected exception[ConfigurationException: Guice configuration errors:

Could not find a suitable constructor in uk.co.panaxiom.playjongo.JongoPlugin. Classes must have either one (and only one) constructor annotated with @Inject or a zero-argument constructor that is not private.
at uk.co.panaxiom.playjongo.JongoPlugin.class(JongoPlugin.java:9)
while locating uk.co.panaxiom.playjongo.JongoPlugin

1 error]
at play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(DevServerStart.scala:165) ~[play-server_2.11-2.4.2.jar:2.4.2]
at play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(DevServerStart.scala:121) ~[play-server_2.11-2.4.2.jar:2.4.2]
at scala.Option.map(Option.scala:146) ~[scala-library-2.11.6.jar:na]
at play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1.apply(DevServerStart.scala:121) ~[play-server_2.11-2.4.2.jar:2.4.2]
at play.core.server.DevServerStart$$anonfun$mainDev$1$$anon$1$$anonfun$get$1$$anonfun$apply$1.apply(DevServerStart.scala:119) ~[play-server_2.11-2.4.2.jar:2.4.2]
Caused by: com.google.inject.ConfigurationException: Guice configuration errors:

Could not find a suitable constructor in uk.co.panaxiom.playjongo.JongoPlugin. Classes must have either one (and only one) constructor annotated with @Inject or a zero-argument constructor that is not private.
at uk.co.panaxiom.playjongo.JongoPlugin.class(JongoPlugin.java:9)
while locating uk.co.panaxiom.playjongo.JongoPlugin

1 error
at com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:1042) ~[guice-4.0.jar:na]
at com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:1001) ~[guice-4.0.jar:na]
at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1051) ~[guice-4.0.jar:na]
at play.api.inject.guice.GuiceInjector.instanceOf(GuiceInjectorBuilder.scala:321) ~[play_2.11-2.4.2.jar:2.4.2]
at play.api.Plugins$$anonfun$loadPlugins$1.apply(Plugins.scala:89) ~[play_2.11-2.4.2.jar:2.4.2]

There's a pull request for 2.4 compatibility, I'm just working on this (tests don't run, build path issues)...

play-jongo-0.8.0-jongo1.2 is on its way to maven central, it's based on PR #36. Does this work for you?
The next step would probably be to provide a Module additionally / as replacement for the JongoPlugin, as plugins are deprecated with 2.4.

I tried to use play-jongo-0.8.0-jongo1.2 for a new 2.4 Play project.The first compilation works fine. Now I start to create models and I'll test more deep.

All seems to be working fine. Good work. Thanks

great!


consider moving to src/test structure

Fixed in https://github.com/citation-file-format/cff-converter-python/tree/4d18e5578c0216266d7faa866237c1ce50b97934, closing


Audio is supported too, ya know

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

ADD DESCRIPTION HERE
Fixes #
Template

Before submitting a pull request make sure you have:

[ ] At least skimmed through contributing guidelines including yt-dlp coding conventions
[ ] Searched the bugtracker for similar pull requests
[ ] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[ ] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[ ] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

I highly recommend you to dictate a fork before spamming yt-dlp or ytdl-patched. Farewell.


More options for nip location

I hope it will be good to add few more values for location of nip, like Nip.rightBottom, Nip.leftBottom, Nip.rightTop, Nip.leftTop

Agreed @NilsBacke.

@fayaz07
@Skyost
It have these options.
nipLocation: NipLocation.BOTTOM_RIGHT,
nipLocation: NipLocation.BOTTOM_LEFT,
nipLocation: NipLocation.TOP_RIGHT,
nipLocation: NipLocation.TOP_LEFT,
``
You mean, you want to more offsets?

nip offset option #13

Just like a chat message widget, I was suggesting more options


[ST] Polygon to Base not completing

Describe the bug
There are some transactions from Polygon to Base that are taking too long to complete. We received complaints from users that they weren't getting their funds. The slow path seems to work for some other transactions with Base destination.
Screenshots

#6174


Website: Wrong link to data-collected-by-plugins

It seems there is a problem with the default paragraph present in all the plugins:

In addition to the default data collected by all plugins, this plugin collects the following data for each trial.

Given it is a relative link (a href="overview#datacollectedbyplugins"), it points to:
https://www.jspsych.org/plugins/[NAME OF THE PLUGIN]/overview#datacollectedbyplugins
But I believe it should point to:
https://www.jspsych.org/plugins/overview/#data-collected-by-plugins

Cheers,

Hi @gorkang - yes you're absolutely right. Sorry about the error, and thanks for pointing this out! We'll fix this when we release jsPsych v6.2, at which point we'll update the website documentation.


Parser for TypeScript 4.0

Closes #864.
Closes #865.
Closes #866.

It seems like the action fails due to oom...


How to remove the image loaded or selected?

It seems that I cannot find a way to remove the image loaded or selected... could someone kindly introduce me?
Thanks in advance.

There is none at the moment. It could be a useful addition.

Hi, This very easy, look.
cropitElement.find('input[type="file"]').change(function(){
	//Do something
});

Duplicate with #26.

This seemed to work for me:
$(".cropit-preview").find("img").attr("src", null)

Ultimate solution:
Inside of callback "HIDDEN MODAL" insert this:
$('.cropit-preview').removeClass('cropit-image-loaded');
$('.cropit-preview-background').attr('src','');
$('.cropit-preview-background').removeAttr('style');
$('.cropit-preview-background').attr('style','position: relative; left: 30px; top: 30px; transform-origin: left top 0px; will-change: transform;');
$('.cropit-preview-image').attr('src','');
$('.cropit-preview-image').removeAttr('style');
$('.cropit-preview-image').attr('style','transform-origin: left top 0px; will-change: transform;');
$('input.cropit-image-input').val('');
$('.cropit-image-zoom-input').val('0');
Done! Now after modal close the cropit will reset!


queries of delegation_reward_histories_aggregate takes forever to load

Bug description
Below is the query I'm making:
query AccountBalance {
    account(where: { address: { _eq: "desmos1hazqvj7ketp3svxhc2cx0pz6t2chk9hte9p33s" } }) {
      address
      available: account_balance_histories(limit: 1, order_by: { height: desc }, where: { height: { _lte: 716340 } }) {
        coins
        height
        block { timestamp }
        tokens_prices: token_prices_history {
          unit_name
          price
          timestamp
          token_unit {
            denom
            exponent
            token {
              token_units {
                denom
                exponent
              }
            }
          }
        }
      }
      delegated: delegation_histories_aggregate(distinct_on: [validator_address], order_by: [{validator_address: desc}, {height: desc}], where: { height: { _lte: 716340 } }) {
        nodes {
          amount
          validator_address
        }
      }
      unbonding: unbonding_delegation_histories_aggregate(distinct_on: [validator_address], order_by: [{validator_address: desc}, {height: desc}], where: { height: { _lte: 716340 } }) {
        nodes {
          amount
          completion_timestamp
          height
          validator_address
        }
      }
      rewards: delegation_reward_histories_aggregate(distinct_on: [validator_address], order_by: [{validator_address: desc}, {height: desc}], where: { height: { _lte: 716340 } }) {
        nodes {
          amount
          validator_address
        }
      }
      validator: validator_infos(where: {self_delegate_address: {_eq: "desmos1hazqvj7ketp3svxhc2cx0pz6t2chk9hte9p33s"}}) {
        consensus_address
        operator_address
        self_delegate_address
        validator {
          commissions: validator_commission_amount_histories_aggregate(limit: 1, order_by: {height: desc}, where: { height: { _lte: 716340 } }) {
            nodes {
              amount
            }
          }
        }
      }
    }
  }

It takes forever to load and returns CORS error after timeout. The same query works when I removed the delegation_reward_histories_aggregate part, ie:
query AccountBalance {
    account(where: { address: { _eq: "desmos1hazqvj7ketp3svxhc2cx0pz6t2chk9hte9p33s" } }) {
      address
      available: account_balance_histories(limit: 1, order_by: { height: desc }, where: { height: { _lte: 716340 } }) {
        coins
        height
        block { timestamp }
        tokens_prices: token_prices_history {
          unit_name
          price
          timestamp
          token_unit {
            denom
            exponent
            token {
              token_units {
                denom
                exponent
              }
            }
          }
        }
      }
      delegated: delegation_histories_aggregate(distinct_on: [validator_address], order_by: [{validator_address: desc}, {height: desc}], where: { height: { _lte: 716340 } }) {
        nodes {
          amount
          validator_address
        }
      }
      unbonding: unbonding_delegation_histories_aggregate(distinct_on: [validator_address], order_by: [{validator_address: desc}, {height: desc}], where: { height: { _lte: 716340 } }) {
        nodes {
          amount
          completion_timestamp
          height
          validator_address
        }
      }
      validator: validator_infos(where: {self_delegate_address: {_eq: "desmos1hazqvj7ketp3svxhc2cx0pz6t2chk9hte9p33s"}}) {
        consensus_address
        operator_address
        self_delegate_address
        validator {
          commissions: validator_commission_amount_histories_aggregate(limit: 1, order_by: {height: desc}, where: { height: { _lte: 716340 } }) {
            nodes {
              amount
            }
          }
        }
      }
    }
  }

Steps to reproduce

Expected behavior

@calvinkei After analyzing your query I think there are two main problems:

You are using the delegation_histories_aggregate table even when not needed. This causes the database to perform more operations even when they are not needed at all. For this reason, I think it would be much better to use the delegation_histories table and remove the nodes field instead.
You are not limiting the results. This causes the database to iterate over all the returned rows to transform them into JSON objects that are later inserted inside the JSON array. For this reason, I suggest you limiting the results.

Unfortunately, there seem to be no other solutions than these two

@RiccardoM the performance issue is not related to delegation_histories_aggregate table, but delegation_reward_histories_aggregate. i removed the query related to delegation_reward_histories_aggregate and it loads within 200ms
also, since the results are distinct on validator, so i think it doesn't have to limit the results. it should just take the latest row for each validator. which makes sense as i want to know the total delegated amount across different validators

FYI, the same issue goes for delegation_reward_histories table

@calvinkei Sorry for the confusion, I meant to write delegation_reward_histories_aggregate in my original answer but then copy/pasted the wrong name. I made all my tests with delegation_reward_histories_aggregate and I saw that if you add the limit it should load it faster. The problem is that since that's a history table, it exists a row for each block-validator-delegator touple. Do you mind explaining further why you need such data? Do you need it to show the current delegation rewards, or to show a history of them?

@RiccardoM I'm using the data to show a line chart of account balance changes over time. the data needs to include available balance, delegated amount, rewards and commission at each specific timestamp
is there a way to get the sum of all rewards at a specific timestamp?

@calvinkei Do you need those data to be shown in different graphs (i.e. one for the available balance, one for the delegated amount, one for the rewards, etc), or do you need them to be shown together?
I'm thinking that maybe what we can do is have a single table instead of multiple ones that return those data as different columns. This might make it faster for you to get

@RiccardoM that would be perfect! for latest data i need to show it separately but for historical data i just need the sum, ie 1 single chart


PyMapping is inconsistent with typing.Mapping

Bug Description
The conversion table for PyMapping suggests anything that is a typing.Mapping should be able to be converted to PyMapping, this however is not the case seemly list and str are also downcast-able to a PyMapping.
This causes errors when you try to access things like items on the PyMapping as you get a AttributeError str has no attribute items.
Steps to Reproduce
use pyo3::prelude::*;
use pyo3::types::PyMapping;

#[pyfunction]
fn downcast_(a: &PyAny) -> PyResult<&PyMapping> {
    Ok(a.downcast::<PyMapping>()?)
}

#[pymodule]
fn downcast(_py: Python, m: &PyModule) -> PyResult<()> {
    m.add_function(wrap_pyfunction!(downcast_, m)?)?;

     Did you use a virtualenv?
venv
Additional Info
No response

Yikes, thanks for reporting.
So I'm happy to take the fall for this one. This is the C-API definition of PyMapping_Check:
.. c:function:: int PyMapping_Check(PyObject *o)

   Return ``1`` if the object provides mapping protocol or supports slicing,
   and ``0`` otherwise.  Note that it returns ``1`` for Python classes with
   a :meth:`__getitem__` method since in general case it is impossible to
   determine what type of keys it supports. This function always succeeds.

Reading this again, it's such a broad definition that it doesn't really seem practically useful.
On Python 3.10 and up we could potentially make use of Py_TPFLAGS_MAPPING and Py_TPFLAGS_SEQUENCE to accept the same set of types as the match keyword. That seems generally correct.
However I'm not fond of having behaviour that's different according to the Python version.
Alternatively, we could call into Python to pretty much literally do isinstance(<thing>, collections.abc.Mapping), but that seems like a waste of performance. This might be a solution for Python 3.9 and backwards if we wanted to use Py_TPFLAGS_MAPPING.
Ideas on a solution very welcome!

I like the sound of using both the tp flags and the instance checks depending on your version

I think this is awkward enough of a footgun (and also new enough, having been added in 0.15) that it would be good if we could come to a decision about what to do for this in time for the 0.16 release.
All opinions very much wanted!

Would be interesting to see what C extensions do.

I think that we should consider trying to resolve this upstream in CPython. The proposed behavior (checking of tpflags/isinstance) feels like something that PyMapping_Check should do. Opinions?

I think that we should consider trying to resolve this upstream in CPython. The proposed behavior (checking of tpflags/isinstance) feels like something that PyMapping_Check should do. Opinions?

Remember guys, PyMapping_Check in CPython is used a lot and it's meant to be optimized.
Modifying it in CPython will cause a discrepancy across versions, and since you're not actually checking a __subclasshook__, user made classes will still not be taken into account. After all, not every user made mapping inherits from the appropriate ABC.
You can try blacklisting builtins but it's a whack a mole and will cause inconsistencies.
All in all, unless you take __subclasshook__ into account, which you don't want as it's a custom Python function, it'll never be the same as isinstance.
The only possible solution is to maybe covert the ABCs and respective hook methods to C in order to optimize them, but even then it'll be much slower.

I found some seemingly relevant discussion on BPO https://bugs.python.org/issue5945
One suggestion there is to use PyMapping_Check() && !PySequence_Check() for a true mapping check. Would that work here?

@aganders3 Nice find! I'll try to implement it and see how it behaves.

See https://github.com/PyO3/pyo3/pull/2098

Maybe we need to ask for help from upstream?
(from #2098)
I think that's the way to go.. too many quirks.

Created a bpo https://bugs.python.org/issue46376

It might decrease ergonomics, but maybe we should consider not converting mapping/sequences to the PyMapping/PySequence as the API is mostly for non-custom classes?

Seems like __subclasshook__ is no longer relevant. Python enforces anyone inheriting or registering from the ABCs to have TP_FLAGS set accordingly. Any class not inheriting from the ABC is no longer considered a "mapping" or a "sequence", therefore checking tp_as_mapping, tp_as_sequence (for custom C-classes that can choose to not implement flags) and checking the relevant tp_flags should suffice. The solution will be extremely fast and will hold all cases apart from dynamic modifications in the ABCs which are fine to not account for.

https://github.com/python/cpython/pull/30600

It seems the upstream route is blocked, but maybe we can take the same route they did and just "fix" it in documentation. For example add a warning that downcast to a mapping may succeed for sequences and users may want to implement further checks as-needed.
The TP_FLAGS method seems correct, but again only applies to 3.10 so perhaps could be phased in down the line or provided as an opt-in alternative somehow (e.g. under a different function name).

I wouldn't call it blocked. I'm still working on a proposal to send to sig-capi and in the issue.

Yeah that's fair I guess I wasn't sure if that was enough of a block to miss the 0.16 release this is targeted for. Also if it's a change going forward, does that still leave an open issue in Python <=3.10?

I think the first comment from David is still the best approach

Considering this is a wont-fix upstream, could we just implment Davids suggestion to fix this?

I'm +1 on this and would be happy to implement as well if no one else wants to claim it.
To be clear I think the proposal was:

check the tpflags for Python >=3.10
fall back to a call into Python to do an isintance check for Python <=3.9

Yes, I agree that we need to do something (current behavior seems broken). I still think the implementation above is likely to be ok. One possible complicating factor is that the flags aren't technically in the stable API - see https://github.com/python/cpython/pull/32080
@samuelcolvin I think I spotted you used PyMapping in pydantic-core - I wonder if you've seen this issue / have any thoughts about how you would want a resolved implementation to behave?

Thanks so much for making me aware. I hadn't seen this because 1) my tests for mappings were not good enough 🙈 2) I trusted pyo3 too much.
Should be partially fixed in https://github.com/samuelcolvin/pydantic-core/pull/117
I would agree that your suggestion https://github.com/PyO3/pyo3/issues/2072#issuecomment-999952382 of the fast solution for 3.10 and falling back to python isinstance for <=3.9, seems like the best route.

I trusted pyo3 too much.

Hopefully you can continue to trust PyO3! This is the only huge footgun of a bug which I'm aware of 🤪

I'm running into a slight snag with this implementation for Python classes implemented in Rust. For 3.10+ I think we can add the Py_TPFLAGS_MAPPING if defined with #[pyclass(mapping)] but for Py_LIMITED_API and Python <3.10 I don't see a way to make the isinstance(pyclass, collections.abc.Mapping) work. It looks like #991 may be related here.
This is causing a failure in the mapping_is_not_sequence test in tests/test_mapping.rs.
Any thoughts?

Hmm maybe for now you can just call collections.abc.Mapping.register() (using PyModule::import) by hand in the test before trying any mapping checks?
Agreed #991 is the proper solution, I hope that progress can be made on that eventually...

For people following this thread: in #2477 it looks like we've concluded that my proposal above isn't quite right and instead we should always do the equivalent of isinstance(pyclass, collections.abc.Mapping). If really wanted users can opt out with unsafe code to check flags and use PyMapping::try_from_unchecked with known caveats (see #2477 where @aganders3 has written an excellent summary of this).
My question to you all: we are now wondering whether to change PySequence to be based on isinstance(pyclass, collections.abc.Sequence?
My inclination is yes, the consistency would be a highly desirable property. But it would be a breaking change so would like to take some time to consider it.


Add caching lifetime

This commit adds a lifetime for cached files so they will be automatically updated when they exceed a certain age. This will be useful when there are online files we'd like to access and cache, but update occasionaly.
It also bumps the version, as I'd like to use this in ExplainaBoard web.

Ah, good point! It'd probably be good to get that in addition to letting the user specify.


fix: handling file uploads, feat: add support for .dat files

feat: add support for .dat files as per: https://github.com/vultisig/vultisig-windows/issues/342
fix: improve file uploads handler when importing vaults

@antoni0dev , .dat file is an older backup file format that both IOS and android currently still allow user to restore from it , so we keep it's backward compatible
But we have a few mode , have a read of the logic https://github.com/vultisig/vultisig-ios/blob/main/VultisigApp/VultisigApp/View Models/EncryptedBackupViewModel.swift#L224


Removed unused pages and components and refactored buttons.

Signed-off-by: joaosilva<EMAIL_ADDRESS>Signed-off-by: drykette<EMAIL_ADDRESS>Signed-off-by: Caiocbeleza<EMAIL_ADDRESS>

Pull Request Test Coverage Report for Build 394252592

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 96.899%

Totals

Change from base Build 393076226:
0.0%

Covered Lines:
625

Relevant Lines:
645

💛  - Coveralls


[benchmark] Add insert(_:Character) benchmark with ASCII and non-ASCII characters

This PR adds some new benchmarks for insert(_:Character). This is a small part of an effort described in SR-8905 to expand the benchmarking suite.
I've tried my best to keep every benchmark ~1000μs as suggested.
Here you can find a short explanation of every benchmark for context:

InsertCharacterEndIndex: adds a character to the end of the String. This is a stretch benchmark since it's covered by ArrayAppend but I think it could still be useful to make sure they keep the same performance.
InsertCharacterTowardsEndIndex: as suggested by @milseman, this benchmark inserts a character towards the end of the collection. The pointer of insertion is moved back to the end every 1000 insertions to avoid a quadratic complexity of the operation.
InsertCharacterStartIndex: as discussed in the comments of the JIRA ticket, this is a possible way of benchmarking the insertion at the start. We do the same operation multiple times by resetting the string to the initial value. In this way, only the inner loop has quadratic complexity to shift all the characters when inserting at the start. The outer loop is then used by the driver to scale linearly the test.
InsertCharacterEndIndexNonASCII: similar to InsertCharacterEndIndex but inserting an emoji comprised of 4 unicode scalars.
InsertCharacterTowardsEndIndexNonASCII: similar to InsertCharacterTowardsEndIndex  but inserting an emoji comprised of 4 unicode scalars.
InsertCharacterStartIndexNonASCII: similar to InsertCharacterStartIndex  but inserting an emoji comprised of 4 unicode scalars.

This is my first PR to the project, so let me know if there's anything I've missed. Any kind of feedback is appreciated 👍

Resolves SR-8908.

@swift-ci please benchmark

Hi @BalestraPatrick! Welcome to the Swift project! I've kicked off a benchmark to see how we do, and I've tagged @moiseev and @stephentyrone as reviewers. Thanks for your contribution!

Build comment file:
Performance: -O

TEST
OLD
NEW
DELTA
RATIO

Improvement

Array2D
7510
6914
-7.9%
1.09x

MapReduceAnyCollection
398
370
-7.0%
1.08x

MapReduce
426
398
-6.6%
1.07x

Added

InsertCharacterEndIndex
826
829
828
—

InsertCharacterEndIndexNonASCII
794
802
798
—

InsertCharacterStartIndex
1484
1570
1513
—

InsertCharacterStartIndexNonASCII
1054
1055
1055
—

InsertCharacterTowardsEndIndex
896
918
904
—

InsertCharacterTowardsEndIndexNonASCII
818
819
818
—

Performance: -Osize

TEST
OLD
NEW
DELTA
RATIO

Improvement

Array2D
7208
6612
-8.3%
1.09x

Added

InsertCharacterEndIndex
830
831
831
—

InsertCharacterEndIndexNonASCII
813
834
820
—

InsertCharacterStartIndex
1507
1572
1529
—

InsertCharacterStartIndexNonASCII
1053
1058
1055
—

InsertCharacterTowardsEndIndex
920
921
921
—

InsertCharacterTowardsEndIndexNonASCII
852
863
856
—

Performance: -Onone

TEST
MIN
MAX
MEAN
MAX_RSS

Added

InsertCharacterEndIndex
324
325
324
—

InsertCharacterEndIndexNonASCII
501
503
502
—

InsertCharacterStartIndex
828
830
829
—

InsertCharacterStartIndexNonASCII
630
630
630
—

InsertCharacterTowardsEndIndex
350
351
350
—

InsertCharacterTowardsEndIndexNonASCII
510
511
510
—

How to read the data
The tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.
If you see any unexpected regressions, you should consider fixing the regressions before you merge the PR.
Noise: Sometimes the performance results (not code size!) contain false alarms. Unexpected regressions which are marked with '(?)' are probably noise. If you see regressions which you cannot explain you can try to run the benchmarks again. If regressions still show up, please consult with the performance team (@eeckstein).

Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB

@swift-ci please test and merge

Thanks so much for contributing, @BalestraPatrick!

@milseman Hey Michael, I pushed a new commit with some changes that you suggested 👍

@milseman Not sure why my VS code didn't respect the preference anymore, I used Xcode now and set it to 2 spaces like all other benchmark files.
Totally happy with the shout-out, I'll also write a small blog post this week to get and try more people to contribute to the benchmark suite. I'll collect all the useful commands and information you've been sharing to help other people get started quickly 💯

@milseman Anything left to do before merging this one? 😄

@swift-ci please smoke test

I've been wanting to add a section with some of the "pro tips" to https://github.com/apple/swift/blob/master/docs/StandardLibraryProgrammersManual.md. I look forward to your blog post, and maybe we can incorporate some if it into the manual!

@milseman From the benchmark results above, it appears that StartIndex and TowardsEndIndex variants of this benchmark are almost twice as fast in Onone than in the optimized builds. That seems like a rather strange de-optimization. Bug?

CC @eeckstein. This is indeed surprising!


[Rest Server] Use hex to encode and decode framework name

Use hex to encode and decode framework name to fit framework controller's requirement.

Coverage increased (+0.01%) to 53.752% when pulling 779d8d9a9f2f31603f75486048edfe0ad53760ca on xiongyf/encode-framework-name into dcce3dc85ce9c695e81e52219702bb9b3a5a173c on feature/pure-k8s.


chore(ui): Upgrade UI dependencies

Context
Similar to what had been done in MLP https://github.com/caraml-dev/mlp/pull/100, Merlin https://github.com/caraml-dev/merlin/pull/591 and in Turing https://github.com/caraml-dev/turing/pull/384, this PR updates certain UI dependencies in XP, most notably:

node.js from v16 to v20 (an engines.node field is added in the package.json file to pin the engine to >=20.13.1)
react from v17 to v18
elastic UI from v66 to v88.2.0* 🚨 this was intentionally left at this version because updating it to v88.3.0 breaks all the EuiAccordion-related components; this is likely due a massive rework of the component in this PR https://github.com/elastic/eui/pull/7161 but I've no idea why this change didn't affect the accordions in Merlin

Other minor changes have also been made to the GitHub CICD files.
Main Changes

Upgrading of UI dependencies
Upgrading of multiple GitHub actions; see the subsection below for more information

GitHub Actions Updates

actions/upload-artifact - from v2 to v4 since the former has already been deprecated since the 30th of June this year
actions/download-artifact - from v2 to v4 since the former has already been deprecated since the 30th of June this year (the versions of this action and upload-artifact need to be compatible to work)
actions/checkout - from v3 to v4 since it's similarly done in the MLP repo
actions/setup-go - from v4 to v5 since it's similarly done in the MLP repo (also provides caching)
actions/setup-python - from v2 to v5 to keep it updated to the latest version (also provides caching)
docker/login-action - from v1 to v3 just to keep it updated to the latest version

Yeap, I just added them as comments in the package.json file here https://github.com/caraml-dev/xp/pull/79/files#diff-193b27d62e4fbda3d563009fed5ec6761a05f73558d94b39fab63ae948c679eaR6. Thanks for the review; merging this now!


Fix incorrect clang-format documentation

As an aside it's probably time to upgrade to a newer clang-format release. I'll probably want to use version 18 since that's what Ubuntu 24 ships with. Version 14 is what Ubuntu 22 used so it made sense when we picked that years ago.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.003%) to 56.628%

Totals

Change from base Build<PHONE_NUMBER>0:
0.003%

Covered Lines:
11894

Relevant Lines:
19915

💛  - Coveralls


{listurl} token stopped working?

I have succesfully provisioned sites that last couple of days, using the token {listurl} for the url of a library instance. Since this morning (27 July 2018) this seemed to stop working for 2 completely separate customers.
Basic details:

SharePoint Online;
Provisioning site is a modern teamsite (GROUP#0);
OfficeDevPnP PowerShell (2.28.1807.0) was used for provisioning;
The template xml validated against the 2018-05 schema;
I'm using the url in various places. the complete xml is attached.

The following template part was used to provision the lists:
<pnp:ListInstance Title="Documents" TemplateType="101" Url="{listurl:Documents}" EnableFolderCreation="false">
pnp:ContentTypeBindings
<pnp:ContentTypeBinding ContentTypeID="0x0101" Default="true" />
<pnp:ContentTypeBinding ContentTypeID="0x0120" />
</pnp:ContentTypeBindings>
pnp:Views

30
clienttemplates.js

</pnp:Views>
pnp:FieldRefs
<pnp:FieldRef ID="e5d89314-6a19-4e56-ac70-55019056bde1" Name="g3d1c5caa9df481297677773234a8417" Hidden="true" DisplayName="DocumentType_0" />
<pnp:FieldRef ID="03d1c5ca-a9df-4812-9767-7773234a8417" Name="DocumentType" Required="true" DisplayName="Document type" />
<pnp:FieldRef ID="2724060f-850c-4c3a-a003-009662c8c280" Name="ActiveNonActive" DisplayName="Active/Non-active" />
</pnp:FieldRefs>
</pnp:ListInstance>
Apparently this problem only occurs when the team site is created in a specific language as the url is "Shared Documents" for 1033 and "Gedeelde documenten" for 1043.

siteconfig.xml.txt

Hi,
Thanks for your feedback. This is an engine related issue/request. Could you please insert this item, if still needed, in the PnP-Sites-Core repository (https://github.com/SharePoint/PnP-Sites-Core/issues/)? Thanks. I will close this item, because out of context.


Help: System.Relfection Exception. How do i resolve this issue? Can it be done with link.xml?

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ExecutionEngineException: Attempting to call method 'Newtonsoft.Json.Utilities.CollectionWrapper`1[[System.UInt64, mscorlib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b77a5c561934e089]]::.ctor

I have a class as such in a Unity Package, with an .asmdef named Analytics.AppsFlyer.Runtime
Is it possible to be fixed with a link.xml file or using AOTHelper is the best way?
namespace Analytics.AppsFlyerPlatform
{
    public class CallFilter
    {
        HashSet<ulong> set = new HashSet<ulong>();
    }
}

I tried many variation of link.xml file but none seems to work.
<linker>
	<assembly fullname="Analytics.AppsFlyer.Runtime" preserve="all" />
</linker>

<linker>
	<assembly fullname="Analytics.AppsFlyer.Runtime" preserve="all">
		<type fullname="Analytics.AppsFlyerPlatform">
			<type fullname="Analytics.AppsFlyerPlatform.CallFilter">
				<field name="set" />
				<field signature="System.Collections.Generic.HashSet`1<System.UInt64>" />
			</type>
		</type>
	</assembly>
</linker>

By the way thanks for the awesome package, made it easy to use newtonsoft for unity 👍

Hi! Thanks for reporting, I'm eager to help :)
The exception is due to failing to deserialize your type, as you notice. However the issue does not lie in YOUR codebase, and that's why your link.xml attempts failed. To be specific, the errors says it fails to construct the following type from the Newtonsoft.Json assembly:
Newtonsoft.Json.Utilities.CollectionWrapper<ulong>

I strongly recommend solving this via AotHelper, however it can also be solved via link.xml. To solve via AotHelper you may add the following to a method inside a MonoBehaviour/ScriptableObject (any will do, not only one you're using):
AotHelper.EnsureList<ulong>();

You can find full specs of the AotHelper in the wiki page here: https://github.com/jilleJr/Newtonsoft.Json-for-Unity/wiki/Reference-Newtonsoft.Json.Utilities.AotHelper#aothelperensurelist

Would you be so kind to show me how the link.xml would look like? I cant seem to figure that out.

Yes. However generics are not fully compatible with link.xml. The CollectionWrapper of type ulong is never explicitly referenced so telling the bytecode stripper to preserve it will do nothing for your use case. The AotHelper is not damaged by this at all as it forces the compilation of the type specified.
However for completeness sake, here's how to target the CollectionWrapper: (Note that you cannot target the specific generic type for preservation, but instead preserve ALL compiled generics for the CollectionWrapper)
<linker>
    <assembly fullname="Newtonsoft.Json">
        <type fullname="Newtonsoft.Json.Utilities.CollectionWrapper`1" preserve="all" />
    </assembly>
</linker>

I've written a small reference document for link.xml containing some of the common use cases. Have a look at the example in this page: https://github.com/jilleJr/Newtonsoft.Json-for-Unity/wiki/Reference-link.xml#the-method-element

Ah gotcha. So i was preserving the wrong stuff.
I think the easier solution would be just to use the AotHelper like you previously suggested.
Thanks once again 👍


GSD Request

--- GSD JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v4.19.220 to before v4.19.223",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=36fbc46a792969650a44702ddd2143fe722e4d00",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=eb84855d3e8799b67cdbadc7a5c53997cbfc3580"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "36fbc46a792969650a44702ddd2143fe722e4d00",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "eb84855d3e8799b67cdbadc7a5c53997cbfc3580",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "ipmi: fix initialization when workqueue allocation fails\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v4.19.223 by commit eb84855d3e8799b67cdbadc7a5c53997cbfc3580, it was introduced in version v4.19.220 by commit 36fbc46a792969650a44702ddd2143fe722e4d00. For more details please see the references link."
}
--- GSD JSON ---

This issue has been assigned GSD-2021-1002787


I have added CTI support in this fork

it has merge conflicts - can you it rebase please?

Ok, I will do it now
On Tue, Nov 10, 2015 at 1:51 PM, David Badura<EMAIL_ADDRESS>wrote:

it has merge conflicts - can you it rebase please?
—
Reply to this email directly or view it on GitHub
https://github.com/simplethings/EntityAudit/pull/139#issuecomment-155399819
.

Hello David,
It seems this is not a trivial merge I will need more time to do that, will
be not able to do the merge and the testing today. I hope will manage in
2-3 days to do that.
Regards,
Vasil.
On Tue, Nov 10, 2015 at 1:57 PM, Vasil Yordanov<EMAIL_ADDRESS>wrote:

Ok, I will do it now
On Tue, Nov 10, 2015 at 1:51 PM, David Badura<EMAIL_ADDRESS>wrote:

it has merge conflicts - can you it rebase please?
—
Reply to this email directly or view it on GitHub
https://github.com/simplethings/EntityAudit/pull/139#issuecomment-155399819
.

great work :+1:

no problem. i would like to merge it before #159. thank you!

Hello David,
I give up to do the merge, its too complex.
It is a pity because I did a lot of code refactoring in my version where I
managed to shorten the methods. Currently the code has very long methods.
See my old code:
https://github.com/vasil-yordanov/EntityAudit/blob/4b5a6a4b9f37c6276f85d57b96d2d86a9f0a93a5/src/SimpleThings/EntityAudit/AuditReader.php
It seems that currently the feature (excluding the code refactoring) that I
have added previously in my repo is already available in the master of
simplethings/EntityAudit
However in my latest commit I did the following:

I have merged my code with the master of simplethings/EntityAudit repo.
I added some functional tests for Joined table inheritance.
I fixed some small bugs found during the tests
I did very small code refactoring.

I will try some shiny day to continue with the refactoring of the
code, but please
accept now my pull request, and update the readme that we this lib
supports Joined table inheritance.
Regards,
Vasil.
On Tue, Nov 10, 2015 at 3:33 PM, David Badura<EMAIL_ADDRESS>wrote:

no problem. i would like to merge it before #159
https://github.com/simplethings/EntityAudit/pull/159. thank you!
—
Reply to this email directly or view it on GitHub
https://github.com/simplethings/EntityAudit/pull/139#issuecomment-155420185
.

@vasil-yordanov Could you please open a new clean PR with your latest changes? Thanks in advance


Fixed by checking if tile needs to be re-created

Related issues
Issue #609
Description
Tile is re-created and reference between optimizer and tile is cut.
Details
For the torch tile, we don't re-create the tile unless we need to.

@maljoras @kkvtran there seem to be some rounding issues in the tests.

I restarted the travis builds and everything built successfully now.


what is - pin #A1

wou wrote :
// HX711.DOUT  - pin #A1
// HX711.PD_SCK - pin #A0
A0 = ADC, yhas is clear, but what pin do you mean A1 ? There is no A1 pin on ESP8266
How do you connect/wire HX711 to ESP8266?

I have the same question.


Block explorer data storage need to be optimized.

Block explorer keep data into the single directory, one file per block.
Currently there are almost 500k files in a single dit. It is not efficient, OS doesn't like that even it can deal with that.
For performance we better to use hierarchy for those files.
It is easy to change, so we better do that before we hit performance problems.

@hcasalet ,  I think you implemented that, right?  Is it done?

Yes, this is implemented. I am closing it.


⚠ Bofrost.be has degraded performance

In 1c1b0e0, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1410 ms

Resolved: Bofrost.be performance has improved in 1ae14d5.


Instead of setting SQ to 0 when under $0, reduce it by 10% every simulation cycle

But, I'm not sure if this the correct Scala code, I'm not too familiar with scala
In discord people were complaining about setting it to 0 can destroy large airlines

Converted to draft until I can test it

Thanks for the code input! :)
The current code would not drop SQ to 0 right the way, it's already bound my the max drop rate as defined in https://github.com/patsonluk/airline/blob/e83700c723aacb5962ebb7a644a965b431b1ceeb/airline-data/src/main/scala/com/patson/AirlineSimulation.scala#L20

Ohhhh I didn't notice it has the max change calculator around lines 570 my bad 😅

Ah no worries! Please do keep poking at the core simulation code, as there are probably many bugs to be fixed/enhancements to be made.
Not many devs are brave enough to venture into this territory yet, and it would be great if you can offer some help ;)


add support for warp highlight tiles

Some (if not all) warps have special tiles that are highlighted versions of existing tiles (e.g., normal cave entrance is highlighted when cursor is over it). The sub index of the special warp tile tells us the main index of the affected tiles (both highlighted and non-highlighted tiles have the same main index). In all cases I've seen, either 2 or 4 tiles are replaced with either sub index 0-1 -> 2-3 or 0-3 -> 4-7. The trick is determining which is the case. Also, is it always the case where replacement tiles are available?
Possibly useful columns in LvlWarp.txt are LitVersion, Tiles, Direction. Based on previous knowledge, Tiles was supposed to determine some kind of offset, this is false from what I've seen, since I've seen 2 and 4 tile variants both with Tiles=2, and the only time Tiles!=2 is for 3 expansion barricades where it is 4.
Also, sometimes there are 2 special warp tiles for the same warp. I think when this is the case, there is a 1:1 mapping of the special warp tiles with the replacement tiles (so this marks the 2 tile case), so if there is only 1, I think this marks the 4 tile case.
I'm going to investigate a bit more, because with the current implementation, the 2 special warp tile case will create 2 warp entities. I'm also not sure if the original client uses entities for warps like I am (my method will work fine though).
I also need to add some logic to MapRenderer to draw the (non)highlighted tiles correctly. Currently my PopPads implementation bypasses using entities and is implemented into MapRenderer itself. I think rendering the highlight tiles is more appropriate from within MapRenderer than the entity itself, not to mention the complications it will provide with the order of the rendering if done within the warp entity. The question is how I want to handle tying the Warp entity with the tiles it hides/unhides in MapRenderer

After looking through Act 1 warp presets, it looks like SPECIAL_10 marks an entrance/next and SPECIAL_11 marks an exit/previous. If the sub index is 0,1 then the replacement tiles are a 1:1 mapping (same main index and sub index as the tiles they replace), otherwise the replacement mapping is 0-3 -> 4-7 using the sub index of the warp tile is the main index of the replacement tiles.
LitVersion does seem to indicate if replacement tiles exist (so if LitVersion=0, no tiles get replaced). If the warp uses the 2 warp tile case, I'm guessing the one with sub index 0 is the actual warp origin and the other is just foo.
I'm going try implementing this using a set of selected tile indexes DT1.Tile.Index within Map that Warp entities will add/remove from depending on whether or not it is in the 'over' state. MapRenderer will then unhide any tiles within that set. The plan is to just render over those tiles (appears like this might be the easiest implementation), however replacement of those tiles might be preferable down the line.

talcor.ds1 uses VIS_1_11, talleft1-3.ds1 uses VIS_2_20, VIS_3_30, VIS_4_40, talright1-3.ds1 uses VIS_5_43, VIS_6_44, VIS_7_46
VIS_4_40 and VIS_5_43 are SPECIAL_11 tiles, so this goes against the previous assertion that SPECIAL_11 warps are exit/previous warps. Each one of those tiles does use a unique main index 1-7 with sub index 0 though.

I added support for swapping the tiles out for warps. Only DOE entrance tested, no support for wall warp tiles yet (they are added, but replacement tiles won't render in place of originals).
The substitution algorithm can be optimized, but it would require changing the functionality of the tile lookup system. Since Map.Tile is generated when the Map is being built, the warp subst tiles do not have Map.Tile instances generated for them. Additionally, Map.Zone consists of an array of Map.Tile instances, so replacing the given Map.Tile instances with the subst Map.Tile instances would not be trivial and would require iterating through the entire array for a Map.Zone. I'm not to concerned with the performance drawbacks of the current implementation, but if it becomes an issue I have a couple ideas.
I'm going to leave this open until I have implemented and tested wall warps.

e3366849fae34def4b1806c7f5d2186a4dd9dab0 added support for warping to the den of evil (1 way trip right now). My above assertions still hold true for the den's warp tiles.

It seems that LvlWarp.txt Tiles is the number to add to a wall-style warp to get the highlight tiles. Most cases this is 2, hence why 0,1 -> 2-3. In act 5 entrance to ice caves from plateau uses 3 wall tiles with Tiles=4, so 0,1,2 -> 4,5,6. I'm trying to make adjustments.

LvlWarp.txt implementation is wrong and will need to be fixed in the future. The Id column isn't a valid primary key and need to take into account Direction, which determines which warp type to use.

In this file, if we check carefully, we'll see that all warps have the column Direction set to b, except some of the Expansion, which have l and r. Coincidently, the warps that don't have b are a pair of warps with the same Id, but one with Direction l, the other with r. So, l stands for Left, r for Right, and b for Both. The Orientation of the Vis (10 or 11), will be used by the game to know which one of these 2 lines it'll use : if the Vis is an Orientation 10, this will be the line with the l Direction, else if it's a Vis of Orientation 11, the game will choose the line with the r Direction.


[Automated] Update actions

Produced via:
# meta: knative/.github
# main: vmware-tanzu/sources-for-knative
cp $(find "${GITHUB_WORKSPACE}/meta/workflow-templates" -type f -name '*.yaml') \
  "${GITHUB_WORKSPACE}/main/.github/workflows/"

Cron. -knative-prow-robot
/cc we don't use Prow
/assign we don't use Prow

Codecov Report

Merging #145 (9fe165e) into master (4e09773) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #145   +/-   ##
=======================================
  Coverage   78.05%   78.05%
=======================================
  Files          18       18
  Lines         565      565
=======================================
  Hits          441      441
  Misses        121      121
  Partials        3        3

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 4e09773...9fe165e. Read the comment docs.


Error handler should reject not throw

The current error handler re-throws the new error which will simply crash and exit the server. Can be reproduced by POSTing something that doesn't match the schema to /users in an app like this:
const feathers = require('feathers');
const rest = require('feathers-rest');
const bodyParser = require('body-parser');
const mongoose = require('mongoose');
const mongooseService = require('feathers-mongoose');
const errors = require('feathers-errors');

mongoose.connect('mongodb://localhost:27017/testing');

const app = feathers()
  .configure(rest())
  .use(bodyParser.json())
  .use(bodyParser.urlencoded({ extended: true }));

const Schema = mongoose.Schema;
const MessageSchema = new Schema({
  text: {
    type: String,
    required: true
  },
  read: {
    type: Boolean,
    'default': false
  }
});
const Model = mongoose.model('Message', MessageSchema);

app.use('users', mongooseService({ Model }));
app.use(errors.handler({ html: false }));

app.listen(3000, () => {
  console.log('hey');
});

The fix is in https://github.com/feathersjs/feathers-mongoose/blob/master/src/error-handler.js#L24 to run
return Promise.reject(feathersError);

instead of throwing it.

Actually, this happens only when not setting
// Make Mongoose use the ES6 promise
mongoose.Promise = global.Promise;

Although it is documented, since it is an easy to make and hard to debug mistake I will create a PR with the suggested fix and also highlight using the global.Promise in the documentation.

:+1:


ORC-1249: Move site/_docs/releases.md to site/releases/index.md

What changes were proposed in this pull request?
This PR aims to move site/_docs/releases.md to site/releases/index.md.
Why are the changes needed?
To fix the layout bug.
How was this patch tested?
This should be tested in website after uploading because Jekyll works differently.

cc @williamhyun

Thank you for swift review and approval, @williamhyun .


UI Template: Custom Properties

Description
This may take some doing to get "right", but the base philosophy is to build off the great work @Steve-Mcl is doing with https://github.com/FlowFuse/node-red-dashboard/pull/634 whereby we could begin to wrap a ui-template in a subflow to provide a reusable, configurable component in the Node-RED local palette.
A challenge with this is that often, the ui-template is being configured within the Vue component, and doesn't have access to the parent environment variables that would be set at the subflow-level. I see two options here:
1. Expose all Environment Variables to Client
Security alarm bells ringing
2. Custom Properties
To circumvent this, we could introduce the concept of "Custom Properties" which would be a generic list of key:value pairs (of varying types) on the ui-template. It would then be possible within a subflow to bind these to the subflow env vars, and so have a ui-template driven entirely by the subflow properties.
Epic/Story
No response
Have you provided an initial effort estimate for this issue?
I have provided an initial effort estimate

My first thought was to pick up env variables addressed in the template using the ast parser but it would be it might be tricky picking them out of the html.
Option 2
If I am reading this right, the proposal is to have an editableList where env vars are linked up to client side object (like how msg is available)?
If so, that can work, but it feels like duplication of effort.
Option 3
It might be possible to use the ast parser to pick env vars out of Vue props or a specifically named data object or via an object prop named env?  I would propose only the items specifically named in the template are bound (to subvert option 1)

Not just env vars though, anything. Could have strings/numbers/booleans. Just means the general config of a ui-template can live at the node-level, rather than nested inside the Vue template.
Within the Vue template, they'd then be accessible under the existing this.props option, although had been some discussion about us renaming that to be config in another issue as its a better description.
With the generic editable list, that then unlocks the possibility to override those properties with env Vars as you would any other node in a subflow


Require fields, not taken in account

Actually, the required is not taken in account.
In Version 3.10 of Python it can be better, see: https://www.python.org/dev/peps/pep-0655/
Note that the workaround doesn't work when we specify the structure in a dict, and the dict is required to thread with the special char.

Note that the workaround doesn't work when we specify the structure in a dict, and the dict is required to thread with the special char.

Can you elaborate what the problem is? I don't understand why the workaround wouldn't work.


should the agent together with the collector in the same machine? I found when their are no in the same machine

Description
should the agent together with the collector in the same machine? I found when their are no in the same machine, the data alway not perform in the web site.
Environment

Pinpoint version: 1.7-SNAPSHOT
OS: ubuntu 16.04

I have solve it. my tomcat is a embedded tomcat, so I set profiler.tomcat.conditional.transform to false!


isValid allows invalid dates

moment("1.1.2001", "YYYY-MM-DD").isValid()
true
moment("1.13.2001", "YYYY-MM-DD").isValid()
false
moment("13.1.2001", "YYYY-MM-DD").isValid()
true
moment("1.13.2001", "YYYY-MM-DD").isValid()
false
moment("1.13.2001", "YYYY-DD-DD").isValid()
true
moment("1.13.2001", "YYYY-DD-MM").isValid()
false

At the moment moment.js is doing his best to give us true. I think it shouldn't round parts of date (this is my guess) like: 2001 to 20 and 13 month to 0.

Moment is doing it's best to give you a valid date. If you don't like that, you can use strict parsing mode. Just pass true as the third parameter on all of those calls:
moment("1.1.2001", "YYYY-MM-DD", true).isValid()
false
moment("13.1.2001", "YYYY-MM-DD", true).isValid()
false
moment("1.13.2001", "YYYY-DD-DD", true).isValid()
false

There's some discussion of making a global state flag that has the parser always use strict, and possibly of defaulting to strict mode, but there is a pull request that needs to be released before we can go down that road.
More information on strict mode: http://momentjs.com/guides/#/parsing/strict-mode/

So, I have to pass third parameter with constant value equals 'true' to force moment.js to use the second parameter, otherwise second parameter is not used?
What is the point of this?


Iframe "increases" to minimum height

First, thank you very much for your nice script! It's working very nice, but sometimes with a problem:
Normally,

I click on a link in the iframe
Iframe get resized

But sometimes (~ every 10th click)the frame resizes to the min-height and resizes only to the "right" height when you click in the frame..

If you provide a link to a simple test case I'll take a look.

I've sent you the link :)

Can you please try the latest dev branch build.

I'll try it later today and give a feedback
Am 28.10.2015 um 23:26 schrieb David J. Bradshaw:

Can you please try the latest dev branch build.
—
Reply to this email directly or view it on GitHub
https://github.com/davidjbradshaw/iframe-resizer/issues/280#issuecomment-152016484.

Thanks! The fix is working!

So did it fix it?

I have to correct my answer. The problem is still appearing

Your loading both iframeResizer.contentWindow.js and iframeResizer.contentWindow.min.js into your iframe and that is causing some weirdness. You only need one of them!!!

It's working now. I'll check back tomorrow and close if it's working
stable ;)
Thanks!
Am 30.10.2015 um 18:23 schrieb David J. Bradshaw:

Your loading both iframeResizer.contentWindow.js and
iframeResizer.contentWindow.min.js into your iframe and that is
causing some weirdness. You only need one of them!!!
—
Reply to this email directly or view it on GitHub
https://github.com/davidjbradshaw/iframe-resizer/issues/280#issuecomment-152593121.

Guessing it worked then.


Vue3: CTA buttons are center aligned throughout Rancher

Setup

Rancher version: v2.10
Rancher UI Extensions:
Browser type & version: Chrome, Firefox

Describe the bug
CTA buttons are center aligned throughout Rancher (not Ember).

Fleet,
Cluster Manager,
Harvester,
Users & Auth,
Explorer pages

To Reproduce

go to any of the mentioned areas in Rancher
notice alignment of CTA buttons

Result
CTA buttons are center aligned throughout Rancher
Expected Result
CTA buttons are right aligned throughout Rancher

Screenshots
https://github.com/user-attachments/assets/d9289d74-5178-4041-9685-6ece715fa9f1

Additional context

This is a recent regression that was introduced via #12062.

CTA buttons throughout Dashboard are aligned correctly now.
Tested in:
Rancher v2.10-afe9248a3837e249ceb92ce57fd94bc107dcb51a-head
Dashboard master 6146198


[BUG] header should be displayed properly in signup and login page

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
No response
Expected Behavior
No response
Reproduction steps
Header should be showing properly in mobile

Screenshots

Logs
No response
Browsers
No response
OS
No response

@kapilG0 doing?

@kapilG0 doing?

Hello @krishnaacharyaa I will start from tomorrow please give me sometime


Unable to set / update primary_ip4 on virtual machine per API PATCH request

Hi,
we're experiencing some issues with setting primary IPs on virtual machines via Netbox API (PATCH request). We're running Netbox 2.4.2 (even happened with 2.4.0 / 2.4.1) in a Debian 8 Environment with Python 3.5.4 / PostgreSQL 10.3 and Nginx 1.12.2 as reverse proxy. I found thread on the mailing list describing excatly the same issue: https://groups.google.com/forum/#!topic/netbox-discuss/bqLY8cyU2ns
Environment

Python version:  3.5.4
NetBox version:  2.4.2

Steps to Reproduce

Create a virtual machine
curl -i -sSL -H "Authorization: Token <token>" -H "Content-Type: application/json" -H "Accept: application/json" -X PATCH -d '{"primary_ip4":12341}' https://<netbox_url>/api/virtualization/virtual-machines/1231/

Expected Behavior
The primary ip address gets set / updated
Actual behaviour
HTTP/1.1 500 Internal Server Error
Server: nginx
Date: Thu, 09 Aug 2018 10:35:02 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 1890
Connection: keep-alive
X-Frame-Options: SAMEORIGIN
API-Version: 2.4
Vary: Cookie, Origin

<!DOCTYPE html>

    <title>Server Error</title>
    <link rel="stylesheet" href="/static/bootstrap-3.3.7-dist/css/bootstrap.min.css">
    <link rel="stylesheet" href="/static/font-awesome-4.7.0/css/font-awesome.min.css">
    <meta charset="UTF-8">

                            Server Error

                                There was a problem with your request. Please contact an administrator.

                            The complete exception is provided below:

<class 'django.db.utils.IntegrityError'>

duplicate key value violates unique constraint "virtualization_virtualmachine_primary_ip4_id_key"
DETAIL:  Key (primary_ip4_id)=(12341) already exists.

                            If further assistance is required, please post to the NetBox mailing list.

                            Home Page

Hey,
thanks for the quick reply. I just checked it in the database. Actually the IP-Address is set as primary on a different virtual machine where it is not assigend to an interface. So this seems to be the reason for the database error but I think it shouldn't be possible to set an ip address as primary when this ip address isn't actually assigned to an interface of this device / virtual machine, right?
Besides that: thanks for the great work so far, we're first-time users of netbox and very happy about it and the progress it made until today :).
Regards
Hendrik

Hey Jeremy,
thanks for fixing this. But I still have the occurence that if an IP-Address is reassigned to another VM the primay IP configuration of the former VM does not get removed.
I guess the primary IP assignment should be removed from the VM in the moment the actual IP-Address is no longer assigned to this perticular VM.
Do you agree?


added queries for multiple tables

At this step, I wrote queries for the following questions..!

What animals belong to Melody Pond? ✔
List of all animals that are pokemon (their type is Pokemon).✔
List all owners and their animals, remember to include those that don't own any animal. ✔
How many animals are there per species? ✔
List all Digimon owned by Jennifer Orwell. ✔
List all animals owned by Dean Winchester that haven't tried to escape. ✔
Who owns the most animals? ✔

The following are the screenshots for the queries

thank you @MaganaAsiati or reviewing this PR ! I 'll try to improve those optional changes you suggested!


Don't change options of the globally used PartialEvaluator in the "should render checkbox with fallback font for printing" unit-test

Given that the same PartialEvaluator-instance is used for a lot of these unit-tests, manually changing the options in any one test-case could lead to intermittently failing unit-tests since they're run in a random order.
To fix this, we simply have to use the existing method to clone the PartialEvaluator-instance but with the custom options.

/botio test


ODI Docker V <IP_ADDRESS>.6: getting error while running sh /odi/studio/odi.sh

Hello,
I have created ODIContainer and ODIDatbase based on the readme file in this link.
Everything works well and containers are up and running. but when I run the command sh odi.sh inside ODIContainer in directory $HOME/odi/studio, I face an error for launching the ODI Studio:
Oracle Data Integrator 12c (<IP_ADDRESS>.6)
Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
/u01/oracle/odi/studio/bin/../../../jdeveloper/ide/bin/launcher.sh: line 1332: file: command not found

Are you trying to start a GUI application?

Dear @Djelibeybi,
thanks for your quick response.
If I can't run odi studio, how can i use this container?
already I trying run with x11 but it doesn't work.

You need to use Studio on a different machine to access ODI inside the container, AFAIK.


feat: add contributionGridSnake

feat: add contributionGridSnake

The effect is detailed in: https://github.com/buyfakett/buyfakett


some code too dark in markdown

https://marketplace.visualstudio.com/items?itemName=Ervoconite.quieter-dark-color-theme-fix


Cannot launch Foobar on macOS through bandled .app file

Environment

OS version: macOS
Elona Foobar verision: develop

Details
$ open ElonaFoobar.app
LSOpenURLsWithRole() failed with error -10810 for the file /path-to-elonafoobar/bin/ElonaFoobar.app.

This error can be avoided by launch bin/ElonaFoobar.app/Contents/MacOS/ElonaFoobar directly.
How to reproduce
Double click bin/ElonaFoobar.app or execute command open ElonaFoobar.app.
Cause
Searching now...
Solution
TODO

This issue no longer occurs in the latest develop.


Support for new bing chat.

Love it, but looking for something that supports the new bing chat. Any plans?

Thanks for using my Bing dark mode extension! I'm currently working on adding support for Bing Chat, but it's my first extension and there are a few challenges with the shadowRoots. I'll post an update if I find a solution.

Thanks. Congrats on your first extension. May Bing guide you in your quest. Amen.


Patch for Viro3DSceneNavigator & ViroScene

Hi! 👋
Firstly, thanks for your work on this project! 🙂
Today I used patch-package to patch<EMAIL_ADDRESS>for the project I'm working on.

Here is the diff that solved my problem:
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index 68d8eed..4d7899e 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -484,7 +484,11 @@ export class Viro3DSceneNavigator extends React.Component<Props, State> {
     // If the user simply passes us the props from the root React component,
     // then we'll have an extra 'rootTag' key which React automatically includes
     // so remove it.
-    delete this.sceneNavigator.viroAppProps.rootTag;
+    try {
+        delete this.sceneNavigator.viroAppProps.rootTag;
+      } catch (error) {
+        console.log(error)
+    }

     const {
       viroAppProps = {}, // Make sure viroAppProps aren't null to save us having to always check
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index d860cfd..547d48f 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -55,7 +55,7 @@ export class ViroScene extends ViroBase<Props> {
      */
     event.nativeEvent.platformInfoViro.vrPlatform =
       event.nativeEvent.platformInfoViro.platform;
-    this.props.onPlatformUpdate &&
+    this.props?.onPlatformUpdate &&
       this.props.onPlatformUpdate(event.nativeEvent.platformInfoViro);
   }

This issue body was partially generated by patch-package.

Fixes: https://github.com/ViroCommunity/viro/issues/134

Fixed this in another patch. Closing! 😄