gump-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Konstantin Kolinko <knst.koli...@gmail.com>
Subject Re: Gump is building stale Checkstyle sources (and other GitHub projects)
Date Mon, 18 Apr 2016 14:37:36 GMT
2016-04-18 14:15 GMT+03:00 Konstantin Kolinko <knst.kolinko@gmail.com>:
> 2016-04-18 4:40 GMT+03:00 Bill Barker <billbarker@apache.org>:
>> To whom it may engage...
>>
>> This is an automated request, but not an unsolicited one. For
>> more information please visit http://gump.apache.org/nagged.html,
>> and/or contact the folk at general@gump.apache.org.
>>
>> Project tomcat-trunk-validate has an issue affecting its community integration.
>> This issue affects 1 projects,
>>  and has been outstanding for 2 runs.
>> The current state of this project is 'Failed', with reason 'Build Failed'.
>> For reference only, the following projects are affected by this:
>>     - tomcat-trunk-validate :  Tomcat 9.x, a web server implementing the Java Servlet
4.0,
>> ...
>>
>>
>> Full details are available at:
>>     http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/index.html
>>
>> That said, some information snippets are provided here.
>>
>> The following annotations (debug/informational/warning/error messages) were provided:
>>  -DEBUG- Dependency on checkstyle exists, no need to add for property checkstyle.jar.
>>  -INFO- Failed with reason build failed
>>
>>
>>
>> The following work was performed:
>> http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/gump_work/build_tomcat-trunk_tomcat-trunk-validate.html
>> Work Name: build_tomcat-trunk_tomcat-trunk-validate (Type: Build)
>> Work ended in a state of : Failed
>> Elapsed: 2 secs
>> Command Line: /usr/lib/jvm/java-8-oracle/bin/java -Djava.awt.headless=true -Dbuild.sysclasspath=only
org.apache.tools.ant.Main -Dgump.merge=/srv/gump/public/gump/work/merge.xml -Dbase.path=/srv/gump/public/workspace/tomcat-trunk/tomcat-build-libs
-Dcheckstyle.jar=/srv/gump/public/workspace/checkstyle/target/checkstyle-5.8-SNAPSHOT.jar
-Dexecute.validate=true validate
>> [Working Directory: /srv/gump/public/workspace/tomcat-trunk]
>> CLASSPATH: /usr/lib/jvm/java-8-oracle/lib/tools.jar:/srv/gump/public/workspace/ant/dist/lib/ant.jar:/srv/gump/public/workspace/ant/dist/lib/ant-launcher.jar:/srv/gump/public/workspace/ant/dist/lib/ant-jmf.jar:/srv/gump/public/workspace/ant/dist/lib/ant-junit.jar:/srv/gump/public/workspace/ant/dist/lib/ant-junit4.jar:/srv/gump/public/workspace/ant/dist/lib/ant-swing.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-resolver.jar:/srv/gump/public/workspace/ant/dist/lib/ant-apache-xalan2.jar:/srv/gump/public/workspace/xml-commons/java/build/resolver.jar:/srv/gump/public/workspace/checkstyle/target/checkstyle-5.8-SNAPSHOT.jar:/srv/gump/packages/antlr/antlr-3.1.3.jar:/srv/gump/public/workspace/apache-commons/beanutils/dist/commons-beanutils-20160418.jar:/srv/gump/packages/commons-collections3/commons-collections-3.2.1.jar:/srv/gump/public/workspace/apache-commons/cli/target/commons-cli-1.4-SNAPSHOT.jar:/srv/gump/public/workspace/commons-lang-trunk/target/commons-lang3-3.5-SNAPSHOT.jar
>>  :/srv/gump/public/workspace/apache-commons/logging/target/commons-logging-20160418.jar:/srv/gump/public/workspace/apache-commons/logging/target/commons-logging-api-20160418.jar:/srv/gump/public/workspace/google-guava/guava/target/guava-19.0-SNAPSHOT.jar
>> ---------------------------------------------
>> Buildfile: /srv/gump/public/workspace/tomcat-trunk/build.xml
>>
>> build-prepare:
>>    [delete] Deleting directory /srv/gump/public/workspace/tomcat-trunk/output/build/temp
>>     [mkdir] Created dir: /srv/gump/public/workspace/tomcat-trunk/output/build/temp
>>
>> compile-prepare:
>>
>> download-validate:
>>
>> testexist:
>>      [echo] Testing  for /srv/gump/public/workspace/checkstyle/target/checkstyle-5.8-SNAPSHOT.jar
>>
>> setproxy:
>>
>> downloadfile:
>>
>> validate:
>>     [mkdir] Created dir: /srv/gump/public/workspace/tomcat-trunk/output/res/checkstyle
>>
>> BUILD FAILED
>> /srv/gump/public/workspace/tomcat-trunk/build.xml:554: Unable to create a Checker:
Property 'cacheFile' in module Checker does not exist, please check the documentation
>
>
> Hi!
>
> The above is a build failure of project tomcat-trunk-validate (in
> module tomcat-trunk) [1]
>
> This failure is caused by building a stale version of Checkstyle at Gump.
>
> As can be seen in classpaths above, Gump is building
> checkstyle-5.8-SNAPSHOT.jar,
> but the current version of checkstyle is 6.18-SNAPSHOT (as seen at [2]
> -> pom.xml)
>
> Tomcat configuration for checkstyle uses a feature that is available
> since Checkstyle 6.16 (described in more detail in BZ 59276 [3]), thus
> the observed failure.
>
> [1] http://vmgump.apache.org/gump/public/tomcat-trunk/tomcat-trunk-validate/index.html
> [2] https://github.com/checkstyle/checkstyle
> [3] https://bz.apache.org/bugzilla/show_bug.cgi?id=59276
>
>
> Looking into "update" work performed in checkstyle project, it calls
> the following command: [4]
> [[[
> git pull --quiet git://github.com/checkstyle/checkstyle master
> ]]]
>
> [4] http://vmgump.apache.org/gump/public/checkstyle/gump_work/update_checkstyle.html
>
>
> Comparing it with official pull/clone URL at project site [2] I see
> the following concerns
>
> 1). The recommended clone URL at [2] is
> https://github.com/checkstyle/checkstyle.git
>
> Note it uses "https" protocol and ends the URL with ".git".
>
> 2). I wonder why there is no output and no error status.
>
> I guess that we can try running this without the "--quiet" flag.
>
>
> Searching the project metadata for other projects using
> repository="github" there are 11 of them:
>
> Looking at those 11 projects:
>
> checkstyle.xml
> http://vmgump.apache.org/gump/public/checkstyle/
> https://github.com/checkstyle/checkstyle/
>  - stale, builds 5.8-SNAPSHOT. instead of 6.18-SNAPSHOT
>
> easymock.xml
> http://vmgump.apache.org/gump/public/easymock/
> https://github.com/easymock/easymock
>  - build failure
>
> google-guava.xml
> http://vmgump.apache.org/gump/public/google-guava/
> https://github.com/google/guava/blob/master/pom.xml
> - uses ".git" suffix in its URL,
> - stale, builds 19.0-SNAPSHOT but current pom.xml is 20.0-SNAPSHOT
> I wonder why this one is stale...
>
> java-hamcrest.xml
> http://vmgump.apache.org/gump/public/java-hamcrest/
> https://github.com/hamcrest/JavaHamcrest
>
> Builds 2.0.0.0 as expected. I cannot confirm staleness.
>
> junit.xml
> http://vmgump.apache.org/gump/public/junit/
> https://github.com/junit-team/junit4
>
> Builds 4.13-SNAPSHOT as expected. I cannot confirm staleness.
>
> mockito.xml
> https://github.com/mockito/mockito
> This project is not built by Gump, can be removed.
> The project file uses Ant, but the actual project uses Gradle as its
> build system (like java-hamcrest above).
>
> objenesis.xml
> http://vmgump.apache.org/gump/public/objenesis/
> https://github.com/easymock/objenesis/
> - stale, builds 2.2-SNAPSHOT, expected is 2.3-SNAPSHOT
>
> openssl.xml
> openssl-1.0.2.xml
> https://github.com/openssl/openssl/
> (branches: master and OpenSSL_1_0_2-stable)
> http://vmgump.apache.org/gump/public/openssl-master/
> http://vmgump.apache.org/gump/public/openssl-1.0.2/
>
> I cannot confirm staleness here. From build failure emails that I saw
> at dev@tomcat I think that these projects are up-to-date.
>
> About twice in a month we see API changes in openssl-master and those
> cause build failures in tomcat-native library. So I think that these
> projects are up-to-date.
>
> xmlunit.xml
> http://vmgump.apache.org/gump/public/xmlunit/
> https://github.com/xmlunit/xmlunit/
> - Build failure.
>
> xmlunit.net.xml
> http://vmgump.apache.org/gump/public/xmlunit.net/
> https://github.com/xmlunit/xmlunit.net/
> - Build failure.
>
>
> My plan/proposal is to
> 1) change repository/github.xml
> from <url>git://github.com</url>
> to <url>https://github.com</url>
>
> 2) add ".git" suffix to all <git dir /> attributes in projects,
>
> but I wonder of the following
>
>
> 1. What output is suppressed by "--quiet" flag in git pull command.
>
> 2. Why google-guava project is stale, while it already uses ".git" suffix.
>
> I expected it to be up-to-date.
>
> Git documentation writes such URLs as ".git/" with trailing "/", but I
> doubt that that matters.
>
> 3. Whether openssl projects are really up-to-date.
>
> I expect them to be stale.
>
>
> Maybe there are some other ideas?


