FlowFuse / FlowFuse/nr-launcher

Merge in @flowforge/nr-* modules into this one

Open
#99 3 comments 0 reactions 1 assignee Claimed by @knolleary View on GitHub
Dominant language
JavaScript
Stars
8
Forks
9
Avg merge
2d 14h
Merged PRs (30d)
19

Description

We currently have the following modules pulled in by `nr-launcher` to create the Node-RED application we run in FlowForge:

- `@flowforge/nr-audit-logger`
- `@flowforge/nr-auth`
- `@flowforge/nr-storage`
- `@flowforge/nr-theme`
- `@flowforge/nr-persistent-context`
- `@flowforge/nr-project-nodes`
- `@flowforge/nr-file-nodes`

That generates a lot of maintenance overhead around releases and when we have to synchronous PRs across multiple repos to deliver a new feature.

To reduce this burden, we're going to migrate *some* of those modules directly into the launcher. There was a proposal[^1] to roll them into a new repo that nr-launcher then depends on. However these no compelling reason to have them in another repo when they can just live directly in this one.

The proposal is to move:

- `@flowforge/nr-audit-logger`
- `@flowforge/nr-auth`
- `@flowforge/nr-storage`
- `@flowforge/nr-theme`

We will *not* move the following repos as they need to be loadable by the device agent so should be in their own modules.

- `@flowforge/nr-project-nodes`
- `@flowforge/nr-file-nodes`

That leaves `@flowforge/nr-persistent-context` to decide on. It is currently under the FF license, not Apache-2 as the feature it provides is only available on FF Premium.

I see ~two~ three options:
- Keep it separate for now
- Modify the license of this repo to be both Apache-2.0 and FF Premium (in the same model as the core ff repo is)
- Relicense the code to Apache-2.0. I would argue we license the server side, but the client side should be openly license.

Given we have feature development planned on the context plugin in the current release, I'm inclined to leave it where it is for now. It can be rolled in at a later date.

### Tasks

- Roll-in modules
- [x] `nr-audit-logger` - #100
- [x] `nr-auth` - #100
- [x] `nr-storage` - #100
- [x] `nr-theme` - #100
- [x] Update `flowforge-dev-env` to remove/ignore those repos - https://github.com/flowforge/flowforge-dev-env/pull/17
- [x] Add deprecated notices to the repos
- [x] Update any of our repo-lists (see 'Create Repo checklist' and do the reverse)
- [ ] Decide what to do with Persistent Context repo

[^1]: https://github.com/flowforge/admin/issues/133

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.