Mono 2.10 Transition

With Mono 2.10.1 in Debian/Experimental another Mono transition is coming up as the support for the 1.0 runtime was dropped and 4.0 was added. Debian takes the lead again and will make a transition of all libraries and applications from 2.0 to 4.0. There are 2 different transition methods of how we can do it, that needs to be decided on.

Mass binNMUs can't be used here as almost all packages are arch-all.

Status page of the Mono 2.10 transition: http://release.debian.org/transitions/html/mono.html

TODO page: http://wiki.debian.org/Teams/DebianMonoGroup/Mono210TransitionTODO

Transition Model 1 aka Fast Clean Cut

  1. Mono 2.10.1 upload to Debian/Experimental with mono-csc changed to dmcs (C# 4.0) (DONE)
  2. Rebuild all library source packages against Mono 2.10.1 in Debian/Experimental
  3. Fix possible FTBFS
  4. Rebuild all application source packages against Mono 2.10.1 in Debian/Experimental
  5. Upload Mono 2.10.1 to Debian/Unstable
  6. Upload all library source packages to Debian/Unstable
  7. Upload all application source packages to Debian/Unstable
  8. Rest and Enjoy

Transition Model 2 aka Slow Less Hurting Cut

As the Mono 2.10.1 binary packages are 100% ABI compatible with Mono 2.6.7 that is in Debian/Unstable, we could make a slow migration directly in Debian/Unstable:

Leave mono-csc to use the C# 3.0 compiler (gmcs) and start with the leaf node source packages to use the C# 4.0 compiler (dmcs)

  1. Mono 2.10.1 upload to Debian/Unstable with mono-csc unchanged
  2. Let Mono 2.10.1 migrate to Debian/Testing
  3. Patch each library source package to use dmcs instead of mono-csc
    1. Upload source package to Debian/Unstable
  4. Patch each application source package to use dmcs instead of mono-csc
    1. Upload source package to Debian/Unstable
  5. Rest and Enjoy
  6. Patch the source packages back to mono-csc :/

Transition Model 3 aka Dry Run

  1. Mono 2.10.1 upload to Debian/Experimental with mono-csc changed to dmcs (C# 4.0) (DONE)
  2. Rebuild all source packages against Mono 2.10.1 from Debian/Experimental without uploading the build results (DONE)
  3. Fix all possible FTBFS and upload backwards compatible FTBFS fixes to Debian/Unstable (DONE)
  4. Upload Mono 2.10.1 / cli-common 0.8 to Debian/Unstable (DONE)
  5. Upload nant built against Mono 2.10 to Debian/Unstable (DONE)
  6. Rebuild and upload all unstable library source packages to Debian/Unstable
  7. Rebuild and upload all application source packages to Debian/Unstable
  8. Rebuild and upload all library source packages to Debian/Unstable
  9. Rest and Enjoy

Exepected Issues

Prelimary rebuilds: a first rebuild of many packages against mono 2.10 in unstable: http://wiki.debian.org/Teams/DebianMonoGroup/Mono210Transition/jtaylor-rebuild

Mono 2.10 Transition Task Force

References