holochain-rust
                                
                                 holochain-rust copied to clipboard
                                
                                    holochain-rust copied to clipboard
                            
                            
                            
                        writing to STDOUT in `.bashrc` causes `hc package` to fail
Because hc package spawns a new bash process, it runs .bashrc. If the user has anything that writes to STDOUT in their .bashrc file, that output gets captured by hc package. AFAICT this doesn't matter until it comes time to check for the existence of the build artifact, when the output gets incorporated into the expected artifact's path. (It might cause issues elsewhere too, but I'm not sure.)
Steps to reproduce:
- Add the line echo "***hello***"somewhere in your.bashrc
- Enter the nix shell: nix-shell https://holochain.love
- Generate a stub project:
hc init stub-project cd stub project hc generate zomes/stub-zome
- Try to build: hc package
- Witness error message:
Error: Couldn't traverse DNA in directory "/home/alice/Holochain/stub-project": artifact path /home/alice/Holochain/stub-project/zomes/stub-zome/code/***hello*** /home/alice/target/wasm32-unknown-unknown/release/stub-zome.wasm either doesn't point to a file or doesn't exist
The developer who reported this argues that it's a common thing to echo stuff in your .bashrc (I'd be inclined to agree). This has a direct impact on any dev who is trying Holochain for the first time; it's a red herring error message.
Probably we could/should spawn a new bash shell in a way that doesn’t load .bashrc or similar config files…
Maybe this is helpful: https://stackoverflow.com/questions/9357464/how-to-start-a-shell-without-any-user-configuration
@harlantwood , you are a king among men. Thank you for sleuthing this for us!