Re: [fossil-users] TH_ERROR Can't find a usable init.tcl

2014-09-01 Thread Jan Nijtmans
2014-09-01 7:58 GMT+02:00 Petr Ferdus petr...@centrum.cz:
 I try to compile fossil with FOSSIL_ENABLE_TCL support. Build environment is 
 mingw/msys on XP sp3.
 Build is based on fossil 75dcdd0bdb. If I build my version without TCL 
 support it works nicely.

 When I turn TCL related switches on (FOSSIL_ENABLE_TH1_HOOKS=1 
 FOSSIL_ENABLE_TCL=1; FOSSIL_TCL_SOURCE = 1 is defined)
 it builds fossil.exe but TCL support seems to be somewhat broken. It reports 
 error TH_ERROR: Tcl initialization error: Can't find a usable init.tcl ...
 on fossil version -v command, please see details bellow.

Whenever I build fossil with Tcl support, I always
use FOSSIL_ENABLE_TCL=1, FOSSIL_ENABLE_TCL_STUBS = 1,
FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1.

This is the easiest way to include Tcl support
in fossil. Then you don't need the Tcl sources
to be available, just install the (ActiveState)
build of Tcl (either 8.5.x or 8.6.x) and you are done.

Regards,
Jan Nijtmans
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] Receiving old versions

2014-09-01 Thread Eduardo Morras
On Sat, 30 Aug 2014 15:03:32 -0500
Andy Goth andrew.m.g...@gmail.com wrote:

 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
 On 8/30/2014 2:40 PM, Andy Goth wrote:
  Now I have been given a few older versions.  What's the best way to
  go about putting them into the repository?
  
  I know I can check them in with --allow-older and the
  --date-override options, though this will produce a very funky
  timeline display.  Is there a better way?
 
 I cloned my repository and did the above as a test just to see how bad
 it comes out.  Well, it's pretty bad.  Not only is the timeline
 bizarre, the default diffs are unhelpful too.  Diffs are typically
 against the predecessor version, but in this situation, Fossil's
 concept of predecessor doesn't match the naïve user expectation.
 Surprise notwithstanding, this is correct behavior in face of the
 time paradox.
 
 I think my best course of action is to not try to put the old code
 into the repository unless I am given a more complete archive of
 historical versions, at which time it might be worthwhile to rebuild
 the repository with everything put in the right sequence.  Of course
 this blows away all the artifact IDs, but that would be acceptable at
 this stage.
 
 Let's say I do this, using the oldest known version as the initial
 commit, and everything seems good for a while.  But then someone finds
 an in-between version thought to have been lost.  I would update to
 its predecessor version then check it in with the date override,
 either allowing the fork or putting it on an branch.  The timeline
 would look mostly good, but only because the predecessor version
 already existed. Diffs surrounding the newfound would have to be done
 with explicitly selected from and to versions, but that's a small
 price to pay for not having to rebuild the repository and trash the
 artifact IDs.
 
 Then a version older than the previously oldest known version is
 found. Now we're in trouble again.
 
 Maybe I could have prevented that last problem by making the initial
 empty check-in be dated before the project was known to have started,
 so there would never be anything older than it.
 
 Thoughts?

Can you try to do it backwards? (don't know if backwards is the rigth word). 
Create a new repository, import the older source files, pull from your 
repository. Don't sync or your repository will become fluffed.

 
 - -- 
 Andy Goth | andrew.m.goth/at/gmail/dot/com
 -BEGIN PGP SIGNATURE-
 Version: GnuPG v2.0.22 (MingW32)


---   ---
Eduardo Morras emorr...@yahoo.es
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] TH_ERROR Can't find a usable init.tcl

2014-09-01 Thread Petr Ferdus
Jan Nijtmans jan.nijtm...@gmail.com
Whenever I build fossil with Tcl support, I always
use FOSSIL_ENABLE_TCL=1, FOSSIL_ENABLE_TCL_STUBS = 1,
FOSSIL_ENABLE_TCL_PRIVATE_STUBS = 1.

Hello Jan,

thank you for the tip. 
I would much prefer static solution, which would be more in fossil way of one 
single executable without external dependencies (single stand-alone executable 
that contains everything).
Is it with FOSSIL_TCL_SOURCE even possible?

Thanks

Peter
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] TH_ERROR Can't find a usable init.tcl

