A constraint should provide a way to retrieve its lower and upper boundaries.
For example ^5.1.3 should return 5.1.3.0 as the lower boundary and 5.99999.99999.99999 as the upper boundary. The exact number of 9 digits and number of version digits needs to match what Composer uses.
Need to review how suffixes like -dev1/0 or -pl99999 would need to be treated here.
A constraint should provide a way to retrieve its lower and upper boundaries.
For example
^5.1.3should return5.1.3.0as the lower boundary and5.99999.99999.99999as the upper boundary. The exact number of 9 digits and number of version digits needs to match what Composer uses.Need to review how suffixes like -dev1/0 or -pl99999 would need to be treated here.