sharjeelyunus/github-issues-dataset huggingface dataset:
Repository: kubernetes
Issue: Overaggressive Routes Controller 
Labels: kind/bug,area/cloudprovider,lifecycle/frozen,area/provider/azure,triage/unresolved,sig/cloud-provider,needs-triage

**Is this a BUG REPORT or FEATURE REQUEST?**:
/kind bug

**What happened**:
`Route controller` is unnecessary too aggressive. The [current control loop](https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/route/route_controller.go#L115) loops through the node list every `10s`. Each node will generate a `GET` call to cloud resource manager (ARM in case of `azure`) to assert the route existence, This quickly burns through the quota afforded to each subscription (the umbrella concept used by `azure` to manage multiple clusters/ resource groups) by the underlaying cloud. Nodes does not change their own ip that frequent on `azure` or any cloud/om-prem deployment for that matter. Once the cluster burns through the quota its control plane will become practically unusable until quota refill, refresh or manual shutdown/start of controller to slow down the calls.

Setting it to higher period is not the best solution, since we need the route controller to kick in in case of scale up/down or the unlikely case of node changing IPs. 

**What you expected to happen**:
`Route Controller` must generate the smallest possible of cloud calls. Ideally, only when needed. And must be reasonably fast in reaction to changing state such as `new nodes`, `deleted nodes`, or changing `node ip`  

**How to reproduce it (as minimally and precisely as possible)**:
Either run many small clusters (10 X 20 nodes) in the same `azure` subscription (or the equivalent concept on different environments), Or run one large cluster (400++ node). The controller will quickly log `HTTP 429` (in `azure` case) throttling errors 

**Proposed Solution**
change `Route Controller` implementation to `Service Controller` [like](https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/service/service_controller.go#L136) implementation using `shared informer`. Because `node` object gets frequently updated (example node status updates) the controller should maintain an in memory cache of `node:ip` and should only call out the `cloud provider` when the node is new or its ip has changed. We can extend this by a `full sync` every long period just in case of faulty state drifts.

**Anything else we need to know?**:
N/A 

**Environment**:
- Kubernetes version (use `kubectl version`): *
- Cloud provider or hardware configuration: `azure` et al
- OS (e.g. from /etc/os-release): *
- Kernel (e.g. `uname -a`): *
- Install tools: *
- Others:*
Repository: vscode
Issue: Document highlight API command should return word highlights if no specific highlight provider is registered
Labels: feature-request,api,editor-symbols

The command should behave exactly the same as if the user sets a cursor somewhere.
Repository: TypeScript
Issue: API: expose IntrinsicType
Labels: Suggestion,In Discussion,API

<!-- 🚨 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.2, 2.8.0-dev.20180228

<!-- Search terms you tried before logging this (so others can find this issue more easily) -->
**Search Terms:** IntrinsicType

There's currently no (official) way to distinguish the literal types `true` and `false`.

Although `ts.TypeFlags.BooleanLiteral` is included in `ts.TypeFlags.Literal` it's no `ts.LiteralType`. Therefore I cannot access the value of the literal. I need access to the internal `ts.IntrinsicType` for that.

TSLint just declared the type in their project, which might break at any time...

My current workaround is `checker.typeToString(type) === 'false'`.

If you expose `ts.IntrinsicType`, does it make sense to expose `ts.TypeFlags.Intrisic` too?
Repository: rust
Issue: [NLL] borrowed-universal-test.rs output is not great
Labels: C-enhancement,A-diagnostics,P-low,T-compiler,A-NLL

The output of this test ...

```rust
// compile-flags: -Znll-dump-cause

#![feature(nll)]
#![allow(warnings)]

fn gimme(x: &(u32,)) -> &u32 {
    &x.0
}

fn foo<'a>(x: &'a (u32,)) -> &'a u32 {
    let v = 22;
    gimme(&(v,))
    //~^ ERROR borrowed value does not live long enough [E0597]
}

fn main() {}
```

is not great

```
[santiago@archlinux rust1 (borrowed_value_error)]$ rustc +stage1 src/test/ui/nll/borrowed-universal-error.rs -Znll-dump-cause
error[E0597]: borrowed value does not live long enough
  --> src/test/ui/nll/borrowed-universal-error.rs:22:12
   |
22 |     gimme(&(v,))
   |            ^^^^ temporary value does not live long enough
23 |     //~^ ERROR borrowed value does not live long enough [E0597]
24 | }
   | - temporary value only lives until here
   |
note: borrowed value must be valid for the lifetime 'a as defined on the function body at 20:1...
  --> src/test/ui/nll/borrowed-universal-error.rs:20:1
   |
20 | fn foo<'a>(x: &'a (u32,)) -> &'a u32 {
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

error: aborting due to previous error

If you want more information on this error, try using "rustc --explain E0597"
```

cc @nikomatsakis
Repository: go
Issue: proposal: spec: allow cap(make([]T, m, n)) > n
Labels: LanguageChange,Proposal,LanguageChangeReview

Currently, the Go spec requires that `cap(make([]T, n)) == n` and `cap(make([]T, m, n)) == n`. I propose relaxing this constraint from `==` to `>=`.

Rationale: the Go runtime already pads allocations up to the next malloc bucket size. By treating the user supplied capacity argument as a lower bound rather than exact bound, there's a possibility to make use of this padding space.

Also, if users really need an exact capacity (which seems like it would be very rare), they can write `make([]T, n)[:n:n]` or `make([]T, m, n)[:m:n]`.

(See also discussion in #24163.)
Repository: go
Issue: proposal: net/v2: make Pipe asynchronous
Labels: v2,Proposal

Currently, `net.Pipe` is documented as such:
> Pipe creates a *synchronous*, in-memory, full duplex network connection; both ends implement the Conn interface. Reads on one end are matched with writes on the other, copying data directly between the two; there is no internal buffering.

This behavior occurs because `net.Pipe` was just a thin wrapper over `io.Pipe`, which is implemented as being synchronous. However, most network connections are not synchronous as they involve buffering at multiple layers (in the OS, on the wire, etc). Thus, we should switch `net.Pipe` to act in an asynchronous fashion to better emulate true network connections.
Repository: go
Issue: cmd/compile: revisit append codegen
Labels: Performance

CLs 21813 and 22197 optimized the code generated for append. It was done in part to address #14921, but while I was there, I also focused on things like avoiding spills in the fast path.

Several things have changed in the compiler since then:

* The old backend is gone, so we are free to change the signature of growslice.
* We are better at sinking spills to a narrower scope, so some of the spill-avoidance techniques used are no longer necessary.
* Write barriers are inserted later in the SSA backend, rather than in the frontend and during SSA construction.

All this suggests to me that we may be able to simplify and improve the code generated for append.

I also suspect that the "no write barriers for in-place appends" optimization may have gotten lost during the write barrier move. More details about that in a comment-to-come over in #14921.

That's a significant optimization. Tentatively marking this as a release blocker for that reason.

cc @randall77 @cherrymui @aclements @mvdan
Repository: go
Issue: x/text/language: change of behavior for language matcher
Labels: NeedsInvestigation

Please answer these questions before submitting your issue. Thanks!


### What version of Go are you using (`go version`)?
1.9.2

### Does this issue reproduce with the latest release?
yes

### What operating system and processor architecture are you using (`go env`)?
linux amd64

### What did you do?
The golang.org/x/text package seemed to have changed in the behaviour of language matching with an update a few days ago:

```
package main

import (
    "fmt"

    "golang.org/x/text/language"
)

func main() {
    s := []language.Tag{language.MustParse("en"), language.MustParse("fr")}
    p := []language.Tag{language.MustParse("en-US"), language.MustParse("en")}

    l := language.NewMatcher(s)
    ll, _, _ := l.Match(p...)

    fmt.Println(ll)
}

```

### What did you expect to see?
This used to print "en" but now prints "en-u-rg-uszzzz". This doesn't make sense because I only support "en" and "fr" so why is it returning something else? Switching the order of my preferred languages gives "en".

Is there a rhyme or reason why the change because I cannot understand? Defeats the purpose of a language "matcher" if it is going to return languages that I don't support. 

If this is by design what is the best way to get just "en". Parent()? Base()? SomethingElse()?

### What did you see instead?
"en-u-rg-uszzzz", a language I do not support.
Repository: rust
Issue: missed optimization: fat pointers in two-variant enums with small second variants
Labels: C-enhancement,T-compiler,C-optimization

Currently, there's a reasonably well-known optimization for two-variant enums, where one variant is a single pointer and the other has no fields. In this case, Rust uses its knowledge that `0x0` is never a valid pointer value to optimize the discriminant into the address: `0x0` is taken to mean that the non-pointer variant is the correct one.

There's a missed optimization, however, when the pointer is a fat one (e.g. a slice or a trait object) and the second variant is small (specifically, `<= usize`). In this case, the enum could be optimized by having the address field zero still indicate the second variant, with the fields being stored where the size or vtable pointer would be stored on a trait object.

https://play.rust-lang.org/?gist=7398c28c7f05bc76a06a7fb6d4af40fa&version=nightly
Repository: vscode
Issue: SCM: Align next/previous commands between diff and regular editor
Labels: help wanted,feature-request,diff-editor

Extracted from https://github.com/Microsoft/vscode/issues/7717

I think the commands that got introduced should also work within a diff editor.
Repository: flutter
Issue: "Charles" networking debugging tool prevents SDK download
Labels: tool,platform-windows,a: first hour,P3,team-tool,triaged-tool

Hi, when I run flutter doctor --verbose for first time, it's try to download Dart SDK version, but It can be ther for hours and nothing happen.
I have try to delete flutter, and install it from Android Studio, but the problem it's the same. It clone flutter without problems, but when check for dart SDK version, it stay there forever.
I have Windows 10 pro.
What can I do?
Repository: rust
Issue: #![cfg_attr(not(test), no_std)] doesn't work when building multiple crate-types
Labels: C-enhancement,T-compiler

```
$ cargo create --lib foo
$ cd foo
$ cat >> Cargo.toml <<EOF
[lib]
crate-type = ["rlib", "staticlib"]
[profile.dev]
panic="abort"
EOF
$ cat > src/lib.rs <<EOF
#![cfg_attr(not(test), no_std)]
#![feature(lang_items)]

#[cfg(not(test))]
#[lang = "panic_fmt"]
#[no_mangle]
pub fn panic_fmt(_: core::fmt::Arguments, _: &'static str, _: u32, _: u32) -> ! {
    loop {}
}
EOF
$ cargo +nightly build
   Compiling foo v0.1.0 (file:///tmp/foo)
    Finished dev [unoptimized + debuginfo] target(s) in 0.13 secs
$ cargo +nightly test
   Compiling foo v0.1.0 (file:///tmp/foo)
error: language item required, but not found: `eh_personality`

error: aborting due to previous error
```

That is an error that is expected with `no_std`, but the code is supposed to be essentially empty in the `test` configuration.

It works when `crate-type` contains only one value (either one).
Repository: pytorch
Issue: Redo torch.nn.functional docstring strategy
Labels: module: docs,triaged

Now that we are stuffing all of our ATen bindings in `torch.` namespace, docstrings for these functions shouldn't live in `torch.nn.functional` anymore, because then you won't get docs unless you import `torch.nn.functional` first.

CC @gchanan 

cc @jlin27
Repository: rust
Issue: Add rustdoc option to make old docs "less important" to make search engine results more pertinent
Labels: C-enhancement,T-release

I think about something like:

```bash
rustdoc --robots-options="less-important" # or whatever option it is for search engine robots
```

However, this option will need to be called for the version specific docs generation (I'm talking about `doc.rust-lang.org/doc/1.x.y`) and not on "not specific" docs ( `doc.rust-lang.org/doc/stable`, ``doc.rust-lang.org/doc/beta` or `doc.rust-lang.org/doc/nightly`). Maybe you know something about this @Mark-Simulacrum? (wild guess)

cc @QuietMisdreavus (does the option's name seems ok to you?)
Repository: rust
Issue: Traits and associated types are not properly resolved in trait clauses
Labels: A-trait-system,A-associated-items,T-lang,C-bug,T-types,S-types-deferred

https://play.rust-lang.org/?gist=408db89ed821df7b75a2769ae92d3e9b&version=nightly
Repository: pytorch
Issue: TestNN.test_data_parallel takes 10G of memory
Labels: module: memory usage,module: tests,triaged

Apply the following patch (with `pip install psutil`) to get resident memory information:

```
diff --git a/test/common.py b/test/common.py
index 2980cd5..5752af3 100644
--- a/test/common.py
+++ b/test/common.py
@@ -10,6 +10,7 @@ from functools import wraps
 from itertools import product
 from copy import deepcopy
 from numbers import Number
+import psutil
 
 import __main__
 import errno
@@ -148,6 +149,10 @@ class TestCase(unittest.TestCase):
     def setUp(self):
         set_rng_seed(SEED)
 
+    def tearDown(self):
+        process = psutil.Process(os.getpid())
+        print("\nResident: {}".format(process.memory_info().rss))
+
     def assertTensorsSlowEqual(self, x, y, prec=None, message=''):
         max_err = 0
         self.assertEqual(x.size(), y.size())
```

Then run the test:

```
(/home/ezyang/Dev/onnx-fb-universe-env) [ezyang@devgpu005.ash6 ~/Dev/onnx-fb-universe/repos/pytorch] python test/test_nn.py TestNN.test_data_parallel

Resident: 10068000768
.
----------------------------------------------------------------------
Ran 1 test in 17.433s

OK
```

That's 10G!!! This is on an eight GPU box. This number is on a DEBUG build. Commit b181b59d31fd0bf34d098508c6c1ac55821f1630

CC @apaszke 

cc @mruberry @VitalyFedyunin
Repository: rust
Issue: Command.spawn posix_spawn support for NetBSD / DragonFlyBSD.
Labels: A-runtime,C-enhancement,O-netbsd,O-dragonfly,T-libs

Issue #48624 is adding support for the more efficient `posix_spawn` in some cases of `Command.spawn`. The `posix_spawn` of NetBSD and DragonFlyBSD supports returning _ENOENT_ directly so these platforms can grow support for it. They just need the libc bindings (like in https://github.com/rust-lang/libc/commit/92d50c9c79e7038db097344d8f00e774277ee519) and then an update to libstd's Command target list as done in #48624.

OpenBSD does not support this though as their implementation uses `fork` rather than `vfork` and lacks a communication back to the parent about the `exec` failure.

This test .c file was used to check for the needed support:

```
#include <assert.h>
#include <stdlib.h>
#include <errno.h>
#include <spawn.h>

extern char **environ;

int
main(void)
{
    pid_t pid;
    char *pargv[] = {"/nonexistent", NULL};
    int status = posix_spawn(&pid, "/nonexistent", NULL, NULL, pargv, environ);
    assert(status == ENOENT);
    return 0;
}
```

A failing assert means the platform cannot grow `posix_spawn` support.
Repository: awesome-mac
Issue: Suggested Additions
Labels: addition

Hello,

I have found your list searching for some applications - excellent work and thank you for providing it!

Here are some fixes:

- Coda2 is a a web-developement IDE and not really a general purpose text editor. It probably should be under "Web Development Tools".

Here are some suggestions for additions:

- [Rider](https://www.jetbrains.com/rider/) is a non-free, non-opensource cross-platform C# IDE from Jetbrains - it is an alternative to Visual Studio by Microsoft with the additional benefit of getting [Resharper](https://www.jetbrains.com/resharper/) features that are not available on Visual Studio for Mac.
- [Expressions](http://www.apptorium.com/expressions) is non-free, non-opensource regular expression checker. It has a nice interface and it can dissect a regex.
- [Navicat](https://www.navicat.com/en/products/navicat-premium) is a non-free, non-opensource database editor that supports very many databases. It is a large program that has become more of a database IDE due to the very many features.
- [JavE](http://www.jave.de) is a free and opensource ASCII text editor with very many features.

I highly recommend [GrandPerspective](http://grandperspectiv.sourceforge.net) in "System Related Tools" - it is an open-source and free (beautiful and beautifully simple!) application that can analyze any folder and display files as clusters of blocks depending on the file size.

Under "Game Emulation" you probably would like to add [Wineskin](http://wineskin.urgesoftware.com/tiki-index.php) - it is a wrapper for wine and can be used to run Windows games as well as create self-standing applications.

If useful, please add! (ﾉ◕ヮ◕)ﾉ*:･ﾟ✧
Repository: godot
Issue: Area3D/Area2D doesn't detect static bodies if "Monitorable" is disabled
Labels: bug,confirmed,topic:physics

<!-- Please search existing issues for potential duplicates before filing yours:
https://github.com/godotengine/godot/issues?q=is%3Aissue
-->

**Godot version:**
 184b2fe


**Issue description:**
This could also affect the 3D version of it, but I just tested in 2D.

If an Area2D's `Monitorable` property is disabled, it will fail to detect static bodies.
Repository: go
Issue: cmd/go: "go get github.com\alexbrainman\gowingui" should succeed on Mac
Labels: OS-Darwin,NeedsFix

### What version of Go are you using (`go version`)?

go version go1.10 windows/amd64

### Does this issue reproduce with the latest release?

Yes

### What operating system and processor architecture are you using (`go env`)?

```
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\Alex\AppData\Local\go-build
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=c:\users\alex\dev
set GORACE=
set GOROOT=c:\users\alex\dev\go
set GOTMPDIR=
set GOTOOLDIR=c:\users\alex\dev\go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
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
set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0 -fdebug-prefix-map=C:\Users\Alex\AppData\Local\Temp\go-build838310042=/tmp/go-build -gno-record-gcc-switches
```

### What did you do?

I run
```
go get github.com\alexbrainman\gowingui
````
command.

### What did you expect to see?

I expected command to fail, because I used \ instead of / in package import path.

### What did you see instead?

I see no error message, and I also see gowingui.exe in my %GOPATH%\bin directory.

### Comments

I discovered this while investigating #24232 

And if I run
```
go install -ldflags "-H windowsgui" github.com\alexbrainman\gowingui
```
the %GOPATH%\bin\gowingui.exe file does not have IMAGE_SUBSYSTEM_WINDOWS_GUI flag set properly.

So if this issue is rejected as working as intended, than we should fix cmd/go flag processing to avoid cases like #24232 

Alex
Repository: gin
Issue: IP Addresses misalign log lines
Labels: bug

Variable-length IP addresses misalign everything to their right.

![image](https://user-images.githubusercontent.com/802664/36942314-468b33e8-1f2c-11e8-9b9b-1b7010df011e.png)
(IPv6 addresses and paths are censored out in orange, but you get the idea.)
Repository: youtube-dl
Issue: Re-enable ANSI console color for Windows 10.16257 and later
Labels: request

In **Windows 10** build **16257** (released [last year](https://blogs.msdn.microsoft.com/commandline/2017/08/02/updating-the-windows-console-colors/)) and later, **ANSI color** and escape sequences for the built-in `cmd.exe` console ("conhost") are subject to the following registry key:

    [HKEY_CURRENT_USER\Console]
    "VirtualTerminalLevel"=dword:00000001

See [MSDN blogs](https://blogs.msdn.microsoft.com/commandline/2017/06/20/understanding-windows-console-host-settings/) for more information. There's also some official [MSDN docs](https://docs.microsoft.com/en-us/windows/console/console-virtual-terminal-sequences) and a bunch of articles on StackOverflow, such as [here](https://superuser.com/questions/413073/windows-console-with-ansi-colors-handling) and [here](https://stackoverflow.com/questions/16755142/how-to-make-win32-console-recognize-ansi-vt100-escape-sequences). There's also some critical information on this subject in [this](https://github.com/Microsoft/WSL/issues/1173#issuecomment-254250445) github comment.

This new capability means that the following lines of code in **youtube-dl** are overly-restrictive:

https://github.com/rg3/youtube-dl/blob/f9f10268c1816dcf1fc0db9d8128008f73a154c7/youtube_dl/extractor/common.py#L782

https://github.com/rg3/youtube-dl/blob/f9f10268c1816dcf1fc0db9d8128008f73a154c7/youtube_dl/YoutubeDL.py#L596

https://github.com/rg3/youtube-dl/blob/f9f10268c1816dcf1fc0db9d8128008f73a154c7/youtube_dl/YoutubeDL.py#L608

On Windows 10, the value of `compat_os_name` is "nt". Because the lines listed above subsume all three cases where **youtube-dl** references the `--no-color` command-line option, the end result is that the `--no-color` option always asserted on Windows (that is, regardless of ***not*** specifying `--no-color`).

![ytdl-no-color](https://user-images.githubusercontent.com/5589855/36942437-0fe9224c-1f26-11e8-8292-32e52e905044.png)

Relaxing the three conjunctions shown above, by removing the `and compat_os_name != 'nt'` term from each, allows for ANSI color on Windows 10 (assuming the system-wide default is 'enabled' as specified by the registry key mentioned above).

![ytdl-color](https://user-images.githubusercontent.com/5589855/36942439-1a4a0684-1f26-11e8-91b4-861916e854c1.png)