﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Ayende Rahien commented on ÜberProf and Continuous Integration</title><description>Please check:
  
[ayende.com/.../...re-programmatic-integration.aspx](http://ayende.com/Blog/archive/2009/12/13/uumlberprof-new-feature-programmatic-integration.aspx)</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment11</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment11</guid><pubDate>Mon, 14 Dec 2009 10:58:43 GMT</pubDate></item><item><title>gunteman commented on ÜberProf and Continuous Integration</title><description>Does it have to be async in all scenarios?
  
  
In an integration test, specifically designed to check for unwanted query behavior, I wouldn't mind something like...
  
  
using (var context=ProfilingContext.SetupFor.....)
  
{
  
   //Do stuff
  
   Assert.That(context.NumberOfQueries,Is.EqualTo(5));
  
}
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment10</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment10</guid><pubDate>Tue, 08 Dec 2009 23:12:56 GMT</pubDate></item><item><title>Ayende Rahien commented on ÜberProf and Continuous Integration</title><description>Frans,
  
The main problem is that the nature of the work is async by nature, you have to create a process that starts listening, doing this as a console app is tricky.
  
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment9</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment9</guid><pubDate>Sun, 06 Dec 2009 10:00:30 GMT</pubDate></item><item><title>Frans Bouma commented on ÜberProf and Continuous Integration</title><description>attaching to the parent console is indeed the only way to do it, but it does have side issues (like it's just emitting output to the console, the user can still interact with the console as if nothing happens, like entering commands and pressing enter, which made me decide to go for a console variant of my .exe instead of use the hack). Isn't it easy to do btw? your main logic is in a centralized dll anyway, not in the ui, so using a console variant isn't that hard and avoids the mess with attaching to a parent console. 
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment8</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment8</guid><pubDate>Sat, 05 Dec 2009 11:16:04 GMT</pubDate></item><item><title>Jeff Brown commented on ÜberProf and Continuous Integration</title><description>Sounds like it would be worth adding a /Wait argument to be used alongside shutdown.  You might need to build a separate nhprof.console.exe application for that though, depending on how the exe is configured.
  
  
(I hope the nhprof startup isn't also asynchronous since that will create a potential for race conditions...)
  
  
The behavior that @Krzysztof wants could be provided by a separate report processing utility that has the option of returning different exit codes based on observed results.  Alternately it would be useful to have some MSBuild or NAnt integration that returns statistics as optional output properties for subsequent handling in the build script.
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment7</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment7</guid><pubDate>Thu, 03 Dec 2009 19:27:31 GMT</pubDate></item><item><title>Ayende Rahien commented on ÜberProf and Continuous Integration</title><description>Ted,
  
It _isn't_ possible.
  
The issue relates to how windows decides how to execute, each EXE has a flag in its header that decide how this is done.
  
What I did was hook into the console subsystem and attach myself to the parent console. Not ideal, but it works.
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment6</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment6</guid><pubDate>Thu, 03 Dec 2009 19:07:34 GMT</pubDate></item><item><title>Ted Elliott commented on ÜberProf and Continuous Integration</title><description>Just curious, how did you set up your project to perform as both a WPF or WinForm app as well as a console app?  I've been wanting to do the same thing, but from what I've read it's almost impossible to do correctly in .NET.
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment5</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment5</guid><pubDate>Thu, 03 Dec 2009 18:55:09 GMT</pubDate></item><item><title>Ayende Rahien commented on ÜberProf and Continuous Integration</title><description>Krzysztof,
  
No, I explicitly do not want to do that. There is too much subjectivity in there.
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment4</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment4</guid><pubDate>Thu, 03 Dec 2009 18:41:20 GMT</pubDate></item><item><title>Krzysztof Kozmic commented on ÜberProf and Continuous Integration</title><description>ah ok.
  
  
I was thinking rather along the lines of non-zero return code
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment3</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment3</guid><pubDate>Thu, 03 Dec 2009 18:36:16 GMT</pubDate></item><item><title>Ayende Rahien commented on ÜberProf and Continuous Integration</title><description>Krzysztof,
  
You get the XML, you can read it and decide to abort if the profiler has alerts to report.
  
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment2</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment2</guid><pubDate>Thu, 03 Dec 2009 18:35:23 GMT</pubDate></item><item><title>Krzysztof Kozmic commented on ÜberProf and Continuous Integration</title><description>is there a way to fail a build if XProf finds some issues were introduced?
</description><link>http://ayende.com/4311/uberprof-and-continuous-integration#comment1</link><guid>http://ayende.com/4311/uberprof-and-continuous-integration#comment1</guid><pubDate>Thu, 03 Dec 2009 18:31:51 GMT</pubDate></item></channel></rss>