Releases: rnpm/rnpm
v1.9.0
Since React Native (and therefore rnpm) expects native modules to be linked in as static libraries, it's up to the application to link to the shared libraries that the static library might need (frameworks seem to be automatically handled by the module auto-linking feature). As a native module author, you can provide additional setup instructions or try to automate it yourself, like realm does in their postlink script here.
Thanks to @appden from realm team, this is now getting automated by rnpm so that you can specify an array of shared libraries to link:
"rnpm": {
"ios": {
"sharedLibraries": ["libc++", "libxml2", "libz"]
}
}It is also fully supported by the unlink part.
1.8.0
This release adds support for flags in the custom rnpm plugins.
Simply define an array of options, like the one below:
options: [{
flags: '-L, --list [path]',
description: 'List flag',
parse: (val) => val.split(',').map(Number),
default: [1,2,3],
}],and your exported function will now receive a 3rd argument which will be an object containing list property (which is an array).
E.g. when run rnpm plugin, the list will be [1,2,3]. When run rnpm plugin --list=1,4,5, the list will be [1,4,5].
Note: parse and default are optional.
v1.7.0
This release adds uninstall command, it's an equivalent of these two steps run manually:
$ rnpm unlink abc
$ npm uninstall abcWe have also fixed a bunch of Android edge-cases and improved general compatibility with Node v6 - you can check more details here -> https://github.com/rnpm/rnpm-plugin-link/releases/tag/v1.7.4
v1.6.4
v1.6.0
Features
Starting from now - rnpm allows you to define an array of additional arguments to get from user during linking process that you can then, reference in e.g. packageInstance.
Simply include the following in your package.json:
"rnpm": {
"params": [{
"type": "input",
"name": "gaToken",
"message": "What's your GA token"
}]
}and update your packageInstance with the new variable:
"rnpm": {
"android": {
"packageInstance": "new SomeLibName(this, ${gaToken})"
}
}Starting from now on - users will be presented an interactive form powered by inquirer each time they run rnpm link.
Note: We pass params array directly to inquirer which means you can also let users choose an answer from a list as well as provide a default value! See API docs for more details.
Fixes
This release finally fixes unlink so that it no longer makes your Xcode crash forever. We now also exclude all projects with sample in name except the ones in ios folder (that change mainly affects 3rd party modules providers).
v1.5.5
v1.5.4
This release fixes few bugs with Info.plist when CocoaPods were added to the project.
It also fixes an issue when wrong group in Xcode project was selected as a libraryFolder by rnpm due to the same name (e.g. Libraries and Pods/Libraries - the 2nd one was used). This release fixes this issue and implements ability to use nested paths!
That is, if you now want to use Pods/Libraries or anything else, simply add:
{
"rnpm": {
"ios": {
"libraryFolder": "This/Is/Custom/Path"
}
}
}which will result in This/Is/Custom/Path group added to your project. All .xcodeproj being linked will be added there instead of standard Libraries group.
v1.5.3
This release focuses mainly on making rnpm link more stable and shipping fixes to most annoying issues that's been reported so far.
Most importantly:
- We have improved our iOS project detection pattern meaning we no longer ignore your projects under
iosfolder that havetestorexamplename in it. That means if you ever create a project withreact-native init testApp- it will work. - We have fixed a bug in our code that was causing rnpm to throw and stop if
Librariesgroup was missing despite a warning being shown that we created that group for you - We now support CocoaPods projects when linking assets - previously it was exiting with an error
Misc:
- We now use Promises instead of callbacks
- We have trimmed down our dependencies in link by removing some packages (we are working on removing even more)