Releases: emmercm/igir
v0.2.1
Release Highlights
ROM matching now uses filesize in addition to CRC32
This should help eliminate any false positives. This also works for headered ROMs.
Ensured support for folders within input archives
Folders in .zip
files are now explicitly supported. Unit test fixtures have been added for all major archive formats.
DAT parsing is threaded
This marginally speeds up parsing a large number of DATs such as No-Intro's daily zip. DATs within archives are also counted in the progress bar now.
All changes
29 September 2022 - 1b93e16
- v0.2.1 (#91)
28 September 2022 - 7c3c2f4
- Update: README (#90)
28 September 2022 - 6c91ed7
- Feature: support folders within input archives (#82)
28 September 2022 - 58ae56a
- Refactor: prep for #82 (#89)
27 September 2022 - 3a0f729
- Fix: delete input file when moving to a zip that doesn't need writing (#87)
27 September 2022 - 1dd4f12
- Feature: more verbose logging (#86)
23 September 2022 - 564f997
- Refactor: update Renovate commit message (#79)
23 September 2022 - a4697f4
- Feature: consider filesize when finding files by CRC32 (#77)
23 September 2022 - 5058a5c
- Refactor: increase constants.ts test coverage (#78)
23 September 2022 - 703b23c
- Feature: thread DAT scanning & parsing (#76)
23 September 2022 - 434e474
- Fix: partially invalid tests from #68 (#75)
v0.2.0
Release Highlights
Support for headered ROMs has been added, specifically:
- Atari 7800
- Atari Lynx
- Nintendo Entertainment System
- Famicom Disk System
ROMs will be matched against DAT checksums both with their header (full file contents) and without their header (partial file contents). This should account for using either the "headered" or "headerless" No-Intro DATs.
Zip extraction and creation has been sped by changing libraries, specifically:
- Ability to read the zip file list without reading the entire zip file
- Reduced need for writing temp files when decompressing zip entries
- More asynchronous I/O actions
Files larger than 100 MiB will still use temp files to keep the memory usage low.
All changes
23 September 2022 - cde8a32
- v0.2.0 (#74)
23 September 2022 - 7097276
- Fix: ensure output filenames are legal (#73)
23 September 2022 - 0b901ec
- Feature: don't overwrite zips if they contain the expected files (#72)
23 September 2022 - 696d50e
- Refactor: don't filter or write for DATs with no candidates (#71)
23 September 2022 - eff589a
- Feature: print the version in the help header (#69)
23 September 2022 - ee39d2e
- Refactor: limit writer threads with semaphores (#70)
22 September 2022 - 1ec8633
- Refactor: replace adm-zip with yazl & yauzl, fix global temp folder (#68)
22 September 2022 - e5bb4e5
- Refactor: don't extract DATs in zip archives to temp file (#67)
21 September 2022 - 1988212
- Feature: handle ROMs with headers when calculating checksums (#47)
18 September 2022 - f366b76
- Chore: update dependency @types/jest to v29.0.3 (main) (#64)
18 September 2022 - e65f84d
- Chore: update lockfile (main) (#63)
18 September 2022 - 3c4649c
- Chore: update dev dependencies (main) (#62)
18 September 2022 - 9038692
- Chore: Pin dependencies (main) (#56)
15 September 2022 - f42e3ef
- Chore: update Jest to v29 (main) (major) (#59)
11 September 2022 - 115872d
- Chore: update dependency typescript to v4.8.3 (main) (#58)
11 September 2022 - e4c0b3e
- Chore: update dev dependencies (main) (#57)
v0.1.0
Release Highlights
Two major feature additions in this release:
- Rar extraction support was added
- DATs can now be read from inside archives, allowing for easy usage of No-Intro's daily download
And plenty of README updates that hopefully clarify features and usage.
All changes
9 September 2022 - e006f90
- v0.1.0 (#61)
9 September 2022 - 7b1c445
- Feature: report on ROMs found rather than missing in CLI (#60)
9 September 2022 - 32544fc
- Feature: read DATs in archives (#55)
8 September 2022 - cd760e7
- Update: README (#48)
7 September 2022 - 2478830
- Refactor: create archive classes, consolidate logic (#53)
7 September 2022 - c235bc1
- Refactor: disallow floating promises / enforce await (#54)
7 September 2022 - e797a10
- Chore: update dependency eslint-plugin-simple-import-sort to v8 (#52)
6 September 2022 - 47e0cca
- Feature: support rar scanning and extraction (#50)
4 September 2022 - 4aacbaa
- Chore: update lockfile (#27)
4 September 2022 - da97132
- Refactor: wrap archive extraction to local file, rename ROMFile to File (#46)
4 September 2022 - 9a23fd9
- Tests: increase filesystem test timeouts (#49)
4 September 2022 - 990feec
- Chore: update dev dependencies (#8)
4 September 2022 - 984c93d
- Chore: Pin dependencies (#43)
2 September 2022 - 4947fd2
- Renovate: use semi-conventional commit messages (#45)
2 September 2022 - ad8d742
- Tests: increase scanner test timeouts (#41)
2 September 2022 - 84596a3
- Renovate: separate Jest from other devDependencies (#42)
2 September 2022 - 5b6e645
- Codecov: set a minimum coverage threshold (#40)
v0.0.2
Release Highlights
A few updates/enhancements:
- Changed all emojis in the CLI output to be colored ASCII symbols.
- ROM reading to calculate CRC and ROM writing are now done asynchronously, parallelizing those operations.
A few fixes:
- Known ROMs existing in the output directory are no longer cleaned when not overwriting.
- Fixed inferring ROM region and languages from the ROM name.
And a whole slew of new unit tests and refactoring to improve Codecov and Code Climate scores.
All changes
31 August 2022 - 533d2e9
- v0.0.2 (#39)
31 August 2022 - 6b1b83a
- Update: README (#35)
30 August 2022 - a6b83ff
- Update: use auto-changelog for GitHub Releases (#26)
30 August 2022 - 98edefa
- Update: write ROM files asynchronously (#36)
30 August 2022 - 3dc8cb9
- Update: calculate ROM CRCs asynchronously (#31)
30 August 2022 - 3082a13
- Update: increase ROMWriter test timeout (#38)
30 August 2022 - cfbd9f3
- Fix: don't clean existing files that were not overwritten (#37)
30 August 2022 - 0a3963c
- Renovate: separate TypeScript from other dependencies (#32)
30 August 2022 - 8e5de74
- Fix: don't remove the DAT progress bar if there are output candidates (#29)
30 August 2022 - 6fe73b9
- Fix: inconsistencies with the OutputCleaner progress bar (#28)
29 August 2022 - ebe73ff
- Update dependency @types/figlet to v1.5.5 (#25)
29 August 2022 - 428854e
- Renovate: Fix #21 And Add a Linter (#24)
28 August 2022 - ff99331
- Renovate: Bump Dependency Versions (#23)
28 August 2022 - 67fb428
- Renovate: Fix #21 Config Error (#22)
28 August 2022 - 5a41677
- Increase Test Coverage (#17)
28 August 2022 - 396ff71
- Renovate: Group Non-Dev @types With Their Parents (#20)
28 August 2022 - 7aa01ce
- Lock file maintenance (#6)
28 August 2022 - d90c2ef
- Update Node.js to 16.17 (#4)
26 August 2022 - 877ce4e
- Fix Code Climate Issues (#16)
26 August 2022 - 10280c6
- @typescript-eslint/explicit-function-return-type (#19)
26 August 2022 - 39a7cc5
- Fix Region and Language Inference (#18)
26 August 2022 - 72e32c9
- Remove Progress Bar Emojis (#15)
26 August 2022 - ca893d8
- README Update (#12)
26 August 2022 - 14558cb
- Fix Code Climate Issues (#14)
29 August 2022 - 428854e
- Renovate: Fix #21 And Add a Linter (#24) (#21)
28 August 2022 - 67fb428
- Renovate: Fix #21 Config Error (#22) (#21)