What I meant with better error messages is for example the problem in main.mk: MAIN = $(shell ./pillar introspect mainDocument) or using MAIN := $(shell ./pillar introspect mainDocument) Which assumes the command always return a "valid" value. (I know make sucks) In my MinGW value of MAIN was empty, then file name is nothing = '.pdf'. But there was no way to figure it out without enabling debug in make. Also I had to setup set -x in shell scripts to see what's going on, and at least in Windows VM nothing is printed in the terminal, so you have to check stdout to see output. Cheers, Hernán 2018-01-29 2:52 GMT-03:00 Hernán Morales Durand <hernan.morales@gmail.com>:
2018-01-28 18:55 GMT-03:00 Stephane Ducasse <stepharo.self@gmail.com>:
Hernan
what we can also do is the following: I set up the pillar project on github with travis and bintray and when you commit the book is automatically built.
Ok, I would try that way.
Tried both options, 1) downloading pre-compiled and 2) building from sources+setting up environment. 1) Nothing happened after "pillar archetype build", exit without error, no stdout output, no _result folder
this is super strange. We should check the AppVeyor because it should tell us what is not working on windows.
2) I got confused with this:
mv pillar ~/.pillar
the idea was that once you get pillar on linux/mac we move the donwloaded version into ~./pillar so that after we have only one pillar installation for all the books (contrary to what is done in Pillar 50 and 60).
here is what I get in my .pillar
cd build
A-ha, that's the thing. My build/ is created one level up and not inside .pillar/
~/.pillar/build(newpipeline*) » ls Pharo.changes mustache pharo-ui pillar-db Pharo.image pharo pharo-vm pillar-dev-upgrade archetypes pharo-local pillar pillar-upgrade
Another difference, you seem to have the wrapper scripts in build/
~/.pillar/build (newpipeline) $ ls pharo* Pharo.changes Pharo.image PharoDebug.log pharo-local/ pharo-ui* pharo-vm/ stderr stdout
and
cd pillar
~/.pillar/pillar(newpipeline*) » ls LICENSE README.md archetypes scripts src
~/.pillar (newpipeline) $ ls archetypes/ build/ LICENSE README.md scripts/ src/
because now I have two directories: the .pillar in HOME and the build/ directory separated. And no "pillar" shell script so should I copy the one from 1) ?
I will re-check tomorrow maybe I'm reading this the wrong way.
So I checked, and discovered that the build image hasn't installed Pillar because there wasn't installed any command handler for introspect
Invalid arguments: "pillar introspect --baseDirectory=C:/Users/mvs/.pillar mainDocument" [
The build.sh installs Pillar as follows through a magic variable:
Metacello new baseline: 'Pillar'; repository: 'filetree:///c/MySmalltalkProjects/Pillar/Latest/pillar/scripts/../src'; load.
But gives a SubscriptOutOfBounds: 2 because WindowsStore>>printPath:on: expects "c:" (I would love a better error description in stdout file "Invalid arguments" is not that informative)
Another load error is that BaselineOfPillar is installing OSSubprocess and it doesn't work on Windows (#externalCallFailed).
Should I open issue?
so that I can see if this is working. I know that guille worked on windows and AppVeyor support but he got distracted by the github refactoring. We hope to come back this week to Pillar. We plan to release a version (still with Magritte) but with a full documentation.
Cool, I will test because I have several chapters ready to publish.
Stef
On Sat, Jan 27, 2018 at 4:47 PM, Hernán Morales Durand <hernan.morales@gmail.com> wrote:
Hi Stef
2018-01-27 9:30 GMT-03:00 Stephane Ducasse <stepharo.self@gmail.com>:
Hi Hernan
On Thu, Jan 25, 2018 at 10:30 PM, Hernán Morales Durand <hernan.morales@gmail.com> wrote:
I am following the Publishing Pillar Booklet guide from here https://github.com/SquareBracketAssociates/Booklet-PublishingAPillarBooklet
pay attention it is not public because it is in flux because we were working on Pillar 70.
Now if you follow the readme of pillar-markup/pillar/ it should work since I used it yesterday.
$ wget https://raw.githubusercontent.com/pillar-markup/pillar/master/download.sh
$ chmod +x download.sh $ ./download.sh
./pillar archetype book make book.
What you should know is that the stable version sucks at the infrastructure level (relying on too many servers + silent failures in bash files).
Can you retry and let me know?
Ok I tried again using MinGW in Windows 8.1 Image is downloaded ok but final step gives an error:
$ make book support/makefiles/prepare.mk:1: *** Undefined setting OUTPUTDIRECTORY (Directory for build products). Stop.
I replaced the expanded shell variables in main.mk from using := to = and it seems to "solve" this problem, though someone else should check why this happens
MAIN = $(shell ./pillar introspect mainDocument)
OUTPUTDIRECTORY = $(shell ./pillar introspect outputDirectory) LATEXTEMPLATE = $(shell ./pillar introspect latexTemplate) LATEXCHAPTERTEMPLATE = $(shell ./pillar introspect latexChapterTemplate) HTMLTEMPLATE = $(shell ./pillar introspect htmlTemplate) HTMLCHAPTERTEMPLATE = $(shell ./pillar introspect htmlChapterTemplate) CHAPTERS = $(shell ./pillar introspect chapters)
$ make book make: *** No rule to make target `/.pdf', needed by `pdfbook'. Stop.
I am using $ make --version GNU Make 3.81
BTW why do you want to compile Booklet-PublishingAPillarBooklet/ If you want just create your own repo and do
wget https://raw.githubusercontent.com/pillar-markup/pillar/master/download.sh chmod +x download.sh ./download.sh ./pillar archetype book make book.
Thanks, I just followed the install instructions.
Hernán
Stef
$ git clone git@github.com:SquareBracketAssociates/Booklet-PublishingAPillarBooklet.git $ cd Booklet-PublishingAPillarBooklet/ $ wget https://raw.githubusercontent.com/pillar-markup/pillar/master/download.sh $ chmod +x download.sh $ ./download.sh
--2018-01-25 17:56:32-- http://get.pharo.org/vm50 Resolving get.pharo.org (get.pharo.org)... 164.132.235.17 Connecting to get.pharo.org (get.pharo.org)|164.132.235.17|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 5819 (5.7K) Saving to: 'STDOUT'
0K ..... 100% 371K=0.02s
2018-01-25 17:56:33 (371 KB/s) - written to stdout [5819/5819]
Downloading the latest pharoVM: http://files.pharo.org/get-files/50/pharo-win-stable.zip pharo-vm/Pharo.exe Downloading PharoV50.sources: http://files.pharo.org/get-files/50/sources.zip Creating starter scripts pharo and pharo-ui --2018-01-25 17:57:21-- https://github.com/pillar-markup/pillar/releases/download/50/Pillar-deployme... Resolving github.com (github.com)... 192.30.253.112, 192.30.253.113 Connecting to github.com (github.com)|192.30.253.112|:443... connected. HTTP request sent, awaiting response... 302 Found Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/41843105/f4e... [following] --2018-01-25 17:57:23-- https://github-production-release-asset-2e65be.s3.amazonaws.com/41843105/f4e... Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 54.231.115.35 Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|54.231.115.35|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 18482449 (18M) [application/octet-stream] Saving to: 'imageLn5zD.zip'
imageLn5zD.zip 10%[=> ] 1.88M 502 B/s in 8m 7s
2018-01-25 18:15:45 (3.94 KB/s) - Read error at byte 1966661/18482449 (Bad file descriptor). Retrying.
--2018-01-25 18:15:46-- (try: 2) https://github-production-release-asset-2e65be.s3.amazonaws.com/41843105/f4e... Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|54.231.115.35|:443... connected. HTTP request sent, awaiting response... 403 Forbidden 2018-01-25 18:15:47 ERROR 403: Forbidden.
Also the download speed was super slow.
Any ideas?
Cheers,
Hernán