From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 113644 invoked by alias); 1 Nov 2019 00:44:12 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 113629 invoked by uid 89); 1 Nov 2019 00:44:11 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-2.7 required=5.0 tests=AWL,BAYES_00,KAM_SHORT,SPF_PASS autolearn=ham version=3.3.1 spammy=boehm-gc, boehmgc, months X-HELO: esa1.mentor.iphmx.com Received: from esa1.mentor.iphmx.com (HELO esa1.mentor.iphmx.com) (68.232.129.153) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 01 Nov 2019 00:44:08 +0000 IronPort-SDR: MMYbtanobxJPeKOTHy1oQfhdqNL4CRBjLNf/V5K47aPmt4mORlT5GEWhex5XRineSbBWR8A/C8 Jl66AIBQ53NMgbq6a5y9ImbwOzM7AVrOcD/TvW/5DAV4sqXZfrvcLHTZTArybut+4v2cgdTJdu ILQerhXmI4dHp4MSMWHMFzaTv/ip+/OEapKdmI68EUOhuuvoryrqTfNYwLwcSrv5lZvg1f/7tL Mvp1lrLLgnx5PKVUcYj9PH6mIWtD/k7Sx0F1XK42HYWTH77G9H6FPbf/ZqLJJpoapp5F6fGVdf c+k= Received: from orw-gwy-01-in.mentorg.com ([192.94.38.165]) by esa1.mentor.iphmx.com with ESMTP; 31 Oct 2019 16:44:06 -0800 IronPort-SDR: FRD3q/zXqqntSq1ct+8Z6GWXhtZwY3q1WH4C/ok7q4Pcv/jvlTcF8S2KTbnsKxsIAzX6y2AhGR 9yo3qiOj0fKSNkLGAfG/4/MKJie1xOwB3A5B54sLA9EW+aXnKZgg2rPDURlnVfJwZ3c7QfRZ1M 83MiEanc1H9UAVfZ7rKK0q9ZUZRHw94YKwQ1Hggr6LGtE6yXKHIGAOzYwtO5Frf/koD0XW/KWp oItBWbWqn4NVsAu8DYpYIh62sILkX2avRh4BcDFkVJ5yt2yxzr/ACN1ecWJXPfScj0cqmq8ZQ2 CEA= Date: Fri, 01 Nov 2019 00:44:00 -0000 From: Joseph Myers To: CC: Subject: Re: Fixing cvs2svn branchpoints In-Reply-To: Message-ID: References: User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Return-Path: joseph@codesourcery.com X-SW-Source: 2019-11/txt/msg00000.txt.bz2 Here are complete lists of reparentings I think should be done on the commits that start branches, along with my notes on branches with messy initial commits but where I don't think any reparenting should be done. The REPARENT: lines have the meaning I described in . Of the 54 branches with suspicious branchpoints, I have 32 with automatically suggested or verified reparentings, meeting the criteria given in that message for the new parent not being suspicious, and 7 more I think should be reparented although the new parent is still suspicious in some ways (e.g. because of vendor branch issues or non-atomic branching). The remaining 15 suspicious cases are ones where I think the existing branchpoint is the best one available. Automatically suggested or verified reparentings: REPARENT: /branches/GC_5_0_ALPHA_1 27860 /trunk 27852 /trunk 27855 REPARENT: /branches/apple-200511-release-branch 105574 /trunk 95082 /branches/apple-local-200502-branch 105446 REPARENT: /branches/apple-gcc_os_35-branch 90607 /branches/tree-ssa-20020619-branch 79740 /branches/apple-ppc-branch 90334 REPARENT: /branches/apple-tiger-release-branch 96595 /branches/tree-ssa-20020619-branch 79740 /branches/apple-ppc-branch 96593 REPARENT: /branches/bje-unsw-branch 97591 /trunk 95529 /branches/gcc-4_0-branch 97590 REPARENT: /branches/bounded-pointers-branch 33333 /trunk 33317 /trunk 33062 REPARENT: /branches/cfg-branch 46945 /trunk 46940 /trunk 46941 REPARENT: /branches/csl-3_3_1-branch 70143 /trunk 60111 /branches/gcc-3_3-branch 70142 REPARENT: /branches/csl-3_4-linux-branch 90110 /trunk 75991 /branches/gcc-3_4-branch 90109 REPARENT: /branches/csl-3_4_0-hp-branch 80843 /trunk 75991 /branches/gcc-3_4-branch 80842 REPARENT: /branches/csl-3_4_3-linux-branch 93879 /trunk 72971 /branches/csl-arm-branch 92959 REPARENT: /branches/csl-arm-2004-q3-branch 90934 /trunk 72971 /branches/csl-arm-branch 90933 REPARENT: /branches/csl-gxxpro-3_4-branch 102442 /trunk 72971 /branches/csl-arm-branch 102441 REPARENT: /branches/csl-sol210-3_4-branch 87927 /trunk 75991 /branches/gcc-3_4-branch 87903 REPARENT: /branches/cygming331 70683 /trunk 60111 /branches/gcc-3_3-branch 70142 REPARENT: /branches/cygming332 73014 /trunk 60111 /branches/cygming331 73013 REPARENT: /branches/cygwin-mingw-gcc-3_1-branch 53609 /trunk 50029 /branches/gcc-3_1-branch 53596 REPARENT: /branches/cygwin-mingw-gcc-3_2-branch 55799 /trunk 50029 /branches/cygwin-mingw-gcc-3_1-branch 55797 REPARENT: /branches/cygwin-mingw-gcc-3_2_1-branch 59662 /trunk 50029 /branches/cygwin-mingw-gcc-3_2-branch 59368 REPARENT: /branches/cygwin-mingw-v2-branch 60175 /trunk 50029 /branches/gcc-3_2-branch 59267 REPARENT: /branches/egcs_1_00_branch 16282 /branches/devo_gcc_testsuite 14842 /trunk 16272 REPARENT: /branches/gcc-2_95_2_1-branch 30162 /trunk 26993 /branches/gcc-2_95-branch 30160 REPARENT: /branches/gcc-3_2-branch 55785 /trunk 50029 /branches/gcc-3_1-branch 55783 REPARENT: /branches/gcc-3_3-e500-branch 65902 /trunk 60111 /branches/gcc-3_3-branch 65660 REPARENT: /branches/gcc-3_3-rhl-branch 66998 /trunk 60111 /branches/gcc-3_3-branch 66832 REPARENT: /branches/gcc-3_4-e500-branch 89417 /trunk 75991 /branches/gcc-3_4-branch 89410 REPARENT: /branches/gcc-3_4-rhl-branch 81014 /trunk 75991 /branches/gcc-3_4-branch 80870 REPARENT: /branches/gcc-4_0-rhl-branch 95664 /trunk 95533 /branches/gcc-4_0-branch 95655 REPARENT: /branches/gomp-01-branch 62579 /trunk 62499 /branches/tree-ssa-20020619-branch 62392 REPARENT: /branches/libgcj-2_95-branch 27730 /branches/CYGNUS 26267 /trunk 27727 REPARENT: /branches/struct-reorg-branch 87007 /branches/tree-ssa-20020619-branch 77756 /branches/tree-profiling-branch 86038 REPARENT: /branches/tree-cleanup-branch 87819 /trunk 87795 /trunk 87698 In the case of cfg-branch, the reparenting was suggested automatically based on the branchpoint tag with a note of possible mismatch between branch and branchpoint tag; that mismatch appears just to be a vendor branch artifact and the reparenting seems correct. Manually identified reparentings (not perfect matches, but seem the best available and better than the existing parents): REPARENT: /branches/apple-200508-beta-branch 102941 /trunk 95082 /branches/apple-local-200502-branch 102940 REPARENT: /branches/bnw-simple-branch 56621 /trunk 54811 /branches/tree-ssa-20020619-branch 56620 REPARENT: /branches/egcs_gc_branch 19641 /branches/devo_gcc_testsuite 14842 /trunk 19615 REPARENT: /branches/ffixinc-branch 23624 /branches/devo_gcc_testsuite 14842 /trunk 23622 REPARENT: /branches/gcc-3_2-rhl8-branch 57454 /trunk 50029 /branches/gcc-3_2-branch 56747 REPARENT: /branches/gnu-win32-b20-branch 22525 /branches/devo_gcc_testsuite 14842 /branches/egcs_1_1_branch 22523 REPARENT: /branches/structure-aliasing-branch 87042 /trunk 86982 /trunk 86980 My notes on branches with imperfect parents to leave as-is, as considered good-enough after analysis (even where the automatic process suggested a reparenting): Vendor branch artifacts, as seen in various branches, are generally cases where a file was first imported on a CVS vendor branch, and then successive imports done there before any non-vendor-branch changes were made, so meaning that for a while revisions 1.1.1.1, 1.1.1.2, etc. were the HEAD revision as that's how CVS defines HEAD in that case. For some reason, in at least some cases where CVS was used to create branches while that was the case, it created them based on revision 1.1 of the file, the first revision, rather than the latest revision on the vendor branch, meaning that the branch creation commit involves reverting those files to their initially imported versions - in the cases where I checked the CVS ,v files, cvs2svn was accurately representing that peculiarity of the CVS history. Apart from vendor branch artifacts, the main issue detected by my script as a possible problem with the branchpoint is CVS branching being non-atomic so the actual branchpoint spans parts of multiple separate CVS commits. BAD: /branches/csl-hpux-branch 73668 /trunk 73667 BAD: /branches/gcc-3_4-branch 76005 /trunk 75991 BAD: /branches/gcc-3_5-integration-branch 75824 /trunk 75823 BAD: /branches/libada-branch 72845 /trunk 72843 BAD: /branches/libobjc-branch 76540 /trunk 76539 [boehm-gc/{libtool.m4,mkinstalldirs,install-sh} vendor branch artifacts] MISMATCH: /branches/csl-arm-branch 73001 /tags/csl-arm-branchpoint 84258 BAD: /branches/csl-arm-branch 73001 /trunk 72977 [non-atomic branching, branchpoint appears to span commits in range 72973 to 72977, plus those vendor branch artifacts] BAD: /branches/egcs_1_1_branch 21136 /trunk 21131 [various vendor branch artifacts] BAD: /branches/gomp-20050608-branch 100901 /trunk 100781 [non-atomic branching, branchpoint has part but not all or r100781 commit] MISMATCH: /branches/hammer-3_3-branch 58890 /tags/hammer-3_3-branchpoint 58860 [the automatically-suggested reparenting from /trunk:58888 to /trunk:58859 would be appropriate to the branchpoint tag - however, the branchpoint tag does not match the first commit on the branch and the existing parent is appropriate to that first commit, so I propose no change to this branch] BAD: /branches/hot-cold-branch 88785 /trunk 88781 [non-atomic branching, branchpoint has part but not all of r88784 commit] BAD: /branches/ia64-fp-model-branch 89947 /trunk 89945 [non-atomic branching, branchpoint has part but not all of r89946 commit] BAD: /branches/pch-branch 49750 /trunk 48845 [boehm-gc/Makefile.direct vendor branch artifact] BAD: /branches/pchmerge-branch 45961 /trunk 45960 [non-atomic branching, no branchpoint tag, branchpoint appears to span commits in range 45925 to 45960] BAD: /branches/premerge-fsf-branch 14640 /trunk 14639 [only oddity is branchpoint tag adding files not present on trunk] BAD: /branches/java-gui-branch 77760 /trunk 77730 [looks like some 77730 is right for directories branched initially, other directories only branched four months later] -- Joseph S. Myers joseph@codesourcery.com