DOL @ Linux with Mono

Discussions on various DOL development features

Moderator: Support Team

Re: DOL @ Linux with Mono

Postby tobz » Sat Aug 27, 2011 8:15 pm

I'd agree with Graveen. The *second* you fork code to be Mono only, it will lag behind in features and fixes. Granted that there is limited development activity already so it is conceivable for one person to track all the upstream changes and keep them merged... but shit, that's just needless extra work, IMO.

The changes, I imagine, are small enough that some uglier workaround code can be added or you could add pre-compiler conditionals like Graveen said. Either way, as things get fixed in Mono, you make them pretty again and remove conditionals... voila!
tobz
DOL Devotee
 
Posts: 363
Joined: Mon Jul 27, 2009 6:24 pm

Re: DOL @ Linux with Mono

Postby tryagain » Mon Sep 05, 2011 8:32 am

Since a few of you started watching my Github repo I just wanted to let you know it's been deleted and a new repo was created. You can see it here: https://github.com/boscorillium/dol. The main reason I did this was because I could not figure out how to pull updates from SVN after I established it. But after a long weekend and a lot of reading I'm hoping the new repo (combined with a log of what I did to import it) will allow me to pull changes from SVN. I preserved the mono branch for changes I made specifically for it to build with Mono/MonoDevelop.
tryagain
DOL Novice
 
Posts: 51
Joined: Sun Aug 07, 2011 6:34 pm

Re: DOL @ Linux with Mono

Postby Graveen » Mon Sep 05, 2011 9:26 am

Seriously tryagain, you don't want to push changes in the actual core via a new target ? This is the most maintenable over time (and i hope remove it as soon as mono is compatible with actual dol, in one word make it lives alongside the project).
Image
* pm me to contribute in Dawn of Light: code, database *
User avatar
Graveen
Project Leader
 
Posts: 12660
Joined: Fri Oct 19, 2007 9:22 pm
Location: France

Re: DOL @ Linux with Mono

Postby Dunnerholl » Mon Sep 05, 2011 10:13 am

wouldnt simple patches be more effective?
Dunnerholl
Developer
 
Posts: 1229
Joined: Mon Sep 08, 2008 8:39 pm

Re: DOL @ Linux with Mono

Postby tryagain » Tue Sep 06, 2011 4:28 pm

A new target is not sufficient. MonoDevelop changes the projects around quite a bit. I'm not sure if they remain compatible with VS2010. I think they do but would have to check later. There are some explicit casts and there are a couple of crashes when the reflection is done looking for command handlers. I had to add checks for specific types/namespaces to skip over.

I also a lot of things I'm going to be working on that may or may not ever make it into the core and it's just easier for me to do it all in Github since whether DOL runs on Mono or not is important to so few people. It would be great if DOL had a repository on Github. :)
tryagain
DOL Novice
 
Posts: 51
Joined: Sun Aug 07, 2011 6:34 pm

Re: DOL @ Linux with Mono

Postby tryagain » Wed Sep 07, 2011 5:16 pm

I find it interesting that there's a WeakRef class who's description specifically says it's there and used because of Mono. That's in DOLBase. So that's a case where the core was changed, without a separate build target, specifically as a workaround for Mono's garbage collector. I will probably remove all of that code shortly after I verify that the problem no longer exists (it hardly seems like that specific problem could exist since there's an entirely new garbage collector in Mono).
tryagain
DOL Novice
 
Posts: 51
Joined: Sun Aug 07, 2011 6:34 pm

Re: DOL @ Linux with Mono

Postby Graveen » Wed Sep 07, 2011 7:37 pm

i agree ! give us feedback. Related to host DOL on github, hmmm, it 'd easy you pull/merge, but i think we must focus on SF. I enabled the GIT repo (personally i only work with GIT and GIT-SVN conduit) but i fear it breaks the habits for something not really essential (as we are mainly updating the trunk, working with branch is actuall exceptionnal).
Image
* pm me to contribute in Dawn of Light: code, database *
User avatar
Graveen
Project Leader
 
Posts: 12660
Joined: Fri Oct 19, 2007 9:22 pm
Location: France

Re: DOL @ Linux with Mono

Postby mgX » Thu Sep 08, 2011 10:21 pm

I find it interesting that there's a WeakRef class who's description specifically says it's there and used because of Mono. That's in DOLBase. So that's a case where the core was changed, without a separate build target, specifically as a workaround for Mono's garbage collector. I will probably remove all of that code shortly after I verify that the problem no longer exists (it hardly seems like that specific problem could exist since there's an entirely new garbage collector in Mono).

For ages mono didnt have a compacting GC, so the memory would go nuts unless stuff could be turned into weakrefs...My guess at least. They have relied on a Boehm style GC for years (which suck horribly for the record), though Ive heard that they made a new compacting GC that wasnt enabled by default.
mgX
Inactive Staff Member
 
Posts: 235
Joined: Tue Jun 28, 2005 10:19 am
ICQ: 298828005
Yahoo Messenger: Insilopeh
Location: Denmark

Re: DOL @ Linux with Mono

Postby Graveen » Fri Sep 09, 2011 6:20 am

for the weak referenced objects, feel free to push your test and remove it or no if suitable.
Image
* pm me to contribute in Dawn of Light: code, database *
User avatar
Graveen
Project Leader
 
Posts: 12660
Joined: Fri Oct 19, 2007 9:22 pm
Location: France

Re: DOL @ Linux with Mono

Postby mgX » Wed Sep 14, 2011 9:47 pm

for the weak referenced objects, feel free to push your test and remove it or no if suitable.
Without knowing, what are the weakrefs used for? They are quite handy, since they go poof as soon as the GC wants to collect stuff, and you can convert them back to strong refs if you all of a sudden need them again, meaning you wont have to load the stuff again <3
mgX
Inactive Staff Member
 
Posts: 235
Joined: Tue Jun 28, 2005 10:19 am
ICQ: 298828005
Yahoo Messenger: Insilopeh
Location: Denmark

Re: DOL @ Linux with Mono

Postby tryagain » Thu Sep 15, 2011 3:31 am

The WeakRefernces aren't going anywhere just the WeakRef class in DOL code which is a wrapper around the System.WeakReference class for an issue that existed in Mono's GC.
tryagain
DOL Novice
 
Posts: 51
Joined: Sun Aug 07, 2011 6:34 pm

Re: DOL @ Linux with Mono

Postby Dolanor » Thu Jul 26, 2012 3:32 pm

I checked the github repository of the mono branch and it hasn't been updated since then.
Is it possible you put some automated script to automatically update from svn and push to github to a "upstream-svn" branch ?
At least to have the latest version available from upstream in a branch :)
Dolanor
DOL Initiate
 
Posts: 24
Joined: Fri May 21, 2004 12:51 pm


Return to “%s” DOL Development Discussion

Who is online

Users browsing this forum: No registered users and 1 guest