Table of Contents
- Prior Discussion
- Background
- Asked Questions & Prior Discussion
- Panics on sends or closes of closed channel
- Thread-local, Goroutine-local storage
- Add explicit int-to-bool conversions
- Add mechanism to silence vet warnings
- Add vet warning for unused function arguments
- Make go get more verbose / add a progress bar
- Shorten error handling / return sugar
- Support symlinks in go toolchain / environment variables
- Make unused imports/variables a warning, not an error
- Add warnings to the Go compiler
- Weak references
Prior Discussion
Background
This page links to prior discussion on various topics.
The page complements the official FAQ. While the official FAQ contains things which are frequently asked and contains answers, this page contains things that have been repeatedly asked, but maybe not frequently, and only needs to link to one or more previous threads. Over time, these entries may graduate to entries in the official FAQ.
Editors: When editing this page, please don't change the titles of sections, as that breaks the #anchors in URLs. You can rearrange, though. Feel free to add entries at will. There is no requirement for code or English review here.
Asked Questions & Prior Discussion
Panics on sends or closes of closed channel
See https://github.com/golang/go/issues/11344#issuecomment-117862884
Thread-local, Goroutine-local storage
TODO
Add explicit int-to-bool conversions
Rejected, see https://github.com/golang/go/issues/9367#issuecomment-143128337
Add mechanism to silence vet warnings
Rejected, see discussion in https://github.com/golang/go/issues/17058
Add vet warning for unused function arguments
Rejected, see https://github.com/golang/go/issues/7892#issuecomment-66094282
Make go get more verbose / add a progress bar
Rejected, see https://github.com/golang/go/issues/17959 https://github.com/golang/go/issues/18388#issuecomment-268315634
Shorten error handling / return sugar
Rejected, see https://github.com/golang/go/issues/16225
Support symlinks in go toolchain / environment variables
Rejected, see https://github.com/golang/go/issues/15507
Make unused imports/variables a warning, not an error
Rejected.
Add warnings to the Go compiler
Experience in large projects has shown that warnings pile up until people ignore all warnings, so warnings only add noise and no value (or are actively harmful in that they hide bugs). See https://go.dev/doc/faq#unused_variables_and_imports
Weak references
Unlikely to be added. See discussion at https://groups.google.com/forum/#!topic/golang-nuts/PYWxjT2v6ps, and https://groups.google.com/forum/?pli=1#!topic/golang-nuts/MMWXRANh0-g which points out that sync.Pool is a specific form of weak reference.
AVX512 Articles AssemblyPolicy Benchmarks Blogs Books BoundingResourceUse CSSStyleGuide ChromeOS CodeReview CodeReviewComments CodeReviewConcurrency CodeTools Comments CommitMessage CommonMistakes CompilerOptimizations Conferences Configuring GoLand for WebAssembly Contributing to gopls CoreDumpDebugging Courses CreatingSubRepository CustomPprofProfiles Darwin DashboardBuilders Deprecated DesignDocuments Diagnostics Download build farm failed logs and debugging DragonFly BSD ErrorValueFAQ Errors ExperienceReports FileTreeDocumentation FreeBSD FromXToGo Frozen Fuzzing trophy case GOPATH Gardening GcToolchainTricks GccgoCrossCompilation GerritAccess GerritBot GithubAccess Go 1.10 Release Party Go 1.6 release party Go 1.8 Release Party Go Community Slides Go Release Cycle Go2 Go2ErrorHandlingFeedback Go2ErrorValuesFeedback Go2GenericsFeedback GoArm GoForCPPProgrammers GoGenerateTools GoGetProxyConfig GoGetTools GoMips GoStrings GoTalks GoUserGroups GoUsers Gomote Gopher HandlingIssues Home HostedContinuousIntegration How to ask for help HowToAsk IDEsAndTextEditorPlugins InstallFromSource InstallTroubleshooting InterfaceSlice InvalidFlag Iota Learn LearnConcurrency LearnErrorHandling LearnServerProgramming LearnTesting Linux LinuxKernelSignalVectorBug Livestreams LockOSThread MacOS12BSDThreadRegisterIssue MethodSets MinimumRequirements MinorReleases Mobile Modules MutexOrChannel NativeClient NetBSD NewSpeakers NoMeToo NoPlusOne NonEnglish OpenBSD PackagePublishing PanicAndRecover PerfDashboard Performance Plan9 Podcasts PortingPolicy PriorDiscussion Projects Proposals ProviderIntegration Questions Quiet Weeks Range RateLimiting ResearchPapers Resolving Problems From Modified Module Path Resources for slog SQLDrivers SQLInterface Screencasts SettingGOPATH SignalHandling SimultaneousAssignment SliceTricks SlowBots Solaris Spectre Spelling Style SuccessStories Switch TableDrivenTests TargetSpecific TestComments TestFailures Timeouts Training Ubuntu Watchflakes WebAccessibilityResourcesAndTips Well known struct tags WhyGo Windows WindowsBuild WindowsCrossCompiling WindowsDLLs X Repositories _Footer cgo golang tools gopherbot gopls integrator FAQ gopls heapdump13 heapdump14 heapdump15 through heapdump17 heapdump15