primordic/IssueDupesLite huggingface dataset:
Repository: igrigorik/videospeed

Issue #611: Google Music at speed 1.05 is changing pitch instead of speed
Created: 2020-03-12T15:53:00Z
While listening to Google Music, if I increase the speed from 1 to 1.05, it changes the pitch as well. If I continue to increase to 1.10, the pitch goes back to normal, and speed is increased normally.
The same happen the other way: 0.95 and pitch also change with speed. 0.90 and pitch goes back to normal.

Duplicate issue #612: Pitch shifting when making small speed changes.
Created: 2020-03-14T15:30:26Z
When you change the speed to a value from 1.01-1.06, or .99-.95. The pitch shifts accordingly. I don't think this is meant to happen.

Closing comment (2020-03-15T22:07:11Z): Duplicate of #611
Repository: igrigorik/videospeed

Issue #572: speed controller not showing on first page load
Created: 2019-12-31T19:48:57Z
I'm using the brave browser and have noticed that the speed controls won't show when I first load a YouTube page. If I click reload they will appear immediately. Has anyone encountered this issue?

Duplicate issue #576: Control Regularly Doesn't Show Up
Created: 2020-01-10T23:34:42Z
The speed controls often don't show up on Youtube or Vimeo.
Here is the latest:  https://player.vimeo.com/video/352485178?api=false&autoplay=auto&byline=false&color=%23444444&portrait=false&title=false
No matter what I do (including trying different browser with no cookies etc.) the controls do not show up on that video.

Closing comment (2020-01-13T16:57:02Z): Looks like a duplicate of #572, which was closed because it is fixed in the most recent release, but the version on the chrome web store still appears to be the broken 0.5.8 release.
Repository: igrigorik/videospeed

Issue #75: Control in the same spot as Netflix control in full screen
Created: 2015-12-03T08:35:52Z
Rather than have you try to accommodate for every html 5 video player, hat if you added x and y % location settings so the user can just put it where they want it. So if I wanted it in the top right instead I would set location to something like x = 85%, y = 10%.
By the way thank you for the awesome add on!

Duplicate issue #95: Ability to change the location to top right position
Created: 2016-03-22T16:22:21Z
It's a nice to have feature.

Closing comment (2016-03-22T16:42:31Z): Duplicate of #75 and #82
Repository: igrigorik/videospeed

Issue #158: Question: Add speed controler for <audio>?
Created: 2016-12-30T07:11:02Z
Today I listening to a podcast online and wanted to increase the playback speed. It was fairly easy to do that after grabbing the audio element and setting it's playback rate.
var audio = document.getElementById("myAudio");
audio.playbackRate = 0.5;

My question is: would it make sense to open a PR & write the code for this? Or is this project focused on only on videos?

Duplicate issue #183: Can we have a modifier for soundcloud.com?
Created: 2017-03-01T21:31:11Z
Could use speed modifier for non-music, interviews etc.

Closing comment (2017-03-01T22:36:09Z): Dupe of #158, let's continue there. :)
Repository: igrigorik/videospeed

Issue #389: Mouse events aren't working
Created: 2018-11-17T03:51:33Z
I can use D and S to slow and speed up videos but the overlap isn't responding to clicks.
Using "Chrome 71.0.3578.53 beta (64-bit)"
I've restarted chrome, disabled & renabled the extension.
When I hover over the overlay I get different mouse pointers but I can't drag it and clicking does nothing.

Duplicate issue #394: App stopped working 
Created: 2018-12-05T12:52:29Z
All of a sudden it's stopped working for the first time

Closing comment (2018-12-07T10:58:46Z): Is this just mouse events or all at once? If just mouse events duplicate of
#389

…
On Fri, Dec 7, 2018, 13:50 paulocesar-ufu ***@***.*** wrote:
 Same here! Chrome 71

 —
 You are receiving this because you are subscribed to this thread.
 Reply to this email directly, view it on GitHub
 <#394 (comment)>,
 or mute the thread
 <https://github.com/notifications/unsubscribe-auth/AE94J_G8ih9UqWDCZKVOhzoeb8Pumf59ks5u2kffgaJpZM4ZCqtu>
 .
Repository: igrigorik/videospeed

Issue #786: controller position botched on youtube
Created: 2021-03-17T01:43:04Z
in #752 i changed how the controller is positioned.
this change is landed in git, but hasn't gone to CWS yet.
today @pepijnmm  reported a bug about my change:

