sharjeelyunus/github-issues-dataset huggingface dataset:
Repository: pytorch
Issue: Distributed Data Parallel for computation graphs that make RPCs in forward()
Labels: oncall: distributed,triaged,module: rpc

## 🚀 Feature
<!-- A clear and concise description of the feature proposal -->
The current [DDP implementation](https://pytorch.org/tutorials/intermediate/ddp_tutorial.html) require a computation graph is on a single node (maybe multiple devices). DDP won't work if a computation graph makes RPCs in its `forward()` method. This feature is to make DDP work for such computation graphs by leveraging the existing [Distributed Autograd/Optimizer](https://pytorch.org/docs/stable/notes/distributed_autograd.html).

Note that the parameter servers can't use DDP in this use case.

## Motivation

<!-- Please outline the motivation for the proposal. Is your feature request related to a problem? e.g., I'm always frustrated when [...]. If this is related to another GitHub issue, please link here too -->

To support the following model

```
class SimpleNet(nn.Module):
    def __init__(self, d_in, d_out):
        super(SimpleNet, self).__init__()
        self.net = nn.Linear(d_in, d_out)
        self.relu = nn.ReLU()

    def forward(self, input):
        return self.relu(self.net(input))

class HybridModel(nn.Module):
    def __init__(self, remote_parameter_server):
        super(HybridModel, self).__init__()
        self.net1 = SimpleNet(5, 8)
        self.rps = remote_parameter_server
        self.net2 = SimpleNet(5, 3)

    def forward(self, x):
        x = self.net1(x)
        x = RPC(self.rps, another_remote_net, x)
        return self.net2(x)

ddp_hybrid_model = DistributedDataParallel(HybridModel(remote_server))
```



## Pitch

<!-- A clear and concise description of what you want to happen. -->
TDB

## Alternatives

<!-- A clear and concise description of any alternative solutions or features you've considered, if any. -->

TDB

## Additional context

<!-- Add any other context or screenshots about the feature request here. -->


CC: @pritamdamania87  @mrshenli @zhaojuanmao 


cc @pietern @mrshenli @pritamdamania87 @zhaojuanmao @satgera @rohan-varma @gqchen @aazzolini @xush6528 @osalpekar @jjlilley
Repository: flutter
Issue: `flutter logs -d all` doesn't work even though we suggest it
Labels: c: new feature,tool,a: quality,P2,team-tool,triaged-tool

```
ianh@burmese:~/dev/cruisemonkey$ flutter logs 
More than one device connected; please specify a device with the '-d
<deviceId>' flag, or use '-d all' to act on all devices.

Pixel 3 XL      • 8AJY0LZ2N • android-arm64 • Android 10 (API 29)
Lenovo TB 8504F • HGAFGRP2  • android-arm64 • Android 7.1.1 (API 25)
ianh@burmese:~/dev/cruisemonkey$ flutter logs -d all
More than one device connected; please specify a device with the '-d
<deviceId>' flag.

Pixel 3 XL      • 8AJY0LZ2N • android-arm64 • Android 10 (API 29)
Lenovo TB 8504F • HGAFGRP2  • android-arm64 • Android 7.1.1 (API 25)
```

Given that we support tailing the logs of all devices with `flutter run -d all`, seems logical that we should be able to do that with `flutter logs` too.
Repository: go
Issue: gollvm: find a better way to deal with g
Labels: NeedsInvestigation

Currently, gollvm stores the current g in tls. The runtime.getg () function returns the current g. This function will be inlined for better performance and the inlining will be disabled by GoSafeGetg pass in some situations.  Cherry described this situation in this pass:
```
within a function,
//
//   load g
//   call mcall(...)
//   load g
//
// may be compiled to
//
//   leaq    g@TLS, %rdi
//   call    __tls_get_addr
//   movq    %rax, %rbx     // cache in a callee-save register %rbx
//   ... use g in %rax ...
//   call    foo
//   ... use g in %rbx ...
// This is incorrect if a thread switch happens at the call of foo.
```
A practical example of this situation: [gofrontend/chan.go#154](https://github.com/golang/gofrontend/blob/d5d00d310ec33aeb18f33f807956ec0c4eeea6bb/libgo/go/runtime/chan.go#L154.)
By removing the inlining of the second and subsequent getg functions in a block, GoSafeGetg pass fixed this issue on linux/amd64. But on Linux / arm64, llvm performs cache optimization on the tls base address across the entire function range,  so the g obtained by the second and subsequent getg in the above situation may still be wrong.

As I know, this kind of optimization is common in llvm and gcc, and it seems to be correct and very good for c / c ++. Before c / c ++ introduced a concept like goroutine, I think this optimization will not be changed. Please refer to similar issues: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26461, https://bugs.llvm.org/show_bug.cgi?id=19177.
Currently gollvm only supports linux / amd64 and linux / arm64, but as more platforms are supported in the future, I think this issue will be a problem on more platforms, so I think we need to find a better way to store the current g. 

At present, the methods I can think of are as follows:
1. Keep the current practice, store g in tls, try to remove the cache of tls base address.
2. Follow the practice of main go, reserve a register to store g.
3. Store g in a suitable location on the stack.
@thanm @cherrymui @ianlancetaylor Any suggestions ?
Repository: rust
Issue: [Docs] box doesn't contain documentation regarding ZSTs
Labels: C-enhancement,T-libs-api,A-docs

I've recently learned that `Box::new` on a ZST returns the ZSTs alignment. I assumed that the return value didn't really matter since it's a ZST.
This should be added to Box's documentation (`Box::from_raw` should also be aligned then, right?)
Repository: flutter
Issue: [video_player] iOS: Player doesn't open a video with whitespaces in the path 
Labels: platform-ios,p: video_player,package,has reproducible steps,P2,found in release: 2.2,found in release: 2.3,team-ios,triaged-ios

<!-- Thank you for using Flutter!

     If you are looking for support, please check out our documentation
     or consider asking a question on Stack Overflow:
      * https://flutter.dev/
      * https://api.flutter.dev/
      * https://stackoverflow.com/questions/tagged/flutter?sort=frequent

     If you have found a bug or if our documentation doesn't have an answer to what you're looking for, then fill out the template below. Please read
     our guide to filing a bug first: https://flutter.dev/docs/resources/bug-reports
-->

## Steps to Reproduce

<!-- You must include full steps to reproduce so that we can reproduce the problem. -->

1. Create VideoPlayerController.file using the path with whitespaces
2. Play video

**Expected results:** Video played

**Actual results:** Video isn't played, because of player not created

I think the problem is at the moment of creating the link in **player = [[FLTVideoPlayer alloc] initWithURL:[NSURL URLWithString:uriArg]**, **NSURL URLWithString:uriArg** will be returned nil and the player isn't created.
Repository: TypeScript
Issue: jsdoc "object." fails where "Object." works.
Labels: Suggestion,Awaiting More Feedback

`Object.<string,number>` works
`object.<string,number>` fails

jsdoc eslint likes lower case `object`, see here: https://github.com/gajus/eslint-plugin-jsdoc/blob/master/.README/rules/check-types.md
Repository: rust
Issue: tidy should not traverse untracked directories
Labels: T-bootstrap,C-discussion

<!--
Thank you for filing a bug report! 🐛 Please provide a short summary of the bug,
along with any information you feel relevant to replicating the bug.
-->

I ran (effectively):

```
% git pull origin master
...
% git status
On branch moz-master
Your branch is ahead of 'pnk-gh/moz-master' by 5558 commits.
  (use "git push" to publish your local commits)

Untracked files:
  (use "git add <file>..." to include in what will be committed)

	../src/ignore_me/

nothing added to commit but untracked files present (use "git add" to track)
% cat ../src/ignore_me/should_be_ignored.rs
use tidy;
use not_so_smart;

// THIS IS AN ABSURDLY LONG LINE OVER HERE THIS IS AN ABSURDLY LONG LINE OVER HERE THIS IS AN ABSURDLY LONG LINE OVER HERE
% ../x.py test src/tools/tidy
Updating only changed submodules
Submodules updated in 0.08 seconds
    Finished dev [unoptimized] target(s) in 0.16s
Diff in /Users/felixklock/Dev/Mozilla/rust.git/src/ignore_me/should_be_ignored.rs at line 1:
-use tidy;
 use not_so_smart;
+use tidy;
 
 // THIS IS AN ABSURDLY LONG LINE OVER HERE THIS IS AN ABSURDLY LONG LINE OVER HERE THIS IS AN ABSURDLY LONG LINE OVER HERE
 
Running `"/Users/felixklock/Dev/Mozilla/rust.git/objdir-dbgopt/build/x86_64-apple-darwin/stage0/bin/rustfmt" "--config-path" "/Users/felixklock/Dev/Mozilla/rust.git" "--edition" "2018" "--unstable-features" "--skip-children" "--check" "/Users/felixklock/Dev/Mozilla/rust.git/src/ignore_me/should_be_ignored.rs"` failed.
If you're running `tidy`, try again with `--bless` flag. Or, you just want to format code, run `./x.py fmt` instead.
failed to run: /Users/felixklock/Dev/Mozilla/rust.git/objdir-dbgopt/build/bootstrap/debug/bootstrap test src/tools/tidy
Build completed unsuccessfully in 0:00:03
% 
```

There are often extraneous files and directories in my source tree. And often they are not even files/directories that I had created (see (*) below).

The problem is that tidy does a blanket traversal of the tree under `src/`, as far as I can tell, and thus will happily flag "problems" in files that are no longer effectively part of the source code. 

(My most recent instance of this was tidy flagging a problem in a `.rs` file under `src/stdsimd/`.)

Eventually, after several rounds of trying to understand why non-tidy code got checked into the github repo, I'll eventually remember to look at `git status` and take note of the directories listed under untracked files.  And then, usually, delete them.

But this should not be necessary. `tidy` should be smart enough to run `git status` itself and use that to drive its traversal.

----

(*) part of the above process is the build system will automatically update submodules. But old directories from old (outdated) submodule checkouts still stick around.


<!-- TRIAGEBOT_START -->

<!-- TRIAGEBOT_ASSIGN_START -->

<!-- TRIAGEBOT_ASSIGN_DATA_START$${"user":"Milo123459"}$$TRIAGEBOT_ASSIGN_DATA_END -->

<!-- TRIAGEBOT_ASSIGN_END -->
<!-- TRIAGEBOT_END -->
Repository: godot
Issue: Error while building Project with Godot Mono
Labels: bug,platform:windows,confirmed,topic:dotnet

**Godot version:**
Godot Engine v3.2.stable.mono.oficial

**OS/device including version:**
Windows 10

**Issue description:**
Some times (even a newly created) Project fails to build and results in error MSB3248: Parameter "SearchPaths" has invalid value "[PathToMyProject].

Even if i change nothing, just repeatedly pressing the build button it suddenly works again and after a few more builds i get this error again. This Error also occurs sometimes on an older Project i made with Godot 3.1. 

Install Versions: Godot 3.2 (Mono), Mono 6.10, .Net Framework 4.7, .Net Core 3.1. 


**Steps to reproduce:**
Try to build a Godot Mono Project.

**Minimal reproduction project:**
Create a new Mono Project and try to build it.

EDIT:

Sometimes in my *..csproj file, the tags Private and HintPath in the Reference tag of GodotSharp and GodotSharpEditor swap:

From:
    <Reference Include="GodotSharp">
      <Private>False</Private>
      <HintPath>$(ProjectDir)/.mono/assemblies/$(ApiConfiguration)/GodotSharp.dll</HintPath>
    </Reference>

to.
    <Reference Include="GodotSharp">
      <HintPath>$(ProjectDir)/.mono/assemblies/$(ApiConfiguration)/GodotSharp.dll</HintPath>
      <Private>False</Private>
    </Reference>
And the same (at the same time) in the GodotSharpEditor reference tag.

I don't know if this is related or not.
Repository: TypeScript
Issue: Should be possible to spread `Parameters` onto its function
Labels: Bug

**TypeScript Version:**  3.7.5

**Search Terms:**
function parameters spread

**Expected behavior:**
Expected the playground example to compile without errors

**Actual behavior:**
The code works great, but Typescript throws the following error:

> Type 'Parameters<F>' must have a '[Symbol.iterator]()' method that returns an iterator. (2488)

**Code**
```ts
export function call<F extends (...args: any) => any>(
  fn: F,
  ...parameters: Parameters<F>
): ReturnType<F> {
  return fn(...parameters);
}
```

**Playground Link:** [Provided](https://www.typescriptlang.org/play/?ssl=1&ssc=1&pln=2&pc=22#code/KYDwDg9gTgLgBAMwK4DsDGMCWEVzQQwBtCAeAMTlBmBQBMBnOACgDo38oBzegLjnxQBPAJRwAvAD5+QiUwBQcRCj5kANArhsWYDvgC2walF5wACroNH65CXOF8ASoaRQUAFUFhgNuAG8NUM6uSqxsOlD6hsDGwgDccgC+QA)
Repository: godot
Issue: Mouse bug on double click on Window header
Labels: bug,platform:windows,topic:core,confirmed

**Godot version:**
3.2 (stable)

**OS/device including version:**
Windows OS only (tested on WIn10)

**Issue description:**
Double click on Godot WIndow header make mouse "stuck" (mouse click always activated).
Only after double click 2 more times mouse return to its normal state.

**Steps to reproduce:**
In WIn10 launch Goodt 3.2 game and double click Window header.

**Minimal reproduction project:**
I do not have time, and WIndows 10 today to make test-project.
I saw this bug when launch my own demo on Win10. this bug happened only in Win10, so its not my mouse-logic problem.

I use very default 3D-Camera logic(this can be copy-pasted to 3d Camera node) [Camera.gd src](https://github.com/danilw/godot-utils-and-other/blob/master/portals_panorama/scripts/Camera.gd) (remove line 102 103)

[link to build(exe)](https://danilw.github.io/godot-utils-and-other/portal_panorama/portal_panorama_win.zip) launch it and double click header
Repository: godot
Issue: Scale stops snapping after rotating a node (2d)
Labels: bug,topic:editor,confirmed

**Godot version:**
3.2
**OS/device including version:**
GalliumOS (unknown version)
**Issue description:**
After a sprite is rotated in the 2d view, scaling it with the corner handles does not snap to grid.
**Steps to reproduce:**
Create a sprite in a 2d view, rotate it 180 degrees, and scale it using the handles that appear with the select tool.
**Minimal reproduction project:**
[bug.zip](https://github.com/godotengine/godot/files/4226182/bug.zip)
Repository: angular
Issue: `animateChild` invoke disabled child animation in group
Labels: type: bug/fix,area: animations,freq2: medium,state: confirmed,P3


# 🐞 bug report

### Affected Package
The issue is caused by package `@angular/animations`

### Is this a regression?
I don't know

### Description
I have group animations. Child animation is disabled on small screen, but child animation is called  by `animateChild` despite being disabled.

```
 trigger('parentAnimation', [
      state('in', style({opacity: 1})),
      transition(':enter',  group([
        query('.main', [style({opacity: 0}), animate('2s ease')]),
        query('@*', animateChild())
      ])),
      ...
```

```
<div @parentAnimation *ngIf="display">
  <p class="main">Should animate</p>
  <p @childAnimation [@.disabled]="true">
    Shouldn't animates
  </p>
</div>
```


## 🔬 Minimal Reproduction
https://stackblitz.com/edit/animate-child

In Chrome and FF two animations are showing. 
In Safari no animations.

## 🌍  Your Environment

**Angular Version:**
<pre><code>
Angular CLI: 8.3.20
Node: 12.10.0
OS: darwin x64
Angular: 8.2.14
... animations, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router, upgrade

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.803.20
@angular-devkit/build-angular     0.803.20
@angular-devkit/build-optimizer   0.803.20
@angular-devkit/build-webpack     0.803.20
@angular-devkit/core              8.3.8
@angular-devkit/schematics        8.3.20
@angular/cdk                      8.2.3
@angular/cli                      8.3.20
@ngtools/webpack                  8.3.8
@schematics/angular               8.3.20
@schematics/update                0.803.20
rxjs                              6.5.3
typescript                        3.5.3
webpack                           4.41.2
</code></pre>
Repository: go
Issue: cmd/go: go list should not allow an empty "" argument
Labels: NeedsFix

<!-- Please answer these questions before submitting your issue. Thanks! -->

### What version of Go are you using (`go version`)?

<pre>
$ go version
go version go1.14rc1 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="on"
GOARCH="amd64"
GOBIN="/home/manlio/.local/bin"
GOCACHE="/home/manlio/.cache/go-build"
GOENV="/home/manlio/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/manlio/.local/lib/go:/home/manlio/src/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/home/manlio/sdk/go1.14rc1"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/home/manlio/sdk/go1.14rc1/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build552987847=/tmp/go-build -gno-record-gcc-switches"
GOROOT/bin/go version: go version go1.14rc1 linux/amd64
GOROOT/bin/go tool compile -V: compile version go1.14rc1
uname -sr: Linux 5.5.4-arch1-1
/usr/lib/libc.so.6: GNU C Library (GNU libc) stable release version 2.31.
gdb --version: GNU gdb (GDB) 9.1
</pre></details>

### What did you do?

Inside a module `github.com/perillo/goprint`:
```
$ go list -m ""
```

### What did you expect to see?

```
github.com/perillo/goprint
```

### What did you see instead?

```
go list -m: module : not a known dependency
```

`go list ""` works fine.  Is there a reason for this asymmetry?

If an empty module path **must** be rejected, the error message should be changed.

Thanks.
Repository: pytorch
Issue: When a Node fails to resolve to an Operator, print out the types of arguments, and all "close matches" in known operators
Labels: oncall: jit,triaged

Related to #33500

Sometimes, malformed nodes can show up in your IR. The most common situation this occurs is when you've written out IR by hand, as is done in some alias analysis and dce tests. When this happens, you get an assert like:

```
RuntimeError: hasSpecialCase INTERNAL ASSERT FAILED at ../torch/csrc/jit/passes/alias_analysis.cpp:311,  please report a bug to PyTorch. We don't have an op for aten::ones but it isn't a special case. (analyzeImpl at ../torch/csrc/jit/passes/alias_analysis.cpp:311)
```

Asserts like this can be made dramatically more useful by reporting:
* The types of the arguments
* The list of "close miss" declarations which might have matched, but didn't match for some reason

Assuming there are no bugs in the subsumption check, this would make it instantly clear what the problem is.

cc @suo
Repository: TypeScript
Issue: Symbol type is incorrectly generalized when used as a property value of an object literal
Labels: Needs Investigation

**TypeScript Version:**  3.7.5

**Search Terms:** symbol infer type

**Expected behavior:**

Symbol `const uniqueSymbol = Symbol()` when used as property value in an object literal is inferred as unique type `typeof uniqueSymbol`.

**Actual behavior:**

Symbol `const uniqueSymbol = Symbol()` when used as property value in an object literal is inferred as general type `symbol`.

**Related Issues:**

**Code**
```ts
const uniqueSymbol = Symbol()

// Example of incorrect inference (unique symbol is generalized to type `symbol`)

const foo = {
  prop: uniqueSymbol,
}

type Foo = typeof foo  // { prop: symbol }

// Workarounds for incorrect behavior

const bar = {
  prop: uniqueSymbol as typeof uniqueSymbol,
}

type Bar = typeof bar // { prop: typeof uniqueSymbol }

const genericFactory = <T>(value: T) => ({ prop: value })

const baz = genericFactory(uniqueSymbol)

type Baz = typeof baz // { prop: typeof uniqueSymbol }

```



<details><summary><b>Output</b></summary>

```ts
"use strict";
const uniqueSymbol = Symbol();
// Example of incorrect inference (unique symbol is generalized to type `symbol`)
const foo = {
    prop: uniqueSymbol,
};
// Workarounds for incorrect behavior
const bar = {
    prop: uniqueSymbol,
};
const genericFactory = (value) => ({ prop: value });
const baz = genericFactory(uniqueSymbol);

```


</details>


<details><summary><b>Compiler Options</b></summary>

```json
{
  "compilerOptions": {
    "noImplicitAny": true,
    "strictNullChecks": true,
    "strictFunctionTypes": true,
    "strictPropertyInitialization": true,
    "strictBindCallApply": true,
    "noImplicitThis": true,
    "noImplicitReturns": true,
    "useDefineForClassFields": false,
    "alwaysStrict": true,
    "allowUnreachableCode": false,
    "allowUnusedLabels": false,
    "downlevelIteration": false,
    "noEmitHelpers": false,
    "noLib": false,
    "noStrictGenericChecks": false,
    "noUnusedLocals": false,
    "noUnusedParameters": false,
    "esModuleInterop": true,
    "preserveConstEnums": false,
    "removeComments": false,
    "skipLibCheck": false,
    "checkJs": false,
    "allowJs": false,
    "declaration": true,
    "experimentalDecorators": false,
    "emitDecoratorMetadata": false,
    "target": "ES2017",
    "module": "ESNext"
  }
}
```


</details>

**Playground Link:** [Provided](https://www.typescriptlang.org/play/?ssl=1&ssc=1&pln=24&pc=1#code/MYewdgzgLgBArmAlgRzgUwMoE8C2AjEAGxgF4Zt8iAKASgCg6B6RmAUQA8BDHAB0LRggAZjERhQAJwlpgsMULTTxAqghToYEXAWKIIMAOZowizoUQAvNABMYUEHaw8BAAy2VCL+nVCRYQkAcyAG86GBgeCRAeAC54JFRMbSIAGjoAXwYoJwEAMUDSR2dhGACHGGYYYIio2M1k4kymFgB1EAkAa04ohGt9AIlRcXbpWRg8NAALTgA3RHaGX2hx7sLQ8MjouLVEih0YTn1s4pEd9D3UjKycmAAhVbJjtBK8VcrqzbqnkrOkjxgmktYEYTBJEMBcpxZO0sIUADwAFQAfFQZmZ0HEETRSEiYFQPrU4mjCBp0t4gSsLIUQYpwZDoRIsKoEucGt4nndOFTHjkXlyKiwCVsis9Tiy-vtMkA)
Repository: pytorch
Issue: Make setter non-optional, e.g., TensorOptions::device(optional<Device>) -> device(Device), and add a device_opt setter
Labels: module: cpp,triaged

Instead of

```
class TensorOptions {
  TensorOptions device(optional<Device>) { ... } // setter
}
```

we should have

```
class TensorOptions {
  TensorOptions device(Device) { ... } // setter
  TensorOptions device_opt(optional<Device>) { ... } // setter
}
```

This makes the class more user friendly as now `x.device({kCUDA, 1})` works; it also makes it symmetric with `at::device({kCUDA, 1})`.

cc @yf225