Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.1.0 #5

Merged
merged 21 commits into from
Dec 22, 2023
Merged

1.1.0 #5

merged 21 commits into from
Dec 22, 2023

Conversation

AngheloAlf
Copy link
Member

[1.1.0] - 2023-12-22

Added

  • Add Rust support.
  • New static methods for CICKind.
    • CICKind.fromHashMd5: Returns a CIC kind based on the passed md5 hash.
    • CICKind.fromName: Returns a CIC kind based a string representing its name.
  • Add C bindings.
  • Add support for the IPL3 5101 variant (Used by Aleck 64 games).
  • New frontends:
    • check: Checks if the checksum in the ROM matches the calculated one.
    • detect_cic: Allows to detect the cic type used by a rom.
    • sum: Calculates the ipl3 checksum of a rom.

Changed

  • Library was reimplemented in Rust, allowing faster runtime calculation.
    • The Python API is still the same.

Fixed

  • Fix links in CHANGELOG.md

* Initial setup for Rust code

* Port CICKind to Rust

* Literal port of python code for checksum

* Write tests for calculateChecksum

* Port detect

* Cleanup CICKind

* Wire up function bindings

* yeet python logic

* Add name attribute

* Start fixing CI

* ci for rust

* cargo fmt

* clippy

* changelog and readme

* some docs

* fmt

* fix ci?
* Start writing C bindings

* test_checksum.c

* fmt

* write some bindings for cickind methods

* Bindings for detection

* ipl3checksum_cickind_from_hash_md5 and ipl3checksum_cickind_from_name

* autodetection test

* ipl3checksum_cickind_get_hash_md5 and ipl3checksum_cickind_get_name

* fmt

* Setup tests and C build artifacts

* fix ci

* Fix again

* fix again again

* Include changelog on the package

* Version constants to allow fetching version at runtime

* Changelog

* Add individual clippy checks based on features to CI

* Change `&CICKind` to `CICKind`

* docs, kinda

* some cleanup

* ifdef some errors

* Rework some Options to Results
* enum value

* Implement 5101

* Fix Python bindings not accepting bytearray objects

* Add dummytest for CIC 5101

* Fix rom_words size
@AngheloAlf AngheloAlf merged commit 59e69bb into main Dec 22, 2023
62 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant