CCNetConfig

Continuous Integration, Simplified Configuration

Home | Wiki | About | Login | Contact |
subscribeSubscribe
Subscribe
CCNetConfig
Releases
Beta Releases
Stable Releases
Work Items
Discussions
CPRP
Releases
Beta Releases
Stable Releases
RSS Builds Publisher
Releases
Beta Releases
Stable Releases
Current Release
0.5.0.120
Sun, Jan 20 2008 at 10:02 PM
All Releases
CCNetConfig Build Status
  • Build StatusSuccess
  • Label0.6.420.32915
  • Last Build4/28/2008 6:43 AM
  • Next Build7/24/2008 12:00 AM
Recent Work Items
  • Automated: Unhandled exceptio…
  • Automated: Object reference n…
  • support for SvnRevisionLabell…
  • Automated: Uncommon behaviour…
  • Automated: create a new confi…
  • Copying and pasting a task do…
  • Automated: Invalid URI: The U…
  • Automated: Cannot import a nu…
  • Remove support for plugins in…
  • Show splash screen on initial…
Legend: Proposed Active Fixed Closed
Tag Cloud
  • A Little Class
  • Automation
  • C#
  • CCNet
  • CCNetConfig
  • codeplex
  • CodePlexAPI
  • Continuous Integration
  • CruiseControl.NET
  • feedburner
  • google
  • JSON
  • LOLCode
  • MSBuild
  • RssBuildsPublisher
  • Sandcastle
  • subtext
  • subversion
  • SvnLabeller
  • tfs
  • twitter
  • Visual Studio
  • Wix
  • XML
  • xna
more tags...
Archives
  • July, 2008 (2)
  • May, 2008 (3)
  • April, 2008 (5)
  • March, 2008 (8)
  • February, 2008 (6)
  • January, 2008 (7)
  • December, 2007 (11)
  • November, 2007 (7)
  • October, 2007 (5)
  • September, 2007 (8)
  • August, 2007 (5)
  • June, 2007 (7)
  • May, 2007 (5)
  • April, 2007 (23)
  • March, 2007 (27)
  • February, 2007 (12)
  • January, 2007 (9)
  • December, 2006 (2)
  • November, 2006 (12)
  • October, 2006 (17)
  • September, 2006 (8)
  • August, 2006 (30)
 
Image Galleries
  • Screenshots
  • A Little Class
Post Categories
  • Announcements
  • Automation
  • Beta
  • Beta Marker
  • C#
  • CCNetConfig
  • CCNetConfig.BugTracking
  • CCnetConfig.CCNet
  • CCNetConfig.Core
  • CCNetConfig.GUI
  • CCNetConfig.Updater
  • CCNetConfig.Updater.Core
  • CodePlex
  • CodePlex Release Publisher
  • CodePlexAPI
  • Continuous Integration
  • CruiseControl.NET
  • Extending CCNetConfig
  • MSBuild
  • MsBuild Extended Tasks
  • News
  • Nightly
  • Orcas
  • Project Extension
  • Rant
  • Reflector
  • Release
  • RssBuildsPublisher
  • Sandcastle
  • SubText
  • SubVersion
  • TFS
  • TFS Plugin
  • Tools
  • TortiseSVN
  • Vista
  • Visual Studio
  • Wiki
  • Wix
  • XAML
  • Xbox Live
  • Zune
 

Blog Statistics
  • Posts219
  • Articles0
  • Comments36
  • Trackbacks5
Home
Download
Screenshots
Support
License
Source

April 2008 Entries

