Skip to content
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: remove unuse "stream-wormhole" deps #63

Merged
merged 5 commits into from
Jun 7, 2024
Merged

feat: remove unuse "stream-wormhole" deps #63

merged 5 commits into from
Jun 7, 2024

Conversation

fengmk2
Copy link
Member

@fengmk2 fengmk2 commented Jun 7, 2024

Summary by CodeRabbit

  • New Features

    • Added support for Node.js versions 20 and 22 in CI workflows.
    • Introduced stream-wormhole as a new dependency for handling streams.
  • Bug Fixes

    • Deprecated the "Upload One File" section in the documentation.
  • Refactor

    • Updated import statements to use ES module syntax.
    • Refactored stream handling logic in multiple files for improved compatibility with Node.js.
  • Chores

    • Updated various dependencies to their latest versions for better performance and security.
    • Modified CI configuration for better compatibility and removed unnecessary checks.

Copy link

coderabbitai bot commented Jun 7, 2024

Warning

Rate limit exceeded

@fengmk2 has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 39 minutes and 2 seconds before requesting another review.

How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

Commits

Files that changed from the base of the PR and between 6af9aa8 and c28e319.

Walkthrough

The recent updates primarily focus on modernizing the codebase and enhancing compatibility with newer Node.js versions. Key changes include updating Node.js versions in CI workflows, refactoring import statements to use ES module syntax, and updating dependencies in package.json. Additionally, some deprecated features were marked, and test files were adjusted for better compatibility and readability.

Changes

File/Path Change Summary
.github/workflows/nodejs.yml Updated Node.js versions to 20 and 22, added CODECOV_TOKEN secret.
.github/workflows/release.yml Updated uses field to eggjs repository, removed checkTest: false.
README.md Updated import statements to ES module syntax, deprecated the Upload One File section.
package.json Updated versions for formstream, typescript, urllib, added stream-wormhole dependency.
test/fixtures/apps/multipart/app/controller/upload.js Refactored imports to use node: prefix for path and fs, destructured sendToWormhole import.
test/fixtures/apps/upload-limit/app/router.js Commented out a line emitting an error event on a stream under specific conditions.
test/fixtures/apps/upload-one-file/app/router.js Refactored imports to use node:path and node:fs/promises, updated stream handling logic.
test/multipart.test.js Updated imports to use Node.js built-in modules, adjusted assertions and logging expectations.
CHANGELOG.md Documented feature additions, fixes, and refactorings, including dropping uuid and updating dependencies.

Poem

In the realm of code, where changes flow,
Node.js versions rise, dependencies grow.
Imports refined, with node: they align,
Tests and streams, in harmony they shine.
A rabbit's joy in these updates, we find,
Progress and clarity, intertwined. 🐇✨


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?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

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)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 079dc62 and 0c26e4c.

Files selected for processing (2)
  • .github/workflows/nodejs.yml (1 hunks)
  • .github/workflows/release.yml (1 hunks)
Additional comments not posted (3)
.github/workflows/release.yml (1)

10-10: Ensure the master branch of eggjs/github-actions is stable before using it in production workflows.

Consider pinning to a specific release instead of using the master branch to avoid potential instability.

Verification successful

The recent commits to the eggjs/github-actions repository's master branch indicate active development with a series of fixes and feature additions. All commits are signed and verified, suggesting a controlled and secure development process. However, using the master branch directly in production workflows can still introduce potential instability due to ongoing changes.

  • Consider pinning to a specific release instead of using the master branch to avoid potential instability.
Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Check the recent commits to the master branch of the eggjs/github-actions repository to ensure stability.

# Test: Fetch the last 10 commits and check for any major issues or unstable changes.
gh repo view eggjs/github-actions --json commits --jq '.commits[:10]'

Length of output: 1170



Script:

#!/bin/bash
# Description: Fetch the recent commits from the master branch of the eggjs/github-actions repository to ensure stability.

# Fetch the last 10 commits from the master branch
gh api repos/eggjs/github-actions/commits --jq '.[0:10]'

Length of output: 43988

.github/workflows/nodejs.yml (2)

15-17: LGTM! Ensure that the new Node.js versions (20, 22) are fully supported in your testing frameworks and tools.

Ensure the CODECOV_TOKEN is securely handled and not exposed in logs.
[SECURITY]


12-12: Ensure the master branch of eggjs/github-actions is stable before using it in production workflows.

