• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Plugin stopped working after upgrade to PPro 12.0.0

Enthusiast ,
Oct 18, 2017 Oct 18, 2017

Copy link to clipboard

Copied

I'm on Mac OS Sierra using CEP 6

Tried upgrading to CEP 7, so far without success.

The extension does appear under Menu Bar > Window > Extensions but the panel comes up blank.

It was working fine immediately before upgrade, then stopped working immediately afterwards.

Any ideas how best to trouble-shoot?

TOPICS
SDK

Views

2.5K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Enthusiast , Oct 23, 2017 Oct 23, 2017

sberic   Thanks for all this.  Very helpful and much appreciated.

sberic  wrote

Premiopolis  Your writeup is quite helpful. Let's run through these one-by-one.

Question: does the ZXPSignCmd file require an upgrade for CEP 8 as well?

Honestly, I'm not sure about this. I would suggest testing an unsigned panel. If the unsigned panel works but the signed one doesn't, then your issue is likely in the signing system and should be reported (e.g. "Unsigned panel stops working with current signing system").

...

Votes

Translate

Translate
Community Beginner ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

I have the same problem in Illustrator.
Here is my post: Extensions don't show up in Ai CC 2018

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

The latest Premiere update uses a new version of CEP. You have to enable PlayerDebugMode for this version. Please check 2.) of the PProPanel docs: https://github.com/Adobe-CEP/Samples/blob/master/PProPanel/ReadMe.md On a Mac you would have to open the Terminal and enter: defaults write ~/Library/Preferences/com.adobe.CSXS.8.plist PlayerDebugMode 1 I hope this helps. Thomas

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

Thomas_Szabo  wrote

The latest Premiere update uses a new version of CEP. You have to enable PlayerDebugMode for this version. Please check 2.) of the PProPanel docs: https://github.com/Adobe-CEP/Samples/blob/master/PProPanel/ReadMe.md On a Mac you would have to open the Terminal and enter: defaults write ~/Library/Preferences/com.adobe.CSXS.8.plist PlayerDebugMode 1 I hope this helps. Thomas

Thanks Thomas,

In my case no luck with CEP 7 or 8 nor with PlayerDebugMode

A few questions along those lines

Re CEP Version:

