Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Status #320

Closed
dkrikun opened this issue Apr 3, 2019 · 3 comments
Closed

Status #320

dkrikun opened this issue Apr 3, 2019 · 3 comments

Comments

@dkrikun
Copy link

dkrikun commented Apr 3, 2019

Hi, is tundra actively maintained?
I came across this while looking for a decent build system, and it looks tundra is not being discussed too much.

@leidegre
Copy link
Contributor

leidegre commented Apr 9, 2019

Give it a spin. I've used tundra actively for years. I think you'll find the Lua frontend very flexible. It's quite easy to get tundra to do whatever.

For example, I script the project generation with tundra, so that projects (build units) are generated based on convention. This is something you can implement in the Lua frontend yourself. Of course, if you don't need stuff like this, you don't have to.

I think tundra is good for what it does. That is, builds tools, generates code, and then builds more stuff all the while minimizing unnecessary rebuilds. I don't believe tundra needs more features. But patches do happen and the occasional bugfix is merged. Yeah, if you encounter an issue there are people here who both care and want tundra to continue to work.

@dkrikun
Copy link
Author

dkrikun commented Apr 11, 2019

There is this post from 7 years ago, do you know if the plans "towards Tundra 2.0" have been implemented?

https://deplinenoise.wordpress.com/2012/09/30/looking-towards-tundra-2-0/

@leidegre
Copy link
Contributor

leidegre commented Apr 20, 2019

@dkrikun yeah, what you see in master is 2.0. 1.0 is in a different branch.

I've been using Tundra since 1.0 and the 2.0 release brought with it some nice performance improvements and simpler ways to extend/script the build pipeline.

I put my implicit build script in a gist if you wanna take a look https://gist.github.com/leidegre/c3a888882eda043915d307b5241fa983

What you need to understand is that when you use the tundra file system API, it creates a cache based on file system modified date and time values (can be configured to use content digest if you want). And that it fully expects that your build setup script is deterministic.

When tundra see that you didn't touch the config file, it doesn't even run the Lua script engine. It just goes directly into building out of date dependencies. This code path is the common use case and it's an incredibly fast code path.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants