sharjeelyunus/github-issues-dataset huggingface dataset:
Repository: go
Issue: cmd/vet: vet is reporting lock value copying on composite literal assignment
Labels: Analysis

The code is the following:

```
    r := hipacheRouter{prefix: "hipache"}
    err := r.AddBackend("tip")
    c.Assert(err, check.IsNil)
    config.Set("hipache:redis-server", "127.0.0.1:6380")
    defer config.Unset("hipache:redis-server")
    r = hipacheRouter{prefix: "hipache"}
```

go vet is reporting "assignment copies lock value to r: hipache.hipacheRouter" in the last line. The type hipacheRouter indeed contains a lock:

```
type hipacheRouter struct {
    sync.Mutex
    prefix string
    pool   *redis.Pool
}
```

But as stated in the code, I'm copying a composite literal to r, so go vet should not complain about that. Changing the variable to `r2` and the attribution to a declaration makes vet happy. I've also tried to make the mutex a named field, and it didn't help.

I tried to reproduce it with a simple Go program and failed to do so. I have the impression that there's another violation going on, and vet is reporting lock copying.

It works on Go 1.5.2, and fails on Go 1.6beta1, both on linux_amd64 and darwin_amd64. Details are available on Travis:
- Go 1.5.2 build: https://travis-ci.org/tsuru/tsuru/jobs/97656688#L234
- Go 1.6beta1 build: https://travis-ci.org/tsuru/tsuru/jobs/97656689#L234
Repository: go
Issue: cmd/link: Support absolute import paths for main packages with -X
Labels: compiler/runtime

##### What version of Go are you using (go version)?

`go1.5.1`
##### What operating system and processor architecture are you using?

`darwin/amd64`
##### What did you do?

``` console
$ go get -ldflags="-X github.com/tsenart/hello.Version=v0.0.1" github.com/tsenart/hello
$ hello
```
##### What did you expect to see?

``` console
v0.0.1
```
##### What did you see instead?

```

```
Repository: opencv
Issue: OpenCV FileStorage only supports YAML 1.0 which is now deprecated.
Labels: feature,category: core,affected: 2.4,affected: 3.4

Problem: LibYAML explicitly rejects YAML 1.0 files and thus OpenCV YAML files require modification to be read in other programs using LibYAML (e.g. python, R, etc.). Example YAML 1.0:

`%YAML:1.0
data: [ 1., 467389., 1318., 626., 1., 41965]`

Solution: modify FileStorage to write YAML 1.1 files. Example YAML 1.1:

`%YAML 1.1 --- data: [ 1., 467389., 1318., 626., 1., 41965]`
Repository: go
Issue: x/mobile/exp/sensor: geolocation
Labels: mobile

