Skip to content

Commit

Permalink
Merge pull request GafferHQ#33 from ericmehl/gaffer_0.60.0.0
Browse files Browse the repository at this point in the history
Gaffer 0.60.0.0
  • Loading branch information
ericmehl authored Jun 24, 2021
2 parents 720b46d + 7cd3905 commit 99332e0
Show file tree
Hide file tree
Showing 292 changed files with 3,885 additions and 1,016 deletions.
23 changes: 21 additions & 2 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,12 @@ on:
branches:
- master
- '*_maintenance'
- 'msvc2017*'
pull_request:
branches:
- master
- '*_maintenance'
- 'msvc2017*'
release:
types: [published]

Expand All @@ -33,6 +35,7 @@ jobs:
linux-python2-debug,
linux-python3,
macos-python2,
windows-python3,
]

include:
Expand Down Expand Up @@ -79,6 +82,14 @@ jobs:
testRunner: bash -c
sconsCacheMegabytes: 400

- name: windows-python3
os: windows-2019
buildType: RELEASE
variant: windows-python3
publish: false
containerImage:
dependenciesURL: https://github.com/hypothetical-inc/gafferDependencies/releases/download/3.0.0a/gafferDependencies-3.0.0a-Python3-windows.zip

runs-on: ${{ matrix.os }}

container: ${{ matrix.containerImage }}
Expand Down Expand Up @@ -139,10 +150,17 @@ jobs:
# below.
run: |
echo GAFFER_DEPENDENCIES_HASH=`python .github/workflows/main/installDependencies.py --archiveURL ${{ matrix.dependenciesURL }} --dependenciesDir ${{ env.GAFFER_BUILD_DIR }} --outputFormat "{archiveDigest}"` >> $GITHUB_ENV
./config/installArnold.sh
./config/installDelight.sh
.github/workflows/main/installArnold.py
echo ARNOLD_ROOT=$GITHUB_WORKSPACE/arnoldRoot >> $GITHUB_ENV
- name: Install 3Delight
# The `$GITHUB_ENV` shenanigans creates an environment variable
# containing the hash of the archive, for use in the cache key
# below.
run: |
./config/installDelight.sh
echo DELIGHT=$GITHUB_WORKSPACE/3delight >> $GITHUB_ENV
if: runner.os == 'macOS' || runner.os == 'Linux'

- name: Cache
uses: actions/cache@v1
Expand All @@ -165,6 +183,7 @@ jobs:
echo "::add-matcher::./.github/workflows/main/problemMatchers/unittest.json"
${{ matrix.testRunner }} "${{ env.GAFFER_BUILD_DIR }}/bin/gaffer test"
echo "::remove-matcher owner=unittest::"
if: runner.os == 'macOS' || runner.os == 'Linux'

- name: Build Docs and Package
# We currently experience sporadic hangs in the docs builds (mac), this
Expand Down
65 changes: 65 additions & 0 deletions .github/workflows/main/installArnold.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
#!/usr/bin/env python

##########################################################################
#
# Copyright (c) 2021, Hypothetical Inc. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are
# met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# * Neither the name of Image Engine Design nor the names of any
# other contributors to this software may be used to endorse or
# promote products derived from this software without specific prior
# written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
# IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
##########################################################################

import sys
import os
import urllib
import zipfile

arnoldVersion="6.0.1.0"

arnoldPlatform = { "darwin" : "osx", "win32" : "windows" }.get( sys.platform, "linux" )
archiveFormat = { "win32" : "zip" }.get( sys.platform, "tar.gz" )

arnoldArchive = "Arnold-{arnoldVersion}-{arnoldPlatform}.{archiveFormat}".format(
arnoldVersion = arnoldVersion,
arnoldPlatform = arnoldPlatform,
archiveFormat = archiveFormat
)

url="forgithubci.solidangle.com/arnold/{}".format( arnoldArchive )

os.makedirs( "arnoldRoot" )
os.chdir( "arnoldRoot" )

print( "Downloading Arnold \"https://{}\"".format( url ) )
urllib.urlretrieve( url )

if archiveFormat == "tar.gz" :
os.system( "tar -xzf {}".format( arnoldArchive ) )
elif archiveFormat == "zip":
with zipfile.ZipFile( arnoldArchive ) as f :
f.extractall()
10 changes: 8 additions & 2 deletions .github/workflows/main/installDependencies.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
import sys
import argparse
import hashlib
import zipfile

if sys.version_info[0] < 3 :
from urllib import urlretrieve
Expand All @@ -46,7 +47,7 @@

# Determine default archive URL.

platform = "osx" if sys.platform == "darwin" else "linux"
platform = { "darwin" : "osx", "win32" : "windows" }.get( sys.platform, "linux" )
defaultURL = "https://github.com/ImageEngine/cortex/releases/download/10.2.0.0-a2/cortex-10.2.0.0-a2-" + platform + "-python2.tar.gz"

# Parse command line arguments.
Expand Down Expand Up @@ -81,7 +82,12 @@
archiveFileName, headers = urlretrieve( args.archiveURL )

os.makedirs( args.dependenciesDir )
os.system( "tar xf %s -C %s --strip-components=1" % ( archiveFileName, args.dependenciesDir ) )
if platform != "windows":
os.system( "tar xf %s -C %s --strip-components=1" % ( archiveFileName, args.dependenciesDir ) )
else:
with zipfile.ZipFile( archiveFileName ) as f :
f.extractall( path = args.dependenciesDir )


# Tell the world

Expand Down
8 changes: 7 additions & 1 deletion .github/workflows/main/sconsOptions
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@
##########################################################################

import os
import sys

platform = {"darwin" : "osx", "win32" : "windows"}.get(sys.platform, "linux")

ENV_VARS_TO_IMPORT = "PATH"

Expand All @@ -46,6 +49,9 @@ DELIGHT_ROOT = os.environ["DELIGHT"]
BUILD_DIR = os.environ["GAFFER_BUILD_DIR"]
INSTALL_DIR = os.path.join( "install", os.environ["GAFFER_BUILD_NAME"] )

PACKAGE_FILE = "%s.tar.gz" % os.environ["GAFFER_BUILD_NAME"]

PACKAGE_FILE = "%s.%s" % os.environ["GAFFER_BUILD_NAME"] % {"win32" : "zip"}.get(
sys.platform, "tar.gz"
)

SPHINX = os.environ["GAFFER_SPHINX"]
22 changes: 22 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,31 @@
.gafferBackups
.idea
.sconf_temp
*.oso
*.so
*.dylib
*.sln
*.pdb
install_manifest.txt
CMakeCache.txt
cmake_install.cmake
.sconsign.dblite
.vscode
cmake-build-*
config.log
doc/html
doc/python
config.log
.idea
.sconf_temp
.gafferBackups
Release/
RelWithDebInfo/
Debug/
.vs/
*.vcxproj*
*.dir/
CMakeFiles/
x64/
./cmake/
graphics/
2 changes: 1 addition & 1 deletion Changes.md
Original file line number Diff line number Diff line change
Expand Up @@ -11907,4 +11907,4 @@ See python/GafferTest/ParameterHandlerTest.py for an example.

addChild( n2 )

* Fixed bug which caused "RuntimeError: Internal C++ object (PySide.QtGui.QLineEdit) already deleted." messages to be displayed.
* Fixed bug which caused "RuntimeError: Internal C++ object (PySide.QtGui.QLineEdit) already deleted." messages to be displayed.
Loading

0 comments on commit 99332e0

Please sign in to comment.