This repository has been archived by the owner on Mar 31, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 9
/
History.txt
288 lines (197 loc) · 13.3 KB
/
History.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
=== 0.2.0 / 2010-04
BREAKING CHANGES:
* Reworked RDNPackageTask (and removed HarvestWebApplicationTask and HarvestWebDeploymentTask as a consequence)
RDNPackageTask can now take an array of items to pull into the package that is created.
This allows you to create a package more flexibly. See spec/RakeDotNet/build/Rakefile.rb for examples.
This also means that the harvest tasks are no longer necessary (though HarvestOutputTask still is; that has a different purpose)
* GH-16 - make dependencies happen for non-CI builds only, and ci_dependencies happen for CI-builds
In so doing, renamed "deps" parameter to "dependencies"
* Removed the RakeDotNet module (which was based on a misunderstanding on my part)
* Removed the requirement for VERBOSE=true at the command line in favour of the built-in -v flag for verbose=yes
NEW:
NUnit (via NUnitTask)
GH-1 NUnitTask and NUnitCmd (based on NUnit 2.5.3). Support for include, exclude, and xml command-line switches.
NCover
* will report Symbol, Branch, Method coverage, and Cyclomatic Complexity Avg & Max
* for each coverage file
* overall, from the merged coverage files, if NCover Complete is used
so that TeamCity can chart this data. (It needs the Summary report to run for this)
Configure TeamCity charts:
in TeamCityDataDir/config/main-config.xml:
<graph title="NCover" seriesTitle="Coverage %">
<valueType key="NCoverMergedTotal" title="Total" />
</graph>
in TeamCityDataDir/config/ProjectName/plugin-settings.xml:
<graph title="NCover (project)" seriesTitle="Coverage %">
<valueType key="NCoverMergedTotal" title="Total" buildTypeId="bt2" /> <!-- in this file, you need a buildTypeId setting for the series to show -->
</graph>
* will now merge all coverage files into a single one (if you have the NCover Complete edition)
* make it possible to pass in test-runner options with the :runner_options parameter
* added ability to exclude files from coverage (NCover v3 Complete edition only) and ignored *.designer.cs by default (since those are auto-generated)
* added trend output via ncover.console
* support writing NCover3 coverage data to TeamCity v5 as service message
NDepend support - GH-3 (NDependTask)
* supports specifying project file and output directory, and file-patterns to match DLLs to run analysis against
requires placing a `{PRODUCT_NAME}.ndepend.xml.erb` into the `PRODUCT_ROOT` - get a sample from `spec\RakeDotNet\RakeDotNet.ndepend.xml.erb` and if necessary, add/remove framework assemblies
* console will publish CQL-constraint violation counts to TeamCity, so that custom charts can be rendered to show trends.
Configure TeamCity charts:
in TeamCityDataDir/config/main-config.xml:
<graph title="NDepend" seriesTitle="CQL Constraint Violation">
<valueType key="NDependCQLTotal" title="Total" />
</graph>
in TeamCityDataDir/config/ProjectName/plugin-settings.xml:
<graph title="NDepend (project)" seriesTitle="CQL Constraint Violation">
<valueType key="NDependCQLTotal" title="Total" buildTypeId="bt2" /> <!-- in this file, you need a buildTypeId setting for the series to show -->
</graph>
Crap4n support (Crap4nTask)
(http://code.google.com/p/crap4n/) (crap4n trunk required)
Continuous Integration
Set up at http://teamcity.codebetter.com/project.html?projectId=project72
This builds the gem, as well as runs integration tests against the demo project within `spec/RakeDotNet`
Miscellaneous
* Support harvesting from web-deployment projects
* MsBuild - Support for building web-deployment projects
* AssemblyInfo now supports generating to websites' App_Code directory
* The test-tasks now create a task called after themselves (eg :xunit and :nunit) but there's now also a :test task to abstract the choice of test framework in the build script
* Update documentation to include how to build
* Update to allow use with Hoe 2.4.0 when packaging gem (latest)
* 7-zip x86 installer does not name the 7z executable 7za like the x64 one does. Therefore the test I was using to pick which executable won't work.
* 7-zip is now looked for in 3RD_PARTY/7-zip instead of 3RD_PARTY/7zip because this is how the installer installs it; no need to rename the directory if pushing into source-control.
=== 0.1.20 / 2009-11-30
FIX: NCover reports - Typo for handling complete version command line
FIX: Versioner - takes svn revision from the product-root, not the build's working directory
CHANGE: Package - add a property (turned on by default) to say whether to add that particular package task to the main :package rake-task.
=== 0.1.19 / 2009-11-26
CHANGE: NCover - Don't allow NCover to profile IIS by default-auto-detection
=== 0.1.18 / 2009-11-26
CHANGE: NCover - support regular license-holders by removing automatic use of features that require complete license
ADD: NCover - add ability to profile IIS
CHANGE: Remove install dependencies on rcov, rspec but update documentation with build-from-source
ADD: Xunit - can now run eg `rake xunit['xt-Foo.Unit.Tests']` to run xunit against Foo.Unit.Tests project, instead of needing to run `rake xunit['out/reports/Foo.Unit.Tests/']`
=== 0.1.17 / 2009-11-10
FIX: Typos :-(
=== 0.1.16 / 2009-11-10
BREAKING CHANGE: Moved all classes that were in the Rake module, into the RakeDotNet module. So, change your Rakefile from (eg)
`Rake::AssemblyInfoTask.new
to
`RakeDotNet:AssemblyInfoTask.new
BREAKING CHANGE: Renamed all command-line wrappers to end with Cmd indicating inheritance from Cmd base class which does path inference
CHANGE: Addition of unit-tests via spec
CHANGE: Added unit-test report to the gem
CHANGE: Added rcov reports to the gem
CHANGE: Made it the RDNPackageTask's responsibility to name directories and packages with the configuration & version information, if configured to. This means that intermediate-build-output is put into directories without this information in the naming.
NEW: sqlcmd.exe wrapper (SQL client tools' execute-sql-command from command-line)
NEW: bcp.exe wrapper (SQL client tools' bulk copy)
NEW: IIS7 appcmd.exe wrapper (control IIS7 from the command line)
=== 0.1.15 / 2009-09-23
CHANGE: Xunit.NET - cope with v1.5 release which packages an x86 console runner as well as x64 one, in combination with wanting to run x86 one if it exists because of WatiN seeming to not be happy running under x64.
=== 0.1.14 / 2009-09-08
FIX: Versioner: Replace the RDNVERSION constant with calls to Versioner.new.get
CHANGE: Added version task for convenience
=== 0.1.13 / 2009-09-01
FIX: Versioner: Need to make the version.txt file a file-task, so assembly_info can depend on it.
=== 0.1.12 / 2009-08-29
FIX: Versioner: Cache the version number to a file, so CI can pull/push it and maintain same version number throughout CI pipeline stages
=== 0.1.9 / 2009-07-07
NEW: MsBuild: Can now take arbitrary properties list
NEW: MsBuild: Default to treating warnings as errors, as stringently as possible
=== 0.1.8 / 2009-06-30
FIX: When TeamCity build-configs are out-of-sync, number-wise, we cannot rely on RDNVERSION to be a sensible default.
=== 0.1.7 / 2009-06-30
(Messed up release)
=== 0.1.6 / 2009-06-30
* FIX: Initialise bin_dir to correct defaults
=== 0.1.5 / 2009-06-30
* NEW: RDNPackageTask - generate a named task per package so they can be built individually
* NEW: SevenZip - wrapper for extracting an archive
* CHANGE: SevenZip - wrapper is more useful ;-)
* CHANGE: Harvesters - harvest dumps output into a config-version named directory now
(adjusted demo-project to match)
=== 0.1.4 / 2009-06-23
* FIX: FxCop - support for running against .exe files instead of just DLLs. Exclude *.vshost.exe by default
=== 0.1.3 / 2009-06-23
* NEW: MSBuild - support for building VB.NET and WiX projects
* NEW: AssemblyInfo - support for generating AssemblyInfo.vb into {project}/My Project/ (which I hope is the by-convention place)
=== 0.1.2 / 2009
* NEW: NCover: Generate the full-coverage report
* FIX: NCover: Exclude-assemblies can be an array
* CHANGE: NCover: Ignore ISymWrapper assembly by default; seems to be an NCover artefact
=== 0.1.1 / 2009-05-20
* NEW: Add FxCop -> TeamCity code-inspections reporting via TeamCity's service-messages feature
* CHANGE: MsBuild; use constants rather than hard-codings for verbosity of output and source-directory
* FIX: If BUILD_NUMBER environment variable is not a number, use 0 (since only numbers are valid to the AssemblyFileVersion and AssemblyVersion attributes)
=== 0.1.0 / 2009-05-08
* NEW: Add the ability for ncover.reporting to generate more than one report at a time
=== 0.0.12 / 2009-05-01
* FIX: Automatically create {project}/Properties directories when generating AssemblyInfo.cs files (git does not version empty directories)
=== 0.0.11 / 2009-04-30
* FIX: Detect processor architecture from environment variable rather than require user to figure it out and pass it in.
=== 0.0.10 / 2009-04-30
* SLAP: Forgot to update release notes before releasing.
=== 0.0.9 / 2009-04-30
* NEW: If VERBOSE=true is passed on the command line, command-line calls will get echoed before they're run (otherwise, they get ellipsis'd by rake's error tracing, which doesn't let one see the arguments)
* NEW: clobber_fxcop will kill off the fxcop report in isolation
* FIX: make get_tools_dir correctly return the path instead of just think about it.
* FIX: Implement working-directory on ncover so it executes from the same location as the DLLs it's using a tool to profile
=== 0.0.8 / 2009-?
* CHANGE: Eliminate the need to pass stuff to AssemblyInfoTask when it can just use the defaults ... by default.
* FIX: Bug with harvesting when output contains directories
* FIX: Test-runner now executes from within the same directory as the DLL(s) containing tests that it's running through.
=== 0.0.7 / 2009-04-15
* CHANGE: Adjust TOOLS_DIR initialisation so it looks for a shared 3rdparty folder at the same level as the product folder first, then it looks for a 3rdparty folder inside of the product folder.
* CHANGE: Adjust the Demo's Rakefile to make FxCop ignore assemblies with "Tests" in their filename.
=== 0.0.6 / 2009-04-06
* Move source control to github at http://github.com/petemounce/rake-dotnet
* Change format of readme to markdown for prettiness on the repo homepage
* FIX: YYYYMMDD is invalid for file/assembly-version attribute; use '0' instead in non-svn source-control case.
* FIX: Fix harvesting a web-application when it's not under svn source-control
=== 0.0.5 / 2009-04-03
* Support non-svn version-control. In this case, write today's date as YYYYMMDD into revision number of assembly version.
* Write ncover reports into out/reports/ncover, since there may be many, and there are some asset files too.
* Generate the {project}/Properties/AssemblyInfo.cs in place rather than making users add a link to the common one (friction)
* Generate the {project}/Properties/AssemblyInfo.cs from either a .template next-door, or the common template in {src_dir}
* Change the name of the AssemblyInfo template because if it ends in .cs msbuild assumes it should be compiled, which will then fail.
=== 0.0.4 / 2009-03-31
* Gem publishing snafu on my part.
=== 0.0.3 / 2009-03-30
* Bugfix release
* SevenZip now uses the 7za command-line archiver by default.
* Can now pass in VERBOSE=true to listen to cp/mv logging-to-console on file operations.
* Correctly package web-applications now.
* Copy, don't move, when packaging.
=== 0.0.2 / 2009-03-21
* Several major enhancements
* Versioner
* Figure out a 4-token version number, major.minor.build.revision, taking:
* major.minor from version.template.txt
* build from ENV['BUILD_NUMBER'] (used by TeamCity)
* revision from svn working copy that the build is occurring in
* AssemblyInfoTask
* Create AssemblyInfo.cs file(s) based on supplied AssemblyInfo.template.cs file(s)
* Perform token replacement within AssemblyInfo.cs to watermark assemblies with:
* major.minor.build.revision version number (from RDNVERSION)
* Product Name (from PRODUCT_NAME)
* Company Name (from COMPANY_NAME)
* Build configuration (from CONFIGURATION)
* MsBuildTask
* Perform compilation of msbuild project files
* HarvestOutputTask
* Harvest output of projects to a directory to act as main dumping ground to then zip up for build-artifacts to enable CI-parallelisation later
* HarvestWebApplicationTask
* Harvest web-applications (greedily) to a directory
* XUnitTask
* Run xunit.net tests from assemblies with *Tests* in filename
* FxCopTask
* Run fxcop against assemblies whose filenames contain PRODUCT_NAME
* NCoverTask
* Run ncover.console against assemblies to generate coverage data
* Run ncover.reporting against coverage data to generate coverage reports
* Limited to simple case in this release
* RDNPackageTask
* Package a directory as a zip file, named like {name}-{configuration}-v{version}.zip
* Uses 7-zip, instead of rake's built-in PackageTask, which would have required taking a dependency on cygwin (7-zip is lighter)
* A demo solution as an example of usage
* See http://my-svn.assembla.com/svn/nrws/trunk/rake_dotnet/lib/Demo
=== 0.0.1 / 2009-03-09
* 1 major enhancement
* Birthday!