Skip to content

RFC: Powertools libraries naming convention #80

Closed
@saragerion

Description

@saragerion

Key information

  • RFC PR: (leave this empty)
  • Related issue(s), if known: n/a
  • Area: all
  • Meet tenets: Yes
  • Approved by:
  • Reviewed by:

Summary

The goal of this RFC is to have a unique, standardised and easy to understand naming convention for each Powertools library in all places, including across different languages.

Motivation

Currently, in our documentation the library is referred in different ways:

  • AWS Lambda Powertools (TypeScript)
  • Lambda Powertools TypeScript
  • AWS Lambda Powertools TypeScript
  • AWS Lambda Powertools for TypeScript

Screenshot 2022-02-14 at 12 16 03

Screenshot 2022-02-14 at 12 16 15

Screenshot 2022-02-14 at 12 17 08

Screenshot 2022-02-14 at 12 20 37.

TypeScript is used here as example, but the same applies to Python, Java, and other upcoming languages.

As the number of languages supported by the AWS Lambda Powertools grows, there is an opportunity to make the name of the project clearer and consistent among different languages/runtime.
The conversation among maintainers about the library's naming convention was generated by this comment in this HN thread.

Proposal

The library name of a specific language is "AWS Lambda Powertools for [Language]":

  • AWS Lambda Powertools for Python
  • AWS Lambda Powertools for Java
  • AWS Lambda Powertools for TypeScript

As consequence, all the versions below should be changed accordingly to the new one:

  • AWS Lambda Powertools (TypeScript)
  • Lambda Powertools TypeScript
  • AWS Lambda Powertools TypeScript

If this feature should be available in other runtimes (e.g. Java), how would this look like to ensure consistency?

User Experience

Customers should not be impacted as this does only affect the documentation.

Drawbacks

N/A

Rationale and alternatives

The maintainers have considered also these versions (TypeScript as example):

  • AWS Lambda Powertools TypeScript
  • AWS Lambda Powertools (TypeScript)
    But AWS Lambda Powertools for TypeScript was the winner.
  • What other designs have been considered? Why not them?
  • What is the impact of not doing this?

Unresolved questions

Impacted repositories

https://github.com/awslabs/aws-lambda-powertools-python
https://github.com/awslabs/aws-lambda-powertools-java
https://github.com/awslabs/aws-lambda-powertools-typescript
https://github.com/aws-samples/aws-lambda-powertools-examples

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions