Travis 140 is yaml block notation. It basically means that all statements following the -| at a given indentation level are considered a single block hence it is a method for grouping several logically-connected shell script statements into a single execution block so to speak. Logic that spans multiple bash statements (e.g. if/then/else) either needs to use block notation or be encapsulated in a script. Travis "executes" each "-" statement individually checking the exit status to determine if the build should continue or not. So, in the case of a block, there is a single exit code for the statement that represents a block.
Not sure, you probably want to ask @abdullahtahiriyo because he added the Windows ccache environment variables https://github.com/FreeCAD/FreeCAD/comm ... c0c1756ef0
AFAIK the Linux packages on Travis install very quickly because they cache them locally within their infrastructure so I'm not sure how much time splitting them out would actually save. The PYTHON_MAJOR_VERSION is set to 3 vs. 2 for the respective Linux builds so that environment variable could be used to only install the python2 or python3 dependencies accordingly.sgrogan wrote: ↑Wed Jan 22, 2020 1:49 am2) For the linux gcc builds, it seems we install all the packages we need for QT4/PY2 and QT5/PY3, there should be a way to split this. Nested case statements? Has anyone tried to split this? Maybe this also effects the cache, I don't think so but maybe. The cache is not working for the gcc builds.
Looks like this:
The cache is smaller, I think most of the reduction was due to your work with the Libpack.
Code: Select all
cache hit rate 0.07 %