@paulirish For me this merge breaks the youtube controller position(just noticed hadn't updated in a while)
I tested compared to enforce normal white-space rendering for controller (#753) so only this commit changed things
Before merge:

after merge


i can repro this as well.
fixing this is going to require some more thinking (and some testing..)
We'll have to find a positioning calculation that's respectful of offsetParent but still gives results across all target sites.

Duplicate issue #850: (new) Video controller appears near the center of the video, instead of top left
Created: 2021-08-28T13:25:36Z
before the design of the controller changed, it always appeared at the top left,
now, it always gets in the way of the video, i cant always drag it to the top left, its too much trouble

Closing comment (2021-09-01T21:19:38Z): Duplicate of #786
Repository: igrigorik/videospeed

Issue #786: controller position botched on youtube
Created: 2021-03-17T01:43:04Z
in #752 i changed how the controller is positioned.
this change is landed in git, but hasn't gone to CWS yet.
today @pepijnmm  reported a bug about my change:

@paulirish For me this merge breaks the youtube controller position(just noticed hadn't updated in a while)
I tested compared to enforce normal white-space rendering for controller (#753) so only this commit changed things
Before merge:

after merge


i can repro this as well.
fixing this is going to require some more thinking (and some testing..)
We'll have to find a positioning calculation that's respectful of offsetParent but still gives results across all target sites.

Duplicate issue #851: VideoSpeed Controller not appearing in the corner of the screen
Created: 2021-08-30T07:19:09Z
VideoSpeed Controller not appearing in the corner of the screen, after the latest update.
Despite moving it to a corner, it again goes to its original position on the next video.
its position is very irritating.
I do not want to hide it.
I need to see it, in the corner.

Closing comment (2021-09-01T21:19:05Z): Duplicate of #786
Repository: igrigorik/videospeed

Issue #12: Unusable in full screen youtube video
Created: 2014-08-27T21:32:10Z
When in full screen moving the cursor near the top edge of the video makes the title + social buttons bar appear over the extension controls, making them almost impossible to use.

Mac OS X 10.9.4 / Chrome 36

Duplicate issue #13: on-screen control covered by overlay
Created: 2014-10-01T02:57:30Z
A lot of videos recently show title or other information along the top of a video on hover, this tends to cover-up the onscreen speed control making it difficult to adjust.

Closing comment (2014-10-30T06:27:57Z): Dupe of #12, closing.
Repository: igrigorik/videospeed

Issue #394: App stopped working 
Created: 2018-12-05T12:52:29Z
All of a sudden it's stopped working for the first time

Duplicate issue #398: Video Speed Does not Work
Created: 2018-12-09T22:18:31Z
I use this app more than anything, and all of the sudden it stopped working. See video for what's going on - https://www.useloom.com/share/3f67ab0ec8794270b2464f332dfc925b
Any suggestions?

Closing comment (2018-12-12T04:01:13Z): Dupe of #394. Closing, let's continue there.
Repository: igrigorik/videospeed

Issue #786: controller position botched on youtube
Created: 2021-03-17T01:43:04Z
in #752 i changed how the controller is positioned.
this change is landed in git, but hasn't gone to CWS yet.
today @pepijnmm  reported a bug about my change:

@paulirish For me this merge breaks the youtube controller position(just noticed hadn't updated in a while)
I tested compared to enforce normal white-space rendering for controller (#753) so only this commit changed things
Before merge:

after merge


i can repro this as well.
fixing this is going to require some more thinking (and some testing..)
We'll have to find a positioning calculation that's respectful of offsetParent but still gives results across all target sites.

Duplicate issue #855: Controller Position is not fixed, yet!
Created: 2021-09-02T17:56:11Z
As the title says and as I observed, ambititions to fix the controller on videos to put it back into the left corner weren't successful, yet, since taking updates etc. doesn't result in position fix from lately discussed problems more users reported.
Thanks ahead, keep up the good work!
Best Regards,
a Fan

Closing comment (2021-09-02T18:08:04Z): Duplicate of #786
Repository: image-rs/image

Issue #325: thread '<main>' panicked at 'arithmetic operation overflowed'
Created: 2015-03-11T20:20:07Z
When I try to load a JPEG file I get the following error:
thread '<main>' panicked at 'arithmetic operation overflowed', ./src/jpeg/entropy.rs:147

This seems to happen with any JPEG. The issue exists in the opening.rs example.

Duplicate issue #387: thread '<main>' panicked at 'shift operation overflowed'
Created: 2015-04-17T04:47:02Z
I'm getting a thread '<main>' panicked at 'shift operation overflowed' error from src/jpeg/entropy.rs:151 when I load this image:

It seems like there's something questionable about that code, given the comment. Any ideas?

Closing comment (2015-04-19T09:48:45Z): Closing as duplicate of #325 (see #209). In the meanwhile you can compile your program in release mode (cargo build/run --release).
Repository: image-rs/image

Issue #599: Alpha blending should be performed in linear color space
Created: 2016-12-13T22:02:14Z
It is generally better to perform alpha blending in linear color space, that's e.g. how it is usually performed on GPU. Here are some example pictures which show difference between gamma-correct and gamma-incorrect blending.

Duplicate issue #613: [Not solved] imageops::overlay for RGBA images is not quite correct because float accuracy is too low
Created: 2017-01-20T14:02:46Z
I'm trying to get behavior like in GIMP and I found a problem with the accuracy.
Add white background (RGBA: [255, 255, 255, 255]) for this image using GIMP and subj:
https://i.imgur.com/FzTt9Us.png
If you compare results pixel-to-pixel, you can get this difference:
https://i.imgur.com/XpmsCfP.png
While debugging, I found that result has numbers like 254.99998, after f32 => u8 it is 254. So I can add 0.001 and fix this:
impl<T: Primitive> Blend for Rgba<T> {
  fn blend(&mut self, other: &Rgba<T>) {
    /* ... */
    // Cast back to our initial type on return
    *self = Rgba([
      NumCast::from((max_t * out_r) + 0.001).unwrap(),
      NumCast::from((max_t * out_g) + 0.001).unwrap(),
      NumCast::from((max_t * out_b) + 0.001).unwrap(),
      NumCast::from((max_t * alpha_final) + 0.001).unwrap()
    ])
  }
}
But this is bad solution of course :) But I don't know good solution.
P.S. round() is not solution for this image: result is still different.

Closing comment (2017-01-21T10:36:30Z): Probably duplicate of #599.
Repository: image-rs/image

Issue #1045: Support EXIF 
Created: 2019-09-28T11:57:50Z
I would like to be able to read and write EXIF meta data, especially for PNG and JPEG.
My specific use case for this functionality is
a) storing/loading configuration within/from screenshots for reproducibility,
b) maintaining metadata when processing images.
If there is interest I would be very willing to implement this - hints and feedback welcome :)

Duplicate issue #1077: The jpeg encoder hardcodes the pixel density of the image 
Created: 2019-11-23T17:35:57Z
I have a rust application that deals mainly with painting reproductions, for which some people find the density information embedded in JPEG files important.
The JPEG encoder of this crate contains a hardcoded JFIF header for all the files it produces.
It would be nice if it were possible to customize the information in this header.
I am interested in the pixel density information, but the header can also contain an uncompressed thumbnail. It would be nice if it were possible to set it too.

Closing comment (2019-11-23T19:01:52Z): Related to #1045 and #1067.
Repository: image-rs/image

Issue #240: Use associated types, remove old_orphan_check
Created: 2015-01-15T22:57:37Z
Many type parameters — for example T on Pixel<T>, should actually be associated types. I suspect that it will fix the old_orphan_check warnings when implemented.
I am working on this, see https://github.com/ruud-v-a/image/tree/assoc-types.

Duplicate issue #261: build warnings
Created: 2015-01-24T08:09:24Z
/home/andy/.cargo/git/checkouts/image-f4d4ca6613133df7/master/src/lib.rs:14:12: 14:28 warning: feature is deprecated and will only be available for a limited time, please rewrite code that relies on it
/home/andy/.cargo/git/checkouts/image-f4d4ca6613133df7/master/src/lib.rs:14 #![feature(old_orphan_check, old_impl_check)]
                                                                                       ^~~~~~~~~~~~~~~~
/home/andy/.cargo/git/checkouts/image-f4d4ca6613133df7/master/src/lib.rs:14:30: 14:44 warning: feature is deprecated and will only be available for a limited time, please rewrite code that relies on it
/home/andy/.cargo/git/checkouts/image-f4d4ca6613133df7/master/src/lib.rs:14 #![feature(old_orphan_check, old_impl_check)]
                                                                                                         ^~~~~~~~~~~~~~
/home/andy/.cargo/git/checkouts/image-f4d4ca6613133df7/master/src/lib.rs:14:12: 14:28 warning: feature is deprecated and will only be available for a limited time, please rewrite code that relies on it
/home/andy/.cargo/git/checkouts/image-f4d4ca6613133df7/master/src/lib.rs:14 #![feature(old_orphan_check, old_impl_check)]
                                                                                       ^~~~~~~~~~~~~~~~
/home/andy/.cargo/git/checkouts/image-f4d4ca6613133df7/master/src/lib.rs:14:30: 14:44 warning: feature is deprecated and will only be available for a limited time, please rewrite code that relies on it
/home/andy/.cargo/git/checkouts/image-f4d4ca6613133df7/master/src/lib.rs:14 #![feature(old_orphan_check, old_impl_check)]
                                                                                                         ^~~~~~~~~~~~~~

Closing comment (2015-01-24T08:11:41Z): Duplicate of #240.
Repository: image-rs/image

Issue #786: Color space information
Created: 2018-06-26T05:09:38Z
It would be nice to be able to access image color space information, which is often stored in image metadata.
Ogeon's palette crate has a good overview of color spaces as they relate to image formats.
For background, I'm writing a simple game framework, and I'd like to be able to correctly convert to a linear color space when loading assets, which I'm unable to do without knowing the image's color space.
Thanks!

Duplicate issue #1030: [Feature Request] Ability to apply color profiles to an ImageBuffer/DynamicImage
Created: 2019-09-05T21:13:56Z
I would like to be able to apply an .icc color profile to an ImageBuffer
My specific use case for this functionality is to enable converting an image to CMYK colorspace for printing.
This is more generally applicable to printed documents.
Draft
let cmyk_profile = include_bytes!("../GRACoL 2013 CRPC6.icc");
let mut my_image = DynamicImage::ImageRgb8(...);
my_image.apply_color_profile(cmyk_profile);

Closing comment (2019-09-06T02:13:30Z): This is related to #786. I'd like to have proper color space support, but there are a bunch of other higher priority items for the crate so it probably won't be coming any time soon (unless you or someone else want to try implementing it!)
Repository: image-rs/image

Issue #91: GIF partially broken?
Created: 2014-09-04T21:25:28Z
This sunflower from makes opening.rs fail with index out of bounds. This is maybe related to #63. The quilt design example on the other hand works…

Duplicate issue #63: Possible issue with animated GIFs
Created: 2014-08-11T00:24:37Z
I don't have the error message on hand (wasn't much use anyways), but it was an index out of bounds error when iterating the pixels of an image. For some reason, the internal vector length of the ImageBuf did not match width * height and so the iterator was going past the end. I was able to reduce the problem domain to certain animated GIFs, though I cannot provide the images I used for personal reasons.

Closing comment (2014-12-25T18:24:45Z): duplicate of #91 I guess should be fixed soon.
Repository: image-rs/image

Issue #1952: GenericImage::copy_from can't be used with RGB, only with RGBa
Created: 2023-06-26T18:19:05Z
I'm trying to create DynamicImage from FlatSamples, which I got from another library.
use image::GenericImage;

fn main() {
    let w = 640;
    let h = 480;
    let bits_per_pixel = 3;

    let buffer = image::FlatSamples {
        samples: vec![],
        layout: image::flat::SampleLayout::row_major_packed(bits_per_pixel, w, h),
        color_hint: None,
    };

    let view = buffer.as_view::<image::Rgb<u8>>().unwrap();

    let mut dyn_img = image::DynamicImage::new_rgb8(w, h);
    let _ = dyn_img.copy_from(&view, 0, 0);
}

Playground link
This is the compilation error output:
error[[E0271]](https://doc.rust-lang.org/stable/error_codes/E0271.html): type mismatch resolving `<View<&[u8], Rgb<u8>> as GenericImageView>::Pixel == Rgba<u8>`
    --> src/main.rs:17:31
     |
17   |     let _ = dyn_img.copy_from(&view, 0, 0);
     |                     --------- ^^^^^ expected `Rgba<u8>`, found `Rgb<u8>`
     |                     |
     |                     required by a bound introduced by this call
     |
     = note: expected struct `Rgba<u8>`
                found struct `Rgb<u8>`

How can I create DynamicImage without an Alpha channel?

Duplicate issue #2274: DynamicImage:from SubImage<&DynamicImage>::to_image creates Rgba8 instead of L16
Created: 2024-07-01T09:28:22Z
I am using the code below to transform a grayscale image from SubImage<&DynamicImage> to DynamicImage.
Is there something I am missing during this conversion?
Expected
I would expect the new dest image to be L16 as well.
Actual behaviour
dest image is of Rgba8.
Reproduction steps
// source = SubImage<&DynamicImage>
debug!("{}", source.inner().color()); // outputs: L16
let dest = DynamicImage::from(source.to_image());
debug!("{}", dest.color()); // outputs: Rgba8

Closing comment (2024-07-02T05:20:54Z): This is related to #1952. The DynamicImage enum implements GenericImage<Rgba<u8>> even though it really shouldn't
Repository: image-rs/image

Issue #1548: ImageBuffer::write_to akin to DynamicImage::write_to
Created: 2021-08-29T16:11:34Z
I would like to be able to call a method like DynamicImage::write_to on ImageBuffer.
My specific use case for this functionality is to write images that I statically know the type of to buffers.
This is more generally applicable to anybody that wants to write an image not to a file.

Duplicate issue #1666: Handling raw buffer (posting to s3)
Created: 2022-02-03T07:20:42Z
I've been trying to take the raw buffer and use its contents to put an image into an s3 bucket I have using the https://github.com/durch/rust-s3 library. I believe I can "read" the buffer somehow, such as if I were to do a multi-part file upload (I've done this in Go before). However, I'm not sure what direction to take in Rust.
Overall, I'm trying to use the buffer to write to an actual image I can save into s3. I'm fairly new to Rust, so I'm all ears. I have some code snippets below so you can get an idea of what I'm trying to do. It's very barebones right now as I'm trying to get basic functionality. But hopefully, y'all can get the gist.
// inside my "upload_image" function
let mut img = RgbaImage::new(512, 512);
// some image manipulation stuff
img.save("image/assets/test.png").unwrap(); // for development purposes only

spaces::upload_image(img.as_raw().clone()); // this is where I pass in the raw buffer. here's when things get tricky.
Now here's the spaces::upload_image function I wrote:
// spaces::upload_image()
pub async fn upload_image(bytes: Vec<u8>) {
    untokio::v1::spawn(async move {
        let mut bucket = get_bucket();
        bucket.add_header("Content-Length", &*bytes.len().to_string()); // i added this from a go project of mine hoping this makes a difference

		// here's where I wrote the buffer back to the file system as a test. its corrupted
		let path = std::path::Path::new("image/assets/test-1.png");
        let mut file = std::fs::File::create(&path)?;

		file.write_all(bytes.as_bytes(); // is this even proper?

        return bucket
            .put_object_with_content_type(
                "unknown.png",
                bytes.as_bytes(), // is this even proper too?
                "image/png"
            )
            .await;
    }).await.unwrap();
}

Closing comment (2022-02-03T19:47:26Z): I can't use the write_to method in this case on ImageBuffer. Similar to #1548 as well. Any other options I have? I'll keep digging through the docs to see if I can come up with something.
Edit: I have a base file I use and when I open that, it returns DynamicImage, so I can call write_to on that. I might be able to just use that cause that's my original plan. However, what can I do about RgbImage::new() for future reference when calling the write_to method?
Repository: image-rs/image

Issue #2247: Opening and saving an sRGB image yields different colors
Created: 2024-05-29T22:10:55Z
This happens in image 0.25.1
Expected
Colors should be preserved when an image is opened and saved.
Actual behaviour
Two different images with different colors (after image opened and saved, it’s much more yellow)
Reproduction steps
Take an sRGB IEC61966-2.1 encoded jpeg, open it with Reader, call the save method on the result, and compare the before and after images. Looking at meta data, it preserves the sRGB color profile, but the result is different colors.
Provide source code, a repository link, or steps:
use image::{io::Reader as ImageReader, ImageError};

fn main() -> Result<(), ImageError> {
    let image = ImageReader::open("input.jpg")?.decode()?;
    image.save("output.jpg")?;

    Ok(())
}

Duplicate issue #2333: updating from image v0.24 to image v0.25 is causing colour distortions
Created: 2024-09-25T09:58:35Z
Hello !
I don't have the time to investigate more deeply on this, but I wanted to let you know. Updating from image-rs v0.24 to v0.25 causes serious color distortions in decoded jpeg images.
This can be reproduced by compiling dezoomify-rs against the two different versions of image-rs.
I fixed the issue in dezoomify-rs by downgrading image-rs, but I thought this may be worth sharing here.
The detailed reproduction steps are here: lovasoa/dezoomify-rs#259 (comment)
My best guess is that image tiles like these are not decoded properly: tiles.zip

Closing comment (2024-10-14T17:07:39Z): Seems a duplicate of #2247
Repository: immunant/c2rust

Issue #162: Add basic C++ support
Created: 2019-09-24T04:23:32Z
Maybe anything except metaprogramming?

Duplicate issue #235: Using LLVM to translate C++ to C to Rust
Created: 2020-02-07T18:38:17Z
I'm seeing rumors that LLVM can transpile C++ to C.. which you could then transpile to Rust.
Would be nice if you guys could use that or another C++ to C transpiler to allow transpiling C++ as well.

Closing comment (2020-03-06T08:31:13Z): Duplicate of #162 ?
Repository: immunant/c2rust

Issue #41: Broken link in c2rust-refactor/README.md
Created: 2019-03-04T23:50:26Z
The file points to the dead link:
https://github.com/immunant/c2rust/blob/master/c2rust-refactor/commands.html

Duplicate issue #191: Docs link broken
Created: 2019-10-31T22:20:27Z
The docs link in this section: https://github.com/immunant/c2rust/blob/master/c2rust-refactor/README.md#usage appears to be broken.

Closing comment (2019-10-31T22:58:54Z): Duplicate of #41
Repository: immunant/c2rust

Issue #926: rewriter: type alias for struct does not support hypothetical lifetimes
Created: 2023-05-11T22:29:40Z
struct Test<'a>(&'a u8);
type Alias<'a> = Test<'a>;
fn f<'a>(x: Alias<'a>) {}
For the code above if Test gets a hypothetical lifetime parameter, for instance, Alias won't get rewritten. @spernsteiner thinks this has to do with the destructing of the HIR ty being not properly supported.
Originally posted by @spernsteiner in #915 (comment)

