[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Sc-devel] How to make svnless Quarks work...




yes, looks good to me (to both of you)



On Sat, Feb 23, 2008 at 1:01 PM, ronald kuivila <rkuivila@xxxxxxxxxxxx> wrote:
Hi Dan,

Oops, I should have read all my email; I just posted about this as well.

Here are some comments:

1. Getting rid of the error in QuarksSVNRepository:*new does  indeed
fix the problem (tested on
lab machines w/o svn).

2. I don't really see why the File.exists test is in there at all;
QuarksSVNRepository:*initClass does the work and
tests all the standard places svn would be installed.  If it does not
find it, svnpath is set to nil. So, I would
suggest losing the extra test (the only time it would be relevant is
if you were to delete svn after starting up
SC).  For the warning, I think it is friendlier to just direct people
to tigris for a download.

3. flagging svn is a good idea, but I think we can do it based on
svnpath being nil.

I will make an implementation and patch it into 3.2 and try it on a
lab machine and report back later.

On Feb 23, 2008, at 6:04 AM, Dan Stowell wrote:

> Hi -
>
> Thinking about the issue of getting quarks to work nicely when the
> user has (a) no svn installed, and/or (b) a non-svn (i.e. downloaded)
> quarks repos. Some suggestions:
>
> 1.
> Change the check in QuarkSVNRepository.new, from
>
> if(svnpath.isNil || File.exists(svnpath).not,{
>     Error("Path to SVN executable is not correct.  Set
> \n\tQuarkSVNRepository.svnpath = \"/full/path/to/svn\"\n in your
> startup ").throw;
> });
>
> to
>
> if(svnpath.isNil or: {File.exists(svnpath).not},{
>     "No SVN executable found at %. Will not be able to synchronise
> with remote repository.".format(svnpath).warn;
>     svnposs = false;
> },{
>     svnposs = File.exists(local++"/.svn");
> });
>
> The reason for setting the flag (a new instance variable) will become
> clear in my next suggestion.
>
>
> 2.
> Add this extra to QuarkSVNRepository.svn (and also to .svnSync):
>
> if(svnposs.not){
>     "Cannot perform SVN action. Either could not find SVN executable,
> or the local repository is a regular download (not a svn
> checkout).".warn;
>     ^this;
> };
>
>
>
> I don't know if this will resolve everything but I *think* it would
> make downloaded-quarks able to show the gui, and give sensible
> feedback when users try to perform update commands etc. felix, jh, et
> al, any thoughts?
>
> Dan
>