You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Description:
Create a simple build automation tool similar to Make, but with a simpler featureset. The tool should be able to execute targets with dependencies and commands, focusing on the core functionality of a build system.
Requirements:
Configuration File:
Parse a custom configuration file Makefile
Support defining targets, their dependencies, and associated commands
Target Definition:
Allow users to define targets with a name
Support specifying dependencies for each target
Enable associating one or more shell commands with each target
Dependency Resolution:
Implement a dependency graph to determine the order of execution
Detect and report circular dependencies
Command Execution:
Execute shell commands associated with each target
Support running multiple commands for a single target
CLI Interface:
Accept target names as command-line arguments
If no target is specified, run the default target (if defined)
Implement a '-f' flag to specify a custom Makefile
Concurrency:
Execute independent targets concurrently using goroutines
Implement proper synchronization for dependent targets
Error Handling:
Provide clear error messages for configuration issues
Handle and report errors in command execution
Testing:
Write unit tests for core functionalities (parsing, dependency resolution)
Implement integration tests with sample Makefile
Documentation:
Provide clear documentation on the Makefile format
Include usage instructions and examples in the README
Optional Enhancements:
Implement a dry-run mode to show what would be executed
Add support for environment variable expansion in commands
Implement simple variable substitution in the Makefile
The text was updated successfully, but these errors were encountered:
Description:
Create a simple build automation tool similar to Make, but with a simpler featureset. The tool should be able to execute targets with dependencies and commands, focusing on the core functionality of a build system.
Requirements:
Configuration File:
Makefile
Target Definition:
Dependency Resolution:
Command Execution:
CLI Interface:
Concurrency:
Error Handling:
Testing:
Documentation:
Optional Enhancements:
The text was updated successfully, but these errors were encountered: