Page 2 of 2

Re: DOL @ Linux with Mono

PostPosted: Sat Aug 27, 2011 8:15 pm
by tobz
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!

Re: DOL @ Linux with Mono

PostPosted: Mon Sep 05, 2011 8:32 am
by tryagain
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.

Re: DOL @ Linux with Mono

PostPosted: Mon Sep 05, 2011 9:26 am
by Graveen
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).

Re: DOL @ Linux with Mono

PostPosted: Mon Sep 05, 2011 10:13 am
by Dunnerholl
wouldnt simple patches be more effective?

Re: DOL @ Linux with Mono

PostPosted: Tue Sep 06, 2011 4:28 pm
by tryagain
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. :)

Re: DOL @ Linux with Mono

PostPosted: Wed Sep 07, 2011 5:16 pm
by tryagain
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).

Re: DOL @ Linux with Mono

PostPosted: Wed Sep 07, 2011 7:37 pm
by Graveen
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).

Re: DOL @ Linux with Mono

PostPosted: Thu Sep 08, 2011 10:21 pm
by mgX
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.

Re: DOL @ Linux with Mono

PostPosted: Fri Sep 09, 2011 6:20 am
by Graveen
for the weak referenced objects, feel free to push your test and remove it or no if suitable.

Re: DOL @ Linux with Mono

PostPosted: Wed Sep 14, 2011 9:47 pm
by mgX
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

Re: DOL @ Linux with Mono

PostPosted: Thu Sep 15, 2011 3:31 am
by tryagain
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.

Re: DOL @ Linux with Mono

PostPosted: Thu Jul 26, 2012 3:32 pm
by Dolanor
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 :)