sharjeelyunus/github-issues-dataset huggingface dataset:
Repository: godot
Issue: Inconsistent "Identifier doesn't exist" with custom classes in GDScript addons
Labels: bug,topic:gdscript,needs testing

### Godot version

4.1 NET, 4.2 dev 3 NET

### System information

Windows 10, Vulkan

### Issue description

There's an issue when using GDScript addons that add custom classes - when running game and node from the addon is in the scene, sometimes it will throw error "identifier not found in current scope" regarding to reference to custom class placed in the script. It's inconsistent, most of times it runs without error.

Seems to be happening in projects that already have multiple scripts, I'm working on project with multiple C# scripts inside.

Examples of addons with the problem: https://github.com/gilzoide/godot-dockable-container, https://github.com/Rytelier/Godot-Post-Processing-Manager

### Steps to reproduce

- Pick a project with already multiple scripts (probably C# ones)
- Install one of addons mentioned above
- Add a node from the addon into the testing scene
- Run game multiple times until the error appears

### Minimal reproduction project

Attempts to create simple reproduction project failed, as mentioned above issue appears when there are already multiple scripts in the project.
To reproduce, follow the steps above.
Repository: TypeScript
Issue: Co-dependency of variables destructured from union types is lost unless used in control-flow statements
Labels: Help Wanted,Possible Improvement

### 🔎 Search Terms

destructuring union type tuple

Please expand this list or edit the title with a better-fitting description.

### 🕗 Version & Regression Information

- This is the behavior in every version I tried, and I reviewed the FAQ for entries about n/a


### ⏯ Playground Link

https://www.typescriptlang.org/play?ts=5.1.6#code/CYUwxgNghgTiAEYD2A7AzgF3gNyhAjAFzxxTCoQCe8A2gORR0A08DdAuvAD4khkXV6AI2asR7ANwAoAPQz4CxUoUA9APxSpydFhrZ8LbACZOAXhx580rakwWIR+Ob0GcJ+FDSJbGaXKXqsvIAkl4oSPAQqADmIDC8-ChUtABEUCksaSmcPKTkSYIpQhnwRdlSQA

### 💻 Code

```ts
declare const val1: readonly ['a', 'a'] | readonly ['b', 'b'];
//            ^?

const [v1, v2] = val1;

const val2 = [v1, v2] as const;
//    ^?
// Is no longer readonly ["a", "a"] | readonly ["b", "b"]
```

### 🙁 Actual behavior

When destructuring a variable `readonly ["a", "a"] | readonly ["b", "b"]` into `[v1, v2] = val`, the compiler is sophisticated enough to retain the dependency of the two when either is used in either an `if` or even a `switch` statement:
```ts
if(v1 === 'a') {
  v2;
// ^?
// TS is smart enough to know that this is "a"
}
```

When put back together, however, that dependency is lost. For: 

```ts
declare const val1: readonly ['a', 'a'] | readonly ['b', 'b'];

const [v1, v2] = val1;

const val2 = [v1, v2] as const;
```

`val1` and `val2` should be _identical_, however, `val2` is `readonly ["a" | "b", "a" | "b"]`. Note that this not only applies to tuples, but de- and restructured objects as well.

---

See [this real example](https://www.typescriptlang.org/play?#code/PTAEHIDMEsBsBcCmAncoDGB7AtogzqJMjqAIYB2oAEgCo0AKo05Sykp6io8AFqfKAAmmfOXAC8AVwAO0zMgG8u4ACL9EaeAE9piAHQAoEKBo8uAKQDKoWJgDm0dABpQPTAHdEANxQvEAD110JAIlQjhWMgJVdXA9UAAKAGFMSVhBMlg8TFAAIy59O3jwAFVmeAAOAEFkZFItNAAeAFoAPggAIUlISBRwAEojMFMUREh5RBdsUllmO0JibGo6RgTySWx85H7QNtArRLUkHegCZEQAR0loc8FDAwBvA1BCSXJg6ExKaekAMQiUAlni9wggUAAuUAAbXA0mI0nALnAl0RoCOiAAuqAAD7Q2Hw1HgZio9FQjEY4H9SEwuGYBFIlEudabFBY3E0glI4lMjZbMlYp4gjBfPACKG06QuOkuLykWBYgC8oNYAG4DMCXnh3NB4OgeIkJTtBUKMKQ8MoJeBwRqTed4JJkJQoTaTaAJU4XSbpZ6hTU6lo9Kc-fUErLYDsAPygMN6H4JUM7BXtLx6OyIeA0aC4BL9HaQsMe10vDFqoUAX2BFYrj2BkDeHy+oB+-zByCBQpgrep+LphMZaPUbLxlq5YhcpPJlO7I4g-eZWyHHN7o9R85Q-NAxpeWHIouh7tA0ujcsVypQaptxgAitd0ABrWBaPK2dwEGR6D82rU6vUG+FGz10DNC0CWtItQG-XV9QSOkAPA7dgNnC4rR9W10wdJ0DyPGM0wzLNEBzEtUIQ80IGJMD4JeO0MP3eEpUlY9YFjGZ4y8RNk1TdNM2zXMiPAity0rAwKyAA) of a legitimate use-case and how this affects the code.

### 🙂 Expected behavior

Just like with
```ts
if(v1 === 'a') {
  v2;
// ^?
// TS is smart enough to know that this is "a"
}
```
the compiler should figure out that `v1` and `v2` depend on each other when combining them with e.g. `[v1, v2]` and create an according union type of tuples instead of a single tuple with union type members.
Repository: storybook
Issue: [Documentation]: Interaction tests: how to spy on component methods - or is it not permitted?
Labels: documentation

### Describe the problem

Example: the component is an Angular component and has an input called `myInput` and a public method called `myMethod`.

`myMethod` is called by clicking a button.

From the docs, anything passed to `args` is automatically converted to a spy.

However, all of the args are inputs.

How do you spy on a component method?

And if there is no way to access the component methods, can you elaborate on why that is not permitted? I definitely believe the documentation should explain this, because I've spent hours searching for this info and can find nothing.

In the past, I would have always spied on public component methods with Jest.


### Additional context

_No response_
Repository: tensorflow
Issue: Segmentation fault when running tensorflow.python.framework.kernels.get_registered_kernels_for_op
Labels: stat:awaiting tensorflower,type:bug,comp:ops,TF 2.13

### Issue type

Bug

### Have you reproduced the bug with TensorFlow Nightly?

No

### Source

binary

### TensorFlow version

2.11.0

### Custom code

Yes

### OS platform and distribution

22.04

### Mobile device

_No response_

### Python version

3.9

### Bazel version

_No response_

### GCC/compiler version

_No response_

### CUDA/cuDNN version

nvidia-cudnn-cu11==8.6.0.163, cudatoolkit=11.8.0

### GPU model and memory

_No response_

### Current behavior?

Probably due to feeding None argument

### Standalone code to reproduce the issue

```shell
import tensorflow as tf
import os
import numpy as np
from tensorflow.python.framework import kernels
try:
  arg_0 = None
  out = kernels.get_registered_kernels_for_op(arg_0,)
except Exception as e:
  print("Error:"+str(e))

```
```


### Relevant log output

```shell
2023-08-12 13:41:10.388491: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properly.
Segmentation fault

```
```
Repository: stable-diffusion-webui
Issue: [Feature Request]: Clear generations older than X days (Launcher option)
Labels: enhancement

### Is there an existing issue for this?

- [X] I have searched the existing issues and checked the recent builds/commits

### What would your feature do ?

WebUI has an option to clear all generated files at startup. Would it be possible to add an option for "older than X days" to that? I want it to clean up old stuff but recently generated files could still be very useful.

### Proposed workflow

1. Start A1111, shows Launcher.
2. Under option "Clear all generations" add a "older than X days" line, default perhaps 0 for current behaviour.
3. It deletes all generated files older than X days.


### Additional information

_No response_
Repository: godot
Issue: The fact that `str_to_var` and `ConfigFile` deserialize Objects is likely to cause security issues
Labels: discussion,topic:core,confirmed,documentation

### Godot version

v4.1.1.stable.official [bd6af8e0e]

### System information

Ubuntu 23.04

### Issue description

The global method `str_to_var` and ConfigFile's `load`/`parse` methods deserialize variants from strings, including objects. The objects can include custom scripts, and the `_init` methods of these scripts run immediately upon parsing.

These methods are commonly used for things like settings and save data, and it's not uncommon for players to share save files online (especially for games where a lot of content requires unlocking).

If developers are unaware of this, it will lead to arbitrary code execution exploits. And it's quite likely they will be unaware, because while I've seen this fact discussed online (hence why I'm opening this publicly), the docs don't mention it.

IMO this is too dangerous to have as the default behavior, even if it were documented. There's already separate `bytes_to_var` and `bytes_to_var_with_objects` methods so it's not like this wasn't though of, I don't know why text data wasn't treated the same.

### Steps to reproduce

This is a minimal example that will print "Arbitrary code" as soon as it is parsed.
```
"Object(RefCounted,\"script\":Object(GDScript,\"script/source\":\"extends RefCounted;func _init():print(\\\"Arbitrary code\\\")\"))"
```
GDScript allows separating statements via semicolons on one line, so you can include as much code as you want in one line.

### Minimal reproduction project

https://github.com/godotengine/godot-demo-projects/tree/master/loading/serialization

The following ConfigFile save will print "Arbitrary code" when loaded. It otherwise loads normally.
```ini
malicious_value=Object(RefCounted,"script":Object(GDScript,"script/source":"extends RefCounted;func _init(): print(\"Arbitrary code\")"))

[player]

position=Vector2(300, 300)
health=100.0
rotation=0.0

[enemies]

enemies=[{
"position": Vector2(219.796, 160)
}, {
"position": Vector2(531.796, 304)
}, {
"position": Vector2(387.796, 464)
}]
```

This JSON file will print the same, then the game will stop with an error because it doesn't expect an object. It doesn't matter though, the code still runs.
```json
{
	"enemies":[
		{"position":"Vector2(273.469, 160)"},
		{"position":"Vector2(585.469, 304)"},
		{"position":"Vector2(441.469, 464)"}
	],
	"player":{
		"health":"100.0",
		"position":"Object(RefCounted,\"script\":Object(GDScript,\"script/source\":\"extends RefCounted;func _init():print(\\\"Arbitrary code\\\")\"))",
		"rotation":"0.0"
	}
}
```
Repository: go
Issue: cmd/go/internal/test: default pgo=auto results in surprising slow behaviour
Labels: ToolSpeed,NeedsFix,GoCommand,compiler/runtime

### What version of Go are you using (`go version`)?

<pre>
$ go version
go version go1.21.0 linux/amd64
</pre>

### Does this issue reproduce with the latest release?
yes.

### What operating system and processor architecture are you using (`go env`)?

<details><summary><code>go env</code> Output</summary><br><pre>
$ go env
GO111MODULE=''
GOARCH='amd64'
GOBIN=''
GOCACHE='/home/lizf/.cache/go-build'
GOENV='/home/lizf/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/home/lizf/hny/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/lizf/hny/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/snap/go/current'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/snap/go/current/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.21.0'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build522135516=/tmp/go-build -gno-record-gcc-switches'
</pre></details>

### What did you do?
Run `go test ./...` where one directory (which has no tests in it) contains a `default.pgo` file, but a subdirectory contains tests. eg:

```
cmd/bar/main.go
cmd/foo/default.pgo
cmd/foo/main.go
cmd/foo/internal/foo_test.go
shared_libs/some_libraries.go
...
```

### What did you expect to see?
Build should be fast because all intermediate build artifacts are reused since no `*_test.go` files are directly located in a directory containing `default.pgo`

```
$ go test ./cmd/foo/...
(pause while shared libs are compiled)
?   	cmd/bar	[no test files]
(no pause)
?   	cmd/foo	[no test files]
(no pause)
ok  	cmd/foo/internal	0.013s
```

### What did you see instead?
A custom build was done for `cmd/app` with `default.pgo` in use (even if no tests were found for that directory), forcing recompilation of everything to ensure complete optimization.

```
$ go test ./cmd/...
(pause while shared libs are compiled)
?   	cmd/bar	[no test files]
(long pause while shared libs are recompiled with pgo even if cmd/foo has no tests)
?   	cmd/foo	[no test files]
(no pause)
ok  	cmd/foo/internal	0.013s
```

However, running with pgo explicitly turned off does proceed quickly:
```
$ go test -pgo=off ./cmd/...
(pause while shared libs are compiled)
?   	cmd/bar	[no test files]
(no pause)
?   	cmd/foo	[no test files]
(no pause)
ok  	cmd/foo/internal	0.013s
```
Repository: PowerToys
Issue: MWB Mouse Without Borders Service added as "Manual" start by default
Labels: Issue-Bug,Issue-Feature,Product-Mouse Without Borders

### Microsoft PowerToys version

0.72.0

### Installation method

Microsoft Store

### Running as admin

Yes

### Area(s) with issue?

Mouse Without Borders

### Steps to reproduce

Set "Use Service" to ON

### ✔️ Expected Behavior

Service startup mode should be set to "Automatic" so that after rebooting, the remote machine is automatically controllable right from the login screen.

(Additional note, "PowerToys.MWB.Service" is an unexpected name, making it hard to find the service to confirm it's running.  A name that starts with "Mouse" would make the service easier to find.)

### ❌ Actual Behavior

Service startup mode is set to "Manual."  This is not documented or obvious to end users, making it seem like "Use Service" is broken.

### Other Software

_No response_
Repository: godot
Issue: Drop-down menus detect click release as a click
Labels: bug,topic:gui

### Godot version

4.1.1

### System information

OS: Ubuntu 22.04 jammy, Kernel: x86_64 Linux 6.2.0-26-generic

### Issue description

Some drop-down menu treats click release as a click which makes it hard to use a touchpad. The easiest to find is when I click the language menu in the Project Manager.

### Steps to reproduce

Click the language drop-down menu in the Project Manager window

### Minimal reproduction project

N/A
Repository: PowerToys
Issue: Option to change the default unit of measurement for trigonometric functions in PowerToys Run calculator
Labels: Idea-Enhancement,Product-PowerToys Run,Resolution-Fix Committed,Run-Plugin

### Description of the new feature / enhancement

The proposed feature is the addition of an option to change the default unit of measurement for trigonometric functions in the PowerToys Run calculator from radians to degrees. This would allow users to easily switch between radians and degrees when performing calculations involving trigonometric functions.

### Scenario when this would be used?

This feature would be particularly useful for users who frequently work with angles measured in degrees. For example, if a user is working on a math problem that involves angles measured in degrees, they could use this feature to switch the calculator to degrees mode and easily perform calculations using trigonometric functions without having to manually convert between radians and degrees. This would make the calculator more user-friendly and accessible to a wider audience.

### Supporting information

_No response_
Repository: go
Issue: runtime,cmd/compile: redesign PCDATA encoding
Labels: Performance,NeedsFix,FeatureRequest,binary-size,compiler/runtime

I've been experimenting with alternate encodings for the PCDATA tables, with the goal of significantly improving decode speed, at possibly a slight increase in binary size.

@mknyszek, @dr2chase and I designed a format that's >4x faster to decode than the Go 1.21 tables, while increasing binary size by only 1–2.5%. This issue is to track (eventually) moving to this format in the compiler and runtime.

I've described the format [here](https://github.com/aclements/go-misc/tree/master/pcvaluetab#readme) and have an [out-of-tree implementation](https://github.com/aclements/go-misc/tree/master/pcvaluetab) of the encoder and decoder (apologies for the messy, experimental code).

Here's an example benchmark, using the `go`  binary:

```
goos: linux
goarch: amd64
pkg: github.com/aclements/go-misc/pcvaluetab
cpu: 11th Gen Intel(R) Core(TM) i7-1185G7 @ 3.00GHz
                               │  go.bench   │
                               │   sec/op    │
Decode/go/varint-cache-nohit-8   50.40n ± 2%
Decode/go/varint-cache-hit-8     10.23n ± 0%
Decode/go/varint-cache-none-8    42.46n ± 0%
Decode/go/alt-8                  11.69n ± 1%

file size change: +1.975729%
```

All of the benchmarks generate a random sample of 1024 (PC, table) pairs to lookup and report the average lookup time.

"Decode/go/alt" is the new implementation. "varint-cache-nohit" is the current varint format, with no cache hits. "varint-cache-hit" is similar, but repeats each lookup 8 times to simulate a high cache hit rate. "varint-cache-none" is the varint format, but with no cache.

Here are the same results for github.com/kubernetes/kubernetes/cmd/kubelet:

```
goos: linux
goarch: amd64
pkg: github.com/aclements/go-misc/pcvaluetab
cpu: 11th Gen Intel(R) Core(TM) i7-1185G7 @ 3.00GHz
                                    │ kubelet.bench │
                                    │    sec/op     │
Decode/kubelet/varint-cache-nohit-8     56.21n ± 1%
Decode/kubelet/varint-cache-hit-8       11.04n ± 1%
Decode/kubelet/varint-cache-none-8      48.61n ± 1%
Decode/kubelet/alt-8                    11.80n ± 1%

file size change: +1.248393%
```
Repository: PowerToys
Issue: Keyboard scripted shortcuts
Labels: Idea-New PowerToy,Needs-Triage

### Description of the new feature / enhancement

can you add scripted shortcuts to the app?

 

### Scenario when this would be used?

I want to make a shortcut to create a new Text Document

just add a script like in AHK
^+t::
FileAppend, , %A_Desktop%\New Text Document.txt

thin link it with a keyboard shortcut

### Supporting information

_No response_
Repository: kubernetes
Issue: volume was left over and kubelet repeat error: "orphaned pod xxx found, but error occurred when trying to remove the volumes dir: not a directory"
Labels: kind/bug,sig/storage,needs-triage

### What happened?

This is not the same issue as https://github.com/kubernetes/kubernetes/issues/111933, although they have the same symptom. https://github.com/kubernetes/kubernetes/issues/111933 happened when volume is attachable, this issue happened in non-attachable plugin.

This issue happened **intermittently**.

Reproduce steps:
1. Create one Node cluster.
2. Create a deployment using non-attachable CSI volume (e.g. Azurefile)
3. Delete one of the Pod of the Deployment **while Node is still rebooting**
4. The Pod is in Terminating state and wait until the Node is up
5. The Pod's volume will be left over in the Node and kubelet repeat error: `orphaned pod xxx found, but error occurred when trying to remove the volumes dir: not a directory`

**This issue seems like not harmful, however, if we reboot the Node again with the volume left in the Node, all the volumes that should be mounted remotely are then become local mount point, this is the same issue as https://github.com/kubernetes/kubernetes/issues/117513**

I tested with `NewVolumeManagerReconstruction` disabled in v1.27.3 , I will test if enable `NewVolumeManagerReconstruction` can solve this problem.

### What did you expect to happen?

volume is cleaned up successfully.

### How can we reproduce it (as minimally and precisely as possible)?

As mentioned above.

### Anything else we need to know?

_No response_

### Kubernetes version

<details>

```console
$ kubectl version
# paste output here
Client Version: version.Info{Major:"1", Minor:"24", GitVersion:"v1.24.4", GitCommit:"95ee5ab382d64cfe6c28967f36b53970b8374491", GitTreeState:"clean", BuildDate:"2022-08-17T18:54:23Z", GoVersion:"go1.18.5", Compiler:"gc", Platform:"linux/amd64"}
Kustomize Version: v4.5.4
Server Version: version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.3", GitCommit:"25b4e43193bcda6c7328a6d147b1fb73a33f1598", GitTreeState:"clean", BuildDate:"2023-06-19T16:10:31Z", GoVersion:"go1.20.5", Compiler:"gc", Platform:"linux/amd64"}
```

</details>


### Cloud provider

<details>
N/A
</details>


### OS version

<details>

```console
# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here
```

</details>


### Install tools

<details>

</details>


### Container runtime (CRI) and version (if applicable)

<details>

</details>


### Related plugins (CNI, CSI, ...) and versions (if applicable)

<details>

</details>
Repository: godot
Issue: Remove Control Spacers from editor and dialogs
Labels: enhancement,topic:editor,topic:gui

### Godot version

4.x

### System information

Windows 10

### Issue description

Control Spacers are used in the editor instead of using Control size flags and BoxContainer's separation custom constant, you can find more related info here https://github.com/godotengine/godot-proposals/discussions/7444#discussioncomment-6653563

### Steps to reproduce

N/A

### Minimal reproduction project

N/A
Repository: neovim
Issue: Making editing snappier over remote networks
Labels: enhancement,performance,remote,network

### Problem

Consider the scenario where my Neovim server is running on a remote server and I connect to it through ssh. Any and every operation that happens, including buffer changes, happen on the remote server. This makes the editing experience on the local feel "laggy" for slow networks. Instead, the editing experience on Neovim should be amazing even when the network is lagging. It's fine if the global search is slow or running system commands is slow, but the editing experience should always be premium and fast.

I looked into other editors that support such behavior:
1. [JetBrains client](https://www.jetbrains.com/help/idea/remote-development-overview.html#859dd19f): JetBrains Client has an advanced editor based on the JetBrains Rider’s RD protocol, which makes typing feel instant.
2. [Lapce](https://docs.lapce.dev/development/architecture): Lapce lets the client do the buffer management and communicates the delta changes in the buffer over to the server which does everything else.
3. VS Code: My guess, is that VS Code, also does something similar to support snappy editing over remote connections, although I could not find any documents supporting this.

Another question is how does this fit into our roadmap and vision for Neovim? If this is something we would be interested in, I would be happy to work towards getting it across the finish line.

### Expected behavior

Editing is fast even when network is unstable or disconnected (obviously for the cached buffers)
Repository: rust
Issue: RwLock::read() should be reentrant so its behavior will be the same as borrow checker
Labels: T-libs-api,A-atomic

Let's say I have the following code:

```rust
struct Foo {
    items: RwLock<Vec<Item>>,
}

impl Foo {
    pub fn bar(&self) {
        for i in self.items.read().unwrap().deref() {
            self.some_method_that_will_endup_calling_baz(i);
        }
    }

    fn baz(&self, id: u32) {
        self.items.read().unwrap().iter().find(|i| i.id() == id);
    }
}
```

If someone call `bar` it may cause a panic in `baz` because the `items` is already locked by `bar`. The above code will be working if `items` is not putting behind `RwLock` but I will not be able to push the item into `items`. If I lock the `Foo` instead of its field it will solve this problem but it will cumbersome to work with `Foo` if most of it fields is immutable.