EclipseFile should ignore not saved content ?
in EclipseFile try to remove usage of Document (or set it optionnal via preference).
use of underlying IFile/File without taking care of current Buffer/IDocument should be enough as trace in input/sizeOption seems to indicate that thoses method are called from EclipseBuilder (after a save).
And IMO, Builder should only take care of saved data (and not of currently editing / not saved content)
Side Note : input/sizeOptions are called by AbstractFile.toByteArray (final method :-( ) to create byte array so using IDocument to create Array[Byte] to wrap in InputStream (and to compute size) to create an other Array[Byte] (to later be converted in ArrayOfChar via decoder) seems to be lot of stupid/useless operation (cpu + ram consumming for notthing).
use of underlying IFile/File without taking care of current Buffer/IDocument should be enough as trace in input/sizeOption seems to indicate that thoses method are called from EclipseBuilder (after a save).
And IMO, Builder should only take care of saved data (and not of currently editing / not saved content)
Side Note : input/sizeOptions are called by AbstractFile.toByteArray (final method :-( ) to create byte array so using IDocument to create Array[Byte] to wrap in InputStream (and to compute size) to create an other Array[Byte] (to later be converted in ArrayOfChar via decoder) seems to be lot of stupid/useless operation (cpu + ram consumming for notthing).
Leave a comment
on 2011-01-07 08:03 *
By eugene.vigdorchik
These methods are also called from the presentation compiler, and in this case they have to take the contents of the edited buffer rather than the underlying file.
As a side note, I also noticed you changed Cached to the old implementation which caused deadlocks for me. Would be nice if you could tell me where my new Cached implementation delivers problems, so I can fix it in wip_experiment.
As a side note, I also noticed you changed Cached to the old implementation which caused deadlocks for me. Would be nice if you could tell me where my new Cached implementation delivers problems, so I can fix it in wip_experiment.
on 2011-01-07 08:34 *
By David Bernard
I also though that presentation compiler called this method, but I don't see printed trace about call to input until I saved the file. So I suppose that Presentation Compiler use content provide by BatchSourceFile(file, getContents) created in ScalaCompilationUnit and ignore content from AbstractFile.
I did a simple single test where I always return content from underlying IFile and I got error on typing.
If my supposition is wrong, my side note about creation of temporary Array[Byte] will be a optimisation.
I open a ticket #4136: remove "final" AbstractFile.toByteArray /toCharArray (you're in copy) because I failed to used aspect to override toByteArray (but I'm a noob in Aspect)
About cached, I start a discussion on mailing list (with notes I toke) : http://groups.google.com/group/scala-ide-dev/t/5f9d0983e065610b
I did a simple single test where I always return content from underlying IFile and I got error on typing.
If my supposition is wrong, my side note about creation of temporary Array[Byte] will be a optimisation.
I open a ticket #4136: remove "final" AbstractFile.toByteArray /toCharArray (you're in copy) because I failed to used aspect to override toByteArray (but I'm a noob in Aspect)
About cached, I start a discussion on mailing list (with notes I toke) : http://groups.google.com/group/scala-ide-dev/t/5f9d0983e065610b
on 2011-01-07 10:11 *
By David Bernard
For (my) memory, `input` is called to create TopLevelMap (for plugin targeting 2.8.x) on reconciliation...
Updating tickets (#1000199, #1000200, #1000201, #1000204, #1000205, #1000209, #1000210, #1000211, #1000212, #1000215, #1000217, #1000218, #1000220, #1000222, #1000226, #1000227, #1000228, #1000230, #1000231, #1000232, #1000233, #1000235, #1000236, #1000237, #1000239, #1000240, #1000241, #1000242, #1000243, #1000244, #1000248, #1000249, #1000252, #1000253, #1000254, #1000255, #1000256, #1000258, #1000259, #1000032, #1000059, #1000062, #1000163, #1000197, #1000216, #1000221, #1000224, #1000121, #1000175, #1000219, #1000251, #1000069, #1000195, #1000213, #1000223, #1000006, #1000021, #1000038, #1000048, #1000051, #1000052, #1000075, #1000103, #1000109, #1000115, #1000119, #1000156, #1000186, #1000207, #1000238, #1000262, #1000263, #380, #389, #683, #1238, #1331, #1635, #1645, #1715, #1729, #1744, #1783, #1839, #1869, #1885, #1890, #1902, #1918, #1919, #1924, #1925, #1946, #1964, #1991, #2131, #2233, #2342, #2348, #2408)
on 2015-03-13 12:04 *
By Simon Schäfer
Work remaining changed from 4.0 to 0.0
Status changed from Accepted to Invalid
Sum of Child Work remaining changed from 4.0 to 0.0
Closed because the issue is probably outdated.