Merged
Conversation
Added @deprecated annotations to all public functions in str/core.gleam, str/extra.gleam, and str/tokenize.gleam, indicating they will be removed in str 2.0 and recommending use of the unified `str` module when available.
Documented the deprecation of public APIs in internal modules (`str/core`, `str/extra`, and `str/tokenize`) in preparation for 2.0.0. Added notes about deprecation warnings and clarified that the public `str.gleam` module remains recommended.
Prevents benchmark results from being tracked by git by adding 'benchmark/results/' to the .gitignore file.
There was a problem hiding this comment.
Pull request overview
This pull request deprecates all public APIs in the internal str/core, str/extra, and str/tokenize modules in preparation for consolidating them into a unified str module in version 2.0.0. The main str.gleam module remains the recommended entry point and is not deprecated.
Changes:
- Added
@deprecatedannotations to all public functions acrossstr/core,str/extra, andstr/tokenizemodules - Updated CHANGELOG.md to document the deprecation strategy and inform users about expected warnings
- Added
benchmark/results/to.gitignorefor future benchmarking artifacts
Reviewed changes
Copilot reviewed 4 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/str/core.gleam | Added deprecation annotations to all 81 public functions in the core string utilities module |
| src/str/extra.gleam | Added deprecation annotations to all 13 public functions for extended string operations |
| src/str/tokenize.gleam | Added deprecation annotations to both public tokenizer functions (chars and chars_stdlib) |
| CHANGELOG.md | Documented version 1.3.0 release with deprecation notices and migration guidance |
| .gitignore | Added benchmark/results/ entry for future benchmarking artifacts |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
This pull request deprecates a large number of public APIs in the internal
str/coremodule, as part of the transition to a unifiedstrmodule planned for version 2.0.0. All affected functions now include@deprecatedannotations, and users are encouraged to migrate to the unified API when it becomes available. The publicstr.gleammodule remains the recommended entry point and is not deprecated. Deprecation warnings may appear during builds and tests to signal these upcoming changes.Deprecation of internal string APIs:
@deprecatedannotations to all public functions insrc/str/core.gleam, including utilities for whitespace, padding, truncation, grapheme handling, and text manipulation. Each deprecation note advises migration to the unifiedstrmodule in 2.0.0. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33]Documentation update:
CHANGELOG.mdto document the deprecation of internal string APIs and to inform users about the transition plan and the appearance of deprecation warnings.