Sorry - We have a convention that we increment the build number when
introducing a non-interface breaking change.

With every release we build a publisher policy file.  For a release, for
example 1.0.0.1000, the publisher policy file says redirect all release
references in the range 1.0.0.X to the latest build, 1.0.0.1000.  When
we introduce a change, now at version 1.0.0.1001 we deploy a new
publisher policy file redirecting all references to that new version.

If we do not want a specific app referencing a specific version to use
the new version, we using app level binding redirects and DO NOT deploy
the publisher policy file.  Binding redirects can be at the machine
level or app level in the proper .config file.  They allow you to
control for a specific app which specific version of each assembly to
use. 

When we introduce an interface breaking change we increment the release
mod level, in the above example that would be 1.0.1.0000.  None of our
redirects will ever redirect between mod levels, only build levels.

I *think* you can combine publisher policy with binding redirects.  In
that case you would use the binding redirects to specify the release you
are after, and the policy to direct to the latest build level.  But we
aren't currently doing this so you'd have to experiment a little.

Bob Provencher 
VP Software Development 
Chief Architect 
Incurrent 
............................ 
900 Lanidex Plaza 
Parsippany, NJ 07054 
973.781.9012    XT 216 
908.625.6061 (Cell) 
[EMAIL PROTECTED]


-----Original Message-----
From: Andy Smith [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, June 02, 2004 10:19 AM
To: [EMAIL PROTECTED]; Bob Provencher
Subject: Re: Best Practices: Sharing business assemblies, the GAC,
deployment and component versioning


Can you explain what you mean by this?

"...we increment the lowest build number and deploy a publisher policy
file and/or binding redirects."

Thanks.


On Wed, 2 Jun 2004 10:01:40 -0400, Bob Provencher
<[EMAIL PROTECTED]> wrote:

>-----Original Message-----
>From: Bill Bassler [mailto:[EMAIL PROTECTED]
>Sent: Wednesday, June 02, 2004 8:43 AM
>To: [EMAIL PROTECTED]
>Subject: [ADVANCED-DOTNET] Best Practices: Sharing business assemblies,

>the GAC, deployment and component versioning
>
>>> While GAC deployment made making inter-component and client
>referencing easier, it of course forces strict versioning between 
>components and referencing and clients that use them. <<
>
>When introducing a non interface breaking change, we increment the 
>lowest build number and deploy a publisher policy file and/or binding 
>redirects.  For an interface breaking change all dependent assemblies 
>must be relinked and redeployed.
>
>Bob Provencher
>VP Software Development
>Chief Architect
>Incurrent
>............................
>900 Lanidex Plaza
>Parsippany, NJ 07054
>973.781.9012    XT 216
>908.625.6061 (Cell)
>[EMAIL PROTECTED]
>
>
>
>
>===================================
>This list is hosted by DevelopMentor(r)  http://www.develop.com Some
.NET 
>courses you may be interested in:
>
>NEW! Guerrilla ASP.NET, 17 May 2004, in Los Angeles 
>http://www.develop.com/courses/gaspdotnetls
>
>View archives and manage your subscription(s) at 
>http://discuss.develop.com

===================================
This list is hosted by DevelopMentor�  http://www.develop.com
Some .NET courses you may be interested in:

NEW! Guerrilla ASP.NET, 17 May 2004, in Los Angeles
http://www.develop.com/courses/gaspdotnetls

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to