This changeset suggests renaming the development branch to 3.x and adds appropriate installation instructions. In particular, this makes it much easier to install the v3 development version or any version like this:
$ composer require react/promise:^3@dev
$ composer require react/promise:"^3@dev || ^2 || ^1"This has originally been brought up in #204 by @Seldaek, but instead of defining a branch alias, this PR suggests simply renaming what is currently master to 3.x. This is in line with our existing 2.x and 1.x branches and means we do not have to update any alias definitions once we would start working on a potential future 4.x.
From a consumer's perspective, this means installation is now much easier, as targeting ^3@dev (or 3.x-dev) is semantically more obvious and safer than using dev-master. Additionally, keep in mind that branch names are development artifacts that are subject to change at some point in the future. Once we would decide to rename or delete any of our version branches, the ^3@dev reference would still be valid as it would also match stable versions if we have any ^3 tags at this point (which is safe to assume at this point).
Once this PR is merged, I will manually rename the master branch to 3.x. At the same time, I also propose to set the current default branch to 2.x until a stable 3.0.0 version has been released. This is more consistent with our website, which also renders the latest tagged release (2.x) instead of the latest development version (3.x). Once a stable 3.0.0 version is released, we should set the default branch to 3.x.
Also refs reactphp/async#14 and reactphp/async#11 for similar branch names used in react/async.