Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -338,3 +338,31 @@ jobs:
SIS_EXAMPLE_SMOKE=1 \
SIS_CMAKE_BUILD_DIR="${{ github.workspace }}/_build" \
./run_all_examples.sh -M

# File: labels and XTESTS_START_RUNNER names. Source text only, so this
# job is one Ubuntu runner, not a cell per platform and compiler. The
# checker is STLSoft .dev/bin/check_unit_test_names.rb (not installed with
# the package). -R is this project. A mismatch total exits non-zero.
check-test-names:
name: Check test names
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Check out STLSoft
uses: actions/checkout@v4
with:
fetch-depth: 1
path: _stlsoft
repository: synesissoftware/STLSoft

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: "3.3"

- name: Install checker dependencies
run: gem install highline libclimate-ruby recls-ruby xqsr3

- name: "Check File: labels and runner names"
run: ./_stlsoft/.dev/bin/check_unit_test_names.rb -R . examples test
10 changes: 10 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,16 @@
# cstring - Changes <!-- omit in toc -->


## 4.1.0-beta3 - 1st November 2026

* testing:
* `File:` labels under **test** name the project-relative path;
* build:
* the **Check test names** job runs **STLSoft** **check_unit_test_names.rb** over **examples** and **test**;
* documentation and boilerplate:
* **Doxyfile** `PROJECT_NUMBER` is **4.1.0-beta3**;


## 4.1.0-beta2 - 27th October 2026

* Defined `HAS_shwild` / `HAS_SHWILD` and `HAS_p99` / `HAS_P99` when those packages are detected;
Expand Down
2 changes: 1 addition & 1 deletion Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

PROJECT_NAME = "cstring"
PROJECT_BRIEF = "Extensible C-style strings and vectors of such, for Unix and Windows"
PROJECT_NUMBER = 4.1.0-beta1
PROJECT_NUMBER = 4.1.0-beta3

# Prefer SIS_CMAKE_BUILD_DIR-aligned output (same convention as Diagnosticism).
# ./dox/ remains gitignored for legacy/local runs that override OUTPUT_DIRECTORY.
Expand Down
1 change: 1 addition & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
| Date | News Item | Details |
| ------------------- | ------------------------------------ | ------- |
| Available from [**cstring** project on GitHub](https://synesissoftware.com/cstring): |
| 1st November 2026 | Release of [cstring 4.1.0-beta3](https://github.com/synesissoftware/cstring/releases/tag/4.1.0-beta3) | `File:` labels use the project-relative path; **Check test names** |
| 27th October 2026 | Release of [cstring 4.1.0-beta2](https://github.com/synesissoftware/cstring/releases/tag/4.1.0-beta2) | `HAS_shwild` / `HAS_p99`; tests use `CSTRING_HAS_SHWILD` |
| 21st October 2026 | Release of [cstring 4.1.0-beta1](https://github.com/synesissoftware/cstring/releases/tag/4.1.0-beta1) | helper gold 0.6.2; `CSTRING_VER_RELSTATUS` |
| 6th October 2026 | Release of [cstring 4.1.0-alpha1](https://github.com/synesissoftware/cstring/releases/tag/4.1.0-alpha1) | `djb2`, `FNV-1a`, and `SDBM`; `cstring_equal()` / `cstring_compare()`; `--wide-strings`; counted copies stop at `cch` |
Expand Down
7 changes: 4 additions & 3 deletions include/cstring/cstring.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
* Purpose: Definition of the cstring.core API.
*
* Created: 16th June 1994
* Updated: 27th October 2026
* Updated: 30th October 2026
*
* Home: http://synesis.com.au/software/
*
Expand Down Expand Up @@ -56,7 +56,7 @@
# define CSTRING_VER_CSTRING_H_CSTRING_MAJOR 3
# define CSTRING_VER_CSTRING_H_CSTRING_MINOR 13
# define CSTRING_VER_CSTRING_H_CSTRING_REVISION 3
# define CSTRING_VER_CSTRING_H_CSTRING_EDIT 104
# define CSTRING_VER_CSTRING_H_CSTRING_EDIT 105
#endif /* !CSTRING_DOCUMENTATION_SKIP_SECTION */


Expand Down Expand Up @@ -108,6 +108,7 @@
# define CSTRING_VER_4_1_0_A2 0x04010042
# define CSTRING_VER_4_1_0_B1 0x04010081
# define CSTRING_VER_4_1_0_B2 0x04010082
# define CSTRING_VER_4_1_0_B3 0x04010083
#endif /* !CSTRING_DOCUMENTATION_SKIP_SECTION */

/** \def CSTRING_VER_MAJOR
Expand All @@ -133,7 +134,7 @@
#define CSTRING_VER_MAJOR 4
#define CSTRING_VER_MINOR 1
#define CSTRING_VER_PATCH 0
#define CSTRING_VER_RELSTATUS 0x82
#define CSTRING_VER_RELSTATUS 0x83

#define CSTRING_VER \
(0\
Expand Down
4 changes: 2 additions & 2 deletions test/performance/cstring/main.cpp
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
/* /////////////////////////////////////////////////////////////////////////
* File: test/performance/test.performance.cstring/main.cpp
* File: test/performance/cstring/main.cpp
*
* Purpose: Competitive performance tests for cstring vs std::string and a
* hand-rolled realloc/memcpy floor. On Windows, the same scenarios
* also time the Global, process-heap, and COM task arenas. When
* p99 is available, also report per-iteration percentiles.
*
* Created: 23rd September 2026
* Updated: 4th October 2026
* Updated: 30th October 2026
*
* ////////////////////////////////////////////////////////////////////// */

Expand Down
4 changes: 2 additions & 2 deletions test/performance/cstring_readline/main.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* /////////////////////////////////////////////////////////////////////////
* File: test/performance/test.performance.cstring_readline/main.cpp
* File: test/performance/cstring_readline/main.cpp
*
* Purpose: Competitive performance tests for cstring_readline() against
* std::getline, fgets (bounded buffer), and a char-at-a-time fgetc
Expand All @@ -9,7 +9,7 @@
* require p99.
*
* Created: 27th September 2026
* Updated: 4th October 2026
* Updated: 30th October 2026
*
* ////////////////////////////////////////////////////////////////////// */

Expand Down
4 changes: 2 additions & 2 deletions test/performance/cstring_vector/main.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* /////////////////////////////////////////////////////////////////////////
* File: test/performance/test.performance.cstring_vector/main.cpp
* File: test/performance/cstring_vector/main.cpp
*
* Purpose: Competitive performance tests for cstring_vector vs
* std::vector<std::string> and a hand-rolled floor. When p99 is
Expand All @@ -8,7 +8,7 @@
* getline, platformstl::file_lines).
*
* Created: 23rd September 2026
* Updated: 4th October 2026
* Updated: 30th October 2026
*
* ////////////////////////////////////////////////////////////////////// */

Expand Down
Loading