26 de Marzo 2004

NAnt 0.8.4 Help PDF

Alguien a empaquetado la ayuda de NAnt 08.4, incluidas las paginas del wiki. http://danpupek.homeip.net/tools/nAnt-Help.pdf

Posted by rido at 8:48 PM | Comments (7)

26 de Enero 2004

NAnt.Versioning.Tasks

Hace algunos posts, comentaba la falta de NAnt de tareas para
automatizar el mantenimiento de versiones.

En la versión 0.8.4 de NAnt y NAnt.Contrib tenemos las tareas:
version que actualiza un fichero "build.number" y
asminfo que crea un fichero AssemblyInfo.cs basándonse en la información parametrizable.

Sin embargo, no he encontrado la manera de :

  • Leer la version directamente desde AssemblyInfo.cs

  • Actualizar directamente AssemblyInfo.cs

Mi primera aproximación fue escribir unas tareas de NAnt que mediante
   script lee la versión actual, y usando
   exec llamaba a UpdateVersion.exe.

Como creo que estas tareas son necesarias, las he empaquetado en el Assembly: NAnt.Versioning.Tasks

Que teneis disponible en RidoCode Workspace (buscar el Releases)

Posted by rido at 2:54 AM | Comments (19)

23 de Enero 2004

Framework -> SeedWork

La palabra framework es una de tantas palabras sobrecargadas.

Parece que los buenos desarrolladores desarrollan frameworks que son reutilizables, y parece que ya sólo por eso son mejores, sin embargo la realidad es que de tantos frameworks disponibles ahi fuera, muy pocos son realmente rentables.

En este post Michael Feathers habla largo y tendido al respecto. Estoy totalmente de acuerdo.

Dejemos los ambiciosos framewroks, y pasemos a seedworks

Posted by rido at 10:11 AM | Comments (12)

22 de Enero 2004

QProgramming

Esta claro, no depende del lenguaje, depende del compromiso con la calidad del trabajo que hacemos,
en sitios como http://www.qualityprogramming.org/
encontramos webs que hablan de tareas que tienen que ver con codigo pero sin codigo de por medio.

       
  • Requisitos    
  • Validaciones    
  • Revisiones    
  • Pruebas    
  • Documentacion


me ha gustado mucho el enfoque, no es tan radical como XP pero en el fondo habla de lo mismo.

desde aqui es dificil no saltar a http://www.sharpdevelopment.com/
otro sitio en el que encontramos interesante literatura acerca de patrones, prácticas y artículos acerca del diseño OO.


Posted by rido at 2:15 AM | Comments (5)

16 de Enero 2004

Integración Continua

La integración continua consiste en compilar y ejecutar las pruebas unitarias continuamente.

Hoy me he encontrado con una herramienta que permite realizar todas estas tareas,
apoyandose en nant y nunit.

CruiseControl.NET está desarrollada por
ThoughtsWorks y se ha publicado como OSS.

De momento estoy flipando con los scripts de NAnt, las fuentes C#, el UI Web...

Posted by rido at 6:31 PM | Comments (19)

5 de Diciembre 2003

Build Numbers

Es una pena que nant no tenga una tarea específica para actualizar el número de la versión que compilas.

Gracias a google parece que alguien ya se lo ha currado:

http://code.mattgriffith.net/UpdateVersion/

Posted by rido at 11:24 AM | Comments (9)

27 de Octubre 2003

QAMetrics

Sigo flipando con nant.

Viendo las tareas de nant.contrib me sorprendio encontrar codestats


Y he decidio ampliar la tareas para que cuente las clases publicas que hay en un grupo de assemblies dado.

Como siempre los interesados pueden descargarse una temprana version de mi
wokspace en GotDotNet

Posted by rido at 12:19 AM | Comments (16)

9 de Octubre 2003

NAnt 0.8.3 & NUnit 2.1

La versión actual de NAnt no soporta NUNit 2.1, que como no, es la versión con la que estamos escribiendo los UnitTests.

La primera opción parecia ejecutar las pruebas fuera del script de NAnt,


pero los proyectos open source permiten ser más ágil cuando te encuentras estas incompatibilidades, gracias a John Lam hay forma de arreglarlo: http://www.iunknown.com/000342.html

Posted by rido at 2:47 PM | Comments (5)

Build Master

Esta semana me ha tocado montar el sistema de compilación del proyecto en el que estamos trabajando.

He estado evaluando varias opciones y parece que la mejor es:

Posted by rido at 2:45 PM | Comments (7)