Implemented Composer
composerutils
This merge introduces a fully implemented Composer wrapper, converter & compiler for NCC among other small bug fixes and improvements to NCC.
- Added more commands to the package manager CLI menu and examples on how to fetch packages from remote sources using the remote package syntax.
- Implemented a configuration system that uses (ncc.yaml) (Unfinished)
- Implemented a configuration menu into the CLI allowing configuration properties to be edited using commands
- Implemented a process wrapper for composer
- Implemented a compatibility layer for composer where composer.lock & composer.json files can be parsed and project configuration files (project.json) can be generated with the correct information. Allowing for NCC to compile these composer packages natively
- Added static file linking (For projects that does not depend on Autoloaders to function)
- Added dependency management where static/remote dependencies can be pulled to install a package
Resolved issues & Work Items checklist
A list of issues that this merge resolves or is in progress of resolving
-
✅ Work Item #20 Implement Autoloader Generator for composer packages -
✅ Work Item #19 Implement project.json generator -
✅ Work item #18 Implement composer extension for converting composer packages to NCC packages -
✅ Work item #17 Implement composer.json parser -
✅ Work item #16 Create Composer Interface class -
✅ Issue #15 Add composer support -
✅ Work item #9 Create PackageManager Class and implement Install() method -
✅ Issue #6 Implement Configuration Tools