Duplicate issue #991: analyze: missing hypothetical lifetimes in type alias RHS
Created: 2023-07-17T18:40:55Z
struct NeedsLifetime {
    p: *mut u8,
}

type Alias = NeedsLifetime;
After rewriting:
struct NeedsLifetime<'h1> {
    p: &'h1 (u8),
}

type Alias = NeedsLifetime;
This output is invalid because the RHS of type Alias uses NeedsLifetime without passing a lifetime argument.
I'm not sure what's the best fix for this.  One idea is to add hypothetical params to Alias corresponding to the hypothetical params of all the structs that appear in the RHS.  But anywhere types are rewritten, Alias will get unfolded by rewrite::ty due to the mismatch between the HIR Ty and the ty::Ty (the HIR resolves to Alias, but the ty::Ty refers to NeedsLifetime directly), so the only remaining uses of Alias should be in non-rewritten functions.  So maybe we should just fill in 'static for all the hypothetical arguments on the RHS, since the use in non-rewritten code will be unsafe regardless.

Closing comment (2023-07-17T22:22:47Z): Related and not quite a duplicate: #926
Repository: immunant/c2rust

Issue #323: Error on install: "subslice patterns are unstable"
Created: 2021-01-23T08:51:41Z
Hi,
I recently tried to install c2rust using the README instructions. I installed the nightly-2019-12-05 toolchain, and ran cargo +nightly-2019-12-05 install c2rust. Unfortunately, I kept getting the following build error in several places.

