Skip to content

Commit

Permalink
Merge pull request #4 from open-component-model/chore/labels
Browse files Browse the repository at this point in the history
chore: inherit from .github labels
  • Loading branch information
hilmarf authored Nov 28, 2024
2 parents 8f46705 + 92e15c8 commit 5da7e36
Show file tree
Hide file tree
Showing 13 changed files with 323 additions and 300 deletions.
19 changes: 19 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Default owners for everything in the repo.
# Unless a later match takes precedence, the Maintainers team
# will be requested for review when someone opens a pull request.
* @open-component-model/Maintainers

# Changes on repository settings require admin permissions
/.github/settings.yml @open-component-model/admins
/.github/CODEOWNERS @open-component-model/admins

# Owners for specific directories
#/docs/ @<org>/<team>
#/src/ @<org>/<team>

# Owners for specific file types
#*.md @<org>/<team>
#*.go @<org>/<team>

# Individual users as owners, e.g. a lead maintainer for a specific component:
# /src/critical-component/ @lead-maintainer-username
40 changes: 9 additions & 31 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,16 @@
---
name: Bug report
about: Create a report to help us improve
title: "[BUG] ---"
labels: kind/bug
assignees: ''

name: Bug Report
about: Report a bug
labels: kind/bugfix
---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.
<!-- markdownlint-disable MD041 -->
**What happened**:

**Screenshots**
If applicable, add screenshots to help explain your problem.
**What you expected to happen**:

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
**How to reproduce it (as minimally and precisely as possible)**:

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]
**Anything else we need to know**:

**Additional context**
Add any other context about the problem here.
**Environment**:
10 changes: 0 additions & 10 deletions .github/ISSUE_TEMPLATE/custom.md

This file was deleted.

18 changes: 4 additions & 14 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,10 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: kind/enhancement
assignees: ''

labels: kind/feature
---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
<!-- markdownlint-disable MD041 -->
**What would you like to be added**:

**Additional context**
Add any other context or screenshots about the feature request here.
**Why is this needed**:
67 changes: 5 additions & 62 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,64 +1,7 @@
## Description
<!-- markdownlint-disable MD041 -->
#### What this PR does / why we need it

