Closed h7x4 closed 1 year ago
The build instructions are the same as the contribution ones except you build with a release flag maturin develp --release
I'm not sure why this didnt work because I'm unable to reproduce the error.
Can you provide which build steps did you follow/ran?
I'll add build instructions in the readme once this issue is resolved, for now here they are:
$ git clone https://github.com/mtshrmn/nuber.git --recursive && cd nuber
$ cd rust-html2text && git apply ../html2text.patch && cd ..
$ poetry install && poetry shell
$ maturin develop --release && exit
$ poetry build
I'm just being stupid, I found the instructions at the bottom of the README now. The part that caused my build to fail, was forgetting to apply the patch.
Thanks!
I'm having a hard time trying to build this project.
I'm not able to make the rust module build by itself if I invoke maturin directly, even if I specifically use maturin 11.3 (as pyproject.toml specifies
maturin>=0.11,<0.12
)output from maturin build
```console $ maturin build 🍹 Building a mixed python/rust project 🔗 Found pyo3 bindings 🐍 Found CPython 3.10 at python3.10 📦 Built source distribution to /home/h7x4/git/nuber/target/wheels/nuber-1.1.0.tar.gz Compiling cfg-if v1.0.0 Compiling libc v0.2.101 Compiling autocfg v1.0.1 Compiling proc-macro2 v1.0.28 Compiling unicode-xid v0.2.2 Compiling syn v1.0.74 Compiling getrandom v0.1.16 Compiling ppv-lite86 v0.2.10 Compiling lazy_static v1.4.0 Compiling siphasher v0.3.6 Compiling crossbeam-utils v0.8.5 Compiling scopeguard v1.1.0 Compiling crossbeam-epoch v0.9.5 Compiling new_debug_unreachable v1.0.4 Compiling serde v1.0.127 Compiling rayon-core v1.9.1 Compiling crc32fast v1.2.1 Compiling pyo3-build-config v0.14.3 Compiling proc-macro-hack v0.5.19 Compiling mac v0.1.1 Compiling log v0.4.16 Compiling once_cell v1.8.0 Compiling utf-8 v0.7.6 Compiling precomputed-hash v0.1.1 Compiling pkg-config v0.3.19 Compiling cc v1.0.69 Compiling adler v1.0.2 Compiling fnv v1.0.7 Compiling byteorder v1.4.3 Compiling strsim v0.10.0 Compiling ident_case v1.0.1 Compiling memchr v2.4.0 Compiling adler32 v1.2.0 Compiling bitflags v1.2.1 Compiling either v1.6.1 Compiling smallvec v1.6.1 Compiling unindent v0.1.8 Compiling anyhow v1.0.43 Compiling weezl v0.1.5 Compiling regex-syntax v0.6.25 Compiling color_quant v1.1.0 Compiling xml-rs v0.8.4 Compiling bytemuck v1.7.2 Compiling percent-encoding v2.1.0 Compiling scoped_threadpool v0.1.9 Compiling unicode-width v0.1.8 Compiling remove_dir_all v0.5.3 Compiling instant v0.1.10 Compiling lock_api v0.4.4 Compiling phf_shared v0.8.0 Compiling memoffset v0.6.4 Compiling miniz_oxide v0.4.4 Compiling num-traits v0.2.14 Compiling num-integer v0.1.44 Compiling rayon v1.5.1 Compiling num-rational v0.3.2 Compiling num-iter v0.1.42 Compiling futf v0.1.4 Compiling miniz_oxide v0.3.7 Compiling deflate v0.8.6 Compiling bzip2-sys v0.1.11+1.0.8 Compiling gif v0.11.2 Compiling phf v0.8.0 Compiling tendril v0.4.2 Compiling crossbeam-channel v0.5.1 Compiling png v0.16.8 Compiling time v0.1.44 Compiling num_cpus v1.13.0 Compiling getrandom v0.2.3 Compiling parking_lot_core v0.8.3 Compiling quote v1.0.9 Compiling aho-corasick v0.7.18 Compiling rand_core v0.5.1 Compiling rand_core v0.6.3 Compiling flate2 v1.0.20 Compiling paste-impl v0.1.18 Compiling pyo3 v0.14.3 Compiling bzip2 v0.4.3 Compiling parking_lot v0.11.1 Compiling rand_chacha v0.2.2 Compiling rand_pcg v0.2.1 Compiling rand_chacha v0.3.1 Compiling crossbeam-deque v0.8.1 Compiling paste v0.1.18 Compiling rand v0.7.3 Compiling regex v1.5.4 Compiling rand v0.8.4 Compiling string_cache v0.8.1 Compiling phf_generator v0.8.0 Compiling tempfile v3.2.0 Compiling string_cache_codegen v0.5.1 Compiling phf_codegen v0.8.0 Compiling markup5ever v0.10.1 Compiling jpeg-decoder v0.1.22 Compiling tiff v0.6.1 Compiling xml5ever v0.16.1 Compiling darling_core v0.13.0 Compiling pyo3-macros-backend v0.14.3 Compiling html5ever v0.25.1 Compiling thiserror-impl v1.0.26 Compiling indoc-impl v0.3.6 Compiling image v0.23.14 Compiling indoc v0.3.6 Compiling thiserror v1.0.26 Compiling zip v0.5.13 Compiling darling_macro v0.13.0 Compiling epub v1.2.3 Compiling pyo3-macros v0.14.3 Compiling markup5ever_rcdom v0.1.0 Compiling darling v0.13.0 Compiling enumset_derive v0.5.5 Compiling html2text v0.2.1 (/home/h7x4/git/nuber/rust-html2text) Compiling enumset v1.0.7 Compiling nuber v1.1.0 (/home/h7x4/git/nuber) error[E0407]: method `decorate_header_start` is not a member of trait `TextDecorator` --> src/parser.rs:270:5 | 270 | fn decorate_header_start(&mut self, level: usize) -> (String, Self::Annotation) { | ^ --------------------- help: there is an associated function with a similar name: `decorate_code_start` | _____| | | 271 | | ("".to_string(), RichAnnotation::Header(level)) 272 | | } | |_____^ not a member of trait `TextDecorator` error[E0407]: method `decorate_header_end` is not a member of trait `TextDecorator` --> src/parser.rs:274:5 | 274 | fn decorate_header_end(&mut self) -> String { | ^ ------------------- help: there is an associated function with a similar name: `decorate_code_end` | _____| | | 275 | | "".to_string() 276 | | } | |_____^ not a member of trait `TextDecorator` error[E0532]: expected tuple struct or tuple variant, found unit variant `RichAnnotation::Image` --> src/parser.rs:134:13 | 134 | RichAnnotation::Image(_) => Some(Effect::Image.into()), | ^^^^^^^^^^^^^^^^^^^^^^^^ help: use this syntax instead: `RichAnnotation::Image` | ::: /home/h7x4/git/nuber/rust-html2text/src/render/text_renderer.rs:1471:5 | 1471 | Image, | ----- `RichAnnotation::Image` defined here error[E0532]: expected tuple struct or tuple variant, found unit variant `RichAnnotation::Image` --> src/parser.rs:146:41 | 146 | RichAnnotation::Link(url) | RichAnnotation::Image(url) => Some(url), | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use this syntax instead: `RichAnnotation::Image` | ::: /home/h7x4/git/nuber/rust-html2text/src/render/text_renderer.rs:1471:5 | 1471 | Image, | ----- `RichAnnotation::Image` defined here error[E0532]: expected tuple struct or tuple variant, found unit variant `RichAnnotation::Image` --> src/parser.rs:207:16 | 207 | if let RichAnnotation::Image(url) = annotation { | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use this syntax instead: `RichAnnotation::Image` | ::: /home/h7x4/git/nuber/rust-html2text/src/render/text_renderer.rs:1471:5 | 1471 | Image, | ----- `RichAnnotation::Image` defined here error[E0050]: method `decorate_image` has 3 parameters but the declaration in trait `decorate_image` has 2 --> src/parser.rs:286:23 | 286 | fn decorate_image(&mut self, _title: &str, src: &str) -> (String, Self::Annotation) { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 2 parameters, found 3 | = note: `decorate_image` from trait: `fn(&mut Self, &str) -> (String,I would suspect that the rust module was broken, but it seems like you made a commit to the project ~2 weeks ago, so that might not be the case?
This problem disappears if I rather try to invoke maturin through poetry. But based on the error, it seems like maturin doesn't even get invoked at all? Rust-Python bindings seems to be missing.
output from poetry run nuber
```console $ poetry run nuber Traceback (most recent call last): File "Do you think you could add some documentation on how to build this project?