1. 12 5月, 2021 1 次提交
  2. 30 3月, 2021 1 次提交
    • I
      MINOR: Self-managed -> KRaft (Kafka Raft) (#10414) · 16b2d4f3
      Ismael Juma 提交于
      `Self-managed` is also used in the context of Cloud vs on-prem and it can
      be confusing.
      
      `KRaft` is a cute combination of `Kafka Raft` and it's pronounced like `craft`
      (as in `craftsmanship`).
      
      Reviewers: Colin P. McCabe <cmccabe@apache.org>, Jose Sancio <jsancio@gmail.com>, Chia-Ping Tsai <chia7712@gmail.com>, Ron Dagostino <rdagostino@confluent.io>
      16b2d4f3
  3. 20 3月, 2021 1 次提交
    • I
      MINOR: Use self-managed mode instead of KIP-500 and nozk (#10362) · 7c7e8078
      Ismael Juma 提交于
      KIP-500 is not particularly descriptive. I also tweaked the readme text a bit.
      
      Tested that the readme for self-managed still works after these changes.
      
      Reviewers: Colin P. McCabe <cmccabe@apache.org>, Ron Dagostino <rdagostino@confluent.io>, Jason Gustafson <jason@confluent.io>
      7c7e8078
  4. 05 3月, 2021 1 次提交
    • I
      KAFKA-12415 Prepare for Gradle 7.0 and restrict transitive scope for non api dependencies (#10203) · 7a3ebbeb
      Ismael Juma 提交于
      Gradle 7.0 is required for Java 16 compatibility and it removes a number of
      deprecated APIs. Fix most issues preventing the upgrade to Gradle 7.0.
      The remaining ones are more complicated and should be handled
      in a separate PR. Details of the changes:
      
      * Release tarball no longer includes includes test, sources, javadoc and test sources jars (these
      are still published to the Maven Central repository).
      * Replace `compile` with `api` or `implementation` - note that `implementation`
      dependencies appear with `runtime` scope in the pom file so this is a (positive)
      change in behavior
      * Add missing dependencies that were uncovered by the usage of `implementation`
      * Replace `testCompile` with `testImplementation`
      * Replace `runtime` with `runtimeOnly` and `testRuntime` with `testRuntimeOnly`
      * Replace `configurations.runtime` with `configurations.runtimeClasspath`
      * Replace `configurations.testRuntime` with `configurations.testRuntimeClasspath` (except for
      the usage in the `streams` project as that causes a cyclic dependency error)
      * Use `java-library` plugin instead of `java`
      * Use `maven-publish` plugin instead of deprecated `maven` plugin - this changes the
      commands used to publish and to install locally, but task aliases for `install` and
      `uploadArchives` were added for backwards compatibility
      * Removed `-x signArchives` line from the readme since it was wrong (it was a
      no-op before and it fails now, however)
      * Replaces `artifacts` block with an approach that works with the `maven-publish` plugin
      * Don't publish `jmh-benchmark` module - the shadow jar is pretty large and not
      particularly useful (before this PR, we would publish the non shadow jars)
      * Replace `version` with `archiveVersion`, `baseName` with `archiveBaseName` and
      `classifier` with `archiveClassifier`
      * Update Gradle and plugins to the latest stable version (7.0 is not stable yet)
      * Use `plugin` DSL to configure plugins
      * Updated notable changes for 3.0
      
      Reviewers: Chia-Ping Tsai <chia7712@gmail.com>, Randall Hauch <rhauch@gmail.com>
      7a3ebbeb
  5. 23 2月, 2021 1 次提交
    • I
      KAFKA-12357: Do not inline methods from the scala package by default (#10174) · b5265e98
      Ismael Juma 提交于
      As mentioned in #9548, users currently use the kafka jar (`core` module)
      for integration testing and the current inlining behavior causes
      problems when the user's classpath contains a different Scala version
      than the one that was used for compilation (e.g. 2.13.4 versus 2.13.3).
      
      An example error:
      
      `java.lang.NoClassDefFoundError: scala/math/Ordering$$anon$7`
      
      We now disable inlining of the `scala` package by default, but make it
      easy to enable it for those who so desire (a good option if you can
      ensure the scala library version matches the one used for compilation).
      While at it, we make it possible to disable scala compiler optimizations
      (`none`) or to use only method local optimizations (`method`). This can
      be useful if optimizing for compilation time during development.
      
      Verified behavior by running gradlew with `--debug` and checking the
      output after `[zinc] The Scala compiler is invoked with:`
      
      Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
      b5265e98
  6. 11 12月, 2020 1 次提交
  7. 21 9月, 2020 1 次提交
    • I
      MINOR: Replace Java 14 with Java 15 in the README (#9298) · aa0cd667
      Ismael Juma 提交于
      We have been testing with the Java 15 release candidate for a few weeks and
      it has now been declared final.
      
      Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>, David Jacot <djacot@confluent.io>, Lee Dongjin <dongjin@apache.org>
      aa0cd667
  8. 08 9月, 2020 1 次提交
  9. 02 9月, 2020 1 次提交
  10. 12 8月, 2020 1 次提交
  11. 25 7月, 2020 1 次提交
  12. 19 6月, 2020 1 次提交
    • I
      MINOR: Reduce build time by gating test coverage plugins behind a flag (#8899) · 5ecd094b
      Ismael Juma 提交于
      Most builds don't require test coverage output, so it's wasteful
      to spend cycles tracking coverage information for each method
      invoked.
      
      I ran a quick test in a fast desktop machine, the absolute
      difference will be larger in a slower machine. The tests were
      executed after `./gradlew clean` and with a gradle daemon
      that was started just before the test (and mildly warmed up
      by running `./gradlew clean` again).
      
      `./gradlew unitTest --continue --profile`:
      * With coverage enabled: 6m32s
      * With coverage disabled: 5m47s
      
      I ran the same test twice and the results were within 2s of
      each other, so reasonably consistent.
      
      16% reduction in the time taken to run the unit tests is a
      reasonable gain with little downside, so I think this is a
      good change.
      
      Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>
      5ecd094b
  13. 06 5月, 2020 1 次提交
  14. 23 4月, 2020 1 次提交
    • I
      KAFKA-9907: Switch default build to Scala 2.13 (#8537) · dbe618c6
      Ismael Juma 提交于
      Scala 2.13.2 introduces support for suppressing warnings,
      which makes it possible to enable fatal warnings. This is
      useful enough from a development perspective to justify
      this change.
      
      In addition, Scala 2.13.2 also has a Vector implementation
      with significant performance improvements and encoding
      of String matches to switches.
      
      Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>
      dbe618c6
  15. 20 4月, 2020 1 次提交
    • I
      MINOR: Update to Gradle 6.3 (#7677) · d6da0452
      Ismael Juma 提交于
      * Introduce `gradlewAll` script to replace `*All` tasks since the approach
      used by the latter doesn't work since Gradle 6.0 and it's unclear when,
      if ever, it will work again ( see https://github.com/gradle/gradle/issues/11301).
      * Update release script and README given the above.
      * Update zinc to 1.3.5.
      * Update gradle-versions-plugin to 0.28.0.
      
      The major improvements in Gradle 6.0 to 6.3 are:
      - Improved incremental compilation for Scala
      - Support for Java 14 (although some Gradle plugins
      like spotBugs may need to be updated or disabled,
      will do that separately)
      - Improved scalac reporting, warnings are clearly
      marked as such, which is very helpful.
      
      Tested `gradlewAll` manually for the commands listed in the README
      and release script. For `uploadArchive`, I tested it with a local Maven
      repository.
      
      Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>
      d6da0452
  16. 16 4月, 2020 1 次提交
  17. 06 2月, 2020 1 次提交
  18. 07 1月, 2020 1 次提交
    • I
      KAFKA-9324: Drop support for Scala 2.11 (KIP-531) (#7859) · 6dc6f6a6
      Ismael Juma 提交于
      * Adjust build and documentation.
      * Use lambda syntax for SAM types in `core`, `streams-scala` and
      `connect-runtime` modules.
      * Remove `runnable` and `newThread` from `CoreUtils` as lambda
      syntax for SAM types make them unnecessary.
      * Remove stale comment in `FunctionsCompatConversions`,
      `KGroupedStream`, `KGroupedTable' and `KStream` about Scala 2.11,
      the conversions are needed for Scala 2.12 too.
      * Deprecate `org.apache.kafka.streams.scala.kstream.Suppressed`
      and use `org.apache.kafka.streams.kstream.Suppressed` instead.
      * Use `Admin.create` instead of `AdminClient.create`. Static methods
      in Java interfaces can be invoked since Scala 2.12. I noticed that
      MirrorMaker 2 uses `AdminClient.create`, but I did not change them
      as Connectors have restrictions on newer client APIs.
      * Improve efficiency in a few `Gauge` implementations by avoiding
      unnecessary intermediate collections.
      * Remove pointless `Option.apply` in `ZookeeperClient`
      `SessionState` metric.
      * Fix unused import/variable and other compiler warnings.
      * Reduce visibility of some vals/defs.
      
      Reviewers: Manikumar Reddy <manikumar@confluent.io>, Guozhang Wang <wangguoz@gmail.com>, Gwen Shapira <gwen@confluent.io>
      6dc6f6a6
  19. 18 12月, 2019 1 次提交
  20. 22 11月, 2019 1 次提交
    • G
      KAFKA-1714: Fix gradle wrapper bootstrapping (#6031) · 09f700ab
      Grant Henke 提交于
      Given we need to follow the Apache rule of not checking
      any binaries into the source code, Kafka has always had
      a bit of a tricky Gradle bootstrap.
      Using ./gradlew as users expect doesn’t work and a
      local and compatible version of Gradle was required to
      generate the wrapper first.
      
      This patch changes the behavior of the wrapper task to
      instead generate a gradlew script that can bootstrap the
      jar itself. Additionally it adds a license, removes the bat
      script, and handles retries.
      
      The documentation in the readme was also updated.
      
      Going forward patches that upgrade gradle should run
      `gradle wrapper` before checking in the change.
      
      With this change users using ./gradlew can be sure they
      are always building with the correct version of Gradle.
      
      Reviewers: Viktor Somogyi <viktorsomogyi@gmail.com>, Ismael Juma <ismael@juma.me.uk
      09f700ab
  21. 16 11月, 2019 1 次提交
  22. 23 6月, 2019 1 次提交
    • D
      KAFKA-7197: Support Scala 2.13 (#5454) · 5339d2df
      Dejan Stojadinović 提交于
      - include Scala 2.13 in gradle build
      - handle future milestone and RC versions of Scala in a better way
      - if no Scala version is specified, default to scala 2.12 (bump from 2.11)
      - include certain Xlint options (removed by Scala 2.13) for Scala 2.11/2.12 build only
      - upgrade versions for dependencies: 
        - scalaLogging: 3.9.0 -->> 3.9.2
        - scalatest:        3.0.7 -->> 3.0.8
        - scoverage:       1.3.1 -->> 1.4.0
      
      Reviewers: Ewen Cheslack-Postava <me@ewencp.org>, Ismael Juma <ismael@juma.me.uk>
      5339d2df
  23. 14 6月, 2019 1 次提交
  24. 23 4月, 2019 1 次提交
    • I
      MINOR: Use https instead of http in links (#6477) · 7d9e93ac
      Ismael Juma 提交于
      Verified that the https links work.
      
      I didn't update the license header in this PR since that touches
      so many files. Will file a separate one for that.
      
      Reviewers: Manikumar Reddy <manikumar.reddy@gmail.com>
      7d9e93ac
  25. 18 12月, 2018 1 次提交
  26. 30 11月, 2018 1 次提交
    • C
      MINOR: Bump Gradle version to 5.0 (#5964) · 4a0fd4c4
      Colin Hicks 提交于
      Gradle 5.0 was released on 26 November. See the release notes for enhancements and fixes: https://docs.gradle.org/5.0/release-notes.html.
      
      A notable bugfix ensures that Javadoc artifacts are cleaned between builds.
      
      The upgraded wrapper was spot-checked against the commands in the README and the
      README was updated not to use removed system property `-Dtest.single`.
      
      Reviewers: Ismael Juma <ismael@juma.me.uk>
      4a0fd4c4
  27. 29 10月, 2018 1 次提交
    • I
      KAFKA-7524: Recommend Scala 2.12 and use it for development (#5530) · b4722cc1
      Ismael Juma 提交于
      Scala 2.12 has better support for newer Java versions and includes additional
      compiler warnings that are helpful during development. In addition, Scala 2.11
      hasn't been supported by the Scala community for a long time, the soon to be
      released Spark 2.4.0 will finally support Scala 2.12 (this was the main reason
      preventing many from upgrading to Scala 2.12) and Scala 2.13 is at the RC stage.
      It's time to start recommending the Scala 2.12 build as we prepare support for
      Scala 2.13 and start thinking about removing support for Scala 2.11.
      
      In the meantime, Jenkins will continue to build all supported Scala versions (including
      Scala 2.11) so the PR and trunk jobs will fail if people accidentally use methods
      introduced in Scala 2.12.
      
      Reviewers: Ewen Cheslack-Postava <me@ewencp.org>
      b4722cc1
  28. 13 9月, 2018 1 次提交
  29. 11 9月, 2018 1 次提交
    • I
      KAFKA-5887; Replace findBugs with spotBugs and upgrade to Gradle 4.10 · f123d2f1
      Ismael Juma 提交于
      findBugs is abandoned, it doesn't work with Java 9 and the Gradle plugin will be deprecated in
      Gradle 5.0: https://github.com/gradle/gradle/pull/6664
      
      spotBugs is actively maintained and it supports Java 8, 9 and 10. Java 11 is not supported yet,
      but it's likely to happen soon.
      
      Also fixed a file leak in Connect identified by spotbugs.
      
      Manually tested spotBugsMain, jarAll and importing kafka in IntelliJ and running
      a build in the IDE.
      
      Author: Ismael Juma <ismael@juma.me.uk>
      
      Reviewers: Colin Patrick McCabe <colin@cmccabe.xyz>, Dong Lin <lindong28@gmail.com>
      
      Closes #5625 from ijuma/kafka-5887-spotbugs
      f123d2f1
  30. 04 9月, 2018 1 次提交
  31. 22 5月, 2018 1 次提交
    • I
      KAFKA-4423: Drop support for Java 7 (KIP-118) and update deps (#5046) · e70a191d
      Ismael Juma 提交于
      * Set --source, --target and --release to 1.8.
      * Build Scala 2.12 by default.
      * Remove some conditionals in the build file now that Java 8
      is the minimum version.
      * Bump the version of Jetty, Jersey and Checkstyle (the newer
      versions require Java 8).
      * Fixed issues uncovered by the new version if Checkstyle.
      * A couple of minor updates to handle an incompatible source
      change in the new version of Jetty.
      * Add dependency to jersey-hk2 to fix failing tests caused
      by Jersey upgrade.
      * Update release script to use Java 8 and to take into account
      that Scala 2.12 is now built by default.
      * While we're at it, bump the version of Gradle, Gradle plugins,
      ScalaLogging, JMH and apache directory api.
      * Minor documentation updates including the readme and upgrade
      notes. A number of Streams Java 7 examples can be removed
      subsequently.
      e70a191d
  32. 22 12月, 2017 1 次提交
  33. 10 11月, 2017 1 次提交
    • I
      MINOR: Update to Scala 2.11.12 (part 2) · 3e86161b
      Ismael Juma 提交于
      Missed a few places in the previous commit.
      
      Author: Ismael Juma <ismael@juma.me.uk>
      
      Reviewers: Rajini Sivaram <rajinisivaram@googlemail.com>
      
      Closes #4200 from ijuma/scala-2.11.12-part2
      3e86161b
  34. 12 8月, 2017 1 次提交
    • G
      KAFKA-5727: Add Streams quickstart tutorial as an archetype project · d2774e30
      Guozhang Wang 提交于
      0. Minor fixes on the existing examples to merge all on a single input topic; also do not use `common.utils.Exit` as it is for internal usage only.
      
      1. Add the archetype project for the quickstart. Steps to try it out:
      
        a. `mvn install` on the quickstart directory.
        b. `mvn archetype:generate \
      -DarchetypeGroupId=org.apache.kafka \
      -DarchetypeArtifactId=streams-quickstart-java \
      -DarchetypeVersion=1.0.0-SNAPSHOT \
      -DgroupId=streams-quickstart \
      -DartifactId=streams-quickstart \
      -Dversion=0.1 \
      -Dpackage=StreamsQuickstart \
      -DinteractiveMode=false` at any directory to create the project.
        c. build the streams jar with version `1.0.0-SNAPSHOT` to local maven repository with `./gradlew installAll`; `cd streams-quickstart; mvn clean package`
        d. create the input / output topics, start the console producer and consumer.
        e. start the program: `mvn exec:java -Dexec.mainClass=StreamsQuickstart.Pipe/LineSplit/WordCount`.
        f. type data on console producer and observe data on console consumer.
      
      Author: Guozhang Wang <wangguoz@gmail.com>
      
      Reviewers: Damian Guy <damian.guy@gmail.com>, Bill Bejeck <bbejeck@gmail.com>, Ewen Cheslack-Postava <me@ewencp.org>, Eno Thereska <eno.thereska@gmail.com>
      
      Closes #3630 from guozhangwang/KMinor-streams-quickstart-tutorial
      d2774e30
  35. 04 8月, 2017 1 次提交
    • M
      MINOR: Use commitId property if set · 613971f8
      Max Zheng 提交于
      This allows a build system to set the correct commit ID when .git/HEAD would be wrong
      if there are local commits for build purposes.
      
      Author: Max Zheng <mzheng@confluent.io>
      
      Reviewers: Ismael Juma <ismael@juma.me.uk>, Ewen Cheslack-Postava <ewen@confluent.io>
      
      Closes #3606 from maxzheng/read-commit@trunk
      613971f8
  36. 11 5月, 2017 1 次提交
  37. 21 4月, 2017 1 次提交
  38. 21 3月, 2017 1 次提交
  39. 01 3月, 2017 1 次提交
  40. 11 2月, 2017 1 次提交