<!--
Please do not leave this blank
This PR [adds/removes/fixes/replaces] the [feature/bug/etc].
#### Which issue(s) this PR fixes
<!--
Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`.
-->

Please include a summary of the changes and the related issue. Please also include relevant motivation and context. List any dependencies that are required for this change.


## What type of PR is this? (check all applicable)

- [ ] 🍕 Feature
- [ ] 🐛 Bug Fix
- [ ] 📝 Documentation Update
- [ ] 🎨 Style
- [ ] 🧑‍💻 Code Refactor
- [ ] 🔥 Performance Improvements
- [ ] ✅ Test
- [ ] 🤖 Build
- [ ] 🔁 CI
- [ ] 📦 Chore (Release)
- [ ] ⏩ Revert

## Related Tickets & Documents

<!--
Please use this format link issue numbers: Fixes #123
https://docs.github.com/en/free-pro-team@latest/github/managing-your-work-on-github/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword
-->
- Related Issue # (issue)
- Closes # (issue)
- Fixes # (issue)
> Remove if not applicable
## Screenshots

<!-- Visual changes require screenshots -->


## Added tests?

- [ ] 👍 yes
- [ ] 🙅 no, because they aren't needed
- [ ] 🙋 no, because I need help

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration


## Added to documentation?

- [ ] 📜 README.md
- [ ] 🙅 no documentation needed

## Checklist:

- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream modules
176 changes: 176 additions & 0 deletions .github/config/golangci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,176 @@
run:
timeout: 10m
tests: false
allow-parallel-runners: true
issues-exit-code: 2


linters:
enable-all: true
disable:
# We are working on it
- wrapcheck

# Logical next step
- forcetypeassert # Priority: that can lead to serious crashes.
- revive # Too many issues.
# It's important to at least address:
# - no camel_case
# - no this and self
# - receiver name a should be consistent
- gomoddirectives # Replacement statements are not allowed in a library.
# if it has a replace statement, other can't use the
# library at all (go does not allow that)
- godox # TODO/FIXME/BUG should not be in the code-base without
# a related GitHub issue.
# Added an exclude-rules for that, if a TODO/FIXME/BUG
# line has an URL on the line, it counts as valid mark.
- errcheck # Too many issues.
- stylecheck # Too many issues.
# No snake_case in Go.
# convert_ComponentReferences_from should be convertComponentReferencesFrom
- prealloc # Performance.
- exportloopref
- nilerr # There a few places where we don't return with an error
# in an 'if err != nil {}' block. If it's intentional,
# we should add a '//nolint: nilerr // Reason why...'
- nlreturn # Use empty line at least before return/break/continue.
- err113 # Do not define dynamic errors with Errorf.
- varnamelen # m, d, p < These are not so meaningful variables.
- testpackage # Blackbox testing is preferred.
- funlen # Break long functions.
- gomnd # Give constant values a name with constants.
- ireturn # Accept interface, return concrete.
- nestif # Some nexted if statements are 8 or 9 deep.
- dupl # Check code duplications.
- cyclop # Complex functions are not good.
- gochecknoinits # Init functions cause an import to have side effects,
# and side effects are hard to test,
# reduce readability and increase the complexity of code.
- gocyclo # We shouldn't have functions with complexity 51
- gocognit # Another complexity check, they check different things.
- containedctx # Struct should not contain context, action does.
- nilnil # A function should return either something valuable
# or an error, but both value and error as nil is
# useless. Like when I call it, why is it nil? Tell me
# in an error why.
- bodyclose
- unparam
- nonamedreturns # Either named return, or use simply `return`.

# Opinionated (we may want to keep it disabled)
- gochecknoglobals
- lll
- paralleltest
- tagliatelle
- wsl
- interfacebloat
- inamedparam
- mnd
- perfsprint


# Disabled with reason
- nakedret
- depguard
- mirror
- dogsled
- exhaustruct # Doesn't really make sense.
- exhaustive # Doesn't really make sense.
- loggercheck # Doesn't really make sense.
- goimports # acts weirdly, dci handles imports anyway
- intrange # Confusing, since manipulating a range variable in a loop does not change the number of
# iterations. Thus, an integer range is constant.

# Disabled because of generics in go 1.18
- contextcheck
- rowserrcheck
- sqlclosecheck
- wastedassign

# Disabled because of deprecation
- execinquery

# Seriously, who wants every comment to end in a period???
- godot

linters-settings:
gci:
sections:
- standard
- blank
- dot
- default
- prefix(ocm.software/ocm)
custom-order: true
funlen:
lines: 110
statements: 60
cyclop:
max-complexity: 15
skip-tests: true
nolintlint:
allow-unused: false
require-explanation: true
require-specific: false
varnamelen:
ignore-names:
- err
- wg
- id
lll:
line-length: 120
gosec:
exclude-generated: true
gocritic:
disabled-checks:
- elseif

issues:
max-issues-per-linter: 0
max-same-issues: 0
exclude-dirs:
- "hack"
# External code from containerd/containerd
- "api/tech/docker"
exclude:
- composites
exclude-rules:
- path: cmds/
linters:
- forbidigo
- text: "should not use dot imports|don't use an underscore in package name"
linters:
- golint
- source: "https://"
linters:
- lll
- text: "shadow: declaration of \"err\""
linters:
- govet
- text: "shadow: declaration of \"ok\""
linters:
- govet
- path: _test\.go
linters:
- err113
- gocyclo
- errcheck
- gosec
- dupl
- funlen
- scopelint
- text: "Spec.DeepCopyInto undefined"
linters:
- typecheck
- text: "G601: Implicit memory aliasing in for loop"
# Ignored cos why not, that was the request.
linters:
- gosec
- source: "// .* #\\d+"
linters:
- godox
- path: ignore/.*\.go
linters:
- dupword

Loading

0 comments on commit 5da7e36

Please sign in to comment.