I haven't had to upgrade the DNN install yet but it shouldn't be too difficult. Instead of downloading the upgrade file I can just copy the source tree and paste it into the app code folder. There are a few ambiguous references in the core source code as well as some orphaned code files that would need to be removed/altered to make it work for the masses but it works quite well for how I typically work as I can use a check-in check out system to work on any of the site functionality.
I've always struggled with trying to get the right development enviroment setup. I've followed all the best practices as well as using your walkthroughs. I've found that I prefer using the App_Code method for my modules. I've made many upgrades to the core dnn modules as well as the dnn core and this latest upgrade got me thinking that I need a better way to merge and compile the changes which led me to converting all the core modules/source code to the asp.net 2.0 App_Code methods. In all it took a few days to get everything working right but now that it's complete it runs great. I've yet to merge my core changes but i'll be working on that next week.
For future upgrades I expect to simply copy and paste the changed source code files using a program like win-merge. I will need to remove any assembly references as those will throw an Error when compiled in the App_Code folder but I am confident that the final result of the upgrade will be easier to fix, upgrade, debug, etc.
This method also simplifies the publishing method and allows the ftp publishing methods to work without requiring a recompile/dll transfer. I've always had trouble finding a good publishing model for dnn that didn't involve having 2+ copies of everything. I wanted something that I could connect with a ftp client, download a file, change it, then post it back up on the web. Instead I have copies of VS on 8 different PC's all with different files/sources. It gets hard to manage after awhile and I'm hoping that this setup works.
I've yet to see anyone write up how to's on this development method hence why I made this post. I wanted to see if there was interest. If so I could write up something on how to get it working, there were quite a few different fixes initially.
Ideally the core files could be stored in a csv and dnn would no longer need to be compiled by developers. Since the core team has stated that 4.0 is now the officially supported platform it makes perfect sense.
There are some drawbacks. I'd imagine that developers will not want to recompile the entire site just to test 1 change. But I find that simply making the change then pulling up IE will quickly reveal any compile errors without waiting for a full re-compile. Then when i'm working on the ascx controls the build page feature in VS is very fast.
Enough rambling I suppose.
On another note what would it take to get some features added into the core. I made some adjustments to the Announcements module that include features like publisher/subscriber. That way we could have an announcement posted 1 time and appear on any pages that subscribe to that category. I'm sure it would be useful to others but currently i'm not sure how to go about it.