nant 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (416) hide show
  1. data/docs/help/elements/NAnt.Compression.Tasks.ExpandBaseTask.html +74 -0
  2. data/docs/help/elements/NAnt.Core.DataTypeBase.html +56 -0
  3. data/docs/help/elements/NAnt.Core.Filters.ChainableReader.html +29 -0
  4. data/docs/help/elements/NAnt.Core.Filters.Filter.html +56 -0
  5. data/docs/help/elements/NAnt.Core.Target.html +81 -0
  6. data/docs/help/elements/NAnt.Core.Task.html +29 -0
  7. data/docs/help/elements/NAnt.Core.TaskContainer.html +68 -0
  8. data/docs/help/elements/NAnt.Core.Tasks.ExternalProgramBase.html +132 -0
  9. data/docs/help/elements/NAnt.Core.Tasks.InElement.html +49 -0
  10. data/docs/help/elements/NAnt.Core.Types.Argument.html +121 -0
  11. data/docs/help/elements/NAnt.Core.Types.EnvironmentSet.html +65 -0
  12. data/docs/help/elements/NAnt.Core.Types.EnvironmentVariable.html +99 -0
  13. data/docs/help/elements/NAnt.Core.Types.FileSet.Exclude.html +63 -0
  14. data/docs/help/elements/NAnt.Core.Types.FileSet.ExcludesFile.html +63 -0
  15. data/docs/help/elements/NAnt.Core.Types.FileSet.Include.html +75 -0
  16. data/docs/help/elements/NAnt.Core.Types.FileSet.IncludesFile.html +75 -0
  17. data/docs/help/elements/NAnt.Core.Types.Formatter.html +69 -0
  18. data/docs/help/elements/NAnt.Core.Types.Option.html +68 -0
  19. data/docs/help/elements/NAnt.Core.Types.PathElement.html +74 -0
  20. data/docs/help/elements/NAnt.Core.Types.Pattern.html +63 -0
  21. data/docs/help/elements/NAnt.Core.Types.RawXml.html +33 -0
  22. data/docs/help/elements/NAnt.Core.Types.Token.html +68 -0
  23. data/docs/help/elements/NAnt.Core.Types.XmlNamespace.html +68 -0
  24. data/docs/help/elements/NAnt.Core.Types.XsltExtensionObject.html +74 -0
  25. data/docs/help/elements/NAnt.Core.Types.XsltParameter.html +74 -0
  26. data/docs/help/elements/NAnt.DotNet.Tasks.CompilerBase.html +337 -0
  27. data/docs/help/elements/NAnt.DotNet.Types.AssemblyAttribute.html +74 -0
  28. data/docs/help/elements/NAnt.DotNet.Types.CompilerWarning.html +62 -0
  29. data/docs/help/elements/NAnt.DotNet.Types.DataTypeCollectionBase.html +56 -0
  30. data/docs/help/elements/NAnt.DotNet.Types.EmbeddedResourceCollection.html +29 -0
  31. data/docs/help/elements/NAnt.DotNet.Types.LibDirectorySet.html +61 -0
  32. data/docs/help/elements/NAnt.DotNet.Types.Module.html +56 -0
  33. data/docs/help/elements/NAnt.DotNet.Types.NamespaceImport.html +69 -0
  34. data/docs/help/elements/NAnt.DotNet.Types.Package.html +62 -0
  35. data/docs/help/elements/NAnt.NUnit.Types.FormatterElement.html +70 -0
  36. data/docs/help/elements/NAnt.NUnit1.Types.NUnitTest.html +92 -0
  37. data/docs/help/elements/NAnt.NUnit2.Types.Category.html +62 -0
  38. data/docs/help/elements/NAnt.NUnit2.Types.NUnit2Test.html +111 -0
  39. data/docs/help/elements/NAnt.SourceControl.Tasks.AbstractCvsTask.html +239 -0
  40. data/docs/help/elements/NAnt.SourceControl.Tasks.AbstractSourceControlTask.html +167 -0
  41. data/docs/help/elements/NAnt.VSNet.Types.WebMap.html +74 -0
  42. data/docs/help/elements/NAnt.VisualCpp.Types.Library.html +62 -0
  43. data/docs/help/elements/NAnt.VisualCpp.Types.Symbol.html +62 -0
  44. data/docs/help/enums/NAnt.Compression.Types.DuplicateHandling.html +54 -0
  45. data/docs/help/enums/NAnt.Compression.Types.TarCompressionMethod.html +54 -0
  46. data/docs/help/enums/NAnt.Core.FrameworkTypes.html +74 -0
  47. data/docs/help/enums/NAnt.Core.Level.html +66 -0
  48. data/docs/help/enums/NAnt.Core.Tasks.AvailableTask.ResourceType.html +58 -0
  49. data/docs/help/enums/NAnt.Core.Tasks.LoopTask.LoopItem.html +63 -0
  50. data/docs/help/enums/NAnt.Core.Tasks.LoopTask.LoopTrim.html +59 -0
  51. data/docs/help/enums/NAnt.Core.Types.ManagedExecution.html +77 -0
  52. data/docs/help/enums/NAnt.DotNet.Tasks.AssemblyInfoTask.CodeLanguage.html +54 -0
  53. data/docs/help/enums/NAnt.DotNet.Tasks.RegsvcsTask.ActionType.html +54 -0
  54. data/docs/help/enums/NAnt.DotNet.Types.DebugOutput.html +84 -0
  55. data/docs/help/enums/NAnt.DotNet.Types.DelaySign.html +75 -0
  56. data/docs/help/enums/NAnt.MSNet.Tasks.ServiceControllerTask.ActionType.html +62 -0
  57. data/docs/help/enums/NAnt.NUnit.Types.FormatterType.html +50 -0
  58. data/docs/help/enums/NAnt.VisualCpp.Tasks.ClTask.PrecompiledHeaderMode.html +54 -0
  59. data/docs/help/enums/NAnt.VisualCpp.Types.CharacterSet.html +54 -0
  60. data/docs/help/filters/expandproperties.html +33 -0
  61. data/docs/help/filters/index.html +60 -0
  62. data/docs/help/filters/replacestring.html +92 -0
  63. data/docs/help/filters/replacetokens.html +110 -0
  64. data/docs/help/filters/tabstospaces.html +73 -0
  65. data/docs/help/functions/assembly.get-full-name(System.Reflection.Assembly).html +51 -0
  66. data/docs/help/functions/assembly.get-location(System.Reflection.Assembly).html +51 -0
  67. data/docs/help/functions/assembly.get-name(System.Reflection.Assembly).html +52 -0
  68. data/docs/help/functions/assembly.load(System.String).html +55 -0
  69. data/docs/help/functions/assembly.load-from-file(System.String).html +52 -0
  70. data/docs/help/functions/assemblyname.get-assembly-name(System.String).html +54 -0
  71. data/docs/help/functions/assemblyname.get-codebase(System.Reflection.AssemblyName).html +51 -0
  72. data/docs/help/functions/assemblyname.get-escaped-codebase(System.Reflection.AssemblyName).html +51 -0
  73. data/docs/help/functions/assemblyname.get-full-name(System.Reflection.AssemblyName).html +53 -0
  74. data/docs/help/functions/assemblyname.get-name(System.Reflection.AssemblyName).html +53 -0
  75. data/docs/help/functions/assemblyname.get-version(System.Reflection.AssemblyName).html +54 -0
  76. data/docs/help/functions/bool.parse(System.String).html +52 -0
  77. data/docs/help/functions/bool.to-string(System.Boolean).html +49 -0
  78. data/docs/help/functions/convert.to-boolean(System.Boolean).html +53 -0
  79. data/docs/help/functions/convert.to-datetime(System.DateTime).html +53 -0
  80. data/docs/help/functions/convert.to-double(System.Double).html +53 -0
  81. data/docs/help/functions/convert.to-int(System.Int32).html +53 -0
  82. data/docs/help/functions/convert.to-string(System.String).html +53 -0
  83. data/docs/help/functions/cygpath.get-dos-path(System.String).html +51 -0
  84. data/docs/help/functions/cygpath.get-unix-path(System.String).html +51 -0
  85. data/docs/help/functions/cygpath.get-windows-path(System.String).html +51 -0
  86. data/docs/help/functions/datetime.get-day(System.DateTime).html +49 -0
  87. data/docs/help/functions/datetime.get-day-of-week(System.DateTime).html +49 -0
  88. data/docs/help/functions/datetime.get-day-of-year(System.DateTime).html +49 -0
  89. data/docs/help/functions/datetime.get-days-in-month(System.Int32,System.Int32).html +56 -0
  90. data/docs/help/functions/datetime.get-hour(System.DateTime).html +49 -0
  91. data/docs/help/functions/datetime.get-millisecond(System.DateTime).html +49 -0
  92. data/docs/help/functions/datetime.get-minute(System.DateTime).html +49 -0
  93. data/docs/help/functions/datetime.get-month(System.DateTime).html +49 -0
  94. data/docs/help/functions/datetime.get-second(System.DateTime).html +49 -0
  95. data/docs/help/functions/datetime.get-ticks(System.DateTime).html +49 -0
  96. data/docs/help/functions/datetime.get-year(System.DateTime).html +49 -0
  97. data/docs/help/functions/datetime.is-leap-year(System.Int32).html +50 -0
  98. data/docs/help/functions/datetime.now().html +34 -0
  99. data/docs/help/functions/datetime.parse(System.String).html +51 -0
  100. data/docs/help/functions/datetime.to-string(System.DateTime).html +49 -0
  101. data/docs/help/functions/directory.exists(System.String).html +52 -0
  102. data/docs/help/functions/directory.get-creation-time(System.String).html +51 -0
  103. data/docs/help/functions/directory.get-current-directory().html +34 -0
  104. data/docs/help/functions/directory.get-directory-root(System.String).html +51 -0
  105. data/docs/help/functions/directory.get-last-access-time(System.String).html +51 -0
  106. data/docs/help/functions/directory.get-last-write-time(System.String).html +51 -0
  107. data/docs/help/functions/directory.get-parent-directory(System.String).html +55 -0
  108. data/docs/help/functions/dns.get-host-name().html +36 -0
  109. data/docs/help/functions/double.parse(System.String).html +51 -0
  110. data/docs/help/functions/double.to-string(System.Double).html +49 -0
  111. data/docs/help/functions/environment.get-folder-path(System.Environment.SpecialFolder).html +55 -0
  112. data/docs/help/functions/environment.get-machine-name().html +36 -0
  113. data/docs/help/functions/environment.get-operating-system().html +38 -0
  114. data/docs/help/functions/environment.get-user-name().html +40 -0
  115. data/docs/help/functions/environment.get-variable(System.String).html +51 -0
  116. data/docs/help/functions/environment.get-version().html +37 -0
  117. data/docs/help/functions/environment.newline().html +36 -0
  118. data/docs/help/functions/environment.variable-exists(System.String).html +54 -0
  119. data/docs/help/functions/file.exists(System.String).html +54 -0
  120. data/docs/help/functions/file.get-creation-time(System.String).html +51 -0
  121. data/docs/help/functions/file.get-last-access-time(System.String).html +51 -0
  122. data/docs/help/functions/file.get-last-write-time(System.String).html +51 -0
  123. data/docs/help/functions/file.get-length(System.String).html +51 -0
  124. data/docs/help/functions/file.is-assembly(System.String).html +51 -0
  125. data/docs/help/functions/file.up-to-date(System.String,System.String).html +57 -0
  126. data/docs/help/functions/fileversioninfo.get-company-name(System.Diagnostics.FileVersionInfo).html +51 -0
  127. data/docs/help/functions/fileversioninfo.get-file-version(System.Diagnostics.FileVersionInfo).html +52 -0
  128. data/docs/help/functions/fileversioninfo.get-product-name(System.Diagnostics.FileVersionInfo).html +51 -0
  129. data/docs/help/functions/fileversioninfo.get-product-version(System.Diagnostics.FileVersionInfo).html +52 -0
  130. data/docs/help/functions/fileversioninfo.get-version-info(System.String).html +52 -0
  131. data/docs/help/functions/framework.exists(System.String).html +50 -0
  132. data/docs/help/functions/framework.get-assembly-directory(System.String).html +51 -0
  133. data/docs/help/functions/framework.get-clr-version().html +35 -0
  134. data/docs/help/functions/framework.get-clr-version(System.String).html +52 -0
  135. data/docs/help/functions/framework.get-description().html +34 -0
  136. data/docs/help/functions/framework.get-description(System.String).html +51 -0
  137. data/docs/help/functions/framework.get-family(System.String).html +51 -0
  138. data/docs/help/functions/framework.get-framework-directory(System.String).html +51 -0
  139. data/docs/help/functions/framework.get-frameworks(NAnt.Core.FrameworkTypes).html +62 -0
  140. data/docs/help/functions/framework.get-runtime-engine(System.String).html +51 -0
  141. data/docs/help/functions/framework.get-runtime-framework().html +34 -0
  142. data/docs/help/functions/framework.get-sdk-directory(System.String).html +51 -0
  143. data/docs/help/functions/framework.get-target-framework().html +34 -0
  144. data/docs/help/functions/framework.get-tool-path(System.String).html +56 -0
  145. data/docs/help/functions/framework.get-version().html +35 -0
  146. data/docs/help/functions/framework.get-version(System.String).html +52 -0
  147. data/docs/help/functions/framework.sdk-exists(System.String).html +50 -0
  148. data/docs/help/functions/index.html +1328 -0
  149. data/docs/help/functions/int.parse(System.String).html +51 -0
  150. data/docs/help/functions/int.to-string(System.Int32).html +49 -0
  151. data/docs/help/functions/long.parse(System.String).html +51 -0
  152. data/docs/help/functions/long.to-string(System.Int64).html +49 -0
  153. data/docs/help/functions/math.abs(System.Double).html +50 -0
  154. data/docs/help/functions/math.ceiling(System.Double).html +49 -0
  155. data/docs/help/functions/math.floor(System.Double).html +49 -0
  156. data/docs/help/functions/math.round(System.Double).html +49 -0
  157. data/docs/help/functions/nant.get-assembly().html +35 -0
  158. data/docs/help/functions/nant.get-base-directory().html +34 -0
  159. data/docs/help/functions/operating-system.get-platform(System.OperatingSystem).html +53 -0
  160. data/docs/help/functions/operating-system.get-version(System.OperatingSystem).html +52 -0
  161. data/docs/help/functions/operating-system.to-string(System.OperatingSystem).html +54 -0
  162. data/docs/help/functions/path.change-extension(System.String,System.String).html +59 -0
  163. data/docs/help/functions/path.combine(System.String,System.String).html +56 -0
  164. data/docs/help/functions/path.get-directory-name(System.String).html +51 -0
  165. data/docs/help/functions/path.get-extension(System.String).html +51 -0
  166. data/docs/help/functions/path.get-file-name(System.String).html +54 -0
  167. data/docs/help/functions/path.get-file-name-without-extension(System.String).html +51 -0
  168. data/docs/help/functions/path.get-full-path(System.String).html +51 -0
  169. data/docs/help/functions/path.get-path-root(System.String).html +51 -0
  170. data/docs/help/functions/path.get-temp-file-name().html +34 -0
  171. data/docs/help/functions/path.get-temp-path().html +34 -0
  172. data/docs/help/functions/path.has-extension(System.String).html +52 -0
  173. data/docs/help/functions/path.is-path-rooted(System.String).html +52 -0
  174. data/docs/help/functions/pkg-config.exists(System.String).html +52 -0
  175. data/docs/help/functions/pkg-config.get-compile-flags(System.String).html +51 -0
  176. data/docs/help/functions/pkg-config.get-link-flags(System.String).html +51 -0
  177. data/docs/help/functions/pkg-config.get-mod-version(System.String).html +51 -0
  178. data/docs/help/functions/pkg-config.get-variable(System.String,System.String).html +56 -0
  179. data/docs/help/functions/pkg-config.is-atleast-version(System.String,System.String).html +57 -0
  180. data/docs/help/functions/pkg-config.is-between-version(System.String,System.String,System.String).html +62 -0
  181. data/docs/help/functions/pkg-config.is-exact-version(System.String,System.String).html +57 -0
  182. data/docs/help/functions/pkg-config.is-max-version(System.String,System.String).html +57 -0
  183. data/docs/help/functions/platform.get-name().html +34 -0
  184. data/docs/help/functions/platform.is-unix().html +35 -0
  185. data/docs/help/functions/platform.is-win32().html +38 -0
  186. data/docs/help/functions/platform.is-windows().html +35 -0
  187. data/docs/help/functions/project.get-base-directory().html +34 -0
  188. data/docs/help/functions/project.get-buildfile-path().html +34 -0
  189. data/docs/help/functions/project.get-buildfile-uri().html +34 -0
  190. data/docs/help/functions/project.get-default-target().html +34 -0
  191. data/docs/help/functions/project.get-name().html +34 -0
  192. data/docs/help/functions/property.exists(System.String).html +56 -0
  193. data/docs/help/functions/property.get-value(System.String).html +49 -0
  194. data/docs/help/functions/property.is-dynamic(System.String).html +52 -0
  195. data/docs/help/functions/property.is-readonly(System.String).html +52 -0
  196. data/docs/help/functions/string.contains(System.String,System.String).html +55 -0
  197. data/docs/help/functions/string.ends-with(System.String,System.String).html +55 -0
  198. data/docs/help/functions/string.get-length(System.String).html +49 -0
  199. data/docs/help/functions/string.index-of(System.String,System.String).html +57 -0
  200. data/docs/help/functions/string.last-index-of(System.String,System.String).html +57 -0
  201. data/docs/help/functions/string.pad-left(System.String,System.Int32,System.String).html +61 -0
  202. data/docs/help/functions/string.pad-right(System.String,System.Int32,System.String).html +61 -0
  203. data/docs/help/functions/string.replace(System.String,System.String,System.String).html +61 -0
  204. data/docs/help/functions/string.starts-with(System.String,System.String).html +55 -0
  205. data/docs/help/functions/string.substring(System.String,System.Int32,System.Int32).html +64 -0
  206. data/docs/help/functions/string.to-lower(System.String).html +49 -0
  207. data/docs/help/functions/string.to-upper(System.String).html +49 -0
  208. data/docs/help/functions/string.trim(System.String).html +49 -0
  209. data/docs/help/functions/string.trim-end(System.String).html +49 -0
  210. data/docs/help/functions/string.trim-start(System.String).html +49 -0
  211. data/docs/help/functions/target.exists(System.String).html +54 -0
  212. data/docs/help/functions/target.get-current-target().html +36 -0
  213. data/docs/help/functions/target.has-executed(System.String).html +52 -0
  214. data/docs/help/functions/task.exists(System.String).html +50 -0
  215. data/docs/help/functions/task.get-assembly(System.String).html +52 -0
  216. data/docs/help/functions/timespan.from-days(System.Double).html +49 -0
  217. data/docs/help/functions/timespan.from-hours(System.Double).html +49 -0
  218. data/docs/help/functions/timespan.from-milliseconds(System.Double).html +49 -0
  219. data/docs/help/functions/timespan.from-minutes(System.Double).html +49 -0
  220. data/docs/help/functions/timespan.from-seconds(System.Double).html +49 -0
  221. data/docs/help/functions/timespan.from-ticks(System.Int64).html +49 -0
  222. data/docs/help/functions/timespan.get-days(System.TimeSpan).html +55 -0
  223. data/docs/help/functions/timespan.get-hours(System.TimeSpan).html +49 -0
  224. data/docs/help/functions/timespan.get-milliseconds(System.TimeSpan).html +49 -0
  225. data/docs/help/functions/timespan.get-minutes(System.TimeSpan).html +49 -0
  226. data/docs/help/functions/timespan.get-seconds(System.TimeSpan).html +49 -0
  227. data/docs/help/functions/timespan.get-ticks(System.TimeSpan).html +49 -0
  228. data/docs/help/functions/timespan.get-total-days(System.TimeSpan).html +49 -0
  229. data/docs/help/functions/timespan.get-total-hours(System.TimeSpan).html +49 -0
  230. data/docs/help/functions/timespan.get-total-milliseconds(System.TimeSpan).html +49 -0
  231. data/docs/help/functions/timespan.get-total-minutes(System.TimeSpan).html +49 -0
  232. data/docs/help/functions/timespan.get-total-seconds(System.TimeSpan).html +49 -0
  233. data/docs/help/functions/timespan.parse(System.String).html +51 -0
  234. data/docs/help/functions/timespan.to-string(System.TimeSpan).html +49 -0
  235. data/docs/help/functions/version.get-build(System.Version).html +51 -0
  236. data/docs/help/functions/version.get-major(System.Version).html +51 -0
  237. data/docs/help/functions/version.get-minor(System.Version).html +51 -0
  238. data/docs/help/functions/version.get-revision(System.Version).html +51 -0
  239. data/docs/help/functions/version.parse(System.String).html +52 -0
  240. data/docs/help/functions/version.to-string(System.Version).html +51 -0
  241. data/docs/help/fundamentals/buildfiles.html +81 -0
  242. data/docs/help/fundamentals/expressions.html +2127 -0
  243. data/docs/help/fundamentals/functions.html +311 -0
  244. data/docs/help/fundamentals/index.html +35 -0
  245. data/docs/help/fundamentals/listeners.html +318 -0
  246. data/docs/help/fundamentals/projects.html +71 -0
  247. data/docs/help/fundamentals/properties.html +314 -0
  248. data/docs/help/fundamentals/running-nant.html +92 -0
  249. data/docs/help/fundamentals/targets.html +136 -0
  250. data/docs/help/fundamentals/tasks.html +277 -0
  251. data/docs/help/images/arrow.gif +0 -0
  252. data/docs/help/images/bullet.gif +0 -0
  253. data/docs/help/images/logo.gif +0 -0
  254. data/docs/help/index.html +61 -0
  255. data/docs/help/introduction/fog0000000006.html +42 -0
  256. data/docs/help/introduction/fog0000000041.html +39 -0
  257. data/docs/help/introduction/fog0000000042.html +32 -0
  258. data/docs/help/introduction/fog0000000079.html +32 -0
  259. data/docs/help/introduction/fog0000000081.html +35 -0
  260. data/docs/help/introduction/getting-started.gif +0 -0
  261. data/docs/help/introduction/index.html +35 -0
  262. data/docs/help/introduction/installation.html +164 -0
  263. data/docs/help/style.css +213 -0
  264. data/docs/help/tasks/al.html +325 -0
  265. data/docs/help/tasks/asminfo.html +159 -0
  266. data/docs/help/tasks/attrib.html +146 -0
  267. data/docs/help/tasks/available.html +153 -0
  268. data/docs/help/tasks/aximp.html +192 -0
  269. data/docs/help/tasks/call.html +160 -0
  270. data/docs/help/tasks/cl.html +266 -0
  271. data/docs/help/tasks/copy.html +191 -0
  272. data/docs/help/tasks/csc.html +467 -0
  273. data/docs/help/tasks/cvs-changelog.html +263 -0
  274. data/docs/help/tasks/cvs-checkout.html +304 -0
  275. data/docs/help/tasks/cvs-export.html +304 -0
  276. data/docs/help/tasks/cvs-pass.html +97 -0
  277. data/docs/help/tasks/cvs-rtag.html +307 -0
  278. data/docs/help/tasks/cvs-tag.html +307 -0
  279. data/docs/help/tasks/cvs-update.html +310 -0
  280. data/docs/help/tasks/cvs.html +257 -0
  281. data/docs/help/tasks/delay-sign.html +168 -0
  282. data/docs/help/tasks/delete.html +130 -0
  283. data/docs/help/tasks/description.html +77 -0
  284. data/docs/help/tasks/echo.html +148 -0
  285. data/docs/help/tasks/exec.html +247 -0
  286. data/docs/help/tasks/fail.html +97 -0
  287. data/docs/help/tasks/foreach.html +199 -0
  288. data/docs/help/tasks/get.html +168 -0
  289. data/docs/help/tasks/gunzip.html +89 -0
  290. data/docs/help/tasks/if.html +255 -0
  291. data/docs/help/tasks/ifnot.html +164 -0
  292. data/docs/help/tasks/ilasm.html +239 -0
  293. data/docs/help/tasks/ildasm.html +249 -0
  294. data/docs/help/tasks/include.html +92 -0
  295. data/docs/help/tasks/index.html +490 -0
  296. data/docs/help/tasks/jsc.html +315 -0
  297. data/docs/help/tasks/lib.html +201 -0
  298. data/docs/help/tasks/license.html +166 -0
  299. data/docs/help/tasks/link.html +244 -0
  300. data/docs/help/tasks/loadfile.html +135 -0
  301. data/docs/help/tasks/loadtasks.html +119 -0
  302. data/docs/help/tasks/mail.html +166 -0
  303. data/docs/help/tasks/mc.html +167 -0
  304. data/docs/help/tasks/midl.html +276 -0
  305. data/docs/help/tasks/mkdir.html +89 -0
  306. data/docs/help/tasks/move.html +190 -0
  307. data/docs/help/tasks/nant.html +164 -0
  308. data/docs/help/tasks/nantschema.html +96 -0
  309. data/docs/help/tasks/ndoc.html +172 -0
  310. data/docs/help/tasks/nunit.html +132 -0
  311. data/docs/help/tasks/nunit2.html +164 -0
  312. data/docs/help/tasks/property.html +136 -0
  313. data/docs/help/tasks/rc.html +189 -0
  314. data/docs/help/tasks/readregistry.html +111 -0
  315. data/docs/help/tasks/regasm.html +220 -0
  316. data/docs/help/tasks/regex.html +116 -0
  317. data/docs/help/tasks/regsvcs.html +221 -0
  318. data/docs/help/tasks/resgen.html +217 -0
  319. data/docs/help/tasks/script.html +268 -0
  320. data/docs/help/tasks/servicecontroller.html +109 -0
  321. data/docs/help/tasks/setenv.html +223 -0
  322. data/docs/help/tasks/sleep.html +107 -0
  323. data/docs/help/tasks/solution.html +237 -0
  324. data/docs/help/tasks/style.html +193 -0
  325. data/docs/help/tasks/sysinfo.html +193 -0
  326. data/docs/help/tasks/tar.html +119 -0
  327. data/docs/help/tasks/tlbexp.html +160 -0
  328. data/docs/help/tasks/tlbimp.html +249 -0
  329. data/docs/help/tasks/touch.html +120 -0
  330. data/docs/help/tasks/tstamp.html +159 -0
  331. data/docs/help/tasks/untar.html +104 -0
  332. data/docs/help/tasks/unzip.html +104 -0
  333. data/docs/help/tasks/uptodate.html +46 -0
  334. data/docs/help/tasks/vbc.html +478 -0
  335. data/docs/help/tasks/vjc.html +362 -0
  336. data/docs/help/tasks/xmlpeek.html +129 -0
  337. data/docs/help/tasks/xmlpoke.html +141 -0
  338. data/docs/help/tasks/zip.html +145 -0
  339. data/docs/help/types/assemblyfileset.html +280 -0
  340. data/docs/help/types/categories.html +102 -0
  341. data/docs/help/types/credential.html +86 -0
  342. data/docs/help/types/cvsfileset.html +193 -0
  343. data/docs/help/types/dirset.html +61 -0
  344. data/docs/help/types/fileset.html +305 -0
  345. data/docs/help/types/filterchain.html +109 -0
  346. data/docs/help/types/index.html +136 -0
  347. data/docs/help/types/moduleset.html +90 -0
  348. data/docs/help/types/namespaceimports.html +94 -0
  349. data/docs/help/types/path.html +95 -0
  350. data/docs/help/types/patternset.html +223 -0
  351. data/docs/help/types/proxy.html +99 -0
  352. data/docs/help/types/resourcefileset.html +199 -0
  353. data/docs/help/types/tarfileset.html +229 -0
  354. data/docs/help/types/warnaserror.html +102 -0
  355. data/docs/help/types/zipfileset.html +193 -0
  356. data/docs/license.html +81 -0
  357. data/docs/releasenotes.html +3961 -0
  358. data/docs/sdk/NAnt-SDK.chm +0 -0
  359. data/lib/COPYING.txt +340 -0
  360. data/lib/NAnt.CompressionTasks.dll +0 -0
  361. data/lib/NAnt.CompressionTasks.xml +711 -0
  362. data/lib/NAnt.Core.dll +0 -0
  363. data/lib/NAnt.Core.xml +16161 -0
  364. data/lib/NAnt.DotNetTasks.dll +0 -0
  365. data/lib/NAnt.DotNetTasks.xml +5334 -0
  366. data/lib/NAnt.MSNetTasks.dll +0 -0
  367. data/lib/NAnt.MSNetTasks.xml +579 -0
  368. data/lib/NAnt.NUnit.dll +0 -0
  369. data/lib/NAnt.NUnit.xml +353 -0
  370. data/lib/NAnt.NUnit1Tasks.dll +0 -0
  371. data/lib/NAnt.NUnit1Tasks.xml +538 -0
  372. data/lib/NAnt.NUnit2Tasks.dll +0 -0
  373. data/lib/NAnt.NUnit2Tasks.xml +584 -0
  374. data/lib/NAnt.SourceControlTasks.dll +0 -0
  375. data/lib/NAnt.SourceControlTasks.xml +1279 -0
  376. data/lib/NAnt.VSNetTasks.dll +0 -0
  377. data/lib/NAnt.VSNetTasks.xml +3961 -0
  378. data/lib/NAnt.VisualCppTasks.dll +0 -0
  379. data/lib/NAnt.VisualCppTasks.xml +1211 -0
  380. data/lib/NAnt.Win32Tasks.dll +0 -0
  381. data/lib/NAnt.Win32Tasks.xml +690 -0
  382. data/lib/NAnt.exe +0 -0
  383. data/lib/NAnt.exe.config +1996 -0
  384. data/lib/NAnt.xml +78 -0
  385. data/lib/NDoc.Documenter.NAnt.dll +0 -0
  386. data/lib/README.txt +158 -0
  387. data/lib/extensions/common/2.0/NAnt.MSBuild.dll +0 -0
  388. data/lib/extensions/common/2.0/NAnt.MSBuild.xml +36 -0
  389. data/lib/lib/common/1.1/nunit-console-runner.dll +0 -0
  390. data/lib/lib/common/1.1/nunit-console.exe +0 -0
  391. data/lib/lib/common/1.1/nunit.core.dll +0 -0
  392. data/lib/lib/common/1.1/nunit.framework.dll +0 -0
  393. data/lib/lib/common/1.1/nunit.util.dll +0 -0
  394. data/lib/lib/common/2.0/nunit-console-runner.dll +0 -0
  395. data/lib/lib/common/2.0/nunit-console.exe +0 -0
  396. data/lib/lib/common/2.0/nunit.core.dll +0 -0
  397. data/lib/lib/common/2.0/nunit.framework.dll +0 -0
  398. data/lib/lib/common/2.0/nunit.util.dll +0 -0
  399. data/lib/lib/common/neutral/ICSharpCode.SharpCvsLib.Console.dll +0 -0
  400. data/lib/lib/common/neutral/ICSharpCode.SharpCvsLib.dll +0 -0
  401. data/lib/lib/common/neutral/ICSharpCode.SharpZipLib.dll +0 -0
  402. data/lib/lib/common/neutral/NDoc.Core.dll +0 -0
  403. data/lib/lib/common/neutral/NDoc.Documenter.Msdn.dll +0 -0
  404. data/lib/lib/common/neutral/NDoc.ExtendedUI.dll +0 -0
  405. data/lib/lib/common/neutral/NUnitCore.dll +0 -0
  406. data/lib/lib/net/1.0/NDoc.Core.dll +0 -0
  407. data/lib/lib/net/1.0/NDoc.Documenter.Msdn.dll +0 -0
  408. data/lib/lib/net/1.0/NDoc.ExtendedUI.dll +0 -0
  409. data/lib/lib/net/1.0/nunit-console-runner.dll +0 -0
  410. data/lib/lib/net/1.0/nunit-console.exe +0 -0
  411. data/lib/lib/net/1.0/nunit.core.dll +0 -0
  412. data/lib/lib/net/1.0/nunit.framework.dll +0 -0
  413. data/lib/lib/net/1.0/nunit.util.dll +0 -0
  414. data/lib/log4net.dll +0 -0
  415. data/lib/scvs.exe +0 -0
  416. metadata +484 -0
