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

feat: Support complex word lists #5233

Merged
merged 4 commits into from Feb 19, 2024
Merged

feat: Support complex word lists #5233

merged 4 commits into from Feb 19, 2024

Conversation

Jason3S
Copy link
Collaborator

@Jason3S Jason3S commented Feb 8, 2024

fixes: #5222

The binary dictionary builder (TrieBlob) only supported word lists with 250 unique characters.

This was not an issue with the object based trie dictionaries used with the compiled dictionaries.

@Jason3S Jason3S force-pushed the dev-issue-5222 branch 2 times, most recently from 5e838c8 to b9e4997 Compare February 12, 2024 11:51
@Jason3S Jason3S marked this pull request as ready for review February 12, 2024 12:23
Copy link
Contributor

github-actions bot commented Feb 17, 2024

Performance Report

Rep Elapsed Delta Min Max Median Avg Count
AdaDoom3/AdaDoom3 12.056 -1.03% 11.703 12.463 11.933 11.944 9
alexiosc/megistos 29.880 3.73% 30.436 32.779 31.038 31.107 9
apollographql/apollo-server 6.884 -1.28% 6.431 6.911 6.797 6.715 10
aspnetboilerplate/aspnetboilerplate 23.459 -1.87% 22.662 23.610 23.027 23.082 9
aws-amplify/docs 32.699 -3.56% 30.759 33.636 31.575 32.030 9
Azure/azure-rest-api-specs 28.474 0.19% 27.635 30.838 28.527 28.926 9
bitjson/typescript-starter 0.886 -17.66% 0.729 0.780 0.753 0.754 9
caddyserver/caddy 10.515 -3.82% 10.047 10.585 10.128 10.202 9
canada-ca/open-source-logiciel-libre 0.943 -6.32% 0.860 0.975 0.887 0.894 9
chef/chef 21.288 -3.78% 20.254 21.738 20.513 20.684 9
django/django 50.228 3.36% 49.551 53.176 51.974 51.698 9
eslint/eslint 31.540 -1.04% 30.421 37.111 31.215 31.830 9
exonum/exonum 12.190 -5.41% 11.325 12.098 11.565 11.604 9
gitbucket/gitbucket 6.968 -1.12% 6.673 7.327 6.891 6.920 9
googleapis/google-cloud-cpp 372.940 -2.54% 351.866 395.651 363.717 369.496 10
graphql/express-graphql 0.904 -9.75% 0.790 0.861 0.824 0.823 10
graphql/graphql-js 6.569 -11.04% 5.715 6.074 5.916 5.905 10
graphql/graphql-relay-js 0.915 -15.17% 0.760 0.855 0.794 0.800 10
graphql/graphql-spec 1.948 -7.44% 1.764 1.858 1.813 1.815 10
iluwatar/java-design-patterns 30.933 -6.25% 28.115 31.184 29.114 29.209 9
ktaranov/sqlserver-kit 22.917 1.97% 22.906 23.861 23.379 23.385 9
liriliri/licia 8.259 -1.76% 7.733 8.438 8.116 8.144 9
MartinThoma/LaTeX-examples 13.724 -0.59% 13.406 13.886 13.643 13.649 9
mdx-js/mdx 3.871 -2.84% 3.681 3.911 3.765 3.764 9
microsoft/TypeScript-Website 17.298 4.62% 16.919 18.571 18.136 17.947 9
MicrosoftDocs/PowerShell-Docs 106.116 -1.59% 99.342 112.225 104.456 104.961 10
neovim/nvim-lspconfig 8.472 -2.33% 8.067 8.626 8.279 8.335 9
pagekit/pagekit 7.430 -0.48% 7.137 7.608 7.394 7.406 9
php/php-src 112.108 -1.67% 107.526 119.574 110.268 111.502 10
plasticrake/tplink-smarthome-api 1.605 -8.62% 1.438 1.514 1.478 1.474 9
prettier/prettier 12.933 0.85% 12.700 13.471 13.044 13.057 9
pycontribs/jira 2.506 -3.75% 2.392 2.500 2.415 2.437 9
RustPython/RustPython 13.899 -4.79% 12.691 13.596 13.264 13.295 9
shoelace-style/shoelace 7.238 0.90% 7.101 8.161 7.304 7.408 9
SoftwareBrothers/admin-bro 4.288 -6.20% 3.852 4.423 4.038 4.053 9
sveltejs/svelte 36.850 -7.01% 33.886 35.774 34.437 34.727 10
TheAlgorithms/Python 17.660 -7.38% 15.934 17.077 16.447 16.470 9
twbs/bootstrap 3.629 -0.09% 3.561 3.947 3.626 3.666 9
typescript-cheatsheets/react 2.151 -4.65% 2.031 2.141 2.055 2.073 9
typescript-eslint/typescript-eslint 7.826 1.14% 7.660 8.371 7.916 7.929 9
w3c/aria-practices 9.825 -3.18% 9.400 10.215 9.522 9.682 9
w3c/specberus 2.953 -4.52% 2.725 2.978 2.825 2.841 10
webdeveric/webpack-assets-manifest 0.843 -17.12% 0.676 0.750 0.720 0.717 9
webpack/webpack 11.771 1.52% 11.793 12.345 11.953 12.064 9
wireapp/wire-desktop 1.305 -8.42% 1.197 1.239 1.204 1.214 9
wireapp/wire-webapp 22.731 -8.49% 20.400 22.736 20.951 21.185 10

