These are chat archives for ceylon/ceylon-ide-eclipse

8th
Feb 2017
Stéphane Épardaud
@FroMage
Feb 08 2017 09:04
so you mean it didn't work if you opened it the regular way? only if you copied the files over?
John Vasileff
@jvasileff
Feb 08 2017 14:23
@FroMage no, just showing what I did. “Import existing project into workspace” isn’t an option since the git repo doesn’t have eclipse project files.
Stéphane Épardaud
@FroMage
Feb 08 2017 14:24
I always do "New project" and pick the same folder
that creates the files or uses them if they exist
never understood what import did on top of that
John Vasileff
@jvasileff
Feb 08 2017 14:24
I’m guessing that would produce the same result
Stéphane Épardaud
@FroMage
Feb 08 2017 14:25
weird
so why does it fail for me
John Vasileff
@jvasileff
Feb 08 2017 14:25
some difference in ~/.ceylon?
Stéphane Épardaud
@FroMage
Feb 08 2017 14:33
ok found it
you had the sdk in your user repo or cache
I didn't
when the IDEs fetched the modules for JS
they somehow got lots of ceylon.json-1.3.1.car.missing
for car, src and jar
only the last is normal
from then on, the IDEs couldn't load the model
becuase they don't load the JS model
that's why it failed
the CLI didn't care about those
I removed the files, and forced them to fetch with ceylon copy
Bastien Jansen
@bjansen
Feb 08 2017 14:35
do you know why those .missing files were created?
Stéphane Épardaud
@FroMage
Feb 08 2017 14:35
and now the IDE works
IDEs
a bug in how the IDE fetches the modules?
either in the IDE or in the CMR
John Vasileff
@jvasileff
Feb 08 2017 14:36
yikes. Yeah, I probably did have them in cache
Stéphane Épardaud
@FroMage
Feb 08 2017 14:36
it likely asks for JS
and probably the CMR declares that the others types are missing
which is wrong
Bastien Jansen
@bjansen
Feb 08 2017 14:36
the IDE asks for .car or .src
Stéphane Épardaud
@FroMage
Feb 08 2017 14:36
and the IDEs don't recover from this
at least it's easy to reproduce: just nuke your cache/repo for a single JS module you need from the SDK
for 1.3.1, obviously
since it has to be on herd
I had to fix it for ceylon.json and its dependency ceylon.collection
fixing the first fixed my package import error, but left a "JsonArray not an iterable type" error
due to the inheritance from ceylon.collection
Bastien Jansen
@bjansen
Feb 08 2017 14:40
I deleted ceylon.json/1.3.1 from my cache and reopened your project, it was downloaded correctly (both .js and .src files)
Stéphane Épardaud
@FroMage
Feb 08 2017 14:40
but not .car, right?
Bastien Jansen
@bjansen
Feb 08 2017 14:41
it doesn't need it, JS-only projects will be loaded from .src files
Stéphane Épardaud
@FroMage
Feb 08 2017 14:41
well I had the .src missing too
Bastien Jansen
@bjansen
Feb 08 2017 14:42
perhaps Herd was unavailable or it threw an error, and that caused your .missing files?
Stéphane Épardaud
@FroMage
Feb 08 2017 14:42
did you remove it from your repo too?
Bastien Jansen
@bjansen
Feb 08 2017 14:42
it wasn't present
at least not this version
Stéphane Épardaud
@FroMage
Feb 08 2017 14:42
so perhaps the CLI did it then
nope, doesn't seem to be the CLI
well, then one of the IDEs did that
and the fact of the matter is that we can't recover from that
there's no "try again if there's a .missing" file option
there should be
Tako Schotanus
@quintesse
Feb 08 2017 15:47
Well the idea was that those .missing files should only be created when the Herd explicitly tells us that the file doesn't exist. So the same way we don't have a "redownload" option (because artifacts never change) there should theoretically also not be a need for a "retry missing files" option. If they appeared without reason then that is a bug.
Tom Bentley
@tombentley
Feb 08 2017 16:02
Well surely it's possible for someone to query for xyz, get Not Found as the result, and then for xyz to be published.
Tako Schotanus
@quintesse
Feb 08 2017 16:30
@tombentley no, it doesn't do this if the module itself doesn't exist, only for individual artifacts within a module
(the cache isn't filled with mistyped module names for example)
Stéphane Épardaud
@FroMage
Feb 08 2017 16:45
well, something did put those files, wrongly because herd always had them
so, until we make damn sure this can never happen, we'd better add an option to recheck them ;)
because I sure as hell did not manually put those files in
Tako Schotanus
@quintesse
Feb 08 2017 17:12
Then we should just add an option to force a redownload of all files. Because we when files are incorrectly downloaded or are corrupted in some other way we also have a problem