ERROR: compilation failed for package 'b64' version 0.1.6

Hi team.
Following is the output when I try to deploy my shinyApp to ShinyApps.io. I've deployed this app multiple times and faced no issues ever. Today is the first time I am facing deployment issues. This is critical as this is client-facing app.

── Preparing for deployment ────────────────────────────────────────────────────
✔ Re-deploying "TRCStoreApp" using "server: shinyapps.io / username: zukti"
ℹ Looking up application with id "14342304"...
✔ Found application <https://zukti.shinyapps.io/TRCStoreApp/>
ℹ Bundling 31 files: '.Renviron', '__TODO__.txt', '_auth0.yml', 'app.R', 'config.yml', 'R/functions.R', 'R/rbac_functions.R', 'R/rbac_permissions.R', 'www/custom_styles.css', 'www/print_gt_table.js', 'www/TRC LOGO.jpg', 'modules/000_home_module.R', 'modules/100_inwards_module.R', 'modules/101_inwards_new_row_module.R', 'modules/200_indents_module.R', 'modules/201_indents_new_row_module.R', 'modules/300_production_module.R', 'modules/400_wastage_module.R', …, 'modules/907_wastage_costing_report.R', and 'modules/999_user_module.R'
ℹ Capturing R dependencies
✔ Found 121 dependencies
✔ Created 235,483b bundle
ℹ Uploading bundle...
✔ Uploaded bundle with id 10600914
── Deploying to server ─────────────────────────────────────────────────────────
Waiting for task: 1567165377
  building: Parsing manifest
  building: Building image: 13035767
  building: Installing system dependencies
  building: Building package: b64
## Begin Task Log ##############################################################
Quarto not found.
[2025-07-11T15:00:18.411451565+0000] Execute script: packages/build/V8.sh
W: http://cran.rstudio.com/bin/linux/ubuntu/jammy-cran40/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
  libc-ares2 libnode72 libuv1-dev
The following NEW packages will be installed:
  libc-ares2 libnode-dev libnode72 libuv1-dev
