Setup for Contributing

@dthyresson Awesome! I never knew you could do that. I’ll add that to CONTRIBUTING.md.

@alvincrespo I recently ran into this issue as well. I think this is what redwood-tool's lesser-known command, install is for.

CONTRIBUTING.md needs updating now that I know how it actually works, but if you run into an issue like this, where, after running yarn rwt copy, your Redwood app is missing packages, the way to fix it is by:

  1. Identifying the redwoodjs package that lists the dependency (using your output, the webpack-retry-chunk-load-plugin package points to redwoodjs/core):
web | Error: Cannot find module 'webpack-retry-chunk-load-plugin'
web | Require stack:
web | - /Users/alvincrespo/redwoodblog/node_modules/@redwoodjs/core/config/webpack.common.js
  1. Publishing this package (redwoodjs/core) to your local npm emulator by 1) starting your local npm emulator (in your copy of the redwood/redwood repo) and 2) publishing redwoodjs/core to it:
# start your local npm emulator
redwood$ ./tasks/run-local-npm
...
# in a separate terminal, publish @redwoodjs/core to it
redwood$ ./tasks/publish-local packages/core
  1. In your Redwood app, use yarn rwt install to install the redwoodjs/core package you just published:
redwood-app$ yarn rwt install @redwoodjs/core
  1. Now you can use the more-convenient yarn rwt copy command to copy over your ensuing changes (that don’t involve dependency modifications):
redwood-app$ yarn rwt copy
# make changes in redwood/redwood
# ...
redwood-app$ yarn rwt copy
# make more changes in redwood/redwood
# ...
redwood-app$ yarn rwt copy

You might have to do the same thing for redwoodjs/api, but let me know if that works for you!

1 Like