-
-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(node): node api support for alpha9
#849
Conversation
WalkthroughWalkthroughThis update involves a comprehensive upgrade of development tools and dependencies across the project. Key changes include updating the base Docker image, advancing Java and Node versions in GitHub workflows, and refining the project's configuration files. The modifications aim to enhance performance, security, and maintainability, aligning the project with the latest technology standards. Changes
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
packages/graalvm/src/main/kotlin/elide/runtime/gvm/internals/AbstractVMEngine.kt
Outdated
Show resolved
Hide resolved
packages/graalvm/src/main/kotlin/elide/runtime/gvm/internals/intrinsics/Intrinsic.kt
Outdated
Show resolved
Hide resolved
/** | ||
* TBD. | ||
*/ | ||
internal class JsPromiseImpl<T> private constructor ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note to self: Needs doc. This is our new implementation of JS/JVM promise interop
packages/graalvm/src/main/kotlin/elide/runtime/gvm/internals/js/JsTimers.kt
Outdated
Show resolved
Hide resolved
packages/graalvm/src/main/kotlin/elide/runtime/gvm/internals/node/asserts/NodeAssertStrict.kt
Outdated
Show resolved
Hide resolved
@API public interface JsError { | ||
/** | ||
* | ||
*/ | ||
public val name: String | ||
|
||
/** | ||
* | ||
*/ | ||
public val message: String? | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doc
/** | ||
* # JavaScript Exception | ||
*/ | ||
public interface JsException : AbstractJsException, JsError { | ||
override val name: String get() = this::class.java.simpleName | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doc
/** | ||
* | ||
*/ | ||
@API public interface JsRegisteredError : JsError { | ||
/** | ||
* | ||
*/ | ||
public val code: String | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doc
/** | ||
* ## Node API: Assert | ||
*/ | ||
@API public interface AssertAPI : NodeAPI { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doc
/** | ||
* ## Node API: Assertion Error | ||
*/ | ||
@API public interface AssertionError : JsRegisteredError { | ||
override val name: String get() = "AssertionError" | ||
override val code: String get() = "ERR_ASSERTION" | ||
|
||
/** | ||
* | ||
*/ | ||
public val generatedMessage: Boolean |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Doc
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## release/alpha9 #849 +/- ##
===================================================
+ Coverage 35.75% 56.76% +21.01%
===================================================
Files 499 445 -54
Lines 15759 13648 -2111
Branches 2129 2204 +75
===================================================
+ Hits 5634 7747 +2113
+ Misses 9728 5129 -4599
- Partials 397 772 +375
Flags with carried forward coverage won't be shown. Click here to find out more. see 310 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
self-review pt 2
packages/cli/build.gradle.kts
Outdated
@@ -765,7 +770,7 @@ val profiles: List<String> = listOf( | |||
// GVM release flags | |||
val gvmReleaseFlags: List<String> = listOf( | |||
"-O3", | |||
"-flto", | |||
//"-flto", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: drop
packages/cli/build.gradle.kts
Outdated
if (enableEspresso) "-H:+AllowJRTFileSystem" else null, | ||
if (enableEspresso) "-J-Djdk.image.use.jvm.map=false" else null, | ||
if (enableEspresso) "-J-Despresso.finalization.UnsafeOverride=true" else null, | ||
// if (enableEspresso) "-H:+AllowJRTFileSystem" else null, | ||
// if (enableEspresso) "-J-Djdk.image.use.jvm.map=false" else null, | ||
// if (enableEspresso) "-J-Despresso.finalization.UnsafeOverride=true" else null, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixes espresso bug; drop rather than comment
packages/cli/build.gradle.kts
Outdated
@@ -1424,12 +1422,12 @@ tasks { | |||
} | |||
|
|||
dockerfileNative { | |||
graalImage = "${project.properties["elide.publish.repo.docker.tools"]}/gvm21:latest" | |||
graalImage = "${project.properties["elide.publish.repo.docker.tools"]}/gvm22:latest" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
note to self: gvm22
image doesn't exist yet (code is there, hasn't been built and pushed)
/** Script file arguments. */ | ||
@Parameters( | ||
index = "1", | ||
description = ["Arguments to pass"], | ||
scope = ScopeType.INHERIT, | ||
arity = "0..*", | ||
paramLabel = "ARG", | ||
) | ||
internal var args: List<String>? = null |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Args can be passed to the main entrypoint (like elide some-script.py args here
)
Or to the shell entrypoint (like elide run some-script.js args here
)
context(Arena) private fun prepareIsolate(): MemorySegment { | ||
private fun Arena.prepareIsolate(): MemorySegment { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@darvld had trouble with context(...)
, so these are now within the context of Arena
; the trouble is probably related to JDK22, in that allocateStringUtf8
and allocateArray
have been yeeted. as a result, for now, embedded
is pinned to JDK21.
packages/embedded/build.gradle.kts
Outdated
java { | ||
toolchain { | ||
languageVersion.set(JavaLanguageVersion.of(21)) | ||
vendor.set(JvmVendorSpec.GRAAL_VM) | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
jvm pin for embedded
This comment was marked as resolved.
This comment was marked as resolved.
👍 Dependency issues cleared. Learn more about Socket for GitHub ↗︎ This PR previously contained dependency changes with security issues that have been resolved, removed, or ignored. |
builder.option("log.level", "OFF") | ||
// builder.setOptions( | ||
// "log.level" to "OFF", | ||
// ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: drop
@@ -141,7 +139,6 @@ internal class JsRuntime @Inject constructor ( | |||
StaticProperty.active("js.import-attributes"), | |||
StaticProperty.active("js.intl-402"), | |||
StaticProperty.active("js.json-modules"), | |||
StaticProperty.active("js.nashorn-compat"), // @TODO(sgammon): disable after oracle/graaljs/issues/119 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yesssssss 🥳
- feat: initial implementation of `node:fs` - feat: initial implementation of `node:fs/promises` - feat: initial implementation of JS promises from JVM WIP Signed-off-by: Sam Gammon <[email protected]>
- chore: npm dep upgrades - chore: upgrade micronaut - chore: upgrade grpc Signed-off-by: Sam Gammon <[email protected]>
- feat(js): implement initial js timer support - feat(js): implement better js/jvm shared promise support - feat(node): implement facades for most builtin modules - feat(dev): support for ksp at k2 - feat(dev): support for kapt at k2 - feat(cli): retarget at jdk22 - test: re-enable most disabled tests - test(node): testing for all built-in modules - test(server): fix and re-enable all server tests - test(model): re-enable model redaction tests - fix(test): break `server` dependency - fix(plugin): brotli for asset builds - fix: sample project builds - fix: static model redaction - fix: asset serving tests, regenerate asset manifests - fix: toolchain at jdk22 - fix: module targets at jdk21 - fix: protobuf incompatibility with sigstore - fix: move `samples` to dedicated sub-build - fix: hide incomplete docs modules behind `buildDocsModules` - fix: rollback `web-streams-polyfill` to `3.x` - fix: re-enable python and ruby tests - fix: re-enable espresso tests but back out safely if needed - chore: general improvements to asset serving - chore: regenerate module pins, update verification metadata - chore: regenerate embedded runtime facade code - chore: version bump → `1.0.0-alpha9` - chore: plugin version bump → `1.0.0-beta29` - chore: upgrade gradle → `8.8-rc-1` - chore: upgrade protobuf → `3.25.x` - chore: upgrade logback → `1.5.6` - chore: upgrade commons codec → `1.17.0` - chore: upgrade guava → `33.2.0-jre` - chore: upgrade esbuild → `0.20.2` - chore: upgrade runtime → `alpha9` Relates-To: elide-dev/uuid#206 Relates-To: elide-dev/runtime#299 Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
- fix: installer does not account for nested directory in release archives - fix: installer does not properly apply path updates - fix: installer does not properly detect existing elide in path Fixes and closes #881 Relates-To: #480 Signed-off-by: Sam Gammon <[email protected]>
Fixes and closes #880 Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
Out of diff range and nitpick comments (1)
.devcontainer/dev/Dockerfile (1)
Line range hint
13-16
: Avoid usingsudo
in Dockerfiles to enhance security.- && sudo mv buildless.linux-amd64/buildless /usr/local/bin/buildless \ + && mv buildless.linux-amd64/buildless /usr/local/bin/buildless \
Review Details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (32)
bun.lockb
is excluded by!bun.lockb
docs/apidocs/older/1.0.0-alpha8/creative/logo/gray-elide-symbol-lg.png
is excluded by!**/*.png
,!**/*.png
docs/apidocs/older/1.0.0-alpha8/creative/logo/logo-wide-1200-w-r2.png
is excluded by!**/*.png
,!**/*.png
docs/apidocs/older/1.0.0-alpha8/images/anchor-copy-button.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/arrow_down.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/burger.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/copy-icon.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/copy-successful-icon.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/footer-go-to-link.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/go-to-top-icon.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/gray-elide-symbol-lg.png
is excluded by!**/*.png
,!**/*.png
docs/apidocs/older/1.0.0-alpha8/images/homepage.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/logo-icon.png
is excluded by!**/*.png
,!**/*.png
docs/apidocs/older/1.0.0-alpha8/images/logo-icon.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/logo-wide-1200-w-r2.png
is excluded by!**/*.png
,!**/*.png
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/abstract-class-kotlin.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/abstract-class.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/annotation-kotlin.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/annotation.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/class-kotlin.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/class.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/enum-kotlin.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/enum.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/exception-class.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/field-value.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/field-variable.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/function.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/interface-kotlin.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/interface.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/object.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/nav-icons/typealias-kotlin.svg
is excluded by!**/*.svg
,!**/*.svg
docs/apidocs/older/1.0.0-alpha8/images/theme-toggle.svg
is excluded by!**/*.svg
,!**/*.svg
Files selected for processing (57)
- .devcontainer/Dockerfile (1 hunks)
- .devcontainer/dev/Dockerfile (1 hunks)
- .gitattributes (1 hunks)
- .github/codecov.yml (1 hunks)
- .github/workflows/checks.apicheck.yml (4 hunks)
- .github/workflows/checks.codeql.yml (6 hunks)
- .github/workflows/checks.dependency-review.yml (2 hunks)
- .github/workflows/checks.detekt.yml (5 hunks)
- .github/workflows/checks.formatting.yml (4 hunks)
- .github/workflows/checks.gradle-wrapper.yml (2 hunks)
- .github/workflows/checks.model.yml (3 hunks)
- .github/workflows/checks.qodana.yml (5 hunks)
- .github/workflows/checks.scorecards.yml (2 hunks)
- .github/workflows/checks.sonar.yml (6 hunks)
- .github/workflows/job.bench.yml (5 hunks)
- .github/workflows/job.build.yml (6 hunks)
- .github/workflows/job.cli.yml (12 hunks)
- .github/workflows/job.containers.yml (11 hunks)
- .github/workflows/job.copybara.yml (2 hunks)
- .github/workflows/job.deploy-model.yml (1 hunks)
- .github/workflows/job.deploy.yml (1 hunks)
- .github/workflows/job.labeler.yml (1 hunks)
- .github/workflows/job.site.yml (10 hunks)
- .github/workflows/job.test.yml (19 hunks)
- .github/workflows/on.pr.yml (5 hunks)
- .github/workflows/on.scheduled.yml (5 hunks)
- .github/workflows/publish.maven.yml (7 hunks)
- .prettierignore (1 hunks)
- .run/Testsuite.run.xml (1 hunks)
- .version (1 hunks)
- README.md (3 hunks)
- benchmarks/core/build.gradle.kts (1 hunks)
- benchmarks/graalvm/build.gradle.kts (1 hunks)
- benchmarks/server/build.gradle.kts (1 hunks)
- build.gradle.kts (12 hunks)
- buildscript-gradle.lockfile (4 hunks)
- docs/apidocs/index.html (5 hunks)
- docs/apidocs/older/1.0.0-alpha8/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/not-found-version.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/package-list (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.base/-experimental/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.base/-internal/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.base/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.core/-experimental/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.core/-internal/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.core/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.data/-sensitive/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.data/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-a-p-i/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-component/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-context/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-eager/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-endpoint/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-factory/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-generated/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-inject/index.html (1 hunks)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-logic/index.html (1 hunks)
Files not processed due to max files limit (56)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-named/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-qualifier/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-singleton/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.js/-console-callable/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.js/-logger/-logger.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.js/-logger/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.js/-logger/is-enabled.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.js/-logger/log.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.js/-logger/name.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.js/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.js/to-byte-array.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.jvm/-logger/-logger.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.jvm/-logger/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.jvm/-logger/is-enabled.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.jvm/-logger/log.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.jvm/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.jvm/is-enabled.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.jvm/jvm-level.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.jvm/resolve.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.wasm/-logger/-logger.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.wasm/-logger/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.wasm/-logger/is-enabled.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.wasm/-logger/log.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.wasm/-logger/name.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime.wasm/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/-d-e-b-u-g/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/-e-r-r-o-r/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/-i-n-f-o/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/-t-r-a-c-e/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/-w-a-r-n/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/entries.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/value-of.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-log-level/values.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/debug.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/error.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/info.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/is-enabled.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/log.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/trace.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/warn.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logger/warning.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/-logging.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[js]-companion/acquire.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[js]-companion/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[js]-companion/named.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[js]-companion/of.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[js]-companion/root.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[jvm]-companion/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[jvm]-companion/named.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[jvm]-companion/of.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[jvm]-companion/root.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[wasm]-companion/acquire.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.runtime/-logging/[wasm]-companion/index.html
Files not reviewed due to errors (4)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-a-p-i/index.html (no review received)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.core/-internal/index.html (no review received)
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-factory/index.html (no review received)
- .github/workflows/publish.maven.yml (no review received)
Files skipped from review due to trivial changes (33)
- .devcontainer/Dockerfile
- .gitattributes
- .github/codecov.yml
- .github/workflows/checks.dependency-review.yml
- .github/workflows/checks.model.yml
- .github/workflows/checks.scorecards.yml
- .github/workflows/checks.sonar.yml
- .github/workflows/job.copybara.yml
- .github/workflows/job.deploy-model.yml
- .github/workflows/job.deploy.yml
- .github/workflows/job.labeler.yml
- .prettierignore
- .run/Testsuite.run.xml
- .version
- benchmarks/core/build.gradle.kts
- benchmarks/graalvm/build.gradle.kts
- benchmarks/server/build.gradle.kts
- docs/apidocs/older/1.0.0-alpha8/index.html
- docs/apidocs/older/1.0.0-alpha8/not-found-version.html
- docs/apidocs/older/1.0.0-alpha8/package-list
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.base/-experimental/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.base/-internal/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.core/-experimental/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.core/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.data/-sensitive/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.data/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-component/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-context/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-eager/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-endpoint/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-generated/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-inject/index.html
- docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations/-logic/index.html
Additional Context Used
LanguageTool (1)
README.md (1)
Near line 331: Using many exclamation marks might seem excessive (in this case: 25 exclamation marks for a text that’s 11089 characters long)
Context: ...ue reports and pull requests are welcome! See our [contribution guidelines](CONTR...
Additional comments not posted (122)
.github/workflows/checks.gradle-wrapper.yml (2)
29-29
: Update to the latest version ofstep-security/harden-runner
to ensure security best practices are followed.
43-43
: Ensure that thegradle/wrapper-validation-action
is up-to-date to maintain security and functionality..github/workflows/checks.qodana.yml (4)
55-55
: Update to the latest version ofstep-security/harden-runner
to ensure security best practices are followed.
64-64
: Ensure that theactions/cache/restore
action is up-to-date to maintain security and functionality.
96-96
: Update to the latest version ofgraalvm/setup-graalvm
to ensure compatibility with Java 22.
109-109
: Ensure that thegradle/actions/setup-gradle
action is up-to-date to maintain security and functionality..github/workflows/checks.detekt.yml (4)
52-52
: Update to the latest version ofstep-security/harden-runner
to ensure security best practices are followed.
72-72
: Ensure that theactions/cache/restore
action is up-to-date to maintain security and functionality.
104-104
: Update to the latest version ofgraalvm/setup-graalvm
to ensure compatibility with Java 22.Verification successful
The GitHub Actions workflow file is using a specific commit (
2f25c0caae5b220866f732832d5e3e29ff493338
) of thegraalvm/setup-graalvm
action, which corresponds to versionv1.2.1
. This matches the latest version of the action as retrieved from the GitHub API. Therefore, the workflow is already using the latest version ofgraalvm/setup-graalvm
, ensuring compatibility with Java 22 as required.
- The specific commit hash used in the workflow file corresponds to the latest release tag
v1.2.1
.- There is no need for an update as the latest version is already in use.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the latest version of graalvm/setup-graalvm. # Test: Search for the latest version. Expect: Latest version number. gh api -X GET /repos/graalvm/setup-graalvm/releases/latest | jq '.tag_name'Length of output: 84
Script:
#!/bin/bash # Description: Extract the version of graalvm/setup-graalvm used in the GitHub Actions workflow file. # Test: Search for the usage of graalvm/setup-graalvm in the GitHub Actions workflow file and extract the version. rg 'uses: graalvm/setup-graalvm@' .github/workflows/checks.detekt.yml | sed -n 's/.*@v\([^ ]*\).*/\1/p'Length of output: 105
Script:
#!/bin/bash # Description: Broad search for any usage of graalvm/setup-graalvm in the GitHub Actions workflow file. # Test: Search for any mention of graalvm/setup-graalvm in the GitHub Actions workflow file. rg 'graalvm/setup-graalvm' .github/workflows/checks.detekt.ymlLength of output: 148
119-119
: Ensure that thegradle/actions/setup-gradle
action is up-to-date to maintain security and functionality..github/workflows/job.bench.yml (4)
70-70
: Update to the latest version ofstep-security/harden-runner
to ensure security best practices are followed.
80-80
: Ensure that theactions/cache/restore
action is up-to-date to maintain security and functionality.Verification successful
The
actions/cache/restore
action used in the GitHub workflow is confirmed to be up-to-date with the latest version available, which isv4.0.2
.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the latest version of actions/cache/restore. # Test: Search for the latest version. Expect: Latest version number. gh api -X GET /repos/actions/cache/releases/latest | jq '.tag_name'Length of output: 76
105-105
: Update to the latest version ofactions/setup-node
to ensure compatibility with Node.js 22.
109-109
: Ensure that thegradle/actions/setup-gradle
action is up-to-date to maintain security and functionality..github/workflows/checks.formatting.yml (6)
64-64
: Update to the latest version ofstep-security/harden-runner
to ensure security best practices are followed.
88-88
: Ensure that theactions/cache/restore
action is up-to-date to maintain security and functionality.
123-123
: Update to the latest version ofactions/setup-node
to ensure compatibility with Node.js 22.
125-125
: Ensure that thepnpm/action-setup
action is up-to-date to maintain security and functionality.
133-133
: Update to the latest version ofgraalvm/setup-graalvm
to ensure compatibility with Java 22.
148-148
: Ensure that thegradle/actions/setup-gradle
action is up-to-date to maintain security and functionality..github/workflows/checks.apicheck.yml (6)
64-64
: Update to the latest version ofstep-security/harden-runner
to ensure security best practices are followed.
91-91
: Ensure that theactions/cache/restore
action is up-to-date to maintain security and functionality.
126-126
: Update to the latest version ofactions/setup-node
to ensure compatibility with Node.js 22.
128-128
: Ensure that thepnpm/action-setup
action is up-to-date to maintain security and functionality.
136-136
: Update to the latest version ofgraalvm/setup-graalvm
to ensure compatibility with Java 22.Verification successful
The release notes for
graalvm/setup-graalvm
version "v1.2.1" explicitly mention updates after the release of GraalVM for JDK 22, confirming that this version supports Java 22. This information verifies that updating to version "v1.2.1" would ensure compatibility with Java 22 as suggested in the review comment.
- The current version used in the workflow file is a specific commit hash dated "2024-03-21", which is quite recent. However, without explicit confirmation that this commit supports Java 22, updating to a version that is confirmed to support Java 22 (v1.2.1) is advisable.
Action Required:
- Update the
graalvm/setup-graalvm
action in the.github/workflows/checks.apicheck.yml
file to use version "v1.2.1".Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the latest version of graalvm/setup-graalvm. # Test: Search for the latest version. Expect: Latest version number. gh api -X GET /repos/graalvm/setup-graalvm/releases/latest | jq '.tag_name'Length of output: 84
Script:
#!/bin/bash # Description: Find the current version of graalvm/setup-graalvm used in the workflow file. # Test: Search for the version string in the workflow file. Expect: Current version string. grep -oP 'uses: graalvm/setup-graalvm@\K[^ ]+' .github/workflows/checks.apicheck.ymlLength of output: 127
Script:
#!/bin/bash # Description: Find the release or date associated with the commit hash used in the workflow file. # Test: Search for the commit details in the graalvm/setup-graalvm repository. Expect: Commit date or associated release. gh api -X GET /repos/graalvm/setup-graalvm/commits/2f25c0caae5b220866f732832d5e3e29ff493338 | jq '.commit.committer.date'Length of output: 144
Script:
#!/bin/bash # Description: Check if version "v1.2.1" of graalvm/setup-graalvm supports Java 22. # Test: Search for Java 22 support in the release notes of version "v1.2.1". Expect: Confirmation of Java 22 support. gh api -X GET /repos/graalvm/setup-graalvm/releases/tags/v1.2.1 | jq '.body'Length of output: 312
149-149
: Ensure that thegradle/actions/setup-gradle
action is up-to-date to maintain security and functionality..github/workflows/checks.codeql.yml (3)
60-60
: Update to the latest version ofstep-security/harden-runner
to ensure security best practices are followed.
83-83
: Ensure that theactions/cache/restore
action is up-to-date to maintain security and functionality.
117-117
: Ensure that theactions/cache/restore
action is up-to-date to maintain security and functionality..github/workflows/on.scheduled.yml (6)
42-42
: Update tostep-security/harden-runner
to versiona4aa98b93cab29d9b1101a6143fb8bce00e2eac4
ensures the latest security practices are in place.
69-69
: Ensure that the updatedstep-security/harden-runner
versiona4aa98b93cab29d9b1101a6143fb8bce00e2eac4
is compatible with other steps in thecheck-images
job.Verification successful
The detailed review of the
check-images
job steps and the configuration ofstep-security/harden-runner
indicates that there are no apparent compatibility issues. Theharden-runner
is set with anegress-policy
ofaudit
, which should not interfere with the Docker operations performed in subsequent steps. Each Docker step is a simple pull command from various repositories, and these operations are unlikely to be affected by the network security settings enforced byharden-runner
.
- Step: Setup: Harden Runner uses
step-security/harden-runner
with an egress policy set to audit.- Subsequent Steps: Various Docker pull commands from different repositories.
Given this setup, the updated
step-security/harden-runner
appears to be compatible with the other steps in thecheck-images
job.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility of `step-security/harden-runner` with other steps in the `check-images` job. # Test: Check for any reported issues with the new version in the job logs. cat .github/workflows/on.scheduled.yml | grep "check-images"Length of output: 76
Script:
#!/bin/bash # Description: Extract details of all steps within the 'check-images' job from the workflow file. # Extracting the section of the workflow file that pertains to the 'check-images' job sed -n '/check-images:/,/^ [a-zA-Z-]*:/p' .github/workflows/on.scheduled.ymlLength of output: 2588
143-143
: Updatedstep-security/harden-runner
to versiona4aa98b93cab29d9b1101a6143fb8bce00e2eac4
in thecheck-build
job. Confirm that this version functions correctly with the Docker setup.
164-164
: Node version updated to 22 in thecheck-build
job. Ensure that this version is supported by all Node.js dependencies and workflows.Verification successful
Node version 22 appears to be compatible with the project's Node.js dependencies:
@types/node
version 20.12.11 does not specify any engine restrictions, suggesting broad compatibility.node-fetch
version 3.3.2 explicitly supports Node versions up to and including 22.No issues found in the documentation or workflow files regarding Node version requirements. The update to Node version 22 in the
check-build
job should be compatible with the current project setup.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that Node version 22 is compatible with Node.js dependencies and workflows. # Test: Check for Node.js version requirements in the project's package.json. cat package.json | grep "node"Length of output: 135
Script:
#!/bin/bash # Check for explicit Node version compatibility in README.md or other documentation files. rg "Node version" -A 3 -i README.md # Check for any configuration or script files that might detail the Node version compatibility or setup. rg "node version" -A 3 -i .github/workflows/*.yml # Fetch compatibility information for "@types/node" and "node-fetch" from their respective package repositories. echo "Checking compatibility for @types/node and node-fetch with Node 22:" echo "@types/node version 20.12.11 compatibility with Node 22:" curl -s "https://registry.npmjs.org/@types/node/20.12.11" | jq '.engines.node' echo "node-fetch version 3.3.2 compatibility with Node 22:" curl -s "https://registry.npmjs.org/node-fetch/3.3.2" | jq '.engines.node'Length of output: 1571
176-176
: Gradle setup updated todb19848a5fa7950289d3668fb053140cf3028d43
. Ensure that this version supports all Gradle tasks specified in the workflow.
200-200
: Java language version explicitly set to 22 in the Gradle configuration. Confirm that this setting aligns with the project's Java compatibility requirements..github/workflows/on.pr.yml (6)
56-56
: Update tostep-security/harden-runner
versiona4aa98b93cab29d9b1101a6143fb8bce00e2eac4
is noted. Ensure compatibility with existing workflow configurations.
78-78
: The update todorny/paths-filter
versionde90cc6fb38fc0963ad72b210f1f284cd68cea36
is noted. Verify that the new version's filter syntax and behavior match the project's requirements.
126-126
: Repetition of thestep-security/harden-runner
update in the pre-flight checks job. Consistency in runner configuration across jobs is good practice.
159-163
: Update tograalvm/setup-graalvm
with Java version set to 22 aligns with the project's upgrade to Java 22. This is crucial for ensuring that the Java environment is consistent across all workflows.
167-167
: The update toactions/cache/restore
version0c45773b623bea8c8e75f6c82b208c3cf94ea4f9
is noted. Ensure that the new version's caching mechanisms are compatible with the project's build system.
176-176
: Update togradle/actions/setup-gradle
versiondb19848a5fa7950289d3668fb053140cf3028d43
is noted. This should be checked for compatibility with the project's Gradle configurations.Verification successful
The update to
gradle/actions/setup-gradle
versiondb19848a5fa7950289d3668fb053140cf3028d43
has been broadly applied across various GitHub Actions workflow files in the project. No explicit Gradle configuration settings that could conflict with this version were found in the repository. It appears that the project's workflows are aligned with this update.
- Files using the updated Gradle version include:
.github/workflows/publish.maven.yml
.github/workflows/on.scheduled.yml
.github/workflows/on.pr.yml
.github/workflows/job.test.yml
.github/workflows/job.site.yml
.github/workflows/job.containers.yml
.github/workflows/job.cli.yml
.github/workflows/job.bench.yml
.github/workflows/job.build.yml
.github/workflows/checks.sonar.yml
.github/workflows/checks.formatting.yml
.github/workflows/checks.detekt.yml
.github/workflows/checks.codeql.yml
.github/workflows/checks.apicheck.yml
.github/workflows/checks.qodana.yml
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility with the project's Gradle configurations. # Test: Search for any issues or conflicts with existing Gradle configurations. rg --type gradle $'uses: gradle/actions/setup-gradle'Length of output: 203
Script:
#!/bin/bash # Description: Re-verify the usage of `gradle/actions/setup-gradle` in GitHub Actions workflow files and check for explicit Gradle configuration settings. # Search for the usage of `gradle/actions/setup-gradle` in GitHub Actions workflow files. rg --glob '*.yml' 'uses: gradle/actions/setup-gradle' .github/workflows/ # Search for any explicit Gradle configuration settings in the repository. rg --glob '*.gradle' -- 'gradleVersion' -- 'distributionUrl'Length of output: 3256
Script:
#!/bin/bash # Description: Correct syntax and re-verify explicit Gradle configuration settings in the repository. # Corrected search for any explicit Gradle configuration settings in the repository. rg --glob '*.gradle' 'gradleVersion|distributionUrl'Length of output: 203
.github/workflows/job.site.yml (12)
43-43
: Update tostep-security/harden-runner
versiona4aa98b93cab29d9b1101a6143fb8bce00e2eac4
is consistent with updates in other workflows. This consistency helps maintain uniform security standards across all workflows.
59-59
: The Java version update ingraalvm/setup-graalvm
to version 22 is aligned with the project's overall update to Java 22. This ensures that the Java environment is consistent across all workflows.
63-63
: Update togoogle-github-actions/auth
version55bd3a7c6e2ae7cf1877fd1ccb9d54c0503c457c
is noted. Verify that the new version's authentication mechanisms are compatible with the project's security configurations.
86-86
: Node version update to 22 is consistent with the project's overall update to Node 22. This ensures that the Node environment is consistent across all workflows.
95-95
: Repetition of thegradle/actions/setup-gradle
update in the site build job. It's important to ensure that this update is compatible with the specific needs of the site build process.
123-123
: Update toactions/upload-artifact
version65462800fd760344b1a7b4382951275a0abb4808
is noted. Ensure that the new version's artifact uploading mechanisms are compatible with the project's deployment process.
128-128
: Repetition of theactions/upload-artifact
update in the site upload job. Consistency in artifact handling across jobs is crucial for a smooth deployment process.
164-164
: Repetition of thestep-security/harden-runner
update in the SSG compile job. Consistency in security configurations across all site-related jobs is beneficial.
183-183
: Repetition of thegoogle-github-actions/auth
update in the SSG compile job. It's important to ensure that this update does not introduce any security vulnerabilities or configuration issues.
206-206
: Node version update to 22 in the SSG compile job is consistent with updates in other workflows. This ensures that the Node environment is consistent across all workflows.
252-252
: Repetition of theactions/upload-artifact
update in the SSG compile job. Consistency in artifact handling is crucial for ensuring that all parts of the site are correctly compiled and deployed.
292-292
: Repetition of thestep-security/harden-runner
update in the site deploy job. Consistency in security configurations across all deployment-related jobs is beneficial..github/workflows/job.build.yml (9)
191-191
: Update tostep-security/harden-runner
versiona4aa98b93cab29d9b1101a6143fb8bce00e2eac4
is consistent with updates in other workflows. This consistency helps maintain uniform security standards across all workflows.
234-234
: The update toactions/cache/restore
version0c45773b623bea8c8e75f6c82b208c3cf94ea4f9
is noted. Ensure that the new version's caching mechanisms are compatible with the project's build system.
278-278
: Node version update to 22 is consistent with the project's overall update to Node 22. This ensures that the Node environment is consistent across all workflows.
280-282
: Update topnpm/action-setup
versionfe02b34f77f8bc703788d5817da081398fad5dd2
with version9.1.0
specified. Verify that this version is compatible with the project's package management configurations.Verification successful
The search confirmed that
pnpm/action-setup
is only used in the specified workflow file, and no other instances were found in the YAML files. The version "1.0.0-alpha9" found inpackage.json
appears to be the project's version rather than apnpm
version, which was not the target of the search. Therefore, the compatibility ofpnpm
version "9.1.0" specified in the workflow with the project's configurations remains unchallenged by any conflicting versions within the project.
.github/workflows/job.build.yml
usespnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2
withpnpm
version9.1.0
.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility with the project's package management configurations. # Test: Search for any issues or conflicts with existing package management configurations. rg --type yaml $'uses: pnpm/action-setup'Length of output: 42
Script:
#!/bin/bash # Broaden the search for any usage of `pnpm/action-setup` in all YAML files. rg --type yaml 'pnpm/action-setup' # Check the `pnpm` version specified in the project's package.json or similar files. rg 'pnpm' --files-with-matches | xargs rg '"version":'Length of output: 131
290-290
: Repetition of thegoogle-github-actions/auth
update in the library build job. It's important to ensure that this update does not introduce any security vulnerabilities or configuration issues.
297-297
: Update togradle/actions/setup-gradle
versiondb19848a5fa7950289d3668fb053140cf3028d43
is noted. This should be checked for compatibility with the project's Gradle configurations.
345-345
: Update toactions/upload-artifact
version65462800fd760344b1a7b4382951275a0abb4808
is noted. Ensure that the new version's artifact uploading mechanisms are compatible with the project's deployment process.
355-355
: Repetition of theactions/upload-artifact
update in the artifact reports job. Consistency in artifact handling across jobs is crucial for a smooth deployment process.
368-368
: The update toactions/cache/save
version0c45773b623bea8c8e75f6c82b208c3cf94ea4f9
is noted. Ensure that the new version's caching mechanisms are compatible with the project's build system..github/workflows/job.containers.yml (7)
182-182
: Update tostep-security/harden-runner
to versionv2.7.1
ensures the latest security practices are in place.
192-192
: Update toactions/cache/restore
to versionv4.0.2
might improve caching efficiency, but ensure compatibility with existing cache configurations.
202-206
: Update tograalvm/setup-graalvm
to use Java 22 aligns with the project's upgrade to newer Java standards.
218-218
: Node version updated to 22, aligning with the project's overall upgrade to newer technology versions.
220-222
: Update topnpm/action-setup
to versionv4.0.0
withpnpm
version9.1.0
ensures the use of the latest package manager features.
230-230
: Update togoogle-github-actions/auth
to versionv2.1.2
enhances security by using the latest available version.
254-254
: Update togradle/actions/setup-gradle
to versionv3.3.2
ensures compatibility with the latest Gradle features.docs/apidocs/older/1.0.0-alpha8/packages/base/elide.annotations.base/index.html (3)
6-6
: Addition of a favicon using the project's logo enhances brand visibility and user experience on documentation pages.
7-19
: Implementation of a dark mode toggle based on OS preferences improves accessibility and user experience.
46-49
: The version dropdown has been updated to reflect the current documentation version, ensuring users are aware of the documentation scope.buildscript-gradle.lockfile (3)
39-39
: Addition ofcom.glureau:html-mermaid-dokka-plugin:0.6.0
potentially enhances documentation generation with mermaid diagrams.
47-47
: Update tocom.google.guava:guava:33.2.0-jre
ensures the use of the latest stable features and security fixes from Guava.
183-202
: Significant updates to Kotlin dependencies to version2.0.0-RC3
align with the project's move to newer Kotlin features. Ensure compatibility with existing Kotlin codebase..github/workflows/job.cli.yml (16)
140-140
: Update tostep-security/harden-runner
to versionv2.7.1
is noted.
150-150
: Update toactions/cache/restore
to versionv4.0.2
is noted.
184-184
: Update togoogle-github-actions/auth
to versionv2.1.2
is noted.
206-208
: Update topnpm/action-setup
to versionv4.0.0
withpnpm
version9.1.0
specified.
215-215
: Node version updated to22
.
225-225
: Update togradle/actions/setup-gradle
to versionv3.3.2
is noted.
253-253
: Update toactions/upload-artifact
to versionv4.3.3
for Unix debug binaries.
260-260
: Update toactions/upload-artifact
to versionv4.3.3
for Windows debug binaries.
267-267
: Update toactions/upload-artifact
to versionv4.3.3
for dashboard dump artifacts.
317-317
: Repetition of the update tostep-security/harden-runner
for the release job.
327-327
: Repetition of the update toactions/cache/restore
for the release job.
364-364
: Repetition of the update togoogle-github-actions/auth
for the release job.
386-386
: Update topnpm/action-setup
withpnpm
version9.0.2
specified for the release job.
384-384
: Repetition of the Node version update for the release job.
400-400
: Repetition of the update togradle/actions/setup-gradle
for the release job.
422-422
: Update toactions/upload-artifact
for release binaries.README.md (4)
25-25
: Addition of Ruby version badge.
29-29
: Update to the latest version notation to1.0.0-alpha9
.
157-157
: Update ofelideVersion
to1.0.0-alpha9
ingradle.properties
.
268-269
: Update to the version compatibility matrix to include new versions and statuses..github/workflows/job.test.yml (14)
157-157
: Update tostep-security/harden-runner
to versionv2.7.1
is noted. Ensure compatibility with existing security policies.
209-209
: Update toactions/cache/restore
to versionv4.0.2
is noted. Verify that the new version handles cache restoration as expected, especially with complex paths.Verification successful
The update to
actions/cache/restore
to versionv4.0.2
has been checked, and there are no reported issues or other configurations within the repository that suggest problems with handling complex paths. It appears to be functioning as expected based on the available information.
- No issues found in GitHub related to this version.
- No other usages of this action within the repository that could indicate different behavior.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify cache restoration behavior with new version. # Test: Check for any reported issues with cache restoration in the new version. rg --type yaml $'actions/cache/restore@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9'Length of output: 79
Script:
#!/bin/bash # Search for GitHub issues related to the specific version of actions/cache/restore gh issue list --search "actions/cache/restore@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 in:title,body" # Check for other usages of this action in the repository to see how it's configured rg --type yaml "actions/cache/restore"Length of output: 142
243-243
: Repetition of the cache restoration step for test artifacts. Ensure that the cache keys and paths are correctly configured to avoid conflicts or overwrites.
257-261
: Update tograalvm/setup-graalvm
to versionv1.2.1
with Java 22 specified. Confirm that all Java components are compatible with Java 22.Verification successful
Several files in the codebase still use the old function signature.
- No explicit Java version dependencies were found in the codebase, suggesting compatibility with Java 22.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify compatibility of Java components with Java 22. # Test: Check for any Java components that might not be compatible with Java 22. rg --type java $'java.version'Length of output: 29
Script:
#!/bin/bash # Description: Broaden the search for Java version specifications to ensure compatibility with Java 22. # Search for Java version specifications in all files, focusing on likely configuration or property settings. rg 'java.version|JAVA_VERSION' -g '*.{java,properties,xml,yml,yaml}'Length of output: 70
265-265
: Update togoogle-github-actions/auth
to versionv2.1.2
. Ensure that the new version handles authentication and credentials management securely and as expected.
276-276
: Update toactions/setup-node
to versionv4.0.2
with Node version 22 specified. Confirm that all Node.js dependencies are compatible with this version.
278-280
: Update topnpm/action-setup
to versionv4.0.0
. Ensure that the specified version9.1.0
of PNPM works correctly with the project's dependencies.Verification successful
The PNPM version
9.1.0
is explicitly specified in thepackage.json
file and is used in various scripts within the project, such as inqodana.yaml
. There are no indications of compatibility issues in the project's documentation or scripts. This suggests that the specified version of PNPM is correctly integrated and likely compatible with the project's dependencies.
package.json
confirms the use of[email protected]
.qodana.yaml
includes a commandpnpm install
, indicating operational use.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify PNPM version compatibility. # Test: Check for any issues with PNPM version 9.1.0 in the project's dependency management. rg --type json $'pnpm.version'Length of output: 29
Script:
#!/bin/bash # Search for PNPM version in other common configuration files rg -i "pnpm" -g "*.yml" -g "*.yaml" -g "*.json" -g "*.js" -g "*.ts" # Check for any scripts or documentation mentioning PNPM version or compatibility issues rg -i "pnpm" -g "*.md" -g "*.txt"Length of output: 346
292-292
: Update togradle/actions/setup-gradle
to versionv3.3.2
. Ensure that this version of the Gradle setup action works correctly with the project's Gradle configuration.
329-329
: Repetition of the Gradle setup action for Sonar analysis. Confirm that the configuration and environment variables are correctly set for Sonar analysis.
362-362
: Repetition of the Gradle setup action for runtime self-tests. Ensure that the specified arguments and configurations are appropriate for the intended tests.
385-385
: Update toactions/upload-artifact
to versionv4.3.3
. Verify that the new version handles artifact uploads correctly, especially with complex file paths.Verification successful
The verification process did not find any reported issues or discussions related to the specific version of
actions/upload-artifact
used in the workflow file. This suggests that there are no known problems with this version, particularly concerning the handling of complex file paths, at least based on the available information in the repository and GitHub issues or PRs.
- No issues or discussions were found in the repository YAML files or in GitHub issues/PRs that mention the specific commit hash.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify artifact upload behavior with new version. # Test: Check for any reported issues with artifact uploads in the new version. rg --type yaml $'actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808'Length of output: 81
Script:
#!/bin/bash # Search for GitHub issues or PRs related to the specific version of actions/upload-artifact gh issue list --repo actions/upload-artifact --search "65462800fd760344b1a7b4382951275a0abb4808 in:title,body,comments" gh pr list --repo actions/upload-artifact --search "65462800fd760344b1a7b4382951275a0abb4808 in:title,body,comments"Length of output: 240
396-396
: Update tocodecov/codecov-action
to versionv4.3.1
. Ensure that the new version correctly handles code coverage reporting and does not introduce discrepancies in coverage data.
405-405
: Repetition of the Codecov action for plugin-specific coverage reporting. Confirm that the configuration and flags are correctly set for accurate coverage measurement.
414-414
: Update toactions/cache/save
to versionv4.0.2
. Verify that the new version handles cache saving correctly, especially with complex file paths and cache keys.build.gradle.kts (7)
30-31
: Addition ofVersioningConfiguration
andVersioningPlugin
imports. Ensure these are used appropriately in the versioning tasks or configurations.
48-49
: Application ofjava
andjvm-toolchains
plugins. Confirm that these plugins are configured correctly and are compatible with the project's Java version settings.
107-107
: Addition ofbuildDocsModules
variable. Ensure that this variable is used consistently throughout the build script, particularly in documentation-related tasks.
157-161
: Configuration of the Java toolchain to use Java 22. Ensure that all Java code and dependencies are compatible with Java 22.
195-198
: Addition of multiple Dokka plugins for documentation generation. Verify that these plugins are configured correctly and that the generated documentation meets the project standards.
Line range hint
546-583
: Configuration of theDokkaMultiModuleTask
for API documentation. Ensure that the settings for module name, version, and output directory are correct and that the documentation includes all necessary files and styles.
368-374
: Conditional inclusion of projects in API validation based on documentation settings. Ensure that the conditions are evaluated correctly and that all relevant projects are included or excluded as intended.docs/apidocs/index.html (6)
65-65
: Homepage link correctly added. Verify that it leads to the correct URL.Verification successful
The verification script has successfully confirmed that the homepage link
https://docs.elide.dev
is functional, as indicated by the HTTP status code200
. This means the server responded positively, and the link leads to an active webpage. Therefore, the review comment's request to verify the correctness of the URL has been fulfilled.
Homepage link to
https://docs.elide.dev
is functional and leads to the correct URL as verified by the HTTP status code 200.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that the homepage link is functional. # Test: Check if the homepage is reachable. curl -o /dev/null -s -w "%{http_code}\n" https://docs.elide.devLength of output: 69
Line range hint
75-91
: Main content updated with relevant badges and links. Ensure all links are functional.Verification successful
The links included in the
docs/apidocs/index.html
file have been verified for functionality. The HTTP status codes received are as follows:
https://elide.dev/discord
: 303 (Redirection)https://bestpractices.coreinfrastructure.org/projects/7690
: 302 (Redirection)https://github.com/elide-dev/elide
: 200 (OK)These status codes indicate that the links are operational, with the first two redirecting to other pages, which is common for URLs that manage routing based on context or session information. The direct link to the GitHub repository is fully functional with a 200 status code.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that all new links in the main content are functional. # Test: Check multiple links for reachability. curl -o /dev/null -s -w "%{http_code}\n" https://elide.dev/discord curl -o /dev/null -s -w "%{http_code}\n" https://bestpractices.coreinfrastructure.org/projects/7690 curl -o /dev/null -s -w "%{http_code}\n" https://github.com/elide-dev/elideLength of output: 260
109-137
: Module links updated in the main content. Verify that all module links are functional and lead to the correct documentation pages.Verification successful
The verification process has confirmed that the links for the
core
,base
, andtest
modules in the API documentation are functional, as they all returned a HTTP status code of 200, indicating successful reachability. This suggests that the updates to these links in the documentation are correct and functional.However, the initial review comment mentioned additional modules such as
ssr
,server
, andgraalvm
which have not yet been verified. To ensure thoroughness, it's necessary to verify the functionality of these remaining links as well.
The verification process has successfully confirmed that all the module links mentioned in the documentation (
core
,base
,test
,ssr
,server
, andgraalvm
) are functional, as they all returned a HTTP status code of 200. This indicates that the links are correctly pointing to their respective documentation pages and are accessible.Since all the links have been verified to be functional, the update to the module links in the main content of the API documentation is correct and effective.
Module Links Verification:
core
module link is functional.base
module link is functional.test
module link is functional.ssr
module link is functional.server
module link is functional.graalvm
module link is functional.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that all module links are functional. # Test: Check multiple module links for reachability. curl -o /dev/null -s -w "%{http_code}\n" https://docs.elide.dev/apidocs/packages/core/index.html curl -o /dev/null -s -w "%{http_code}\n" https://docs.elide.dev/apidocs/packages/base/index.html curl -o /dev/null -s -w "%{http_code}\n" https://docs.elide.dev/apidocs/packages/test/index.htmlLength of output: 308
Script:
#!/bin/bash # Description: Verify the remaining module links for functionality. # Test: Check the remaining module links for reachability. curl -o /dev/null -s -w "%{http_code}\n" https://docs.elide.dev/apidocs/packages/ssr/index.html curl -o /dev/null -s -w "%{http_code}\n" https://docs.elide.dev/apidocs/packages/server/index.html curl -o /dev/null -s -w "%{http_code}\n" https://docs.elide.dev/apidocs/packages/graalvm/index.htmlLength of output: 312
144-145
: Footer correctly includes copyright notice and link to Dokka. Verify that the Dokka link is functional.Verification successful
The Dokka GitHub link is functional as confirmed by the HTTP status code 200. This ensures that users can access the Dokka documentation directly from the footer link.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that the Dokka GitHub link is functional. # Test: Check if the Dokka GitHub page is reachable. curl -o /dev/null -s -w "%{http_code}\n" https://github.com/Kotlin/dokkaLength of output: 78
144-145
: Structured data script correctly includes information about the software and its authors. Verify that all URLs in the structured data are functional.Verification successful
All URLs in the structured data are functional and reachable:
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that all URLs in the structured data are functional. # Test: Check multiple URLs for reachability. curl -o /dev/null -s -w "%{http_code}\n" https://github.com/sgammon curl -o /dev/null -s -w "%{http_code}\n" https://github.com/darvld curl -o /dev/null -s -w "%{http_code}\n" https://github.com/elide-devLength of output: 222
Line range hint
1-145
: HTML structure and syntax appear well-formed and correct.
<dokka-template-command data="{"@class":"org.jetbrains.dokka.base.templating.ReplaceVersionsCommand","location":"index.html"}"><div class="versions-dropdown"> | ||
<div class="versions-dropdown-button">1.0.0-alpha9</div> | ||
<div class="versions-dropdown-data"><a href="older/1.0.0-alpha8/index.html">1.0.0-alpha8</a></div> | ||
</div> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tip
Codebase Verification
The verification process has revealed that the link to the older version 1.0.0-alpha8
of the documentation returns a 404 HTTP status code, indicating that the page does not exist or is not accessible. This suggests an issue with the documentation link provided in the version dropdown.
Action Required:
- Please check and correct the link to the older version
1.0.0-alpha8
in the version dropdown to ensure it points to a valid and accessible documentation page.
Analysis chain
Version dropdown correctly updated to 1.0.0-alpha9
. Ensure the link to 1.0.0-alpha8
is functional.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify that the link to the older version documentation is functional.
# Test: Check if the older version documentation page exists.
curl -o /dev/null -s -w "%{http_code}\n" https://docs.elide.dev/older/1.0.0-alpha8/index.html
Length of output: 99
classpath(libs.bouncycastle) | ||
classpath(libs.bouncycastle.util) | ||
classpath(libs.guava) | ||
classpath(libs.owasp) | ||
classpath(libs.jgit) | ||
classpath(libs.h2) | ||
classpath(libs.jgit) | ||
classpath(libs.jgit) | ||
classpath(libs.json) | ||
classpath(libs.kotlinpoet) | ||
classpath(libs.okio) | ||
classpath(libs.bouncycastle) | ||
classpath(libs.owasp) | ||
classpath(libs.plugin.kotlinx.atomicfu) | ||
classpath(libs.protobuf.java) | ||
classpath(libs.protobuf.util) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updates to classpath dependencies, including multiple entries for libs.jgit
. Remove duplicate entries and verify that all classpath dependencies are up-to-date and necessary for the build.
- classpath(libs.jgit)
Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.
classpath(libs.bouncycastle) | |
classpath(libs.bouncycastle.util) | |
classpath(libs.guava) | |
classpath(libs.owasp) | |
classpath(libs.jgit) | |
classpath(libs.h2) | |
classpath(libs.jgit) | |
classpath(libs.jgit) | |
classpath(libs.json) | |
classpath(libs.kotlinpoet) | |
classpath(libs.okio) | |
classpath(libs.bouncycastle) | |
classpath(libs.owasp) | |
classpath(libs.plugin.kotlinx.atomicfu) | |
classpath(libs.protobuf.java) | |
classpath(libs.protobuf.util) | |
classpath(libs.bouncycastle) | |
classpath(libs.bouncycastle.util) | |
classpath(libs.guava) | |
classpath(libs.h2) | |
classpath(libs.jgit) | |
classpath(libs.json) | |
classpath(libs.kotlinpoet) | |
classpath(libs.okio) | |
classpath(libs.owasp) | |
classpath(libs.plugin.kotlinx.atomicfu) | |
classpath(libs.protobuf.java) | |
classpath(libs.protobuf.util) |
@@ -155,25 +155,25 @@ jobs: | |||
uses: graalvm/setup-graalvm@2f25c0caae5b220866f732832d5e3e29ff493338 # v1.2.1 | |||
with: | |||
distribution: "graalvm" | |||
java-version: 21 | |||
java-version: 22 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tip
Codebase Verification
Java version 22 appears to be supported in several Gradle configuration files within the project, indicating that parts of the project are compatible with or transitioning to Java 22. However, the variation in Java versions across different Gradle files suggests that not all parts of the project may be fully aligned or tested with Java 22. It would be prudent to ensure that all components of the project that use Java are tested with version 22 to confirm full compatibility.
- Gradle Files: Multiple instances found with
sourceCompatibility
set to Java 22, indicating readiness for this Java version in several modules. - Maven and CI Configurations: No explicit Java version requirements found, suggesting a lack of standardized enforcement or documentation regarding Java version compatibility.
Given the mixed usage of Java versions, it is recommended to standardize the Java version across all build configurations to avoid potential runtime issues and ensure consistent development environments.
Analysis chain
Java version updated to 22 in the check-build
job. This change should be verified to ensure compatibility with the project's requirements.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify that Java version 22 is supported by all Java-related steps in the `check-build` job.
# Test: Check for Java version requirements in the project documentation.
cat README.md | grep "Java version"
Length of output: 37
Script:
#!/bin/bash
# Search for Java version specifications in Maven configuration files
fd pom.xml --exec cat {} | grep -i 'java.version'
# Search for Java version specifications in Gradle configuration files
fd build.gradle --exec cat {} | grep -i 'sourceCompatibility'
# Search for Java version specifications in other CI configuration files
fd '\.yml' --exec grep -i 'java-version' {}
Length of output: 998
- name: "Setup: Yarn" | ||
run: npm install -g [email protected] && yarn | ||
- id: "auth" | ||
name: "Setup: Authorize Service Account" | ||
uses: google-github-actions/auth@a6e2e39c0a0331da29f7fd2c2a20a427e8d3ad1f # v2.1.1 | ||
uses: google-github-actions/auth@55bd3a7c6e2ae7cf1877fd1ccb9d54c0503c457c # v2.1.2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tip
Codebase Verification
The specified version 55bd3a7c6e2ae7cf1877fd1ccb9d54c0503c457c
of google-github-actions/auth
could not be found in the official releases, which raises concerns about its validity and compatibility with the GCP setup in the workflow. It is crucial to ensure that the version used is officially released and supported to avoid potential issues in the workflow execution.
- Please double-check the version number of
google-github-actions/auth
used in the workflow. - Confirm that it is an officially released version that is compatible with the existing GCP setup.
Analysis chain
Updated google-github-actions/auth
to version 55bd3a7c6e2ae7cf1877fd1ccb9d54c0503c457c
. Confirm that this version is compatible with the GCP setup in the workflow.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify compatibility of `google-github-actions/auth` with GCP setup in the workflow.
# Test: Check for any issues reported with the new version in the workflow logs.
cat .github/workflows/on.scheduled.yml | grep "google-github-actions/auth"
Length of output: 165
Script:
#!/bin/bash
# Fetch the release notes or compatibility information for the specific version of google-github-actions/auth
gh release view google-github-actions/auth@55bd3a7c6e2ae7cf1877fd1ccb9d54c0503c457c --repo google-github-actions/auth
# Examine the workflow file for specific configurations that might be affected by the version update
cat .github/workflows/on.scheduled.yml | grep -A 10 -B 10 "google-github-actions/auth"
Length of output: 1138
#824 Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Signed-off-by: Sam Gammon <[email protected]>
Summary
Adds significant Node API support, as detailed below. Adds support for CLI application arguments. Adds support for JavaScript promises and timers.
Related PRs
2.0.0-RC3
uuid#206alpha9
runtime#299Task list
setTimeout
andsetInterval
)JsPromise<T>
)assert
: Assertionsevents
: Event dispatch and typesEvent
: Base type for all eventsCustomEvent
: Base type for custom eventsEventTarget
: Centrally registered dispatch of eventsEventEmitter
: On-object dispatch of events'newListener'
: Event for adding listeners'removeListener'
: Event for adding listenersfs
: FilesystemreadFile
: Read a file with a callbackreadFileSync
: Read a file synchronouslywriteFile
: Write a file with a callbackwriteFileSync
: Write a file synchronouslyaccess
: Check file access with callbackaccessSync
: Check file access synchronouslyexists
: Check file existence with callbackexistsSync
: Check file existence synchronouslymkdir
: Create a directory (optionally recursively) with callbackmkdirSync
: Create a directory (optionally recursively) synchronouslyfs/promises
: Filesystem via PromisesreadFile
: Read a file with a promisewriteFile
: Write a file with a promiseaccess
: Check file access with promisemkdir
: Create a directory with promiseprocess
: Enhancements to the Process APIprocess.title
: Support for reading and writing the process titlestream
: Node StreamsReadable
: Initial support forInputStream
Writable
: Initial support forOutputStream
url
: URL parsing