Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Releases: cwbaker/forge

v0.10.7

04 Aug 02:22

Choose a tag to compare

v0.10.7 Pre-release
Pre-release
  • Use snprintf() to format anonymous target id in LuaGraph::anonymous()
  • Qualify std::move() in Scheduler::dispatch_results()
  • Implement assert for ARM-based macOS machines
  • Bump version to 0.10 from 0.9
  • Add script() function to return path of calling Lua script
  • Only set outdated when timestamp > last write for cleanable targets
  • Remove years from copyright notice shown with "forge --version"
  • Error on non-string values in environment tables passed to execute()
  • Allow mismatched types in apply()
  • Make bootstrap scripts for Linux, macOS, and MinGW executable
  • Read path to opened file correctly in forge_hooks_macos.cpp
  • Test paths returned from hooks are correct full paths
  • Allow MSVC compilation to specify PDB file explicitly
  • Properly ignore temporary files from Linux file change hooks
  • Return full path of accessed files to Forge from Windows hooks
  • Return full path of accessed files to Forge from macOS hooks
  • Return full path of accessed files to Forge from Linux hooks
  • Use decode_access() in Toolset.dependencies_filter() etc
  • Add decode_access() to decode file accesses output by hooks
  • Ignore temporary files when hooking Windows processes for file changes
  • Ignore temporary files when hooking Linux processes for file changes
  • Remove unused Windows hooks
  • Remove some unused filename conversion in Windows hooks
  • Rename patterns in Toolset filters to ACCESS_PATTERN for clarity
  • Remove duplicate Rule.prepare() item from "Rules"
  • Revise "Commands" documentation
  • Reorder commands, modules, and rules in "More Details" documentation
  • Rename PatternPrototype() to PatternRule() in docs/index.md
  • Describe search for highest level forge.lua in "Running Forge"
  • Revert "Treat first directory with forge.lua as root not highest"

v0.9.7

22 Aug 04:08

Choose a tag to compare

v0.9.7 Pre-release
Pre-release
  • Count commits from last version change for patch version
  • Default to Toolset.interpolate to identify FileRule targets
  • Revise "Rules" documentation
  • Update module example to define install() not initialize()
  • Reference Forge v0.9.0 in Github Actions installation instructions

v0.9.0

12 Aug 03:26

Choose a tag to compare

v0.9.0 Pre-release
Pre-release
  • Add "More Details" documentation, revise everything else accordingly
  • Update to Lua 5.4.4
  • Pass identify as parameter to rule functions rather than as rule method
  • Call build() instead of default() from install()
  • Rename system() to run()
  • Only iterate over binding dependencies for bind and postorder passes
  • Remove unused Target::changed()
  • Rename TargetPrototype to Rule and knock ons
  • Rename PatternPrototype, etc to PatternRule, etc
  • Delete local_settings.lua from cache directory in reconfigure()
  • Create toolsets with identifiers, separate to the toolset settings
  • Generate toolset ids from outside settings applied to toolset
  • Allow yielding from preorder traversals
  • Rely on transitive dependencies to link libraries into forge executable
  • Treat first directory with forge.lua as root not highest
  • Call forge:load() explicitly from forge.lua
  • Accept cache directory in forge:load(), store local settings in cache dir.
  • Simplify module install to toolset, make modules and toolsets independent
  • Remove now unused ToolsetPrototype
  • Simplify toolset/module interface to just module.install()
  • Combine Settings into Toolset
  • Store zero in __forge_hash before hashing to avoid infinite recursion
  • Make forge:merge() a global function
  • Make apply() a global function
    ssive dependencies
  • Rename transitive dependencies to passive dependencies

v0.8.7

13 Jun 08:17

Choose a tag to compare

v0.8.7 Pre-release
Pre-release
  • Process assignments and commands in their order on the command line
  • Remove unused forge:reload()
  • Remove unused settings parameter from forge:load()

v0.7.26

18 Jan 04:11

Choose a tag to compare

v0.7.26 Pre-release
Pre-release
  • Fix transitive dependencies broken in previous release
  • Allow reordering of dependencies of the same and weaker types
  • Prepare transitive dependencies in dependencies and namespace commands
  • Ignore targets without scripts or working directories in preorder()

v0.7.19

12 Jan 07:35

Choose a tag to compare

v0.7.19 Pre-release
Pre-release
  • Always visit root target in preorder traversal
  • Fix crash and test files sometimes not being deleted

v0.7.12

10 Dec 08:03

Choose a tag to compare

v0.7.12 Pre-release
Pre-release
  • Collect transitive static library dependencies for executables
  • Rename Lua binding any_dependencies() to all_dependencies()
  • Remove Lua bindings for unused dependency iteration functions
  • Add preorder() to make a preorder traversal over the dependency graph
  • Add prune() in preparation for preorder pruning
  • Iterate over all dependencies at once in Graph::print_recursively()
  • Add transitive dependencies to Target
  • Add __tostring metamethod for TargetPrototypes returning id

v0.6.18

04 Sep 03:32

Choose a tag to compare

v0.6.18 Pre-release
Pre-release
  • Avoid closing write end of pipe when it matches user requested FD
  • Close all file descriptors by default when spawning processes on Linux and macOS
  • Use WIFEXITED() and WIFSIGNALED() macros when checking waitpid() on Linux

v0.6.11

29 Aug 02:11

Choose a tag to compare

v0.6.11 Pre-release
Pre-release
  • Build releases for generic x86-64 for better CI system support

v0.6.6

08 Aug 04:15

Choose a tag to compare

v0.6.6 Pre-release
Pre-release
  • Increase maximum error and output length to 8192 from 1024
  • Hook NtCreateFile() on Windows to detect more dependencies
  • Treat paths on separate drives as being outside the source tree
  • Skip "\\?\" or "\??\" prefix on paths hooked in forge_hooks_windows.cpp
  • Convert include directories to absolute paths for MSVC++
  • LINT: Reduce indentation of declarations in System.hpp