aboutsummaryrefslogtreecommitdiff
path: root/.github/ISSUE_TEMPLATE/11-language-change.yml
diff options
context:
space:
mode:
Diffstat (limited to '.github/ISSUE_TEMPLATE/11-language-change.yml')
-rw-r--r--.github/ISSUE_TEMPLATE/11-language-change.yml165
1 files changed, 165 insertions, 0 deletions
diff --git a/.github/ISSUE_TEMPLATE/11-language-change.yml b/.github/ISSUE_TEMPLATE/11-language-change.yml
new file mode 100644
index 0000000000..4965ab80ed
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/11-language-change.yml
@@ -0,0 +1,165 @@
+name: Language Change Proposals
+description: Changes to the language
+labels: ["Proposal", "v2", "LanguageChange"]
+title: "proposal: Go 2: "
+
+
+body:
+ - type: markdown
+ attributes:
+ value: |
+ ## Our process for evaluating language changes can be found [here](https://go.googlesource.com/proposal/+/refs/heads/master#language-changes)
+
+ - type: dropdown
+ id: author-go-experience
+ attributes:
+ label: "Go Programming Experience"
+ description: "Would you consider yourself a novice, intermediate, or experienced Go programmer?"
+ options:
+ - "Novice"
+ - "Intermediate"
+ - "Experienced"
+ default: 1
+
+ - type: input
+ id: author-other-languages-experience
+ attributes:
+ label: "Other Languages Experience"
+ description: "What other languages do you have experience with?"
+ placeholder: "Go, Python, JS, Rust"
+ validations:
+ required: false
+
+ - type: checkboxes
+ id: related-idea
+ attributes:
+ label: "Related Idea"
+ options:
+ - label: "Has this idea, or one like it, been proposed before?"
+ - label: "Does this affect error handling?"
+ - label: "Is this about generics?"
+ - label: "Is this change backward compatible? Breaking the Go 1 compatibility guarantee is a large cost and requires a large benefit"
+
+ - type: textarea
+ id: related-proposals
+ attributes:
+ label: Has this idea, or one like it, been proposed before?
+ description: If so, how does this proposal differ?
+ placeholder: |
+ Yes or No
+
+ If yes,
+ 1. Mention the related proposals
+ 2. then describe how this proposal differs
+ validations:
+ required: true
+
+ - type: textarea
+ id: error-handling-proposal
+ attributes:
+ label: Does this affect error handling?
+ description: If so, how does this differ from previous error handling proposals?
+ placeholder: |
+ Yes or No
+
+ If yes,
+ 1.how does this differ from previous error handling proposals?
+
+ validations:
+ required: true
+
+ - type: textarea
+ id: generics-proposal
+ attributes:
+ label: Is this about generics?
+ description: If so, how does this relate to the accepted design and other generics proposals?
+ placeholder: |
+ Yes or No
+
+ If yes,
+ 1. how does this relate to the accepted design and other generics proposals?
+
+ validations:
+ required: true
+
+ - type: textarea
+ id: proposal
+ attributes:
+ label: "Proposal"
+ description: "What is the proposed change? Who does this proposal help, and why? Please describe as precisely as possible the change to the language."
+ validations:
+ required: true
+
+ - type: textarea
+ id: language-spec-changes
+ attributes:
+ label: "Language Spec Changes"
+ description: "What would change in the language spec?"
+ validations:
+ required: false
+
+ - type: textarea
+ id: informal-change
+ attributes:
+ label: "Informal Change"
+ description: "Please also describe the change informally, as in a class teaching Go."
+ validations:
+ required: false
+
+ - type: textarea
+ id: go-backwards-compatiblity
+ attributes:
+ label: Is this change backward compatible?
+ description: Breaking the Go 1 compatibility guarantee is a large cost and requires a large benefit.
+ placeholder: |
+ Yes or No
+
+ If yes,
+ 1. Show example code before and after the change.
+
+ validations:
+ required: true
+
+ - type: textarea
+ id: orthogonality
+ attributes:
+ label: "Orthogonality: How does this change interact or overlap with existing features?"
+ description: "Is the goal of this change a performance improvement? If so, what quantifiable improvement should we expect? How would we measure it?"
+ validations:
+ required: false
+
+ - type: textarea
+ id: learning-curve
+ attributes:
+ label: "Would this change make Go easier or harder to learn, and why?"
+
+ - type: textarea
+ id: cost-description
+ attributes:
+ label: "Cost Description"
+ description: "What is the cost of this proposal? (Every language change has a cost)"
+
+ - type: input
+ id: go-toolchain
+ attributes:
+ label: Changes to Go ToolChain
+ description: "How many tools (such as vet, gopls, gofmt, goimports, etc.) would be affected? "
+ validations:
+ required: false
+
+ - type: input
+ id: perf-costs
+ attributes:
+ label: Performance Costs
+ description: "What is the compile time cost? What is the run time cost? "
+ validations:
+ required: false
+
+ - type: textarea
+ id: prototype
+ attributes:
+ label: "Prototype"
+ description: "Can you describe a possible implementation?"
+ validations:
+ required: false
+