I looks that my URL theory is wrong.

git clone  git://github.com/checkstyle/checkstyle

completes successfully


> E.g. use "git fetch" instead of "git pull",  as we now follow that
> command with "git reset --hard".
> I think original plan was "git reset --hard" followed by "git update".
>
> Module-level Work  [5]
>> update_checkstyle
>> reset_hard_checkstyle
>> submodule_update_checkstyle
>
> [5] http://vmgump.apache.org/gump/public/checkstyle/


Looking closer to the above three update/reset/update commands

$ git pull git://github.com/checkstyle/checkstyle master
>From git://github.com/checkstyle/checkstyle
 * branch            master     -> FETCH_HEAD
Already up-to-date.

$ git reset --hard origin/master
HEAD is now at fe17b53 Issue #3000: removed unused check messages

$ git submodule update --init --recursive


I am not sure that the first "git pull" command actually updates origin/master.
If it does not, then resetting to origin/master actually rolls back to
old sources.

Usually the pull command is just "git pull" without arguments or "git
pull origin".


I created a .git/refs/remotes/origin/master  file with a SHA-1 of some
previous revision (simulating a stale origin/master).

$ git pull git://github.com/checkstyle/checkstyle master
>From git://github.com/checkstyle/checkstyle
 * branch            master     -> FETCH_HEAD
Already up-to-date.

$ git reset --hard origin/master
HEAD is now at 70f1647 Issue #410: Wiki-page .'Tools To See Javadoc
Tree Structure' part

$ git pull
>From git://github.com/checkstyle/checkstyle
   70f1647..fe17b53  master     -> origin/master
Updating 70f1647..fe17b53
Fast-forward
.../checks/annotation/messages.properties          |  1 -
 .../checks/annotation/messages_de.properties       |  1 -
 <a lot of changed files>
 .../tools/checkstyle/internal/AllChecksTest.java   | 91 ++++++++++++++++------
 src/xdocs/index.xml.vm                             | 14 ++++
 57 files changed, 80 insertions(+), 383 deletions(-)

$ git reset --hard origin/master
HEAD is now at fe17b53 Issue #3000: removed unused check messages


So the first git pull did not update origin/master. It was updated by
second "git pull" without arguments.

Best regards,
Konstantin Kolinko

---------------------------------------------------------------------
To unsubscribe, e-mail: general-unsubscribe@gump.apache.org
For additional commands, e-mail: general-help@gump.apache.org


Mime
View raw message