sharjeelyunus/github-issues-dataset huggingface dataset:
Repository: flutter
Issue: Need better testing of hot reload
Labels: a: tests,team,tool,t: hot reload,P2,team-tool,triaged-tool

Given the hot reload breakage over this extended weekend and the impact it had on our users (see conversations in gitter, e.g.), we need to up our game in testing hot reload. I believe this is somewhat important to do sooner rather than later.

Specifically:
- [ ] test that hot reload works end-to-end on iOS
- [x] test that hot reload works end-to-end on Android

The end-to-end tests need to:
- [ ] run `flutter create`
- [x] run `flutter run`
- [ ] verify that the app actually ran and works (by tapping a button and verifying that it increments the counter by one)
- [ ] edit the file to do something different (e.g. increment the counter by ten)
- [x] hot reload (`r`)
- [ ] verify that the app still runs and that the change took effect (by tapping a button and verifying that it increments the counter by ten)
- [ ] do a restart (`R`)
- [ ] verify that the app still runs and that the change is still in effect (by tapping a button and verifying that it increments the counter by ten)
- [ ] kill the `flutter` tool (^C)
- [x] run `flutter run`
- [ ] verify that the app still runs and that the change is still in effect (by tapping a button and verifying that it increments the counter by ten)

cc @johnmccutchan, @yjbanov, @abarth, @eseidel
Repository: youtube-dl
Issue: Feature request: separate options for output file name and output directory
Labels: 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 that [x])
- Use *Preview* tab to see how your issue will actually look like

---

### Make sure you are using the *latest* version: run `youtube-dl --version` and ensure your version is *2016.11.27*. 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 **2016.11.27**

