Deprecations for the next major release
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 886
- Forks
- 102
- Avg merge
- 6h 36m
- Merged PRs (30d)
- 2
Description
mockolo has a long history and includes some features that are not widely known.
With the advancements in Swift, some of these features are now likely impractical or obsolete, yet they are still being maintained.
Some features also require a lot of effort to keep working.
Currently, we do not have enough people or time to maintain mockolo, and we are struggling to keep up with the latest features in Swift.
Therefore, for the next major update, we would like to deprecate some old or undocumented features that seem to be unused.
The features scheduled for removal are as follows:
--allow-set-call-countflag
This will always be treated as true. There shouldn't be any cases where this causes issues.--use-template-funcflag
Is anyone actually using this? It is not well tested, and there may be many situations where it doesn’t work properly. Furthermore, in modern Swift there are alternative approaches such as function body macros.- Parent mock feature
This is an undocumented, hidden feature with very complex behavior. In short, it allows you to provide part of the mock class implementation from existing source code. While it is a unique feature, I don’t believe anyone is using it.
Deprecation Plan
First, we display a warning in the console when these features are used. Afterwards, unless there are strong objections, we will proceed to remove these features.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing handling for the --allow-set-call-count and --use-template-func flags, then locate the undocumented parent mock feature. Review how each feature is currently used and how console warnings are emitted. Done means the deprecation plan is implemented for all three features and their warning behavior is verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- cli, tooling
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 32/100