IDE v1.39 is Live on IDE Beta

Electric Imp Developers:

We have just updated the IDE Public Beta to version 1.39, which is now available at https://beta-ide.electricimp.com/.

Version 1.39 includes the following improvements and fixes:

  • Improved the presentation of the ‘New Build Available’ dialog.
  • Fixed an issue where owners were informed about the availability of new builds they themselves had uploaded.
  • Fixed a similar issue when an owner creates a new build from an earlier one (using ‘Copy to New Build’) would cause the ‘New Build Available’ dialog to appear.
  • Fixed an issue where one of a user’s devices that had been assigned to a shared model by a fellow collaborator, appeared twice in the device owner’s models list.
  • Fixed an issue where creating new model and immediately assigning an unassigned device to it would not remove the device from the ‘Unassigned Devices’ list.
  • Log messages are no longer being duplicated in the log.

As always, we welcome your feedback and comments — please post them in this forum (you can come here straight from the IDE Public Beta by clicking on the Electric Imp logo and hitting the ‘Provide Feedback’ button. Please include in the post the beta version you are testing (1.39) so we can reproduce and address your concerns accordingly.

The Electric Imp Team.

@kenny,

I still find the pop up, indicating “Newer Build Available”, frustrating. I have the IDE open on 2 machines and one of the machines is running the old IDE AND the Beta IDE.

I can’t pin down the exact circumstances where the pop up comes up, but I can explain my desired behaviour. If I begin editing a model, it should immediately invalidate any other displays of that model, preventing anyone from editing that model until they have, at the very least, refreshed the page.

When the pop up occurs, it’s not clear what I should do.

@coverdriven - thanks for your feedback on the workflow. We will work on the messaging to make it more clear.

We have not yet released the bug fixes to https://ide.electricimp.com, so you may experience this bug if you use the “old” version or combination of “old” and “new”. Can you use IDE Beta on both machines and let us know if you experience the same thing? I would love to learn more what circumstances cause it to happen.

@kenny,

there is still some funny behaviour I see on the latest IDE. The circumstances are as follows:

  • I have multiple devices on the same model.
  • I pick up a bug on one of the models, edit the code (device code in the latest case), and click “Build and Run”.
  • Immediately after I click “Build and Run”, I switch to another device on that model to review its Device Log (to see how pervasive the error was).
  • A message pops up about a conflict between a Draft build (there shouldn’t be one) and the latest build (which is dated at the time I last clicked on “Build and Run”). Even if I swap back to the original device I just edited, the pop-up refuses to going away unless I Build again.

This doesn’t happen all the time, it’s kinda difficult for me to reproduce.

Am I using the IDE wrongly?
Since I’m based on the other side of the world (from the IDE), could it be related to delays in updating something?

I also note that the constant reordering of the devices within a model is confusing. I have up to 12 test devices on the same model (all with similar names). If I want to step through them to review their Device Logs (or to download new code), I can’t simply do that and the list reorders every time I click on one of the units.

Thanks @coverdriven.

Did you make any code change after you switched to another device (bullet #3)? We were aware that it can happen with a really slow Internet and the steps below in the exact order -

  • build and run on a device
  • switch to different device under the same model
  • edit the code
  • wait

This has to do with the ordering of the API responses returned, where the “Build & Run” response hasn’t come back as you were creating a new draft that caused the warning to pop up. While we will keep an eye out for solution, the fix is non trivial. However, if you can reproduce it without performing the “edit the code” step, please help us by sharing the HAR file from the developer console with us.

Regarding the ordering of the devices within the model, we were not able to reproduce it yet, but will continue tomorrow.

I can’t be sure about switching to another device and editing immediately. However, I am sure that one strategy I have is to iterate through all the devices AFTER I have edited one of the them, pressing Build and Run in order to deploy the code. This could contribute towards the issue. I’m not aware of any other simple way of deploying a new build to half a dozen developer devices swiftly. I do not wait for the IDE to acknowledge me before moving to the next device. Again, because of our distance from your servers, we experience quite a lag here.

I’m surprised you haven’t noticed the devices reordering. It’s very evident for us. It never happened prior to 1.39

I haven’t switched over to the beta but I have noticed the devices re-ordering lately and it is a bit annoying. It confused me at first but then later I realized I was going to have to memorize a pattern to go in for updating. I’ve only got 4 devices in a model so it’s manageable.

Thanks all. We have confirmed the device reordering is a regression bug and we will update here when it is fixed.

@coverdriven - can you help me to understand your use case here? Are you trying to deploy the code to ALL devices you have in that model? If you’re only trying to deploy code to half of the devices in that model, what is the use case? Thanks.

It’s happened again. The steps I took were:

  • Edited code on one of my devices.
  • Clicked “Build and Run”
  • Immediately (in less than a second) switched to a different device on the same model
  • Pop up comes up saying there was a discrepancy between the build and draft version

I did not edit anything on the new device at all. To fix up the problem, I have to step through the warnings by pressing Continue, Continue Anyway, Build…

To give you an indication of the lag. When I press on “Build and Run”, it takes 4-6 seconds before I see the “Your code is saved” message. How does that compare to US or UK?

@coverdriven - thanks for reporting it back. This is a difficult one to reproduce, but we managed to do that in-house. We will put this in our backlog as there is no trivial fix without impacting user experience.

What is your use case to switch to another device immediately after “Build & Run” on the other? Are you trying to push code to ALL device? We’re investigating if something like “Build & Run on All Device” would solve what you are trying to achieve.

“Build & Run” in US usually takes less than a second. The actual turnaround time depends on many factors, e.g. code size and server load, as it requires many operations behind-the-scene after you click “Build” or “Build & Run”. Which country are you located in?

Yes, a Build and Run for all devices would be helpful, and it would circumvent some of these problems.

I’m in NZ. Code size is about 5.5K lines in agent and 3.5K in device (no includes)

@coverdriven @JHTNA - we have fixed the “constant device re-ordering” and it’s now available on https://beta-ide.electricimp.com, thanks again for your feedbacks.