Releases: jhipster/generator-jhipster-react-native
v4.1.3
Commits:
- Bump react-datepicker from 3.8.0 to 4.1.1 in /generators/app/templates f082f4d
- Bump eslint-plugin-import from 2.23.2 to 2.23.4 dfd27cc
- Bump react-native-modal-datetime-picker in /generators/app/templates 0479eb7
- Bump detox from 18.14.1 to 18.16.0 in /generators/app/templates 795884f
- make script executable, only change artifacts path b2daf97
- Bump eslint from 7.26.0 to 7.27.0 3acaffd
- Bump sinon from 10.0.0 to 11.1.1 cdf5235
- Bump expo-cli from 4.4.9 to 4.5.2 in /generators/app/templates 44c5615
- Bump typescript from 4.2.4 to 4.3.2 in /generators/app/templates 359df4e
- add workaround for detox screenshot naming scheme, make detox screenshots optional 1146c1d
- add mem-fs as a direct dependency a3afca7
- Bump eslint from 7.26.0 to 7.27.0 in /generators/app/templates e97ae1a
- Bump formik from 2.2.6 to 2.2.8 in /generators/app/templates 8dfe320
- Bump detox from 18.13.0 to 18.14.1 in /generators/app/templates 734b1ca
- Bump expo-cli from 4.4.7 to 4.4.9 in /generators/app/templates e525618
- tag version of sample app, delete all generated folders for sample app 9bcf7fd
v4.1.2
Bigger Changes:
- Expo ejected apps now work out of the box (missing dependency re-added in 014b82c)
- Dependency updates
Commits:
- specify yeoman-environment version (to remove after JHipster upgrade) 477027b
- copy correct patch file to generated app 538e60e
- Bump react-native-keyboard-aware-scroll-view c601970
- restore missing dependency to boilerplate package.json 014b82c
- Bump eslint-plugin-import from 2.22.1 to 2.23.2 19b5380
- Bump jsdoc from 3.6.6 to 3.6.7 a9d4729
- Bump expo-cli from 4.4.6 to 4.4.7 in /generators/app/templates 87ef539
- Bump fs-extra from 9.1.0 to 10.0.0 5b6f41d
- Bump lint-staged from 10.5.4 to 11.0.0 f16b523
- Bump lint-staged from 10.5.4 to 11.0.0 in /generators/app/templates e997190
- Bump react-native-modal-datetime-picker in /generators/app/templates a089e42
- Bump eslint from 7.25.0 to 7.26.0 in /generators/app/templates 44d434b
- Bump prettier from 2.2.1 to 2.3.0 in /generators/app/templates c3a1314
- Bump detox from 18.12.1 to 18.13.0 in /generators/app/templates f1fad00
- Bump expo-cli from 4.4.3 to 4.4.6 in /generators/app/templates 81c38b9
- Bump @react-navigation/stack in /generators/app/templates 6ebbe92
- Bump prettier from 2.2.1 to 2.3.0 5a4766b
- Bump eslint from 7.25.0 to 7.26.0 bf84a27
- Bump mocha from 8.3.2 to 8.4.0 1a24a79
- Bump actions/checkout from 2 to 2.3.4 b516dcc
- Bump nick-invision/retry from 2 to 2.4.0 04858b2
- Bump react-redux from 7.2.3 to 7.2.4 in /generators/app/templates 45737b7
- Bump eslint from 7.24.0 to 7.25.0 in /generators/app/templates e6c3f48
- Bump eslint-config-prettier in /generators/app/templates a9e8982
- Bump detox from 18.12.0 to 18.12.1 in /generators/app/templates 7035ba8
- Bump @react-native-community/masked-view in /generators/app/templates 35d82fb
- Bump redux from 4.0.5 to 4.1.0 in /generators/app/templates 4093249
- Bump eslint from 7.24.0 to 7.25.0 d63514f
- Bump np from 7.4.0 to 7.5.0 5dbe6eb
- Bump chalk from 4.1.0 to 4.1.1 32d8c00
v4.1.1
v4.1.0
Bigger Changes:
- Upgrade to Expo SDK v41
Commits:
- Bump react-datepicker from 3.7.0 to 3.8.0 in /generators/app/templates e6066ab
- Bump apisauce from 2.0.1 to 2.1.1 in /generators/app/templates c62015b
- Bump eslint-config-prettier from 8.1.0 to 8.3.0 353737f
- Bump detox from 18.11.2 to 18.12.0 in /generators/app/templates 4da93e9
- Bump react-native-modal-datetime-picker in /generators/app/templates 8a2c33e
- Bump eslint-plugin-prettier in /generators/app/templates 0fe8069
- Bump expo-cli from 4.3.5 to 4.4.3 in /generators/app/templates 926a258
- Bump eslint-plugin-prettier from 3.3.1 to 3.4.0 106b5ab
- fix detox e2e tests 8c14c44
- fix precommit hook permissions b9d18ac
- lint a354e96
- update expo to sdk 41 b27373b
- Bump typescript from 4.2.3 to 4.2.4 in /generators/app/templates 1d1cf17
- Bump detox from 18.10.0 to 18.11.2 in /generators/app/templates 4918ed9
- Bump eslint-config-prettier in /generators/app/templates fb2fd45
- Bump eslint from 7.23.0 to 7.24.0 in /generators/app/templates d09ee08
- [chore] update husky eaab5f2
- [cleanup] remove unnecessary comments from test JDLs b0bcc4c
- [chore] update devDependencies - ejs-lint, eslint ac426ad
- [feat] update expo-cli in generated code d0e651f
- [cleanup] simplify code to use only one 'context' var 915825e
- [fix] remove redundant initializer e707ca0
- [chore] npm install with npm v7 598b5ba
v4.0.4
Bigger Changes:
- Dependency Upgrades
Commits:
- remove ajv (import-jdl workaround for jhipster v7.0.0) b06b6ee
- Bump generator-jhipster from 7.0.0 to 7.0.1 dc746e4
- Bump actions/setup-java from v1 to v2 69a4cb4
- Bump @react-navigation/devtools in /generators/app/templates 5e411b4
- Bump @react-navigation/drawer in /generators/app/templates 0417edf
- Bump expo-cli from 4.3.2 to 4.3.4 in /generators/app/templates 471f8ef
- Bump react-datepicker from 3.6.0 to 3.7.0 in /generators/app/templates 0241e79
- Bump detox from 18.9.0 to 18.10.0 in /generators/app/templates 795be3b
- Bump @react-navigation/native in /generators/app/templates f038c6f
- Bump @react-navigation/stack in /generators/app/templates e77051f
- Bump eslint from 7.22.0 to 7.23.0 09d4a82
- Bump eslint from 7.22.0 to 7.23.0 in /generators/app/templates 3c58277
- Bump detox from 18.8.1 to 18.9.0 in /generators/app/templates c5fd692
- Bump sockjs-client from 1.5.0 to 1.5.1 in /generators/app/templates ff6b993
v4.0.3
Bigger Changes
- Upgrade JHipster to v7 (from beta)
- Add npm v7 support
- PUT requests now have ID in path (matching the backend application)
Commits:
- Bump detox from 18.8.0 to 18.8.1 in /generators/app/templates 942b2a3
- Bump y18n from 4.0.0 to 4.0.1 7a851e0
- more jhipster v7 fixes (including PutMapping ID) 56a24ab
- fixes for jhipster v7 960b0e0
- upgrade to jhipster v7 release 7c1fcb6
- Bump react-redux from 7.2.2 to 7.2.3 in /generators/app/templates 121dcb0
- Bump detox from 18.7.1 to 18.8.0 in /generators/app/templates aeefef1
- Bump expo-cli from 4.3.0 to 4.3.2 in /generators/app/templates 2913dbf
- Bump semver from 7.3.4 to 7.3.5 73b93a6
- Bump sinon from 9.2.4 to 10.0.0 5ec8151
- add npmrc to generated project with legacy-peer-deps = true 4ec0ee9
- don't fail on no entities and --with-entities [ci skip] bc035e8
v4.0.2
Bigger Changes:
- On the
web
platform with OAuth 2.0, logging out now logs you out of Okta/Keycloak.
Commits:
- Bump mocha from 8.3.1 to 8.3.2 fb994ec
- fix missed template change ec01a65
- fix oauth2 login saga specs 297bc54
- Bump eslint from 7.21.0 to 7.22.0 fe69cf0
- Bump chai from 4.3.3 to 4.3.4 90cd8f4
- Bump patch-package from 6.4.6 to 6.4.7 in /generators/app/templates 6561868
- Bump eslint from 7.21.0 to 7.22.0 in /generators/app/templates 92c9586
- note the logout redirect URI configuration for Okta CLI instructions [ci skip] de5273a
- logout from Okta/Keycloak on web e23621d
- Bump expo-cli from 4.2.1 to 4.3.0 in /generators/app/templates abafd0c
- update dependabot day of week, allow expo updates week-of d32ffad
- Bump patch-package from 6.4.5 to 6.4.6 in /generators/app/templates 04ab360
- Bump chai from 4.3.0 to 4.3.3 7250982
- Bump yeoman-test from 5.0.1 to 5.1.0 f56a9a2
- Bump mocha from 8.3.0 to 8.3.1 73ac860
- Bump patch-package from 6.4.2 to 6.4.5 in /generators/app/templates 301fbe3
- Bump detox from 18.6.2 to 18.7.1 in /generators/app/templates c7a3201
- Bump redux-devtools-extension in /generators/app/templates 56ad67d
- Bump typescript from 4.2.2 to 4.2.3 in /generators/app/templates 99cdf5b
- move react-native-safe-area-context to package.expo.json c53258f
- move expo-cli to package.json which will dependabot update a2deaaa
v4.0.1
Bigger Changes:
- All dependencies updated to their latest versions
Commits:
- Bump detox from 18.3.1 to 18.6.2 in /generators/app/templates d347a44
- Bump yup from 0.32.8 to 0.32.9 in /generators/app/templates cf4afc9
- Bump @react-navigation/devtools in /generators/app/templates 10d410e
- increase dependabot PR limit to 30 f5aad77
- Bump patch-package from 6.4.0 to 6.4.2 in /generators/app/templates b3cba68
- Bump react-datepicker from 3.4.1 to 3.6.0 in /generators/app/templates 22fd711
- Bump typescript from 4.1.5 to 4.2.2 in /generators/app/templates 11a1367
- Bump eslint from 7.20.0 to 7.21.0 3037b16
- Bump yeoman-test from 4.0.2 to 5.0.1 4c35989
- Bump eslint-config-prettier from 8.0.0 to 8.1.0 0d2581d
- Bump @react-navigation/native in /generators/app/templates e5f0c79
- Bump eslint-config-prettier in /generators/app/templates e7185e3
- Bump @react-navigation/drawer in /generators/app/templates e2b98ec
- Bump eslint from 7.20.0 to 7.21.0 in /generators/app/templates 05913d6
- Bump react-native-modal-datetime-picker in /generators/app/templates 1661d66
- Bump patch-package from 6.2.2 to 6.4.0 in /generators/app/templates f867b93
- Bump @storybook/react-native in /generators/app/templates dae435c
- Bump lodash from 4.17.20 to 4.17.21 in /generators/app/templates e6189d5
- Bump actions/setup-node from v2.1.4 to v2.1.5 8189578
- Bump lodash from 4.17.20 to 4.17.21 8a9374c
- Bump eslint-config-prettier from 7.2.0 to 8.0.0 e6590d0
- Bump yeoman-test from 4.0.0 to 4.0.2 04dda52
- Bump @react-navigation/stack in /generators/app/templates 32677cd
- add jhipster_version to artifact name [ci skip] fd887bb
- null check for content-type header (some other blueprints doesn't have this header) 8365195
- use a specific version of the expo-cli when generating a project 0de8b9d
- add blog and youtube links to readme [ci skip] 8eaa3b4
- Bump eslint from 7.19.0 to 7.20.0 b441d1e
- Bump np from 7.3.0 to 7.4.0 528a808
- Bump eslint from 7.19.0 to 7.20.0 in /generators/app/templates df7b7c3
v4.0.0
JHipster React Native
Ignite JHipster is changing to JHipster React Native, using JHipster's Blueprint system.
Future npm releases will be done under generator-jhipster-react-native
. You can try this branch out with npm install -g generator-jhipster-react-native
. A demo blog post is coming soon.
Migration to Blueprint
It was always a goal to use JHipster's Blueprint system for the React Native generator. With the upcoming JHipster v7 release, the blueprint feature is much more robust and developer-friendly. Helped by the fact Ignite's latest major release removed the ability to use a custom boilerplate, push came to shove, and here we are. Migrating to a JHipster blueprint brings many improvements.
JHipster Commands
You can now use the same JHipster commands you would normally use, making sure to pass --blueprints react-native
when generating the app. This includes the entity
, jdl
, and even heroku
subgenerators (more on that later).
Full JDL Support
Both app and entity JDL imports work as the same as the main JHipster generator. Set blueprints [react-native]
in your app JDL config to generate an application without needing to pass the --blueprints
flag.
Automated Sample App Updates
Thanks to @avdev4j's great work in the Quarkus blueprint, we now have a Github Action to auto-update the sample app on release. This is deployed as a static site. It is also available on iOS/Android in the Expo Client (requires an Expo account).
Major Release Features
Expo
The generated app now uses Expo instead of bare-bones React Native (differences). Expo comes prepacked with the most commonly-used native libraries, such as camera, photos, maps, push notifications, and many more. Building and deploying to App Stores is easier too, just run expo build
instead of using Xcode and Android Studio.
Expo also enables us to use TypeScript in our applications. Note that the generated app still uses JavaScript but TypeScript is a goal for the next major version.
Tip: If you need to use Native LIbraries not included in Expo, you can run expo eject
which will generate the iOS and Android folders for you, similar to v3 of ignite-jhipster
. You keep many of the benefits of Expo such as OTA Updates.
OTA Updates
You only need to resubmit your app to the app stores when you update the Expo SDK. All other updates can happen over-the-air by replacing the JavaScript bundle. To build the initial app for App Store submission, run expo build
. To update the JavaScript code after that, run expo publish
Web Support (PWA)
Expo comes with React Native Web support, and JHipster React Native has been updated to fully support the web. You can even install the app as a PWA to have similar functionality to an App Store install. See Expo's PWA documentation for more information. PWAs are disabled by default, set offline: true
in webpack.config.js
to enable it.
Heroku Subgenerator for Web
The new web support enables us to add a Heroku subgenerator for deploying the React Native Web build. Try it out by running jhipster heroku
from the root of your JHipster React Native app. Note you will need to configure your apiUrl
in app/config/app-config.js
to a backend deployment.
Custom Form Implementation
The previous Form library (tcomb-form-native) in Ignite JHipster was deprecated for some time. In order to keep forms simple while handling the variety of entity field types in JHipster, there is now a custom Form implementation, with a component for each field type. It's simple to add more custom field types if needed. An added bonus is that all JHipster validation types are now supported.
React Hooks
All React components were rewritten as function components with full support for hooks. No deprecated componentWill*
or componentDid*
methods are used in the generated code.
Commits:
- update typescript to v4.1.5 5429b57
- update mocha to v8.3.0 2845c4f
- add blueprint keywords for jhipster.tech marketplace 35aef53
- add retry to install-detox CI step b60ff08
- fix navigation to entity screen after create/edit a34710b
- CI polishing 3570f13
- add jhipster_version to sample app matrix (uses same script as other tests) 3a33998
- 4.0.0-beta.1 0dbd80b
- replace ignite-jhipster references 0e0e822
- add CORS info, update logos for quality b064518
- validate app name to ensure no spaces or special characters are found 526be77
- update deps, enable dependabot, separate out expo dependencies eb323fc
- move oktaClientId config into app-config, update docs 6c58799
- add jhipster version as matrix option, set scripts to fail on any bad exit code 94f7ddc
- randomize the jhipster family member used on home screen c479ea9
- improve expo command building a41a3f4
- test lowering engines to 12 for more autodeploy options (ie netlify, vercel) 0695a09
- add Okta CLI commands for creating native app 7b322f1
- 4.0.0-beta.0 2a05570
- add brotli support to heroku 7ee8096
- fix generated readme oauth2 docs [ci skip] 3838e10
- remove extra nodejs setup step 6bc29c1
- change indent size to 2, matches generated code 4257b1d
- add husky precommit hook d8c4649
- remove generation of .env file, allow empty commit on sample app 09c2f36
- add sample-app workflow to update sample app on release, polish ci and docs a3a1513
- improve heroku subgenerator f9e0b7e
- update sinon to 9.2.4 c4b7ea6
- docs tiny addition [ci skip] f00f033
- replace import-jdl with jdl (old command works, but is less hip) 026633e
- add notes to utils for fixes related to flakiness 3aee3c1
- update dependencies for generator and app, fix docs link 31785d2
- remove component usage, lint, more e2e test fixes 5156926
- install expo app before tests, add wait for picker util and chat tests 7790c67
- upgrade detox to v18 2cb45bd
- add more tests to app and e2e, fixes for those tests 87a2098
- cleanup test scripts, always use JDL instead of backend since no changes are needed 82b0088
- remove unused/small patch files 266fe21
- websocket fixes b0cfc21
- add support for with-entities flag for generating from backend 95ed389
- fix loading of authType for apps generated via backend path 2232608
- bump jhipster to beta.1 d2624da
- update deps, add workflow_dispatch triggers 6845787
- add notice about generating in a folder with parenthesis - couldn't find a quick fix bd101f1
- add e2e setup script to bundle before tests 9a6a3b0
- always upload app folder 63b439e
- simplify code, pass --no-minify and --no-dev instead of hacking it, add retry config for e2e 0e12f86
- use custom conf instead of prepackaged f5a00d0
- update websockets chat screen to hooks, fix styling 49b0a54
- e2e fixes 806f77c
- load jhipster app/server config rather than assigning it to context manually 7b1409b
- fix e2e artifacts, rename jhipster-react-native repo to generator-jhipster-react-native 001dddd
- add more e2e tests 9c50655
- lint and test fixes 2958133
- add heroku subgenerator 0683ed9
- add auth-info reducer and saga 292b553
- disable service workers like the default expo config and to prevent issues 225c9c9
- run app tests on ubuntu to prevent blocking e2e tests 35ec165
- many changes to fix github actions 6596c4a
- fix tests for oauth2, hide storybook in prod, prettier 58e1db7
- add accountReset action for instant logout (don't wait for account API response) 5eceaaa
- handle skipUserManagement, add name to package.json 4b2af2c
- update oauth docs and add some build/deploy instructions 70ce37c
- packaging and test fixes d6d06a4
- fix generated tests, prettier 054dea9
- documentation improvements and small fixes f52e4b7
- remove unused images from app bcd6d7e
- more cleanup and general fixes 33adf92
- UX improvements 29fac66
- remove 'entity' suffix from entity screens b159d4f
- remove unused files, combine configs into app-config 0d2fb45
- style polishing 7e0ad10
- handle many-to-many relationships, required relations, polish styles 1fe43dd
- handle custom table names - reducers should use entity name instead 9c753e3
- generate relationship fields on edit and detail screens c0e3526
- handle plural issues (jhipster does not singular-ize the entity name) 946cb41
- fix relationship mapping for edit screen f906a28
- don't reprompt for config 6c9c0b0
- add DTO backward compatibility for v6 0a9776c
- load userManagementEntities (via super.loading method), ignore .yo-repository, remove extra comma 59449f3
- fix rebase issues, remove ignite-jhipster related files 44d99f1
- bump actions/setup-node version 4854e3c
- remove double .ejs.ejs extensions f28727d
- remove usage of fieldsNoId 258c547
- lint and prettier 7e5c1ff
- compose the blueprint rather than main generators, fixes importing JDL 9c5daec
- fixes date formatting, revert scrollTo, remove SafeAreaView, update detox conf c34f130
- fix jerky scrolling by patching keyboard-aware-scroll-view, remove blank text elements, styling 338a231
- handle contentType in e2e detox tests, remove excess padding/margins, SafeAreaView 80f11f1
- set keyboardDismissMode, remove ModalScreen usage, catch SplashScreen err 9649262
- add support for validation, and date/boolean/enum to e2e tests 8d0743f
- basic validation fixes fc0f559
- fix issues where prettier prevents patch detection, resulting in double inserts 1488c55
- simplify setupVariables to use jhipster config if possible 95f0c31
- remov...
v3.6.4
Bigger Changes:
- Update all dependencies
- Update Detox to latest major release (v18)
Due to Ignite v4 no longer supporting external boilerplates, the next major version will be a JHipster blueprint.
Commits:
- Bump detox from 18.2.1 to 18.2.2 in /boilerplate 3ffa21d
- Bump eslint-config-prettier from 7.1.0 to 7.2.0 in /boilerplate ccd8084
- Bump eslint-config-prettier from 7.1.0 to 7.2.0 29b49d1
- Bump fs-extra from 9.0.1 to 9.1.0 6c24827
- Bump react-native-vector-icons from 7.1.0 to 8.0.0 in /boilerplate ef4adeb
- Bump enzyme-adapter-react-16 from 1.15.5 to 1.15.6 in /boilerplate 74f69b7
- remove brew update 25276ca
- launch app with launchApp for e2e tests ae12716
- Bump detox from 17.14.6 to 18.2.1 in /boilerplate 9b05124
- update package-lock.json 69153cf
- add workflow dispatch, update passing dependencies 5a3d61d