Skip to content

Conversation

@meeroslav
Copy link
Contributor

@meeroslav meeroslav commented Oct 9, 2025

This PR creates a global spinner handler and adds the runtime information to the convert-to-inferred migration process.

The global spinner ensures a single instance of the ora spinner. The ora cannot run several instances in parallel, so running multiple instances causes flickering due to message deletion.

The covert-to-inferred plugin migration will now show the loading spinner and progress indicator specifying how many projects have been converted.

Additional changes:

  • DelayedSpinner will not show if there is another (parent) spinner already running.

Current Behavior

Expected Behavior

Related Issue(s)

Fixes #

@meeroslav meeroslav self-assigned this Oct 9, 2025
@meeroslav meeroslav changed the title Feat/add convert to inferred logs feat(core): enhance spinner handling and add spinner to inferred conversion Oct 9, 2025
@netlify
Copy link

netlify bot commented Oct 9, 2025

Deploy Preview for nx-docs ready!

Name Link
🔨 Latest commit 7b79a88
🔍 Latest deploy log https://app.netlify.com/projects/nx-docs/deploys/68f6439ee11c1400089beb4c
😎 Deploy Preview https://deploy-preview-33031--nx-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@vercel
Copy link

vercel bot commented Oct 9, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Updated (UTC)
nx-dev Ready Ready Preview Oct 20, 2025 2:25pm

💡 Enable Vercel Agent with $100 free credit for automated AI reviews

@nx-cloud
Copy link
Contributor

nx-cloud bot commented Oct 9, 2025

View your CI Pipeline Execution ↗ for commit 7b79a88

Command Status Duration Result
nx affected --targets=lint,test,test-kt,build,e... ✅ Succeeded 1h 11m 59s View ↗
nx run-many -t check-imports check-commit check... ✅ Succeeded 2m 39s View ↗
nx-cloud record -- nx-cloud conformance:check ✅ Succeeded 3s View ↗
nx-cloud record -- nx format:check ✅ Succeeded 2s View ↗
nx-cloud record -- nx sync:check ✅ Succeeded <1s View ↗

☁️ Nx Cloud last updated this comment at 2025-10-20 15:31:36 UTC

nx-cloud[bot]

This comment was marked as outdated.

nx-cloud[bot]

This comment was marked as outdated.

Comment on lines 25 to 33
stop() {
this.#ora.stop();
}
Copy link
Contributor

Choose a reason for hiding this comment

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

The stop() method should check if this.#ora exists before calling stop() on it. Currently, if stop() is called before start(), this.#ora will be undefined and cause a runtime error. Consider adding a null check:

stop() {
  if (this.#ora) {
    this.#ora.stop();
  }
}

This pattern is already used correctly in the updateText() method below.

Suggested change
stop() {
this.#ora.stop();
}
stop() {
if (this.#ora) {
this.#ora.stop();
}
}

Spotted by Graphite Agent

Fix in Graphite


Is this helpful? React 👍 or 👎 to let us know.

Copy link
Contributor

@nx-cloud nx-cloud bot left a comment

Choose a reason for hiding this comment

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

Nx Cloud has identified a possible root cause for your failed CI:

The failure analysis reveals that the nx-dev:build-base task failed because Next.js cannot find the directory public/documentation/blog during static page generation for the /blog/[slug] route.

Classification rationale for 'environment_state':

  1. No correlation with PR changes: The PR modifies spinner handling utilities, test setup code, documentation markdown files, and ESLint generator configuration. None of these changes involve:

    • Deleting or moving the public/documentation/blog directory
    • Modifying blog-related functionality
    • Changing Next.js static generation configuration
    • Altering file system operations related to the blog
  2. File system error unrelated to code logic: The error is "ENOENT: no such file or directory" - a fundamental file system issue indicating a missing directory that should exist in the repository structure. This is not a code logic error that could be introduced by the PR's changes.

  3. Pre-existing repository issue: The missing directory represents a pre-existing problem in the repository environment. The similar task failure outputs from the master branch were empty, suggesting this may be an intermittent or environment-specific issue rather than something introduced by this PR.

  4. Direct inspection of changes: Reviewing the complete diff shows:

    • Creation of packages/nx/src/utils/spinner.ts with a new SpinnerManager class
    • Updates to various files to use globalSpinner instead of local ora instances
    • Simplification of newProject() calls in e2e tests
    • Documentation updates to markdown files (adding {% frame="none" %} attributes and removing manual dependency management sections)
    • ESLint generator changes to remove deprecated TypeScript ESLint packages

None of these modifications would cause or relate to a missing blog directory in the nx-dev public folder.

The failure is definitively classified as 'environment_state' because it represents a missing file system resource that is completely unrelated to the PR's scope of work around spinner handling and test improvements.

A code change would likely not resolve this issue, so no action was taken.

Nx CloudView in Nx Cloud ↗


🎓 To learn more about Self Healing CI, please visit nx.dev

@meeroslav meeroslav added type: enhancement scope: core core nx functionality labels Oct 20, 2025
@meeroslav meeroslav merged commit 16c4b2b into master Oct 20, 2025
14 checks passed
@meeroslav meeroslav deleted the feat/add-convert-to-inferred-logs branch October 20, 2025 15:35
@github-actions
Copy link
Contributor

This pull request has already been merged/closed. If you experience issues related to these changes, please open a new issue referencing this pull request.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 26, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants