Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-08 Thread Jack Lloyd
On Fri, Mar 02, 2007 at 03:22:07PM -0800, Nathaniel Smith wrote:
> 
> Hmm, odd, I seem to be in the minority :-).  I have a directory under
> ~/src/ for each project, so I have e.g. ~/src/monotone/, and then it
> contains my db in the top level, monotone.mtn, and a bunch of checkout
> directories on different branches, and build directories for those
> checkouts.

FWIW, using this scheme would worry me because a single
misplaced/poorly thought out rm -rf would wipe out both my workspaces
(usually OK, or at least noncatastrophic) and my database (potentially
very very bad - I rely heavily on disconnected commits, so losing a
database could mean potentially losing weeks of work that haven't been
sync'ed elsewhere). Having them in a . directory in ~ means the only
way something like that would occur is if I also just took out my
entire home directory, at which point my monotone databases will
probably be down to 10 or 20 on the list of things I should be pissed
about.

-Jack


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-05 Thread Zbynek Winkler

On 3/5/07, Ben Walton <[EMAIL PROTECTED]> wrote:

I'd typically fall into the 'down with big brother' group with things
like this wanting to report data back home, however in the case
monotone, as everything is out in the open (don't trust the binary,
here's the source) I'm less concerned.  I also agree that having this
type of info is invaluable, at least during the rapid development
phase of the project...after 1.0 hits, this need would (hopefully)
decline as much planning went into the early stages (eg: now).

In that regard, I'd suggest two things.
1. A wrapper around mtn supplied in contrib that would do logging with
timestamps of commands run and any other environmental data deemed
important.  This data collection would be completely optional.  A
default install should always use the binary, forcing the user to
override this behaviour explicitly.  Data should be logged locally
only.
2. A second script that would submit the logged data should also be
supplied with contrib.  Again, it would be up to the user to cron data
submission or handle batching it off manually at their leisure.

As someone who attempts to avoid phone home scenarios, I'd feel
comfortable with the above and would likely contribute data.  The
things that make me more comfortable are that the process is voluntary
and I can see exactly what is logged and submitted.  I'd also have
control over frequency, etc.

Thoughts?


+1
I like it.

Zbynek

--
http://robotika.cz/


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-05 Thread Ben Walton

I'd typically fall into the 'down with big brother' group with things
like this wanting to report data back home, however in the case
monotone, as everything is out in the open (don't trust the binary,
here's the source) I'm less concerned.  I also agree that having this
type of info is invaluable, at least during the rapid development
phase of the project...after 1.0 hits, this need would (hopefully)
decline as much planning went into the early stages (eg: now).

In that regard, I'd suggest two things.
1. A wrapper around mtn supplied in contrib that would do logging with
timestamps of commands run and any other environmental data deemed
important.  This data collection would be completely optional.  A
default install should always use the binary, forcing the user to
override this behaviour explicitly.  Data should be logged locally
only.
2. A second script that would submit the logged data should also be
supplied with contrib.  Again, it would be up to the user to cron data
submission or handle batching it off manually at their leisure.

As someone who attempts to avoid phone home scenarios, I'd feel
comfortable with the above and would likely contribute data.  The
things that make me more comfortable are that the process is voluntary
and I can see exactly what is logged and submitted.  I'd also have
control over frequency, etc.

Thoughts?
-Ben

On 3/5/07, Nathaniel Smith <[EMAIL PROTECTED]> wrote:

On Sun, Mar 04, 2007 at 10:27:39PM +1100, William Uther wrote:
> I could modify clone so that it stored the database in " name>.db".  Or ".mtn-db".

The "official extension" (whatever that means) is ".mtn".

(Also, random tangential note, we've tried to train ourselves to
consistently use the word "workspace" instead of "working copy", at
least as far as documentation and such goes.)

>   - It shows that mtn has another common use case where you want to
> run a series of commands in a row.  (Maybe I need to implement the
> suggestion on the UI wiki page where monotone logs the commands used
> with a timestamp in ~/.monotone/ somewhere and gathers it in
> occasionally.  Then we could use that as empirical data for UI design.)

Check the archives -- this idea ran into problems because of concerns
about users over-reacting to the whiff of big brother phone home data
collection -- or even just mangled rumors thereof.  I still would love
to see this data somehow, but the naysayers have a point...

-- Nathaniel

--
Damn the Solar System.  Bad light; planets too distant; pestered with
comets; feeble contrivance; could make a better one myself.
  -- Lord Jeffrey


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel




--
---
Ben Walton <[EMAIL PROTECTED]>

Unanswered questions are far less dangerous than unquestioned answers.
- The Roadside Pulpit
---


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-04 Thread Nathaniel Smith
On Sun, Mar 04, 2007 at 10:27:39PM +1100, William Uther wrote:
> I could modify clone so that it stored the database in " name>.db".  Or ".mtn-db".

The "official extension" (whatever that means) is ".mtn".

(Also, random tangential note, we've tried to train ourselves to
consistently use the word "workspace" instead of "working copy", at
least as far as documentation and such goes.)

>   - It shows that mtn has another common use case where you want to  
> run a series of commands in a row.  (Maybe I need to implement the  
> suggestion on the UI wiki page where monotone logs the commands used  
> with a timestamp in ~/.monotone/ somewhere and gathers it in  
> occasionally.  Then we could use that as empirical data for UI design.)

Check the archives -- this idea ran into problems because of concerns
about users over-reacting to the whiff of big brother phone home data
collection -- or even just mangled rumors thereof.  I still would love
to see this data somehow, but the naysayers have a point...

-- Nathaniel

-- 
Damn the Solar System.  Bad light; planets too distant; pestered with
comets; feeble contrivance; could make a better one myself.
  -- Lord Jeffrey


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-04 Thread William Uther


On 03/03/2007, at 10:22 AM, Nathaniel Smith wrote:


Hmm, odd, I seem to be in the minority :-).  I have a directory under
~/src/ for each project, so I have e.g. ~/src/monotone/, and then it
contains my db in the top level, monotone.mtn, and a bunch of checkout
directories on different branches, and build directories for those
checkouts.  The nice thing about this approach is that it means all
the data for a single project is stuck together in one place; this is
sort of the model I have in the back of my head when I talk about how
I think the UI should look.


I could modify clone so that it stored the database in "name>.db".  Or ".mtn-db".


e.g.

mtn clone venge.net -b net.venge.monotone

would produce a directory "net.venge.monotone" and a database  
"net.venge.monotone.mtn-db".


mtn clone -b net.venge.monotone venge.net monotone-src

would produce a directory "monotone-src" and a database "monotone- 
src.mtn-db".


If the database already exists it could be re-used.  If a database is  
specified, it would be used - as it is now.


Thoughts:

  - This would mean that the database could be kept around if the  
checkout later fails.

  - This would make the existence of the database more explicit.
  - It generates a file that the user didn't explicitly ask for.
  - This would massively simplify the code (because the db creating  
and population wouldn't need to be inserted into the middle of  
checkout code - you're really just doing three normal mtn ops in a row.)
  - It shows that mtn has another common use case where you want to  
run a series of commands in a row.  (Maybe I need to implement the  
suggestion on the UI wiki page where monotone logs the commands used  
with a timestamp in ~/.monotone/ somewhere and gathers it in  
occasionally.  Then we could use that as empirical data for UI design.)


Be well,

Will  :-}



___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Nuno Lucas

On 3/2/07, Nathaniel Smith <[EMAIL PROTECTED]> wrote:

On Fri, Mar 02, 2007 at 03:32:43PM +0100, Lapo Luchini wrote:
> Small poll: what database file does other people use?

Hmm, odd, I seem to be in the minority :-).  I have a directory under
~/src/ for each project, so I have e.g. ~/src/monotone/, and then it
contains my db in the top level, monotone.mtn, and a bunch of checkout
directories on different branches, and build directories for those
checkouts.  The nice thing about this approach is that it means all
the data for a single project is stuck together in one place; this is
sort of the model I have in the back of my head when I talk about how
I think the UI should look.

So either I'm wrong or everyone else is :-).  I guess I'm curious what
people think...


That's what I do, except I also have one or two dbs on ~/var/ for more
general stuf (like versioning source of the 3rd party libraries I use,
just to easily check for code changes in case of problems).


Regards,
~Nuno Lucas


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Zack Weinberg

On 3/2/07, Nathaniel Smith <[EMAIL PROTECTED]> wrote:

Hmm, odd, I seem to be in the minority :-).  I have a directory under
~/src/ for each project, so I have e.g. ~/src/monotone/, and then it
contains my db in the top level, monotone.mtn, and a bunch of checkout
directories on different branches, and build directories for those
checkouts.  The nice thing about this approach is that it means all
the data for a single project is stuck together in one place; this is
sort of the model I have in the back of my head when I talk about how
I think the UI should look.


