Conversation
The warning now says the command will be removed, that the JavaScript Stellar SDK plugin will provide it after that, and that `@stellar/stellar-sdk` 17.2.0 or later has to be installed globally to keep using it. The help text carries the same information and FULL_HELP_DOCS.md is regenerated. Adds a test for the warning. Refs stellar#2758
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The deprecation warning for
stellar contract bindings typescriptnow says three things: the command will be removed in a future version of the CLI, the JavaScript Stellar SDK plugin will provide it after that, and@stellar/stellar-sdk17.2.0 or later has to be installed globally to keep using it. It links to the plugin section of the SDK README instead of the general CLI section.Before:
After:
The warning now goes through the existing
deprecate_messagehelper, so its wording matches the other deprecations in the CLI. The help text for the subcommand carries the same information andFULL_HELP_DOCS.mdis regenerated. A new test insoroban-testruns the command and asserts the warning on stderr.Why
Follow up to #2758. The plugin shipped in
@stellar/stellar-sdk17.2.0, so the warning can now name the release that provides the replacement.The previous text told users to use the SDK instead. With CLI 28.1.0 and SDK 17.2.1 installed,
stellar contract bindings typescriptstill runs the native generator and still prints the warning, because the native command takes precedence over the plugin until it is removed. What users need from the warning is what to install before that removal, and where to read about it.Known limitations
stellar contract bindings typescriptjs-stellar-sdk#1755 and would go stale here. If the warning should name the SDK release that reaches parity instead of 17.2.0, that is a one line change.--quietdoes not silence this warning.run()callsexecute(false), so the global flag never reaches the command. That is existing behavior and is not changed here, which is why the test only asserts that the warning is printed. I am glad to open a separate issue and fix for it if that is wanted.Refs #2758