[Vm-dev] build emergency with recent changes to updateSCCSVersions

Tobias Pape Das.Linux at gmx.de
Tue Jun 21 21:54:19 UTC 2016


On 21.06.2016, at 23:37, Eliot Miranda <eliot.miranda at gmail.com> wrote:

> Hi Tobias,
> 
> On Tue, Jun 21, 2016 at 1:37 PM, Tobias Pape <Das.Linux at gmx.de> wrote:
> 
> Hi Eliot,
> 
> On 21.06.2016, at 22:08, Eliot Miranda <eliot.miranda at gmail.com> wrote:
> 
> > Hi All,
> >
> >     recent changes, I *think* to updateSCCSVersions, have broken platforms/Cross/vm/sqSCCSVersion.h:
> >
> > static char SvnRawRepositoryURL[] = "$URL: http://github.com/OpenSmalltalk/vm
> >     SetWindowLongPtr_64bit_compatibility new (next fetch will store in remotes/origin)
> >     tim/deployment-fixes                 new (next fetch will store in remotes/origin) $";
> 
> This is due to the line you added in .git_filters/RevDateURL.smudge:
> 
> 
>  if (!$url) { $url=`git remote show origin | grep -i fetch | sed 's/^.*URL: //' 2>/dev/null` }
> 
> Problem being, the two lines match 'fetch' (next _fetch_ will store in ...), so you get more than the actual URL.
> 
> However, this has been fixed already, the current version from 24198c6
> (see https://github.com/OpenSmalltalk/vm/commits/Cog/.git_filters/RevDateURL.smudge) has changed
> and does not suffer from the grep. Relevant lines:
> 
> 
> if ((defined $ENV{'TRAVIS'}) || (defined $ENV{'APPVEYOR'})) {
>     $url=`git config --get remote.origin.url`;
> } else {
>     $url=`whoami` . '@' . `hostname` . ':' . `PWD=\$(pwd) echo \${PWD##\$HOME/}`;
> }
> 
> Thanks.  So it was me :-(.  Good to know.
>  
> Is your repo up to date?
> 
> How do I know?  This "fetch and then diff" method is IMO broken.  I simply want to know whether there are incoming commits /before/ I do a fetch.

Fetch means 'get what is on the server to me but no more'

I have a personal alias to see incoming changes:

	git config --global alias.incoming '!git remote update -p; git log ..@{u}'

I can then do `git incoming` and it fetches the changes but then only shows
the changes. So, after a fetch you can do

	git log ..@{u}

which means 'please show me all changes from here to what upstream has'

HTH
best
	-Tobias



> 
>  
> 
> 
> Best regards
>         -Tobias
> 
> >
> > First, multi-liner string constants must be terminated with a backslash to compile.  So at the very least we'd need
> >
> > static char SvnRawRepositoryURL[] = "$URL: http://github.com/OpenSmalltalk/vm\
> >     SetWindowLongPtr_64bit_compatibility new (next fetch will store in remotes/origin)\
> >     tim/deployment-fixes                 new (next fetch will store in remotes/origin) $";
> >
> > But second, multi-line output doesn't make sense here.  We need something that fits on a single line.  Who is going to fix this?  I have a production build which is broken because of this.
> >
> > _,,,^..^,,,_
> > best, Eliot





More information about the Vm-dev mailing list