woelper / oculante

A fast and simple image viewer / editor for many operating systems
https://github.com/woelper/oculante
MIT License
932 stars 43 forks source link

Fail to build 0.6.27 #85

Closed 0323pin closed 1 year ago

0323pin commented 1 year ago

Hi,

Yesterday, I updated the NetBSD package to 0.6.26 without an itch. Today, building 0.6.27 fails as below. I'm building with --no-default-features so this shouldn't happen.

Compiling notan v0.8.0
error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1161:25
     |
1161 |                         turbojpeg::Transform {
     |                         ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1162:33
     |
1162 | ...                   op: turbojpeg::TransformOp::Rot90,
     |                           ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1175:25
     |
1175 |                         turbojpeg::Transform {
     |                         ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1176:33
     |
1176 | ...                   op: turbojpeg::TransformOp::Rot270,
     |                           ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1189:25
     |
1189 |                         turbojpeg::Transform {
     |                         ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1190:33
     |
1190 | ...                   op: turbojpeg::TransformOp::Rot180,
     |                           ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1205:25
     |
1205 |                         turbojpeg::Transform {
     |                         ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1206:33
     |
1206 | ...                   op: turbojpeg::TransformOp::Hflip,
     |                           ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1219:25
     |
1219 |                         turbojpeg::Transform {
     |                         ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1220:33
     |
1220 | ...                   op: turbojpeg::TransformOp::Vflip,
     |                           ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1281:37
     |
1281 | ...                   turbojpeg::Transform {
     |                       ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1282:45
     |
1282 | ...                   op: turbojpeg::TransformOp::None,
     |                           ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1283:52
     |
1283 | ...                   crop: Some(turbojpeg::TransformCrop {
     |                                  ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
   --> src/image_editing.rs:740:41
    |
740 | pub fn lossless_tx(p: &Path, transform: turbojpeg::Transform) -> Result<()> {
    |                                         ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
   --> src/image_editing.rs:743:28
    |
743 |     let mut decompressor = turbojpeg::Decompressor::new()?;
    |                            ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
   --> src/image_editing.rs:768:28
    |
768 |     let transformed_data = turbojpeg::transform(&transform, &jpeg_data)?;
    |                            ^^^^^^^^^ use of undeclared crate or module `turbojpeg`

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1163:42
     |
1163 | ...                   ..turbojpeg::Transform::default()
     |                                    ^^^^^^^^^ not found in `turbojpeg`
     |
help: consider importing one of these items
     |
1    | use crate::Transform;
     |
1    | use nalgebra::Transform;
     |
1    | use tiny_skia::Transform;
     |
1    | use usvg::Transform;
     |
help: if you import `Transform`, refer to it directly
     |
1163 -                             ..turbojpeg::Transform::default()
1163 +                             ..Transform::default()
     |

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1177:42
     |
1177 | ...                   ..turbojpeg::Transform::default()
     |                                    ^^^^^^^^^ not found in `turbojpeg`
     |
help: consider importing one of these items
     |
1    | use crate::Transform;
     |
1    | use nalgebra::Transform;
     |
1    | use tiny_skia::Transform;
     |
1    | use usvg::Transform;
     |
help: if you import `Transform`, refer to it directly
     |
1177 -                             ..turbojpeg::Transform::default()
1177 +                             ..Transform::default()
     |

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1191:42
     |
1191 | ...                   ..turbojpeg::Transform::default()
     |                                    ^^^^^^^^^ not found in `turbojpeg`
     |
help: consider importing one of these items
     |
1    | use crate::Transform;
     |
1    | use nalgebra::Transform;
     |
1    | use tiny_skia::Transform;
     |
1    | use usvg::Transform;
     |
help: if you import `Transform`, refer to it directly
     |
1191 -                             ..turbojpeg::Transform::default()
1191 +                             ..Transform::default()
     |

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1207:42
     |
1207 | ...                   ..turbojpeg::Transform::default()
     |                                    ^^^^^^^^^ not found in `turbojpeg`
     |
help: consider importing one of these items
     |
1    | use crate::Transform;
     |
1    | use nalgebra::Transform;
     |
1    | use tiny_skia::Transform;
     |
1    | use usvg::Transform;
     |
help: if you import `Transform`, refer to it directly
     |
1207 -                             ..turbojpeg::Transform::default()
1207 +                             ..Transform::default()
     |

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1221:42
     |
1221 | ...                   ..turbojpeg::Transform::default()
     |                                    ^^^^^^^^^ not found in `turbojpeg`
     |
help: consider importing one of these items
     |
1    | use crate::Transform;
     |
1    | use nalgebra::Transform;
     |
1    | use tiny_skia::Transform;
     |
1    | use usvg::Transform;
     |
help: if you import `Transform`, refer to it directly
     |
1221 -                             ..turbojpeg::Transform::default()
1221 +                             ..Transform::default()
     |

error[E0433]: failed to resolve: use of undeclared crate or module `turbojpeg`
    --> src/ui.rs:1289:54
     |
1289 | ...                   ..turbojpeg::Transform::default()
     |                                    ^^^^^^^^^ not found in `turbojpeg`
     |
help: consider importing one of these items
     |
1    | use crate::Transform;
     |
1    | use nalgebra::Transform;
     |
1    | use tiny_skia::Transform;
     |
1    | use usvg::Transform;
     |
help: if you import `Transform`, refer to it directly
     |
1289 -                                         ..turbojpeg::Transform::default()
1289 +                                         ..Transform::default()
     |

For more information about this error, try `rustc --explain E0433`.
error: could not compile `oculante` due to 22 previous errors
*** Error code 101

Stop.
woelper commented 1 year ago

Yeah, oops, my bad. I've added lossless JPEG features requiring Turbojpeg. I'll hide them behind a feature flag.

woelper commented 1 year ago

Pushed a new version with the fixes. Sorry for the inconvenience. I also added an automatic test on CI so this should hopefully not happen again.

0323pin commented 1 year ago

@woelper Thanks for the fix and sorry for the trouble. Hopefully the CI test will save you sometime.

I'm very busy this week and don't know if I'll find the time for the update. Hopefully yes, as we should soon enter a freeze period of one week ahead of branching the next stable interation of packages. Will see what I can do. Thanks!

0323pin commented 1 year ago

@woelper managed to get it done after all, https://mail-index.netbsd.org/pkgsrc-changes/2022/12/12/msg265222.html Thanks! All good again.

woelper commented 1 year ago

You rock, thanks! Also please forget about the testing request in the other issue as long as it's not really done. Have a great week!