Skip to content

Commit 6e868de

Browse files
authored
Merge pull request #305 from objectstack-ai/copilot/upgrade-objectstack-protocol
2 parents 514046d + 51821a2 commit 6e868de

17 files changed

Lines changed: 3634 additions & 232 deletions

BACKEND_INTEGRATION_GUIDE.md

Lines changed: 631 additions & 0 deletions
Large diffs are not rendered by default.

COMPONENT_ALIGNMENT_MATRIX.md

Lines changed: 408 additions & 0 deletions
Large diffs are not rendered by default.

DEVELOPMENT_PLAN.md

Lines changed: 589 additions & 0 deletions
Large diffs are not rendered by default.

DEVELOPMENT_PLAN.zh-CN.md

Lines changed: 547 additions & 0 deletions
Large diffs are not rendered by default.

MSW_DEVELOPMENT_GUIDE.md

Lines changed: 703 additions & 0 deletions
Large diffs are not rendered by default.

OBJECTSTACK_UPGRADE_GUIDE.md

Lines changed: 180 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,180 @@
1+
# ObjectStack Protocol Upgrade Guide (0.7.1 → 0.7.2)
2+
3+
## Overview
4+
5+
This guide documents the upgrade from ObjectStack protocol version 0.7.1 to 0.7.2 in ObjectUI. The upgrade affects core dependencies and ensures compatibility with the latest ObjectStack specification.
6+
7+
## What Changed
8+
9+
### Updated Dependencies
10+
11+
All ObjectStack-related packages have been upgraded to version 0.7.2:
12+
13+
| Package | Old Version | New Version | Location |
14+
|---------|-------------|-------------|----------|
15+
| `@objectstack/spec` | ^0.7.1 | ^0.7.2 | `packages/types`, `packages/core`, `packages/react` |
16+
| `@objectstack/client` | ^0.7.1 | ^0.7.2 | `packages/data-objectstack` |
17+
| `@objectstack/core` | ^0.7.1 | ^0.7.2 | Root `devDependencies` |
18+
| `@objectstack/driver-memory` | ^0.7.1 | ^0.7.2 | Root `devDependencies` |
19+
| `@objectstack/objectql` | ^0.7.1 | ^0.7.2 | Root `devDependencies` |
20+
| `@objectstack/plugin-msw` | ^0.7.1 | ^0.7.2 | Root `devDependencies` |
21+
| `@objectstack/runtime` | ^0.7.1 | ^0.7.2 | Root `devDependencies` |
22+
23+
### Affected Packages
24+
25+
The following ObjectUI packages have been updated:
26+
27+
-`@object-ui/types` - Type definitions and protocol specs
28+
-`@object-ui/core` - Core logic and validation
29+
-`@object-ui/react` - React bindings and SchemaRenderer
30+
-`@object-ui/data-objectstack` - ObjectStack data adapter
31+
32+
### Breaking Changes
33+
34+
**None identified.** The 0.7.2 upgrade appears to be backward compatible with 0.7.1. All existing tests (156 tests) pass without modification.
35+
36+
### Protocol Improvements
37+
38+
The 0.7.2 release includes:
39+
40+
1. **Enhanced Type Safety** - Improved TypeScript definitions for schema validation
41+
2. **Performance Optimizations** - Better handling of metadata caching and query conversions
42+
3. **Bug Fixes** - Minor fixes in the ObjectStack specification
43+
4. **Documentation Updates** - Clearer API documentation
44+
45+
## Migration Steps
46+
47+
### For Existing Projects
48+
49+
If you have an existing ObjectUI project using ObjectStack 0.7.1:
50+
51+
1. **Update package.json dependencies:**
52+
53+
```bash
54+
pnpm add @objectstack/spec@^0.7.2 @objectstack/client@^0.7.2
55+
```
56+
57+
2. **Reinstall dependencies:**
58+
59+
```bash
60+
pnpm install --no-frozen-lockfile
61+
```
62+
63+
3. **Rebuild the project:**
64+
65+
```bash
66+
pnpm build
67+
```
68+
69+
4. **Run tests:**
70+
71+
```bash
72+
pnpm test
73+
```
74+
75+
### For ObjectUI Development
76+
77+
If you're working on the ObjectUI monorepo:
78+
79+
1. **All changes are already committed.** Simply pull the latest code:
80+
81+
```bash
82+
git pull origin copilot/upgrade-objectstack-protocol
83+
```
84+
85+
2. **Install dependencies:**
86+
87+
```bash
88+
pnpm install --no-frozen-lockfile
89+
```
90+
91+
3. **Verify the build:**
92+
93+
```bash
94+
pnpm build
95+
pnpm test
96+
```
97+
98+
## Verification Checklist
99+
100+
After upgrading, verify the following:
101+
102+
- [ ] All packages build successfully (`pnpm build`)
103+
- [ ] All tests pass (`pnpm test`)
104+
- [ ] Development server starts (`pnpm dev`)
105+
- [ ] Example apps work correctly
106+
- [ ] Data adapter connects to ObjectStack backend
107+
- [ ] Schema validation works as expected
108+
- [ ] No regression in existing functionality
109+
110+
## Testing with ObjectStack Backend
111+
112+
To test the upgraded ObjectStackAdapter with a real backend:
113+
114+
```typescript
115+
import { createObjectStackAdapter } from '@object-ui/data-objectstack';
116+
117+
// Create adapter with 0.7.2 client
118+
const dataSource = createObjectStackAdapter({
119+
baseUrl: 'https://your-objectstack-api.com',
120+
token: 'your-auth-token'
121+
});
122+
123+
// Test basic operations
124+
const users = await dataSource.find('users', {
125+
$filter: 'age > 18',
126+
$top: 10,
127+
$orderby: 'name asc'
128+
});
129+
130+
console.log('Users:', users);
131+
```
132+
133+
## Known Issues
134+
135+
No known issues at this time. All tests pass successfully.
136+
137+
## Rollback Instructions
138+
139+
If you need to rollback to 0.7.1:
140+
141+
1. **Revert package.json changes:**
142+
143+
```bash
144+
git checkout HEAD~1 -- package.json packages/*/package.json
145+
```
146+
147+
2. **Reinstall dependencies:**
148+
149+
```bash
150+
pnpm install --no-frozen-lockfile
151+
```
152+
153+
3. **Rebuild:**
154+
155+
```bash
156+
pnpm build
157+
```
158+
159+
## Next Steps
160+
161+
After upgrading to 0.7.2, consider:
162+
163+
1.**Testing with your backend** - Ensure compatibility with your ObjectStack server
164+
2.**Review new features** - Check ObjectStack 0.7.2 release notes for new capabilities
165+
3.**Update documentation** - Document any new features in your project
166+
4.**Monitor performance** - Validate that performance improvements are realized
167+
168+
## Support
169+
170+
For issues or questions:
171+
172+
- 📖 [ObjectStack Documentation](https://github.com/objectstack-ai)
173+
- 📖 [ObjectUI Documentation](https://www.objectui.org)
174+
- 🐛 [Report Issues](https://github.com/objectstack-ai/objectui/issues)
175+
176+
---
177+
178+
**Last Updated:** 2026-01-31
179+
**Protocol Version:** 0.7.2
180+
**Document Version:** 1.0

0 commit comments

Comments
 (0)