Skip to content

fix: replace iconv with encoding_rs #1698

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

Merged
merged 1 commit into from
May 4, 2025

Conversation

hrideshmg
Copy link
Contributor

@hrideshmg hrideshmg commented May 1, 2025

In raising this pull request, I confirm the following (please check boxes):

  • I have read and understood the contributors guide.
  • I have checked that another pull request for this purpose does not exist.
  • I have considered, and confirmed that this submission will be valuable to others.
  • I accept that this submission may not be used, and the pull request closed at the will of the maintainer.
  • I give this submission freely, and claim no ownership to its content.
  • I have mentioned this change in the changelog.

My familiarity with the project is as follows (check one):

  • I have never used CCExtractor.
  • I have used CCExtractor just a couple of times.
  • I absolutely love CCExtractor, but have not contributed previously.
  • I am an active contributor to CCExtractor.

Closes #1697

The iconv crate is currently unmaintained and broken on the latest version of rust (see this issue). This PR migrates the encoding from iconv to the well maintained encoding_rs library.

Note that the rust implementation for this particular case was and still is buggy, regression tests 142, 147 and 149 all of which test this specific scenario have historically had empty output files (see here for eg), which is why the tests were passing. The C builds however, produce the proper outputs.

@hrideshmg
Copy link
Contributor Author

hrideshmg commented May 1, 2025

The failing unit test doesn't seem to be because of this change🤔 Will look into it later

@ccextractor-bot
Copy link
Collaborator

CCExtractor CI platform finished running the test files on linux. Below is a summary of the test results, when compared to test for commit 9e2a594...:

Report Name Tests Passed
Broken 11/13
CEA-708 13/14
DVB 6/7
DVD 0/3
DVR-MS 2/2
General 10/27
Hauppage 1/3
MP4 3/3
NoCC 10/10
Options 79/86
Teletext 7/21
WTV 13/13
XDS 27/34

All tests passing on the master branch were passed completely.

NOTE: The following tests have been failing on the master branch as well as the PR:

Congratulations: Merging this PR would fix the following tests:


Check the result page for more info.

@steel-bucket
Copy link

The failing unit test doesn't seem to be because of this change🤔 Will look into it later

It's because of the new Rust version 1.86. I've added a PR fixing it #1694

@hrideshmg
Copy link
Contributor Author

hrideshmg commented May 1, 2025

It's because of the new Rust version 1.86. I've added a PR fixing it #1694

Ah i see, thanks

@canihavesomecoffee canihavesomecoffee merged commit 5b327c7 into CCExtractor:master May 4, 2025
15 of 16 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.

[BUG] CEA-708 hangs forever if character set is specified on rust builds
4 participants