0 upgraded, 4 newly installed, 0 to remove and 227 not upgraded.
Need to get 11.6 MB of archives.
After this operation, 48.1 MB of additional disk space will be used.
Get:1 http://us-east-1.ec2.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libuv1-dev amd64 1.43.0-1ubuntu0.1 [130 kB]
Get:2 http://us-east-1.ec2.archive.ubuntu.com/ubuntu jammy-updates/main amd64 libc-ares2 amd64 1.18.1-1ubuntu0.22.04.3 [45.1 kB]
Get:3 http://us-east-1.ec2.archive.ubuntu.com/ubuntu jammy-updates/universe amd64 libnode72 amd64 12.22.9~dfsg-1ubuntu3.6 [10.8 MB]
Get:4 http://us-east-1.ec2.archive.ubuntu.com/ubuntu jammy-updates/universe amd64 libnode-dev amd64 12.22.9~dfsg-1ubuntu3.6 [609 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 11.6 MB in 0s (75.6 MB/s)
Selecting previously unselected package libuv1-dev:amd64.	
(Reading database ... 	(Reading database ... 5%	(Reading database ... 10%	(Reading database ... 15%	(Reading database ... 20%	(Reading database ... 25%	(Reading database ... 30%	(Reading database ... 35%	(Reading database ... 40%	(Reading database ... 45%	(Reading database ... 50%	(Reading database ... 55%	(Reading database ... 60%	(Reading database ... 65%	(Reading database ... 70%	(Reading database ... 75%	(Reading database ... 80%	(Reading database ... 85%	(Reading database ... 90%	(Reading database ... 95%	(Reading database ... 100%	(Reading database ... 293173 files and directories currently installed.)	
Preparing to unpack .../libuv1-dev_1.43.0-1ubuntu0.1_amd64.deb ...	
Unpacking libuv1-dev:amd64 (1.43.0-1ubuntu0.1) ...	
Selecting previously unselected package libc-ares2:amd64.	
Preparing to unpack .../libc-ares2_1.18.1-1ubuntu0.22.04.3_amd64.deb ...	
Unpacking libc-ares2:amd64 (1.18.1-1ubuntu0.22.04.3) ...	
Selecting previously unselected package libnode72:amd64.	
Preparing to unpack .../libnode72_12.22.9~dfsg-1ubuntu3.6_amd64.deb ...	
Unpacking libnode72:amd64 (12.22.9~dfsg-1ubuntu3.6) ...	
Selecting previously unselected package libnode-dev.	
Preparing to unpack .../libnode-dev_12.22.9~dfsg-1ubuntu3.6_amd64.deb ...	
Unpacking libnode-dev (12.22.9~dfsg-1ubuntu3.6) ...	
Setting up libuv1-dev:amd64 (1.43.0-1ubuntu0.1) ...	
Setting up libc-ares2:amd64 (1.18.1-1ubuntu0.22.04.3) ...	
Setting up libnode72:amd64 (12.22.9~dfsg-1ubuntu3.6) ...	
Setting up libnode-dev (12.22.9~dfsg-1ubuntu3.6) ...	
Processing triggers for libc-bin (2.35-0ubuntu3.7) ...	
Quarto not found.
[2025-07-11T15:01:17.804659454+0000] Installing R package: DBI (1.2.3)
* installing to library ‘/usr/lib/R’
* installing *binary* package ‘DBI’ ...
* DONE (DBI)
[2025-07-11T15:01:18.601156317+0000] Installing R package: MASS (7.3-60.2)
* installing to library ‘/usr/lib/R’
* installing *binary* package ‘MASS’ ...
* DONE (MASS)
[2025-07-11T15:01:19.363351971+0000] Installing R package: R6 (2.6.1)
* installing to library ‘/usr/lib/R’
* installing *binary* package ‘R6’ ...
* DONE (R6)
[2025-07-11T15:01:20.049020712+0000] Installing R package: RColorBrewer (1.1-3)
* installing to library ‘/usr/lib/R’
* installing *binary* package ‘RColorBrewer’ ...
* DONE (RColorBrewer)
[2025-07-11T15:01:20.733418353+0000] Installing R package: Rcpp (1.0.14)
* installing to library ‘/usr/lib/R’
* installing *binary* package ‘Rcpp’ ...
* DONE (Rcpp)
[2025-07-11T15:01:22.172078643+0000] Building R package: b64 (0.1.6)
/mnt/packages/build /mnt
gcc -I"/opt/R/4.4.1/lib/R/include" -DNDEBUG   -I/usr/local/include    -fpic  -g -O2  -c entrypoint.c -o entrypoint.o
if [ -f ./rust/vendor.tar.xz ]; then \
	tar xf rust/vendor.tar.xz && \
	mkdir -p /tmp/Rtmp9ihIu9/R.INSTALLb1305cbc83/b64/src/.cargo && \
	cp rust/vendor-config.toml /tmp/Rtmp9ihIu9/R.INSTALLb1305cbc83/b64/src/.cargo/config.toml; \
fi
export CARGO_HOME=/tmp/Rtmp9ihIu9/R.INSTALLb1305cbc83/b64/src/.cargo && \
export PATH="/opt/R/4.4.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/root/.cargo/bin" && \
RUSTFLAGS=" --print=native-static-libs" cargo build -j 2 --offline --lib --release --manifest-path=./rust/Cargo.toml --target-dir ./rust/target 
* installing to library ‘/usr/lib/R’
* installing *source* package ‘b64’ ...
** package ‘b64’ successfully unpacked and MD5 sums checked
** using staged installation
Using cargo 1.75.0
Using rustc 1.75.0 (82e1608df 2023-12-21) (built from a source tarball)
Building for CRAN.
Writing `src/Makevars`.
`tools/config.R` has finished.
** libs
using C compiler: ‘gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0’
   Compiling proc-macro2 v1.0.94
   Compiling unicode-ident v1.0.18
   Compiling build-print v0.1.1
   Compiling extendr-ffi v0.8.0 (https://github.com/extendr/extendr#1a8fe422)
   Compiling paste v1.0.15
   Compiling extendr-api v0.8.0 (https://github.com/extendr/extendr#1a8fe422)
   Compiling quote v1.0.40
   Compiling syn v2.0.100
   Compiling either v1.15.0
   Compiling once_cell v1.21.3
   Compiling itertools v0.12.1
   Compiling base64 v0.21.7
   Compiling extendr-macros v0.8.0 (https://github.com/extendr/extendr#1a8fe422)
   Compiling b64 v0.1.0 (/tmp/Rtmp9ihIu9/R.INSTALLb1305cbc83/b64/src/rust)
error[E0658]: use of unstable library feature 'result_option_inspect'
   --> src/lib.rs:219:26
    |
219 |                         .inspect_err(|_| throw_r_error("Failed to decode split"))
    |                          ^^^^^^^^^^^
    |
    = note: see issue #91345 <https://github.com/rust-lang/rust/issues/91345> for more information

error[E0658]: use of unstable library feature 'result_option_inspect'
   --> src/lib.rs:223:26
    |
223 |                         .inspect_err(|_| throw_r_error("Failed to parse decoded bytes as a string"))
    |                          ^^^^^^^^^^^
    |
    = note: see issue #91345 <https://github.com/rust-lang/rust/issues/91345> for more information

error[E0658]: use of unstable library feature 'result_option_inspect'
   --> src/lib.rs:232:18
    |
232 |                 .inspect_err(|_| throw_r_error("Failed to decode input string"))
    |                  ^^^^^^^^^^^
    |
    = note: see issue #91345 <https://github.com/rust-lang/rust/issues/91345> for more information

error[E0658]: use of unstable library feature 'result_option_inspect'
   --> src/lib.rs:235:18
    |
235 |                 .inspect_err(|_| throw_r_error("Failed to parse decoded bytes to a string"))
    |                  ^^^^^^^^^^^
    |
    = note: see issue #91345 <https://github.com/rust-lang/rust/issues/91345> for more information

For more information about this error, try `rustc --explain E0658`.
error: could not compile `b64` (lib) due to 4 previous errors
make: *** [Makevars:26: rust/target/release/libb64.a] Error 101
ERROR: compilation failed for package ‘b64’
* removing ‘/usr/lib/R/b64’## End Task Log ################################################################
Error: Unhandled Exception: child_task=1567165392 child_task_status=failed: Error building image: Error building b64 (0.1.6). Build exited with non-zero status: 1
Execution halted

Hi @vkatti ,
I've been investigating this a bit. Could you share your manifest.json file or the portion of it referencing the b64 package?

I noticed that the code in your error message,

error[E0658]: use of unstable library feature 'result_option_inspect'
   --> src/lib.rs:219:26
    |
219 |                         .inspect_err(|_| throw_r_error("Failed to decode split"))
    |                          ^^^^^^^^^^^
    |

is referencing code in b64 that only exists in b64 version 0.1.6, the very latest release. But the log says Compiling b64 v0.1.0 so I am curious which version is in fact being requested by your manifest.json

OK, so i checked to see if there is a manifest.json file in my app folder and there wasn't. This is weird because when I checked the documentation, it said that this file gets created automatically when publish to shinyapp[dot]io from RStudio Desktop.

So I created one manually using rsconnect::writeManifest(). Viewing this file showed me that b64 was added as a dependency for the downloadthis package.

I quickly checked if I am really using this package or was it loaded as an experiment. Turns out I didn't really need this package. So I took outdownloadthis and recreated the manifest.json and voila!

I was able to successfully deploy to Shinyapps[dot]io

Thank you for pointing me in the right direction. Issue resolved.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.