ChartsOrg / ChartsOrg/Charts

Stronger Testing Procedures

Open
#4,132 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Swift
Stars
28k
Forks
6k
PR merge metrics
No merged PRs in 30d

Description

This is not a specific issue, but more of a general feedback. I am a big fan of this repository and have been since the very early days. However, it is my impression that changes to the code base, especially pull requests submitted by the community, are accepted without applying strong testing procedures. I'd like to make the case for this by explaining my situation:

- Version 3.2.1 was a stable version for me (I am only using line and scatter charts in a relatively simple manner)
- With version 3.2.2 the chart renderers were refactored ([3164](https://github.com/danielgindi/Charts/pull/3164)). However, the changes caused the first circle on line charts to disappear ([3915](https://github.com/danielgindi/Charts/issues/3915)).
- Version 3.3.0 meant to fix the issue with the circles, by using a new iterator ([3891](https://github.com/danielgindi/Charts/pull/3891)). Yet, this caused a much greater issue, leading to many reports of app crashes (compare [4049](https://github.com/danielgindi/Charts/issues/4049)). These app crashes are also rather frequent, with more than 5% of users of my app experiencing it.

As a result, version 3.2.1 is the last stable release which is suitable for use in my app.

Contributor guide

Open the contributing guide

Research direction

Review PRs 3164 and 3891 alongside issues 3915 and 4049; the issue names no files or tests to run. Define the requested testing procedure and its acceptance criteria before implementation, since the issue provides no concrete change or measurable done condition.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
10/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.