Bug 1250198

Summary: Review Request: java-vash - Visual hashing algorithms that convert data into images
Product: [Fedora] Fedora Reporter: Jonathan Underwood <jonathan.underwood>
Component: Package ReviewAssignee: Zbigniew Jędrzejewski-Szmek <zbyszek>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: package-review, zbyszek
Target Milestone: ---Flags: zbyszek: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 1.1.0-0.5.30f001fgit.fc21 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-20 14:47:29 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1243530    

Description Jonathan Underwood 2015-08-04 17:33:12 UTC
Spec URL: https://jgu.fedorapeople.org/java-vash.spec
SRPM URL: https://jgu.fedorapeople.org/java-vash-1.1.0-0.1.30f001fgit.fc22.src.rpm
Description: 
Vash is a family of visual hashing algorithms that take data and
convert it into images. As with a hash function, the same input will
always produce the same output and similar inputs will reliably
produce significantly different outputs. Generally you can use Vash
anywhere you would normally want to show a hash function. Unlike a
hash function however, you can show the output to the user.
Fedora Account System Username: jgu

Comment 1 Jonathan Underwood 2015-08-04 17:35:30 UTC
This is the first time I've tackled anything java related, so I am not sure I am dealing correctly with the jar file construction - should I be byte compiling with javac before doing that?

Comment 2 Zbigniew Jędrzejewski-Szmek 2015-08-04 17:48:22 UTC
Yes. There doesn't appear to be a build system apart from some eclipse files. Running javac on all the .java files should work.

Comment 3 Jonathan Underwood 2015-08-04 18:03:50 UTC
Simply runnong javac on each java file in turn produces many errors.

Where do you see the eclipse files?

Comment 4 Zbigniew Jędrzejewski-Szmek 2015-08-04 18:15:37 UTC
The docs talk about eclipse. I don't use eclipse, but I guess that .project and .classpath might be used by it. But I don't think that you should try to use eclipse.

javac src/vash/**/*.java src/ec/util/MersenneTwisterFast.java

almost works, except that something called util.Base64 is missing. There are two implmenetations of based64 for java packaged for Fedora, but I don't think either this is either of them. There's also Base64 class in java stdlib. If I were you, I'd try to patch the sources to use the bultin Base64 class. If you need help with that, let me know.

Comment 5 Jonathan Underwood 2015-08-04 19:03:15 UTC
Spec URL: https://jgu.fedorapeople.org/java-vash.spec
SRPM URL: https://jgu.fedorapeople.org/java-vash-1.1.0-0.3.30f001fgit.fc22.src.rpm

* Tue Aug  4 2015 Jonathan Underwood <jonathan.underwood> - 1.1.0-0.3.30f001fgit
- Add BuildRequires for junit
- Construct a proper compilation step that succeeds

* Tue Aug  4 2015 Jonathan Underwood <jonathan.underwood> - 1.1.0-0.2.30f001fgit
- Compile java files with javac



It now builds, thanks to some help I got from the java-devel fedora list.

But this is very eggy code that seems unmaintained upstream (no changes for 4 years, still using the 1.6 java version).

I'll contact the winswitch maintainer and see if a switch to a python library might be possible.

Comment 6 Zbigniew Jędrzejewski-Szmek 2015-08-04 19:33:32 UTC
Use %license not %doc for the license file [https://fedoraproject.org/wiki/Packaging:LicensingGuidelines#License_Text].

Add BuildArch: noarch.

Don't bother with the javadocs. It's not like anyone will be needing them.

License and name are OK. License file is present. Latest version is packaged.

I presume we'll know if it doesn't work if winswitch doesn't work.

Comment 7 Jonathan Underwood 2015-08-04 19:42:20 UTC
Spec URL: https://jgu.fedorapeople.org/java-vash.spec
SRPM URL: https://jgu.fedorapeople.org/java-vash-1.1.0-0.4.30f001fgit.fc22.src.rpm


* Tue Aug  4 2015 Jonathan Underwood <jonathan.underwood> - 1.1.0-0.4.30f001fgit
- Use %%license for LICENSE file
- Change BuildArch to noarch

Comment 8 Zbigniew Jędrzejewski-Szmek 2015-08-04 19:48:39 UTC
Looks OK.

fedora-review complains about missing javadoc, but it is not required, or even useful in this case. It also complains about missing dependency on jpackage-utils, but javapackages-tools require it, so that is fine too.

Rpmlint
-------
Checking: java-vash-1.1.0-0.4.30f001fgit.fc24.noarch.rpm
          java-vash-1.1.0-0.4.30f001fgit.fc24.src.rpm
2 packages and 0 specfiles checked; 0 errors, 0 warnings.

Rpmlint (installed packages)
----------------------------
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

Requires
--------
java-vash (rpmlib, GLIBC filtered):
    java-headless
    javapackages-tools

Provides
--------
java-vash:
    java-vash

Package is APPROVED.

Comment 9 Jonathan Underwood 2015-08-04 20:14:27 UTC
Great, thanks for taking the time to review this. The jpackage-utils warning is actually an out-of-date thing that should be fixed in fedora-review.

Comment 10 Jonathan Underwood 2015-08-04 20:16:38 UTC
New Package SCM Request
=======================
Package Name: java-vash
Short Description: Visual hashing algorithms that convert data into images
Upstream URL: https://github.com/thevash/vash
Owners: jgu
Branches: master f23 f22 f21
InitialCC:

Comment 11 Gwyn Ciesla 2015-08-05 01:04:24 UTC
Git done (by process-git-requests).

Comment 12 Fedora Update System 2015-08-05 15:38:23 UTC
java-vash-1.1.0-0.4.30f001fgit.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/java-vash-1.1.0-0.4.30f001fgit.fc21

Comment 13 Fedora Update System 2015-08-05 15:40:01 UTC
java-vash-1.1.0-0.4.30f001fgit.fc22 has been submitted as an update for Fedora 22.
https://admin.fedoraproject.org/updates/java-vash-1.1.0-0.4.30f001fgit.fc22

Comment 14 Fedora Update System 2015-08-07 12:55:15 UTC
java-vash-1.1.0-0.4.30f001fgit.fc22 has been pushed to the Fedora 22 testing repository.

Comment 15 Fedora Update System 2015-08-11 16:54:50 UTC
java-vash-1.1.0-0.5.30f001fgit.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/java-vash-1.1.0-0.5.30f001fgit.fc21

Comment 16 Fedora Update System 2015-08-11 16:56:47 UTC
java-vash-1.1.0-0.5.30f001fgit.fc22 has been submitted as an update for Fedora 22.
https://admin.fedoraproject.org/updates/java-vash-1.1.0-0.5.30f001fgit.fc22

Comment 17 Fedora Update System 2015-08-20 14:47:28 UTC
java-vash-1.1.0-0.5.30f001fgit.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.

Comment 18 Fedora Update System 2015-08-20 19:17:18 UTC
java-vash-1.1.0-0.5.30f001fgit.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.