On Tue, Jul 17, 2018 at 2:01 PM Sara Golemon <poll...@php.net> wrote:
> On Tue, Jul 17, 2018 at 1:04 AM, Remi Collet <r...@fedoraproject.org> > wrote: > > Le 13/07/2018 à 23:48, Zeev Suraski a écrit : > > Perhaps we can also add all the generated files (including configure) in > > the tagged versions, so the tag will have same content than the official > > archive. > > > Ick, no. That's the worst outcome IMO. I don't think they need to be > in git, but if we're going to have them there during tags, then they > should always be there. One way or the other, not some > middle-of-the-road thing. I can explain why I think that what I propose is the best outcome: - It ensures that the correct versions of re2c are always used. - It doesn't track generated files in source control. - It allows users to build PHP from source on platforms where re2c is unavailable. Correct me if I'm wrong, but isn't that exactly what we do with zend_language_parser.c? makedist is responsible for generating it so that it's available in distributions, but it isn't tracked. Why would zend_language_scanner.c be any different? My guess is that it's probably because at the time we moved to re2c it wasn't nearly as ubiquitous as it is today and even most developers didn't have access to it, but now that's changed. I'm also fine with what Remi proposed which is adding these files specifically to the source control at the time of tagging, in the spirit of tracking everything that we actually end up releasing in source control (and perhaps do that for zend_language_parser.c if we decide that this is the right thing to do). Either way - the first step (normalizing re2c versions - updating our r2ec requirements) seems to make sense. We can decide about whether or not we track the generated files in git as we do today, only during tagging or not at all independently of that. Zeev