| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove a bunch of code that Google stopped using/maintaining rather than trying
to update it it. Some would be hard to update, some actually has system provided
replacements; others are patterns that just don't seem as common now.
Prune out the code related to macOS <= 10.5, start pruning some of the really
old iOS support also.
Get the projects mostly limping again with modern Xcodes so tests can be run.
If someone ends up on this commit via history for something they still find
as useful, feel free to do a pull request to bring the snippet of code back to
life and update it for current SDKs.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Simplify logic, add more assertions, and to get rid of call via objc_msg_send.
Should be significantly faster too.
Some developers had seen crashes under some simulator that seemed to trace
back to the checks, but there wasn't a clear pattern to them. This will
hopefully resolve those also.
|
|
|
|
|
|
|
|
|
|
|
| |
Make GTM_STATIC_CAST(className, object) and GTM_DYNAMIC_CAST(className, object)
return objects that are type-casted to className *, instead of id. This enables
access to properties on the casted objects, e.g.
GTM_STATIC_CAST(NSString, object).length
which wouldn't work previously, since accessing .length on an id type
(correctly) results in a compiler error.
|
| |
|
|
|
|
|
|
| |
These macros allow code to assert being in or not in a @sync-protected section,
which is important when calling across methods or calling out to other classes
or callbacks.
|
| |
|
|
|
|
| |
anything in the loop.
|
|
|
|
|
|
|
|
|
| |
a) only define GTM_IPHONE_USE_SENTEST if it hasn't been defined on Mac. It's a horrible name, but
it does control us using SENTEST instead of XCTest.
b) Object is now found in the runtime on both iOS and MacOS
c) MethodCheck had a potential memory leak
DELTA=47 (18 added, 5 deleted, 24 changed)
DELTA_BY_EXTENSION=h=30,m=12
|
|
|
|
|
|
| |
Also ignores another class which does not inherit from NSObject.
DELTA=4 (3 added, 0 deleted, 1 changed)
DELTA_BY_EXTENSION=m=4
|
|
|
| |
DELTA=3 (3 added, 0 deleted, 0 changed)
|
|
|
|
|
| |
-fno-objc-arc everywhere it might be used.
DELTA=9 (8 added, 0 deleted, 1 changed)
|
|
|
|
|
|
|
|
|
|
| |
10.8 SDK compatibility for GTM.
|Object| is gone in Objective-C 2 in the 10.8 SDK, use |NSObject|
instead as for iOS.
R=dmaclach,thomasvl
APPROVED=thomasvl
DELTA=5 (2 added, 0 deleted, 3 changed)
|
|
|
|
|
|
|
|
|
| |
Clean up some basic issues in GTM.
Also removes GTMUniqueFileObjectPathBasedOn which depended on mktemp which is
bad.
R=thomasvl
DELTA=55 (6 added, 32 deleted, 17 changed)
|
|
|
|
|
|
|
|
|
|
| |
fix some type errors.
Tested:
Compiled and ran a text program
R=thomasvl
APPROVED=thomasvl
DELTA=2 (0 added, 0 deleted, 2 changed)
|
|
|
|
|
|
| |
Another Apple class that method check should ignore (Lion).
R=dmaclach,thomasvl
APPROVED=dmaclach
|
|
|
|
|
|
|
| |
-Delete unmatched and unnecessary extern "C" from GTMTypeCasting.h
R=dmaclach
APPROVED=dmaclach
DELTA=4 (0 added, 4 deleted, 0 changed)
|
|
|
|
|
|
|
| |
Turns on the undeclared-selector warning. This may cause builds to fail if they are using
our configs. Also cleaned up some whitespace issues.
R=thomasvl
DELTA=94 (71 added, 22 deleted, 1 changed)
|
|
|
|
|
|
|
|
|
| |
Cleans up builds of GTM on Snow Leopard with gcc 4.2.
Cleans up iPhone configs
Adds libgcov for Snow Leopard
Fixes up some small bugs.
R=thomasvl
DELTA=2028 (972 added, 990 deleted, 66 changed)
|
|
|
|
|
|
| |
Clean up a pile of API upgrade warnings from clang, and the dead store.
R=thomasvl
DELTA=13 (0 added, 3 deleted, 10 changed)
|
|
|
|
|
|
| |
Tighten up the type casting code a bit so it looks nicer.
R=thomasvl
DELTA=8 (0 added, 6 deleted, 2 changed)
|
|
|
|
|
|
|
| |
Added some basic casting debugging goodness to GTM.
Opinions? added to help catch a bug in QSB.
R=thomasvl
DELTA=55 (55 added, 0 deleted, 0 changed)
|
|
|
|
|
|
| |
Standardize how we call free. No need to check for NULL.
R=thomasvl
DELTA=24 (0 added, 13 deleted, 11 changed)
|
|
|
|
|
|
| |
Fix for GTMMethodCheck under SnowLeopard so we don't get "Class __NSGenericDeallocHandler does not conform to @protocol(NSObject), so won't be checked" warnings.
DELTA=1 (1 added, 0 deleted, 0 changed)
R=thomasvl
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
way for all GTM code to do it.
- Added GTMDebugThreadValidation to allow you to enforce the fact that your
code must run in the main thread in DEBUG builds.
- Updated some internals of the iPhone unittesting so it doesn't double print
the test descriptions, file names, or lines numbers of a test failure line.
Also includes the test names in the error output.
- Changed the xcconfigs so that know it's easier to set different settings at
the different levels and not accidentally overwrite settings set at lower
levels in the "settings collapse". Also tightened up warnings significantly.
- Changed how gtm_unitTestExposedBindingsTestValues works. If you have an
implementation of gtm_unitTestExposedBindingsTestValues in your own code
you will need to update to the new way of calling. See implementations in
GTMNSObject+BindingUnitTesting.m for details.
- Added support for grabbing the build number for a particular OS in
GTMSystemVersion and easily comparing it to known build numbers, and switched
some types from in GTMSystemVersion from "int" to SInt32 to make 64 bit work
better.
- Added support for SnowLeopard (10A96). We build cleanly with the 10.6 SDKs and
all radar checks were updated accordingly. Build All script was also updated
to build on SnowLeopard if you have the SDK available.
- Turned off building ppc64 GTM because the SnowLeopard SDK currently
doesn't have ppc64 support, so SenTestCase isn't defined. This makes it
impossible to build the ppc64 10.5 config on SnowLeopard. We have left the
setting in the xcconfig for those of you who need it, but have disabled
it in the GTM project settings.
- Turned on stack smashing protection on the debug builds for all Leopard
and above.
- Added ability to easily do leak checking by defining the GTM_ENABLE_LEAKS
environment variable. It isn't on by default because several of Apple's
frameworks leak. You can work around these false positives by using the
GTM_LEAKS_SYMBOLS_TO_IGNORE environment variable. Also if you turn on leaks
make sure to turn off zombies by defining the GTM_DISABLE_ZOMBIES variable,
otherwise every memory allocation you do will look like a leak.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
warning: variable 'r' might be clobbered by 'longjmp' or 'vfork'
when using certain Apple inlined functions in @synchronized/@try blocks.
- Updated to Xcode 3.1 so the GTM and iPhone project have the same baseline.
The code should work in other version of xcode, but the projects and
xcconfig files now use 3.1 features.
- Added GTMABAddressBook which is a cocoa wrapper for the 'C' AddressBook
APIs on the iPhone.
- Added several set environment variable statements to RunIPhoneUnitTest.sh
to encourage bugs to come out of the woodwork.
|
|
|
|
|
| |
mark part of the logger+asl code as not feasible for testing.
work around a unittesting marco catch w/ gc and __weak.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to it's dependencies on undocumented frameworks, and the ScreenSaver
framework doesn't play nicely in GC mode.
- Added property methods to GTMHTTPFetcher. These are convenient alternatives
to storing an NSDictionary in the userData.
- Renamed GTMDevLog.m to GTMDevLogUnitTestingBridge.m and added some more
comments where it comes into play to hopefully make it more clear that it
isn't needed in most cases.
- Fixed a potential GTMHTTPFetcher crash on failed authentication.
- Added a obj-c logging package, GTMLogger, for applications that want an
application level logging system. See GTMLogger.h, GTMLogger+ASL.h, and
GTMLoggerRingBufferWriter.h for what the basic system and two optional
additions can do.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Fixed up GTMIPhoneUnitTestDelegate to be pickier about which tests it runs
- Added GTMNSString+URLArguments to GTMiPhone
- Added GTMHTTPFetcher and GTMHTTPServer to GTMiPhone
- Made sure that build would work with iPhone device attached, and that all
tests run directly on the phone.
- Added GTMValidatingContainers which are a set of mutable container classes
that allow you to have a selector on a target that is called to verify that
the objects being put into the container are valid. This can be controlled
at compile time so that you don't take the performance hit in a release build.
- Added GTMPath, which represents an existing absolute path on the file system.
It also makes it very easy to contruct new paths in the file system as well
as whole directory hierarchies.
- Added GTMNSString+Replace for a common replacement need.
- Added NSString+FindFolder for two commen helpers for building paths to common
locations.
- Added GTMLargeTypeWindow for doing display windows similar to Address Book
Large Type display for phone numbers.
|
|
|
|
|
|
|
| |
Landing GTMHTTPServer as a simple server but mainly for use in unittesting.
_GTMCompileAssert for doing compile time assertions to GTMDefines.h
Lots of improvments for UnitTesting, Dave's gonna put up a wiki page shortly with the full details of what can be done.
|
|
|
|
|
|
|
| |
Added some more xcode configs related to the above.
Removed some classes that the unittesting doesn't need (and aren't able to
support 64bit).
add base64, httpfetcher, and progress monitor stream.
|
|
- bug fixes
- code coverage support
- more complete unittests
- full support for unittesting UIs
- support for the iphone sdk (include ui unittesting)
|