From 9823a002f382b48536ffe29dc577ee356e640c6b Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Fri, 22 Mar 2024 14:31:46 +0100 Subject: [PATCH] Pekko becomes a TLP (#247) --- .../nightly-snapshot-dependency-test.yml | 2 +- .github/workflows/publish-1.0-docs.yml | 2 +- .github/workflows/publish-nightly.yml | 2 +- CHANGELOG.md | 2 +- CONTRIBUTING.md | 26 +++++++++---------- DISCLAIMER | 10 ------- NOTICE | 2 +- README.md | 2 +- build.sbt | 4 +-- docs/src/main/paradox/client/index.md | 2 +- docs/src/main/paradox/getting-started.md | 2 +- docs/src/main/paradox/release-notes/index.md | 6 ++--- docs/src/main/paradox/server/grpc-web.md | 2 +- docs/src/main/paradox/server/reflection.md | 2 +- gradle-plugin/build.gradle | 6 ++--- project/Common.scala | 8 +++--- project/MetaInfLicenseNoticeCopy.scala | 3 +-- project/VersionGenerator.scala | 2 +- project/project-info.conf | 6 ++--- scripts/link-validator.conf | 2 +- 20 files changed, 41 insertions(+), 52 deletions(-) delete mode 100644 DISCLAIMER diff --git a/.github/workflows/nightly-snapshot-dependency-test.yml b/.github/workflows/nightly-snapshot-dependency-test.yml index f7a11028a..2150d7d97 100644 --- a/.github/workflows/nightly-snapshot-dependency-test.yml +++ b/.github/workflows/nightly-snapshot-dependency-test.yml @@ -9,7 +9,7 @@ jobs: sbt: name: sbt test with pekko/pekko-main 1.1 snapshots runs-on: ubuntu-latest - if: github.repository == 'apache/incubator-pekko-grpc' + if: github.repository == 'apache/pekko-grpc' steps: - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/publish-1.0-docs.yml b/.github/workflows/publish-1.0-docs.yml index 24125468a..8881c4db9 100644 --- a/.github/workflows/publish-1.0-docs.yml +++ b/.github/workflows/publish-1.0-docs.yml @@ -7,7 +7,7 @@ jobs: publish-docs: name: sbt publish runs-on: ubuntu-latest - if: github.repository == 'apache/incubator-pekko-grpc' + if: github.repository == 'apache/pekko-grpc' steps: - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/publish-nightly.yml b/.github/workflows/publish-nightly.yml index 2cf56de30..9dc500713 100644 --- a/.github/workflows/publish-nightly.yml +++ b/.github/workflows/publish-nightly.yml @@ -9,7 +9,7 @@ jobs: sbt: name: sbt publish runs-on: ubuntu-latest - if: github.repository == 'apache/incubator-pekko-grpc' + if: github.repository == 'apache/pekko-grpc' steps: - name: Checkout uses: actions/checkout@v4 diff --git a/CHANGELOG.md b/CHANGELOG.md index 4c9faf82d..73a13b1b0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,4 +6,4 @@ The [Release Notes](https://pekko.apache.org/docs/pekko-grpc/current/release-not GitHub has a feature allowing you to compare 2 Git tags and see the PRs and overall code diff. You can take the example URL below and tweak it with the version tags that you want to compare. -https://github.com/apache/incubator-pekko-grpc/compare/v1.0.0...v1.0.1 +https://github.com/apache/pekko-grpc/compare/v1.0.0...v1.0.1 diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7ccc9da7d..5e9528847 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,9 +8,9 @@ You're always welcome to submit your PR straight away and start the discussion ( If you have questions about the contribution process or discuss specific issues, please interact with the community using the following resources. -- [GitHub discussions](https://github.com/apache/incubator-pekko-grpc/discussions): for questions and general discussion. +- [GitHub discussions](https://github.com/apache/pekko-grpc/discussions): for questions and general discussion. - [Pekko dev mailing list](https://lists.apache.org/list.html?dev@pekko.apache.org): for Pekko development discussions. -- [GitHub issues](https://github.com/apache/incubator-pekko-grpc/issues): for bug reports and feature requests. Please search the existing issues before creating new ones. If you are unsure whether you have found a bug, consider asking in GitHub discussions or the mailing list first. +- [GitHub issues](https://github.com/apache/pekko-grpc/issues): for bug reports and feature requests. Please search the existing issues before creating new ones. If you are unsure whether you have found a bug, consider asking in GitHub discussions or the mailing list first. # Navigating around the project & codebase @@ -25,13 +25,13 @@ Depending on which version (or sometimes module) you want to work on, you should In general *all issues are open for anyone working on them*, however if you're new to the project and looking for an issue that will be accepted and likely is a nice one to get started you should check out the following tags: -- [help wanted](https://github.com/apache/incubator-pekko-grpc/labels/help%20wanted) - which identifies issues that the core team will likely not have time to work on, or the issue is a nice entry level ticket. If you're not sure how to solve a ticket but would like to work on it feel free to ask in the issue about clarification or tips. -- [nice-to-have (low-priority)](https://github.com/apache/incubator-pekko-grpc/labels/nice-to-have%20%28low-prio%29) - are tasks which make sense, however are not very high priority (in face of other very high priority issues). If you see something interesting in this list, a contribution would be really wonderful! +- [help wanted](https://github.com/apache/pekko-grpc/labels/help%20wanted) - which identifies issues that the core team will likely not have time to work on, or the issue is a nice entry level ticket. If you're not sure how to solve a ticket but would like to work on it feel free to ask in the issue about clarification or tips. +- [nice-to-have (low-priority)](https://github.com/apache/pekko-grpc/labels/nice-to-have%20%28low-prio%29) - are tasks which make sense, however are not very high priority (in face of other very high priority issues). If you see something interesting in this list, a contribution would be really wonderful! Another group of special tags indicate specific states a ticket is in: -- [bug](https://github.com/apache/incubator-pekko-grpc/labels/bug) - bugs take priority in being fixed above features. The core team dedicates a number of days to working on bugs each sprint. Bugs which have reproducers are also great for community contributions as they're well isolated. Sometimes we're not as lucky to have reproducers though, then a bugfix should also include a test reproducing the original error along with the fix. -- [failed](https://github.com/apache/incubator-pekko-grpc/labels/failed) - tickets indicate a Jenkins failure (for example from a nightly build). These tickets usually start with the `FAILED: ...` message, and include a stacktrace + link to the Jenkins failure. The tickets are collected and worked on with priority to keep the build stable and healthy. Often times it may be simple timeout issues (Jenkins boxes are slow), though sometimes real bugs are discovered this way. +- [bug](https://github.com/apache/pekko-grpc/labels/bug) - bugs take priority in being fixed above features. The core team dedicates a number of days to working on bugs each sprint. Bugs which have reproducers are also great for community contributions as they're well isolated. Sometimes we're not as lucky to have reproducers though, then a bugfix should also include a test reproducing the original error along with the fix. +- [failed](https://github.com/apache/pekko-grpc/labels/failed) - tickets indicate a Jenkins failure (for example from a nightly build). These tickets usually start with the `FAILED: ...` message, and include a stacktrace + link to the Jenkins failure. The tickets are collected and worked on with priority to keep the build stable and healthy. Often times it may be simple timeout issues (Jenkins boxes are slow), though sometimes real bugs are discovered this way. Pull Request validation states: @@ -45,8 +45,8 @@ If you are running on JDK 8, you will need to use at least version 1.8.0u251 to # Pekko gRPC contributing guidelines -These guidelines apply to all Pekko projects, by which we mean both the `apache/incubator-pekko` repository, -as well as any plugins or additional repos located under the Apache Pekko GitHub organisation, e.g. `apache/incubator-pekko-grpc` and others. +These guidelines apply to all Pekko projects, by which we mean both the `apache/pekko` repository, +as well as any plugins or additional repos located under the Apache Pekko GitHub organisation, e.g. `apache/pekko-grpc` and others. These guidelines are meant to be a living document that should be changed and adapted as needed. We encourage changes that make it easier to achieve our goals in an efficient way. @@ -59,9 +59,9 @@ You can read its full text here: [ASF Code of Conduct](https://www.apache.org/fo The below steps are how to get a patch into a main development branch (e.g. `main`). The steps are exactly the same for everyone involved in the project (be it core team, or first time contributor). -1. To avoid duplicated effort, it might be good to check the [issue tracker](https://github.com/apache/incubator-pekko-grpc/issues) and [existing pull requests](https://github.com/apache/incubator-pekko-grpc/pulls) for existing work. - - If there is no ticket yet, feel free to [create one](https://github.com/apache/incubator-pekko-grpc/issues/new) to discuss the problem and the approach you want to take to solve it. -1. [Fork the project](https://github.com/apache/incubator-pekko-grpc#fork-destination-box) on GitHub. You'll need to create a feature-branch for your work on your fork, as this way you'll be able to submit a PullRequest against the mainline Pekko-gRPC. +1. To avoid duplicated effort, it might be good to check the [issue tracker](https://github.com/apache/pekko-grpc/issues) and [existing pull requests](https://github.com/apache/pekko-grpc/pulls) for existing work. + - If there is no ticket yet, feel free to [create one](https://github.com/apache/pekko-grpc/issues/new) to discuss the problem and the approach you want to take to solve it. +1. [Fork the project](https://github.com/apache/pekko-grpc#fork-destination-box) on GitHub. You'll need to create a feature-branch for your work on your fork, as this way you'll be able to submit a PullRequest against the mainline Pekko-gRPC. 1. Create a branch on your fork and work on the feature. For example: `git checkout -b wip-custom-headers-pekko-grpc` - Please make sure to follow the general quality guidelines (specified below) when developing your patch. - Please write additional tests covering your feature and adjust existing ones if needed before submitting your Pull Request. The `validatePullRequest` sbt task ([explained below](#the-validatepullrequest-task)) may come in handy to verify your changes are correct. @@ -268,7 +268,7 @@ There is a number of ways timeouts can be defined in Pekko tests. The following Special care should be given `expectNoMessage` calls, which indeed will wait the entire timeout before continuing, therefore a shorter timeout should be used in those, for example `200` or `300.millis`. -You can read up on remaining and friends in [TestKit.scala](https://github.com/apache/incubator-pekko/blob/main/testkit/src/main/scala/org/apache/pekko/testkit/TestKit.scala) +You can read up on remaining and friends in [TestKit.scala](https://github.com/apache/pekko/blob/main/testkit/src/main/scala/org/apache/pekko/testkit/TestKit.scala) # Supporting infrastructure @@ -279,5 +279,5 @@ pekko-grpc currently uses Github Actions for Continuous Integration. See the `Ch ## Related links * [Apache Contributor License Agreement](https://www.apache.org/licenses/contributor-agreements.html) -* [Pekko gRPC Issue Tracker](https://github.com/apache/incubator-pekko-grpc/issues) +* [Pekko gRPC Issue Tracker](https://github.com/apache/pekko-grpc/issues) * [Scalariform](https://github.com/daniel-trinh/scalariform) diff --git a/DISCLAIMER b/DISCLAIMER deleted file mode 100644 index 6a31e0f49..000000000 --- a/DISCLAIMER +++ /dev/null @@ -1,10 +0,0 @@ -Apache Pekko (incubating) is an effort undergoing incubation at the Apache -Software Foundation (ASF), sponsored by the Apache Incubator PMC. - -Incubation is required of all newly accepted projects until a further review -indicates that the infrastructure, communications, and decision making process -have stabilized in a manner consistent with other successful ASF projects. - -While incubation status is not necessarily a reflection of the completeness -or stability of the code, it does indicate that the project has yet to be -fully endorsed by the ASF. diff --git a/NOTICE b/NOTICE index 594a0e9be..ff07d8b15 100644 --- a/NOTICE +++ b/NOTICE @@ -1,4 +1,4 @@ -Apache Pekko (Incubating) gRPC +Apache Pekko gRPC Copyright 2022, 2023 The Apache Software Foundation This product includes software developed at diff --git a/README.md b/README.md index 870845f55..679986a83 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ See the note in the [Akka HTTP docs](https://doc.akka.io/docs/akka-http/10.1/ser ### Running the Build - Open a command window and change directory to your preferred base directory -- Use git to clone the [repo](https://github.com/apache/incubator-pekko-grpc) or download a source release from https://pekko.apache.org (and unzip or untar it, as appropriate) +- Use git to clone the [repo](https://github.com/apache/pekko-grpc) or download a source release from https://pekko.apache.org (and unzip or untar it, as appropriate) - Change directory to the directory where you installed the source (you should have a file called `build.sbt` in this directory) - `sbt compile` compiles the main source for project default version of Scala (2.12) - `sbt +compile` will compile for all supported versions of Scala diff --git a/build.sbt b/build.sbt index ddf6496f9..48d6463e6 100644 --- a/build.sbt +++ b/build.sbt @@ -19,7 +19,7 @@ import sbt.Keys.scalaVersion // pekkoInlineEnabled should be set to true when we start building 1.1.x builds ThisBuild / pekkoInlineEnabled := false sourceDistName := "apache-pekko-grpc" -sourceDistIncubating := true +sourceDistIncubating := false ThisBuild / versionScheme := Some(VersionScheme.SemVerSpec) ThisBuild / resolvers += Resolver.ApacheMavenStagingRepo @@ -224,7 +224,7 @@ lazy val docs = Project(id = "docs", base = file("docs")) .settings( name := s"$pekkoPrefix-docs", makeSite := makeSite.dependsOn(LocalRootProject / ScalaUnidoc / doc).value, - pekkoParadoxGithub := Some("https://github.com/apache/incubator-pekko-grpc"), + pekkoParadoxGithub := Some("https://github.com/apache/pekko-grpc"), previewPath := (Paradox / siteSubdirName).value, Preprocess / siteSubdirName := s"api/pekko-grpc/${projectInfoVersion.value}", Preprocess / sourceDirectory := (LocalRootProject / ScalaUnidoc / unidoc / target).value, diff --git a/docs/src/main/paradox/client/index.md b/docs/src/main/paradox/client/index.md index 7fccef56d..15540da00 100644 --- a/docs/src/main/paradox/client/index.md +++ b/docs/src/main/paradox/client/index.md @@ -1,6 +1,6 @@ # Consuming Services (Client) -See the Pekko gRPC Quickstart project (available for [Scala](https://github.com//apache/incubator-pekko-grpc-quickstart-scala.g8/) and [Java](https://github.com//apache/incubator-pekko-grpc-quickstart-java.g8/)) to get started quickly. +See the Pekko gRPC Quickstart project (available for [Scala](https://github.com//apache/pekko-grpc-quickstart-scala.g8/) and [Java](https://github.com//apache/pekko-grpc-quickstart-java.g8/)) to get started quickly. @@ toc diff --git a/docs/src/main/paradox/getting-started.md b/docs/src/main/paradox/getting-started.md index 0e1124d17..55c5b6709 100644 --- a/docs/src/main/paradox/getting-started.md +++ b/docs/src/main/paradox/getting-started.md @@ -2,7 +2,7 @@ ## Apache Pekko gRPC Quickstart -To try out Pekko gRPC and understand how the development process might work out, try the [Pekko gRPC Quickstart with Scala](https://github.com//apache/incubator-pekko-grpc-quickstart-scala.g8/) or the [Pekko gRPC Quickstart with Java](https://github.com//apache/incubator-pekko-grpc-quickstart-java.g8/). +To try out Pekko gRPC and understand how the development process might work out, try the [Pekko gRPC Quickstart with Scala](https://github.com//apache/pekko-grpc-quickstart-scala.g8/) or the [Pekko gRPC Quickstart with Java](https://github.com//apache/pekko-grpc-quickstart-java.g8/). ## Video Introduction diff --git a/docs/src/main/paradox/release-notes/index.md b/docs/src/main/paradox/release-notes/index.md index 6e855189c..b3191ab25 100644 --- a/docs/src/main/paradox/release-notes/index.md +++ b/docs/src/main/paradox/release-notes/index.md @@ -6,11 +6,11 @@ A minor bug fix and dependency change release. ### Bug Fixes -* Revert Netty SSL Context change that was added in akka-grpc 2.1.6 that broke the support for Netty with custom SSL Contexts ([PR200](https://github.com/apache/incubator-pekko-grpc/pull/200)) +* Revert Netty SSL Context change that was added in akka-grpc 2.1.6 that broke the support for Netty with custom SSL Contexts ([PR200](https://github.com/apache/pekko-grpc/pull/200)) ### Dependency Upgrades -* Use sbt-twirl from `org.playframework.twirl`, the new groupId for Play Twirl releases ([PR196](https://github.com/apache/incubator-pekko-grpc/pull/196)) +* Use sbt-twirl from `org.playframework.twirl`, the new groupId for Play Twirl releases ([PR196](https://github.com/apache/pekko-grpc/pull/196)) ## 1.0.1 @@ -19,7 +19,7 @@ there are security issues published for those versions. ### Additions -* Release Scala 2.13 and Scala 3 versions of pekko-grpc-codegen. This jar is used as a sbt plugin but it is useful to also support other Scala versions so other build frameworks can use use it ([`#180`](https://github.com/apache/incubator-pekko-grpc/issues/180)). +* Release Scala 2.13 and Scala 3 versions of pekko-grpc-codegen. This jar is used as a sbt plugin but it is useful to also support other Scala versions so other build frameworks can use use it ([`#180`](https://github.com/apache/pekko-grpc/issues/180)). ### Dependency Upgrades diff --git a/docs/src/main/paradox/server/grpc-web.md b/docs/src/main/paradox/server/grpc-web.md index 99c3477bc..f907fc74f 100644 --- a/docs/src/main/paradox/server/grpc-web.md +++ b/docs/src/main/paradox/server/grpc-web.md @@ -10,7 +10,7 @@ services generated with older versions of Pekko gRPC. There may be missing features and bugs in the current implementation. If you encounter any, you are welcome to share a reproducer in our -[issue tracker](https://github.com/apache/incubator-pekko-grpc/issues). +[issue tracker](https://github.com/apache/pekko-grpc/issues). @@@ diff --git a/docs/src/main/paradox/server/reflection.md b/docs/src/main/paradox/server/reflection.md index d869d919b..4de8fee60 100644 --- a/docs/src/main/paradox/server/reflection.md +++ b/docs/src/main/paradox/server/reflection.md @@ -12,7 +12,7 @@ services generated with older versions of Pekko gRPC. There may be missing features and bugs in the current implementation. If you encounter any, you are welcome to share a reproducer in our -[issue tracker](https://github.com/apache/incubator-pekko-grpc/issues). +[issue tracker](https://github.com/apache/pekko-grpc/issues). @@@ diff --git a/gradle-plugin/build.gradle b/gradle-plugin/build.gradle index 4946cfeda..612203454 100644 --- a/gradle-plugin/build.gradle +++ b/gradle-plugin/build.gradle @@ -60,13 +60,13 @@ publishing { developer { id = 'contributors' name = 'Contributors' - url = 'https://github.com/apache/incubator-pekko-grpc/graphs/contributors' + url = 'https://github.com/apache/pekko-grpc/graphs/contributors' email = 'dev@pekko.apache.org' } } scm { - connection = 'git@github.com:apache/incubator-pekko-grpc' - url = 'https://github.com/apache/incubator-pekko-grpc' + connection = 'git@github.com:apache/pekko-grpc' + url = 'https://github.com/apache/pekko-grpc' } } } diff --git a/project/Common.scala b/project/Common.scala index ea80c5113..0ef5a1f90 100644 --- a/project/Common.scala +++ b/project/Common.scala @@ -31,13 +31,13 @@ object Common extends AutoPlugin { override def globalSettings = Seq( homepage := Some(url("https://pekko.apache.org//")), - scmInfo := Some(ScmInfo(url("https://github.com/apache/incubator-pekko-grpc"), - "git@github.com:apache/incubator-pekko-grpc")), + scmInfo := Some(ScmInfo(url("https://github.com/apache/pekko-grpc"), + "git@github.com:apache/pekko-grpc")), developers += Developer( "contributors", "Contributors", "dev@pekko.apache.org", - url("https://github.com/apache/incubator-pekko-grpc/graphs/contributors")), + url("https://github.com/apache/pekko-grpc/graphs/contributors")), description := "Apache Pekko gRPC - Support for building streaming gRPC servers and clients on top of Pekko Streams.") override lazy val projectSettings = Seq( @@ -89,7 +89,7 @@ object Common extends AutoPlugin { (ThisBuild / baseDirectory).value.toString, "-doc-source-url", { val branch = if (isSnapshot.value) "main" else s"v${version.value}" - s"https://github.com/apache/incubator-pekko-grpc/tree/${branch}€{FILE_PATH_EXT}#L€{FILE_LINE}" + s"https://github.com/apache/pekko-grpc/tree/${branch}€{FILE_PATH_EXT}#L€{FILE_LINE}" }, "-doc-canonical-base-url", "https://pekko.apache.org/api/pekko-grpc/current/") ++ ( diff --git a/project/MetaInfLicenseNoticeCopy.scala b/project/MetaInfLicenseNoticeCopy.scala index b708f62bc..87da4be01 100644 --- a/project/MetaInfLicenseNoticeCopy.scala +++ b/project/MetaInfLicenseNoticeCopy.scala @@ -32,8 +32,7 @@ object MetaInfLicenseNoticeCopy extends AutoPlugin { override def requires = ApacheSonatypePlugin override lazy val projectSettings = Seq( - apacheSonatypeLicenseFile := baseDir.value / "legal" / "StandardLicense.txt", - apacheSonatypeDisclaimerFile := Some(baseDir.value / "DISCLAIMER")) + apacheSonatypeLicenseFile := baseDir.value / "legal" / "StandardLicense.txt") lazy val runtimeSettings = Seq( apacheSonatypeLicenseFile := baseDir.value / "legal" / "RuntimeLicense.txt") diff --git a/project/VersionGenerator.scala b/project/VersionGenerator.scala index 956459d88..e29be74d5 100644 --- a/project/VersionGenerator.scala +++ b/project/VersionGenerator.scala @@ -13,7 +13,7 @@ import sbt._ /** * Generate version.conf file based on the version setting. * - * This was adapted from https://github.com/apache/incubator-pekko/blob/main/project/VersionGenerator.scala + * This was adapted from https://github.com/apache/pekko/blob/main/project/VersionGenerator.scala */ object VersionGenerator { diff --git a/project/project-info.conf b/project/project-info.conf index bf1abb70d..9fb1f0c16 100644 --- a/project/project-info.conf +++ b/project/project-info.conf @@ -7,11 +7,11 @@ project-info { text: "Snapshots are available from Apache Snapshots Repository" } issues: { - url: "https://github.com/apache/incubator-pekko-grpc/issues" + url: "https://github.com/apache/pekko-grpc/issues" text: "GitHub issues" } release-notes: { - url: "https://github.com/apache/incubator-pekko-grpc/releases" + url: "https://github.com/apache/pekko-grpc/releases" text: "GitHub releases" } api-docs: [ @@ -31,7 +31,7 @@ project-info { } { text: "Github Discussions" - url: "https://github.com/apache/incubator-pekko-grpc/discussions" + url: "https://github.com/apache/pekko-grpc/discussions" } ] } diff --git a/scripts/link-validator.conf b/scripts/link-validator.conf index 728b24e47..63fa6b8fa 100644 --- a/scripts/link-validator.conf +++ b/scripts/link-validator.conf @@ -19,7 +19,7 @@ site-link-validator { ignore-prefixes = [ # GitHub will block with "429 Too Many Requests" - "https://github.com/apache/incubator-pekko-grpc/" + "https://github.com/apache/pekko-grpc/" # MVN repository forbids access after a few requests "https://mvnrepository.com/artifact/" # Github links generated by sbt-license-report