npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@gradle/semantic-release-plugin

v1.0.2

Published

Automated release management for Gradle project

Downloads

6

Readme

A semantic-release plugin for Gradle project

Yet another gradle-semantic-release-plugin that invokes Gradle wrapper script to release.

Build Status npm Commitizen friendly semantic-release

Precondition

To apply this semantic-release plugin, you need to fulfill the following preconditions:

  1. Your Gradle project should manage its version by gradle.properties (not by build.gradle nor build.gradle.kts).
  2. Your Gradle project should have an executable Gradle wrapper script at the project root directory.
  3. Your CI environment should run on Linux environment that can run ./gradlew.
  4. Your Gradle project should use Maven Publish Plugin or Legacy publishing to publish artifact.

Installation

Install semantic-release

Follow install guide and CI configuration guide described in the semantic-release official document.

To manage version of toolset, we recommend you to have a package.json in your project root directory. Manage both of semantic-release and its plugins as devDependencies.

It is also nice to have "semantic-release": "semantic-release" in "scripts" in package.json, then you can run yarn semantic-release to invoke semantic-release.

Refer this sample project as a working example.

Configure @semantic-release/git

This plugin updates gradle.properties to bump up project version, so it is recommended to let @semantic-release/git commits this file to Git. To realize this operation, you can configure your package.json like below:

  "release": {
    "plugins": [
      "gradle-semantic-release-plugin",
      [
        "@semantic-release/git",
        {
          "assets": [
            "gradle.properties"
          ]
        }
      ]
    ]
  },

Configure your CI

If your CI configuration is for java app development, then you may need to install node and yarn by your own. For Travis CI, it has nvm in the PATH so you can install them like below:

language: java
before_install: # or at the release stage described in the following part
  - nvm install 8
  - yarn install # or "npm ci"

Then trigger semantic-release at the release stage. For now the build stage is recommended over the travis-deploy-once:

jobs:
  include:
    - stage: release
      script: skip
      deploy:
        provider: script
        skip_cleanup: true
        script:
          - yarn semantic-release # or "npm run semantic-release"

FAQ

How it's different with the @tschulte/gradle-semantic-release-plugin?

That is a Gradle plugin implemented by Java. It can use Gradle's feature and ecosystem. However, it emulates semantic-release and cannot use other semantic-release plugin at the same time.

Our plugin is a semantic-release plugin. It can work with other plugin implemented on node.js, but it just invokes Gradle and cannot handle so complex requirements by own.

Copyright

Copyright (c) 2019 Kengo TODA