Skip to content

Commit 3b5c4a0

Browse files
committed
chore: update repository templates
[skip ci] - updated repository templates to ory/meta@2f1d3a4
1 parent 9d6ea82 commit 3b5c4a0

26 files changed

+1058
-45
lines changed

.github/FUNDING.yml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# These are supported funding model platforms
2+
3+
# github:
4+
patreon: _ory
5+
open_collective: ory

.github/ISSUE_TEMPLATE/BUG-REPORT.yml

+113
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
description: 'Create a bug report'
2+
labels:
3+
- bug
4+
name: 'Bug Report'
5+
body:
6+
- attributes:
7+
value: "Thank you for taking the time to fill out this bug report!\n"
8+
type: markdown
9+
- attributes:
10+
label: 'Preflight checklist'
11+
options:
12+
- label:
13+
'I could not find a solution in the existing issues, docs, nor
14+
discussions.'
15+
required: true
16+
- label:
17+
"I agree to follow this project's [Code of
18+
Conduct](https://github.com/ory/examples/blob/master/CODE_OF_CONDUCT.md)."
19+
required: true
20+
- label:
21+
"I have read and am following this repository's [Contribution
22+
Guidelines](https://github.com/ory/examples/blob/master/CONTRIBUTING.md)."
23+
required: true
24+
- label:
25+
'This issue affects my [Ory Cloud](https://www.ory.sh/) project.'
26+
- label:
27+
'I have joined the [Ory Community Slack](https://slack.ory.sh).'
28+
- label:
29+
'I am signed up to the [Ory Security Patch
30+
Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53).'
31+
id: checklist
32+
type: checkboxes
33+
- attributes:
34+
description: 'A clear and concise description of what the bug is.'
35+
label: 'Describe the bug'
36+
placeholder: 'Tell us what you see!'
37+
id: describe-bug
38+
type: textarea
39+
validations:
40+
required: true
41+
- attributes:
42+
description: |
43+
Clear, formatted, and easy to follow steps to reproduce the behavior:
44+
placeholder: |
45+
Steps to reproduce the behavior:
46+
47+
1. Run `docker run ....`
48+
2. Make API Request to with `curl ...`
49+
3. Request fails with response: `{"some": "error"}`
50+
label: 'Reproducing the bug'
51+
id: reproduce-bug
52+
type: textarea
53+
validations:
54+
required: true
55+
- attributes:
56+
description:
57+
'Please copy and paste any relevant log output. This will be
58+
automatically formatted into code, so no need for backticks. Please
59+
redact any sensitive information'
60+
label: 'Relevant log output'
61+
render: shell
62+
placeholder: |
63+
log=error ....
64+
id: logs
65+
type: textarea
66+
- attributes:
67+
description:
68+
'Please copy and paste any relevant configuration. This will be
69+
automatically formatted into code, so no need for backticks. Please
70+
redact any sensitive information!'
71+
label: 'Relevant configuration'
72+
render: yml
73+
placeholder: |
74+
server:
75+
admin:
76+
port: 1234
77+
id: config
78+
type: textarea
79+
- attributes:
80+
description: 'What version of our software are you running?'
81+
label: Version
82+
id: version
83+
type: input
84+
validations:
85+
required: true
86+
- attributes:
87+
label: 'On which operating system are you observing this issue?'
88+
options:
89+
- Ory Cloud
90+
- macOS
91+
- Linux
92+
- Windows
93+
- FreeBSD
94+
- Other
95+
id: operating-system
96+
type: dropdown
97+
- attributes:
98+
label: 'In which environment are you deploying?'
99+
options:
100+
- Ory Cloud
101+
- Docker
102+
- 'Docker Compose'
103+
- 'Kubernetes with Helm'
104+
- Kubernetes
105+
- Binary
106+
- Other
107+
id: deployment
108+
type: dropdown
109+
- attributes:
110+
description: 'Add any other context about the problem here.'
111+
label: Additional Context
112+
id: additional
113+
type: textarea

