On Tue, 30 May 2023 00:42:37 GMT, David Holmes <dhol...@openjdk.org> wrote:

> The main limitation I see with the proposal (and I may be misreading it) is 
> that the exact name match seems to preclude working when your configurations 
> have the form `mybranch` and `mybranch-debug` etc.

Thanks @dholmes-ora for having a look!

First, just to clarify, this change is fully backwards compatible. If you had 
more than one configuration before, you would have to select the one to build 
using either `CONF` or `SPEC`. With this change, if you have more than one 
configuration containing the name of the checked out Git branch, you still have 
to use `CONF` or `SPEC` (there is no way we can infer the one you want to 
build).

I also name my configurations `$(git branch 
--show-current)-{release,fastdebug,slowdebug}`, although I only use a 
`-fastdebug` configuration to start out with. Your comment a make me reconsider 
what I wrote in the pull request description:

> Why match the branch name exactly instead of a looser matching? This could be 
> beneficial if branches are named e.g. $(git branch --show-current)-fastdebug, 
> but I wanted to start out with something strict and then the matching can be 
> made looser if needed.

So I pushed a change (see 
[db7c8b6](https://gith.openjdk.org/jdk/pull/14202/commits/db7c8b6aa9e135783b38476a1f826c449a2153f8))
 that uses a fuzzier matching. Now if there are multiple configurations and 
exactly one contains the current branch name, then it will be built. This 
allows you have to have a single `jdk-1234567-fastdebug` configuration and just 
build it by running `make`.

I'm of course aware that I can use a script to achieve all of this - I've had 
one for years called `bake`, short for "branch make". However if many 
developers are structuring their concurrent work using branches, then I think 
we should add what support we can in upstream to make that workflow easier.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/14202#issuecomment-1568589731

Reply via email to