2014-09-01 Thread Petr Ferdus
Datum: 01.09.2014 13:10 Od: Jan Nijtmans jan.nijtm...@gmail.com
No, FOSSIL_TCL_SOURCE means that fossil
expects Tcl to be installed in the indicated directory.
libtcl8.x.a will be included statically inside fossil,
but the other files (such as init.tcl) will not be
part of fossil. To me it is not usefull at all to
include the static Tcl library in fossil but not
the Tcl start-up code, except when running
fossil inside a chroot-jail (which cannot
be done on Windows anyway)

Does it mean, that to build chrooted version of fossil one must omit 
FOSSIL_TCL_SOURCE
(that would be my misundestandin)?
With unix build, will chrooted version containg TCL start-up code? (I can't 
test it)
Should not the same happen for windows build? 
I would like to try it later this evening. 

Thanks
Peter
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


[fossil-users] how to use git to lose data

2014-09-01 Thread Stephan Beal
Okay, more git bashing...

After losing 3 hours' work today from something as simple as git stash
save (where git stashed 3000+ untracked/generated files, despite the docs
saying it doesn't do that), then not being able to do stash apply
(because file already exists... for 3000+ files), and having to construct
the work from screenshots of the diff i was able to grab before deleting
and checking out again (as one so often has to do with git), i went
searching for data loss in git and stumbled across this page near the top
of the results:

http://www.cs.cmu.edu/~davide/howto/git_lose.html

What really makes that worth reading is the list of suggestions at the end
of the page. They start out with this little gem:


   -

   Internalize the concept that git is *designed* to forget things. If you
   haven't seen something reach another repository, maybe it didn't. Heck,
   even if you *did* see it go somewhere else, maybe it fell out of the
   historical record there and then got garbage-collected.


It makes me sick to no end that people accept that so readily, and then go
back for a second helping.

It occurred to me today that in nearly 31 years of using a computer i have,
in total, lost more data to git (while following the instructions!!!) than
any other single piece of software. Also concluded is that git is the only
SCM out there which makes SCM difficult for the simple stuff. Even RCS is
simpler to use. Sure CVS has limits, but respect those limits and it works
just fine. Never lost a line of code in CVS.

...


-- 
- stephan beal
http://wanderinghorse.net/home/stephan/
http://gplus.to/sgbeal
Freedom is sloppy. But since tyranny's the only guaranteed byproduct of
those who insist on a perfect world, freedom will have to do. -- Bigby Wolf
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] Receiving old versions

2014-09-01 Thread Andy Goth
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 9/1/2014 3:20 AM, Eduardo Morras wrote:
 Can you try to do it backwards? (don't know if backwards is the 
 rigth word). Create a new repository, import the older source
 files, pull from your repository. Don't sync or your repository
 will become fluffed.

No, as Richard pointed out, there is no way to change the predecessor of
existing manifests.  Predecessor artifact IDs are stored directly in the
manifest, so they contribute to the manifest's artifact ID, which in
turn is the predecessor artifact ID of subsequent manifests.

- -- 
Andy Goth | andrew.m.goth/at/gmail/dot/com
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.0.22 (MingW32)

iQEcBAEBAgAGBQJUBKN2AAoJELtYwrrr47Y4xMUIALeja1VV97mJV42eiugtfR9U
ZFroPRgZ+Fvu06/UCrAeC+0vJUD49UwEO3k9leOHXXbf1ZZb9ZvLYpDHoevwGa1Z
ALnCzq1cQF1+jRrK+UH+xxFEbub32VAphRICt4W3F+PJWiyyZRFHg6RXSocL1B+R
s2l3MJaR5o7QscPck3jCUi6FpVUOq+lMA1HWJs74a+A5C/vScfzE48eem00HFn6F
a2DkCFYS7gHZt4SOgPVcKo41r0xuaMthX0Im4K2Q5KUOL0Nfg8A81HVOXbDRiD5G
Mi/aJNKH84yx/g4gGz+LzJaTOan70ffW2pxM8IIqfG+E/s791FGta0WtiDV5FZU=
=5dIR
-END PGP SIGNATURE-
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] TH_ERROR Can't find a usable init.tcl

2014-09-01 Thread Joe Mistachkin

