www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Porting 1.x libraries to 2.x

reply John C <johnch_atms hotmail.com> writes:
What strategies do library authors have for maintaining two versions of a their
code - one for D 1.0 and another for 2.0? When they make changes to one
version, do they manually copy them into the other branch? Or is there a way of
automating the process?

Version blocks don't seem to help much.

I'm finding it very tedious and somewhat haphazard going the manual route -
it's easy to forget, and sometimes I get so carried away adding new code to my
1.0 library that it's a struggle to recall every line I've changed.

Ideally, I'd just update the 1.0 branch and run a script to make the necessary
changes for it to compile with DMD 2.0. Do Unix/Linix people use the patch
command for this (and is there a Windows equivalent)?

Thanks,
John. 
Jun 10 2009
parent reply Derek Parnell <derek psych.ward> writes:
On Wed, 10 Jun 2009 04:30:53 -0400, John C wrote:

 What strategies do library authors have for maintaining two
 versions of a their code - one for D 1.0 and another for 2.0?
 When they make changes to one version, do they manually copy
 them into the other branch? Or is there a way of automating
 the process?
 
 Version blocks don't seem to help much.
 
 I'm finding it very tedious and somewhat haphazard going the
 manual route - it's easy to forget, and sometimes I get so
 carried away adding new code to my 1.0 library that it's a 
 struggle to recall every line I've changed.
 
 Ideally, I'd just update the 1.0 branch and run a script to
 make the necessary changes for it to compile with DMD 2.0. Do
 Unix/Linix people use the patch command for this (and is there
 a Windows equivalent)?
You're correct in that version{} is no help at all. I use a text macro program to help me. -- Derek Parnell Melbourne, Australia skype: derek.j.parnell
Jun 10 2009
parent Stewart Gordon <smjg_1998 yahoo.com> writes:
Derek Parnell wrote:
<snip>
 You're correct in that version{} is no help at all.
<snip> Prove it. Then look at the SDWF source. Stewart.
Jun 11 2009