Marc Durdin
5790f634cf
Merge pull request #11101 from keymanapp/fix/core/11067-fix-actions-normalize-utf32
...
fix(core): fix pointer math in actions_normalize() 🙀
2024-03-28 19:18:15 +11:00
Steven R. Loomis
92a4a2a0a2
Merge pull request #11094 from keymanapp/chore/core/11057-optimize-marker-context
...
chore(core): optimize ldml_event_state::emit_difference() when no diff 🙀
2024-03-28 00:13:45 -05:00
Steven R. Loomis
7106b662b7
Merge pull request #11100 from keymanapp/fix/core/11067-fix-actions-normalize-output-string
...
fix(core): actions_normalize() length and dead store fix 🙀
2024-03-28 00:13:21 -05:00
Steven R. Loomis
1ac5bdfaa1
Merge pull request #11071 from keymanapp/fix/core/11057-string-too-long
...
fix(core): calculate offset correctly when replacing marker in transform (fixes crash)🙀
2024-03-28 00:12:18 -05:00
Steven R. Loomis
5f836d72f0
Merge pull request #11059 from keymanapp/fix/core/11045-assert-marker
...
fix(core,developer): variable/marker substitution in sets and strings🙀
2024-03-28 00:11:28 -05:00
Steven R. Loomis
adc421974c
chore(core): fix actions_normalize() pointer math - tests
...
- fix comments yet again
- add regression test in test_actions_normalize.cpp
For: #11067
2024-03-27 23:55:01 -05:00
Steven R. Loomis
d894db78f6
fix(core): add an assert on code_points_to_delete
2024-03-27 23:25:43 -05:00
Steven R. Loomis
ca34b5f00f
fix(core): fix actions_normalize() UChar32 calculation
...
- UnicodeString is UTF-16, but can be used with UTF-32 boundaries.
- fix calculation of code_points_to_delete
Fixes : #11067
2024-03-27 19:37:08 -05:00
Steven R. Loomis
3f42b0b831
fix(core): fix actions_normalize() use of UnicodeString
...
- output[0] was used as a boolean, but needed to check output.isEmpty() instead
- dead store to actions.code_points_to_delete
For: #11067 parts 1 and 2
2024-03-27 19:13:01 -05:00
Steven R. Loomis
8b5723028c
chore(core): optimize ldml_event_state::emit_difference() when no difference
...
#11057
2024-03-27 08:18:03 -05:00
Steven R. Loomis
e8a8590eee
fix(core): revert some interim fixes
...
- ldml_test_source fix moved off to issue #11083
- an optimization in ldml_processor also rolled back
2024-03-27 08:05:39 -05:00
Steven R. Loomis
84b6488f08
fix(core): dx: don't choke on embedded non-ascii in ldml .xml test files
...
- ldml_test_source: clarify UTF-8 processing in ltrim()
2024-03-26 19:55:03 -05:00
Steven R. Loomis
18c6ecfc08
fix(core): fix 2 marker cases in ldml_event_state::emit_difference 🙀
...
- handle the case where old and new context strings are the same (i.e. no work to do).
- fix pointer arithmetic error in #10356 - the special case where one marker is being replaced by another. The named regression test didn't actually hit this case.
Fixes: bug(core): 'string too long' #11057
2024-03-25 16:45:01 -05:00
Steven R. Loomis
54e59e47bc
fix(core): dx: don't choke on embedded non-ascii in ldml .xml test files
...
- ldml_test_source had a trim() implementation that was causing asserts in std::isspace() which turned out to be due to negative integers being passed
- The actual line that caused trouble was, quote, '«" />'
2024-03-25 15:57:44 -05:00
Steven R. Loomis
f2ad7d4e68
fix(common): further improvement to string/set substitution
...
- tran: check for \uXXXX earlier in the chain, because we emit this format further down
- add test cases for syntax chars being used in variables
Fixes: bug(core): assert when matching markers #11045
Fixes: bug(developer): escape on string substitution if syntax char #11037
2024-03-25 14:52:32 -05:00
Steven R. Loomis
bc5a639cff
chore(core): fix for ldml test DTD reference 🙀
...
Typo from earlier fix #10900
2024-03-25 12:02:49 -05:00
Steven R. Loomis
67838e60a2
fix(developer,core): fix for marker substitution in sets
...
- for bug(core): assert when matching markers #11045
- track raw and marker-substituted sets
2024-03-25 12:00:55 -05:00
Steven R. Loomis
28bdbbcfd7
bug(core): repro for assertion
...
- test case with a set of markers
2024-03-25 11:51:26 -05:00
Marc Durdin
7f7bbe5030
chore: Apply suggestions from code review
...
Co-authored-by: rc-swag <58423624+rc-swag@users.noreply.github.com>
2024-03-22 17:31:28 +11:00
Marc Durdin
7136a69ac8
chore(core): fix links and tweaks docs
2024-03-21 06:12:59 +07:00
Marc Durdin
7bfda9881f
chore(core): fix typos
2024-03-20 13:30:05 +07:00
Marc Durdin
216d4afdef
chore(core): fix typos
2024-03-20 13:09:09 +07:00
Marc Durdin
56e70b82d1
chore(core): add links to other markdown files for v17
2024-03-20 13:08:24 +07:00
Marc Durdin
f43d5aa53f
chore: copy change docs into header as well
2024-03-20 12:58:42 +07:00
Marc Durdin
73daec43c1
chore(core): refresh documentation and add build tool
...
Refreshes all of the public API header documentation so we have a single
source for the documentation -- the keyman_core_api.h header. A lot of
reformatting but very little change in terms of content.
This is converted into Markdown by api-header-extractor, and the results
can be copied to help.keyman.com.
Will only do the main keyman_core_api.h for v17 release, in interests of
time. The other headers are primarily internal only and have many
deprecated functions also.
Will also leave the full automation of the documentation generation to a
future PR. The script will be there but it won't run during build for
now.
2024-03-20 12:56:08 +07:00
Marc Durdin
83ac78ab7c
chore(core): refresh API docs for 17.0
...
Fixes #10580 .
2024-03-13 09:23:07 -05:00
Steven R. Loomis
6d2ae221af
chore(core,developer,resources): ldml update out of techpreview 🙀
...
- further fixes
2024-03-04 08:21:45 -06:00
Steven R. Loomis
17a653fa19
chore(core): ldml update out of techpreview 🙀
...
- updates to support techpreview -> 45
- test changes
Fixes : #10900
2024-03-02 22:40:39 -06:00
Steven R. Loomis
8975a38109
chore(common): ldml update out of techpreview 🙀
...
- updates to support techpreview -> 45
Fixes : #10900
2024-03-02 22:40:38 -06:00
Steven R. Loomis
209717a24a
chore(core,developer): rename unicodeSet to uset in xml
...
chore(developer): rename unicodeSet to uset 🙀 #10657
2024-02-27 18:11:18 -06:00
Marc Durdin
fbaf5c40cd
Merge pull request #10797 from keymanapp/fix/developer/10737-keymancore-symbols
...
fix(developer): publish keymancore-1.dll symbols
2024-02-23 08:11:22 +07:00
Steven R. Loomis
b1d74ce809
chore(core): describe what is being tested in each stage
...
Fixes : #10505
2024-02-22 16:19:21 -06:00
Steven R. Loomis
993f5252e9
chore(core): describe what is being tested in each stage
...
Fixes : #10505
2024-02-22 13:15:46 -06:00
Marc Durdin
dc93c5495c
fix(developer): publish keymancore-1.dll symbols
...
Fixes #10737 .
Two parts to this: first, Keyman Core release build needs to generate
the .pdb file, and second, the build needs to put it and the .dll into
a place where the sentry-cli scan will find it.
2024-02-21 13:53:52 +07:00
Steven R. Loomis
9ef198ff19
chore(core): update sample ldml keyboard
...
Fixes : #10505
2024-02-20 12:47:25 -06:00
Steven R. Loomis
2ee402c2b8
Update core/src/ldml/ldml_transforms.cpp
...
Co-authored-by: Marc Durdin <marc@durdin.net>
2024-02-19 12:37:26 -06:00
Steven R. Loomis
6b229ffa14
fix(core): fix output append logic in any_group::apply_transform
...
- logic updating intermediate 'output' was incorrect
- update comments
- also replace size() with length() several places
Fixes #10736
2024-02-17 23:50:55 -06:00
Steven R. Loomis
ceb990e713
chore(core): more shuffling
...
For #10736
2024-02-16 18:27:35 -06:00
Steven R. Loomis
746af68afa
chore(core): shuffle transform matcher. re-enable failing case
...
For #10736
2024-02-16 12:49:19 -06:00
Steven R. Loomis
503f196e42
chore(core): update test case with TODO for known issue
...
For #10734
2024-02-15 16:27:26 -06:00
Steven R. Loomis
e7b31113a3
chore(core): remove obsolete TODOs. Temporary change to test.
...
- TODO: 10734 There's a bug in the matching still. Come back and fix this, but the crasher is fixed.
For #10734
2024-02-15 16:21:53 -06:00
Steven R. Loomis
5edb70f07a
fix(core): fix for ldml_transforms.cpp
...
For #10734
2024-02-15 15:26:30 -06:00
Steven R. Loomis
e099ffa3a1
chore(core): update ldml_test
...
- includes crasher from #10734
For #10505
2024-02-15 15:26:09 -06:00
Steven R. Loomis
5f01fca679
chore(core): create sample LDML keyboard that exercises effectively all functionality
...
- test keyboard was wrong
For #10505
2024-02-15 14:26:44 -06:00
Steven R. Loomis
e415f411e4
chore(core): create sample LDML keyboard that exercises effectively all functionality
...
- add some more functionality
For #10505
2024-02-15 14:26:44 -06:00
Steven R. Loomis
701291a7f7
chore(core): create sample LDML keyboard that exercises effectively all functionality
...
For #10505
2024-02-15 14:26:44 -06:00
Marc Durdin
64daa6182b
Merge pull request #10618 from keymanapp/fix/core/10615-10616-10617-core-surrogates-and-app-context-markers-and-memory-leak
...
fix(core): surrogate handling, markers in app context, and memory leak
2024-02-07 14:43:12 +11:00
Marc Durdin
bcc18bfe8d
Merge pull request #10607 from keymanapp/fix/core/10605-app-context-copy-strip-markers
...
fix(core): strip markers in `actions_update_app_context_nfu()`
2024-02-07 14:43:01 +11:00
Marc Durdin
6c4d5ff7fa
Merge pull request #10585 from keymanapp/fix/core/10582-km_core_state_get_actions-idempotency
...
fix(core): make `km_core_state_get_actions()` idempotent
2024-02-07 14:42:50 +11:00
Steven R. Loomis
889e9c1581
Merge pull request #10586 from keymanapp/feat/developer/10554-sometimes-no-norm
2024-02-06 21:38:39 -06:00