module ABI issue

18 views
Skip to first unread message

Simon

unread,
Jul 17, 2016, 6:10:13 AM7/17/16
to ceylon-users
Hi, guys,

I have this module:

module de.simonthum.ccalc "1.0.0" {
    import ceylon.numeric "1.2.1";
    import com.athaydes.parcey "0.4.0";
}

In ceylon 1.2.3 (few weeks old) I get: Version 0.4.0 of module com.athaydes.parcey was compiled by an incompatible version of the compiler (binary version 8. of module is not compatible with binary version 9. of this compiler)

Behold the fix:

native("jvm") module de.simonthum.ccalc "1.0.0" {
    import ceylon.numeric "1.2.1";
    import com.athaydes.parcey "0.4.0";
}

Anyone care to explain this to me? Was there a js-only ABI break or is it a bug?

John Vasileff

unread,
Jul 17, 2016, 10:49:45 AM7/17/16
to ceylon...@googlegroups.com
Yes, that’s right. For JS 1.2.3, imports must be compiled with 1.2.3 (perhaps 1.2.2 modules will work as well by the time 1.2.3 is released, not sure.) Likewise, for 1.2.2, you need modules compiled with 1.2.2.


--
You received this message because you are subscribed to the Google Groups "ceylon-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceylon-users...@googlegroups.com.
To post to this group, send email to ceylon...@googlegroups.com.
Visit this group at https://groups.google.com/group/ceylon-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceylon-users/682fa186-cc03-47f2-bf30-30b6cde33871%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Lucas Werkmeister

unread,
Jul 17, 2016, 10:51:43 AM7/17/16
to ceylon...@googlegroups.com

I’m pretty sure that so far we’ve kept backwards compatibility between 1.2.2 and 1.2.3. At least, the two breaking changes I’m aware of include code to keep backwards compatibility, and so it would be weird if we just gave that up… :)

John Vasileff

unread,
Jul 17, 2016, 10:53:35 AM7/17/16
to ceylon...@googlegroups.com
Well, it doesn’t work.

Lucas Werkmeister

unread,
Jul 17, 2016, 10:54:15 AM7/17/16
to ceylon...@googlegroups.com

What, between 1.2.2 and 1.2.3? I thought this issue was about 1.2.1.

John Vasileff

unread,
Jul 17, 2016, 10:57:39 AM7/17/16
to ceylon...@googlegroups.com
My understanding is that the pieces to make it work might be in place (for 1.2.3 to support 1.2.2 modules), but aren’t yet complete:

$ ceylon run-js simple
module.js:338
          ^
Error: Cannot find module 'ceylon/language/1.2.2/ceylon.language-1.2.2'
ceylon run-js: Node process exited with non-zero exit code: 1


John

Simon

unread,
Jul 17, 2016, 12:01:58 PM7/17/16
to ceylon-users
OK, good to know, thank you!
Reply all
Reply to author
Forward
0 new messages