Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [dartboard-dev] Natures considered harmful

Hi Mickael,

thanks for the feedback. I looked over how you do that in WWD, and that seems to be a nicer way indeed.
Previously I thought about adding a smart-import wizard that automatically adds the nature to any imported project (that matches the criteria). But your suggestions seems more robust and nicer to use in general. 

I've opened https://github.com/eclipse/dartboard/issues/55 to track this issues in the repo. Feel free to subscribe for more updates.

Best,
Jonas

On Thu, Jun 27, 2019 at 4:09 PM Mickael Istria <mistria@xxxxxxxxxx> wrote:
Hi all,

I just read https://jonas-jonas.dev/posts/dartboard-first-update/ (thanks @EclipseFdn for the tweet).
I see dartboard relies on nature. I'd like to suggest that it avoids it.

Natures are extremely Eclipse-specific concept. They are stored in a .project that the vast majority of real-life project don't share on SCM, either because they don't use Eclipse IDE, or because they don't follow recommendation). As such, relying on nature to enable some features make that in the majority of cases, importing a project in the Eclipse IDE will not enable some of the Dartboard features.
For end-users, it's important to deliver the main feature with as minimal tool-specific configuration as possible, ideally no configuration. Natures are tool specific configuration.
Instead of natures, I suggest you rely on some other strategies to enable some features like Run As/Debug As. For example, Dartboard could rely on the existence of some files to make the shortcuts available. See for example how Wild Web Developer implements that: https://github.com/eclipse/wildwebdeveloper/blob/master/org.eclipse.wildwebdeveloper/plugin.xml#L479 .
With this approach, it makes that project remain fully usable even if there is no preliminary .project file or without any Eclipse-specific configuration from user.

I recommend to follow this same pattern, and to avoid relying Eclipse-specific project state (natures, project settings, whatever...) to determine whether a feature can be available or not.

Cheers

--
Mickael Istria
Eclipse IDE developer, for Red Hat Developers
_______________________________________________
dartboard-dev mailing list
dartboard-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/dartboard-dev


--
Jonas Hungershausen

Mobil: +49 176 72344505

Back to the top