Discussion:
[ceylon-dev] FYI: SNAPSHOT versions
Tako Schotanus
2016-10-04 14:08:22 UTC
Permalink
Hi people,

Just a heads up about issue https://github.com/ceylon/ceylon/issues/6127
which is about SNAPSHOT versions. This issue has been completed and we've
just merged the code to master.

The main reason for SNAPSHOT versions is to make sure the modules we
generate during development never conflict with the modules we create for
an official Ceylon release. So during development all modules will have
`-SNAPSHOT` appended to their version to distinguish them from their final
version. (As a side-effect it will also make it much easier to find all
instances of versions when they need to be changed)

But the switch wasn't a trivial one because of the OSGi information we
generate for our modules. Specifically the versions that OSGi supports are
not compatible with the versions we support and use for Ceylon. (We're
mostly compatible with Maven's versioning). So we first had to come up with
a way to unambiguously convert Ceylon versions to OSGi versions.

So please be alert for any strange behaviour you might suddenly be seeing
that might be caused by this change. We tested thoroughly but we might have
missed something.

Also, David will follow up with a mail explaining what you have to do if
you had already installed a version 1.3.1 plugin in your Eclipse.

Cheers,
-Tako
--
You received this message because you are subscribed to the Google Groups "ceylon-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceylon-dev+***@googlegroups.com.
To post to this group, send email to ceylon-***@googlegroups.com.
Visit this group at https://groups.google.com/group/ceylon-dev.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceylon-dev/CAOJRyvpG-XfBzssLR8Zkrrdz7fEwF8%3DPS36SAMdy6GKNWFvmeQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
David Festal
2016-10-04 14:41:22 UTC
Permalink
Hi all,
Due to changes in the way OSGI version qualifiers are generated for
Ceylon modules and Ceylon distribution artifacts,
people who have already installed a 1.3.1 development plugin in Eclipse
will encounter problems to update to new components based on the new
SNAPSHOT version.
The reason is that the generated OSGI qualifier will be seen as older
than the previous one. This problem will only happen once, due to the
switch to the new versioning scheme.
The solution is simple: uninstall the Ceylon components, restart, and
install them again, as I show in more details below.
So when trying to update the 1.3.1 Ceylon plugin, you should see the
following screen:
Note that all the bundles from the 'Ceylon IDE Runtime Bundles'
category are shown without the update icon.
If you still click on 'Next', you will get the following error message:
 
So in order to uninstall the previous 1.3.1 Ceylon components, go to
the 'Installation Details' dialog:
 
select the Ceylon components and uninstall them.
Then restart and you will be able to install the new components based
on the last master with the SNAPSHOT version.
Cheers,
David.   
Post by Tako Schotanus
Hi people,
Just a heads up about issue https://github.com/ceylon/ceylon/issues/6
127 which is about SNAPSHOT versions. This issue has been completed
and we've just merged the code to master.
The main reason for SNAPSHOT versions is to make sure the modules we
generate during development never conflict with the modules we create
for an official Ceylon release. So during development all modules
will have `-SNAPSHOT` appended to their version to distinguish them
from their final version. (As a side-effect it will also make it much
easier to find all instances of versions when they need to be
changed)
But the switch wasn't a trivial one because of the OSGi information
we generate for our modules. Specifically the versions that OSGi
supports are not compatible with the versions we support and use for
Ceylon. (We're mostly compatible with Maven's versioning). So we
first had to come up with a way to unambiguously convert Ceylon
versions to OSGi versions.
So please be alert for any strange behaviour you might suddenly be
seeing that might be caused by this change. We tested thoroughly but
we might have missed something.
Also, David will follow up with a mail explaining what you have to do
if you had already installed a version 1.3.1 plugin in your Eclipse.
Cheers,
-Tako
-- 
You received this message because you are subscribed to the Google
Groups "ceylon-dev" group.
To unsubscribe from this group and stop receiving emails from it,
Visit this group at https://groups.google.com/group/ceylon-dev.
To view this discussion on the web visit https://groups.google.com/d/
msgid/ceylon-dev/CAOJRyvpG-
XfBzssLR8Zkrrdz7fEwF8%3DPS36SAMdy6GKNWFvmeQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "ceylon-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceylon-dev+***@googlegroups.com.
To post to this group, send email to ceylon-***@googlegroups.com.
Visit this group at https://groups.google.com/group/ceylon-dev.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceylon-dev/1475592082.3188.23.camel%40gmail.com.
For more options, visit https://groups.google.com/d/optout.
Bastien Jansen
2016-10-04 16:47:11 UTC
Permalink
Same thing for those who are updating Ceylon IDE for IntelliJ from Jenkins:

https://ci-ceylon.rhcloud.com/job/ceylon-ide-intellij/lastSuccessfulBuild/artifact/out/installation-packages/updatePlugins.xml <https://ci-ceylon.rhcloud.com/job/ceylon-ide-intellij/lastSuccessfulBuild/artifact/out/installation-packages/updatePlugins.xml>

Now that we have snapshots, I can use better version numbers with automatic updates from dev versions to releases.

Old versions looked like this:

* snapshots == 1.3.1-v20161004012345
* releases == 1.3.1-v20161004012345 😕

New versions look like this:

* snapshots == 1.3.1-SNAPSHOT-v20161004012345
* releases == 1.3.1, 1.3.1-1, 1.3.1-2, 1.3.2 etc

If you are using nightly builds, you’ll have to force the IDE to use an ‘older’ version of the plugin (because in theory 1.3.1-SNAPSHOT-v20161004012345 < 1.3.1-v20161004012345):

* download https://ci-ceylon.rhcloud.com/job/ceylon-ide-intellij/lastSuccessfulBuild/artifact/out/installation-packages/CeylonIDEA.zip <https://ci-ceylon.rhcloud.com/job/ceylon-ide-intellij/lastSuccessfulBuild/artifact/out/installation-packages/CeylonIDEA.zip> manually
* go to Preferences > Plugins > Install plugin from disk
 and chose the file you just downloaded
* restart the IDE

This has to be done only once. Automatic updates from snapshots to releases and releases to snapshots will work according to the update repositories configured in your IDE.
As a bonus, we will now have meaningful versions (previously we had 1.3.0-201609301555 instead of 1.3.0-1 for example).

Bastien
Post by David Festal
Hi all,
Due to changes in the way OSGI version qualifiers are generated for Ceylon modules and Ceylon distribution artifacts,
people who have already installed a 1.3.1 development plugin in Eclipse will encounter problems to update to new components based on the new SNAPSHOT version.
The reason is that the generated OSGI qualifier will be seen as older than the previous one. This problem will only happen once, due to the switch to the new versioning scheme.
The solution is simple: uninstall the Ceylon components, restart, and install them again, as I show in more details below.
<UpdateProblem-1.png>
Note that all the bundles from the 'Ceylon IDE Runtime Bundles' category are shown without the update icon.
<UpdateProblem2.png>
<UpdateProblem3.png>
select the Ceylon components and uninstall them.
Then restart and you will be able to install the new components based on the last master with the SNAPSHOT version.
Cheers,
David.
Post by Tako Schotanus
Hi people,
Just a heads up about issue https://github.com/ceylon/ceylon/issues/6127 <https://github.com/ceylon/ceylon/issues/6127> which is about SNAPSHOT versions. This issue has been completed and we've just merged the code to master.
The main reason for SNAPSHOT versions is to make sure the modules we generate during development never conflict with the modules we create for an official Ceylon release. So during development all modules will have `-SNAPSHOT` appended to their version to distinguish them from their final version. (As a side-effect it will also make it much easier to find all instances of versions when they need to be changed)
But the switch wasn't a trivial one because of the OSGi information we generate for our modules. Specifically the versions that OSGi supports are not compatible with the versions we support and use for Ceylon. (We're mostly compatible with Maven's versioning). So we first had to come up with a way to unambiguously convert Ceylon versions to OSGi versions.
So please be alert for any strange behaviour you might suddenly be seeing that might be caused by this change. We tested thoroughly but we might have missed something.
Also, David will follow up with a mail explaining what you have to do if you had already installed a version 1.3.1 plugin in your Eclipse.
Cheers,
-Tako
--
You received this message because you are subscribed to the Google Groups "ceylon-dev" group.
Visit this group at https://groups.google.com/group/ceylon-dev <https://groups.google.com/group/ceylon-dev>.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceylon-dev/CAOJRyvpG-XfBzssLR8Zkrrdz7fEwF8%3DPS36SAMdy6GKNWFvmeQ%40mail.gmail.com <https://groups.google.com/d/msgid/ceylon-dev/CAOJRyvpG-XfBzssLR8Zkrrdz7fEwF8%3DPS36SAMdy6GKNWFvmeQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout <https://groups.google.com/d/optout>.
--
You received this message because you are subscribed to the Google Groups "ceylon-dev" group.
Visit this group at https://groups.google.com/group/ceylon-dev <https://groups.google.com/group/ceylon-dev>.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceylon-dev/1475592082.3188.23.camel%40gmail.com <https://groups.google.com/d/msgid/ceylon-dev/1475592082.3188.23.camel%40gmail.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout <https://groups.google.com/d/optout>.
--
You received this message because you are subscribed to the Google Groups "ceylon-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ceylon-dev+***@googlegroups.com.
To post to this group, send email to ceylon-***@googlegroups.com.
Visit this group at https://groups.google.com/group/ceylon-dev.
To view this discussion on the web visit https://groups.google.com/d/msgid/ceylon-dev/2931BC53-4101-4EE2-BBDB-70B99C98D49C%40gmail.com.
For more options, visit https://groups.google.com/d/optout.
Loading...