git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH v2 0/2] extra: new concept of extra components
@ 2021-07-10 23:46 Felipe Contreras
  2021-07-10 23:46 ` [PATCH v2 1/2] completion: graduate out of contrib Felipe Contreras
                   ` (4 more replies)
  0 siblings, 5 replies; 17+ messages in thread
From: Felipe Contreras @ 2021-07-10 23:46 UTC (permalink / raw)
  To: git
  Cc: Ævar Arnfjörð Bjarmason, Luke Shumaker,
	Junio C Hamano, Felipe Contreras

This patch series introduces the concept of extra components. These are
components which are not yet part of the core but are good enough for
distributions to ship, and in fact, they already do.

This benefits everyone:

 1. Distribution packagers that just want to do `make install`
 2. People who download git's source code and just want to do
    `make install`
 3. Developers who have no idea what's production-level quality in
    contrib/ and just want to do `make install`.

For now they'll have to do `make install install-extra`. But if the
result is deemed correct, we might choose to add "install-extra" to the
"install" target.

The measuring stick I'm using to gauge if a component in contrib belongs
in extra is simple: are we already running tests for them with
'make test'? If the answer is "yes, we do run tests", then the answer is
"yes, it belongs in contrib".

We might want to move more components from contrib to extra once their
tests are being run reliably.

And we might move some components from the core which aren't really part
of the core to extra, like gitk, git-gui, git-p4, and git-svn.

For now only contrib/completion and contrib/workdir are graduated to the
new area.

Since v1 I removed extra/Makefile in favor having the targets in the
top-level Makfile as Ævar suggested.

Felipe Contreras (2):
  completion: graduate out of contrib
  git-new-workdir: graduate out of contrib

 Makefile                                          | 13 +++++++++++++
 {contrib => extra}/completion/git-completion.bash |  0
 {contrib => extra}/completion/git-completion.zsh  |  0
 {contrib => extra}/completion/git-prompt.sh       |  0
 {contrib => extra}/workdir/.gitattributes         |  0
 {contrib => extra}/workdir/git-new-workdir        |  0
 t/t1021-rerere-in-workdir.sh                      |  6 +++---
 t/t3000-ls-files-others.sh                        |  2 +-
 t/t9902-completion.sh                             |  8 ++++----
 t/t9903-bash-prompt.sh                            |  2 +-
 10 files changed, 22 insertions(+), 9 deletions(-)
 rename {contrib => extra}/completion/git-completion.bash (100%)
 rename {contrib => extra}/completion/git-completion.zsh (100%)
 rename {contrib => extra}/completion/git-prompt.sh (100%)
 rename {contrib => extra}/workdir/.gitattributes (100%)
 rename {contrib => extra}/workdir/git-new-workdir (100%)

Range-diff against v1:
1:  3a2c2402af ! 1:  3f44bc3253 completion: graduate out of contrib
    @@ Commit message
         Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
     
      ## Makefile ##
    +@@ Makefile: sharedir = $(prefix)/share
    + gitwebdir = $(sharedir)/gitweb
    + perllibdir = $(sharedir)/perl5
    + localedir = $(sharedir)/locale
    ++bashcompdir = $(sharedir)/bash-completion/completions
    + template_dir = share/git-core/templates
    + htmldir = $(prefix)/share/doc/git-doc
    + ETC_GITCONFIG = $(sysconfdir)/gitconfig
    +@@ Makefile: bindir_relative_SQ = $(subst ','\'',$(bindir_relative))
    + mandir_SQ = $(subst ','\'',$(mandir))
    + mandir_relative_SQ = $(subst ','\'',$(mandir_relative))
    + infodir_relative_SQ = $(subst ','\'',$(infodir_relative))
    ++sharedir_SQ = $(subst ','\'',$(sharedir))
    + perllibdir_SQ = $(subst ','\'',$(perllibdir))
    + localedir_SQ = $(subst ','\'',$(localedir))
    + localedir_relative_SQ = $(subst ','\'',$(localedir_relative))
    +@@ Makefile: htmldir_relative_SQ = $(subst ','\'',$(htmldir_relative))
    + prefix_SQ = $(subst ','\'',$(prefix))
    + perllibdir_relative_SQ = $(subst ','\'',$(perllibdir_relative))
    + gitwebdir_SQ = $(subst ','\'',$(gitwebdir))
    ++bashcompdir_SQ = $(subst ','\'',$(bashcompdir))
    + 
    + SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
    + TEST_SHELL_PATH_SQ = $(subst ','\'',$(TEST_SHELL_PATH))
     @@ Makefile: quick-install-man:
      quick-install-html:
      	$(MAKE) -C Documentation quick-install-html
      
    -+install-extra:
    -+	$(MAKE) -C extra install
    ++install-extra: install-completion
    ++
    ++install-completion:
    ++	$(INSTALL) -D -m 644 extra/completion/git-completion.bash '$(DESTDIR_SQ)$(bashcompdir_SQ)'/git
    ++	$(INSTALL) -D -m 644 extra/completion/git-prompt.sh '$(DESTDIR_SQ)$(sharedir_SQ)'/git-core/git-prompt.sh
    ++	$(INSTALL) -D -m 644 extra/completion/git-completion.zsh '$(DESTDIR_SQ)$(sharedir_SQ)'/zsh/site-functions/_git
     +
      
      
      ### Maintainer's dist rules
     
    - ## extra/Makefile (new) ##
    -@@
    -+bashcompdir = $(sharedir)/bash-completion/completions
    -+
    -+DESTDIR_SQ = $(subst ','\'',$(DESTDIR))
    -+sharedir_SQ = $(subst ','\'',$(sharedir))
    -+bashcompdir_SQ = $(subst ','\'',$(bashcompdir))
    -+gitexec_instdir_SQ = $(subst ','\'',$(gitexec_instdir))
    -+
    -+INSTALL ?= install
    -+
    -+all:
    -+
    -+install: install-completion
    -+
    -+install-completion:
    -+	$(INSTALL) -D -m 644 completion/git-completion.bash '$(DESTDIR_SQ)$(bashcompdir_SQ)'/git
    -+	$(INSTALL) -D -m 644 completion/git-prompt.sh '$(DESTDIR_SQ)$(sharedir_SQ)'/git-core/git-prompt.sh
    -+	$(INSTALL) -D -m 644 completion/git-completion.zsh '$(DESTDIR_SQ)$(sharedir_SQ)'/zsh/site-functions/_git
    -
      ## contrib/completion/git-completion.bash => extra/completion/git-completion.bash ##
     
      ## contrib/completion/git-completion.zsh => extra/completion/git-completion.zsh ##
