Skip to content

Conversation

@EvanBacon
Copy link
Owner

  • Removes comment parsing which we discard anyways.
  • Uses a better list of binary characters to wrap.

Testing Improvements:

  • Introduced a new test suite in src/json/__tests__/unicode-edge-cases.test.ts to validate Unicode escape sequences, NextStep character mappings, octal escapes, string parsing edge cases, data literals, and round-trip preservation of .pbxproj files.

Parser Enhancements:

  • Implemented a complete NextStep Unicode mapping table in src/json/parser/identifiers.ts to ensure compatibility with Xcode's specific character mappings.
  • Refined the stripQuotes function to handle complex escape sequences, including Unicode, octal, and control characters, while ensuring accurate parsing of quoted strings.
  • Simplified the regex for matching quoted strings in matchQuotedString and improved handling of data literals in matchData.
  • Removed custom handling of comments in the parser and streamlined the PbxprojParser class for better maintainability. [1] [2]

@EvanBacon EvanBacon merged commit 32c43cd into main Jul 24, 2025
1 check passed
@EvanBacon EvanBacon deleted the @evanbacon/json-parsing branch July 24, 2025 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants