sharjeelyunus/github-issues-dataset huggingface dataset:
Repository: react
Issue: Use the native `beforeinput` event if it's supported
Labels: Type: Feature Request,Component: DOM

**Do you want to request a *feature* or report a *bug*?**

Improvement.

**What is the current behavior?**

Right now, the synthetic `onBeforeInput` event is being created based on two other events:

- `textInput` when possible—which is in Webkit.
- `keypress` as a fallback.

But these days in Chrome, Safari and Opera the spec'd `beforeinput` event is available and actually fires. And when it does, it includes other [spec'd properties](https://developer.mozilla.org/en-US/docs/Web/API/InputEvent) which can be extremely helpful:

- `inputType` tells you whether the event is inserting text, replacing text, inserting a line break, etc.
- `getTargetRanges()` tells you where the input is taking place in the DOM.

Right now this information isn't exposed, because even if the browser supports `beforeinput`, it's not being checked for.

**What is the expected behavior?**

Instead React should treat `textInput` as a slightly-preferred fallback for native `beforeinput` support, but add `beforeinput` as the true goal. So we'd end up with a fallback stack of:

- `beforeinput`
- `textInput`
- `keypress`

Which guarantees that the `nativeEvent` will always be the most spec'd and have the most relevant information associated with it.

---

The `beforeinput` event's extra properties are critical in `contenteditable` situations, when you want to prevent the default browser behavior from firing but perform the logic on an internal model instead. (I'm looking to do this for [Slate](https://github.com/ianstormtaylor/slate).) 

Without that extra information you have to fallback to hackier behavior—allowing the event to occur, trying to parse the DOM for what the change was, then re-rendering to remove it, etc. I want to avoid this on the more modern browsers, because it results in reduced performance.

---

There is another situation that this fixes, which is that spellcheck right now doesn't trigger React's `onBeforeInput` handler, even though modern browsers fire the `beforeinput` event, because it's not being listened for right now.
Repository: kubernetes
Issue: Rand utility should use per-component source instead of a global source
Labels: kind/bug,sig/api-machinery,lifecycle/frozen

Offshoot from https://github.com/kubernetes/kubernetes/pull/53720#issuecomment-336232742

Using a single global source is bad, as multiple goroutines can be in lock contention for the RNG (though ideally they could've used different sources).
Also a single RNG source can bottleneck throughput in such cases.
It's also worth thinking how much this is going to help? Maybe it's not that bad currently where each binary has its own source and IIUC it's apiserver that is mostly generating names and that is anyway a single sub-component doing that (I might be missing sth here).

cc @smarterclayton @kubernetes/sig-api-machinery-bugs
Repository: nvm
Issue: Gemset Like Feature in NVM
Labels: feature requests

#### What's the feature?

- Project based global packages.

#### What problem is the feature intended to solve?

- Lets say I have an `angular 2` project which was created and managed with `Angular CLI 1.0.0` and for some reason` That Angular CLI project` has been `updated to 2.0.0`. This updated packages do everything based on `Angular 4`, which is problem for our older project. So have these global CLI's based on project would help us manage that.

- Following article have also tried to explain this pain (https://www.sitepoint.com/solve-global-npm-module-dependency-problem/)

#### Is the absence of this feature blocking you or your team? If so, how?

- It is blocking us doing experiments on new packages/frameworks and also keep working on existing projects.

#### Is this feature similar to an existing feature in another tool?

- In RVM, you have Gemsets which help you achieve the same goal.
Repository: rust
Issue: Improve rustdoc's Trait Implementations section by grouping by module
Labels: T-rustdoc,C-enhancement

Right now, rustdoc's output for `std::option::Option` looks like this (as seen on https://doc.rust-lang.org/std/option/enum.Option.html):

![current](https://user-images.githubusercontent.com/831192/31552056-6033b71c-b004-11e7-8c0f-02fa0818671b.PNG)

This is pretty hard for me to read. I think this has been suggested before but hiding (or at least, minimizing) the trait methods makes this much easier to read:

![better](https://user-images.githubusercontent.com/831192/31552157-a2106842-b004-11e7-995d-c6bc307e8a78.PNG)

This better but it's still hard to skim through because there's no ordering to the results (at least, that I can discern). If the trait impls were grouped by module, it would be much easier to skim:

![even better](https://user-images.githubusercontent.com/831192/31552261-f6a9a59e-b004-11e7-9462-09861eddc4d7.PNG)

Alphabetizing the modules and the trait impls would improve this even more.
Repository: flutter
Issue: Updating an App on timezone or timezone definition changes
Labels: framework,engine,f: date/time picker,a: internationalization,has reproducible steps,P2,team-engine,triaged-engine,found in release: 3.19,found in release: 3.20

Currently Flutter apps are rebuilt when the device's locale setting is changed.

It's not clear how well we respond when the device's time zone changes or when time zone definitions change (which can actually happen).
Repository: angular
Issue: Feature Request: debounce in ngModelOptions
Labels: feature,effort2: days,state: Needs Design,freq2: medium,area: forms,forms: ngModel,feature: under consideration

[ ] Regression (a behavior that used to work and stopped working in a new release)
[ ] Bug report  <!-- Please search GitHub for a similar issue or PR before submitting -->
[ x] Feature request
[ ] Documentation issue or request
[ ] Support request => Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question
</code></pre>

## Current behavior
No support for `debounce` in `ngModelOptions`

## Expected behavior
Angular doesn't yet support `debounce` `ngModelOption` on inputs. I would like to know what is the logic behind not implementing the same with `blur`?

## Example usecase for debounce:

A text input like in Google docs which should save the typed text after 3 secs of no keypress after typing.
Repository: vscode
Issue: Terminal should support workbench.fontAliasing
Labels: help wanted,feature-request,upstream,upstream-issue-linked,terminal-rendering

https://github.com/Microsoft/vscode/issues/2577
https://twitter.com/_developit/status/918488307968937984
Repository: go
Issue: x/build: number of test failures
Labels: help wanted,Builders

In lieu of an automated builder, I run the x/build tests in Travis CI. @andybons has fixed two problems with cmd/cl and with cloud.google.com depedencies, but this has revealed a number of underlying test failures:

```
--- FAIL: TestConnAgainstNetTest (2.03s)
	revdial_test.go:236: warning: the revdial's SetWriteDeadline support is not complete; some tests involving write deadlines known to be flaky
    --- PASS: TestConnAgainstNetTest/BasicIO (0.41s)
    --- PASS: TestConnAgainstNetTest/PingPong (0.19s)
    --- PASS: TestConnAgainstNetTest/RacyRead (0.34s)
    --- FAIL: TestConnAgainstNetTest/RacyWrite (0.42s)
    	testing.go:610: race detected during execution of test
```

`TestCorpusCheck` causes the entire Go corpus to download to the test instance, which eventually runs out of memory.

```
2017/10/13 18:26:13 Downloading 9495471 bytes of https://maintner.golang.org/logs/27 ...
2017/10/13 18:26:13 wrote /home/travis/.cache/golang-maintner/0027.growing.mutlog
fatal error: runtime: out of memory
```

Also, we need to update the `go-github` version for the `gitmirror` Docker file, I believe; IsPullRequest was added very recently.

```
src/golang.org/x/build/maintner/github.go:802: d.b.IsPullRequest undefined (type *github.Issue has no field or method IsPullRequest)
Removing intermediate container 65ca938e2dcb
The command '/bin/sh -c go install golang.org/x/build/cmd/gitmirror' returned a non-zero code: 2
make: *** [build0] Error 2
```
Repository: rust
Issue: Lifetime errors for referenced objects when reference is moved are not clear
Labels: C-enhancement,A-diagnostics,A-lifetimes,T-compiler

I believe there is room for improvement here:

```rust
use std::path::{Path,PathBuf};
use std::thread;

fn main() -> () {
    let pb = PathBuf::from(".");
    let p = Path::new(&pb);
    thread::spawn(move|| {
        println!("{:?}", p);
    });
}
```

This is obviously not correct, since `p` depends on `pb` which may not live as long, now that `pb` has been moved to the thread's scope and shares its lifetime.

However, the error when compiling this is problematic, since it doesn't make it clear at all why this object's lifetime needs to be increased:

```rust
> rustc +nightly ./test.rs
error[E0597]: `pb` does not live long enough
  --> ./test.rs:6:24
   |
6  |     let p = Path::new(&pb);
   |                        ^^ does not live long enough
...
10 | }
   | - borrowed value only lives until here
   |
   = note: borrowed value must be valid for the static lifetime...

error: aborting due to previous error
```

It's easy to imagine a case where it's not as simple to figure out what is going on (perhaps a chain of references, separated by hundreds of lines of code, that compiled just fine until one of these latter references was moved to spawn a thread, and suddenly the lifetime of a completely different variable in code that wasn't touched is throwing an error).
Repository: rust
Issue: Refactor librustc_codegen_llvm for multiple codegen backends.
Labels: A-codegen,T-compiler,C-feature-request,A-cranelift,A-gcc

~~[#50615] Rename `librustc_trans` to `librustc_codegen_llvm`.~~
~~Make `rustc_driver` either able to choose codegen backends, or even better, pass `rustc_codegen_llvm` to `rustc_driver` from `rustc-main`.
See also #45226.~~

Possible refactoring steps:
* ~~remove `SharedCrateContext`, use `TyCtxt`~~
* ~~rename `(Local)CrateContext` to `CodegenContext`, remove accessor methods~~
* [#52461] ~~merge `librustc_llvm` into `librustc_codegen_llvm`~~
  * ~~pass `ValueRef` as `&'ll Value` instead, encode LLVM lifetimes in FFI signatures~~
  * ~~use this technique for C++ objects that borrow others: https://github.com/rust-lang/rust/issues/43467#issuecomment-405808005~~
* use this technique for the `DI*` inheritance hierarchy: https://github.com/rust-lang/rust/issues/43467#issuecomment-399509319
* use `&'ll Module<'ll>`, `&'ll Value<'ll>`, `&'ll Type<'ll>` etc. to correctly model lifetime relationships (without an invariant lifetime parameter, very little is actually enforced)
* refer to [`cranelift`](https://github.com/CraneStation/cranelift) and [`llvm2cranelift`](https://github.com/sunfishcode/llvm2cranelift) for common Cranelift/LLVM builder APIs
  * [#55627] ~~common tools used by SSA backends could be placed in `rustc_codegen_ssa`~~
  * refactor `rustc_codegen_ssa` APIs to match Cranelift, leave LLVM second-class
    * unaddressed comments from #55627 may be relevant here
* split the metadata, "optimize + generate machine code" (should it be called "`binemit`"?) and linking components, out of `rustc_codegen_ssa`
Repository: vscode
Issue: [html] JSON edit support inside HTML document / script tag with type="application/json"
Labels: feature-request,html

There are scenarios where it is useful to embed JSON inside an html document, such as for the [amp-bind element](https://www.ampproject.org/docs/reference/components/amp-bind):

```html
<amp-state id="myAnimals">
  <script type="application/json">
    {
      "dog": {
        "imageUrl": "/img/dog.jpg",
        "style": "greenBackground"
      },
      "cat": {
        "imageUrl": "/img/cat.jpg",
        "style": "redBackground"
      }
    }
  </script>
</amp-state>
```

Providing syntax coloring / error checking would be very beneficial in these cases.
Repository: TypeScript
Issue: Suggestion: target specific runtimes instead of JS versions
Labels: Suggestion,Awaiting More Feedback

First advantage is target to browser is native for user than target to js version. Don't need to know what each browser support.
Second is ts can transpilate more effective. Some browser can have partially support of next standard. Ts can transpilate unsupported features only.
Repository: go
Issue: cmd/link: making sense of HeadType
Labels: NeedsFix,compiler/runtime

The linker makes extensive use of HeadType. It does not make much sense to me.

When used as a value, it is very close to meaning `GOOS`. One exception is both "android" and "linux" are represented as "Hlinux", but besides that they are equivalent.

When used as a flag to the linker, `-H`, it is the value of `GOOS`, plus the potential value "windowsgui", which is treated as "windows" except it sets a global linker variable `windowsgui` to true. The linker is also receiving the `GOOS` environment variable used by the compiler (and all other tools) to make their OS decision.

Proposal:

- Leave the `-H` flag alone, as other build systems may depend on it.
- Check when the linker starts that GOOS and `-H` match.
- Convert any OS-specific conditions in the linker to using GOOS.
- Convert the HeadType enumeration into:
  ```
  const (
        Unknown HeadType = iota
        ELF
        MachO
        Plan9
        PE
        PEGUI
  )
  ```
- Replace the `IsELF` global variable with `ctxt.HeadType == objabi.ELF` instead.
- Replace `windowsgui` with `ctxt.HeadType == objabi.PEGUI`.

Thoughts?

cc @ianlancetaylor
Repository: go
Issue: crypto/tls: implement OCSP Must-Staple
Labels: help wanted,Proposal-Accepted,NeedsFix,Proposal-Crypto

A bit over a year ago, someone created an issue to add support for RFC 7633 TLS Feature Extension into `crypto/tls` but it was closed by @agl because he felt it was premature and that OCSP stapling wasn't really supported as a client in Go (not sure if that has changed?).

See #13074

It's been more than a year so I'm creating this issue to see what he thinks of it now.
Repository: rust
Issue: Better Integrate MIR dump in `rustc_mir::util::liveness` into the wider dump infrastructure
Labels: C-enhancement,T-compiler,A-MIR

Opening this so it doesn't get lost.

In the WG-compiler-nll gitter, @nikomatsakis mentioned that we should possibly update [liveness.rs](https://github.com/rust-lang/rust/blob/ec016f80cf725a9c8a613cdcd2ac97588d5f9af2/src/librustc_mir/util/liveness.rs#L180) so that it uses the infrastructure from #45013.
Repository: TypeScript
Issue: Promise.{all,race} static method's iterable definitions incorrectly omit other definitions by overloading (regression)
Labels: Bug,Domain: lib.d.ts

`es2015.iterable.d.ts` must not omit `es2015.promise.d.ts` definitions by overloading. However, npm package distributions work correctly.

**TypeScript Version:**  2.6.0 RC for Visual Studio 2015

**Code**

```ts
Promise.all([0, 0]);
```

**Expected behavior:**

Should use definitions of `es2015.promise.d.ts`.

```ts
Promise.all([0, 0]); // Promise<[number, number]>
```

**Actual behavior:**

Uses definitions of `es2015.iterable.d.ts`.

```ts
Promise.all([0, 0]); // Promise<number[]>
```
Repository: TypeScript
Issue: typeChecker.typeToString() should print most derived alias
Labels: Bug

<!-- BUGS: Please use this template. -->
<!-- QUESTIONS: This is not a general support forum! Ask Qs at http://stackoverflow.com/questions/tagged/typescript -->
<!-- SUGGESTIONS: See https://github.com/Microsoft/TypeScript-wiki/blob/master/Writing-Good-Design-Proposals.md -->

<!-- Please try to reproduce the issue with `typescript@next`. It may have already been fixed. -->
**TypeScript Version:**  typescript@next

**Code**

[Playground Link](https://www.typescriptlang.org/play/index.html#src=type%20First%3CT%2C%20R%3E%20%3D%20(source%3A%20T)%20%3D%3E%20R%3B%0D%0Atype%20Second%3CT%3E%20%3D%20First%3CT%2C%20T%3E%3B%0D%0A%0D%0Adeclare%20function%20example()%3A%20Second%3Cstring%3E%3B%0D%0A)

```ts
type First<T, R> = (source: T) => R;
type Second<T> = First<T, T>;

declare function example(): Second<string>;
```
**Expected behavior:**

Using the compiler API, `typeChecker.typeToString(signature.getReturnType())` of `example` returns the most derived alias, `Second<string>`

**Actual behavior:**

`typeChecker.typeToString(signature.getReturnType())` returns  `First<string, string>`

***

IntelliSense [in the playground](https://www.typescriptlang.org/play/index.html#src=type%20First%3CT%2C%20R%3E%20%3D%20(source%3A%20T)%20%3D%3E%20R%3B%0D%0Atype%20Second%3CT%3E%20%3D%20First%3CT%2C%20T%3E%3B%0D%0A%0D%0Adeclare%20function%20example()%3A%20Second%3Cstring%3E%3B%0D%0A) and vscode both show the same thing as `typeChecker.typeToString(returnType)`, so I assume they share the same underlying logic.

I tried examining the type object itself to see if I could reach into private APIs to get it, but I couldn't find it. I also tried [various formatting flags](https://github.com/Microsoft/TypeScript/blob/4487917f89bd5e068a4d35e8db22bf728cab4b74/src/compiler/types.ts#L2809-L2827), but none of them seemed to give me the desired behavior.

I searched for existing issues on this, #17433 seemed similar but digging into it, I think it's different. It's also possible this behavior was intentional of course, if so, lmk. I'm using the compiler API to generate custom [documentation for rxjs](https://github.com/ReactiveX/rxjs-docs) and there are sometimes a number of aliases used which simplify much more complex structures and hide internals.

I could try to take a crack at a patch if someone knows where I might find the applicable logic. Seems like it would need to be on the type metadata generation side, since I can't find it in the type returned from `signature.getReturnType()`?

Cc/ @benlesh
Repository: youtube-dl
Issue: Opera Platform is now OperaVision
Labels: site-support-request

## Please follow the guide below

- You will be asked some questions and requested to provide some information, please read them **carefully** and answer honestly
- Put an `x` into all the boxes [ ] relevant to your *issue* (like this: `[x]`)
- Use the *Preview* tab to see what your issue will actually look like

---

### Make sure you are using the *latest* version: run `youtube-dl --version` and ensure your version is *2017.10.15.1*. If it's not, read [this FAQ entry](https://github.com/rg3/youtube-dl/blob/master/README.md#how-do-i-update-youtube-dl) and update. Issues with outdated version will be rejected.
- [x] I've **verified** and **I assure** that I'm running youtube-dl **2017.10.15.1**

### Before submitting an *issue* make sure you have:
- [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*?
- [ ] Bug report (encountered problems with youtube-dl)
- [x] Site support request (request for adding support for a new site)
- [ ] Feature request (request for a new functionality)
- [ ] Question
- [ ] Other

---

### 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**):

Note that **youtube-dl does not support sites dedicated to [copyright infringement](https://github.com/rg3/youtube-dl#can-you-add-support-for-this-anime-video-site-or-site-which-shows-current-movies-for-free)**. In order for site support request to be accepted all provided example URLs should not violate any copyrights.


---

### Description of your *issue*, suggested solution and other information

The Opera Platform has changed domain, it is now Operavision (www.operavision.eu) and it does not work with youtube.dl, please upgrade with this new site.
Single video: http://www.operavision.eu/en/library/performances/operas/lecume-des-jours
Repository: angular
Issue: component host element removal is delayed when animation module is added to project
Labels: type: bug/fix,area: animations,freq2: medium,P3

## I'm submitting a...

<pre><code>
[ ] Regression
[X] Bug report
[ ] Feature request
[ ] Documentation issue or request
[ ] Support request
</code></pre>

With imported BrowserAnimationsModule I have observed that host nodes of destroyed component instances from an old route are removed from the DOM **AFTER** the ngAfterViewInit() lifecycle hook was called on any newly component instance on the new route.

Without imported BrowserAnimationsModule the host nodes of destroyed component instances from an old route are removed **BEFORE** the ngAfterViewInit() lifecycle hook is called.

I understand that in presence of the BrowserAnimationsModule the host nodes of destroyed component can only be removed from the DOM **AFTER** any animations have ended.

Is it possible to only delay the node removal if there are animations present? If this is not possible, can you please add this fact to the documentation of the BrowserAnimationsModule?

## Current behavior (with imported BrowserAnimationsModule)
The removal of the host node of a destroyed component instance on an old route happens **AFTER** 
the ngAfterViewInit() call on the new component instance even if no animations are present.

## Expected behavior (with imported BrowserAnimationsModule)
If there are no animations defined on component instances of the old route, then remove all host nodes of destroyed components from the DOM BEFORE ngAfterViewInit() is called on any new component instances on the new route.

## Minimal reproduction of the problem with instructions

## What is the motivation / use case for changing the behavior?
Don't break anything just by importing an unused BrowserAnimationsModule 

## Environment

<pre><code>
Angular version: 4.4.4

Browser:
- [X] Chrome (desktop) version 61.0.3163.100
- [ ] Chrome (Android) version XX
- [ ] Chrome (iOS) version XX
- [ ] Firefox version XX
- [ ] Safari (desktop) version XX
- [ ] Safari (iOS) version XX
- [ ] IE version XX
- [ ] Edge version XX

For Tooling issues:
- Node version: 5.4.1
- Platform:  Windows

Others:
</code></pre>
Repository: go
Issue: runtime: TestLldbPython test fails with lldb 3.8 on linux
Labels: Testing,help wanted,NeedsFix,compiler/runtime

Verified the test passed with lldb 3.9 or higher, or if lldb is not installed at all.

--- FAIL: TestLldbPython (1.83s)
	runtime-lldb_test.go:178: Unexpected lldb output:
		Created target
		Created breakpoint
		Process launched
		Hit breakpoint
		Stopped at main.go:10
		Stopped in main.main
		no intvar
FAIL
FAIL	runtime	19.046s

Skipping the test if lldb is too ancient seems reasonable.
Repository: TypeScript
Issue: 'Canvas#getContext' almost never returns 'null'
Labels: Suggestion,Domain: lib.d.ts,Awaiting More Feedback

**TypeScript Version:**  2.5.3

**Code:**
```ts
let canvas: HTMLCanvasElement = document.createElement("canvas");
let ctx: CanvasRenderingContext2D = canvas.getContext("2d");
ctx.fillRect(0, 0, canvas.width, canvas.height);
```

**Expected behavior:**
No errors should occur because the type of canvas is HTMLCanvasElement.

**Actual behavior:**
```
test.ts(2,5): error TS2322: Type 'CanvasRenderingContext2D | null' is not assignable to type 'CanvasRenderingContext2D'.
  Type 'null' is not assignable to type 'CanvasRenderingContext2D'.
```
If I change the type of ctx to `CanvasRenderingContext2D | null`, then I get
```
test.ts(3,1): error TS2531: Object is possibly 'null'.
```