Re: [fossil-users] [fossil-dev] Call for review / testing...
Thus said "Joe Mistachkin" on Thu, 03 Mar 2016 17:31:18 -0800: > The way trunk works is probably not the best model. I did not mean to imply that the way it works in trunk is the best model, and in fact, I admitted as much in a previous email. Having to take extra measures to avoid clutter was certainly a ``thing'' to do, but not necessarily onerous. I mean that having the clutter be created in [pwd] is not a bad option. I certainly agree that the way tempPath is generated in trunk is wrong. It should have been using at least [pwd] and the existing mechanism of checking for the existence of an open repository would have prevented testing therein. At any rate, as long as nobody is relying on the trunk mechanism of writing things in [pwd] for their testing of Fossil, this change simply means that now people will have to explicitly set FOSSIL_TEST_TEMP as yet another step to get testing working. E.g. mkdir /tmp/test && cd /tmp/test && test vs mkdir /tmp/test && cd /tmp/test && env FOSSIL_TEST_TEMP=$(pwd) test Thanks, Andy -- TAI64 timestamp: 400056d91b91 ___ 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] [fossil-dev] Call for review / testing...
Andy Bradford wrote: > > I think this will work, but I still wonder if it used to work this way > before (e.g. test results ended up in current working directory, not > elsewhere), why it should not continue to work that way? The reason why > I suggested [pwd] is because that is how it currently works (on trunk). > The way trunk works is probably not the best model. It requires the user running the test to actively take steps to avoid polluting/mangling the Fossil checkout while testing. > > Also, I look at it from a different perspective. Having a tool write > things in a magical location that is *not* my current working directory > is odd behavior. For example, if I type ``vi somefile.txt'', I know it > will produce that file in my current working directory. If I type > ``fossil --httptrace sync'' it it will produce HTTP request/reply things > in my current working directory, etc... Why would tester.tcl behave > differently? > Lots of tools on both Windows and Unix (including 'vi'?) write temporary files (and folders) to a temporary directory. With the new handling on the testerCleanup branch, these files and folders are written and cleaned up for each test file, in a "fail-safe" manner. -- 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] [fossil-dev] Call for review / testing...
Thus said "Joe Mistachkin" on Thu, 03 Mar 2016 13:58:54 -0800: > Slightly different solution checked-in. I'm not really a fan of > relying on [pwd] in tests. Instead, we can just use the system > temporary file location -OR- force the user to set FOSSIL_TEST_TEMP. I think this will work, but I still wonder if it used to work this way before (e.g. test results ended up in current working directory, not elsewhere), why it should not continue to work that way? The reason why I suggested [pwd] is because that is how it currently works (on trunk). Also, I look at it from a different perspective. Having a tool write things in a magical location that is *not* my current working directory is odd behavior. For example, if I type ``vi somefile.txt'', I know it will produce that file in my current working directory. If I type ``fossil --httptrace sync'' it it will produce HTTP request/reply things in my current working directory, etc... Why would tester.tcl behave differently? Thanks, Andy -- TAI64 timestamp: 400056d8e2a4 ___ 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] [fossil-dev] Call for review / testing...
Andy Bradford wrote: > > I think a safer default for tempPath is [pwd] and not where the > tester.tcl is found. The following change permits the testing to resume > for me: > Slightly different solution checked-in. I'm not really a fan of relying on [pwd] in tests. Instead, we can just use the system temporary file location -OR- force the user to set FOSSIL_TEST_TEMP. -- 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] [fossil-dev] Call for review / testing...
Thus said "Joe Mistachkin" on Thu, 03 Mar 2016 10:53:41 -0800: > My guess is that you had a pre-existing checkout recorded for that > directory. Please "fossil all ignore" that checkout manually and then > try again. The problem appears to be that tempPath has gained new meaning... Specifically, it is being used as a basis for generating tempHomePath: http://www.fossil-scm.org/index.html/artifact/ce83cff974bda2eaaf3eadca2e6c3444b11c3ef2?txt=1=622 But this will be found within an open checkout because tempPath originally was found within an open checkout. Indeed, I find my Fossil sources cluttered: $ ls -d home* repo* home_16827/ home_20886/ home_30419/ repo_19421/ repo_29743/ home_19421/ home_29743/ repo_16827/ repo_20886/ repo_30419/ I believe these instead should be created in the directory from which I am running the script, not where the script is found. So, while in previous versions of tester.tcl, the following was safe (perhaps unintentionally so) because it was never used to create repositories, now it is no longer safe because repositories will be created there: http://www.fossil-scm.org/index.html/artifact/ce83cff974bda2eaaf3eadca2e6c3444b11c3ef2?txt=1=605-612 I think a safer default for tempPath is [pwd] and not where the tester.tcl is found. The following change permits the testing to resume for me: Index: test/tester.tcl == --- test/tester.tcl +++ test/tester.tcl @@ -596,11 +596,11 @@ proc third_to_last_data_line {} { return [lindex [split [normalize_result] \n] end-2] } set tempPath [expr {[info exists env(TEMP)] ? \ -$env(TEMP) : [file dirname [info script]]}] +$env(TEMP) : [pwd]}] if {$tcl_platform(platform) eq "windows"} { set tempPath [string map [list \\ /] $tempPath] } Thoughts? Thanks, Andy -- TAI64 timestamp: 400056d8a0ae ___ 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] [fossil-dev] Call for review / testing...
Ross Berteig wrote: I imagine that defining TEMP is the same issue Andy has. Yeah, I was just looking into this on a Linux VM and found the same thing. If TEMP isn't set, the tester script should probably check if /tmp exists and just use that. ___ 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] [fossil-dev] Call for review / testing...
On 3/3/2016 11:34 AM, Andy Bradford wrote: I'll see if I can track it down later if there is no more progress elsewhere. Try setting TEMP somewhere sane, perhaps: $ export TEMP=/tmp $ tclsh That fixed it for me. -- Ross Berteig r...@cheshireeng.com Cheshire Engineering Corp. http://www.CheshireEng.com/ +1 626 303 1602 ___ 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] [fossil-dev] Call for review / testing...
On 3/3/2016 10:53 AM, Joe Mistachkin wrote: Ross Berteig wrote: My Ubuntu VM saw this exact message. I was running tester.tcl in a testing folder that is neither the build nor source tree. My guess is that you had a pre-existing checkout recorded for that directory. Please "fossil all ignore" on that checkout manually and then try again. $ fossil all ls /home/ross/fossiltest/f.fossil $ fossil all ls -c /home/ross/fossiltest/work $ pwd /tmp/ftst $ tclsh ~/fossiltest/work/test/tester.tcl ~/fossiltest/build/fossil ... already within an open tree rooted at /home/ross/fossiltest/work/ ... I looked more closely at test_setup, and especially near its line 17 as hinted in the stack backtrace. That is where the new repo is opened. I printed [pwd] just before that line, and found that it was /home/fossiltest/work/test/repo_11880/1457033017_1/amend.test which clearly *is* inside the open checkout. Why is $tempRepoPath in the wrong place? The problem is that I don't have TEMP set at all on Ubuntu. Setting TEMP before running the test harness makes a difference, and tester.tcl runs. Running against a vanilla build of fossil, it completes and finds only known bugs. Running against a build configured with all the bells and whistles, especially --json, it blew up. Looks like it couldn't "package require json" which likely means that I last ran tests on this VM before I built the JSON tests and I need to figure out how to get the json package into its installed Tcl. I imagine that defining TEMP is the same issue Andy has. -- Ross Berteig r...@cheshireeng.com Cheshire Engineering Corp. http://www.CheshireEng.com/ +1 626 303 1602 ___ 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] [fossil-dev] Call for review / testing...
Thus said "Joe Mistachkin" on Thu, 03 Mar 2016 10:53:06 -0800: > My guess is that you had a pre-existing checkout recorded for that > directory. Please "fossil all ignore" on that checkout manually and > then try again. $ pwd /tmp/test-fossil $ fossil all ls -c | grep test-fossil $ echo $? 1 $ I'll see if I can track it down later if there is no more progress elsewhere. Thanks, Andy -- TAI64 timestamp: 400056d891da ___ 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] [fossil-dev] Call for review / testing...
Andy Bradford wrote: > > $ tclsh $SRC/test/tester.tcl $FOSSIL > * amend ** > already within an open tree rooted at /tmp/fossil-test/ > My guess is that you had a pre-existing checkout recorded for that directory. Please "fossil all ignore" that checkout manually and then try again. -- 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] [fossil-dev] Call for review / testing...
Ross Berteig wrote: > > My Ubuntu VM saw this exact message. I was running tester.tcl in a > testing folder that is neither the build nor source tree. > My guess is that you had a pre-existing checkout recorded for that directory. Please "fossil all ignore" on that checkout manually and then try again. -- 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] [fossil-dev] Call for review / testing...
On 3/3/2016 7:19 AM, Andy Bradford wrote: $ tclsh $SRC/test/tester.tcl $FOSSIL * amend ** already within an open tree rooted at /tmp/fossil-test/ while executing My Ubuntu VM saw this exact message. I was running tester.tcl in a testing folder that is neither the build nor source tree. And repeating it launched from a build tree: $ tclsh ../work/test/tester.tcl ./fossil -quiet -verbose -prot already within an open tree rooted at /home/ross/fossiltest/work The same sequence run on Windows from MSYS bash ran the test suite to completion. I don't have time to look into why at the moment, but I will try to look at it later if someone hasn't already. I am most certainly not already ``within an open tree rooted at /tmp/fossil-test/'' as can be seen from the output above... Knowing it is not just me fumbling on my VM, I'll try poke at it a little today. But I'm hoping that between Andy's and my reports of failure, that someone much more versed in the subtleties of cross-platform Tcl will spot the mistake. -- Ross Berteig r...@cheshireeng.com Cheshire Engineering Corp. http://www.CheshireEng.com/ +1 626 303 1602 ___ 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] [fossil-dev] Call for review / testing...
Thus said "Joe Mistachkin" on Wed, 02 Mar 2016 10:47:39 -0800: > Please review and/or run tests against the test suite changes on the > "testerCleanup" branch. I get the following when I try to run the same commands that I normally do (which work fine on trunk): $ echo $SRC /tmp/fossil-test $ echo $FOSSIL /tmp/fossil-test/fossil $ pwd /tmp/test-fossil $ tclsh $SRC/test/tester.tcl $FOSSIL * amend ** already within an open tree rooted at /tmp/fossil-test/ while executing "exec $::fossilexe open $filename" (procedure "test_setup" line 17) invoked from within "test_setup" (file "/tmp/fossil-test/test/amend.test" line 52) invoked from within "source $testdir/$testfile.test" ("foreach" body line 3) invoked from within "foreach testfile $argv { protOut "* $testfile **" source $testdir/$testfile.test protOut "* End of $testfile: [llength $bad_test] er..." (file "/tmp/fossil-test/test/tester.tcl" line 628) I don't have time to look into why at the moment, but I will try to look at it later if someone hasn't already. I am most certainly not already ``within an open tree rooted at /tmp/fossil-test/'' as can be seen from the output above... Thanks, Andy -- TAI64 timestamp: 400056d85617 ___ 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] merge conflict: a doubt
On Thu, Mar 3, 2016 at 12:38 PM, Luca Ferrariwrote: > Could it be repo.cksum off? > No - that one controls whether or not the so-called "R-card" is generated and/or validated (the R-card is another level of integrity checking, but is expensive to calculate, so it is optional). -- - 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] merge conflict: a doubt
On Thu, Mar 3, 2016 at 12:11 PM, Stephan Bealwrote: > Please update if at all possible. 1.33 is almost a year old, and the past 12 > months have seen lots of activity: Yes, I'm updating. > My currently hypotheses is that you perhaps had an editor session active, > but unsaved, for one of the conflicting files. (i have done that once or > twice, and the result is similar to what you describe.) No, I'm sure about it. Could it be repo.cksum off? Luca ___ 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] merge conflict: a doubt
On Thu, Mar 3, 2016 at 8:17 AM, Luca Ferrariwrote: > My fossil version is 1.33 [bd97cb7306]. > ANy other idea? > Please update if at all possible. 1.33 is almost a year old, and the past 12 months have seen lots of activity: http://www.fossil-scm.org/index.html/reports?type=a=bymonth My currently hypotheses is that you perhaps had an editor session active, but unsaved, for one of the conflicting files. (i have done that once or twice, and the result is similar to what you describe.) -- - 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