Ross,

Thanks for your quick response. I've trimmed and responded to questions, below:

Ross Gardler wrote:

> Moshe Yudkowsky wrote:
>
>> I'm having a great deal of difficulty transitioning from 0.5.1 to 0.7. I've searched the archives, but I can't find some very specific answers.
>
>
> Did you follow the instructions for upgrading from 0.6 before attampting the upgrade to 0.7?


Nope, completely escaped my notice. I've since looked at them & done a synchronization of forrest.properties and skinconf.xml. I've done a "forrest clean" as well.

> Do forrest -verbose and you'll get more info about the failure.


The failure is quite peculiar:

>       ------------------------------------------------
>       | The following properties could be removed from future builds:
>       | //which skin to apply
>       | project.skin        = disaggregate
>       | //where your documentation xml is
> | project.content-dir = /home/moshe/web/disaggregate/site/home/moshe/web/disaggregate/site/src/documentation
>       ------------------------------------------------
> Exiting /usr/local/share/forrest-current/main/forrest.build.xml.


So far, so good. My project.skin has been accepted, aside from that ominous note about future deprecation.

> check-skin:
> Unable to find dir /usr/local/share/forrest-current/main/webapp/skins/disaggregate > Unable to find file /usr/local/share/forrest-current/main/webapp/skins/disaggregate.zip > Unable to find dir home/moshe/web/disaggregate/site/src/documentation/skins/disaggregate


This is strange. The final line is missing the leading "/" on the pathname, even though I've set

project.skins-dir=${project.content-dir}/skins

I've even un-set it to see what would happen; after all, I'm really just using the default value. Even if I use the entire pathname explicitly in project.skins-dir, I still get this "leading path name" error.

This error "smells" like it's using default values and doesn't see my skins-dir setting; not only that, but it fails to find my skin even though it's where it should be by default! Please note that, as per the forrest.properties default structure, skins-dir is set *after* the .skin is set, but IIRC the properties file is parsed in one gulp and that shouldn't be a problem.

Because I set

forrest.skins.descriptors=
forrest.plugins.descriptors=

in an effort to stop the failing fetch, the script proceeds, and then crashes and burns on an attempt to get the plugins. (I don't know why it's summoning a plugin; that's what I need to look at next, probably some other, more minor config error on my part.)

* Question: what's this project.skins-dir error?


> The skin descriptor file (skins.xml) is only retrieved if Forest cannot find the skin it is being told to use. Please ensure that you are using a skin that is present (set in forrest.properties)


Previously done, as above.

> Which skin are you trying to use (set in forrest.properties)


A private skin, with private xsl files that will no doubt need some refurbishing.

>> I also have other issues:
>>
>> * I have set forrest.skins.descriptors to file://./src/documentation/skins/skins.xml, but the system still attempts to fetch http://forrest.apache.org/skins/skins.xml.
>
>
>
> That should not happen. It sounds like it is using the default setting provided by forrest in default-forrest.properties. Can you please veryify if this is the case.


Here's the log printout that I get when I use

forrest.skins.descriptors=file://./src/documentation/skins/skins.xml

instead of leaving things blank:

> fetch-skins-descriptors:
> fetching descriptor: file://./src/documentation/skins/skins.xml
> Getting: file://./src/documentation/skins/skins.xml
> Error getting file://./src/documentation/skins/skins.xml to /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml > Unable to find /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml
> Error in class net.sf.antcontrib.logic.IfTask



If I use the complete path name I get a very explicit error:

forrest.skins.descriptors=file:///home/moshe/web/disaggregate/site/src/documentation/skins/skins.xml

and then:

> fetch-skins-descriptors:
> fetching descriptor: file:///home/moshe/web/disaggregate/site/src/documentation/skins/skins.xml > Getting: file:/home/moshe/web/disaggregate/site/src/documentation/skins/skins.xml > Error getting file:/home/moshe/web/disaggregate/site/src/documentation/skins/skins.xml to /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml > Unable to find /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml
> Error in class net.sf.antcontrib.logic.IfTask


This skins.xml file is the off-the-shelf file I d/l from the Internet.

If I use

forrest.skins.descriptors=http://forrest.apache.org/skins/skins.xml

I get this error log:

> fetch-skins-descriptors:
> fetching descriptor: http://forrest.apache.org/skins/skins.xml
> Getting: http://forrest.apache.org/skins/skins.xml
> Error getting http://forrest.apache.org/skins/skins.xml to /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml > Unable to find /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml
> Error in class net.sf.antcontrib.logic.IfTask


There is no skins-1.xml mentioned in any config file in either the distro or in my various files.


* Question: any advice on what's going on here?


Further comments:

>> - whether I can use relative path names (and where they start out relative to) in "file://" style skin path names
>
>
> not sure


Once other stuff is debugged, I ought to know the answer to this.


> Forget skins.xml and focus on why it seems that you forrest.properties are not set correctly. You problem is that when Forrest looks for your skin it cannot find it.


Thanks, I will focus. I've tried a half-dozen different configs, and none are working.

I will work with the distro-created, pure "seed" for a while and see if I can get that one working; but in the meantime, if you (or someone else) has ideas, I'd appreciate them.