Skip to content

Fix error on parsing a floating point value which ends with a dot #382

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
Aug 21, 2024

Conversation

fktn-k
Copy link
Owner

@fktn-k fktn-k commented Aug 21, 2024

As reported in the issue #380, the current parser emits an error on parsing a floating point value which ends with a dot.
That is because, while scanning a parsed scalar, the parser mistakenly assumes decimals after a dot.
However, the spec explicitly allows omitting decimals after a dot here as the regular expression for the float tag.

So, this PR has fixed implementation to follow the spec, and the updated parser now correctly parse such floating point values.
To validate the changes, some relevant test cases have also been added to the test suite.


Pull Request Checklist

Read the CONTRIBUTING.md file for detailed information.

  • Changes are described in the pull request or in a referenced issue.
  • The test suite compiles and runs without any error.
  • The code coverage on your branch is 100%.
  • The documentation is updated if you added/changed a feature.

Please don't

  • The C++11 support varies between different compilers and versions. Please note the list of supported compilers. Some compilers like GCC 4.7 (and earlier), Clang 3.3 (and earlier), or Microsoft Visual Studio 13.0 and earlier are known not to work due to missing or incomplete C++11 support. Please refrain from proposing changes that work around these compiler's limitations with #ifdefs or other means.
  • Please refrain from proposing changes that would break YAML specifications. If you propose a conformant extension of YAML to be supported by the library, please motivate this extension.
  • Please do not open pull requests that address multiple issues.

@fktn-k fktn-k added the bug Something isn't working label Aug 21, 2024
@fktn-k fktn-k added this to the Release v0.3.11 milestone Aug 21, 2024
@fktn-k fktn-k self-assigned this Aug 21, 2024
Copy link

:octocat: Upload Coverage Event Notification

Coverage data has been uploaded for the commit 5d22947b09225b249fee54df93fb613a7ff2a4bb.
You can download the artifact which contains the same file uploaded to the Coveralls and its HTML version.

Name fkYAML_coverage.pr382.zip
ID 1838272844
URL https://github.com/fktn-k/fkYAML/actions/runs/10493403511/artifacts/1838272844

@coveralls
Copy link

Pull Request Test Coverage Report for Build 10493403511

Details

  • 3 of 3 (100.0%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage remained the same at 100.0%

Totals Coverage Status
Change from base Build 10473001599: 0.0%
Covered Lines: 3975
Relevant Lines: 3975

💛 - Coveralls

@fktn-k fktn-k merged commit 5be5e35 into develop Aug 21, 2024
166 checks passed
@fktn-k fktn-k deleted the bugfix/380_fix_parse_float_end_with_dot branch August 21, 2024 16:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants