Re: Redub v1.3.9 : A faster build system promising 90% compatibility with dub

2024-05-06 Thread aberba via Digitalmars-d-announce

On Saturday, 4 May 2024 at 11:40:27 UTC, Hipreme wrote:
Hello guys. It has been some time since my last post on forum 
regarding redub.
It has improved a lot on its newest versions. Since it has been 
put to prove on Hipreme Engine as its main build system, there 
were a bunch of updates that I've done that made it even 
faster, reliable, with more support to features that one can 
encounter in dub. There is still a plenty of niche features 
that dub has that it wasn't implemented, but, by now, I'm 
pretty sure it should have achieved its 90% of compatibility :)


[...]


Gonna try it soon.


Redub v1.3.9 : A faster build system promising 90% compatibility with dub

2024-05-04 Thread Hipreme via Digitalmars-d-announce
Hello guys. It has been some time since my last post on forum 
regarding redub.
It has improved a lot on its newest versions. Since it has been 
put to prove on Hipreme Engine as its main build system, there 
were a bunch of updates that I've done that made it even faster, 
reliable, with more support to features that one can encounter in 
dub. There is still a plenty of niche features that dub has that 
it wasn't implemented, but, by now, I'm pretty sure it should 
have achieved its 90% of compatibility :)


Here follows the release notes since the last time I posted


# Redub v1.3.9 release notes:
- Added: Support for folders with whitespace

v1.3.8
- Added: Error API
- Added: Public API for not requiring describe for getting linker 
files and source files


v1.3.7
- Added: --version and fixed private dependencies
- Fixed: Now hipjson parses a single value json

v1.3.4
- Fixed: Memory allocation was failing
- Fixed: Even faster JSON parsing

v1.3.3
- Update: Make JSON parsing of redub faster by using hipjson ( I 
got to parse json in 1/5 of the time)
- Fixed: Always use -op/--oq since it creates a compilation with 
better compatibility

v1.3.1
- Added: Support for repository based dub paths
- Added: buildType support

v1.2.20
- Added: Now rebuild is also based on output artifact. This 
guarantees that it won't reuse compilation artifacts on different 
configurations

- Fixed: Generate cache for static libs too

v1.2.18
- Update: Content hashing is now using a faster hashing algorithm

v1.2.17
- Update: Improved efficiency of cache generation
- Update: Improved cache generation
- Fixed: now adv_diff supports date-only comparison
- Fixed: Some bugs on serialization
- Fixed: Bug when some caches would not be correctly identified

v1.2.13
- Fixed: Redub describe now includes requirements extra libpaths
- Added: Support to dflags as link flags and fixed escaping 
problem
- Fixed: Support for private visibility of dependencies, 
outputting file names correctly based on target system, linker 
error are now being checked earlier

- Refactor: Buildapi is being prepared to use private visibility
- Added: Better cross compilation support, now also forwarding 
linking on msvc to default one when cross compiling. Command 
filters will now work on the target platform

- Added: Wasm support
- Fixed: Subconfiguration only are not iterated
- Fixed: Always merging sourcePaths into importPaths. finish 
implementation now only will traverse unvisited nodes
- Fixed: Now elements with subConfigurations which aren't default 
are the first to be parsed
- Fixed: Using Breadth First Search and mixing subConfigurations 
for better subConfiguration resolution

- Added: Architecture support
- Added: More documentation to redub
- Fixed: Now, when rebuilding, redub will remove existing 
binaries, since this was causing some problems with existing 
binaries
- Added: D Compiler abstraction for command generator. Also using 
more performatic versions of map (faster dependency resolution)

- Fixed: Redub environment support
- Added: Dub describe support, fixed problem on environment 
variables