Giter Club home page Giter Club logo

checksum's Introduction

Checksum Creator

A simple project to get me used to Java's picocli which is, in fact, vastly superior to Python's arparse module (sorry, argparse. Though you're built into the Python Standard Library, you don't have ANSI coloring for parameters)

Go to the Changelog to see the current changes to the project

Table of Contents

Why Java?

Well, I've been considerably inactive when using my GitHub, but I've learned C++ and Java now, the latter being my favorite besides Python for various reasons like Jars, actual build tools like Apache Maven and Gradle, and namespaced projects. You don't get that in Python

Besides, picocli has ANSI coloring and is pretty customizable

Usage

I will assume that you've done the following:

  • You've downloaded and installed the JRE 11
  • You've downloaded the latest JAR release of this project
  • Your shell's PWD is where you downloaded said latest JAR release

Run the following command to get the list of subcommands:

$ java -jar CheckSum.jar help

Run the following command to get the checksums of Java class files:

$ java -jar path/to/checksum-x.x.x.jar check **/*.class

Notes: 1) Must have Java class files. 2) Not tested on Windows

Output would look something like this:

SHA256 Checksum of Checksum.class:
  37a960b10198c247738afb9b3d6723fac3c8b24f5c6a4569536f4b900d55c232
SHA256 Checksum of BaseCommand.class:
  9786c0d4d4e3fdbab7edd643612931c70d1c0d4cc58d3e389506628d1d50302a
SHA256 Checksum of Update.class:
  2bdae72c8f4e54f59fce7a16ae82479ab27638d4adaf27585b778937df5c10c5
SHA256 Checksum of VersionProvider.class:
  327d8768323d035b47a74eeea25936e2e6934b9e63cbd7e96dfce04dbdd3c7f4

Optional flags & subcommands can be found by passing in help instead of check

Checksum

A program that is written to compute checksums yet doesn't have its own checksum is kinda silly, so here's the official checksum for the current release

SHA-256 Checksum of checksum-0.0.4.jar:
  00e121ef0f191368869c9e6b7815e076de164caf1b4f9458d1efef10588f13c7

TODO

  • Uniform the usage output.
    • Right now, the Usage, Description and Command-local Flags sections are tabbed, while the Commands and Error Codes sections aren't
  • com.misery.internal.Update.
    • Basically a class that downloads the latest JAR and replaces the old one, maybe making a dump just in case stuff breaks
    • Probably gonna make it optional/runnable with a command
  • A suite of tools that are bundled with the JAR to maybe help debug the program
  • Write ExceptionMixin, which works similarly to the current way that the program handles exceptions, but on one mix-in
  • A subcommand to compute and print the JAR's checksum, so you'd run java -jar checksum-x.x.x.jar checksum instead of java -jar checksum-x.x.x.jar check checksum-x.x.x.jar

checksum's People

Contributors

kiwifuit avatar

Watchers

 avatar

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.