Add to x/mobile the ability to retrieve current latitude/longitude from e.g. GPS. (Relates to #9330)
Repository: opencv
Issue: potential bug  in VideoCapture_DShow
Labels: bug,category: videoio

I work on window 10 and want to capture image from a usb camera  using opencv 3.0. 

My camera can only work at  YUY2_640_480_30FPS or MJPEG_640_480_90FPS. 

I prefer MJPEG_640_480_90FPS since it has higher frame rate, however, in defaut, my camera works at YUY2_640_480_30FPS.  In order to make it working at MJPEG_640_480_90FPS,  I thought I should write some codes like,

```
cv::VideoCapture cap;
cap.open(0);
bool flag = cap.set(CV_CAP_PROP_FOURCC, CV_FOURCC('M', 'J', 'P', 'G'));
cap.set(CV_CAP_PROP_FPS, 90);
cap.set(CV_CAP_PROP_FRAME_HEIGHT, 400);
cap.set(CV_CAP_PROP_FRAME_WIDTH, 640);
```

I tried, but it didn't work. My camera insisted on working at  YUY2_640_480_30FPS.

I debuged and found that the failure is due to some strange codes in the following function

```
  VideoCapture_DShow::setProperty(int propIdx, double propVal)
```

There you can found 

```
    if (m_width > 0 && m_height > 0)
    {
     if (m_width != g_VI.getWidth(m_index) || m_height != g_VI.getHeight(m_index) )
        {
            int fps = static_cast<int>(g_VI.getFPS(m_index));
            g_VI.stopDevice(m_index);
            g_VI.setIdealFramerate(m_index, fps);
            g_VI.setupDeviceFourcc(m_index, m_width, m_height, m_fourcc);
        }

        bool success = g_VI.isDeviceSetup(m_index);
        if (success)
        {
            m_widthSet = m_width;
            m_heightSet = m_height;
            m_width = m_height = m_fourcc = -1;
        }
        return success;
    }
```

The device will only be reseted if m_width != g_VI.getWidth(m_index) || m_height != g_VI.getHeight(m_index).

However, in my case, my camera only has two working modes, in both of which height = 640 and width = 400. So, logically, there is no way to change the working mode of my camera from YUY2_640_480_30FPS to MJPEG_640_480_90FPS.

I modified

```
     if (m_width != g_VI.getWidth(m_index) || m_height != g_VI.getHeight(m_index) )
```

to 

```
     if (m_width != g_VI.getWidth(m_index) || m_height != g_VI.getHeight(m_index) || m_fourcc != g_VI.getFourcc(m_index)) .
```

Now, it works. 

So, is

```
   if (m_width != g_VI.getWidth(m_index) || m_height != g_VI.getHeight(m_index) || m_fourcc != g_VI.getFourcc(m_index))
```

better? 

 If i have misunderstood something, can someone suggest a way to make my camera working at MJPEG_640_480_90FPS without modifying OPENCV's codes.
Repository: youtube-dl
Issue: Site Support request: sproutvideo.com
Labels: site-support-request

Example File : (Type can be sd or hd - if no type is specified the video will playback in sd)

SD : http://videos.sproutvideo.com/embed/e89bddb01f1be3cf60/0d7fb4d67f328c8b?type=sd
HD : http://videos.sproutvideo.com/embed/e89bddb01f1be3cf60/0d7fb4d67f328c8b?type=hd

here is the "dump request":

PCFET0NUWVBFIGh0bWw+CjxodG1sPgogIDxoZWFkPgogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT05Ij4KICAgIDxsaW5rIGhyZWY9J2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnMnIHJlbD0nc3R5bGVzaGVldCcgdHlwZT0ndGV4dC9jc3MnPgogICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPnZhciBob3N0ID0gJ3Vua25vd24nLCBmdWxsSG9zdCA9ICd1bmtvd24nLCB1cmwgPSAndW5rbm93bicsIGR1cmF0aW9uID0gMTAuMiwgdmlkZW9VaWQgPSAnZTg5YmRkYjAxZjFiZTNjZjYwJywgdXNlclVpZCA9ICdkNDliZGViMzFhMWFlMWMyNWEnLCB1aWQgPSAnODc3OTlkMzEtNDIxOC00Njc5LWEwNTctMGI3ZTRmZmUyY2YxJywgaHZ1ID0gJyUxRCUxQSUxRiUxRSUxQ01BLyUxNiUwQSUwNUAlMUMlMDclMUNvJTAwJTFBJTFEJTA3JTBCJTEyJTAxLiUxNiUwMSUwNkFYQyUwOGQlMTAlMEYlMEUlMEZfRiUwQTVFX1JfX0ZXZEdWUyUwQVglMTJWYyUxM1olMDklMDhAJTAxJTA3ZCUxMCUwMSUxOEElMDYlMDclMDZvJTFCJTBCRFdfJTEzJTBENE0lMEYlMEElNUVZJTE2JTVFMEAlNUUlMEYlNUMlNUQlMTYlMEY0JTExVyU1QyU1Q19EWDhFJTBBJTBFQCUwMiUwN1olMDAnLCBwdSA9ICclMUQlMUElMUYlMUUlMUNNQS8lMTYlMEElMDVAJTFDJTA3JTFDbyUwMCUxQSUxRCUwNyUwQiUxMiUwMS4lMTYlMDElMDZBWEMlMDhkJTEwJTBGJTBFJTBGX0YlMEE1RV9SX19GV2RHVlMlMEFYJTEyVmMlMTNaJTA5JTA4QCUwNyUwMXMlMDElMEIlMTklMDglMUQlMTYlMDNlJTA2QVIlNUUlMEIlMTRaOCUxNCUwRiU1QlglMEVHJTVFNUUlMEFZJTVDJTBFJTE2WmRMWVklNUUlNUNBVjAlMTElMEJEJTA4JTFEJTE2JTAzZSolNUUlNUIlNUVfWSUwNHAlMTJuJyx1c2VyQWdlbnQgPSAnTW96aWxsYS81LjAgKFgxMTsgTGludXggeDg2XzY0OyBydjoxMC4wKSBHZWNrby8yMDE1MDEwMSBGaXJlZm94LzIwLjAgKENocm9tZSknLHBvc3Ryb2xsPWZhbHNlLHN1YnRpdGxlcz1mYWxzZSxmbGFzaHZhcnM9J2lkPWU4OWJkZGIwMWYxYmUzY2Y2MCZzdD0wZDdmYjRkNjdmMzI4YzhiJnR5cGU9c2QmZG9tYWluPXVua25vd24mdXJsPXVua25vd24mdWlkPTg3Nzk5ZDMxLTQyMTgtNDY3OS1hMDU3LTBiN2U0ZmZlMmNmMSZ1c2VyQWdlbnQ9TW96aWxsYS81LjAlMjAoWDExOyUyMExpbnV4JTIweDg2XzY0OyUyMHJ2OjEwLjApJTIwR2Vja28vMjAxNTAxMDElMjBGaXJlZm94LzIwLjAlMjAoQ2hyb21lKScscGxheWVyVVJMPSdodHRwczovL2Muc3Byb3V0dmlkZW8uY29tL01lZGlhUGxheWVyLTIuMC43LnN3Zicsd21vZGU9J29wYXF1ZSc7PC9zY3JpcHQ+CiAgICAKICAgIDxzdHlsZT5odG1sLGJvZHl7bWFyZ2luOjA7cGFkZGluZzowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6aGlkZGVuO31ib2R5e292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7Zm9udC1mYW1pbHk6J09wZW4gU2FucycsIHNhbnMtc2VyaWZ9dmlkZW97d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX08L3N0eWxlPgogIDwvaGVhZD4KICA8Ym9keT4KICAgIAogICAgCiAgICA8dmlkZW8gd2lkdGg9JzEwMCUnIGhlaWdodD0nMTAwJScgaWQ9J3ZpZGVvLWU4OWJkZGIwMWYxYmUzY2Y2MC1odG1sJyBjb250cm9scyBwcmVsb2FkPSdub25lJyAgIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L3ZpZGVvPgogICAgPHNjcmlwdCBzcmM9Ii8vZDFhanlwM3N3aDd5Z3AuY2xvdWRmcm9udC5uZXQvanF1ZXJ5Lm1pbi5qcyI+PC9zY3JpcHQ+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL2Muc3Byb3V0dmlkZW8uY29tL2VtYmVkLTIwMTUxMTI0MTUwMy5qcyI+PC9zY3JpcHQ+CiAgPC9ib2R5Pgo8L2h0bWw+Cg==
Repository: react
Issue: DataTransfer's dropEffect not working on IE/Edge with not minified version react.js
Labels: Type: Bug,Browser: IE

code exmaple: [Non-minified version](https://jsfiddle.net/sy7eja68/) and [Minified version](https://jsfiddle.net/sy7eja68/1/)

Both have the same code, html and js, the only difference is referenced to different version of react.js files.

There are three boxes.  Dragging the "**drag me**" box will show a "**start**" at the top, then show a "**over**" if it is dragged over either "**normal drop**" or "**drop react**" box, and show a "**end**" with a drop to the two drop boxes.

Everything works fine on my Firefox(43.0.1), and the the [Minified version](https://jsfiddle.net/sy7eja68/1/) works fine on my IE 11, and Edge(13).

The only thing dose not work is the  [Non-minified version](https://jsfiddle.net/sy7eja68/) on IE/Edge.

When dragging over the  "**drop react**" box, there shows **NO** "over".  In the F12 console, I can see lines of "`SCRIPT16389: Unspecified error.`". And with `console.log(ev.dataTransfer)`, I get this result: 

```
[object DataTransfer] {
   dropEffect: <Permission denied>,
   effectAllowed: "all",
   files: FileList {...}, 
   items: DataTransferItemList {...}, 
   types: DOMStringList {...}
}
```

I thought the `dropEffect` should also be accessible on IE/Edge with non-minified version react.js files?
Repository: kubernetes
Issue: Support for managing revoked certs
Labels: priority/backlog,sig/api-machinery,kind/feature,sig/auth,lifecycle/frozen

Authenticating users via x509 certs is important, but the project seems to be missing a mechanism to revoke certs (without throwing the entire chain away and regenerating ALL certs for all users).

It would be great to be able to declare which certs are invalid, and have the kube-apiserver, kubelets, and all other cert-dependent services deny service for requests with the now-invalid cert.

https://en.wikipedia.org/wiki/OCSP_stapling appears to be one way to solve this.

FYI - this is the same idea as the issue with CoreOS: https://github.com/coreos/etcd/issues/4034
Repository: vscode
Issue: Task and/or Extension Command User Arguments On Entry
Labels: feature-request,api

I am creating an extension and I want the end user to be able to enter an argument (say string) at the step they select "Run Task". The only current workaround I can think of is informing the user to edit the tasks.json file with the arguments, but what I am asking/requesting is that they could enter a one time use argument at the point they call the task from the command pallet, for instance Run Task, then My Task --My Argument. I am having the same issues with extension commands. To my knowledge there is no way to get a user argument into an extension command at the point of execution from the command pallet. 

See my stack overflow on this topic here:
http://stackoverflow.com/questions/34382899/visual-studio-code-user-defined-argument/34385950?noredirect=1#comment56564014_34385950
Repository: opencv
Issue:  undefined reference to `glRotated'
Labels: bug,category: gpu/cuda (contrib)

```
[ 97%] Building CXX object samples/gpu/CMakeFiles/example_gpu_opengl.dir/opengl.cpp.o
Linking CXX executable ../../bin/gpu-example-opengl
CMakeFiles/example_gpu_opengl.dir/opengl.cpp.o: In function `draw(void*)':
opengl.cpp:(.text._Z4drawPv+0x21): undefined reference to `glRotated'
CMakeFiles/example_gpu_opengl.dir/opengl.cpp.o: In function `main':
opengl.cpp:(.text.startup.main+0x4ae): undefined reference to `glMatrixMode'
opengl.cpp:(.text.startup.main+0x4b3): undefined reference to `glLoadIdentity'
opengl.cpp:(.text.startup.main+0x4d8): undefined reference to `gluPerspective'
opengl.cpp:(.text.startup.main+0x4e2): undefined reference to `glMatrixMode'
opengl.cpp:(.text.startup.main+0x4e7): undefined reference to `glLoadIdentity'
opengl.cpp:(.text.startup.main+0x519): undefined reference to `gluLookAt'
opengl.cpp:(.text.startup.main+0x523): undefined reference to `glEnable'
opengl.cpp:(.text.startup.main+0x54b): undefined reference to `glTexParameteri'
opengl.cpp:(.text.startup.main+0x55f): undefined reference to `glTexEnvi'
opengl.cpp:(.text.startup.main+0x569): undefined reference to `glDisable'
collect2: error: ld returned 1 exit status
make[2]: *** [bin/gpu-example-opengl] Error 1
make[1]: *** [samples/gpu/CMakeFiles/example_gpu_opengl.dir/all] Error 2
```
Repository: youtube-dl
Issue: [Request] [npo] Please support NPO 'channels'
Labels: site-support-request

It would be cool if we could download all videos from a channel subsequently, e.g.

```
youtube-dl http://www.npo.nl/de-wereld-draait-door/POMS_S_VARA_059933
```

At the moment, the individually listed videos are supported, it's just not possible yet to download them in batch.
Repository: go
Issue: tour: show answers to exercises
Labels: NeedsInvestigation

I couldn't complete exercises because I'm unfamiliar with the syntax. 

Could we introduce best-in-class exercise solutions that are available from the exercise?
Repository: TypeScript
Issue: Polymorphic `this` and Generics
Labels: Suggestion,Needs Proposal

First, thank you team for polymorphic `this`.  It is really handy!

I think I ran into a case though that I am finding challenging, when I need to return a `this`, but the generics might have changed.  For example:

``` typescript
class A<T> {
    private items: T[] = [];
    map<U>(callback: (item: T, idx: number, a: this) => U): this {
        // boring implementation details
    });
}
```

Where I want to be able to change the generic type for the class with a function, but I will be contracting to return the "current" class, but I want to guard different generics.  The following seems logical to me, but doesn't appear to be currently supported:

``` typescript
class A<T> {
    private items: T[] = [];
    map<U>(callback: (item: T, idx: number, a: this) => U): this<U> {
        // boring implementation details
    });
}
```

Where if no generics arguments are supplied, it is inferred to be the current ones, where as if they are supplied they are substituted.
Repository: go
Issue: net/http: support GET-with-body in Transport/Server
Labels: NeedsFix,FeatureRequest

RFC 2616 is super vague about whether a GET request with a body is valid, or what to do about it.

We should decide, document, enforce, and test.

I vote reject them.

RFC 2616 says:

>   The rules for when a message-body is allowed in a message differ for
>  requests and responses.
> 
>   The presence of a message-body in a request is signaled by the
>  inclusion of a Content-Length or Transfer-Encoding header field in
>   the request's message-headers. A message-body MUST NOT be included in
>   a request if the specification of the request method (section 5.1.1)
>   does not allow sending an entity-body in requests. A server SHOULD
>   read and forward a message-body on any request; if the request method
>   does not include defined semantics for an entity-body, then the
>   message-body SHOULD be ignored when handling the request.

But the nothing (even in 5.1.1) about which methods have defined semantics for a body. At least GET and HEAD are not explicitly defined, so maybe that means reject them.

I recall somebody (from CloudFlare?) telling me they'd seen GET+body in the wild, though?

I still vote to reject them.
Repository: nvm
Issue: test/slow overwrite npm
Labels: testing,needs followup

Why do `npm run test/slow` overwrite `npm` ?

``` bash
$ nvm install v5.3.0
Downloading https://nodejs.org/dist/v5.3.0/node-v5.3.0-darwin-x64.tar.xz...
######################################################################## 100.0%
WARNING: checksums are currently disabled for node.js v4.0 and later
Now using node v5.3.0 (npm v3.3.12)
$ nvm current
v5.3.0
$ node --version
v5.3.0
$ npm --version
3.3.12
$ npm run test/slow
# ...

Done, took 169 seconds.
5 tests passed.
12 tests failed.
make: *** [test-zsh] Error 12

npm ERR! Darwin 15.2.0
npm ERR! argv "/Users/kui/.nvm/versions/node/v5.3.0/bin/node" "/Users/kui/.nvm/versions/node/v5.3.0/bin/npm" "run" "test/slow"
npm ERR! node v5.3.0
npm ERR! npm  v3.3.12
npm ERR! code ELIFECYCLE
npm ERR! nvm@0.29.0 test/slow: `shell=$(basename -- $(ps -o comm= $(ps -o ppid= -p $PPID)) | sed 's/^-//'); make TEST_SUITE=slow test-$shell`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the nvm@0.29.0 test/slow script 'shell=$(basename -- $(ps -o comm= $(ps -o ppid= -p $PPID)) | sed 's/^-//'); make TEST_SUITE=slow test-$shell'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the nvm package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     shell=$(basename -- $(ps -o comm= $(ps -o ppid= -p $PPID)) | sed 's/^-//'); make TEST_SUITE=slow test-$shell
npm ERR! You can get their info via:
npm ERR!     npm owner ls nvm
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/kui/nvm/npm-debug.log
$ nvm current
v5.3.0
$ node --version
v5.3.0
$ npm --version
1.4.29
```
Repository: youtube-dl
Issue: Detect embedded wat videos
Labels: request

This is a feature request.

Sometimes website A embeds a video from website B, and we have an extractor for B.
The idea is:
- if there is no extractor for A:
  - iterate through known extractors, trying them at A
  - if none of them worked
    - only then say `Unsupported URL`

Example:
- A = `www.wat.tv/video/danse-coup-coeur-loic-nottet-7pf7c_3at0p_.html`
- B = `http://www.wat.tv/video/danse-coup-coeur-loic-nottet-7pf7c_3at0p_.html`
Repository: youtube-dl
Issue: Support for xinhuanet videos.
Labels: site-support-request

Hi,

It'd be great if you can add support for videos from xinhuanet! Example URL: http://news.xinhuanet.com/english/video/2015-12/24/c_134947040.htm

```
[generic] c_134947040: Requesting header
WARNING: Falling back on generic information extractor.
[generic] c_134947040: Downloading webpage
[generic] c_134947040: Extracting information
ERROR: Unsupported URL: http://news.xinhuanet.com/english/video/2015-12/24/c_134947040.htm
```
Repository: TypeScript
Issue: Give better error messages down the line when generic merged interfaces have different type parameters
Labels: Bug,Help Wanted,Effort: Moderate

``` ts
interface Foo<T> {
    n: T;
}
interface Foo<U> {
    y: U;
}

interface FooConstructor {
    new <T>(): Foo<T>;
}
```

```
TS2314 Generic type 'Foo<T, U>' requires 2 type argument(s).
```

Feedback of https://github.com/DefinitelyTyped/DefinitelyTyped/pull/7321. I searched `Promise<T, R>` interface but I couldn't found it because it does not exist anywhere. Other contributors will may have a same difficulty in supporting of compatibility with es6(lib.es6.d.ts) definitions.
Repository: youtube-dl
Issue: Can't download from myspace
Labels: request

I can't download songs from that page:

https://myspace.com/spiridoo/music/songs
Repository: youtube-dl
Issue: Have a way to cancel the download programatically
Labels: request

this way, it could be done the following:

```
ydl = youtube_dl.YoutubeDL(conf)
ydl.download([self.url])
```

at some point in the middle, from other thread:

```
ydl.cancel()
```

and it would stop downloading.
Repository: You-Dont-Know-JS
Issue: Tilde is one's complement
Labels: for second edition

In Types & Grammar, Chapter 4, you state in passing that ~ computes the two's complement of a number. What it actually computes is the one's complement (flipping the bits), which is why ~42 is -43. Two's complement is the operation performed by unary - and consists of flipping the bits and adding 1 (or equivalently flipping all bits left of the rightmost 1).
Repository: java-design-patterns
Issue: Extract-Transform-Load (ETL) architectural pattern
Labels: info: help wanted,epic: pattern,type: feature

**Description:**
The Extract-Transform-Load (ETL) design pattern is crucial for data integration and data warehousing processes. It involves extracting data from various sources, transforming it to fit operational needs, and loading it into a target database or data warehouse. This pattern ensures that data is accurately consolidated and structured for analysis and reporting purposes.

**Main Elements of the ETL Design Pattern:**
1. **Extract**: Retrieve data from different sources, which can include databases, APIs, flat files, etc.
2. **Transform**: Cleanse, format, and structure the extracted data to meet the required specifications. This might involve data validation, normalization, aggregation, and other data transformation techniques.
3. **Load**: Insert the transformed data into a target system, such as a database or data warehouse, ensuring it is ready for use in analysis and reporting.

**References:**
1. [ETL Design Pattern - Wikipedia](https://en.wikipedia.org/wiki/Extract,_transform,_load)
2. [What is ETL (Extract Transform Load)?](https://aws.amazon.com/what-is/etl/)

**Acceptance Criteria:**
1. Implement a basic ETL framework that includes modules for data extraction, transformation, and loading.
2. Provide examples demonstrating how to use the ETL framework with different data sources and targets.
3. Ensure the implementation follows the project’s coding standards and includes comprehensive documentation and unit tests.
Repository: go
Issue: tour: explain the semantics of the main goroutine
Labels: Documentation,help wanted,NeedsInvestigation

Context: http://127.0.0.1:3999/concurrency/1

In concurrency/1 (Goroutines), commenting out line 17 say("hello") also stops the go say("world") from doing anything. The program exits before any worlds are said, yet without commenting out line 17 it seems to wait for all goroutines to finish before exiting.
Repository: TypeScript
Issue: Issue in indentation when formatting consecutive objects
Labels: Bug,Help Wanted,Domain: Formatter

Reposting Microsoft/vscode#1661

There's a very annoying issue when hitting "format code" in a TS file. Here's an example:

``` ts
[{
}, {
}]
// or
fn({
}, {
})
```

becomes:

``` ts

[{
}, {
  }]
// or
fn({
}, {
  })
```

This gets really annoying when you have large nested objects containing things like functions etc...
Repository: rust
Issue: bad diagnostic when macro tries to use stmt as expr
Labels: A-diagnostics,A-macros,T-compiler,A-suggestion-diagnostics,D-incorrect

Given [this macro](http://is.gd/tEPMxF):

``` rust
macro_rules! foo {
    ($s:stmt) => { $s }
}
```

When called in expression context, for example `println!("{}", foo!(42))`, the error message refers to "unexpected token `42;`", thereby conjuring a semicolon out of the ether. We aren't JS so we shouldn't conjure semicolons out of the ether :)
Repository: TypeScript
Issue: Indentation failure with unclosed JSX element
Labels: Bug,Domain: JSX/TSX

``` ts
var x =
    <div>
        <input type="text" name="name">
    </div>

namespace foo {
/**/
```

Press enter at `/**/`.

```
Description:

getIndentationAtPosition('C:\Users\drosen\AppData\Local\Temp\~vs8E0D.tsx', 94)

StackTrace:

Error: Debug Failure. False expression: 
   at assert (:1645:17)
   at find (:41847:13)
   at find (:41843:25)
   at find (:41843:25)
   at find (:41843:25)
   at find (:41843:25)
   at find (:41843:25)
   at find (:41843:25)
   at find (:41843:25)
   at find (:41843:25)
   at findPrecedingToken (:41808:9)
   at getIndentation (:44508:17)
   at getIndentationAtPosition (:50435:13)
   at Anonymous function (:52193:17)
   at simpleForwardCall (:51951:9)
   at forwardJSONCall (:51967:13)
   at forwardJSONCall (:52013:13)
   at getIndentationAtPosition (:52191:13)
```
Repository: angular
Issue: Can't explicitly validate ControlGroup
Labels: feature,workaround1: obvious,freq2: medium,area: forms,feature: under consideration

It would be nice to have the possibility to explicitly call a **.validate()** method on a ControlGroup.
Starting with an invalid form just because the user still hasn't entered anything isn't always ideal.

In [your forms guide](https://angular.io/docs/ts/latest/guide/forms.html) it's quite convenient to start out with a populated model, hence you don't need to check !field.dirty or !field.touched in the view.

Please see my [video](https://youtu.be/T__VppOCk04) or check out my [ng2_play repo](https://github.com/ajtowf/ng2_play), it's always easier to show the problem.