136 Commits

Author SHA1 Message Date
Joao Paulo Magalhaes
564a51477b update c4core 2025-12-17 11:48:29 +00:00
Joao Paulo Magalhaes
5e1353b5d8 c4core v0.2.7 2025-09-29 23:48:00 +01:00
Joao Paulo Magalhaes
6c6c722cf8 src_extra: add event handler to create compact int events array 2025-09-29 00:01:26 +01:00
Joao Paulo Magalhaes
833786111c update c4core 2025-09-19 01:15:49 +01:00
Joao Paulo Magalhaes
47ec2fa184 v0.9.0 2025-04-10 20:51:13 +01:00
Joao Paulo Magalhaes
3b3ad1e093 re #513: fix python README example, run as test 2025-04-02 23:26:45 +01:00
Joao Paulo Magalhaes
4168dbfa3a fix build with cmake 4 2025-03-26 22:33:07 +00:00
Joao Paulo Magalhaes
a84cdf5c72 fix release workflow + other minor YS-CI changes 2025-02-15 13:01:21 +00:00
Joao Paulo Magalhaes
e65999dc4d v0.8.0 2025-02-15 11:03:52 +00:00
Joao Paulo Magalhaes
5db61e2299 fixes warnings with -Wundef
re #470
2025-02-14 01:22:29 +00:00
Joao Paulo Magalhaes
ad4ff9d3a8 update c4core 2025-02-12 22:10:52 +00:00
Joao Paulo Magalhaes
33fd0f8b3b update c4core 2025-02-07 12:34:07 +00:00
Joao Paulo Magalhaes
a5dce46efb Fix workflows: coverage,release 2025-01-25 01:59:58 +00:00
Joao Paulo Magalhaes
9b6fff2f88 Add doxygen testing workflow and fix doxygen failures 2025-01-22 20:20:35 +00:00
Joao Paulo Magalhaes
bcf428ac6d emit: fix folded/literal keys 2025-01-20 13:28:30 +00:00
Joao Paulo Magalhaes
44aba6daa7 read<std::map>() implementation: overwrite existing entries
re #477
2025-01-18 21:33:58 +00:00
Joao Paulo Magalhaes
6fbd63a856 ci improvements:
- ensure gcc and clang are tested with several optimization
  levels (-O3,-O2,-O1,-Os). This reveals a number of problems in
  gcc11,12,13 (but not 14), which should be addressed next.
- use continue-on-error: false to ensure the final workflow result is
  red when any of its jobs fails
