-
Notifications
You must be signed in to change notification settings - Fork 0
Bump readable-stream from 3.6.1 to 4.7.0 #1
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
base: main
Are you sure you want to change the base?
Conversation
Bumps [readable-stream](https://github.com/nodejs/readable-stream) from 3.6.1 to 4.7.0. - [Release notes](https://github.com/nodejs/readable-stream/releases) - [Changelog](https://github.com/nodejs/readable-stream/blob/main/CHANGELOG.md) - [Commits](nodejs/readable-stream@v3.6.1...v4.7.0) --- updated-dependencies: - dependency-name: readable-stream dependency-type: direct update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]>
45 of ~45 steps completed
✓ Safe to upgradeI recommend merging this readable-stream v4.7.0 update. The most significant change is that
Change Details✓ Safe Breaking Changes (8)
Footnotes
|
|
@fossa-robszumski analyze --force |
✓ Safe to upgradeI recommend merging this update because the dependencies caused no impact for this update. What I analyzed✓ Found all breaking changes in the upgraded dependencies Dependency UsageNo dependencies were analyzed in this repository. fossabot examines dependency changes, understands usage patterns, and assesses the impact on your codebase through a combination of static analysis, deep dependency research, security metadata and AI. |
|
@fossa-robszumski analyze --force |
|
@fossa-robszumski analyze --force |
Analysis started…I'm analyzing this upgrade PR which consists of:
I'll update this comment with the results once the analysis is complete. This can take upwards of an hour depending on the complexity of the changes. What I'm checking:
fossabot analysis in progress. |
|
@fossabot analyze |
|
fossabot currently requires PRs to be created by Dependabot or Renovate. Available commands:
|
|
@fossabot analyze --force |
✓ Safe to upgradeI recommend merging this update because the dependencies caused no impact for this update.
What I analyzed✓ Found all breaking changes in the upgraded dependencies Dependency UsageThe
Changes SummaryFound 1 important update View all changesreadable-stream (3.6.1 → 4.7.0) fossabot analyzed this PR using static analysis and dependency research. |
Finding app impact…I'll update this comment with the results once the impact analysis is complete. Dependency changesreadable-stream (3.6.1 → 4.7.0) What I'm checking:
fossabot analysis in progress. |
Finding app impact…I'll update this comment with the results once the impact analysis is complete. Dependency changesreadable-stream (3.6.1 → 4.7.0) What I'm checking:
fossabot analysis in progress. |
|
@fossa-robszumski analyze --force |
Finding app impact…I'll update this comment with the results once the impact analysis is complete. Dependency changesreadable-stream (3.6.1 → 4.7.0) What I'm checking:
fossabot analysis in progress. |
Finding app impact…I'll update this comment with the results once the impact analysis is complete. Dependency changesreadable-stream (3.6.1 → 4.7.0) What I'm checking:
fossabot analysis in progress. |
Finding app impact…I'll update this comment with the results once the impact analysis is complete. ChangesBreaking Change Alert: readable-stream removes numeric separator syntax, requiring code updates. Additionally, the package fixes multiple import issues including
What I'm checking:
fossabot analysis in progress. |
Workflow Debug InformationWorkflow: Unknown LLM Usage Statistics{
"totalCalls": 24,
"totalCost": "$1.4979",
"totalTokens": 266980,
"inputTokens": 203940,
"outputTokens": 63040,
"modelBreakdown": {
"claude-3-5-haiku-20241022": {
"calls": 18,
"cost": 0.0054,
"tokens": 9119
},
"claude-sonnet-4-5": {
"calls": 3,
"cost": 0.5666,
"tokens": 98352
},
"claude-sonnet-4-20250514": {
"calls": 3,
"cost": 0.926,
"tokens": 159509
}
}
}Debug Information Paths{
"debugCache": "Not configured",
"temporaryDirectory": "/tmp/fossabot/debug_cache/2025-10-02T16:27:47.798Z",
"workflowLogs": "Not captured"
}Key Workflow Outputs{
"mergedChanges": "Object with 1 keys"
}Step Execution Summary[
{
"step": "AcknowledgeTriggerComment",
"status": "completed",
"duration": "0.01s"
},
{
"step": "ExtractGithubRepoDetails",
"status": "completed",
"duration": "0.01s"
},
{
"step": "FetchIntegrationSecrets",
"status": "completed",
"duration": "0.01s"
},
{
"step": "FetchPullRequestData",
"status": "completed",
"duration": "0.94s"
},
{
"step": "StartEdgeBitAnalysis",
"status": "completed",
"duration": "0.01s"
},
{
"step": "GetEdgeBitReferences",
"status": "completed",
"duration": "0.01s"
},
{
"step": "CloneGithubRepository",
"status": "completed",
"duration": "7.02s"
},
{
"step": "GetDependenciesMetadata",
"status": "completed",
"duration": "1.37s"
},
{
"step": "CheckMaliciousPackages",
"status": "completed",
"duration": "1.13s"
},
{
"step": "PublishInitialPRComment",
"status": "completed",
"duration": "1.07s"
},
{
"step": "ClusterClassification",
"status": "completed",
"duration": "0.01s"
},
{
"step": "LogClusterClassification",
"status": "completed",
"duration": "0.01s"
},
{
"step": "ProcessDependencies",
"status": "completed",
"duration": "3.87s"
},
{
"step": "ExtractDependencyChangeLogs",
"status": "completed",
"duration": "0.10s"
},
{
"step": "FindPackageUsages",
"status": "completed",
"duration": "0.08s"
},
{
"step": "ExtractUsagePatterns",
"status": "completed",
"duration": "0.02s"
},
{
"step": "ExtractDependencyReleaseNotes",
"status": "completed",
"duration": "24.40s"
},
{
"step": "MergeDependencyChanges",
"status": "completed",
"duration": "0.02s"
},
{
"step": "EdgeBitAnalysis",
"status": "completed",
"duration": "0.01s"
},
{
"step": "DetailedUsageAnalysis",
"status": "completed",
"duration": "30.77s"
},
{
"step": "AnalyzeChanges",
"status": "completed",
"duration": "5.57s"
},
{
"step": "PublishChangeSummary",
"status": "completed",
"duration": "2.25s"
},
{
"step": "PublishUsageSummary",
"status": "completed",
"duration": "1.78s"
},
{
"step": "WebSearchCollector",
"status": "completed",
"duration": "78.96s"
},
{
"step": "EcosystemMetadataCollector",
"status": "completed",
"duration": "259.01s"
},
{
"step": "ImpactSynthesis",
"status": "completed",
"duration": "96.06s"
},
{
"step": "SendTrackingImpactResults",
"status": "completed",
"duration": "0.02s"
},
{
"step": "PublishImpactSummary",
"status": "completed",
"duration": "1.72s"
}
]Debug information retained for analysis. This comment will remain for debugging purposes. |
✓ Safe to upgradeI recommend merging this upgrade because the codebase uses a minimal, compatible subset of the Readable stream API that is unaffected by breaking changes in version 4. The Logger class implements only basic streaming functionality (push, _read, pipe) using util.inherits inheritance pattern, which remains fully supported. The project already requires Node.js 18+, making it compatible with the Node.js stream changes that readable-stream 4 incorporates. While the dependency was targeted by a typosquatting campaign in February 2024, the legitimate package itself has no direct security vulnerabilities. The upgrade includes 8 new features and 9 bug fixes, improving stream reliability without requiring code changes. What we checked
Dependency UsageThe readable-stream package is used exclusively in the logging infrastructure as a foundational component of the custom Logger class that extends Node.js Readable streams to provide buffered, streamable log output throughout the New Relic APM agent. This dependency enables the logging system to handle high-volume diagnostic data efficiently by implementing backpressure management and preventing memory overflow when log output exceeds buffer limits. The Logger class is instantiated widely across the entire agent codebase to support instrumentation, transaction tracing, error reporting, and telemetry collection functionality that underpins New Relic's application performance monitoring capabilities.
Other Usages (1)These usages were analyzed but no breaking changes were detected: readable-stream
ChangesThe
View 30 more changes
References (9)[1]: Dependency upgraded from ^3.6.1 to ^4.7.0 in production dependencies [2]: Single import point: uses require('readable-stream') to extend Readable class [3]: Uses util.inherits(Logger, Readable) - compatible inheritance pattern supported in v4 [4]: Calls Readable.call(this) without options - default behavior unchanged in v4 [5]: Implements _read() method using push() API - core functionality stable across versions [6]: Uses pipe() method for stream composition - standard API unchanged in v4 [7]: Requires Node.js >=18, aligning with readable-stream v4 which incorporates Node 18 stream changes [8]: Security note: While readable-stream was targeted by typosquatting in Feb 2024, the legitimate package has no direct vulnerabilities (source link) [9]: Version 4 breaking changes consist of Node.js 18 stream API updates, which are already supported by the project's Node.js >=18 requirement (source link) fossabot analyzed this PR using static analysis and dependency research. |
Bumps readable-stream from 3.6.1 to 4.7.0.
Release notes
Sourced from readable-stream's releases.Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)