Consider pinning to a specific release instead of using the master branch to avoid potential instability.

Verification successful

The recent commits to the eggjs/github-actions repository show a series of updates and fixes, all of which have verified signatures. This indicates a stable and actively maintained repository. Here are some key observations from the latest commits:

  • Commit 3f8829c60e42b7b68c4d603685c323d308322e44: Fix to use registry-direct.npmmirror.com to create sync tasks.
  • Commit 71dc87f55f2eb8a8b994df98792242044f280a97: Added support for CODECOV_TOKEN.
  • Commit fc4efa3330161fcfdad264cf7bb7a90940628103: Fix to use matrix.version.
  • Commit 8f9ebd9e4dc99b23c4e12b698260b68276104247: Fix to add setup ID for calculate_architecture.
  • Commit 7f48483bf072d18a8af2b144beb9126a6a565ec0: Fix to setup node support for macOS 14 in ARM64.
  • Commit c68dde8b274c746a7e06c1225956098769c252b4: Feature to use the latest node version.
  • Commit 304ec4a34577e831c5b255873b683fa045b9c940: Chore to update title to mysql@version.
  • Commit 8c9db8453d340f8bc03ef26676bc529dad9af29c: Fix to update title to mysql@version.
  • Commit 3e1a31fbcb74623973df83ae688a05edbc1eeb5d: Fix to reference node modules.
  • Commit ab1785c78280a9b68ee230ad26381dccc418df72: Fix for MySQL version default value.

These commits reflect ongoing maintenance and improvements, suggesting that the repository is stable and actively managed.

Ensure the master branch of eggjs/github-actions is stable before using it in production workflows.

  • The recent commits indicate active maintenance and stability.
  • Consider pinning to a specific release instead of using the master branch to avoid potential instability.
Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Check the recent commits to the master branch of the eggjs/github-actions repository to ensure stability.

# Test: Fetch the last 10 commits and check for any major issues or unstable changes.
gh repo view eggjs/github-actions --json commits --jq '.commits[:10]'

Length of output: 1170



Script:

#!/bin/bash
# Description: Fetch the last 10 commits from the master branch of the eggjs/github-actions repository to ensure stability.

# Test: Use the GitHub API to get the latest 10 commits from the master branch.
gh api repos/eggjs/github-actions/commits --jq '.[0:10]'

Length of output: 43988

@fengmk2 fengmk2 changed the title test: node 22 feat: remove unuse "stream-wormhole" deps Jun 7, 2024
Copy link

socket-security bot commented Jun 7, 2024

New and removed dependencies detected. Learn more about Socket for GitHub ↗︎

Package New capabilities Transitives Size Publisher
npm/@types/[email protected] None +1 2.16 MB types
npm/[email protected] environment Transitive: eval, filesystem, network, shell, unsafe +183 13.4 MB fengmk2
npm/[email protected] None 0 14.8 kB fengmk2
npm/[email protected] None 0 32.4 MB typescript-bot

🚮 Removed packages: npm/@types/[email protected], npm/[email protected], npm/[email protected]

View full report↗︎

Copy link

codecov bot commented Jun 7, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 98.63%. Comparing base (b8bb895) to head (c28e319).
Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #63      +/-   ##
==========================================
- Coverage   99.41%   98.63%   -0.79%     
==========================================
  Files           6        6              
  Lines         512      512              
  Branches      102      101       -1     
==========================================
- Hits          509      505       -4     
- Misses          3        7       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Outside diff range and nitpick comments (3)
test/fixtures/apps/multipart/app/controller/upload.js (1)

Line range hint 10-10: Remove the unnecessary continue statement to simplify the loop logic.

-      continue;
README.md (1)

324-326: Updated import statements to use the node: prefix and marked the 'Upload One File' section as deprecated. This keeps the documentation aligned with code changes.

Consider revising the following for grammatical accuracy:

  • Add an article before "upload file" in the context description.
  • Add a comma after "More examples please follow".
  • Adjust the punctuation in the list items under ctx.request.body and ctx.request.files.
  • Revise "if need the all fields value" to "if all field values are needed".
  • Change "You can got upload stream" to "You can get the upload stream".
test/multipart.test.js (1)

668-672: Enhance logging for unhandled error events in file size limit tests.

Consider adding more detailed logging to capture unhandled error events. This would help in debugging and ensuring that such scenarios are handled gracefully in production.

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 0c26e4c and 5473e31.

Files selected for processing (6)
  • README.md (2 hunks)
  • package.json (2 hunks)
  • test/fixtures/apps/multipart/app/controller/upload.js (1 hunks)
  • test/fixtures/apps/upload-limit/app/router.js (1 hunks)
  • test/fixtures/apps/upload-one-file/app/router.js (1 hunks)
  • test/multipart.test.js (5 hunks)
Files skipped from review due to trivial changes (1)
  • test/fixtures/apps/upload-limit/app/router.js
Additional context used
Biome
test/fixtures/apps/multipart/app/controller/upload.js

[error] 10-10: Unnecessary continue statement (lint/correctness/noUnnecessaryContinue)

Unsafe fix: Delete the unnecessary continue statement

LanguageTool
README.md

[uncategorized] ~18-~18: Possible missing article found. (AI_HYDRA_LEO_MISSING_A)
Context: ...tps://github.com/cojs/busboy) to upload file by streaming and process it without sav...


[typographical] ~106-~106: Consider adding a comma here. (PLEASE_COMMA)
Context: ...e ignored.** ## Examples More examples please follow: - [Handle multipart request in...


[uncategorized] ~117-~117: Loose punctuation mark. (UNLIKELY_OPENING_PUNCTUATION)
Context: ...roller.html#body). - ctx.request.body: Get all the multipart fields and values...


[uncategorized] ~118-~118: Loose punctuation mark. (UNLIKELY_OPENING_PUNCTUATION)
Context: ...es, except file. - ctx.request.files: Contains all file from the multipart ...