Note: the stats do not include the last value.

Latest Performance by Repo
Repo                           ┃                                           ┃ Rel Val ┃   Min ┃   Max
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋━━━━━━━━━╋━━━━━━━╋━━━━━━
AdaDoom3/AdaDoom3              ┃                   ┣━━●━━┫                 ┃   1.010 ┃ 0.981 ┃ 1.044
alexiosc/megistos              ┃                 ● ┣━━━━━━━┫               ┃   0.963 ┃ 0.981 ┃ 1.056
apollographql/apollo-server    ┃                ┣━━━━━●┫                   ┃   1.013 ┃ 0.946 ┃ 1.017
aspnetboilerplate/aspnetboiler ┃                   ┣━━━●┫                  ┃   1.019 ┃ 0.984 ┃ 1.025
aws-amplify/docs               ┃                  ┣━━━━━━●━━┫              ┃   1.036 ┃ 0.974 ┃ 1.065
Azure/azure-rest-api-specs     ┃                  ┣━━●━━━━━━━┫             ┃   0.998 ┃ 0.969 ┃ 1.081
bitjson/typescript-starter     ┃                  ┣━━━━━━┫             ●   ┃   1.177 ┃ 0.968 ┃ 1.035
caddyserver/caddy              ┃                    ┣━━━━●┫                ┃   1.038 ┃ 0.992 ┃ 1.045
canada-ca/open-source-logiciel ┃                  ┣━━━━━━━━●━━━┫           ┃   1.063 ┃ 0.969 ┃ 1.099
chef/chef                      ┃                    ┣━━━━●━┫               ┃   1.038 ┃ 0.987 ┃ 1.060
django/django                  ┃                ┣━●━━━━┫                   ┃   0.966 ┃ 0.953 ┃ 1.023
eslint/eslint                  ┃                  ┣━━━●━━━━━━━━━━━━━━━━━┫  ┃   1.010 ┃ 0.975 ┃ 1.189
exonum/exonum                  ┃                   ┣━━━━━━●                ┃   1.054 ┃ 0.979 ┃ 1.046
gitbucket/gitbucket            ┃                  ┣━━━●━━━━┫               ┃   1.011 ┃ 0.968 ┃ 1.063
googleapis/google-cloud-cpp    ┃                  ┣━━━━━●━━━━━┫            ┃   1.025 ┃ 0.967 ┃ 1.088
graphql/express-graphql        ┃                 ┣━━━━━━━━┫    ●           ┃   1.098 ┃ 0.959 ┃ 1.045
graphql/graphql-js             ┃                  ┣━━━━━┫       ●          ┃   1.110 ┃ 0.966 ┃ 1.027
graphql/graphql-relay-js       ┃                 ┣━━━━━━━━━━━┫      ●      ┃   1.152 ┃ 0.956 ┃ 1.076
graphql/graphql-spec           ┃                  ┣━━━━━┫   ●              ┃   1.074 ┃ 0.973 ┃ 1.025
iluwatar/java-design-patterns  ┃                  ┣━━━━━━━━●┫              ┃   1.062 ┃ 0.966 ┃ 1.071
ktaranov/sqlserver-kit         ┃                   ●━━━┫                   ┃   0.980 ┃ 0.980 ┃ 1.021
liriliri/licia                 ┃                ┣━━━━━━●━┫                 ┃   1.018 ┃ 0.953 ┃ 1.040
MartinThoma/LaTeX-examples     ┃                   ┣━━●┫                   ┃   1.006 ┃ 0.983 ┃ 1.018
mdx-js/mdx                     ┃                   ┣━━━━●┫                 ┃   1.028 ┃ 0.978 ┃ 1.039
microsoft/TypeScript-Website   ┃              ┣━●━━━━━━┫                   ┃   0.954 ┃ 0.933 ┃ 1.024
MicrosoftDocs/PowerShell-Docs  ┃                ┣━━━━━━●━━━━┫              ┃   1.016 ┃ 0.951 ┃ 1.074
neovim/nvim-lspconfig          ┃                  ┣━━━━●━┫                 ┃   1.023 ┃ 0.974 ┃ 1.042
pagekit/pagekit                ┃                 ┣━━━━●━┫                  ┃   1.005 ┃ 0.965 ┃ 1.029
php/php-src                    ┃                  ┣━━━━●━━━━━┫             ┃   1.017 ┃ 0.975 ┃ 1.084
plasticrake/tplink-smarthome-a ┃                  ┣━━━━┫      ●            ┃   1.086 ┃ 0.974 ┃ 1.024
prettier/prettier              ┃                  ┣━●━━━┫                  ┃   0.991 ┃ 0.974 ┃ 1.033
pycontribs/jira                ┃                    ┣━━━━●                 ┃   1.038 ┃ 0.991 ┃ 1.035
RustPython/RustPython          ┃                 ┣━━━━━━┫ ●                ┃   1.048 ┃ 0.957 ┃ 1.025
shoelace-style/shoelace        ┃                  ┣━●━━━━━━━━━━━━┫         ┃   0.991 ┃ 0.972 ┃ 1.117
SoftwareBrothers/admin-bro     ┃                ┣━━━━━━━━━━●━━━┫           ┃   1.062 ┃ 0.954 ┃ 1.095
sveltejs/svelte                ┃                   ┣━━━━━┫  ●              ┃   1.070 ┃ 0.984 ┃ 1.039
TheAlgorithms/Python           ┃                  ┣━━━━━━┫  ●              ┃   1.074 ┃ 0.969 ┃ 1.038
twbs/bootstrap                 ┃                   ┣━●━━━━━━━━┫            ┃   1.001 ┃ 0.982 ┃ 1.089
typescript-cheatsheets/react   ┃                    ┣━━━━┫●                ┃   1.047 ┃ 0.988 ┃ 1.042
typescript-eslint/typescript-e ┃                  ┣━●━━━━━━┫               ┃   0.989 ┃ 0.968 ┃ 1.057
w3c/aria-practices             ┃                    ┣━━━●━━━┫              ┃   1.032 ┃ 0.987 ┃ 1.073
w3c/specberus                  ┃                 ┣━━━━━━━━●                ┃   1.045 ┃ 0.964 ┃ 1.054
webdeveric/webpack-assets-mani ┃               ┣━━━━━━━━━┫            ●    ┃   1.171 ┃ 0.940 ┃ 1.042
webpack/webpack                ┃                   ●┣━━━┫                  ┃   0.985 ┃ 0.987 ┃ 1.033
wireapp/wire-desktop           ┃                    ┣━━━┫    ●             ┃   1.084 ┃ 0.994 ┃ 1.029
wireapp/wire-webapp            ┃                  ┣━━━━━━━━━━━●            ┃   1.085 ┃ 0.974 ┃ 1.085

fixes: #5222

The binary dictionary builder (TrieBlob) only supported word lists with 250 unique characters.

This was not an issue with the object based trie dictionaries used with the compiled dictionaries.
@Jason3S Jason3S merged commit 517e63c into main Feb 19, 2024
81 checks passed
@Jason3S Jason3S deleted the dev-issue-5222 branch February 19, 2024 09:15
Jason3S added a commit that referenced this pull request Feb 20, 2024
Jason3S added a commit that referenced this pull request Feb 22, 2024
@Jason3S Jason3S mentioned this pull request Feb 22, 2024
2 tasks
Jason3S added a commit that referenced this pull request Apr 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug]: TypeError: Cannot read properties of undefined (reading '0') in cspell-trie-lib
1 participant