docs: add comprehensive OSS community infrastructure#6
Merged
Conversation
Add standard files expected of a mature open source project: Community files: - CONTRIBUTING.md: Development setup, adding rules, PR guidelines - CODE_OF_CONDUCT.md: Contributor Covenant v2.0 - SECURITY.md: Vulnerability reporting policy Build & Development: - Makefile: build, test, lint, coverage, release targets - .editorconfig: Consistent formatting across editors GitHub templates: - .github/ISSUE_TEMPLATE/bug_report.md - .github/ISSUE_TEMPLATE/feature_request.md - .github/ISSUE_TEMPLATE/config.yml - .github/PULL_REQUEST_TEMPLATE.md Examples: - examples/allocation.go: Slice/map/string patterns - examples/algorithm.go: O(n²) loop patterns - examples/database.go: N+1 query patterns - examples/concurrency.go: Mutex/goroutine patterns - examples/io.go: Buffering/file patterns - examples/http.go: HTTP client patterns Documentation improvements: - README.md: More badges, links to new docs - rules/types.go: Comprehensive GoDoc comments
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds all the standard files expected of a mature open source project.
Files Added
Community Files
Build & Development
GitHub Templates
Examples Directory
allocation.go: Slice/map/string concatenation patternsalgorithm.go: O(n²) nested loop patternsdatabase.go: N+1 query patternsconcurrency.go: Mutex/goroutine leak patternsio.go: Buffering and file operation patternshttp.go: HTTP client and response body patternsDocumentation
Test Plan
make buildsucceedsmake testpassesmake auditruns on examples directoryNotes
This brings goperf to parity with other respected Go static analysis tools like golangci-lint and staticcheck in terms of project infrastructure.