### Before submitting an *issue* make sure you have:
- [x] At least skimmed through [README](https://github.com/rg3/youtube-dl/blob/master/README.md) and **most notably** [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)
- [ ] Site support request (request for adding support for a new site)
- [x] Feature request (request for a new functionality)
- [ ] Question
- [ ] Other

---

### The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your *issue*

---

### Description of your *issue*, suggested solution and other information

I use a youtube-dl.conf file with something like `--output "~/The_Usual_Directory/%(title)s.%(ext)s"`. However, sometimes, I want to change the output directory to another one while keeping the same file name template. In order to do this, I have to type out `--output "~/Some_Other_Directory/%(title)s.%(ext)s"`, which is annoying because remembering the template part is difficult, and I usually have to copy and paste out of my youtube-dl.conf and then change the path. This would be easier if there were separate options for the file name and destination directory, in which case I could just type something like `--outdir ~/Some_Other_Directory`. Since obviously the `--output` option is also useful in some cases, I'm not suggesting removing it, but rather providing an alternate way to set it. The semantics of which one takes priority in the case where both are provided would be important, though. It would have to be chosen so that command-line options override the config file, but if `--output` is used in the config file and then `--outdir` is used on the command line, the file name (sans directory path) given in the config file would still be used with the new output directory. So for example `youtube-dl --output ~/Dir1/file.mp4 --outdir ~/Dir2` should output to `~/Dir2/file.mp4`.

I understand if this is ultimately too complicated to justify the effort, but I think it would be a nice feature to have.
Repository: nvm
Issue: Create .bashrc automatically if bash found?
Labels: installing nvm: profile detection

May I send a PR to enable it if no profile been detected but detected bash installed? Thanks.
Repository: rust
Issue: index out of bound in slice not caught at compilation
Labels: A-diagnostics,T-compiler,C-feature-request,A-mir-opt

Hi! I'm just learning Rust! I saw this odd behavior, where the compiler will nicely tell me that an index in an array is impossible at compile time, but won't tell me that an index in a slice of known size is also impossible. 

I thought I'd share.

This fails at compile time:
```rust
let y = [1];
println!("y={}", y[1]); 
```

This fails at runtime:
```rust
let y = [1];
println!("y={}", &y[0..1][1]); 
```

Would be cool if `&y[0..1][1]` also failed at compile time.
Repository: rust
Issue: Optimize iterator chains better
Labels: I-slow,C-enhancement,T-compiler

The iterator adaptor `.chain()` and similar code uses a state flag that changes mid-loop; the compiler should recognize this and try to split it into two consecutive loops if possible.

Reproduction in code [(playground)](https://play.rust-lang.org/?gist=cbeda98c191140c030a174af63e6e713&version=nightly&backtrace=1)


```rust
pub fn visit_both(a: &[u32], b: &[u32], f: fn(u32)) {
    for &elt in chain(a, b) {
        f(elt)
    }
}

/// this is a simplified version of std::iter::Chain
pub struct Chain<I> { front: bool, a: I, b: I }

fn chain<I>(a: I, b: I) -> Chain<I::IntoIter> where I: IntoIterator {
    Chain { front: true, a: a.into_iter(), b: b.into_iter() }
}

impl<I> Iterator for Chain<I> where I: Iterator {
    type Item = I::Item;
    fn next(&mut self) -> Option<Self::Item> {
        if self.front {
            if let elt @ Some(_) = self.a.next() {
                return elt;
            }
            self.front = false;
        }
        self.b.next()
    }
}
```

# Actual Behaviour

There is only one `call` instruction in `visit_both`'s generated code, indicating the loop was not split.

# Expected Behaviour

Generated code should be more similar to two consecutive loops.
Repository: rust
Issue: rustdoc: stabilize `--playground-url` and deprecate `--markdown-playground-url`
Labels: T-rustdoc,C-feature-request

cc https://github.com/rust-lang/rust/pull/37763  https://github.com/rust-lang/rust/pull/37911
Repository: angular
Issue: i18n ignore leading and trailing spaces
Labels: feature,state: Needs Design,area: i18n,feature: under consideration

<!--
IF YOU DON'T FILL OUT THE FOLLOWING INFORMATION WE MIGHT CLOSE YOUR ISSUE WITHOUT INVESTIGATING
-->

**I'm submitting a ...**  (check one with "x")
```
[x] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question
```

**Current behavior**
<!-- Describe how the bug manifests. -->

now ng-xi18n will generate xliff including spaces, for example there is an element
```
    <p i18n>
        复制
    </p>
```
it will generate 
```xml
        <source>
                    复制
                </source>
```

it's really weak to rely on spaces since they could changed Unintentionally or even by IDE reformat code.

**Expected behavior**
<!-- Describe what the behavior would be without the bug. -->

ignore leading and tailing spaces
Repository: go
Issue: cmd/asm/internal/asm: add encoding tests for all architectures
Labels: NeedsFix

At tip as of Nov 28, 2016: The end-to-end tests in cmd/asm/internal/asm/testdata are much weaker than they used to be. I have vague memories of a change someone (Russ?) made there, but now for most architectures all that is tested is the parse, not the result of the parse. These tests should be verifying that the assembler produces correct output, not just that it accepts valid input.
Repository: neovim
Issue: :terminal - enable folding
Labels: enhancement,terminal,folds

- `nvim --version`: NVIM v0.2.0-1-g9956bee
- Operating system/version: macOS 10.12.1 (16B2555)
- Terminal name/version: iTerm2
- `$TERM`: screen-256color (tmux)

While searching for more uses for the terminal buffer I stumbled upon the fact that you can't use folds inside of it. 


I'm currently running a watch command inside of a term buffer:

    find . | entr -c sh -c 'python3 sun.py | json_pp'

It reruns my script if anything changes and pretty prints some json. With `:set filetype=json` I even get syntax highlighting while at the same time making it very easy to work with the output (neovim is amazing!). 

Now I would like to fold the output of each run so I can easily find, distinguish and jump between them.

With `:set foldmethod=marker` and the default marker `{{{,}}}` something like:

    find . | entr -c sh -c 'date | tr "\n" " "; echo {{{; python3 sun.py | json_pp; echo }}}'

Same output as before but wrapped in a fold with the current date and time as a label. I have tested it in a regular buffer and there it works as expected.

Another use case: If you add the marker to your shell's prompt you could even collapse the output of every single command. 

Or you could change the foldmarker to `{,}` and fold json directly.
Repository: go
Issue: database/sql: support tracing queries
Labels: NeedsInvestigation

The database now supports passing context to query methods and to the drivers.

Look into supporting some sort of trace functionality for the sql package.
Repository: TypeScript
Issue: Provide Format Options for JSX/TSX End of Tag Placement
Labels: Suggestion,Help Wanted,Domain: Formatter,VS Code Tracked

From https://github.com/Microsoft/vscode/issues/16018 @VanishingDante 

For the following JSX/TSX code:

```jsx
<div
    >
    <img
        />
</div>
```

The current formatting settings do nothing. There does not seem to be a way to control how the ending `>` is placed on lines. 

We would like an additional formatting setting so that we can format the above code as:

```jsx
<div>
    <img />
</div>
```

This formatting option would be helpful for elements with many attributes.
Repository: go
Issue: net/smtp: in smtp.go, c.cmd(501, "*") takes long for server to respond.
Labels: help wanted,NeedsInvestigation


### What version of Go are you using (`go version`)?
go version go1.7.3 linux/amd64
### What operating system and processor architecture are you using (`go env`)?
GOARCH="amd64"
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build126580691=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"

### What did you do?
I tried to establish a tls connection to an smtp server and call client.Auth to authenticate, code may look like this:
```
	conn, _ := tls.Dial("tcp", host+":"+port, nil)
	client, _ := smtp.NewClient(conn, host)
	err := client.Auth(smtp.PlainAuth("", user, password, host))
```

### What did you see instead?
When the incorrect username/password is provided the function Auth took 1 minute to return.  I found it was due to this line:

https://github.com/golang/go/blob/master/src/net/smtp/smtp.go#L221

that the client tries to send "*" to server and expects "501" which is "Syntax Error", it took very long for server to respond.  If I comment this line and rebuild. I can get the error very quickly.

Could anyone let me know why is this line necessary?  And is it common the server took 1 minute to respond "*"?
Repository: flutter
Issue: TextPainter.paint should talk about the offset and how it's affected by textAlign
Labels: framework,d: api docs,has reproducible steps,P3,team-framework,triaged-framework,found in release: 3.16,found in release: 3.19

...and layout() should probably be more elaborate about what the minimum width does, again in particular with respect to textAlign.
Repository: go
Issue: proposal: add Validate functions to image/jpeg, image/png etc.
Labels: Proposal,Proposal-Hold

(This is inspired by [this Russian StackOverflow question](http://ru.stackoverflow.com/questions/597009/%d0%9f%d1%80%d0%be%d0%b2%d0%b5%d1%80%d0%ba%d0%b0-%d0%b7%d0%b0%d0%b3%d1%80%d1%83%d0%b6%d0%b5%d0%bd%d0%bd%d1%8b%d1%85-%d1%84%d0%b0%d0%b9%d0%bb%d0%be%d0%b2-%d0%b2-golang) about image validation in Go.)

As of Go 1.7.3 there is no way to know if a file is actually a valid JPEG or PNG image without loading it into an `image.Image`, which causes a lot of unnecessary allocations. There are `DecodeConfig` functions, but they don't read the whole image, so a file might be valid in its first bytes but then containing either garbage or something malicious.

This proposal is for discussion about whether it's possible and practical to provide `Validate(r io.Reader) error` functions in `image/*` packages that would read the file, validate it, but not store it.
Repository: youtube-dl
Issue: windows 7 x64 problem?
Labels: cant-reproduce

hello

im using youtube-dl with sinusbot for teamspeak.
this worked very nice for a long time - until 2-3 months now?

so i updated to the lastest binaries and it gave me this error on windows 7 x64 if i try to run.
![unbenannt](https://cloud.githubusercontent.com/assets/24248953/20711486/336bfa28-b640-11e6-87ee-d120aaa1038e.png)

if also checked here some older versions..
http://www.videohelp.com/software/youtube-dl/old-versions
some of them dont give me this error on start but they seam to be outdated and does not download anything. the last ~15 binaries give me the same error on start ..
i read all the readme and faq, all win-updates and ddl incl. msvcr100 are up2date.

also ive checked on win10 x64.. the lastest binaries are working without any problem - so is there a win7x64 problem since the last ~15 binaries?


thanks!
Repository: rust
Issue: `where` clause shadows information about higher `impl`s
Labels: A-type-system,T-compiler,C-bug,T-types

It appears that the typechecker, on encountering a `where` clause, will assume the `impl` information given in the `where` bound and stop looking for `impl`s, thus missing additional information that may be available about the `impl` outside the item.

For example, this code doesn't typecheck:
```rust
pub trait Id { type Id; }
impl<T> Id for T { type Id = T; }

pub fn foo<A>(a: A) -> <A as Id>::Id
where A: Id
{ a }
```
giving the error:
```
hkt-mwe.rs:6:3: 6:4 error: mismatched types [E0308]
hkt-mwe.rs:6 { a }
               ^
hkt-mwe.rs:6:3: 6:4 help: run `rustc --explain E0308` to see a detailed explanation
hkt-mwe.rs:6:3: 6:4 note: expected type `<A as Id>::Id`
hkt-mwe.rs:6:3: 6:4 note:    found type `A`
```
but the same code without the `where`-bound, which should be entirely redundant since it provides only information already known to the type-checker, compiles.

This makes putting emulated HKTs into traits difficult, as a type that depends on such a thing must have a `where` clause in the trait that, though redundant, must appear in the `impl` to avoid E0195.

Edit: Current error:
```
error[[E0308]](https://doc.rust-lang.org/stable/error_codes/E0308.html): mismatched types
 --> src/lib.rs:6:3
  |
4 | pub fn foo<A>(a: A) -> <A as Id>::Id
  |            -           ------------- expected `<A as Id>::Id` because of return type
  |            |
  |            this type parameter
5 | where A: Id
6 | { a }
  |   ^ expected associated type, found type parameter `A`
  |
  = note: expected associated type `<A as Id>::Id`
              found type parameter `A`
help: consider further restricting this bound
  |
5 | where A: Id + Id<Id = A>
  |             ++++++++++++

For more information about this error, try `rustc --explain E0308`.
error: could not compile `playground` due to previous error
```
Repository: angular
Issue: valueChanges observable on AbstractControl emits events before its parent's value has changed.
Labels: area: forms,forms: Controls API,P5

**I'm submitting a ...**  (check one with "x")
```
[x] bug report
[ ] feature request
[ ] support request
```

**Current behavior**
When subscribing to valueChanges, and then changing the value via the UI, the form control's PARENT's value is not up to date. For example, if my form control starts with a value of 0 and I input 25:

```ts
myFormGroup.get('length').valueChanges.subscribe(value => {
    // value = 25
    // myFormGroup.value = { length: 0 }
}
```

**Expected behavior**
I expect the emit event to occur after the value of the control has propagated to its ancestors:

```ts
myFormGroup.get('length').valueChanges.subscribe(value => {
    // value = 25
    // myFormGroup.value = { length: 25 }
}
```

Interestingly enough, adding a debounceTime(0) fixes the problem, but I feel that this should not be necessary.
```ts
myFormGroup.get('length').valueChanges.debounceTime(0).subscribe(value => {
    // value = 25
    // myFormGroup.value = { length: 25 }
}
```

**Minimal reproduction of the problem with instructions**
http://plnkr.co/edit/o8N09MfJQIOSacx0N7uI?p=preview

This plunker shows a demo of the problem. Notice that the forms value is always one step behind its child control.

**What is the motivation / use case for changing the behavior?**
I want to access the form group's value from other places after the valueChanges event occurs WITHOUT passing the emitted value around. Besides, the form as a whole should always be in sync with itself.

**Please tell us about your environment:**
<!-- Operating system, IDE, package manager, HTTP server, ... -->
Mac OS X El Capitan, VS Code, npm

* **Angular version:** 2.1.1

* **Browser:** [all]
 
* **Language:** [all]
Repository: TypeScript
Issue: Standard package.json key for .ts files
Labels: Suggestion,Community Tooling,Awaiting More Feedback

A common TypeScript module structure looks like this:

```
src/index.ts
dist/index.js
dist/index.d.ts
```

and a `package.json` that looks like this:
```json
  "main": "dist/index.js",
  "types": "dist/index.d.ts",
```

There's a convention to [use the package.json key `jsnext:main`](https://github.com/rollup/rollup/wiki/jsnext:main) to point to a variant of `main` that uses ES2015 module syntax.  Can we develop a similar convention to point at `.ts` files, e.g. `typescript:main`?

Consider a TypeScript project that is sharded across many microlibraries (e.g. `my-project-core`, `my-project-thing-plugin`, `my-project-other-thing-plugin`).  I'd like to be able to configure my bundler to import from `src/*.ts` files for any module whose name starts with `my-project`.  Otherwise, it will be looking in `dist/*.js` and I'll have to rebuild the plugins any time I make changes in them.

Of course, I could use `jsnext:main` for this purpose now, but any consumers who aren't using TypeScript would get syntax errors for any files that contained TS-specific syntax like types.  Similarly, I could make up my own package.json key and configure my bundler to look there first, but it behooves the community to have a convention here.  That will allow bundlers like Webpack, Browserify, Rollup, and Pundle to look in the right place by default.
Repository: rust
Issue: Nested associated type projection is overly conservative
Labels: A-trait-system,T-compiler,C-bug

The following setup

```rust
trait OneTrait {
    type Ty: AnotherTrait;
    fn project() -> Self::Ty::Out;
}

trait AnotherTrait {
    type Out;
}
```

produces the error

```
rustc 1.13.0 (2c6933acc 2016-11-07)
error[E0223]: ambiguous associated type
 --> <anon>:3:17
  |
3 |     fn bar() -> Self::Bar::Out;
  |                 ^^^^^^^^^^^^^^ ambiguous associated type
  |
  = note: specify the type using the syntax `<<Self as Foo>::Bar as Trait>::Out`
```

It would be great for the less explicit projection to work here.

cc @nikomatsakis
Repository: opencv
Issue: OpenCV 3 Windows Installer 32-bit
Labels: RFC

##### System information (version)
- OpenCV => 3.1
- Operating System / Platform => Windows 64 Bit
- Compiler => Visual Studio 2015

##### Detailed description

I really like your distributed binaries, but need the 32 bit version. I would really like to see 32 bit versions distributed with your windows installer for OpenCV version 3 (as it was the case for version 2).
Repository: go
Issue: cmd/go: allow building non-main package with -buildmode=plugin
Labels: NeedsDecision

The plugin package currently requires a `main` package as an entry point to use `-buildmode=plugin`. I would like to use the plugin package to load library packages at runtime, which are only used for their initializers. Plugins usually look like:

```
package myPlugin

import "github.com/someApp/plugins"

func init(){
  plugins.Register(myThing)
}
```

The current methodology is that these are compiled into the host with `import _ "myPlugin"` In order to support loading at runtime as well, each plugin needs a second main package that is literally:

```
package main

import _ "myPlugin"

func main(){}
```

This feels like unnecessary boilerplate. At [Ian's suggestion](https://groups.google.com/d/msg/golang-nuts/016jJIrIuM4/D0XaqBgJCgAJ) I propose modifying the go tool to generate such a main package when using `-buildmode=plugin` and a single non-main package is built. 

I plan on working on this feature.
Repository: rust
Issue: rustdoc: Don't distinguish structs and tuple structs with only private fields
Labels: T-rustdoc,E-medium,C-feature-request

For example, [`AddrParseError`](https://doc.rust-lang.org/std/net/struct.AddrParseError.html) shows up as `pub struct AddrParseError(_);` and [`Ipv4Addr`](https://doc.rust-lang.org/std/net/struct.Ipv4Addr.html) shows up as `pub struct Ipv4Addr { /* fields omitted */ }`

I feel like all structs should show up as the latter form if all of the fields are private. It technically doesn't matter that the struct is a tuple struct if the fields are all private. It's not a *huge* deal but it's an inconsistency that looks off to me.