2:  81836329cd ! 2:  af9b24eeb1 git-new-workdir: graduate out of contrib
    @@ Commit message
     
         Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
     
    - ## extra/Makefile ##
    -@@ extra/Makefile: INSTALL ?= install
    + ## Makefile ##
    +@@ Makefile: quick-install-man:
    + quick-install-html:
    + 	$(MAKE) -C Documentation quick-install-html
      
    - all:
    - 
    --install: install-completion
    -+install: install-completion install-workdir
    +-install-extra: install-completion
    ++install-extra: install-completion install-workdir
      
      install-completion:
    - 	$(INSTALL) -D -m 644 completion/git-completion.bash '$(DESTDIR_SQ)$(bashcompdir_SQ)'/git
    - 	$(INSTALL) -D -m 644 completion/git-prompt.sh '$(DESTDIR_SQ)$(sharedir_SQ)'/git-core/git-prompt.sh
    - 	$(INSTALL) -D -m 644 completion/git-completion.zsh '$(DESTDIR_SQ)$(sharedir_SQ)'/zsh/site-functions/_git
    -+
    + 	$(INSTALL) -D -m 644 extra/completion/git-completion.bash '$(DESTDIR_SQ)$(bashcompdir_SQ)'/git
    + 	$(INSTALL) -D -m 644 extra/completion/git-prompt.sh '$(DESTDIR_SQ)$(sharedir_SQ)'/git-core/git-prompt.sh
    + 	$(INSTALL) -D -m 644 extra/completion/git-completion.zsh '$(DESTDIR_SQ)$(sharedir_SQ)'/zsh/site-functions/_git
    + 
     +install-workdir:
    -+	$(INSTALL) -D workdir/git-new-workdir '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'/git-new-workdir
    ++	$(INSTALL) -D extra/workdir/git-new-workdir '$(DESTDIR_SQ)$(gitexec_instdir_SQ)'/git-new-workdir
    ++
    + 
    + 
    + ### Maintainer's dist rules
     
      ## contrib/workdir/.gitattributes => extra/workdir/.gitattributes ##
     
-- 
2.32.0.36.g70aac2b1aa


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

end of thread, other threads:[~2021-07-16 20:14 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-10 23:46 [PATCH v2 0/2] extra: new concept of extra components Felipe Contreras
2021-07-10 23:46 ` [PATCH v2 1/2] completion: graduate out of contrib Felipe Contreras
2021-07-10 23:46 ` [PATCH v2 2/2] git-new-workdir: " Felipe Contreras
2021-07-12 17:43 ` [PATCH v2 0/2] extra: new concept of extra components Philippe Blain
2021-07-12 17:55   ` Felipe Contreras
2021-07-13  0:17   ` Junio C Hamano
2021-07-13  1:19     ` Felipe Contreras
2021-07-14 20:23 ` [PATCH v3 0/1] " Felipe Contreras
2021-07-14 20:23   ` [PATCH v3 1/1] completion: graduate out of contrib Felipe Contreras
2021-07-14 23:03     ` Ævar Arnfjörð Bjarmason
2021-07-14 23:17       ` Ævar Arnfjörð Bjarmason
2021-07-15 19:12         ` Felipe Contreras
2021-07-16  6:36           ` Ævar Arnfjörð Bjarmason
2021-07-16 20:14             ` Felipe Contreras
2021-07-15 18:59       ` Felipe Contreras
2021-07-16 20:14 ` [PATCH v4 0/1] extra: new concept of extra components Felipe Contreras
2021-07-16 20:14   ` [PATCH v4 1/1] completion: graduate out of contrib Felipe Contreras

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).