| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 8 days | refactor(package): pass package handles by value throughout | nsfisis | |
| Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> | |||
| 8 days | refactor(io): share IOInterface via Rc<RefCell<dyn _>> handle | nsfisis | |
| Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> | |||
| 10 days | refactor(package): introduce Rc<RefCell<_>> handles for packages | nsfisis | |
| PHP packages have reference semantics, so introduce shared-ownership handles over an AnyPackage enum (PackageInterfaceHandle and friends) and replace Box<dyn PackageInterface> throughout. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> | |||
| 11 days | refactor(semver): change ConstraintInterface to a closed enum | nsfisis | |
| Replace the dyn ConstraintInterface trait objects with an AnyConstraint enum closing over its four implementors (Simple, Multi, MatchAll, MatchNone), mirroring the earlier Rule enum conversion. Rename constraint.rs to simple_constraint.rs to match the renamed Constraint type. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> | |||
| 12 days | refactor(promise): drop \React\Promise | nsfisis | |
| Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> | |||
| 12 days | refactor(promise): rewrite promise bodies to async/await | nsfisis | |
| Mechanically convert promise-returning function bodies to async/await: resolve() returns the value directly, forwarding calls get .await, and simple .then chains become await sequences. Also collapse the installer double-Option (Result<Option<Option<PhpMixed>>> -> Result<Option<PhpMixed>>). Hard spots that depend on the Loop::wait / job-machine boundary (accept/reject orchestration, closures capturing &mut self, batch waits) are left intact and marked with TODO(phase-c-promise) for manual porting. The crate does not compile yet; traits still need #[async_trait]. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> | |||
| 13 days | refactor: share Pool via Rc<RefCell> | nsfisis | |
| Convert Pool to Rc<RefCell<Pool>> so Solver, Decisions, and RuleSetGenerator share it, resolving the todo!() placeholders that blocked the dependency resolver (Phase C shared ownership). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> | |||
| 13 days | refactor(composer): unify Composer/PartialComposer via Rc handles | nsfisis | |
| Model PHP's `Composer extends PartialComposer` as a PartialOrFullComposer enum and merge partial_composer.rs into composer.rs. Introduce ComposerHandle / PartialComposerHandle (plus their Weak variants) so the graph can be shared, and build it at once with Rc::new_cyclic in the factory to resolve the back-reference cycles. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> | |||
| 2026-05-20 | refactor: re-export module items to shorten import paths | nsfisis | |
| 2026-05-20 | fix(compile): fix all remaining compile errors | nsfisis | |
| Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> | |||
| 2026-05-19 | fix(compile): fix more random compile errors | nsfisis | |
| Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> | |||
| 2026-05-19 | fix(compile): fix various compile errors | nsfisis | |
| Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-05-18 | fix(compile): extract static methods from BasePackage trait | nsfisis | |
| 2026-05-18 | fix(compile): impl std::error::Error for custom error types | nsfisis | |
| 2026-05-17 | fix(compile): extract constants from traits to make them dyn-compatible | nsfisis | |
| 2026-05-17 | fix(compile): add missing PackageInterface and RepositoryInterface impls | nsfisis | |
| Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-05-17 | fix(compile): add dyn keyword to all trait object usages (E0782) | nsfisis | |
| Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-05-17 | fix(compile): add Display impls and fix trait signatures | nsfisis | |
| Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-05-17 | fix(compile): add stubs for missing trait implementations | nsfisis | |
| 2026-05-17 | fix(compile): extract constants from traits to make them dyn-compatible | nsfisis | |
| 2026-05-17 | fix(compile): fix trait signature errors | nsfisis | |
| 2026-05-17 | fix(compile): implement abstract class traits across all types | nsfisis | |
| Implement BaseCommand trait and other abstract class traits across all command, downloader, io, package, and VCS driver types. Also fix trait method signatures for composer_mut and io_mut to return mutable references to Option rather than Option of mutable references. | |||
| 2026-05-17 | refactor(shirabe): convert PHP abstract classes to Rust traits | nsfisis | |
| PHP abstract classes are represented as traits to better align with Rust's type system. | |||
| 2026-05-17 | chore(style): cargo fmt | nsfisis | |
| 2026-05-16 | feat(port): port Package.php | nsfisis | |
| 2026-05-16 | feat(port): port ValidatingArrayLoader.php | nsfisis | |
| 2026-05-16 | feat(port): port Locker.php | nsfisis | |
| 2026-05-16 | feat(port): port ArrayLoader.php | nsfisis | |
| 2026-05-16 | feat(port): port VersionGuesser.php | nsfisis | |
| 2026-05-16 | feat(port): port AliasPackage.php | nsfisis | |
| 2026-05-16 | feat(port): port PackageInterface.php | nsfisis | |
| 2026-05-16 | feat(port): port RootPackageLoader.php | nsfisis | |
| 2026-05-16 | feat(port): port ZipDownloader.php | nsfisis | |
| 2026-05-16 | feat(port): port BasePackage.php | nsfisis | |
| 2026-05-16 | feat(port): port ArchiveManager.php | nsfisis | |
| 2026-05-16 | feat(port): port Bitbucket.php, GitDriver.php, GitHub.php, BumpCommand.php, ↵ | nsfisis | |
| VersionSelector.php | |||
| 2026-05-16 | feat(port): port CompletePackage.php | nsfisis | |
| 2026-05-16 | feat(port): port RootAliasPackage.php | nsfisis | |
| 2026-05-16 | feat(port): port CompletePackageInterface.php | nsfisis | |
| 2026-05-16 | feat(port): port RootPackageInterface.php | nsfisis | |
| 2026-05-16 | feat(port): port ArrayDumper.php | nsfisis | |
| 2026-05-16 | feat(port): port CompleteAliasPackage.php | nsfisis | |
| 2026-05-16 | feat(port): port Comparer.php | nsfisis | |
| 2026-05-16 | feat(port): port BaseExcludeFilter.php | nsfisis | |
| 2026-05-16 | feat(port): port PharArchiver.php | nsfisis | |
| 2026-05-16 | feat(port): port ArtifactRepository.php | nsfisis | |
| 2026-05-16 | feat(port): port Link.php | nsfisis | |
| 2026-05-16 | feat(port): port RootPackage.php | nsfisis | |
| 2026-05-15 | feat(port): port VersionBumper.php | nsfisis | |
| 2026-05-15 | feat(port): port ZipArchiver.php | nsfisis | |
