all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Re: elpa.git and `new-master`
@ 2020-12-16  6:47 Boruch Baum
  2020-12-16  7:38 ` Jean Louis
  2020-12-16  9:03 ` Lars Ingebrigtsen
  0 siblings, 2 replies; 74+ messages in thread
From: Boruch Baum @ 2020-12-16  6:47 UTC (permalink / raw)
  To: Emacs-Devel List

On Tue, 15 Dec 2020 16:35:44 -0500, Stefan Monnier wrote:
> > On Tue, 15 Dec 2020 10:57:25 -0800, Stephen Leake wrote:
> >>   As a result, I decided to create a fresh `new-master` branch which
> >>   doesn't share its history with `master`.  This new branch will replace
> >>   `master` in the coming days.
> > In keeping with the Black Lives Matter movement, can we name this branch
> > "main" instead of "master"?

+1. Also, I discourage names of the form 'new-*' because it begs some
future eventuality requiring some 'new-new-*' or 'newer-*' or
'newest-*'or 'really-honestly-the-newest-*'.

> Only if you can tell me how to arrange elpa.git such that `git clone
> https://.../elpa.git` gives you the `main` branch instead of the
> `master` branch.

You don't need to perform any arranging; the operation acts on the
currently active upstream branch (see 'git help clone' first paragraph):

  mkdir -p clone-test/{1,2}
  cd clone-test/1
  git init
  touch a
  git add a
  git -am "add a"
  git status
  git branch main
  git switch main
  git status
  cd ../2
  git clone ../1
  cd 1
  git status

The example creates a new branch 'main' but you could just as well just
rename the master branch to main:

  git branch -m master main

--
hkp://keys.gnupg.net
CA45 09B5 5351 7C11 A9D1  7286 0036 9E45 1595 8BC0



^ permalink raw reply	[flat|nested] 74+ messages in thread
* elpa.git and `new-master`
@ 2020-12-15  4:46 Stefan Monnier
  2020-12-15 16:09 ` Eli Zaretskii
                   ` (3 more replies)
  0 siblings, 4 replies; 74+ messages in thread
From: Stefan Monnier @ 2020-12-15  4:46 UTC (permalink / raw)
  To: emacs-devel

As part of the effort to setup the NonGNU ELPA infrastructure, I've also
overhauled the GNU ELPA part.

Part of the result is that now all packages are kept on separate
branches (no more "subtree"s).  As a result, the `master` branch has
shrunk significantly..  Especially since even the deployment script
themsevles have moved to a separate branch (`elpa-admin`) so as to be
able to share them between elpa.git and nongnu.git (it also comes with
the side effect that this FSF-copyrighted code is kept in `elpa.git`
rather than `nongnu.git`).

Here are some immediate news linked to this:

- I have now changed elpa.gnu.org to use the new code to build the
  tarballs of GNU ELPA.  Please be on the lookup for any regressions.

