Mbed-cli: *.lib should not allow named branches

Created on 23 Jun 2016  路  8Comments  路  Source: ARMmbed/mbed-cli

We've committed to initial an mbed OS release that guarantees exact reproducibility as it always had in mbed OS 2.0. This means that mbed cli should error when it detects a branch name, tag or anything other than a hash in the *.lib file for a repository.

enhancement in progress

Most helpful comment

How about not allow "master" and "default" branches?

-1. This would add an exception to the behavior, which goes against creating a consistent experience. We really need to just support "everything" or "one thing", not bits and pieces of each case.

All 8 comments

While I understand the reasoning behind this, it can potentially disrupt lots of people's workflows, since they're using .lib with branches for their development, especially in the early stages.

How about not allow "master" and "default" branches?

How about not allow "master" and "default" branches?

-1. This would add an exception to the behavior, which goes against creating a consistent experience. We really need to just support "everything" or "one thing", not bits and pieces of each case.

Scratch that. It was late hour :)

Why would you not allow branch names?
How would you then automatically update?

Example:
github.com/ARMmbed/mbed-os#mbed-os-16-07 Would point to tip of the 16.07 release WITH hotfixes?

Disabling named branches, would automatically disable automatically updating hotfixes to releases.
Also, disabling named branches would render our testing jobs(those which pull #master) unusable.

@SeppoTakalo When we started morpheus there was complete agreement that we'd make our development completely reproducible. We've failed this once by using .libs when a repo it pointed to was deleted so we need to progress with all protections in place and can revisit this at a later point in time. mbed cli and git pull support the branch development model without loosely pinning a .lib file

Hey, did you just implement this? I did not realise earlier that the patch was already in.
Now all our tests are broken.

Why do you implement features that receive -1 feedback from other teams?
ALL our tests are done against master. That is the purpose of testing.
Therefore our test apps point to #master

@SeppoTakalo This is the PR that changed it with the similar message as yours: https://github.com/ARMmbed/mbed-cli/pull/230#issuecomment-228906824

Apart from this issue, one positive thing that breaking change was released as a new minor version, thus should not break anything (we should use >0.7.x <= 0.8.x). And test it before we jump to a next breaking version, to find out what has changed.

Was this page helpful?
0 / 5 - 0 ratings