A note on this discussion (https://forums.adobe.com/message/9508197#9508197) from May this year suggests CEP 7 is the active version.

And Bruce's Node.js announcement (https://forums.adobe.com/message/9850397#9850397) from Sep 26, 2017 suggests CEP 8 is still a pre-release.

Re PlayerDebugMode

In my case these are signed packages anyway, so PlayerDebugMode wouldn't necessarily be the issue.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

Thanks to gustine09 for pointing out that Illustrator, too, is having an issue. (So, btw, is After Effects)

Over on the Illustrator thread

https://forums.adobe.com/message/9897536#9897536

there's a suggestion that the issue could be the App version number listed in the Manifest.xml.

This didn't resolve the issue on my ened, but for what it's worth, the Versions I'm using in the manifest(s):

For the various Apps I've got

  <Host Name="PPRO" Version="[9.0,99.9]" />

  <Host Name="AEFT" Version="[13.0,99.9]" />

  <Host Name="AUDT" Version="[10.0,99.9]" />

  <Host Name="PHXS" Version="[17.0,99.9]" />

  <Host Name="PHSP" Version="[17.0,99.9]" />

  <Host Name="ILST" Version="[17.0,99.9]" />

  <Host Name="IDSN" Version="[12.0,99.9]" />

I'm assuming the lower numbers make it inclusive, but just in case...

...here they are again, updated for the latest relevant 2018 Adobe releases

  <Host Name="PPRO" Version="[12.0,99.9]" />

  <Host Name="AEFT" Version="[15.0,99.9]" />

  <Host Name="AUDT" Version="[11.0,99.9]" />

  <Host Name="PHXS" Version="[19.0,99.9]" />

  <Host Name="PHSP" Version="[19.0,99.9]" />

  <Host Name="ILST" Version="[22.0,99.9]" />

  <Host Name="IDSN" Version="[13.0,99.9]" />

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

Hi Premiopolis,

CC 2018 does use CEP 8.  Here you can find info on porting from CEP 7 to 8:

https://github.com/Adobe-CEP/CEP-Resources/blob/master/CEP_8.x/Documentation/CEP%208.0%20HTML%20Exte...

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 19, 2017 Oct 19, 2017

Copy link to clipboard

Copied

Premiopolis  wrote

I'm on Mac OS Sierra using CEP 6

Tried upgrading to CEP 7, so far without success.

Are you certain you didn't update from CEP 7 to CEP 8? Premiere Pro CC 2018 runs CEP 8. I'm fairly certain that Premiere Pro CC 2017.1 (11.1) ran CEP 7. This is only important for your 'minimal supported CEP version', which comes through in the RequiredRuntimeList in the extension's manifest.xml file:

<RequiredRuntimeList>

    <RequiredRuntime Name="CSXS" Version="7.0" />

</RequiredRuntimeList>

This is almost certainly not your problem.

Premiopolis  wrote

The extension does appear under Menu Bar > Window > Extensions but the panel comes up blank.

It was working fine immediately before upgrade, then stopped working immediately afterwards.

Any ideas how best to trouble-shoot?

When you update to a new application version (e.g. CC 2017.1 → CC 2018), there are two things you need to check:

  1. Ensure you can Debug Unsigned Extensions using the new CEP version. You very likely did this in the past when you first set up your panel.
    • Win: regedit > HKEY_CURRENT_USER/Software/Adobe/CSXS.8, then add a new entry PlayerDebugMode of type "string" with the value of "1".
    • Mac: In the terminal, type: defaults write com.adobe.CSXS.8 PlayerDebugMode 1
  2. Ensure the extension's HostList range includes the new app version. You need to tell the application that your extension is compatible with the new version of Premiere Pro. Premiere Pro CC 2018 is actually version 12.0 and the range needs to include that. We updated our HostList entry to look like the following:

    <HostList>
        <Host Name="PPRO" Version="[9.1,12.9]" />
    </HostList>

Once we made those two changes we were able to both see the extension in the window list and launch it successfully.

I hope this helps.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 20, 2017 Oct 20, 2017

Copy link to clipboard

Copied

Thanks sberic​

sberic​ Premiere Pro CC 2018 runs CEP 8. I'm fairly certain that Premiere Pro CC 2017.1 (11.1) ran CEP 7. This is only important for your 'minimal supported CEP version', which comes through in the RequiredRuntimeList in the extension's manifest.xml file:

Thanks for clarifying, and thanks as well to Zac Lamfor confirming as well above.

sberic​ <HostList>     <Host Name="PPRO" Version="[9.1,12.9]" /> </HostList>

I had it as

<Host Name="PPRO" Version="[12.0,99.9]" />

Setting it to

<Host Name="PPRO" Version="[9.1,12.9]" />

seems to work as well / no difference

sberic​  Are you certain you didn't update from CEP 7 to CEP 8?

Pretty certain.  In the manifest I had

<RequiredRuntimeList>

    <RequiredRuntime Name="CSXS" Version="7.0" />

</RequiredRuntimeList>

And a CSInterface.js with

/** CSInterface - v7.0.0 */

on line 14

Curiously, if I switch the Manifest to Version="8.0" and re-sign, the extension no longer appears in PPro's Window > Extensions Menu.

I tested that with CSInterface.js v7.0.0 and CSInterface.js v8.0.0 (downloaded from https://raw.githubusercontent.com/Adobe-CEP/CEP-Resources/master/CEP_8.x/CSInterface.js )

Any ideas why a signed Version="8.0" manifest makes a difference?

I'm on PPro v12 for Mac on OS Sierra

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 20, 2017 Oct 20, 2017

Copy link to clipboard

Copied

Premiopolis  wrote

Curiously, if I switch the Manifest to Version="8.0" and re-sign, the extension no longer appears in PPro's Window > Extensions Menu.

I tested that with CSInterface.js v7.0.0 and CSInterface.js v8.0.0 (downloaded from https://raw.githubusercontent.com/Adobe-CEP/CEP-Resources/master/CEP_8.x/CSInterface.js )

Out of curiosity, are you able to run this extension in an unsigned manner?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 20, 2017 Oct 20, 2017

Copy link to clipboard

Copied

No, but I would think there shouldn't be a big difference.

If I'm understanding correctly, a signed version includes 3 additional items: file "mimetype" and folder "META-INF" with file "Signatures.xml" inside (generated by ZXPSignCmd).  Without those you need to set your system to allow unsigned extensions, as you describe above.  So removing the 3 items effectively makes it unsigned.  In my case I'm set to allow unsigned extensions as well as working with signed extensions.

Question: does the ZXPSignCmd file require an upgrade for CEP 8 as well?

I downloaded some sample CEP 8 panels from GitHub - Adobe-CEP/CEP-Resources: Getting Started with Adobe CC 2014 Extension SDK

The download has samples in folder CEP_8.x/CEP_HTML_Test_Extension-8.0

Those did work, which is promising, but it seems to be running CEP 7

In that example's CSInterface.js apparently v7.0.0

And the "manifest.xml" contains

        <RequiredRuntimeList>

            <RequiredRuntime Name="CSXS" Version="6.0"/>

        </RequiredRuntimeList>

(Assuming the above represent lowest allowable)

That suggests CEP 7 should work in PPro 12, but not necessarily CEP 8

Question: is the CSInterface.js the main thing defining which CEP version?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 20, 2017 Oct 20, 2017

Copy link to clipboard

Copied

Here's where I've gotten so far...

1 - Changing the version number in the manifest affects whether the plug-in is available.

So for this section...

    <RequiredRuntimeList>

      <RequiredRuntime Name="CSXS" Version="X.0" />

    </RequiredRuntimeList>

If X is set to 8, the Custom Panel does not appear in Menu > Window > Extension.

If it's set to 6 or 7, the Custom Panel appears.

I'm assuming sberic​'s correct re

This is only important for your 'minimal supported CEP version', which comes through in the RequiredRuntimeList in the extension's manifest.xml file...certainly not your problem.

and therefore going with the lower number is not compromising CEP 8 functionality.  T/F?

2 - Comments in the manifest.xml make the plug-in unavailable

Somewhere in the trouble-shooting I commented out the following two lines under the <CEFCommandLine>

<Parameter>--allow-file-access</Parameter>

<Parameter>--allow-file-access-from-files</Parameter>

I hadn't seen them any example files and thought they might a culprit.

Turned out the entries didn't stop the plugin from appearing, but commenting them out did.

Question: Anyone know what those parameters do?

Thanks to Zac Lam for pointing to CEP-Resources/CEP 8.0 HTML Extension Cookbook.md at master · Adobe-CEP/CEP-Resources · GitHub which had some clues to this.

3 - CSInterface version does not affect whether the plug-in appears

I tested with v6, 7 & 8 and in all cases the plugin appeared in the menu.

I'm continuing with v8.

At this point the plugin appears and runs.  Some the functionality has clearly changed.  Wrestling with jQuery at the moment.

But at least the plug-in is accessible, and the Chrome console is working better than ever.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 23, 2017 Oct 23, 2017

Copy link to clipboard

Copied

Premiopolis​ Your writeup is quite helpful. Let's run through these one-by-one.

Question: does the ZXPSignCmd file require an upgrade for CEP 8 as well?

Honestly, I'm not sure about this. I would suggest testing an unsigned panel. If the unsigned panel works but the signed one doesn't, then your issue is likely in the signing system and should be reported (e.g. "Unsigned panel stops working with current signing system").

Question: is the CSInterface.js the main thing defining which CEP version?

No. The CEP version is baked into the application (see here for the table). CEP stands for Common Extensibility Platform and refers to the set of technologies that enable scripting/panel extensions across Adobe applications. In the past, CEP used to come in two flavors: Flash and HTML. Both had different interfaces that connected to the same system (presumably). The Flash interface is no longer available, leaving only the HTML one. This is also why you'll see verbiage in the documentation that reads "CEP HTML engine". This is to distinguish it from the old (dead) CEP Flash engine. To see the list of technologies that make up the CEP HTML engine, see this table.

The CSInterface.js file is simply a JavaScript-side wrapper interface to the CEP system built into the application. Adobe updates it in lock-step with the underlying CEP engine to ensure that any new features are made available. You will notice that some APIs are marked with comments like "Since 6.1.0". This means that the API became available (or was implemented/enabled on the JS side, at least) with that version of CEP - it's a hint that says "don't try to use this with earlier versions of CEP".

I would suggest comparing the CEP7 and CEP8 versions of the CSInterface.js file. From a high level, they both have the exact same number of lines. If you take a look at the diff, there are a mere 3 changes in the interface: a version number change, an added null-check, and a comment adjustment. Certainly the underlying CEP8 changes are far, far larger than that.

2 - Comments in the manifest.xml make the plug-in unavailable

...

Turned out the entries didn't stop the plugin from appearing, but commenting them out did.

You must be extremely careful when commenting out lines in the CEP XML manifest files. Double-hyphens ("--") are illegal within comments in XML documents and will cause the parsing to fail. This will cause the CEP extensions to fail to load (take a look at the logs as shown in the post at that link and you'll probably see something similar).

To sidestep this issue and actually verify that there's any connection (doubtful), add a space between the hyphens when you comment them out.

3 - CSInterface version does not affect whether the plug-in appears

I tested with v6, 7 & 8 and in all cases the plugin appeared in the menu.

I'm continuing with v8.

I assume you're referring to CSInterface.js here. You're likely good to go with v8, even on v7 CEP platforms. The only changes were comments and an added safety-check.

At this point the plugin appears and runs.  Some the functionality has clearly changed.  Wrestling with jQuery at the moment.

But at least the plug-in is accessible, and the Chrome console is working better than ever.

This is very likely due to the fact that CEP8 includes a much newer version of the Chromium Embedded Framework (CEF) than CEP7 did. With CEP7 (and earlier) we were effectively working with Chrome 41. With the CEP8 update, we get Chrome 57. A lot changed between those versions of Chrome, especially with respect to the Chrome DevTools. At the very least, this should make debugging CEP8 a more solid experience!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Enthusiast ,
Oct 23, 2017 Oct 23, 2017

Copy link to clipboard

Copied

LATEST

sberic   Thanks for all this.  Very helpful and much appreciated.

sberic  wrote

Premiopolis  Your writeup is quite helpful. Let's run through these one-by-one.

Question: does the ZXPSignCmd file require an upgrade for CEP 8 as well?

Honestly, I'm not sure about this. I would suggest testing an unsigned panel. If the unsigned panel works but the signed one doesn't, then your issue is likely in the signing system and should be reported (e.g. "Unsigned panel stops working with current signing system").

I'm not aware of an upgrade, and It definitely does not require an upgrade.  I've been successfully singing panels since last posting.  All's ok there.

Question: is the CSInterface.js the main thing defining which CEP version?

No. The CEP version is baked into the application (see here for the table). CEP stands for Common Extensibility Platform and refers to the set of technologies that enable scripting/panel extensions across Adobe applications. In the past, CEP used to come in two flavors: Flash and HTML. Both had different interfaces that connected to the same system (presumably). The Flash interface is no longer available, leaving only the HTML one. This is also why you'll see verbiage in the documentation that reads "CEP HTML engine". This is to distinguish it from the old (dead) CEP Flash engine. To see the list of technologies that make up the CEP HTML engine, see this table.

The CSInterface.js file is simply a JavaScript-side wrapper interface to the CEP system built into the application. Adobe updates it in lock-step with the underlying CEP engine to ensure that any new features are made available. You will notice that some APIs are marked with comments like "Since 6.1.0". This means that the API became available (or was implemented/enabled on the JS side, at least) with that version of CEP - it's a hint that says "don't try to use this with earlier versions of CEP".

I would suggest comparing the CEP7 and CEP8 versions of the CSInterface.js file. From a high level, they both have the exact same number of lines. If you take a look at the diff, there are a mere 3 changes in the interface: a version number change, an added null-check, and a comment adjustment. Certainly the underlying CEP8 changes are far, far larger than that.

Question: is the CSInterface.js the main thing defining which CEP version?

No. The CEP version is baked into the application (see here for the table). CEP stands for Common Extensibility Platform and refers to the set of technologies that enable scripting/panel extensions across Adobe applications. In the past, CEP used to come in two flavors: Flash and HTML. Both had different interfaces that connected to the same system (presumably). The Flash interface is no longer available, leaving only the HTML one. This is also why you'll see verbiage in the documentation that reads "CEP HTML engine". This is to distinguish it from the old (dead) CEP Flash engine. To see the list of technologies that make up the CEP HTML engine, see this table.

The CSInterface.js file is simply a JavaScript-side wrapper interface to the CEP system built into the application. Adobe updates it in lock-step with the underlying CEP engine to ensure that any new features are made available. You will notice that some APIs are marked with comments like "Since 6.1.0". This means that the API became available (or was implemented/enabled on the JS side, at least) with that version of CEP - it's a hint that says "don't try to use this with earlier versions of CEP".

I would suggest comparing the CEP7 and CEP8 versions of the CSInterface.js file. From a high level, they both have the exact same number of lines. If you take a look at the diff, there are a mere 3 changes in the interface: a version number change, an added null-check, and a comment adjustment. Certainly the underlying CEP8 changes are far, far larger than that.

Thanks.  Brilliant.  And obvious... now that you say it.

2 - Comments in the manifest.xml make the plug-in unavailable

...

Turned out the entries didn't stop the plugin from appearing, but commenting them out did.

You must be extremely careful when commenting out lines in the CEP XML manifest files. Double-hyphens ("--") are illegal within comments in XML documents and will cause the parsing to fail. This will cause the CEP extensions to Re: Node Enabled by Default in 2017.1?  (take a look at the logs as shown in the post at that link and you'll probably see something similar).

To sidestep this issue and actually verify that there's any connection (doubtful), add a space between the hyphens when you comment them out.

What a distinction.  Double hyphens ok.  Double hyphens WITHIN comments are illegal.  Key distinction, and again, obvious after you point it out.

All very much appreciated.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines