Coder Social home page Coder Social logo

jreleaser.github.io's People

Contributors

aalmiray avatar andreabettich avatar anyulled avatar brunoborges avatar crschnick avatar dennisrippinger avatar derkrischan avatar diakogiannis avatar github-actions[bot] avatar gsmet avatar gunnarmorling avatar helpermethod avatar jagedn avatar joschi avatar jreleaserbot avatar jvalkeal avatar klausbrunner avatar manikmagar avatar maxandersen avatar mcollovati avatar michael-simons avatar mikemybytes avatar mthmulders avatar nandorholozsnyak avatar quintesse avatar shblue21 avatar sircremefresh avatar sironheart avatar spaletta avatar tomcools avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

jreleaser.github.io's Issues

[doc] GitHub repositories with insufficient permissions prevent releases

New GitHub repositories start with insufficient access rights for jreleaser release to GitHub releases command.

The error message does look like:

[INFO]  Releasing to https://github.com/ORG/REPO
[INFO]  Writing output properties to out/jreleaser/output.properties
Error:  JReleaser failed after 2.541 s
Unexpected error when creating release
jreleaser.shadow.org.kohsuke.github.HttpException: {"message":"Resource not accessible by integration","documentation_url":"https://docs.github.com/rest/releases/releases#create-a-release"}
Error: Process completed with exit code 1.

Or like this:

[INFO]  Releasing to https://github.com/ORG/REPO
[INFO]  Writing output properties to out/jreleaser/output.properties
Error:  JReleaser failed after 2.541 s
Unexpected error when creating release
jreleaser.shadow.org.kohsuke.github.HttpException: {"message":"Resource not accessible by integration","documentation_url":"https://docs.github.com/rest/reference/repos#delete-a-release"}
Error: Process completed with exit code 1.

Switching to "Read and write permissions" in "Settings - Actions - General" helps:
image

Document more about "AutoConfig Release"

I found there is a jreleaser:auto-config-release maven task but could not find detailed documentation about what the "auto-config" means.

In the JReleaser CLI page release section, it describes:

There are two usage modes:
auto config
with explicit configuration file

Based on this description, I imagine "auto config release" automatically come up with configurations based on the current arrangement without explicit config files.
Just my guess :)

Would be nice to have more callouts about "Auto config release", so that users would not wonder about "auto config release" task in maven and gradle.

In addition, I typed "auto config" on the search box on the documentation, and the "Auto Config Release" search result jumps to this url - https://jreleaser.org/guide/latest/examples/auto-config-release.html - which gives Page Not Found.

image

[docs] Document trace.log contains debug level information

While configuring JReleaser, I wanted to get a more detailed log to see what is really happening under the hood when something went wrong.

I found trace.log has the debug level logs almost at the end I configured the JReleaser to the project.

It would be nice to call out in the documentation that trace.log is available for debugging. So that, users would aware of how to debug release failures.

Document <args> in JLink examples

In JLink examples page, it would be interesting to provide examples about passing args and so documenting (here for Maven) the tag.

This would help to understand that to add a new arg, you need this syntax:

...
</mainJar>
<args>
    <arg>--no-header-files</arg> <!-- default -->
    <arg>--no-man-pages</arg>  <!-- default -->
    <arg>--compress=2</arg>      <!-- default -->
    <arg>--strip-debug</arg>       <!-- default -->
    <arg>--ignore-signing-information</arg>
</args>
<jdk>
...

Thanks

Missing Nexus2 username variable for Maven Deploy

When deploying to Maven with the instructions on the maven publish page, I got below error. Looks like document is missing one environment variable.

[ERROR] == JReleaser ==
[ERROR] nexus2.username must not be blank. Configure a value using the CLI yaml DSL, or define [JRELEASER_NEXUS2_MAVEN_CENTRAL_USERNAME, JRELEASER_NEXUS2_USERNAME] environment variables, or define a key/value pair in /Users/manik/.jreleaser/config.properties with keys = [JRELEASER_NEXUS2_MAVEN_CENTRAL_USERNAME, JRELEASER_NEXUS2_USERNAME]
JReleaser has not been properly configured.
nexus2.username must not be blank. Configure a value using the CLI yaml DSL, or define [JRELEASER_NEXUS2_MAVEN_CENTRAL_USERNAME, JRELEASER_NEXUS2_USERNAME] environment variables, or define a key/value pair in /Users/manik/.jreleaser/config.properties with keys = [JRELEASER_NEXUS2_MAVEN_CENTRAL_USERNAME, JRELEASER_NEXUS2_USERNAME]


