v4.0.0
Features:
- Manage administrators from within the admin panel of the developer portal (#308, #358, #375)
- Add users, remove users, and promote them to admins purely from a web interface in the admin panel
- Invite users to see the panel
- Users can generate Swagger/OpenAPI exports from the developer portal (#350)
- Users can optionally include
x-amazon-apigateway-integrations
extensions,x-amazon-apigateway-authorizer
extensions, or extensions for importing into Postman, and they can include any combination of the three - Users can export as either JSON or YAML, depending on their preference
- Users can optionally include
- External documentation fields are now consistently shown (#375)
- External documentation descriptions are rendered as Markdown per Swagger spec
- External documentation URLs are auto-linked
- APIs managed by API Gateway are shown with their AWS stage names (#357, #375)
- These are still called "APIs" from the developer portal, and no direct reference to the AWS concept of "stages" is made in the text
Fixes:
- Update dependencies to fix npm audit warnings (#330, #375, commit fff3d74)
- Also removed a few unnecessary dependencies - your deployment lambdas should be slightly smaller and load a little quicker
- Optimize the catalog updater substantially and fix some client-side logic that further slowed the process down (#375)
- Also added loading spinners for each relevant button in the admin panel
- Fall back to available server endpoints for imported APIs that lack the optional
host
field (all Swagger 2 imports, some OpenAPI 3 imports), and omit it entirely if the fallback fails (#375) - The server-side 60-minute session timer is now reflected client-side as well, and it validates this against the client (#367)
- The client now consistently waits for login before actually requesting certain data, to avoid certain client-side errors (#362)
- Fix error handling in the backend to more rigorously report exceptions (#362, #375)
- Fix static asset setup to properly copy images, to avoid encoding errors (#370)
- Fix logo loading, to use proper keys (#362, #375)
- Fix file upload iteration to not throw exceptions (#373)
- Fix data issue with the APIs listing (#377)
- Fix race condition with config in static asset uploader (#380)
- Ensure all APIs are fetched in admin panel (#393)
- Assorted visual, grammatical, and typographical fixes (#361, #390, #401, #402, #403, #404)
- Assorted security fixes
Changes:
- Marketplace subscription support is removed for now, as it's known broken (#410)
- Update Node.js in the lambdas to 12 (#330)
- Limit for API imports increased to 10MB to allow for larger imports (#359)
- Update development setup scripts and related documentation for easier onboarding (#344, #380, #396)
- Node 12 or later is now required to build the developer portal locally
- Remove redundant subscribable/unsubscribable categories from admin panel (#362)
- The core concept and the reasoning behind it is that you can only subscribe to APIs with usage plans (an invariant that already existed prior), and so the presence of a usage plan being assigned to it is what makes it subscribable
- Streamline search to be a bit more intuitive to use, and simplify its results (#362)
- Log errors much more consistently and regularly
- Registration confirmation emails now include a link to the developer portal instance they were created for and a more informative email title to clarify its origin (#369)
- Streamline the deployment process from source significantly for those who need deeper customization than what SAM/SAR alone allows (#380)
- Cognito user pool settings have been updated
- Cognito user pools are now retained post-deletion (#412)
- Add config options to the development script side to fill out the rest of the SAM template functionality (#396)