Ensure configuration management accounts for different environments and maintains backward compatibility during migrations. This includes using safe access patterns for global objects, versioning configuration keys, and preserving environment-specific behavior.
Ensure configuration management accounts for different environments and maintains backward compatibility during migrations. This includes using safe access patterns for global objects, versioning configuration keys, and preserving environment-specific behavior.
Key practices:
Example from the discussions:
// Safe global access with optional chaining
__html: `(${restoreScroll.toString()})(${JSON.stringify(storageKey)},${JSON.stringify(resolvedKey)});__TSR__?.cleanScripts?.()`
// Versioned configuration keys
export const storageKey = 'tsr-scroll-restoration-v1-3'
// Proxy exports for backward compatibility
export { TanStackRouterDevtoolsInProd as TanStackRouterDevtools } from '@tanstack/react-router-devtools'
This approach prevents runtime errors in different environments, avoids configuration conflicts during updates, and ensures smooth transitions during package migrations.
Enter the URL of a public GitHub repository