[VOTE] Engine 2.0 RC5 Release quality

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[VOTE] Engine 2.0 RC5 Release quality

Claude Brisson-2
The Velocity Engine 2.0 RC5 is available.

Main changes since the RC4:

  * the default encoding is now UTF-8 (and not the platform default)
  * commons-collections is not any more a compilation dependency
  * commons-lang3 dependency is not any more shaded
  * the configuration API doesn't use ExtProperties anymore
  * the events API has been reviewed: all events do receive the current
Context as argument

Release notes:

*
https://dist.apache.org/repos/dist/dev/velocity/velocity-engine/2.0/release-notes.html 


Distribution:

  * https://dist.apache.org/repos/dist/dev/velocity/velocity-engine/2.0/

Maven 2 staging repository:

  *
https://repository.apache.org/content/repositories/orgapachevelocity-1015

If you have had a chance to review the test build, please respond with a
vote on its quality:

  [ ] Leave at test build
  [ ] Alpha
  [ ] Beta
  [ ] General Availability (GA)


Everyone who has tested the build is invited to vote. Votes by PMC
members are considered binding. A vote passes if there are at least
three binding +1s and more +1s than -1s.



   Claude


Reply | Threaded
Open this post in threaded view
|

Re: [VOTE] Engine 2.0 RC5 Release quality

Michael Osipov
Am 2017-01-16 um 15:02 schrieb Claude Brisson:

> The Velocity Engine 2.0 RC5 is available.
>
> Main changes since the RC4:
>
>  * the default encoding is now UTF-8 (and not the platform default)
>  * commons-collections is not any more a compilation dependency
>  * commons-lang3 dependency is not any more shaded
>  * the configuration API doesn't use ExtProperties anymore
>  * the events API has been reviewed: all events do receive the current
> Context as argument
>
> Release notes:
>
> *
> https://dist.apache.org/repos/dist/dev/velocity/velocity-engine/2.0/release-notes.html
>
>
> Distribution:
>
>  * https://dist.apache.org/repos/dist/dev/velocity/velocity-engine/2.0/
>
> Maven 2 staging repository:
>
>  *
> https://repository.apache.org/content/repositories/orgapachevelocity-1015
>
> If you have had a chance to review the test build, please respond with a
> vote on its quality:
>
>  [ ] Leave at test build
>  [ ] Alpha
>  [ ] Beta
>  [ ] General Availability (GA)
>
>
> Everyone who has tested the build is invited to vote. Votes by PMC
> members are considered binding. A vote passes if there are at least
> three binding +1s and more +1s than -1s.

Here are my comments referred in my the previous mail:


* README.txt requires a rewrite, it still talks about Ant, old directory
structures, and much more
* POM: use of JavaCC Maven Plugin: never ever add auto-generated code to
src/, it completely breaks
   the agreed convention. Have it in target/ and attach the source code
with Buildhelper Maven Plugin, if
   the JavaCC Plugin doesn't do it on its own.
* POM: The deletion/creation of the JavaCC parser should rather be a
complete profile rather than
   a hack with properties passed to Ant, if this is necessary at all. I
see no difference here to code generation by JAXB's XJC or Modello, etc.
* There are several spots which
** don't use SLF4J's {} placeholder,
** don't use System.lineSeparator() but '\n'
** do a toLowerCase() (e.g., #sameEncoding()) instead of
toLowerCase(Locale.ROOT)
* There is a lot trailing whitespace throughout the code
* Generally, don't use log#isXXXEnabled() because of SLF4J's {}
placeholders' foo
* There are a few null argument checks which can be better handled with
Common Lang's Validate class
* StringBuffer is used sometimes where StringBuilder would suffice (w/o
synchronization)
* Stuff like BUILD_README.txt absolutely do not belong to src/main/java,
see second point
* There are some unused imports once in a while
* Rather use maven.compiler.source and maven.compiler.target properties
to avoid duplicate value setting, checkstyle, findbugs, JavaCC, etc.
* If a dependency is used several times, e.g. SFL4J, it shall be added
to the dep mngt section of the parent POM to avoid repetition of version
elements. Hint: this can be done with reactor modules too

There are likely to be more issues I have missed.

What is the benefit of velocity-engine-assembly actually? I know, ages
ago Velocity and other software was delivered as a tarball or zip file
with all JARs and the rest, including source. I think this is pretty
much obsolete now and partially redundant:
* Apache Parent already provides predefined descriptors which create a
source-release.zip for you, no further work necessary
** source-release.zip is used for release testing/votes, as well as for
clients/users who do not want to clone from Git or checkout via Subversion
* Binary artifacts are always available on Maven Central, I hardly
believe that someone will really download dist.zip to get the JARs and
add them manually somewhere, even if, they can get them from
search.maven.org


Michael

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]