<pre style='margin:0'>
Rainer Müller (raimue) pushed a commit to branch vcs-fetch
in repository macports-base.

</pre>
<p><a href="https://github.com/macports/macports-base/commit/5e61df92c78b99e0d090e4043a208edb976552e9">https://github.com/macports/macports-base/commit/5e61df92c78b99e0d090e4043a208edb976552e9</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 5e61df92c78b99e0d090e4043a208edb976552e9
</span>Author: Rainer Müller <raimue@macports.org>
AuthorDate: Mon Mar 19 01:00:28 2018 +0100

<span style='display:block; white-space:pre;color:#404040;'>    fetch: Remove custom *.args for VCS fetch.types
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Additional options could interfere with tarball creation and defeat the
</span><span style='display:block; white-space:pre;color:#404040;'>    goal of reproducibility.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Furthermore, the non-standard fetch routines for VCS need to run
</span><span style='display:block; white-space:pre;color:#404040;'>    multiple commands now. It would not be clear if the passed arguments
</span><span style='display:block; white-space:pre;color:#404040;'>    should only be used for the checkout/export command or also for others.
</span><span style='display:block; white-space:pre;color:#404040;'>    If there is a need for special cases, we should add specific options to
</span><span style='display:block; white-space:pre;color:#404040;'>    the fetch.types in question to control additional aspects.
</span>---
 src/port1.0/portfetch.tcl | 38 +++++++++++++++-----------------------
 1 file changed, 15 insertions(+), 23 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portfetch.tcl b/src/port1.0/portfetch.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index ab4b2e8..7226f73 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portfetch.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portfetch.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -49,9 +49,9 @@ namespace eval portfetch {
</span> options master_sites patch_sites extract.suffix distfiles patchfiles use_bzip2 use_lzma use_xz use_zip use_7z use_lzip use_dmg dist_subdir \
     fetch.type fetch.user fetch.password fetch.use_epsv fetch.ignore_sslcert \
     master_sites.mirror_subdir patch_sites.mirror_subdir \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    bzr.url bzr.revision bzr.file bzr.file_prefix \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    cvs.module cvs.root cvs.password cvs.date cvs.tag cvs.file cvs.file_prefix \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    svn.cmd svn.url svn.revision svn.pre_args svn.args svn.post_args svn.file svn.file_prefix \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    bzr.cmd bzr.url bzr.revision bzr.file bzr.file_prefix \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    cvs.cmd cvs.root cvs.password cvs.module cvs.tag cvs.date cvs.file cvs.file_prefix \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    svn.cmd svn.url svn.revision svn.file svn.file_prefix \
</span>     git.cmd git.url git.branch git.file git.file_prefix git.fetch_submodules \
     hg.cmd hg.url hg.tag hg.file hg.file_prefix
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -61,34 +61,27 @@ default fetch.type standard
</span> 
 default bzr.cmd {[findBinary bzr $portutil::autoconf::bzr_path]}
 default bzr.revision {-1}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default bzr.pre_args {"--builtin --no-aliases"}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default bzr.args {"checkout --lightweight --verbose"}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default bzr.post_args {"-r ${bzr.revision}"}
</span> default bzr.file {${distname}.${fetch.type}.tar.bz2}
 default bzr.file_prefix {${distname}}
 
 default cvs.cmd {[findBinary cvs $portutil::autoconf::cvs_path]}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+default cvs.root ""
</span> default cvs.password ""
 default cvs.module {$distname}
 default cvs.tag ""
 default cvs.date ""
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default cvs.pre_args {"-z9 -f -d ${cvs.root}"}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default cvs.args ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default cvs.post_args {"${cvs.module}"}
</span> default cvs.file {${distname}.${fetch.type}.tar.bz2}
 default cvs.file_prefix {${distname}}
 
 default svn.cmd {[portfetch::find_svn_path]}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+default svn.url ""
</span> default svn.revision ""
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default svn.env {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default svn.pre_args {"--non-interactive"}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default svn.args ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-default svn.post_args ""
</span> default svn.file {${distname}.${fetch.type}.tar.bz2}
 default svn.file_prefix {${distname}}
 
 default git.cmd {[portfetch::find_git_path]}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default git.branch {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default git.url ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default git.branch ""
</span> default git.file {${distname}.${fetch.type}.tar.bz2}
 default git.file_prefix {${distname}}
 default git.fetch_submodules "yes"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -383,7 +376,7 @@ proc portfetch::mktar {tarfile dir mtime} {
</span> proc portfetch::bzrfetch {args} {
     global UI_PREFIX \
            env distpath worksrcpath \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-           bzr.cmd bzr.pre_args bzr.args bzr.post_args bzr.url bzr.file bzr.file_prefix \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           bzr.cmd bzr.url bzr.revision bzr.file bzr.file_prefix \
</span>            name distname fetch.type
 
     set generatedfile "${distpath}/${bzr.file}"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -416,7 +409,7 @@ proc portfetch::bzrfetch {args} {
</span>         set tmppath [mkdtemp "/tmp/macports.portfetch.${name}.XXXXXXXX"]
         set tmpxprt [file join ${tmppath} export]
         file mkdir ${tmpxprt}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set cmdstring "${bzr.cmd} ${bzr.pre_args} ${bzr.args} ${bzr.post_args} ${bzr.url} ${tmpxprt}/${bzr.file_prefix} 2>&1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cmdstring "${bzr.cmd} --builtin --no-aliases checkout --lightweight --verbose -r ${bzr.revision} ${bzr.url} ${tmpxprt}/${bzr.file_prefix} 2>&1"
</span>         if {[catch {system $cmdstring} result]} {
             delete ${tmppath}
             error [msgcat::mc "Bazaar checkout failed"]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -430,7 +423,7 @@ proc portfetch::bzrfetch {args} {
</span>         ui_info "$UI_PREFIX Generating tarball ${bzr.file}"
 
         # get timestamp of latest revision
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set cmdstring "${bzr.cmd} ${bzr.pre_args} version-info --format=custom --template=\"{date}\" ${tmpxprt}/${bzr.file_prefix}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cmdstring "${bzr.cmd} --builtin --no-aliases version-info --format=custom --template=\"{date}\" ${tmpxprt}/${bzr.file_prefix}"
</span>         ui_debug "exec: $cmdstring"
         if {[catch {exec -ignorestderr sh -c $cmdstring} result]} {
             delete ${tmppath}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -470,7 +463,7 @@ proc portfetch::bzrfetch {args} {
</span> proc portfetch::cvsfetch {args} {
     global UI_PREFIX \
            env distpath workpath worksrcpath \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-           cvs.cmd cvs.pre_args cvs.args cvs.post_args cvs.root cvs.tag cvs.date cvs.password cvs.file cvs.file_prefix \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           cvs.cmd cvs.root cvs.tag cvs.date cvs.password cvs.file cvs.file_prefix \
</span>            name distname fetch.type \
 
     set generatedfile "${distpath}/${cvs.file}"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -499,7 +492,7 @@ proc portfetch::cvsfetch {args} {
</span> 
     try -pass_signal {
         if {[regexp ^:pserver: ${cvs.root}]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            set cmdstring "echo ${cvs.password} | ${cvs.cmd} ${cvs.pre_args} login 2>&1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set cmdstring "echo ${cvs.password} | ${cvs.cmd} -z9 -f -d ${cvs.root} login 2>&1"
</span>             if {[catch {system -notty $cmdstring} result]} {
                 error [msgcat::mc "CVS login failed: $result"]
             }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -510,7 +503,7 @@ proc portfetch::cvsfetch {args} {
</span>         set tmppath [mkdtemp "/tmp/macports.portfetch.${name}.XXXXXXXX"]
         set tmpxprt [file join ${tmppath} export]
         file mkdir ${tmpxprt}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set cmdstring "${cvs.cmd} ${cvs.pre_args} export -d ${cvs.file_prefix} ${cvs.args} ${cvs.post_args} 2>&1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set cmdstring "${cvs.cmd} -z9 -f -d ${cvs.root} export -d ${cvs.file_prefix} ${cvs.args} ${cvs.module} 2>&1"
</span>         if {[catch {system -notty -W ${tmpxprt} $cmdstring} result]} {
             delete ${tmppath}
             error [msgcat::mc "CVS checkout failed"]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -601,12 +594,11 @@ proc portfetch::svnfetch {args} {
</span>     }
 
     set proxy_args [svn_proxy_args ${svn.url}]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set svn.args "${svn.args} ${proxy_args}"
</span> 
     ui_info "$UI_PREFIX Checking out ${fetch.type} repository"
     set tmppath [mkdtemp "/tmp/macports.portfetch.${name}.XXXXXXXX"]
     set tmpxprt [file join ${tmppath} export]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set cmdstring "${svn.cmd} export ${svn.args} ${svn.url} ${tmpxprt}/${svn.file_prefix} 2>&1"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set cmdstring "${svn.cmd} --non-interactive ${proxy_args} export ${svn.url} ${tmpxprt}/${svn.file_prefix} 2>&1"
</span>     if {[catch {system $cmdstring} result]} {
         delete ${tmppath}
         return -code error [msgcat::mc "Subversion checkout failed"]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -620,7 +612,7 @@ proc portfetch::svnfetch {args} {
</span>     ui_info "$UI_PREFIX Generating tarball ${svn.file}"
 
     # get timestamp of latest revision
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set cmdstring "${svn.cmd} info --show-item last-changed-date ${svn.args} ${proxy_args} ${svn.url}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set cmdstring "${svn.cmd} --non-interactive ${proxy_args} info --show-item last-changed-date ${svn.url}"
</span>     if {[catch {exec -ignorestderr sh -c $cmdstring} result]} {
         delete ${tmppath}
         return -code error [msgcat::mc "Subversion info failed"]
</pre><pre style='margin:0'>

</pre>