[grammar] ~149-~149: It seems that a pronoun is missing. (IF_VB)
Context: ...use the last field which has same name, if need the all fields value, please set `...


[grammar] ~310-~310: The modal verb ‘can’ requires the verb’s base form. (MD_BASEFORM)
Context: ...# Upload One File (DEPRECATED) You can got upload stream by ctx.getFileStream*()...

Additional comments not posted (7)
test/fixtures/apps/multipart/app/controller/upload.js (1)

1-3: Updated imports to use the node: prefix and destructured sendToWormhole import. This aligns with best practices for clarity and explicitness.

package.json (1)

61-65: Updated dependencies to newer versions and added stream-wormhole for enhanced stream handling. Ensure that the new dependency integrates well with existing functionalities.

Verification successful

The integration of stream-wormhole appears to be correctly implemented in test/fixtures/apps/multipart/app/controller/upload.js. The sendToWormhole function is used to handle stream errors appropriately.

  • test/fixtures/apps/multipart/app/controller/upload.js: Proper usage of stream-wormhole for error handling in file upload streams.
Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify integration of `stream-wormhole` in the codebase.

# Test: Search for usage of `stream-wormhole`. Expect: Proper usage and handling.
rg --type python $'stream-wormhole'

Length of output: 65



Script:

#!/bin/bash
# Description: Verify integration of `stream-wormhole` in the codebase.

# Test: Search for usage of `stream-wormhole`. Expect: Proper usage and handling.
rg --type js 'stream-wormhole'

Length of output: 139



Script:

#!/bin/bash
# Description: Inspect the content of `upload.js` for proper usage of `stream-wormhole`.

# Test: Display the content of `upload.js` to verify the integration.
cat test/fixtures/apps/multipart/app/controller/upload.js

Length of output: 1279

test/fixtures/apps/upload-one-file/app/router.js (2)

1-2: Updated imports to use the node: prefix, enhancing clarity and aligning with Node.js best practices.


5-13: Added readableToBytes function to handle stream to bytes conversion using modern async iteration. This is a robust addition for stream handling.

test/multipart.test.js (3)

1-4: Updated import statements to use Node.js built-in modules with the node: prefix.

This aligns with best practices for Node.js modules and ensures compatibility with newer Node.js versions.


570-570: Correctly implemented test for file size limits.

This test case effectively checks the application's behavior when the file size exceeds the specified limit, ensuring robust error handling.


693-694: Properly implemented test for ignoring subsequent errors after a limit event.

This test ensures that no further errors affect the application state after a limit event has been handled, which is crucial for maintaining stability.

@@ -101,7 +99,7 @@ describe('test/multipart.test.js', () => {
stream: form,
});

assert(res.data.toString().includes('ENOENT:'));
assert.match(res.data.toString(), /ENOENT:/);
Copy link

Choose a reason for hiding this comment

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

Refine error handling to ensure specific error types are caught.

Consider using assert.strictEqual to ensure that the error type matches exactly what is expected, enhancing the robustness of the test.

Copy link

socket-security bot commented Jun 7, 2024

🚨 Potential security issues detected. Learn more about Socket for GitHub ↗︎

To accept the risk, merge this PR and you will not be notified again.

Alert Package NoteSource
Install scripts npm/[email protected]
  • Install script: postinstall
  • Source: node scripts/postinstall.js
Install scripts npm/[email protected]
  • Install script: postinstall
  • Source: node bin/postinstall.js

View full report↗︎

Next steps

What is an install script?

Install scripts are run when the package is installed. The majority of malware in npm is hidden in install scripts.

Packages should not be running non-essential scripts during install and there are often solutions to problems people solve with install scripts that can be run at publish time instead.

Take a deeper look at the dependency

Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support [AT] socket [DOT] dev.

Remove the package

If you happen to install a dependency that Socket reports as Known Malware you should immediately remove it and select a different dependency. For other alert types, you may may wish to investigate alternative packages or consider if there are other ways to mitigate the specific risk posed by the dependency.

Mark a package as acceptable risk

To ignore an alert, reply with a comment starting with @SocketSecurity ignore followed by a space separated list of ecosystem/package-name@version specifiers. e.g. @SocketSecurity ignore npm/[email protected] or ignore all packages with @SocketSecurity ignore-all

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Outside diff range and nitpick comments (1)
README.md (1)

Line range hint 419-419: Clarify the description for fileModeMatch option.

Consider rephrasing to enhance clarity:

- match the request urls switch to `file` mode.
+ match the request URLs to switch to `file` mode.
Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 5473e31 and 6af9aa8.

Files selected for processing (3)
  • CHANGELOG.md (1 hunks)
  • README.md (4 hunks)
  • package.json (2 hunks)
Files skipped from review as they are similar to previous changes (1)
  • package.json
Additional context used
LanguageTool
CHANGELOG.md

[uncategorized] ~27-~27: The correct spelling defined by the Internet Assigned Numbers Authority (IANA) is “UTF-8” or “utf-8”. (UTF_8_HYPHEN)
Context: ...alize && fix defParamCharset default to utf8 (#56) (fengmk2 <[email protected]>) ...


[style] ~166-~166: The phrasing ‘more easy’ can sound awkward and informal. Consider using a comparative adjective or other alternative. (MORE_EASY_N_CLEAR)
Context: ....cleanupRequestFiles to improve cleanup more easy (#22) (fengmk2 <[email protected]>) ...

README.md

[typographical] ~106-~106: Consider adding a comma here. (PLEASE_COMMA)
Context: ...e ignored.** ## Examples More examples please follow: - [Handle multipart request in...


[uncategorized] ~117-~117: Loose punctuation mark. (UNLIKELY_OPENING_PUNCTUATION)
Context: ...roller.html#body). - ctx.request.body: Get all the multipart fields and values...


[uncategorized] ~118-~118: Loose punctuation mark. (UNLIKELY_OPENING_PUNCTUATION)
Context: ...es, except file. - ctx.request.files: Contains all file from the multipart ...


[grammar] ~149-~149: It seems that a pronoun is missing. (IF_VB)
Context: ...use the last field which has same name, if need the all fields value, please set `...


[grammar] ~310-~310: The modal verb ‘can’ requires the verb’s base form. (MD_BASEFORM)
Context: ...# Upload One File (DEPRECATED) You can got upload stream by ctx.getFileStream*()...


[uncategorized] ~419-~419: Possible missing preposition found. (AI_HYDRA_LEO_MISSING_TO)
Context: ...atchoptions to match the request urls switch tofile` mode. ```js config.multipart...

Markdownlint
CHANGELOG.md

13-13: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


23-23: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


31-31: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


37-37: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


43-43: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


51-51: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


57-57: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


63-63: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


69-69: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


75-75: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


84-84: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


90-90: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


96-96: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


102-102: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


108-108: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


114-114: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


120-120: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


129-129: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


135-135: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


141-141: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


147-147: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


156-156: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


162-162: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


168-168: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


174-174: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


183-183: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


189-189: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


195-195: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


207-207: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


212-212: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


217-217: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


222-222: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


228-228: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


233-233: Expected: atx; Actual: setext (MD003, heading-style)
Heading style


