Skip to content

CEXT-5230: Releasing aio app db cli commands#27

Merged
moritzraho merged 144 commits intomainfrom
epic/abdb-implementation
Mar 17, 2026
Merged

CEXT-5230: Releasing aio app db cli commands#27
moritzraho merged 144 commits intomainfrom
epic/abdb-implementation

Conversation

@pdohogne-magento
Copy link
Copy Markdown
Collaborator

Description

Committing aio app db commands to main

Related Issue

CEXT-5230: Deploy CLI DB App to Staging

Motivation and Context

Release aio app db commands

How Has This Been Tested?

Unit and manual tests, see PRs #12 - #26

Screenshots (if appropriate):

image image

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • I have signed the Adobe Open Source CLA.
  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

Simran Gulati and others added 30 commits June 25, 2025 18:54
Co-authored-by: Peter Dohogne <pdohogne@adobe.com>
feat:cext-4860 added standalone commands
@pdohogne-magento pdohogne-magento mentioned this pull request Mar 9, 2026
10 tasks
package.json Outdated
{
"name": "@adobe/aio-cli-plugin-app-storage",
"version": "1.2.0",
"version": "1.3.0",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revert this, version change is an npm-publish-time change.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed


# Commands
<!-- commands -->
## State Storage Commands
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updating and is part of the release process (prepack). If you are adding any text/description make sure it is not in these sections or it will be overwritten. These sections are generated directly from the code.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will the generation work with the updated project directory structure separating state and storage commands?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you want me to revert these changes, or can I leave them and let them be overwritten by the generation?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

doc generation should be fine, we can verify by running prepack and checking if it makes the same changes.
no need to revert, a new commit is fine, we typically squash with a detailed commit message.

let packageJson
try {
// eslint-disable-next-line node/no-unsupported-features/es-syntax
const { readFile } = await import('fs/promises')
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this an import?

Copy link
Copy Markdown
Collaborator Author

@pdohogne-magento pdohogne-magento Mar 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is that way in main, we changed as little about the state commands as possible.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In :main/BaseCommand the module being loaded has properties that get reset by the dynamic import. Here we are just using readFile which never changes, so single import at the top of the file would be fine.
We use fs-extra pretty much everywhere as it does promise|await|callback and has convenience methods (readJSON)
I think this is fine to leave in, not that big of a deal.
It should also probably be import('node:fs/promises') but this is all minor.

let packageJson
try {
// eslint-disable-next-line node/no-unsupported-features/es-syntax
const { readFile } = await import('fs/promises')
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In :main/BaseCommand the module being loaded has properties that get reset by the dynamic import. Here we are just using readFile which never changes, so single import at the top of the file would be fine.
We use fs-extra pretty much everywhere as it does promise|await|callback and has convenience methods (readJSON)
I think this is fine to leave in, not that big of a deal.
It should also probably be import('node:fs/promises') but this is all minor.

@moritzraho moritzraho closed this Mar 17, 2026
@moritzraho moritzraho reopened this Mar 17, 2026
@moritzraho moritzraho merged commit c26ffc1 into main Mar 17, 2026
11 of 19 checks passed
@moritzraho moritzraho deleted the epic/abdb-implementation branch March 17, 2026 08:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants