title | description | position | publish | slug | previous_url |
---|---|---|---|---|---|
iOS Runtime Changelog |
NativeScript iOS Runtime Changelog |
6 |
false |
ios-changelog |
/Changelogs/iOS Runtime |
- Marshalling Objective-C class properties - #635
- Fix debugging without rebuild on iOS device - #634
- Fixed struct marshalling on x86_64 architecture
- LiveSync improvements
- Add
CFBundleVersion
andCFBundleShortVersionString
keys in theInfo.plist
of the NativeScript framework
- Various debugging and LiveSync improvements
- Removed iOS 7 support
- LLVM/Clang in metadata generator is updated to v3.8.0
- Throw error on unknown module character encoding
- Add methods to Objective-C protocol wrappers
- Throw error when overriding properties without getter/setter
- Provide runtime implementation for source maps
- ES6 modules
- Swift-style initializers
- Distribute inspector application as a separate npm package
- Generate TypeScript comments in TypeScript declarations
- TNS Objective-C exception handler
- Wrap bridged NSError objects in JavaScript errors
- Allow vanilla TypeScript classes to extend null
- Performance improvements for method calls
- Rename Objective-C class name in case of extend conflicts
- Use proper debug macro in project template
- Fix for debugger connecting after a delay
- Remove code signing identity from project template
- Throw an error if package.json has non-utf8 encoding
- Throw an error if loading module source fails
- TypeScript extends should not replace parent scope variables
- Remove quotes from paths in nativescript-build.xcconfig
- Loading static frameworks as shared frameworks
- Marshalling boxed JavaScript primitive types throws an exception
- Unicode console logs in stderr
- Fix out struct marshalling
- Prefix modulemap link directives with "lib" as the linker would
- Log Clang diagnostics when parsing modulemaps
- Metadata generator build fails on older machines
- Fix some errors in TypeScript declarations - #33, #34
- Automatic memory management of CoreFoundation functions marked with
CF_IMPLICIT_BRIDGING_ENABLED
- Manual memory management of CoreFoundation functions not-marked with
CF_IMPLICIT_BRIDGING_ENABLED
- Include merged xcconfig files from CLI (#363)
- Fix issues with iPhone 6s and iPad Air 2 devices (#377)
- iOS 9 Support: Introduce generic information in TypeScript definitions (#341)
- Add async method to FFICall (#339)
- Migrate to Clang 3.7 (#332)
- Move project template files in internal folder (#325)
- Expose compile-time constants (#329)
- Schedule the runtime on the runloop of its owner thread (#323)
- Inject InspectorFrontendHost in the Inspector frontend and communicate over raw sockets (#317)
- Improved CocoaPods support by passing more Xcode build settings to metadata generator (#314)
- Add option in template xcconfig to generate TypeScript declarations and debug metadata (#311)
- Disambiguate native APIs with name collisions (#299)
- Call global.__onUncaughtError if a fatal exception is thrown (#78)
- Throw error if there is a metadata for a symbol, but it's not available at runtime (#349)
- Fix mangling of utf8 characters in module code (#334)
- Require file when there is a directory with same name (#287)
- ReferenceConstructor should accept a single type argument (#284)
- Rename some enums to be consistent with how Swift exposes Objective-C enums (#318)
- Embed metadata in binary so it can be stripped by app thinning (#275)
- Swift modules use mangled name which is different than the klassName so get the name from the metadata (#274)
- Require with tilde (~) should resolve to the app folder (#254)
- Pause the debugger on startup with --debug-brk (#245)
- Web Inspector Page Agent (#240)
- Two-way marshaling between NSData and ArrayBuffer (#235)
- JavaScript functions, when passed to Objective-C as blocks, will now round-trip back to JavaScript, as the initial function object (#234)
- Create a global require function (#84)
- Error when file ends with a commented line (#288)
- NativeScript::SymbolLoader incorrectly caches framework bundles (#273)
- Better handling of package.json main configuration (#270)
- Expose a conversion between ArrayBuffers and NSData (#231)
- Require doesn't look for index.js in main folder (#112)
- Delete the module cache when a module throws an exception (#20)
- NSDecimalNumber marshalling (#14)
- Explicitly set the metadata generator's OS X deployment target (#285)
- -[TNSValueWrapper value] can return null (#262)
- Add lib/iOS folder to framework search paths #266
- Call Block_copy in ObjCBlockCall::finishCreation #264
- Timelines recording sends some long messages that hit the buffer limit of write method, so fallback to dispatch_io_write (#255)
- Fix TypeScript inheritance of Objective-C classes (#252)
- Work around crash when logging warnings (#248)
- Do not register the instance structure (#247)
- Implement and consume NSFastEnumeration (#222)
- Memory management of class clusters (#214)
- Update to the latest JavaScriptCore (#211)
- Add application that uses the updated webkit webview to show web inspector frontend (#201)
- Transform (NSError **) parameters to JavaScript error throw (#186)
- CMake the JSC: performance and memory diffs (#185)
- iOS 9 support: metadata for Objective-C generics (#177)
- WebInspector: enable WebInspector Performance Profiler (#164)
- Optimize require of JavaScript modules (#139)
- Recursive calls from Objective-C to a method returning JavaScript function as block (#210)
- Enums which have no common prefix are not exposed correctly (#205)
- Recursive calls from JavaScript to Objective-C method receiving a block argument (#199)
- Fix TypeScript extends (#178)
Milestone 1.1.0, Release v1.1.0.
- NativeScript for iOS is now built using CMake
- The runtime is now distributed as a static library and a Cocoa Framework
- API metadata now includes information about Clang modules
- NativeScript apps for iOS no longer ship with a WebSocket server for debugging, but rely on a plain TCP socket instead
- Removed backwards compatibility for the pre-0.10 behavior when looking for tns_modules
- The NativeScript CLI iOS template project now strips non-device architectures from embedded frameworks
- You can now require paths with .js extension
- Fixed issue where invoking an Objective-C class cluster as a JavaScript constructor with
new
would cause memory leaks - Fixed issue where an inspector frontend connecting to the same app multiple times in a single session would not display sources
- Accessing JavaScript from multiple threads is properly synchronized
- The
tns-ios
package is versioned
- Escape header and framework search paths in metadata generator
Milestone 1.0.0, Release v1.0.0.
- New metadata generator using Clang
- Fix some threading issues
- C enumeration syntax changed
- Remove visibility warnings when linking
Milestone 0.10.0, Release v0.10.0.
- JavaScript Date is implicitly converted to NSDate and vice versa.
- JSON object and JS Map, when passed to native, are wrapped in NSDictionary. NSDictionaries do not behave as JSON objects when returned from native.
- We will try to freeze the application on crash if there is a debugger attached so the debugger can be used to examine the errors.
- When Objective-C exception is thrown from code called from JavaScript, it will be wrapped in JavaScript error and reported to the debugger.
- We have fixed the “tagged pointers” bug on iPhone 5s with iOS7.0.
- We have dramatically reduced the “tns-ios” package size by stripping the debug symbols from the NativeScript.framework.
- We have fixed the project template to properly support the app-id provided from the CLI.
- We’ve cleaned the package.tgz from some xcodebuild logs and the Chrome version of the inspector.
- Made submodules public, fixed builds.
- tns_modules are now expected in the app folder. We are backward compatible but will remove the compatibility in the future.
- We have updated the project template to use larger resolution.
- Promise reactions have too low a priority on the runloop.