Topic: Which changes can (theoretically) be easily backported for Tiger?

Reading about all the new features and fixes and UI tweaks for 0.08, it got me wondering how many of these changes depend on Leopard-only code, versus how many would be easy transplants back into the 0.07/Tiger-compatible codebase without needing to be rewritten.  Any thoughts?

(This is of course a question completely distinct from questions of "Should these be backported?" and "Who would do it?"  I'm just asking in general, at least for now.)

Re: Which changes can (theoretically) be easily backported for Tiger?

All of it can be backported, given enough time and effort...

Anything related to decoding/playback should be easily ported. I'm pretty sure that's all mostly compatible.

Regarding the UI, the only strictly 10.5 things I can think of are the toolbar (it uses a new way of making and populating the toolbar which I don't believe is compatible), and things that use NSPathControl (which is new in 10.5). There also may be methods that are now being used that are new in 10.5, but I haven't been paying attention so I'm not sure which ones those would be.

Also, there's been a gradual shift towards Objective-C 2.0. However, most Objective-C 2.0 things are just shorter/quicker ways of doing Objective-C 1.0 things. So patches will need some rewriting and won't be as simple as copy/paste, but it's possible.

Re: Which changes can (theoretically) be easily backported for Tiger?

I'm still hoping that some intrepid third party will backport some of the new features. (Whatever happened to Andre R., anyway?)

Really, the only things that are sorely needed are "Undo" and a working shuffle system (though 0.08 doesn't yet have that either, right?).  Without them, especially the latter, 0.07 feels sort of broken.

(I keep meaning to try to come to grips with the code so that I might work on this stuff myself, but it's a little overwhelming, given that I've never done any serious programming.)

Last edited by goldenband (2008-06-20 21:45:59)

Re: Which changes can (theoretically) be easily backported for Tiger?

Last edited by vspader (2008-06-24 08:46:57)

Re: Which changes can (theoretically) be easily backported for Tiger?

Fantastic, thanks so much!!  I've just downloaded the source from SVN and am building it now.  I'm looking forward to checking it out.

I'm particularly happy about this as I spent the better part of the last day or so mucking around with the code to try and implement the "Undo" function, and got absolutely nowhere.  The good news, however, is that it gave me a reason to get familiar with Subversion and XCode, so at least now I know how to check out and build the code.  Or at least I think I do:

svn co -r908

And then you just open up Cog.xcodeproj in Xcode and tell it to build, with the results showing up in /cog/build/Release.  Is that right?

EDIT:  Well, it must be right, because it worked!  The only funky thing I noticed is that when you undo a deletion, the track number ("#") gets messed up -- sometimes it shows up as zero, sometimes you get two of the same one.  But that's extremely minor, and goes away once you reboot Cog, or if you move the track in question to a different order in the playlist.

Thanks again, this'll be a great help.

Last edited by goldenband (2008-06-24 13:26:06)

Re: Which changes can (theoretically) be easily backported for Tiger?

I'll fix it, shouldn't be a big deal. Also, I put the builds in the Unstable feed.

Re: Which changes can (theoretically) be easily backported for Tiger?