CCNetPlugins - New Publishers
Over the weekend I did some work on the CruiseControl.NET plugins available in the CC.Net Community Plugins project. In addition to the items covered in my post on April 20th, I wanted to talk about what has been added since then and what is currently planed to be added.

  • TfsWorkitemPublisher: This publisher creates a workitem on a TFS server when the build fails. It will publish the failed tasks result output as the description of the workitem. This publisher is the reason the builds have been failing on the build server. This publisher requires TeamExplorer 2008 be installed on the build server. The confusing part to me is the build server that is building this publisher has TeamExplorer 2008 installed but the build fails claiming that there are missing references where the TeamFoundation namespaces are used.
  • MetaWeblogPublisher: This publisher uses the XML-RPC library to communicate with blogs that support the MetaWeblog API. This publisher is very flexible in publishing the content. It lets you define the format strings for the post title, description. You can specify that even if this publisher fails for some reason that it should not cause the entire build to fail, instead, it will log the error as a warning.
  • TwitterPublisher: This publisher updates twitter status with information from the build. The status publishes like the twitter publisher by Thomas Freudenberg. It uses some code based on or inspired by the Yedda Twitter Library to communicate with Twitter. You can follow the builds of the community plugin project on twitter.

  • FtpSourceControl: This is not ready yet but is moving closer. I have checked in some classes that simplify the process of getting files and directories and their permissions from an ftp server.
  • NCoverTask: A task to support NCover. The plan is to support the older free versions of NCover but to also make it flexible enough to support the current version as well.
  • BuildPublisherCleanupTask: Requested on the discussions on codeplex site. A task that cleans up the artifact directory when the build publisher has uselabelsubdirectory = true.
Technorati Tags:[ ccnetpluings ] [ ncover ] [ TFS ] [ metaweblog ] [ twitter ]
Filed Under [ CruiseControl.NET ]
Ryan Conrad posted @ Monday, April 28, 2008 12:54 PM | Comments (0)
CCNetConfig 0.6.420.32915
A new build of CCNetConfig was published to CodePlex this morning. You can download from the CodePlex Release page, from the download page on the blog.

A bug was just identified with the version of this release reporting being lower then some of the previous releases. This is because the changeset was changed to be the revision, and in some of the older builds it was the build number. For this reason, you may see the 'updates available' dialog when launching the application after upgrading. I will address this bug ASAP.

Bugs Addressed in this release:
  • Fixed the serializer to better handle types like HiddedPassword for Required properties
  • Fixed issue with svn:// and svn+ssh:// uri schemes. This was causing problems for a lot of users and has finally been corrected
  • Fixed issue with the publish exceptions property causing an unused node error in CruiseControl.NET, this property has been removed for versions of CruiseControl.NET that no longer support it
Tasks / Features added in this release:
  • Expanded the use of the dynamic serialization class so more objects make use of this class for serializing. The deserialization is still not completed so they do not yet make use of it
  • Improved Dynamic serialization to include lists that have primitive types.
  • Added a start up screen to show while the application does the inital loading
  • Added comment filters to the filtered source control
  • Moved the filters and filter groups to their own files instead on inside the filtered source control. (Source clean up)
  • External source control block now available.
