Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update podspec & tag repo with new version so latest code changes are available in CocoaPods #62

Open
wants to merge 42 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
793260c
renamed podspec file to match name of forked Cocoapod
Sep 30, 2014
59479f8
updated podspec to point to correct repo location
Sep 30, 2014
91ccaf1
add OS X support
emaloney Jun 25, 2015
5c8c776
attempting better framework integration
Dec 22, 2015
402211e
address header import problem with use_frameworks!
Dec 22, 2015
12fa7ab
add public header for framework builds
Dec 22, 2015
521c2a0
bump cocoapods version
Dec 22, 2015
25ed678
now that we're building as a framework, we need an
Dec 23, 2015
69cebba
remove RaptureXMLFramework target
Dec 23, 2015
e687ce3
bump cocoapods version
Dec 23, 2015
714834d
an attempt at fixing framework header conundrum
Dec 23, 2015
0db1ab5
bump cocoapods version
Dec 23, 2015
e78de0e
attempt fix for "non-modular header in framework"
Dec 23, 2015
b2ff20c
bump cocoapods version
Dec 23, 2015
dd21b41
kludging around a cocoapods build bug
Dec 23, 2015
5a8843f
bump cocoapods version
Dec 23, 2015
df5e992
Correct the capitalization of Xcode in README
ReadmeCritic Feb 17, 2016
b9073e5
Merge pull request #1 from ReadmeCritic/master
Feb 17, 2016
8a72ce6
update RaptureXML to use as a submodule
Mar 4, 2016
445e752
build all platform architectures
Mar 4, 2016
f5cb007
prepare for Xcode 8
Sep 6, 2016
5de734c
Merge branch 'framework'
Sep 14, 2016
9517dc6
update to latest standard .gitignore
Sep 14, 2016
dc8111a
rework to x-platform: iOS, macOS, tvOS, watchOS
Apr 6, 2017
e413459
convert tests from SenTest to XCUnit
Apr 6, 2017
9597bb1
rename license file to GitHub standard
Apr 6, 2017
1480419
remove unneeded assets
Apr 6, 2017
c727b28
fix resource search
Apr 6, 2017
a0dfffc
set version number to current
Apr 6, 2017
b8b5f8e
generate documentation
Apr 6, 2017
eb6aba2
Release 3.0.0 (build 1)
Apr 6, 2017
5bdbcda
fix build configuration for Release
Apr 6, 2017
1999e22
Release 3.0.1 (build 2)
Apr 6, 2017
31cc4aa
fix it again, this time differently
Apr 6, 2017
3147df0
Release 3.0.2 (build 3)
Apr 6, 2017
6faf253
update settings for Xcode 9
Sep 12, 2017
f28653e
update for Xcode 9
Sep 12, 2017
68a98d1
Release 3.1.0 (build 4)
Sep 12, 2017
4272627
Xcode 9.2 updated this
Dec 5, 2017
f9fa2fc
update generated files
Dec 5, 2017
b69da9d
Merge branch 'master' of ssh://github.com/emaloney/RaptureXML
Dec 5, 2017
d3e40c3
Release 3.1.1 (build 5)
Dec 5, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 25 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Xcode
build/*
# Finder/Mac OS X
#
.DS_Store

# Xcode / Swift
#
.build/
build/
*.pbxuser
!default.pbxuser
*.mode1v3
Expand All @@ -8,8 +14,21 @@ build/*
!default.mode2v3
*.perspectivev3
!default.perspectivev3
*.xcworkspace
!default.xcworkspace
xcuserdata
profile
*.moved-aside
*.xccheckout
*.moved-aside
DerivedData
*.hmap
*.ipa
*.xcuserstate
*.xcscmblueprint

# jazzy documentation generator
#
undocumented.json

# Carthage: we --use-submodules for our non-leaf dependencies
#
Carthage/*
!Carthage/Checkouts/
**/Carthage/
42 changes: 42 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
language: objective-c
xcode_project: RaptureXML.xcodeproj
os: osx
osx_image: xcode9

branches:
only:
- master

git:
depth: 1
submodules: false

before_install:
- sudo systemsetup -settimezone America/New_York # temporary hack: NYC timezone is required for some MBDataEnvironment date-related unit tests
- travis_wait 30 git submodule update --init

install:
- gem install xcpretty --no-rdoc --no-ri --no-document --quiet
- rm -rf ~/Library/Developer/CoreSimulator # these two lines are a hack around a recurring Travis problem: multiple versions of the
- sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService # same simulator: https://github.com/travis-ci/travis-ci/issues/7580#issuecomment-292974395

script:
- travis_wait 30 ./BuildControl/bin/travisBuildHelper.sh build iOS
- travis_wait 30 ./BuildControl/bin/travisBuildHelper.sh test iOS
- travis_wait 30 ./BuildControl/bin/travisBuildHelper.sh build macOS
- travis_wait 30 ./BuildControl/bin/travisBuildHelper.sh test macOS
- travis_wait 30 ./BuildControl/bin/travisBuildHelper.sh build tvOS
- travis_wait 30 ./BuildControl/bin/travisBuildHelper.sh test tvOS
- travis_wait 30 ./BuildControl/bin/travisBuildHelper.sh build watchOS

after_failure:
- test -f "RaptureXML-iOS-build.log" && tail -n 2500 "RaptureXML-iOS-build.log"
- test -f "RaptureXML-iOS-test.log" && tail -n 2500 "RaptureXML-iOS-test.log"
- test -f "RaptureXML-iOS-test.log" && LINE_BEFORE=`cat "RaptureXML-iOS-test.log" | grep -n "IDETestOperationsObserverDebug. Writing diagnostic log for test session to." | awk -F':' '{print $1}'` && LINE=`expr $LINE_BEFORE + 1` && LOG_FILE=`head -n $LINE "RaptureXML-iOS-test.log" | tail -n 1` && cat "$LOG_FILE"
- test -f "RaptureXML-macOS-build.log" && tail -n 2500 "RaptureXML-macOS-build.log"
- test -f "RaptureXML-macOS-test.log" && tail -n 2500 "RaptureXML-macOS-test.log"
- test -f "RaptureXML-macOS-test.log" && LINE_BEFORE=`cat "RaptureXML-macOS-test.log" | grep -n "IDETestOperationsObserverDebug. Writing diagnostic log for test session to." | awk -F':' '{print $1}'` && LINE=`expr $LINE_BEFORE + 1` && LOG_FILE=`head -n $LINE "RaptureXML-macOS-test.log" | tail -n 1` && cat "$LOG_FILE"
- test -f "RaptureXML-tvOS-build.log" && tail -n 2500 "RaptureXML-tvOS-build.log"
- test -f "RaptureXML-tvOS-test.log" && tail -n 2500 "RaptureXML-tvOS-test.log"
- test -f "RaptureXML-tvOS-test.log" && LINE_BEFORE=`cat "RaptureXML-tvOS-test.log" | grep -n "IDETestOperationsObserverDebug. Writing diagnostic log for test session to." | awk -F':' '{print $1}'` && LINE=`expr $LINE_BEFORE + 1` && LOG_FILE=`head -n $LINE "RaptureXML-tvOS-test.log" | tail -n 1` && cat "$LOG_FILE"
- test -f "RaptureXML-watchOS-build.log" && tail -n 2500 "RaptureXML-watchOS-build.log"
28 changes: 28 additions & 0 deletions BuildControl/Info-Target.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>3.1.1</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2016 Rapture In Venice. All rights reserved.</string>
<key>NSPrincipalClass</key>
<string></string>
</dict>
</plist>
24 changes: 24 additions & 0 deletions BuildControl/Info-Tests.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>0.0.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
</dict>
</plist>
20 changes: 20 additions & 0 deletions BuildControl/RaptureXML.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<MBML>
<Var name="project:name" literal="RaptureXML"/>
<Var name="project:publisher" literal="Rapture In Venice"/>
<Var name="repo:owner" literal="emaloney"/>
<Var name="project:creator:name" literal="John Blanco"/>
<Var name="project:license" literal="MIT"/>
<Var name="project:bundlePrefix" literal="com.raptureinvenice"/>
<Var name="project:language" literal="ObjC"/>
<Var name="project:skeleton" literal="none"/>
<Var name="project:grouping" literal="Mockingbird"/>

<Var name="project:description">A simple, sensible, block-based XML API for Apple Platforms development.</Var>