.github/ISSUE_TEMPLATE/DESIGN-DOC.yml

+116
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
description:
2+
'A design document is needed for non-trivial changes to the code base.'
3+
labels:
4+
- rfc
5+
name: 'Design Document'
6+
body:
7+
- attributes:
8+
value: |
9+
Thank you for writing this design document.
10+
11+
One of the key elements of Ory's software engineering culture is the use of defining software designs through design docs. These are relatively informal documents that the primary author or authors of a software system or application create before they embark on the coding project. The design doc documents the high level implementation strategy and key design decisions with emphasis on the trade-offs that were considered during those decisions.
12+
13+
Ory is leaning heavily on [Google's design docs process](https://www.industrialempathy.com/posts/design-docs-at-google/)
14+
and [Golang Proposals](https://github.com/golang/proposal).
15+
16+
Writing a design doc prior to contributing your change ensures that your ideas are checked with
17+
the community and maintainers. It will save you a lot of time developing things which might need changed
18+
after code reviews, and your pull requests will be merged faster.
19+
type: markdown
20+
- attributes:
21+
label: 'Preflight checklist'
22+
options:
23+
- label:
24+
'I could not find a solution in the existing issues, docs, nor
25+
discussions.'
26+
required: true
27+
- label:
28+
"I agree to follow this project's [Code of
29+
Conduct](https://github.com/ory/examples/blob/master/CODE_OF_CONDUCT.md)."
30+
required: true
31+
- label:
32+
"I have read and am following this repository's [Contribution
33+
Guidelines](https://github.com/ory/examples/blob/master/CONTRIBUTING.md)."
34+
required: true
35+
- label:
36+
'This issue affects my [Ory Cloud](https://www.ory.sh/) project.'
37+
- label:
38+
'I have joined the [Ory Community Slack](https://slack.ory.sh).'
39+
- label:
40+
'I am signed up to the [Ory Security Patch
41+
Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53).'
42+
id: checklist
43+
type: checkboxes
44+
- attributes:
45+
description: |
46+
This section gives the reader a very rough overview of the landscape in which the new system is being built and what is actually being built. This isn’t a requirements doc. Keep it succinct! The goal is that readers are brought up to speed but some previous knowledge can be assumed and detailed info can be linked to. This section should be entirely focused on objective background facts.
47+
label: 'Context and scope'
48+
id: scope
49+
type: textarea
50+
validations:
51+
required: true
52+
53+
- attributes:
54+
description: |
55+
A short list of bullet points of what the goals of the system are, and, sometimes more importantly, what non-goals are. Note, that non-goals aren’t negated goals like “The system shouldn’t crash”, but rather things that could reasonably be goals, but are explicitly chosen not to be goals. A good example would be “ACID compliance”; when designing a database, you’d certainly want to know whether that is a goal or non-goal. And if it is a non-goal you might still select a solution that provides it, if it doesn’t introduce trade-offs that prevent achieving the goals.
56+
label: 'Goals and non-goals'
57+
id: goals
58+
type: textarea
59+
validations:
60+
required: true
61+
62+
- attributes:
63+
description: |
64+
This section should start with an overview and then go into details.
65+
The design doc is the place to write down the trade-offs you made in designing your software. Focus on those trade-offs to produce a useful document with long-term value. That is, given the context (facts), goals and non-goals (requirements), the design doc is the place to suggest solutions and show why a particular solution best satisfies those goals.
66+
67+
The point of writing a document over a more formal medium is to provide the flexibility to express the problem set at hand in an appropriate manner. Because of this, there is no explicit guidance for how to actually describe the design.
68+
label: 'The design'
69+
id: design
70+
type: textarea
71+
validations:
72+
required: true
73+
74+
- attributes:
75+
description: |
76+
If the system under design exposes an API, then sketching out that API is usually a good idea. In most cases, however, one should withstand the temptation to copy-paste formal interface or data definitions into the doc as these are often verbose, contain unnecessary detail and quickly get out of date. Instead focus on the parts that are relevant to the design and its trade-offs.
77+
label: 'APIs'
78+
id: apis
79+
type: textarea
80+
81+
- attributes:
82+
description: |
83+
Systems that store data should likely discuss how and in what rough form this happens. Similar to the advice on APIs, and for the same reasons, copy-pasting complete schema definitions should be avoided. Instead focus on the parts that are relevant to the design and its trade-offs.
84+
label: 'Data storage'
85+
id: persistence
86+
type: textarea
87+
88+
- attributes:
89+
description: |
90+
Design docs should rarely contain code, or pseudo-code except in situations where novel algorithms are described. As appropriate, link to prototypes that show the implementability of the design.
91+
label: 'Code and pseudo-code'
92+
id: pseudocode
93+
type: textarea
94+
95+
- attributes:
96+
description: |
97+
One of the primary factors that would influence the shape of a software design and hence the design doc, is the degree of constraint of the solution space.
98+
99+
On one end of the extreme is the “greenfield software project”, where all we know are the goals, and the solution can be whatever makes the most sense. Such a document may be wide-ranging, but it also needs to quickly define a set of rules that allow zooming in on a manageable set of solutions.
100+
101+
On the other end are systems where the possible solutions are very well defined, but it isn’t at all obvious how they could even be combined to achieve the goals. This may be a legacy system that is difficult to change and wasn’t designed to do what you want it to do or a library design that needs to operate within the constraints of the host programming language.
102+
103+
In this situation you may be able to enumerate all the things you can do relatively easily, but you need to creatively put those things together to achieve the goals. There may be multiple solutions, and none of them are really great, and hence such a document should focus on selecting the best way given all identified trade-offs.
104+
label: 'Degree of constraint'
105+
id: constrait
106+
type: textarea
107+
108+
- attributes:
109+
description: |
110+
This section lists alternative designs that would have reasonably achieved similar outcomes. The focus should be on the trade-offs that each respective design makes and how those trade-offs led to the decision to select the design that is the primary topic of the document.
111+
112+
While it is fine to be succinct about solution that ended up not being selected, this section is one of the most important ones as it shows very explicitly why the selected solution is the best given the project goals and how other solutions, that the reader may be wondering about, introduce trade-offs that are less desirable given the goals.
113+
114+
label: Alternatives considered
115+
id: alternatives
116+
type: textarea
+77
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
description:
2+
'Suggest an idea for this project without a plan for implementation'
3+
labels:
4+
- feat
5+
name: 'Feature Request'
6+
body:
7+
- attributes:
8+
value: |
9+
Thank you for suggesting an idea for this project!
10+
11+
If you already have a plan to implement a feature or a change, please create a [design document](https://github.com/aeneasr/gh-template-test/issues/new?assignees=&labels=rfc&template=DESIGN-DOC.yml) instead if the change is non-trivial!
12+
type: markdown
13+
- attributes:
14+
label: 'Preflight checklist'
15+
options:
16+
- label:
17+
'I could not find a solution in the existing issues, docs, nor
18+
discussions.'
19+
required: true
20+
- label:
21+
"I agree to follow this project's [Code of
22+
Conduct](https://github.com/ory/examples/blob/master/CODE_OF_CONDUCT.md)."
23+
required: true
24+
- label:
25+
"I have read and am following this repository's [Contribution
26+
Guidelines](https://github.com/ory/examples/blob/master/CONTRIBUTING.md)."
27+
required: true
28+
- label:
29+
'This issue affects my [Ory Cloud](https://www.ory.sh/) project.'
30+
- label:
31+
'I have joined the [Ory Community Slack](https://slack.ory.sh).'
32+
- label:
33+
'I am signed up to the [Ory Security Patch
34+
Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53).'
35+
id: checklist
36+
type: checkboxes
37+
- attributes:
38+
description:
39+
'Is your feature request related to a problem? Please describe.'
40+
label: 'Describe your problem'
41+
placeholder:
42+
"A clear and concise description of what the problem is. Ex. I'm always
43+
frustrated when [...]"
44+
id: problem
45+
type: textarea
46+
validations:
47+
required: true
48+
- attributes:
49+
description: |
50+
Describe the solution you'd like
51+
placeholder: |
52+
A clear and concise description of what you want to happen.
53+
label: 'Describe your ideal solution'
54+
id: solution
55+
type: textarea
56+
validations:
57+
required: true
58+
- attributes:
59+
description: "Describe alternatives you've considered"
60+
label: 'Workarounds or alternatives'
61+
id: alternatives
62+
type: textarea
63+
validations:
64+
required: true
65+
- attributes:
66+
description: 'What version of our software are you running?'
67+
label: Version
68+
id: version
69+
type: input
70+
validations:
71+
required: true
72+
- attributes:
73+
description:
74+
'Add any other context or screenshots about the feature request here.'
75+
label: Additional Context
76+
id: additional
77+
type: textarea

.github/ISSUE_TEMPLATE/config.yml

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Ory Examples Forum
4+
url: https://github.com/ory/examples/discussions
5+
about:
6+
Please ask and answer questions here, show your implementations and
7+
discuss ideas.
8+
- name: Ory Chat
9+
url: https://www.ory.sh/chat
10+
about:
11+
Hang out with other Ory community members to ask and answer questions.

.github/auto_assign.yml

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Set to true to add reviewers to pull requests
2+
addReviewers: true
3+
4+
# Set to true to add assignees to pull requests
5+
addAssignees: true
6+
7+
# A list of reviewers to be added to pull requests (GitHub user name)
8+
assignees:
9+
- ory/maintainers
10+
11+
# A number of reviewers added to the pull request
12+
# Set 0 to add all the reviewers (default: 0)
13+
numberOfReviewers: 0

.github/config.yml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
todo:
2+
keyword: '@todo'
3+
label: todo

.github/pull_request_template.md

+51
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
<!--
2+
Describe the big picture of your changes here to communicate to the maintainers why we should accept this pull request.
3+
4+
This text will be included in the changelog. If applicable, include links to documentation or pieces of code.
5+
If your change includes breaking changes please add a codeblock documenting the breaking change:
6+
7+
```
8+
BREAKING CHANGES: This patch changes the behavior of configuration item `foo` to do bar. To keep the existing
9+
behavior please do baz.
10+
```
11+
-->
12+
13+
## Related Issue or Design Document
14+
15+
<!--
16+
If this pull request
17+
18+
1. is a fix for a known bug, link the issue where the bug was reported in the format of `#1234`;
19+
2. is a fix for a previously unknown bug, explain the bug and how to reproduce it in this pull request;
20+
2. implements a new feature, link the issue containing the design document in the format of `#1234`;
21+
3. improves the documentation, no issue reference is required.
22+
23+
Pull requests introducing new features, which do not have a design document linked are more likely to be rejected and take on average 2-8 weeks longer to
24+
get merged.
25+
26+
You can discuss changes with maintainers either in the Github Discusssions in this repository or
27+
join the [Ory Chat](https://www.ory.sh/chat).
28+
-->
29+
30+
## Checklist
31+
32+
<!--
33+
Put an `x` in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of
34+
them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.
35+
-->
36+
37+
- [ ] I have read the [contributing guidelines](../blob/master/CONTRIBUTING.md) and signed the CLA.
38+
- [ ] I have referenced an issue containing the design document if my change introduces a new feature.
39+
- [ ] I have read the [security policy](../security/policy).
40+
- [ ] I confirm that this pull request does not address a security vulnerability. If this pull request addresses a security
41+
vulnerability, I confirm that I got green light (please contact [[email protected]](mailto:[email protected])) from the
42+
maintainers to push the changes.
43+
- [ ] I have added tests that prove my fix is effective or that my feature works.
44+
- [ ] I have added necessary documentation within the code base (if appropriate).
45+
46+
## Further comments
47+
48+
<!--
49+
If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution
50+
you did and what alternatives you considered, etc...
51+
-->

0 commit comments

Comments
 (0)