Giter Club home page Giter Club logo

taglist-maven-plugin's Introduction

MojoHaus TagList Maven Plugin

This is the http://www.mojohaus.org/taglist-maven-plugin/[taglist-maven-plugin.

Apache License, Version 2.0, January 2004 Maven Central GitHub CI

Contributing

Creating Issues

If you find a problem please create an https://github.com/mojohaus/taglist-maven-plugin/issues[issue in the ticket] and describe what is going wrong or what you expect to happen. If you have a full working example or a log file this is also helpful. You should of course describe only a single issue in a single ticket and not mixing up several different things into a single issue.

Creating a Pull Request

Before you create a pull request it is necessary to create an issue in the https://github.com/mojohaus/taglist-maven-plugin/issues[ticket system] and describe what the problem is or what kind of feature you would like to add. Afterwards you can create an appropriate pull request.

It is required if you want to get a Pull request to be integrated into please squash your commits into a single commit which references the issue in the commit message which looks like this:

Fixed #Issue

 o Description.

This makes it simpler to merge it and this will also close the appropriate issue automatically in one go. This make the life as maintainer a little bit easier.

A pull request has to fulfill only a single ticket and should never create/add/fix several issues in one, cause otherwise the history is hard to read and to understand and makes the maintenance of the issues and pull request hard or to be honest impossible.

Releasing

  • Make sure gpg-agent is running.
  • Execute mvn -B release:prepare release:perform

For publishing the site do the following:

cd target/checkout
mvn verify site site:stage scm-publish:publish-scm

taglist-maven-plugin's People

Contributors

bentmann avatar bmarwell avatar brettporter avatar brianf avatar davidkarlsen avatar dennisl avatar dependabot[bot] avatar fgiust avatar hboutemy avatar jmcc0nn3ll avatar juliangp avatar khmarbaise avatar maximebochon avatar slachiewicz avatar slawekjaranowski avatar trygvis avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

taglist-maven-plugin's Issues

Includes not working as expected

I'm using v3.0.0 on a multimodule maven project. One module is a war. I have goth java sources in src/main/java and web stuff in src/main/webapp. Taglist processes the java code just fine but ignores the src/main/webapp. I'd like to include TODO statements in javascript, jsp, css, html etc.

i setup the config element with this