<Var name="project:platforms" type="list">
<Var literal="iOS"/>
<Var literal="macOS"/>
<Var literal="tvOS"/>
<Var literal="watchOS"/>
</Var>
</MBML>
146 changes: 146 additions & 0 deletions BuildControl/bin/buildCheck.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
#!/bin/bash

#
# checks that the project builds & passes all unit tests
#
# by emaloney, 11 September 2017
#

set -o pipefail # to ensure xcodebuild pipeline errors are propagated correctly

SCRIPT_NAME=$(basename "$0")
SCRIPT_DIR=$(cd "$PWD" ; cd `dirname "$0"` ; echo "$PWD")

source "${SCRIPT_DIR}/include-common.sh"

showHelp()
{
define HELP <<HELP
$SCRIPT_NAME

Validates that the code in this repo builds & passes all unit tests.

Usage:

$SCRIPT_NAME

Optional arguments:

--skip-tests
Skips running the unit tests :-(

--quiet
Silences output

Help

This documentation is displayed when supplying the --help (or -help, -h,
or -?) argument.

Note that when this script displays help documentation, all other
command line arguments are ignored and no other actions are performed.

HELP
printf "$HELP" | less
}

#
# make sure we're in a git repo
#
cd "$SCRIPT_DIR/../../."
git status 2&> /dev/null
if [[ $? != 0 ]]; then
exitWithErrorSuggestHelp "You must invoke this script from within a git repo"
fi

#
# parse the command-line arguments
#
while [[ $1 ]]; do
case $1 in
--skip-tests)
SKIP_TESTS=1
;;

--quiet|-q)
QUIET=1
QUIET_ARG="-q"
;;

--help|-help|-h|-\?)
SHOW_HELP=1
;;

-*)
exitWithErrorSuggestHelp "Unrecognized argument: $1"
;;

*)
if [[ -z $ARGS ]]; then
ARGS=$1
else
ARGS="$ARGS $1"
fi
esac
shift
done

if [[ $SHOW_HELP ]]; then
showHelp
exit 1
fi

for ARG in $ARGS; do
exitWithErrorSuggestHelp "Unrecognized argument: $ARG"
done

#
# make sure it builds
#
PROJECT_NAME="RaptureXML"
XCODEBUILD=/usr/bin/xcodebuild
XCODEBUILD_CMD="$XCODEBUILD"
if [[ $SKIP_TESTS ]]; then
updateStatus "Verifying that $PROJECT_NAME builds"
else
updateStatus "Verifying that $PROJECT_NAME builds and passes unit tests"
fi
if [[ $QUIET ]]; then
XCODEBUILD_CMD="$XCODEBUILD -quiet"
fi
if [[ ! -x "$XCODEBUILD" ]]; then
exitWithErrorSuggestHelp "Expected to find xcodebuild at path $XCODEBUILD"
fi

#
# use xcpretty if it is available
#
XCODEBUILD_PIPETO=""
XCPRETTY=`which xcpretty`
if [[ $? == 0 ]]; then
XCODEBUILD_PIPETO="| $XCPRETTY"
fi

#
# determine build settings
#
PROJECT_SPECIFIER="-project RaptureXML.xcodeproj"
COMPILE_PLATFORMS="iOS macOS tvOS watchOS"

#
# build for each platform
#
for PLATFORM in $COMPILE_PLATFORMS; do
updateStatus "Building: $PROJECT_NAME for $PLATFORM..."
if [[ $SKIP_TESTS ]]; then
BUILD_ACTION="clean build"
else
BUILD_ACTION="clean $(testActionForPlatform $PLATFORM)"
fi
RUN_DESTINATION="$(runDestinationForPlatform $PLATFORM)"
if [[ $QUIET ]]; then
executeCommand "$XCODEBUILD_CMD $PROJECT_SPECIFIER -scheme \"${PROJECT_NAME}\" -configuration Debug -destination \"$RUN_DESTINATION\" $BUILD_ACTION $XCODEBUILD_PIPETO" 2&> /dev/null
else
executeCommand "$XCODEBUILD_CMD $PROJECT_SPECIFIER -scheme \"${PROJECT_NAME}\" -configuration Debug -destination \"$RUN_DESTINATION\" $BUILD_ACTION $XCODEBUILD_PIPETO"
fi
done
1 change: 1 addition & 0 deletions BuildControl/bin/carthageUpdate.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
carthage update $@ --use-submodules --no-build
Loading