You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update MONOREPO_MERGER_PLAN.md and MONOREPO_MERGER_PLAN_REF.md to reflect changes in merger phases and package structure
- Updated the implementation plan to outline an 8-phase process for merging the `react_on_rails` and `react_on_rails_pro` repositories.
- Adjusted estimated durations and success criteria for various phases to align with the new structure.
- Clarified tasks related to the separation of Pro packages and ensured proper licensing compliance.
These updates provide a clearer roadmap for the merger process and ensure that all documentation reflects the current project status.
Copy file name to clipboardExpand all lines: docs/MONOREPO_MERGER_PLAN.md
+80-32Lines changed: 80 additions & 32 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,7 +28,7 @@ This document provides the complete implementation plan for merging the `react_o
28
28
29
29
### Timeline
30
30
31
-
**Estimated Duration:**4-5 weeks across 7 phases
31
+
**Estimated Duration:**5-6 weeks across 8 phases
32
32
33
33
## Current State Analysis
34
34
@@ -340,70 +340,118 @@ After the initial merge, the following CI adjustments may be needed:
340
340
341
341
---
342
342
343
-
#### PR #4: Prepare Pro Package for Workspace Structure
343
+
#### PR #4: Split JS Pro Code to Separate Package
344
344
345
-
**Branch:**`prepare-pro-workspace`
345
+
**Branch:**`split-js-pro-package`
346
346
347
347
**Objectives:**
348
348
349
-
- Extract pro NPM packages to workspace structure
350
-
-Create separate pro packages
351
-
-Establish full workspace configuration
349
+
- Extract pro JS features from react-on-rails package to separate react-on-rails-pro package
350
+
-Establish proper licensing boundaries for JS packages
351
+
-Maintain functionality while separating concerns
352
352
353
353
**Tasks:**
354
354
355
-
-[ ] Move `react_on_rails_pro/packages/node-renderer/` to `packages/react-on-rails-pro-node-renderer/`
356
-
-[ ] Extract pro JS features from `node_package/src/pro/` to `packages/react-on-rails-pro/src/`
357
-
-[ ] Create individual `package.json` files for both pro packages:
358
-
-`packages/react-on-rails-pro/package.json` with `"license": "UNLICENSED"`
359
-
-`packages/react-on-rails-pro-node-renderer/package.json` with `"license": "UNLICENSED"`
360
-
-[ ] Update root workspace to include all 3 NPM packages
361
-
-[ ] Update CI to test all packages
362
-
-[ ] Setup proper dependencies between packages
363
-
-[ ] Update build configurations (pro package outputs will be at `packages/react-on-rails-pro/lib/` and `packages/react-on-rails-pro-node-renderer/lib/`)
364
-
-[ ] Move pro JS tests to package directories (`packages/react-on-rails-pro/tests/`, `packages/react-on-rails-pro-node-renderer/tests/`)
355
+
-[ ] Extract pro JS features from `packages/react-on-rails/src/pro/` to `packages/react-on-rails-pro/src/`
356
+
-[ ] Create `packages/react-on-rails-pro/package.json` with `"license": "UNLICENSED"`
357
+
-[ ] Move pro JS tests from `packages/react-on-rails/tests/` to `packages/react-on-rails-pro/tests/`
358
+
-[ ] Update root workspace to include `packages/react-on-rails-pro`
359
+
-[ ] Setup proper dependencies between core and pro packages
360
+
-[ ] Update build configurations (pro package output will be at `packages/react-on-rails-pro/lib/`)
361
+
-[ ] Update TypeScript configurations for both packages
362
+
-[ ] Remove pro/ directory from `packages/react-on-rails/src/`
365
363
366
364
**License Compliance:**
367
365
368
-
-[ ]**CRITICAL: Update LICENSE.md for new pro directory paths:**
366
+
-[ ]**CRITICAL: Update LICENSE.md to remove pro code from MIT package:**
369
367
370
368
```md
371
369
## MIT License applies to:
372
370
373
371
- `lib/react_on_rails/` (including specs)
374
-
- `packages/react-on-rails/` (including tests)
372
+
- `packages/react-on-rails/` (including tests) - NOW EXCLUDES pro/ subdirectory
- When creating new pro directories (`packages/react-on-rails-pro/`and `packages/react-on-rails-pro-node-renderer/`), immediately update LICENSE.md to include these new paths
393
+
- This is a critical step for license compliance and package separation!
394
+
- When creating `packages/react-on-rails-pro/`directory, immediately update LICENSE.md to include this new path
397
395
- Ensure all moved pro files retain their Pro license headers
398
-
- Verify new package.json files have `"license": "UNLICENSED"`
399
-
-**Build Output Locations**: Pro packages will now output to `packages/react-on-rails-pro/lib/` and `packages/react-on-rails-pro-node-renderer/lib/`
400
-
- Test all workspace commands thoroughly
396
+
- Verify new package.json has `"license": "UNLICENSED"`
397
+
-**Build Output Location**: Pro package will now output to `packages/react-on-rails-pro/lib/`
398
+
- After moving pro code, verify react-on-rails package is purely MIT-licensed
399
+
- Test both packages build independently via workspace commands
400
+
401
+
---
402
+
403
+
#### PR #5: Add Pro Node Renderer Package
404
+
405
+
**Branch:**`add-pro-node-renderer`
406
+
407
+
**Objectives:**
408
+
409
+
- Extract pro node-renderer to separate workspace package
410
+
- Complete NPM package workspace structure
411
+
- Establish all 3 NPM packages
412
+
413
+
**Tasks:**
414
+
415
+
-[ ] Move `react_on_rails_pro/packages/node-renderer/` to `packages/react-on-rails-pro-node-renderer/`
416
+
-[ ] Create `packages/react-on-rails-pro-node-renderer/package.json` with `"license": "UNLICENSED"`
417
+
-[ ] Move node-renderer tests to `packages/react-on-rails-pro-node-renderer/tests/`
418
+
-[ ] Update root workspace to include all 3 NPM packages
419
+
-[ ] Update CI to test all packages
420
+
-[ ] Update build configurations (node-renderer output will be at `packages/react-on-rails-pro-node-renderer/lib/`)
421
+
422
+
**License Compliance:**
423
+
424
+
-[ ]**CRITICAL: Update LICENSE.md for node-renderer package:**
This plan outlines the 7-phase implementation for merging the `react_on_rails` and `react_on_rails_pro` repositories into a unified monorepo while maintaining:
7
+
This plan outlines the 8-phase implementation for merging the `react_on_rails` and `react_on_rails_pro` repositories into a unified monorepo while maintaining:
0 commit comments