You can export to specific versions using 2012b, but since Matlab doesn't 
announce what is and isn't compatible between versions, it makes it impossible 
to cater for everyone unless you export to each and every version (which is a 
very time-consuming process).

While I agree that it's not fair to force users to upgrade to the latest 
versions all the time, I also think it's unreasonable to expect maintainers to 
backport patches to each and every old version. The precedent was set years ago 
when we dropped support for iBOBs and BEE2s. When Mathworks or Xilinx stops 
support for certain things, so do we. Likewise, when they change model file 
formats, we follow suite. 

FWIW, we had massive issues with old versions of Simulink causing files to 
somehow become corrupt and it'd crash Matlab (segfault) when trying to open 
them. Sometimes it was so bad that just clicking "save" would break things; we 
had to constantly "save-as" with small incremental changes and hope that they 
didn't break anything or else roll-back and redo all the work. The cause of 
this was unknown, even though perfectly reproducable. Matlab's response when we 
asked them to fix it? You guessed it!: upgrade to the new version! And along 
with a host of other improvements, not least of which is a now-useful 
user-interface with much better redrawing, it does seem to be fixed in 2012b.

My feeling is that if you want to use patches in your old versions of tools, 
then it's up to you to get patches applied. Unfortunately, git doesn't merge 
.mdl files, making this very hard. 

If we could figure-out a clean way of scripting mask generation, then we could 
regenerate the entire library on-the-fly, which'd go a long way towards 
compatibility across versions.

Jason


On 25 Jan 2013, at 09:40, David MacMahon wrote:

> Hi, Jason,
> 
> On Jan 24, 2013, at 4:41 AM, Jason Manley wrote:
> 
>> I think tagged releases of the git libraries for given versions are 
>> appropriate. But it's certainly our intent that the SKA-SA repo will always 
>> reflect our latest developments, including support for the latest tools 
>> whenever possible.
> 
> That's fine for you and others who like updating their tools several times a 
> year, but requiring folks to update their tools just to get a bug fix to the 
> library seems kind of harsh.  For example, the current HEAD commit on the 
> ska-sa mlib_devel github repo (e0110e5) fixes support for ROACH DRAM, but two 
> of the library model files were updated using a new version of Simulink (8.0 
> it looks like) that saves mask information in a way that is not compatible 
> with earlier versions.  People (like me) who don't use this new Simulink 
> version but (try to) update to your latest and greatest will find that some 
> of the CASPER blocks (e.g. the snapshot block) no longer have masks!
> 
> At the very least, it would be nice to have a model callback that would open 
> an error dialog if the user is not using a new enough version of Simulink.  
> Matlab does display a warning message, but given the drastic difference in 
> how the new Simulink version handles masks I think it should be a 
> hard-to-ignore error.
> 
> Dave
> 
> P.S.  Detailed commit logs about mdl file changes would make it easier for 
> others to back port the fix since mdl files cannot be diff-ed in a useful 
> way.  :-)
> 


Reply via email to