That's pretty much what I do to, except for ease of globbing I tend to
name the databases .something.

zw


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Nathaniel Smith
On Fri, Mar 02, 2007 at 03:32:43PM +0100, Lapo Luchini wrote:
> Certainly "funny" and counter-intuitive for mtn users (me included).
> OTOH that's what Hg does, AFAIK, and probably also Arch & friends?
> For CVS & SVN people just thinking that the "book keeping" directory
> contains "the real stuff" is plain crazy: they know only the server
> contains it.

Yes, but for hg (and bzr, darcs, bk, etc.) _every_ workspace has their
database equivalent in it; if you have two workspaces, you have two
databases -- so they avoid the hidden coupling between workspaces
that worried me in the first place.  It's a valid design, but it's not
mtn's design.

> IMHO a better default would be ~/.monotone/branch-name.mtn... or at the
> very least; that's what I usually use. ^_^
> (usually restricting to "first 2 component of branch name", e.g.
> net.venge.mtn for mtn, it.lapo.mtn for personal projects...)
> 
> Small poll: what database file does other people use?

Hmm, odd, I seem to be in the minority :-).  I have a directory under
~/src/ for each project, so I have e.g. ~/src/monotone/, and then it
contains my db in the top level, monotone.mtn, and a bunch of checkout
directories on different branches, and build directories for those
checkouts.  The nice thing about this approach is that it means all
the data for a single project is stuck together in one place; this is
sort of the model I have in the back of my head when I talk about how
I think the UI should look.

