Skip to content

Commit

Permalink
Merge pull request #291 from aws-powertools/doc-updates-roadmap
Browse files Browse the repository at this point in the history
docs: Update roadmap and maintainers
  • Loading branch information
sliedig authored Jun 18, 2023
2 parents 95d604e + 9e4c439 commit ca2af73
Show file tree
Hide file tree
Showing 6 changed files with 101 additions and 18 deletions.
3 changes: 3 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners

* @awslabs/aws-lambda-powertools-net
4 changes: 2 additions & 2 deletions .github/auto_assign.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
addReviewers: true

# Set to true to add assignees to pull requests
addAssignees: true
#addAssignees: true

# A list of reviewers to be added to pull requests (GitHub user name)
reviewers:
Expand All @@ -12,7 +12,7 @@ reviewers:

# A number of reviewers added to the pull request
# Set 0 to add all the reviewers (default: 0)
numberOfReviewers: 1
numberOfReviewers: 0


# A number of assignees to add to the pull request
Expand Down
39 changes: 30 additions & 9 deletions .github/boring-cyborg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,27 +3,43 @@ labelPRBasedOnFilePath:
area/common:
- libraries/src/AWS.Lambda.Powertools.Common/*
- libraries/src/AWS.Lambda.Powertools.Common/**/*
area/logger:
area/logging:
- libraries/src/AWS.Lambda.Powertools.Logging/*
- libraries/src/AWS.Lambda.Powertools.Logging/**/*
area/tracer:
- libraries/src/AWS.Lambda.Powertools.Tracing/*
- libraries/src/AWS.Lambda.Powertools.Tracing/**/*
area/metrics:
- libraries/src/AWS.Lambda.Powertools.Metrics/*
- libraries/src/AWS.Lambda.Powertools.Metrics/**/*
area/tracer:
area/tracing:
- libraries/src/AWS.Lambda.Powertools.Tracing/*
- libraries/src/AWS.Lambda.Powertools.Tracing/**/*
area/metrics:
- libraries/src/AWS.Lambda.Powertools.Metrics/*
- libraries/src/AWS.Lambda.Powertools.Metrics/**/*
area/parameters:
- libraries/src/AWS.Lambda.Powertools.Parameters/*
- libraries/src/AWS.Lambda.Powertools.Parameters/**/*
area/Idempotency:
- libraries/src/AWS.Lambda.Powertools.Idempotency/*
- libraries/src/AWS.Lambda.Powertools.Idempotency/**/*

documentation:
- docs/*
- docs/**/*
- mkdocs.yml

github-actions:
- .github/workflows/*
- .github/workflows/**/*
- .github/dependabot.yml
- .github/boring-cyborg.yml
- .github/release-drafter.yml
- .github/semantic.yml
- .github/stale.yml
- .github/mergify.yml

github-templates:
- .github/ISSUE_TEMPLATE/*
- .github/PULL_REQUEST_TEMPLATE.md
- .github/.chglog/*
- .github/.chglog/**/*

internal:
- .github/*
- .github/**/*
Expand All @@ -35,6 +51,7 @@ labelPRBasedOnFilePath:
- CONTRIBUTING.md
- CODE_OF_CONDUCT.md
- LICENSE
- MAINTAINERS.md

