aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2025-03-16Strengthen exhaustive write error testDavid Robillard1-29/+45
Factor out the check, then also check that writing with enough space succeeds. This makes the test more future-proof since it will fail if the maximum sizes aren't updated (meaning errors near the end of the document aren't covered). Strengthen the check itself by including the status of serd_writer_finish(), and bump the Turtle and TriG sizes by the three corresponding trailing bytes.
2025-03-16Encapsulate writer indentation codeDavid Robillard1-6/+4
This makes write_sep() responsible for all indentation changes (except resetting it to zero), removing some spooky action at a distance around object comma indentation.
2025-03-16Remove unused field and shrink WriteContextDavid Robillard1-6/+2
2025-03-16Remove redundant initializationDavid Robillard1-10/+1
2025-03-16Clean up writer testsDavid Robillard1-25/+24
2025-03-16Add missing parenthesesDavid Robillard1-1/+1
2025-03-16Check that test values are non-null before useDavid Robillard6-32/+30
2025-03-16Avoid implicit double promotionDavid Robillard2-3/+2
2025-03-16Consistently put function attributes firstDavid Robillard1-2/+2
2025-03-16Avoid "static inline" outside headersDavid Robillard2-2/+2
2025-03-16Remove unnecessary warning suppressionsDavid Robillard1-9/+0
Apparently clang 19 has gotten smarter about this.
2025-03-16Remove duplicate defineDavid Robillard1-3/+0
2025-03-16Factor out popping trailing dot characterDavid Robillard3-10/+15
2025-03-16Add missing includeDavid Robillard1-0/+2
2025-03-16Disable meson implicit include directories anti-featureDavid Robillard3-0/+4
2025-03-16Fix reading prefix names that start with "true." or "false."David Robillard6-69/+98
2025-03-16Fix reading numbers with no space before the final dotDavid Robillard13-8/+67
2025-03-16Refuse to write incoherent statementsDavid Robillard4-20/+87
2025-02-25Isolate standalone writer testsDavid Robillard2-42/+58
Move these to test_writer so that test_reader_writer is focused on the file-based case where the writer output is later read.
2025-02-23Fix doc comment syntaxDavid Robillard2-2/+2
2025-02-12Fix spellingDavid Robillard2-2/+2
2025-02-12Fix wrong word in documentationDavid Robillard1-1/+1
2025-02-10Fully parenthesize expressionsDavid Robillard2-3/+3
2025-01-30Unify invalid input character error reportingDavid Robillard4-23/+28
Puts all error messages that print input characters in the same place, so that potentially printing them can be handled properly. Most notably this avoids printing EOF and control characters in error messages.
2025-01-30Fix handling of some invalid EOF cases in lax modeDavid Robillard4-10/+23
The return status of these tests unfortunately isn't consistent, so instead of testing for an exact exit status, instead check that the return status doesn't seem to be an abort() or other signal code (which are negative on Linux, while serdi itself never exits with a negative status).
2025-01-30Separate EOF tests from catch-all "bad" test suiteDavid Robillard40-216/+234
2025-01-30Remove project and version number from man page OS fieldDavid Robillard5-5/+12
The mandoc documentation suggests leaving this blank. Although I still think it's nicer for third-party projects to put their own versions here (as many GNU utilities do, for example), it's a hassle in practice to maintain the version over time, and I'm not sure what to do about the date in that case. The version is passed to the mandoc command instead for generating the HTML man pages, so those are unchanged.
2025-01-19Fix building lint tests when serdi is unavailableDavid Robillard1-8/+10
2025-01-19Clean up gitignore fileDavid Robillard1-6/+8
Strengthen patterns to match only relative to this directory where possible (with a leading slash), and move those that match in any child to a separate block.
2025-01-18Serd 0.32.4v0.32.4David Robillard6-10/+10
2025-01-18Update sphinxygen wrapDavid Robillard2-8/+8
2025-01-18Update copyright years and remove license symbolic linkDavid Robillard4-4/+16
Neither direction of linking here works properly with every site/tool, so just avoid all the hassle and write the "main" license out twice.
2025-01-10Use cppcheck working directoryDavid Robillard2-128/+132
This allows for better analysis, and adds a cache to improve checking times, especially on repeated runs.
2025-01-10Suppress cppcheck assertWithSideEffect warningDavid Robillard1-0/+1
This triggers in some tests that, for example, call fclose in an assert statement.
2024-12-11Always assert the return value of fopen() in testsDavid Robillard2-2/+6
2024-12-11Remove old Windows compatibility gunkDavid Robillard1-9/+0
2024-12-11Fix widening conversions after arithmeticDavid Robillard1-1/+1
Overflow isn't actually possible here, but this avoids the issue statically in a way that won't trigger analysis tools.
2024-12-11Ensure success of fclose() for writable files in testsDavid Robillard3-8/+10
2024-12-11Invert condition to make lack of underflow more obviousDavid Robillard1-3/+3
2024-12-11Avoid assignments in assert statementsDavid Robillard1-5/+9
The ways these tests are written fundamentally requires assertions to always run, but some tools like to warn about it anyway, so avoid obvious cases.
2024-11-23Use angle brackets for library includesDavid Robillard27-28/+29
2024-11-22Use more conventional command-line help formattingDavid Robillard1-14/+14
2024-11-22Quote email addresses in man pagesDavid Robillard1-1/+1
2024-11-12Move warning suppression flags to main meson fileDavid Robillard2-109/+89
2024-10-31Update main branch nameDavid Robillard1-1/+1
2024-10-06Clean up lint test definitionsDavid Robillard1-22/+20
2024-10-06Check all sources in clang-format testDavid Robillard1-6/+12
2024-10-06Relocate lint test definitionsDavid Robillard1-135/+135
Towards reusing source lists for checks across all the code (not just the library sources).
2024-10-06Remove redundant default values for meson optionsDavid Robillard1-6/+6
2024-09-28Add clang-format lint testDavid Robillard2-1/+12