On 04/01/17 00:35, Gregory Szorc wrote:
> Over in bug 1322769, we're planning to vendor the contents of the Servo Git
> repository into mozilla-central as part of Quantum efforts.
> 
> The initial vendoring of the Servo repository is the first milestone of a
> larger project that aims to "unify" workflows and automation across the two
> projects, allowing both projects to have insights into the other's
> automation and allowing development work spanning both projects to be
> simpler.
> 
> In this first milestone, we will vendor the history of the Servo Git
> repository into mozilla-central.
> 
> We only get one chance to vendor the history of Servo before it is forever
> set in stone in the history of mozilla-central. So I'd prefer to get it
> right so we don't have regrets about the approach 10 years from now.
> Therefore, if you care about getting it right, your brain and eyeballs on
> the proposal would be useful.
> 
> The current plan is to rewrite Servo's history to:
> 
> * Remove merge commits (only taking the p1 ancestry of the repo)
> * Add something in commit message summary line to indicate commit comes
> from Servo
> * Add source repo and commit annotations to the commit message
> * Reformat some GitHub-flavored markdown to something more sane for plain
> text display
> * Remove everything related to submodules
> * Drop WPT files (there's ~135,000 of them!)
> 
> We also tentatively plan to introduce the Servo history as a new root in
> the mozilla-central repository so that bisect operations on Firefox/Gecko
> don't land in the middle of thousands of Servo-only commits. (I concede
> this is an ugly hack to work around limitations of the "bisect" command of
> your preferred VCS.)
> 
> Unless we prune more from history rewriting, this will add ~8,000 commits
> to mozilla-central touching ~5,700 files. The on-wire clone size of the
> repository will increase by ~36 MB. On-disk repo size will increase by ~50
> MB (not including inode overhead).
> 
> Also, I anticipate the techniques and tools used to import Servo's history
> and keep it "synchronized" have uses outside of Servo. Our current
> mechanisms for keeping upstream/third party projects in sync with
> mozilla-central are not well standardized. I'd really like the work to
> support Servo to be used for other projects as well. This potentially
> includes a future where certain directories in mozilla-central are
> effectively developed on GitHub or are using other "non-standard"
> workflows. If you think you may benefit from this future work, I'd
> appreciate if you could look at the Servo vendoring effort and make sure
> things like the annotations tracking the original source of the commit are
> sufficient for uses outside of Servo.
> 
> Again, it's bug 1322769 if you want to comment or follow along.
> 

As I said before, this approach is, IMO, much too complicated; splitting
the reusable parts of Servo into their own repositories, as we have done
before, would be a much simpler solution.

However, as it seems the decision has already been made quietly long
ago, I don't see much point in continuing to fight it, as long as this
frankenhistory does not affect the canonical Servo history in git.

HTH
Ms2ger

_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to