threads / patch / 9048

patch, 4 partsMove git-p4import into contrib directory.

Subject: [PATCH 0/4] Move git-p4import into contrib directory.

## tl;dr

7 messages between Jul 15, 2007 and Jul 15, 2007. Diffs are folded; open one to read it.

replies: 6people: 3as markdown or json

Sean· Jul 15, 2007, 19:48 UTC · lore
Hi Junio,

Having caught up on some list emails, it appears that Git now has a much better option for importing from Perforce in the git-p4 front end to fast-import.

Is there anyone out there actually even using git-p4import? It was written for a very specific case, by a git wannabe hacker who had never used Perforce before, and not intended for inclusion in Git proper...

My guess is that it could be removed outright without pain to anyone, but as a first step, it could be moved into contrib for 1.5.3.

Sean
Sean· Jul 15, 2007, 19:49 UTC · re: Sean · lore

[PATCH 1/4] Remove "WITH_P4IMPORT" knob from the Makefile

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
---
 Makefile |   26 --------------------------
 1 files changed, 0 insertions(+), 26 deletions(-)
Show changes to Makefile +0 −26
diff --git a/Makefile b/Makefile
index 5b30e5c..cc18bf4 100644
--- a/Makefile
+++ b/Makefile
@@ -112,8 +112,6 @@ all::
 # Define NO_PERL_MAKEMAKER if you cannot use Makefiles generated by perl's
 # MakeMaker (e.g. using ActiveState under Cygwin).
 #
-# Define WITH_P4IMPORT to build and install Python git-p4import script.
-#
 # Define NO_TCLTK if you do not want Tcl/Tk GUI.
 #
 # The TCL_PATH variable governs the location of the Tcl interpreter
@@ -222,20 +220,9 @@ SCRIPT_PERL = \
 	git-svnimport.perl git-cvsexportcommit.perl \
 	git-send-email.perl git-svn.perl
 
-SCRIPT_PYTHON = \
-	git-p4import.py
-
-ifdef WITH_P4IMPORT
 SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \
 	  $(patsubst %.perl,%,$(SCRIPT_PERL)) \
-	  $(patsubst %.py,%,$(SCRIPT_PYTHON)) \
 	  git-status git-instaweb
-else
-SCRIPTS = $(patsubst %.sh,%,$(SCRIPT_SH)) \
-	  $(patsubst %.perl,%,$(SCRIPT_PERL)) \
-	  git-status git-instaweb
-endif
-
 
 # ... and all the rest that could be moved out of bindir to gitexecdir
 PROGRAMS = \
@@ -285,9 +272,6 @@ endif
 ifndef PERL_PATH
 	PERL_PATH = /usr/bin/perl
 endif
-ifndef PYTHON_PATH
-	PYTHON_PATH = /usr/local/bin/python
-endif
 
 export PERL_PATH
 
@@ -710,7 +694,6 @@ prefix_SQ = $(subst ','\'',$(prefix))
 
 SHELL_PATH_SQ = $(subst ','\'',$(SHELL_PATH))
 PERL_PATH_SQ = $(subst ','\'',$(PERL_PATH))
-PYTHON_PATH_SQ = $(subst ','\'',$(PYTHON_PATH))
 TCLTK_PATH_SQ = $(subst ','\'',$(TCLTK_PATH))
 
 LIBS = $(GITLIBS) $(EXTLIBS)
@@ -782,15 +765,6 @@ $(patsubst %.sh,%,$(SCRIPT_SH)) : % : %.sh
 
 $(patsubst %.perl,%,$(SCRIPT_PERL)): perl/perl.mak
 
