apache / apache/cordova-lib

Better support for local plugin development

Open
#716 3 comments 1 reaction 0 assignees View on GitHub
enhancement help wanted
Dominant language
JavaScript
Stars
231
Forks
242
Avg merge
2h 51m
Merged PRs (30d)
7

Description

Our app has a few local plugins, and I'm the app-backend developer for our team. I haven't found a great way for our team to keep our plugins up-to-date.

I've used hooks to remove and add these plugins automatically, but the plugin spec tends to get corrupted with this approach. For example, this call:
` cordova plugin add --force file:local_plugins/com.rsginc.mobilesurvey`
sets the plugin spec to
` `
which isn't a local file spec...

My current approach is to have everyone on my team use the --link option to add these plugins, which works for some changes, but breaks when new source files are added - they don't get copied over.

My thought was that adding versioning to the local file spec could fix this - new versions could be picked up when the source code is updated (and the version is updated in the plugin's package.json) without the need for workarounds like re-adding the plugins or linking them. Admittedly, I'm just a cordova user without a good view into everything that's available, so this might be a naive approach.

... and if there's already a way to handle what I'm trying to do, please let me know.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the `cordova plugin add --force file:local_plugins/...` behavior and inspect the local plugin's `package.json` and resulting plugin spec. Compare this with `--link` behavior, then define and document a supported workflow where source changes and new files are picked up without re-adding or linking the plugin.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, nodejs
Domain
mobile-dev, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.