From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Payas Relekar Newsgroups: gmane.emacs.devel Subject: Re: Progress on merging Eglot? Date: Sun, 18 Sep 2022 22:01:49 +0530 Message-ID: <87fsgod4ee.fsf@gmail.com> References: <8735d1ajxb.fsf@gmail.com> <874jxhaizf.fsf@gmail.com> <87zgf993py.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="20166"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: mu4e 1.8.9; emacs 29.0.50 Cc: emacs-devel@gnu.org To: =?utf-8?B?Sm/Do28gVMOhdm9yYQ==?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Sep 18 18:49:05 2022 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oZxTc-00056K-P8 for ged-emacs-devel@m.gmane-mx.org; Sun, 18 Sep 2022 18:49:04 +0200 Original-Received: from localhost ([::1]:34730 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oZxTb-0002Jz-I8 for ged-emacs-devel@m.gmane-mx.org; Sun, 18 Sep 2022 12:49:03 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45082) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oZxJL-000526-0b for emacs-devel@gnu.org; Sun, 18 Sep 2022 12:38:27 -0400 Original-Received: from mail-pl1-x636.google.com ([2607:f8b0:4864:20::636]:38528) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oZxJI-0005DB-Rw for emacs-devel@gnu.org; Sun, 18 Sep 2022 12:38:26 -0400 Original-Received: by mail-pl1-x636.google.com with SMTP id x1so25905210plv.5 for ; Sun, 18 Sep 2022 09:38:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:in-reply-to:date :subject:cc:to:from:user-agent:references:from:to:cc:subject:date; bh=MDJI4blYEjHZy5rkw7/8nsBzrR9wQKI9JeuItFg1qMA=; b=Tg+HGW2u44pn0wXzzZ0Y26g9CfHkhau6SGZuGJXHQa9pzUr+WdYU9levQ3j+uC95FR zixbFwIkmNFNGynaxmhyNe5qsEwuHMtwYgrXlixUZGJNLgZfcFlu3GvocZbf5qVPlVyb kGLxju+ykVHTz6JEwrDDRj/VeoLLDS8tYIeo2VaMpbTsKIYqSMjKS2SWbxsXVO1EteWg pS55Uhchvc/Vm+6j+FfOb6DkJ63V0uDRN3l/Vx9yevnPF2P95Wa0k3Gf5nY1wz46l1X9 NzvJa1qZ5gFgJL+YZVpxfwJBQuAlkH4UA5PuPN138mcD5VIhUFM0Qx2D41hnLedtLEKe Wteg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:in-reply-to:date :subject:cc:to:from:user-agent:references:x-gm-message-state:from:to :cc:subject:date; bh=MDJI4blYEjHZy5rkw7/8nsBzrR9wQKI9JeuItFg1qMA=; b=JZpXERdsQveVBD+ni9gi2Vh34sIOE2AqCzaXULlf5ZsMldxuytZHvFwPLeI+r718yv 563P9nNkJflQmZiY4b/ptNvAoMAXVRKnfptKCmAJLqHfT73YuugphBnQGphZ3Bass2oZ QQHbkvorXLmaLi7yOjL0Vg5tjuVTFoHO3TXQavtiUz1yvgcTBmMQ/TiJZ0OW1KexCrXL tEwmX9VDvhtPhY6U7UaoEXksw11Lwem+o65kqjcpc3cOh4d07H45FP77UUR9SUH8z4oJ YT+L3FSmkaZKeiRrG3Hh1ddOr06vw90QbLhpiTBYf18j/tzos7nVfxlDIErHV8sSfpQ2 vRXQ== X-Gm-Message-State: ACrzQf03w4om1HwulmFS8AV8EDXFwPNz0YbnnIHjLJNuqkcfRZmJE1cM dr/wiq7pC0D4z3NcK9YED3Q= X-Google-Smtp-Source: AMsMyM6HekLJTKVoCn9PDxMNDZWXhuYYc2FDNnoV0nmd4ioWkyc4+uuj6xCyin7zpblgtw54KhnjOw== X-Received: by 2002:a17:90b:4d12:b0:202:f027:557e with SMTP id mw18-20020a17090b4d1200b00202f027557emr15893611pjb.1.1663519102098; Sun, 18 Sep 2022 09:38:22 -0700 (PDT) Original-Received: from localhost ([150.107.26.19]) by smtp.gmail.com with ESMTPSA id z6-20020aa79906000000b0054c33d37c9fsm3566053pff.135.2022.09.18.09.38.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 18 Sep 2022 09:38:21 -0700 (PDT) In-reply-to: <87zgf993py.fsf@gmail.com> Received-SPF: pass client-ip=2607:f8b0:4864:20::636; envelope-from=relekarpayas@gmail.com; helo=mail-pl1-x636.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sun, 18 Sep 2022 12:47:38 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:295586 Archived-At: Hello, A bit later than I expected, but $LIFE and all.. I made a naive attempt to get eglot.el into emacs with history (took too long to call it QnD, but its definitely dirty). Here's the steps I followed: *** # move to a directory where both repos can be cloned cd ~/git # clone repos git clone https://github.com/joaotavora/eglot.git git clone git clone -b master git://git.sv.gnu.org/emacs.git # filter eglot with only eglot.el and find+replace # in commit messages git filter-repo --path eglot.el --message-callback ' return re.sub(b" #", b" https://github.com/joaotavora/eglot/issues/",= message) return re.sub(b",#", b",https://github.com/joaotavora/eglot/issues/",= message) return re.sub(b"(#", b"(https://github.com/joaotavora/eglot/issues/",= message) return re.sub(b"Fix#", b"Fix: https://github.com/joaotavora/eglot/iss= ues/", message) return re.sub(b"github#", b"Github: https://github.com/joaotavora/egl= ot/issues/", message) ' # back to emacs repo cd ../emacs # add filtered eglot as upstream git remote add eglot ../eglot/ git fetch eglot master # prepare emacs repo for merge git merge remotes/eglot/master --allow-unrelated-histories --no-commit # reset eglot to initial commit cd ../eglot && git reset --hard 4970e7e1b605510c665c52bc1ddd83bcd1e255d4 # merge by pushing eglot.el into lisp/progmodes/ cd ../emacs && git read-tree --prefix=3Dlisp/progmodes/ -u eglot/master # make a commit git commit -m "; Merge from joaotavora/eglot" # push eglot to latest cd ../eglot && git reset --hard 2f9cf0dcfb2d37f45ec8b9ea65ac9063da033b70 # pull all eglot history to emacs cd ../emacs && git pull -s subtree eglot master --allow-unrelated-histories *** This is the repo I pushed for you to see: https://github.com/bhankas/emacs/commits/master There are couple of glaring issues with this: 1. commit message length is not validated, but can be part of 'git filter-r= epo' script 2. history does not show for eglot.el or lisp/progmodes, but only as part of entire emacs repo I'm kinda unsure where to go from here, for #1 I can definitely use some help, my bash skills are primitive at best. As for #2, I've tried quite a few solutions after scouring Google and this seems to be the least bad. Another approach was to export patches from our filtered eglot repo and apply them to particular file in emacs repo, but that way leads to many many merge conflicts, that I am unsure how to resolve automatically. I'll be happy to provide the patches to anybody if it can help. Further help appreciated. Thanks, Payas Payas Relekar writes: > Jo=C3=A3o T=C3=A1vora writes: > I'd say focus just on keeping the history of eglot.el. The history of >> eglot-tests.el would >> be nice too, but nowhere as important as eglot.el. >> >> Don't worry about the other files. >> >> Jo=C3=A3o > > Very well. Thank you! > > Will get back once there is some progress. --