Eclipse support

Does Garmin do not support eclipse anymore?? i´m trying to reinstall on a mac with high sierra and when i install the plug in from

http://developer.garmin.com/downloads/connect-iq/eclipse/

it shows this:

The operation cannot be completed.  See the details.

Cannot complete the install because one or more required items could not be found.

  Software being installed: Connect IQ SDK Manager 4.1.2 (connectiq.feature.sdk.feature.group 4.1.2)

  Missing requirement: Connect IQ 4.1.2 (IQ_IDE 4.1.2) requires 'osgi.bundle; org.eclipse.mylyn.commons.ui 3.18.0' but it could not be found

  Cannot satisfy dependency:

    From: Connect IQ Sdk Manager 4.1.2 (IQ_SdkManager 4.1.2)

    To: osgi.bundle; IQ_IDE 0.0.21

  Cannot satisfy dependency:

    From: Connect IQ SDK Manager 4.1.2 (connectiq.feature.sdk.feature.group 4.1.2)

    To: org.eclipse.equinox.p2.iu; IQ_SdkManager [4.1.2,4.1.2]

Top Replies

All Replies

  • vim user here! I absolutely detest VS code. I tried it before I got a working docker for Linux because of the deps that are horrible outdated of the SDK. That command pallet is HORRIFIC. You constantly need to say for which device you build. It frustrated me to a point where I almost gave up coding for my watch.

    But man, I'm loving my setup. Maybe the only thing that I "miss", because I haven't tried it, is the prettier extension that shakes a tree.

  • It really doesn't matter, as I've said I can't even use VS Code if I have the Nordic Dongle.  This has been an issue for many months.  If I want to try anything with VS Code, I crawl behind the PC and unplug the dongle.

    That's too bad. Hopefully Garmin fixes that problem eventually, especially if they want to drop Eclipse support down the road.

    I'm not really making the argument from the POV of CIQ. And I don't really care if anyone prefers to use Eclipse over VS Code. As I mentioned, I sometimes use old stuff like Beyond Compare which most people wouldn't touch with a 10-foot pole, because it has features I like.

    I just disagree that people like VS Code (solely) because of trends or that VS Code "isn't modern". Yeah, the focus on doing things with the keyboard (the command palette has been around for at least 14 years!) might some like a step backwards, but the difference is you can search for the action you want to do, as opposed to being forced to memorize keyboard shortcuts. I can understand that for anyone who went from having to memorize a ton of shortcuts to using the mouse for most things, and stayed in that mindset, would see VS Code as a step backwards.

    Looking at the big picture for CIQ, none of this matters either, since Garmin has decided to focus on VS Code (let's remember that the reason they gave was that VS Code is more popular and they perceived it to have less complexity and a lower barrier of entry to devs -- their words, paraphrased.) I hope Garmin eventually fixes any VS Code-specific bugs like the one you mentioned.

    And in the even bigger picture, Monkey C is a tiny fish in the huge sea of development, so this stuff matters even less from that perspective. If every Monkey C dev dropped VS Code for Eclipse, it wouldn't make a dent in the overall numbers.

    I can't speak for anyone else, but I don't use Eclipse for anything except CIQ, and only because I have to. Once (and if) I get around to updating all my apps for the latest SDK and converting any custom build steps to work with VS Code, I'll happily say goodbye to Eclipse forever.

    Even when I used Eclipse every day at work, I would often open Notepad++ to do quick edits or searches, as Eclipse was soooo slow.

    EDIT: I could still use Eclipse instead of VS Code for a large part of my work if I wanted to, but I don't want to, for many reasons.

  • vim user here! I absolutely detest VS code.

    Fair. Any opinions on Eclipse?

    I don't think VS Code is perfect by any means. Is there any GUI editor that you like better?

    Personally I like Intellij (it's more polished and has more features), although it's pretty bloated too.

    Just my personal opinion, but if I had to choose between VS Code and Eclipse it's a no-brainer. As someone who used Eclipse for years at my day job, I don't miss anything about it.

    You constantly need to say for which device you build

    It does remember the last device you successfully built, so you can just press ENTER if you're building the same device over and over again. Ofc it'd probably be more efficient to script this if you're constantly building for different devices.

    e.g.

    > make 945lte

    I use VS Code in conjunction with the terminal for lots of stuff at work. I use the terminal almost exclusively for anything related to git or builds. (There's another advantage of VS Code over Eclipse -- integrated terminal support is much better. One downside of VS Code is that if you have a ton of terminal output, it grinds to a halt. Like I said, it's not perfect by any means.)

    That command pallet is HORRIFIC. You constantly need to say for which device you build. It frustrated me to a point where I almost gave up coding for my watch.

    I like the command palette but I don't necessarily like the way Garmin's Monkey C extension uses it.

    For example, each of the project settings has a separate entry in the command palette, which is super annoying. It would be nice if Garmin implemented a view for this stuff instead (like C++ project settings).

    I also do think the command palette can be annoying for multi-step actions, especially when you accidentally click outside of it and have to start over again. I do prefer it to modal wizards.

    e.g. of C++ project settings in VS Code (provided by the Microsoft C++ extension):

    Idk about anyone else, but I would love to see this kind of project settings UI in Monkey C, in addition to the command palette commands.

    It would be great if you could even set a default build target in the project settings.

  • Maybe the only thing that I "miss", because I haven't tried it, is the prettier extension that shakes a tree.

    Speaking of useful extensions, VS Code (and others, like Sublime Text and Intellij) have the "rainbow brackets" extension which color-codes matching brackets. I'm aware that vim has this too.

    To my point, Eclipse doesn't.

    So there's something to be said for popularity, whether it's "genuine" popularity or "people following a trend". The extensions that devs want are going to be developed for the tools people use.

    Same argument goes for why Garmin doesn't do a great job supporting Linux. They probably figured that their Linux dev numbers are super low, comparatively speaking. (Nothing against Linux -- I used it every day at work too, and I'm really happy that Microsoft has it integrated into Windows 10/11 now. I did notice that some devs prefer Mac, going so far as to describe it as "Linux with money", meaning that you pay for a better user experience.)

  • I have no opinions about Eclipse, I have never ever used it. Or maybe, like 20 years ago.

    I only use gvim on Windows or Linux, but I mainly work from a kitty terminal with vim on i3. It is a *(very) minimal setup that most people would hate...

    Back to GUI editors. I tend to advise others to use Sublime. But that was mostly because my boss uses it and he could than help people ;)

    I don't like the IDE setup, call me old fashioned, but do one thing and do it well. The whole IDE to me is soo bloated. I also don't like the whole workspace.json stuff the editor leaves behind in projects. I mean, like $HOME/.config anyone?

    While I was debugging some network stuff on a Windows box I saw that both MS Windows and VSCode behaved like ET and were calling home. I don't like that about an editor or OS.

    While VSCode might remember some options I still need to hit enter several times instead of just remembering it. I just annoyed the hell out of me. I couldn't work like that. Also, I used vim and shared my disk to the Windows host, vscode can't deal with other processes editting files. If I edit a file in another window my vim tells me there is an update and asks me if I want to reload the file.

  • I find it funny that vendors skip Linux yet support OSX. It is BSD under the hood. If you can support Unix at that level, why can't you support Linux?


    I would really love some more Linux support because if they change a few things about their toolset you can fully automate CI testing for open source apps. But you can't because the sim can't work headless. It is one docker image away from niceness. I have strong opinions about their Linux support, but I'll take it. Also, I see there are a couple of Linux people active now. So I hope that "we" can get a little foot in the door so they pick up on Linux support. 

  • I don't like the IDE setup, call me old fashioned, but do one thing and do it well. The whole IDE to me is soo bloated. I also don't like the whole workspace.json stuff the editor leaves behind in projects. I mean, like $HOME/.config anyone?

    To be fair, workspace.json is workspace-specific. Since you can have multiple workspaces, it wouldn't really work as a file in your home dir. And if you open a single project in VS Code, it doesn't write workspace.json. workspace.json is only written when you add multiple project folders to create a "multi-root" workspace.

    I don't like the IDE setup, call me old fashioned, but do one thing and do it well. The whole IDE to me is soo bloated

    I agree that IDEs like VS Code, Intellij, Visual Studio, and Eclipse are incredibly bloated. But they provide useful functionality when you work with popular languages like C#, TypeScript and Java with first-class support in the IDE, especially when you have to deal with countless external libraries and/or huge code bases.

    To be fair, a lot of the reasons to use an IDE disappear when it comes to Monkey C, since the first-class support just isn't there.

    For quick text editing I'm happy to use Sublime, Notepad++, nano or even vim. I will admit that my default git log editor is nano tho. I'm not a huge fan of vim's modal editing paradigm.

    I like Sublime and Notepad++ because they're built with native code (e.g. C++) as opposed to bloated frameworks like Electron. I see the advantage of using Electron, but it means VS Code grinds to a halt when you open a huge file, or the terminal displays too much output, or you have too many projects open....

    (Notepad++ isn't really an option for me at work, since we use Macs.)

    While I was debugging some network stuff on a Windows box I saw that both MS Windows and VSCode behaved like ET and were calling home. I don't like that about an editor or OS.

    Yeah this is a problem with lots of modern software and consumer devices. You can turn off telemetry for VS Code, and to a lesser extent, Windows. (There's 3rd party tools which can change hidden settings in order to stop Windows from phoning home, but every update resets some of these settings).

    Also, I used vim and shared my disk to the Windows host, vscode can't deal with other processes editting files.

    That's interesting - I wonder if it's a Linux / Samba thing. VS Code actually reloads modified files without prompting for me, when another process modifies a file locally. I only get prompted if I try to save an unsaved file in VS Code, and another process has made newer changes in the meantime.

    It's funny, because the Garmin Monkey C Eclipse plugin used to not even be able to handle changes made to the same file, but two different Eclipse views. The two views would go out of sync and you'd be prompted to reload them IIRC. Other Eclipse "editors" (for other languages) had no problem with this, which goes back to how sometimes the problem is in the extension and not the IDE.

  • While VSCode might remember some options I still need to hit enter several times instead of just remembering it. I just annoyed the hell out of me. I couldn't work like that.

    Sure but that's not an apples to apples comparison, since you can't even build in vim (outside of using the terminal). You could easily use VS Code's terminal to build from the command line just like today, if you wanted to. I find it pretty easy to seamlessly switch to VS Code's built in terminal when I want to run git or build commands, for work. I also set up a keyboard shortcut to maximize the terminal panel at will.

    I do see what you mean in the sense that there's less benefit for to switch to VS Code if the extension doesn't work the way you want it to. Like I said, I think it's not necessarily always a VS Code issue per se, but sometimes it's an issue with the way the Monkey C extension is implemented. For example, your idea of having an optionally configured default build target would solve the problem of always being prompted for the build target

    .

  • I find it funny that vendors skip Linux yet support OSX. It is BSD under the hood. If you can support Unix at that level, why can't you support Linux?

    I'm guessing because the market share for OS X is larger, and they don't have to worry about multiple distros.

    Good point about docker tho.

    EDIT: I mean it's Garmin tho. They still have a bug on their website where clicking on the SDK download link in Safari opens the file as a page full of unicode garbage instead of downloading the file. I reported it over 2 years ago and it still seems like it hasn't been fixed, since somebody recently had the same problem.

  • Actually I'm not sure if the build target thing is a bug or a feature. Last week I opened another VSC window and started a new all, and I was struggling to test it in the simulator with a few devices because it remembered the 1st device I tried and didn't let me chose or switch to any other device. After about an hour I figured if I copy the .vscode/launch.json from my previous project to the new one then it works (it asks which device I'd like to run on every time I rum or debug). So even though I do have to hit an extra enter, it is still a feature to me compared to what I had during that hour that I wasted :)