sharjeelyunus/github-issues-dataset huggingface dataset:
Repository: youtube-dl
Issue: Add Support for DataCamp Courses
Labels: site-support-request,account-needed


- [x ] I've **verified** and **I assure** that I'm running youtube-dl **2018.01.21**
- [x ] At least skimmed through the [README](https://github.com/rg3/youtube-dl/blob/master/README.md), **most notably** the [FAQ](https://github.com/rg3/youtube-dl#faq) and [BUGS](https://github.com/rg3/youtube-dl#bugs) sections
- [x ] [Searched](https://github.com/rg3/youtube-dl/search?type=Issues) the bugtracker for similar issues including closed ones

### What is the purpose of your *issue*?
- [x ] Site support request (request for adding support for a new site)


### If the purpose of this *issue* is a *site support request* please provide all kinds of example URLs support for which should be included (replace following example URLs by **yours**):

- Single Course: https://www.datacamp.com/courses/intro-to-python-for-data-science
- Tracks: https://www.datacamp.com/tracks/data-analyst-with-python

---

### Description of your *issue*, suggested solution and other information

Please add support for downloading courses from DataCamp.
Repository: go
Issue: cmd/gofmt: Unexpected formatting multiline functions in struct literal
Labels: NeedsInvestigation

### What version of Go are you using (`go version`)?

```
go version go1.9.2 darwin/amd64
```

### What operating system and processor architecture are you using (`go env`)?

```
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/drew/go"
GORACE=""
GOROOT="/usr/local/opt/go/libexec"
GOTOOLDIR="/usr/local/opt/go/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/g3/0kqyss7j5zj0dj3gdkz2m9lw0000gn/T/go-build269266413=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
```

### What did you do?

Run `gofmt` on the following code:

```go
package main

type x struct {
	i        int
	someFunc func()
}

func main() {
	_ = &x{
		i: 1,
		someFunc: func() {
			_ = 1
			_ = 2
		},
	}
	_ = &x{
		i:        1,
		someFunc: func() {},
	}
}
```

### What did you expect to see?

```go
package main

type x struct {
	i        int
	someFunc func()
}

func main() {
	_ = &x{
		i: 	  1,
		someFunc: func() {
			_ = 1
			_ = 2
		},
	}
	_ = &x{
		i:        1,
		someFunc: func() {},
	}
}
```

Notice the first struct literal, that the value for `i` is indented to match `someFunc` as it is in the second literal.

### What did you see instead?

The file remains unchanged. This seems to only happen when a multiline function is declared inline.
Repository: create-react-app
Issue: Maybe use execa?
Labels: issue: proposal

See:

* https://github.com/testem/testem/pull/1205
* https://github.com/sindresorhus/execa#why
Repository: pytorch
Issue: [feature request]Support AVX512F intrinstics to vectorize operations
Labels: feature,module: cpu,triaged

Pytorch has written SSE, AVX and AVX2 [intrinstics](https://github.com/pytorch/pytorch/tree/master/aten/src/TH/vector) to vectorize operations on CPU.  Now  AVX-512 instruction sets are more and more widely introduced to Intel CPUs.  It is necessary to add AVX-512F intrinstics  to get better performance.
Repository: puppeteer
Issue: Coverage: recording cumulative coverage at points in time.
Labels: feature,chromium

Discussed this with @aslushnikov, but documenting here.

Use case: while a page is loading, report coverage snapshots at various milestones. e.g. at `DOMContLoaded`, `load`, and `networkidle0`. This would allow users to measure the effectiveness of a lazy loading strategy, for example.

My goal was to create a breakdown of CSS/JS coverage at given points in time with URL attribution:
<img width="627" alt="screen shot 2018-01-24 at 1 58 48 pm" src="https://user-images.githubusercontent.com/238208/35312281-c66f91d0-010e-11e8-93a2-65ebb0d73f84.png">

But this is currently hard to do b/c:
- it would be useful to provide an API call that calculates the used bytes and total bytes for a coverage object. Basically make this [common pattern](https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md#class-coverage) more convenient.
- coverage is not cumulative, numbers go up and down between snapshots
- `totalBytes` (denominator) in the screenshot doesn't represent the total file size. I'd expect all of them to be `39255`, the same va reported by the devtools:

<img width="1126" alt="screen shot 2018-01-24 at 2 14 55 pm" src="https://user-images.githubusercontent.com/238208/35312715-fcbb68f2-0110-11e8-8cd8-dcdf5c64f8cc.png">

POC code: http://jsbin.com/qohunokalo/1/edit?js,output

```js
// start coverage

const dcl = page.waitForNavigation({waitUntil: 'domcontentloaded'}).then(async response => {
  const {jsCoverage, cssCoverage} = await stopCoverage(page);
  // print metrics by URL @ domcontentloaded 
  await startCoverage(page);
});

const load = page.waitForNavigation({waitUntil: 'load'}).then(async response => {
  const {jsCoverage, cssCoverage} = await stopCoverage(page);
  // print metrics by URL @ load 
  await startCoverage(page);
});

const networkidle0 = page.waitForNavigation({waitUntil: 'networkidle0'}).then(async response => {
  const {jsCoverage, cssCoverage} = await stopCoverage(page);
    // print metrics by URL @ networkidle0 
});

await Promise.all([dcl, load, networkidle0]);
```
Repository: TypeScript
Issue: keyword to force calling the super on any method
Labels: Suggestion,Awaiting More Feedback

Today I faced the following code
```ts
class A {
 // silly warning comment: if you override this, don't forget to call the super method to avoid memory leaks
onExit() {
// do some important cleaning stuff
}
}

class B extends A {
onExit() {
super.onExit(); // good
}
}

class C extends A {
onExit() {
// forgot to call to super.onExit = memory leaks
}
}
```

The problem is that, unlike a constructor, there is no way to force a method overriding another one to call the parent "super" function.

I wished we had a "concrete"* keyword to let the user know he must call the super method.

```ts
class A {
concrete onExit() {
// do some cleaning stuff
}
}

class B extends A {
onExit() {
super.onExit(); // no error
}
}

class C extends A {
 // error: Declaration of derived method must contain a 'super' call
onExit() {
}
}
```
In another language, I could have used the ```final``` keyword to prevent overriding the method but then… no overriding allowed neither.

* "concrete" In opposition to "abstract" (for lack of a better name), other ideas: "important" or "mandatory"
Repository: pytorch
Issue:  [Feature Request] clip_grad_norm for sparse gradients
Labels: module: sparse,triaged

1.It would be great to have another common gradient clipping strategy, i.e. clip_grad_value in PyTorch. Compared to clip_grad_norm, which is sensitive to the total number of parameters in the model, clip_grad_value will be easier to use as tuning max_value will be more straightforward than tuning max_norm. Still, AFAIK clip_grad_norm is the recommended way to do gradient clipping since it preserves the direction of the gradients while clip_grad_value does not.

2.The current implementation of clip_grad_norm can not handle sparse gradients. A common use case is when sparse=True in nn.Embedding layers.

I will issue a PR if people feel this is worth adding.

cc @vincentqb @aocsa
Repository: rust
Issue: UdpSocket::set_ttl does not set IPv6 hoplimit field
Labels: C-enhancement,T-libs-api

It is not possible to set a hoplimit in an IPv6 packet sent over UDP. `UdpSocket::set_ttl` does not modify the hoplimit in the IPv6 packet and there seems to be no other way to do so.

**I tried this code:**

    use std::net::{Ipv6Addr, SocketAddrV6, UdpSocket};

    fn main() {
        let laddr = SocketAddrV6::new(Ipv6Addr::new(0,0,0,0,0,0,0,1), 50000, 0, 0);
        let destination = SocketAddrV6::new(Ipv6Addr::new(0,0,0,0,0,0,0,1), 50000, 0, 0);

        let socket = UdpSocket::bind(laddr).unwrap();
        socket.connect(destination).unwrap();
        socket.set_ttl(10).unwrap();
        println!("{:?}", socket.ttl().unwrap());

        let payload = [1,2,3,4,5,6,7,8];
        socket.send(&payload).unwrap();
    }

**I expected to see this happen:** 
Since `UdpSocket` has no other function that would set the hoplimit in an IPv6 packet, I believe `set_ttl` should be doing this. I expected to capture a UDP packet with an IPv6 hoplimit field of 10.

**Instead, this happened:** 
The output of the program is as expected:

    10

I used `tcpdump -v -i lo udp port 50000` to capture the packet:

    tcpdump: listening on lo, link-type EN10MB (Ethernet), capture size 262144 bytes
    23:43:02.146680 IP6 (flowlabel 0x487a1, hlim 64, next-header UDP (17) payload length: 16) localhost.localdomain.50000 > localhost.localdomain.50000: [bad udp cksum 0x0023 -> 0x6917!] UDP, length 8

The hoplimit field of the packet is still set to the default value of 64.

## Meta

`rustc --version --verbose`:

    rustc 1.23.0
    binary: rustc
    commit-hash: unknown
    commit-date: unknown
    host: x86_64-unknown-linux-gnu
    release: 1.23.0
    LLVM version: 4.0

<!-- TRIAGEBOT_START -->

<!-- TRIAGEBOT_ASSIGN_START -->

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

<!-- TRIAGEBOT_ASSIGN_END -->
<!-- TRIAGEBOT_END -->
Repository: godot
Issue: Indent dictionary key/value entries in TSCN format
Labels: enhancement,discussion,topic:core

**Godot version:**
godot3 tip

**Issue description:**
I have two suggestions for making tscn files easier to parse in third party scripting languages.

1. In a tscn file, multiline values should be indented. The one that affects me the most is in the Animation sub resource.
```
tracks/0/keys = {
"times": PoolRealArray( 0, 1),
"transitions": PoolRealArray( 1, 1),
"update": 0,
"values": [ Color( 0.45112, 0.09609, 0.18779, 1 ), Color( 0.55547, 0.0429, 0.18366, 1 ) ]
}
```
This would parse better if multi-line values were delineated in some way. There is no specific method in the INI format for doing so but my preferred option would be an indent like this:

```
tracks/0/keys = {
    "times": PoolRealArray( 0, 1),
    "transitions": PoolRealArray( 1, 1),
    "update": 0,
    "values": [ Color( 0.45112, 0.09609, 0.18779, 1 ), Color( 0.55547, 0.0429, 0.18366, 1 ) ]
    }
```

2.  In a tscn file, the AnimationPlayer node value "autoplay" is defined twice. It should probably only be defined once.

**Steps to reproduce:**
1. Create a scene with an AnimationPlayer
2. Create an empty animation.
3. Set the animation to autoplay
4. Save the file.

Inside the file the autoplay value is set twice.

**Minimal reproduction project:**
```
[gd_scene load_steps=2 format=2]

[sub_resource type="Animation" id=1]

resource_name = "test1"
length = 1.0
loop = true
step = 0.1

[node name="AnimationPlayer" type="AnimationPlayer" index="0"]

root_node = NodePath("..")
autoplay = "idle"
playback_process_mode = 1
playback_default_blend_time = 0.0
playback_speed = 1.0
anims/test1 = SubResource( 1 )
blend_times = [  ]
autoplay = "idle"
```

3. Finally, parsing a tscn when there's shader code stored inside could also be problematic but I figure if you're trying to do that then you kind of deserve problems.
Repository: youtube-dl
Issue: Login to Youtube + Google Prompt/Authenticator
Labels: bug

I know it's possible to download Youtube videos that require you to be logged in by supplying in your email and password however I do have the Google Prompt added as well as an authenticator. 
Here's what I tried (and failed):

- Supplying my email, password and authentication code but I got "Invalid parameters" and at the same time my phone got the Google Prompt. I tried accepting the Google Prompt but it didn't help.
- Supplying my email and password and quickly accepting the Google Prompt as soon as it came up on my phone. Didn't work.
- Removing the Google Prompt option and relying on just the authenticator, same thing as my first attempt.

Any ideas?
Repository: TypeScript
Issue: Make the type guarding on 'typeof' be transitive.
Labels: Suggestion,Awaiting More Feedback

<!-- 🚨 STOP 🚨 𝗦𝗧𝗢𝗣 🚨 𝑺𝑻𝑶𝑷 🚨 -->
<!--
Half of all issues filed here are duplicates, answered in the FAQ, or not appropriate for the bug tracker.

Please help us by doing the following steps before logging an issue:
  * Search: https://github.com/Microsoft/TypeScript/search?type=Issues
  * Read the CONTRIBUTING guidelines: https://github.com/Microsoft/TypeScript/blob/master/CONTRIBUTING.md
  * Read the FAQ: https://github.com/Microsoft/TypeScript/wiki/FAQ
-->

<!-- If you have a QUESTION:
   THIS IS NOT A FORUM FOR QUESTIONS.
   Ask questions at http://stackoverflow.com/questions/tagged/typescript
    or https://gitter.im/Microsoft/TypeScript
-->

<!-- If you have a SUGGESTION:
  Most suggestion reports are duplicates, please search extra hard before logging a new suggestion.
  See https://github.com/Microsoft/TypeScript-wiki/blob/master/Writing-Good-Design-Proposals.md
-->

<!-- If you have a BUG:
  Please fill in the *entire* template below.
-->

<!-- Please try to reproduce the issue with `typescript@next`. It may have already been fixed. -->
**TypeScript Version:**  2.7.0

<!-- Search terms you tried before logging this (so others can find this issue more easily) -->
**Search Terms:** 
typeof + transitive + type guard + typeof same

**Code**

```ts
function test(a: string | number, b: string | number) {
  if (typeof a === typeof b && typeof a === 'string') return b.length
}
```

**Expected behavior:**
variable `b` be asserted as string type.

**Actual behavior:**
TS report: `Property 'length' does not exist on type 'string | number'.` at `b.length`

**Playground Link:** <!-- A link to a TypeScript Playground "Share" link which demonstrates this behavior --> 
[Playground](http://www.typescriptlang.org/play/index.html#src=function%20test(a%3A%20string%20%7C%20number%2C%20b%3A%20string%20%7C%20number)%20%7B%0A%20%20if%20(typeof%20a%20%3D%3D%3D%20typeof%20b%20%26%26%20typeof%20a%20%3D%3D%3D%20'string')%20return%20b.length%0A%7D)

**Related Issues:**
Repository: rust
Issue: Check for Integer Overflow by Default
Labels: C-enhancement,T-libs-api

It would be good to always check integers for overflow and thereby providing users with an integer type that actually behaves like an integer or at least fails completely instead of giving "wrong" results.

This was discussed on IRC last week and three distinct cases were identified:
1. An integer is desired and the implicit modular arithmetic is incorrect
2. Modular arithmetic is desired
3. An integer is desired but the user is sure that overflows are impossible and needs the extra speed of omitting the checks

My proposal is to make (1.) the default.

For (2.) there is already [Wrapping](https://doc.rust-lang.org/std/num/struct.Wrapping.html) but (3.) should also be annotated requiring people to assert that they have done their homework and
a) are sure that overflows cannot cause problems
b) the compiler cannot infer that the situation is safe and remove the checks
c) actually need the speed-up of omitting the checks.

I am aware that there are [checked operations](https://doc.rust-lang.org/std/primitive.i64.html#method.checked_mul) and compiler flags to keep overflow checks in release builds but the defaults are important and the defaults are wrong!

This issue is also discussed in the following two posts:
https://mail.mozilla.org/pipermail/rust-dev/2014-June/010363.html
https://huonw.github.io/blog/2016/04/myths-and-legends-about-integer-overflow-in-rust/
Repository: rust
Issue: Struct initializer `..x` syntax should work for other structs with structurally equal subset of fields
Labels: T-lang,C-feature-request

This should be allowed:
```rust
struct X { a: u8, b: u16, c: u32, d: i8 } 
struct Y { a: u8, b: u16, c: u32, d: i8 } 
let x = X { a: 1, b: 2, c: 3, d: 4 }; 
let y = Y { a: 5, ..x };
```
if the fields that are missing from `Y`'s struct initializer have the **same** names and types in `X` as in `Y`.
This occurs very often and I often have to write code that pulls over many fields manually (e.g. to convert between structs with different (serde) attributes and to derive view structs from model structs etc.)..
It would make sense to allow the above as syntactic sugar for this:
```rust
let y = Y { a: 4, b: x.b, c: x.c, d: x.d };
```

So the compiler would:
1. determine the set of fields missing from the initializer syntax (`{ b: u16, c: u32, d: i8 }` above)
2. check if those fields are present in the type of `x` with the same types

You may say "just `impl From<X> for Y`" but that's exactly where many of these patterns occur!

And usually I have to do conversion functions on the few fields that are not pulled over from `x`, so a proc-macro to derive `From` wouldn't work, because `y.a` would have a different type than `x.a`.
Repository: svelte
Issue: Proposal: Top-Level <:Body> Injections
Labels: feature request,popular

Imagine I have the following component, `<TopLevelThing>`.

```HTML
<div class="top-level-thing">
    <p>Top level stuff.</p>
</div>
```

It's intended to be used at the top-level of the `<body>`.

However, I might want to use it as part of a component which is deep inside the `<body>`, nowhere near the top-level.

This could be achieved with a special tag like the following.

```HTML
<:Body>
    <TopLevelThing />
</:Body>
```

Svelte could inject this into the top-level of the `<body>` alongside other elements.

The advantage is that it would retain all the functionality of a component: the lifecycle, properties, and being part of the component organisation and structure.

One common use case for this could be modals. They can often relate very specifically to the organisation and structure of a chain of components. However, perhaps because of styling or some other reason it may be more logical for the modal structure to be located at the top-level of the `<body>`, rather than within the parent component structure.

It's quite possible that an alternative approach, using current Svelte features, is most appropriate to these kinds of use cases. However, this approach came to my mind, and I thought it was worth airing.

As an aside, this feature does raise some additional questions. For instance, if a `<:Body>`  tag sounds good, would it make more sense to have a more generic `<:Injection>` tag instead, which could be used with more than just the `<Body>`? Also, might developers find it useful in some cases, of their choosing, for  `<:Injection>` tags to persist even when their parent components are destroyed?
Repository: vscode
Issue: Comment for erb files in rails 
Labels: under-discussion,editor-commands

When doing 
"CTRL + / "
for lines where ruby codes are written in the " <% %> " tag in html.erb files,
it always leaves the last "%>" part as HTML
Repository: rust
Issue: codegen-units + ThinLTO is not as good as codegen-units = 1
Labels: A-LLVM,I-slow,T-compiler

We recently had a fair amount of reports about code generation quality drop. One of the recent causes for the quality drop is the enablement of codegen-units and ThinLTO.

It seems that ThinLTO is not capable of producing results matching those obtained by compiling without codegen-units in the first place.

The list of known reports follows:

* https://github.com/rust-lang/rust/issues/47665
* https://github.com/rust-lang/rust/issues/47561
* https://github.com/rust-lang/rust/issues/47356
* https://github.com/rust-lang/rust/issues/47062 (specifically this [comment](https://github.com/rust-lang/rust/issues/47062#issuecomment-360449227))
* https://github.com/rust-lang/rust/issues/47321
* https://github.com/rust-lang/rust/issues/47770
* https://github.com/rust-lang/rust/issues/53833

Improvements to ThinLTO quality are inbound with the soon-to-happen LLVM upgrade(s), however those do not help sufficiently, it would be nice to figure out why ThinLTO is not doing good enough job.

cc @alexcrichton @nikomatsakis
Repository: godot
Issue: Using Viewport Texture causes "node not found" error / "Cannot get path of node as it is not in a scene tree"
Labels: bug,topic:core,confirmed

___

***Bugsquad note:** This issue has been confirmed several times already. No need to confirm it further.*

___

**Godot version:**
v3.0.rc3.official


**OS/device including version:**
Ubuntu 16.04


**Issue description:**
I'm using the canvas 2D drawing functions to create a texture and then using that texture on other nodes. Instancing a 2D scene that uses local viewport textures causes runtime errors in the Output and Debugger panes but the project still runs correctly. The errors are:

`Node not found: Viewport`
`ViewportTexture: Path to node is invalid`

The errors show in the Output pane when the parent scene is loaded and in the Debugger when the project runs. It makes testing tedious because I never know if the error in the Debugger is real or not.

I'm not sure if my node setup is correct for what I'm trying to accomplish but it works.


**Steps to reproduce:**
I've attached a project that repros the problem.

- Open the project, open the main scene, and you should see the errors in the Output pane
- Run the project and you should see the errors in the Debugger pane


**Minimal reproduction project:**
[node-not-found-example.zip](https://github.com/godotengine/godot/files/1665135/node-not-found-example.zip)
Repository: go
Issue: fmt: Scanf works differently on Windows and Linux
Labels: OS-Windows,NeedsFix

### What version of Go are you using (`go version`)?
go version go1.9.3 windows/amd64 and go version go1.9.3 linux/amd64

### Does this issue reproduce with the latest release?
yes

### What operating system and processor architecture are you using (`go env`)?
on Windows:
```
set GOARCH=amd64
set GOBIN=
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=D:\golang
set GORACE=
set GOROOT=C:\Go
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0 -fdebug-prefix-map=C:\Users\ANS_AS~1\AppData\Local\Temp\go-build251374523=/tmp/go-build -gno-record-gcc-switches
set CXX=g++
set CGO_ENABLED=1
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
```

on Linux:
```
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/ans_ashkan/go"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build871792404=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
```

### What did you do?

```golang
package main

import "fmt"

func main() {
	var firstString string
	var secondString string

	fmt.Printf("Please enter first string:\n")
	fmt.Scanf("%s", &firstString)
	fmt.Printf("Please enter second string:\n")
	n, err := fmt.Scanf("%s", &secondString)
	fmt.Println(err)
}
```

### What did you expect to see?
Same behavior on Windows and Linux.
Either it should capture `secondString` on Windows and Linux,
or reject it on both operating systems.

### What did you see instead?
on Windows: `unexpected newline`.
on Linux: no errors.