Hello devs! Welcome to this week’s edition of developer weekly, where we give you the lowdown on new tools and features we’re shipping, new use cases for existing features, and other news and content we found interesting over the past week.
Quill has a new home
Quill is a minimalistic ledger and governance toolkit for cold wallets. With Quill, you can generate signed messages using self-custody keys that can be stored on an air-gapped device. Those messages can then be transferred to a machine with network access where they can be sent to the Internet Computer. Previously, we had several forks of quill that served specific use cases. We have made it easier to access all the commands you need in one place. Repos like sns-quill and other internal forks have now been consolidated into Quill. You can download quill by visiting the releases page.
Redeploying a canister
If your canister has ever trapped during an upgrade, we realize that can be a pretty frustrating experience. Luckily, there is a way out. The first thing you can try is uninstalling your canister code. This will delete the WASM from your canister and leave it in an empty state. Note - your canister will not be accessible by your users once the WASM has been uninstalled, so if you need high uptime, this approach might not be the best for you.
dfx canister uninstall-code [CANISTER NAME or ID]
Of course, use your canister’s actual name or ID when issuing this command.
Once your canister code has been uninstalled, try redeploying. This will build your WASM from source and deploy it into your empty canister.
dfx deploy --upgrade-unchanged [CANISTER NAME or ID]
--upgrade-unchanged flag will force DFX to install your canister WASM and skip checks that compare your new
WASM to the old one.
When upgrading a canister,
dfx canister installskip installing the .wasm if the wasm hash did not change. This avoids a round trip through stable memory for all assets on every dfx deploy, for example. By passing this argument, dfx will instead install the wasm even if its hash matches the already-installed wasm.
We hope this bit of troubleshooting helps you as you build on the Internet Computer!
ChatGPT getting weird
In an eerie New York Times article, columnist Kevin Roose has a conversation with the chatbot integrated into the new Bing search engine, powered by OpenAI’s ChatGPT. For those of you who don’t know, ChatGPT is a language model developed by OpenAI. Essentially, it is a computer program that has been trained on a large dataset of human language, such as books, articles, and web pages. Through this training, ChatGPT has learned to understand and generate human-like language, and can now be used to interact with humans through written text, like a chatbot.
Microsoft has been developing a partnership with OpenAI for sometime and has recently integrated this model into their Bing search engine. Bing now comes with a chat feature where you can interact with the search engine in a conversational manner.
Kevin Roose spent a couple of hours with the chatbot and in a turn of events, managed to get the model to generate very strange responses, and ultimately, declare its love for him. I won’t spoil the read for you.