@bostonuniversity/buwp-local 0.7.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/ARCHITECTURE.md +3 -56
- package/docs/CHANGELOG.md +4 -0
- package/docs/MIGRATION_FROM_VM.md +0 -3
- package/docs/ROADMAP.md +11 -12
- package/package.json +1 -1
package/docs/ARCHITECTURE.md
CHANGED
|
@@ -442,9 +442,9 @@ Docker's **volume mapping architecture** creates a clean separation:
|
|
|
442
442
|
│ └── wp-content/ │
|
|
443
443
|
│ └── plugins/ │
|
|
444
444
|
│ └── my-plugin/ ──┐ │ (mapped from Mac)
|
|
445
|
-
│
|
|
446
|
-
│ SEPARATED = No conflicts!
|
|
447
|
-
|
|
445
|
+
│ │ │
|
|
446
|
+
│ SEPARATED = No conflicts! │ │
|
|
447
|
+
└───────────────────────────────┴─┘
|
|
448
448
|
```
|
|
449
449
|
|
|
450
450
|
**Technical Benefits:**
|
|
@@ -459,47 +459,6 @@ Docker's **volume mapping architecture** creates a clean separation:
|
|
|
459
459
|
|
|
460
460
|
5. **Safe Testing** - Test breaking changes in WordPress without risk. If something goes wrong, recreate the container—your code was never in danger.
|
|
461
461
|
|
|
462
|
-
#### Workflow Comparison
|
|
463
|
-
|
|
464
|
-
**VM Sandbox Workflow:**
|
|
465
|
-
```
|
|
466
|
-
Week 1-3: Develop in VM
|
|
467
|
-
Week 4: Monthly rebuild
|
|
468
|
-
1. Backup your code manually
|
|
469
|
-
2. Coordinate with team
|
|
470
|
-
3. Wait for new VM image
|
|
471
|
-
4. Restore code manually
|
|
472
|
-
5. Re-test everything
|
|
473
|
-
6. Hope nothing broke
|
|
474
|
-
Time lost: 2-4 hours + coordination overhead
|
|
475
|
-
```
|
|
476
|
-
|
|
477
|
-
**buwp-local Workflow:**
|
|
478
|
-
```
|
|
479
|
-
Anytime: New WordPress version available
|
|
480
|
-
1. docker pull ghcr.io/bu-ist/buwp:latest
|
|
481
|
-
2. npx buwp-local start
|
|
482
|
-
3. Test (your code unchanged)
|
|
483
|
-
Time: 2 minutes
|
|
484
|
-
```
|
|
485
|
-
|
|
486
|
-
#### Real-World Example
|
|
487
|
-
|
|
488
|
-
**Scenario:** 6-week plugin development project. WordPress update lands in week 3.
|
|
489
|
-
|
|
490
|
-
**VM Approach:**
|
|
491
|
-
- Wait for scheduled monthly rebuild (week 4)
|
|
492
|
-
- Backup your work
|
|
493
|
-
- Rebuild overwrites everything
|
|
494
|
-
- Restore and re-test
|
|
495
|
-
- **Impact:** 2-4 hours lost, risk of data loss
|
|
496
|
-
|
|
497
|
-
**buwp-local Approach:**
|
|
498
|
-
- Pull new image when convenient (any time in week 3-6)
|
|
499
|
-
- Containers recreate with new WordPress version
|
|
500
|
-
- Your code untouched on local filesystem
|
|
501
|
-
- **Impact:** 2 minutes, zero risk
|
|
502
|
-
|
|
503
462
|
### Separation of Concerns
|
|
504
463
|
|
|
505
464
|
This architecture provides clean boundaries:
|
|
@@ -516,18 +475,6 @@ This architecture provides clean boundaries:
|
|
|
516
475
|
|
|
517
476
|
Updates to WordPress never touch your development code. Updates to your code never require rebuilding WordPress.
|
|
518
477
|
|
|
519
|
-
### Additional Architectural Benefits
|
|
520
|
-
|
|
521
|
-
1. **Live Reload** - File changes sync instantly via volume mappings. Save in your editor, refresh browser, see changes.
|
|
522
|
-
|
|
523
|
-
2. **IDE Integration** - Use any editor (VS Code, PHPStorm, Sublime) with full IDE features (autocomplete, debugging, git integration).
|
|
524
|
-
|
|
525
|
-
3. **Version Control** - Your code is already on the host filesystem where git lives. No special workflows to commit from inside VMs.
|
|
526
|
-
|
|
527
|
-
4. **Multiple Projects** - Run multiple projects simultaneously, each with isolated environments. No VM resource conflicts.
|
|
528
|
-
|
|
529
|
-
5. **Portable Configuration** - Commit `.buwp-local.json` to version control. Teammates get identical environments with one command.
|
|
530
|
-
|
|
531
478
|
For detailed migration guidance, see [MIGRATION_FROM_VM.md](MIGRATION_FROM_VM.md).
|
|
532
479
|
|
|
533
480
|
## Security Model
|
package/docs/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,10 @@ All notable changes to buwp-local will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.7.1]
|
|
9
|
+
|
|
10
|
+
Documentation only release.
|
|
11
|
+
|
|
8
12
|
## [0.7.0]
|
|
9
13
|
|
|
10
14
|
### Added
|
package/docs/ROADMAP.md
CHANGED
|
@@ -102,7 +102,7 @@ hostile.remove('127.0.0.1', config.hostname);
|
|
|
102
102
|
---
|
|
103
103
|
|
|
104
104
|
## Incremental Functional Improvements: v0.6.x
|
|
105
|
-
**Status:**
|
|
105
|
+
**Status:** Shipped
|
|
106
106
|
**Focus:** Enhancements based on initial user experience
|
|
107
107
|
|
|
108
108
|
### Shipped in v0.6.1
|
|
@@ -115,7 +115,7 @@ hostile.remove('127.0.0.1', config.hostname);
|
|
|
115
115
|
- **Fix issues with spaces in paths**
|
|
116
116
|
- Fix issues with spaces in host paths causing Docker errors
|
|
117
117
|
|
|
118
|
-
###
|
|
118
|
+
### Shipped for v0.6.3
|
|
119
119
|
|
|
120
120
|
- **Basic docs on existing Xdebug features**
|
|
121
121
|
- Quickstart guide for enabling and using Xdebug in containers
|
|
@@ -123,10 +123,6 @@ hostile.remove('127.0.0.1', config.hostname);
|
|
|
123
123
|
- **Volume Mapping pattern guide**
|
|
124
124
|
- Documentation on different volume mapping strategies for various development workflows
|
|
125
125
|
|
|
126
|
-
### Shipped in v0.6.3
|
|
127
|
-
|
|
128
|
-
**Focus:** Documentation refinement based on real user patterns
|
|
129
|
-
|
|
130
126
|
**Key Deliverables:**
|
|
131
127
|
|
|
132
128
|
1. **Volume Mapping Patterns Guide** ✅
|
|
@@ -152,14 +148,12 @@ hostile.remove('127.0.0.1', config.hostname);
|
|
|
152
148
|
|
|
153
149
|
**Result:** Documentation now accurately reflects real-world development workflows, making it easier for new users to adopt appropriate patterns.
|
|
154
150
|
|
|
155
|
-
## Next Phase: v0.7.
|
|
151
|
+
## Next Phase: v0.7.x - Developer Experience
|
|
156
152
|
|
|
157
|
-
**Status:**
|
|
158
|
-
**Timeline:** After team onboarding feedback
|
|
153
|
+
**Status:** Ongoing
|
|
159
154
|
**Focus:** Ease of use and visibility
|
|
160
155
|
|
|
161
|
-
###
|
|
162
|
-
|
|
156
|
+
### Shipped in v0.7.0
|
|
163
157
|
- **Docker Image Update Command** 🎯 (Proposed for v0.7.0)
|
|
164
158
|
- **Problem:** Stopping and restarting containers reuses existing images; newer images aren't pulled
|
|
165
159
|
- **Solution:** Add `buwp-local update` command that:
|
|
@@ -169,6 +163,11 @@ hostile.remove('127.0.0.1', config.hostname);
|
|
|
169
163
|
- **Benefit:** Safe, explicit way to apply WordPress/service updates without `destroy`
|
|
170
164
|
- **Implementation:** Wrapper around `docker-compose pull && docker-compose up -d --force-recreate`
|
|
171
165
|
|
|
166
|
+
### Shipped in v0.7.1
|
|
167
|
+
- **Documentation Improvements**
|
|
168
|
+
|
|
169
|
+
### Potential Features
|
|
170
|
+
|
|
172
171
|
- **Database Security**
|
|
173
172
|
- Check database access on db port (e.g. `localhost:3306`)
|
|
174
173
|
- Consider more stringent default database passwords
|
|
@@ -226,7 +225,7 @@ Will be informed by feedback from initial small group of users and actual pain p
|
|
|
226
225
|
|
|
227
226
|
- **Cross-Platform Support** - Windows WSL2 and Linux credential storage
|
|
228
227
|
- **SSL Certificate Generation** - Local HTTPS with mkcert
|
|
229
|
-
- **Real support for
|
|
228
|
+
- **Real support for running on ports other than 443**
|
|
230
229
|
- **Potential GUI from Electron or SwiftUI**
|
|
231
230
|
|
|
232
231
|
**Note:** Automatic `/etc/hosts` management deferred pending user feedback. See "Lessons Learned" section above for details on the `hostile` library approach.
|