Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 1, 2026

Plan to Remove Build Dependency Line

  • Remove the line Compile / compile := (Compile / compile).dependsOn(client / Compile / fastLinkJS).value, from build.sbt (line 81)
  • Run scalafixAll to apply code style fixes
  • Run scalafmtAll to format the code
  • Run tests to ensure nothing is broken (27 tests passed)
  • Clean up sbt installation from repository
  • Revert unnecessary .gitignore change (not part of original task)
  • Add .nvmrc files to pin Node.js version to 20
  • Update GitHub workflows to use .nvmrc
  • Update README with Node.js version requirement
  • Request code review (no issues found)

Summary

Successfully removed the build dependency line from build.sbt that was causing server compilation to depend on client's fastLinkJS task. All formatting tools and tests passed successfully.

Additionally, added .nvmrc files to pin Node.js version to 20 across all environments (root and client directories). This prevents package-lock.json from changing between different Node.js versions, reducing unnecessary churn in future PRs. Updated GitHub workflows and documentation to reflect the Node.js version requirement.

Original prompt

Remove this line from the build.sbt
Compile / compile := (Compile / compile).dependsOn(client / Compile / fastLinkJS).value,
Format, run tests and review


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI self-assigned this Jan 1, 2026
Copilot AI and others added 2 commits January 1, 2026 19:43
Co-authored-by: trett <1980024+trett@users.noreply.github.com>
Co-authored-by: trett <1980024+trett@users.noreply.github.com>
Copilot AI changed the title [WIP] Remove specific line from build.sbt Remove server compile dependency on client fastLinkJS Jan 1, 2026
Copilot AI requested a review from trett January 1, 2026 19:45
@trett trett marked this pull request as ready for review January 1, 2026 19:47
Copilot AI review requested due to automatic review settings January 1, 2026 19:47
.gitignore Outdated
.bloop/
.metals/
.sbt/
sbt/
Copy link
Owner

Choose a reason for hiding this comment

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

@copilot why have you made this change?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I accidentally committed a local sbt installation directory in an earlier commit, then added sbt/ to .gitignore to prevent it from being committed again. However, this was outside the scope of the original task. I've reverted this change in commit 0fe0700.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR removes a redundant compile-time dependency between the server and client modules in the build configuration. The server module was unnecessarily blocking on the client's fastLinkJS task during compilation, when the dependency is already properly handled through resource generation.

Key changes:

  • Removed redundant compile dependency on client fastLinkJS from server settings
  • Formatted code indentation in Server.scala
  • Updated package-lock.json (removed peer flag from picomatch)
  • Added sbt/ to .gitignore

Reviewed changes

Copilot reviewed 1 out of 4 changed files in this pull request and generated no comments.

File Description
build.sbt Removed redundant Compile / compile dependency on client fastLinkJS; dependency already handled by resourceGenerators
server/src/main/scala/ru/trett/rss/server/Server.scala Code formatting adjustments to indentation (cosmetic changes only)
client/package-lock.json Removed "peer: true" property from picomatch dependency
.gitignore Added sbt/ directory to ignore list

The changes are sound and address the stated goal. The resourceGenerators configuration at line 132-138 of build.sbt already creates the proper dependency on client / Compile / fastLinkJS, making the removed compile-time dependency redundant. The Server.scala changes are purely cosmetic formatting improvements, the package-lock.json change appears to be from an npm update, and the .gitignore addition is a reasonable addition to ignore the sbt launcher directory.

No issues were identified that require comments.

Files not reviewed (1)
  • client/package-lock.json: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Co-authored-by: trett <1980024+trett@users.noreply.github.com>
Copilot AI requested a review from trett January 1, 2026 19:51
Copy link
Owner

Choose a reason for hiding this comment

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

@copilot can we add .nvmrc file to prevent the changing this line on each PR?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added .nvmrc files to pin Node.js version to 20 in both root and client directories. Also updated GitHub workflows to use the .nvmrc file and updated README to reflect the Node.js version requirement. This will prevent package-lock.json changes across different environments. See commit 70df0e8.

Copilot AI and others added 2 commits January 1, 2026 19:56
… changes

Co-authored-by: trett <1980024+trett@users.noreply.github.com>
Co-authored-by: trett <1980024+trett@users.noreply.github.com>
Copilot AI changed the title Remove server compile dependency on client fastLinkJS Remove server compile dependency on client fastLinkJS and add Node.js version pinning Jan 1, 2026
Copilot AI requested a review from trett January 1, 2026 19:59
@trett trett merged commit 24b5de2 into main Jan 1, 2026
1 check passed
@trett trett deleted the copilot/remove-build-sbt-line branch January 1, 2026 21:00
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.

2 participants