-$(patsubst %.py,%,$(SCRIPT_PYTHON)) : % : %.py
-	rm -f $@ $@+
-	sed -e '1s|#!.*/python|#!$(PYTHON_PATH_SQ)|' \
-	    -e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \
-	    -e 's/@@NO_CURL@@/$(NO_CURL)/g' \
-	    $@.py >$@+
-	chmod +x $@+
-	mv $@+ $@
-
 perl/perl.mak: GIT-CFLAGS
 	$(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' $(@F)
 
-- 
1.5.3.rc0.826.gc301a3
Sean· Jul 15, 2007, 19:51 UTC · re: Sean · lore

[PATCH 2/4] Remove p4 rpm from git.spec.in.

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
---
 git.spec.in |   29 +++++++++--------------------
 1 files changed, 9 insertions(+), 20 deletions(-)
NOTE:  Unfortunately i have no way to test this here, anyone?
Show changes to git.spec.in +9 −20
diff --git a/git.spec.in b/git.spec.in
index 27182ba..fe7b3d8 100644
--- a/git.spec.in
+++ b/git.spec.in
@@ -12,7 +12,7 @@ URL: 		http://kernel.org/pub/software/scm/git/
 Source: 	http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.gz
 BuildRequires:	zlib-devel >= 1.2, openssl-devel, curl-devel, expat-devel  %{!?_without_docs:, xmlto, asciidoc > 6.0.3}
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Requires:	git-core, git-svn, git-cvs, git-arch, git-email, gitk, git-gui, git-p4, perl-Git
+Requires:	git-core, git-svn, git-cvs, git-arch, git-email, gitk, git-gui, perl-Git
 
 %description
 Git is a fast, scalable, distributed revision control system with an
@@ -53,13 +53,6 @@ Requires:       git-core = %{version}-%{release}, tla
 %description arch
 Git tools for importing Arch repositories.
 
-%package p4
-Summary:        Git tools for importing Perforce repositories
-Group:          Development/Tools
-Requires:       git-core = %{version}-%{release}, python
-%description p4
-Git tools for importing Perforce repositories.
-
 %package email
 Summary:        Git tools for sending email
 Group:          Development/Tools
@@ -95,14 +88,14 @@ Perl interface to Git
 %setup -q
 
 %build
-make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" WITH_P4IMPORT=YesPlease \
+make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" \
      ETC_GITCONFIG=/etc/gitconfig \
-     prefix=%{_prefix} PYTHON_PATH=%{python_path} all %{!?_without_docs: doc}
+     prefix=%{_prefix} all %{!?_without_docs: doc}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 make %{_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" DESTDIR=$RPM_BUILD_ROOT \
-     WITH_P4IMPORT=YesPlease prefix=%{_prefix} mandir=%{_mandir} \
+     prefix=%{_prefix} mandir=%{_mandir} \
      ETC_GITCONFIG=/etc/gitconfig \
      PYTHON_PATH=%{python_path} \
      INSTALLDIRS=vendor install %{!?_without_docs: install-doc}
@@ -110,10 +103,10 @@ find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';'
 find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm -f {} ';'
 find $RPM_BUILD_ROOT -type f -name perllocal.pod -exec rm -f {} ';'
 
-(find $RPM_BUILD_ROOT%{_bindir} -type f | grep -vE "p4import|archimport|svn|cvs|email|gitk|git-gui|git-citool" | sed -e s@^$RPM_BUILD_ROOT@@)               > bin-man-doc-files
+(find $RPM_BUILD_ROOT%{_bindir} -type f | grep -vE "archimport|svn|cvs|email|gitk|git-gui|git-citool" | sed -e s@^$RPM_BUILD_ROOT@@)               > bin-man-doc-files
 (find $RPM_BUILD_ROOT%{perl_vendorlib} -type f | sed -e s@^$RPM_BUILD_ROOT@@) >> perl-files
 %if %{!?_without_docs:1}0
-(find $RPM_BUILD_ROOT%{_mandir} $RPM_BUILD_ROOT/Documentation -type f | grep -vE "p4import|archimport|svn|git-cvs|email|gitk|git-gui|git-citool" | sed -e s@^$RPM_BUILD_ROOT@@ -e 's/$/*/' ) >> bin-man-doc-files
+(find $RPM_BUILD_ROOT%{_mandir} $RPM_BUILD_ROOT/Documentation -type f | grep -vE "archimport|svn|git-cvs|email|gitk|git-gui|git-citool" | sed -e s@^$RPM_BUILD_ROOT@@ -e 's/$/*/' ) >> bin-man-doc-files
 %else
 rm -rf $RPM_BUILD_ROOT%{_mandir}
 %endif
@@ -145,13 +138,6 @@ rm -rf $RPM_BUILD_ROOT
 %{!?_without_docs: %{_mandir}/man1/git-archimport.1*}
 %{!?_without_docs: %doc Documentation/git-archimport.html }
 
-%files p4
-%defattr(-,root,root)
-%doc Documentation/git-p4import.txt
-%{_bindir}/git-p4import
-%{!?_without_docs: %{_mandir}/man1/git-p4import.1*}
-%{!?_without_docs: %doc Documentation/git-p4import.html }
-
 %files email
 %defattr(-,root,root)
 %doc Documentation/*email*.txt
@@ -187,6 +173,9 @@ rm -rf $RPM_BUILD_ROOT
 %{!?_without_docs: %doc Documentation/technical}
 
 %changelog
+* Sun Jul 15 2007 Sean Estabrooks <seanlkml@sympatico.ca>
+- Removed p4import.
+
 * Tue Jun 26 2007 Quy Tonthat <qtonthat@gmail.com>
 - Fixed problems looking for wrong manpages.
 
-- 
1.5.3.rc0.826.gc301a3

On Sun, 15 Jul 2007 15:48:04 -0400
Sean <seanlkml@sympatico.ca> wrote:

> Hi Junio,
> 
> Having caught up on some list emails, it appears that Git now has a
> much better option for importing from Perforce in the git-p4 front
> end to fast-import.
> 
> Is there anyone out there actually even using git-p4import?  It was
> written for a very specific case, by a git wannabe hacker who had
> never used Perforce before, and not intended for inclusion in Git
> proper...
> 
> My guess is that it could be removed outright without pain to anyone,
> but as a first step, it could be moved into contrib for 1.5.3.
> 
> Sean
> 
Sean· Jul 15, 2007, 19:52 UTC · re: Sean · lore

[PATCH 3/4] Demote git-p4import to contrib status.

Move git-p4import.py and Documentation/git-p4import.txt into a contrib/p4import directory. Add a README there directing people to contrib/fast-import/git-p4 as a better alternative.

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
---
 contrib/p4import/README                            |    1 +
 .../p4import/git-p4import.py                       |    0 
 .../p4import}/git-p4import.txt                     |    0 
 3 files changed, 1 insertions(+), 0 deletions(-)
 create mode 100644 contrib/p4import/README
 rename git-p4import.py => contrib/p4import/git-p4import.py (100%)
 rename {Documentation => contrib/p4import}/git-p4import.txt (100%)
Show changes to 3 files +1 −0

contrib/p4import/README, git-p4import.py, Documentation/git-p4import.txt

diff --git a/contrib/p4import/README b/contrib/p4import/README
new file mode 100644
index 0000000..b9892b6
--- /dev/null
+++ b/contrib/p4import/README
@@ -0,0 +1 @@
+Please see contrib/fast-import/git-p4 for a better Perforce importer.
diff --git a/git-p4import.py b/contrib/p4import/git-p4import.py
similarity index 100%
rename from git-p4import.py
rename to contrib/p4import/git-p4import.py
diff --git a/Documentation/git-p4import.txt b/contrib/p4import/git-p4import.txt
similarity index 100%
rename from Documentation/git-p4import.txt
rename to contrib/p4import/git-p4import.txt
-- 
1.5.3.rc0.826.gc301a3
Sean· Jul 15, 2007, 19:53 UTC · re: Sean · lore

[PATCH 4/4] Update 1.5.3 release notes: git-p4import has been deprecated

Signed-off-by: Sean Estabrooks <seanlkml@sympatico.ca>
---
 Documentation/RelNotes-1.5.3.txt |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
Show changes to Documentation/RelNotes-1.5.3.txt +5 −0
diff --git a/Documentation/RelNotes-1.5.3.txt b/Documentation/RelNotes-1.5.3.txt
index e2e809e..00b2b93 100644
--- a/Documentation/RelNotes-1.5.3.txt
+++ b/Documentation/RelNotes-1.5.3.txt
@@ -172,6 +172,11 @@ Updates since v1.5.2
     concatenate them into a single line and treat the result as
     "oneline".
 
+  - "git p4import" has been demoted to contrib status.  For
+    a superior option, checkout the git-p4 front end to
+    git-fast-import (also in contrib).  The man page and p4
+    rpm have been removed as well.
+
 * Builds
 
   - old-style function definitions (most notably, a function
-- 
1.5.3.rc0.826.gc301a3
Scott Lamb· Jul 15, 2007, 21:53 UTC · re: Sean · lore

Re: [PATCH 0/4] Move git-p4import into contrib directory.

Sean wrote:
Show 13 quoted lines
> Hi Junio,
> 
> Having caught up on some list emails, it appears that Git now has a
> much better option for importing from Perforce in the git-p4 front
> end to fast-import.
> 
> Is there anyone out there actually even using git-p4import?  It was
> written for a very specific case, by a git wannabe hacker who had
> never used Perforce before, and not intended for inclusion in Git
> proper...
> 
> My guess is that it could be removed outright without pain to anyone,
> but as a first step, it could be moved into contrib for 1.5.3.

I vote for removing it immediately. It has serious bugs - e.g., incremental mode is totally broken. I sent in a patch a month ago to fix this particular bug, which remains unapplied. Now that git-p4 has made it into git.git, I don't think anyone - myself included - is interested in creating or merging git-p4import.py fixes. Keeping git-p4import.py in this broken state just wastes the time of anyone unlucky enough to see it first.

Best regards, Scott

-- 
Scott Lamb <http://www.slamb.org/>
Junio C Hamano· Jul 15, 2007, 22:37 UTC · re: Sean · lore

Re: [PATCH 0/4] Move git-p4import into contrib directory.

Sean <seanlkml@sympatico.ca> writes:
Show 11 quoted lines
> Having caught up on some list emails, it appears that Git now has a
> much better option for importing from Perforce in the git-p4 front
> end to fast-import.
>
> Is there anyone out there actually even using git-p4import?  It was
> written for a very specific case, by a git wannabe hacker who had
> never used Perforce before, and not intended for inclusion in Git
> proper...
>
> My guess is that it could be removed outright without pain to anyone,
> but as a first step, it could be moved into contrib for 1.5.3.
Well, I am all for reducing the code base all the time ;-).

← back to recent threads