Document more about maven multi module project

In a multi module maven project, when JReleaser is configured on the parent pom, the child modules also run the release tasks.
I caught this behavior when the child module release task complained there is already the same version exists.
It may be ideal behavior in some cases, for example, when a project wants to perform release individually on each module, but I think in regular cases it wouldn't.

For my case, I just made the maven run ./mvnw jreleaser:full-release -pl . to limit the maven root only.
Another way I could think of is to create a child module dedicated to performing the release rather than defining it in the parent pom.

In the JReleaser documentation, I find a mention of maven multi module project only here.

The value of project.java.multiProject will be set to true if the current Maven session has more than 1 project.

I think having more documentation about maven multi module project would help understand the behavior, and users could properly configure JReleaser.

Maven Central Deployer URL note

maven-central.adoc defines:

:deployer_url:  https://s01.oss.sonatype.org/service/local

However for Sonatype projects created before February 2021 should use https://oss.sonatype.org/service/local. Otherwise, JReleaser fails with following error -

[ERROR] JReleaser failed after 2.703 s
Unexpected error
Could not find a staging profile matching com.github.manikmagar

Root cause isn't very obvious from the error but it is due to the wrong URL being used (if followed the docs). Maybe adding a note there could help.

[packagers] Homebrew dependencies are not mapped from JReleaser config as documented

Task List

  • Steps to reproduce provided
  • Stacktrace (if present) provided
  • Example that reproduces the problem (link to git repository is ideal)
  • Full description of the issue provided (see below)

Steps to Reproduce

  1. Create a Java Maven project with this kind of JReleaser config, similar to the example config provided in the JReleaser reference:
                        <packagers>
                            <brew>
                                <active>ALWAYS</active>
                                <tap>
                                    <name>homebrew-tap</name>
                                </tap>
                                <dependencies>
                                    <dependency>
                                        <key>key2</key>
                                        <value>value2</value>
                                    </dependency>
                                </dependencies>
                            </brew>
                        </packagers>
  1. Run jreleaser:package and check the contents of the brew formula .rb in target/jreleaser/package.

Expected Behaviour

Formula should contain

depends_on "key2" => "value2"

as documented in https://jreleaser.org/guide/latest/reference/packagers/homebrew.html#_configuration

Actual Behaviour

Formula contains

  depends_on "dependency"

I haven't had the time to check if this problem is mirrored in other configuration formats and/or packagers.

Environment Information

  • Operating System: MacOS Ventura
  • JReleaser Version: 1.5.1
  • JDK Version: OpenJDK 17.0.6 (Homebrew build)

Document git "fetch-depth: 0" in Changelog and/or FAQ page

I was wondering why my changelog for v1.0.1 release didn't get all the change history.

Based on the log, I found it didn't find the tag for the previous version.

[INFO]  Generating changelog
[DEBUG] resolving commits
[WARN]  Generating a changelog from a shallow copy may cause a failure
[DEBUG] looking for tag that matches 'v1.0.1'
[DEBUG] looking for tags that match 'v.*', excluding 'v1.0.1'
[DEBUG] sorting commits null
[INFO]  Storing changelog: target/jreleaser/release/CHANGELOG.md

I found this documentation in "GitHub Actions"

Note the fetch-depth: 0 option on the Checkout workflow step. It is required for JReleaser to work properly. Without that, JReleaser might fail or behave incorrectly.

I remember I read this before but didn't connect the dots since I am not using jreleaser/release-action@v2 but a custom workflow.

I think the same mention about git fetch-depth: 0 in the Changelog and/or FAQ would beneficial for users.

Remove "Requires Java 8" from Jbang instructions?

The line "Requires Java 8" is mentioned everywhere when mentioning Jbang but, although that's technically true, for the user that's practically speaking not an issue because Jbang will automatically download and install any necessary JDKs.

Can provide PR if you agree :-)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.