17-17: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


18-18: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


21-21: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


27-27: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


28-28: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


29-29: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


35-35: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


41-41: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


47-47: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


48-48: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


49-49: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


55-55: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


61-61: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


67-67: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


73-73: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


79-79: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


82-82: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


88-88: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


94-94: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


100-100: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


106-106: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


112-112: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


118-118: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


124-124: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


127-127: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


133-133: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


139-139: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


145-145: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


151-151: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


154-154: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


160-160: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


166-166: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


171-171: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


172-172: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


178-178: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


181-181: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


187-187: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


193-193: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


199-199: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


202-202: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


203-203: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


204-204: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


205-205: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


210-210: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


215-215: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


220-220: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


225-225: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


226-226: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


231-231: Expected: 0; Actual: 2 (MD007, ul-indent)
Unordered list indentation


236-236: Expected: 0; Actual: 1 (MD007, ul-indent)
Unordered list indentation


5-5: Expected: 1; Actual: 2 (MD012, no-multiple-blanks)
Multiple consecutive blank lines


12-12: Expected: 1; Actual: 2 (MD012, no-multiple-blanks)
Multiple consecutive blank lines


13-13: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


23-23: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


31-31: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


37-37: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


43-43: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


51-51: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


57-57: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


63-63: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


69-69: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


75-75: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


84-84: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


90-90: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


96-96: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


102-102: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


108-108: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


114-114: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


120-120: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


129-129: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


135-135: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


141-141: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


147-147: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


156-156: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


162-162: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


168-168: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


174-174: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


183-183: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


189-189: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


195-195: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


207-207: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


212-212: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


217-217: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


222-222: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


228-228: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


233-233: null (MD025, single-title, single-h1)
Multiple top-level headings in the same document


17-17: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


21-21: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


27-27: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


35-35: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


41-41: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


47-47: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


55-55: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


61-61: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


67-67: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


73-73: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


79-79: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


82-82: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


88-88: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


94-94: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


100-100: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


106-106: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


112-112: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


118-118: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


124-124: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


127-127: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


133-133: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


139-139: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


145-145: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


151-151: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


154-154: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


160-160: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


166-166: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


178-178: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


181-181: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


187-187: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


193-193: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


199-199: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


202-202: null (MD032, blanks-around-lists)
Lists should be surrounded by blank lines


16-16: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


20-20: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


26-26: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


34-34: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


40-40: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


46-46: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


54-54: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


60-60: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


66-66: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


72-72: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


78-78: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


81-81: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


87-87: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


93-93: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


99-99: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


105-105: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


111-111: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


117-117: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


123-123: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


126-126: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


132-132: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


138-138: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


144-144: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


150-150: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


153-153: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


159-159: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


165-165: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


177-177: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


180-180: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


186-186: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


192-192: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


198-198: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading


201-201: null (MD036, no-emphasis-as-heading)
Emphasis used instead of a heading

Additional comments not posted (2)
CHANGELOG.md (1)

9-9: LGTM! The changelog is well-documented and clear.

README.md (1)

324-326: Update import statements to modern ES module syntax.

@@ -305,7 +305,6 @@ module.exports = class UploadController extends Controller {
};
```


### Upload One File (DEPRECATED)

You can got upload stream by `ctx.getFileStream*()`.
Copy link

Choose a reason for hiding this comment

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

Grammar correction needed in the deprecated section.

- You can got upload stream by `ctx.getFileStream*()`.
+ You can get the upload stream by using `ctx.getFileStream*()`.
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.

Suggested change
You can got upload stream by `ctx.getFileStream*()`.
You can get the upload stream by using `ctx.getFileStream*()`.
Tools
LanguageTool

[grammar] ~310-~310: The modal verb ‘can’ requires the verb’s base form. (MD_BASEFORM)
Context: ...# Upload One File (DEPRECATED) You can got upload stream by ctx.getFileStream*()...

@fengmk2 fengmk2 merged commit f61d60f into master Jun 7, 2024
15 of 17 checks passed
@fengmk2 fengmk2 deleted the node-test-v22 branch June 7, 2024 06:57
fengmk2 pushed a commit that referenced this pull request Jun 7, 2024
[skip ci]

## [3.4.0](v3.3.0...v3.4.0) (2024-06-07)

### Features

* remove unuse "stream-wormhole" deps ([#63](#63)) ([f61d60f](f61d60f))
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.

1 participant