Skip to content
This repository was archived by the owner on Jan 30, 2021. It is now read-only.

Releases: rr-/CRC-manipulator

Maintenance

Choose a tag to compare

@rr- rr- released this 09 Jul 05:13
  • Added CRC16XMODEM support (#10)
  • Fixed inputting '0' in GUI (#11)
  • Fixed Catch URL (#9)

Little GUI bugfixes

Choose a tag to compare

@rr- rr- released this 05 Jul 16:45

GUI version didn't compute checksums properly...
...until it exited, where it magically flushed the output to the target files.

Now the checksums should be updated directly after patching.

  • Fixed blocking GUI if path didn't exist.

POSIX love

Choose a tag to compare

@rr- rr- released this 22 Jun 16:10
  • Added support for CRC32-POSIX! (cksum from GNU coreutils)
  • Fixed support for large files (+ added unit tests for file size type)
  • Fixed buffer overflow in tests
  • Fixed tests depending on each other
  • Improved CLI help:
    • Fixed algorithm table being printed to stdout rather than stderr on errors
    • Changed list of available algorithms to print short info about each one
    • Changed usage to be printed only on errors related to input arguments
    • Added blank linke between usage and error messages
    • Reworded things a little
  • Changed strip to strip everything in build script
  • Refactoring:
    • Replaced CRC class hierarchy with simple factories
      • Introduced CRC::Specs that replaces getters and big CRC constructor
    • Replaced private methods in CRC with pimpl idiom
    • Flattened file hierarchy in lib/
    • Fixed file names not following snake case convention
    • Fixed test function names not following camelCase convention
    • Moved types coupled to CRC inside CRC
    • Changed tests to automatically test all future CRCs (by using CRC factory)
    • Organized #includes

CLI love

Choose a tag to compare

@rr- rr- released this 20 Jun 15:00
  • Restored support for CRC16CCITT and CRC16IBM in CLI
  • Restored support for calculating CRCs in CLI
  • Fixed CLI --help returning 1 instead of 0
  • Added optimization flags to build script
  • Removed test binaries from distribution in build script
  • Further code cleanup:
    • CRC32, CRC16IBM and CRC16CCITT implementations merged into common code
    • Improved CLI error handling
    • Improved progress handling
    • Removed stdin/stdout support leftovers
    • Replaced exit() calls with return statements

Bugfixes

Choose a tag to compare

@rr- rr- released this 20 Jun 14:59
  • Fixed -p, -o and -i CLI arguments
  • Added unit tests so these options never break again

Test support

Choose a tag to compare

@rr- rr- released this 19 Jun 21:19

Implemented unit tests for CRC patching and CRC checksum computing.

CRC16CCITT fixes

Choose a tag to compare

@rr- rr- released this 19 Jun 20:30

Although it's currently unavailable for user usage, CRC16CCITT was broken in two ways:

  1. Since the C++11 refactors, patching stopped working altogether
  2. The parameters were wrong (it didn't swap the checksum when it should)

Build fixes

Choose a tag to compare

@rr- rr- released this 19 Jun 20:21
0.3.1

Improved text placement in README

Major code overhaul

Choose a tag to compare

@rr- rr- released this 18 Jun 21:45
  • Switched to waf build system (replaces shell scripts)
  • Switched to Qt
  • Improved overall code quality
    • Incorporated C++11 features:
      • smart pointers
      • throwing integers replaced with proper exceptions
      • improved type system
    • Removed debug macros
  • Switched to semantic versioning
  • Changed version maintenance to be based on git tags

Bugfixes

Choose a tag to compare

@rr- rr- released this 18 Jun 21:11
  • Fixed -p argument
  • Fixed --overwrite argument
  • Removed pipe support (its performance was deplorable, anyway)
  • Better, simplified code
  • CLI compiles fine under linux, cygwin and mingw