- The old `master` branch has shrunk to almost nothing, yet it still
  carries in its history all the code it used to have.  This is not
  a big issue since that code is still around.  More importantly, the
  `master` history includes some entries which Git nowadays considers
  "not quite valid" (resulting in bugs#22690 and bug#25376).
  As a result, I decided to create a fresh `new-master` branch which
  doesn't share its history with `master`.  This new branch will replace
  `master` in the coming days.  So whoever is tracking `master` will be
  faced with a "non-fast-forward" update.
  This can be annoying and I apologize in advance, but I think the
  long terms advantages largely make up for the short term annoyance.

- On the positive side, the new code has some interesting features:
  - It knows how to build Info files from Texinfo files, so we won't need
    to store the generated Info files any more.
  - It also know how to generate Info files from Org manuals.
  - It can even run `make` as part of building the tarballs, making it
    possible to perform various massaging.
    This obviously can't just run "anything you like" since it depends
    on what's available on `elpa.gnu.org`, so if you want to use this
    feature, please get in touch with me so we can coordinate it.
  There is an embryo of documentation of those new features in the
  `README` file in the `elpa-admin` branch.
  This should hopefully make it possible to build a Tramp tarball
  directly from the code in Emacs, or similarly for AUCTeX avoid the
  need to store generated files in Git.
  The `Org` package is an example that uses some of those new features
  to build the tarballs directly from an unadulterated copy of the
  upstream branch.

- Another advantage is that the new code makes it much easier to build
  your own tarballs, for example to test them before pushing to code.
  You can just do `make build/[PKGNAME]` and the resulting package will
  be built in `archive/[PKGNAME]-[VERSION].tar.

- A subtle but important change affects the exact code placed in the
  tarballs.  The old code detected the need to make a new release
  tarball by watching for changes in the `Version:` header and whenever
  it saw a new value, it built the tarball from the HEAD revision.
  The new code detects the need in the same way but will not just use
  the HEAD revision: it will use the specific revision that modified the
  `Version:` header.  This means you can push a commit that bumps the
  `Version:` together with a bunch of subsequent commits that introduce
  wild bleeding edge changes without fearing that the release will
  actually be made from the bleeding edge code.  It also means that if
  you see a remaining bug after you've bumped the `Version:`, there's no
  point quickly pushing a subsequent fix unless you also re-bump the
  `Version:` header.


        Stefan




^ permalink raw reply	[flat|nested] 74+ messages in thread

end of thread, other threads:[~2020-12-18  5:48 UTC | newest]

Thread overview: 74+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-12-16  6:47 elpa.git and `new-master` Boruch Baum
2020-12-16  7:38 ` Jean Louis
2020-12-16  8:24   ` Andreas Schwab
2020-12-16  9:31     ` Jean Louis
2020-12-16  9:59       ` Andreas Schwab
2020-12-16  8:49   ` Pankaj Jangid
2020-12-16  9:34     ` Jean Louis
2020-12-16  9:01   ` Alfred M. Szmidt
2020-12-16 12:29   ` Joost Kremers
2020-12-16 13:48     ` Jean Louis
2020-12-16 14:04       ` Lars Ingebrigtsen
2020-12-16 14:40         ` Jean Louis
2020-12-16 14:26     ` Stefan Monnier
2020-12-16 20:08     ` Stephen Leake
2020-12-17  3:58     ` Tim Landscheidt
2020-12-17  5:54     ` Richard Stallman
2020-12-17  8:25       ` Joost Kremers
2020-12-17 16:22       ` Stephen Leake
2020-12-18  5:48         ` Richard Stallman
2020-12-16 17:03   ` Clément Pit-Claudel
2020-12-16  9:03 ` Lars Ingebrigtsen
2020-12-16 10:19   ` Pankaj Jangid
2020-12-16 14:15     ` Boruch Baum
2020-12-16 13:48   ` Gregory Heytings via Emacs development discussions.
2020-12-16 13:53     ` Lars Ingebrigtsen
2020-12-16 14:43       ` Gregory Heytings via Emacs development discussions.
2020-12-16 15:24         ` Pankaj Jangid
2020-12-16 15:37         ` Jean Louis
2020-12-16 17:54         ` Alfred M. Szmidt
2020-12-16 16:23       ` Eli Zaretskii
2020-12-16 16:16   ` Dmitry Gutov
2020-12-16 18:24     ` Stefan Monnier
2020-12-16 18:46       ` Dmitry Gutov
2020-12-16 19:03         ` Boruch Baum
2020-12-16 19:06           ` Stefan Monnier
2020-12-16 19:21             ` Boruch Baum
2020-12-16 19:55               ` Stefan Monnier
2020-12-16 19:22             ` Andreas Schwab
2020-12-16 19:56               ` Stefan Monnier
2020-12-16 20:06                 ` Andreas Schwab
2020-12-16 20:12                 ` Boruch Baum
2020-12-16 20:19                   ` Lars Ingebrigtsen
2020-12-16 21:16                     ` Boruch Baum
2020-12-16 21:38                       ` Stefan Monnier
2020-12-16 20:38                   ` Stefan Monnier
2020-12-16 20:46         ` Stefan Monnier
2020-12-16 20:53           ` Dmitry Gutov
2020-12-16 21:09           ` Lars Ingebrigtsen
2020-12-16 21:34             ` Stefan Monnier
2020-12-17  0:11           ` Caio Henrique
2020-12-17  3:37           ` Eli Zaretskii
2020-12-17  8:15             ` Joost Kremers
2020-12-17  8:39               ` Tim Cross
2020-12-17 15:14             ` Stefan Monnier
2020-12-16 20:41       ` Juri Linkov
2020-12-16 21:24         ` Boruch Baum
  -- strict thread matches above, loose matches on Subject: below --
2020-12-15  4:46 Stefan Monnier
2020-12-15 16:09 ` Eli Zaretskii
2020-12-15 16:53   ` Stefan Monnier
2020-12-15 18:24     ` Eli Zaretskii
2020-12-15 19:02       ` Stephen Leake
2020-12-15 19:16         ` Eli Zaretskii
2020-12-15 21:09       ` Dmitry Gutov
2020-12-15 21:33       ` Stefan Monnier
2020-12-16 15:36         ` Eli Zaretskii
2020-12-15 18:57 ` Stephen Leake
2020-12-15 21:35   ` Stefan Monnier
2020-12-16  5:43   ` Richard Stallman
2020-12-16  8:33   ` Tim Cross
2020-12-17  5:55     ` Richard Stallman
2020-12-16  9:00   ` Alfred M. Szmidt
2020-12-15 19:03 ` Stephen Leake
2020-12-15 21:43 ` Jonas Bernoulli
2020-12-15 22:34   ` Stefan Monnier

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.