Technorati Tags:[ ccnetconfig ] [ ci ]
Filed Under [ CCNetConfig ]
Ryan Conrad posted @ Monday, April 28, 2008 11:48 AM | Comments (0)
A Little Class (Exceptions)
This week instead of picking one class and showing about the methods and properties of that class I decided that I wanted to point out the different types of exception classes that are built in to the .NET framework. Below is a list of the assemblies that I loaded and all the exception classes in the assembly. Each assembly and exception also links directly to its definition in Reflector. I hope this list helps reduce the creating of custom exceptions if there is one that already exists, or increases the use of a built in exception for what it was intended for. For example, I have seen code where a developer defines an exception to throw when there was an error reading or loading a file. There is an exception in the framework that could have been used for that instead, System.IO.FileLoadException. This list is only .NET 2.0 assemblies, later I will include 3.0 - 3.5 assemblies as well.
  • mscorlib
    • System.Exception
    • System.SystemException
    • System.OutOfMemoryException
    • System.StackOverflowException
    • System.DataMisalignedException
    • System.ExecutionEngineException
    • System.MemberAccessException
    • System.AccessViolationException
    • System.ApplicationException
    • System.AppDomainUnloadedException
    • System.ArgumentException
    • System.ArgumentNullException
    • System.ArgumentOutOfRangeException
    • System.ArithmeticException
    • System.ArrayTypeMismatchException
    • System.BadImageFormatException
    • System.CannotUnloadAppDomainException
    • System.TypeUnloadedException
    • System.ContextMarshalException
    • System.DivideByZeroException
    • System.DuplicateWaitObjectException
    • System.TypeLoadException
    • System.EntryPointNotFoundException
    • System.DllNotFoundException
    • System.FieldAccessException
    • System.FormatException
    • System.IndexOutOfRangeException
    • System.InsufficientMemoryException
    • System.InvalidCastException
    • System.InvalidOperationException
    • System.InvalidProgramException
    • System.MethodAccessException
    • System.MissingMemberException
    • System.MissingFieldException
    • System.MissingMethodException
    • System.MulticastNotSupportedException
    • System.NotFiniteNumberException
    • System.NotImplementedException
    • System.NotSupportedException
    • System.NullReferenceException
    • System.ObjectDisposedException
    • System.OperationCanceledException
    • System.OverflowException
    • System.PlatformNotSupportedException
    • System.RankException
    • System.TimeoutException
    • System.TypeInitializationException
    • System.UnauthorizedAccessException
    • System.UnhandledExceptionEventArgs
    • System.UnhandledExceptionEventHandler
    • System.Threading.AbandonedMutexException
    • System.Threading.SynchronizationLockException
    • System.Threading.ThreadAbortException
    • System.Threading.ThreadInterruptedException
    • System.Threading.ThreadStateException
    • System.Threading.ThreadStartException
    • System.Threading.WaitHandleCannotBeOpenedException
    • System.Collections.Generic.KeyNotFoundException
    • System.Reflection.AmbiguousMatchException
    • System.Reflection.CustomAttributeFormatException
    • System.Reflection.InvalidFilterCriteriaException
    • System.Reflection.ExceptionHandlingClauseOptions
    • System.Reflection.ExceptionHandlingClause
    • System.Reflection.ReflectionTypeLoadException
    • System.Reflection.TargetException
    • System.Reflection.TargetInvocationException
    • System.Reflection.TargetParameterCountException
    • System.Runtime.Serialization.SerializationException
    • System.Text.DecoderExceptionFallback
    • System.Text.DecoderExceptionFallbackBuffer
    • System.Text.DecoderFallbackException
    • System.Text.EncoderExceptionFallback
    • System.Text.EncoderExceptionFallbackBuffer
    • System.Text.EncoderFallbackException
    • System.Resources.MissingManifestResourceException
    • System.Resources.MissingSatelliteAssemblyException
    • System.Security.Policy.PolicyException
    • System.Runtime.InteropServices.ExternalException
    • System.Runtime.InteropServices.COMException
    • System.Runtime.InteropServices.InvalidOleVariantTypeException
    • System.Runtime.InteropServices.MarshalDirectiveException
    • System.Runtime.InteropServices.SEHException
    • System.Runtime.InteropServices.InvalidComObjectException
    • System.Runtime.InteropServices.SafeArrayRankMismatchException
    • System.Runtime.InteropServices.SafeArrayTypeMismatchException
    • System.IO.IOException
    • System.IO.DirectoryNotFoundException
    • System.IO.DriveNotFoundException
    • System.IO.EndOfStreamException
    • System.IO.FileLoadException
    • System.IO.FileNotFoundException
    • System.IO.PathTooLongException
    • System.Runtime.CompilerServices.RuntimeWrappedException
    • System.Security.XmlSyntaxException
    • System.Security.SecurityException
    • System.Security.HostProtectionException
    • System.Security.VerificationException
    • System.Runtime.Remoting.RemotingException
    • System.Runtime.Remoting.ServerException
    • System.Runtime.Remoting.RemotingTimeoutException
    • System.IO.IsolatedStorage.IsolatedStorageException
    • System.Security.Cryptography.CryptographicException
    • System.Security.Cryptography.CryptographicUnexpectedOperationException
    • System.Security.AccessControl.PrivilegeNotHeldException
    • System.Security.Principal.IdentityNotMappedException
  • System.Windows.Forms
    • System.Windows.Forms.UnhandledExceptionMode
    • System.Windows.Forms.ThreadExceptionDialog
  • System
    • System.CodeDom.CodeThrowExceptionStatement
    • System.ComponentModel.InvalidAsynchronousStateException
    • System.ComponentModel.InvalidEnumArgumentException
    • System.ComponentModel.LicenseException
    • System.ComponentModel.WarningException
    • System.ComponentModel.Win32Exception
    • System.ComponentModel.Design.CheckoutException
    • System.IO.InvalidDataException
    • System.Threading.SemaphoreFullException
    • System.Threading.ThreadExceptionEventArgs
    • System.Threading.ThreadExceptionEventHandler
    • System.UriFormatException
    • System.Net.CookieException
    • System.Net.HttpListenerException
    • System.Net.ProtocolViolationException
    • System.Net.Sockets.SocketException
    • System.Net.WebException
    • System.Net.WebExceptionStatus
    • System.Security.Authentication.AuthenticationException
    • System.Security.Authentication.InvalidCredentialException
    • System.Net.NetworkInformation.NetworkInformationException
    • System.Net.NetworkInformation.PingException
    • System.Net.Mail.SmtpException
    • System.Net.Mail.SmtpFailedRecipientException
    • System.Net.Mail.SmtpFailedRecipientsException
    • System.Configuration.ConfigurationException
    • System.Configuration.SettingsPropertyIsReadOnlyException
    • System.Configuration.SettingsPropertyNotFoundException
    • System.Configuration.SettingsPropertyWrongTypeException
    • System.IO.InternalBufferOverflowException
  • System.Drawing
    • System.Drawing.Printing.InvalidPrinterException
  • Microsoft.VisualStudio.HostingProcess.Utilities.Sync
  • System.AddIn
    • System.AddIn.Hosting.AddInSegmentDirectoryNotFoundException
    • System.AddIn.Hosting.InvalidPipelineStoreException
  • System.AddIn.Contract
  • System.Configuration
    • System.Configuration.ConfigurationErrorsException
    • System.Configuration.Provider.ProviderException
  • System.Configuration.Install
    • System.Configuration.Install.InstallException
  • System.Core
    • System.Management.Instrumentation.InstrumentationBaseException
    • System.Management.Instrumentation.InstrumentationException
    • System.Management.Instrumentation.InstanceNotFoundException
    • System.Diagnostics.Eventing.Reader.EventLogException
    • System.Diagnostics.Eventing.Reader.EventLogNotFoundException
    • System.Diagnostics.Eventing.Reader.EventLogReadingException
    • System.Diagnostics.Eventing.Reader.EventLogProviderDisabledException
    • System.Diagnostics.Eventing.Reader.EventLogInvalidDataException
    • System.TimeZoneNotFoundException
    • System.InvalidTimeZoneException
    • System.Threading.LockRecursionException
  • System.Data
    • System.Data.DataException
    • System.Data.ConstraintException
    • System.Data.DeletedRowInaccessibleException
    • System.Data.DuplicateNameException
    • System.Data.InRowChangingEventException
    • System.Data.InvalidConstraintException
    • System.Data.MissingPrimaryKeyException
    • System.Data.NoNullAllowedException
    • System.Data.ReadOnlyException
    • System.Data.RowNotInTableException
    • System.Data.VersionNotFoundException
    • System.Data.DBConcurrencyException
    • System.Data.OperationAbortedException
    • System.Data.StrongTypingException
    • System.Data.TypedDataSetGeneratorException
    • System.Data.Common.DbException
    • System.Data.InvalidExpressionException
    • System.Data.EvaluateException
    • System.Data.SyntaxErrorException
    • System.Data.Odbc.OdbcException
    • System.Data.OleDb.OleDbException
    • Microsoft.SqlServer.Server.InvalidUdtException
    • System.Data.SqlClient.SqlException
    • System.Data.SqlTypes.SqlTypeException
    • System.Data.SqlTypes.SqlNullValueException
    • System.Data.SqlTypes.SqlTruncateException
    • System.Data.SqlTypes.SqlNotFilledException
    • System.Data.SqlTypes.SqlAlreadyFilledException
  • System.Data.Linq
    • System.Data.Linq.ChangeConflictException
    • System.Data.Linq.DuplicateKeyException
    • System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException
  • System.Data.OracleClient
    • System.Data.OracleClient.OracleException
  • System.Data.SqlServerCe
    • System.Data.SqlServerCe.SqlCeException
    • System.Data.SqlServerCe.SqlCeLockTimeoutException
    • System.Data.SqlServerCe.SqlCeTransactionInProgressException
    • System.Data.SqlServerCe.SqlCeInvalidDatabaseFormatException
  • System.Xml
    • System.Xml.XmlException
    • System.Xml.XPath.XPathException
    • System.Xml.Xsl.XsltException
    • System.Xml.Xsl.XsltCompileException
    • System.Xml.Schema.XmlSchemaException
    • System.Xml.Schema.XmlSchemaValidationException
    • System.Xml.Schema.XmlSchemaInferenceException
  • System.Deployment
    • System.Deployment.Application.DeploymentException
    • System.Deployment.Application.InvalidDeploymentException
    • System.Deployment.Application.DeploymentDownloadException
    • System.Deployment.Application.TrustNotGrantedException
    • System.Deployment.Application.DependentPlatformMissingException
  • System.Design
    • System.Data.Design.TypedDataSetGeneratorException
    • System.ComponentModel.Design.Serialization.CodeDomSerializerException
    • System.ComponentModel.Design.ExceptionCollection
  • System.DirectoryServices
    • System.DirectoryServices.DirectoryServicesCOMException
    • System.DirectoryServices.ActiveDirectory.ActiveDirectoryObjectNotFoundException
    • System.DirectoryServices.ActiveDirectory.ActiveDirectoryOperationException
    • System.DirectoryServices.ActiveDirectory.ActiveDirectoryServerDownException
    • System.DirectoryServices.ActiveDirectory.ActiveDirectoryObjectExistsException
    • System.DirectoryServices.ActiveDirectory.SyncFromAllServersOperationException
    • System.DirectoryServices.ActiveDirectory.ForestTrustCollisionException
  • System.DirectoryServices.AccountManagement
    • System.DirectoryServices.AccountManagement.PrincipalException
    • System.DirectoryServices.AccountManagement.MultipleMatchesException
    • System.DirectoryServices.AccountManagement.NoMatchingPrincipalException
    • System.DirectoryServices.AccountManagement.PasswordException
    • System.DirectoryServices.AccountManagement.PrincipalExistsException
    • System.DirectoryServices.AccountManagement.PrincipalServerDownException
    • System.DirectoryServices.AccountManagement.PrincipalOperationException
  • System.DirectoryServices.Protocols
    • System.DirectoryServices.Protocols.DirectoryException
    • System.DirectoryServices.Protocols.DirectoryOperationException
    • System.DirectoryServices.Protocols.BerConversionException
    • System.DirectoryServices.Protocols.DsmlInvalidDocumentException
    • System.DirectoryServices.Protocols.ErrorResponseException
    • System.DirectoryServices.Protocols.LdapException
    • System.DirectoryServices.Protocols.TlsOperationException
  • System.EnterpriseServices
    • System.EnterpriseServices.ServicedComponentException
    • System.EnterpriseServices.ExceptionClassAttribute
    • System.EnterpriseServices.RegistrationException
  • System.IdentityModel
    • System.IdentityModel.Tokens.SecurityTokenException
    • System.IdentityModel.Tokens.SecurityTokenValidationException
  • System.IdentityModel.Selectors
    • System.IdentityModel.Selectors.CardSpaceException
    • System.IdentityModel.Selectors.ServiceNotStartedException
    • System.IdentityModel.Selectors.StsCommunicationException
    • System.IdentityModel.Selectors.UntrustedRecipientException
    • System.IdentityModel.Selectors.UserCancellationException
    • System.IdentityModel.Selectors.ServiceBusyException
    • System.IdentityModel.Selectors.IdentityValidationException
    • System.IdentityModel.Selectors.PolicyValidationException
    • System.IdentityModel.Selectors.UnsupportedPolicyOptionsException
  • System.IO.Log
    • System.IO.Log.ReservationNotFoundException
    • System.IO.Log.SequenceFullException
  • System.Management
    • System.Management.ManagementException
  • System.Management.Instrumentation
    • System.Management.Instrumentation.WmiProviderInstallationException
  • System.Messaging
    • System.Messaging.MessageQueueException
  • System.Net
    • System.Net.PeerToPeer.PeerToPeerException
  • System.Runtime.Remoting
    • System.Runtime.Remoting.MetadataServices.SUDSParserException
    • System.Runtime.Remoting.MetadataServices.SUDSGeneratorException
  • System.Runtime.Serialization
    • System.Runtime.Serialization.InvalidDataContractException
  • System.ServiceModel
    • System.ServiceModel.CommunicationException
    • System.ServiceModel.ActionNotSupportedException
    • System.ServiceModel.ProtocolException
    • System.ServiceModel.AddressAlreadyInUseException
    • System.ServiceModel.AddressAccessDeniedException
    • System.ServiceModel.ChannelTerminatedException
    • System.ServiceModel.CommunicationObjectAbortedException
    • System.ServiceModel.CommunicationObjectFaultedException
    • System.ServiceModel.EndpointNotFoundException
    • System.ServiceModel.ServerTooBusyException
    • System.ServiceModel.ServiceActivationException
    • System.IO.PipeException
    • System.ServiceModel.Dispatcher.ExceptionHandler
    • System.ServiceModel.QuotaExceededException
    • System.ServiceModel.Dispatcher.InvalidBodyAccessException
    • System.ServiceModel.Dispatcher.FilterInvalidBodyAccessException
    • System.ServiceModel.Dispatcher.MessageFilterException
    • System.ServiceModel.Dispatcher.MultipleFilterMatchesException
    • System.ServiceModel.Dispatcher.NavigatorInvalidBodyAccessException
    • System.ServiceModel.Dispatcher.XPathNavigatorException
    • System.ServiceModel.MsmqException
    • System.ServiceModel.PoisonMessageException
    • System.ServiceModel.MsmqPoisonMessageException
    • System.ServiceModel.Security.MessageSecurityException
    • System.ServiceModel.Security.SecurityAccessDeniedException
    • System.ServiceModel.Security.ExpiredSecurityTokenException
    • System.ServiceModel.Security.SecurityNegotiationException
    • System.ServiceModel.ExceptionDetail
    • System.ServiceModel.InvalidMessageContractException
    • System.ServiceModel.FaultException
    • System.ServiceModel.FaultException`1
    • System.ServiceModel.MessageHeaderException
    • System.ServiceModel.Channels.InvalidChannelBindingException
  • System.ServiceModel.Web
    • System.UriTemplateMatchException
  • System.ServiceProcess
    • System.ServiceProcess.TimeoutException
  • System.Transactions
    • System.Transactions.TransactionException
    • System.Transactions.TransactionAbortedException
    • System.Transactions.TransactionInDoubtException
    • System.Transactions.TransactionManagerCommunicationException
    • System.Transactions.TransactionPromotionException
  • System.Web
    • System.Web.HttpException
    • System.Web.HttpUnhandledException
    • System.Web.HttpCompileException
    • System.Web.HttpParseException
    • System.Web.HttpRequestValidationException
    • System.Web.Caching.DatabaseNotEnabledForNotificationException
    • System.Web.Caching.TableNotEnabledForNotificationException
    • System.Web.Management.SqlExecutionException
    • System.Web.Security.MembershipCreateUserException
    • System.Web.Security.MembershipPasswordException
    • System.Web.UI.ViewStateException
  • System.Web.Extensions
    • System.Web.Query.Dynamic.ParseException
    • System.Web.UI.WebControls.LinqDataSourceValidationException
  • System.Web.Services
    • System.Web.Services.Protocols.SoapException
    • System.Web.Services.Protocols.SoapHeaderException
    • System.Web.Services.Discovery.DiscoveryExceptionDictionary
  • System.Workflow.Activities
    • System.Workflow.Activities.WorkflowAuthorizationException
    • System.Workflow.Activities.Rules.RuleException
    • System.Workflow.Activities.Rules.RuleEvaluationException
    • System.Workflow.Activities.Rules.RuleEvaluationIncompatibleTypesException
    • System.Workflow.Activities.Rules.RuleSetValidationException
    • System.Workflow.Activities.EventDeliveryFailedException
  • System.Workflow.ComponentModel
    • System.Workflow.ComponentModel.WorkflowTerminatedException
    • System.Workflow.ComponentModel.Serialization.WorkflowMarkupSerializationException
    • System.Workflow.ComponentModel.Compiler.WorkflowValidationFailedException

Found 219 314 Exceptions in 18 37 Assemblies
Update: I have added 3.5 assemblies as well
Technorati Tags:[ A Little Class ] [ .net ] [ Exceptions ]
Ryan Conrad posted @ Friday, April 25, 2008 11:19 AM | Comments (0)
CC.NET Community Plugins
A few months back I started a project on Codeplex to act as a central repository for a collection of community contributed plugins for CruiseControl.NET. There wasn't a lot of activity to the project due to my limited amount of time to work on the project. Recently I have had some free time and started putting together some tasks and publishers for the project.

If you have an idea for a plugin for CruiseControl.NET or just want to contribute to the project, post a message on the discussion list over on the Codeplex website.

The project currently has full support for the following:
  • Labellers
    • LastChangeVersionLabeller: This is similar to the built in LastChangeLabeller, except it uses the current date to represent the build number. The revision is determined by the last change set value.
  • Tasks
    • MbUnitTask: A task that will run unit tests with the MbUnit framework
    • XUnitTask: A task that will run unit test with the xUnit framework.
I am also currently working on implementing the following:

  • Publishers
    • CodePlexReleasePublisher: Moving this project from its own project to this one. This publisher will create a release on codeplex and upload the specified files to the release.
    • RssBuildsPublisher: Another project that I want to move from its own project. This creates an Rss feed and a feed item for every release. It maintains a history file so only a limited number of feed items are in the main feed. There are a number of built in values that you can use to dynamically populate the feed item using MSBuild style ($(PropertyName)) variables, there is also a built in macro framework to get values not available through the properties and a plugin framework so you can use macros created by others.
    • TfsWorkItemPublisher: The goal of this is to create a publisher that will create a work item in TFS when the build fails to build.
  • SourceControls
    • FtpSourceControl: A source control provider that gets the source from an existing ftp server.
Technorati Tags:[ ccnet ] [ ccnetplugins ] [ xunit ] [ mbunit ] [ codeplex ]
Filed Under [ CodePlex ]
Ryan Conrad posted @ Sunday, April 20, 2008 9:26 AM | Comments (1)
A Little Class (System.Globalization.RegionInfo)
Did you know that you can get information about a specific region by using the System.Globalization.RegionInfo class. You can get information like the name of the regions currency, if it uses the metric system and its geographical id. The RegionInfo has one static property that will get the current region and the instance properties are what will give us the data. The example code below will first get all the installed Cultures and sort them by the culture name, then output the information about the region. The output has been trimmed to only display one region, United States, so it is not 4 miles long.

Code

1using System; 2using System.Linq; 3using System.Xml.Linq; 4using System.IO; 5using System.Globalization; 6 7namespace ALittleClass ...{ 8 class Program ...{ 9 static void Main ( string[ ] args ) ...{ 10 // get the windows cultures 11 CultureInfo[] cultures = CultureInfo.GetCultures ( CultureTypes.InstalledWin32Cultures ); 12 // this is the sort method for the cultures 13