Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
Gosh, CVSMailer is not really part of CVSNT and does not belong here... But I will explain: For every client operation performed, say a commit on a module, cvs server will do its stuff partitioned into one operation per folder. Each such operation results in one call to the loginfo script and potentially to one email if this is what the script does. (The action that is requested is completely controlled by what is put into the script by the cvs administrator.) Now, when I started CVSMailer I soon got tired of this "spamming" so I investigated how I could consolidate it all into a single message per user operation. The way I do this is that I am finding out the process ID of the bottom CVS function on the server, then with that I obtain the process start time in nanoseconds and with the least 32 bits of that I create a temp folder on the server where I store the results that would otherwise have been sent immediately. Then after a configurable time CVSMailer collects all contents of this temp folder into a single email, sends it and deletes the folder. This scheme makes it possible to keep separate the building of emails for cvs operations that have been started from different users approximately at the same time so they overlap in the consolidation time. Each such will have a new PID and so a different temp folder. What you seem to want is a consolidation not only for all operations started by a single user call but really you seem to want to collect all such emails into a single "digested" email, or am I wrong? This may of course also be possible, but not using CVSMailer the way I designed it. In this case you must somehow arrange it such that CVSMailer creates the temp data as described above but then it does not send it out. Instead another process must be created (perhaps an AT schedule on the server) that regularly starts and collects the contents of all temp folders into emails that are then pasted together into a digest and sent out. This is not how I do it. You might try to send each message just to one mail account, then set up a POP3 program to retrieve all emails from that at 4 hour interval and forward them (pasted together of course) to the subscribers. Then you may use CVSMailer as the creator but you will get the digest done by your own program. For a time I was also investigating how to post the messages on a newsserver instead of mailing them out. But it turned out that a news server could not be set up on a Windows NT WorkStation, you needed a server class machine (why, Microsoft?). Since I did not at the time have a server I had to let that drop. Hope this explains things a bit... /Bo On Tue, 13 May 2003 23:32:44 +0200, "Iwan" <java at i-ware.net> wrote: >Hmmm, any other way to get around this? I would really like to have the >functionality of consolidating commits over quite some time, say 4 hours. >Such that people are either waiting for changes and updating themselves, or >are notified twice a day. > >Alternatively, maybe it is possible to subscribe per module to be notified? > >Iwan. > /Bo (Bo Berglund, developer in Sweden)