Skip to content
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

Update tables to Unicode 16.0.0. #577

Merged
merged 3 commits into from
Oct 22, 2024
Merged

Update tables to Unicode 16.0.0. #577

merged 3 commits into from
Oct 22, 2024

Conversation

lrhn
Copy link
Member

@lrhn lrhn commented Oct 17, 2024

Updates tables to be generated from Unicode 16.0.0.

Addd license file change check. (Since the license file changed this time,
and it's something that one should check if it happens.)

Some clean-up and typo-fixes.

Documents that the BG9c rule from Unicode 15.10 is not supported.
(That would require more bits of information per character, information that the current table
builder does not have, likely doubling this size of the character property table when each character's
category no longer fits in 4 bits, and will require a correspondingly larger state machine with more states times more input character categories.)

Add license file change check.
(Since the license file changed this time,
and it's something that one should check if it happens.)

Some clean-up.
Documents that the BG9c rule from Unicode 15.10 is not supported.
(That would require more bits of information per character,
information that the current table builder does not have,
and a correspondingly larger state machine.)
Copy link

github-actions bot commented Oct 17, 2024

Package publishing

Package Version Status Publish tag (post-merge)
package:characters 1.4.0 ready to publish characters-v1.4.0
package:args 2.6.1-wip WIP (no publish necessary)
package:async 2.12.0 already published at pub.dev
package:collection 1.19.1 already published at pub.dev
package:convert 3.1.2 already published at pub.dev
package:crypto 3.0.6 already published at pub.dev
package:fixnum 1.1.1 already published at pub.dev
package:logging 1.3.0 already published at pub.dev
package:os_detect 2.0.2 already published at pub.dev
package:path 1.9.1 already published at pub.dev
package:platform 3.1.6 already published at pub.dev
package:typed_data 1.4.0 already published at pub.dev

Documentation at https://github.com/dart-lang/ecosystem/wiki/Publishing-automation.

Copy link

PR Health

Breaking changes ✔️
Package Change Current Version New Version Needed Version Looking good?
characters None 1.3.1 1.4.0 1.3.1 ✔️
Changelog Entry ✔️
Package Changed Files

Changes to files need to be accounted for in their respective changelogs.

Coverage ⚠️
File Coverage
pkgs/characters/lib/src/characters.dart 💚 100 %
pkgs/characters/lib/src/characters_impl.dart 💚 89 %
pkgs/characters/lib/src/grapheme_clusters/table.dart 💚 100 %
pkgs/characters/tool/benchmark.dart 💔 Not covered
pkgs/characters/tool/bin/generate_tables.dart 💔 Not covered
pkgs/characters/tool/bin/generate_tests.dart 💔 Not covered
pkgs/characters/tool/generate.dart 💔 Not covered
pkgs/characters/tool/src/args.dart 💔 Not covered
pkgs/characters/tool/src/data_files.dart 💔 Not covered
pkgs/characters/tool/src/indirect_table.dart 💔 Not covered
pkgs/characters/tool/src/shared.dart 💔 Not covered

This check for test coverage is informational (issues shown here will not fail the PR).

This check can be disabled by tagging the PR with skip-coverage-check.

API leaks ✔️

The following packages contain symbols visible in the public API, but not exported by the library. Export these symbols or remove them from your publicly visible API.

Package Leaked API symbols
License Headers ✔️
// Copyright (c) 2024, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
Files
no missing headers

All source files should start with a license header.

@@ -19,7 +19,7 @@ import "characters_impl.dart";
/// which allows iterating the independent characters in both directions,
/// but which also provides ways to select other ranges of characters
/// in different ways.
abstract class Characters implements Iterable<String> {
abstract interface class Characters implements Iterable<String> {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we move this to a separate commit? Or if not, please include a note about this change in the commit message. I think we should also include it in the changelog.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will revert for now.
It's not like it's useful to extend an empty class, but people do ... things.

The `Characters` class is an empty interface, but adding `interface` to it is potentially breaking, so not doing it as part of this PR.
@lrhn lrhn merged commit 2a436d5 into main Oct 22, 2024
17 checks passed
@lrhn lrhn deleted the unicode-16 branch October 22, 2024 12:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants