Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [xtext-dev] Why does Rename Element in a dsl plugin triggers build for the project before rename ? How to remove it?

Thanks a lot Christian,

First, I updated latest xtext plugins (2.19.0.v20190902) as you recommended on my demo workspace that has the Ant Builder. And the update seems to solve the problem.
But on my other working workspace, on linux, that has other kind custom build, the plugin updates did not solved the problem.

But as you already was able to reproduce and confirmed that it' s default behaviour I am still looking how to disable it.
Maybe I will try to comment ' calls org.eclipse.xtext.ui.refactoring.ui.SyncUtil.waitForBuild(IProgressMonitor)'

Could we request to add a property in Preferences that would disable that build? Or can it build only xtext builder and skip all others?
What would be the best way in current version to disable it? Is it possible only by patching xtext?

Thank you
Kind Regards
Lidia

On Tue, Sep 3, 2019 at 7:01 PM Christian Dietrich <christian.dietrich@xxxxxxxxx> wrote:

update: can be reproduce with a mydsl project.

org.eclipse.xtext.ui.refactoring.impl.AbstractProcessorBasedRenameParticipant.initialize(Object)
and org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler.execute(ExecutionEvent)

calls org.eclipse.xtext.ui.refactoring.ui.SyncUtil.totalSync(boolean, boolean, boolean)
which calls org.eclipse.xtext.ui.refactoring.ui.SyncUtil.waitForBuild(IProgressMonitor)
to make sure all projects are built and all editors are synced

which is a precondition for proper builds.
it does a incremental build

(org.eclipse.core.resources.IncrementalProjectBuilder.INCREMENTAL_BUILD)

thus the clean solution would be to have a build that can do incremental builds properly on your side.

you might be able to customize the places that call the total sync but that might break the refactoring

Am 03.09.19 um 17:08 schrieb Lidia:
Hello xtext developers,

 

We have few dsl plugins generated with xtext and some custom projects that
has a custom builder (which executes a long time running script) .

When I try to use the  inherited from xtext feature 'Rename Element' for a
dsl file, it triggers full workspace build, or one single project build,
which eventually calls our long running script.

Basically we can not use rename action, because we have to wait about 5
minutes till script ends and Rename dialog will be visible.

 

Why does it happens by default and how to remove it?

 

I have reproduced it in a demo workflow:

1.       I have installed eclipse ide for DSL
https://www.eclipse.org/downloads/packages/release/2019-06/r/eclipse-ide-jav
a-and-dsl-developers

2.       Created demo dsl plugins based on
<https://www.eclipse.org/Xtext/documentation/102_domainmodelwalkthrough.html
15 Minutes Tutorial
https://www.eclipse.org/Xtext/documentation/102_domainmodelwalkthrough.html 

3.       Generated java sources and run eclipse 

4.       In demo workspace created a demo project ( TestDSL), and on its
Right Click -> Properties added a second builder, a simple ant script (the
Test.ant):





 



 

Any time when I try to use Rename Element it first triggers the project
build.

If I uncheck the ANT build (From Project Properties -> Builders), this is
not triggered any more. But I do need it checked, and I would like to be
able to use Rename Element as well. How to disable it?

 



 

 

Thank you in advance

Kind Regards

Lidia



_______________________________________________
xtext-dev mailing list
xtext-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/xtext-dev
_______________________________________________
xtext-dev mailing list
xtext-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/xtext-dev

Back to the top