So either I'm wrong or everyone else is :-).  I guess I'm curious what
people think...

-- Nathaniel

-- 
In mathematics, it's not enough to read the words
you have to hear the music


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Chad Walstrom
On Fri, Mar 02, 2007 at 03:32:43PM +0100, Lapo Luchini wrote:
> Small poll: what database file does other people use?

$HOME/.monotone-databases/NAME.mtn

-- 
Chad Walstrom <[EMAIL PROTECTED]>   http://www.wookimus.net/
   assert(expired(knowledge)); /* core dump */


signature.asc
Description: Digital signature
___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Hugo Cornelis

On 3/2/07, Lapo Luchini <[EMAIL PROTECTED]> wrote:

Small poll: what database file does other people use?



~/MTN/

all branches in one database.


Hugo


--
   Hugo Cornelis Ph.D.

 Research Imaging Center
  University of Texas Health Science Center at San Antonio
   7703 Floyd Curl Drive
San Antonio, TX  78284-6240

   Phone: 210 567 8112
 Fax: 210 567 8152


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Jack Lloyd
On Fri, Mar 02, 2007 at 03:32:43PM +0100, Lapo Luchini wrote:

> Small poll: what database file does other people use?

~/.monotone/dbs/.mtn (shortnames, with all branches in a
single db)

I can't say I'm a huge fan of creating databases inside of _MTN, but
on the other hand the alternatives seem to be erroring out and
demanding a --db, or creating it somewhere automagically, and _MTN is
the only sane place that is fairly sure to work/make sense at all.

Maybe respect a setting of $ENV{MONOTONE_DB_DIRECTORY}?

-Jack


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Ben Walton

I use ~/monotone/.mtn
-Ben

On 3/2/07, Alex Queiroz <[EMAIL PROTECTED]> wrote:

Hallo,

On 3/2/07, Lapo Luchini <[EMAIL PROTECTED]> wrote:
>
> Small poll: what database file does other people use?
>

~/devel/dbs/.mtn
c:\projects\dbs\.mtn

--
-alex
http://www.ventonegro.org/


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel




--
---
Ben Walton <[EMAIL PROTECTED]>

Unanswered questions are far less dangerous than unquestioned answers.
- The Roadside Pulpit
---


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Alex Queiroz

Hallo,

On 3/2/07, Lapo Luchini <[EMAIL PROTECTED]> wrote:


Small poll: what database file does other people use?



~/devel/dbs/.mtn
c:\projects\dbs\.mtn

--
-alex
http://www.ventonegro.org/


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel


Re: [Monotone-devel] where to put a (default) database? [Was: clone cleanup failure on Windows]

2007-03-02 Thread Patrick Georgi

Lapo Luchini schrieb:

Small poll: what database file does other people use?
  
~/{data,Documents,work}/monotone-databases/{monotone,my own stuff,other 
stuff sorted approx. by project].mtn

Details depend on the pre-existing directory layout.


Patrick Georgi


___
Monotone-devel mailing list
Monotone-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/monotone-devel