Go Down

Topic: Arduino 1.0 IDE Compatibility with previous versions (Read 9935 times) previous topic - next topic


The most infuriating part is that this tiny little decision by the Arduino team to not support any of the pre 1.0 libraries
does not seem to really affect them very much, but it affects 100's if not 1000's of others as they have to deal with
the aftermath of that decision.

I just don't don't get it.

--- bill

Sadly, I think these issues illustrate just how insulated the core Arduino team has become from their end users.  But, having worked in this software field for a very long time, I understand how the "circle the wagons" response to criticism, once started, can be a hard habit to break.  But, I would hope that this discussion might help to put a spotlight on how even just a little bit of insular thinking can really hurt the reputation of a project as great and wonderful as the Arduno project is.  Those of us playing the role of critic are trying to help... really... and the voice of someone, such as Paul, who has taken the time to work on a practical solution to an issue and reduce it down to a workable patch that could save a lot of users from a lot of confusion and aggravation should really carry a bit more weight in the discussion than it seems to.  That's my two cents worth.


I'm not seeing how kaor is wrong.
All he stated was:
- WProgram.h is missing (renamed to Arduino.h)
- Many projects/libraries will no longer compile because of this.

Both of these assertions are correct.

While the official solution is to correct each library code module with a conditional,
an interim "quick fix" that is much easier that fixes many library modules all at once is
to simply create a WProgram.h as kaor has stated.

The bottom line is to get things back to working again.
Creating a WProgram.h file one time is a much simpler and easier solution for less technical users
than having them wade through compiler error messages and then locate each source file that needs
correcting and then edit each file to correct the includes.

The needed backward compatibility isn't for the library writers, it is for the less technical users of the library
that are stuck in the middle.

I'm with Paul, I simply don't understand the decision not to include a little bit of additional backward compatibility,
particularly given the 1.0 IDE has added additional code to deal with supporting both the .pde vs .ino extensions.
A novice user can easily handle renaming his sketch to get going again. But even the simple changes to correct
the header filenames in the library code can be beyond many less technical users.

--- bill

In Linux a simple solution would be to add a simlink from the non-existent WProgram.h to Arduino.h

Paul Stoffregen

May 14, 2012, 11:24 am Last Edit: May 15, 2012, 01:14 am by Paul Stoffregen Reason: 1
I actually tried ArdOSC recently.  It works fine on Arduino 1.0.

On Linux, there are many compile errors, but I spent a few minutes investigating.  They are all due to sloppy use of capitalization in the filenames, particularly "OSCCommon" vs "OSCcommon" (the same mistake duplicated many times throughout the many files).  Clearly it's only ever been tested on Mac and Windows.  That's not any fault of Arduino 1.0.

Go Up