+ Start a Discussion
Celoxis TechnologiesCeloxis Technologies 

Questions about Package versioning and release to AppExchange

I have some queries on release versioning and listing subsequent versions on AppExchange:
  1. Can I release and maintain 2 versions on AppExchange? In other words, if there a v1.0 that is listed on AppExchange, and we release a new version v1.1 that has passed Security Review and ready to be listed on AppExchange, does it automatically replace the v1.0 that was listed earlier? 
  2. Do the existing customer orgs get any notification of a new released version? If yes, does it automatically contain the install link? If not, what is the most preferred practice?
  3. If I deprecate an earlier version, do the customer orgs using this version get a notification to upgrade? Are they forced to upgrade?
  4. If a patch is created for a particular released version, do I have to manually inform all customer orgs using it? Or do they get automatic notifications of the same and can choose to apply the patch as needed?
Thanks in advance!
NagaNaga (Salesforce Developers) 
Hi Celoxis,

Here is a similar scenario

On A, System.requestVersion called from code contained in your managed package gives you the version number of the managed package.

On B, assuming you are using the License Management App (LMA), the managed package versions are all represented in there. (PPS But not the patch part. So if you need that you will have to say manually set a static variable in an Apex to the patch number as part of the patch creation process.)

For a different purpose than this, we added a Force.com Site to our LMA org to provide no authentication access to a single REST GET API that our application calls. This is just 50 lines of code using @RestResource, plus a similar amount of HttpRequest code at the client-side (your app). You also have to add a Remote Site to your app to allow the access.

You could add an API in the same way to provide the latest managed package version number of your app - PackageVersion is a child of Package - see e.g. License Management App 2.1 Administration and User Guide.

PS Uwe correctly points out that the page version value shown by the LMA is the manually assigned version - Salersforce's example would be "Summer '14". We already include SVN version numbers in that field, and while manually adding the major.minor.patch number there too (inside some easily parsed delimiters) is a bit annoying it would make those numbers available.

Please let me know if this helps

Best Regards
Naga kiran