Menu

Log error: "A recipient must be specified."

Help
E. Smith
2009-09-07
2013-05-01
  • E. Smith

    E. Smith - 2009-09-07

    I'm setting up SubversionNotify 2.0.10 for the first time. I can't get it to send me an email. For my example commit, I gave TortoiseSVN a boug but sufficient log message of just the letter ‘d’. The commit goes fine but I don’t get an email. I’ll provide my .log and .cfg files below. Any suggestions are appreciated. I don't know why it doesn't find and use the email address (eirens@redacteddomain.com) that I've specified in the .cfg file.

    My SubversionNotify.log says:

    [9/7/2009 3:08:39 PM]        *************************
    [9/7/2009 3:08:39 PM]        Starting process for Revision 15-s [c:\shared\svnrepo_junk]
    [9/7/2009 3:08:39 PM]        Configuration file deserialized. Logging level set to: DEBUG
    [9/7/2009 3:08:39 PM]        SubversionNotify, Version=2.0.10.0, Culture=neutral, PublicKeyToken=null
    [9/7/2009 3:08:39 PM]        Bugzilla :: Beginning Deserialization
    [9/7/2009 3:08:39 PM]        Bugzilla :: Successfully loaded BugzillaConfig object
    [9/7/2009 3:08:39 PM]        ItemTrackerRegistration: No matching element at /svn:subversionNotifyConfig/svn:RepoPathConfig[@ControlledPaths='/testing']/svn:ItemTrackers/svn:BugzillaConfig
    [9/7/2009 3:08:40 PM]        Processing type: pre-commit
    [9/7/2009 3:08:40 PM]        Commit Paths: /testing/jnkjnk/
    [9/7/2009 3:08:40 PM]        Controlled Paths List:  /
    [9/7/2009 3:08:40 PM]        Controlled Paths List:  /testing
    [9/7/2009 3:08:40 PM]        Found Applicable RepoConfig: '/testing' with /testing/jnkjnk/
    [9/7/2009 3:08:40 PM]        SetRepoPathPrecidence :: Incomming configs = 1 ; Returning configs = 1
    [9/7/2009 3:08:40 PM]        SelectApplicableReproConfigs :: Returning 1 RepoPathConfig objects
    [9/7/2009 3:08:40 PM]        LockedPaths :: No check elements found.
    [9/7/2009 3:08:40 PM]        PreCommitProcessing :: Generating SvnLook directory file listing
    [9/7/2009 3:08:40 PM]        PreCommitProcessing :: Checking for case-insensitive file match
    [9/7/2009 3:08:40 PM]        Passed Folder Name Exclusion test.
    [9/7/2009 3:08:40 PM]        Passed File Type Exclusion test.
    [9/7/2009 3:08:40 PM]        Checking for FileTypeTag Requirements complete. Not Required.
    [9/7/2009 3:08:40 PM]        Checking for LogMessageCheck Requirements. Configs to check: 1
    [9/7/2009 3:08:40 PM]        LogMessageCheck checking log message: d

    [9/7/2009 3:08:40 PM]        LogMessageCheck file list: U   testing/jnkjnk/jnk.rep
    [9/7/2009 3:08:40 PM]        LogMessageCheck Commit Regex Found: d
    [9/7/2009 3:08:40 PM]        GleenItemNumbers :: Returning 0 ItemTrackingSet objects
    [9/7/2009 3:08:40 PM]        All Pre-commit checks passed.
    [9/7/2009 3:08:40 PM]        *************************
    [9/7/2009 3:08:40 PM]        Starting process for Revision 16 [c:\shared\svnrepo_junk]
    [9/7/2009 3:08:40 PM]        Configuration file deserialized. Logging level set to: DEBUG
    [9/7/2009 3:08:40 PM]        SubversionNotify, Version=2.0.10.0, Culture=neutral, PublicKeyToken=null
    [9/7/2009 3:08:40 PM]        Bugzilla :: Beginning Deserialization
    [9/7/2009 3:08:40 PM]        Bugzilla :: Successfully loaded BugzillaConfig object
    [9/7/2009 3:08:40 PM]        ItemTrackerRegistration: No matching element at /svn:subversionNotifyConfig/svn:RepoPathConfig[@ControlledPaths='/testing']/svn:ItemTrackers/svn:BugzillaConfig
    [9/7/2009 3:08:40 PM]        Processing type: post-commit
    [9/7/2009 3:08:40 PM]        SelectApplicableReproConfigs :: ChangedFiles list: U   testing/jnkjnk/jnk.rep
    [9/7/2009 3:08:40 PM]        SelectApplicableReproConfigs :: Modified file name: testing/jnkjnk/jnk.rep
    [9/7/2009 3:08:40 PM]        Controlled Paths List:  /
    [9/7/2009 3:08:40 PM]        Controlled Paths List:  /testing
    [9/7/2009 3:08:40 PM]        Found Applicable RepoConfig: '/testing' with /testing/jnkjnk/jnk.rep
    [9/7/2009 3:08:40 PM]        SetRepoPathPrecidence :: Incomming configs = 1 ; Returning configs = 1
    [9/7/2009 3:08:40 PM]        SelectApplicableReproConfigs :: Returning 1 RepoPathConfig objects
    [9/7/2009 3:08:40 PM]        GleenItemNumbers :: Returning 0 ItemTrackingSet objects
    [9/7/2009 3:08:40 PM]        InfoHeader :: Raw Header message -
    eirens
    2009-09-07 15:08:40 -0400 (Mon, 07 Sep 2009)
    1
    d
    [9/7/2009 3:08:40 PM]        No ADGlobalCatalog value specified. Unable to look-up user eMail address and name for eirens. Using default address: svnnotify@redacteddomain.com
    [9/7/2009 3:08:40 PM]        Controlled Paths List:  /
    [9/7/2009 3:08:40 PM]        Controlled Paths List:  /testing
    [9/7/2009 3:08:40 PM]        Found Applicable RepoConfig: '/testing' with /testing/jnkjnk/jnk.rep
    [9/7/2009 3:08:40 PM]        SetRepoPathPrecidence :: Incomming configs = 1 ; Returning configs = 1
    [9/7/2009 3:08:40 PM]        SelectApplicableReproConfigs :: Returning 1 RepoPathConfig objects
    [9/7/2009 3:08:41 PM]        HTML file written to c:\subversionnotify\log\Revision 16.html
    [9/7/2009 3:08:41 PM]        HTML Message Generated
    [9/7/2009 3:08:41 PM]        Generating e-mail message
    [9/7/2009 3:08:41 PM]        EMail Addresses found:
    [9/7/2009 3:08:41 PM]        No e-mail groups found
    [9/7/2009 3:08:41 PM]        EMail Addresses captured:
    [9/7/2009 3:08:41 PM]        Unable to send mail:
    System.InvalidOperationException: A recipient must be specified.
       at System.Net.Mail.SmtpClient.Send(MailMessage message)
       at SubversionNotify.Program.PostCommitProcessing(HTMLProcessor proc, subversionNotifyConfig cfg, String logFileName, String baseFolder)
    [9/7/2009 3:08:41 PM]        Finished e-mail processing.
    [9/7/2009 3:08:41 PM]        Finished processing Revision 16

    ********************************************************************************
    ********************************************************************************
    ********************************************************************************

    and my SubversionNotify.cfg (redacted a bit) says:

    <?xml version="1.0" standalone="yes"?>
    <subversionNotifyConfig xmlns="http://www.mckechney.com/SubversionNotifyConfig.xsd" LoggingLevel="DEBUG" MaximumEMailSizeInMb="5" MaximumEmailSubjectChars="255">
        <!-- Basic configuration of where to locate the SVN executables -->
        <SVNConfig ExePath="C:\Program Files\Subversion\bin\svnlook.exe" />
       
        <!-- Configure your mail server. Needed for e-mail notifications -->
        <MailServer Name=“redacted_mail_server_IP_address” Username="svnnotify" Password=“redacted” FromAddress=“svnnotify@redacteddomain.com”/>
       
        <!-- To integrate with item tracking applications (bugs, tasks, etc) register the handler for it here -->
        <ItemTrackerRegistration>
            <Registration ElementName="BugzillaConfig" AssemblyName="SubversionNotify.Integration.Bugzilla.dll"/>
        </ItemTrackerRegistration>

        <!-- Register repositories and repo paths to be controlled in one of these sections. -->
        <RepoPathConfig ControlledPaths="/" ControlledRepos="C:\shared\svnrepo_junk\&quot; ExcludeFromPrecedenceFilter="true">
    <!-- Trying the following Mailto element here to debug mail problems. -->
            <MailTo EmailAddress=“eirens@redacteddomain.com” EMailType="HTML"/>

            <!-- In case you want to, you can add a default log message that will get added if no other message is included by the user -->
            <DefaultLogMessage Text="#user# has decided not to add a log message. Don't worry, severe punishment will be administered in short order."/>

            <!-- If you registered item tracker handler above, this is where you add them. Remember, the handler must implement the IItemTracker interface
                    as specified in SubversionNotify.Integration.ItemTracking.dll -->
            <ItemTrackers>
                <BugzillaConfig XmlReturnURL="http://24.96.69.252/show_bug.cgi?id={0}&amp;ctype=xml"
                            ItemLinkURL="http://24.96.69.252/{0}"
                        ItemFindRegex="\[b?u?g? ?#?([0-9]+(?:\s*,?\s*[0-9]+)*)\]" >
            <!--        <AllowedProducts>
                        <AllowedProduct Name="ProductOne"/>
                    </AllowedProducts>
                    <DisallowedStatuses>
                        <DisallowedStatus Name="CLOSED" RepoPathException="Test" UserException="mmckechney,user2"/>
                        <DisallowedStatus Name="RESOLVED" RepoPathException=""/>
                    </DisallowedStatuses>
                    <LockedItems>
                        <Item ItemId="1000"/>
                        <Item ItemId="1002"/>
                        <Item ItemId="1002"/>
                    </LockedItems> -->
                </BugzillaConfig>
            </ItemTrackers>

            <!-- <execute application="pathtwo.bat" commandline="#revision# #name# #controlledpaths#"/> -->
        </RepoPathConfig>

        <!-- An example of a second, less controlled path-->
        <RepoPathConfig ControlledPaths="/testing">
            <MailTo EmailAddress=“eirens@redacteddomain.com” EMailType="HTML"/>
            <DefaultLogMessage Text="#user# has decided not to add a log message. Don't worry, severe punishment will be administered in short order."/>
            <CommitRequirements FailureMessage="Please add a commit message.">
                <CommitRequirement Description="Any Text" Regex="\w"/>
            </CommitRequirements>
        </RepoPathConfig>

        <!-- If there are paths you want to lock against any changes, you can control that from here-->
        <!-- <LockedPaths>
            <LockedPath RepoPath="/Retired" ControlledRepos="C:\MyRepo"/>
            <LockedPath RepoPath="/ReallyRetired"/>
        </LockedPaths> -->

        <!-- Implementing the pre-prop-change hook, this enforces that the changed message meets your standards -->
        <!-- <PrePropChangeRequirements FailureMessage="A revision comment may only be changed if it includes a Change Request number. Please add [CR ###] to the changed message.">
            <PrePropChangeRequirement Description="Bug Number" Regex="\[c?r? ?#?([0-9]+(?:\s*,?\s*[0-9]+)*)\]" IsBugMatch="true"/>
        </PrePropChangeRequirements> -->

        <PreCommitFailureMessage>
            <MailTo EMailAddress=“eirens@redacteddomain.com” CustomSubjectFormat="[SVN Precommit Failure] #user# :: #commitMessage#" />
        </PreCommitFailureMessage>
        <!-- One or more of these, you can set up re-usable distribution lists.
                The Name attribute value is what you use as the EMailGroup value up in the MailTo element-->
        <!-- <EMailGroup Name="Developers">
            <EMail Address="email1@mydomain.com" />
            <EMail Address="email2@mydomain.com" />
        </EMailGroup>
        <EMailGroup Name="Managers">
            <EMail Address="email3@mydomain.com" />
            <EMail Address="email4@mydomain.com" />
        </EMailGroup> -->

    </subversionNotifyConfig>

     
    • E. Smith

      E. Smith - 2009-09-07

      Typo: "boug" should be "bogus".

       
  • E. Smith

    E. Smith - 2009-09-15

    Anyone have any ideas?

     
  • Alex Ilin

    Alex Ilin - 2009-09-16

    Verify SPAM folder on your mail server and mail box. In my case server put notifications into SPAM folder.

     
  • E. Smith

    E. Smith - 2009-09-16

    Nothing in spam folder. It appears the messages are not being sent and that SubversionNotify doesn't recognize an email address from my .cfg file to send the message to.

     
  • Bastian Schmidt

    Bastian Schmidt - 2009-09-16

        &lt;MailTo EmailAddress=“eirens@redacteddomain.com” EMailType=&quot;HTML&quot;/&gt;

    should be

        &lt;MailTo EMailAddress=“eirens@redacteddomain.com” EMailType=&quot;HTML&quot;/&gt;

    Everything is case sensitive when it comes to the config.

     
  • Bastian Schmidt

    Bastian Schmidt - 2009-09-16

    Code is messed up, don't know how to format it here.
    But the point is EmailAddress should be EMailAddress.

     
  • E. Smith

    E. Smith - 2009-09-16

    Thank you very much, Batzendev. That handled it! I set up that .CFG file before I found (from other forum posts) that the names were case sensitive.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.