<configuration>
   <includes>**/*.java</includes>
   <includes>**/*.js</includes>
   <includes>**/*.jsp</includes>

I'm not entirely sure this is right as there aren't any examples on the website but i think it's in the ballpark after looking that the mojo. Is there any configuration magic i can set to get these additional files included?

Do not inherit taglist-maven-plugin.version from parent

This will generate a report with an old version of the taglist-maven-plugin, not with "self".
This does not fix the problem for other plugins or projects, only for this very plugin itself (hence only documentation as it is only visible on its own site).

Exclude source files

I couldn't find any option to exclude a java source file from checking the tags. Do we have an option already in the plugin? If yes can anyone please share how to do it?

Usually we don't want to exclude any sources from static analysis but some sources are generated by code generator tools which may document tags based on the input template for those tools.

If not can this be added, probably i can contribute.

Simple high, medium, low priority marking for tags

Request to have an optional priority added to tags in the configuration. This way aggregation done on the taglist.xml output could be done, as well as matching how some IDEs (eclipse) allow tags to be classified as high, medium, or low.

So if enabled, result would be, in example:

<tag name="TODO" count="3" priority="high" />

Explicitly define source=8 for javadoc plugin

From #24 to fix this warning

[WARNING] javadoc: warning - The code being documented uses modules but the packages defined in https://docs.oracle.com/javase/8/docs/api/ are in the unnamed module.

Happens when compiling with Java 9+.
Either don't use source and target (impossible due to parent) or define source again for the javadoc plugin, or define release (only when compiling with 11+).

Usage page clarification - build or reporting?

Hi there! I just had a case to use the plugin (thank you, BTW, as I've used it several times in the past) and spent close to 2 hours trying to incorporate FIXMEs. My memory told me that it was just a tag. I then found something like this on the Usage page:

For backwards compatibility with versions prior to the 2.4 release, the legacy tags configuration is supported; however, only exact matching is used with legacy configuration.

    <project>
      ...
            <configuration>
              <tags>
                <tag>TODO</tag>
                <tag>FIXME</tag>
                <tag>@todo</tag>
                <tag>@deprecated</tag>
              </tags>
            </configuration>
      ...
    </project>

Small typo: "backwards" -> "backward".
Missing article: "with legacy" "with the legacy"

True problem

The usage page config doesn't seem to be working. I mean here the legacy config with a new version of the plugin.

I've created a dummy project for this and:
Taglist_2022-10-29_21-30-52

In a nutshell:

  1. plugin in build, version 3.0.0, config mentions FIXME, mvn taglist:taglist does NOT pick up FIXME is the new kid on the block. TODOs are being sought.
  2. same with reporting
  3. downgrade to 2.3 and the config works.
  4. there's no message, other than "using legacy tag" warning.

What I'd expect:

  1. usage page suggests this works. Please either make it so or clarify that version needs to be downgraded for it to work.
  2. clearly mark that it's no longer REPORTING but BUILD, unless it's the site command. This I did not tests. I'm however certain, that adding a line or two about BUILD being the target section for mvn taglist:taglist would be to overall benefit.

Report table not showing correctly

Hi!!!

If you use the plugin along with maven site plugin version 4.0.0-M8, the table is not shown correctly.

It would be great to fix it.

Lot of thanks!!!

Replace FileUtils with Java NIO

The Plexus/Maven method FileUtils::getFiles declares an IOException, which cannot be thrown in canGenerateReport, which is most unfortunate.

Fix ambiguous links

From #24

[WARNING] [APT Parser] Ambiguous link: 'usage.html'. If this is a local link, prepend "./"!
[WARNING] Could not parse date '24 March 2007' from index.apt (expected yyyy-MM-dd format), ignoring!
[WARNING] [APT Parser] Ambiguous link: 'taglist-mojo.html'. If this is a local link, prepend "./"!

Convert to Java 8 language features (Generics, boxing, for loops, etc)

(also add "code quality" label to the release bot)

  • Add generics
  • Remove manual (un)boxing
  • Convert iterators to enhanced for loops
  • try-with-resources
  • Remove redundant initializers for fields.
  • Mark fields as final
  • Remove .sort( collection ) calls, replace with sorted collection.
  • add code quality label to release bot

Link to plugin's web site is reported as redirected by maven linkcheck plugin.

Hello!

We use maven linkcheck plugin to check links on checkstyle's website: http://checkstyle.sourceforge.net/ . The plugin reports that on page http://checkstyle.sourceforge.net/plugins.html the following link is redirected:
http://mojo.codehaus.org/taglist-maven-plugin (302 Found) at http://www.mojohaus.org .

Links on plugins.html are generated by Apache Maven Project Info Reports Plugin. All URLs are grabbed from effective POMs of plugins.

Here is the code:

https://github.com/apache/maven-plugins/blob/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginsReport.java#L239

https://github.com/apache/maven-plugins/blob/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginsReport.java#L269

In effective POM.xml of maven taglist plugin the problematic link is:
http://mojo.codehaus.org/taglist-maven-plugin

As a result, we do not have an ability to change plugins urls on that page, because those links are specified by plugins developers.

So, please correct the link, because there are contradictions between linkcheck and maven taglist plugin.

Thank in advance!

Aggregated list?

Is there a way to aggregate the list on a multiple module project? or at least have a summary table for the parent module that links to the child module?

Maven 3 parameter convention

From #24

[INFO] --- maven-plugin-plugin:3.6.0:descriptor (default) @ taglist-maven-plugin ---
[INFO] Using 'UTF-8' encoding to read mojo source files.
[WARNING] org.codehaus.mojo.taglist.TagListReport#aggregate:
[WARNING]   The syntax
[WARNING]     @parameter expression="${property}"
[WARNING]   is deprecated, please use
[WARNING]     @parameter property="property"
[WARNING]   instead.
[WARNING] org.codehaus.mojo.taglist.TagListReport#encoding:
[WARNING]   The syntax
[WARNING]     @parameter expression="${property}"
[WARNING]   is deprecated, please use
[WARNING]     @parameter property="property"
[WARNING]   instead.
[WARNING] org.codehaus.mojo.taglist.TagListReport#linkXRef:
[WARNING]   The syntax
[WARNING]     @parameter expression="${property}"
[WARNING]   is deprecated, please use
[WARNING]     @parameter property="property"
[WARNING]   instead.
[WARNING] org.codehaus.mojo.taglist.TagListReport#project:
[WARNING]   The syntax
[WARNING]     @parameter expression="${property}"
[WARNING]   is deprecated, please use
[WARNING]     @parameter property="property"
[WARNING]   instead.
[WARNING] org.codehaus.mojo.taglist.TagListReport#reactorProjects:
[WARNING]   The syntax
[WARNING]     @parameter expression="${property}"
[WARNING]   is deprecated, please use
[WARNING]     @parameter property="property"
[WARNING]   instead.

legacy tags

./mvnw taglist:taglist

gives [WARNING] Using legacy tag format. This is not recommended.

What is it referring to: something in the plugin configuration or something in my code?

Fix "could not parse date"

[WARNING] Could not parse date '24 March 2007' from index.apt (expected yyyy-MM-dd format), ignoring!

Add breadcrumbs to site

    <breadcrumbs>
      <item name="MojoHaus" href="https://www.mojohaus.org/"/>
      <item name="${this.name}" href="${this.url}" />
    </breadcrumbs>

Default usage for tags with FIXME

Hi and thank you for the plugin. I use it every now and then, and each time I spend a LOT of time figuring out what happened with FIXME comments and why they're gone/unaccounted for. Prior to 2.4 they were in or were easy to add.

Would you mind changing the empty tag list to contain both TODO and FIXME?

It would suffice to add "FIXME" to this line:

[INFO] Generating "Tag List" report --- taglist-maven-plugin:3.0.0:taglist [WARNING] Using legacy tag format. This is not recommended.

Hello team,

This is my first issue in this repo.
If nothing else, wanted to say big thanks for this project.

When running this as part of mvn site command, I am seeing this:

[INFO] Generating "Tag List" report      --- taglist-maven-plugin:3.0.0:taglist
[WARNING] Using legacy tag format.  This is not recommended.

The thing is, I have no tag at all in my code.
How do I fix this warning please?
i.e, how do I not use legacy format?

Thank you

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.