[Swift] Canonicalize LogLevel to debug/warn/error/none#441
Merged
Conversation
Contributor
Author
This was referenced Jul 13, 2026
markmur
marked this pull request as ready for review
July 13, 2026 18:13
kieran-osgood-shopify
approved these changes
Jul 14, 2026
markmur
force-pushed
the
swift-canonical-log-levels
branch
from
July 14, 2026 08:22
20ac9d3 to
5d262ec
Compare
markmur
force-pushed
the
kotlin-decode-error-parity
branch
from
July 14, 2026 08:22
4775200 to
3b8b1e8
Compare
markmur
force-pushed
the
swift-canonical-log-levels
branch
from
July 14, 2026 08:48
5d262ec to
9052ad2
Compare
markmur
force-pushed
the
kotlin-decode-error-parity
branch
from
July 14, 2026 08:48
3b8b1e8 to
acda492
Compare
markmur
force-pushed
the
swift-canonical-log-levels
branch
from
July 14, 2026 08:59
9052ad2 to
d825200
Compare
markmur
force-pushed
the
kotlin-decode-error-parity
branch
from
July 14, 2026 08:59
acda492 to
d0e4451
Compare
kiftio
approved these changes
Jul 14, 2026
markmur
force-pushed
the
swift-canonical-log-levels
branch
from
July 14, 2026 10:03
d825200 to
abd1ba4
Compare
markmur
force-pushed
the
kotlin-decode-error-parity
branch
from
July 14, 2026 10:03
d0e4451 to
1e6dca2
Compare
Contributor
Author
markmur
changed the base branch from
kotlin-decode-error-parity
to
graphite-base/441
July 14, 2026 11:14
Replace the exact-match filter with threshold (ordered) severity: debug is most verbose, none silences everything. Fixes the bug where selecting .debug silenced errors and faults. Drop the .all case (breaking) and add a warn level plus warn() method. Migrate tests, samples, and README to the new set.
markmur
force-pushed
the
swift-canonical-log-levels
branch
from
July 14, 2026 11:15
abd1ba4 to
e01e33b
Compare
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
Canonicalizes
LogLevelto an ordered, threshold-based set:debug, warn, error, none.debugis the most verbose;nonesilences everything..allcase (breaking) and adds.warnplusOSLogger.warn(_:)..warn(was.error), aligning Swift with the other platforms.Previously the filter matched the level exactly, so
.debugsilenced errors and faults. The ordered comparison fixes that.Threshold
logLevel.debug.warn(default).error.noneUsage