{"action":"created","issue":{"url":"https://api.github.com/repos/RedBearLab/nRF51822-Arduino/issues/46","repository_url":"https://api.github.com/repos/RedBearLab/nRF51822-Arduino","labels_url":"https://api.github.com/repos/RedBearLab/nRF51822-Arduino/issues/46/labels{/name}","comments_url":"https://api.github.com/repos/RedBearLab/nRF51822-Arduino/issues/46/comments","events_url":"https://api.github.com/repos/RedBearLab/nRF51822-Arduino/issues/46/events","html_url":"https://github.com/RedBearLab/nRF51822-Arduino/issues/46","id":125212902,"number":46,"title":"Fundamental Arduino classes should not be casually renamed, e.g. Stream --> WStream","user":{"login":"george-hawkins","id":5216161,"avatar_url":"https://avatars.githubusercontent.com/u/5216161?v=3","gravatar_id":"","url":"https://api.github.com/users/george-hawkins","html_url":"https://github.com/george-hawkins","followers_url":"https://api.github.com/users/george-hawkins/followers","following_url":"https://api.github.com/users/george-hawkins/following{/other_user}","gists_url":"https://api.github.com/users/george-hawkins/gists{/gist_id}","starred_url":"https://api.github.com/users/george-hawkins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/george-hawkins/subscriptions","organizations_url":"https://api.github.com/users/george-hawkins/orgs","repos_url":"https://api.github.com/users/george-hawkins/repos","events_url":"https://api.github.com/users/george-hawkins/events{/privacy}","received_events_url":"https://api.github.com/users/george-hawkins/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2016-01-06T16:34:03Z","updated_at":"2016-07-25T03:37:47Z","closed_at":null,"body":"Being able to compile the same code on multiple MCUs with little or no change is one of the big pluses of the Arduino ecosystem.\r\n\r\nBy renaming core classes in the base system of Arduino libraries you are breaking this and so reducing the value of all your Arduino compatibility work.\r\n\r\nAn example of this is the Arduino [`Stream` class](https://github.com/arduino/Arduino/blob/master/hardware/arduino/sam/cores/arduino/Stream.h) which has been renamed [`WStream`](https://github.com/RedBearLab/nRF51822-Arduino/blob/S130/arduino-1.6.x/hardware/RBL/RBL_nRF51822/cores/RBL_nRF51822/WStream.h) here.\r\n\r\nI understand that you did this because you've started to include mbed classes, and this renaming avoids a clash with an identically named class from mbed.\r\n\r\nHowever this is the nRF51822-**Arduino** repo - if any code had to be changed surely it should have been the mbed code and not the core Arduino code?\r\n\r\nIf people have to investigate unexpected changes to basic classes like this (and wonder why there code seems to be picking up unrelated mbed logic instead of what they expected) then this gives quite a negative impression :disappointed: \r\n\r\nI hope RBL's products are a great success, including the recent Kickstarter. The development tools are an important part of this. The Arduino system has a lot of issues compared to more sophisticated tools but they are popular in the hobbyist space. Please think carefully before breaking compatibility, in terms of class names etc., in this space.\r\n\r\nAnd good luck with all your work :smile: "},"comment":{"url":"https://api.github.com/repos/RedBearLab/nRF51822-Arduino/issues/comments/234829537","html_url":"https://github.com/RedBearLab/nRF51822-Arduino/issues/46#issuecomment-234829537","issue_url":"https://api.github.com/repos/RedBearLab/nRF51822-Arduino/issues/46","id":234829537,"user":{"login":"soundanalogous","id":401539,"avatar_url":"https://avatars.githubusercontent.com/u/401539?v=3","gravatar_id":"","url":"https://api.github.com/users/soundanalogous","html_url":"https://github.com/soundanalogous","followers_url":"https://api.github.com/users/soundanalogous/followers","following_url":"https://api.github.com/users/soundanalogous/following{/other_user}","gists_url":"https://api.github.com/users/soundanalogous/gists{/gist_id}","starred_url":"https://api.github.com/users/soundanalogous/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/soundanalogous/subscriptions","organizations_url":"https://api.github.com/users/soundanalogous/orgs","repos_url":"https://api.github.com/users/soundanalogous/repos","events_url":"https://api.github.com/users/soundanalogous/events{/privacy}","received_events_url":"https://api.github.com/users/soundanalogous/received_events","type":"User","site_admin":false},"created_at":"2016-07-25T03:37:47Z","updated_at":"2016-07-25T03:37:47Z","body":"Any update on this? I haven't seen any changes. I would be helpful to resolve the conflicts due to the renaming of Stream.h to WStream.h. This library is named \"nRF51822-Arduino\" not \"nRF51822-mbed\" so it really doesn't make sense to rename core Arduino library files in a way that breaks compatibility with many existing libraries (any Arduino library that includes Stream.h). The only way reason I can see for the renaming was so that the mbed version of Stream.cpp didn't need to be renamed. Makes no sense however given the intent of this repo as being for Arduino."}}
{"actor":{"display_login":"soundanalogous"}}