tests:
- libraries/tests/*
Expand All @@ -45,10 +62,14 @@ labelPRBasedOnFilePath:
firstPRWelcomeComment: >
Thanks a lot for your first contribution! Please check out our contributing guidelines and don't hesitate to ask whatever you need.
In the meantime, check out the #python channel on our Powertools for AWS Lambda Discord: [Invite link](https://discord.gg/B8zZKbbyET)
# Comment to be posted to congratulate user on their first merged PR
firstPRMergeComment: >
Awesome work, congrats on your first merged pull request and thank you for helping improve everyone's experience!
# Comment to be posted to on first time issues
firstIssueWelcomeComment: >
Thanks for opening your first issue here! We'll come back to you as soon as we can.
Thanks for opening your first issue here! We'll come back to you as soon as we can.
In the meantime, check out the #python channel on our Powertools for AWS Lambda Discord: [Invite link](https://discord.gg/B8zZKbbyET)
7 changes: 5 additions & 2 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,17 @@ categories:
labels:
- 'internal'
- 'dependencies'
- 'chore'
exclude-labels:
- 'skip-changelog'
tag-template: 'v$NEXT_PATCH_VERSION'
tag-template: '$NEXT_PATCH_VERSION'
template: |
## Changes
## Summary
**[Human readable summary of changes]**
## Changes
$CHANGES
## This release was made possible by the following contributors:
Expand Down
1 change: 1 addition & 0 deletions MAINTAINERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ This is document explains who the maintainers are (see below), what they do in t
| ----------------- | --------------------------------------------- | ----------- |
| Stephen Liedig | [sliedig](https://github.com/sliedig) | Amazon |
| Amir Khairalomoum | [amirkaws](https://github.com/amirkaws) | Amazon |
| Henrique Graca | [hjgraca](https://github.com/hjgraca) | Amazon |

## Emeritus

Expand Down
65 changes: 60 additions & 5 deletions docs/roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,72 @@

This is our public roadmap that outlines the high level direction we are working towards, namely [Themes](#themes). We update this document when our priorities change: security and stability is our top priority.

[See our latest list of activities »](https://github.com/orgs/awslabs/projects/56/views/1?query=is%3Aopen+sort%3Aupdated-desc){target="_blank"}
[See our latest list of activities »](https://github.com/orgs/awslabs/projects/105/views/4?query=is%3Aopen+sort%3Aupdated-desc){target="_blank"}

## Themes

Themes are key activities maintainers are focusing on, besides bug reports. These are updated periodically and you can find the latest [under Epics in our public board](https://github.com/orgs/awslabs/projects/51/views/11?query=is%3Aopen+sort%3Aupdated-desc){target="_blank"}.
!!! info "Operational Excellence is priority number 1."

### Revamp roadmap
Themes are key activities maintainers are focusing on, besides bug reports. These are updated periodically and you can get an idea of the overall progress in the [Milestones section](https://github.com/awslabs/aws-lambda-powertools-dotnet/milestones){target="_blank"}.

We are beta testing the [new GitHub Projects Beta](https://github.com/orgs/awslabs/projects/56/views/1?query=is%3Aopen+sort%3Aupdated-desc){target="_blank"} to provide more visibility on our current activities. This also includes new GitHub Issue Forms Beta to streamline feature requests, bug reports, RFCs, etc., including a new mechanism to add external links like `Ask a Question`.
### New utilities

Once complete, we will repurpose our [central roadmap repository](https://github.com/awslabs/aws-lambda-powertools-roadmap){target="_blank"} to provide a landing page for all Powertools for AWS Lambda languages, including an experiment to better highlight feature parity across them.
After going GA, we want to start working on new utilities, specifically but not limited to the most commonly asked: **(1)** [Idempotency](https://github.com/awslabs/aws-lambda-powertools-dotnet/issues/164), **(2)** [Parameters](https://github.com/awslabs/aws-lambda-powertools-dotnet/issues/160) and **(3)** [Batch](https://github.com/awslabs/aws-lambda-powertools-dotnet/issues/168).

### Improve operational excellence

We continue to work on increasing operational excellence to remove as much undifferentiated heavylifting for maintainers, so that we can focus on delivering features that help you.

This means improving our automation workflows, and project management, and test coverage.

## Roadmap status definition

<center>
```mermaid
graph LR
Ideas --> Backlog --> Work["Working on it"] --> Merged["Coming soon"] --> Shipped
```
<i>Visual representation</i>
</center>

Within our [public board](https://github.com/orgs/awslabs/projects/105/views/3?query=is%3Aopen+sort%3Aupdated-desc){target="_blank"}, you'll see the following values in the `Status` column:

* **Ideas**. Incoming and existing feature requests that are not being actively considered yet. These will be reviewed when bandwidth permits and based on demand.
* **Backlog**. Accepted feature requests or enhancements that we want to work on.
* **Working on it**. Features or enhancements we're currently either researching or implementing it.
* **Coming soon**. Any feature, enhancement, or bug fixes that have been merged and are coming in the next release.
* **Shipped**. Features or enhancements that are now available in the most recent release.
* **On hold**. Features or items that are currently blocked until further notice.
* **Pending review**. Features which implementation is mostly completed, but need review and some additional iterations.

> Tasks or issues with empty `Status` will be categorized in upcoming review cycles.
## Process

<center>
```mermaid
graph LR
PFR[Feature request] --> Triage{Need RFC?}
Triage --> |Complex/major change or new utility?| RFC[Ask or write RFC] --> Approval{Approved?}
Triage --> |Minor feature or enhancement?| NoRFC[No RFC required] --> Approval
Approval --> |Yes| Backlog
Approval --> |No | Reject["Inform next steps"]
Backlog --> |Prioritized| Implementation
Backlog --> |Defer| WelcomeContributions["help-wanted label"]
```
<i>Visual representation</i>
</center>

Our end-to-end mechanism follows four major steps:

* **Feature Request**. Ideas start with a [feature request](https://github.com/awslabs/aws-lambda-powertools-dotnet/issues/new?assignees=&labels=feature-request%2Ctriage&projects=&template=feature_request.yml&title=Feature+request%3A+TITLE){target="_blank"} to outline their use case at a high level. For complex use cases, maintainers might ask for/write a RFC.
* Maintainers review requests based on [project tenets](index.md#tenets){target="_blank"}, customers reaction (👍), and use cases.
* **Request-for-comments (RFC)**. Design proposals use our [RFC issue template](https://github.com/awslabs/aws-lambda-powertools-dotnet/issues/new?assignees=&labels=RFC%2Ctriage&projects=&template=rfc.yml&title=RFC%3A+TITLE){target="_blank"} to describe its implementation, challenges, developer experience, dependencies, and alternative solutions.
* This helps refine the initial idea with community feedback before a decision is made.
* **Decision**. After carefully reviewing and discussing them, maintainers make a final decision on whether to start implementation, defer or reject it, and update everyone with the next steps.
* **Implementation**. For approved features, maintainers give priority to the original authors for implementation unless it is a sensitive task that is best handled by maintainers.

??? info "See [Maintainers](https://github.com/awslabs/aws-lambda-powertools-dotnet/blob/develop/MAINTAINERS.md) document to understand how we triage issues and pull requests, labels and governance."

## Disclaimer

Expand Down

0 comments on commit ca2af73

Please sign in to comment.