logo       


Choosing A Webhost:
A web hosting service is a type of Internet hosting service that allows individuals and organizations to provide their own website accessible via the World Wide Web. Web hosts are companies that provide space on a server they own for use by their clients as well as providing Internet connectivity, typically in a data center. Web hosts can also provide data center space and connectivity to the Internet for servers they do not own to be located in their data center, called colocation. more...

Building a notifier for use on a server. Feature request.: msg#00110

Subject: Building a notifier for use on a server. Feature request.
Hi,

for a while now, I've been thinking about how to build an email logger
with diffs, like there are a few for CVS.  I find those loggers quite
practical to follow exactly what's going on in a project.  There is
the note_commit hook, sure, but it's quite useless for my purposes.  I
basically want to be able to create a mailing list where all commits,
not just my own, are logged.

What I'm thinking of doing (well, actually started already) is a
script that would keep a record of the revision last seen in each
branch, and periodically (say once an hour) check if anything has
changed in the database and create diff logs.  Sounds simple enough,
all that's needed is to use 'monotone lca' (which is undocumented,
btw) in case there are several heads in a branch, to make sure the
diff is made correctly.

The only trouble is that I really want to make specific diffs for
every revision.  That's quite difficult right now, as there's no easy
way to track the revisions between node A and node B, especially if
development has split in all kinds of ways along the way.  So I'm
looking for ideas on how to do that as easily as possible.  Ideas I
have now are either to use the output from 'monotone agraph', although
that seems like a PITA, or maybe read the output from 'monotone log',
since it now have ancestry records (which it didn't when I started
thinking about this).

Another solution, if that would be interesting for other purposes as
well, would be to have a monotone command to output all the possible
tracks between two nodes.  The output could for example look like this
(taken from the last few revisions of monotone):

 711f6e6c64fa7e67aff973665220d9517aca761e
 d5eebcab606a427789ca21ee18fc30fd3a02244c
 2defc1ee0be1bbb1fddc56318b56e7ea7d6ff857
 4957cebb0e908a374947abf937a6433a756912db
 78a170ba5a0f26f076103a924e1c29dd92d6aab8
 86d32c8a7766952af6bd891c2bbf5ae4cf5e3faa
 901538d78f25b8bc733e6c6ba9a8d0f9f6187fbe

 711f6e6c64fa7e67aff973665220d9517aca761e
 3a8517a8ada20142bd37d60e8596668cdf0404ac
 4957cebb0e908a374947abf937a6433a756912db
 78a170ba5a0f26f076103a924e1c29dd92d6aab8
 86d32c8a7766952af6bd891c2bbf5ae4cf5e3faa
 901538d78f25b8bc733e6c6ba9a8d0f9f6187fbe

 711f6e6c64fa7e67aff973665220d9517aca761e
 d5eebcab606a427789ca21ee18fc30fd3a02244c
 2defc1ee0be1bbb1fddc56318b56e7ea7d6ff857
 3108268348cc0d9c0b72c1de7e805d6fb25f23a0
 dfce62cc14113f0d05f376aa16d24f3f97d68566
 6fee8fa36ba4cc600ca7b7bf96f8efe192627827
 86d32c8a7766952af6bd891c2bbf5ae4cf5e3faa
 901538d78f25b8bc733e6c6ba9a8d0f9f6187fbe

 711f6e6c64fa7e67aff973665220d9517aca761e
 3a8517a8ada20142bd37d60e8596668cdf0404ac
 3108268348cc0d9c0b72c1de7e805d6fb25f23a0
 dfce62cc14113f0d05f376aa16d24f3f97d68566
 6fee8fa36ba4cc600ca7b7bf96f8efe192627827
 86d32c8a7766952af6bd891c2bbf5ae4cf5e3faa
 901538d78f25b8bc733e6c6ba9a8d0f9f6187fbe

Those are the four tracks that lead from
711f6e6c64fa7e67aff973665220d9517aca761e to
901538d78f25b8bc733e6c6ba9a8d0f9f6187fbe.  I've no idea if that means
we would need to borrow code from vcg or dot though...

Well, those are my ideas so far.  Comments?

Cheers,
Richard

-----
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.

-- 
Richard Levitte                         richard@xxxxxxxxxxx
                                        http://richard.levitte.org/

"When I became a man I put away childish things, including
 the fear of childishness and the desire to be very grown up."
                                                -- C.S. Lewis


Ruby Jobs
Java Jobs
Jobs in California
more...
what
job title, keywords
where
city, state, zip
jobs by job search
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Recently Viewed:
encryption.gpg....    ietf.rfc822/199...    freebsd.devel.i...    lang.haskell.li...    mail.squirrelma...    web.zope.plone....    yellowdog.gener...    text.xml.xalan....    recreation.phot...    kde.devel.educa...    hardware.bus.ca...    printing.ghosts...    voip.peering/20...    assembly/2006-0...    org.user-groups...    culture.interne...    network.i2p/200...    boot-loaders.ya...    xfree86.render/...    qnx.openqnx.dev...    jakarta.velocit...    user-groups.pal...   
Home | blog view | USPTO Patent Archive | advertise | OSDir is an inevitable website. super tiny logo

Free Magazines

Cisco News
Receive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business.
subscribe

Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field.
subscribe

The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business.
subscribe

Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company.
subscribe

Total Telecom Total Telecom is "The Economist of the communications industry".
subscribe