error[E0658]: subslice patterns are unstable
--> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/object-0.23.0/src/read/mod.rs:162:41
|
162 |             [0x7f, b'E', b'L', b'F', 1, ..] => FileKind::Elf32,
|                                         ^^
|
= note: for more information, see rust-lang/rust#62254
= help: add #![feature(slice_patterns)] to the crate attributes to enable

However, when I compile on the latest version I get past this error. However, I get a different one:

error[E0462]: found staticlib rustc instead of rlib or dylib
--> /home/user/.cargo/registry/src/github.com-1ecc6299db9ec823/c2rust-ast-builder-0.15.0/src/lib.rs:2:1
|
2 | extern crate rustc;
| ^^^^^^^^^^^^^^^^^^^
|
= help: please recompile that crate using --crate-type lib
= note: the following crate versions were found:

Is it possible that the targeted version of Nightly has changed without updating the README? Is there anything else I should try to install c2rust successfully?

Duplicate issue #350: Installation error with latest rustc-demangle
Created: 2021-09-14T02:15:58Z
Hi, thanks for this project! I wanted to report an error during installation with rustc-demangle.
cargo +nightly-2019-12-05 install c2rust
Error
error[E0658]: use of unstable library feature 'matches_macro'
   --> /Users/andrew/.cargo/registry/src/github.com-1ecc6299db9ec823/rustc-demangle-0.1.21/src/v0.rs:700:20
    |