Petr Ferdus wrote:

 Does it mean, that to build chrooted version of fossil one must
 omit FOSSIL_TCL_SOURCE (that would be my misundestandin)?
 With unix build, will chrooted version containg TCL start-up code?
 (I can't test it)
 Should not the same happen for windows build? 
 I would like to try it later this evening.  
 

No.  There are three primary concerns in order to build Fossil with Tcl
integration enabled and make use of it at runtime:

1. Locating the necessary Tcl header file(s) at compile-time.

Currently, this is handled several different ways, depending on the
platform.  On Unix-like systems, it is handled via searching for an
installed Tcl and using those header files.  This behavior can be
overridden via the configure script; however, I have not needed to
do this for my non-Windows uses of Fossil.

2. Locating the necessary Tcl library file(s) at compile-time.

This is handled largely the same as #1.  The configure script (really
autosetup) should be capable of automatically locating the necessary
library on most Unix-like systems.

3. Locating the necessary Tcl library at runtime (which must be
   installed in order to locate its init.tcl, more on this
   later).

When Fossil is compiled with stubs-enabled, it will attempt to
dynamically load the Tcl library (i.e. via dlopen) and then call
the necessary exported functions to get everything going; otherwise,
it will just use the exported functions it was linked against.
Either way, the instance of Tcl being used needs to be able to locate
its script library (e.g. init.tcl).  Typically, this means it must
be installed via make install or similar mechanism so that all
the files are located in the right places.

Here is the sequence of commands that I use to compile and install
Fossil on Unix-like systems with a locally installed Tcl enabled:

##
# PHASE 1: Download and install Tcl 8.6.1.
##

mv tcl tcl.old
wget http://prdownloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
tar -zxvf tcl8.6.1-src.tar.gz
cd tcl8.6.1/unix
./configure --prefix=/home/yourusername/tcl
make all
make install

##
# PHASE 2: Download and install TclLib 1.15 (optional).
##

wget http://prdownloads.sourceforge.net/tcllib/tcllib-1.15.tar.gz
tar -zxvf tcllib-1.15.tar.gz
cd tcllib-1.15
export LD_LIBRARY_PATH=/home/yourusername/tcl/lib
/home/yourusername/tcl/bin/tclsh8.6 installer.tcl

##
# PHASE 3: Download and install Fossil.
##

wget --no-check-certificate --output-document=Fossil-trunk.tar.gz
https://www.fossil-scm.org/index.html/tarball/Fossil-trunk.tar.gz?name=trunk
tar -zxvf Fossil-trunk.tar.gz
cd trunk
./configure --with-zlib=/home/yourusername/trunk/compat/zlib
--with-openssl=auto --with-tcl=/home/yourusername/tcl --with-th1-hooks=1
--json=1
make
cp fossil /home/yourusername/bin/fossil

##
# PHASE 4: Setup integration with web server (Apache).
##

In the .htaccess file, you'll most likely need the following two lines:

SetEnv LD_LIBRARY_PATH /home/yourusername/tcl/lib
SetEnv HOME /home/yourusername

--
Joe Mistachkin

___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] TH_ERROR Can't find a usable init.tcl

2014-09-01 Thread Petr Ferdus
Joe Mistachkin sql...@mistachkin.com
No.  There are three primary concerns in order to build Fossil with Tcl
integration enabled and make use of it at runtime:

1. Locating the necessary Tcl header file(s) at compile-time.

Currently, this is handled several different ways, depending on the
platform.  On Unix-like systems, it is handled via searching for an
installed Tcl and using those header files.  This behavior can be
overridden via the configure script; however, I have not needed to
do this for my non-Windows uses of Fossil.

2. Locating the necessary Tcl library file(s) at compile-time.

This is handled largely the same as #1.  The configure script (really
autosetup) should be capable of automatically locating the necessary
library on most Unix-like systems.

3. Locating the necessary Tcl library at runtime (which must be
   installed in order to locate its init.tcl, more on this
   later).

When Fossil is compiled with stubs-enabled, it will attempt to
dynamically load the Tcl library (i.e. via dlopen) and then call
the necessary exported functions to get everything going; otherwise,
it will just use the exported functions it was linked against.
Either way, the instance of Tcl being used needs to be able to locate
its script library (e.g. init.tcl).  Typically, this means it must
be installed via make install or similar mechanism so that all
the files are located in the right places.

Here is the sequence of commands that I use to compile and install
Fossil on Unix-like systems with a locally installed Tcl enabled:

##
# PHASE 1: Download and install Tcl 8.6.1.
##

mv tcl tcl.old
wget http://prdownloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
tar -zxvf tcl8.6.1-src.tar.gz
cd tcl8.6.1/unix
./configure --prefix=/home/yourusername/tcl
make all
make install