2025-01-17 19:36:30 +00:00
Joao Paulo Magalhaes
5ccf9a2446 v0.7.1 2024-08-15 17:41:17 +01:00
Joao Paulo Magalhaes
36527c51ef ci: update workflows to accomodate github's bit rot 2024-08-13 16:10:05 +01:00
Joao Paulo Magalhaes
c9ad60eefc update c4core 2024-08-12 23:30:51 +01:00
Joao Paulo Magalhaes
9819b89cd0 fix #445 : amalgamate missing include of <charconv> 2024-06-30 13:18:59 +01:00
Joao Paulo Magalhaes
20d86b4780 re #440: fix all scan-build warnings 2024-06-28 19:54:52 +01:00
Joao Paulo Magalhaes
b2e920910d re #442: add quickstart code for overflow detection 2024-06-21 17:58:27 +01:00
Joao Paulo Magalhaes
837255cfc4 v0.7.0 2024-06-11 18:57:25 +01:00
Joao Paulo Magalhaes
2249cc1df6 ensure empty values are not deserialized
re #434
2024-06-08 10:53:52 +02:00
Joao Paulo Magalhaes
735ba65bba refactor: event-based parser policy
rewrite parser based on events, rewrite filtering
separating the filter code to a different class
wip
wip
wip
filter single quoted is working
refactor to filter processor wip
double quoted wip
double quoted wip
double quoted wip
double quoted wip
double quoted wip
double quoted wip
double quoted wip
double quoted seems to be working
double quoted wip
double quoted wip
double quoted wip
double quoted wip
double quoted wip
double quoted wip
double quoted working!
filter plain scalar wip
wip
filter plain scalar wip
wip
test filter processors
fix write in inplace::translate_esc
block literal wip
block literal wip
block literal wip
block literal wip
block literal wip
block literal wip
block literal working!
filter block folded wip
filter block folded wip
cleanup filter
filter locations are needed only for double quoted scalars
add FilterResult to encapsulate validity
prepare filter for using in parser
in-parser filtering wip
filter empty block literals
filter block folded ok
all filters working
moving filters to parse wip
fix block_folded
fixing block folded WIP
new filter: all tests passing!
fix sanitizer issues
refactor: harmonize parser filtering function names
wip ci fixes
coverage wip
filter arena no longer needed
double quoted filter wip
fix wip
fix wip
fix wip
wip: inplace mid-extending vs end-extending
all tests ok
wip
wip
wip2
wip
wip
wip doc
wip doc
wip anchor
fix newlines in emit of docs
wip ref
wip new parser
wip new parser
wip new parser
fix
wip new parser
wip new parser
wip new parser
wip new parser
wip new parser: tag directives
wip new parser: tag resolving
wip new parser: more sink edge cases
wip new parser: key containers working in the sink
prepare event sink stack
tree parse wip
cleanup event sink
tree parse wip
tree parse wip
tree parse wip
tree parse wip: now parsing simple flow seqs!
new parser wip: flow seqs: added anchor/ref parsing
new parser wip: seq flow goes on while there is a seq flow
new parser wip: seqimap events
new parser wip: seqimap parsing
new parser wip: now parsing flow maps!
wip
wip
new parser wip: block seqs wip
new parser wip: block maps wip
wip
wip
wip
map anchors ok
tags wip
anchors and tags now working
add tests for container keys
structure wip
key containers: working in events from yaml!
wip
wip
docs wip
qmrk wip
qmrk seq blck
qmrk wip
fix seqimap again
qmrk with tags
doc wip
doc wip
doc wip
doc wip
doc wip
doc wip
remove old parsing functions
fix
wip buffered events for container keys
ditto
ditto
ditto
ditto
container keys seem to be working
report error for container keys
flow key containers inside qmrk
remove unused functions
remove more unused functions
comments
wip
comments wip
wip
wip
wip
wip
most tests working
fix more tests
wip: refactor parser to not depend on tree
ditto
remove include dependencies
parser: do not use tree directly
fixes
fix annotations when starting child maps
more fixes
more fixes
more fixes
more fixes
block scalars
block scalars
fixes to scalars
wip
wip
wip
wip
add error location checks
wip
wip
sudden docs
sudden docs wip
sudden docs in block map/seq
first test cases for simple seq are working!
fixing test cases WIP
mark doc only on explicit docs or stream children
more progress
wip
wip
fixing indentless seqs wip
simple seqs are working!
nested_seqx2 working!
disable all un-refactored tests
fix empty_seq
fix empty map/file
empty scalar wip
fix empty scalars
fix test number
fix null vals and empty scalars
fix nested seq
map wip
map wip
fix maps!
fix nested maps!
fix map of seq
fix seq of map
fix sets
explicit key WIP
explicit key WIP
explicit key WIP
explicit key WIP
explicit keys working!
fix regressions
fix generic map seq tests
docs WIP
docs + indentation wip
remove unused functions
fix regressions
rename test_new_parser to test_parser_engine
docs working!
fix json
fix scalar names
anchors wip
anchors wip
anchors wip
anchors mostly working
anchors WIP
anchors/refs working!
move test lib files to a separate folder
tags wip
simple seq
simple seq
tag wip
tags working!
rename TestCase->TestCaseNode, into separate files
remove empty var
fix indentation
fix github_issues
fix github issues
single quoted wip
single quoted wip
single quoted is working!
double quoted wip
double quoted wip
fix plain scalar emit
literal scalar wip
literal scalar wip
literal scalar wip
literal scalar wip
literal scalar wip
move tags to separate source files
minor cleanup
block literal wip
block literal wip
add json parser
update benchmarks
improve json
fix compilation in clang
fix bm_emit
block literal wip
block literal wip
block literal wip
reference resolver
block literal wip
block literal working!
fix regressions
block folded wip
block folded wip
block folded wip
block folded wip
block folded wip
block folded wip
block folded wip
block folded wip: indented blocks
block folded wip
block folded wip
block folded wip
block folded working!
plain scalar wip
plain scalar wip
plain scalar working!
style wip
style wip
style wip
style wip
style WIP
scalar style wip
scalar style ok
fix regression of scalar plain
fix regression of double quoted wip
block literal wip (old)
double quoted wip
fix regression in double quoted
fix merge
add tests for merge
fix merge wip
fix vs compilation wip
parse overloads wip
parse overloads wip
parse overloads
fix merge for styles
fixes to quickstart wip
enable serialize test
improve test merge
fix test serialize
test tree wip
fix locations
test tree wip
test parser wip
fix test for yaml events (from tree)
refactor yaml event tests to use parameterized tests
event tests: use the scalar style information from the tree
event tests: use the container style information from the tree
event tests: working both from parser and tree
improve tag errors
fix tags wip
fix tags
fix bm
fix bm
fix test parser
fix tree wip
fix quickstart wip
fix test tree wip
fix some valgrind warnings
fix quickstart wip
fix tree & quickstart wip
fix docmaps with keyref as the first child
fix parsing into existing nodes
fix quickstart!
more fixes (~regressions from quickstart)
fix tool tests
fix test suite wip
fix test suite wip @215/1633
fix test suite wip @152/1633 91%
disable tests with container keys: 96/1633  94%
test suite wip
test suite parse: update missing errors
fix parsing of scalars starting with ?
fix skipping of whitespace in flow mode 47/1633 97%
fix missing anchor 45/1633 97%
fix neutral tag resolve 43/1633 97%
fix parse of yaml events 39/1633 98%
fix tags normalization 50/1633 97%
fix tags normalization 38/1633 98%
fix scalar with trailing colon : 36/1633 98%
exempt more missing errors. 32/1633 98%
30/1633 98%
22/1633 99%
18/1633 99%
backspace in dquo. 16/1633 99%
8/1633 99%
7/1633 99%
6/1633 99%
3/1633 99%
100% pass!
adding events parser to test suite and events tool
sneaky block container keys WIP
cleanup yaml-events
fix warning
wip
fix block key containers
test suite: fix event emitting WIP
100% tests pass!
fix missing doc UKK6
test suite: add tests comparing reference events and emitted events WIP
test suite: fix comparison of emitted events
100% test pass
enable tests for key containers. 100% pass!
enable error tests for event emitter. 100% pass!
update test suite exclusions
[refac] split event handlers
[fix] compilation in windows
windows exports
fix wip
wip
wip
wip
tab tokens working!
fix NodeType::operator== ambiguity in C++20
clean up test names
cover json as much as possible in the tests
fix the difficult failure in vs-x86-release builds
ensure json is tested in the test groups
fix some problems with the declaration/definition of test groups
minor cleanup in json emit
parser cleanup wip
cleanup and improve coverage
cleanup and improve coverage
cleanup and improve coverage
cleanup and improve coverage
wip cleanup and coverage
wip cleanup and coverage
style is no longer tagged WIP
tidy style API
ensure tree assertions go through the tree's callbacks
style API
bm wip
bm wip
changelog
tidy type+style predicates
add id_type to take place as the new type for node ids
update benchmarks
WIP fix warnings when the id_type is signed 32 bit
wip
wip [ci skip]
woops
wip [ci skip]
add test to ensure #422
fix rebase problem
fix noderef tests which were optimized
github workflows: update checkout version
add some more plain scalar tests
add yamlscript like test
quickstart: call sample_tags/directives on the proper place
add test for 379
update docs post rebase
fix rebase problems and update docs
test parse engine: fix gcc4.8 not accepting C++11 raw strings as macro args
investigating gcc x86 release failures
fix gcc x86 release failures (?)
gcc x86 release failures: cleanup print
update c4core
update swig interface
fix benchmark workflow
improve coverage
improve error logging functions
annotate unreachable to prevent error in visual studio
improve coverage
split event stack wip
split event stack wip
split event stack wip
tidy up some defines, and improve the dump function
emit: disable uncovered statements
2024-05-05 18:47:07 +02:00
Joao Paulo Magalhaes
a06d9f8ed6 update c4core 2024-04-28 19:25:22 +01:00
Joao Paulo Magalhaes
6e9f814f38 c4core: release 0.2.0 2024-04-28 16:10:01 +01:00
Joao Paulo Magalhaes
8ee464fc3b install is now optional
see #403
2024-04-18 23:57:12 +01:00
Joao Paulo Magalhaes
507400ed05 Improve doxygen docs 2024-04-17 00:51:59 +01:00
Joao Paulo Magalhaes
7c790c4167 Add ReadTheDocs documentation 2024-04-14 18:36:05 +01:00
Joao Paulo Magalhaes
8a72a97025 CI: update workflow actions 2024-04-12 22:25:40 +01:00
Joao Paulo Magalhaes
739ad42f01 fix emitting of scientific number with one exponent digit
fixes #390
2024-03-28 03:24:39 +00:00
Joao Paulo Magalhaes
2cf09b073d [chore] update c4core 2023-09-05 21:17:35 +02:00
Joao Paulo Magalhaes
b7f9cc37e8 [fix] re #373: fix parsing of empty keys in block-style maps 2023-05-24 22:18:13 +01:00
Joao Paulo Magalhaes
ff1a9858b1 [fix] amalgamate: inject explicit include of <charconv>
re #364
2023-05-05 19:30:22 +01:00
Joao Paulo Magalhaes
64187baad8 [fix] pedantic compiler warnings 2023-05-05 17:37:57 +01:00
Joao Paulo Magalhaes
b35ccb1502 v0.5.0 2022-12-17 21:00:42 +00:00
Joao Paulo Magalhaes
6fe06404a6 [ci] disable creation of python packages for Windows (except 3.6/3.7) and MacOSX
Here's an example log of the problem for Windows:
see https://github.com/biojppm/rapidyaml/actions/runs/3686238289/jobs/6238204139