700 |                 if matches!((quote, c), ('\'', '"') | ('"', '\'')) {
    |                    ^^^^^^^
    |
    = note: for more information, see https://github.com/rust-lang/rust/issues/65721
    = help: add `#![feature(matches_macro)]` to the crate attributes to enable

It appears to be due to this change in rustc-demangle 0.1.21, which uses the matches! macro, which isn't stable in nightly-2019-12-05.

Closing comment (2021-09-14T03:38:27Z): Have you tried cargo +nightly-2019-12-05 install c2rust --locked? If so, this is likely a duplicate of #323.
Repository: immunant/c2rust

Issue #204: Two different function types with identical names are merged in reorg definitions
Created: 2019-11-19T19:58:56Z
qsort_r.rs has a three param cmp_t:
https://github.com/immunant/newlib-rs/blob/786b327543ce631ab48d7881ab97d5c8dd4a4d20/src/search/qsort_r.rs#L11-L14
but qsort.rs has a two param cmp_t:
https://github.com/immunant/newlib-rs/blob/786b327543ce631ab48d7881ab97d5c8dd4a4d20/src/search/qsort.rs#L83-L86
After running refactorer reorg, it'll point one of the two to the other despite the different number of params:
error[E0061]: this function takes 2 parameters but 3 parameters were supplied
   --> src/search/qsort_r.rs:514:26
    |
514 |                  } else if cmp.expect("non-null function pointer")(b as
    |  __________________________^
515 | |                                                                      *const libc::c_void,
516 | |                                                                  c as
517 | |                                                                      *const libc::c_void,
518 | |                                                                  thunk) >
    | |_______________________________________________________________________^ expected 2 parameters

Duplicate issue #207: Reorg incorrectly merges different structures with same name from different headers
Created: 2019-11-20T01:33:31Z
ioq3 contains two versions of struct mdct_lookup which are completely different (but both defined in headers named mdct.h). When running reorg on ioq3, it pulls the libvorbis version of mdct_lookup into opus_1_2_1/celt/mdct.rs instead of the local one, which is completely wrong and refuses to compile.