##
# PHASE 2: Download and install TclLib 1.15 (optional).
##

wget http://prdownloads.sourceforge.net/tcllib/tcllib-1.15.tar.gz
tar -zxvf tcllib-1.15.tar.gz
cd tcllib-1.15
export LD_LIBRARY_PATH=/home/yourusername/tcl/lib
/home/yourusername/tcl/bin/tclsh8.6 installer.tcl

##
# PHASE 3: Download and install Fossil.
##

wget --no-check-certificate --output-document=Fossil-trunk.tar.gz
https://www.fossil-scm.org/index.html/tarball/Fossil-trunk.tar.gz?name=trunk
tar -zxvf Fossil-trunk.tar.gz
cd trunk
./configure --with-zlib=/home/yourusername/trunk/compat/zlib
--with-openssl=auto --with-tcl=/home/yourusername/tcl --with-th1-hooks=1
--json=1
make
cp fossil /home/yourusername/bin/fossil

##
# PHASE 4: Setup integration with web server (Apache).
##

In the .htaccess file, you'll most likely need the following two lines:

SetEnv LD_LIBRARY_PATH /home/yourusername/tcl/lib
SetEnv HOME /home/yourusername


Thank you Joe for clarifications and your Unix-like system setup recipe. I'll 
try to absorb it and use it.
Meanwhile it seem that my simple idea of  fossil on windows with embedded tcl 
as a single exe
is not that easy as it seems. I have found notes from drh dated 2005 [1]. Still 
I thing it would be 
hugely useful as personal portable fossil with scripting included.

Thank again

Peter

[1] - Init Scripts In The DLL
http://wiki.tcl.tk/4156
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] TH_ERROR Can't find a usable init.tcl

2014-09-01 Thread Joe Mistachkin

Petr Ferdus wrote:

 Thank you Joe for clarifications and your Unix-like system setup recipe.
 I'll try to absorb it and use it.
 Meanwhile it seem that my simple idea of  fossil on windows with embedded
 tcl as a single exe
 is not that easy as it seems. I have found notes from drh dated 2005 [1].
 Still I thing it would be 
 hugely useful as personal portable fossil with scripting included. 
 

At a bare minimum, two files would be needed on Windows: The Fossil EXE
itself
and a suitable Tcl library.  Since the Tcl library would need to include an
embedded script library, it will most likely need to be a TclKit DLL, e.g.
one of Roy Keene's daily builds:

http://www.rkeene.org/devel/kitcreator/kitbuild/nightly/

In order to use one of these TclKit DLLs, you would want to rename it to
tcl8X.dll where X is 4, 5, or 6.  Then, place it into the same directory
as
the Fossil EXE.

--
Joe Mistachkin

___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] how to use git to lose data

2014-09-01 Thread Scott Robison
On Mon, Sep 1, 2014 at 9:29 AM, Stephan Beal sgb...@googlemail.com wrote:

 Okay, more git bashing...

 {snipped stuff went here}

 It occurred to me today that in nearly 31 years of using a computer i
have, in total, lost more data to git (while following the instructions!!!)
than any other single piece of software. Also concluded is that git is the
only SCM out there which makes SCM difficult for the simple stuff. Even RCS
is simpler to use. Sure CVS has limits, but respect those limits and it
works just fine. Never lost a line of code in CVS.


Interesting. I think I've mentioned my employer is in the midst of
converting from an svn backed model to a git based model, though slowly on
a subproject by subproject basis. I've shared this with the
git-master-chief person at work and followed it up with the following
questions / observations:

 Based on reading {Stephan's message}, what do you agree or disagree with?
 It seems to me (after reading this and thinking about version control
systems in a slightly new way for the first time today), git is focused
less on securely keeping track of source code and far more on providing a
toolbox of ways to reorganize code to simplify (I use that term loosely)
social interactions between developers / users of git (aka collaboration).
It's not that it can't keep track of source code, but that it considers the
social aspects / reorganization tools to be more important, while at the
same time being quite terse / obtuse in the documentation / usage area.
 Is that an unfair assessment on my part? I still readily agree that I'm a
git newbie, and even a dvcs neophyte, and the reasons I use fossil have
little to do with its distributed nature (though I'm using it more often
that way as time goes by). Also that for certain project types where large
/ deep hierarchies of collaborators are at work, fossil is probably not an
ideal solution. It certainly wouldn't work in the same way git is used by
the linux kernel team.

I'll be interested to hear back from him what he thinks.

--
Scott Robison
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users