Derek Kershner
01/22/2022, 6:18 PMcore
and nextjs-lambda
become packages with no dependencies. There is no downside to this as only SST
packages consume them.
2. cli
and resources
have lite
packages created alongside their current packages. These packages would be the exact same code as the current packages, but with no dependencies.
3. NON-lite cli
and resources
would install cli-lite
and resources-lite
, and also install all of the current dependencies. These packages would become an index file with export * from lite
.
Benefits:
1. Allows a path for users to have completely custom and advanced apps with no restrictions.
2. Non-breaking change.
3. During the yearly major-version update (for Jest, ESLint, Apollo, etc), the lite
packages would give SST
a way to support users who do not want to upgrade their support packages (which would be legacy at that point), but still want to have the newest features. Major version updates in those packages are frequently met with challenges, and large apps are likely to appreciate this in a major way.
Cons:
1. A small amount of work up front. I would volunteer for this, as I have already spent more time troubleshooting dependencies than would be required to implement.
2. The contributing experience for Open Source Devs of SST would have one layer of abstraction to uncover (they would have to realize the lite packages contain the business logic).
3. It's possible, but unlikely, there might be cryptic errors for lite
users, if things like ESLint are missing, but linting is enabled.
Alternatives:
1. Fork. This is essentially the reverse of above, but achieves the same goal. It is more work, and benefit 3 goes away (since it wouldn't be internal SST anymore).Derek Kershner
01/22/2022, 6:32 PMaws-lambda-ric
may also need a bit of love, I dont believe this is open source.thdxr
01/22/2022, 6:39 PMthdxr
01/22/2022, 6:40 PMthdxr
01/22/2022, 6:40 PMDerek Kershner
01/22/2022, 6:42 PMAdam Fanello
01/23/2022, 7:38 PM@serverless-stack/queryql
if you want QueryQL support and that includes the Apollo dependency.Derek Kershner
01/24/2022, 2:44 AM@serverless-stack/construct-nextjssite
Perhaps that is what you meant though.
Either way, I'm trying my best to work with the decisions already made, and still allow advanced functionality and flexibility. I like all the thoughts I am hearing though.Richard Simpson
01/24/2022, 3:43 AMRichard Simpson
01/24/2022, 3:46 AM