TL;DR;

  • 🆕 it's new, it's hot 🔥 and it's faster than ever 🏎️: tipi v0.0.27 'rapid roadrunner' ( a.k.a meep meep 🐦 )
  • 🆕 tipi . --monitor
  • 🆕 tipi --use-cmakelists . --monitor
  • ⚡ 15x faster file sync for remote builds
  • 🎇 Update now using: tipi --force-upgrade

How we got there

Who doesn't love great tools? We sure do.

One of the greatest things with many of the modern frameworks in Javascript (and in many other languages for that matter) is that they come with auto-reloading (and sometimes hot-reloading) preconfigured!

If you haven't experienced it before: it is absolutely fantastic(!) you write, save (or auto-save) and the runtime reloads all changes automagically. Now from a runtime point-of-view that is certainly easier to do with interpreted languages, but the simple fact that by saving you trigger the runtime to reload the newest version of you app is such a nice thing to have.

In the Javascript/Node.js world one famous tool for that is nodemon which builds the app on-change, the C# devs got their dotnet watch run feature back in 2018 and now it's our turn in C & C++!

Why this is so cool

It gives you a fast and comprehensive feedback loop for code changes.

Fast because in test driven development it is customary to begin with even a non-compiling program to guide the implementation. These so-called babysteps require a tight edit-build-test loop to be bearable. tipi . --monitor --test all provides exactly that by automatically building and running tests on each change.

Comprehensive because it enables to simultaneously build+run your code for any combination of platforms and targets in our powerful tipi.build cloud.

Live build and testing in action

Local and/or remote depending on your project needs. Make use of our largest cloud nodes if you need the raw power or continue working offline while you commute, the live build feature works nicely in both cases!

Tipi CLI v0.0.27 'rapid roadrunner'

The latest and greatest release of tipi comes with live build: basically nodemon for C++, on steroids! With full support for both local and remote builds as well as automatic test execution. After. Every. Single. Save(!)

Here's a few more notable improvements we made:

  • the file synchronization for remote builds is now approximately 15x faster for incremental changes
  • fixed binary name colision when multiple source files with an application entrypoint share the same name
  • multiline main() signatures are now properly detected

For the full detail head over to the CHANGELOG for the new release.

Installing the update

Just follow the install steps in the on-boarding wizard or if you already have tipi: tipi --force-upgrade.

Improving tipi: our feedback loop

We are set out to build an absolutely rock solid and awesome C++ development tool. In C++ by C++ developers for C++ developers.

At this point we'd like to sincerely thank everyone who took the time to share their feedback with us! Thank you!

In any case we'd love to hear from your experience with tipi.build to make it better and hopefully the best!

Don't hesitate to drop us some tickets on our issue tracker or even book a short call with Damien to discuss anything you would love.


Author image

Damien Buhl & Yannic Staudt

@daminetreg & @pysco68

tipi.build co-founders