-
Notifications
You must be signed in to change notification settings - Fork 50
Permalink
Choose a base ref
{{ refName }}
default
Choose a head ref
{{ refName }}
default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request.
If you need to, you can also or
learn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also .
Learn more about diff comparisons here.
base repository: purescript-contrib/purescript-parsing
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v6.0.2
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
...
head repository: purescript-contrib/purescript-parsing
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v7.0.0
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}
default
Loading
- 14 commits
- 15 files changed
- 3 contributors
Commits on Jul 25, 2021
-
Configuration menu - View commit details
-
Copy full SHA for ffe8d8a - Browse repository at this point
Copy the full SHA ffe8d8aView commit details
Commits on Jul 28, 2021
-
Configuration menu - View commit details
-
Copy full SHA for bc03b29 - Browse repository at this point
Copy the full SHA bc03b29View commit details
Commits on Aug 4, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 1d0aaa1 - Browse repository at this point
Copy the full SHA 1d0aaa1View commit details
Commits on Sep 28, 2021
-
Configuration menu - View commit details
-
Copy full SHA for d33aea3 - Browse repository at this point
Copy the full SHA d33aea3View commit details
Commits on Sep 29, 2021
-
Merge pull request #121 from purescript-contrib/maintainer
Assign jamesdbrock as maintainer
Configuration menu - View commit details
-
Copy full SHA for 7750e71 - Browse repository at this point
Copy the full SHA 7750e71View commit details
Commits on Oct 6, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 50d3bc8 - Browse repository at this point
Copy the full SHA 50d3bc8View commit details -
Correctly handle UTF-16 surrogate pairs in `String`s. We keep all of the API, but we change the primitive parsers so that instead of succeeding and incorrectly returning half of a surrogate pair, they will fail. All prior tests pass with no modifications. Add a few new tests. Non-breaking changes ==================== Add primitive parsers `anyCodePoint` and `satisfyCodePoint` for parsing `CodePoint`s. Add the `match` combinator. Move `updatePosString` to the `Text.Parsing.Parser.String` module and don't export it. Split dev dependencies into spago-dev.dhall. Add benchmark suite. Add astral UTF-16 test. Breaking changes ================ Change the definition of `whiteSpace` and `skipSpaces` to `Data.CodePoint.Unicode.isSpace`. To make this library handle Unicode correctly, it is necessary to either alter the `StringLike` class or delete it. We decided to delete it. The `String` module will now operate only on inputs of the concrete `String` type. `StringLike` has no laws, and during the five years of its life, no-one on Github has ever written another instance of `StringLike`. https://github.com/search?l=&q=StringLike+language%3APureScript&type=code The last time someone tried to alter `StringLike`, this is what happened: #62 Breaking changes which won’t be caught by the compiler ====================================================== Fundamentally, we change the way we consume the next input character from `Data.String.CodeUnits.uncons` to `Data.String.CodePoints.uncons`. `anyChar` will no longer always succeed. It will only succeed on a Basic Multilingual Plane character. The new parser `anyCodePoint` will always succeed. We are not quite “making the default `CodePoint`”, as was discussed in #76 (comment) . Rather we are keeping most of the current API and making it work properly with astral Unicode. We keep the `Char` parsers for backward compatibility. We also keep the `Char` parsers for ergonomic reasons. For example the parser `char :: forall s m. Monad m => Char -> ParserT s m Char`. This parser is usually called with a literal like `char 'a'`. It would be annoying to call this parser with `char (codePointFromChar 'a')`. Benchmarks ========== For Unicode correctness, we're now consuming characters with `Data.String.CodePoints.uncons` instead of `Data.String.CodeUnits.uncons`. If that were going to effect performance, then the effect would show up in the `runParser parse23` benchmark, but it doesn’t. Before ------ ``` runParser parse23 mean = 43.36 ms stddev = 6.75 ms min = 41.12 ms max = 124.65 ms runParser parseSkidoo mean = 22.53 ms stddev = 3.86 ms min = 21.40 ms max = 61.76 ms ``` After ----- ``` runParser parse23 mean = 42.90 ms stddev = 6.01 ms min = 40.97 ms max = 115.74 ms runParser parseSkidoo mean = 22.03 ms stddev = 2.79 ms min = 20.78 ms max = 53.34 ms ```
Configuration menu - View commit details
-
Copy full SHA for a1413b1 - Browse repository at this point
Copy the full SHA a1413b1View commit details -
Merge pull request #119 from jamesdbrock/uncons-codepoints
Unicode correctness
Configuration menu - View commit details
-
Copy full SHA for b5ac522 - Browse repository at this point
Copy the full SHA b5ac522View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7454d6b - Browse repository at this point
Copy the full SHA 7454d6bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 83b6c7a - Browse repository at this point
Copy the full SHA 83b6c7aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 07438c3 - Browse repository at this point
Copy the full SHA 07438c3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 636f897 - Browse repository at this point
Copy the full SHA 636f897View commit details -
Configuration menu - View commit details
-
Copy full SHA for 74197e4 - Browse repository at this point
Copy the full SHA 74197e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 297ad9e - Browse repository at this point
Copy the full SHA 297ad9eView commit details
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v6.0.2...v7.0.0