@@ -0,0 +1,311 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta http-equiv="Content-Language" content="en-ca" />
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <meta name="description" content="Functions" />
7
+ <link rel="stylesheet" type="text/css" href="../style.css" />
8
+ <title>NAnt - Functions</title>
9
+ </head>
10
+ <body>
11
+ <table width="100%" border="0" cellspacing="0" cellpadding="2" class="NavBar">
12
+ <tr>
13
+ <td class="NavBar-Cell">
14
+ <a title="NAnt home page" href="http://nant.sourceforge.net"><b>NAnt</b></a> <img src="../images/arrow.gif" alt="-&gt;" width="13" height="9" />
15
+ <a href="../index.html">Help</a> <img alt="-&gt;" src="../images/arrow.gif" /> <a href="index.html">
16
+ Fundamentals</a> <img height="9" alt="-&gt;" src="../images/arrow.gif" width="13" />
17
+ Functions
18
+ </td>
19
+ <td class="NavBar-Cell" align="right">
20
+ v0.90
21
+ </td>
22
+ </tr>
23
+ </table>
24
+ <h1>Functions</h1>
25
+
26
+ <p>NAnt provides a rich set of bulitin functions, that allow you to:</p>
27
+ <ul>
28
+ <li>
29
+ manipulate strings</li>
30
+ <li>
31
+ manipulate date/time values</li>
32
+ <li>
33
+ manipulate path names</li>
34
+ <li>
35
+ read the properties of files/directories</li>
36
+ <li>
37
+ access current build information and more</li>
38
+ <li>
39
+ and more</li>
40
+ </ul>
41
+ <p>For a full list of supported functions, click <a href="../functions/index.html">here</a>.</p>
42
+ <h3><a id="syntax" />Function Call Syntax</h3>
43
+ <p>
44
+ To call functions, use <code>prefix::function-name(argument1, ..., argumentN)</code>
45
+ syntax within expressions. NAnt will (implicitly) try to convert the arguments
46
+ you pass to functions to correct types and will report an error in case of
47
+ failure.
48
+ </p>
49
+ <p>
50
+ For example, assuming you would like to call <code>string::contains('0123456789',1)</code>
51
+ which expects two <code>string</code> parameters, but you want to pass the
52
+ second parameter which is an integer. NAnt would attempt to convert the second
53
+ parameter from <code>int</code> to <code>string</code>, which succeeds and
54
+ function is called as if it was written as <code>string::contains('0123456789','1')</code>.
55
+ </p>
56
+ <p>The following table shows the possible type conversions:</p>
57
+ <div class="table">
58
+ <table>
59
+ <tr>
60
+ <th>
61
+ From Type</th>
62
+ <th>
63
+ To Type</th>
64
+ <th>
65
+ Allowed</th>
66
+ <th>
67
+ Remarks</th>
68
+ </tr>
69
+ <tr>
70
+ <td><code>int</code></td>
71
+ <td><code>string</code></td>
72
+ <td>Yes</td>
73
+ <td>The conversion is always possible.</td>
74
+ </tr>
75
+ <tr>
76
+ <td><code>int</code></td>
77
+ <td><code>double</code></td>
78
+ <td>Yes</td>
79
+ <td>The conversion is always possible.</td>
80
+ </tr>
81
+ <tr>
82
+ <td><code>int</code></td>
83
+ <td><code>boolean</code></td>
84
+ <td>No</td>
85
+ <td>Can be done with the <code>if()</code> conditional operator or simply as <code>(value
86
+ &lt;&gt; 0)</code></td>
87
+ </tr>
88
+ <tr>
89
+ <td><code>int</code></td>
90
+ <td><code>datetime</code></td>
91
+ <td>No</td>
92
+ <td>You cannot convert from <code>int</code> to <code>datetime</code>.</td>
93
+ </tr>
94
+ <tr>
95
+ <td><code>int</code></td>
96
+ <td><code>timespan</code></td>
97
+ <td>No</td>
98
+ <td>You can use the <code>timespan::from-xxx</code> functions to construct a <code>timespan</code> from a given number of days, months, ....</td>
99
+ </tr>
100
+ <tr>
101
+ <th colspan="4">
102
+ </th>
103
+ </tr>
104
+ <tr>
105
+ <td><code>string</code></td>
106
+ <td><code>int</code></td>
107
+ <td>Yes</td>
108
+ <td>If the string doesn't represent an integer value, an error is reported.</td>
109
+ </tr>
110
+ <tr>
111
+ <td><code>string</code></td>
112
+ <td><code>double</code></td>
113
+ <td>Yes</td>
114
+ <td>If the string doesn't represent a floating point value, an error is reported.</td>
115
+ </tr>
116
+ <tr>
117
+ <td><code>string</code></td>
118
+ <td><code>boolean</code></td>
119
+ <td>Yes</td>
120
+ <td>If the string isn't either <code>true</code> or <code>false</code> (case
121
+ insensitive), an error is reported.</td>
122
+ </tr>
123
+ <tr>
124
+ <td><code>string</code></td>
125
+ <td><code>datetime</code></td>
126
+ <td>Yes</td>
127
+ <td>If the string doesn't represent a valid date/time, an error is reported.
128
+ Date/time string format is <code>MM/DD/YYYY&nbsp;HH:MI:SS</code></td>
129
+ </tr>
130
+ <tr>
131
+ <td><code>string</code></td>
132
+ <td><code>timespan</code></td>
133
+ <td>No</td>
134
+ <td>
135
+ You can use <code>timespan::parse</code> to construct a <code>timespan</code>
136
+ from a time indicated by a given string. If the string doesn't represent a valid
137
+ timespan, an error is reported.
138
+ </td>
139
+ </tr>
140
+ <tr>
141
+ <th colspan="4">
142
+ </th>
143
+ </tr>
144
+ <tr>
145
+ <td><code>double</code></td>
146
+ <td><code>int</code></td>
147
+ <td>Yes</td>
148
+ <td>If the string doesn't represent an integer value, an error is reported.</td>
149
+ </tr>
150
+ <tr>
151
+ <td><code>double</code></td>
152
+ <td><code>string</code></td>
153
+ <td>Yes</td>
154
+ <td>The converted string uses dot as a fractional part separator so the result
155
+ looks like <code>0.1234567</code></td>
156
+ </tr>
157
+ <tr>
158
+ <td><code>double</code></td>
159
+ <td><code>boolean</code></td>
160
+ <td>No</td>
161
+ <td>You cannot convert from <code>double</code> to <code>boolean</code>.</td>
162
+ </tr>
163
+ <tr>
164
+ <td><code>double</code></td>
165
+ <td><code>datetime</code></td>
166
+ <td>No</td>
167
+ <td>You cannot convert from <code>double</code> to <code>datetime</code>.</td>
168
+ </tr>
169
+ <tr>
170
+ <td><code>double</code></td>
171
+ <td><code>timespan</code></td>
172
+ <td>No</td>
173
+ <td>You can use the <code>timespan::from-xxx</code> functions to construct a <code>timespan</code> from a given number of days, months, ....</td>
174
+ </tr>
175
+ <tr>
176
+ <th colspan="4">
177
+ </th>
178
+ </tr>
179
+ <tr>
180
+ <td><code>boolean</code></td>
181
+ <td><code>int</code></td>
182
+ <td>No</td>
183
+ <td>You cannot convert from <code>boolean</code> to <code>int</code>. You may
184
+ want to use <code>if(boolvalue,1,0)</code> instead.</td>
185
+ </tr>
186
+ <tr>
187
+ <td><code>boolean</code></td>
188
+ <td><code>string</code></td>
189
+ <td>Yes</td>
190
+ <td>The result is <code>'True'</code> or <code>'False'</code> string.</td>
191
+ </tr>
192
+ <tr>
193
+ <td><code>boolean</code></td>
194
+ <td><code>double</code></td>
195
+ <td>No</td>
196
+ <td>You cannot convert from <code>boolean</code> to <code>double</code>.</td>
197
+ </tr>
198
+ <tr>
199
+ <td><code>boolean</code></td>
200
+ <td><code>datetime</code></td>
201
+ <td>No</td>
202
+ <td>You cannot convert from <code>boolean</code> to <code>datetime</code>.</td>
203
+ </tr>
204
+ <tr>
205
+ <td><code>boolean</code></td>
206
+ <td><code>timespan</code></td>
207
+ <td>No</td>
208
+ <td>You cannot convert from <code>boolean</code> to <code>timespan</code>.</td>
209
+ </tr>
210
+ <tr>
211
+ <th colspan="4">
212
+ </th>
213
+ </tr>
214
+ <tr>
215
+ <td><code>datetime</code></td>
216
+ <td><code>int</code></td>
217
+ <td>No</td>
218
+ <td>You cannot convert from <code>datetime</code> to <code>int</code>.</td>
219
+ </tr>
220
+ <tr>
221
+ <td><code>datetime</code></td>
222
+ <td><code>string</code></td>
223
+ <td>Yes</td>
224
+ <td>The result is a datetime string with the following format: <code>MM/DD/YYYY&nbsp;HH:MI:SS</code></td>
225
+ </tr>
226
+ <tr>
227
+ <td><code>datetime</code></td>
228
+ <td><code>double</code></td>
229
+ <td>No</td>
230
+ <td>You cannot convert from <code>datetime</code> to <code>double</code>.</td>
231
+ </tr>
232
+ <tr>
233
+ <td><code>datetime</code></td>
234
+ <td><code>boolean</code></td>
235
+ <td>No</td>
236
+ <td>You cannot convert from <code>datetime</code> to <code>boolean</code>.</td>
237
+ </tr>
238
+ <tr>
239
+ <td><code>datetime</code></td>
240
+ <td><code>timespan</code></td>
241
+ <td>No</td>
242
+ <td>You can use the value of <code>datetime::get-ticks</code> to construct a <code>timespan</code> using <code>timespan::from-ticks</code>.</td>
243
+ </tr>
244
+ <tr>
245
+ <th colspan="4">
246
+ </th>
247
+ </tr>
248
+ <tr>
249
+ <td><code>timespan</code></td>
250
+ <td><code>int</code></td>
251
+ <td>No</td>
252
+ <td>You cannot convert from <code>timespan</code> to <code>int</code>.</td>
253
+ </tr>
254
+ <tr>
255
+ <td><code>timespan</code></td>
256
+ <td><code>double</code></td>
257
+ <td>No</td>
258
+ <td>You can use <code>timespan::get-ticks</code> to convert from <code>timespan</code> to <code>double</code>.</td>
259
+ </tr>
260
+ <tr>
261
+ <td><code>timespan</code></td>
262
+ <td><code>boolean</code></td>
263
+ <td>No</td>
264
+ <td>You cannot convert from <code>timespan</code> to <code>boolean</code>.</td>
265
+ </tr>
266
+ <tr>
267
+ <td><code>timespan</code></td>
268
+ <td><code>string</code></td>
269
+ <td>No</td>
270
+ <td>You can use <code>timespan::to-string</code> to obtain the string representation of a <code>timespan</code>.</td>
271
+ </tr>
272
+ <tr>
273
+ <td><code>timespan</code></td>
274
+ <td><code>datetime</code></td>
275
+ <td>No</td>
276
+ <td>You cannot convert from <code>timespan</code> to <code>datetime</code>.</td>
277
+ </tr>
278
+ </table>
279
+ </div>
280
+ <h3><a id="custom" />Custom Functions</h3>
281
+ <p>
282
+ Just as you can extend NAnt with your own tasks it is also possible to
283
+ implement your own functions for use in build files.</p>
284
+ <p>Functions can be implemented in any .NET language and are loaded in the same
285
+ manner as tasks. ie either by locating your custom function assembly in the
286
+ NAnt bin directory or using the <code><a href="../tasks/loadtasks.html">&lt;loadtasks&gt;</a></code>
287
+ task. Example C# code for a Hello World function :
288
+ </p>
289
+ <p>Define a custom function using C#.</p>
290
+ <pre class="code">
291
+ [FunctionSet("hello", "Hello")]
292
+ public class HelloFunctions : FunctionSetBase {
293
+ public HelloFunctions(Project project, PropertyDictionary properties) : base(project, properties) {
294
+ }
295
+ [Function("hello-world")]
296
+ public static string HelloWorldfunc() {
297
+ return "Hello World!!";
298
+ }
299
+ }
300
+ </pre>
301
+ <p>and call that function from a build file.</p>
302
+ <pre class="code">
303
+ &lt;echo message="${hello::hello-world()}" /&gt;
304
+ </pre>
305
+ <p>A quick and easy way to develop new functions is to use the <code><a href="../tasks/script.html">
306
+ &lt;script&gt;</a></code> task. This allows you to create and test new functions
307
+ without the overhead of building an external assembly. The <code><a href="../tasks/script.html">
308
+ &lt;script&gt;</a></code> task documentation contains examples of custom function
309
+ definitions.</p>
310
+ </body>
311
+ </html>
@@ -0,0 +1,35 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta http-equiv="Content-Language" content="en-ca" />
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <meta name="description" content="Fundamentals" />
7
+ <link rel="stylesheet" type="text/css" href="../style.css" />
8
+ <title>NAnt - Fundamentals</title>
9
+ </head>
10
+ <body>
11
+ <table width="100%" border="0" cellspacing="0" cellpadding="2" class="NavBar">
12
+ <tr>
13
+ <td class="NavBar-Cell">
14
+ <a title="NAnt home page" href="http://nant.sourceforge.net"><b>NAnt</b></a> <img src="../images/arrow.gif" alt="-&gt;" width="13" height="9" />
15
+ <a href="../index.html">Help</a> <img alt="-&gt;" src="../images/arrow.gif" /> Fundamentals
16
+ </td>
17
+ <td class="NavBar-Cell" align="right">
18
+ v0.90
19
+ </td>
20
+ </tr>
21
+ </table>
22
+ <h1>Fundamentals</h1>
23
+
24
+ <p>The basic concepts needed to understand and use NAnt.</p>
25
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="running-nant.html">Running NAnt</a></p>
26
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="buildfiles.html">Build Files</a></p>
27
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="projects.html">Projects</a></p>
28
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="targets.html">Targets</a></p>
29
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="tasks.html">Tasks</a></p>
30
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="properties.html">Properties</a></p>
31
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="listeners.html">Loggers &amp; Listeners</a></p>
32
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="expressions.html">Expressions</a></p>
33
+ <p><img alt=">" src="../images/bullet.gif" /> <a href="functions.html">Functions</a></p>
34
+ </body>
35
+ </html>
@@ -0,0 +1,318 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <title>NAnt - Loggers &amp; Listeners</title>
5
+ <meta http-equiv="Content-Language" content="en-ca" />
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+ <meta name="description" content="Loggers &amp; Listeners" />
8
+ <link rel="stylesheet" type="text/css" href="../style.css" />
9
+ <style type="text/css">
10
+ .xmlelement {
11
+ color: #660000;
12
+ }
13
+
14
+ .xmlattribute {
15
+ color: red;
16
+ }
17
+
18
+ .xmltext {
19
+ color: blue;
20
+ }
21
+
22
+ .xmlcomment {
23
+ color: green;
24
+ }
25
+
26
+ .xmlcdata {
27
+ color: #FF00CC;
28
+ }
29
+ </style>
30
+ </head>
31
+ <body>
32
+ <table width="100%" border="0" cellspacing="0" cellpadding="2" class="NavBar">
33
+ <tr>
34
+ <td class="NavBar-Cell">
35
+ <a title="NAnt home page" href="http://nant.sourceforge.net"><b>NAnt</b></a> <img src="../images/arrow.gif" alt="->" width="13" height="9" />
36
+ <a href="../index.html">Help</a> <img alt="->" src="../images/arrow.gif"/> <a href="index.html">
37
+ Fundamentals</a> <img height="9" alt="->" src="../images/arrow.gif" width="13" />
38
+ Loggers &amp; Listeners
39
+ </td>
40
+ <td class="NavBar-Cell" align="right">
41
+ v0.90
42
+ </td>
43
+ </tr>
44
+ </table>
45
+ <h1>Loggers &amp; Listeners</h1>
46
+
47
+ <h2>Overview</h2>
48
+ <p>
49
+ NAnt has two related features to allow the build process to be monitored:
50
+ listeners and loggers.
51
+ </p>
52
+ <h3>Listeners</h3>
53
+ <p>
54
+ A listener is alerted of the following events:
55
+ </p>
56
+ <ul>
57
+ <li>
58
+ build started
59
+ </li>
60
+ <li>
61
+ build finished
62
+ </li>
63
+ <li>
64
+ target started
65
+ </li>
66
+ <li>
67
+ target finished
68
+ </li>
69
+ <li>
70
+ task started
71
+ </li>
72
+ <li>
73
+ task finished
74
+ </li>
75
+ <li>
76
+ message logged</li>
77
+ </ul>
78
+ <h3>Loggers</h3>
79
+ <p>
80
+ Loggers extend the capabilities of listeners and add the following features:
81
+ </p>
82
+ <ul>
83
+ <li>
84
+ Receives a handle to the standard output and error print streams and therefore
85
+ can log information to the console or the <code>-logfile</code>
86
+ specified file.
87
+ </li>
88
+ <li>
89
+ Logging level (<code>-quiet</code>, <code>-verbose</code>, <code>-debug</code>)
90
+ aware.
91
+ </li>
92
+ <li>
93
+ Emacs-mode aware. This still needs to be implemented.
94
+ </li>
95
+ </ul>
96
+ <h2>Built-in Listeners/Loggers</h2>
97
+ <div class="table">
98
+ <table>
99
+ <colgroup>
100
+ <col />
101
+ <col />
102
+ <col style="TEXT-ALIGN: center" />
103
+ </colgroup>
104
+ <tbody>
105
+ <tr>
106
+ <th>
107
+ Class</th>
108
+ <th>
109
+ Description</th>
110
+ <th>
111
+ Type</th>
112
+ </tr>
113
+ <tr>
114
+ <td><a href="#DefaultLogger">NAnt.Core.DefaultLogger</a></td>
115
+ <td>
116
+ The logger used implicitly unless overridden with the <code>-logger</code> command-line
117
+ switch.
118
+ </td>
119
+ <td>IBuildLogger</td>
120
+ </tr>
121
+ <tr>
122
+ <td><a href="#MailLogger">NAnt.Core.MailLogger</a></td>
123
+ <td>
124
+ Extends <a href="#DefaultLogger">DefaultLogger</a> such that output is still
125
+ generated the same, and when the build is finished an e-mail can be sent.
126
+ </td>
127
+ <td>IBuildLogger</td>
128
+ </tr>
129
+ <tr>
130
+ <td><a href="#XmlLogger">NAnt.Core.XmlLogger</a></td>
131
+ <td>
132
+ Generates output in XML format.
133
+ </td>
134
+ <td>IBuildLogger</td>
135
+ </tr>
136
+ </tbody>
137
+ </table>
138
+ </div>
139
+ <h3><a id="DefaultLogger" />DefaultLogger</h3>
140
+ <p>Simply run NAnt normally, or:</p>
141
+ <blockquote>
142
+ <p><code>NAnt.exe -logger:NAnt.Core.DefaultLogger</code></p>
143
+ </blockquote>
144
+ <h3><a id="MailLogger" />MailLogger</h3>
145
+ <p>
146
+ The MailLogger captures all output logged through DefaultLogger (standard NAnt
147
+ output) and will send success and failure messages to unique e-mail lists, with
148
+ control for turning off success or failure messages individually.
149
+ </p>
150
+ <p>Properties controlling the operation of MailLogger are:</p>
151
+ <div class="table">
152
+ <table>
153
+ <colgroup>
154
+ <col />
155
+ <col />
156
+ <col />
157
+ </colgroup>
158
+ <tbody>
159
+ <tr>
160
+ <th>
161
+ Property</th>
162
+ <th>
163
+ Description</th>
164
+ <th>
165
+ Required</th>
166
+ </tr>
167
+ <tr>
168
+ <td>MailLogger.mailhost</td>
169
+ <td>The SMTP server to use.</td>
170
+ <td>No, default is "localhost"</td>
171
+ </tr>
172
+ <tr>
173
+ <td>MailLogger.from</td>
174
+ <td>The address of the e-mail sender.</td>
175
+ <td>Yes, if mail needs to be sent.</td>
176
+ </tr>
177
+ <tr>
178
+ <td>MailLogger.failure.notify</td>
179
+ <td>Send build failure e-mails ?</td>
180
+ <td>No, default is "true".</td>
181
+ </tr>
182
+ <tr>
183
+ <td>MailLogger.success.notify</td>
184
+ <td>Send build success e-mails ?</td>
185
+ <td>No, default is "true".</td>
186
+ </tr>
187
+ <tr>
188
+ <td>MailLogger.failure.to</td>
189
+ <td>The address to send build failure messages to.</td>
190
+ <td>Yes, if failure mail is to be sent.</td>
191
+ </tr>
192
+ <tr>
193
+ <td>MailLogger.success.to</td>
194
+ <td>The address to send build success messages to.</td>
195
+ <td>Yes, if success mail is to be sent.</td>
196
+ </tr>
197
+ <tr>
198
+ <td>MailLogger.failure.subject</td>
199
+ <td>The subject of build failure messages.</td>
200
+ <td>No, default is "Build Failure".</td>
201
+ </tr>
202
+ <tr>
203
+ <td>MailLogger.success.subject</td>
204
+ <td>The subject of build success messages.</td>
205
+ <td>No, default is "Build Success".</td>
206
+ </tr>
207
+ <tr>
208
+ <td>MailLogger.failure.attachments</td>
209
+ <td>The ID of a fileset representing a set of files to attach when the build fails.</td>
210
+ <td>No.</td>
211
+ </tr>
212
+ <tr>
213
+ <td>MailLogger.success.attachments</td>
214
+ <td>The ID of a fileset representing a set of files to attach when the build is successful.</td>
215
+ <td>No.</td>
216
+ </tr>
217
+ <tr>
218
+ <td>MailLogger.body.encoding</td>
219
+ <td>The encoding type of the body of the e-mail message.</td>
220
+ <td>No, default is system's ANSI code page.</td>
221
+ </tr>
222
+ <tr>
223
+ <td>MailLogger.smtp.username<sup>1</sup></td>
224
+ <td>The name of the user to login to the SMTP server.</td>
225
+ <td>No.</td>
226
+ </tr>
227
+ <tr>
228
+ <td>MailLogger.smtp.password<sup>1</sup></td>
229
+ <td>The password of the specified user.</td>
230
+ <td>No.</td>
231
+ </tr>
232
+ <tr>
233
+ <td>MailLogger.smtp.enablessl<sup>1</sup></td>
234
+ <td>Specifies whether to use SSL to encrypt the connection.</td>
235
+ <td>No, default is "false".</td>
236
+ </tr>
237
+ <tr>
238
+ <td>MailLogger.smtp.port<sup>1</sup></td>
239
+ <td>The SMTP server port to connect to.</td>
240
+ <td>No, default is "25".</td>
241
+ </tr>
242
+ </tbody>
243
+ </table>
244
+ <p><sup>1</sup> Only available when NAnt is built targeting .NET Framework 1.1 (or equivalent) or higher.</p>
245
+ </div>
246
+ <p>Usage:</p>
247
+ <blockquote>
248
+ <p><code>NAnt.exe -logger:NAnt.Core.MailLogger</code></p>
249
+ </blockquote>
250
+ <p>Example:</p>
251
+ <pre class="code">
252
+ <span class="xmltext">&lt;</span><span class="xmlelement">project</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger Test"</span> <span class="xmlattribute">default</span><span class="xmltext">="build"&gt;</span>
253
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.mailhost"</span> <span class="xmlattribute">value</span><span class="xmltext">="smtp.wherever.be" /&gt;</span>
254
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.from"</span> <span class="xmlattribute">value</span><span class="xmltext">="me@telenet.be" /&gt;</span>
255
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.failure.notify"</span> <span class="xmlattribute">value</span><span class="xmltext">="true" /&gt;</span>
256
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.success.notify"</span> <span class="xmlattribute">value</span><span class="xmltext">="true" /&gt;</span>
257
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.failure.to"</span> <span class="xmlattribute">value</span><span class="xmltext">="support@home.be" /&gt;</span>
258
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.success.to"</span> <span class="xmlattribute">value</span><span class="xmltext">="support@home.be" /&gt;</span>
259
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.failure.subject"</span> <span class="xmlattribute">value</span><span class="xmltext">="Nightly build failure !" /&gt;</span>
260
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.success.subject"</span> <span class="xmlattribute">value</span><span class="xmltext">="Nightly build successful" /&gt;</span>
261
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.failure.attachments"</span> <span class="xmlattribute">value</span><span class="xmltext">="MailLogger.failure.files" /&gt;</span>
262
+ <span class="xmltext">&lt;</span><span class="xmlelement">property</span> <span class="xmlattribute">name</span><span class="xmltext">="MailLogger.success.attachments"</span> <span class="xmlattribute">value</span><span class="xmltext">="MailLogger.success.files" /&gt;</span>
263
+
264
+ <span class="xmlcomment">&lt;!-- set of files to attach when build fails --&gt;</span>
265
+ <span class="xmltext">&lt;</span><span class="xmlelement">fileset</span> <span class="xmlattribute">id</span><span class="xmltext">="MailLogger.failure.files"&gt;</span>
266
+ <span class="xmltext">&lt;</span><span class="xmlelement">include</span> <span class="xmlattribute">name</span><span class="xmltext">="dump.log" /&gt;</span>
267
+ <span class="xmltext">&lt;</span><span class="xmlelement">include</span> <span class="xmlattribute">name</span><span class="xmltext">="trace.txt" /&gt;</span>
268
+ <span class="xmltext">&lt;/</span><span class="xmlelement">fileset</span><span class="xmltext">&gt;</span>
269
+
270
+ <span class="xmlcomment">&lt;!-- set of files to attach when build is successful --&gt;</span>
271
+ <span class="xmltext">&lt;</span><span class="xmlelement">fileset</span> <span class="xmlattribute">id</span><span class="xmltext">="MailLogger.success.files"&gt;</span>
272
+ <span class="xmltext">&lt;</span><span class="xmlelement">include</span> <span class="xmlattribute">name</span><span class="xmltext">="trace.txt" /&gt;</span>
273
+ <span class="xmltext">&lt;/</span><span class="xmlelement">fileset</span><span class="xmltext">&gt;</span>
274
+
275
+ <span class="xmltext">&lt;</span><span class="xmlelement">target</span> <span class="xmlattribute">name</span><span class="xmltext">="build"&gt;</span>
276
+ <span class="xmltext">&lt;</span><span class="xmlelement">echo</span> <span class="xmlattribute">message</span><span class="xmltext">=&quot;Starting build&quot; /&gt;</span>
277
+ ....
278
+ <span class="xmltext">&lt;</span><span class="xmlelement">echo</span> <span class="xmlattribute">message</span><span class="xmltext">=&quot;Finished build&quot; /&gt;</span>
279
+ <span class="xmltext">&lt;/</span><span class="xmlelement">target</span><span class="xmltext">&gt;</span>
280
+ <span class="xmltext">&lt;/</span><span class="xmlelement">project</span><span class="xmltext">&gt;</span>
281
+ </pre>
282
+ <h3><a id="XmlLogger" />XmlLogger</h3>
283
+ <p>
284
+ Writes all build information out to an XML file named <code>log.xml</code>, or
285
+ the value of the <code>XmlLogger.file</code> property if present, when used as
286
+ a listener. When used as a logger, it writes all output to either the console
287
+ or to the value of <code>-logfile</code>.
288
+ </p>
289
+ <p>
290
+ Whether used as a listener or logger, the output is not generated until the
291
+ build is complete.
292
+ </p>
293
+ <p>Usage:</p>
294
+ <blockquote>
295
+ <p>
296
+ <code>NAnt.exe -listener:NAnt.Core.XmlLogger</code><br />
297
+ <code>NAnt.exe -logger:NAnt.Core.XmlLogger -logfile:buildlog.xml</code>
298
+ </p>
299
+ </blockquote>
300
+ <p>Example:</p>
301
+ <pre class="code">
302
+ <span class="xmltext">&lt;</span><span class="xmlelement">buildresults</span> <span class="xmlattribute">project</span><span class="xmltext">="test"&gt;</span>
303
+ <span class="xmltext">&lt;</span><span class="xmlelement">message</span> <span class="xmlattribute">level</span><span class="xmltext">="Info"&gt;&lt;![</span><span class="xmlcdata">CDATA[Buildfile: file:///D:/nant-test/xmlpeek/default.build]]</span><span class="xmltext">&gt;&lt;/</span><span class="xmlelement">message</span><span class="xmltext">&gt;</span>
304
+ <span class="xmltext">&lt;</span><span class="xmlelement">message</span> <span class="xmlattribute">level</span><span class="xmltext">="Info"&gt;&lt;![</span><span class="xmlcdata">CDATA[Target framework: Microsoft .NET Framework 1.1]]</span><span class="xmltext">&gt;&lt;/</span><span class="xmlelement">message</span><span class="xmltext">&gt;</span>
305
+ <span class="xmltext">&lt;</span><span class="xmlelement">message</span> <span class="xmlattribute">level</span><span class="xmltext">="Info"&gt;&lt;![</span><span class="xmlcdata">CDATA[Target<span class="xmltext">(</span>s<span class="xmltext">)</span> specified: build]]</span><span class="xmltext">&gt;&lt;/</span><span class="xmlelement">message</span><span class="xmltext">&gt;</span>
306
+ <span class="xmltext">&lt;</span><span class="xmlelement">target</span> <span class="xmlattribute">name</span><span class="xmltext">="build"&gt;</span>
307
+ <span class="xmltext">&lt;</span><span class="xmlelement">task</span> <span class="xmlattribute">name</span><span class="xmltext">="xmlpeek"&gt;</span>
308
+ <span class="xmltext">&lt;</span><span class="xmlelement">message</span> <span class="xmlattribute">level</span><span class="xmltext">="Info"&gt;&lt;![</span><span class="xmlcdata">CDATA[Peeking at <span class="xmltext">'D:\nant-test\xmlpeek\input.xml'</span> with XPath expression <span class="xmltext">'x:parameters/x:param'</span>.]]</span><span class="xmltext">&gt;&lt;/</span><span class="xmlelement">message</span><span class="xmltext">&gt;</span>
309
+ <span class="xmltext">&lt;</span><span class="xmlelement">message</span> <span class="xmlattribute">level</span><span class="xmltext">="Info"&gt;&lt;![</span><span class="xmlcdata">CDATA[Found <span class="xmltext">'1'</span> nodes with the XPath expression <span class="xmltext">'x:parameters/x:param'</span>.]]</span><span class="xmltext">&gt;&lt;/</span><span class="xmlelement">message</span><span class="xmltext">&gt;</span>
310
+ <span class="xmltext">&lt;</span><span class="xmlelement">duration</span><span class="xmltext">&gt;</span><span style="color: black;">15.625</span><span class="xmltext">&lt;/</span><span class="xmlelement">duration</span><span class="xmltext">&gt;</span>
311
+ <span class="xmltext">&lt;/</span><span class="xmlelement">task</span><span class="xmltext">&gt;</span>
312
+ <span class="xmltext">&lt;</span><span class="xmlelement">duration</span><span class="xmltext">&gt;</span><span style="color: black;">15.625</span><span class="xmltext">&lt;/</span><span class="xmlelement">duration</span><span class="xmltext">&gt;</span>
313
+ <span class="xmltext">&lt;/</span><span class="xmlelement">target</span><span class="xmltext">&gt;</span>
314
+ <span class="xmltext">&lt;</span><span class="xmlelement">duration</span><span class="xmltext">&gt;</span><span style="color: black;">31.25</span><span class="xmltext">&lt;/</span><span class="xmlelement">duration</span><span class="xmltext">&gt;</span>
315
+ <span class="xmltext">&lt;/</span><span class="xmlelement">buildresults</span><span class="xmltext">&gt;</span>
316
+ </pre>
317
+ </body>
318
+ </html>