GBDocSetPublishGenerator failed generating output #412

Closed
djehring opened this Issue Oct 24, 2013 · 10 comments

Comments

Projects
None yet
4 participants

Since updating to the Xcode Version 5.0.1 (5A2053) all of my appledoc builds that have been working for a couple of years are generating this error at the install docs stage:

appledoc version: 2.2 (build 961)

IINFO | Installing DocSet...
VERBOSE | GBDocSetInstallGenerator is generating output...
VERBOSE | Installing DocSet to Xcode...
VERBOSE | Generation step 5/5: Running GBDocSetPublishGenerator...
VERBOSE | Copying template files from '/Users/David/Library/Application Support/appledoc/publish' to '/Users/David/Library/Developer/Xcode/DerivedData/BPMac-asoeltcsvsgsuaclcbrbhgxumfqg/Build/Products/help/publish'...
VERBOSE | Parsing template from /Users/David/Library/Application Support/appledoc/publish/xml-template.xml...
INFO | Preparing DocSet for publishing...
VERBOSE | GBDocSetPublishGenerator is generating output...
VERBOSE | Initializing directory at '/Users/David/Library/Developer/Xcode/DerivedData/BPMac-asoeltcsvsgsuaclcbrbhgxumfqg/Build/Products/help/publish'...
Generation step 5/5 failed: GBDocSetPublishGenerator failed generating output, aborting!
docsetutil failed to package the documentation set!
Error loading documentation set: Documentation set could not be read.
Unable to find the database or 'Nodes.xml' configuration file.

The docset folder is there and populated (including nodes.xml), any ideas ?

Owner

tomaz commented Oct 24, 2013

This is likely related to #408.

There seem to be a few issues now that were discovered after commit 011d5cc. See also #409.

Is there something about finalizing a document and installing it that we need to know and now factor into our builds? Maybe @boredzo could chime in here?

Finally, if it turns out that that commit broke something, can we roll it back? Is there some sort of regression testing in place for appledoc?

Contributor

boredzo commented Oct 25, 2013

Finalizing a docset and then installing is what appledoc already did; all I did was split it up into two separate phases so that the user (or my GUI app) can stop at finalizing.

There shouldn't be anything you need to change for this to work. --finalize is implied by --install, so you shouldn't need to specify it explicitly.

I didn't really test publishing, though, so there's still a chance that I broke that somehow.

One possibility: --publish needs to imply --finalize. But it already did not imply --install, which was where the finalization code previously lived, so that doesn't really make sense. It's the best guess I've got, if we go with the assumption that my change was at fault.

Contributor

boredzo commented Oct 30, 2013

I wonder if 5.0.1 changed something about docsetutil.

@djehring: Are the sources you're generating docs from public?

I don't think it's 5.01, I've gone back to the previous appledoc binary

  • appledoc version: 2.1 (build 858) - and it works fine with 5.01.

Dr David Jehring
CEO Black Pear Software Ltd

Tel. +44 1905 621227
Mob. +44 7884 433959

/This E-mail is confidential and may also be privileged. It must not be
disclosed to any other person or party without the prior authority of
Black Pear Software Limited. To do so may be unlawful. If you are not
the intended recipient of this, please notify us immediately and delete
the e-mail received./

/This e-mail and any attached files have been checked for viruses.
Although we employ virus protection software, we cannot accept any
responsibility for any loss or damage to your systems due to viruses or
malicious code not detected. /

/Any views or opinions contained within this message are solely those of
the author and do not necessarily represent those of Black Pear Software
Limited./

Peter Hosey wrote:

I wonder if 5.0.1 changed something about docsetutil.

@djehring https://github.com/djehring: Are the sources you're
generating docs from public?


Reply to this email directly or view it on GitHub
#412 (comment).

Contributor

boredzo commented Oct 31, 2013

@djehring: You didn't answer my question. Are the sources you're generating docs from public?

tomaz added a commit that referenced this issue Oct 31, 2013

Fixed docset installation. Addressing #407, #408, #409 and #412.
The problem was due to template files copy step issued for each output generator. This code basically deletes output path and copies template files over. However in doing so after docset was already prepared, it invalidated all previous effort.

PS Don't worry about the number of addressed issues - these are (likely) pointing to the same problem!
Owner

tomaz commented Oct 31, 2013

I think I found the culprit, please verify and close the issue if so.

To keep merit where it belongs :) - it's not @boredzo code fault, the change he introduced merely exposed the weakness of generation system.

Apologies, no they comprise of a dozen or so internal projects each with
their own docsets all of which fail.

Dr David Jehring
CEO Black Pear Software Ltd

Tel. +44 1905 621227
Mob. +44 7884 433959

/This E-mail is confidential and may also be privileged. It must not be
disclosed to any other person or party without the prior authority of
Black Pear Software Limited. To do so may be unlawful. If you are not
the intended recipient of this, please notify us immediately and delete
the e-mail received./

/This e-mail and any attached files have been checked for viruses.
Although we employ virus protection software, we cannot accept any
responsibility for any loss or damage to your systems due to viruses or
malicious code not detected. /

/Any views or opinions contained within this message are solely those of
the author and do not necessarily represent those of Black Pear Software
Limited./

Peter Hosey wrote:

@djehring https://github.com/djehring: You didn't answer my
question. Are the sources you're generating docs from public?


Reply to this email directly or view it on GitHub
#412 (comment).

tomaz added a commit that referenced this issue Nov 2, 2013

Fixed docset publish default values case. Addressing #409 and #412.
This commit makes docsetutil tool compile the xar file, however I did not test the results. Plus the code may potentially introduce Dash compatibility issues added with commit 75a3907.
Owner

tomaz commented Nov 2, 2013

Try with the latest build, close the issue if it works now.

djehring commented Nov 6, 2013

Works perfectly now, thanks

@djehring djehring closed this Nov 6, 2013

irshadpc added a commit to irshadpc/appledoc that referenced this issue Mar 6, 2017

Fixed docset installation. Addressing #407, #408, #409 and #412.
The problem was due to template files copy step issued for each output generator. This code basically deletes output path and copies template files over. However in doing so after docset was already prepared, it invalidated all previous effort.

PS Don't worry about the number of addressed issues - these are (likely) pointing to the same problem!

irshadpc added a commit to irshadpc/appledoc that referenced this issue Mar 6, 2017

irshadpc added a commit to irshadpc/appledoc that referenced this issue Mar 6, 2017

Fixed docset publish default values case. Addressing #409 and #412.
This commit makes docsetutil tool compile the xar file, however I did not test the results. Plus the code may potentially introduce Dash compatibility issues added with commit 75a3907.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment