-
-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PPR Experiment #59
base: main
Are you sure you want to change the base?
PPR Experiment #59
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,7 +6,7 @@ | |
"scripts": { | ||
"build": "pnpm with-env next build", | ||
"clean": "git clean -xdf .next .turbo node_modules", | ||
"dev": "pnpm with-env next dev", | ||
"dev": "NODE_OPTIONS='--inspect' pnpm with-env next dev", | ||
"format": "prettier --check . --ignore-path ../../.gitignore", | ||
"lint": "eslint", | ||
"start": "pnpm with-env next start", | ||
|
@@ -35,7 +35,7 @@ | |
"date-fns-tz": "^3.2.0", | ||
"geist": "^1.3.0", | ||
"motion-number": "^0.1.7", | ||
"next": "^14.2.14", | ||
"next": "15.0.2-canary.5", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 💡 Codebase verification Based on the package.json files analysis, I can now provide a final response: The upgrade to Next.js 15.0.2-canary.5 raises significant concerns:
Recommendation: Maintain version consistency by either:
🔗 Analysis chainThe update to
Let's verify the official migration guide and current stable version: Recommendation: Consider using the latest stable version of Next.js 14.x instead of the canary release to ensure stability and production readiness. If you need to test Next.js 15 features, consider doing so in a separate development branch. Let me try a different approach to gather information about Next.js versions and potential breaking changes. This will help us:
🏁 Scripts executedThe following scripts were executed for the analysis: Script: #!/bin/bash
# Get the latest stable version of Next.js from npm
echo "Latest stable Next.js version:"
npm show next version
# Check if there's an official blog post or migration guide for Next.js 15
echo -e "\nSearching for Next.js 15 migration guide:"
gh search repos --owner vercel --match name "next.js" --json description | jq '.[] | select(.description | contains("15"))'
Length of output: 388 Script: #!/bin/bash
# Check package.json files for Next.js related dependencies and configurations
echo "Checking package.json files:"
fd package.json --exec cat {}
# Look for Next.js configuration files
echo -e "\nChecking Next.js config files:"
fd next.config --extension js,mjs,ts,mts --exec cat {}
# Search for any migration or upgrade related documentation in the repository
echo -e "\nSearching for migration/upgrade documentation:"
rg -i "upgrade|migration|breaking.?changes" -g "*.md"
Length of output: 15756 |
||
"nuqs": "^1.19.3", | ||
"posthog-js": "^1.167.0", | ||
"react": "18.3.1", | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
"use client"; | ||
|
||
import { | ||
Area, | ||
AreaChart, | ||
Bar, | ||
BarChart, | ||
CartesianGrid, | ||
ResponsiveContainer, | ||
XAxis, | ||
YAxis, | ||
} from "recharts"; | ||
|
||
import { | ||
ChartContainer, | ||
ChartTooltip, | ||
ChartTooltipContent, | ||
} from "@amaxa/ui/chart"; | ||
|
||
const chartConfig = { | ||
tasksFinished: { | ||
label: "Tasks Finished", | ||
color: "hsl(var(--primary))", | ||
}, | ||
count: { | ||
label: "Count", | ||
color: "hsl(var(--primary))", | ||
}, | ||
}; | ||
|
||
export function TasksOverTimeChartClient({ | ||
taskData, | ||
}: { | ||
taskData: Array<{ month: string; tasksFinished: number }>; | ||
}) { | ||
return ( | ||
<ChartContainer config={chartConfig} className="h-[300px] w-full"> | ||
<ResponsiveContainer width="100%" height="100%"> | ||
<AreaChart | ||
data={taskData} | ||
margin={{ | ||
top: 10, | ||
right: 30, | ||
left: 0, | ||
bottom: 0, | ||
}} | ||
> | ||
<CartesianGrid strokeDasharray="3 3" /> | ||
<XAxis dataKey="month" /> | ||
<YAxis /> | ||
<ChartTooltip content={<ChartTooltipContent />} /> | ||
<Area | ||
type="monotone" | ||
dataKey="tasksFinished" | ||
stroke={chartConfig.tasksFinished.color} | ||
fill={chartConfig.tasksFinished.color} | ||
/> | ||
</AreaChart> | ||
</ResponsiveContainer> | ||
</ChartContainer> | ||
); | ||
} | ||
|
||
export function TaskStatusChartClient({ | ||
statusData, | ||
}: { | ||
statusData: Array<{ status: string; count: number }>; | ||
}) { | ||
return ( | ||
<ChartContainer className="h-full w-full" config={chartConfig}> | ||
<ResponsiveContainer width="100%" height={200}> | ||
<BarChart data={statusData}> | ||
<CartesianGrid strokeDasharray="3 3" /> | ||
<XAxis dataKey="status" /> | ||
<YAxis /> | ||
<ChartTooltip content={<ChartTooltipContent />} /> | ||
<Bar dataKey="count" fill={chartConfig.count.color} /> | ||
</BarChart> | ||
</ResponsiveContainer> | ||
</ChartContainer> | ||
); | ||
} | ||
|
||
export function TaskPriorityChartClient({ | ||
priorityData, | ||
}: { | ||
priorityData: Array<{ priority: string; count: number }>; | ||
}) { | ||
return ( | ||
<ChartContainer className="h-full w-full" config={chartConfig}> | ||
<ResponsiveContainer width="100%" height={200}> | ||
<BarChart data={priorityData}> | ||
<CartesianGrid strokeDasharray="3 3" /> | ||
<XAxis dataKey="priority" /> | ||
<YAxis /> | ||
<ChartTooltip content={<ChartTooltipContent />} /> | ||
<Bar dataKey="count" fill={chartConfig.count.color} /> | ||
</BarChart> | ||
</ResponsiveContainer> | ||
</ChartContainer> | ||
); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codebase verification
PPR configuration needs attention due to inconsistency across apps
The verification reveals that PPR is configured differently across the Next.js applications in the monorepo:
apps/nextjs/next.config.ts
: usesppr: "incremental"
apps/website/next.config.ts
: usesppr: true
export const experimental_ppr = true
This inconsistency in PPR configuration could lead to unexpected behavior. Consider:
🔗 Analysis chain
Verify the implications of enabling experimental PPR.
While enabling Partial Page Rendering (PPR) can improve performance, please note:
Let's check if this aligns with the Next.js version being used:
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
Length of output: 253
Script:
Length of output: 29270