gecko0307 / cook2 Goto Github PK
View Code? Open in Web Editor NEWBuild automation tool for D
License: Boost Software License 1.0
Build automation tool for D
License: Boost Software License 1.0
Object files generated by different compilers are usually incompatible, so it would be good to separate them when building external dependencies.
It should be possible to update local copies of remote repositories without invoking --rebuild
.
The following import will be mistakenly filtered out by dependency parser under Linux, because enum declaration is not surrounded by curly brackets and thus will be lexically ignored:
version(Windows) enum foo = 10;
import bar;
Currently only SSH is supported.
Now it is possible to define "version" and "debug" identifiers in project configuration, and they are taken into account when parsing imports, but still aren't actually being passed to the compiler.
One may accidently trigger second rebuild session when auto-repeating the last command in the terminal.
Now, when Cook supports external dependencies, cache files are not cross-platform anymore (may contain platform-specific paths). So it would be good to store them in separate files, one for each platform. It would also be useful to distinguish them by build profiles.
Currently Cook can fetch only master branch for any remote repository.
Some DUB-oriented repos store actual code in the source
directory - it should be possible to define this in dependency specifier.
Make is the usual tool to automate building process under Linux, and it would be good to support non-cook users by providing an auto-generated makefile.
Cook should support DUB as a package manager for external dependency tracking.
Primarily, SVN, Mercurial, Bazaar.
Cook should support non-incremental builds as well.
To make them easier to read online
If project hierarchy changes, obsolete modules should be removed from the cache.
In long term it would be useful to have a possibility to fetch dependencies from Git repos.
For some reason, changing a module doesn't cause recompiling all modules that depend on it.
Instead, try to build without them.
When running with --web option, cook should open a tiny web server at 127.0.0.1 and open a browser window. User should be able to change local and global configuration via the web interface. In future, this web app can be used to monitor building process, get project statistics, generate dependency graphs, etc.
Current dependency parser lacks support for version and debug levels.
It can be stored in ~/.cook/default.conf. Global configuration can provide Cook paths to compiler and linker and other important information. In future, it would be also possible to implement graphical configuration manager for Cook to make things easier for beginners.
"profile" identifier in configuration file should define user-wide profile name, which can be used to separate object files in ~/.conf/obj.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.