Closing comment (2019-11-20T14:31:42Z): Maybe related to #204?
Repository: immunant/c2rust

Issue #365: Create a new release
Created: 2022-01-28T13:57:19Z
Hi!
Are there any plans to publish a new release? As far as I see, there are a lot of changes, which can be delivered to end-users with a new release.
Thanks in advance!

Duplicate issue #388: Git version, release
Created: 2022-05-02T13:42:33Z
There's been a lot of change in C2Rust (for the better, thanks for that!), and the version in c2rust/Cargo.toml is still at 0.15.1.
Please consider reporting the git commit in --version if available, and/or setting the version to 0.16.0-git between releases. That'd help a lot when debugging whether something is a C2Rust or downstream issue. ("Which version of c2rust are you using?" is a bit hard to answer for those who run into an issue the first time).
Speaking of releases, would you consider uploading a version to cargo at some point in time again? Now that it works on regular Rust releases, that'd open up for plain cargo install c2rust.

Closing comment (2022-05-09T23:36:12Z): The release itself is tracked in #365.
Repository: immunant/c2rust

Issue #1125: Latest version on crates.io is 0.18.0 instead of 0.19.0
Created: 2024-09-15T17:28:26Z
cargo install c2rust tries to install version 0.18.0 from crates.io, while the latest release on GitHub is 0.19.0.
The installation fails for me because 0.18.0 does not support Rust stable >= 1.80.
⬢ [archlinux] ❯ cargo install c2rust
    Updating crates.io index
  Installing c2rust v0.18.0

Duplicate issue #1149: Installation fails with crates.io version
Created: 2024-10-23T15:15:14Z
Currently, on crates.io, the version is listed as 0.18, not 0.19 as is listed on this repo, and fails with the following error when building using cargo install c2rust with no additional flags on cargo version 1.82.0.
error[E0282]: type annotations needed for `Box<_>`
  --> [REDACTED]/index.crates.io-6f17d22bba15001f/time-0.3.18/src/format_description/parse/mod.rs:83:9
   |
83 |     let items = format_items
   |         ^^^^^
...
86 |     Ok(items.into())
   |              ---- type must be known at this point
   |
   = note: this is an inference error on crate `time` caused by an API change in Rust 1.80.0; update `time` to version `>=0.3.35` by calling `cargo update`

For more information about this error, try `rustc --explain E0282`.

However, installing from source works fine:
cargo install --git https://github.com/immunant/c2rust.git c2rust
[spew]
Installed package `c2rust v0.19.0 (https://github.com/immunant/c2rust.git#516b30e3)` (executables `c2rust`, `c2rust-transpile`)

Closing comment (2024-11-18T10:31:03Z): This is fundamentally a duplicate of #1125 (see #1125 (comment)), so I'm closing this to centralize things there.  Once we properly publish 0.20.0, this issue should be fixed.
Repository: immunant/c2rust

Issue #463: Panic caused by missing `llvm-config` on Windows
Created: 2022-06-26T12:10:55Z
Official installers of LLVM for Windows (from https://github.com/llvm/llvm-project/releases) don't ship llvm-config{.exe}. This causes unwrap at https://github.com/immunant/c2rust/blob/v0.16.0/c2rust-ast-exporter/build.rs#L226 to panic.

Duplicate issue #787: failed to run custom build command for `c2rust-ast-exporter v0.16.0`
Created: 2023-01-19T16:28:57Z
I'm getting this error on Windows 11; I found fixes for other platforms, but not for Windows 11.
More info:
Caused by:
  process didn't exit successfully: `C:\Users\murra\AppData\Local\Temp\cargo-installTxdqRq\release\build\c2rust-ast-exporter-29ae4383fe719000\build-script-build` (exit code: 101)
  --- stderr
  thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "The system cannot find the file specified." }', C:\Users\murra\.cargo\registry\src\github.com-1ecc6299db9ec823\c2rust-ast-exporter-0.16.0\build.rs:226:34
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...
error: failed to compile `c2rust v0.16.0`, intermediate artifacts can be found at `C:\Users\murra\AppData\Local\Temp\cargo-installTxdqRq`

Closing comment (2023-01-19T19:54:58Z): I believe this is a duplicate of #463.
Repository: immutables/immutables

Issue #761: stagedBuilder=true and implementationNestedInBuilder=true don't work together
Created: 2018-03-27T03:41:39Z
example code:
https://gist.github.com/nogenerics/40598533d6a5bef5776cfb04e3e4f9e8
note: the ABuildStage, BBuildStage, BuildFinal interfaces are not generated, I did not omit any files
same results for 2.5.5, 2.5.6, and 2.6.0-alpha1

Duplicate issue #470: Staged Builders should work with ImplementationVisibility.PRIVATE (to hide Immutable* and use *Builder)
Created: 2016-10-19T10:52:05Z
Upon using the new staged builders introduced by @elucash in #438 (FYI @androidfred @agebhar1), which are very cool, I've noticed a combination of stagedBuilder together with ImplementationVisibility.PRIVATE which could use an improvement / is broken, try this:
@Immutable
@Value.Style(stagedBuilder = true, visibility = ImplementationVisibility.PRIVATE)
abstract class Example {

    abstract int number();

}

This generates:
public final class ExampleBuilder implements NumberBuildStage, BuildFinal {
but.. there are no NumberBuildStage & BuildFinal generated!

Closing comment (2018-05-19T07:38:45Z): addressed (in duplicate #761) by disabling this combination, basically, I think this combination doesn't provide much value as outer builder exposes full builder API, unrestricted by build interfaces. (closing this as duplicate, but it's actually the other way around ))
Repository: immutables/immutables

Issue #1310: @Builder.Factory is missing a way to extend an interface or abstract class
Created: 2021-06-14T23:49:37Z
I have two different factory methods "a" and "b" marked with @Builder.Factory.
ABuilder returns A, which extends S.
BBuilder returns B, which extends S.
I need an interface SBuilder which is implemented by both ABuilder and BBuilder.
The reason:  Both factory methods accept  a "x" field.  It's not a field on S, A or B, which is the reason I can't use a normal builder.    This will be a parameter to a method that calls x() and build() and stores the result in a type S field.
Nasty work-around:
   @Builder.Factory
   public static Function<X, S> a( .... ) {
       return x -> {
           String foo = x.foo;
           String bar = x.bar;
           return ImmutableA.of(foo, bar, ...);
      }
   }

Now I can pretend Function(X, S) is the SBuilder that I actually want.

Duplicate issue #1285: Support for java records
Created: 2021-04-08T15:02:33Z
Now with Java 16 we finally  have java records which are native data holders, but what java records lack is the Builder functionality.
It would be nice to add support for Java records, so it's possible to generate Builders for existing java records(as it's done today for interfaces).

Closing comment (2022-07-01T11:13:16Z): A further limitation of the @Builder.Constructor workaround for records is that the generated builder cannot be customised. For example, we cannot specify a builder base class like we can for immutables (similar to #1310), and we cannot extend the generated builder ourselves (#1080).
Repository: immutables/immutables

Issue #1360: Name clash with synthetic parameter in equalTo
Created: 2022-02-01T13:22:25Z
Consider this type:
package org.immutables.fixture.synthetic;

import org.immutables.value.Value;

@Value.Immutable
public interface Synthetic {

    boolean synthetic();
}

There is a method generated with a synthetic parameter
private boolean equalTo(int synthetic, ImmutableSynthetic another) {
    return synthetic == another.synthetic;
  }

In this case compilation fails. If synthetic() would be an int and probably others numbers the equals would compile which would lead to wrong results

Duplicate issue #1363: Derived boolean used in equals as int
Created: 2022-02-08T14:33:09Z
We have boolean derived attribute that worked as expected in our previous version of immutables (2.7.4), but in new version (2.9.0) it gets weirdly converted into int in the equals method.
With old version we had this:
  public boolean equals(@Nullable Object another) {
    if (this == another) return true;
    return another instanceof Bla
        && equalTo((Bla) another);
  }

  private boolean equalTo(Bla another) {
    return first.equals(another.first)
        && derived == another.derived
        && Double.doubleToLongBits(second) == Double.doubleToLongBits(another.second)
        && Objects.equals(third, another.third);
  }

With new version we get this:
  public boolean equals(@Nullable Object another) {
    if (this == another) return true;
    return another instanceof Bla
        && equalTo(0, (Bla) another);
  }

  private boolean equalTo(int derived, Bla another) {
    return Double.doubleToLongBits(second) == Double.doubleToLongBits(another.second)
        && Objects.equals(third, another.third)
        && first.equals(another.first)
        && derived == another.derived;
  }

We did use inheritance in out interfaces marked with @value, but I expected that would only have impact on order of parameters in constructors and factory methods.
Does inheritance have any impact on derived attributes? And if so, how to handle this situation?

Closing comment (2022-02-08T16:25:38Z): This might be related to #1360 , as our derived parameter is also called synthetic
Repository: immutables/immutables

Issue #110: Integrate custom builders into builder generation
Created: 2015-05-10T01:26:54Z
Of course we already have pretty decent support for different kind of collections and Optional, but would it be useful to integrate custom builders for some properties?
I'll try to show it using an example.
@Value.Immutable
interface MyValue {
   MyAttribute attribute();
}
// Somewhere we define custom builder for the MyAttribute
class MyAttributeBuilder {
  ...
  void append(String string) {...}
  void replace(String string) {...} // return type here is irrelevant
  MyAttribute build() {...} // return type and method name "build" will be used for matching
}
// If we bind MyAttributeBuilder to MyValue for MyAttribute
MyValue myValue = ImmutableMyValue.builder()
    .appendAttribute("xyz") // "append*" is derived from custom builder method name
    .replaceAttribute("abc")  // "replace*" is derived from custom builder method name
    .build();

Need somehow bind MyAttributeBuilder to be used with MyValue. What kind of annotation we need?
Obviously, this should work only for builders. No constructor support needed.
If we analyze and match correctly, implementation should be more of less straightforward: just create delegate builder inside value builder and delegate to it.

Duplicate issue #194: Support for Trove primitive collections
Created: 2015-11-09T07:41:04Z
Dear Immutables Team, I just recently started to use your project. For me it would be great If the trove primitive collections would be supported. Dou you think this will be possible in a future release.

Closing comment (2015-11-09T09:01:38Z): Thank you for the interest. We had on our mind functionality to allow customization to allow arbitrary types would be plugged in and have free-from initializer/builder signatures defined from outside (similar is tracked by #110).
I think it we are very far of providing dedicated support for trove collections, and even somewhat regret that we have strong support for Guava's collections, where more general approach, some form of plugability, would be better. I will notify here if we will move this forward.
In a meantime I would suggest to create concise initializers or builders for the collections:
ImmutaleObj.builder()
    .primColl(buildInts()
        .add(1)
        .add(2)
        .add(3)
        .build())
    .otherList(ofInts(1, 2, 3, 4, 5, 4, 3, 2, 1))
    .build();
Repository: immutables/immutables

Issue #257: mongodb module maintenance: upgrade to 3.x drivers and add some tests
Created: 2016-02-17T07:40:20Z
Need to upgrade to 3.x version of MongoDB Java driver, currently we use 2.x version.
Plus it is desirable to add some tests.
Currently there is no resources to dig into this, hoping some committer or community contributor can help with this.

Duplicate issue #510: Mongo Java Driver v3 support
Created: 2016-12-21T18:49:05Z
Hi, I was wondering what the status was of supporting more recent versions (3+) of the mongo java driver. Version 2 of the driver does not support mongo 3.4. Is this something that is planned for the future?
Thanks!

Closing comment (2017-02-04T07:31:41Z): Duplicate of #257, Help wanted. Closing this ticket
Repository: immutables/immutables

Issue #548: [Generics] Code generation is failing when parameters are immutable generics
Created: 2017-02-07T11:48:57Z
Here is an example :
abstract class AbstractAClass<T>  {
	@Value.Parameter
	public abstract BClass<T> getValue(); // note BClass is also generated by Immutables
}
Then the generation is failing and we get stuff like this :
public final class AClass<T> extends AbstractAClass<T> {
  // compilation error with <any>
  private final <any> value;
 }

Duplicate issue #725: Invalid generated code using parameterized, not-yet-generated types in attributes
Created: 2017-11-25T18:26:59Z
Hello. I seem to have upset 2.6.0-alpha2:
https://github.com/io7m/immutables-bug-20171125
It seems like it might be because I'm making references to types that will be generated by the end of the package, but haven't been generated yet. This has never mattered before, but it seems like it matters now.

Closing comment (2018-05-19T07:46:05Z): this should be fixed now, closing as duplicate of #548 just to avoid double counting
Repository: immutables/immutables

Issue #75: Non-String Values Interpreted Into Strings
Created: 2015-01-14T15:33:59Z
I have run into a weird situation when using Immutables 1.0+.
Consider the following code:
@Value.Immutable
@Json.Marshaled
public interface Item {
  String value();
}
item.value() will always consume json input regardless of type or null. For example:
String valueInt = "{\"value\": 15 }";
Item intItem = Marshaling.fromJson(valueInt, Item.class);
// intItem.value() == "15"

String valueNull = "{\"value\": null}"; 
Item nullItem = Marshaling.fromJson(valueNull, Item.class);
// intItem.value() == "null"
This feels very wrong, especially in the null case. I have declared my value as non-optional type, so passing the a null json value should be considered a parsing error.
Is this the desired behaviour? Or should this be fixed?
Thanks in advance!

Duplicate issue #74: Consider going 2.0 for minor breaking changes
Created: 2015-01-13T03:42:26Z
Despite there's an intent to preserve stability and compatibility, some breaking changes have to be introduced. Most core functionality will remain unchanged, including annotation API.
Things that might change

Some changes to experimental functionality of 1.0 and 1.1
Artifact packaging have to be greatly simplified. It's just hard to explain what combination of jars needed
Removal of unvalidated or out of date @Beta features and templates
Removal of deprecated stuff
Correct some not-frequently used defaults (generating copy methods by default)

Reasons to introduce changes:

More simple API
Simpler artifact structure
Toolkit should give better expectations about what it will do

Closing comment (2015-01-15T08:50:16Z): If there were to be changes to the string coercion / type strictness as reported in #75 , may I suggest they fall under this version break too?
Repository: immutables/immutables

Issue #128: Recursive calls on Builder.from when extending object
Created: 2015-07-09T15:43:06Z
Here i have my 2 objects. RoomBasic is a simple abstract class which is used as basis for other Immutable classes such as AbstractRoomServer.
abstract class RoomBasic implements Serializable {
    abstract String getName();
    abstract boolean isPasswordRoom();
}

abstract class AbstractRoomServer extends RoomBasic {
    abstract CopyOnWriteArrayList<AbstractClientBasicInfo> getClientBasicInfos();
    abstract String getPassword();
}
When AbstractRoomServer's immutable is generated I get the following build().from() methods. The private method from(Object object) is never called instead the 2 other from methods call themselves recursively.
    public final Builder from(RoomBasic instance) {
      Objects.requireNonNull(instance);
      from(instance);
      return this;
    }

    public final Builder from(AbstractRoomServer instance) {
      Objects.requireNonNull(instance);
      from(instance);
      return this;
    }

    private void from(Object object) {
      if (object instanceof RoomBasic) {
        RoomBasic instance = (RoomBasic) object;
        setName(instance.getName());
      }
      if (object instanceof AbstractRoomServer) {
        AbstractRoomServer instance = (AbstractRoomServer) object;
        setClientBasicInfos(instance.getClientBasicInfos());
        setPassword(instance.getPassword());
        setHash(instance.getHash());
      }
    }
Thank you for your time!

Duplicate issue #132: Infinite Recursion When Interface Extends Another Interface
Created: 2015-07-16T18:56:38Z
Immutables seems to be generating methods w/ infinite recursion when I use nested interfaces.  Here's a reproducer:
public interface Parent {

  String getId();
}

@Value.Enclosing
@Value.Immutable
@JsonSerialize(as = ImmutableChild.class)
@JsonDeserialize(as = ImmutableChild.class)
@JsonIgnoreProperties(ignoreUnknown = true)
public interface Child {

  @Value.Immutable
  @JsonSerialize(as = ImmutableChild.Nested.class)
  @JsonDeserialize(as = ImmutableChild.Nested.class)
  @JsonIgnoreProperties(ignoreUnknown = true)
  interface Nested extends Parent {
    String getChildId();
  }

}

public class ImmutableChildTest {

  @Test
  public void test() {
    ImmutableChild.Nested nested =
        ImmutableChild.Nested.builder().id("id").childId("childId").build();
    ImmutableChild.Nested.builder().from(nested);
  }

}

Closing comment (2015-07-16T18:58:18Z): Looks like I didn't look close enough and this is a dup of #128.