Hello guys, in the last time, I told that I would not support vibe-d. This was purely on how many features I would need to implement to support it. But after a second thought, I saw that it would be a great opportunity to make it way more consistent. With that, I announce
Redub v1.7.1:
Some changes since the last announce:
Additions:
- Support for -m64/-m32
- Missing version * on dub.json
- Optional dependencies handling support
- Caching to SDL conversion so only the first run is slow
- copyFiles, extraDependencyFiles and debugVersions
- Support for ISA on dub.json
- Support for setting parallelization mode on redub (leaves and no)
- Support for shared libraries as dependency
- --combined build
- Support for single threaded builds
- Auto infers to be no incremental when having more than 3 dependencies
- Incremental compilation removal by default so it builds faster on windows
- Search for compiler when the default is not dmd
- Escaping paths and now using library full path instead of using library search path
- Glob matching for file exclusion
- Encourage message for updating to the newest version
- Support for arch mapping. Fixes #9
- Error string showing redub and compiler version on error
- Support for build type of none
Improvements
- Version resolution by creating a memory cache
- Version resolution when using a subPackage as a dependency
- Various reductions in memory allocation
- Made adv diff slightly faster
- Performance on parsing local packages
- Optional dependencies are now resolved later so they can be included
- Faster check on adv_diff, with an improvement in caching check
- Optimization on redub cache, now creating a root cache separately instead inside a single json file
- Print local packages being used
Fixes:
- Library dependencies when inside sourceFiles
- Merge between parent and child versions
- copyFiles now has the same behavior from dub.
- Now correctly excluding optional dependencies with dependencies
- Now betterC is excluded from the flags to merge
- Removed hidden files from the included source files
- Better support on caching webassembly, shared library dependencies, and now correctly inferring ISA from the build command
- Bug where executeShell was replacing values on the command line and not sending correctly to the linker
- Now considering local package's version
- Support for spaced file
- Now parsing lflags and libraries on environment
- Bug where some import paths weren't being considered
- Default configuration would try to be merged if it was a root requirement
- Improve message and change what was being fetched
- Dub fetch for some packages specifications
Since this is a single person project, if you wish to use, the most stable version should be always ~master. It is highly recommended to only use the newest version.