Skip to content

Update docs on undefined behavior #1397

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 22, 2018

Conversation

densh
Copy link
Member

@densh densh commented Nov 22, 2018

No description provided.

@densh densh force-pushed the topic/update-undef-docs branch 2 times, most recently from d60fde8 to f6e8e64 Compare November 22, 2018 09:59
@densh densh force-pushed the topic/update-undef-docs branch from f6e8e64 to a2a55a1 Compare November 22, 2018 10:12
@densh densh merged commit 9feb9d5 into scala-native:master Nov 22, 2018
@densh densh mentioned this pull request Nov 22, 2018
10 tasks
LeeTibbert pushed a commit to LeeTibbert/scala-native-fork that referenced this pull request Sep 1, 2019
  * This PR requires earlier PRs: scala-native#1397, scala-native#1693, and scala-native#1698.
    Travis CI will fail until those are merged.

  * This PR ports [re2j](https://github.com/google/re2j/) PR scala-native#49,
    "Named group support", dated 2018-03-04,
    commit d0ec5a7cfec67a08735b720a956c92d1440b3789 to Scala Native.

    My thanks and appreciation to the re2j developer @sjamesr for the
    re2j PR.

 * Some named group support was activated/implemented when re2j was
   originally ported to Scala Native.  This PR removes that code
   in favor to the quote "new" re2j named group support.  I believe
   there is no major functional change. As more fully described below,
   a few Exceptions and their messages have been changed to conform to Java 8.

   My hope is that using some close relative of the re2j code will
   help future devos, myself included, identify and track relevant changes in
   the re2j repository.

   Requiescat in Pace, sn.regex named group support, we hardly knew ye!

 * Deviations of note from re2j code:

      + Adjusted Exception thrown and message to match Java 8.
      The re2j message was better in the sense that it gave the
      name not found, but SN is trying to hew close to Java 8.

      + Converted from namedGroups from Map[String, Integer] to
      Map[String, Int] to avoid boxing values which are known to be Ints.

      + Re-worked the named group methods start(name), end(name), and
        group(name) to use a common subroutine rather than open coding.
	This makes it easier to get the lookup & exception handling
	right and consistent.

  * The unit-test points were ported/added to sn.regex.MatcherSuite,
    sn.regex.ParserSuite, and java.util.MatcherSuite. The majority
    of the testing of both Perl and Java syntax named group
    handling is done in sn.regex to stay close to the code which
    actually does the work.

Documentation:

  * The standard changelog entry is requested.

Testing:

  * Built and tested ("test-all") in release-fast mode using sbt 1.2.8 on
    X86_64 only . All tests pass.
LeeTibbert pushed a commit to LeeTibbert/scala-native-fork that referenced this pull request Sep 1, 2019
  * This PR requires earlier PRs: scala-native#1397, scala-native#1693, and scala-native#1698.
    Travis CI will fail until those are merged.

  * This PR ports [re2j](https://github.com/google/re2j/) PR scala-native#49,
    "Named group support", dated 2018-03-04,
    commit d0ec5a7cfec67a08735b720a956c92d1440b3789 to Scala Native.

    My thanks and appreciation to the re2j developer @sjamesr for the
    re2j PR.

 * Some named group support was activated/implemented when re2j was
   originally ported to Scala Native.  This PR removes that code
   in favor to the quote "new" re2j named group support.  I believe
   there is no major functional change. As more fully described below,
   a few Exceptions and their messages have been changed to conform to Java 8.

   My hope is that using some close relative of the re2j code will
   help future devos, myself included, identify and track relevant changes in
   the re2j repository.

   Requiescat in Pace, sn.regex named group support, we hardly knew ye!

 * Deviations of note from re2j code:

      + Adjusted Exception thrown and message to match Java 8.
      The re2j message was better in the sense that it gave the
      name not found, but SN is trying to hew close to Java 8.

      + Converted from namedGroups from Map[String, Integer] to
      Map[String, Int] to avoid boxing values which are known to be Ints.

      + Re-worked the named group methods start(name), end(name), and
        group(name) to use a common subroutine rather than open coding.
	This makes it easier to get the lookup & exception handling
	right and consistent.

  * unit-test points were ported/added:
      + sn.regex.MatcherSuite
      + sn.regex.ParserSuite
      + java.util.regex.MatcherSuite
      + java.util.regex.PatternSuite

    The majority of the testing of both Perl and Java syntax named group
    handling is done in sn.regex to stay close to the code which
    actually does the work.

Documentation:

  * The standard changelog entry is requested.

Testing:

  * Built and tested ("test-all") in release-fast mode using sbt 1.2.8 on
    X86_64 only . All tests pass.
ekrich pushed a commit to ekrich/scala-native that referenced this pull request May 21, 2021
jchyb pushed a commit to jchyb/scala-native that referenced this pull request Oct 5, 2021
  * This PR requires earlier PRs: scala-native#1397, scala-native#1693, and scala-native#1698.
    Travis CI will fail until those are merged.

  * This PR ports [re2j](https://github.com/google/re2j/) PR scala-native#49,
    "Named group support", dated 2018-03-04,
    commit d0ec5a7cfec67a08735b720a956c92d1440b3789 to Scala Native.

    My thanks and appreciation to the re2j developer @sjamesr for the
    re2j PR.

 * Some named group support was activated/implemented when re2j was
   originally ported to Scala Native.  This PR removes that code
   in favor to the quote "new" re2j named group support.  I believe
   there is no major functional change. As more fully described below,
   a few Exceptions and their messages have been changed to conform to Java 8.

   My hope is that using some close relative of the re2j code will
   help future devos, myself included, identify and track relevant changes in
   the re2j repository.

   Requiescat in Pace, sn.regex named group support, we hardly knew ye!

 * Deviations of note from re2j code:

      + Adjusted Exception thrown and message to match Java 8.
      The re2j message was better in the sense that it gave the
      name not found, but SN is trying to hew close to Java 8.

      + Converted from namedGroups from Map[String, Integer] to
      Map[String, Int] to avoid boxing values which are known to be Ints.

      + Re-worked the named group methods start(name), end(name), and
        group(name) to use a common subroutine rather than open coding.
	This makes it easier to get the lookup & exception handling
	right and consistent.

  * unit-test points were ported/added:
      + sn.regex.MatcherSuite
      + sn.regex.ParserSuite
      + java.util.regex.MatcherSuite
      + java.util.regex.PatternSuite

    The majority of the testing of both Perl and Java syntax named group
    handling is done in sn.regex to stay close to the code which
    actually does the work.

Documentation:

  * The standard changelog entry is requested.

Testing:

  * Built and tested ("test-all") in release-fast mode using sbt 1.2.8 on
    X86_64 only . All tests pass.

Add a probabilistic fix to "stack safe" test.

This is a micro-edit point fix. A better comprehensive, deterministic fix
is being exercised in work-in-progress for a future PR.

Prior to this commit, the "stack safe" test could intermittently
fail with duplicate groups. This fix increases the size of the string
to drastically reduce the chance of a duplicate name.

Note that this code to generate a group name can still generate, with
a 10 in 62 probability, a digit for the first character of the group
name. Such a name is not a valid Java 8 group name and will cause
the test to fail intermittently and in a hard to debug manner.

Again, a better fix is on the way. Both fixes are in a future PR
to simplify the merge process.
jchyb pushed a commit to jchyb/scala-native that referenced this pull request Oct 7, 2021
  * This PR requires earlier PRs: scala-native#1397, scala-native#1693, and scala-native#1698.
    Travis CI will fail until those are merged.

  * This PR ports [re2j](https://github.com/google/re2j/) PR scala-native#49,
    "Named group support", dated 2018-03-04,
    commit d0ec5a7cfec67a08735b720a956c92d1440b3789 to Scala Native.

    My thanks and appreciation to the re2j developer @sjamesr for the
    re2j PR.

 * Some named group support was activated/implemented when re2j was
   originally ported to Scala Native.  This PR removes that code
   in favor to the quote "new" re2j named group support.  I believe
   there is no major functional change. As more fully described below,
   a few Exceptions and their messages have been changed to conform to Java 8.

   My hope is that using some close relative of the re2j code will
   help future devos, myself included, identify and track relevant changes in
   the re2j repository.

   Requiescat in Pace, sn.regex named group support, we hardly knew ye!

 * Deviations of note from re2j code:

      + Adjusted Exception thrown and message to match Java 8.
      The re2j message was better in the sense that it gave the
      name not found, but SN is trying to hew close to Java 8.

      + Converted from namedGroups from Map[String, Integer] to
      Map[String, Int] to avoid boxing values which are known to be Ints.

      + Re-worked the named group methods start(name), end(name), and
        group(name) to use a common subroutine rather than open coding.
	This makes it easier to get the lookup & exception handling
	right and consistent.

  * unit-test points were ported/added:
      + sn.regex.MatcherSuite
      + sn.regex.ParserSuite
      + java.util.regex.MatcherSuite
      + java.util.regex.PatternSuite

    The majority of the testing of both Perl and Java syntax named group
    handling is done in sn.regex to stay close to the code which
    actually does the work.

Documentation:

  * The standard changelog entry is requested.

Testing:

  * Built and tested ("test-all") in release-fast mode using sbt 1.2.8 on
    X86_64 only . All tests pass.

Add a probabilistic fix to "stack safe" test.

This is a micro-edit point fix. A better comprehensive, deterministic fix
is being exercised in work-in-progress for a future PR.

Prior to this commit, the "stack safe" test could intermittently
fail with duplicate groups. This fix increases the size of the string
to drastically reduce the chance of a duplicate name.
jchyb pushed a commit to jchyb/scala-native that referenced this pull request Oct 7, 2021
  * This PR requires earlier PRs: scala-native#1397, scala-native#1693, and scala-native#1698.
    Travis CI will fail until those are merged.

  * This PR ports [re2j](https://github.com/google/re2j/) PR scala-native#49,
    "Named group support", dated 2018-03-04,
    commit d0ec5a7cfec67a08735b720a956c92d1440b3789 to Scala Native.

    My thanks and appreciation to the re2j developer @sjamesr for the
    re2j PR.

 * Some named group support was activated/implemented when re2j was
   originally ported to Scala Native.  This PR removes that code
   in favor to the quote "new" re2j named group support.  I believe
   there is no major functional change. As more fully described below,
   a few Exceptions and their messages have been changed to conform to Java 8.

   My hope is that using some close relative of the re2j code will
   help future devos, myself included, identify and track relevant changes in
   the re2j repository.

   Requiescat in Pace, sn.regex named group support, we hardly knew ye!

 * Deviations of note from re2j code:

      + Adjusted Exception thrown and message to match Java 8.
      The re2j message was better in the sense that it gave the
      name not found, but SN is trying to hew close to Java 8.

      + Converted from namedGroups from Map[String, Integer] to
      Map[String, Int] to avoid boxing values which are known to be Ints.

      + Re-worked the named group methods start(name), end(name), and
        group(name) to use a common subroutine rather than open coding.
	This makes it easier to get the lookup & exception handling
	right and consistent.

  * unit-test points were ported/added:
      + sn.regex.MatcherSuite
      + sn.regex.ParserSuite
      + java.util.regex.MatcherSuite
      + java.util.regex.PatternSuite

    The majority of the testing of both Perl and Java syntax named group
    handling is done in sn.regex to stay close to the code which
    actually does the work.

Documentation:

  * The standard changelog entry is requested.

Testing:

  * Built and tested ("test-all") in release-fast mode using sbt 1.2.8 on
    X86_64 only . All tests pass.

Add a probabilistic fix to "stack safe" test.

This is a micro-edit point fix. A better comprehensive, deterministic fix
is being exercised in work-in-progress for a future PR.

Prior to this commit, the "stack safe" test could intermittently
fail with duplicate groups. This fix increases the size of the string
to drastically reduce the chance of a duplicate name.
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.

1 participant