```
+ pip install -v dist/rapidyaml-0.4.1.post139-cp311-cp311-win_amd64.whl
Using pip 22.3.1 from C:\hostedtoolcache\windows\Python\3.11.0\x64\Lib\site-packages\pip (python 3.11)
Processing d:\a\rapidyaml\rapidyaml\dist\rapidyaml-0.4.1.post139-cp311-cp311-win_amd64.whl
Installing collected packages: rapidyaml
Successfully installed rapidyaml-0.4.1.post139
+ pip show -f rapidyaml
Name: rapidyaml
Version: 0.4.1.post139
Summary: Rapid YAML - a library to parse and emit YAML, and do it fast
Home-page: https://github.com/biojppm/rapidyaml
Author: Joao Paulo Magalhaes
Author-email: dev@jpmag.me
License: MIT
Location: C:\hostedtoolcache\windows\Python\3.11.0\x64\Lib\site-packages
Requires:
Required-by:
Files:
  rapidyaml-0.4.1.post139.dist-info\INSTALLER
  rapidyaml-0.4.1.post139.dist-info\LICENSE.txt
  rapidyaml-0.4.1.post139.dist-info\METADATA
  rapidyaml-0.4.1.post139.dist-info\RECORD
  rapidyaml-0.4.1.post139.dist-info\REQUESTED
  rapidyaml-0.4.1.post139.dist-info\WHEEL
  rapidyaml-0.4.1.post139.dist-info\direct_url.json
  rapidyaml-0.4.1.post139.dist-info\top_level.txt
  ryml\__init__.py
  ryml\__pycache__\__init__.cpython-311.pyc
  ryml\__pycache__\ryml.cpython-311.pyc
  ryml\__pycache__\version.cpython-311.pyc
  ryml\_ryml.pyd
  ryml\ryml.py
  ryml\tests\__pycache__\parse_bm.cpython-311.pyc
  ryml\tests\__pycache__\test_parse.cpython-311.pyc
  ryml\tests\parse_bm.py
  ryml\tests\test_parse.py
  ryml\version.py
+ python -c 'import ryml'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\hostedtoolcache\windows\Python\3.11.0\x64\Lib\site-packages\ryml\__init__.py", line 1, in <module>
    from ryml.ryml import *
  File "C:\hostedtoolcache\windows\Python\3.11.0\x64\Lib\site-packages\ryml\ryml.py", line 13, in <module>
    from . import _ryml
ImportError: DLL load failed while importing _ryml: The specified module could not be found.
Error: Process completed with exit code 1.
```
2022-12-15 10:56:19 +00:00
Joao Paulo Magalhaes
0282bdcc3f [ci] fix github runners, update actions 2022-11-28 08:19:46 +00:00
Joao Paulo Magalhaes
317773d955 [bm] bm plots: bokeh changed API on 3.0 2022-11-18 19:34:14 +00:00
Joao Paulo Magalhaes
59ea113ab5 [chore] update cmake 2022-11-18 16:13:35 +00:00
Joao Paulo Magalhaes
46ddd1513d [fix] re bioppm/c4core#94 : armv8a feature detection macro 2022-11-18 14:20:35 +00:00
Joao Paulo Magalhaes
fcf842b373 [fix] ensure nonnull empty strings have an address and are emitted with quotes 2022-10-01 19:36:19 +01:00
Joao Paulo Magalhaes
070d22b9ae [ci] disable coveralls parallel submission
see lemurheavy/coveralls-public#1665
2022-09-26 12:10:54 +01:00
Joao Paulo Magalhaes
8e321b1865 [chore] update c4core 2022-09-07 20:26:36 +01:00
Joao Paulo Magalhaes
e672af1082 [chore] prefer shallow clone for external projects 2022-09-04 19:08:21 +01:00
Joao Paulo Magalhaes
770e3e7f3d [fix] json emitter: ensure quoting version string scalars
re #292
2022-08-30 16:47:08 +01:00
Joao Paulo Magalhaes
89cb5f0495 [chore] update c4core to 0.1.10 2022-08-20 17:27:55 +01:00
Joao Paulo Magalhaes
bddb04b0b7 [chore] update c4core 2022-08-02 12:06:27 +01:00