aboutsummaryrefslogtreecommitdiff
path: root/textproc
diff options
context:
space:
mode:
Diffstat (limited to 'textproc')
-rw-r--r--textproc/Makefile10
-rw-r--r--textproc/R-cran-DT/Makefile5
-rw-r--r--textproc/R-cran-DT/distinfo6
-rw-r--r--textproc/R-cran-rio/Makefile2
-rw-r--r--textproc/R-cran-rio/distinfo6
-rw-r--r--textproc/R-cran-rmarkdown/Makefile10
-rw-r--r--textproc/R-cran-rmarkdown/distinfo6
-rw-r--r--textproc/R-cran-stringr/Makefile11
-rw-r--r--textproc/R-cran-stringr/distinfo6
-rw-r--r--textproc/R-cran-vroom/Makefile19
-rw-r--r--textproc/R-cran-vroom/distinfo6
-rw-r--r--textproc/UCD/Makefile10
-rw-r--r--textproc/UCD/distinfo14
-rw-r--r--textproc/ansifilter/Makefile2
-rw-r--r--textproc/ansifilter/distinfo6
-rw-r--r--textproc/arianna/distinfo6
-rw-r--r--textproc/belr/Makefile12
-rw-r--r--textproc/belr/distinfo6
-rw-r--r--textproc/belr/pkg-plist3
-rw-r--r--textproc/cgrep/Makefile1
-rw-r--r--textproc/consul-template/Makefile3
-rw-r--r--textproc/consul-template/distinfo10
-rw-r--r--textproc/csview/Makefile56
-rw-r--r--textproc/csview/distinfo110
-rw-r--r--textproc/csvq/Makefile2
-rw-r--r--textproc/difftastic/Makefile6
-rw-r--r--textproc/difftastic/distinfo12
-rw-r--r--textproc/difftastic/files/patch-jemalloc16
-rw-r--r--textproc/discount/Makefile6
-rw-r--r--textproc/discount/distinfo6
-rw-r--r--textproc/discount/files/patch-clang1611
-rw-r--r--textproc/discount/files/patch-configure.inc10
-rw-r--r--textproc/discount/pkg-plist4
-rw-r--r--textproc/dyff/Makefile1
-rw-r--r--textproc/expat2/Makefile2
-rw-r--r--textproc/expat2/distinfo6
-rw-r--r--textproc/expat2/pkg-plist2
-rw-r--r--textproc/fzf/Makefile1
-rw-r--r--textproc/gh-grep/Makefile2
-rw-r--r--textproc/git-chglog/Makefile2
-rw-r--r--textproc/gitlab-elasticsearch-indexer/Makefile2
-rw-r--r--textproc/go-md2man/Makefile2
-rw-r--r--textproc/go-transifex-client/Makefile2
-rw-r--r--textproc/go-yq/Makefile2
-rw-r--r--textproc/go-yq/distinfo10
-rw-r--r--textproc/gojq/Makefile2
-rw-r--r--textproc/gron/Makefile2
-rw-r--r--textproc/harper/Makefile3
-rw-r--r--textproc/harper/Makefile.crates85
-rw-r--r--textproc/harper/distinfo176
-rw-r--r--textproc/highlight/Makefile9
-rw-r--r--textproc/hs-pandoc/Makefile115
-rw-r--r--textproc/hs-pandoc/distinfo232
-rw-r--r--textproc/hs-pandoc/pkg-plist1
-rw-r--r--textproc/htmldoc/Makefile2
-rw-r--r--textproc/htmldoc/distinfo6
-rw-r--r--textproc/htmltest/Makefile2
-rw-r--r--textproc/ibus-typing-booster/Makefile2
-rw-r--r--textproc/ibus-typing-booster/distinfo6
-rw-r--r--textproc/ibus-typing-booster/pkg-plist6
-rw-r--r--textproc/itstool/Makefile9
-rw-r--r--textproc/itstool/distinfo4
-rw-r--r--textproc/itstool/files/patch-PR1888
-rw-r--r--textproc/itstool/files/patch-itstool.in52
-rw-r--r--textproc/itstool/files/patch-py-lxml1490
-rw-r--r--textproc/jid/Makefile2
-rw-r--r--textproc/jql/Makefile39
-rw-r--r--textproc/jql/distinfo78
-rw-r--r--textproc/kepubify/Makefile2
-rw-r--r--textproc/kf6-kcodecs/distinfo6
-rw-r--r--textproc/kf6-sonnet/distinfo6
-rw-r--r--textproc/kf6-syntax-highlighting/distinfo6
-rw-r--r--textproc/kibana8/Makefile10
-rw-r--r--textproc/kompare/distinfo6
-rw-r--r--textproc/libjcat/Makefile3
-rw-r--r--textproc/libjcat/distinfo6
-rw-r--r--textproc/libkomparediff2/distinfo6
-rw-r--r--textproc/libxslt/Makefile3
-rw-r--r--textproc/link-grammar/Makefile12
-rw-r--r--textproc/link-grammar/distinfo6
-rw-r--r--textproc/link-grammar/pkg-plist5
-rw-r--r--textproc/linux-rl9-libxml2/Makefile4
-rw-r--r--textproc/linux-rl9-libxml2/distinfo18
-rw-r--r--textproc/luceneplusplus/Makefile6
-rw-r--r--textproc/markdownfmt/Makefile2
-rw-r--r--textproc/markdownpart/distinfo6
-rw-r--r--textproc/md2roff/Makefile2
-rw-r--r--textproc/mdtt/Makefile2
-rw-r--r--textproc/miller/Makefile5
-rw-r--r--textproc/miller/distinfo10
-rw-r--r--textproc/minify/Makefile3
-rw-r--r--textproc/minify/distinfo10
-rw-r--r--textproc/minixmlto/Makefile2
-rw-r--r--textproc/modlogan/Makefile2
-rw-r--r--textproc/modlogan/pkg-plist6
-rw-r--r--textproc/nerdlog/Makefile2
-rw-r--r--textproc/obsidian/Makefile2
-rw-r--r--textproc/opensearch-dashboards210/Makefile15
-rw-r--r--textproc/opensearch-dashboards210/distinfo3
-rw-r--r--textproc/opensearch-dashboards213/Makefile15
-rw-r--r--textproc/opensearch-dashboards213/distinfo3
-rw-r--r--textproc/opensearch-dashboards216/Makefile85
-rw-r--r--textproc/opensearch-dashboards216/distinfo3
-rw-r--r--textproc/opensearch-dashboards216/files/opensearch-dashboards.in79
-rw-r--r--textproc/opensearch-dashboards216/files/pkg-deinstall.in20
-rw-r--r--textproc/opensearch-dashboards216/pkg-descr3
-rw-r--r--textproc/otree/Makefile13
-rw-r--r--textproc/otree/distinfo22
-rw-r--r--textproc/ov/Makefile2
-rw-r--r--textproc/p5-BibTeX-Parser/Makefile2
-rw-r--r--textproc/p5-BibTeX-Parser/distinfo6
-rw-r--r--textproc/p5-BibTeX-Parser/files/patch-lib_BibTeX_Parser_Author.pm11
-rw-r--r--textproc/p5-BibTeX-Parser/files/patch-lib_BibTeX_Parser_Entry.pm11
-rw-r--r--textproc/p5-PDF-API2/Makefile2
-rw-r--r--textproc/p5-PDF-API2/distinfo6
-rw-r--r--textproc/p5-PPIx-Regexp/Makefile7
-rw-r--r--textproc/p5-PPIx-Regexp/distinfo6
-rw-r--r--textproc/peco/Makefile2
-rw-r--r--textproc/pup/Makefile2
-rw-r--r--textproc/py-TatSu/Makefile4
-rw-r--r--textproc/py-TatSu/distinfo6
-rw-r--r--textproc/py-charset-normalizer/Makefile2
-rw-r--r--textproc/py-charset-normalizer/distinfo6
-rw-r--r--textproc/py-charset-normalizer/files/patch-pyproject.toml9
-rw-r--r--textproc/py-citeproc-py/Makefile4
-rw-r--r--textproc/py-cyclonedx-python-lib/Makefile3
-rw-r--r--textproc/py-docxcompose/Makefile4
-rw-r--r--textproc/py-docxtpl/Makefile4
-rw-r--r--textproc/py-elastic-transport/Makefile26
-rw-r--r--textproc/py-elastic-transport/distinfo3
-rw-r--r--textproc/py-elastic-transport/pkg-descr4
-rw-r--r--textproc/py-elasticsearch/Makefile13
-rw-r--r--textproc/py-elasticsearch/distinfo6
-rw-r--r--textproc/py-elasticsearch7/Makefile44
-rw-r--r--textproc/py-elasticsearch7/distinfo3
-rw-r--r--textproc/py-elasticsearch7/pkg-descr15
-rw-r--r--textproc/py-elementpath/Makefile4
-rw-r--r--textproc/py-enchant/Makefile4
-rw-r--r--textproc/py-enchant/distinfo6
-rw-r--r--textproc/py-enchant/pkg-plist47
-rw-r--r--textproc/py-feedparser/Makefile4
-rw-r--r--textproc/py-feedparser/distinfo6
-rw-r--r--textproc/py-humps/Makefile23
-rw-r--r--textproc/py-humps/distinfo3
-rw-r--r--textproc/py-humps/pkg-descr2
-rw-r--r--textproc/py-jiter/Makefile5
-rw-r--r--textproc/py-jiter/Makefile.crates113
-rw-r--r--textproc/py-jiter/distinfo232
-rw-r--r--textproc/py-json-repair/Makefile11
-rw-r--r--textproc/py-json-repair/distinfo6
-rw-r--r--textproc/py-json-repair/files/patch-pyproject.toml6
-rw-r--r--textproc/py-markdown-it-py/Makefile5
-rw-r--r--textproc/py-markdown-it-py/distinfo6
-rw-r--r--textproc/py-markdown/Makefile2
-rw-r--r--textproc/py-markdown/distinfo6
-rw-r--r--textproc/py-marko/Makefile2
-rw-r--r--textproc/py-marko/distinfo6
-rw-r--r--textproc/py-markups/Makefile4
-rw-r--r--textproc/py-mathics-pygments/Makefile5
-rw-r--r--textproc/py-mdformat/Makefile7
-rw-r--r--textproc/py-mdformat/files/patch-pyproject.toml13
-rw-r--r--textproc/py-mdit-py-plugins/Makefile6
-rw-r--r--textproc/py-mdit-py-plugins/distinfo6
-rw-r--r--textproc/py-mistune/Makefile2
-rw-r--r--textproc/py-mistune/distinfo6
-rw-r--r--textproc/py-mkdocs-autorefs/Makefile2
-rw-r--r--textproc/py-mkdocs-autorefs/distinfo6
-rw-r--r--textproc/py-myst-parser/Makefile3
-rw-r--r--textproc/py-myst-parser/files/patch-pyproject.toml10
-rw-r--r--textproc/py-ntc-templates/Makefile2
-rw-r--r--textproc/py-ntc-templates/distinfo6
-rw-r--r--textproc/py-ocrmypdf/Makefile3
-rw-r--r--textproc/py-ocrmypdf/distinfo6
-rw-r--r--textproc/py-parsel/Makefile4
-rw-r--r--textproc/py-petl/Makefile4
-rw-r--r--textproc/py-pikepdf/Makefile4
-rw-r--r--textproc/py-pyexcel-ezodf/Makefile4
-rw-r--r--textproc/py-pyexcel-ods3/Makefile4
-rw-r--r--textproc/py-pylatexenc/Makefile28
-rw-r--r--textproc/py-pylatexenc/distinfo3
-rw-r--r--textproc/py-pylatexenc/pkg-descr2
-rw-r--r--textproc/py-python-docx/Makefile4
-rw-r--r--textproc/py-python-pptx/Makefile4
-rw-r--r--textproc/py-python-ulid/Makefile2
-rw-r--r--textproc/py-python-ulid/distinfo6
-rw-r--r--textproc/py-smile/Makefile46
-rw-r--r--textproc/py-smile/distinfo3
-rw-r--r--textproc/py-smile/pkg-descr1
-rw-r--r--textproc/py-smile/pkg-plist82
-rw-r--r--textproc/py-sphinx-autobuild/Makefile6
-rw-r--r--textproc/py-sphinx-autobuild/distinfo6
-rw-r--r--textproc/py-sphinx-intl/Makefile11
-rw-r--r--textproc/py-sphinx-intl/distinfo6
-rw-r--r--textproc/py-sphinx-intl/files/patch-pyproject.toml21
-rw-r--r--textproc/py-sphinx-material/Makefile4
-rw-r--r--textproc/py-sphinx-sitemap/Makefile2
-rw-r--r--textproc/py-sphinx-sitemap/distinfo6
-rw-r--r--textproc/py-sphinx-tabs/Makefile4
-rw-r--r--textproc/py-tiktoken/Makefile3
-rw-r--r--textproc/py-tiktoken/Makefile.crates48
-rw-r--r--textproc/py-tiktoken/distinfo102
-rw-r--r--textproc/py-tokenizer/Makefile3
-rw-r--r--textproc/py-tokenizer/distinfo6
-rw-r--r--textproc/py-tokenizers/Makefile12
-rw-r--r--textproc/py-tokenizers/Makefile.crates55
-rw-r--r--textproc/py-tokenizers/distinfo116
-rw-r--r--textproc/py-toronado/Makefile4
-rw-r--r--textproc/py-tree-sitter-language-pack/Makefile28
-rw-r--r--textproc/py-tree-sitter-language-pack/distinfo3
-rw-r--r--textproc/py-tree-sitter-language-pack/files/patch-pyproject.toml35
-rw-r--r--textproc/py-tree-sitter-language-pack/files/patch-setup.py50
-rw-r--r--textproc/py-tree-sitter-language-pack/files/patch-tree__sitter__language__pack_____init____.py39
-rw-r--r--textproc/py-tree-sitter-language-pack/pkg-descr2
-rw-r--r--textproc/py-xmldiff/Makefile4
-rw-r--r--textproc/qrcodegen/Makefile43
-rw-r--r--textproc/qrcodegen/files/qrcodegen.in1
-rw-r--r--textproc/riffdiff/Makefile3
-rw-r--r--textproc/riffdiff/distinfo6
-rw-r--r--textproc/rubygem-actiontext71/Makefile2
-rw-r--r--textproc/rubygem-actiontext71/distinfo6
-rw-r--r--textproc/rubygem-actiontext72/Makefile2
-rw-r--r--textproc/rubygem-actiontext72/distinfo6
-rw-r--r--textproc/rubygem-actiontext80/Makefile2
-rw-r--r--textproc/rubygem-actiontext80/distinfo6
-rw-r--r--textproc/rubygem-asciidoctor-pdf/Makefile4
-rw-r--r--textproc/rubygem-commonmarker/Makefile3
-rw-r--r--textproc/rubygem-commonmarker/Makefile.crates154
-rw-r--r--textproc/rubygem-commonmarker/distinfo314
-rw-r--r--textproc/rubygem-cucumber-gherkin/Makefile2
-rw-r--r--textproc/rubygem-cucumber-gherkin/distinfo6
-rw-r--r--textproc/rubygem-cucumber-gherkin32/Makefile25
-rw-r--r--textproc/rubygem-cucumber-gherkin32/distinfo3
-rw-r--r--textproc/rubygem-cucumber-gherkin32/pkg-descr1
-rw-r--r--textproc/rubygem-cucumber-html-formatter/Makefile2
-rw-r--r--textproc/rubygem-cucumber-html-formatter/distinfo6
-rw-r--r--textproc/rubygem-elasticsearch-api/Makefile2
-rw-r--r--textproc/rubygem-elasticsearch-api/distinfo6
-rw-r--r--textproc/rubygem-elasticsearch-api8/Makefile2
-rw-r--r--textproc/rubygem-elasticsearch-api8/distinfo6
-rw-r--r--textproc/rubygem-elasticsearch-model/Makefile3
-rw-r--r--textproc/rubygem-elasticsearch-model/distinfo6
-rw-r--r--textproc/rubygem-elasticsearch-persistence/Makefile4
-rw-r--r--textproc/rubygem-elasticsearch-persistence/distinfo6
-rw-r--r--textproc/rubygem-elasticsearch-rails/Makefile2
-rw-r--r--textproc/rubygem-elasticsearch-rails/distinfo6
-rw-r--r--textproc/rubygem-elasticsearch/Makefile2
-rw-r--r--textproc/rubygem-elasticsearch/distinfo6
-rw-r--r--textproc/rubygem-elasticsearch8/Makefile2
-rw-r--r--textproc/rubygem-elasticsearch8/distinfo6
-rw-r--r--textproc/rubygem-hikidoc/Makefile2
-rw-r--r--textproc/rubygem-hikidoc/distinfo5
-rw-r--r--textproc/rubygem-libxml-ruby/Makefile3
-rw-r--r--textproc/rubygem-libxml-ruby/distinfo6
-rw-r--r--textproc/rubygem-rexml/Makefile2
-rw-r--r--textproc/rubygem-rexml/distinfo6
-rw-r--r--textproc/sift/Makefile8
-rw-r--r--textproc/sift/distinfo14
-rw-r--r--textproc/sigil/Makefile4
-rw-r--r--textproc/sigil/distinfo6
-rw-r--r--textproc/sttr/Makefile1
-rw-r--r--textproc/television/Makefile10
-rw-r--r--textproc/television/pkg-plist19
-rw-r--r--textproc/textnote/Makefile2
-rw-r--r--textproc/textql/Makefile2
-rw-r--r--textproc/translate-toolkit/Makefile4
-rw-r--r--textproc/trdsql/Makefile2
-rw-r--r--textproc/tree-sitter-grammars/Makefile4
-rw-r--r--textproc/tree-sitter-grammars/files/patch-src_main.rs8
-rw-r--r--textproc/tui-journal/Makefile3
-rw-r--r--textproc/tui-journal/Makefile.crates44
-rw-r--r--textproc/tui-journal/distinfo94
-rw-r--r--textproc/uni/Makefile2
-rw-r--r--textproc/up/Makefile2
-rw-r--r--textproc/vale/Makefile2
-rw-r--r--textproc/vgrep/Makefile2
-rw-r--r--textproc/xan/Makefile3
-rw-r--r--textproc/xan/Makefile.crates2
-rw-r--r--textproc/xan/distinfo10
-rw-r--r--textproc/xml2rfc/Makefile5
-rw-r--r--textproc/xml2rfc/distinfo6
-rw-r--r--textproc/xmlto/Makefile4
-rw-r--r--textproc/yamlfmt/Makefile2
-rw-r--r--textproc/yelp-tools/Makefile4
-rw-r--r--textproc/ytt/Makefile2
284 files changed, 3761 insertions, 2030 deletions
diff --git a/textproc/Makefile b/textproc/Makefile
index b4e20caed81a..228e93c7a42a 100644
--- a/textproc/Makefile
+++ b/textproc/Makefile
@@ -525,9 +525,6 @@
SUBDIR += openjade
SUBDIR += opensearch
SUBDIR += opensearch-dashboards
- SUBDIR += opensearch-dashboards210
- SUBDIR += opensearch-dashboards213
- SUBDIR += opensearch-dashboards216
SUBDIR += opensearch-dashboards219
SUBDIR += opensearch13
SUBDIR += opensearch210
@@ -1375,6 +1372,7 @@
SUBDIR += py-dparse
SUBDIR += py-duecredit
SUBDIR += py-ebcdic
+ SUBDIR += py-elastic-transport
SUBDIR += py-elasticsearch
SUBDIR += py-elasticsearch-async
SUBDIR += py-elasticsearch-curator
@@ -1382,6 +1380,7 @@
SUBDIR += py-elasticsearch-dsl6
SUBDIR += py-elasticsearch5
SUBDIR += py-elasticsearch6
+ SUBDIR += py-elasticsearch7
SUBDIR += py-elementpath
SUBDIR += py-emeraldtree
SUBDIR += py-empy
@@ -1418,6 +1417,7 @@
SUBDIR += py-html2text
SUBDIR += py-htmlmin2
SUBDIR += py-humanfriendly
+ SUBDIR += py-humps
SUBDIR += py-hunspell
SUBDIR += py-ini2toml
SUBDIR += py-interegular
@@ -1552,6 +1552,7 @@
SUBDIR += py-pygtail
SUBDIR += py-pyhamcrest
SUBDIR += py-pykwalify
+ SUBDIR += py-pylatexenc
SUBDIR += py-pylons-sphinx-themes
SUBDIR += py-pyls-spyder
SUBDIR += py-pymdown-extensions
@@ -1611,6 +1612,7 @@
SUBDIR += py-sentencepiece
SUBDIR += py-simplebayes
SUBDIR += py-smartypants
+ SUBDIR += py-smile
SUBDIR += py-snowballstemmer
SUBDIR += py-spacy
SUBDIR += py-spacy-legacy
@@ -1703,6 +1705,7 @@
SUBDIR += py-towncrier
SUBDIR += py-translationstring
SUBDIR += py-transpopy
+ SUBDIR += py-tree-sitter-language-pack
SUBDIR += py-ttp
SUBDIR += py-ttp-templates
SUBDIR += py-typogrify
@@ -1828,6 +1831,7 @@
SUBDIR += rubygem-cucumber-gherkin
SUBDIR += rubygem-cucumber-gherkin27
SUBDIR += rubygem-cucumber-gherkin30
+ SUBDIR += rubygem-cucumber-gherkin32
SUBDIR += rubygem-cucumber-html-formatter
SUBDIR += rubygem-dartsass
SUBDIR += rubygem-diff-lcs
diff --git a/textproc/R-cran-DT/Makefile b/textproc/R-cran-DT/Makefile
index 688245dcd10f..cb788fd2409a 100644
--- a/textproc/R-cran-DT/Makefile
+++ b/textproc/R-cran-DT/Makefile
@@ -1,5 +1,5 @@
PORTNAME= DT
-PORTVERSION= 0.33
+PORTVERSION= 0.34.0
CATEGORIES= textproc
DISTNAME= ${PORTNAME}_${PORTVERSION}
@@ -7,12 +7,11 @@ MAINTAINER= tota@FreeBSD.org
COMMENT= Wrapper of the JavaScript Library 'DataTables'
WWW= https://cran.r-project.org/web/packages/DT/
-LICENSE= GPLv3
+LICENSE= MIT
RUN_DEPENDS= R-cran-crosstalk>0:www/R-cran-crosstalk \
R-cran-htmltools>=0.3.6:textproc/R-cran-htmltools \
R-cran-htmlwidgets>=1.3:www/R-cran-htmlwidgets \
- R-cran-httpuv>0:www/R-cran-httpuv \
R-cran-jquerylib>0:www/R-cran-jquerylib \
R-cran-jsonlite>=0.9.16:converters/R-cran-jsonlite \
R-cran-magrittr>0:devel/R-cran-magrittr \
diff --git a/textproc/R-cran-DT/distinfo b/textproc/R-cran-DT/distinfo
index 63a328c81193..c5ac2185737f 100644
--- a/textproc/R-cran-DT/distinfo
+++ b/textproc/R-cran-DT/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1712411292
-SHA256 (DT_0.33.tar.gz) = e145dadb1ce3db7c837f4313a8b5615b5b8ae63063ec2df93e528529717b27b8
-SIZE (DT_0.33.tar.gz) = 1675674
+TIMESTAMP = 1757149833
+SHA256 (DT_0.34.0.tar.gz) = 8862025ef26af65b53f072adb1d133c25c5f96a812e7ae0aa822baa71249f1f2
+SIZE (DT_0.34.0.tar.gz) = 1664306
diff --git a/textproc/R-cran-rio/Makefile b/textproc/R-cran-rio/Makefile
index 1bd67466b49d..f53837fe40e9 100644
--- a/textproc/R-cran-rio/Makefile
+++ b/textproc/R-cran-rio/Makefile
@@ -1,5 +1,5 @@
PORTNAME= rio
-DISTVERSION= 1.2.3
+DISTVERSION= 1.2.4
CATEGORIES= textproc
DISTNAME= ${PORTNAME}_${DISTVERSION}
diff --git a/textproc/R-cran-rio/distinfo b/textproc/R-cran-rio/distinfo
index e1f1d89e4359..428dc6e55e8b 100644
--- a/textproc/R-cran-rio/distinfo
+++ b/textproc/R-cran-rio/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1727327933
-SHA256 (rio_1.2.3.tar.gz) = 438479d4b47f63dcffdc092e536ca3dfb1402ade8ffa1645fe716aa77f82d6aa
-SIZE (rio_1.2.3.tar.gz) = 531681
+TIMESTAMP = 1759114542
+SHA256 (rio_1.2.4.tar.gz) = bbc46e204fa3401e785e93b4dd55ab460d63df67b91a6e86d24aa84947dd43e2
+SIZE (rio_1.2.4.tar.gz) = 538413
diff --git a/textproc/R-cran-rmarkdown/Makefile b/textproc/R-cran-rmarkdown/Makefile
index 4cc90b7222d1..2af495452018 100644
--- a/textproc/R-cran-rmarkdown/Makefile
+++ b/textproc/R-cran-rmarkdown/Makefile
@@ -1,15 +1,16 @@
PORTNAME= rmarkdown
-DISTVERSION= 2.29
+DISTVERSION= 2.30
CATEGORIES= textproc
DISTNAME= ${PORTNAME}_${PORTVERSION}
MAINTAINER= eduardo@FreeBSD.org
COMMENT= Dynamic Documents for R
-WWW= https://cran.r-project.org/web/packages/rmarkdown/
+WWW= https://cran.r-project.org/package=rmarkdown
LICENSE= GPLv3
-CRAN_DEPENDS= R-cran-bslib>=0.2.5.1:www/R-cran-bslib \
+RUN_DEPENDS= hs-pandoc>=1.14:textproc/hs-pandoc \
+ R-cran-bslib>=0.2.5.1:www/R-cran-bslib \
R-cran-evaluate>=0.13:devel/R-cran-evaluate \
R-cran-fontawesome>=0.5.0:devel/R-cran-fontawesome \
R-cran-htmltools>=0.5.1:textproc/R-cran-htmltools \
@@ -20,9 +21,6 @@ CRAN_DEPENDS= R-cran-bslib>=0.2.5.1:www/R-cran-bslib \
R-cran-tinytex>=0.31:print/R-cran-tinytex \
R-cran-xfun>=0.36:misc/R-cran-xfun \
R-cran-yaml>=2.1.19:textproc/R-cran-yaml
-BUILD_DEPENDS= ${CRAN_DEPENDS}
-RUN_DEPENDS= ${CRAN_DEPENDS} \
- hs-pandoc>=1.14:textproc/hs-pandoc
TEST_DEPENDS= R-cran-testthat>0:devel/R-cran-testthat
USES= cran:auto-plist
diff --git a/textproc/R-cran-rmarkdown/distinfo b/textproc/R-cran-rmarkdown/distinfo
index 543b172965f9..a6873fa7cc6d 100644
--- a/textproc/R-cran-rmarkdown/distinfo
+++ b/textproc/R-cran-rmarkdown/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1730810182
-SHA256 (rmarkdown_2.29.tar.gz) = 6662ac85316c869caad6e3b95468cad97f6eef106d47b066db8d40c05a490928
-SIZE (rmarkdown_2.29.tar.gz) = 2194660
+TIMESTAMP = 1759129367
+SHA256 (rmarkdown_2.30.tar.gz) = 4d2ad3d230c1a9ded394dff76cbaf83a66bb8d96493b8d11cd56be78afa5a338
+SIZE (rmarkdown_2.30.tar.gz) = 2200008
diff --git a/textproc/R-cran-stringr/Makefile b/textproc/R-cran-stringr/Makefile
index 3cc747260f68..8ac1ac665a17 100644
--- a/textproc/R-cran-stringr/Makefile
+++ b/textproc/R-cran-stringr/Makefile
@@ -1,24 +1,23 @@
PORTNAME= stringr
-PORTVERSION= 1.5.1
+DISTVERSION= 1.5.2
CATEGORIES= textproc
-DISTNAME= ${PORTNAME}_${PORTVERSION}
+DISTNAME= ${PORTNAME}_${DISTVERSION}
MAINTAINER= uzsolt@FreeBSD.org
COMMENT= Make it easier to work with strings
WWW= https://cran.r-project.org/web/packages/stringr/
LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
-CRAN_DEPENDS= R-cran-cli>0:devel/R-cran-cli \
+RUN_DEPENDS= R-cran-cli>0:devel/R-cran-cli \
R-cran-glue>=1.6.1:devel/R-cran-glue \
R-cran-lifecycle>=1.0.3:devel/R-cran-lifecycle \
R-cran-magrittr>0:devel/R-cran-magrittr \
R-cran-rlang>=1.0.0:devel/R-cran-rlang \
R-cran-stringi>=1.5.3:textproc/R-cran-stringi \
R-cran-vctrs>0:devel/R-cran-vctrs
-BUILD_DEPENDS= ${CRAN_DEPENDS}
-RUN_DEPENDS= ${CRAN_DEPENDS}
-USES= cran:auto-plist
+USES= cran:auto-plist
.include <bsd.port.mk>
diff --git a/textproc/R-cran-stringr/distinfo b/textproc/R-cran-stringr/distinfo
index 9934aca75fea..006bfa4f63b7 100644
--- a/textproc/R-cran-stringr/distinfo
+++ b/textproc/R-cran-stringr/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1702216442
-SHA256 (stringr_1.5.1.tar.gz) = a4adec51bb3f04214b1d8ef40d3a58949f21b1497cbeaf2ba552e0891eef45de
-SIZE (stringr_1.5.1.tar.gz) = 176599
+TIMESTAMP = 1757509235
+SHA256 (stringr_1.5.2.tar.gz) = d410ecb4f19c3fd07bb32142d5d0286e2f19f1533ba86243776326a4e73837a3
+SIZE (stringr_1.5.2.tar.gz) = 178018
diff --git a/textproc/R-cran-vroom/Makefile b/textproc/R-cran-vroom/Makefile
index c40ee2321f9a..e9f803f51b85 100644
--- a/textproc/R-cran-vroom/Makefile
+++ b/textproc/R-cran-vroom/Makefile
@@ -1,11 +1,11 @@
PORTNAME= vroom
-DISTVERSION= 1.6.5
+DISTVERSION= 1.6.6
CATEGORIES= textproc
DISTNAME= ${PORTNAME}_${DISTVERSION}
MAINTAINER= eduardo@FreeBSD.org
COMMENT= Read and Write Rectangular Text Data Quickly
-WWW= https://cran.r-project.org/web/packages/vroom/
+WWW= https://cran.r-project.org/package=vroom
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
@@ -26,10 +26,23 @@ CRAN_DEPENDS= R-cran-bit64>0:devel/R-cran-bit64 \
R-cran-withr>0:devel/R-cran-withr
BUILD_DEPENDS= ${CRAN_DEPENDS}
RUN_DEPENDS= ${CRAN_DEPENDS}
-TEST_DEPENDS= R-cran-testthat>0:devel/R-cran-testthat
+TEST_DEPENDS= R-cran-dplyr>0:math/R-cran-dplyr \
+ R-cran-forcats>0:math/R-cran-forcats \
+ R-cran-ggplot2>0:graphics/R-cran-ggplot2 \
+ R-cran-knitr>0:print/R-cran-knitr \
+ R-cran-testthat>0:devel/R-cran-testthat \
+ R-cran-tidyr>0:devel/R-cran-tidyr
USES= compiler:c++11-lang cran:auto-plist,compiles shebangfix
SHEBANG_FILES= inst/bench/*.sh
+pre-test:
+
+# Test depends not ported yet
+.for pkg in patchwork bench
+ @${LOCALBASE}/bin/Rscript -e 'install.packages("${pkg}", \
+ repos = "https://cloud.r-project.org")'
+.endfor
+
.include <bsd.port.mk>
diff --git a/textproc/R-cran-vroom/distinfo b/textproc/R-cran-vroom/distinfo
index 63f4f73b0802..3c6e7b257aa3 100644
--- a/textproc/R-cran-vroom/distinfo
+++ b/textproc/R-cran-vroom/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1702122517
-SHA256 (vroom_1.6.5.tar.gz) = 7bdca21e58c9c5049d7445d182f59fd399193cb2f4318d083de0a559ec9b5761
-SIZE (vroom_1.6.5.tar.gz) = 750416
+TIMESTAMP = 1758395280
+SHA256 (vroom_1.6.6.tar.gz) = 855b7ef11ba8b41624064d7b0327b4bd6a02024fb9c4801a09d38224a10980de
+SIZE (vroom_1.6.6.tar.gz) = 626219
diff --git a/textproc/UCD/Makefile b/textproc/UCD/Makefile
index 56bb990be3b6..53f69d63f43a 100644
--- a/textproc/UCD/Makefile
+++ b/textproc/UCD/Makefile
@@ -1,11 +1,11 @@
PORTNAME= UCD
-PORTVERSION= 16.0.0 # must sync with deskutils/gucharmap
+PORTVERSION= 17.0.0 # must sync with deskutils/gucharmap
PORTEPOCH= 1
CATEGORIES= textproc
-MASTER_SITES= https://www.unicode.org/Public/zipped/${DISTVERSION}/:src \
- https://raw.githubusercontent.com/unicode-org/unihan-database/0da97601945f29dbd34ebc1a2f3bbd28bf3f8462/:lic
+MASTER_SITES= https://www.unicode.org/Public/${PORTVERSION}/${PORTNAME:tl}/:src \
+ https://raw.githubusercontent.com/unicode-org/unihan-database/12da7b1f81ef6055b43d640095602e31bac4a17b/:lic
DISTFILES= ${PORTNAME}.zip:src \
- LICENSE.md:lic
+ LICENSE:lic
DIST_SUBDIR= unicode-${PORTNAME}/${DISTVERSION}
EXTRACT_ONLY=
@@ -15,7 +15,7 @@ WWW= https://unicode.org/ucd/
LICENSE= Unicode_License_Agreement
LICENSE_NAME= Unicode License Agreement
-LICENSE_FILE= ${_DISTDIR}/LICENSE.md
+LICENSE_FILE= ${_DISTDIR}/LICENSE
LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
OPTIONS_DEFINE= HAN
diff --git a/textproc/UCD/distinfo b/textproc/UCD/distinfo
index dabf957808ec..f05121e8cb1c 100644
--- a/textproc/UCD/distinfo
+++ b/textproc/UCD/distinfo
@@ -1,7 +1,7 @@
-TIMESTAMP = 1736283190
-SHA256 (unicode-UCD/16.0.0/UCD.zip) = c86dd81f2b14a43b0cc064aa5f89aa7241386801e35c59c7984e579832634eb2
-SIZE (unicode-UCD/16.0.0/UCD.zip) = 9020779
-SHA256 (unicode-UCD/16.0.0/LICENSE.md) = 5d43f530cda324f2cb937c705347d7e8f4dfc2840eca437bf083423f5b571edc
-SIZE (unicode-UCD/16.0.0/LICENSE.md) = 2360
-SHA256 (unicode-UCD/16.0.0/Unihan.zip) = b8f000df69de7828d21326a2ffea462b04bc7560022989f7cc704f10521ef3e0
-SIZE (unicode-UCD/16.0.0/Unihan.zip) = 8382485
+TIMESTAMP = 1757592047
+SHA256 (unicode-UCD/17.0.0/UCD.zip) = 2066d1909b2ea93916ce092da1c0ee4808ea3ef8407c94b4f14f5b7eb263d28e
+SIZE (unicode-UCD/17.0.0/UCD.zip) = 9101877
+SHA256 (unicode-UCD/17.0.0/LICENSE) = 3c6db60b8370017760844db801630c623fcac17fbf481b11f65cf7586996bf52
+SIZE (unicode-UCD/17.0.0/LICENSE) = 2033
+SHA256 (unicode-UCD/17.0.0/Unihan.zip) = f7a48b2b545acfaa77b2d607ae28747404ce02baefee16396c5d2d7a8ef34b5e
+SIZE (unicode-UCD/17.0.0/Unihan.zip) = 8518517
diff --git a/textproc/ansifilter/Makefile b/textproc/ansifilter/Makefile
index be876315d05c..d13aaa67f863 100644
--- a/textproc/ansifilter/Makefile
+++ b/textproc/ansifilter/Makefile
@@ -1,5 +1,5 @@
PORTNAME= ansifilter
-DISTVERSION= 2.21
+DISTVERSION= 2.22
CATEGORIES= textproc
MASTER_SITES= http://www.andre-simon.de/zip/
diff --git a/textproc/ansifilter/distinfo b/textproc/ansifilter/distinfo
index 8e04d1e25bdb..aa2bfcd00f3b 100644
--- a/textproc/ansifilter/distinfo
+++ b/textproc/ansifilter/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1725800187
-SHA256 (ansifilter-2.21.tar.bz2) = 5ea7cfdfd0752d5a169259da005c18b9037628036fd89d8b82624bacec9c1390
-SIZE (ansifilter-2.21.tar.bz2) = 434994
+TIMESTAMP = 1757678751
+SHA256 (ansifilter-2.22.tar.bz2) = ccff41ca740b813bf9103868b5000f4243d32a75304ea929a214c49b943ecc93
+SIZE (ansifilter-2.22.tar.bz2) = 435974
diff --git a/textproc/arianna/distinfo b/textproc/arianna/distinfo
index d88dcfc1d8ae..43c2435e85f0 100644
--- a/textproc/arianna/distinfo
+++ b/textproc/arianna/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754646594
-SHA256 (KDE/release-service/25.08.0/arianna-25.08.0.tar.xz) = d32b5090bbe7293c6a1c51c04abdb969480f5b6bfebe41e8689ccd1c8e6bba0e
-SIZE (KDE/release-service/25.08.0/arianna-25.08.0.tar.xz) = 1183620
+TIMESTAMP = 1757410294
+SHA256 (KDE/release-service/25.08.1/arianna-25.08.1.tar.xz) = 181ceee8e3d1e5050862dfdc9fe91552ee37ca29eebfd600b34b015aa4424183
+SIZE (KDE/release-service/25.08.1/arianna-25.08.1.tar.xz) = 1183412
diff --git a/textproc/belr/Makefile b/textproc/belr/Makefile
index 8191fd9dd071..4ebcab9b8ead 100644
--- a/textproc/belr/Makefile
+++ b/textproc/belr/Makefile
@@ -1,5 +1,5 @@
PORTNAME= belr
-DISTVERSION= 5.4.24
+DISTVERSION= 5.4.28
CATEGORIES= textproc
MAINTAINER= bofh@FreeBSD.org
@@ -9,19 +9,17 @@ WWW= https://www.linphone.org/
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-BUILD_DEPENDS= ${LOCALBASE}/lib/libbctoolbox.a:net/bctoolbox \
- ${LOCALBASE}/lib/libbcunit.a:devel/bcunit
+LIB_DEPENDS= libbctoolbox.so:net/bctoolbox \
+ libbcunit.so:devel/bcunit
USES= cmake compiler:c++17-lang dos2unix
+DOS2UNIX_FILES= ${WRKSRC}/CMakeLists.txt
USE_GITLAB= yes
GL_SITE= https://gitlab.linphone.org/BC
GL_ACCOUNT= public
USE_LDCONFIG= yes
-DOS2UNIX_FILES= ${WRKSRC}/CMakeLists.txt
-
-CMAKE_ARGS= -DCMAKE_SKIP_INSTALL_RPATH=ON \
- -DENABLE_STRICT=NO
+CMAKE_ON= BUILD_SHARED_LIBS
LDFLAGS+= -lpthread
diff --git a/textproc/belr/distinfo b/textproc/belr/distinfo
index 08f778962a38..dd9c9c53b109 100644
--- a/textproc/belr/distinfo
+++ b/textproc/belr/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1751279842
-SHA256 (belr-5.4.24.tar.bz2) = f3fa37747b406c13e051c0186da04026eb970da16831ec6bd8e1e029beebb866
-SIZE (belr-5.4.24.tar.bz2) = 56499
+TIMESTAMP = 1758125125
+SHA256 (belr-5.4.28.tar.bz2) = f6c3689de3b9049a4155e983b72d26f4fb2ee6222e4be16aba15f02cbd513ff1
+SIZE (belr-5.4.28.tar.bz2) = 56489
diff --git a/textproc/belr/pkg-plist b/textproc/belr/pkg-plist
index a5d15356ad94..7559f6982ceb 100644
--- a/textproc/belr/pkg-plist
+++ b/textproc/belr/pkg-plist
@@ -9,7 +9,8 @@ lib/cmake/Belr/BelrConfig.cmake
lib/cmake/Belr/BelrConfigVersion.cmake
lib/cmake/Belr/BelrTargets-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/Belr/BelrTargets.cmake
-lib/libbelr.a
+lib/libbelr.so
+lib/libbelr.so.1
%%DATADIR%%-tester/res/basicgrammar.txt
%%DATADIR%%-tester/res/register.txt
%%DATADIR%%-tester/res/response.txt
diff --git a/textproc/cgrep/Makefile b/textproc/cgrep/Makefile
index 0ddaa3b0b9a9..da3cc506a62c 100644
--- a/textproc/cgrep/Makefile
+++ b/textproc/cgrep/Makefile
@@ -1,5 +1,6 @@
PORTNAME= cgrep
PORTVERSION= 8.1.0
+PORTREVISION= 1
CATEGORIES= textproc
MAINTAINER= lwhsu@FreeBSD.org
diff --git a/textproc/consul-template/Makefile b/textproc/consul-template/Makefile
index eec74b02a5b4..a4e99d1501cf 100644
--- a/textproc/consul-template/Makefile
+++ b/textproc/consul-template/Makefile
@@ -1,7 +1,6 @@
PORTNAME= consul-template
DISTVERSIONPREFIX= v
-DISTVERSION= 0.41.1
-PORTREVISION= 1
+DISTVERSION= 0.41.2
CATEGORIES= textproc
MAINTAINER= bofh@FreeBSD.org
diff --git a/textproc/consul-template/distinfo b/textproc/consul-template/distinfo
index c5c75761dc1e..ca81ad96caba 100644
--- a/textproc/consul-template/distinfo
+++ b/textproc/consul-template/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1753445756
-SHA256 (go/textproc_consul-template/consul-template-v0.41.1/v0.41.1.mod) = b9d3a7fe8df26285edcca98f51cef75036e1f0356d7164569385f39f2181a514
-SIZE (go/textproc_consul-template/consul-template-v0.41.1/v0.41.1.mod) = 2830
-SHA256 (go/textproc_consul-template/consul-template-v0.41.1/v0.41.1.zip) = 00336b72333495cbea48a21bfed09f1d7401c4cfa572ce7af6a35faac20efbe4
-SIZE (go/textproc_consul-template/consul-template-v0.41.1/v0.41.1.zip) = 414316
+TIMESTAMP = 1758487505
+SHA256 (go/textproc_consul-template/consul-template-v0.41.2/v0.41.2.mod) = dadfe526f464ceeda65cafedf4b45be60fd0547347d226fbca5b6a32a6ef186b
+SIZE (go/textproc_consul-template/consul-template-v0.41.2/v0.41.2.mod) = 2830
+SHA256 (go/textproc_consul-template/consul-template-v0.41.2/v0.41.2.zip) = aac4e2a3f788d3d60504eda687483830366a275c302e8e249f3ffafdee7068ab
+SIZE (go/textproc_consul-template/consul-template-v0.41.2/v0.41.2.zip) = 414613
diff --git a/textproc/csview/Makefile b/textproc/csview/Makefile
index 7d9aa9de47e1..2682df8102d2 100644
--- a/textproc/csview/Makefile
+++ b/textproc/csview/Makefile
@@ -1,7 +1,7 @@
PORTNAME= csview
DISTVERSIONPREFIX= v
-DISTVERSION= 1.3.3
-PORTREVISION= 10
+DISTVERSION= 1.3.4
+PORTREVISION= 0
CATEGORIES= textproc
MAINTAINER= ruben@verweg.com
@@ -17,20 +17,20 @@ USE_GITHUB= yes
GH_ACCOUNT= wfxr
CARGO_CRATES= anstream-0.6.13 \
- anstyle-1.0.6 \
+ anstyle-1.0.8 \
anstyle-parse-0.2.3 \
anstyle-query-1.0.2 \
anstyle-wincon-3.0.2 \
- anyhow-1.0.82 \
+ anyhow-1.0.89 \
bitflags-2.5.0 \
cc-1.0.94 \
- clap-4.5.4 \
- clap_builder-4.5.2 \
- clap_complete-4.5.2 \
- clap_derive-4.5.4 \
- clap_lex-0.7.0 \
+ clap-4.5.23 \
+ clap_builder-4.5.23 \
+ clap_complete-4.5.38 \
+ clap_derive-4.5.18 \
+ clap_lex-0.7.4 \
colorchoice-1.0.0 \
- csv-1.3.0 \
+ csv-1.3.1 \
csv-core-0.1.11 \
either-1.11.0 \
errno-0.2.8 \
@@ -38,7 +38,6 @@ CARGO_CRATES= anstream-0.6.13 \
errno-dragonfly-0.1.2 \
exitcode-1.1.2 \
heck-0.5.0 \
- itertools-0.12.1 \
itertools-0.13.0 \
itoa-1.0.11 \
libc-0.2.153 \
@@ -53,33 +52,26 @@ CARGO_CRATES= anstream-0.6.13 \
serde_derive-1.0.197 \
strsim-0.11.1 \
syn-2.0.59 \
- terminal_size-0.3.0 \
+ terminal_size-0.4.0 \
unicode-ident-1.0.12 \
- unicode-truncate-1.0.0 \
- unicode-width-0.1.12 \
+ unicode-segmentation-1.11.0 \
+ unicode-truncate-2.0.0 \
+ unicode-width-0.2.0 \
utf8parse-0.2.1 \
winapi-0.3.9 \
winapi-i686-pc-windows-gnu-0.4.0 \
winapi-x86_64-pc-windows-gnu-0.4.0 \
- windows-sys-0.48.0 \
windows-sys-0.52.0 \
- windows-targets-0.48.5 \
- windows-targets-0.52.5 \
- windows_aarch64_gnullvm-0.48.5 \
- windows_aarch64_gnullvm-0.52.5 \
- windows_aarch64_msvc-0.48.5 \
- windows_aarch64_msvc-0.52.5 \
- windows_i686_gnu-0.48.5 \
- windows_i686_gnu-0.52.5 \
- windows_i686_gnullvm-0.52.5 \
- windows_i686_msvc-0.48.5 \
- windows_i686_msvc-0.52.5 \
- windows_x86_64_gnu-0.48.5 \
- windows_x86_64_gnu-0.52.5 \
- windows_x86_64_gnullvm-0.48.5 \
- windows_x86_64_gnullvm-0.52.5 \
- windows_x86_64_msvc-0.48.5 \
- windows_x86_64_msvc-0.52.5
+ windows-sys-0.59.0 \
+ windows-targets-0.52.6 \
+ windows_aarch64_gnullvm-0.52.6 \
+ windows_aarch64_msvc-0.52.6 \
+ windows_i686_gnu-0.52.6 \
+ windows_i686_gnullvm-0.52.6 \
+ windows_i686_msvc-0.52.6 \
+ windows_x86_64_gnu-0.52.6 \
+ windows_x86_64_gnullvm-0.52.6 \
+ windows_x86_64_msvc-0.52.6
PLIST_FILES= bin/${PORTNAME}
diff --git a/textproc/csview/distinfo b/textproc/csview/distinfo
index 5d2bcd2dd6f0..e354ec22cc04 100644
--- a/textproc/csview/distinfo
+++ b/textproc/csview/distinfo
@@ -1,34 +1,34 @@
-TIMESTAMP = 1724074003
+TIMESTAMP = 1756819350
SHA256 (rust/crates/anstream-0.6.13.crate) = d96bd03f33fe50a863e394ee9718a706f988b9079b20c3784fb726e7678b62fb
SIZE (rust/crates/anstream-0.6.13.crate) = 30928
-SHA256 (rust/crates/anstyle-1.0.6.crate) = 8901269c6307e8d93993578286ac0edf7f195079ffff5ebdeea6a59ffb7e36bc
-SIZE (rust/crates/anstyle-1.0.6.crate) = 14604
+SHA256 (rust/crates/anstyle-1.0.8.crate) = 1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1
+SIZE (rust/crates/anstyle-1.0.8.crate) = 15771
SHA256 (rust/crates/anstyle-parse-0.2.3.crate) = c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c
SIZE (rust/crates/anstyle-parse-0.2.3.crate) = 24699
SHA256 (rust/crates/anstyle-query-1.0.2.crate) = e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648
SIZE (rust/crates/anstyle-query-1.0.2.crate) = 8739
SHA256 (rust/crates/anstyle-wincon-3.0.2.crate) = 1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7
SIZE (rust/crates/anstyle-wincon-3.0.2.crate) = 11272
-SHA256 (rust/crates/anyhow-1.0.82.crate) = f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519
-SIZE (rust/crates/anyhow-1.0.82.crate) = 45361
+SHA256 (rust/crates/anyhow-1.0.89.crate) = 86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6
+SIZE (rust/crates/anyhow-1.0.89.crate) = 47078
SHA256 (rust/crates/bitflags-2.5.0.crate) = cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1
SIZE (rust/crates/bitflags-2.5.0.crate) = 43821
SHA256 (rust/crates/cc-1.0.94.crate) = 17f6e324229dc011159fcc089755d1e2e216a90d43a7dea6853ca740b84f35e7
SIZE (rust/crates/cc-1.0.94.crate) = 76456
-SHA256 (rust/crates/clap-4.5.4.crate) = 90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0
-SIZE (rust/crates/clap-4.5.4.crate) = 55401
-SHA256 (rust/crates/clap_builder-4.5.2.crate) = ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4
-SIZE (rust/crates/clap_builder-4.5.2.crate) = 163566
-SHA256 (rust/crates/clap_complete-4.5.2.crate) = dd79504325bf38b10165b02e89b4347300f855f273c4cb30c4a3209e6583275e
-SIZE (rust/crates/clap_complete-4.5.2.crate) = 37850
-SHA256 (rust/crates/clap_derive-4.5.4.crate) = 528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64
-SIZE (rust/crates/clap_derive-4.5.4.crate) = 29159
-SHA256 (rust/crates/clap_lex-0.7.0.crate) = 98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce
-SIZE (rust/crates/clap_lex-0.7.0.crate) = 11915
+SHA256 (rust/crates/clap-4.5.23.crate) = 3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84
+SIZE (rust/crates/clap-4.5.23.crate) = 56460
+SHA256 (rust/crates/clap_builder-4.5.23.crate) = 30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838
+SIZE (rust/crates/clap_builder-4.5.23.crate) = 164180
+SHA256 (rust/crates/clap_complete-4.5.38.crate) = d9647a559c112175f17cf724dc72d3645680a883c58481332779192b0d8e7a01
+SIZE (rust/crates/clap_complete-4.5.38.crate) = 47669
+SHA256 (rust/crates/clap_derive-4.5.18.crate) = 4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab
+SIZE (rust/crates/clap_derive-4.5.18.crate) = 30131
+SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6
+SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858
SHA256 (rust/crates/colorchoice-1.0.0.crate) = acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7
SIZE (rust/crates/colorchoice-1.0.0.crate) = 6857
-SHA256 (rust/crates/csv-1.3.0.crate) = ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe
-SIZE (rust/crates/csv-1.3.0.crate) = 888212
+SHA256 (rust/crates/csv-1.3.1.crate) = acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf
+SIZE (rust/crates/csv-1.3.1.crate) = 888542
SHA256 (rust/crates/csv-core-0.1.11.crate) = 5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70
SIZE (rust/crates/csv-core-0.1.11.crate) = 25852
SHA256 (rust/crates/either-1.11.0.crate) = a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2
@@ -43,8 +43,6 @@ SHA256 (rust/crates/exitcode-1.1.2.crate) = de853764b47027c2e862a995c34978ffa63c
SIZE (rust/crates/exitcode-1.1.2.crate) = 6538
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/itertools-0.12.1.crate) = ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569
-SIZE (rust/crates/itertools-0.12.1.crate) = 137761
SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186
SIZE (rust/crates/itertools-0.13.0.crate) = 146261
SHA256 (rust/crates/itoa-1.0.11.crate) = 49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b
@@ -73,14 +71,16 @@ SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3
SIZE (rust/crates/strsim-0.11.1.crate) = 14266
SHA256 (rust/crates/syn-2.0.59.crate) = 4a6531ffc7b071655e4ce2e04bd464c4830bb585a61cabb96cf808f05172615a
SIZE (rust/crates/syn-2.0.59.crate) = 255393
-SHA256 (rust/crates/terminal_size-0.3.0.crate) = 21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7
-SIZE (rust/crates/terminal_size-0.3.0.crate) = 10096
+SHA256 (rust/crates/terminal_size-0.4.0.crate) = 4f599bd7ca042cfdf8f4512b277c02ba102247820f9d9d4a9f521f496751a6ef
+SIZE (rust/crates/terminal_size-0.4.0.crate) = 10036
SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168
-SHA256 (rust/crates/unicode-truncate-1.0.0.crate) = 5a5fbabedabe362c618c714dbefda9927b5afc8e2a8102f47f081089a9019226
-SIZE (rust/crates/unicode-truncate-1.0.0.crate) = 12017
-SHA256 (rust/crates/unicode-width-0.1.12.crate) = 68f5e5f3158ecfd4b8ff6fe086db7c8467a2dfdac97fe420f2b7c4aa97af66d6
-SIZE (rust/crates/unicode-width-0.1.12.crate) = 24062
+SHA256 (rust/crates/unicode-segmentation-1.11.0.crate) = d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202
+SIZE (rust/crates/unicode-segmentation-1.11.0.crate) = 102740
+SHA256 (rust/crates/unicode-truncate-2.0.0.crate) = 8fbf03860ff438702f3910ca5f28f8dac63c1c11e7efb5012b8b175493606330
+SIZE (rust/crates/unicode-truncate-2.0.0.crate) = 12904
+SHA256 (rust/crates/unicode-width-0.2.0.crate) = 1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd
+SIZE (rust/crates/unicode-width-0.2.0.crate) = 271509
SHA256 (rust/crates/utf8parse-0.2.1.crate) = 711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a
SIZE (rust/crates/utf8parse-0.2.1.crate) = 13435
SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419
@@ -89,43 +89,27 @@ SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9
SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815
SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f
SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998
-SHA256 (rust/crates/windows-sys-0.48.0.crate) = 677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9
-SIZE (rust/crates/windows-sys-0.48.0.crate) = 2628884
SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d
SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877
-SHA256 (rust/crates/windows-targets-0.48.5.crate) = 9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c
-SIZE (rust/crates/windows-targets-0.48.5.crate) = 6904
-SHA256 (rust/crates/windows-targets-0.52.5.crate) = 6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb
-SIZE (rust/crates/windows-targets-0.52.5.crate) = 6376
-SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8
-SIZE (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 418492
-SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.5.crate) = 7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263
-SIZE (rust/crates/windows_aarch64_gnullvm-0.52.5.crate) = 433266
-SHA256 (rust/crates/windows_aarch64_msvc-0.48.5.crate) = dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc
-SIZE (rust/crates/windows_aarch64_msvc-0.48.5.crate) = 798483
-SHA256 (rust/crates/windows_aarch64_msvc-0.52.5.crate) = 9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6
-SIZE (rust/crates/windows_aarch64_msvc-0.52.5.crate) = 827944
-SHA256 (rust/crates/windows_i686_gnu-0.48.5.crate) = a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e
-SIZE (rust/crates/windows_i686_gnu-0.48.5.crate) = 844891
-SHA256 (rust/crates/windows_i686_gnu-0.52.5.crate) = 88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670
-SIZE (rust/crates/windows_i686_gnu-0.52.5.crate) = 875699
-SHA256 (rust/crates/windows_i686_gnullvm-0.52.5.crate) = 87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9
-SIZE (rust/crates/windows_i686_gnullvm-0.52.5.crate) = 473064
-SHA256 (rust/crates/windows_i686_msvc-0.48.5.crate) = 8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406
-SIZE (rust/crates/windows_i686_msvc-0.48.5.crate) = 864300
-SHA256 (rust/crates/windows_i686_msvc-0.52.5.crate) = db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf
-SIZE (rust/crates/windows_i686_msvc-0.52.5.crate) = 895404
-SHA256 (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e
-SIZE (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 801619
-SHA256 (rust/crates/windows_x86_64_gnu-0.52.5.crate) = 4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9
-SIZE (rust/crates/windows_x86_64_gnu-0.52.5.crate) = 831539
-SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc
-SIZE (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 418486
-SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.5.crate) = 852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596
-SIZE (rust/crates/windows_x86_64_gnullvm-0.52.5.crate) = 433246
-SHA256 (rust/crates/windows_x86_64_msvc-0.48.5.crate) = ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538
-SIZE (rust/crates/windows_x86_64_msvc-0.48.5.crate) = 798412
-SHA256 (rust/crates/windows_x86_64_msvc-0.52.5.crate) = bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0
-SIZE (rust/crates/windows_x86_64_msvc-0.52.5.crate) = 827905
-SHA256 (wfxr-csview-v1.3.3_GH0.tar.gz) = de84f181a6b89101ed150a378eff9583d8f8cbcc4025d06adc4bc3c48085df95
-SIZE (wfxr-csview-v1.3.3_GH0.tar.gz) = 33655
+SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
+SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
+SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
+SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3
+SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718
+SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469
+SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615
+SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b
+SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402
+SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66
+SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940
+SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66
+SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163
+SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78
+SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d
+SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
+SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
+SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
+SHA256 (wfxr-csview-v1.3.4_GH0.tar.gz) = 91fadcddef511265f4bf39897ce4a65c457ac89ffd8dd742dc209d30bf04d6aa
+SIZE (wfxr-csview-v1.3.4_GH0.tar.gz) = 33335
diff --git a/textproc/csvq/Makefile b/textproc/csvq/Makefile
index cac4c99d0d43..827369c39bcc 100644
--- a/textproc/csvq/Makefile
+++ b/textproc/csvq/Makefile
@@ -1,7 +1,7 @@
PORTNAME= csvq
DISTVERSIONPREFIX= v
DISTVERSION= 1.18.1
-PORTREVISION= 16
+PORTREVISION= 17
CATEGORIES= textproc
MAINTAINER= lcook@FreeBSD.org
diff --git a/textproc/difftastic/Makefile b/textproc/difftastic/Makefile
index f547c4ecd0cd..21efc3f47403 100644
--- a/textproc/difftastic/Makefile
+++ b/textproc/difftastic/Makefile
@@ -1,6 +1,5 @@
PORTNAME= difftastic
-DISTVERSION= 0.64.0
-PORTREVISION= 2
+DISTVERSION= 0.65.0
CATEGORIES= textproc
MAINTAINER= amdmi3@FreeBSD.org
@@ -149,7 +148,7 @@ CARGO_CRATES= ahash-0.8.11 \
tree-sitter-php-0.23.11 \
tree-sitter-python-0.23.5 \
tree-sitter-ruby-0.23.1 \
- tree-sitter-rust-0.23.2 \
+ tree-sitter-rust-orchard-0.13.0 \
tree-sitter-scala-0.23.3 \
tree-sitter-swift-0.7.0 \
tree-sitter-toml-ng-0.7.0 \
@@ -157,6 +156,7 @@ CARGO_CRATES= ahash-0.8.11 \
tree-sitter-verilog-1.0.3 \
tree-sitter-xml-0.7.0 \
tree-sitter-yaml-0.7.0 \
+ tree-sitter-zig-1.1.2 \
tree_magic_mini-3.1.6 \
typed-arena-2.0.2 \
unicode-ident-1.0.12 \
diff --git a/textproc/difftastic/distinfo b/textproc/difftastic/distinfo
index 314bc3aed507..1d78e13f88d6 100644
--- a/textproc/difftastic/distinfo
+++ b/textproc/difftastic/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1750086248
+TIMESTAMP = 1758711380
SHA256 (rust/crates/ahash-0.8.11.crate) = e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011
SIZE (rust/crates/ahash-0.8.11.crate) = 43607
SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
@@ -263,8 +263,8 @@ SHA256 (rust/crates/tree-sitter-python-0.23.5.crate) = 70beaa47e19e1529e8787fc0a
SIZE (rust/crates/tree-sitter-python-0.23.5.crate) = 174528
SHA256 (rust/crates/tree-sitter-ruby-0.23.1.crate) = be0484ea4ef6bb9c575b4fdabde7e31340a8d2dbc7d52b321ac83da703249f95
SIZE (rust/crates/tree-sitter-ruby-0.23.1.crate) = 512753
-SHA256 (rust/crates/tree-sitter-rust-0.23.2.crate) = a4d64d449ca63e683c562c7743946a646671ca23947b9c925c0cfbe65051a4af
-SIZE (rust/crates/tree-sitter-rust-0.23.2.crate) = 343880
+SHA256 (rust/crates/tree-sitter-rust-orchard-0.13.0.crate) = 42e06f00ca89feba4d7455e95b61b9019a979a380527297fab0c461e2e13c264
+SIZE (rust/crates/tree-sitter-rust-orchard-0.13.0.crate) = 610064
SHA256 (rust/crates/tree-sitter-scala-0.23.3.crate) = ab837c0df7ffb6c315fd1cd792164375b3ec0c282ea35f639231f138044f8d0c
SIZE (rust/crates/tree-sitter-scala-0.23.3.crate) = 1035228
SHA256 (rust/crates/tree-sitter-swift-0.7.0.crate) = bdc72ea9c62a6d188c9f7d64109a9b14b09231852b87229c68c44e8738b9e6b9
@@ -279,6 +279,8 @@ SHA256 (rust/crates/tree-sitter-xml-0.7.0.crate) = e670041f591d994f54d597ddcd8f4
SIZE (rust/crates/tree-sitter-xml-0.7.0.crate) = 75507
SHA256 (rust/crates/tree-sitter-yaml-0.7.0.crate) = d0c99f2b92b677f1a18b6b232fa9329afb5758118238a7d0b29cae324ef50d5e
SIZE (rust/crates/tree-sitter-yaml-0.7.0.crate) = 101403
+SHA256 (rust/crates/tree-sitter-zig-1.1.2.crate) = ab11fc124851b0db4dd5e55983bbd9631192e93238389dcd44521715e5d53e28
+SIZE (rust/crates/tree-sitter-zig-1.1.2.crate) = 212493
SHA256 (rust/crates/tree_magic_mini-3.1.6.crate) = aac5e8971f245c3389a5a76e648bfc80803ae066a1243a75db0064d7c1129d63
SIZE (rust/crates/tree_magic_mini-3.1.6.crate) = 14869
SHA256 (rust/crates/typed-arena-2.0.2.crate) = 6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a
@@ -351,5 +353,5 @@ SHA256 (rust/crates/zerocopy-0.7.32.crate) = 74d4d3961e53fa4c9a25a8637fc2bfaf259
SIZE (rust/crates/zerocopy-0.7.32.crate) = 151096
SHA256 (rust/crates/zerocopy-derive-0.7.32.crate) = 9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6
SIZE (rust/crates/zerocopy-derive-0.7.32.crate) = 37623
-SHA256 (Wilfred-difftastic-0.64.0_GH0.tar.gz) = 54c7c93309ff9a2cbe87153ac1d16e80bacac4042c80f6b7206e9b71a6f10d0b
-SIZE (Wilfred-difftastic-0.64.0_GH0.tar.gz) = 25362833
+SHA256 (Wilfred-difftastic-0.65.0_GH0.tar.gz) = 59462f69e2cedfdc1bee4fd0da48fe9a7ae635cdb6818c1a300b31c0b146d4b8
+SIZE (Wilfred-difftastic-0.65.0_GH0.tar.gz) = 24632733
diff --git a/textproc/difftastic/files/patch-jemalloc b/textproc/difftastic/files/patch-jemalloc
index d4b2d2c034cf..f80eab3f65fa 100644
--- a/textproc/difftastic/files/patch-jemalloc
+++ b/textproc/difftastic/files/patch-jemalloc
@@ -1,28 +1,28 @@
Upstream has switched from mimalloc to jemalloc in 0.64.0, but
tikv-jemallocator does not currently build on FreeBSD, so just
switch it to system allocator which is jemalloc anyway.
---- Cargo.toml.orig 2025-06-15 21:48:50 UTC
+--- Cargo.toml.orig 2025-09-24 03:24:08 UTC
+++ Cargo.toml
-@@ -106,7 +106,7 @@ tree-sitter-yaml = "0.7.0"
- tree-sitter-xml = "0.7.0"
+@@ -110,7 +110,7 @@ tree-sitter-zig = "1.1.2"
tree-sitter-yaml = "0.7.0"
+ tree-sitter-zig = "1.1.2"
--[target.'cfg(not(target_env = "msvc"))'.dependencies]
+-[target.'cfg(not(any(target_env = "msvc", target_os = "illumos")))'.dependencies]
+[target.'cfg(not(any(target_env = "msvc", target_os = "freebsd")))'.dependencies]
tikv-jemallocator = "0.6"
[dev-dependencies]
---- src/main.rs.orig 2025-06-15 21:48:50 UTC
+--- src/main.rs.orig 2025-09-24 03:24:08 UTC
+++ src/main.rs
-@@ -86,10 +86,10 @@ use crate::parse::syntax;
+@@ -91,10 +91,10 @@ use crate::parse::syntax;
///
/// For reference, Jemalloc uses 10-20% more time (although up to 33%
/// more instructions) when testing on sample files.
--#[cfg(not(target_env = "msvc"))]
+-#[cfg(not(any(target_env = "msvc", target_os = "illumos")))]
+#[cfg(not(any(target_env = "msvc", target_os = "freebsd")))]
use tikv_jemallocator::Jemalloc;
--#[cfg(not(target_env = "msvc"))]
+-#[cfg(not(any(target_env = "msvc", target_os = "illumos")))]
+#[cfg(not(any(target_env = "msvc", target_os = "freebsd")))]
#[global_allocator]
static GLOBAL: Jemalloc = Jemalloc;
diff --git a/textproc/discount/Makefile b/textproc/discount/Makefile
index 3044d687be19..2c3b79e80cb8 100644
--- a/textproc/discount/Makefile
+++ b/textproc/discount/Makefile
@@ -1,5 +1,5 @@
PORTNAME= discount
-PORTVERSION= 2.2.7d
+PORTVERSION= 3.0.1.1
CATEGORIES= textproc devel
MASTER_SITES= https://www.pell.portland.or.us/~orc/Code/discount/
@@ -21,12 +21,12 @@ INSTALL_TARGET= install install.man
TEST_TARGET= test
USE_LDCONFIG= yes
+PLIST_SUB= PORTVERSION=${PORTVERSION:R}
+
CONFLICTS_INSTALL= markdown
CPE_VENDOR= discount_project
-PORTSCOUT= skipv:2.2.7
-
OPTIONS_DEFINE= EXTRA SAMPLES TAB8
OPTIONS_DEFAULT=EXTRA TAB8
OPTIONS_SUB= yes
diff --git a/textproc/discount/distinfo b/textproc/discount/distinfo
index 14140f0ba5a4..bd863493744e 100644
--- a/textproc/discount/distinfo
+++ b/textproc/discount/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1693987425
-SHA256 (discount-2.2.7d.tar.bz2) = 12a2041e96ae8cde17e08ff1a215d331580a5c58688daa5a18842b6bb5b77b52
-SIZE (discount-2.2.7d.tar.bz2) = 106055
+TIMESTAMP = 1757436431
+SHA256 (discount-3.0.1.1.tar.bz2) = c1b1b9f37bb907aae5f4bcfc960269baeae9e6710cdd6860ee965abfa2676631
+SIZE (discount-3.0.1.1.tar.bz2) = 113052
diff --git a/textproc/discount/files/patch-clang16 b/textproc/discount/files/patch-clang16
deleted file mode 100644
index c16d5f6fae9f..000000000000
--- a/textproc/discount/files/patch-clang16
+++ /dev/null
@@ -1,11 +0,0 @@
---- main.c.orig 2022-03-30 19:34:50 UTC
-+++ main.c
-@@ -308,7 +308,7 @@ main(int argc, char **argv)
- if ( squash )
- mkd_e_anchor(doc, (mkd_callback_t) anchor_format);
- if ( use_e_codefmt )
-- mkd_e_code_format(doc, external_codefmt);
-+ mkd_e_code_format(doc, (mkd_callback_t) external_codefmt);
-
- if ( use_e_codefmt || squash )
- mkd_e_free(doc, free_it);
diff --git a/textproc/discount/files/patch-configure.inc b/textproc/discount/files/patch-configure.inc
index ec33a22e576c..38d7b51efa32 100644
--- a/textproc/discount/files/patch-configure.inc
+++ b/textproc/discount/files/patch-configure.inc
@@ -1,10 +1,12 @@
---- configure.inc.orig 2020-08-24 05:45:49 UTC
+--- configure.inc.orig 2025-09-07 21:27:45 UTC
+++ configure.inc
-@@ -1501,7 +1501,6 @@ install)$PROG_INSTALL -c \$FULLNAME "\$1"
+@@ -1501,9 +1501,6 @@ EOF
$PROG_LN_S -f \$FULLNAME \$1/\$LIBNAME.\$MAJOR
$PROG_LN_S -f \$FULLNAME \$1/\$LIBNAME
EOF
-- test "$LDCONFIG" && echo ' '$LDCONFIG '"$1"' >> librarian.sh
+- if [ "$LDCONFIG" -a -z "$CONTAINER" ]; then
+- echo ' '$LDCONFIG '"$1"' >> librarian.sh
+- fi
+
cat >> librarian.sh << EOF
;;
- esac
diff --git a/textproc/discount/pkg-plist b/textproc/discount/pkg-plist
index f736121635c5..317dca112032 100644
--- a/textproc/discount/pkg-plist
+++ b/textproc/discount/pkg-plist
@@ -5,8 +5,8 @@ bin/markdown
include/mkdio.h
lib/libmarkdown.a
lib/libmarkdown.so
-lib/libmarkdown.so.2
-lib/libmarkdown.so.2.2.7
+lib/libmarkdown.so.3
+lib/libmarkdown.so.%%PORTVERSION%%
libdata/pkgconfig/libmarkdown.pc
%%SAMPLES%%share/man/man1/makepage.1.gz
share/man/man1/markdown.1.gz
diff --git a/textproc/dyff/Makefile b/textproc/dyff/Makefile
index f7e148ccdd76..fe0ec3427588 100644
--- a/textproc/dyff/Makefile
+++ b/textproc/dyff/Makefile
@@ -1,6 +1,7 @@
PORTNAME= dyff
DISTVERSIONPREFIX= v
DISTVERSION= 1.10.2
+PORTREVISION= 1
CATEGORIES= textproc
MAINTAINER= ehaupt@FreeBSD.org
diff --git a/textproc/expat2/Makefile b/textproc/expat2/Makefile
index 7eaf111afbf6..2e50a1a5c018 100644
--- a/textproc/expat2/Makefile
+++ b/textproc/expat2/Makefile
@@ -1,5 +1,5 @@
PORTNAME= expat
-DISTVERSION= 2.7.1
+DISTVERSION= 2.7.3
CATEGORIES= textproc
MASTER_SITES= https://github.com/libexpat/libexpat/releases/download/R_${DISTVERSION:S|.|_|g}/
diff --git a/textproc/expat2/distinfo b/textproc/expat2/distinfo
index ef56ba7af1b8..6c1fbe62e66b 100644
--- a/textproc/expat2/distinfo
+++ b/textproc/expat2/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1743111371
-SHA256 (expat-2.7.1.tar.xz) = 354552544b8f99012e5062f7d570ec77f14b412a3ff5c7d8d0dae62c0d217c30
-SIZE (expat-2.7.1.tar.xz) = 496108
+TIMESTAMP = 1758779246
+SHA256 (expat-2.7.3.tar.xz) = 71df8f40706a7bb0a80a5367079ea75d91da4f8c65c58ec59bcdfbf7decdab9f
+SIZE (expat-2.7.3.tar.xz) = 504744
diff --git a/textproc/expat2/pkg-plist b/textproc/expat2/pkg-plist
index 64d3186bf292..3e58aa764c1c 100644
--- a/textproc/expat2/pkg-plist
+++ b/textproc/expat2/pkg-plist
@@ -9,7 +9,7 @@ lib/cmake/expat-%%EXPAT_VERSION%%/expat.cmake
%%STATIC%%lib/libexpat.a
lib/libexpat.so
lib/libexpat.so.1
-lib/libexpat.so.1.10.2
+lib/libexpat.so.1.11.1
libdata/pkgconfig/expat.pc
share/man/man1/xmlwf.1.gz
%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
diff --git a/textproc/fzf/Makefile b/textproc/fzf/Makefile
index b1ee7ca90a6c..c69615a9e348 100644
--- a/textproc/fzf/Makefile
+++ b/textproc/fzf/Makefile
@@ -1,6 +1,7 @@
PORTNAME= fzf
DISTVERSIONPREFIX= v
DISTVERSION= 0.65.2
+PORTREVISION= 1
CATEGORIES= textproc
MASTER_SITES= https://raw.githubusercontent.com/${GH_ACCOUNT}/${GH_PROJECT}/${DISTVERSIONFULL}/:gomod
DISTFILES= go.mod:gomod
diff --git a/textproc/gh-grep/Makefile b/textproc/gh-grep/Makefile
index 431223980a3c..0bde3c9ffaba 100644
--- a/textproc/gh-grep/Makefile
+++ b/textproc/gh-grep/Makefile
@@ -1,7 +1,7 @@
PORTNAME= gh-grep
DISTVERSIONPREFIX= v
DISTVERSION= 1.2.3
-PORTREVISION= 6
+PORTREVISION= 7
CATEGORIES= textproc
MAINTAINER= lcook@FreeBSD.org
diff --git a/textproc/git-chglog/Makefile b/textproc/git-chglog/Makefile
index 3d0cfed6d762..cca3b34afd07 100644
--- a/textproc/git-chglog/Makefile
+++ b/textproc/git-chglog/Makefile
@@ -1,7 +1,7 @@
PORTNAME= git-chglog
DISTVERSIONPREFIX= v
DISTVERSION= 0.15.4
-PORTREVISION= 17
+PORTREVISION= 18
CATEGORIES= textproc
MAINTAINER= lcook@FreeBSD.org
diff --git a/textproc/gitlab-elasticsearch-indexer/Makefile b/textproc/gitlab-elasticsearch-indexer/Makefile
index 5b4b318b058f..51f13271c007 100644
--- a/textproc/gitlab-elasticsearch-indexer/Makefile
+++ b/textproc/gitlab-elasticsearch-indexer/Makefile
@@ -1,7 +1,7 @@
PORTNAME= gitlab-elasticsearch-indexer
PORTVERSION= 5.7.0
DISTVERSIONPREFIX= v
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc
MAINTAINER= mfechner@FreeBSD.org
diff --git a/textproc/go-md2man/Makefile b/textproc/go-md2man/Makefile
index d12f40c30f7a..7a25ef49d41f 100644
--- a/textproc/go-md2man/Makefile
+++ b/textproc/go-md2man/Makefile
@@ -1,7 +1,7 @@
PORTNAME= go-md2man
DISTVERSIONPREFIX= v
DISTVERSION= 2.0.7
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc
MAINTAINER= mateusz@serveraptor.com
diff --git a/textproc/go-transifex-client/Makefile b/textproc/go-transifex-client/Makefile
index bf690838ecd0..79daa4e589c0 100644
--- a/textproc/go-transifex-client/Makefile
+++ b/textproc/go-transifex-client/Makefile
@@ -1,7 +1,7 @@
PORTNAME= transifex-client
DISTVERSIONPREFIX= v
DISTVERSION= 1.6.10
-PORTREVISION= 15
+PORTREVISION= 16
CATEGORIES= textproc
PKGNAMEPREFIX= go-
diff --git a/textproc/go-yq/Makefile b/textproc/go-yq/Makefile
index 3d7940d4e52f..2994a5cfb75a 100644
--- a/textproc/go-yq/Makefile
+++ b/textproc/go-yq/Makefile
@@ -1,6 +1,6 @@
PORTNAME= go-yq
DISTVERSIONPREFIX= v
-DISTVERSION= 4.47.1
+DISTVERSION= 4.47.2
CATEGORIES= textproc
MAINTAINER= timp87@gmail.com
diff --git a/textproc/go-yq/distinfo b/textproc/go-yq/distinfo
index c2f56ba45655..9dc41ffcbfc3 100644
--- a/textproc/go-yq/distinfo
+++ b/textproc/go-yq/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1756457073
-SHA256 (go/textproc_go-yq/go-yq-v4.47.1/v4.47.1.mod) = f89a8564b46efdf0ff77835df9392f1fef423bc6b904dd1f79d385fb54b0376d
-SIZE (go/textproc_go-yq/go-yq-v4.47.1/v4.47.1.mod) = 1015
-SHA256 (go/textproc_go-yq/go-yq-v4.47.1/v4.47.1.zip) = e0c57fe2e4965301ef42159e0149f1e814eb5c0cdd4982b68e0a962ff6865498
-SIZE (go/textproc_go-yq/go-yq-v4.47.1/v4.47.1.zip) = 484080
+TIMESTAMP = 1758730693
+SHA256 (go/textproc_go-yq/go-yq-v4.47.2/v4.47.2.mod) = ecbe849248fb3c92b9980081d1a22068c61e70182c306acdc675388d700bff27
+SIZE (go/textproc_go-yq/go-yq-v4.47.2/v4.47.2.mod) = 1017
+SHA256 (go/textproc_go-yq/go-yq-v4.47.2/v4.47.2.zip) = 0d844a8172f4841f1acc9e0abe341436090ca1a5f29d0428dd566ea62f8b303a
+SIZE (go/textproc_go-yq/go-yq-v4.47.2/v4.47.2.zip) = 484272
diff --git a/textproc/gojq/Makefile b/textproc/gojq/Makefile
index dfbefd7fd6ca..6de05bda525e 100644
--- a/textproc/gojq/Makefile
+++ b/textproc/gojq/Makefile
@@ -1,7 +1,7 @@
PORTNAME= gojq
DISTVERSIONPREFIX= v
DISTVERSION= 0.12.17
-PORTREVISION= 6
+PORTREVISION= 7
CATEGORIES= textproc
MAINTAINER= nork@FreeBSD.org
diff --git a/textproc/gron/Makefile b/textproc/gron/Makefile
index 8566728fccad..f0bc9bad58bb 100644
--- a/textproc/gron/Makefile
+++ b/textproc/gron/Makefile
@@ -1,7 +1,7 @@
PORTNAME= gron
PORTVERSION= 0.7.1
DISTVERSIONPREFIX= v
-PORTREVISION= 4
+PORTREVISION= 5
CATEGORIES= textproc
MAINTAINER= zi@FreeBSD.org
diff --git a/textproc/harper/Makefile b/textproc/harper/Makefile
index d5fe54cce69e..3e75f7c9934b 100644
--- a/textproc/harper/Makefile
+++ b/textproc/harper/Makefile
@@ -1,7 +1,6 @@
PORTNAME= harper
DISTVERSIONPREFIX= v
-DISTVERSION= 0.58.0
-PORTREVISION= 1
+DISTVERSION= 0.65.0
CATEGORIES= textproc
MAINTAINER= ashish@FreeBSD.org
diff --git a/textproc/harper/Makefile.crates b/textproc/harper/Makefile.crates
index 866102b78a49..fb6dfad3d6f5 100644
--- a/textproc/harper/Makefile.crates
+++ b/textproc/harper/Makefile.crates
@@ -3,8 +3,7 @@ CARGO_CRATES= addr2line-0.24.2 \
ahash-0.8.12 \
aho-corasick-1.1.3 \
allocator-api2-0.2.21 \
- ammonia-4.1.1 \
- android-tzdata-0.1.1 \
+ ammonia-4.1.2 \
android_system_properties-0.1.5 \
anes-0.1.6 \
anstream-0.6.19 \
@@ -12,7 +11,7 @@ CARGO_CRATES= addr2line-0.24.2 \
anstyle-parse-0.2.7 \
anstyle-query-1.1.3 \
anstyle-wincon-3.0.9 \
- anyhow-1.0.99 \
+ anyhow-1.0.100 \
arbitrary-1.4.1 \
ariadne-0.4.1 \
arrayvec-0.7.6 \
@@ -21,12 +20,11 @@ CARGO_CRATES= addr2line-0.24.2 \
atomic_float-1.1.0 \
autocfg-1.5.0 \
backtrace-0.3.75 \
- base64-0.22.1 \
bincode-2.0.1 \
bit-set-0.8.0 \
bit-vec-0.8.0 \
bitflags-1.3.2 \
- bitflags-2.9.2 \
+ bitflags-2.9.4 \
blanket-0.4.0 \
block-0.1.6 \
bstr-1.12.0 \
@@ -61,13 +59,13 @@ CARGO_CRATES= addr2line-0.24.2 \
cc-1.2.30 \
cfg-if-1.0.1 \
cfg_aliases-0.2.1 \
- chrono-0.4.41 \
+ chrono-0.4.42 \
ciborium-0.2.2 \
ciborium-io-0.2.2 \
ciborium-ll-0.2.2 \
- clap-4.5.43 \
- clap_builder-4.5.43 \
- clap_derive-4.5.41 \
+ clap-4.5.48 \
+ clap_builder-4.5.48 \
+ clap_derive-4.5.47 \
clap_lex-0.7.5 \
codespan-reporting-0.12.0 \
colorchoice-1.0.4 \
@@ -153,6 +151,7 @@ CARGO_CRATES= addr2line-0.24.2 \
fluent-uri-0.1.4 \
fnv-1.0.7 \
foldhash-0.1.5 \
+ foldhash-0.2.0 \
foreign-types-0.5.0 \
foreign-types-macros-0.2.3 \
foreign-types-shared-0.3.1 \
@@ -203,17 +202,12 @@ CARGO_CRATES= addr2line-0.24.2 \
hashbrown-0.13.2 \
hashbrown-0.14.5 \
hashbrown-0.15.5 \
+ hashbrown-0.16.0 \
heck-0.5.0 \
hermit-abi-0.5.2 \
hexf-parse-0.2.1 \
html5ever-0.35.0 \
- http-1.3.1 \
- http-body-1.0.1 \
- http-body-util-0.1.3 \
httparse-1.10.1 \
- hyper-1.6.0 \
- hyper-rustls-0.27.7 \
- hyper-util-0.1.16 \
iana-time-zone-0.1.63 \
iana-time-zone-haiku-0.1.2 \
icu_collections-2.0.0 \
@@ -226,10 +220,8 @@ CARGO_CRATES= addr2line-0.24.2 \
ident_case-1.0.1 \
idna-1.0.3 \
idna_adapter-1.2.1 \
- indexmap-2.10.0 \
+ indexmap-2.11.1 \
io-uring-0.7.9 \
- ipnet-2.11.0 \
- iri-string-0.7.8 \
is-docker-0.2.0 \
is-macro-0.3.7 \
is-wsl-0.4.0 \
@@ -252,8 +244,7 @@ CARGO_CRATES= addr2line-0.24.2 \
litrs-0.4.2 \
lock_api-0.4.13 \
log-0.4.27 \
- lru-0.16.0 \
- lru-slab-0.1.2 \
+ lru-0.16.1 \
lsp-types-0.97.0 \
mac-0.1.1 \
macerator-0.2.8 \
@@ -276,7 +267,7 @@ CARGO_CRATES= addr2line-0.24.2 \
ndarray-0.16.1 \
ndk-sys-0.5.0+25.2.9519653 \
new_debug_unreachable-1.0.6 \
- nu-ansi-term-0.46.0 \
+ nu-ansi-term-0.50.1 \
num-0.4.3 \
num-bigint-0.4.6 \
num-complex-0.4.6 \
@@ -297,7 +288,6 @@ CARGO_CRATES= addr2line-0.24.2 \
option-ext-0.2.0 \
ordered-float-4.6.0 \
ordered-float-5.0.0 \
- overload-0.1.1 \
parking-2.2.1 \
parking_lot-0.12.4 \
parking_lot_core-0.9.11 \
@@ -329,9 +319,6 @@ CARGO_CRATES= addr2line-0.24.2 \
pulp-0.21.5 \
quickcheck-1.0.3 \
quickcheck_macros-1.1.0 \
- quinn-0.11.8 \
- quinn-proto-0.11.12 \
- quinn-udp-0.5.13 \
quote-1.0.40 \
r-efi-5.3.0 \
rand-0.8.5 \
@@ -346,8 +333,8 @@ CARGO_CRATES= addr2line-0.24.2 \
raw-cpuid-11.5.0 \
raw-window-handle-0.6.2 \
rawpointer-0.2.1 \
- rayon-1.10.0 \
- rayon-core-1.12.1 \
+ rayon-1.11.0 \
+ rayon-core-1.13.0 \
reborrow-0.5.5 \
redox_syscall-0.5.17 \
redox_users-0.4.6 \
@@ -357,9 +344,7 @@ CARGO_CRATES= addr2line-0.24.2 \
regex-syntax-0.8.5 \
relative-path-1.9.3 \
renderdoc-sys-1.1.0 \
- reqwest-0.12.23 \
resolve-path-0.1.0 \
- ring-0.17.14 \
rmp-0.8.14 \
rmp-serde-1.3.0 \
rs-conllu-0.3.0 \
@@ -367,12 +352,8 @@ CARGO_CRATES= addr2line-0.24.2 \
rstest_macros-0.25.0 \
rustc-demangle-0.1.26 \
rustc-hash-1.1.0 \
- rustc-hash-2.1.1 \
rustc_version-0.4.1 \
rustix-1.0.8 \
- rustls-0.23.29 \
- rustls-pki-types-1.12.0 \
- rustls-webpki-0.103.4 \
rustversion-1.0.21 \
ryu-1.0.20 \
safetensors-0.4.5 \
@@ -381,22 +362,21 @@ CARGO_CRATES= addr2line-0.24.2 \
scopeguard-1.2.0 \
semver-1.0.26 \
seq-macro-0.3.6 \
- serde-1.0.219 \
+ serde-1.0.226 \
serde-wasm-bindgen-0.6.5 \
serde_bytes-0.11.17 \
- serde_derive-1.0.219 \
- serde_json-1.0.142 \
+ serde_core-1.0.226 \
+ serde_derive-1.0.226 \
+ serde_json-1.0.145 \
serde_repr-0.1.20 \
serde_spanned-0.6.9 \
serde_spanned-1.0.0 \
- serde_urlencoded-0.7.1 \
sharded-slab-0.1.7 \
shlex-1.3.0 \
siphasher-1.0.1 \
slab-0.4.11 \
slotmap-1.0.7 \
smallvec-1.15.1 \
- socket2-0.5.10 \
socket2-0.6.0 \
spin-0.10.0 \
spirv-0.3.0+sdk-1.3.268.0 \
@@ -410,7 +390,6 @@ CARGO_CRATES= addr2line-0.24.2 \
strum-0.27.2 \
strum_macros-0.26.4 \
strum_macros-0.27.2 \
- subtle-2.6.1 \
syn-2.0.104 \
sync_wrapper-1.0.2 \
synstructure-0.13.2 \
@@ -422,9 +401,9 @@ CARGO_CRATES= addr2line-0.24.2 \
text_placeholder-0.5.1 \
thin-vec-0.2.14 \
thiserror-1.0.69 \
- thiserror-2.0.15 \
+ thiserror-2.0.16 \
thiserror-impl-1.0.69 \
- thiserror-impl-2.0.15 \
+ thiserror-impl-2.0.16 \
thread-tree-0.3.3 \
thread_local-1.1.9 \
time-0.3.41 \
@@ -432,11 +411,8 @@ CARGO_CRATES= addr2line-0.24.2 \
time-macros-0.2.22 \
tinystr-0.8.1 \
tinytemplate-1.2.1 \
- tinyvec-1.9.0 \
- tinyvec_macros-0.1.1 \
tokio-1.47.1 \
tokio-macros-2.5.0 \
- tokio-rustls-0.26.2 \
tokio-util-0.7.15 \
toml-0.8.23 \
toml-0.9.2 \
@@ -447,7 +423,6 @@ CARGO_CRATES= addr2line-0.24.2 \
toml_write-0.1.2 \
toml_writer-1.0.2 \
tower-0.5.2 \
- tower-http-0.6.6 \
tower-layer-0.3.3 \
tower-lsp-server-0.22.1 \
tower-service-0.3.3 \
@@ -456,26 +431,26 @@ CARGO_CRATES= addr2line-0.24.2 \
tracing-attributes-0.1.30 \
tracing-core-0.1.34 \
tracing-log-0.2.0 \
- tracing-subscriber-0.3.19 \
+ tracing-subscriber-0.3.20 \
tracing-wasm-0.2.1 \
- tree-sitter-0.25.8 \
+ tree-sitter-0.25.9 \
tree-sitter-bash-0.25.0 \
tree-sitter-c-0.24.1 \
tree-sitter-c-sharp-0.23.1 \
tree-sitter-clojure-0.1.0 \
tree-sitter-cmake-0.7.1 \
tree-sitter-cpp-0.23.4 \
- tree-sitter-go-0.23.4 \
+ tree-sitter-go-0.25.0 \
tree-sitter-haskell-0.23.1 \
tree-sitter-html-0.23.2 \
tree-sitter-java-0.23.5 \
- tree-sitter-javascript-0.23.1 \
+ tree-sitter-javascript-0.25.0 \
tree-sitter-kotlin-ng-1.1.0 \
tree-sitter-language-0.1.5 \
tree-sitter-lua-0.2.0 \
tree-sitter-nix-0.3.0 \
- tree-sitter-php-0.23.11 \
- tree-sitter-python-0.23.6 \
+ tree-sitter-php-0.24.2 \
+ tree-sitter-python-0.25.0 \
tree-sitter-ruby-0.23.1 \
tree-sitter-rust-0.24.0 \
tree-sitter-scala-0.24.0 \
@@ -483,7 +458,6 @@ CARGO_CRATES= addr2line-0.24.2 \
tree-sitter-swift-0.7.1 \
tree-sitter-toml-ng-0.7.0 \
tree-sitter-typescript-0.23.2 \
- try-lock-0.2.5 \
typst-syntax-0.13.1 \
typst-timing-0.13.1 \
typst-utils-0.13.1 \
@@ -498,19 +472,17 @@ CARGO_CRATES= addr2line-0.24.2 \
unicode-width-0.2.1 \
unicode-xid-0.2.6 \
unscanny-0.1.0 \
- untrusted-0.9.0 \
unty-0.0.4 \
url-2.5.4 \
utf-8-0.7.6 \
utf8_iter-1.0.4 \
utf8parse-0.2.2 \
- uuid-1.18.0 \
+ uuid-1.18.1 \
valuable-0.1.1 \
variadics_please-1.1.0 \
version_check-0.9.5 \
void-1.0.2 \
walkdir-2.5.0 \
- want-0.3.1 \
wasi-0.11.1+wasi-snapshot-preview1 \
wasi-0.14.2+wasi-0.2.4 \
wasm-bindgen-0.2.100 \
@@ -522,7 +494,6 @@ CARGO_CRATES= addr2line-0.24.2 \
web-sys-0.3.77 \
web-time-1.1.0 \
web_atoms-0.1.3 \
- webpki-roots-1.0.2 \
wgpu-25.0.2 \
wgpu-core-25.0.2 \
wgpu-core-deps-apple-25.0.0 \
@@ -542,6 +513,7 @@ CARGO_CRATES= addr2line-0.24.2 \
windows-interface-0.58.0 \
windows-interface-0.59.1 \
windows-link-0.1.3 \
+ windows-link-0.2.0 \
windows-result-0.2.0 \
windows-result-0.3.4 \
windows-strings-0.1.0 \
@@ -580,7 +552,6 @@ CARGO_CRATES= addr2line-0.24.2 \
zerocopy-derive-0.8.26 \
zerofrom-0.1.6 \
zerofrom-derive-0.1.6 \
- zeroize-1.8.1 \
zerotrie-0.2.2 \
zerovec-0.11.2 \
zerovec-derive-0.11.1 \
diff --git a/textproc/harper/distinfo b/textproc/harper/distinfo
index 265e0cc94e43..09d7dd7dceab 100644
--- a/textproc/harper/distinfo
+++ b/textproc/harper/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1755588578
+TIMESTAMP = 1758831828
SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa
@@ -9,10 +9,8 @@ SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2d
SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
SHA256 (rust/crates/allocator-api2-0.2.21.crate) = 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923
SIZE (rust/crates/allocator-api2-0.2.21.crate) = 63622
-SHA256 (rust/crates/ammonia-4.1.1.crate) = d6b346764dd0814805de8abf899fe03065bcee69bb1a4771c785817e39f3978f
-SIZE (rust/crates/ammonia-4.1.1.crate) = 56029
-SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0
-SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674
+SHA256 (rust/crates/ammonia-4.1.2.crate) = 17e913097e1a2124b46746c980134e8c954bc17a6a59bb3fde96f088d126dde6
+SIZE (rust/crates/ammonia-4.1.2.crate) = 57453
SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311
SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243
SHA256 (rust/crates/anes-0.1.6.crate) = 4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299
@@ -27,8 +25,8 @@ SHA256 (rust/crates/anstyle-query-1.1.3.crate) = 6c8bdeb6047d8983be085bab0ba1472
SIZE (rust/crates/anstyle-query-1.1.3.crate) = 10190
SHA256 (rust/crates/anstyle-wincon-3.0.9.crate) = 403f75924867bb1033c59fbf0797484329750cfbe3c4325cd33127941fabc882
SIZE (rust/crates/anstyle-wincon-3.0.9.crate) = 12561
-SHA256 (rust/crates/anyhow-1.0.99.crate) = b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100
-SIZE (rust/crates/anyhow-1.0.99.crate) = 53809
+SHA256 (rust/crates/anyhow-1.0.100.crate) = a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61
+SIZE (rust/crates/anyhow-1.0.100.crate) = 54059
SHA256 (rust/crates/arbitrary-1.4.1.crate) = dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223
SIZE (rust/crates/arbitrary-1.4.1.crate) = 36816
SHA256 (rust/crates/ariadne-0.4.1.crate) = 44055e597c674aef7cb903b2b9f6e4cba1277ed0d2d61dae7cd52d7ffa81f8e2
@@ -45,8 +43,6 @@ SHA256 (rust/crates/autocfg-1.5.0.crate) = c08606f8c3cbf4ce6ec8e28fb0014a2c08670
SIZE (rust/crates/autocfg-1.5.0.crate) = 18729
SHA256 (rust/crates/backtrace-0.3.75.crate) = 6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002
SIZE (rust/crates/backtrace-0.3.75.crate) = 92665
-SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6
-SIZE (rust/crates/base64-0.22.1.crate) = 81597
SHA256 (rust/crates/bincode-2.0.1.crate) = 36eaf5d7b090263e8150820482d5d93cd964a81e4019913c972f4edcc6edb740
SIZE (rust/crates/bincode-2.0.1.crate) = 70469
SHA256 (rust/crates/bit-set-0.8.0.crate) = 08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3
@@ -55,8 +51,8 @@ SHA256 (rust/crates/bit-vec-0.8.0.crate) = 5e764a1d40d510daf35e07be9eb06e7577090
SIZE (rust/crates/bit-vec-0.8.0.crate) = 24132
SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
-SHA256 (rust/crates/bitflags-2.9.2.crate) = 6a65b545ab31d687cff52899d4890855fec459eb6afe0da6417b8a18da87aa29
-SIZE (rust/crates/bitflags-2.9.2.crate) = 47977
+SHA256 (rust/crates/bitflags-2.9.4.crate) = 2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394
+SIZE (rust/crates/bitflags-2.9.4.crate) = 47950
SHA256 (rust/crates/blanket-0.4.0.crate) = 56791e4bd64c99fc361e01008f45c984baa93f12a0957d1b3c51dd2c6baab453
SIZE (rust/crates/blanket-0.4.0.crate) = 20262
SHA256 (rust/crates/block-0.1.6.crate) = 0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a
@@ -125,20 +121,20 @@ SHA256 (rust/crates/cfg-if-1.0.1.crate) = 9555578bc9e57714c812a1f84e4fc5b4d21fcb
SIZE (rust/crates/cfg-if-1.0.1.crate) = 8683
SHA256 (rust/crates/cfg_aliases-0.2.1.crate) = 613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724
SIZE (rust/crates/cfg_aliases-0.2.1.crate) = 6355
-SHA256 (rust/crates/chrono-0.4.41.crate) = c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d
-SIZE (rust/crates/chrono-0.4.41.crate) = 234621
+SHA256 (rust/crates/chrono-0.4.42.crate) = 145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2
+SIZE (rust/crates/chrono-0.4.42.crate) = 238174
SHA256 (rust/crates/ciborium-0.2.2.crate) = 42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e
SIZE (rust/crates/ciborium-0.2.2.crate) = 35611
SHA256 (rust/crates/ciborium-io-0.2.2.crate) = 05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757
SIZE (rust/crates/ciborium-io-0.2.2.crate) = 6697
SHA256 (rust/crates/ciborium-ll-0.2.2.crate) = 57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9
SIZE (rust/crates/ciborium-ll-0.2.2.crate) = 14695
-SHA256 (rust/crates/clap-4.5.43.crate) = 50fd97c9dc2399518aa331917ac6f274280ec5eb34e555dd291899745c48ec6f
-SIZE (rust/crates/clap-4.5.43.crate) = 58340
-SHA256 (rust/crates/clap_builder-4.5.43.crate) = c35b5830294e1fa0462034af85cc95225a4cb07092c088c55bda3147cfcd8f65
-SIZE (rust/crates/clap_builder-4.5.43.crate) = 169708
-SHA256 (rust/crates/clap_derive-4.5.41.crate) = ef4f52386a59ca4c860f7393bcf8abd8dfd91ecccc0f774635ff68e92eeef491
-SIZE (rust/crates/clap_derive-4.5.41.crate) = 33493
+SHA256 (rust/crates/clap-4.5.48.crate) = e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae
+SIZE (rust/crates/clap-4.5.48.crate) = 61935
+SHA256 (rust/crates/clap_builder-4.5.48.crate) = c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9
+SIZE (rust/crates/clap_builder-4.5.48.crate) = 170133
+SHA256 (rust/crates/clap_derive-4.5.47.crate) = bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c
+SIZE (rust/crates/clap_derive-4.5.47.crate) = 33550
SHA256 (rust/crates/clap_lex-0.7.5.crate) = b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675
SIZE (rust/crates/clap_lex-0.7.5.crate) = 13469
SHA256 (rust/crates/codespan-reporting-0.12.0.crate) = fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81
@@ -309,6 +305,8 @@ SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da2
SIZE (rust/crates/fnv-1.0.7.crate) = 11266
SHA256 (rust/crates/foldhash-0.1.5.crate) = d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2
SIZE (rust/crates/foldhash-0.1.5.crate) = 21901
+SHA256 (rust/crates/foldhash-0.2.0.crate) = 77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb
+SIZE (rust/crates/foldhash-0.2.0.crate) = 23329
SHA256 (rust/crates/foreign-types-0.5.0.crate) = d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965
SIZE (rust/crates/foreign-types-0.5.0.crate) = 7824
SHA256 (rust/crates/foreign-types-macros-0.2.3.crate) = 1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742
@@ -409,6 +407,8 @@ SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b1
SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498
SHA256 (rust/crates/hashbrown-0.15.5.crate) = 9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1
SIZE (rust/crates/hashbrown-0.15.5.crate) = 140908
+SHA256 (rust/crates/hashbrown-0.16.0.crate) = 5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d
+SIZE (rust/crates/hashbrown-0.16.0.crate) = 141708
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
SHA256 (rust/crates/hermit-abi-0.5.2.crate) = fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c
@@ -417,20 +417,8 @@ SHA256 (rust/crates/hexf-parse-0.2.1.crate) = dfa686283ad6dd069f105e5ab091b04c62
SIZE (rust/crates/hexf-parse-0.2.1.crate) = 4662
SHA256 (rust/crates/html5ever-0.35.0.crate) = 55d958c2f74b664487a2035fe1dadb032c48718a03b63f3ab0b8537db8549ed4
SIZE (rust/crates/html5ever-0.35.0.crate) = 76142
-SHA256 (rust/crates/http-1.3.1.crate) = f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565
-SIZE (rust/crates/http-1.3.1.crate) = 106063
-SHA256 (rust/crates/http-body-1.0.1.crate) = 1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184
-SIZE (rust/crates/http-body-1.0.1.crate) = 6125
-SHA256 (rust/crates/http-body-util-0.1.3.crate) = b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a
-SIZE (rust/crates/http-body-util-0.1.3.crate) = 16975
SHA256 (rust/crates/httparse-1.10.1.crate) = 6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87
SIZE (rust/crates/httparse-1.10.1.crate) = 45190
-SHA256 (rust/crates/hyper-1.6.0.crate) = cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80
-SIZE (rust/crates/hyper-1.6.0.crate) = 153923
-SHA256 (rust/crates/hyper-rustls-0.27.7.crate) = e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58
-SIZE (rust/crates/hyper-rustls-0.27.7.crate) = 35435
-SHA256 (rust/crates/hyper-util-0.1.16.crate) = 8d9b05277c7e8da2c93a568989bb6207bef0112e8d17df7a6eda4a3cf143bc5e
-SIZE (rust/crates/hyper-util-0.1.16.crate) = 101184
SHA256 (rust/crates/iana-time-zone-0.1.63.crate) = b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8
SIZE (rust/crates/iana-time-zone-0.1.63.crate) = 32919
SHA256 (rust/crates/iana-time-zone-haiku-0.1.2.crate) = f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f
@@ -455,14 +443,10 @@ SHA256 (rust/crates/idna-1.0.3.crate) = 686f825264d630750a544639377bae737628043f
SIZE (rust/crates/idna-1.0.3.crate) = 142515
SHA256 (rust/crates/idna_adapter-1.2.1.crate) = 3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344
SIZE (rust/crates/idna_adapter-1.2.1.crate) = 10389
-SHA256 (rust/crates/indexmap-2.10.0.crate) = fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661
-SIZE (rust/crates/indexmap-2.10.0.crate) = 95836
+SHA256 (rust/crates/indexmap-2.11.1.crate) = 206a8042aec68fa4a62e8d3f7aa4ceb508177d9324faf261e1959e495b7a1921
+SIZE (rust/crates/indexmap-2.11.1.crate) = 99966
SHA256 (rust/crates/io-uring-0.7.9.crate) = d93587f37623a1a17d94ef2bc9ada592f5465fe7732084ab7beefabe5c77c0c4
SIZE (rust/crates/io-uring-0.7.9.crate) = 99792
-SHA256 (rust/crates/ipnet-2.11.0.crate) = 469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130
-SIZE (rust/crates/ipnet-2.11.0.crate) = 29718
-SHA256 (rust/crates/iri-string-0.7.8.crate) = dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2
-SIZE (rust/crates/iri-string-0.7.8.crate) = 141493
SHA256 (rust/crates/is-docker-0.2.0.crate) = 928bae27f42bc99b60d9ac7334e3a21d10ad8f1835a4e12ec3ec0464765ed1b3
SIZE (rust/crates/is-docker-0.2.0.crate) = 2664
SHA256 (rust/crates/is-macro-0.3.7.crate) = 1d57a3e447e24c22647738e4607f1df1e0ec6f72e16182c4cd199f647cdfb0e4
@@ -507,10 +491,8 @@ SHA256 (rust/crates/lock_api-0.4.13.crate) = 96936507f153605bddfcda068dd804796c8
SIZE (rust/crates/lock_api-0.4.13.crate) = 28565
SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94
SIZE (rust/crates/log-0.4.27.crate) = 48120
-SHA256 (rust/crates/lru-0.16.0.crate) = 86ea4e65087ff52f3862caff188d489f1fab49a0cb09e01b2e3f1a617b10aaed
-SIZE (rust/crates/lru-0.16.0.crate) = 16517
-SHA256 (rust/crates/lru-slab-0.1.2.crate) = 112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154
-SIZE (rust/crates/lru-slab-0.1.2.crate) = 9090
+SHA256 (rust/crates/lru-0.16.1.crate) = bfe949189f46fabb938b3a9a0be30fdd93fd8a09260da863399a8cf3db756ec8
+SIZE (rust/crates/lru-0.16.1.crate) = 16604
SHA256 (rust/crates/lsp-types-0.97.0.crate) = 53353550a17c04ac46c585feb189c2db82154fc84b79c7a66c96c2c644f66071
SIZE (rust/crates/lsp-types-0.97.0.crate) = 70764
SHA256 (rust/crates/mac-0.1.1.crate) = c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4
@@ -555,8 +537,8 @@ SHA256 (rust/crates/ndk-sys-0.5.0+25.2.9519653.crate) = 8c196769dd60fd4f363e11d9
SIZE (rust/crates/ndk-sys-0.5.0+25.2.9519653.crate) = 307233
SHA256 (rust/crates/new_debug_unreachable-1.0.6.crate) = 650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086
SIZE (rust/crates/new_debug_unreachable-1.0.6.crate) = 2582
-SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84
-SIZE (rust/crates/nu-ansi-term-0.46.0.crate) = 24311
+SHA256 (rust/crates/nu-ansi-term-0.50.1.crate) = d4a28e057d01f97e61255210fcff094d74ed0466038633e95017f5beb68e4399
+SIZE (rust/crates/nu-ansi-term-0.50.1.crate) = 28536
SHA256 (rust/crates/num-0.4.3.crate) = 35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23
SIZE (rust/crates/num-0.4.3.crate) = 9575
SHA256 (rust/crates/num-bigint-0.4.6.crate) = a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9
@@ -597,8 +579,6 @@ SHA256 (rust/crates/ordered-float-4.6.0.crate) = 7bb71e1b3fa6ca1c61f383464aaf2bb
SIZE (rust/crates/ordered-float-4.6.0.crate) = 23633
SHA256 (rust/crates/ordered-float-5.0.0.crate) = e2c1f9f56e534ac6a9b8a4600bdf0f530fb393b5f393e7b4d03489c3cf0c3f01
SIZE (rust/crates/ordered-float-5.0.0.crate) = 23364
-SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39
-SIZE (rust/crates/overload-0.1.1.crate) = 24439
SHA256 (rust/crates/parking-2.2.1.crate) = f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba
SIZE (rust/crates/parking-2.2.1.crate) = 10685
SHA256 (rust/crates/parking_lot-0.12.4.crate) = 70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13
@@ -661,12 +641,6 @@ SHA256 (rust/crates/quickcheck-1.0.3.crate) = 588f6378e4dd99458b60ec275b4477add4
SIZE (rust/crates/quickcheck-1.0.3.crate) = 28069
SHA256 (rust/crates/quickcheck_macros-1.1.0.crate) = f71ee38b42f8459a88d3362be6f9b841ad2d5421844f61eb1c59c11bff3ac14a
SIZE (rust/crates/quickcheck_macros-1.1.0.crate) = 11744
-SHA256 (rust/crates/quinn-0.11.8.crate) = 626214629cda6781b6dc1d316ba307189c85ba657213ce642d9c77670f8202c8
-SIZE (rust/crates/quinn-0.11.8.crate) = 79949
-SHA256 (rust/crates/quinn-proto-0.11.12.crate) = 49df843a9161c85bb8aae55f101bc0bac8bcafd637a620d9122fd7e0b2f7422e
-SIZE (rust/crates/quinn-proto-0.11.12.crate) = 235821
-SHA256 (rust/crates/quinn-udp-0.5.13.crate) = fcebb1209ee276352ef14ff8732e24cc2b02bbac986cd74a4c81bcb2f9881970
-SIZE (rust/crates/quinn-udp-0.5.13.crate) = 32621
SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d
SIZE (rust/crates/quote-1.0.40.crate) = 31063
SHA256 (rust/crates/r-efi-5.3.0.crate) = 69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f
@@ -695,10 +669,10 @@ SHA256 (rust/crates/raw-window-handle-0.6.2.crate) = 20675572f6f24e9e76ef639bc55
SIZE (rust/crates/raw-window-handle-0.6.2.crate) = 20234
SHA256 (rust/crates/rawpointer-0.2.1.crate) = 60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3
SIZE (rust/crates/rawpointer-0.2.1.crate) = 7490
-SHA256 (rust/crates/rayon-1.10.0.crate) = b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa
-SIZE (rust/crates/rayon-1.10.0.crate) = 180155
-SHA256 (rust/crates/rayon-core-1.12.1.crate) = 1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2
-SIZE (rust/crates/rayon-core-1.12.1.crate) = 70701
+SHA256 (rust/crates/rayon-1.11.0.crate) = 368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f
+SIZE (rust/crates/rayon-1.11.0.crate) = 182470
+SHA256 (rust/crates/rayon-core-1.13.0.crate) = 22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91
+SIZE (rust/crates/rayon-core-1.13.0.crate) = 73151
SHA256 (rust/crates/reborrow-0.5.5.crate) = 03251193000f4bd3b042892be858ee50e8b3719f2b08e5833ac4353724632430
SIZE (rust/crates/reborrow-0.5.5.crate) = 3789
SHA256 (rust/crates/redox_syscall-0.5.17.crate) = 5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77
@@ -717,12 +691,8 @@ SHA256 (rust/crates/relative-path-1.9.3.crate) = ba39f3699c378cd8970968dcbff9c43
SIZE (rust/crates/relative-path-1.9.3.crate) = 22400
SHA256 (rust/crates/renderdoc-sys-1.1.0.crate) = 19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832
SIZE (rust/crates/renderdoc-sys-1.1.0.crate) = 10366
-SHA256 (rust/crates/reqwest-0.12.23.crate) = d429f34c8092b2d42c7c93cec323bb4adeb7c67698f70839adec842ec10c7ceb
-SIZE (rust/crates/reqwest-0.12.23.crate) = 161307
SHA256 (rust/crates/resolve-path-0.1.0.crate) = 321e5e41b3b192dab6f1e75b9deacb6688b4b8c5e68906a78e8f43e7c2887bb5
SIZE (rust/crates/resolve-path-0.1.0.crate) = 9129
-SHA256 (rust/crates/ring-0.17.14.crate) = a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7
-SIZE (rust/crates/ring-0.17.14.crate) = 1502610
SHA256 (rust/crates/rmp-0.8.14.crate) = 228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4
SIZE (rust/crates/rmp-0.8.14.crate) = 29687
SHA256 (rust/crates/rmp-serde-1.3.0.crate) = 52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db
@@ -737,18 +707,10 @@ SHA256 (rust/crates/rustc-demangle-0.1.26.crate) = 56f7d92ca342cea22a06f2121d944
SIZE (rust/crates/rustc-demangle-0.1.26.crate) = 30340
SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2
SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331
-SHA256 (rust/crates/rustc-hash-2.1.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d
-SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154
SHA256 (rust/crates/rustc_version-0.4.1.crate) = cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92
SIZE (rust/crates/rustc_version-0.4.1.crate) = 12245
SHA256 (rust/crates/rustix-1.0.8.crate) = 11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8
SIZE (rust/crates/rustix-1.0.8.crate) = 416688
-SHA256 (rust/crates/rustls-0.23.29.crate) = 2491382039b29b9b11ff08b76ff6c97cf287671dbb74f0be44bda389fffe9bd1
-SIZE (rust/crates/rustls-0.23.29.crate) = 370867
-SHA256 (rust/crates/rustls-pki-types-1.12.0.crate) = 229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79
-SIZE (rust/crates/rustls-pki-types-1.12.0.crate) = 64740
-SHA256 (rust/crates/rustls-webpki-0.103.4.crate) = 0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc
-SIZE (rust/crates/rustls-webpki-0.103.4.crate) = 84241
SHA256 (rust/crates/rustversion-1.0.21.crate) = 8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d
SIZE (rust/crates/rustversion-1.0.21.crate) = 21001
SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f
@@ -765,24 +727,24 @@ SHA256 (rust/crates/semver-1.0.26.crate) = 56e6fa9c48d24d85fb3de5ad847117517440f
SIZE (rust/crates/semver-1.0.26.crate) = 31303
SHA256 (rust/crates/seq-macro-0.3.6.crate) = 1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc
SIZE (rust/crates/seq-macro-0.3.6.crate) = 16031
-SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6
-SIZE (rust/crates/serde-1.0.219.crate) = 78983
+SHA256 (rust/crates/serde-1.0.226.crate) = 0dca6411025b24b60bfa7ec1fe1f8e710ac09782dca409ee8237ba74b51295fd
+SIZE (rust/crates/serde-1.0.226.crate) = 28484
SHA256 (rust/crates/serde-wasm-bindgen-0.6.5.crate) = 8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b
SIZE (rust/crates/serde-wasm-bindgen-0.6.5.crate) = 21098
SHA256 (rust/crates/serde_bytes-0.11.17.crate) = 8437fd221bde2d4ca316d61b90e337e9e702b3820b87d63caa9ba6c02bd06d96
SIZE (rust/crates/serde_bytes-0.11.17.crate) = 13256
-SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00
-SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
-SHA256 (rust/crates/serde_json-1.0.142.crate) = 030fedb782600dcbd6f02d479bf0d817ac3bb40d644745b769d6a96bc3afc5a7
-SIZE (rust/crates/serde_json-1.0.142.crate) = 155363
+SHA256 (rust/crates/serde_core-1.0.226.crate) = ba2ba63999edb9dac981fb34b3e5c0d111a69b0924e253ed29d83f7c99e966a4
+SIZE (rust/crates/serde_core-1.0.226.crate) = 63014
+SHA256 (rust/crates/serde_derive-1.0.226.crate) = 8db53ae22f34573731bafa1db20f04027b2d25e02d8205921b569171699cdb33
+SIZE (rust/crates/serde_derive-1.0.226.crate) = 58702
+SHA256 (rust/crates/serde_json-1.0.145.crate) = 402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c
+SIZE (rust/crates/serde_json-1.0.145.crate) = 155748
SHA256 (rust/crates/serde_repr-0.1.20.crate) = 175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c
SIZE (rust/crates/serde_repr-0.1.20.crate) = 12627
SHA256 (rust/crates/serde_spanned-0.6.9.crate) = bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3
SIZE (rust/crates/serde_spanned-0.6.9.crate) = 10210
SHA256 (rust/crates/serde_spanned-1.0.0.crate) = 40734c41988f7306bb04f0ecf60ec0f3f1caa34290e4e8ea471dcd3346483b83
SIZE (rust/crates/serde_spanned-1.0.0.crate) = 10956
-SHA256 (rust/crates/serde_urlencoded-0.7.1.crate) = d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd
-SIZE (rust/crates/serde_urlencoded-0.7.1.crate) = 12822
SHA256 (rust/crates/sharded-slab-0.1.7.crate) = f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6
SIZE (rust/crates/sharded-slab-0.1.7.crate) = 58227
SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
@@ -795,8 +757,6 @@ SHA256 (rust/crates/slotmap-1.0.7.crate) = dbff4acf519f630b3a3ddcfaea6c06b42174d
SIZE (rust/crates/slotmap-1.0.7.crate) = 61390
SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03
SIZE (rust/crates/smallvec-1.15.1.crate) = 38116
-SHA256 (rust/crates/socket2-0.5.10.crate) = e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678
-SIZE (rust/crates/socket2-0.5.10.crate) = 58169
SHA256 (rust/crates/socket2-0.6.0.crate) = 233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807
SIZE (rust/crates/socket2-0.6.0.crate) = 57974
SHA256 (rust/crates/spin-0.10.0.crate) = d5fe4ccb98d9c292d56fec89a5e07da7fc4cf0dc11e156b41793132775d3e591
@@ -823,8 +783,6 @@ SHA256 (rust/crates/strum_macros-0.26.4.crate) = 4c6bee85a5a24955dc440386795aa37
SIZE (rust/crates/strum_macros-0.26.4.crate) = 27531
SHA256 (rust/crates/strum_macros-0.27.2.crate) = 7695ce3845ea4b33927c055a39dc438a45b059f7c1b3d91d38d10355fb8cbca7
SIZE (rust/crates/strum_macros-0.27.2.crate) = 30522
-SHA256 (rust/crates/subtle-2.6.1.crate) = 13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292
-SIZE (rust/crates/subtle-2.6.1.crate) = 14562
SHA256 (rust/crates/syn-2.0.104.crate) = 17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40
SIZE (rust/crates/syn-2.0.104.crate) = 299699
SHA256 (rust/crates/sync_wrapper-1.0.2.crate) = 0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263
@@ -847,12 +805,12 @@ SHA256 (rust/crates/thin-vec-0.2.14.crate) = 144f754d318415ac792f9d69fc87abbbfc0
SIZE (rust/crates/thin-vec-0.2.14.crate) = 35087
SHA256 (rust/crates/thiserror-1.0.69.crate) = b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52
SIZE (rust/crates/thiserror-1.0.69.crate) = 22198
-SHA256 (rust/crates/thiserror-2.0.15.crate) = 80d76d3f064b981389ecb4b6b7f45a0bf9fdac1d5b9204c7bd6714fecc302850
-SIZE (rust/crates/thiserror-2.0.15.crate) = 29026
+SHA256 (rust/crates/thiserror-2.0.16.crate) = 3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0
+SIZE (rust/crates/thiserror-2.0.16.crate) = 29095
SHA256 (rust/crates/thiserror-impl-1.0.69.crate) = 4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1
SIZE (rust/crates/thiserror-impl-1.0.69.crate) = 18365
-SHA256 (rust/crates/thiserror-impl-2.0.15.crate) = 44d29feb33e986b6ea906bd9c3559a856983f92371b3eaa5e83782a351623de0
-SIZE (rust/crates/thiserror-impl-2.0.15.crate) = 21214
+SHA256 (rust/crates/thiserror-impl-2.0.16.crate) = 6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960
+SIZE (rust/crates/thiserror-impl-2.0.16.crate) = 21214
SHA256 (rust/crates/thread-tree-0.3.3.crate) = ffbd370cb847953a25954d9f63e14824a36113f8c72eecf6eccef5dc4b45d630
SIZE (rust/crates/thread-tree-0.3.3.crate) = 12263
SHA256 (rust/crates/thread_local-1.1.9.crate) = f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185
@@ -867,16 +825,10 @@ SHA256 (rust/crates/tinystr-0.8.1.crate) = 5d4f6d1145dcb577acf783d4e601bc1d76a13
SIZE (rust/crates/tinystr-0.8.1.crate) = 23333
SHA256 (rust/crates/tinytemplate-1.2.1.crate) = be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc
SIZE (rust/crates/tinytemplate-1.2.1.crate) = 26490
-SHA256 (rust/crates/tinyvec-1.9.0.crate) = 09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71
-SIZE (rust/crates/tinyvec-1.9.0.crate) = 54137
-SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20
-SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865
SHA256 (rust/crates/tokio-1.47.1.crate) = 89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038
SIZE (rust/crates/tokio-1.47.1.crate) = 829790
SHA256 (rust/crates/tokio-macros-2.5.0.crate) = 6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8
SIZE (rust/crates/tokio-macros-2.5.0.crate) = 12617
-SHA256 (rust/crates/tokio-rustls-0.26.2.crate) = 8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b
-SIZE (rust/crates/tokio-rustls-0.26.2.crate) = 31655
SHA256 (rust/crates/tokio-util-0.7.15.crate) = 66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df
SIZE (rust/crates/tokio-util-0.7.15.crate) = 124255
SHA256 (rust/crates/toml-0.8.23.crate) = dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362
@@ -897,8 +849,6 @@ SHA256 (rust/crates/toml_writer-1.0.2.crate) = fcc842091f2def52017664b53082ecbbe
SIZE (rust/crates/toml_writer-1.0.2.crate) = 16988
SHA256 (rust/crates/tower-0.5.2.crate) = d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9
SIZE (rust/crates/tower-0.5.2.crate) = 109417
-SHA256 (rust/crates/tower-http-0.6.6.crate) = adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2
-SIZE (rust/crates/tower-http-0.6.6.crate) = 133515
SHA256 (rust/crates/tower-layer-0.3.3.crate) = 121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e
SIZE (rust/crates/tower-layer-0.3.3.crate) = 6180
SHA256 (rust/crates/tower-lsp-server-0.22.1.crate) = 88f3f8ec0dcfdda4d908bad2882fe0f89cf2b606e78d16491323e918dfa95765
@@ -915,12 +865,12 @@ SHA256 (rust/crates/tracing-core-0.1.34.crate) = b9d12581f227e93f094d3af2ae690a5
SIZE (rust/crates/tracing-core-0.1.34.crate) = 63760
SHA256 (rust/crates/tracing-log-0.2.0.crate) = ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3
SIZE (rust/crates/tracing-log-0.2.0.crate) = 17561
-SHA256 (rust/crates/tracing-subscriber-0.3.19.crate) = e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008
-SIZE (rust/crates/tracing-subscriber-0.3.19.crate) = 198345
+SHA256 (rust/crates/tracing-subscriber-0.3.20.crate) = 2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5
+SIZE (rust/crates/tracing-subscriber-0.3.20.crate) = 212274
SHA256 (rust/crates/tracing-wasm-0.2.1.crate) = 4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07
SIZE (rust/crates/tracing-wasm-0.2.1.crate) = 9372
-SHA256 (rust/crates/tree-sitter-0.25.8.crate) = 6d7b8994f367f16e6fa14b5aebbcb350de5d7cbea82dc5b00ae997dd71680dd2
-SIZE (rust/crates/tree-sitter-0.25.8.crate) = 197529
+SHA256 (rust/crates/tree-sitter-0.25.9.crate) = ccd2a058a86cfece0bf96f7cce1021efef9c8ed0e892ab74639173e5ed7a34fa
+SIZE (rust/crates/tree-sitter-0.25.9.crate) = 197617
SHA256 (rust/crates/tree-sitter-bash-0.25.0.crate) = 871b0606e667e98a1237ebdc1b0d7056e0aebfdc3141d12b399865d4cb6ed8a6
SIZE (rust/crates/tree-sitter-bash-0.25.0.crate) = 443064
SHA256 (rust/crates/tree-sitter-c-0.24.1.crate) = 1a3aad8f0129083a59fe8596157552d2bb7148c492d44c21558d68ca1c722707
@@ -933,16 +883,16 @@ SHA256 (rust/crates/tree-sitter-cmake-0.7.1.crate) = 7c1b35d1dd7396d24b3e826bb0f
SIZE (rust/crates/tree-sitter-cmake-0.7.1.crate) = 49838
SHA256 (rust/crates/tree-sitter-cpp-0.23.4.crate) = df2196ea9d47b4ab4a31b9297eaa5a5d19a0b121dceb9f118f6790ad0ab94743
SIZE (rust/crates/tree-sitter-cpp-0.23.4.crate) = 971129
-SHA256 (rust/crates/tree-sitter-go-0.23.4.crate) = b13d476345220dbe600147dd444165c5791bf85ef53e28acbedd46112ee18431
-SIZE (rust/crates/tree-sitter-go-0.23.4.crate) = 105624
+SHA256 (rust/crates/tree-sitter-go-0.25.0.crate) = c8560a4d2f835cc0d4d2c2e03cbd0dde2f6114b43bc491164238d333e28b16ea
+SIZE (rust/crates/tree-sitter-go-0.25.0.crate) = 110415
SHA256 (rust/crates/tree-sitter-haskell-0.23.1.crate) = 977c51e504548cba13fc27cb5a2edab2124cf6716a1934915d07ab99523b05a4
SIZE (rust/crates/tree-sitter-haskell-0.23.1.crate) = 842034
SHA256 (rust/crates/tree-sitter-html-0.23.2.crate) = 261b708e5d92061ede329babaaa427b819329a9d427a1d710abb0f67bbef63ee
SIZE (rust/crates/tree-sitter-html-0.23.2.crate) = 21295
SHA256 (rust/crates/tree-sitter-java-0.23.5.crate) = 0aa6cbcdc8c679b214e616fd3300da67da0e492e066df01bcf5a5921a71e90d6
SIZE (rust/crates/tree-sitter-java-0.23.5.crate) = 159677
-SHA256 (rust/crates/tree-sitter-javascript-0.23.1.crate) = bf40bf599e0416c16c125c3cec10ee5ddc7d1bb8b0c60fa5c4de249ad34dc1b1
-SIZE (rust/crates/tree-sitter-javascript-0.23.1.crate) = 133198
+SHA256 (rust/crates/tree-sitter-javascript-0.25.0.crate) = 68204f2abc0627a90bdf06e605f5c470aa26fdcb2081ea553a04bdad756693f5
+SIZE (rust/crates/tree-sitter-javascript-0.25.0.crate) = 151425
SHA256 (rust/crates/tree-sitter-kotlin-ng-1.1.0.crate) = e800ebbda938acfbf224f4d2c34947a31994b1295ee6e819b65226c7b51b4450
SIZE (rust/crates/tree-sitter-kotlin-ng-1.1.0.crate) = 1113824
SHA256 (rust/crates/tree-sitter-language-0.1.5.crate) = c4013970217383f67b18aef68f6fb2e8d409bc5755227092d32efb0422ba24b8
@@ -951,10 +901,10 @@ SHA256 (rust/crates/tree-sitter-lua-0.2.0.crate) = 5cdb9adf0965fec58e7660cbb3a05
SIZE (rust/crates/tree-sitter-lua-0.2.0.crate) = 40860
SHA256 (rust/crates/tree-sitter-nix-0.3.0.crate) = 4952a9733f3a98f6683a0ccd1035d84ab7a52f7e84eeed58548d86765ad92de3
SIZE (rust/crates/tree-sitter-nix-0.3.0.crate) = 45486
-SHA256 (rust/crates/tree-sitter-php-0.23.11.crate) = f066e94e9272cfe4f1dcb07a1c50c66097eca648f2d7233d299c8ae9ed8c130c
-SIZE (rust/crates/tree-sitter-php-0.23.11.crate) = 475556
-SHA256 (rust/crates/tree-sitter-python-0.23.6.crate) = 3d065aaa27f3aaceaf60c1f0e0ac09e1cb9eb8ed28e7bcdaa52129cffc7f4b04
-SIZE (rust/crates/tree-sitter-python-0.23.6.crate) = 175831
+SHA256 (rust/crates/tree-sitter-php-0.24.2.crate) = 0d8c17c3ab69052c5eeaa7ff5cd972dd1bc25d1b97ee779fec391ad3b5df5592
+SIZE (rust/crates/tree-sitter-php-0.24.2.crate) = 623737
+SHA256 (rust/crates/tree-sitter-python-0.25.0.crate) = 6bf85fd39652e740bf60f46f4cda9492c3a9ad75880575bf14960f775cb74a1c
+SIZE (rust/crates/tree-sitter-python-0.25.0.crate) = 180146
SHA256 (rust/crates/tree-sitter-ruby-0.23.1.crate) = be0484ea4ef6bb9c575b4fdabde7e31340a8d2dbc7d52b321ac83da703249f95
SIZE (rust/crates/tree-sitter-ruby-0.23.1.crate) = 512753
SHA256 (rust/crates/tree-sitter-rust-0.24.0.crate) = 4b9b18034c684a2420722be8b2a91c9c44f2546b631c039edf575ccba8c61be1
@@ -969,8 +919,6 @@ SHA256 (rust/crates/tree-sitter-toml-ng-0.7.0.crate) = e9adc2c898ae49730e857d75b
SIZE (rust/crates/tree-sitter-toml-ng-0.7.0.crate) = 22919
SHA256 (rust/crates/tree-sitter-typescript-0.23.2.crate) = 6c5f76ed8d947a75cc446d5fccd8b602ebf0cde64ccf2ffa434d873d7a575eff
SIZE (rust/crates/tree-sitter-typescript-0.23.2.crate) = 829457
-SHA256 (rust/crates/try-lock-0.2.5.crate) = e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b
-SIZE (rust/crates/try-lock-0.2.5.crate) = 4314
SHA256 (rust/crates/typst-syntax-0.13.1.crate) = 5ba949ac75a374ea6b2f61d32e6c63acb818e6179d16f78b2cba988fbb5e23a8
SIZE (rust/crates/typst-syntax-0.13.1.crate) = 73642
SHA256 (rust/crates/typst-timing-0.13.1.crate) = 8ba4541664e98be2023db2267d92af206190eb903063a0229c668e1ab9dca976
@@ -999,8 +947,6 @@ SHA256 (rust/crates/unicode-xid-0.2.6.crate) = ebc1c04c71510c7f702b52b7c350734c9
SIZE (rust/crates/unicode-xid-0.2.6.crate) = 15744
SHA256 (rust/crates/unscanny-0.1.0.crate) = e9df2af067a7953e9c3831320f35c1cc0600c30d44d9f7a12b01db1cd88d6b47
SIZE (rust/crates/unscanny-0.1.0.crate) = 10338
-SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1
-SIZE (rust/crates/untrusted-0.9.0.crate) = 14447
SHA256 (rust/crates/unty-0.0.4.crate) = 6d49784317cd0d1ee7ec5c716dd598ec5b4483ea832a2dced265471cc0f690ae
SIZE (rust/crates/unty-0.0.4.crate) = 7200
SHA256 (rust/crates/url-2.5.4.crate) = 32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60
@@ -1011,8 +957,8 @@ SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59
SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437
SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821
SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
-SHA256 (rust/crates/uuid-1.18.0.crate) = f33196643e165781c20a5ead5582283a7dacbb87855d867fbc2df3f81eddc1be
-SIZE (rust/crates/uuid-1.18.0.crate) = 59782
+SHA256 (rust/crates/uuid-1.18.1.crate) = 2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2
+SIZE (rust/crates/uuid-1.18.1.crate) = 60468
SHA256 (rust/crates/valuable-0.1.1.crate) = ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65
SIZE (rust/crates/valuable-0.1.1.crate) = 28679
SHA256 (rust/crates/variadics_please-1.1.0.crate) = 41b6d82be61465f97d42bd1d15bf20f3b0a3a0905018f38f9d6f6962055b0b5c
@@ -1023,8 +969,6 @@ SHA256 (rust/crates/void-1.0.2.crate) = 6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacff
SIZE (rust/crates/void-1.0.2.crate) = 2356
SHA256 (rust/crates/walkdir-2.5.0.crate) = 29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b
SIZE (rust/crates/walkdir-2.5.0.crate) = 23951
-SHA256 (rust/crates/want-0.3.1.crate) = bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e
-SIZE (rust/crates/want-0.3.1.crate) = 6398
SHA256 (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b
SIZE (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = 28477
SHA256 (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3
@@ -1047,8 +991,6 @@ SHA256 (rust/crates/web-time-1.1.0.crate) = 5a6580f308b1fad9207618087a65c04e7a10
SIZE (rust/crates/web-time-1.1.0.crate) = 18026
SHA256 (rust/crates/web_atoms-0.1.3.crate) = 57ffde1dc01240bdf9992e3205668b235e59421fd085e8a317ed98da0178d414
SIZE (rust/crates/web_atoms-0.1.3.crate) = 27392
-SHA256 (rust/crates/webpki-roots-1.0.2.crate) = 7e8983c3ab33d6fb807cfcdad2491c4ea8cbc8ed839181c7dfd9c67c83e261b2
-SIZE (rust/crates/webpki-roots-1.0.2.crate) = 255109
SHA256 (rust/crates/wgpu-25.0.2.crate) = ec8fb398f119472be4d80bc3647339f56eb63b2a331f6a3d16e25d8144197dd9
SIZE (rust/crates/wgpu-25.0.2.crate) = 189625
SHA256 (rust/crates/wgpu-core-25.0.2.crate) = f7b882196f8368511d613c6aeec80655160db6646aebddf8328879a88d54e500
@@ -1087,6 +1029,8 @@ SHA256 (rust/crates/windows-interface-0.59.1.crate) = bd9211b69f8dcdfa817bfd14bf
SIZE (rust/crates/windows-interface-0.59.1.crate) = 11735
SHA256 (rust/crates/windows-link-0.1.3.crate) = 5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a
SIZE (rust/crates/windows-link-0.1.3.crate) = 6154
+SHA256 (rust/crates/windows-link-0.2.0.crate) = 45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65
+SIZE (rust/crates/windows-link-0.2.0.crate) = 6170
SHA256 (rust/crates/windows-result-0.2.0.crate) = 1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e
SIZE (rust/crates/windows-result-0.2.0.crate) = 12756
SHA256 (rust/crates/windows-result-0.3.4.crate) = 56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6
@@ -1163,8 +1107,6 @@ SHA256 (rust/crates/zerofrom-0.1.6.crate) = 50cc42e0333e05660c3587f3bf9d0478688e
SIZE (rust/crates/zerofrom-0.1.6.crate) = 5669
SHA256 (rust/crates/zerofrom-derive-0.1.6.crate) = d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502
SIZE (rust/crates/zerofrom-derive-0.1.6.crate) = 8305
-SHA256 (rust/crates/zeroize-1.8.1.crate) = ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde
-SIZE (rust/crates/zeroize-1.8.1.crate) = 20029
SHA256 (rust/crates/zerotrie-0.2.2.crate) = 36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595
SIZE (rust/crates/zerotrie-0.2.2.crate) = 74423
SHA256 (rust/crates/zerovec-0.11.2.crate) = 4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428
@@ -1173,5 +1115,5 @@ SHA256 (rust/crates/zerovec-derive-0.11.1.crate) = 5b96237efa0c878c64bd89c436f66
SIZE (rust/crates/zerovec-derive-0.11.1.crate) = 21294
SHA256 (rust/crates/zip-1.1.4.crate) = 9cc23c04387f4da0374be4533ad1208cbb091d5c11d070dfef13676ad6497164
SIZE (rust/crates/zip-1.1.4.crate) = 77910
-SHA256 (Automattic-harper-v0.58.0_GH0.tar.gz) = 4611b9d16301aae5eabf8411657ecee78288ff46801dfd0d4a0069173f0e763a
-SIZE (Automattic-harper-v0.58.0_GH0.tar.gz) = 7311147
+SHA256 (Automattic-harper-v0.65.0_GH0.tar.gz) = f62e8787cd83eab09c01b1c7845d2729193d9b72a7594b869c0724c54209874e
+SIZE (Automattic-harper-v0.65.0_GH0.tar.gz) = 7388729
diff --git a/textproc/highlight/Makefile b/textproc/highlight/Makefile
index 58634415df7a..eafc1e8e7bc6 100644
--- a/textproc/highlight/Makefile
+++ b/textproc/highlight/Makefile
@@ -1,10 +1,11 @@
PORTNAME= highlight
-PORTVERSION= 4.16
+DISTVERSION= 4.16
+PORTREVISION= 1
PORTEPOCH= 3
CATEGORIES= textproc
MASTER_SITES= http://andre-simon.de/zip/
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= mew14930xvi@inbox.lv
COMMENT= Customizable syntax highlighter
WWW= http://andre-simon.de/
@@ -26,8 +27,8 @@ PORTDOCS= *
OPTIONS_DEFINE= DOCS GUI
OPTIONS_SUB= yes
-GUI_USES= qt:5
-GUI_USE= QT=buildtools:build,qmake:build,core,gui,widgets
+GUI_USES= gl qt:6,qmake
+GUI_USE= GL=opengl QT=tools:build,base
GUI_MAKE_ENV= QMAKE="${QMAKE}"
GUI_ALL_TARGET= gui
GUI_INSTALL_TARGET= install-gui
diff --git a/textproc/hs-pandoc/Makefile b/textproc/hs-pandoc/Makefile
index e5aa0429e9ff..a67993d391a7 100644
--- a/textproc/hs-pandoc/Makefile
+++ b/textproc/hs-pandoc/Makefile
@@ -1,5 +1,6 @@
PORTNAME= pandoc
-DISTVERSION= 3.7.0.2
+DISTVERSION= 3.8.1
+PORTREVISION= 1
CATEGORIES= textproc haskell
MAINTAINER= haskell@FreeBSD.org
@@ -16,13 +17,13 @@ USE_CABAL= Glob-0.10.2_3 \
JuicyPixels-3.3.9 \
OneTuple-0.4.2_1 \
Only-0.1_2 \
- QuickCheck-2.15.0.1_1 \
+ QuickCheck-2.16.0.0 \
StateVar-1.2.2 \
- aeson-2.2.3.0_3 \
+ aeson-2.2.3.0_4 \
aeson-pretty-0.8.10 \
- alex-3.5.3.0 \
- ansi-terminal-1.1.2 \
- ansi-terminal-types-1.1 \
+ alex-3.5.4.0 \
+ ansi-terminal-1.1.3 \
+ ansi-terminal-types-1.1.3 \
appar-0.1.8 \
asn1-encoding-0.9.6_2 \
asn1-parse-0.9.5 \
@@ -40,7 +41,7 @@ USE_CABAL= Glob-0.10.2_3 \
basement-0.0.16 \
bifunctors-5.6.2_2 \
bitvec-1.1.5.0_3 \
- blaze-builder-0.4.3 \
+ blaze-builder-0.4.4.1 \
blaze-html-0.9.2.0_1 \
blaze-markup-0.8.3.0_2 \
boring-0.2.2_1 \
@@ -49,11 +50,11 @@ USE_CABAL= Glob-0.10.2_3 \
cabal-doctest-1.0.11 \
call-stack-0.4.0 \
case-insensitive-1.2.1.0 \
- cassava-0.5.4.0 \
- cborg-0.2.10.0_2 \
+ cassava-0.5.4.1 \
+ cborg-0.2.10.0_3 \
cereal-0.5.8.3 \
character-ps-0.1 \
- citeproc-0.9.0.1 \
+ citeproc-0.10 \
cmdargs-0.10.22 \
colour-2.3.6 \
commonmark-0.2.6.1 \
@@ -61,14 +62,15 @@ USE_CABAL= Glob-0.10.2_3 \
commonmark-pandoc-0.2.3 \
comonad-5.0.9_1 \
conduit-1.3.6.1 \
- conduit-extra-1.3.7 \
+ conduit-extra-1.3.8_1 \
constraints-0.14.2_1 \
contravariant-1.5.5 \
cookie-0.5.1 \
crypton-1.0.4 \
- crypton-connection-0.4.4 \
+ crypton-connection-0.4.5 \
+ crypton-socks-0.6.2 \
crypton-x509-1.7.7 \
- crypton-x509-store-1.6.10 \
+ crypton-x509-store-1.6.11 \
crypton-x509-system-1.6.7 \
crypton-x509-validation-1.6.14 \
data-default-0.8.0.1 \
@@ -77,42 +79,42 @@ USE_CABAL= Glob-0.10.2_3 \
dec-0.0.6_1 \
digest-0.0.2.1 \
distributive-0.6.2.1_1 \
- djot-0.1.2.2 \
+ djot-0.1.2.3 \
dlist-1.0_2 \
- doclayout-0.5 \
+ doclayout-0.5.0.1 \
doctemplates-0.11.0.1 \
easy-file-0.2.5 \
ech-config-0.0.1 \
emojis-0.1.4.1 \
- fast-logger-3.2.5 \
+ fast-logger-3.2.6 \
file-embed-0.0.16.0 \
generically-0.1.1_4 \
generics-sop-0.5.1.4_2 \
- gridtables-0.1.0.0_1 \
+ gridtables-0.1.1.0 \
haddock-library-1.11.0_5 \
- half-0.3.2 \
- happy-2.1.5 \
- happy-lib-2.1.5 \
+ half-0.3.3 \
+ happy-2.1.7 \
+ happy-lib-2.1.7 \
hashable-1.5.0.0_1 \
haskell-lexer-1.2.1 \
hourglass-0.2.12_1 \
hpke-0.0.0 \
hsc2hs-0.68.10_4 \
- hslua-2.3.1 \
+ hslua-2.4.0 \
hslua-aeson-2.3.1.1 \
hslua-classes-2.3.1 \
hslua-cli-1.4.3 \
hslua-core-2.3.2 \
hslua-list-1.1.4 \
hslua-marshalling-2.3.1 \
- hslua-module-doclayout-1.2.0 \
+ hslua-module-doclayout-1.2.0.1 \
hslua-module-path-1.1.1 \
- hslua-module-system-1.1.3 \
+ hslua-module-system-1.2.3 \
hslua-module-text-1.1.1 \
hslua-module-version-1.1.1 \
- hslua-module-zip-1.1.3_1 \
- hslua-objectorientation-2.3.1 \
- hslua-packaging-2.3.1 \
+ hslua-module-zip-1.1.4 \
+ hslua-objectorientation-2.4.0 \
+ hslua-packaging-2.3.2 \
hslua-repl-0.1.2 \
hslua-typing-0.1.1 \
http-api-data-0.6.2 \
@@ -122,7 +124,7 @@ USE_CABAL= Glob-0.10.2_3 \
http-media-0.8.1.1_2 \
http-semantics-0.3.0 \
http-types-0.12.4 \
- http2-5.3.9 \
+ http2-5.3.10 \
indexed-traversable-0.1.4_1 \
indexed-traversable-instances-0.1.2_1 \
integer-conversion-0.1.1_1 \
@@ -140,7 +142,7 @@ USE_CABAL= Glob-0.10.2_3 \
mmorph-1.2.1 \
monad-control-1.0.3.1 \
mono-traversable-1.0.21.0 \
- network-3.2.7.0 \
+ network-3.2.8.0 \
network-byte-order-0.1.7 \
network-control-0.1.7 \
network-uri-2.6.4.2_1 \
@@ -148,52 +150,51 @@ USE_CABAL= Glob-0.10.2_3 \
old-time-1.1.0.4 \
optparse-applicative-0.19.0.0 \
ordered-containers-0.2.4 \
- os-string-2.0.7 \
- pandoc-3.7.0.2 \
- pandoc-lua-engine-0.4.3 \
- pandoc-lua-marshal-0.3.0 \
- pandoc-server-0.1.0.11 \
- pandoc-types-1.23.1_2 \
+ os-string-2.0.8 \
+ pandoc-3.8.1 \
+ pandoc-lua-engine-0.5 \
+ pandoc-lua-marshal-0.3.1 \
+ pandoc-server-0.1.1 \
+ pandoc-types-1.23.1_3 \
pem-0.2.4 \
pretty-show-1.10 \
prettyprinter-1.7.1 \
prettyprinter-ansi-terminal-1.1.3 \
primitive-0.9.1.0 \
- psqueues-0.2.8.1 \
+ psqueues-0.2.8.2 \
random-1.3.1 \
recv-0.1.1 \
regex-base-0.94.0.3 \
- regex-tdfa-1.3.2.4 \
+ regex-tdfa-1.3.2.5 \
resourcet-1.3.0 \
safe-0.3.21_1 \
scientific-0.3.8.0_2 \
semialign-1.3.1_2 \
semigroupoids-6.0.1_2 \
- serialise-0.2.6.1_4 \
- servant-0.20.3.0 \
- servant-server-0.20.3.0 \
+ serialise-0.2.6.1_5 \
+ servant-0.20.3.0_2 \
+ servant-server-0.20.3.0_1 \
simple-sendfile-0.2.32 \
singleton-bool-0.1.8_1 \
- skylighting-0.14.6 \
- skylighting-core-0.14.6_1 \
+ skylighting-0.14.7 \
+ skylighting-core-0.14.7 \
skylighting-format-ansi-0.1 \
skylighting-format-blaze-html-0.1.1.3 \
skylighting-format-context-0.1.0.2 \
skylighting-format-latex-0.1 \
skylighting-format-typst-0.1 \
- socks-0.6.1 \
some-1.0.6_2 \
sop-core-0.5.0.2_5 \
split-0.2.5 \
- splitmix-0.1.2 \
+ splitmix-0.1.3.1 \
streaming-commons-0.2.3.0 \
strict-0.5.1_1 \
- syb-0.7.2.4 \
+ syb-0.7.3 \
tagged-0.8.9 \
tagsoup-0.14.8 \
tasty-1.5.3_2 \
temporary-1.3 \
- texmath-0.12.10.3 \
+ texmath-0.13 \
text-conversions-0.3.1.1 \
text-iso8601-0.1.1_2 \
text-short-0.1.6_3 \
@@ -204,45 +205,45 @@ USE_CABAL= Glob-0.10.2_3 \
these-1.2.1_2 \
time-compat-1.9.8 \
time-manager-0.2.3 \
- tls-2.1.10 \
- toml-parser-2.0.1.2 \
+ tls-2.1.11 \
+ toml-parser-2.0.1.2_1 \
transformers-base-0.4.6 \
transformers-compat-0.7.2 \
typed-process-0.2.13.0 \
- typst-0.8.0.1 \
+ typst-0.8.0.2 \
typst-symbols-0.1.8.1 \
unicode-collation-0.1.3.6_2 \
unicode-data-0.6.0_2 \
unicode-transforms-0.4.0.1_7 \
uniplate-1.6.13_1 \
- unix-compat-0.7.4 \
- unix-time-0.4.16 \
+ unix-compat-0.7.4.1 \
+ unix-time-0.4.17 \
unliftio-core-0.2.1.0_4 \
unordered-containers-0.2.20_4 \
utf8-string-1.0.2 \
uuid-types-1.0.6_3 \
vault-0.3.1.5_10 \
- vector-0.13.2.0_1 \
+ vector-0.13.2.0_2 \
vector-algorithms-0.9.1.0 \
- vector-stream-0.1.0.1_3 \
+ vector-stream-0.1.0.1_4 \
wai-3.2.4 \
wai-app-static-3.1.9 \
wai-cors-0.2.7 \
- wai-extra-3.1.17 \
+ wai-extra-3.1.18 \
wai-logger-2.5.0 \
- warp-3.4.8 \
+ warp-3.4.9 \
witherable-0.5_1 \
word8-0.1.3 \
xml-1.3.14_2 \
- xml-conduit-1.10.0.0 \
+ xml-conduit-1.10.0.1 \
xml-types-0.3.8 \
yaml-0.11.11.2_2 \
zip-archive-0.4.3.2_1 \
- zlib-0.7.1.0_2
+ zlib-0.7.1.1
CABAL_WRAPPER_SCRIPTS= ${CABAL_EXECUTABLES}
-OPTIONS_DEFINE= EMBED_DATA
+OPTIONS_DEFINE= EMBED_DATA
OPTIONS_SUB= yes
EMBED_DATA_DESC= Embed data files in binary for relocatable executable
diff --git a/textproc/hs-pandoc/distinfo b/textproc/hs-pandoc/distinfo
index 3b8e59541bf1..e848a62ed9e1 100644
--- a/textproc/hs-pandoc/distinfo
+++ b/textproc/hs-pandoc/distinfo
@@ -1,6 +1,6 @@
-TIMESTAMP = 1749832602
-SHA256 (cabal/pandoc-cli-3.7.0.2/pandoc-cli-3.7.0.2.tar.gz) = ff4dcab86cfa5291ba11a14d14fef49ddf494c549bdd01b6752ed6a8043c3d3d
-SIZE (cabal/pandoc-cli-3.7.0.2/pandoc-cli-3.7.0.2.tar.gz) = 97151
+TIMESTAMP = 1759233778
+SHA256 (cabal/pandoc-cli-3.8.1/pandoc-cli-3.8.1.tar.gz) = d85fee0457793bb7a8dece960033eb0e546d8d2e47fbbacba87e2d0d69c1d3e2
+SIZE (cabal/pandoc-cli-3.8.1/pandoc-cli-3.8.1.tar.gz) = 98818
SHA256 (cabal/Glob-0.10.2/Glob-0.10.2.tar.gz) = 6af672ac8427d35cbd42d64142dc288feab266f0be92dae3c696e8860d8173c0
SIZE (cabal/Glob-0.10.2/Glob-0.10.2.tar.gz) = 30226
SHA256 (cabal/Glob-0.10.2/revision/3.cabal) = dd2ddbecae8f84e8f4cacb5b856901a19c25ceaa11f2525d3ee88d034acb0081
@@ -17,24 +17,22 @@ SHA256 (cabal/Only-0.1/Only-0.1.tar.gz) = ab7aa193e8c257d3bda6b0b3c1cbcf74cdaa85
SIZE (cabal/Only-0.1/Only-0.1.tar.gz) = 1960
SHA256 (cabal/Only-0.1/revision/2.cabal) = c6033d181e0f802e9e8543f683fa9c50aeb01cfdf6c83cd5bb72fb47aa863b07
SIZE (cabal/Only-0.1/revision/2.cabal) = 1398
-SHA256 (cabal/QuickCheck-2.15.0.1/QuickCheck-2.15.0.1.tar.gz) = a3b2216ddbaf481dbc82414b6120f8b726d969db3f0b51f20a7a45425ef36e7f
-SIZE (cabal/QuickCheck-2.15.0.1/QuickCheck-2.15.0.1.tar.gz) = 81502
-SHA256 (cabal/QuickCheck-2.15.0.1/revision/1.cabal) = 0cfd337bb9e6fbf09255bd24bb498a156f1d9bcd465396ac8657b25034b9ee31
-SIZE (cabal/QuickCheck-2.15.0.1/revision/1.cabal) = 9046
+SHA256 (cabal/QuickCheck-2.16.0.0/QuickCheck-2.16.0.0.tar.gz) = 0b563fa6ea11653d76d57e96625f4a476e02b9fdaeba9c05d2ccc10d8da802c0
+SIZE (cabal/QuickCheck-2.16.0.0/QuickCheck-2.16.0.0.tar.gz) = 83903
SHA256 (cabal/StateVar-1.2.2/StateVar-1.2.2.tar.gz) = 5e4b39da395656a59827b0280508aafdc70335798b50e5d6fd52596026251825
SIZE (cabal/StateVar-1.2.2/StateVar-1.2.2.tar.gz) = 5048
SHA256 (cabal/aeson-2.2.3.0/aeson-2.2.3.0.tar.gz) = daa25cf428256ad05d21f2bfa44077c1b14d6c784b7930a202ee901f11cc6baa
SIZE (cabal/aeson-2.2.3.0/aeson-2.2.3.0.tar.gz) = 340855
-SHA256 (cabal/aeson-2.2.3.0/revision/3.cabal) = 61e559f2bad61a98aac564f2a4fd892d21e9e1712e14e3db93326317aa944a9b
-SIZE (cabal/aeson-2.2.3.0/revision/3.cabal) = 6378
+SHA256 (cabal/aeson-2.2.3.0/revision/4.cabal) = 7d48c2395ef168d2c2070fdb02c7998384be27d31a03bb35d1740af4a19a857b
+SIZE (cabal/aeson-2.2.3.0/revision/4.cabal) = 6368
SHA256 (cabal/aeson-pretty-0.8.10/aeson-pretty-0.8.10.tar.gz) = 2a21f2cd78adcb149ceba770239ed664519552911e7680172b18ff695cfa7ae5
SIZE (cabal/aeson-pretty-0.8.10/aeson-pretty-0.8.10.tar.gz) = 5894
-SHA256 (cabal/alex-3.5.3.0/alex-3.5.3.0.tar.gz) = a5cd52e2dd2837138523e2e24ec3435b8cf2624afd50725105e644226e0b9ec6
-SIZE (cabal/alex-3.5.3.0/alex-3.5.3.0.tar.gz) = 92759
-SHA256 (cabal/ansi-terminal-1.1.2/ansi-terminal-1.1.2.tar.gz) = a8d04a3e0451e22a6499a92311f0df1196dc65b687df7d10e3f30d92420156b0
-SIZE (cabal/ansi-terminal-1.1.2/ansi-terminal-1.1.2.tar.gz) = 36259
-SHA256 (cabal/ansi-terminal-types-1.1/ansi-terminal-types-1.1.tar.gz) = f2e5333eb78da5f4dd330fca0c81a59276cc150c625647cd20f57b7f297a5d25
-SIZE (cabal/ansi-terminal-types-1.1/ansi-terminal-types-1.1.tar.gz) = 4746
+SHA256 (cabal/alex-3.5.4.0/alex-3.5.4.0.tar.gz) = a9ea70f2c4900e685312cf330d1fe955a3e8f00acd1328d463ae150481d28ade
+SIZE (cabal/alex-3.5.4.0/alex-3.5.4.0.tar.gz) = 94220
+SHA256 (cabal/ansi-terminal-1.1.3/ansi-terminal-1.1.3.tar.gz) = 88d11a165cd709bfd603b4bc36afd5b39d3e9eec69ee466ca4359441d468c092
+SIZE (cabal/ansi-terminal-1.1.3/ansi-terminal-1.1.3.tar.gz) = 32633
+SHA256 (cabal/ansi-terminal-types-1.1.3/ansi-terminal-types-1.1.3.tar.gz) = 9fc9ce2157f1889bd99a4d22c9f1c64589590be0f797c3efe71c8fa17a11a689
+SIZE (cabal/ansi-terminal-types-1.1.3/ansi-terminal-types-1.1.3.tar.gz) = 8791
SHA256 (cabal/appar-0.1.8/appar-0.1.8.tar.gz) = c4ceeddc26525b58d82c41b6d3e32141371a200a6794aae185b6266ccc81631f
SIZE (cabal/appar-0.1.8/appar-0.1.8.tar.gz) = 4037
SHA256 (cabal/asn1-encoding-0.9.6/asn1-encoding-0.9.6.tar.gz) = d9f8deabd3b908e5cf83c0d813c08dc0143b3ec1c0d97f660d2cfa02c1c8da0a
@@ -85,8 +83,8 @@ SHA256 (cabal/bitvec-1.1.5.0/bitvec-1.1.5.0.tar.gz) = 83d27cee5be1d5342ddbf39999
SIZE (cabal/bitvec-1.1.5.0/bitvec-1.1.5.0.tar.gz) = 40076
SHA256 (cabal/bitvec-1.1.5.0/revision/3.cabal) = 434be6dc60e22858a52869c58038c35353f1a778b9679ebc06a2165bcc7f88b3
SIZE (cabal/bitvec-1.1.5.0/revision/3.cabal) = 4921
-SHA256 (cabal/blaze-builder-0.4.3/blaze-builder-0.4.3.tar.gz) = 02646abf6f3d3a5a73ff5aef589fa5b889601ffb9765b03bdf9df98648bc7fee
-SIZE (cabal/blaze-builder-0.4.3/blaze-builder-0.4.3.tar.gz) = 60686
+SHA256 (cabal/blaze-builder-0.4.4.1/blaze-builder-0.4.4.1.tar.gz) = 971d360428ac97af9a4e55e4f2c23649f6cedc0ce5d6e94d520e663f33ea5113
+SIZE (cabal/blaze-builder-0.4.4.1/blaze-builder-0.4.4.1.tar.gz) = 59452
SHA256 (cabal/blaze-html-0.9.2.0/blaze-html-0.9.2.0.tar.gz) = 65542ef39f7644a3d76afcadeb976d3e334c6947516b7313fcb59165cea1608f
SIZE (cabal/blaze-html-0.9.2.0/blaze-html-0.9.2.0.tar.gz) = 81915
SHA256 (cabal/blaze-html-0.9.2.0/revision/1.cabal) = 85c42f84f4ead2c48844fbe0865069add3bb3bb3322d38607e93d5515a4c9c58
@@ -111,18 +109,18 @@ SHA256 (cabal/call-stack-0.4.0/call-stack-0.4.0.tar.gz) = 430bcf8a3404f7e5531957
SIZE (cabal/call-stack-0.4.0/call-stack-0.4.0.tar.gz) = 2757
SHA256 (cabal/case-insensitive-1.2.1.0/case-insensitive-1.2.1.0.tar.gz) = 296dc17e0c5f3dfb3d82ced83e4c9c44c338ecde749b278b6eae512f1d04e406
SIZE (cabal/case-insensitive-1.2.1.0/case-insensitive-1.2.1.0.tar.gz) = 53609
-SHA256 (cabal/cassava-0.5.4.0/cassava-0.5.4.0.tar.gz) = d9dea5652b7bd2175161c00acb5ca107e8b02662b88517e943e06933d6aeab6d
-SIZE (cabal/cassava-0.5.4.0/cassava-0.5.4.0.tar.gz) = 37885
+SHA256 (cabal/cassava-0.5.4.1/cassava-0.5.4.1.tar.gz) = d40636f530737a99c0282084322230d04d6e1b445e779a0d0a5005f6285a495f
+SIZE (cabal/cassava-0.5.4.1/cassava-0.5.4.1.tar.gz) = 38097
SHA256 (cabal/cborg-0.2.10.0/cborg-0.2.10.0.tar.gz) = 17fe070c38fc498cab49bcb9d6215b7747d53bedf96502e9bcce9cad73b9c797
SIZE (cabal/cborg-0.2.10.0/cborg-0.2.10.0.tar.gz) = 92122
-SHA256 (cabal/cborg-0.2.10.0/revision/2.cabal) = a52224590aca5c992a5ca0c6713439587076ad1f9c8e04ce2dca7ba2026e3654
-SIZE (cabal/cborg-0.2.10.0/revision/2.cabal) = 5406
+SHA256 (cabal/cborg-0.2.10.0/revision/3.cabal) = 47c044ade185e59433ec301fd3d85c7a1b9709cc752daf8b6388c9190aa618aa
+SIZE (cabal/cborg-0.2.10.0/revision/3.cabal) = 5397
SHA256 (cabal/cereal-0.5.8.3/cereal-0.5.8.3.tar.gz) = 99905220661b26e5bd91130bd9772554938608a5b1d717240a6eb331121e0f6a
SIZE (cabal/cereal-0.5.8.3/cereal-0.5.8.3.tar.gz) = 20166
SHA256 (cabal/character-ps-0.1/character-ps-0.1.tar.gz) = 22de71fde38b236d3e9168a832b5e1e75d1fb4f4028667bdf747b3b4c8c1529c
SIZE (cabal/character-ps-0.1/character-ps-0.1.tar.gz) = 8192
-SHA256 (cabal/citeproc-0.9.0.1/citeproc-0.9.0.1.tar.gz) = b97ed54abdca1312dbd9caab3cb6284059a7d3f56ef16556b95af3784f6b2fe8
-SIZE (cabal/citeproc-0.9.0.1/citeproc-0.9.0.1.tar.gz) = 550644
+SHA256 (cabal/citeproc-0.10/citeproc-0.10.tar.gz) = 5073c54ce94c50df0c16c59d18c346ce706d6348863680f2b54f09c7c250df6a
+SIZE (cabal/citeproc-0.10/citeproc-0.10.tar.gz) = 610730
SHA256 (cabal/cmdargs-0.10.22/cmdargs-0.10.22.tar.gz) = b8b12e7f8795cf13037bb062d453b86c788eae62558586f59e9419aabe6e9bef
SIZE (cabal/cmdargs-0.10.22/cmdargs-0.10.22.tar.gz) = 65154
SHA256 (cabal/colour-2.3.6/colour-2.3.6.tar.gz) = 2cd35dcd6944a5abc9f108a5eb5ee564b6b1fa98a9ec79cefcc20b588991f871
@@ -139,8 +137,10 @@ SHA256 (cabal/comonad-5.0.9/revision/1.cabal) = 75aded79bf583c908e4e4687c0ae067f
SIZE (cabal/comonad-5.0.9/revision/1.cabal) = 3587
SHA256 (cabal/conduit-1.3.6.1/conduit-1.3.6.1.tar.gz) = 69902af03ea7e4cb982fa83da42afe36973b62d0a52ea140ae5362e52854ba3f
SIZE (cabal/conduit-1.3.6.1/conduit-1.3.6.1.tar.gz) = 89114
-SHA256 (cabal/conduit-extra-1.3.7/conduit-extra-1.3.7.tar.gz) = b2bd6f8626909c1784793d791078bedc0831fbaf97cb3e837d9fd94c89532b57
-SIZE (cabal/conduit-extra-1.3.7/conduit-extra-1.3.7.tar.gz) = 33170
+SHA256 (cabal/conduit-extra-1.3.8/conduit-extra-1.3.8.tar.gz) = 491f3e8e9408f5d10ff8d02bf4d0edb11821e2537e7c22edbd6d64bf91388222
+SIZE (cabal/conduit-extra-1.3.8/conduit-extra-1.3.8.tar.gz) = 33479
+SHA256 (cabal/conduit-extra-1.3.8/revision/1.cabal) = e932b260dc50dd2a81c996f370798b19979acfd5cfa7bb6b685358e6846600bb
+SIZE (cabal/conduit-extra-1.3.8/revision/1.cabal) = 4473
SHA256 (cabal/constraints-0.14.2/constraints-0.14.2.tar.gz) = 4f249f805d1807ecd86e36e2aa9c9ad8206d2b70d50ff7f11b79721e08fd19f8
SIZE (cabal/constraints-0.14.2/constraints-0.14.2.tar.gz) = 21204
SHA256 (cabal/constraints-0.14.2/revision/1.cabal) = 381a53e9d5aad937644d13b5c2c4fcc3698aeba2f83945a42100c6324e0ea8e7
@@ -151,12 +151,14 @@ SHA256 (cabal/cookie-0.5.1/cookie-0.5.1.tar.gz) = 1adde62726e3a3bbe147c02514fe0c
SIZE (cabal/cookie-0.5.1/cookie-0.5.1.tar.gz) = 6680
SHA256 (cabal/crypton-1.0.4/crypton-1.0.4.tar.gz) = b4885402206422450823e7001a40d0f6b11d0c603a0cb8bf8ff5a186b7c4011a
SIZE (cabal/crypton-1.0.4/crypton-1.0.4.tar.gz) = 649976
-SHA256 (cabal/crypton-connection-0.4.4/crypton-connection-0.4.4.tar.gz) = 247068c222a5feec66ada8d599bfc4a878bef2cac104636afbc7d5cae93ca491
-SIZE (cabal/crypton-connection-0.4.4/crypton-connection-0.4.4.tar.gz) = 9324
+SHA256 (cabal/crypton-connection-0.4.5/crypton-connection-0.4.5.tar.gz) = bcddb9f095eb7f13526bcbd4c20001b4bec737c1e6b2dcb6939f643fb83225de
+SIZE (cabal/crypton-connection-0.4.5/crypton-connection-0.4.5.tar.gz) = 9360
+SHA256 (cabal/crypton-socks-0.6.2/crypton-socks-0.6.2.tar.gz) = a836087e5c277413c79e6d94a7bf346bfb61eaffb2f55555875c76dfeca69f3b
+SIZE (cabal/crypton-socks-0.6.2/crypton-socks-0.6.2.tar.gz) = 11908
SHA256 (cabal/crypton-x509-1.7.7/crypton-x509-1.7.7.tar.gz) = efece48c8c4adfee209979c2967037d90e6ba1b7b4e7bb1081d1d4cd93daf382
SIZE (cabal/crypton-x509-1.7.7/crypton-x509-1.7.7.tar.gz) = 21547
-SHA256 (cabal/crypton-x509-store-1.6.10/crypton-x509-store-1.6.10.tar.gz) = cef0631c0dad9ca43984e51140f030e7de9a1f4bfd0b2223ed9c6d41fe4238b0
-SIZE (cabal/crypton-x509-store-1.6.10/crypton-x509-store-1.6.10.tar.gz) = 12720
+SHA256 (cabal/crypton-x509-store-1.6.11/crypton-x509-store-1.6.11.tar.gz) = 03a991cc1241873435761b379eed94a4e899e0c4804df1719ea5b281903b781f
+SIZE (cabal/crypton-x509-store-1.6.11/crypton-x509-store-1.6.11.tar.gz) = 12772
SHA256 (cabal/crypton-x509-system-1.6.7/crypton-x509-system-1.6.7.tar.gz) = a436261e5f5e83d85080f57a5509c8224c9e75a6e56d0c43a7d2967052b634ca
SIZE (cabal/crypton-x509-system-1.6.7/crypton-x509-system-1.6.7.tar.gz) = 3496
SHA256 (cabal/crypton-x509-validation-1.6.14/crypton-x509-validation-1.6.14.tar.gz) = ed0e394127db59d66a0a8e4bde28fa0b8cc67cc9a810793b54a58e96df4c601d
@@ -179,14 +181,14 @@ SHA256 (cabal/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz) = d7351392e078f5
SIZE (cabal/distributive-0.6.2.1/distributive-0.6.2.1.tar.gz) = 8140
SHA256 (cabal/distributive-0.6.2.1/revision/1.cabal) = 0f99f5541cca04acf89b64432b03422b6408e830a8dff30e6c4334ef1a48680c
SIZE (cabal/distributive-0.6.2.1/revision/1.cabal) = 2996
-SHA256 (cabal/djot-0.1.2.2/djot-0.1.2.2.tar.gz) = d099da4afbcd9d345abd760bd26457af581dcc2942314e938c2a5bcbd4b7d89d
-SIZE (cabal/djot-0.1.2.2/djot-0.1.2.2.tar.gz) = 124501
+SHA256 (cabal/djot-0.1.2.3/djot-0.1.2.3.tar.gz) = b5dd3b4dfaed14550b5f089113150e7b619dca67f0a9116ac77e95e413668c49
+SIZE (cabal/djot-0.1.2.3/djot-0.1.2.3.tar.gz) = 124629
SHA256 (cabal/dlist-1.0/dlist-1.0.tar.gz) = 173d637328bb173fcc365f30d29ff4a94292a1e0e5558aeb3dfc11de81510115
SIZE (cabal/dlist-1.0/dlist-1.0.tar.gz) = 18667
SHA256 (cabal/dlist-1.0/revision/2.cabal) = 854727594c5a816ab3d10f15b1bc4fedaf9e3f7d1ef517a2bb9011f29ba261d2
SIZE (cabal/dlist-1.0/revision/2.cabal) = 3942
-SHA256 (cabal/doclayout-0.5/doclayout-0.5.tar.gz) = b030410245d9dea721e5bd75511b95bc0380efe159066f3914916e3ad2af2496
-SIZE (cabal/doclayout-0.5/doclayout-0.5.tar.gz) = 43437
+SHA256 (cabal/doclayout-0.5.0.1/doclayout-0.5.0.1.tar.gz) = 6521d8b04b0b49f5a0d633874c9e5b3b5e2aa4abd94a9bae80f976c0932c7007
+SIZE (cabal/doclayout-0.5.0.1/doclayout-0.5.0.1.tar.gz) = 43467
SHA256 (cabal/doctemplates-0.11.0.1/doctemplates-0.11.0.1.tar.gz) = 1150451861aa0592122eb43c21166e6620f1b9c3e6a5c88222f08940db6955fb
SIZE (cabal/doctemplates-0.11.0.1/doctemplates-0.11.0.1.tar.gz) = 27234
SHA256 (cabal/easy-file-0.2.5/easy-file-0.2.5.tar.gz) = ee0fa0914b3bb3662838a689d7cd23a2785ccbc29def366664f994bc524ff2bb
@@ -195,8 +197,8 @@ SHA256 (cabal/ech-config-0.0.1/ech-config-0.0.1.tar.gz) = b236b6d7ea1385c280b760
SIZE (cabal/ech-config-0.0.1/ech-config-0.0.1.tar.gz) = 5423
SHA256 (cabal/emojis-0.1.4.1/emojis-0.1.4.1.tar.gz) = 8000d6197b1d43b9b3cd0711c34f120420f358d0425167d2fb7e616d65470ae5
SIZE (cabal/emojis-0.1.4.1/emojis-0.1.4.1.tar.gz) = 52794
-SHA256 (cabal/fast-logger-3.2.5/fast-logger-3.2.5.tar.gz) = 315210080fec12654cae17f9feb32610e442efc1f86be0e46a30583051d8ad31
-SIZE (cabal/fast-logger-3.2.5/fast-logger-3.2.5.tar.gz) = 14795
+SHA256 (cabal/fast-logger-3.2.6/fast-logger-3.2.6.tar.gz) = bd66c622de84170ef41cd6ca37f507882322a3968e39a89c620613f33e63c5c3
+SIZE (cabal/fast-logger-3.2.6/fast-logger-3.2.6.tar.gz) = 14852
SHA256 (cabal/file-embed-0.0.16.0/file-embed-0.0.16.0.tar.gz) = 5f18672eff936355557cdd163905451205d7ee22742edac313dd27cf42a3f415
SIZE (cabal/file-embed-0.0.16.0/file-embed-0.0.16.0.tar.gz) = 7198
SHA256 (cabal/generically-0.1.1/generically-0.1.1.tar.gz) = 04c5a436bec4b041f71a733f56a1bd7f435f63dde8d3eb5c1f48d55b4dbc43cf
@@ -207,20 +209,18 @@ SHA256 (cabal/generics-sop-0.5.1.4/generics-sop-0.5.1.4.tar.gz) = 616a1c21760974
SIZE (cabal/generics-sop-0.5.1.4/generics-sop-0.5.1.4.tar.gz) = 30137
SHA256 (cabal/generics-sop-0.5.1.4/revision/2.cabal) = a62864a0a096f844db946a38c3b9981f20cc50cb36ef8bbb148b695976ae4c75
SIZE (cabal/generics-sop-0.5.1.4/revision/2.cabal) = 5770
-SHA256 (cabal/gridtables-0.1.0.0/gridtables-0.1.0.0.tar.gz) = d6ac341bc7997d39a3b1f6cd811f70ab69689d9c3117ce3bc44bfb2ec55ab0ea
-SIZE (cabal/gridtables-0.1.0.0/gridtables-0.1.0.0.tar.gz) = 12279
-SHA256 (cabal/gridtables-0.1.0.0/revision/1.cabal) = 20f6faa3d75724133253d970daee8ee1e6fb77841d4be4e82273168e22f7c42b
-SIZE (cabal/gridtables-0.1.0.0/revision/1.cabal) = 2975
+SHA256 (cabal/gridtables-0.1.1.0/gridtables-0.1.1.0.tar.gz) = e8a16adf5729e2a3ec8428cd432e29c3851462eb32d4287aa86625be26b54c64
+SIZE (cabal/gridtables-0.1.1.0/gridtables-0.1.1.0.tar.gz) = 12533
SHA256 (cabal/haddock-library-1.11.0/haddock-library-1.11.0.tar.gz) = 7c075ec9a378b0a2d9d605e72135201e6c7ff316564f2c974113582f43bea20a
SIZE (cabal/haddock-library-1.11.0/haddock-library-1.11.0.tar.gz) = 32833
SHA256 (cabal/haddock-library-1.11.0/revision/5.cabal) = d18faa322af8034f838525d31f9b7591cefa47c6330a7a8909f847cf573028be
SIZE (cabal/haddock-library-1.11.0/revision/5.cabal) = 4028
-SHA256 (cabal/half-0.3.2/half-0.3.2.tar.gz) = 19992e9fb6f4ea8a53b0ba0693565e8ec73c620b603e74b6d4f262e49d7df038
-SIZE (cabal/half-0.3.2/half-0.3.2.tar.gz) = 8319
-SHA256 (cabal/happy-2.1.5/happy-2.1.5.tar.gz) = 7af82f24f65bf951b24000b9e16ee01c750ed40edc0b256881d29daee85c41c4
-SIZE (cabal/happy-2.1.5/happy-2.1.5.tar.gz) = 61293
-SHA256 (cabal/happy-lib-2.1.5/happy-lib-2.1.5.tar.gz) = a25a6c5a2db150caf4b8c91e048e302f776372034b84b8f9461fea0483da94eb
-SIZE (cabal/happy-lib-2.1.5/happy-lib-2.1.5.tar.gz) = 93792
+SHA256 (cabal/half-0.3.3/half-0.3.3.tar.gz) = f476049628d6ff79722fb073c01e85f2a11b2ef3835fdc3fc21a61f05d17ab02
+SIZE (cabal/half-0.3.3/half-0.3.3.tar.gz) = 8359
+SHA256 (cabal/happy-2.1.7/happy-2.1.7.tar.gz) = 9e390f0ab082d11d46598f6215b2f6e8253059721860f81082409091532d7e2a
+SIZE (cabal/happy-2.1.7/happy-2.1.7.tar.gz) = 62023
+SHA256 (cabal/happy-lib-2.1.7/happy-lib-2.1.7.tar.gz) = f625b2c4a3f2b5fafa3c560fa8757502cc8de83d9a84c2692fc943380900f269
+SIZE (cabal/happy-lib-2.1.7/happy-lib-2.1.7.tar.gz) = 94227
SHA256 (cabal/hashable-1.5.0.0/hashable-1.5.0.0.tar.gz) = e58b3a8e18da5f6cd7e937e5fd683e500bb1f8276b3768269759119ca0cddb6a
SIZE (cabal/hashable-1.5.0.0/hashable-1.5.0.0.tar.gz) = 89062
SHA256 (cabal/hashable-1.5.0.0/revision/1.cabal) = 2f23146cbe0325029927b221647695a4c7d6e97548ff731110979e34361f58ef
@@ -237,8 +237,8 @@ SHA256 (cabal/hsc2hs-0.68.10/hsc2hs-0.68.10.tar.gz) = 6f4e34d788fe2ca7091ee0a103
SIZE (cabal/hsc2hs-0.68.10/hsc2hs-0.68.10.tar.gz) = 40517
SHA256 (cabal/hsc2hs-0.68.10/revision/4.cabal) = 725ef6da03d3d6e332db4de0a35bee45d72e4d31decc5ec7f153e6837af5f03e
SIZE (cabal/hsc2hs-0.68.10/revision/4.cabal) = 3114
-SHA256 (cabal/hslua-2.3.1/hslua-2.3.1.tar.gz) = 49028288e2c30f0cfe55c055db30b22d71a7fc2ebe0e7b69b4fab3f07321dd24
-SIZE (cabal/hslua-2.3.1/hslua-2.3.1.tar.gz) = 17449
+SHA256 (cabal/hslua-2.4.0/hslua-2.4.0.tar.gz) = 133fd4d1c71e1a190516f57aabf97becbfebd6d7ab5c75de3c6dfbfef3936c24
+SIZE (cabal/hslua-2.4.0/hslua-2.4.0.tar.gz) = 18051
SHA256 (cabal/hslua-aeson-2.3.1.1/hslua-aeson-2.3.1.1.tar.gz) = efb1e3241347ccd5810da4dad25d560084571a4b5cd9002cdde9ac88e8ea4525
SIZE (cabal/hslua-aeson-2.3.1.1/hslua-aeson-2.3.1.1.tar.gz) = 7487
SHA256 (cabal/hslua-classes-2.3.1/hslua-classes-2.3.1.tar.gz) = 781a33f3e919ebff68e30698a74751f39ca75097002d43061a3e7c1bb3f5b4a0
@@ -251,24 +251,22 @@ SHA256 (cabal/hslua-list-1.1.4/hslua-list-1.1.4.tar.gz) = d3efd9d41d89f99c083d52
SIZE (cabal/hslua-list-1.1.4/hslua-list-1.1.4.tar.gz) = 9574
SHA256 (cabal/hslua-marshalling-2.3.1/hslua-marshalling-2.3.1.tar.gz) = 0949d9ff45e4e9b55d0e99c07ea48bf84016a21c5240d21372f11321e1bff06c
SIZE (cabal/hslua-marshalling-2.3.1/hslua-marshalling-2.3.1.tar.gz) = 17266
-SHA256 (cabal/hslua-module-doclayout-1.2.0/hslua-module-doclayout-1.2.0.tar.gz) = 32e4a820d7d137750753012aa599ee07846b462ae87fb5f54317d1f0dbb47ff4
-SIZE (cabal/hslua-module-doclayout-1.2.0/hslua-module-doclayout-1.2.0.tar.gz) = 11746
+SHA256 (cabal/hslua-module-doclayout-1.2.0.1/hslua-module-doclayout-1.2.0.1.tar.gz) = 2774b6efe4aee9ad20a3cd959487b08f817617d3878ffde40795d29ba026348d
+SIZE (cabal/hslua-module-doclayout-1.2.0.1/hslua-module-doclayout-1.2.0.1.tar.gz) = 11766
SHA256 (cabal/hslua-module-path-1.1.1/hslua-module-path-1.1.1.tar.gz) = 802a2f67023f23a7ccac15531cc4cb301affcaf0eb1381492da2ce252845b80c
SIZE (cabal/hslua-module-path-1.1.1/hslua-module-path-1.1.1.tar.gz) = 8090
-SHA256 (cabal/hslua-module-system-1.1.3/hslua-module-system-1.1.3.tar.gz) = 62903cf6c9cc69cee5cc7a5f04f488054ddb15b224aa51c3f6ed8b1ec47a6d6a
-SIZE (cabal/hslua-module-system-1.1.3/hslua-module-system-1.1.3.tar.gz) = 11140
+SHA256 (cabal/hslua-module-system-1.2.3/hslua-module-system-1.2.3.tar.gz) = 53faeaec2252641b5ee6b4df6337fdc5c8da96d8ebf18755193c51903028ad88
+SIZE (cabal/hslua-module-system-1.2.3/hslua-module-system-1.2.3.tar.gz) = 15612
SHA256 (cabal/hslua-module-text-1.1.1/hslua-module-text-1.1.1.tar.gz) = cb90b08c45e9aa0f2af61adb0b77fe8843999a514fcdda72b13c2aabda2cc398
SIZE (cabal/hslua-module-text-1.1.1/hslua-module-text-1.1.1.tar.gz) = 6258
SHA256 (cabal/hslua-module-version-1.1.1/hslua-module-version-1.1.1.tar.gz) = 49e45444d5568e988b8c13558a5661fe86ff8fdaad404f068427ae13e6230a40
SIZE (cabal/hslua-module-version-1.1.1/hslua-module-version-1.1.1.tar.gz) = 6150
-SHA256 (cabal/hslua-module-zip-1.1.3/hslua-module-zip-1.1.3.tar.gz) = d84f70c3b395a1e7a01d44d276a57d7eabfeb847c217501f8d98ffe0b82c9abb
-SIZE (cabal/hslua-module-zip-1.1.3/hslua-module-zip-1.1.3.tar.gz) = 8155
-SHA256 (cabal/hslua-module-zip-1.1.3/revision/1.cabal) = c31bc4cb3d7e63a85e030b4c8938fcf35e8f49c20dad50067a9c40ce3c2481d6
-SIZE (cabal/hslua-module-zip-1.1.3/revision/1.cabal) = 3187
-SHA256 (cabal/hslua-objectorientation-2.3.1/hslua-objectorientation-2.3.1.tar.gz) = 1824b71160f2c545277b6f29f0dbde3da1a223c70406d5466c9c4c91198e7dab
-SIZE (cabal/hslua-objectorientation-2.3.1/hslua-objectorientation-2.3.1.tar.gz) = 16673
-SHA256 (cabal/hslua-packaging-2.3.1/hslua-packaging-2.3.1.tar.gz) = 36dcaed69a9f7a3fc4adb4e1c7a063774b6b75d7c02ad2c1ec04035cc1572173
-SIZE (cabal/hslua-packaging-2.3.1/hslua-packaging-2.3.1.tar.gz) = 16952
+SHA256 (cabal/hslua-module-zip-1.1.4/hslua-module-zip-1.1.4.tar.gz) = 5e53f4f43271d9e9f34417c20f3730ba4e32d21b6befc2cf3cfc928a7ccd42c6
+SIZE (cabal/hslua-module-zip-1.1.4/hslua-module-zip-1.1.4.tar.gz) = 8186
+SHA256 (cabal/hslua-objectorientation-2.4.0/hslua-objectorientation-2.4.0.tar.gz) = 1ac62515ec5de84126077844c9b578b93e5e73a25ca0bf63b43bf7855fa1a73e
+SIZE (cabal/hslua-objectorientation-2.4.0/hslua-objectorientation-2.4.0.tar.gz) = 18225
+SHA256 (cabal/hslua-packaging-2.3.2/hslua-packaging-2.3.2.tar.gz) = 1a418e3faa4809c04ae4238437ec4cd8e55ea60dfaa9227aaa7c5e935d12e9f0
+SIZE (cabal/hslua-packaging-2.3.2/hslua-packaging-2.3.2.tar.gz) = 17079
SHA256 (cabal/hslua-repl-0.1.2/hslua-repl-0.1.2.tar.gz) = 8244cd3ab875d922b59c77c5cf818997d3eaec492dda4a91d70914a03711c602
SIZE (cabal/hslua-repl-0.1.2/hslua-repl-0.1.2.tar.gz) = 4113
SHA256 (cabal/hslua-typing-0.1.1/hslua-typing-0.1.1.tar.gz) = 449ac7b351b71a64fcc68f2dbbe16a222ccd8d14d2b53c9459ad44ed4f7a094c
@@ -291,8 +289,8 @@ SHA256 (cabal/http-semantics-0.3.0/http-semantics-0.3.0.tar.gz) = 9ccee90bcbbfb2
SIZE (cabal/http-semantics-0.3.0/http-semantics-0.3.0.tar.gz) = 14927
SHA256 (cabal/http-types-0.12.4/http-types-0.12.4.tar.gz) = 4d4b1bb0cc817e5fef0c9c76c9647f69f4d300c45a105043493eff86381be549
SIZE (cabal/http-types-0.12.4/http-types-0.12.4.tar.gz) = 18707
-SHA256 (cabal/http2-5.3.9/http2-5.3.9.tar.gz) = 0ed31519dbd56a743c53cb24cb9a3fb3d014893b5dd1ad8c91c520f0e34f9b71
-SIZE (cabal/http2-5.3.9/http2-5.3.9.tar.gz) = 5499718
+SHA256 (cabal/http2-5.3.10/http2-5.3.10.tar.gz) = f46617d617834a9ce7c016eec8160a15129632aa179821c36318b46adf0d4267
+SIZE (cabal/http2-5.3.10/http2-5.3.10.tar.gz) = 5499618
SHA256 (cabal/indexed-traversable-0.1.4/indexed-traversable-0.1.4.tar.gz) = 58be09afdf3ad5a25c2aa0d2a7df80d602df09f4e76d3abf2b7cdb0e75d03b22
SIZE (cabal/indexed-traversable-0.1.4/indexed-traversable-0.1.4.tar.gz) = 9465
SHA256 (cabal/indexed-traversable-0.1.4/revision/1.cabal) = 42d9e84a65a0c17c248233cab98ada872ff6140dfa24d109d6eb285204d07e7d
@@ -339,8 +337,8 @@ SHA256 (cabal/monad-control-1.0.3.1/monad-control-1.0.3.1.tar.gz) = ae0baea04d99
SIZE (cabal/monad-control-1.0.3.1/monad-control-1.0.3.1.tar.gz) = 13985
SHA256 (cabal/mono-traversable-1.0.21.0/mono-traversable-1.0.21.0.tar.gz) = 4dd93ea334c0169500402f07aa39c98dbb7bffe55dc63fdf228da2cc22c7c5cd
SIZE (cabal/mono-traversable-1.0.21.0/mono-traversable-1.0.21.0.tar.gz) = 43552
-SHA256 (cabal/network-3.2.7.0/network-3.2.7.0.tar.gz) = 68548e660632a3c09b230c33fe08cc880273372b485e65cbe7a717936de9728b
-SIZE (cabal/network-3.2.7.0/network-3.2.7.0.tar.gz) = 145714
+SHA256 (cabal/network-3.2.8.0/network-3.2.8.0.tar.gz) = 51788e5eeb7d77264f260acd48df8055a4dbc2477e8d634a8493677bb15c5fc8
+SIZE (cabal/network-3.2.8.0/network-3.2.8.0.tar.gz) = 146148
SHA256 (cabal/network-byte-order-0.1.7/network-byte-order-0.1.7.tar.gz) = 480ce0ad7f67364ec8d4ce8d815f463d9e4074e3789be22a5722cfdebed08679
SIZE (cabal/network-byte-order-0.1.7/network-byte-order-0.1.7.tar.gz) = 6402
SHA256 (cabal/network-control-0.1.7/network-control-0.1.7.tar.gz) = 05d40d381e5c72beefb209b7e82877b457fbca2880e60ed849bad480b6795b10
@@ -359,20 +357,20 @@ SHA256 (cabal/optparse-applicative-0.19.0.0/optparse-applicative-0.19.0.0.tar.gz
SIZE (cabal/optparse-applicative-0.19.0.0/optparse-applicative-0.19.0.0.tar.gz) = 67629
SHA256 (cabal/ordered-containers-0.2.4/ordered-containers-0.2.4.tar.gz) = 3da1673e24e12902c2879ee08b73e6978f6bfa70693b13995ebf48bfb7aee546
SIZE (cabal/ordered-containers-0.2.4/ordered-containers-0.2.4.tar.gz) = 7877
-SHA256 (cabal/os-string-2.0.7/os-string-2.0.7.tar.gz) = 339c35fd3a290522f23de4e33528423cfd0b0a8f22946b0b9816a817b926cba0
-SIZE (cabal/os-string-2.0.7/os-string-2.0.7.tar.gz) = 44683
-SHA256 (cabal/pandoc-3.7.0.2/pandoc-3.7.0.2.tar.gz) = bfd221cf6c143b8e5fed974a909633a3a315868090cccde25b7dcd56605563d0
-SIZE (cabal/pandoc-3.7.0.2/pandoc-3.7.0.2.tar.gz) = 7561146
-SHA256 (cabal/pandoc-lua-engine-0.4.3/pandoc-lua-engine-0.4.3.tar.gz) = 7c5622ad682760ebac2528ed8b3b558853f065b952343f4320ea8e40770dafe8
-SIZE (cabal/pandoc-lua-engine-0.4.3/pandoc-lua-engine-0.4.3.tar.gz) = 95053
-SHA256 (cabal/pandoc-lua-marshal-0.3.0/pandoc-lua-marshal-0.3.0.tar.gz) = afe839db7867698822880cc81020b61fb6b1d35800b784695a0784f6ea721b35
-SIZE (cabal/pandoc-lua-marshal-0.3.0/pandoc-lua-marshal-0.3.0.tar.gz) = 42833
-SHA256 (cabal/pandoc-server-0.1.0.11/pandoc-server-0.1.0.11.tar.gz) = 9a3f314e0f3e969d3229efba830003b3b6544f0baab5f26ac6cbe45b009d0699
-SIZE (cabal/pandoc-server-0.1.0.11/pandoc-server-0.1.0.11.tar.gz) = 12877
+SHA256 (cabal/os-string-2.0.8/os-string-2.0.8.tar.gz) = 02794279dd30282e7b0d45a860dda50ee26a92b1461f5da4545f62dab4172686
+SIZE (cabal/os-string-2.0.8/os-string-2.0.8.tar.gz) = 44896
+SHA256 (cabal/pandoc-3.8.1/pandoc-3.8.1.tar.gz) = 605d5dfdb64e75fadfb00f469791b8634982258579e948773f063b0d54f9d4f7
+SIZE (cabal/pandoc-3.8.1/pandoc-3.8.1.tar.gz) = 7818229
+SHA256 (cabal/pandoc-lua-engine-0.5/pandoc-lua-engine-0.5.tar.gz) = ac87e0180a6c329dcb67645e5d54c0b4d7725f3a679c3f9bbfcba484c3ed457d
+SIZE (cabal/pandoc-lua-engine-0.5/pandoc-lua-engine-0.5.tar.gz) = 96272
+SHA256 (cabal/pandoc-lua-marshal-0.3.1/pandoc-lua-marshal-0.3.1.tar.gz) = 205ff68480086e29a6f7d2b77479b8275ac7b3f19b24a3600349179e7255c920
+SIZE (cabal/pandoc-lua-marshal-0.3.1/pandoc-lua-marshal-0.3.1.tar.gz) = 42887
+SHA256 (cabal/pandoc-server-0.1.1/pandoc-server-0.1.1.tar.gz) = ac00739af34d75c494da366fc207fdcbc9bf775824e2459d07beff91e638ff76
+SIZE (cabal/pandoc-server-0.1.1/pandoc-server-0.1.1.tar.gz) = 12907
SHA256 (cabal/pandoc-types-1.23.1/pandoc-types-1.23.1.tar.gz) = ad0fa083d28d452b7d37a1c67a2c140137a5f29a2f52fd88e807fac20245a1c1
SIZE (cabal/pandoc-types-1.23.1/pandoc-types-1.23.1.tar.gz) = 36480
-SHA256 (cabal/pandoc-types-1.23.1/revision/2.cabal) = 2cb4836905406ccbc4c18699b8b551ed33aa15b23309f46ca108fcc209ae1ef2
-SIZE (cabal/pandoc-types-1.23.1/revision/2.cabal) = 4095
+SHA256 (cabal/pandoc-types-1.23.1/revision/3.cabal) = 3fafaab20aaae77934bab312f8c4769631da3a658960b563d64a0eddff265670
+SIZE (cabal/pandoc-types-1.23.1/revision/3.cabal) = 4095
SHA256 (cabal/pem-0.2.4/pem-0.2.4.tar.gz) = 770c4c1b9cd24b3db7f511f8a48404a0d098999e28573c3743a8a296bb96f8d4
SIZE (cabal/pem-0.2.4/pem-0.2.4.tar.gz) = 4717
SHA256 (cabal/pretty-show-1.10/pretty-show-1.10.tar.gz) = 307f9086e0b063d439dc4f513e36a145e8a57f23de448aefae2a6c00f6da6fd2
@@ -383,16 +381,16 @@ SHA256 (cabal/prettyprinter-ansi-terminal-1.1.3/prettyprinter-ansi-terminal-1.1.
SIZE (cabal/prettyprinter-ansi-terminal-1.1.3/prettyprinter-ansi-terminal-1.1.3.tar.gz) = 8879
SHA256 (cabal/primitive-0.9.1.0/primitive-0.9.1.0.tar.gz) = 44b4de41813c7bc5db8a57f87c3612a069b65086946268ba165097252ebd3d76
SIZE (cabal/primitive-0.9.1.0/primitive-0.9.1.0.tar.gz) = 61724
-SHA256 (cabal/psqueues-0.2.8.1/psqueues-0.2.8.1.tar.gz) = cb7e102f09e373b4a7be52bfbc9625d265c7216d05fe04c36b7ad684ed213f77
-SIZE (cabal/psqueues-0.2.8.1/psqueues-0.2.8.1.tar.gz) = 27584
+SHA256 (cabal/psqueues-0.2.8.2/psqueues-0.2.8.2.tar.gz) = f63b46f1361956deb679792ef0bcf110a10c4f1d3060180dfae801599407794e
+SIZE (cabal/psqueues-0.2.8.2/psqueues-0.2.8.2.tar.gz) = 28255
SHA256 (cabal/random-1.3.1/random-1.3.1.tar.gz) = d840ac83f265b0cfa2a678f8ec78627eb50cf9be2f067c52c8a4239c29b71a35
SIZE (cabal/random-1.3.1/random-1.3.1.tar.gz) = 63846
SHA256 (cabal/recv-0.1.1/recv-0.1.1.tar.gz) = 8daf77c57f529503dd3038efc3813a8001032ed810bdddff0acb0faca039b721
SIZE (cabal/recv-0.1.1/recv-0.1.1.tar.gz) = 4772
SHA256 (cabal/regex-base-0.94.0.3/regex-base-0.94.0.3.tar.gz) = e8ca2dee598c790dd1c1c4359bdd1e495d9b881f5aa1f539c22f0dd5563747bf
SIZE (cabal/regex-base-0.94.0.3/regex-base-0.94.0.3.tar.gz) = 10550
-SHA256 (cabal/regex-tdfa-1.3.2.4/regex-tdfa-1.3.2.4.tar.gz) = 078bc313b7441f173eb487d6f46fea6860a21452eff6e5cf730ac4dd74bca797
-SIZE (cabal/regex-tdfa-1.3.2.4/regex-tdfa-1.3.2.4.tar.gz) = 83099
+SHA256 (cabal/regex-tdfa-1.3.2.5/regex-tdfa-1.3.2.5.tar.gz) = 2e3dfb449a548484f7d3b4e2a1b1040b39be26c4f3182a47004dc5eddf028a78
+SIZE (cabal/regex-tdfa-1.3.2.5/regex-tdfa-1.3.2.5.tar.gz) = 83371
SHA256 (cabal/resourcet-1.3.0/resourcet-1.3.0.tar.gz) = ec601785ee42a201f32adb205b8685c983f18757b1bd33d2e806d571e0f9996b
SIZE (cabal/resourcet-1.3.0/resourcet-1.3.0.tar.gz) = 17620
SHA256 (cabal/safe-0.3.21/safe-0.3.21.tar.gz) = 2c81fea42bbe79ec488774043c1ec54f30efba059df9a4f3681ce83d85007f01
@@ -413,24 +411,26 @@ SHA256 (cabal/semigroupoids-6.0.1/revision/2.cabal) = bfee06a6d88038a88ddd10fc21
SIZE (cabal/semigroupoids-6.0.1/revision/2.cabal) = 7539
SHA256 (cabal/serialise-0.2.6.1/serialise-0.2.6.1.tar.gz) = 63949799ffd10675ef70ea701c1eb63e618629b3b2f7b25f07c5a966e24e77f4
SIZE (cabal/serialise-0.2.6.1/serialise-0.2.6.1.tar.gz) = 75106
-SHA256 (cabal/serialise-0.2.6.1/revision/4.cabal) = 70495f88c1633bd432847b1d767e9e6832779f85b9d012b01a0a14f2cacbecc6
-SIZE (cabal/serialise-0.2.6.1/revision/4.cabal) = 8823
+SHA256 (cabal/serialise-0.2.6.1/revision/5.cabal) = a67f89b5533b1148ad465dc7f24baeed2e2e9e7d81d2a147fc7fa8ff1089ca4d
+SIZE (cabal/serialise-0.2.6.1/revision/5.cabal) = 8814
SHA256 (cabal/servant-0.20.3.0/servant-0.20.3.0.tar.gz) = f273e65c8f6cc6ddfa204c8d1d0bc5b7e258cec288ca5b2a2e57fadb31bf6602
SIZE (cabal/servant-0.20.3.0/servant-0.20.3.0.tar.gz) = 66415
+SHA256 (cabal/servant-0.20.3.0/revision/2.cabal) = f2347271f8f3aecd8abb5e3744d9f893bb9fc8319bd89c03eefa6869a4347873
+SIZE (cabal/servant-0.20.3.0/revision/2.cabal) = 5781
SHA256 (cabal/servant-server-0.20.3.0/servant-server-0.20.3.0.tar.gz) = 30560af5d2597ae361711de8302617de3bfb3e01f10180ff48a331bbe8e49915
SIZE (cabal/servant-server-0.20.3.0/servant-server-0.20.3.0.tar.gz) = 60887
+SHA256 (cabal/servant-server-0.20.3.0/revision/1.cabal) = 10a429eea8e103484d86efbd9d0fee3e32c27901042a0f99398dc3dbeb0b50fc
+SIZE (cabal/servant-server-0.20.3.0/revision/1.cabal) = 6475
SHA256 (cabal/simple-sendfile-0.2.32/simple-sendfile-0.2.32.tar.gz) = 9f28d0a67ac3d956d2dd78eb19ea922c0a9192bbbeeeead20d39f561636828a3
SIZE (cabal/simple-sendfile-0.2.32/simple-sendfile-0.2.32.tar.gz) = 343565
SHA256 (cabal/singleton-bool-0.1.8/singleton-bool-0.1.8.tar.gz) = 261bf3d2b93b519a7901266af43d7d454b65aac4ac8fb4e113c68de4db131473
SIZE (cabal/singleton-bool-0.1.8/singleton-bool-0.1.8.tar.gz) = 3678
SHA256 (cabal/singleton-bool-0.1.8/revision/1.cabal) = f2863c5109fae42d4df03b1e3270aac4e3336e725e0cbe9663e8ccfc515a6ec1
SIZE (cabal/singleton-bool-0.1.8/revision/1.cabal) = 1244
-SHA256 (cabal/skylighting-0.14.6/skylighting-0.14.6.tar.gz) = eae33be53dee6498d2b87e7b71abc620d5593c5543678f237c6b7982bb96e3bc
-SIZE (cabal/skylighting-0.14.6/skylighting-0.14.6.tar.gz) = 1471714
-SHA256 (cabal/skylighting-core-0.14.6/skylighting-core-0.14.6.tar.gz) = 3e218bbf2a7ed05cee8a77e111640854ded570cf8b8a9bb35db4a78c717e6dff
-SIZE (cabal/skylighting-core-0.14.6/skylighting-core-0.14.6.tar.gz) = 914478
-SHA256 (cabal/skylighting-core-0.14.6/revision/1.cabal) = 883546c1b82f4f22c1f69550363caffe6c8a543d15caf3da97bc4f4ab7f4e57b
-SIZE (cabal/skylighting-core-0.14.6/revision/1.cabal) = 8035
+SHA256 (cabal/skylighting-0.14.7/skylighting-0.14.7.tar.gz) = 05df6bce0aba5af7da7b618e1891cbe02833f6810b2405e96c254e9ff741001f
+SIZE (cabal/skylighting-0.14.7/skylighting-0.14.7.tar.gz) = 1500020
+SHA256 (cabal/skylighting-core-0.14.7/skylighting-core-0.14.7.tar.gz) = e04fbc7b4243b5cb69819ae10f26bd375f94d8986a939cd4e6f6ca555dab7dbd
+SIZE (cabal/skylighting-core-0.14.7/skylighting-core-0.14.7.tar.gz) = 933542
SHA256 (cabal/skylighting-format-ansi-0.1/skylighting-format-ansi-0.1.tar.gz) = 23dfa86c2ecd2601a2efed4967eb2ec0505a52c14776054ce4d89707c2de0a9b
SIZE (cabal/skylighting-format-ansi-0.1/skylighting-format-ansi-0.1.tar.gz) = 5350
SHA256 (cabal/skylighting-format-blaze-html-0.1.1.3/skylighting-format-blaze-html-0.1.1.3.tar.gz) = 44e82ceaebb240f22882e7640633d747453887f74384dd5ffd258d802d7352e6
@@ -441,8 +441,6 @@ SHA256 (cabal/skylighting-format-latex-0.1/skylighting-format-latex-0.1.tar.gz)
SIZE (cabal/skylighting-format-latex-0.1/skylighting-format-latex-0.1.tar.gz) = 3777
SHA256 (cabal/skylighting-format-typst-0.1/skylighting-format-typst-0.1.tar.gz) = 994cd2db976f6818bfb7644674c5f7c5830e9c5a339243541ac24611ff672ce4
SIZE (cabal/skylighting-format-typst-0.1/skylighting-format-typst-0.1.tar.gz) = 3144
-SHA256 (cabal/socks-0.6.1/socks-0.6.1.tar.gz) = 734447558bb061ce768f53a0df1f2401902c6bee396cc96ce627edd986ef6a73
-SIZE (cabal/socks-0.6.1/socks-0.6.1.tar.gz) = 9759
SHA256 (cabal/some-1.0.6/some-1.0.6.tar.gz) = f7a606ad5df4a07459986364f7d739eb653495fbbe1d7158582fb29a4584bfb9
SIZE (cabal/some-1.0.6/some-1.0.6.tar.gz) = 11394
SHA256 (cabal/some-1.0.6/revision/2.cabal) = ac5915f3d21f058cc0d15c1d72705edee19db903a58083e1ce5e2e42a6899df0
@@ -453,16 +451,16 @@ SHA256 (cabal/sop-core-0.5.0.2/revision/5.cabal) = 0bb74cafff423180df3909f5b7ce0
SIZE (cabal/sop-core-0.5.0.2/revision/5.cabal) = 3005
SHA256 (cabal/split-0.2.5/split-0.2.5.tar.gz) = 52da404e8397c1ab238354c8d4fd9a7e9c5cac8849cc2ce2e45facc85e74a913
SIZE (cabal/split-0.2.5/split-0.2.5.tar.gz) = 16008
-SHA256 (cabal/splitmix-0.1.2/splitmix-0.1.2.tar.gz) = 3e5342d41a80d925e9dd95b513ae1d076347f6802209a49a8f8829b7b577d4be
-SIZE (cabal/splitmix-0.1.2/splitmix-0.1.2.tar.gz) = 21840
+SHA256 (cabal/splitmix-0.1.3.1/splitmix-0.1.3.1.tar.gz) = b6bcd0d79bd4fe40975c8ebe803be2f3bfbf6006069a59745a325a0df3f86270
+SIZE (cabal/splitmix-0.1.3.1/splitmix-0.1.3.1.tar.gz) = 21955
SHA256 (cabal/streaming-commons-0.2.3.0/streaming-commons-0.2.3.0.tar.gz) = 26384af91f5ab9470b0bbdd0ce2172db43fc79730b7c5a3405d89c3663eb1e57
SIZE (cabal/streaming-commons-0.2.3.0/streaming-commons-0.2.3.0.tar.gz) = 37874
SHA256 (cabal/strict-0.5.1/strict-0.5.1.tar.gz) = 77719280c2a86312e748227bfa732eeaae0e7df48d57acc3c2e5b7b07afe2f8b
SIZE (cabal/strict-0.5.1/strict-0.5.1.tar.gz) = 11798
SHA256 (cabal/strict-0.5.1/revision/1.cabal) = 58c373b7c7748cbb4a5a6c8c15073f99a1c10a9a9bb6894ac33f43a5cdb901f2
SIZE (cabal/strict-0.5.1/revision/1.cabal) = 3557
-SHA256 (cabal/syb-0.7.2.4/syb-0.7.2.4.tar.gz) = ec7c1e8822d62ab910386361cdcee40a22a26cd344c34741fadd982302291e60
-SIZE (cabal/syb-0.7.2.4/syb-0.7.2.4.tar.gz) = 41809
+SHA256 (cabal/syb-0.7.3/syb-0.7.3.tar.gz) = 676668d46941fc1be26bdd2cfd727aa13bcb909eaa8189937a9dbd6d41ac3b8d
+SIZE (cabal/syb-0.7.3/syb-0.7.3.tar.gz) = 42181
SHA256 (cabal/tagged-0.8.9/tagged-0.8.9.tar.gz) = 6daad88ebb414ba6a556d2898d2cbe7650e4276010e3a6eed939daf54b956784
SIZE (cabal/tagged-0.8.9/tagged-0.8.9.tar.gz) = 8151
SHA256 (cabal/tagsoup-0.14.8/tagsoup-0.14.8.tar.gz) = ba7e5500d853d29f0675b90655b7fdd032a4a7eee82a56e7ee3ef9949fe93ad5
@@ -473,8 +471,8 @@ SHA256 (cabal/tasty-1.5.3/revision/2.cabal) = 6b5dda3f16db1274a0b3e6c4073ac57172
SIZE (cabal/tasty-1.5.3/revision/2.cabal) = 2923
SHA256 (cabal/temporary-1.3/temporary-1.3.tar.gz) = 8c442993694b5ffca823ce864af95bd2841fb5264ee511c61cf48cc71d879890
SIZE (cabal/temporary-1.3/temporary-1.3.tar.gz) = 5686
-SHA256 (cabal/texmath-0.12.10.3/texmath-0.12.10.3.tar.gz) = 57e43a897c1864e1fae6b1d75c055de6cd7c9e3ca4d839d89cc2f6a8fa2ffb76
-SIZE (cabal/texmath-0.12.10.3/texmath-0.12.10.3.tar.gz) = 1488381
+SHA256 (cabal/texmath-0.13/texmath-0.13.tar.gz) = 7d88b56e922471ff292d467af5fef690aaa0fae5c8cc30f55940b1035f2d57b1
+SIZE (cabal/texmath-0.13/texmath-0.13.tar.gz) = 1490531
SHA256 (cabal/text-conversions-0.3.1.1/text-conversions-0.3.1.1.tar.gz) = c8770fba789ce80334cae628285103c49abec0fa074773cbb5a88e26f5a7725d
SIZE (cabal/text-conversions-0.3.1.1/text-conversions-0.3.1.1.tar.gz) = 5258
SHA256 (cabal/text-iso8601-0.1.1/text-iso8601-0.1.1.tar.gz) = 9dead2b7ceeae40fe0fc060bd54795c32e9926c9d1aebae8f9b9a621fba88202
@@ -503,18 +501,20 @@ SHA256 (cabal/time-compat-1.9.8/time-compat-1.9.8.tar.gz) = 502ef8694a5b131b47c0
SIZE (cabal/time-compat-1.9.8/time-compat-1.9.8.tar.gz) = 63414
SHA256 (cabal/time-manager-0.2.3/time-manager-0.2.3.tar.gz) = eeb7c33d3b4492af771db0061222239a29727ee68a786a0488b1dba0a63d68e8
SIZE (cabal/time-manager-0.2.3/time-manager-0.2.3.tar.gz) = 5840
-SHA256 (cabal/tls-2.1.10/tls-2.1.10.tar.gz) = 58f56f4bd4e29a007027ffbce9e781cdf27e41b1d63f1fa96b5a0a25d08fcea1
-SIZE (cabal/tls-2.1.10/tls-2.1.10.tar.gz) = 191910
+SHA256 (cabal/tls-2.1.11/tls-2.1.11.tar.gz) = 059a173398504f03cdcf33543ee33ba45082c3270f52a4d5810f84ddf7f684e3
+SIZE (cabal/tls-2.1.11/tls-2.1.11.tar.gz) = 185047
SHA256 (cabal/toml-parser-2.0.1.2/toml-parser-2.0.1.2.tar.gz) = 1bae49f84caa86ea5831c5355fb60450eab1871ff54992bfaa8a7aaab755a33a
SIZE (cabal/toml-parser-2.0.1.2/toml-parser-2.0.1.2.tar.gz) = 48374
+SHA256 (cabal/toml-parser-2.0.1.2/revision/1.cabal) = 4cbcebdcbd920e9f145ca1cf572a194883f0f8844507abae7e6ba42ea037d05c
+SIZE (cabal/toml-parser-2.0.1.2/revision/1.cabal) = 4036
SHA256 (cabal/transformers-base-0.4.6/transformers-base-0.4.6.tar.gz) = 323bf8689eb691b122661cffa41a25e00fea7a768433fe2dde35d3da7d32cf90
SIZE (cabal/transformers-base-0.4.6/transformers-base-0.4.6.tar.gz) = 2902
SHA256 (cabal/transformers-compat-0.7.2/transformers-compat-0.7.2.tar.gz) = b62c7304c9f3cbc9463d0739aa85cb9489f217ea092b9d625d417514fbcc9d6a
SIZE (cabal/transformers-compat-0.7.2/transformers-compat-0.7.2.tar.gz) = 46485
SHA256 (cabal/typed-process-0.2.13.0/typed-process-0.2.13.0.tar.gz) = 9400966013b541df2e54ac8d57c3a670fc28bde2be87767ce98f13bbe2aa43a0
SIZE (cabal/typed-process-0.2.13.0/typed-process-0.2.13.0.tar.gz) = 19160
-SHA256 (cabal/typst-0.8.0.1/typst-0.8.0.1.tar.gz) = 9b3855d79973e5c98173cf071060b9e394899219cb80926e8b04eaaa8fa97803
-SIZE (cabal/typst-0.8.0.1/typst-0.8.0.1.tar.gz) = 6430160
+SHA256 (cabal/typst-0.8.0.2/typst-0.8.0.2.tar.gz) = 3508cb9acbd3b955c1c47eb0f9bcb1f1de58076ccb9450f8ffc4bcd293df27e0
+SIZE (cabal/typst-0.8.0.2/typst-0.8.0.2.tar.gz) = 6430248
SHA256 (cabal/typst-symbols-0.1.8.1/typst-symbols-0.1.8.1.tar.gz) = 2f7398262895ba298c1f43aa055f509021ebec82593b7e745d80832c4e4f42ed
SIZE (cabal/typst-symbols-0.1.8.1/typst-symbols-0.1.8.1.tar.gz) = 19859
SHA256 (cabal/unicode-collation-0.1.3.6/unicode-collation-0.1.3.6.tar.gz) = d64163d64cdf8c872d7ec02b49bc0d0192c70875b8c002765c5142cc880d3a30
@@ -533,10 +533,10 @@ SHA256 (cabal/uniplate-1.6.13/uniplate-1.6.13.tar.gz) = e777c94628445556a71f135a
SIZE (cabal/uniplate-1.6.13/uniplate-1.6.13.tar.gz) = 29787
SHA256 (cabal/uniplate-1.6.13/revision/1.cabal) = c8b715570d0b4baa72512e677552dd3f98372a64bf9de000e779bd4162fd7be7
SIZE (cabal/uniplate-1.6.13/revision/1.cabal) = 3320
-SHA256 (cabal/unix-compat-0.7.4/unix-compat-0.7.4.tar.gz) = 689b3a960c8fe12910554aa5b739d5c4769c1d180ade20402fde2ed49db7eff4
-SIZE (cabal/unix-compat-0.7.4/unix-compat-0.7.4.tar.gz) = 15586
-SHA256 (cabal/unix-time-0.4.16/unix-time-0.4.16.tar.gz) = ace2a7126d7344feb3221680c556de7f28a969fb287d49bd4a2d7df18fe638e9
-SIZE (cabal/unix-time-0.4.16/unix-time-0.4.16.tar.gz) = 52594
+SHA256 (cabal/unix-compat-0.7.4.1/unix-compat-0.7.4.1.tar.gz) = 3f9611624a100c75e672d900e63fe7a0e595615a34e6605662edaff151e44054
+SIZE (cabal/unix-compat-0.7.4.1/unix-compat-0.7.4.1.tar.gz) = 15619
+SHA256 (cabal/unix-time-0.4.17/unix-time-0.4.17.tar.gz) = f63a05be5dcc5ac8f72c26c9fef8dcc993638ca9b545b9bd69b8a3924c201f8c
+SIZE (cabal/unix-time-0.4.17/unix-time-0.4.17.tar.gz) = 53677
SHA256 (cabal/unliftio-core-0.2.1.0/unliftio-core-0.2.1.0.tar.gz) = 99384cba8d56d9d61b85e38a313a93ebcdb78be6566367f0930ef580597fe3e3
SIZE (cabal/unliftio-core-0.2.1.0/unliftio-core-0.2.1.0.tar.gz) = 3865
SHA256 (cabal/unliftio-core-0.2.1.0/revision/4.cabal) = f6a2736f858b5390d9384dca43d3ea4d96e9ca17217791791ca4951ba6e8072a
@@ -557,26 +557,26 @@ SHA256 (cabal/vault-0.3.1.5/revision/10.cabal) = 212cc25cd6730a565def636d39fe3fb
SIZE (cabal/vault-0.3.1.5/revision/10.cabal) = 2210
SHA256 (cabal/vector-0.13.2.0/vector-0.13.2.0.tar.gz) = 28f203c786cbf8ac6dc3fea3378ec36f34173d505fb4a1dd60fc8418ad91c423
SIZE (cabal/vector-0.13.2.0/vector-0.13.2.0.tar.gz) = 185739
-SHA256 (cabal/vector-0.13.2.0/revision/1.cabal) = b736a57b73520d2acf4865e3e2b40030d69782f35f870e376dc717ee2508d81f
-SIZE (cabal/vector-0.13.2.0/revision/1.cabal) = 8804
+SHA256 (cabal/vector-0.13.2.0/revision/2.cabal) = 9ac338c8da52d8a37db08434ca4480fef2cea4f9aac240f4f994bb467f5275b4
+SIZE (cabal/vector-0.13.2.0/revision/2.cabal) = 8804
SHA256 (cabal/vector-algorithms-0.9.1.0/vector-algorithms-0.9.1.0.tar.gz) = d2b674676802670d8a682b357da6b6b5741b4a33b191f0ffe5f2b2bc40558eb2
SIZE (cabal/vector-algorithms-0.9.1.0/vector-algorithms-0.9.1.0.tar.gz) = 29426
SHA256 (cabal/vector-stream-0.1.0.1/vector-stream-0.1.0.1.tar.gz) = d0f507334bdea5431a2f07f525a97f29e76522c32210f5de6d5a2b4f1d42bf7c
SIZE (cabal/vector-stream-0.1.0.1/vector-stream-0.1.0.1.tar.gz) = 12577
-SHA256 (cabal/vector-stream-0.1.0.1/revision/3.cabal) = 5ac96695212a45ae7dc16d8031dbf5311da53e052c35f7ad4a8e2db7fafb651e
-SIZE (cabal/vector-stream-0.1.0.1/revision/3.cabal) = 1642
+SHA256 (cabal/vector-stream-0.1.0.1/revision/4.cabal) = 483be6df13c72169a917640589666f9fece7bea9fa13fcd41d052dab37ea289e
+SIZE (cabal/vector-stream-0.1.0.1/revision/4.cabal) = 1642
SHA256 (cabal/wai-3.2.4/wai-3.2.4.tar.gz) = a6088f847d886d7c767092d170c03c7690d197eb3189d7cc67dbaaab33bf6d94
SIZE (cabal/wai-3.2.4/wai-3.2.4.tar.gz) = 13302
SHA256 (cabal/wai-app-static-3.1.9/wai-app-static-3.1.9.tar.gz) = b373d44da1f588aec0fab9f0c7509df13e7b156c109d19a30825dee6f68e4a66
SIZE (cabal/wai-app-static-3.1.9/wai-app-static-3.1.9.tar.gz) = 23416
SHA256 (cabal/wai-cors-0.2.7/wai-cors-0.2.7.tar.gz) = 2597beb56ebd7148f9755ae2661c065a6c532e0a286717061861b149a51cfb81
SIZE (cabal/wai-cors-0.2.7/wai-cors-0.2.7.tar.gz) = 16248
-SHA256 (cabal/wai-extra-3.1.17/wai-extra-3.1.17.tar.gz) = c7d66e48509331e9035ec487f58b4015886b64debf260eac62eb11a647de014b
-SIZE (cabal/wai-extra-3.1.17/wai-extra-3.1.17.tar.gz) = 86677
+SHA256 (cabal/wai-extra-3.1.18/wai-extra-3.1.18.tar.gz) = ee63740b8dd478b01196f8968603b1bc0ee00aa5502d17edae579abfd0f150f7
+SIZE (cabal/wai-extra-3.1.18/wai-extra-3.1.18.tar.gz) = 87221
SHA256 (cabal/wai-logger-2.5.0/wai-logger-2.5.0.tar.gz) = 5cfbd3076b1f94aca3bd2def06b136b36a22d37974f31c7732b8526ebec3e184
SIZE (cabal/wai-logger-2.5.0/wai-logger-2.5.0.tar.gz) = 6615
-SHA256 (cabal/warp-3.4.8/warp-3.4.8.tar.gz) = d4df0ab0eb14bc044672533e40ef9fb30ac740dee5df14ab864b173ac45fc750
-SIZE (cabal/warp-3.4.8/warp-3.4.8.tar.gz) = 68978
+SHA256 (cabal/warp-3.4.9/warp-3.4.9.tar.gz) = 3a19680d4c3e22d5a4da0da31af30e0c9001501ec84df6ace639ecad1b5b55b0
+SIZE (cabal/warp-3.4.9/warp-3.4.9.tar.gz) = 69304
SHA256 (cabal/witherable-0.5/witherable-0.5.tar.gz) = 48434cc1e465b13cbc0133a90c3ec0d827c93b77ce95807fe0a38b65f4918cd1
SIZE (cabal/witherable-0.5/witherable-0.5.tar.gz) = 10819
SHA256 (cabal/witherable-0.5/revision/1.cabal) = 85bab588ebca37996fc3171b9d8b2e065eb0536c9f44224bcf037c0849a881de
@@ -587,8 +587,8 @@ SHA256 (cabal/xml-1.3.14/xml-1.3.14.tar.gz) = 32d1a1a9f21a59176d84697f96ae3a13a0
SIZE (cabal/xml-1.3.14/xml-1.3.14.tar.gz) = 12048
SHA256 (cabal/xml-1.3.14/revision/2.cabal) = c7a33d37c968c769723931a33e4e795f0aadda6cb62e7073ded8a2db52509d95
SIZE (cabal/xml-1.3.14/revision/2.cabal) = 952
-SHA256 (cabal/xml-conduit-1.10.0.0/xml-conduit-1.10.0.0.tar.gz) = 3f9bd0cc3e80e49f2ac2a65b975ef503ea633f495172f9c05bdf1b46b5e1de92
-SIZE (cabal/xml-conduit-1.10.0.0/xml-conduit-1.10.0.0.tar.gz) = 44893
+SHA256 (cabal/xml-conduit-1.10.0.1/xml-conduit-1.10.0.1.tar.gz) = 61280abc9580d6ead5a37abd06e60c22b27eb74abb5e07f5d9107db13db1dc26
+SIZE (cabal/xml-conduit-1.10.0.1/xml-conduit-1.10.0.1.tar.gz) = 45453
SHA256 (cabal/xml-types-0.3.8/xml-types-0.3.8.tar.gz) = dad5e4ce602b7d1f4be37c0cfd99a261a4573746bfd80d917dc955b72da84c80
SIZE (cabal/xml-types-0.3.8/xml-types-0.3.8.tar.gz) = 4054
SHA256 (cabal/yaml-0.11.11.2/yaml-0.11.11.2.tar.gz) = ee74923ee5b0fef74413c58aaa20ea59baf5d29d256a62fb47cc279570d9dc2f
@@ -599,7 +599,5 @@ SHA256 (cabal/zip-archive-0.4.3.2/zip-archive-0.4.3.2.tar.gz) = 61dae6b47f1d5411
SIZE (cabal/zip-archive-0.4.3.2/zip-archive-0.4.3.2.tar.gz) = 22806
SHA256 (cabal/zip-archive-0.4.3.2/revision/1.cabal) = b224f6d0d5527a113fa94fac0b710bc204c544b23d5cca90507fbb73942ce56f
SIZE (cabal/zip-archive-0.4.3.2/revision/1.cabal) = 4039
-SHA256 (cabal/zlib-0.7.1.0/zlib-0.7.1.0.tar.gz) = 6edd38b6b81df8d274952aa85affa6968ae86b2231e1d429ce8bc9083e6a55bc
-SIZE (cabal/zlib-0.7.1.0/zlib-0.7.1.0.tar.gz) = 29318
-SHA256 (cabal/zlib-0.7.1.0/revision/2.cabal) = 85e64a75c0b490506a7edaa2d54950c668e66b65758bb08bb14cd31faf53a206
-SIZE (cabal/zlib-0.7.1.0/revision/2.cabal) = 5357
+SHA256 (cabal/zlib-0.7.1.1/zlib-0.7.1.1.tar.gz) = bf95ab01ed924be800addea195fba5ca97ec69f378368f6ff466bdc29666c1c1
+SIZE (cabal/zlib-0.7.1.1/zlib-0.7.1.1.tar.gz) = 29324
diff --git a/textproc/hs-pandoc/pkg-plist b/textproc/hs-pandoc/pkg-plist
index b92688d66ddf..40caf48f00a5 100644
--- a/textproc/hs-pandoc/pkg-plist
+++ b/textproc/hs-pandoc/pkg-plist
@@ -129,6 +129,7 @@ share/man/man1/pandoc.1.gz
%%NO_EMBED_DATA%%%%DATADIR%%/data/templates/default.texinfo
%%NO_EMBED_DATA%%%%DATADIR%%/data/templates/default.textile
%%NO_EMBED_DATA%%%%DATADIR%%/data/templates/default.typst
+%%NO_EMBED_DATA%%%%DATADIR%%/data/templates/default.vimdoc
%%NO_EMBED_DATA%%%%DATADIR%%/data/templates/default.xwiki
%%NO_EMBED_DATA%%%%DATADIR%%/data/templates/default.zimwiki
%%NO_EMBED_DATA%%%%DATADIR%%/data/templates/font-settings.latex
diff --git a/textproc/htmldoc/Makefile b/textproc/htmldoc/Makefile
index ab7d36114838..83cbab7d93cd 100644
--- a/textproc/htmldoc/Makefile
+++ b/textproc/htmldoc/Makefile
@@ -1,6 +1,6 @@
PORTNAME= htmldoc
DISTVERSIONPREFIX= v
-DISTVERSION= 1.9.20
+DISTVERSION= 1.9.21
CATEGORIES= textproc
MAINTAINER= fuz@FreeBSD.org
diff --git a/textproc/htmldoc/distinfo b/textproc/htmldoc/distinfo
index 3019cbc0af4f..87845331d88c 100644
--- a/textproc/htmldoc/distinfo
+++ b/textproc/htmldoc/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1733762026
-SHA256 (michaelrsweet-htmldoc-v1.9.20_GH0.tar.gz) = a155c86c69f90a426ff7244bd046bad026cc5ba9ac2be89dcb1d7973c52d5d82
-SIZE (michaelrsweet-htmldoc-v1.9.20_GH0.tar.gz) = 3313590
+TIMESTAMP = 1757710217
+SHA256 (michaelrsweet-htmldoc-v1.9.21_GH0.tar.gz) = 9f783917c7f6a23997c6318c807435aa41445a8a315e83cb327c23db4b8af918
+SIZE (michaelrsweet-htmldoc-v1.9.21_GH0.tar.gz) = 3309241
diff --git a/textproc/htmltest/Makefile b/textproc/htmltest/Makefile
index 45791643f36c..6d206de6cfb3 100644
--- a/textproc/htmltest/Makefile
+++ b/textproc/htmltest/Makefile
@@ -1,7 +1,7 @@
PORTNAME= htmltest
DISTVERSIONPREFIX= v
DISTVERSION= 0.17.0
-PORTREVISION= 23
+PORTREVISION= 24
CATEGORIES= textproc
MAINTAINER= dbaio@FreeBSD.org
diff --git a/textproc/ibus-typing-booster/Makefile b/textproc/ibus-typing-booster/Makefile
index 3402ae03b5af..82e46152189f 100644
--- a/textproc/ibus-typing-booster/Makefile
+++ b/textproc/ibus-typing-booster/Makefile
@@ -1,5 +1,5 @@
PORTNAME= ibus-typing-booster
-PORTVERSION= 2.27.72
+PORTVERSION= 2.27.74
CATEGORIES= textproc
MAINTAINER= thierry@FreeBSD.org
diff --git a/textproc/ibus-typing-booster/distinfo b/textproc/ibus-typing-booster/distinfo
index 7fcc5c5ca84b..7e12f8215ce9 100644
--- a/textproc/ibus-typing-booster/distinfo
+++ b/textproc/ibus-typing-booster/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1755002071
-SHA256 (mike-fabian-ibus-typing-booster-2.27.72_GH0.tar.gz) = 8d28e0ed6d4375fdc3e41f22c65c36a28e11c5f32b3df6580f4951136c074c78
-SIZE (mike-fabian-ibus-typing-booster-2.27.72_GH0.tar.gz) = 13831480
+TIMESTAMP = 1757956185
+SHA256 (mike-fabian-ibus-typing-booster-2.27.74_GH0.tar.gz) = 1691415d7440531c26412b7b7e55428ebdf7b7c1b5d0a90424cca8707062340b
+SIZE (mike-fabian-ibus-typing-booster-2.27.74_GH0.tar.gz) = 14321882
diff --git a/textproc/ibus-typing-booster/pkg-plist b/textproc/ibus-typing-booster/pkg-plist
index a2c5be6ac968..74a4c44201a9 100644
--- a/textproc/ibus-typing-booster/pkg-plist
+++ b/textproc/ibus-typing-booster/pkg-plist
@@ -187,6 +187,7 @@ share/applications/ibus-setup-typing-booster.desktop
%%DATADIR%%/data/annotationsDerived/as.xml
%%DATADIR%%/data/annotationsDerived/ast.xml
%%DATADIR%%/data/annotationsDerived/az.xml
+%%DATADIR%%/data/annotationsDerived/ba.xml
%%DATADIR%%/data/annotationsDerived/be.xml
%%DATADIR%%/data/annotationsDerived/bew.xml
%%DATADIR%%/data/annotationsDerived/bg.xml
@@ -306,6 +307,7 @@ share/applications/ibus-setup-typing-booster.desktop
%%DATADIR%%/data/annotationsDerived/sat.xml
%%DATADIR%%/data/annotationsDerived/sc.xml
%%DATADIR%%/data/annotationsDerived/sd.xml
+%%DATADIR%%/data/annotationsDerived/shn.xml
%%DATADIR%%/data/annotationsDerived/si.xml
%%DATADIR%%/data/annotationsDerived/sk.xml
%%DATADIR%%/data/annotationsDerived/sl.xml
@@ -320,6 +322,7 @@ share/applications/ibus-setup-typing-booster.desktop
%%DATADIR%%/data/annotationsDerived/sv.xml
%%DATADIR%%/data/annotationsDerived/sw.xml
%%DATADIR%%/data/annotationsDerived/sw_KE.xml
+%%DATADIR%%/data/annotationsDerived/syr.xml
%%DATADIR%%/data/annotationsDerived/ta.xml
%%DATADIR%%/data/annotationsDerived/te.xml
%%DATADIR%%/data/annotationsDerived/tg.xml
@@ -370,6 +373,8 @@ share/applications/ibus-setup-typing-booster.desktop
%%DATADIR%%/engine/__pycache__/itb_emoji%%PYTHON_TAG%%.pyc
%%DATADIR%%/engine/__pycache__/itb_nltk%%PYTHON_TAG%%.opt-1.pyc
%%DATADIR%%/engine/__pycache__/itb_nltk%%PYTHON_TAG%%.pyc
+%%DATADIR%%/engine/__pycache__/itb_ollama%%PYTHON_TAG%%.opt-1.pyc
+%%DATADIR%%/engine/__pycache__/itb_ollama%%PYTHON_TAG%%.pyc
%%DATADIR%%/engine/__pycache__/itb_pango%%PYTHON_TAG%%.opt-1.pyc
%%DATADIR%%/engine/__pycache__/itb_pango%%PYTHON_TAG%%.pyc
%%DATADIR%%/engine/__pycache__/itb_sound%%PYTHON_TAG%%.opt-1.pyc
@@ -394,6 +399,7 @@ share/applications/ibus-setup-typing-booster.desktop
%%DATADIR%%/engine/itb_active_window.py
%%DATADIR%%/engine/itb_emoji.py
%%DATADIR%%/engine/itb_nltk.py
+%%DATADIR%%/engine/itb_ollama.py
%%DATADIR%%/engine/itb_pango.py
%%DATADIR%%/engine/itb_sound.py
%%DATADIR%%/engine/itb_util.py
diff --git a/textproc/itstool/Makefile b/textproc/itstool/Makefile
index 30f5f2ed34bb..297efbff8735 100644
--- a/textproc/itstool/Makefile
+++ b/textproc/itstool/Makefile
@@ -1,9 +1,12 @@
PORTNAME= itstool
PORTVERSION= 2.0.7
-PORTREVISION= 2
+PORTREVISION= 4
CATEGORIES= textproc
MASTER_SITES= https://files.itstool.org/itstool/
+PATCH_SITES= https://github.com/itstool/itstool/commit/
+PATCHFILES= 32c7d07664dc37765100285d1202d488cd6a27e8.patch:-p1
+
MAINTAINER= sunpoet@FreeBSD.org
COMMENT= Translate XML with PO files using W3C Internationalization Tag Set rules
WWW= https://itstool.org/ \
@@ -12,9 +15,9 @@ WWW= https://itstool.org/ \
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING.GPL3
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}libxml2-python>=0:textproc/libxml2-python@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
-USES= python tar:bzip2
+USES= autoreconf python tar:bzip2
GNU_CONFIGURE= yes
NO_ARCH= yes
diff --git a/textproc/itstool/distinfo b/textproc/itstool/distinfo
index 6f95f612faf6..f9d5bbff5dfa 100644
--- a/textproc/itstool/distinfo
+++ b/textproc/itstool/distinfo
@@ -1,3 +1,5 @@
-TIMESTAMP = 1632582980
+TIMESTAMP = 1756517770
SHA256 (itstool-2.0.7.tar.bz2) = 6b9a7cd29a12bb95598f5750e8763cee78836a1a207f85b74d8b3275b27e87ca
SIZE (itstool-2.0.7.tar.bz2) = 104648
+SHA256 (32c7d07664dc37765100285d1202d488cd6a27e8.patch) = 4e64a2e884f9d4cbc493732fcbde9f1d5bed534f9a66330bbcc1cbeb54808c1e
+SIZE (32c7d07664dc37765100285d1202d488cd6a27e8.patch) = 3095
diff --git a/textproc/itstool/files/patch-PR18 b/textproc/itstool/files/patch-PR18
deleted file mode 100644
index b4cafecdb0b1..000000000000
--- a/textproc/itstool/files/patch-PR18
+++ /dev/null
@@ -1,88 +0,0 @@
-# https://github.com/itstool/itstool/pull/18
-# https://github.com/itstool/itstool/issues/17
-
-From 98d04cdabf1721cb541ecd234c975f13fde4fa41 Mon Sep 17 00:00:00 2001
-From: Guido Trentalancia <guido@trentalancia.com>
-Date: Wed, 1 Nov 2017 18:20:36 +0100
-Subject: [PATCH 1/2] Revert "Be more careful about libxml2 memory management"
-
-This reverts commit 9b84c007a73e8275ca45762f1bfa3ab7c3a852e2.
----
- itstool.in | 13 ++-----------
- 1 file changed, 2 insertions(+), 11 deletions(-)
-
-diff --git itstool.in itstool.in
-index a16eba9..c1d0585 100755
---- itstool.in
-+++ itstool.in
-@@ -477,7 +477,6 @@ class Document (object):
- if load_dtd:
- ctxt.loadSubset(1)
- if keep_entities:
-- ctxt.loadSubset(1)
- ctxt.ctxtUseOptions(libxml2.XML_PARSE_DTDLOAD)
- ctxt.replaceEntities(0)
- else:
-@@ -1044,7 +1043,6 @@ class Document (object):
- if self._load_dtd:
- ctxt.loadSubset(1)
- if self._keep_entities:
-- ctxt.loadSubset(1)
- ctxt.ctxtUseOptions(libxml2.XML_PARSE_DTDLOAD)
- ctxt.replaceEntities(0)
- else:
-@@ -1071,9 +1069,7 @@ class Document (object):
- ph_node = msg.get_placeholder(child.name).node
- if self.has_child_elements(ph_node):
- self.merge_translations(translations, None, ph_node, strict=strict)
-- newnode = ph_node.copyNode(1)
-- newnode.setTreeDoc(self._doc)
-- child.replaceNode(newnode)
-+ child.replaceNode(ph_node)
- else:
- repl = self.get_translated(ph_node, translations, strict=strict, lang=lang)
- child.replaceNode(repl)
-@@ -1088,15 +1084,10 @@ class Document (object):
- (lang + ' ') if lang is not None else '',
- msgstr.encode('utf-8')))
- self._xml_err = ''
-- ctxt.doc().freeDoc()
- return node
- retnode = node.copyNode(2)
-- retnode.setTreeDoc(self._doc)
- for child in xml_child_iter(trnode):
-- newnode = child.copyNode(1)
-- newnode.setTreeDoc(self._doc)
-- retnode.addChild(newnode)
--
-+ retnode.addChild(child.copyNode(1))
- ctxt.doc().freeDoc()
- return retnode
-
-
-From 1549b6d12eb2f35e5c7f1b1856c21768e92ba794 Mon Sep 17 00:00:00 2001
-From: Guido Trentalancia <guido@trentalancia.com>
-Date: Wed, 1 Nov 2017 18:23:44 +0100
-Subject: [PATCH 2/2] Fix a segmentation fault bug introduced with version
- 2.0.4.
-
-https://github.com/itstool/itstool/issues/17
-
-This fix seems a lot easier than the previous reverted commit.
----
- itstool.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git itstool.in itstool.in
-index c1d0585..e492e95 100755
---- itstool.in
-+++ itstool.in
-@@ -1048,7 +1048,7 @@ class Document (object):
- else:
- ctxt.replaceEntities(1)
- ctxt.parseDocument()
-- trnode = ctxt.doc().getRootElement()
-+ trnode = ctxt.doc().getRootElement().copyNode(1)
- try:
- self._check_errors()
- except libxml2.parserError:
diff --git a/textproc/itstool/files/patch-itstool.in b/textproc/itstool/files/patch-itstool.in
deleted file mode 100644
index ea6ed79c3781..000000000000
--- a/textproc/itstool/files/patch-itstool.in
+++ /dev/null
@@ -1,52 +0,0 @@
-# Workaround https://github.com/itstool/itstool/issues/25
-# Obtained from Fedora
-
---- itstool.in.orig 2018-08-21 15:27:24 UTC
-+++ itstool.in
-@@ -44,9 +44,22 @@ if PY3:
- else:
- return str(s)
- ustr_type = str
-+ def pr_str(s):
-+ """Return a string that can be safely print()ed"""
-+ # Since print works on both bytes and unicode, just return the argument
-+ return s
- else:
- string_types = basestring,
- ustr = ustr_type = unicode
-+ def pr_str(s):
-+ """Return a string that can be safely print()ed"""
-+ if isinstance(s, str):
-+ # Since print works on str, just return the argument
-+ return s
-+ else:
-+ # print may not work on unicode if the output encoding cannot be
-+ # detected, so just encode with UTF-8
-+ return unicode.encode(s, 'utf-8')
-
- NS_ITS = 'http://www.w3.org/2005/11/its'
- NS_ITST = 'http://itstool.org/extensions/'
-@@ -1060,9 +1073,9 @@ class Document (object):
- if strict:
- raise
- else:
-- sys.stderr.write('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
-+ sys.stderr.write(pr_str('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
- (lang + ' ') if lang is not None else '',
-- msgstr.encode('utf-8')))
-+ msgstr)))
- self._xml_err = ''
- return node
- def scan_node(node):
-@@ -1087,9 +1100,9 @@ class Document (object):
- if strict:
- raise
- else:
-- sys.stderr.write('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
-+ sys.stderr.write(pr_str('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
- (lang + ' ') if lang is not None else '',
-- msgstr.encode('utf-8')))
-+ msgstr)))
- self._xml_err = ''
- ctxt.doc().freeDoc()
- return node
diff --git a/textproc/itstool/files/patch-py-lxml b/textproc/itstool/files/patch-py-lxml
new file mode 100644
index 000000000000..897eaf6349d7
--- /dev/null
+++ b/textproc/itstool/files/patch-py-lxml
@@ -0,0 +1,1490 @@
+Obtained from: https://github.com/itstool/itstool/pull/57
+
+--- configure.ac.orig 2021-09-25 15:09:48 UTC
++++ configure.ac
+@@ -12,7 +12,7 @@ AM_PATH_PYTHON([2.6])
+
+ AM_PATH_PYTHON([2.6])
+
+-py_module=libxml2
++py_module=lxml
+ AC_MSG_CHECKING(for python module $py_module)
+ echo "import $py_module" | $PYTHON - &>/dev/null
+ if test $? -ne 0; then
+--- itstool.in.orig 2025-08-30 01:59:59 UTC
++++ itstool.in
+@@ -24,7 +24,8 @@ import hashlib
+
+ import gettext
+ import hashlib
+-import libxml2
++from copy import deepcopy
++from lxml import etree
+ import optparse
+ import os
+ import os.path
+@@ -190,7 +191,7 @@ class Placeholder (object):
+ class Placeholder (object):
+ def __init__ (self, node):
+ self.node = node
+- self.name = ustr(node.name, 'utf-8')
++ self.name = ustr(xml_localname(node), 'utf-8')
+
+
+ class Message (object):
+@@ -243,32 +244,30 @@ class Message (object):
+ def add_start_tag (self, node):
+ if len(self._message) == 0 or not(isinstance(self._message[-1], string_types)):
+ self._message.append('')
+- if node.ns() is not None and node.ns().name is not None:
+- self._message[-1] += ('<%s:%s' % (ustr(node.ns().name, 'utf-8'), ustr(node.name, 'utf-8')))
+- else:
+- self._message[-1] += ('<%s' % ustr(node.name, 'utf-8'))
+- for prop in xml_attr_iter(node):
+- name = prop.name
+- if prop.ns() is not None:
+- name = prop.ns().name + ':' + name
+- atval = prop.content
++ self._message[-1] += ('<%s' % ustr(xml_qname(node), 'utf-8'))
++ for name, atval in node.items():
++ qname = etree.QName(name)
++ if qname.namespace is not None:
++ # lxml doesn't expose the prefix of attributes, so we use
++ # an XPath expression to get the attribute's prefixed name.
++ # This is horribly inefficient.
++ expr = 'name(@*[local-name()="%s" and namespace-uri()="%s"])' % (
++ qname.localname, qname.namespace)
++ name = node.xpath(expr)
+ if not isinstance(atval, ustr_type):
+ atval = ustr(atval, 'utf-8')
+ atval = atval.replace('&', '&amp;').replace('<', '&lt;').replace('>', '&gt;').replace('"', '&quot;')
+ self._message += " %s=\"%s\"" % (name, atval)
+- if node.children is not None:
++ if len(node) > 0 or node.text:
+ self._message[-1] += '>'
+ else:
+ self._message[-1] += '/>'
+
+ def add_end_tag (self, node):
+- if node.children is not None:
++ if len(node) > 0 or node.text:
+ if len(self._message) == 0 or not(isinstance(self._message[-1], string_types)):
+ self._message.append('')
+- if node.ns() is not None and node.ns().name is not None:
+- self._message[-1] += ('</%s:%s>' % (ustr(node.ns().name, 'utf-8'), ustr(node.name, 'utf-8')))
+- else:
+- self._message[-1] += ('</%s>' % ustr(node.name, 'utf-8'))
++ self._message[-1] += ('</%s>' % ustr(xml_qname(node), 'utf-8'))
+
+ def is_empty (self):
+ return self._empty
+@@ -379,69 +378,86 @@ class Message (object):
+ return ret
+
+
+-def xml_child_iter (node):
+- child = node.children
+- while child is not None:
+- yield child
+- child = child.next
++def xml_localname (node):
++ return etree.QName(node.tag).localname
+
+-def xml_attr_iter (node):
+- attr = node.get_properties()
+- while attr is not None:
+- yield attr
+- attr = attr.next
++def xml_qname (node):
++ qname = etree.QName(node.tag).localname
++ if node.prefix is not None:
++ qname = node.prefix + ':' + qname
++ return qname
+
+-def xml_is_ns_name (node, ns, name):
+- if node.type != 'element':
+- return False
+- return node.name == name and node.ns() is not None and node.ns().content == ns
++def xml_content (node):
++ if isinstance(node, string_types):
++ return node
++ if isinstance(node, XMLAttr):
++ return node.parent.get(node.tag)
++ return etree.tostring(node, method='text', encoding='unicode')
+
++def xml_delete_node (node):
++ parent = node.getparent()
++ prev = node.getprevious()
++ tail = node.tail
++ if parent is not None:
++ parent.remove(node)
++ if prev is not None:
++ if prev.tail is None or re.fullmatch(r'\s+', prev.tail):
++ prev.tail = tail
++ else:
++ prev.tail += tail
++ elif parent is not None:
++ if parent.text is None or re.fullmatch(r'\s+', parent.text):
++ parent.text = tail
++ else:
++ parent.text += tail
++
+ def xml_get_node_path(node):
+ # The built-in nodePath() method only does numeric indexes
+ # when necessary for disambiguation. For various reasons,
+ # we prefer always using indexes.
+- name = node.name
+- if node.ns() is not None and node.ns().name is not None:
+- name = node.ns().name + ':' + name
+- if node.type == 'attribute':
++ name = xml_qname(node)
++ if isinstance(node, XMLAttr):
+ name = '@' + name
+ name = '/' + name
+- if node.type == 'element' and node.parent.type == 'element':
++ if node.getparent() is not None:
+ count = 1
+- prev = node.previousElementSibling()
++ prev = node.getprevious()
+ while prev is not None:
+- if prev.name == node.name:
+- if prev.ns() is None:
+- if node.ns() is None:
+- count += 1
+- else:
+- if node.ns() is not None:
+- if prev.ns().name == node.ns().name:
+- count += 1
+- prev = prev.previousElementSibling()
++ if prev.tag == node.tag:
++ count += 1
++ prev = prev.getprevious()
+ name = '%s[%i]' % (name, count)
+- if node.parent.type == 'element':
+- name = xml_get_node_path(node.parent) + name
++ name = xml_get_node_path(node.getparent()) + name
+ return name
+
+-def xml_error_catcher(doc, error):
+- doc._xml_err += " %s" % error
+
+-def fix_node_ns (node, nsdefs):
+- childnsdefs = nsdefs.copy()
+- nsdef = node.nsDefs()
+- while nsdef is not None:
+- nextnsdef = nsdef.next
+- if nsdef.name in nsdefs and nsdefs[nsdef.name] == nsdef.content:
+- node.removeNsDef(nsdef.content)
+- else:
+- childnsdefs[nsdef.name] = nsdef.content
+- nsdef = nextnsdef
+- for child in xml_child_iter(node):
+- if child.type == 'element':
+- fix_node_ns(child, childnsdefs)
++# lxml doesn't support attribute nodes, so we have to emulate them.
++class XMLAttr (object):
++ def __init__(self, element, tag):
++ self.parent = element
++ self.tag = tag
++ self.attrib = {}
++ self.sourceline = element.sourceline
+
++ def __repr__(self):
++ return '%s@%s' % (repr(self.parent), self.tag)
+
++ def __eq__(self, other):
++ return other and self.parent == other.parent and self.tag == other.tag
++
++ def __ne__(self, other):
++ return not self.__eq__(other)
++
++ def __hash__(self):
++ return hash(repr(self))
++
++ def getparent(self):
++ return self.parent
++
++ def get(self, default=None):
++ return default
++
++
+ class LocNote (object):
+ def __init__(self, locnote=None, locnoteref=None, locnotetype=None, space=False):
+ self.locnote = locnote
+@@ -464,82 +480,51 @@ class Document (object):
+
+ class Document (object):
+ def __init__ (self, filename, messages, load_dtd=False, keep_entities=False):
+- self._xml_err = ''
+- libxml2.registerErrorHandler(xml_error_catcher, self)
+- try:
+- ctxt = libxml2.createFileParserCtxt(filename)
+- except:
+- sys.stderr.write('Error: cannot open XML file %s\n' % filename)
+- sys.exit(1)
+- ctxt.lineNumbers(1)
+ self._load_dtd = load_dtd
+ self._keep_entities = keep_entities
+- if load_dtd:
+- ctxt.loadSubset(1)
+- if keep_entities:
+- ctxt.loadSubset(1)
+- ctxt.ctxtUseOptions(libxml2.XML_PARSE_DTDLOAD)
+- ctxt.replaceEntities(0)
+- else:
+- ctxt.replaceEntities(1)
+- ctxt.parseDocument()
++ parser = etree.XMLParser(load_dtd = load_dtd or keep_entities,
++ resolve_entities = not(keep_entities))
++ doc = etree.parse(filename, parser)
++ doc.xinclude()
+ self._filename = filename
+- self._doc = ctxt.doc()
++ self._doc = doc
+ self._localrules = []
+- def pre_process (node):
+- for child in xml_child_iter(node):
+- if xml_is_ns_name(child, 'http://www.w3.org/2001/XInclude', 'include'):
+- if child.nsProp('parse', None) == 'text':
+- child.xincludeProcessTree()
+- elif xml_is_ns_name(child, NS_ITS, 'rules'):
+- if child.hasNsProp('href', NS_XLINK):
+- href = child.nsProp('href', NS_XLINK)
+- fileref = os.path.join(os.path.dirname(filename), href)
+- if not os.path.exists(fileref):
+- if opts.itspath is not None:
+- for pathdir in opts.itspath:
+- fileref = os.path.join(pathdir, href)
+- if os.path.exists(fileref):
+- break
+- if not os.path.exists(fileref):
+- sys.stderr.write('Error: Could not locate ITS file %s\n' % href)
+- sys.exit(1)
+- hctxt = libxml2.createFileParserCtxt(fileref)
+- hctxt.replaceEntities(1)
+- hctxt.parseDocument()
+- root = hctxt.doc().getRootElement()
+- version = None
+- if root.hasNsProp('version', None):
+- version = root.nsProp('version', None)
+- else:
+- sys.stderr.write('Warning: ITS file %s missing version attribute\n' %
+- os.path.basename(href))
+- if version is not None and version not in ('1.0', '2.0'):
+- sys.stderr.write('Warning: Skipping ITS file %s with unknown version %s\n' %
+- (os.path.basename(href), root.nsProp('version', None)))
+- else:
+- self._localrules.append(root)
++ for child in doc.iter():
++ if child.tag == '{' + NS_ITS + '}rules':
++ href = child.get('{' + NS_XLINK + '}href')
++ if href is not None:
++ fileref = os.path.join(os.path.dirname(filename), href)
++ if not os.path.exists(fileref):
++ if opts.itspath is not None:
++ for pathdir in opts.itspath:
++ fileref = os.path.join(pathdir, href)
++ if os.path.exists(fileref):
++ break
++ if not os.path.exists(fileref):
++ sys.stderr.write('Error: Could not locate ITS file %s\n' % href)
++ sys.exit(1)
++ root = etree.parse(fileref).getroot()
+ version = None
+- if child.hasNsProp('version', None):
+- version = child.nsProp('version', None)
++ version = root.get('version')
++ if version is None:
++ sys.stderr.write('Warning: ITS file %s missing version attribute\n' %
++ os.path.basename(href))
++ elif version not in ('1.0', '2.0'):
++ sys.stderr.write('Warning: Skipping ITS file %s with unknown version %s\n' %
++ (os.path.basename(href), root.get('version')))
+ else:
+- root = child.doc.getRootElement()
+- if root.hasNsProp('version', NS_ITS):
+- version = root.nsProp('version', NS_ITS)
+- else:
+- sys.stderr.write('Warning: Local ITS rules missing version attribute\n')
+- if version is not None and version not in ('1.0', '2.0'):
+- sys.stderr.write('Warning: Skipping local ITS rules with unknown version %s\n' %
+- version)
+- else:
+- self._localrules.append(child)
+- pre_process(child)
+- pre_process(self._doc)
+- try:
+- self._check_errors()
+- except libxml2.parserError as e:
+- sys.stderr.write('Error: Could not parse document:\n%s\n' % ustr(e))
+- sys.exit(1)
++ self._localrules.append(root)
++ version = child.get('version')
++ if version is None:
++ root = child.getroottree()
++ version = root.get('{' + NS_ITS + '}version')
++ if version is None:
++ sys.stderr.write('Warning: Local ITS rules missing version attribute\n')
++ elif version not in ('1.0', '2.0'):
++ sys.stderr.write('Warning: Skipping local ITS rules with unknown version %s\n' %
++ version)
++ else:
++ self._localrules.append(child)
+ self._msgs = messages
+ self._its_translate_nodes = {}
+ self._its_within_text_nodes = {}
+@@ -556,13 +541,6 @@ class Document (object):
+
+ self._clear_cache()
+
+- def __del__ (self):
+- self._doc.freeDoc()
+-
+- def _check_errors(self):
+- if self._xml_err:
+- raise libxml2.parserError(self._xml_err)
+-
+ def _clear_cache(self):
+ self._its_translate_nodes_cache = {}
+ self._its_locale_filters_cache = {}
+@@ -570,123 +548,107 @@ class Document (object):
+
+ def get_its_params(self, rules):
+ params = {}
+- for child in xml_child_iter(rules):
+- if xml_is_ns_name(child, NS_ITS, 'param'):
+- params[child.nsProp('name', None)] = child.getContent()
++ for child in rules.iterchildren():
++ if child.tag == '{' + NS_ITS + '}param':
++ params[child.get('name')] = xml_content(child)
+ return params
+
+- def register_its_params(self, xpath, params, userparams={}):
+- for param in params:
+- if param in userparams:
+- xpath.xpathRegisterVariable(name, None, userparams[param])
++ def register_its_params(self, var, params, userparams={}):
++ for name in params:
++ if name in userparams:
++ var[name] = userparams[name]
+ else:
+- xpath.xpathRegisterVariable(name, None, params[param])
++ var[name] = params[name]
+
+ def apply_its_rule(self, rule, xpath):
+ self._clear_cache()
+- if rule.type != 'element':
+- return
+- if xml_is_ns_name(rule, NS_ITS, 'translateRule'):
+- if rule.nsProp('selector', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
+- self._its_translate_nodes[node] = rule.nsProp('translate', None)
+- elif xml_is_ns_name(rule, NS_ITS, 'withinTextRule'):
+- if rule.nsProp('selector', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
+- self._its_within_text_nodes[node] = rule.nsProp('withinText', None)
+- elif xml_is_ns_name(rule, NS_ITST, 'preserveSpaceRule'):
+- if rule.nsProp('selector', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
+- val = rule.nsProp('preserveSpace', None)
++ if rule.tag == '{' + NS_ITS + '}translateRule':
++ sel = rule.get('selector')
++ if sel is not None:
++ for node in self._try_xpath_eval(xpath, sel):
++ self._its_translate_nodes[node] = rule.get('translate')
++ elif rule.tag == '{' + NS_ITS + '}withinTextRule':
++ sel = rule.get('selector')
++ if sel is not None:
++ for node in self._try_xpath_eval(xpath, sel):
++ self._its_within_text_nodes[node] = rule.get('withinText')
++ elif rule.tag == '{' + NS_ITST + '}preserveSpaceRule':
++ sel = rule.get('selector')
++ if sel is not None:
++ for node in self._try_xpath_eval(xpath, sel):
++ val = rule.get('preserveSpace')
+ if val == 'yes':
+ self._its_preserve_space_nodes[node] = 'preserve'
+- elif xml_is_ns_name(rule, NS_ITS, 'preserveSpaceRule'):
+- if rule.nsProp('selector', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
+- self._its_preserve_space_nodes[node] = rule.nsProp('space', None)
+- elif xml_is_ns_name(rule, NS_ITS, 'localeFilterRule'):
+- if rule.nsProp('selector', None) is not None:
+- if rule.hasNsProp('localeFilterList', None):
+- lst = rule.nsProp('localeFilterList', None)
+- else:
+- lst = '*'
+- if rule.hasNsProp('localeFilterType', None):
+- typ = rule.nsProp('localeFilterType', None)
+- else:
+- typ = 'include'
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
++ elif rule.tag == '{' + NS_ITS + '}preserveSpaceRule':
++ sel = rule.get('selector')
++ if sel is not None:
++ for node in self._try_xpath_eval(xpath, sel):
++ self._its_preserve_space_nodes[node] = rule.get('space')
++ elif rule.tag == '{' + NS_ITS + '}localeFilterRule':
++ sel = rule.get('selector')
++ if sel is not None:
++ lst = rule.get('localeFilterList', '*')
++ typ = rule.get('localeFilterType', 'include')
++ for node in self._try_xpath_eval(xpath, sel):
+ self._its_locale_filters[node] = (lst, typ)
+- elif xml_is_ns_name(rule, NS_ITST, 'dropRule'):
+- if rule.nsProp('selector', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
+- self._itst_drop_nodes[node] = rule.nsProp('drop', None)
+- elif xml_is_ns_name(rule, NS_ITS, 'idValueRule'):
+- sel = rule.nsProp('selector', None)
+- idv = rule.nsProp('idValue', None)
++ elif rule.tag == '{' + NS_ITST + '}dropRule':
++ sel = rule.get('selector')
++ if sel is not None:
++ for node in self._try_xpath_eval(xpath, sel):
++ self._itst_drop_nodes[node] = rule.get('drop')
++ elif rule.tag == '{' + NS_ITS + '}idValueRule':
++ sel = rule.get('selector')
++ idv = rule.get('idValue')
+ if sel is not None and idv is not None:
+ for node in self._try_xpath_eval(xpath, sel):
+- try:
+- oldnode = xpath.contextNode()
+- except:
+- oldnode = None
+- xpath.setContextNode(node)
+- idvalue = self._try_xpath_eval(xpath, idv)
++ idvalue = self._try_xpath_eval(xpath, idv, node=node)
+ if isinstance(idvalue, string_types):
+ self._its_id_values[node] = idvalue
+ else:
+ for val in idvalue:
+- self._its_id_values[node] = val.content
++ self._its_id_values[node] = xml_content(val)
+ break
+- xpath.setContextNode(oldnode)
+ pass
+- elif xml_is_ns_name(rule, NS_ITST, 'contextRule'):
+- if rule.nsProp('selector', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
+- if rule.hasNsProp('context', None):
+- self._itst_contexts[node] = rule.nsProp('context', None)
+- elif rule.hasNsProp('contextPointer', None):
+- try:
+- oldnode = xpath.contextNode()
+- except:
+- oldnode = None
+- xpath.setContextNode(node)
+- ctxt = self._try_xpath_eval(xpath, rule.nsProp('contextPointer', None))
++ elif rule.tag == '{' + NS_ITST + '}contextRule':
++ sel = rule.get('selector')
++ if sel is not None:
++ for node in self._try_xpath_eval(xpath, sel):
++ ctxt = rule.get('context')
++ cp = rule.get('contextPointer')
++ if ctxt is not None:
++ self._itst_contexts[node] = ctxt
++ elif cp is not None:
++ ctxt = self._try_xpath_eval(xpath, cp, node=node)
+ if isinstance(ctxt, string_types):
+ self._itst_contexts[node] = ctxt
+ else:
+ for ctxt in ctxt:
+- self._itst_contexts[node] = ctxt.content
++ self._itst_contexts[node] = xml_content(ctxt)
+ break
+- xpath.setContextNode(oldnode)
+- elif xml_is_ns_name(rule, NS_ITS, 'locNoteRule'):
++ elif rule.tag == '{' + NS_ITS + '}locNoteRule':
+ locnote = None
+- notetype = rule.nsProp('locNoteType', None)
+- for child in xml_child_iter(rule):
+- if xml_is_ns_name(child, NS_ITS, 'locNote'):
+- locnote = LocNote(locnote=child.content, locnotetype=notetype)
+- break
++ notetype = rule.get('locNoteType')
++ for child in rule.iterchildren('{' + NS_ITS + '}locNote'):
++ locnote = LocNote(locnote=xml_content(child), locnotetype=notetype)
++ break
+ if locnote is None:
+- if rule.hasNsProp('locNoteRef', None):
+- locnote = LocNote(locnoteref=rule.nsProp('locNoteRef', None), locnotetype=notetype)
+- if rule.nsProp('selector', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
++ if 'locNoteRef' in rule.attrib:
++ locnote = LocNote(locnoteref=rule.get('locNoteRef'), locnotetype=notetype)
++ sel = rule.get('selector')
++ if sel is not None:
++ for node in self._try_xpath_eval(xpath, sel):
+ if locnote is not None:
+ self._its_loc_notes.setdefault(node, []).append(locnote)
+ else:
+- if rule.hasNsProp('locNotePointer', None):
+- sel = rule.nsProp('locNotePointer', None)
++ if 'locNotePointer' in rule.attrib:
++ sel = rule.get('locNotePointer')
+ ref = False
+- elif rule.hasNsProp('locNoteRefPointer', None):
+- sel = rule.nsProp('locNoteRefPointer', None)
++ elif 'locNoteRefPointer' in rule.attrib:
++ sel = rule.get('locNoteRefPointer')
+ ref = True
+ else:
+ continue
+- try:
+- oldnode = xpath.contextNode()
+- except:
+- oldnode = None
+- xpath.setContextNode(node)
+- note = self._try_xpath_eval(xpath, sel)
++ note = self._try_xpath_eval(xpath, sel, node=node)
+ if isinstance(note, string_types):
+ if ref:
+ nodenote = LocNote(locnoteref=note, locnotetype=notetype)
+@@ -695,55 +657,56 @@ class Document (object):
+ self._its_loc_notes.setdefault(node, []).append(nodenote)
+ else:
+ for note in note:
++ text = xml_content(note)
+ if ref:
+- nodenote = LocNote(locnoteref=note.content, locnotetype=notetype)
++ nodenote = LocNote(locnoteref=text, locnotetype=notetype)
+ else:
+- nodenote = LocNote(locnote=note.content, locnotetype=notetype,
++ nodenote = LocNote(locnote=text, locnotetype=notetype,
+ space=self.get_preserve_space(note))
+ self._its_loc_notes.setdefault(node, []).append(nodenote)
+ break
+- xpath.setContextNode(oldnode)
+- elif xml_is_ns_name(rule, NS_ITS, 'langRule'):
+- if rule.nsProp('selector', None) is not None and rule.nsProp('langPointer', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('selector', None)):
+- try:
+- oldnode = xpath.contextNode()
+- except:
+- oldnode = None
+- xpath.setContextNode(node)
+- res = self._try_xpath_eval(xpath, rule.nsProp('langPointer', None))
++ elif rule.tag == '{' + NS_ITS + '}langRule':
++ sel = rule.get('selector')
++ lp = rule.get('langPointer')
++ if sel is not None and lp is not None:
++ for node in self._try_xpath_eval(xpath, sel):
++ res = self._try_xpath_eval(xpath, lp, node=node)
+ if len(res) > 0:
+- self._its_lang[node] = res[0].content
++ self._its_lang[node] = xml_content(res[0])
+ # We need to construct language attributes, not just read
+ # language information. Technically, langPointer could be
+ # any XPath expression. But if it looks like an attribute
+ # accessor, just use the attribute name.
+- if rule.nsProp('langPointer', None)[0] == '@':
+- self._itst_lang_attr[node] = rule.nsProp('langPointer', None)[1:]
+- xpath.setContextNode(oldnode)
+- elif xml_is_ns_name(rule, NS_ITST, 'credits'):
+- if rule.nsProp('appendTo', None) is not None:
+- for node in self._try_xpath_eval(xpath, rule.nsProp('appendTo', None)):
++ # TODO: This should probably be skipped if langPointer
++ # equals '@xml:lang' which is the default.
++ if lp[0] == '@':
++ name = lp[1:]
++ if ':' in name:
++ prefix, lname = name.split(':', 2)
++ nsuri = node.nsmap.get(prefix)
++ if nsuri is None:
++ name = lname
++ else:
++ name = '{' + nsuri + '}' + lname
++ self._itst_lang_attr[node] = name
++ elif rule.tag == '{' + NS_ITST + '}credits':
++ sel = rule.get('appendTo')
++ if sel is not None:
++ for node in self._try_xpath_eval(xpath, sel):
+ self._itst_credits = (node, rule)
+ break
+- elif (xml_is_ns_name(rule, NS_ITS, 'externalResourceRefRule') or
+- xml_is_ns_name(rule, NS_ITST, 'externalRefRule')):
+- sel = rule.nsProp('selector', None)
+- if xml_is_ns_name(rule, NS_ITS, 'externalResourceRefRule'):
+- ptr = rule.nsProp('externalResourceRefPointer', None)
++ elif (rule.tag == '{' + NS_ITS + '}externalResourceRefRule' or
++ rule.tag == '{' + NS_ITST + '}externalRefRule'):
++ sel = rule.get('selector')
++ if rule.tag == '{' + NS_ITS + '}externalResourceRefRule':
++ ptr = rule.get('externalResourceRefPointer')
+ else:
+- ptr = rule.nsProp('refPointer', None)
++ ptr = rule.get('refPointer')
+ if sel is not None and ptr is not None:
+ for node in self._try_xpath_eval(xpath, sel):
+- try:
+- oldnode = xpath.contextNode()
+- except:
+- oldnode = None
+- xpath.setContextNode(node)
+- res = self._try_xpath_eval(xpath, ptr)
++ res = self._try_xpath_eval(xpath, ptr, node=node)
+ if len(res) > 0:
+- self._its_externals[node] = res[0].content
+- xpath.setContextNode(oldnode)
++ self._its_externals[node] = xml_content(res[0])
+
+ def apply_its_rules(self, builtins, userparams={}):
+ self._clear_cache()
+@@ -773,94 +736,59 @@ class Document (object):
+
+ def apply_its_file(self, filename, userparams={}):
+ self._clear_cache()
+- doc = libxml2.parseFile(filename)
+- root = doc.getRootElement()
+- if not xml_is_ns_name(root, NS_ITS, 'rules'):
++ parser = etree.XMLParser(resolve_entities = False)
++ root = etree.parse(filename, parser).getroot()
++ if root.tag != '{' + NS_ITS + '}rules':
+ return
+- version = None
+- if root.hasNsProp('version', None):
+- version = root.nsProp('version', None)
+- else:
++ version = root.get('version')
++ if version is None:
+ sys.stderr.write('Warning: ITS file %s missing version attribute\n' %
+ os.path.basename(filename))
+- if version is not None and version not in ('1.0', '2.0'):
++ elif version not in ('1.0', '2.0'):
+ sys.stderr.write('Warning: Skipping ITS file %s with unknown version %s\n' %
+- (os.path.basename(filename), root.nsProp('version', None)))
++ (os.path.basename(filename), root.get('version')))
+ return
+ matched = True
+- for match in xml_child_iter(root):
+- if xml_is_ns_name(match, NS_ITST, 'match'):
++ for match in root.iterchildren():
++ if match.tag == '{' + NS_ITST + '}match':
+ matched = False
+- xpath = self._doc.xpathNewContext()
+- par = match
+- nss = {}
+- while par is not None:
+- nsdef = par.nsDefs()
+- while nsdef is not None:
+- if nsdef.name is not None:
+- if nsdef.name not in nss:
+- nss[nsdef.name] = nsdef.content
+- xpath.xpathRegisterNs(nsdef.name, nsdef.content)
+- nsdef = nsdef.next
+- par = par.parent
+- if match.hasNsProp('selector', None):
+- if len(self._try_xpath_eval(xpath, match.nsProp('selector', None))) > 0:
++ sel = match.get('selector')
++ if sel is not None:
++ ns = { k: v for k, v in match.nsmap.items() if k is not None }
++ xpath = (ns, {})
++ if len(self._try_xpath_eval(xpath, sel)) > 0:
+ matched = True
+ break
+ if matched == False:
+ return
++ ns = { k: v for k, v in match.nsmap.items() if k is not None }
++ var = {}
+ params = self.get_its_params(root)
+- for rule in xml_child_iter(root):
+- xpath = self._doc.xpathNewContext()
+- par = match
+- nss = {}
+- while par is not None:
+- nsdef = par.nsDefs()
+- while nsdef is not None:
+- if nsdef.name is not None:
+- if nsdef.name not in nss:
+- nss[nsdef.name] = nsdef.content
+- xpath.xpathRegisterNs(nsdef.name, nsdef.content)
+- nsdef = nsdef.next
+- par = par.parent
+- self.register_its_params(xpath, params, userparams=userparams)
++ self.register_its_params(var, params, userparams=userparams)
++ xpath = (ns, var)
++ for rule in root.iterchildren():
+ self.apply_its_rule(rule, xpath)
+
+ def apply_local_its_rules(self, userparams={}):
+ self._clear_cache()
+ for rules in self._localrules:
+- def reg_ns(xpath, node):
+- if node.parent is not None:
+- reg_ns(xpath, node.parent)
+- nsdef = node.nsDefs()
+- while nsdef is not None:
+- if nsdef.name is not None:
+- xpath.xpathRegisterNs(nsdef.name, nsdef.content)
+- nsdef = nsdef.next
+- xpath = self._doc.xpathNewContext()
+- reg_ns(xpath, rules)
++ var = {}
+ params = self.get_its_params(rules)
+- self.register_its_params(xpath, params, userparams=userparams)
+- for rule in xml_child_iter(rules):
+- if rule.type != 'element':
+- continue
+- if rule.nsDefs() is not None:
+- rule_xpath = self._doc.xpathNewContext()
+- reg_ns(rule_xpath, rule)
+- self.register_its_params(rule_xpath, params, userparams=userparams)
+- else:
+- rule_xpath = xpath
++ self.register_its_params(var, params, userparams=userparams)
++ for rule in rules.iterchildren():
++ ns = { k: v for k, v in rule.nsmap.items() if k is not None }
++ rule_xpath = (ns, var)
+ self.apply_its_rule(rule, rule_xpath)
+
+ def _append_credits(self, parent, node, trdata):
+- if xml_is_ns_name(node, NS_ITST, 'for-each'):
+- select = node.nsProp('select', None)
++ if node.tag == '{' + NS_ITST + '}for-each':
++ select = node.get('select')
+ if select == 'years':
+ for year in trdata[2].split(','):
+- for child in xml_child_iter(node):
++ for child in node.iterchildren():
+ self._append_credits(parent, child, trdata + (year.strip(),))
+- elif xml_is_ns_name(node, NS_ITST, 'value-of'):
+- select = node.nsProp('select', None)
++ elif node.tag == '{' + NS_ITST + '}value-of':
++ select = node.get('select')
+ val = None
+ if select == 'name':
+ val = trdata[0]
+@@ -873,11 +801,20 @@ class Document (object):
+ if val is not None:
+ if not PY3:
+ val = val.encode('utf-8')
+- parent.addContent(val)
++ if len(parent):
++ if parent[-1].tail:
++ parent[-1].tail += val
++ else:
++ parent[-1].tail = val
++ else:
++ if parent.text:
++ parent.text += val
++ else:
++ parent.text = val
+ else:
+- newnode = node.copyNode(2)
+- parent.addChild(newnode)
+- for child in xml_child_iter(node):
++ newnode = parent.makeelement(node.tag, node.attrib)
++ parent.append(newnode)
++ for child in node.iterchildren():
+ self._append_credits(newnode, child, trdata)
+
+ def merge_credits(self, translations, language, node):
+@@ -895,7 +832,7 @@ class Document (object):
+ if not match:
+ continue
+ trdata = match.groups()
+- for node in xml_child_iter(self._itst_credits[1]):
++ for node in self._itst_credits[1].iterchildren():
+ self._append_credits(self._itst_credits[0], node, trdata)
+
+ def join_translations(self, translations, node=None, strict=False):
+@@ -903,29 +840,30 @@ class Document (object):
+ if node is None:
+ is_root = True
+ self.generate_messages(comments=False)
+- node = self._doc.getRootElement()
+- if node is None or node.type != 'element':
++ node = self._doc.getroot()
++ if node is None:
+ return
+ if self.get_itst_drop(node) == 'yes':
+- prev = node.prev
+- node.unlinkNode()
+- node.freeNode()
+- if prev is not None and prev.isBlankNode():
+- prev.unlinkNode()
+- prev.freeNode()
++ xml_delete_node(node)
+ return
+ msg = self._msgs.get_message_by_node(node)
+ if msg is None:
+- self.translate_attrs(node, node)
+- children = [child for child in xml_child_iter(node)]
+- for child in children:
++ #self.translate_attrs(node, node)
++ for child in node.iterchildren():
+ self.join_translations(translations, node=child, strict=strict)
+ else:
+- prevnode = None
+- if node.prev is not None and node.prev.type == 'text':
+- prevtext = node.prev.content
+- if re.sub(r'\s+', '', prevtext) == '':
+- prevnode = node.prev
++ prevtext = None
++ prev = node.getprevious()
++ if prev is None:
++ parent = node.getparent()
++ if parent is not None:
++ prevtext = parent.text
++ else:
++ prevtext = prev.tail
++ if prevtext is not None:
++ if not re.fullmatch(r'\s+', prevtext):
++ prevtext = None
++ i = 0
+ for lang in sorted(list(translations.keys()), reverse=True):
+ locale = self.get_its_locale_filter(node)
+ lmatch = match_locale_list(locale[0], lang)
+@@ -933,24 +871,25 @@ class Document (object):
+ continue
+ newnode = self.get_translated(node, translations[lang], strict=strict, lang=lang)
+ if newnode != node:
+- newnode.setProp('xml:lang', lang)
+- node.addNextSibling(newnode)
+- if prevnode is not None:
+- node.addNextSibling(prevnode.copyNode(0))
+- if is_root:
+- # Because of the way we create nodes and rewrite the document,
+- # we end up with lots of redundant namespace definitions. We
+- # kill them off in one fell swoop at the end.
+- fix_node_ns(node, {})
+- self._check_errors()
++ newnode.set('{' + NS_XML + '}lang', lang)
++ node.addnext(newnode)
++ if i == 0:
++ # Move tail to first new node
++ newnode.tail = node.tail
++ if prevtext is not None:
++ node.tail = prevtext
++ else:
++ if prevtext is not None:
++ newnode.tail = prevtext
++ i += 1
+
+ def merge_translations(self, translations, language, node=None, strict=False):
+ is_root = False
+ if node is None:
+ is_root = True
+ self.generate_messages(comments=False)
+- node = self._doc.getRootElement()
+- if node is None or node.type != 'element':
++ node = self._doc.getroot()
++ if node is None:
+ return
+ drop = False
+ locale = self.get_its_locale_filter(node)
+@@ -962,26 +901,23 @@ class Document (object):
+ if match_locale_list(locale[0], language):
+ drop = True
+ if self.get_itst_drop(node) == 'yes' or drop:
+- prev = node.prev
+- node.unlinkNode()
+- node.freeNode()
+- if prev is not None and prev.isBlankNode():
+- prev.unlinkNode()
+- prev.freeNode()
++ xml_delete_node(node)
+ return
+ if is_root:
+ self.merge_credits(translations, language, node)
+ msg = self._msgs.get_message_by_node(node)
+ if msg is None:
+ self.translate_attrs(node, node)
+- children = [child for child in xml_child_iter(node)]
+- for child in children:
++ for child in node.iterchildren():
+ self.merge_translations(translations, language, node=child, strict=strict)
+ else:
+ newnode = self.get_translated(node, translations, strict=strict, lang=language)
+ if newnode != node:
+ self.translate_attrs(node, newnode)
+- node.replaceNode(newnode)
++ newnode.tail = node.tail
++ parent = node.getparent()
++ if parent is not None:
++ parent.replace(node, newnode)
+ if is_root:
+ # Apply language attributes to untranslated nodes. We don't do
+ # this before processing, because then these attributes would
+@@ -998,31 +934,27 @@ class Document (object):
+ origlang = self._its_lang.get(lcpar)
+ if origlang is not None:
+ break
+- lcpar = lcpar.parent
++ lcpar = lcpar.getparent()
+ if origlang is not None:
+- lcnode.setProp(attr, origlang)
++ lcnode.set(attr, origlang)
+ # And then set the language attribute on the root node.
+ if language is not None:
+ attr = self._itst_lang_attr.get(node)
+ if attr is not None:
+- node.setProp(attr, language)
+- # Because of the way we create nodes and rewrite the document,
+- # we end up with lots of redundant namespace definitions. We
+- # kill them off in one fell swoop at the end.
+- fix_node_ns(node, {})
+- self._check_errors()
++ node.set(attr, language)
+
+ def translate_attrs(self, oldnode, newnode):
+- trans_attrs = [attr for attr in xml_attr_iter(oldnode) if self._its_translate_nodes.get(attr, 'no') == 'yes']
+- for attr in trans_attrs:
+- srccontent = attr.get_content()
++ for attrname, srccontent in oldnode.items():
++ attr = XMLAttr(oldnode, attrname)
++ if self._its_translate_nodes.get(attr, 'no') != 'yes':
++ continue
+ if not PY3:
+ srccontent = srccontent.decode('utf-8')
+ newcontent = translations.ugettext(srccontent)
+ if newcontent:
+ if not PY3:
+ newcontent = newcontent.encode('utf-8')
+- newnode.setProp(attr.name, newcontent)
++ newnode.set(attrname, newcontent)
+
+ def get_translated (self, node, translations, strict=False, lang=None):
+ msg = self._msgs.get_message_by_node(node)
+@@ -1037,106 +969,90 @@ class Document (object):
+ trans = translations.ugettext(msgstr)
+ if trans is None:
+ return node
+- nss = {}
+- def reg_ns(node, nss):
+- if node.parent is not None:
+- reg_ns(node.parent, nss)
+- nsdef = node.nsDefs()
+- while nsdef is not None:
+- nss[nsdef.name] = nsdef.content
+- nsdef = nsdef.next
+- reg_ns(node, nss)
+- nss['_'] = NS_BLANK
+- try:
+- blurb = node.doc.intSubset().serialize('utf-8')
+- except Exception:
+- blurb = ''
+- blurb += '<' + ustr(node.name, 'utf-8')
+- for nsname in list(nss.keys()):
++ blurb = ''
++ doc = node.getroottree()
++ if doc.docinfo.internalDTD:
++ # This is an ugly hack to serialize the DTD. We copy the
++ # document, replace the document element, serialize the
++ # document and remove the last line which contains the
++ # document element, leaving only the DTD.
++ copy = deepcopy(doc)
++ root = copy.getroot()
++ newroot = root.makeelement(root.tag)
++ copy._setroot(newroot)
++ blurb = re.sub('.*$', '', etree.tostring(copy, encoding='unicode'))
++ localname = ustr(xml_localname(node), 'utf-8')
++ blurb += '<' + localname
++ blurb += ' xmlns:_="%s"' % NS_BLANK
++ for nsname, nsuri in node.nsmap.items():
+ if nsname is None:
+- blurb += ' xmlns="%s"' % nss[nsname]
++ blurb += ' xmlns="%s"' % nsuri
+ else:
+- blurb += ' xmlns:%s="%s"' % (nsname, nss[nsname])
+- blurb += '>%s</%s>' % (trans, ustr(node.name, 'utf-8'))
+- if not PY3:
+- blurb = blurb.encode('utf-8')
+- ctxt = libxml2.createDocParserCtxt(blurb)
+- if self._load_dtd:
+- ctxt.loadSubset(1)
+- if self._keep_entities:
+- ctxt.loadSubset(1)
+- ctxt.ctxtUseOptions(libxml2.XML_PARSE_DTDLOAD)
+- ctxt.replaceEntities(0)
+- else:
+- ctxt.replaceEntities(1)
+- ctxt.parseDocument()
+- trnode = ctxt.doc().getRootElement()
++ blurb += ' xmlns:%s="%s"' % (nsname, nsuri)
++ blurb += '>%s</%s>' % (trans, localname)
++ parser = etree.XMLParser(load_dtd = self._load_dtd or self._keep_entities,
++ resolve_entities = not(self._keep_entities))
+ try:
+- self._check_errors()
+- except libxml2.parserError:
++ trnode = etree.fromstring(blurb, parser)
++ except:
+ if strict:
+ raise
+ else:
+ sys.stderr.write('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
+- (lang + ' ') if lang is not None else '',
+- msgstr.encode('utf-8')))
+- self._xml_err = ''
++ (lang + ' ') if lang is not None else '',
++ msgstr.encode('utf-8')))
+ return node
+- def scan_node(node):
+- children = [child for child in xml_child_iter(node)]
+- for child in children:
+- if child.type != 'element':
++ try:
++ for child in trnode.iterdescendants():
++ if isinstance(child, (etree._Entity, etree._Comment, etree._ProcessingInstruction)):
+ continue
+- if child.ns() is not None and child.ns().content == NS_BLANK:
+- ph_node = msg.get_placeholder(child.name).node
+- if self.has_child_elements(ph_node):
++ qname = etree.QName(child.tag)
++ if qname.namespace == NS_BLANK:
++ ph = msg.get_placeholder(qname.localname)
++ if ph is None:
++ sys.stderr.write('Warning: Could not find placeholder %s\n' % (
++ qname.localname))
++ continue
++ ph_node = ph.node
++ if len(ph_node):
+ self.merge_translations(translations, None, ph_node, strict=strict)
+- newnode = ph_node.copyNode(1)
+- newnode.setTreeDoc(self._doc)
+- child.replaceNode(newnode)
++ newnode = deepcopy(ph_node)
++ newnode.tail = child.tail
++ child.getparent().replace(child, newnode)
+ else:
+ repl = self.get_translated(ph_node, translations, strict=strict, lang=lang)
+- child.replaceNode(repl)
+- scan_node(child)
+- try:
+- scan_node(trnode)
++ repl.tail = child.tail
++ child.getparent().replace(child, repl)
+ except:
++ raise
+ if strict:
+ raise
+ else:
+ sys.stderr.write('Warning: Could not merge %stranslation for msgid:\n%s\n' % (
+ (lang + ' ') if lang is not None else '',
+ msgstr.encode('utf-8')))
+- self._xml_err = ''
+- ctxt.doc().freeDoc()
+ return node
+- retnode = node.copyNode(2)
+- retnode.setTreeDoc(self._doc)
+- for child in xml_child_iter(trnode):
+- newnode = child.copyNode(1)
+- newnode.setTreeDoc(self._doc)
+- retnode.addChild(newnode)
++ retnode = self._doc.getroot().makeelement(node.tag, node.attrib, node.nsmap)
++ retnode.text = trnode.text
++ for child in trnode.iterchildren():
++ retnode.append(child)
+
+- ctxt.doc().freeDoc()
+ return retnode
+
+ def generate_messages(self, comments=True):
+ if self._itst_credits is not None:
+ self._msgs.add_credits()
+- for child in xml_child_iter(self._doc):
+- if child.type == 'element':
+- self.generate_message(child, None, comments=comments)
+- break
++ if self._doc is not None:
++ self.generate_message(self._doc.getroot(), None, comments=comments)
+
+ def generate_message(self, node, msg, comments=True, path=None):
+- if node.type in ('text', 'cdata') and msg is not None:
+- msg.add_text(node.content)
++ if isinstance(node, etree._Entity):
++ msg.add_entity_ref(node.name)
+ return
+- if node.type == 'entity_ref':
+- msg.add_entity_ref(node.name);
+- if node.type != 'element':
++ # Only allow elements
++ if isinstance(node, XMLAttr) or not isinstance(node.tag, str):
+ return
+- if node.hasNsProp('drop', NS_ITST) and node.nsProp('drop', NS_ITST) == 'yes':
++ if node.get('{' + NS_ITST + '}drop', 'no') == 'yes':
+ return
+ if self._itst_drop_nodes.get(node, 'no') == 'yes':
+ return
+@@ -1158,9 +1074,7 @@ class Document (object):
+ if msg is not None:
+ msg.add_placeholder(node)
+ msg = Message()
+- ctxt = None
+- if node.hasNsProp('context', NS_ITST):
+- ctxt = node.nsProp('context', NS_ITST)
++ ctxt = node.get('{' + NS_ITST + '}context')
+ if ctxt is None:
+ ctxt = self._itst_contexts.get(node)
+ if ctxt is not None:
+@@ -1173,27 +1087,38 @@ class Document (object):
+ msg.set_preserve_space()
+ if self.get_its_locale_filter(node) != ('*', 'include'):
+ msg.set_locale_filter(self.get_its_locale_filter(node))
+- msg.add_source('%s:%i' % (self._doc.name, node.lineNo()))
+- msg.add_marker('%s/%s' % (ustr(node.parent.name, 'utf-8'), ustr(node.name, 'utf-8')))
++ msg.add_source('%s:%i' % (self._doc.docinfo.URL, node.sourceline))
++ parent = node.getparent()
++ if parent is None:
++ ptag = '#root'
++ else:
++ ptag = xml_localname(parent)
++ msg.add_marker('%s/%s' % (ustr(ptag, 'utf-8'), ustr(xml_localname(node), 'utf-8')))
+ else:
+ withinText = True
+ msg.add_start_tag(node)
+
+ if not withinText:
+ # Add msg for translatable node attributes
+- for attr in xml_attr_iter(node):
++ for attrname, attrval in node.items():
++ attr = XMLAttr(node, attrname)
+ if self._its_translate_nodes.get(attr, 'no') == 'yes':
+ attr_msg = Message()
+ if self.get_preserve_space(attr):
+ attr_msg.set_preserve_space()
+- attr_msg.add_source('%s:%i' % (self._doc.name, node.lineNo()))
+- attr_msg.add_marker('%s/%s@%s' % (node.parent.name, node.name, attr.name))
+- attr_msg.add_text(attr.content)
++ attr_msg.add_source('%s:%i' % (self._doc.docinfo.URL, node.sourceline))
++ attr_msg.add_marker('%s/%s@%s' % (
++ xml_localname(node.getparent()),
++ xml_localname(node),
++ etree.QName(attrname).localname))
++ attr_msg.add_text(attrval)
+ if comments:
+ for locnote in self.get_its_loc_notes(attr):
+ comment = Comment(locnote)
+ comment.add_marker ('%s/%s@%s' % (
+- node.parent.name, node.name, attr.name))
++ xml_localname(node.getparent()),
++ xml_localname(node),
++ etree.QName(attrname).localname))
+ attr_msg.add_comment(comment)
+ self._msgs.add_message(attr_msg, attr)
+
+@@ -1204,15 +1129,16 @@ class Document (object):
+ for locnote in self.get_its_loc_notes(cnode, inherit=(not withinText)):
+ comment = Comment(locnote)
+ if withinText:
+- comment.add_marker('.%s/%s' % (path, cnode.name))
++ comment.add_marker('.%s/%s' % (path, xml_localname(cnode)))
+ msg.add_comment(comment)
+ hasnote = True
+ if hasnote or not is_unit:
+ break
+- cnode = cnode.parent
++ cnode = cnode.getparent()
+
+ self.generate_external_resource_message(node)
+- for attr in xml_attr_iter(node):
++ for attrname in node.keys():
++ attr = XMLAttr(node, attrname)
+ self.generate_external_resource_message(attr)
+ idvalue = self.get_its_id_value(attr)
+ if idvalue is not None:
+@@ -1220,9 +1146,13 @@ class Document (object):
+ msg.add_id_value(basename + '#' + idvalue)
+
+ if withinText:
+- path = path + '/' + node.name
+- for child in xml_child_iter(node):
++ path = path + '/' + node.tag
++ if node.text is not None and msg is not None:
++ msg.add_text(node.text)
++ for child in node.iterchildren():
+ self.generate_message(child, msg, comments=comments, path=path)
++ if child.tail is not None and msg is not None:
++ msg.add_text(child.tail)
+
+ if translate:
+ if is_unit and not msg.is_empty():
+@@ -1234,12 +1164,17 @@ class Document (object):
+ if node not in self._its_externals:
+ return
+ resref = self._its_externals[node]
+- if node.type == 'element':
+- translate = self.get_its_translate(node)
+- marker = '%s/%s' % (node.parent.name, node.name)
++ if isinstance(node, XMLAttr):
++ elem = node.getparent()
++ translate = self.get_its_translate(elem)
++ marker = '%s/%s/@%s' % (
++ xml_localname(elem.getparent()),
++ xml_localname(elem),
++ xml_localname(node))
+ else:
+- translate = self.get_its_translate(node.parent)
+- marker = '%s/%s/@%s' % (node.parent.parent.name, node.parent.name, node.name)
++ translate = self.get_its_translate(node)
++ marker = '%s/%s' % (xml_localname(node.getparent()),
++ xml_localname(node))
+ if translate == 'no':
+ return
+ msg = Message()
+@@ -1253,7 +1188,7 @@ class Document (object):
+ txt = "external ref='%s' md5='%s'" % (resref, filemd5)
+ msg.set_context('_')
+ msg.add_text(txt)
+- msg.add_source('%s:%i' % (self._doc.name, node.lineNo()))
++ msg.add_source('%s:%i' % (self._doc.docinfo.URL, node.sourceline))
+ msg.add_marker(marker)
+ msg.add_comment(Comment('This is a reference to an external file such as an image or'
+ ' video. When the file changes, the md5 hash will change to'
+@@ -1265,44 +1200,41 @@ class Document (object):
+ def is_translation_unit (self, node):
+ return self.get_its_within_text(node) != 'yes'
+
+- def has_child_elements(self, node):
+- return len([child for child in xml_child_iter(node) if child.type=='element'])
+-
+ def get_preserve_space (self, node):
+- while node.type in ('attribute', 'element'):
+- if node.getSpacePreserve() == 1:
++ while node is not None:
++ if node.get('{' + NS_XML + '}space') == 'preserve':
+ return True
+ if node in self._its_preserve_space_nodes:
+ return (self._its_preserve_space_nodes[node] == 'preserve')
+- node = node.parent
++ node = node.getparent()
+ return False
+
+ def get_its_translate(self, node):
+ if node in self._its_translate_nodes_cache:
+ return self._its_translate_nodes_cache[node]
+ val = None
+- if node.hasNsProp('translate', NS_ITS):
+- val = node.nsProp('translate', NS_ITS)
+- elif xml_is_ns_name(node, NS_ITS, 'span') and node.hasNsProp('translate', None):
+- val = node.nsProp('translate', None)
++ if '{' + NS_ITS + '}translate' in node.attrib:
++ val = node.get('{' + NS_ITS + '}translate')
++ elif node.tag == '{' + NS_ITS + '}span' and 'translate' in node.attrib:
++ val = node.get('translate')
+ elif node in self._its_translate_nodes:
+ val = self._its_translate_nodes[node]
+ if val is not None:
+ self._its_translate_nodes_cache[node] = val
+ return val
+- if node.type == 'attribute':
++ if isinstance(node, XMLAttr):
+ return 'no'
+- if node.parent.type == 'element':
+- parval = self.get_its_translate(node.parent)
++ if node.getparent() is not None:
++ parval = self.get_its_translate(node.getparent())
+ self._its_translate_nodes_cache[node] = parval
+ return parval
+ return 'yes'
+
+ def get_its_within_text(self, node):
+- if node.hasNsProp('withinText', NS_ITS):
+- val = node.nsProp('withinText', NS_ITS)
+- elif xml_is_ns_name(node, NS_ITS, 'span') and node.hasNsProp('withinText', None):
+- val = node.nsProp('withinText', None)
++ if '{' + NS_ITS + '}withinText' in node.attrib:
++ val = node.get('{' + NS_ITS + '}withinText')
++ elif node.tag == '{' + NS_ITS + '}span' and 'withinText' in node.attrib:
++ val = node.get('withinText')
+ else:
+ return self._its_within_text_nodes.get(node, 'no')
+ if val in ('yes', 'nested'):
+@@ -1312,73 +1244,63 @@ class Document (object):
+ def get_its_locale_filter(self, node):
+ if node in self._its_locale_filters_cache:
+ return self._its_locale_filters_cache[node]
+- if node.hasNsProp('localeFilterList', NS_ITS) or node.hasNsProp('localeFilterType', NS_ITS):
+- if node.hasNsProp('localeFilterList', NS_ITS):
+- lst = node.nsProp('localeFilterList', NS_ITS)
+- else:
+- lst = '*'
+- if node.hasNsProp('localeFilterType', NS_ITS):
+- typ = node.nsProp('localeFilterType', NS_ITS)
+- else:
+- typ = 'include'
++ if ('{' + NS_ITS + '}localeFilterList' in node.attrib or
++ '{' + NS_ITS + '}localeFilterType' in node.attrib):
++ lst = node.get('{' + NS_ITS + '}localeFilterList', '*')
++ typ = node.get('{' + NS_ITS + '}localeFilterType', 'include')
+ return (lst, typ)
+- if (xml_is_ns_name(node, NS_ITS, 'span') and
+- (node.hasNsProp('localeFilterList', None) or node.hasNsProp('localeFilterType', None))):
+- if node.hasNsProp('localeFilterList', None):
+- lst = node.nsProp('localeFilterList', None)
+- else:
+- lst = '*'
+- if node.hasNsProp('localeFilterType', None):
+- typ = node.nsProp('localeFilterType', None)
+- else:
+- typ = 'include'
++ if (node.tag == '{' + NS_ITS + '}span' and
++ ('localeFilterList' in node.attrib or 'localeFilterType' in node.attrib)):
++ lst = node.get('localeFilterList', '*')
++ typ = node.get('localeFilterType', 'include')
+ return (lst, typ)
+ if node in self._its_locale_filters:
+ return self._its_locale_filters[node]
+- if node.parent.type == 'element':
+- parval = self.get_its_locale_filter(node.parent)
++ if node.getparent() is not None:
++ parval = self.get_its_locale_filter(node.getparent())
+ self._its_locale_filters_cache[node] = parval
+ return parval
+ return ('*', 'include')
+
+ def get_itst_drop(self, node):
+- if node.hasNsProp('drop', NS_ITST) and node.nsProp('drop', NS_ITST) == 'yes':
++ if node.get('{' + NS_ITST + '}drop') == 'yes':
+ return 'yes'
+ if self._itst_drop_nodes.get(node, 'no') == 'yes':
+ return 'yes'
+ return 'no'
+
+ def get_its_id_value(self, node):
+- if node.hasNsProp('id', NS_XML):
+- return node.nsProp('id', NS_XML)
++ if '{' + NS_XML + '}id' in node.attrib:
++ return node.get('{' + NS_XML + '}id')
+ return self._its_id_values.get(node, None)
+
+ def get_its_loc_notes(self, node, inherit=True):
+ if node in self._its_loc_notes_cache:
+ return self._its_loc_notes_cache[node]
+ ret = []
+- if ( node.hasNsProp('locNote', NS_ITS) or
+- node.hasNsProp('locNoteRef', NS_ITS) or
+- node.hasNsProp('locNoteType', NS_ITS) ):
+- notetype = node.nsProp('locNoteType', NS_ITS)
+- if node.hasNsProp('locNote', NS_ITS):
+- ret.append(LocNote(locnote=node.nsProp('locNote', NS_ITS), locnotetype=notetype))
+- elif node.hasNsProp('locNoteRef', NS_ITS):
+- ret.append(LocNote(locnoteref=node.nsProp('locNoteRef', NS_ITS), locnotetype=notetype))
+- elif xml_is_ns_name(node, NS_ITS, 'span'):
+- if ( node.hasNsProp('locNote', None) or
+- node.hasNsProp('locNoteRef', None) or
+- node.hasNsProp('locNoteType', None) ):
+- notetype = node.nsProp('locNoteType', None)
+- if node.hasNsProp('locNote', None):
+- ret.append(LocNote(locnote=node.nsProp('locNote', None), locnotetype=notetype))
+- elif node.hasNsProp('locNoteRef', None):
+- ret.append(LocNote(locnoteref=node.nsProp('locNoteRef', None), locnotetype=notetype))
++ if ( '{' + NS_ITS + '}locNote' in node.attrib or
++ '{' + NS_ITS + '}locNoteRef' in node.attrib or
++ '{' + NS_ITS + '}locNoteType' in node.attrib ):
++ notetype = node.get('{' + NS_ITS + '}locNoteType')
++ if '{' + NS_ITS + '}locNote' in node.attrib:
++ ret.append(LocNote(locnote=node.get('{' + NS_ITS + '}locNote'), locnotetype=notetype))
++ elif '{' + NS_ITS + '}locNoteRef' in node.attrib:
++ ret.append(LocNote(locnoteref=node.get('{' + NS_ITS + '}locNoteRef'), locnotetype=notetype))
++ elif node.tag == '{' + NS_ITS + '}span':
++ if ( 'locNote' in node.attrib or
++ 'locNoteRef' in node.attrib or
++ 'locNoteType' in node.attrib ):
++ notetype = node.get('locNoteType')
++ if 'locNote' in node.attrib:
++ ret.append(LocNote(locnote=node.get('locNote'), locnotetype=notetype))
++ elif 'locNoteRef' in node.attrib:
++ ret.append(LocNote(locnoteref=node.get('locNoteRef'), locnotetype=notetype))
+ for locnote in reversed(self._its_loc_notes.get(node, [])):
+ ret.append(locnote)
+ if (len(ret) == 0 and inherit and
+- node.type != 'attribute' and node.parent is not None and node.parent.type == 'element'):
+- parval = self.get_its_loc_notes(node.parent)
++ not isinstance(node, XMLAttr) and
++ node.getparent() is not None):
++ parval = self.get_its_loc_notes(node.getparent())
+ self._its_loc_notes_cache[node] = parval
+ return parval
+ self._its_loc_notes_cache[node] = ret
+@@ -1386,12 +1308,12 @@ class Document (object):
+
+ def output_test_data(self, category, out, node=None):
+ if node is None:
+- node = self._doc.getRootElement()
++ node = self._doc.getroot()
+ compval = ''
+ if category == 'translate':
+ compval = 'translate="%s"' % self.get_its_translate(node)
+ elif category == 'withinText':
+- if node.type != 'attribute':
++ if not isinstance(node, XMLAttr):
+ compval = 'withinText="%s"' % self.get_its_within_text(node)
+ elif category == 'localeFilter':
+ compval = 'localeFilterList="%s"\tlocaleFilterType="%s"' % self.get_its_locale_filter(node)
+@@ -1422,16 +1344,32 @@ class Document (object):
+ out.write('%s\t%s\r\n' % (xml_get_node_path(node), compval))
+ else:
+ out.write('%s\r\n' % (xml_get_node_path(node)))
+- for attr in sorted(xml_attr_iter(node), key=ustr):
++ for attrname in sorted(node.keys(), key=ustr):
++ attr = XMLAttr(node, attrname)
+ self.output_test_data(category, out, attr)
+- for child in xml_child_iter(node):
+- if child.type == 'element':
+- self.output_test_data(category, out, child)
++ for child in node.iterchildren():
++ self.output_test_data(category, out, child)
+
+- @staticmethod
+- def _try_xpath_eval (xpath, expr):
++ def _try_xpath_eval (self, xpath, expr, node=None):
++ if node is None:
++ node = self._doc
++ elif isinstance(node, XMLAttr):
++ # lxml doesn't support attributes as XPath context nodes.
++ if expr == '.':
++ return [ node ]
++ sys.stderr.write('Warning: Unsupported XPath on attribute: %s\n' % expr)
++ return []
+ try:
+- return xpath.xpathEval(expr)
++ result = node.xpath(expr, namespaces=xpath[0], **xpath[1])
++ if not isinstance(result, str):
++ for i in range(len(result)):
++ val = result[i]
++ # Use lxml's "smart string" feature to determine
++ # the attribute node.
++ if (isinstance(val, etree._ElementUnicodeResult) and
++ val.is_attribute):
++ result[i] = XMLAttr(val.getparent(), val.attrname)
++ return result
+ except:
+ sys.stderr.write('Warning: Invalid XPath: %s\n' % expr)
+ return []
+@@ -1636,11 +1574,11 @@ if __name__ == '__main__':
+ raise
+ sys.stderr.write('Error: Could not merge translations:\n%s\n' % ustr(e))
+ sys.exit(1)
+- serialized = doc._doc.serialize('utf-8')
+- if PY3:
+- # For some reason, under py3, our serialized data is returns as a str.
+- # Let's encode it to bytes
+- serialized = serialized.encode('utf-8')
++ # lxml generates XML declarations with single quotes.
++ serialized = (
++ b'<?xml version="1.0" encoding="utf-8"?>\n' +
++ etree.tostring(doc._doc, encoding='utf-8') +
++ b'\n')
+ fout = out
+ fout_is_str = isinstance(fout, string_types)
+ if fout_is_str:
+@@ -1675,11 +1613,11 @@ if __name__ == '__main__':
+ for itsfile in opts.itsfile:
+ doc.apply_its_file(itsfile, userparams=userparams)
+ doc.join_translations(translations, strict=opts.strict)
+- serialized = doc._doc.serialize('utf-8')
+- if PY3:
+- # For some reason, under py3, our serialized data is returns as a str.
+- # Let's encode it to bytes
+- serialized = serialized.encode('utf-8')
++ # lxml generates XML declarations with single quotes.
++ serialized = (
++ b'<?xml version="1.0" encoding="utf-8"?>\n' +
++ etree.tostring(doc._doc, encoding='utf-8') +
++ b'\n')
+ out.write(serialized)
+ out.flush()
+
diff --git a/textproc/jid/Makefile b/textproc/jid/Makefile
index 9f92f4d71354..6de4eee55aa6 100644
--- a/textproc/jid/Makefile
+++ b/textproc/jid/Makefile
@@ -1,7 +1,7 @@
PORTNAME= jid
PORTVERSION= 0.7.6
DISTVERSIONPREFIX= v
-PORTREVISION= 28
+PORTREVISION= 29
CATEGORIES= textproc
MAINTAINER= sbz@FreeBSD.org
diff --git a/textproc/jql/Makefile b/textproc/jql/Makefile
index ded26afcb5d5..42d51c05ee9b 100644
--- a/textproc/jql/Makefile
+++ b/textproc/jql/Makefile
@@ -1,7 +1,6 @@
PORTNAME= jql
DISTVERSIONPREFIX= jql-v
-DISTVERSION= 8.0.7
-PORTREVISION= 1
+DISTVERSION= 8.0.8
CATEGORIES= textproc
MAINTAINER= yuri@FreeBSD.org
@@ -25,9 +24,10 @@ CARGO_CRATES= addr2line-0.24.2 \
anstyle-parse-0.2.6 \
anstyle-query-1.1.2 \
anstyle-wincon-3.0.6 \
- anyhow-1.0.98 \
+ anyhow-1.0.99 \
autocfg-1.4.0 \
backtrace-0.3.74 \
+ bitflags-2.9.4 \
bumpalo-3.16.0 \
bytes-1.9.0 \
cast-0.3.0 \
@@ -36,14 +36,14 @@ CARGO_CRATES= addr2line-0.24.2 \
ciborium-0.2.2 \
ciborium-io-0.2.2 \
ciborium-ll-0.2.2 \
- clap-4.5.40 \
- clap_builder-4.5.40 \
- clap_derive-4.5.40 \
+ clap-4.5.47 \
+ clap_builder-4.5.47 \
+ clap_derive-4.5.47 \
clap_lex-0.7.4 \
colorchoice-1.0.3 \
colored_json-5.0.0 \
- criterion-0.6.0 \
- criterion-plot-0.5.0 \
+ criterion-0.7.0 \
+ criterion-plot-0.6.0 \
crossbeam-deque-0.8.5 \
crossbeam-epoch-0.9.18 \
crossbeam-utils-0.8.20 \
@@ -54,16 +54,17 @@ CARGO_CRATES= addr2line-0.24.2 \
half-2.4.1 \
hashbrown-0.15.2 \
heck-0.5.0 \
- indexmap-2.9.0 \
+ indexmap-2.11.0 \
+ io-uring-0.7.10 \
is_terminal_polyfill-1.70.1 \
- itertools-0.10.5 \
itertools-0.13.0 \
itoa-1.0.14 \
js-sys-0.3.74 \
- libc-0.2.167 \
+ libc-0.2.175 \
log-0.4.22 \
memchr-2.7.4 \
miniz_oxide-0.8.0 \
+ mio-1.0.4 \
num-traits-0.2.19 \
object-0.36.5 \
once_cell-1.20.2 \
@@ -75,8 +76,8 @@ CARGO_CRATES= addr2line-0.24.2 \
proc-macro2-1.0.92 \
psm-0.1.24 \
quote-1.0.37 \
- rayon-1.10.0 \
- rayon-core-1.12.1 \
+ rayon-1.11.0 \
+ rayon-core-1.13.0 \
regex-1.11.1 \
regex-automata-0.4.9 \
regex-syntax-0.8.5 \
@@ -85,20 +86,22 @@ CARGO_CRATES= addr2line-0.24.2 \
same-file-1.0.6 \
serde-1.0.219 \
serde_derive-1.0.219 \
- serde_json-1.0.140 \
+ serde_json-1.0.143 \
serde_stacker-0.1.12 \
shlex-1.3.0 \
+ slab-0.4.11 \
stacker-0.1.17 \
strsim-0.11.1 \
syn-2.0.90 \
- thiserror-2.0.12 \
- thiserror-impl-2.0.12 \
+ thiserror-2.0.16 \
+ thiserror-impl-2.0.16 \
tinytemplate-1.2.1 \
- tokio-1.45.1 \
+ tokio-1.47.1 \
tokio-macros-2.5.0 \
unicode-ident-1.0.14 \
utf8parse-0.2.2 \
walkdir-2.5.0 \
+ wasi-0.11.1+wasi-snapshot-preview1 \
wasm-bindgen-0.2.97 \
wasm-bindgen-backend-0.2.97 \
wasm-bindgen-macro-0.2.97 \
@@ -116,7 +119,7 @@ CARGO_CRATES= addr2line-0.24.2 \
windows_x86_64_gnu-0.52.6 \
windows_x86_64_gnullvm-0.52.6 \
windows_x86_64_msvc-0.52.6 \
- winnow-0.7.11 \
+ winnow-0.7.13 \
yansi-1.0.1
PLIST_FILES= bin/${PORTNAME}
diff --git a/textproc/jql/distinfo b/textproc/jql/distinfo
index 4a28d4c94810..2fe8d26d571c 100644
--- a/textproc/jql/distinfo
+++ b/textproc/jql/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1753124573
+TIMESTAMP = 1756969445
SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
@@ -17,12 +17,14 @@ SHA256 (rust/crates/anstyle-query-1.1.2.crate) = 79947af37f4177cfead1110013d6789
SIZE (rust/crates/anstyle-query-1.1.2.crate) = 9969
SHA256 (rust/crates/anstyle-wincon-3.0.6.crate) = 2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125
SIZE (rust/crates/anstyle-wincon-3.0.6.crate) = 12271
-SHA256 (rust/crates/anyhow-1.0.98.crate) = e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487
-SIZE (rust/crates/anyhow-1.0.98.crate) = 53334
+SHA256 (rust/crates/anyhow-1.0.99.crate) = b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100
+SIZE (rust/crates/anyhow-1.0.99.crate) = 53809
SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26
SIZE (rust/crates/autocfg-1.4.0.crate) = 17712
SHA256 (rust/crates/backtrace-0.3.74.crate) = 8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a
SIZE (rust/crates/backtrace-0.3.74.crate) = 88516
+SHA256 (rust/crates/bitflags-2.9.4.crate) = 2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394
+SIZE (rust/crates/bitflags-2.9.4.crate) = 47950
SHA256 (rust/crates/bumpalo-3.16.0.crate) = 79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c
SIZE (rust/crates/bumpalo-3.16.0.crate) = 85677
SHA256 (rust/crates/bytes-1.9.0.crate) = 325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b
@@ -39,22 +41,22 @@ SHA256 (rust/crates/ciborium-io-0.2.2.crate) = 05afea1e0a06c9be33d539b876f1ce369
SIZE (rust/crates/ciborium-io-0.2.2.crate) = 6697
SHA256 (rust/crates/ciborium-ll-0.2.2.crate) = 57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9
SIZE (rust/crates/ciborium-ll-0.2.2.crate) = 14695
-SHA256 (rust/crates/clap-4.5.40.crate) = 40b6887a1d8685cebccf115538db5c0efe625ccac9696ad45c409d96566e910f
-SIZE (rust/crates/clap-4.5.40.crate) = 57419
-SHA256 (rust/crates/clap_builder-4.5.40.crate) = e0c66c08ce9f0c698cbce5c0279d0bb6ac936d8674174fe48f736533b964f59e
-SIZE (rust/crates/clap_builder-4.5.40.crate) = 169191
-SHA256 (rust/crates/clap_derive-4.5.40.crate) = d2c7947ae4cc3d851207c1adb5b5e260ff0cca11446b1d6d1423788e442257ce
-SIZE (rust/crates/clap_derive-4.5.40.crate) = 33470
+SHA256 (rust/crates/clap-4.5.47.crate) = 7eac00902d9d136acd712710d71823fb8ac8004ca445a89e73a41d45aa712931
+SIZE (rust/crates/clap-4.5.47.crate) = 58354
+SHA256 (rust/crates/clap_builder-4.5.47.crate) = 2ad9bbf750e73b5884fb8a211a9424a1906c1e156724260fdae972f31d70e1d6
+SIZE (rust/crates/clap_builder-4.5.47.crate) = 170016
+SHA256 (rust/crates/clap_derive-4.5.47.crate) = bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c
+SIZE (rust/crates/clap_derive-4.5.47.crate) = 33550
SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6
SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858
SHA256 (rust/crates/colorchoice-1.0.3.crate) = 5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990
SIZE (rust/crates/colorchoice-1.0.3.crate) = 7923
SHA256 (rust/crates/colored_json-5.0.0.crate) = e35980a1b846f8e3e359fd18099172a0857140ba9230affc4f71348081e039b6
SIZE (rust/crates/colored_json-5.0.0.crate) = 12318
-SHA256 (rust/crates/criterion-0.6.0.crate) = 3bf7af66b0989381bd0be551bd7cc91912a655a58c6918420c9527b1fd8b4679
-SIZE (rust/crates/criterion-0.6.0.crate) = 119470
-SHA256 (rust/crates/criterion-plot-0.5.0.crate) = 6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1
-SIZE (rust/crates/criterion-plot-0.5.0.crate) = 22706
+SHA256 (rust/crates/criterion-0.7.0.crate) = e1c047a62b0cc3e145fa84415a3191f628e980b194c2755aa12300a4e6cbd928
+SIZE (rust/crates/criterion-0.7.0.crate) = 119908
+SHA256 (rust/crates/criterion-plot-0.6.0.crate) = 9b1bcc0dc7dfae599d84ad0b1a55f80cde8af3725da8313b528da95ef783e338
+SIZE (rust/crates/criterion-plot-0.6.0.crate) = 24495
SHA256 (rust/crates/crossbeam-deque-0.8.5.crate) = 613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d
SIZE (rust/crates/crossbeam-deque-0.8.5.crate) = 21726
SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e
@@ -75,26 +77,28 @@ SHA256 (rust/crates/hashbrown-0.15.2.crate) = bf151400ff0baff5465007dd2f3e717f3f
SIZE (rust/crates/hashbrown-0.15.2.crate) = 138478
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/indexmap-2.9.0.crate) = cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e
-SIZE (rust/crates/indexmap-2.9.0.crate) = 91214
+SHA256 (rust/crates/indexmap-2.11.0.crate) = f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9
+SIZE (rust/crates/indexmap-2.11.0.crate) = 99851
+SHA256 (rust/crates/io-uring-0.7.10.crate) = 046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b
+SIZE (rust/crates/io-uring-0.7.10.crate) = 103070
SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
-SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473
-SIZE (rust/crates/itertools-0.10.5.crate) = 115354
SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186
SIZE (rust/crates/itertools-0.13.0.crate) = 146261
SHA256 (rust/crates/itoa-1.0.14.crate) = d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674
SIZE (rust/crates/itoa-1.0.14.crate) = 11210
SHA256 (rust/crates/js-sys-0.3.74.crate) = a865e038f7f6ed956f788f0d7d60c541fff74c7bd74272c5d4cf15c63743e705
SIZE (rust/crates/js-sys-0.3.74.crate) = 54505
-SHA256 (rust/crates/libc-0.2.167.crate) = 09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc
-SIZE (rust/crates/libc-0.2.167.crate) = 757723
+SHA256 (rust/crates/libc-0.2.175.crate) = 6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543
+SIZE (rust/crates/libc-0.2.175.crate) = 788728
SHA256 (rust/crates/log-0.4.22.crate) = a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24
SIZE (rust/crates/log-0.4.22.crate) = 44027
SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3
SIZE (rust/crates/memchr-2.7.4.crate) = 96670
SHA256 (rust/crates/miniz_oxide-0.8.0.crate) = e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1
SIZE (rust/crates/miniz_oxide-0.8.0.crate) = 56343
+SHA256 (rust/crates/mio-1.0.4.crate) = 78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c
+SIZE (rust/crates/mio-1.0.4.crate) = 104212
SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841
SIZE (rust/crates/num-traits-0.2.19.crate) = 51631
SHA256 (rust/crates/object-0.36.5.crate) = aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e
@@ -117,10 +121,10 @@ SHA256 (rust/crates/psm-0.1.24.crate) = 200b9ff220857e53e184257720a14553b2f4aa02
SIZE (rust/crates/psm-0.1.24.crate) = 23294
SHA256 (rust/crates/quote-1.0.37.crate) = b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af
SIZE (rust/crates/quote-1.0.37.crate) = 28558
-SHA256 (rust/crates/rayon-1.10.0.crate) = b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa
-SIZE (rust/crates/rayon-1.10.0.crate) = 180155
-SHA256 (rust/crates/rayon-core-1.12.1.crate) = 1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2
-SIZE (rust/crates/rayon-core-1.12.1.crate) = 70701
+SHA256 (rust/crates/rayon-1.11.0.crate) = 368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f
+SIZE (rust/crates/rayon-1.11.0.crate) = 182470
+SHA256 (rust/crates/rayon-core-1.13.0.crate) = 22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91
+SIZE (rust/crates/rayon-core-1.13.0.crate) = 73151
SHA256 (rust/crates/regex-1.11.1.crate) = b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191
SIZE (rust/crates/regex-1.11.1.crate) = 254170
SHA256 (rust/crates/regex-automata-0.4.9.crate) = 809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908
@@ -137,26 +141,28 @@ SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854
SIZE (rust/crates/serde-1.0.219.crate) = 78983
SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00
SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
-SHA256 (rust/crates/serde_json-1.0.140.crate) = 20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373
-SIZE (rust/crates/serde_json-1.0.140.crate) = 154852
+SHA256 (rust/crates/serde_json-1.0.143.crate) = d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a
+SIZE (rust/crates/serde_json-1.0.143.crate) = 155342
SHA256 (rust/crates/serde_stacker-0.1.12.crate) = 69c8defe6c780725cce4ec6ad3bd91e321baf6fa4e255df1f31e345d507ef01a
SIZE (rust/crates/serde_stacker-0.1.12.crate) = 12975
SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
SIZE (rust/crates/shlex-1.3.0.crate) = 18713
+SHA256 (rust/crates/slab-0.4.11.crate) = 7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589
+SIZE (rust/crates/slab-0.4.11.crate) = 18549
SHA256 (rust/crates/stacker-0.1.17.crate) = 799c883d55abdb5e98af1a7b3f23b9b6de8ecada0ecac058672d7635eb48ca7b
SIZE (rust/crates/stacker-0.1.17.crate) = 14699
SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f
SIZE (rust/crates/strsim-0.11.1.crate) = 14266
SHA256 (rust/crates/syn-2.0.90.crate) = 919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31
SIZE (rust/crates/syn-2.0.90.crate) = 290584
-SHA256 (rust/crates/thiserror-2.0.12.crate) = 567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708
-SIZE (rust/crates/thiserror-2.0.12.crate) = 28693
-SHA256 (rust/crates/thiserror-impl-2.0.12.crate) = 7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d
-SIZE (rust/crates/thiserror-impl-2.0.12.crate) = 21141
+SHA256 (rust/crates/thiserror-2.0.16.crate) = 3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0
+SIZE (rust/crates/thiserror-2.0.16.crate) = 29095
+SHA256 (rust/crates/thiserror-impl-2.0.16.crate) = 6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960
+SIZE (rust/crates/thiserror-impl-2.0.16.crate) = 21214
SHA256 (rust/crates/tinytemplate-1.2.1.crate) = be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc
SIZE (rust/crates/tinytemplate-1.2.1.crate) = 26490
-SHA256 (rust/crates/tokio-1.45.1.crate) = 75ef51a33ef1da925cea3e4eb122833cb377c61439ca401b770f54902b806779
-SIZE (rust/crates/tokio-1.45.1.crate) = 811787
+SHA256 (rust/crates/tokio-1.47.1.crate) = 89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038
+SIZE (rust/crates/tokio-1.47.1.crate) = 829790
SHA256 (rust/crates/tokio-macros-2.5.0.crate) = 6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8
SIZE (rust/crates/tokio-macros-2.5.0.crate) = 12617
SHA256 (rust/crates/unicode-ident-1.0.14.crate) = adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83
@@ -165,6 +171,8 @@ SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faec
SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
SHA256 (rust/crates/walkdir-2.5.0.crate) = 29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b
SIZE (rust/crates/walkdir-2.5.0.crate) = 23951
+SHA256 (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b
+SIZE (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = 28477
SHA256 (rust/crates/wasm-bindgen-0.2.97.crate) = d15e63b4482863c109d70a7b8706c1e364eb6ea449b201a76c5b89cedcec2d5c
SIZE (rust/crates/wasm-bindgen-0.2.97.crate) = 45515
SHA256 (rust/crates/wasm-bindgen-backend-0.2.97.crate) = 8d36ef12e3aaca16ddd3f67922bc63e48e953f126de60bd33ccc0101ef9998cd
@@ -199,9 +207,9 @@ SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681
SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
-SHA256 (rust/crates/winnow-0.7.11.crate) = 74c7b26e3480b707944fc872477815d29a8e429d2f93a1ce000f5fa84a15cbcd
-SIZE (rust/crates/winnow-0.7.11.crate) = 174175
+SHA256 (rust/crates/winnow-0.7.13.crate) = 21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf
+SIZE (rust/crates/winnow-0.7.13.crate) = 174454
SHA256 (rust/crates/yansi-1.0.1.crate) = cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049
SIZE (rust/crates/yansi-1.0.1.crate) = 75497
-SHA256 (yamafaktory-jql-jql-v8.0.7_GH0.tar.gz) = 05448d17d1036373633e0d6a4556481ccc3b309832bdc9363d4c6f5d9d4311a4
-SIZE (yamafaktory-jql-jql-v8.0.7_GH0.tar.gz) = 447569
+SHA256 (yamafaktory-jql-jql-v8.0.8_GH0.tar.gz) = acb621bbfc26e44c2a0518e56a57ba67e8faee79c31f744e13cdc5f529a213b8
+SIZE (yamafaktory-jql-jql-v8.0.8_GH0.tar.gz) = 447809
diff --git a/textproc/kepubify/Makefile b/textproc/kepubify/Makefile
index fc67b7e21d61..7411a623ccd6 100644
--- a/textproc/kepubify/Makefile
+++ b/textproc/kepubify/Makefile
@@ -1,7 +1,7 @@
PORTNAME= kepubify
DISTVERSIONPREFIX= v
DISTVERSION= 4.0.4
-PORTREVISION= 28
+PORTREVISION= 29
CATEGORIES= textproc converters
MAINTAINER= fuz@FreeBSD.org
diff --git a/textproc/kf6-kcodecs/distinfo b/textproc/kf6-kcodecs/distinfo
index 892c4752e824..4f50d825c22a 100644
--- a/textproc/kf6-kcodecs/distinfo
+++ b/textproc/kf6-kcodecs/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754127977
-SHA256 (KDE/frameworks/6.17/kcodecs-6.17.0.tar.xz) = 07b1c6f6c30915629a99346f9fd5a854afe367291911fb61000932777f7e98f2
-SIZE (KDE/frameworks/6.17/kcodecs-6.17.0.tar.xz) = 2467872
+TIMESTAMP = 1757408199
+SHA256 (KDE/frameworks/6.18/kcodecs-6.18.0.tar.xz) = 247eda9ade502699062c7baaca7bb93691a308f202c165954652875ebe777426
+SIZE (KDE/frameworks/6.18/kcodecs-6.18.0.tar.xz) = 2472440
diff --git a/textproc/kf6-sonnet/distinfo b/textproc/kf6-sonnet/distinfo
index 03ee315d8da0..50edb3cbc9b6 100644
--- a/textproc/kf6-sonnet/distinfo
+++ b/textproc/kf6-sonnet/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754127977
-SHA256 (KDE/frameworks/6.17/sonnet-6.17.0.tar.xz) = 4afef6e9ca72edb6c22800b4acfb450df7121e5077c85213aca5f56ab9f4160b
-SIZE (KDE/frameworks/6.17/sonnet-6.17.0.tar.xz) = 2413056
+TIMESTAMP = 1757408200
+SHA256 (KDE/frameworks/6.18/sonnet-6.18.0.tar.xz) = 2d94c957a3c5f2232653ad782b291e2b959eea6dca83cc09cae621bc9834ab25
+SIZE (KDE/frameworks/6.18/sonnet-6.18.0.tar.xz) = 2413184
diff --git a/textproc/kf6-syntax-highlighting/distinfo b/textproc/kf6-syntax-highlighting/distinfo
index 9251d19d9336..5a05c8ad88b9 100644
--- a/textproc/kf6-syntax-highlighting/distinfo
+++ b/textproc/kf6-syntax-highlighting/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754127977
-SHA256 (KDE/frameworks/6.17/syntax-highlighting-6.17.0.tar.xz) = 3d16bec0fbeb853be684c35f47550d59814db1f4b707ec77b862f3650f353fcc
-SIZE (KDE/frameworks/6.17/syntax-highlighting-6.17.0.tar.xz) = 3711016
+TIMESTAMP = 1757408200
+SHA256 (KDE/frameworks/6.18/syntax-highlighting-6.18.0.tar.xz) = 8be8057221a982c8d1fe42f95454fac9610eb51975226c6652689293cd335bfd
+SIZE (KDE/frameworks/6.18/syntax-highlighting-6.18.0.tar.xz) = 3715588
diff --git a/textproc/kibana8/Makefile b/textproc/kibana8/Makefile
index b253abe594bd..86e36625a02c 100644
--- a/textproc/kibana8/Makefile
+++ b/textproc/kibana8/Makefile
@@ -1,5 +1,6 @@
PORTNAME= kibana
DISTVERSION= 8.11.3
+PORTREVISION= 1
DISTVERSIONSUFFIX= -linux-x86_64
CATEGORIES= textproc www
MASTER_SITES= https://artifacts.elastic.co/downloads/kibana/ \
@@ -13,15 +14,12 @@ WWW= https://www.elastic.co/products/kibana
LICENSE= APACHE20
-DEPRECATED= Depends on expired www/*node18
-EXPIRATION_DATE=2025-09-01
-
-BUILD_DEPENDS= npm-node18>=9.7.2:www/npm-node18
+BUILD_DEPENDS= npm-node20>=9.7.2:www/npm-node20
LIB_DEPENDS= libre2.so:devel/re2 \
libuv.so:devel/libuv
-RUN_DEPENDS= ${LOCALBASE}/bin/node:www/node18
+RUN_DEPENDS= ${LOCALBASE}/bin/node:www/node20
-USES= compiler:c++17-lang cpe nodejs:18,build,run python:build
+USES= compiler:c++17-lang cpe nodejs:20,build,run python:build
CPE_VENDOR= elastic
USE_GITHUB= nodefault
diff --git a/textproc/kompare/distinfo b/textproc/kompare/distinfo
index 62e418e4926a..52394b8e85e9 100644
--- a/textproc/kompare/distinfo
+++ b/textproc/kompare/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754646597
-SHA256 (KDE/release-service/25.08.0/kompare-25.08.0.tar.xz) = 2b2f67eb9a31093b1d1e295724f0f0b0cd13275cacdfb864590d5fcce8b4c872
-SIZE (KDE/release-service/25.08.0/kompare-25.08.0.tar.xz) = 964148
+TIMESTAMP = 1757410297
+SHA256 (KDE/release-service/25.08.1/kompare-25.08.1.tar.xz) = 55fb17f8337df779cecec9f4a85b6e225c630414c657df51f5b25e158e23e017
+SIZE (KDE/release-service/25.08.1/kompare-25.08.1.tar.xz) = 964092
diff --git a/textproc/libjcat/Makefile b/textproc/libjcat/Makefile
index b5df28c2ef59..20086e184573 100644
--- a/textproc/libjcat/Makefile
+++ b/textproc/libjcat/Makefile
@@ -1,6 +1,5 @@
PORTNAME= libjcat
-DISTVERSION= 0.2.2
-PORTREVISION= 2
+DISTVERSION= 0.2.3
CATEGORIES= textproc
MASTER_SITES= https://github.com/hughsie/${PORTNAME}/releases/download/${DISTVERSION}/
diff --git a/textproc/libjcat/distinfo b/textproc/libjcat/distinfo
index f4a21347e01c..20b88d18b6ae 100644
--- a/textproc/libjcat/distinfo
+++ b/textproc/libjcat/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1730569434
-SHA256 (libjcat-0.2.2.tar.xz) = f1bed6217234cc2f833d72ae3a375d9164f92a0010b49c5b19b63e88e03de12c
-SIZE (libjcat-0.2.2.tar.xz) = 66128
+TIMESTAMP = 1758621992
+SHA256 (libjcat-0.2.3.tar.xz) = f2f115aad8a8f16b8dde1ed55de7abacb91d0878539aa29b2b60854b499db639
+SIZE (libjcat-0.2.3.tar.xz) = 66188
diff --git a/textproc/libkomparediff2/distinfo b/textproc/libkomparediff2/distinfo
index a3db9b2b6338..39dcf76fea73 100644
--- a/textproc/libkomparediff2/distinfo
+++ b/textproc/libkomparediff2/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754646599
-SHA256 (KDE/release-service/25.08.0/libkomparediff2-25.08.0.tar.xz) = 5c787cdf33b60f6da4f2954238349826607c0073f4f9b30a6ace65800c9a25c0
-SIZE (KDE/release-service/25.08.0/libkomparediff2-25.08.0.tar.xz) = 186372
+TIMESTAMP = 1757410299
+SHA256 (KDE/release-service/25.08.1/libkomparediff2-25.08.1.tar.xz) = d780da0867c0e2123ff4d401a7b30e07bd9b3159182a0949a7d4976d7d248b49
+SIZE (KDE/release-service/25.08.1/libkomparediff2-25.08.1.tar.xz) = 186328
diff --git a/textproc/libxslt/Makefile b/textproc/libxslt/Makefile
index 344606952e8f..dcfd2041aefc 100644
--- a/textproc/libxslt/Makefile
+++ b/textproc/libxslt/Makefile
@@ -12,9 +12,6 @@ WWW= https://gitlab.gnome.org/GNOME/libxslt/
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/Copyright
-DEPRECATED= unmaintained with multiple unfixed security vulnerabilities
-EXPIRATION_DATE=2025-09-12
-
# See note in textproc/libxml2 for why this port uses autotools
USES= cpe gmake gnome libtool localbase:ldflags pathfix pkgconfig tar:xz
CPE_VENDOR= xmlsoft
diff --git a/textproc/link-grammar/Makefile b/textproc/link-grammar/Makefile
index 39948ec304c6..b1b2759324c6 100644
--- a/textproc/link-grammar/Makefile
+++ b/textproc/link-grammar/Makefile
@@ -1,6 +1,5 @@
PORTNAME= link-grammar
-DISTVERSION= 5.10.5
-PORTREVISION= 2
+DISTVERSION= 5.12.6
CATEGORIES= textproc
MASTER_SITES= https://www.gnucash.org/${PORTNAME}/downloads/${PORTVERSION}/
@@ -11,6 +10,8 @@ WWW= https://opencog.github.io/link-grammar-website/
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/LICENSE
+LIB_DEPENDS= libpcre2-8.so:devel/pcre2
+
USES= compiler:c++11-lib dos2unix gmake libtool localbase ncurses \
pathfix pkgconfig sqlite
USE_LDCONFIG= yes
@@ -21,12 +22,10 @@ CONFIGURE_ARGS= --disable-maintainer-mode \
INSTALL_TARGET= install-strip
-LIB_DEPENDS= libpcre2-8.so:devel/pcre2
-
PLIST_SUB= VERSION=${PORTVERSION}
OPTIONS_SUB= yes
-OPTIONS_DEFINE= EDITLINE JAVA PERL SAT_SOLVER PYTHON
+OPTIONS_DEFINE= EDITLINE JAVA PERL SAT_SOLVER
OPTIONS_DEFAULT= EDITLINE HUNSPELL SAT_SOLVER
OPTIONS_MULTI= SPELL
@@ -54,7 +53,4 @@ SAT_SOLVER_CONFIGURE_ENABLE= sat-solver
SAT_SOLVER_DESC= Use boolean SAT parser
SAT_SOLVER_LIB_DEPENDS= libminisat.so:math/minisat
-post-install:
- @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/liblink-grammar.so.${DISTVERSION} # see https://github.com/opencog/link-grammar/issues/645
-
.include <bsd.port.mk>
diff --git a/textproc/link-grammar/distinfo b/textproc/link-grammar/distinfo
index 985e37b63df0..fb51b563b379 100644
--- a/textproc/link-grammar/distinfo
+++ b/textproc/link-grammar/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1656160404
-SHA256 (link-grammar-5.10.5.tar.gz) = 324710cd8132975ff9ccb53509732f7558473b1c19f17892000a3dedb8618aed
-SIZE (link-grammar-5.10.5.tar.gz) = 4637765
+TIMESTAMP = 1757670133
+SHA256 (link-grammar-5.12.6.tar.gz) = 997dd6b236c7957fdda975a402e066b3e031134e7c75eb0e6d8f106185cc0814
+SIZE (link-grammar-5.12.6.tar.gz) = 4726532
diff --git a/textproc/link-grammar/pkg-plist b/textproc/link-grammar/pkg-plist
index 6074ba87cafa..23136aca5b46 100644
--- a/textproc/link-grammar/pkg-plist
+++ b/textproc/link-grammar/pkg-plist
@@ -1,6 +1,7 @@
bin/link-generator
bin/link-parser
include/link-grammar/dict-api.h
+include/link-grammar/dict-atomese.h
include/link-grammar/dict-structures.h
include/link-grammar/link-features.h
include/link-grammar/link-includes.h
@@ -76,6 +77,9 @@ libdata/pkgconfig/link-grammar.pc
%%DATADIR%%/de/4.0.dict
%%DATADIR%%/de/4.0.knowledge
%%DATADIR%%/de/4.0.regex
+%%DATADIR%%/demo-atomese/4.0.affix
+%%DATADIR%%/demo-atomese/atomese-dict.scm
+%%DATADIR%%/demo-atomese/storage.dict
%%DATADIR%%/demo-sql/4.0.affix
%%DATADIR%%/demo-sql/4.0.constituent-knowledge
%%DATADIR%%/demo-sql/4.0.knowledge
@@ -139,6 +143,7 @@ libdata/pkgconfig/link-grammar.pc
%%DATADIR%%/en/words/words.n.3-const
%%DATADIR%%/en/words/words.n.3-vowel
%%DATADIR%%/en/words/words.n.3.y
+%%DATADIR%%/en/words/words.n.4-const
%%DATADIR%%/en/words/words.n.t
%%DATADIR%%/en/words/words.v.1.1
%%DATADIR%%/en/words/words.v.1.2
diff --git a/textproc/linux-rl9-libxml2/Makefile b/textproc/linux-rl9-libxml2/Makefile
index 88e995c000d0..8ec5a8749b64 100644
--- a/textproc/linux-rl9-libxml2/Makefile
+++ b/textproc/linux-rl9-libxml2/Makefile
@@ -1,7 +1,7 @@
PORTNAME= libxml2
PORTVERSION= 2.9.13
-DISTVERSIONSUFFIX= -9.el9_6
-PORTREVISION= 7
+DISTVERSIONSUFFIX= -12.el9_6
+PORTREVISION= 8
CATEGORIES= textproc linux
MAINTAINER= emulation@FreeBSD.org
diff --git a/textproc/linux-rl9-libxml2/distinfo b/textproc/linux-rl9-libxml2/distinfo
index 8ff3cb96a081..b4585099e48c 100644
--- a/textproc/linux-rl9-libxml2/distinfo
+++ b/textproc/linux-rl9-libxml2/distinfo
@@ -1,9 +1,9 @@
-TIMESTAMP = 1750640320
-SHA256 (rocky/l/libxml2-2.9.13-9.el9_6.aarch64.rpm) = fe512f3279b1b814caea17e5673d6cdba945b87257881e76ca67e9e44596e213
-SIZE (rocky/l/libxml2-2.9.13-9.el9_6.aarch64.rpm) = 746007
-SHA256 (rocky/l/libxml2-2.9.13-9.el9_6.i686.rpm) = ee3f310cba35d537a6d3c2def4ebbbd5272fe3db4e646021e59bfe62405c4232
-SIZE (rocky/l/libxml2-2.9.13-9.el9_6.i686.rpm) = 802196
-SHA256 (rocky/l/libxml2-2.9.13-9.el9_6.x86_64.rpm) = b396d041086c62dc315b697b34d9eed7a771999f10d86be1f37840adeba51da8
-SIZE (rocky/l/libxml2-2.9.13-9.el9_6.x86_64.rpm) = 763753
-SHA256 (rocky/l/libxml2-2.9.13-9.el9_6.src.rpm) = 4478c3f8fd5b3be120ae47c3aaff2e0b619ce2369fc891659db33c7629273fa5
-SIZE (rocky/l/libxml2-2.9.13-9.el9_6.src.rpm) = 3274891
+TIMESTAMP = 1757066192
+SHA256 (rocky/l/libxml2-2.9.13-12.el9_6.aarch64.rpm) = 68d659198ec432321b37ae8c4bbf3e1e04a3b6d875cab21125f1859af25baa1d
+SIZE (rocky/l/libxml2-2.9.13-12.el9_6.aarch64.rpm) = 746118
+SHA256 (rocky/l/libxml2-2.9.13-12.el9_6.i686.rpm) = a265e2ebb73add49359f3865e8884e48124e8ce82e21af90f70f98a5e4118bbf
+SIZE (rocky/l/libxml2-2.9.13-12.el9_6.i686.rpm) = 802620
+SHA256 (rocky/l/libxml2-2.9.13-12.el9_6.x86_64.rpm) = 10a8bd5bf4bbc1cf043bdc54860c51b5cf0b37e9f753c1098b35bc0de7bb3435
+SIZE (rocky/l/libxml2-2.9.13-12.el9_6.x86_64.rpm) = 763770
+SHA256 (rocky/l/libxml2-2.9.13-12.el9_6.src.rpm) = a4af001d40765ac975ff56cc37e42b726845b3346f8996f34bb9fb373942f419
+SIZE (rocky/l/libxml2-2.9.13-12.el9_6.src.rpm) = 3285239
diff --git a/textproc/luceneplusplus/Makefile b/textproc/luceneplusplus/Makefile
index da1687d081a7..6992f19286a0 100644
--- a/textproc/luceneplusplus/Makefile
+++ b/textproc/luceneplusplus/Makefile
@@ -1,6 +1,6 @@
PORTNAME= lucene++
PORTVERSION= 3.0.9
-PORTREVISION= 2
+PORTREVISION= 3
DISTVERSIONPREFIX= rel_
CATEGORIES= textproc
@@ -15,7 +15,7 @@ PATCHFILES+= e6a376836e5c891577eae6369263152106b9bc02.patch:-p1
LICENSE= LGPL3
LICENSE_FILE= ${WRKSRC}/LGPL.license
-LIB_DEPENDS= libboost_system.so:devel/boost-libs
+LIB_DEPENDS= libboost_thread.so:devel/boost-libs
USE_GITHUB= yes
GH_ACCOUNT= luceneplusplus
@@ -34,5 +34,7 @@ post-patch:
${WRKSRC}/src/test/CMakeLists.txt
${REINPLACE_CMD} 's,LIB_DESTINATION}/pkgconfig,CMAKE_INSTALL_LIBDIR}/pkgconfig,' \
${WRKSRC}/src/config/core/CMakeLists.txt
+ ${FIND} ${WRKSRC} -name CMakeLists.txt | ${XARGS} \
+ ${REINPLACE_CMD} -e '/Boost::system/d'
.include <bsd.port.post.mk>
diff --git a/textproc/markdownfmt/Makefile b/textproc/markdownfmt/Makefile
index 2f3813ff8c9f..1a7bae3a3c3e 100644
--- a/textproc/markdownfmt/Makefile
+++ b/textproc/markdownfmt/Makefile
@@ -2,7 +2,7 @@ PORTNAME= markdownfmt
DISTVERSIONPREFIX= v
DISTVERSION= 1.1-67
DISTVERSIONSUFFIX= -g3438a10
-PORTREVISION= 30
+PORTREVISION= 31
CATEGORIES= textproc
MAINTAINER= 0mp@FreeBSD.org
diff --git a/textproc/markdownpart/distinfo b/textproc/markdownpart/distinfo
index a43af3e185cb..ac80f2bfd898 100644
--- a/textproc/markdownpart/distinfo
+++ b/textproc/markdownpart/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1754646601
-SHA256 (KDE/release-service/25.08.0/markdownpart-25.08.0.tar.xz) = b110d069a71bab5e54018b1c951963985609b979445f68f4d4818fdd0f6af6fd
-SIZE (KDE/release-service/25.08.0/markdownpart-25.08.0.tar.xz) = 34652
+TIMESTAMP = 1757410301
+SHA256 (KDE/release-service/25.08.1/markdownpart-25.08.1.tar.xz) = aa6242aafadf3989306380ae32f132e20db55a487d8e3751ec6cfae505e3b2c4
+SIZE (KDE/release-service/25.08.1/markdownpart-25.08.1.tar.xz) = 34576
diff --git a/textproc/md2roff/Makefile b/textproc/md2roff/Makefile
index 48f43ef7257f..96514acbcb9d 100644
--- a/textproc/md2roff/Makefile
+++ b/textproc/md2roff/Makefile
@@ -2,7 +2,7 @@ PORTNAME= md2roff
DISTVERSIONPREFIX= v
DISTVERSION= 2.14.3-0.20200416233007
DISTVERSIONSUFFIX= -c4dfa597b8d5
-PORTREVISION= 14
+PORTREVISION= 15
CATEGORIES= textproc print
MAINTAINER= fuz@FreeBSD.org
diff --git a/textproc/mdtt/Makefile b/textproc/mdtt/Makefile
index cbae195165d7..55817e6eb6dd 100644
--- a/textproc/mdtt/Makefile
+++ b/textproc/mdtt/Makefile
@@ -1,7 +1,7 @@
PORTNAME= mdtt
DISTVERSIONPREFIX= v
DISTVERSION= 0.3.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc
MAINTAINER= olgeni@FreeBSD.org
diff --git a/textproc/miller/Makefile b/textproc/miller/Makefile
index bded2755c616..c350a0799e16 100644
--- a/textproc/miller/Makefile
+++ b/textproc/miller/Makefile
@@ -1,7 +1,6 @@
PORTNAME= miller
DISTVERSIONPREFIX= v
-DISTVERSION= 6.13.0
-PORTREVISION= 5
+DISTVERSION= 6.15.0
CATEGORIES= textproc
MASTER_SITES= https://raw.githubusercontent.com/johnkerl/${PORTNAME}/${DISTVERSIONFULL}/:gomod
DISTFILES= go.mod:gomod
@@ -13,7 +12,7 @@ WWW= https://johnkerl.org/miller/doc/
LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-USES= cpe go:modules
+USES= cpe go:1.24,modules
CPE_VENDOR= johnkerl
GO_MODULE= github.com/johnkerl/miller
GO_TARGET= ./cmd/mlr
diff --git a/textproc/miller/distinfo b/textproc/miller/distinfo
index 733355cd66a1..252b7258938c 100644
--- a/textproc/miller/distinfo
+++ b/textproc/miller/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1742033027
-SHA256 (go/textproc_miller/johnkerl-miller-v6.13.0_GH0/go.mod) = 4bb233f6406867848cef758a5dc7ad2fbcdcfca053ae424bb6da123e9d5cd1f6
-SIZE (go/textproc_miller/johnkerl-miller-v6.13.0_GH0/go.mod) = 1325
-SHA256 (go/textproc_miller/johnkerl-miller-v6.13.0_GH0/johnkerl-miller-v6.13.0_GH0.tar.gz) = 6beca48af3066fc8d87c3ce17c5dd3debac61ff8f296c0e95c0634fd3ab05599
-SIZE (go/textproc_miller/johnkerl-miller-v6.13.0_GH0/johnkerl-miller-v6.13.0_GH0.tar.gz) = 11082724
+TIMESTAMP = 1755331579
+SHA256 (go/textproc_miller/johnkerl-miller-v6.15.0_GH0/go.mod) = 9303aa0fc8ebac335651fe06a0b67b58f52ed6d393c1eeb755d1c80b8965736f
+SIZE (go/textproc_miller/johnkerl-miller-v6.15.0_GH0/go.mod) = 1594
+SHA256 (go/textproc_miller/johnkerl-miller-v6.15.0_GH0/johnkerl-miller-v6.15.0_GH0.tar.gz) = 91f1cbb91db6b6f93f0b582b73fede6659e37a730d8f30f7bb5e0ce5c356f63d
+SIZE (go/textproc_miller/johnkerl-miller-v6.15.0_GH0/johnkerl-miller-v6.15.0_GH0.tar.gz) = 11090101
diff --git a/textproc/minify/Makefile b/textproc/minify/Makefile
index b33b0b16f1a4..396af703455c 100644
--- a/textproc/minify/Makefile
+++ b/textproc/minify/Makefile
@@ -1,7 +1,6 @@
PORTNAME= minify
-PORTVERSION= 2.20.37
+PORTVERSION= 2.24.3
DISTVERSIONPREFIX= v
-PORTREVISION= 7
CATEGORIES= textproc www
MAINTAINER= sunpoet@FreeBSD.org
diff --git a/textproc/minify/distinfo b/textproc/minify/distinfo
index ad65bd9b6bcd..44255114d012 100644
--- a/textproc/minify/distinfo
+++ b/textproc/minify/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1720689608
-SHA256 (go/textproc_minify/minify-v2.20.37/v2.20.37.mod) = 98fc34d32c1461c445e2a8e1cbb26b2823e96fc07b7175d07f6a504e712f6d7c
-SIZE (go/textproc_minify/minify-v2.20.37/v2.20.37.mod) = 664
-SHA256 (go/textproc_minify/minify-v2.20.37/v2.20.37.zip) = 399dcf877c18bc2f92ff239215c7ef37a5c2e5897017def21df07697aa5d0188
-SIZE (go/textproc_minify/minify-v2.20.37/v2.20.37.zip) = 7862194
+TIMESTAMP = 1757436433
+SHA256 (go/textproc_minify/minify-v2.24.3/v2.24.3.mod) = 584311c352a335508a4e320ce469d7c6714e3e78e6aeb7c3fdd4ed881dd052fc
+SIZE (go/textproc_minify/minify-v2.24.3/v2.24.3.mod) = 463
+SHA256 (go/textproc_minify/minify-v2.24.3/v2.24.3.zip) = cad719cf43eccb55f8422099f78a39453cae6bb7b3ae391ab9789337f2765da8
+SIZE (go/textproc_minify/minify-v2.24.3/v2.24.3.zip) = 7869216
diff --git a/textproc/minixmlto/Makefile b/textproc/minixmlto/Makefile
index 351240e79858..65406548978a 100644
--- a/textproc/minixmlto/Makefile
+++ b/textproc/minixmlto/Makefile
@@ -5,7 +5,7 @@ MASTER_SITES= https://codeberg.org/bapt/${PORTNAME}/archive/${DISTVERSIONFULL}${
MAINTAINER= bapt@FreeBSD.org
COMMENT= Minimalistic alternative to xmlto
-WWW= https://github.com/bapt/minixmlto
+WWW= https://codeberg.org/bapt/minixmlto
LICENSE= BSD2CLAUSE
diff --git a/textproc/modlogan/Makefile b/textproc/modlogan/Makefile
index 8f161fdd2e16..acbf99a94c69 100644
--- a/textproc/modlogan/Makefile
+++ b/textproc/modlogan/Makefile
@@ -1,6 +1,6 @@
PORTNAME= modlogan
PORTVERSION= 0.8.13
-PORTREVISION= 19
+PORTREVISION= 20
CATEGORIES= textproc www
MASTER_SITES= http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo/distfiles/
diff --git a/textproc/modlogan/pkg-plist b/textproc/modlogan/pkg-plist
index 83d1af02b4d7..e2061b68cc95 100644
--- a/textproc/modlogan/pkg-plist
+++ b/textproc/modlogan/pkg-plist
@@ -10,11 +10,11 @@ etc/modlogan/match.os.conf
etc/modlogan/match.searchengines.conf
etc/modlogan/match.ua.conf
etc/modlogan/match.useragents.conf
-@unexec if cmp -s %D/etc/modlogan/modlogan.conf %D/etc/modlogan/modlogan.conf-dist; then rm -f %D/etc/modlogan/modlogan.conf; fi
+@preunexec if cmp -s %D/etc/modlogan/modlogan.conf %D/etc/modlogan/modlogan.conf-dist; then rm -f %D/etc/modlogan/modlogan.conf; fi
etc/modlogan/modlogan.conf-dist
-@unexec if cmp -s %D/etc/modlogan/modlogan.css %D/etc/modlogan/modlogan.css-dist; then rm -f %D/etc/modlogan/modlogan.css; fi
+@preunexec if cmp -s %D/etc/modlogan/modlogan.css %D/etc/modlogan/modlogan.css-dist; then rm -f %D/etc/modlogan/modlogan.css; fi
etc/modlogan/modlogan.css-dist
-@unexec if cmp -s %D/etc/modlogan/modlogan.def.conf %D/etc/modlogan/modlogan.def.conf-dist; then rm -f %D/etc/modlogan/modlogan.def.conf; fi
+@preunexec if cmp -s %D/etc/modlogan/modlogan.def.conf %D/etc/modlogan/modlogan.def.conf-dist; then rm -f %D/etc/modlogan/modlogan.def.conf; fi
etc/modlogan/modlogan.def.conf-dist
lib/libmla_input_bsdftpd.a
lib/libmla_input_bsdftpd.so
diff --git a/textproc/nerdlog/Makefile b/textproc/nerdlog/Makefile
index 12535b5cd52b..004d8bfa4fc5 100644
--- a/textproc/nerdlog/Makefile
+++ b/textproc/nerdlog/Makefile
@@ -1,7 +1,7 @@
PORTNAME= nerdlog
DISTVERSIONPREFIX= v
DISTVERSION= 1.10.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc
MAINTAINER= lwhsu@FreeBSD.org
diff --git a/textproc/obsidian/Makefile b/textproc/obsidian/Makefile
index cf9c1c5d8164..9b1d8e8e0af8 100644
--- a/textproc/obsidian/Makefile
+++ b/textproc/obsidian/Makefile
@@ -8,7 +8,7 @@
PORTNAME= obsidian
PORTVERSION= 1.9.10
-PORTREVISION= 1
+PORTREVISION= 4
CATEGORIES= textproc
# Icon is taken from the Nix build recipe
# https://github.com/NixOS/nixpkgs/blob/de5448dab588ad41aef40f8c7c0c230981656698/pkgs/applications/misc/obsidian/default.nix#L31-L34
diff --git a/textproc/opensearch-dashboards210/Makefile b/textproc/opensearch-dashboards210/Makefile
deleted file mode 100644
index 704005f50f67..000000000000
--- a/textproc/opensearch-dashboards210/Makefile
+++ /dev/null
@@ -1,15 +0,0 @@
-DISTVERSION= 2.10.0
-
-PORTREVISION= 1
-
-PKGNAMESUFFIX= 210
-
-COMMENT= Visualization dashboards for OpenSearch
-
-CONFLICTS= opensearch-dashboards opensearch-dashboards213 opensearch-dashboards216
-
-DISTINFO_FILE= ${.CURDIR}/distinfo
-
-MASTERDIR= ${.CURDIR}/../../textproc/opensearch-dashboards216
-
-.include "${MASTERDIR}/Makefile"
diff --git a/textproc/opensearch-dashboards210/distinfo b/textproc/opensearch-dashboards210/distinfo
deleted file mode 100644
index 8153ae230e27..000000000000
--- a/textproc/opensearch-dashboards210/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1702759624
-SHA256 (opensearch-dashboards-2.10.0-linux-x64.tar.gz) = df1463540f3831de79ceb03cf2d4c691ac4f63b244943fb84ca67636877bb6d1
-SIZE (opensearch-dashboards-2.10.0-linux-x64.tar.gz) = 324084481
diff --git a/textproc/opensearch-dashboards213/Makefile b/textproc/opensearch-dashboards213/Makefile
deleted file mode 100644
index 1dd11446754c..000000000000
--- a/textproc/opensearch-dashboards213/Makefile
+++ /dev/null
@@ -1,15 +0,0 @@
-DISTVERSION= 2.13.0
-
-PORTREVISION= 1
-
-PKGNAMESUFFIX= 213
-
-COMMENT= Visualization dashboards for OpenSearch
-
-CONFLICTS= opensearch-dashboards opensearch-dashboards210
-
-DISTINFO_FILE= ${.CURDIR}/distinfo
-
-MASTERDIR= ${.CURDIR}/../../textproc/opensearch-dashboards216
-
-.include "${MASTERDIR}/Makefile"
diff --git a/textproc/opensearch-dashboards213/distinfo b/textproc/opensearch-dashboards213/distinfo
deleted file mode 100644
index 9d1adcd3dff1..000000000000
--- a/textproc/opensearch-dashboards213/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1732498735
-SHA256 (opensearch-dashboards-2.13.0-linux-x64.tar.gz) = 97264961f3913d627dda1dcf6088a656de161a96ba77e65902d49d4c029374a7
-SIZE (opensearch-dashboards-2.13.0-linux-x64.tar.gz) = 319095349
diff --git a/textproc/opensearch-dashboards216/Makefile b/textproc/opensearch-dashboards216/Makefile
deleted file mode 100644
index 227521da1181..000000000000
--- a/textproc/opensearch-dashboards216/Makefile
+++ /dev/null
@@ -1,85 +0,0 @@
-PORTNAME= opensearch-dashboards
-DISTVERSION?= 2.16.0
-PORTREVISION?= 0
-DISTVERSIONSUFFIX= -linux-x64
-CATEGORIES= textproc www
-MASTER_SITES= https://artifacts.opensearch.org/releases/bundle/${PORTNAME}/${DISTVERSION}/
-PKGNAMESUFFIX?= 216
-
-MAINTAINER= opensearch@FreeBSD.org
-COMMENT?= Visualization dashboards for OpenSearch
-WWW= https://opensearch.org
-
-LICENSE= APACHE20
-LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-
-DEPRECATED= Depends on expired www/npm-node18
-EXPIRATION_DATE=2025-09-01
-
-CONFLICTS?= opensearch-dashboards opensearch-dashboards210 opensearch-dashboards213
-
-BUILD_DEPENDS= npm-node18>0:www/npm-node18
-
-USES= nodejs:18,build,run python:build
-USE_RC_SUBR= ${PORTNAME}
-
-SUB_FILES= pkg-deinstall
-SUB_LIST= PORTNAME="${PORTNAME}" \
- PKGNAMESUFFIX="${PKGNAMESUFFIX}" \
- WWWDIR=${WWWDIR}
-
-WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}
-
-NODE_VER= 18.18.0
-NO_BUILD= yes
-
-_DEVDIR= ${WRKDIR}/.devdir
-
-post-patch:
- @${REINPLACE_CMD} -e 's|14.20.1|${NODE_VER}|g' ${WRKSRC}/package.json
- ${RM} \
- ${WRKSRC}/bin/*.orig \
- ${WRKSRC}/bin/*.bak \
- ${WRKSRC}/package.json.bak
- ${RM} -r ${WRKSRC}/plugins/reportsDashboards/.chromium
-
-do-install:
- ${MKDIR} ${STAGEDIR}${WWWDIR} ${STAGEDIR}${ETCDIR}
- ${INSTALL_DATA} ${WRKSRC}/config/opensearch_dashboards.yml ${STAGEDIR}${ETCDIR}/opensearch_dashboards.yml.sample
- (cd ${WRKSRC} && \
- ${COPYTREE_SHARE} "data node_modules package.json plugins src" ${STAGEDIR}${WWWDIR} && \
- ${COPYTREE_BIN} bin ${STAGEDIR}${WWWDIR})
-
-post-install:
- ${ECHO} "@sample ${ETCDIR}/opensearch_dashboards.yml.sample" >> ${TMPPLIST}
- ${FIND} -s ${STAGEDIR}${WWWDIR} -not -type d | ${SORT} | \
- ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' >> ${TMPPLIST}
- ${ECHO} "@dir(www,www) ${WWWDIR}/data" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/reportsDashboards/node_modules/set-interval-async/test/resources/legacy" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/reportsDashboards/node_modules/set-interval-async/test/resources/fixed" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/reportsDashboards/node_modules/set-interval-async/test/resources/dynamic" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/reportsDashboards/node_modules/set-interval-async/examples/fixed" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/reportsDashboards/node_modules/set-interval-async/examples/dynamic" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/observabilityDashboards/server/adaptors/integrations/__test__" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/observabilityDashboards/server/adaptors/integrations/repository/__test__" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Alerts/components/AlertFlyout" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/CreateDetector/components/ConfigureAlerts/components/AlertCondition" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/components/AlertTriggerView" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/components/DetectorBasicDetailsView" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/components/DetectorRulesView" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/components/FieldMappingsView" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/components/UpdateAlertConditions" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/components/UpdateDetectorBasicDetails" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/components/UpdateDetectorRules" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/components/UpdateFieldMappings" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/containers/AlertTriggersView" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/containers/DetectorDetails" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/containers/DetectorDetailsView" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/containers/Detectors" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Detectors/containers/EditFieldMappings" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Rules/components/DeleteModal" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Rules/components/RuleEditor/components" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityAnalyticsDashboards/test/mocks/Rules/components/RulesTable" >> ${TMPPLIST}
- ${ECHO} "@dir ${WWWDIR}/plugins/securityDashboards/server/multitenancy/test" >> ${TMPPLIST}
-
-.include <bsd.port.mk>
diff --git a/textproc/opensearch-dashboards216/distinfo b/textproc/opensearch-dashboards216/distinfo
deleted file mode 100644
index 9bd52da5a3f6..000000000000
--- a/textproc/opensearch-dashboards216/distinfo
+++ /dev/null
@@ -1,3 +0,0 @@
-TIMESTAMP = 1746825057
-SHA256 (opensearch-dashboards-2.16.0-linux-x64.tar.gz) = e3ebdd00c21cf7508609c93bfca5aa3d99b66a2681add231af38383bed33d12a
-SIZE (opensearch-dashboards-2.16.0-linux-x64.tar.gz) = 327600245
diff --git a/textproc/opensearch-dashboards216/files/opensearch-dashboards.in b/textproc/opensearch-dashboards216/files/opensearch-dashboards.in
deleted file mode 100644
index 7043fa9301a9..000000000000
--- a/textproc/opensearch-dashboards216/files/opensearch-dashboards.in
+++ /dev/null
@@ -1,79 +0,0 @@
-#!/bin/sh
-
-# PROVIDE: opensearch_dashboards
-# REQUIRE: DAEMON
-# BEFORE: LOGIN
-# KEYWORD: shutdown
-
-. /etc/rc.subr
-
-name=opensearch_dashboards
-rcvar=opensearch_dashboards_enable
-
-load_rc_config $name
-
-: ${opensearch_dashboards_enable:="NO"}
-: ${opensearch_dashboards_config:="%%ETCDIR%%/opensearch_dashboards.yml"}
-: ${opensearch_dashboards_user:="www"}
-: ${opensearch_dashboards_group:="www"}
-: ${opensearch_dashboards_log:="/var/log/opensearch_dashboards.log"}
-: ${opensearch_dashboards_syslog_output_enable:="NO"}
-
-start_precmd="opensearch_dashboards_start_precmd"
-reload_cmd="opensearch_dashboards_reload_cmd"
-extra_commands="reload"
-
-if checkyesno opensearch_dashboards_syslog_output_enable; then
- if [ -n "${opensearch_dashboards_syslog_output_tag}" ]; then
- opensearch_dashboards_syslog_output_flags="-T ${opensearch_dashboards_syslog_output_tag}"
- else
- opensearch_dashboards_syslog_output_flags="-T ${name}"
- fi
- if [ -n "${opensearch_dashboards_syslog_output_priority}" ]; then
- opensearch_dashboards_syslog_output_flags="${opensearch_dashboards_syslog_output_flags} -s ${opensearch_dashboards_syslog_output_priority}"
- fi
- if [ -n "${opensearch_dashboards_syslog_output_facility}" ]; then
- opensearch_dashboards_syslog_output_flags="${opensearch_dashboards_syslog_output_flags} -l ${opensearch_dashboards_syslog_output_facility}"
- fi
-fi
-
-NODE="%%LOCALBASE%%/bin/node"
-
-required_files="${opensearch_dashboards_config}"
-pidfile="/var/run/${name}.pid"
-
-command="/usr/sbin/daemon"
-command_args="-f ${opensearch_dashboards_syslog_output_flags} -P ${pidfile} -t ${name} \
- /usr/bin/env NODE_ENV=production ${opensearch_dashboards_env} \
- ${NODE} %%WWWDIR%%/src/cli/dist serve \
- --config ${opensearch_dashboards_config} --log-file ${opensearch_dashboards_log} \
- ${opensearch_dashboards_args}"
-
-opensearch_dashboards_start_precmd()
-{
- if [ ! -e "${pidfile}" ]; then
- install -m 0600 -o ${opensearch_dashboards_user} -g ${opensearch_dashboards_group} /dev/null ${pidfile}
- fi
- if [ ! -f ${opensearch_dashboards_log} ]; then
- install -o ${opensearch_dashboards_user} -g ${opensearch_dashboards_group} -m 640 /dev/null ${opensearch_dashboards_log}
- fi
- if [ ! -d %%WWWDIR%%/optimize ]; then
- install -d -o ${opensearch_dashboards_user} -g ${opensearch_dashboards_group} %%WWWDIR%%/optimize
- else
- # We may have installed a plugin as root which will cause files in here
- # to be owned by root:wheel. Fix with a chown.
- chown -R ${opensearch_dashboards_user}:${opensearch_dashboards_group} %%WWWDIR%%/optimize
- fi
-}
-
-opensearch_dashboards_reload_cmd()
-{
- if [ -z "$rc_pid" ]; then
- _run_rc_notrunning
- return 1
- else
- pkill -HUP -P ${rc_pid}
- fi
-}
-
-run_rc_command "$1"
diff --git a/textproc/opensearch-dashboards216/files/pkg-deinstall.in b/textproc/opensearch-dashboards216/files/pkg-deinstall.in
deleted file mode 100644
index 0699ab559805..000000000000
--- a/textproc/opensearch-dashboards216/files/pkg-deinstall.in
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/sh
-
-case "$2" in
-POST-DEINSTALL)
- if [ -d %%WWWDIR%%/optimize ]; then
- /usr/bin/find %%WWWDIR%%/optimize/ -delete
- fi
-
- cat <<EOMSG
-
-If %%PORTNAME%%%%PKGNAMESUFFIX%% is being deleted permanently, and you do not wish to keep any
-data that was in the cluster, then you may wish to delete the
-%%WWWDIR%% directory. This can be done by with the command:
-
- # rm -rf %%WWWDIR%%
-
-Please ignore this if %%PORTNAME%%%%PKGNAMESUFFIX%% is being upgraded
-EOMSG
- ;;
-esac
diff --git a/textproc/opensearch-dashboards216/pkg-descr b/textproc/opensearch-dashboards216/pkg-descr
deleted file mode 100644
index 2669760829b1..000000000000
--- a/textproc/opensearch-dashboards216/pkg-descr
+++ /dev/null
@@ -1,3 +0,0 @@
-OpenSearch Dashboards is the default visualization tool for data in OpenSearch.
-It also serves as a user interface for many of the OpenSearch plugins,
-including security, alerting, Index State Management, SQL, and more.
diff --git a/textproc/otree/Makefile b/textproc/otree/Makefile
index 8a085f61d659..40d55a654485 100644
--- a/textproc/otree/Makefile
+++ b/textproc/otree/Makefile
@@ -1,7 +1,6 @@
PORTNAME= otree
DISTVERSIONPREFIX= v
-DISTVERSION= 0.5.2
-PORTREVISION= 1
+DISTVERSION= 0.6.1
CATEGORIES= textproc
MAINTAINER= olgeni@FreeBSD.org
@@ -63,6 +62,9 @@ CARGO_CRATES= aho-corasick-1.1.3 \
fsevent-sys-4.1.0 \
getrandom-0.2.16 \
hashbrown-0.15.5 \
+ hcl-edit-0.9.1 \
+ hcl-primitives-0.1.9 \
+ hcl-rs-0.19.2 \
heck-0.5.0 \
humansize-2.1.3 \
ident_case-1.0.1 \
@@ -76,6 +78,7 @@ CARGO_CRATES= aho-corasick-1.1.3 \
itoa-1.0.15 \
kqueue-1.1.1 \
kqueue-sys-1.0.4 \
+ kstring-2.0.2 \
libc-0.2.175 \
libm-0.2.15 \
libredox-0.1.9 \
@@ -100,6 +103,7 @@ CARGO_CRATES= aho-corasick-1.1.3 \
parking_lot_core-0.9.11 \
paste-1.0.15 \
powerfmt-0.2.0 \
+ pratt-0.4.0 \
proc-macro2-1.0.101 \
quick-xml-0.38.3 \
quote-1.0.40 \
@@ -145,12 +149,14 @@ CARGO_CRATES= aho-corasick-1.1.3 \
toml_parser-1.0.2 \
toml_writer-1.0.2 \
tui-textarea-0.7.0 \
+ tui-tree-widget-0.23.1 \
unicode-ident-1.0.18 \
unicode-segmentation-1.12.0 \
unicode-truncate-1.1.0 \
unicode-width-0.1.14 \
unicode-width-0.2.0 \
utf8parse-0.2.2 \
+ vecmap-rs-0.2.3 \
vergen-9.0.6 \
vergen-lib-0.1.6 \
version_check-0.9.5 \
@@ -186,8 +192,7 @@ CARGO_CRATES= aho-corasick-1.1.3 \
windows_x86_64_gnullvm-0.53.0 \
windows_x86_64_msvc-0.52.6 \
windows_x86_64_msvc-0.53.0 \
- winnow-0.7.13 \
- tui-tree-widget@git+https://github.com/fioncat/tui-rs-tree-widget?branch=main\#407fd9005271d93ae2411ec0231a51e7f5e070f9
+ winnow-0.7.13
PLIST_FILES= bin/otree
diff --git a/textproc/otree/distinfo b/textproc/otree/distinfo
index cedf0030540c..a41c5f0b3c5a 100644
--- a/textproc/otree/distinfo
+++ b/textproc/otree/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1756109664
+TIMESTAMP = 1757117593
SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
SHA256 (rust/crates/allocator-api2-0.2.21.crate) = 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923
@@ -95,6 +95,12 @@ SHA256 (rust/crates/getrandom-0.2.16.crate) = 335ff9f135e4384c8150d6f27c6daed433
SIZE (rust/crates/getrandom-0.2.16.crate) = 40163
SHA256 (rust/crates/hashbrown-0.15.5.crate) = 9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1
SIZE (rust/crates/hashbrown-0.15.5.crate) = 140908
+SHA256 (rust/crates/hcl-edit-0.9.1.crate) = 95f32dc8e2ac2efd3726a759c0e1cd91315465d75a191468dcd8f885f384cad0
+SIZE (rust/crates/hcl-edit-0.9.1.crate) = 66718
+SHA256 (rust/crates/hcl-primitives-0.1.9.crate) = f097693bfc799cc5043956e93a28c51ca4e72f2c3daa21f65a5b0a28510df1f2
+SIZE (rust/crates/hcl-primitives-0.1.9.crate) = 16977
+SHA256 (rust/crates/hcl-rs-0.19.2.crate) = 87112599bbc3476dc61061583cc6c0d4f305f0820d4cf3e4cda46199248dd781
+SIZE (rust/crates/hcl-rs-0.19.2.crate) = 107530
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
SHA256 (rust/crates/humansize-2.1.3.crate) = 6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7
@@ -121,6 +127,8 @@ SHA256 (rust/crates/kqueue-1.1.1.crate) = eac30106d7dce88daf4a3fcb4879ea939476d5
SIZE (rust/crates/kqueue-1.1.1.crate) = 21504
SHA256 (rust/crates/kqueue-sys-1.0.4.crate) = ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b
SIZE (rust/crates/kqueue-sys-1.0.4.crate) = 7160
+SHA256 (rust/crates/kstring-2.0.2.crate) = 558bf9508a558512042d3095138b1f7b8fe90c5467d94f9f1da28b3731c5dbd1
+SIZE (rust/crates/kstring-2.0.2.crate) = 23044
SHA256 (rust/crates/libc-0.2.175.crate) = 6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543
SIZE (rust/crates/libc-0.2.175.crate) = 788728
SHA256 (rust/crates/libm-0.2.15.crate) = f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de
@@ -169,6 +177,8 @@ SHA256 (rust/crates/paste-1.0.15.crate) = 57c0d7b74b563b49d38dae00a0c37d4d6de9b4
SIZE (rust/crates/paste-1.0.15.crate) = 18374
SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391
SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165
+SHA256 (rust/crates/pratt-0.4.0.crate) = 17e0a4425d076f0718b820673a38fbf3747080c61017eeb0dd79bc7e472b8bb8
+SIZE (rust/crates/pratt-0.4.0.crate) = 4716
SHA256 (rust/crates/proc-macro2-1.0.101.crate) = 89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de
SIZE (rust/crates/proc-macro2-1.0.101.crate) = 53886
SHA256 (rust/crates/quick-xml-0.38.3.crate) = 42a232e7487fc2ef313d96dde7948e7a3c05101870d8985e4fd8d26aedd27b89
@@ -259,6 +269,8 @@ SHA256 (rust/crates/toml_writer-1.0.2.crate) = fcc842091f2def52017664b53082ecbbe
SIZE (rust/crates/toml_writer-1.0.2.crate) = 16988
SHA256 (rust/crates/tui-textarea-0.7.0.crate) = 0a5318dd619ed73c52a9417ad19046724effc1287fb75cdcc4eca1d6ac1acbae
SIZE (rust/crates/tui-textarea-0.7.0.crate) = 67947
+SHA256 (rust/crates/tui-tree-widget-0.23.1.crate) = c14c4488e071617f5b5922222193cdf6725835e492c6229557af85d3c1a4e903
+SIZE (rust/crates/tui-tree-widget-0.23.1.crate) = 22330
SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
SHA256 (rust/crates/unicode-segmentation-1.12.0.crate) = f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493
@@ -271,6 +283,8 @@ SHA256 (rust/crates/unicode-width-0.2.0.crate) = 1fc81956842c57dac11422a97c3b819
SIZE (rust/crates/unicode-width-0.2.0.crate) = 271509
SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821
SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
+SHA256 (rust/crates/vecmap-rs-0.2.3.crate) = 67cfc542f75493f412a51c02af26f58f710ab0e2204d264135054377244276be
+SIZE (rust/crates/vecmap-rs-0.2.3.crate) = 35738
SHA256 (rust/crates/vergen-9.0.6.crate) = 6b2bf58be11fc9414104c6d3a2e464163db5ef74b12296bda593cac37b6e4777
SIZE (rust/crates/vergen-9.0.6.crate) = 33160
SHA256 (rust/crates/vergen-lib-0.1.6.crate) = 9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166
@@ -343,7 +357,5 @@ SHA256 (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 271414315aff87387382ec3d
SIZE (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 834400
SHA256 (rust/crates/winnow-0.7.13.crate) = 21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf
SIZE (rust/crates/winnow-0.7.13.crate) = 174454
-SHA256 (fioncat-tui-rs-tree-widget-407fd9005271d93ae2411ec0231a51e7f5e070f9_GH0.tar.gz) = e44af6b888a26d610a385bbcb05a79cfdc15f1cc614c63211134615715a5ec13
-SIZE (fioncat-tui-rs-tree-widget-407fd9005271d93ae2411ec0231a51e7f5e070f9_GH0.tar.gz) = 26382
-SHA256 (fioncat-otree-v0.5.2_GH0.tar.gz) = b2c64f29272a6f141243f01837111dcfde5f1219e40304dbab0eaca92cde07b6
-SIZE (fioncat-otree-v0.5.2_GH0.tar.gz) = 194542
+SHA256 (fioncat-otree-v0.6.1_GH0.tar.gz) = 1c95f78c1b432b4a62392c971bc28eda8bc6754ec53e0701de1c42417c058bdf
+SIZE (fioncat-otree-v0.6.1_GH0.tar.gz) = 200631
diff --git a/textproc/ov/Makefile b/textproc/ov/Makefile
index 6721f6f4871a..660ed75c2a76 100644
--- a/textproc/ov/Makefile
+++ b/textproc/ov/Makefile
@@ -1,7 +1,7 @@
PORTNAME= ov
DISTVERSIONPREFIX= v
DISTVERSION= 0.15.0
-PORTREVISION= 17
+PORTREVISION= 18
CATEGORIES= textproc
MAINTAINER= lcook@FreeBSD.org
diff --git a/textproc/p5-BibTeX-Parser/Makefile b/textproc/p5-BibTeX-Parser/Makefile
index b61a676e591a..cc43ba6212f1 100644
--- a/textproc/p5-BibTeX-Parser/Makefile
+++ b/textproc/p5-BibTeX-Parser/Makefile
@@ -1,5 +1,5 @@
PORTNAME= BibTeX-Parser
-PORTVERSION= 1.92
+PORTVERSION= 1.93
CATEGORIES= textproc perl5
MASTER_SITES= CPAN
MASTER_SITE_SUBDIR= CPAN:BORISV
diff --git a/textproc/p5-BibTeX-Parser/distinfo b/textproc/p5-BibTeX-Parser/distinfo
index 05a48bf36b99..5e91e2bd4e0a 100644
--- a/textproc/p5-BibTeX-Parser/distinfo
+++ b/textproc/p5-BibTeX-Parser/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752262879
-SHA256 (BibTeX-Parser-1.92.tar.gz) = 5995391d232d75c846456eaf23c385d156bf4c0f98aa6ac7a21de4575a324763
-SIZE (BibTeX-Parser-1.92.tar.gz) = 28819
+TIMESTAMP = 1757520516
+SHA256 (BibTeX-Parser-1.93.tar.gz) = 6ea3682cd6ecb91a772d7c233366f1a51258253997a208d1451deda56487a5ca
+SIZE (BibTeX-Parser-1.93.tar.gz) = 28939
diff --git a/textproc/p5-BibTeX-Parser/files/patch-lib_BibTeX_Parser_Author.pm b/textproc/p5-BibTeX-Parser/files/patch-lib_BibTeX_Parser_Author.pm
deleted file mode 100644
index 0051d3abf59e..000000000000
--- a/textproc/p5-BibTeX-Parser/files/patch-lib_BibTeX_Parser_Author.pm
+++ /dev/null
@@ -1,11 +0,0 @@
---- lib/BibTeX/Parser/Author.pm.orig 2025-07-11 19:47:50 UTC
-+++ lib/BibTeX/Parser/Author.pm
-@@ -5,7 +5,7 @@ use strict;
-
- use warnings;
- use strict;
--use BibTeX::Parser qw (_split_braced_string);
-+use BibTeX::Parser;
-
- use overload
- '""' => \&to_string;
diff --git a/textproc/p5-BibTeX-Parser/files/patch-lib_BibTeX_Parser_Entry.pm b/textproc/p5-BibTeX-Parser/files/patch-lib_BibTeX_Parser_Entry.pm
deleted file mode 100644
index 6da048ae52a8..000000000000
--- a/textproc/p5-BibTeX-Parser/files/patch-lib_BibTeX_Parser_Entry.pm
+++ /dev/null
@@ -1,11 +0,0 @@
---- lib/BibTeX/Parser/Entry.pm.orig 2025-07-11 19:47:56 UTC
-+++ lib/BibTeX/Parser/Entry.pm
-@@ -7,7 +7,7 @@ use BibTeX::Parser::Author;
- use strict;
-
- use BibTeX::Parser::Author;
--use BibTeX::Parser qw (_split_braced_string);
-+use BibTeX::Parser;
-
- sub new {
- my ($class, $type, $key, $parse_ok, $fieldsref) = @_;
diff --git a/textproc/p5-PDF-API2/Makefile b/textproc/p5-PDF-API2/Makefile
index 6981d97f7ce4..8267adf4924b 100644
--- a/textproc/p5-PDF-API2/Makefile
+++ b/textproc/p5-PDF-API2/Makefile
@@ -1,5 +1,5 @@
PORTNAME= PDF-API2
-PORTVERSION= 2.047
+PORTVERSION= 2.048
CATEGORIES= textproc perl5
MASTER_SITES= CPAN
PKGNAMEPREFIX= p5-
diff --git a/textproc/p5-PDF-API2/distinfo b/textproc/p5-PDF-API2/distinfo
index 3b93af10f628..93468d1d3cbd 100644
--- a/textproc/p5-PDF-API2/distinfo
+++ b/textproc/p5-PDF-API2/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1716142074
-SHA256 (PDF-API2-2.047.tar.gz) = 84d6318279d77844923e4de4275fe4345cd08b225edd7f9ed6a16f87a91aca39
-SIZE (PDF-API2-2.047.tar.gz) = 3596588
+TIMESTAMP = 1757436459
+SHA256 (PDF-API2-2.048.tar.gz) = 369de1a4a5652899a39a45598326248d9c72f02c16812a50e868b7401f634d89
+SIZE (PDF-API2-2.048.tar.gz) = 3598218
diff --git a/textproc/p5-PPIx-Regexp/Makefile b/textproc/p5-PPIx-Regexp/Makefile
index 4964142f52ed..3922da6d4323 100644
--- a/textproc/p5-PPIx-Regexp/Makefile
+++ b/textproc/p5-PPIx-Regexp/Makefile
@@ -1,5 +1,5 @@
PORTNAME= PPIx-Regexp
-DISTVERSION= 0.089
+DISTVERSION= 0.090
CATEGORIES= textproc perl5
MASTER_SITES= CPAN
MASTER_SITE_SUBDIR= CPAN:WYANT
@@ -14,9 +14,10 @@ LICENSE_COMB= dual
LICENSE_FILE_ART10= ${WRKSRC}/LICENSES/Artistic
LICENSE_FILE_GPLv1+ = ${WRKSRC}/LICENSES/Copying
-BUILD_DEPENDS= ${RUN_DEPENDS}
-RUN_DEPENDS= p5-PPI>=0:textproc/p5-PPI \
+_BR_DEPENDS= p5-PPI>=0:textproc/p5-PPI \
p5-Task-Weaken>=0:devel/p5-Task-Weaken
+BUILD_DEPENDS= ${_BR_DEPENDS}
+RUN_DEPENDS= ${_BR_DEPENDS}
USES= perl5
USE_PERL5= configure
diff --git a/textproc/p5-PPIx-Regexp/distinfo b/textproc/p5-PPIx-Regexp/distinfo
index 5b2c11ece84e..1525b2f0c83d 100644
--- a/textproc/p5-PPIx-Regexp/distinfo
+++ b/textproc/p5-PPIx-Regexp/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747744233
-SHA256 (PPIx-Regexp-0.089.tar.gz) = 9865f61f59da3b8aa32492580a8ecc9e24d251c00a5eb685678569928a2f8881
-SIZE (PPIx-Regexp-0.089.tar.gz) = 255295
+TIMESTAMP = 1758541771
+SHA256 (PPIx-Regexp-0.090.tar.gz) = 41b13c6474cc19e9c604ff8ef0881e21866948b6d55c2f5c666279f8d9649352
+SIZE (PPIx-Regexp-0.090.tar.gz) = 257520
diff --git a/textproc/peco/Makefile b/textproc/peco/Makefile
index 6641350fe7a6..d30b4f35e1f3 100644
--- a/textproc/peco/Makefile
+++ b/textproc/peco/Makefile
@@ -1,7 +1,7 @@
PORTNAME= peco
DISTVERSIONPREFIX= v
DISTVERSION= 0.5.11
-PORTREVISION= 17
+PORTREVISION= 18
CATEGORIES= textproc
MAINTAINER= tagattie@FreeBSD.org
diff --git a/textproc/pup/Makefile b/textproc/pup/Makefile
index 3e5e5bb18d7d..d00820c403bf 100644
--- a/textproc/pup/Makefile
+++ b/textproc/pup/Makefile
@@ -2,7 +2,7 @@ PORTNAME= pup
DISTVERSIONPREFIX= v
DISTVERSION= 0.4.0-10
DISTVERSIONSUFFIX= -g681d7bb
-PORTREVISION= 29
+PORTREVISION= 30
CATEGORIES= textproc
PATCH_SITES= https://github.com/ericchiang/pup/pull/
PATCHFILES= 107.patch:-p1 \
diff --git a/textproc/py-TatSu/Makefile b/textproc/py-TatSu/Makefile
index 55811ccd05eb..55bf38a32cb3 100644
--- a/textproc/py-TatSu/Makefile
+++ b/textproc/py-TatSu/Makefile
@@ -1,6 +1,6 @@
PORTNAME= TatSu
DISTVERSIONPREFIX= v
-DISTVERSION= 5.13.1
+DISTVERSION= 5.13.2
CATEGORIES= textproc python
MASTER_SITES= PYPI
@@ -31,6 +31,6 @@ post-install: # workaround https://github.com/neogeny/TatSu/issues/333
fix-plist:
${REINPLACE_CMD} -e 's|^.*/test/.*$$||' ${TMPPLIST}
-# tests as of version 5.13.1: 141 passed, 2 skipped in 71.02s (0:01:11)
+# tests as of version 5.13.2: 141 passed, 2 skipped, 2 warnings in 60.29s (0:01:00)
.include <bsd.port.mk>
diff --git a/textproc/py-TatSu/distinfo b/textproc/py-TatSu/distinfo
index cd36abdb2bec..fc8a758f24ab 100644
--- a/textproc/py-TatSu/distinfo
+++ b/textproc/py-TatSu/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1736573234
-SHA256 (neogeny-TatSu-v5.13.1_GH0.tar.gz) = 953634c319e62ac49aac2d01138856c09e1e0a9d0f369c541ab6f213659b6a9a
-SIZE (neogeny-TatSu-v5.13.1_GH0.tar.gz) = 173437
+TIMESTAMP = 1758869030
+SHA256 (neogeny-TatSu-v5.13.2_GH0.tar.gz) = fbbc466aae62871f6fac38159c04fc45be38b15f1f4d1a260dfc0d5542a1f58b
+SIZE (neogeny-TatSu-v5.13.2_GH0.tar.gz) = 175188
diff --git a/textproc/py-charset-normalizer/Makefile b/textproc/py-charset-normalizer/Makefile
index f588d08bedc4..9f737e705d69 100644
--- a/textproc/py-charset-normalizer/Makefile
+++ b/textproc/py-charset-normalizer/Makefile
@@ -1,5 +1,5 @@
PORTNAME= charset-normalizer
-PORTVERSION= 3.4.2
+PORTVERSION= 3.4.3
CATEGORIES= textproc python
MASTER_SITES= PYPI \
https://github.com/jawah/charset_normalizer/releases/download/${PORTVERSION}/
diff --git a/textproc/py-charset-normalizer/distinfo b/textproc/py-charset-normalizer/distinfo
index 156ab3cfccea..50827d200a14 100644
--- a/textproc/py-charset-normalizer/distinfo
+++ b/textproc/py-charset-normalizer/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747546584
-SHA256 (charset_normalizer-3.4.2.tar.gz) = 5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63
-SIZE (charset_normalizer-3.4.2.tar.gz) = 126367
+TIMESTAMP = 1755062578
+SHA256 (charset_normalizer-3.4.3.tar.gz) = 6fce4b8500244f6fcb71465d4a4930d132ba9ab8e71a7859e6a5d59851068d14
+SIZE (charset_normalizer-3.4.3.tar.gz) = 122371
diff --git a/textproc/py-charset-normalizer/files/patch-pyproject.toml b/textproc/py-charset-normalizer/files/patch-pyproject.toml
deleted file mode 100644
index 53436d36b469..000000000000
--- a/textproc/py-charset-normalizer/files/patch-pyproject.toml
+++ /dev/null
@@ -1,9 +0,0 @@
---- pyproject.toml.orig 2025-05-02 06:41:54 UTC
-+++ pyproject.toml
-@@ -1,5 +1,5 @@
- [build-system]
--requires = ["setuptools", "setuptools-scm", "mypy>=1.4.1,<=1.15.0"]
-+requires = ["setuptools", "setuptools-scm"]
- build-backend = "setuptools.build_meta"
-
- [project]
diff --git a/textproc/py-citeproc-py/Makefile b/textproc/py-citeproc-py/Makefile
index c3b81e86a7c3..8796d16f6493 100644
--- a/textproc/py-citeproc-py/Makefile
+++ b/textproc/py-citeproc-py/Makefile
@@ -1,6 +1,6 @@
PORTNAME= citeproc-py
DISTVERSION= 0.6.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}rnc2rng>=2.6.1:textproc/py-rnc2rng@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR}
USES= python
USE_PYTHON= distutils concurrent autoplist
diff --git a/textproc/py-cyclonedx-python-lib/Makefile b/textproc/py-cyclonedx-python-lib/Makefile
index 5e3acd4d7f67..b335b62da7cd 100644
--- a/textproc/py-cyclonedx-python-lib/Makefile
+++ b/textproc/py-cyclonedx-python-lib/Makefile
@@ -1,5 +1,6 @@
PORTNAME= cyclonedx-python-lib
PORTVERSION= 11.0.0
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI \
https://github.com/CycloneDX/cyclonedx-python-lib/releases/download/v${PORTVERSION}/
@@ -42,7 +43,7 @@ JSON_VALIDATION_RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}fqdn>=0:www/py-fqdn@${PY_FL
${PYTHON_PKGNAMEPREFIX}rfc3987-syntax>=1.1.0:www/py-rfc3987-syntax@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}uri-template>=0:net/py-uri-template@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}webcolors>=24.6.0:graphics/py-webcolors@${PY_FLAVOR}
-XML_VALIDATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4<7:devel/py-lxml5@${PY_FLAVOR}
+XML_VALIDATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4<7:devel/py-lxml@${PY_FLAVOR}
.include <bsd.port.pre.mk>
diff --git a/textproc/py-docxcompose/Makefile b/textproc/py-docxcompose/Makefile
index 0388f780ba55..8ad9ab48efd2 100644
--- a/textproc/py-docxcompose/Makefile
+++ b/textproc/py-docxcompose/Makefile
@@ -1,6 +1,6 @@
PORTNAME= docxcompose
PORTVERSION= 1.4.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,7 +11,7 @@ WWW= https://github.com/4teamwork/docxcompose
LICENSE= MIT
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.3.4:devel/py-lxml5@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.3.4:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-docx>0:textproc/py-python-docx@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Babel>0:devel/py-babel@${PY_FLAVOR}
diff --git a/textproc/py-docxtpl/Makefile b/textproc/py-docxtpl/Makefile
index 3b6feb714b19..dc6085f9b3e8 100644
--- a/textproc/py-docxtpl/Makefile
+++ b/textproc/py-docxtpl/Makefile
@@ -1,6 +1,6 @@
PORTNAME= docxtpl
PORTVERSION= 0.20.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,7 +11,7 @@ WWW= https://github.com/elapouya/python-docx-template
LICENSE= LGPL21
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.3.4:devel/py-lxml5@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.3.4:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}python-docx>0:textproc/py-python-docx@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}docxcompose>0:textproc/py-docxcompose@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR}
diff --git a/textproc/py-elastic-transport/Makefile b/textproc/py-elastic-transport/Makefile
new file mode 100644
index 000000000000..e2528f9683b6
--- /dev/null
+++ b/textproc/py-elastic-transport/Makefile
@@ -0,0 +1,26 @@
+PORTNAME= elastic-transport
+PORTVERSION= 9.1.0
+CATEGORIES= textproc python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+DISTNAME= elastic_transport-${PORTVERSION}
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Transport classes and utilities shared among Python Elastic client libraries
+WWW= https://elastic-transport-python.readthedocs.io/en/latest/ \
+ https://github.com/elastic/elastic-transport-python
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}certifi>=0:security/py-certifi@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}urllib3>=1.26.2,1<3,1:net/py-urllib3@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= autoplist concurrent pep517
+
+NO_ARCH= yes
+
+.include <bsd.port.mk>
diff --git a/textproc/py-elastic-transport/distinfo b/textproc/py-elastic-transport/distinfo
new file mode 100644
index 000000000000..973dc1bce764
--- /dev/null
+++ b/textproc/py-elastic-transport/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1757120830
+SHA256 (elastic_transport-9.1.0.tar.gz) = 1590e44a25b0fe208107d5e8d7dea15c070525f3ac9baafbe4cb659cd14f073d
+SIZE (elastic_transport-9.1.0.tar.gz) = 76483
diff --git a/textproc/py-elastic-transport/pkg-descr b/textproc/py-elastic-transport/pkg-descr
new file mode 100644
index 000000000000..f1bfec4d7b81
--- /dev/null
+++ b/textproc/py-elastic-transport/pkg-descr
@@ -0,0 +1,4 @@
+Transport classes and utilities shared among Python Elastic client libraries
+
+This library was lifted from elasticsearch-py and then transformed to be used
+across all Elastic services rather than only Elasticsearch.
diff --git a/textproc/py-elasticsearch/Makefile b/textproc/py-elasticsearch/Makefile
index 7f256d4959a1..bf9f99190be2 100644
--- a/textproc/py-elasticsearch/Makefile
+++ b/textproc/py-elasticsearch/Makefile
@@ -1,5 +1,5 @@
PORTNAME= elasticsearch
-PORTVERSION= 7.17.12
+PORTVERSION= 9.1.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,19 +12,18 @@ WWW= https://www.elastic.co/guide/en/elasticsearch/client/python-api/current/in
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}certifi>=0:security/py-certifi@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}urllib3>=1.21.1,1<2,1:net/py-urllib3@${PY_FLAVOR}
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}hatchling>=0:devel/py-hatchling@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}elastic-transport>=9.1.0<10:textproc/py-elastic-transport@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}python-dateutil>=0:devel/py-python-dateutil@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=0:devel/py-typing-extensions@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=0:devel/py-coverage@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mock>=0:devel/py-mock@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pytest>=0,1:devel/py-pytest@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytest-cov>=0:devel/py-pytest-cov@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyyaml>=0:devel/py-pyyaml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.0.0<3.0.0:www/py-requests@${PY_FLAVOR}
USES= cpe python
-USE_PYTHON= autoplist concurrent nose pep517
+USE_PYTHON= autoplist concurrent pep517 pytest
NO_ARCH= yes
diff --git a/textproc/py-elasticsearch/distinfo b/textproc/py-elasticsearch/distinfo
index cd404d6ee02c..9cfbdc1353c6 100644
--- a/textproc/py-elasticsearch/distinfo
+++ b/textproc/py-elasticsearch/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1753796098
-SHA256 (elasticsearch-7.17.12.tar.gz) = a1f5733ae8cf1dbf0a78593389f2503c87dd97429976099832bf0626cdfaac8b
-SIZE (elasticsearch-7.17.12.tar.gz) = 248018
+TIMESTAMP = 1757120832
+SHA256 (elasticsearch-9.1.0.tar.gz) = 764d2f724eac94f6bf9903e4feae07112643a9efcfdc5c868c1b69bd48c52e09
+SIZE (elasticsearch-9.1.0.tar.gz) = 848897
diff --git a/textproc/py-elasticsearch7/Makefile b/textproc/py-elasticsearch7/Makefile
new file mode 100644
index 000000000000..8c3af7b11b90
--- /dev/null
+++ b/textproc/py-elasticsearch7/Makefile
@@ -0,0 +1,44 @@
+PORTNAME= elasticsearch
+PORTVERSION= 7.17.12
+CATEGORIES= textproc python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+PKGNAMESUFFIX= 7
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Official Python low-level client for Elasticsearch
+WWW= https://www.elastic.co/guide/en/elasticsearch/client/python-api/current/index.html \
+ https://github.com/elastic/elasticsearch-py
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}certifi>=0:security/py-certifi@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}urllib3>=1.21.1,1<2,1:net/py-urllib3@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=0:devel/py-coverage@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mock>=0:devel/py-mock@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest>=0,1:devel/py-pytest@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-cov>=0:devel/py-pytest-cov@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pyyaml>=0:devel/py-pyyaml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}requests>=2.0.0<3.0.0:www/py-requests@${PY_FLAVOR}
+
+USES= cpe python
+USE_PYTHON= autoplist concurrent nose pep517
+
+NO_ARCH= yes
+
+CPE_VENDOR= elastic
+
+PORTSCOUT= limit:^7\.
+
+OPTIONS_DEFINE= ASYNC REQUESTS
+OPTIONS_DEFAULT=REQUESTS
+ASYNC_DESC= Asynchronous support
+REQUESTS_DESC= Enable requests support
+
+ASYNC_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiohttp>=3<4:www/py-aiohttp@${PY_FLAVOR}
+REQUESTS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}requests>=2.4.0<3.0.0:www/py-requests@${PY_FLAVOR}
+
+.include <bsd.port.mk>
diff --git a/textproc/py-elasticsearch7/distinfo b/textproc/py-elasticsearch7/distinfo
new file mode 100644
index 000000000000..cd404d6ee02c
--- /dev/null
+++ b/textproc/py-elasticsearch7/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1753796098
+SHA256 (elasticsearch-7.17.12.tar.gz) = a1f5733ae8cf1dbf0a78593389f2503c87dd97429976099832bf0626cdfaac8b
+SIZE (elasticsearch-7.17.12.tar.gz) = 248018
diff --git a/textproc/py-elasticsearch7/pkg-descr b/textproc/py-elasticsearch7/pkg-descr
new file mode 100644
index 000000000000..1ff006ebff06
--- /dev/null
+++ b/textproc/py-elasticsearch7/pkg-descr
@@ -0,0 +1,15 @@
+Official low-level client for Elasticsearch. Its goal is to provide common
+ground for all Elasticsearch-related code in Python; because of this it tries to
+be opinion-free and very extendable.
+
+For a more high level client library with more limited scope, have a look at
+elasticsearch-dsl - a more pythonic library sitting on top of elasticsearch-py.
+
+It provides a more convenient and idiomatic way to write and manipulate queries.
+It stays close to the Elasticsearch JSON DSL, mirroring its terminology and
+structure while exposing the whole range of the DSL from Python either directly
+using defined classes or a queryset-like expressions.
+
+It also provides an optional persistence layer for working with documents as
+Python objects in an ORM-like fashion: defining mappings, retrieving and saving
+documents, wrapping the document data in user-defined classes.
diff --git a/textproc/py-elementpath/Makefile b/textproc/py-elementpath/Makefile
index 72ebc583a741..0565433ec919 100644
--- a/textproc/py-elementpath/Makefile
+++ b/textproc/py-elementpath/Makefile
@@ -1,6 +1,6 @@
PORTNAME= elementpath
DISTVERSION= 4.8.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -12,7 +12,7 @@ WWW= https://github.com/sissaschool/elementpath
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}xmlschema>=2.0.0:textproc/py-xmlschema@${PY_FLAVOR}
USES= python
diff --git a/textproc/py-enchant/Makefile b/textproc/py-enchant/Makefile
index eade5040572b..5e0a0383af51 100644
--- a/textproc/py-enchant/Makefile
+++ b/textproc/py-enchant/Makefile
@@ -1,6 +1,5 @@
PORTNAME= enchant
-PORTVERSION= 3.2.2
-PORTREVISION= 3
+PORTVERSION= 3.3.0
CATEGORIES= textproc devel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -19,6 +18,7 @@ OPTIONS_DEFINE= WX
OPTIONS_DEFAULT=WX
WX_DESC= Provide a wxSpellCheckerDialog
OPTIONS_SUB= yes
+
.if ${FLAVOR:Upy36:Mpy3*}
OPTIONS_EXCLUDE= WX
.endif
diff --git a/textproc/py-enchant/distinfo b/textproc/py-enchant/distinfo
index 2ceb9f00cc4c..22527c5b6f2c 100644
--- a/textproc/py-enchant/distinfo
+++ b/textproc/py-enchant/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1634483845
-SHA256 (pyenchant-3.2.2.tar.gz) = 1cf830c6614362a78aab78d50eaf7c6c93831369c52e1bb64ffae1df0341e637
-SIZE (pyenchant-3.2.2.tar.gz) = 49580
+TIMESTAMP = 1757967499
+SHA256 (pyenchant-3.3.0.tar.gz) = 825288246b5debc9436f91967650974ef0d5636458502619e322c476f1283891
+SIZE (pyenchant-3.3.0.tar.gz) = 60696
diff --git a/textproc/py-enchant/pkg-plist b/textproc/py-enchant/pkg-plist
index c1db2b3eab78..e16971e912be 100644
--- a/textproc/py-enchant/pkg-plist
+++ b/textproc/py-enchant/pkg-plist
@@ -1,33 +1,36 @@
%%PYTHON_SITELIBDIR%%/enchant/__init__.py
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/__init__.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/__init__.cpython-%%PYTHON_SUFFIX%%.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/_enchant.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/_enchant.cpython-%%PYTHON_SUFFIX%%.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/errors.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/errors.cpython-%%PYTHON_SUFFIX%%.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/pypwl.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/pypwl.cpython-%%PYTHON_SUFFIX%%.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/utils.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/__pycache__/utils.cpython-%%PYTHON_SUFFIX%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/_enchant%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/_enchant%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/errors%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/errors%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/pypwl%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/pypwl%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/utils%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/__pycache__/utils%%PYTHON_TAG%%.pyc
%%PYTHON_SITELIBDIR%%/enchant/_enchant.py
%%PYTHON_SITELIBDIR%%/enchant/checker/CmdLineChecker.py
%%PYTHON_SITELIBDIR%%/enchant/checker/GtkSpellCheckerDialog.py
%%PYTHON_SITELIBDIR%%/enchant/checker/__init__.py
-%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/CmdLineChecker.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/CmdLineChecker.cpython-%%PYTHON_SUFFIX%%.pyc
-%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/GtkSpellCheckerDialog.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/GtkSpellCheckerDialog.cpython-%%PYTHON_SUFFIX%%.pyc
-%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/__init__.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/__init__.cpython-%%PYTHON_SUFFIX%%.pyc
-%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/wxSpellCheckerDialog.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/wxSpellCheckerDialog.cpython-%%PYTHON_SUFFIX%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/CmdLineChecker%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/CmdLineChecker%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/GtkSpellCheckerDialog%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/GtkSpellCheckerDialog%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/wxSpellCheckerDialog%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/checker/__pycache__/wxSpellCheckerDialog%%PYTHON_TAG%%.pyc
%%PYTHON_SITELIBDIR%%/enchant/errors.py
%%PYTHON_SITELIBDIR%%/enchant/pypwl.py
%%PYTHON_SITELIBDIR%%/enchant/tokenize/__init__.py
-%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/__init__.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/__init__.cpython-%%PYTHON_SUFFIX%%.pyc
-%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/en.cpython-%%PYTHON_SUFFIX%%.opt-1.pyc
-%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/en.cpython-%%PYTHON_SUFFIX%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/__init__%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/de%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/de%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/en%%PYTHON_TAG%%.opt-1.pyc
+%%PYTHON_SITELIBDIR%%/enchant/tokenize/__pycache__/en%%PYTHON_TAG%%.pyc
+%%PYTHON_SITELIBDIR%%/enchant/tokenize/de.py
%%PYTHON_SITELIBDIR%%/enchant/tokenize/en.py
%%PYTHON_SITELIBDIR%%/enchant/utils.py
%%PYTHON_SITELIBDIR%%/pyenchant-%%VER%%-py%%PYTHON_VER%%.egg-info/PKG-INFO
diff --git a/textproc/py-feedparser/Makefile b/textproc/py-feedparser/Makefile
index b1af688a3bec..c0533b37cec3 100644
--- a/textproc/py-feedparser/Makefile
+++ b/textproc/py-feedparser/Makefile
@@ -1,6 +1,6 @@
PORTNAME= feedparser
-PORTVERSION= 6.0.11
-PORTREVISION= 1
+PORTVERSION= 6.0.12
+DISTVERSIONPREFIX= v
CATEGORIES= textproc python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-feedparser/distinfo b/textproc/py-feedparser/distinfo
index 14c2df3038f8..5ff18eea83c9 100644
--- a/textproc/py-feedparser/distinfo
+++ b/textproc/py-feedparser/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1709135172
-SHA256 (kurtmckee-feedparser-6.0.11_GH0.tar.gz) = 7474d23c879a4a7a2367801b417e2797c4abf25449e516d1b9139a3873af7ade
-SIZE (kurtmckee-feedparser-6.0.11_GH0.tar.gz) = 253205
+TIMESTAMP = 1757572171
+SHA256 (kurtmckee-feedparser-v6.0.12_GH0.tar.gz) = f6dc4628909d7865787967b4ec5ec693b96736be51570410388a1814fec9e932
+SIZE (kurtmckee-feedparser-v6.0.12_GH0.tar.gz) = 253342
diff --git a/textproc/py-humps/Makefile b/textproc/py-humps/Makefile
new file mode 100644
index 000000000000..0d31c4fe5076
--- /dev/null
+++ b/textproc/py-humps/Makefile
@@ -0,0 +1,23 @@
+PORTNAME= pyhumps
+PORTVERSION= 3.9.0
+CATEGORIES= textproc python
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= otis@FreeBSD.org
+COMMENT= Convert strings between cases
+WWW= https://github.com/nficano/humps
+
+LICENSE= UNLICENSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>0:devel/py-poetry-core@${PY_FLAVOR}
+
+USES= python
+USE_GITHUB= yes
+GH_ACCOUNT= nficano
+GH_PROJECT= humps
+GH_TAGNAME= v${PORTVERSION}
+
+USE_PYTHON= autoplist concurrent pep517
+
+.include <bsd.port.mk>
diff --git a/textproc/py-humps/distinfo b/textproc/py-humps/distinfo
new file mode 100644
index 000000000000..30694a53f5b2
--- /dev/null
+++ b/textproc/py-humps/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1757846499
+SHA256 (nficano-humps-3.9.0-v3.9.0_GH0.tar.gz) = d70a866f1de9a7ff2bed7a649faa2984cfab2dbd66b3fa90605235fbfb8b7219
+SIZE (nficano-humps-3.9.0-v3.9.0_GH0.tar.gz) = 2390969
diff --git a/textproc/py-humps/pkg-descr b/textproc/py-humps/pkg-descr
new file mode 100644
index 000000000000..9689352ade1d
--- /dev/null
+++ b/textproc/py-humps/pkg-descr
@@ -0,0 +1,2 @@
+Convert strings (and dictionary keys) between snake case, camel case and pascal
+case in Python.
diff --git a/textproc/py-jiter/Makefile b/textproc/py-jiter/Makefile
index f4fe3b30a825..fff6836df5a2 100644
--- a/textproc/py-jiter/Makefile
+++ b/textproc/py-jiter/Makefile
@@ -1,6 +1,5 @@
PORTNAME= jiter
-DISTVERSION= 0.10.0
-PORTREVISION= 3
+DISTVERSION= 0.11.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +12,7 @@ WWW= https://github.com/pydantic/jiter
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/crates/jiter/LICENSE
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=1.0<2.0:devel/py-maturin@${PY_FLAVOR}
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=1.9.4<2.0:devel/py-maturin@${PY_FLAVOR}
USES= cargo python
USE_PYTHON= autoplist pep517
diff --git a/textproc/py-jiter/Makefile.crates b/textproc/py-jiter/Makefile.crates
index 43de2197f8a4..2b99eccfeb1d 100644
--- a/textproc/py-jiter/Makefile.crates
+++ b/textproc/py-jiter/Makefile.crates
@@ -1,63 +1,110 @@
CARGO_CRATES= ahash-0.8.12 \
- arbitrary-1.4.1 \
- autocfg-1.4.0 \
- bencher-0.1.5 \
- bitflags-2.9.1 \
+ aho-corasick-1.1.3 \
+ anes-0.1.6 \
+ anstyle-1.0.11 \
+ arbitrary-1.4.2 \
+ autocfg-1.5.0 \
bitvec-1.0.1 \
- cc-1.2.23 \
- cfg-if-1.0.0 \
+ bumpalo-3.19.0 \
+ cast-0.3.0 \
+ cc-1.2.37 \
+ cfg-if-1.0.3 \
+ ciborium-0.2.2 \
+ ciborium-io-0.2.2 \
+ ciborium-ll-0.2.2 \
+ clap-4.5.47 \
+ clap_builder-4.5.47 \
+ clap_lex-0.7.5 \
codspeed-2.10.1 \
- codspeed-bencher-compat-2.10.1 \
+ codspeed-criterion-compat-2.10.1 \
+ codspeed-criterion-compat-walltime-2.10.1 \
colored-2.2.0 \
+ criterion-plot-0.5.0 \
+ crossbeam-deque-0.8.6 \
+ crossbeam-epoch-0.9.18 \
+ crossbeam-utils-0.8.21 \
+ crunchy-0.2.4 \
+ either-1.15.0 \
equivalent-1.0.2 \
+ find-msvc-tools-0.1.1 \
funty-2.0.0 \
getrandom-0.3.3 \
- hashbrown-0.15.3 \
+ half-2.6.0 \
+ hashbrown-0.15.5 \
heck-0.5.0 \
- indexmap-2.9.0 \
+ hermit-abi-0.5.2 \
+ indexmap-2.11.1 \
indoc-2.0.6 \
+ is-terminal-0.4.16 \
+ itertools-0.10.5 \
itoa-1.0.15 \
- jobserver-0.1.33 \
+ jobserver-0.1.34 \
+ js-sys-0.3.78 \
lazy_static-1.5.0 \
lexical-parse-float-1.0.5 \
lexical-parse-integer-1.0.5 \
lexical-util-1.0.6 \
- libc-0.2.172 \
- libfuzzer-sys-0.4.9 \
- memchr-2.7.4 \
+ libc-0.2.175 \
+ libfuzzer-sys-0.4.10 \
+ log-0.4.28 \
+ memchr-2.7.5 \
memoffset-0.9.1 \
num-bigint-0.4.6 \
num-integer-0.1.46 \
num-traits-0.2.19 \
once_cell-1.21.3 \
+ oorandom-11.1.5 \
paste-1.0.15 \
- portable-atomic-1.11.0 \
- proc-macro2-1.0.95 \
- pyo3-0.25.0 \
- pyo3-build-config-0.25.0 \
- pyo3-ffi-0.25.0 \
- pyo3-macros-0.25.0 \
- pyo3-macros-backend-0.25.0 \
+ plotters-0.3.7 \
+ plotters-backend-0.3.7 \
+ plotters-svg-0.3.7 \
+ portable-atomic-1.11.1 \
+ proc-macro2-1.0.101 \
+ pyo3-0.26.0 \
+ pyo3-build-config-0.26.0 \
+ pyo3-ffi-0.26.0 \
+ pyo3-macros-0.26.0 \
+ pyo3-macros-backend-0.26.0 \
python3-dll-a-0.2.14 \
quote-1.0.40 \
- r-efi-5.2.0 \
+ r-efi-5.3.0 \
radium-0.7.0 \
+ rayon-1.11.0 \
+ rayon-core-1.13.0 \
+ regex-1.11.2 \
+ regex-automata-0.4.10 \
+ regex-syntax-0.8.6 \
+ rustversion-1.0.22 \
ryu-1.0.20 \
- serde-1.0.219 \
- serde_derive-1.0.219 \
- serde_json-1.0.140 \
+ same-file-1.0.6 \
+ serde-1.0.223 \
+ serde_core-1.0.223 \
+ serde_derive-1.0.223 \
+ serde_json-1.0.145 \
shlex-1.3.0 \
- smallvec-1.15.0 \
+ smallvec-1.15.1 \
static_assertions-1.1.0 \
- syn-2.0.101 \
+ syn-2.0.106 \
tap-1.0.1 \
- target-lexicon-0.13.2 \
- unicode-ident-1.0.18 \
+ target-lexicon-0.13.3 \
+ tinytemplate-1.2.1 \
+ unicode-ident-1.0.19 \
unindent-0.2.4 \
- uuid-1.16.0 \
+ uuid-1.18.1 \
version_check-0.9.5 \
- wasi-0.14.2+wasi-0.2.4 \
+ walkdir-2.5.0 \
+ wasi-0.14.5+wasi-0.2.4 \
+ wasip2-1.0.0+wasi-0.2.4 \
+ wasm-bindgen-0.2.101 \
+ wasm-bindgen-backend-0.2.101 \
+ wasm-bindgen-macro-0.2.101 \
+ wasm-bindgen-macro-support-0.2.101 \
+ wasm-bindgen-shared-0.2.101 \
+ web-sys-0.3.78 \
+ winapi-util-0.1.11 \
+ windows-link-0.2.0 \
windows-sys-0.59.0 \
+ windows-sys-0.61.0 \
windows-targets-0.52.6 \
windows_aarch64_gnullvm-0.52.6 \
windows_aarch64_msvc-0.52.6 \
@@ -67,7 +114,7 @@ CARGO_CRATES= ahash-0.8.12 \
windows_x86_64_gnu-0.52.6 \
windows_x86_64_gnullvm-0.52.6 \
windows_x86_64_msvc-0.52.6 \
- wit-bindgen-rt-0.39.0 \
+ wit-bindgen-0.45.1 \
wyz-0.5.1 \
- zerocopy-0.8.25 \
- zerocopy-derive-0.8.25
+ zerocopy-0.8.27 \
+ zerocopy-derive-0.8.27
diff --git a/textproc/py-jiter/distinfo b/textproc/py-jiter/distinfo
index 61555a685074..ce7dfe316a45 100644
--- a/textproc/py-jiter/distinfo
+++ b/textproc/py-jiter/distinfo
@@ -1,46 +1,90 @@
-TIMESTAMP = 1747661687
-SHA256 (jiter-0.10.0.tar.gz) = 07a7142c38aacc85194391108dc91b5b57093c978a9932bd86a36862759d9500
-SIZE (jiter-0.10.0.tar.gz) = 162759
+TIMESTAMP = 1758008117
+SHA256 (jiter-0.11.0.tar.gz) = 1d9637eaf8c1d6a63d6562f2a6e5ab3af946c66037eb1b894e8fad75422266e4
+SIZE (jiter-0.11.0.tar.gz) = 167094
SHA256 (rust/crates/ahash-0.8.12.crate) = 5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75
SIZE (rust/crates/ahash-0.8.12.crate) = 43413
-SHA256 (rust/crates/arbitrary-1.4.1.crate) = dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223
-SIZE (rust/crates/arbitrary-1.4.1.crate) = 36816
-SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26
-SIZE (rust/crates/autocfg-1.4.0.crate) = 17712
-SHA256 (rust/crates/bencher-0.1.5.crate) = 7dfdb4953a096c551ce9ace855a604d702e6e62d77fac690575ae347571717f5
-SIZE (rust/crates/bencher-0.1.5.crate) = 18827
-SHA256 (rust/crates/bitflags-2.9.1.crate) = 1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967
-SIZE (rust/crates/bitflags-2.9.1.crate) = 47913
+SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
+SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
+SHA256 (rust/crates/anes-0.1.6.crate) = 4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299
+SIZE (rust/crates/anes-0.1.6.crate) = 23857
+SHA256 (rust/crates/anstyle-1.0.11.crate) = 862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd
+SIZE (rust/crates/anstyle-1.0.11.crate) = 15880
+SHA256 (rust/crates/arbitrary-1.4.2.crate) = c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1
+SIZE (rust/crates/arbitrary-1.4.2.crate) = 38307
+SHA256 (rust/crates/autocfg-1.5.0.crate) = c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8
+SIZE (rust/crates/autocfg-1.5.0.crate) = 18729
SHA256 (rust/crates/bitvec-1.0.1.crate) = 1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c
SIZE (rust/crates/bitvec-1.0.1.crate) = 224375
-SHA256 (rust/crates/cc-1.2.23.crate) = 5f4ac86a9e5bc1e2b3449ab9d7d3a6a405e3d1bb28d7b9be8614f55846ae3766
-SIZE (rust/crates/cc-1.2.23.crate) = 106527
-SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
-SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/bumpalo-3.19.0.crate) = 46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43
+SIZE (rust/crates/bumpalo-3.19.0.crate) = 96414
+SHA256 (rust/crates/cast-0.3.0.crate) = 37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5
+SIZE (rust/crates/cast-0.3.0.crate) = 11452
+SHA256 (rust/crates/cc-1.2.37.crate) = 65193589c6404eb80b450d618eaf9a2cafaaafd57ecce47370519ef674a7bd44
+SIZE (rust/crates/cc-1.2.37.crate) = 90111
+SHA256 (rust/crates/cfg-if-1.0.3.crate) = 2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9
+SIZE (rust/crates/cfg-if-1.0.3.crate) = 8719
+SHA256 (rust/crates/ciborium-0.2.2.crate) = 42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e
+SIZE (rust/crates/ciborium-0.2.2.crate) = 35611
+SHA256 (rust/crates/ciborium-io-0.2.2.crate) = 05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757
+SIZE (rust/crates/ciborium-io-0.2.2.crate) = 6697
+SHA256 (rust/crates/ciborium-ll-0.2.2.crate) = 57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9
+SIZE (rust/crates/ciborium-ll-0.2.2.crate) = 14695
+SHA256 (rust/crates/clap-4.5.47.crate) = 7eac00902d9d136acd712710d71823fb8ac8004ca445a89e73a41d45aa712931
+SIZE (rust/crates/clap-4.5.47.crate) = 58354
+SHA256 (rust/crates/clap_builder-4.5.47.crate) = 2ad9bbf750e73b5884fb8a211a9424a1906c1e156724260fdae972f31d70e1d6
+SIZE (rust/crates/clap_builder-4.5.47.crate) = 170016
+SHA256 (rust/crates/clap_lex-0.7.5.crate) = b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675
+SIZE (rust/crates/clap_lex-0.7.5.crate) = 13469
SHA256 (rust/crates/codspeed-2.10.1.crate) = 93f4cce9c27c49c4f101fffeebb1826f41a9df2e7498b7cd4d95c0658b796c6c
SIZE (rust/crates/codspeed-2.10.1.crate) = 8589
-SHA256 (rust/crates/codspeed-bencher-compat-2.10.1.crate) = 87db334eaad26ec9226bd2f2501b7b19cb2e001819bcb5ee972c1172af582600
-SIZE (rust/crates/codspeed-bencher-compat-2.10.1.crate) = 4975
+SHA256 (rust/crates/codspeed-criterion-compat-2.10.1.crate) = c3c23d880a28a2aab52d38ca8481dd7a3187157d0a952196b6db1db3c8499725
+SIZE (rust/crates/codspeed-criterion-compat-2.10.1.crate) = 20929
+SHA256 (rust/crates/codspeed-criterion-compat-walltime-2.10.1.crate) = 7b0a2f7365e347f4f22a67e9ea689bf7bc89900a354e22e26cf8a531a42c8fbb
+SIZE (rust/crates/codspeed-criterion-compat-walltime-2.10.1.crate) = 122454
SHA256 (rust/crates/colored-2.2.0.crate) = 117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c
SIZE (rust/crates/colored-2.2.0.crate) = 35062
+SHA256 (rust/crates/criterion-plot-0.5.0.crate) = 6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1
+SIZE (rust/crates/criterion-plot-0.5.0.crate) = 22706
+SHA256 (rust/crates/crossbeam-deque-0.8.6.crate) = 9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51
+SIZE (rust/crates/crossbeam-deque-0.8.6.crate) = 22471
+SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e
+SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875
+SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28
+SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691
+SHA256 (rust/crates/crunchy-0.2.4.crate) = 460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5
+SIZE (rust/crates/crunchy-0.2.4.crate) = 3887
+SHA256 (rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719
+SIZE (rust/crates/either-1.15.0.crate) = 20114
SHA256 (rust/crates/equivalent-1.0.2.crate) = 877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f
SIZE (rust/crates/equivalent-1.0.2.crate) = 7419
+SHA256 (rust/crates/find-msvc-tools-0.1.1.crate) = 7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d
+SIZE (rust/crates/find-msvc-tools-0.1.1.crate) = 30228
SHA256 (rust/crates/funty-2.0.0.crate) = e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c
SIZE (rust/crates/funty-2.0.0.crate) = 13160
SHA256 (rust/crates/getrandom-0.3.3.crate) = 26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4
SIZE (rust/crates/getrandom-0.3.3.crate) = 49493
-SHA256 (rust/crates/hashbrown-0.15.3.crate) = 84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3
-SIZE (rust/crates/hashbrown-0.15.3.crate) = 140413
+SHA256 (rust/crates/half-2.6.0.crate) = 459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9
+SIZE (rust/crates/half-2.6.0.crate) = 59507
+SHA256 (rust/crates/hashbrown-0.15.5.crate) = 9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1
+SIZE (rust/crates/hashbrown-0.15.5.crate) = 140908
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/indexmap-2.9.0.crate) = cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e
-SIZE (rust/crates/indexmap-2.9.0.crate) = 91214
+SHA256 (rust/crates/hermit-abi-0.5.2.crate) = fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c
+SIZE (rust/crates/hermit-abi-0.5.2.crate) = 17435
+SHA256 (rust/crates/indexmap-2.11.1.crate) = 206a8042aec68fa4a62e8d3f7aa4ceb508177d9324faf261e1959e495b7a1921
+SIZE (rust/crates/indexmap-2.11.1.crate) = 99966
SHA256 (rust/crates/indoc-2.0.6.crate) = f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd
SIZE (rust/crates/indoc-2.0.6.crate) = 17164
+SHA256 (rust/crates/is-terminal-0.4.16.crate) = e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9
+SIZE (rust/crates/is-terminal-0.4.16.crate) = 7811
+SHA256 (rust/crates/itertools-0.10.5.crate) = b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473
+SIZE (rust/crates/itertools-0.10.5.crate) = 115354
SHA256 (rust/crates/itoa-1.0.15.crate) = 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c
SIZE (rust/crates/itoa-1.0.15.crate) = 11231
-SHA256 (rust/crates/jobserver-0.1.33.crate) = 38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a
-SIZE (rust/crates/jobserver-0.1.33.crate) = 29136
+SHA256 (rust/crates/jobserver-0.1.34.crate) = 9afb3de4395d6b3e67a780b6de64b51c978ecf11cb9a462c66be7d4ca9039d33
+SIZE (rust/crates/jobserver-0.1.34.crate) = 29013
+SHA256 (rust/crates/js-sys-0.3.78.crate) = 0c0b063578492ceec17683ef2f8c5e89121fbd0b172cbc280635ab7567db2738
+SIZE (rust/crates/js-sys-0.3.78.crate) = 56010
SHA256 (rust/crates/lazy_static-1.5.0.crate) = bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe
SIZE (rust/crates/lazy_static-1.5.0.crate) = 14025
SHA256 (rust/crates/lexical-parse-float-1.0.5.crate) = de6f9cb01fb0b08060209a057c048fcbab8717b4c1ecd2eac66ebfe39a65b0f2
@@ -49,12 +93,14 @@ SHA256 (rust/crates/lexical-parse-integer-1.0.5.crate) = 72207aae22fc0a121ba7b6d
SIZE (rust/crates/lexical-parse-integer-1.0.5.crate) = 36912
SHA256 (rust/crates/lexical-util-1.0.6.crate) = 5a82e24bf537fd24c177ffbbdc6ebcc8d54732c35b50a3f28cc3f4e4c949a0b3
SIZE (rust/crates/lexical-util-1.0.6.crate) = 106117
-SHA256 (rust/crates/libc-0.2.172.crate) = d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa
-SIZE (rust/crates/libc-0.2.172.crate) = 791646
-SHA256 (rust/crates/libfuzzer-sys-0.4.9.crate) = cf78f52d400cf2d84a3a973a78a592b4adc535739e0a5597a0da6f0c357adc75
-SIZE (rust/crates/libfuzzer-sys-0.4.9.crate) = 133299
-SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3
-SIZE (rust/crates/memchr-2.7.4.crate) = 96670
+SHA256 (rust/crates/libc-0.2.175.crate) = 6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543
+SIZE (rust/crates/libc-0.2.175.crate) = 788728
+SHA256 (rust/crates/libfuzzer-sys-0.4.10.crate) = 5037190e1f70cbeef565bd267599242926f724d3b8a9f510fd7e0b540cfa4404
+SIZE (rust/crates/libfuzzer-sys-0.4.10.crate) = 133968
+SHA256 (rust/crates/log-0.4.28.crate) = 34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432
+SIZE (rust/crates/log-0.4.28.crate) = 51131
+SHA256 (rust/crates/memchr-2.7.5.crate) = 32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0
+SIZE (rust/crates/memchr-2.7.5.crate) = 97603
SHA256 (rust/crates/memoffset-0.9.1.crate) = 488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a
SIZE (rust/crates/memoffset-0.9.1.crate) = 9032
SHA256 (rust/crates/num-bigint-0.4.6.crate) = a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9
@@ -65,62 +111,110 @@ SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0
SIZE (rust/crates/num-traits-0.2.19.crate) = 51631
SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d
SIZE (rust/crates/once_cell-1.21.3.crate) = 34534
+SHA256 (rust/crates/oorandom-11.1.5.crate) = d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e
+SIZE (rust/crates/oorandom-11.1.5.crate) = 23750
SHA256 (rust/crates/paste-1.0.15.crate) = 57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a
SIZE (rust/crates/paste-1.0.15.crate) = 18374
-SHA256 (rust/crates/portable-atomic-1.11.0.crate) = 350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e
-SIZE (rust/crates/portable-atomic-1.11.0.crate) = 181258
-SHA256 (rust/crates/proc-macro2-1.0.95.crate) = 02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778
-SIZE (rust/crates/proc-macro2-1.0.95.crate) = 51820
-SHA256 (rust/crates/pyo3-0.25.0.crate) = f239d656363bcee73afef85277f1b281e8ac6212a1d42aa90e55b90ed43c47a4
-SIZE (rust/crates/pyo3-0.25.0.crate) = 1120850
-SHA256 (rust/crates/pyo3-build-config-0.25.0.crate) = 755ea671a1c34044fa165247aaf6f419ca39caa6003aee791a0df2713d8f1b6d
-SIZE (rust/crates/pyo3-build-config-0.25.0.crate) = 34122
-SHA256 (rust/crates/pyo3-ffi-0.25.0.crate) = fc95a2e67091e44791d4ea300ff744be5293f394f1bafd9f78c080814d35956e
-SIZE (rust/crates/pyo3-ffi-0.25.0.crate) = 77991
-SHA256 (rust/crates/pyo3-macros-0.25.0.crate) = a179641d1b93920829a62f15e87c0ed791b6c8db2271ba0fd7c2686090510214
-SIZE (rust/crates/pyo3-macros-0.25.0.crate) = 8876
-SHA256 (rust/crates/pyo3-macros-backend-0.25.0.crate) = 9dff85ebcaab8c441b0e3f7ae40a6963ecea8a9f5e74f647e33fcf5ec9a1e89e
-SIZE (rust/crates/pyo3-macros-backend-0.25.0.crate) = 75089
+SHA256 (rust/crates/plotters-0.3.7.crate) = 5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747
+SIZE (rust/crates/plotters-0.3.7.crate) = 149031
+SHA256 (rust/crates/plotters-backend-0.3.7.crate) = df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a
+SIZE (rust/crates/plotters-backend-0.3.7.crate) = 13709
+SHA256 (rust/crates/plotters-svg-0.3.7.crate) = 51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670
+SIZE (rust/crates/plotters-svg-0.3.7.crate) = 6715
+SHA256 (rust/crates/portable-atomic-1.11.1.crate) = f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483
+SIZE (rust/crates/portable-atomic-1.11.1.crate) = 185506
+SHA256 (rust/crates/proc-macro2-1.0.101.crate) = 89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de
+SIZE (rust/crates/proc-macro2-1.0.101.crate) = 53886
+SHA256 (rust/crates/pyo3-0.26.0.crate) = 7ba0117f4212101ee6544044dae45abe1083d30ce7b29c4b5cbdfa2354e07383
+SIZE (rust/crates/pyo3-0.26.0.crate) = 1151579
+SHA256 (rust/crates/pyo3-build-config-0.26.0.crate) = 4fc6ddaf24947d12a9aa31ac65431fb1b851b8f4365426e182901eabfb87df5f
+SIZE (rust/crates/pyo3-build-config-0.26.0.crate) = 34309
+SHA256 (rust/crates/pyo3-ffi-0.26.0.crate) = 025474d3928738efb38ac36d4744a74a400c901c7596199e20e45d98eb194105
+SIZE (rust/crates/pyo3-ffi-0.26.0.crate) = 78247
+SHA256 (rust/crates/pyo3-macros-0.26.0.crate) = 2e64eb489f22fe1c95911b77c44cc41e7c19f3082fc81cce90f657cdc42ffded
+SIZE (rust/crates/pyo3-macros-0.26.0.crate) = 8906
+SHA256 (rust/crates/pyo3-macros-backend-0.26.0.crate) = 100246c0ecf400b475341b8455a9213344569af29a3c841d29270e53102e0fcf
+SIZE (rust/crates/pyo3-macros-backend-0.26.0.crate) = 81809
SHA256 (rust/crates/python3-dll-a-0.2.14.crate) = d381ef313ae70b4da5f95f8a4de773c6aa5cd28f73adec4b4a31df70b66780d8
SIZE (rust/crates/python3-dll-a-0.2.14.crate) = 103489
SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d
SIZE (rust/crates/quote-1.0.40.crate) = 31063
-SHA256 (rust/crates/r-efi-5.2.0.crate) = 74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5
-SIZE (rust/crates/r-efi-5.2.0.crate) = 64764
+SHA256 (rust/crates/r-efi-5.3.0.crate) = 69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f
+SIZE (rust/crates/r-efi-5.3.0.crate) = 64532
SHA256 (rust/crates/radium-0.7.0.crate) = dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09
SIZE (rust/crates/radium-0.7.0.crate) = 10906
+SHA256 (rust/crates/rayon-1.11.0.crate) = 368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f
+SIZE (rust/crates/rayon-1.11.0.crate) = 182470
+SHA256 (rust/crates/rayon-core-1.13.0.crate) = 22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91
+SIZE (rust/crates/rayon-core-1.13.0.crate) = 73151
+SHA256 (rust/crates/regex-1.11.2.crate) = 23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912
+SIZE (rust/crates/regex-1.11.2.crate) = 166265
+SHA256 (rust/crates/regex-automata-0.4.10.crate) = 6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6
+SIZE (rust/crates/regex-automata-0.4.10.crate) = 622754
+SHA256 (rust/crates/regex-syntax-0.8.6.crate) = caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001
+SIZE (rust/crates/regex-syntax-0.8.6.crate) = 358808
+SHA256 (rust/crates/rustversion-1.0.22.crate) = b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d
+SIZE (rust/crates/rustversion-1.0.22.crate) = 21096
SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f
SIZE (rust/crates/ryu-1.0.20.crate) = 48738
-SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6
-SIZE (rust/crates/serde-1.0.219.crate) = 78983
-SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00
-SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
-SHA256 (rust/crates/serde_json-1.0.140.crate) = 20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373
-SIZE (rust/crates/serde_json-1.0.140.crate) = 154852
+SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502
+SIZE (rust/crates/same-file-1.0.6.crate) = 10183
+SHA256 (rust/crates/serde-1.0.223.crate) = a505d71960adde88e293da5cb5eda57093379f64e61cf77bf0e6a63af07a7bac
+SIZE (rust/crates/serde-1.0.223.crate) = 28047
+SHA256 (rust/crates/serde_core-1.0.223.crate) = 20f57cbd357666aa7b3ac84a90b4ea328f1d4ddb6772b430caa5d9e1309bb9e9
+SIZE (rust/crates/serde_core-1.0.223.crate) = 62721
+SHA256 (rust/crates/serde_derive-1.0.223.crate) = 3d428d07faf17e306e699ec1e91996e5a165ba5d6bce5b5155173e91a8a01a56
+SIZE (rust/crates/serde_derive-1.0.223.crate) = 57923
+SHA256 (rust/crates/serde_json-1.0.145.crate) = 402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c
+SIZE (rust/crates/serde_json-1.0.145.crate) = 155748
SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
SIZE (rust/crates/shlex-1.3.0.crate) = 18713
-SHA256 (rust/crates/smallvec-1.15.0.crate) = 8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9
-SIZE (rust/crates/smallvec-1.15.0.crate) = 38113
+SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03
+SIZE (rust/crates/smallvec-1.15.1.crate) = 38116
SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f
SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480
-SHA256 (rust/crates/syn-2.0.101.crate) = 8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf
-SIZE (rust/crates/syn-2.0.101.crate) = 299250
+SHA256 (rust/crates/syn-2.0.106.crate) = ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6
+SIZE (rust/crates/syn-2.0.106.crate) = 301514
SHA256 (rust/crates/tap-1.0.1.crate) = 55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369
SIZE (rust/crates/tap-1.0.1.crate) = 11316
-SHA256 (rust/crates/target-lexicon-0.13.2.crate) = e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a
-SIZE (rust/crates/target-lexicon-0.13.2.crate) = 27923
-SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
-SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
+SHA256 (rust/crates/target-lexicon-0.13.3.crate) = df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c
+SIZE (rust/crates/target-lexicon-0.13.3.crate) = 28498
+SHA256 (rust/crates/tinytemplate-1.2.1.crate) = be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc
+SIZE (rust/crates/tinytemplate-1.2.1.crate) = 26490
+SHA256 (rust/crates/unicode-ident-1.0.19.crate) = f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d
+SIZE (rust/crates/unicode-ident-1.0.19.crate) = 47480
SHA256 (rust/crates/unindent-0.2.4.crate) = 7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3
SIZE (rust/crates/unindent-0.2.4.crate) = 7422
-SHA256 (rust/crates/uuid-1.16.0.crate) = 458f7a779bf54acc9f347480ac654f68407d3aab21269a6e3c9f922acd9e2da9
-SIZE (rust/crates/uuid-1.16.0.crate) = 58549
+SHA256 (rust/crates/uuid-1.18.1.crate) = 2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2
+SIZE (rust/crates/uuid-1.18.1.crate) = 60468
SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a
SIZE (rust/crates/version_check-0.9.5.crate) = 15554
-SHA256 (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3
-SIZE (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 140921
+SHA256 (rust/crates/walkdir-2.5.0.crate) = 29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b
+SIZE (rust/crates/walkdir-2.5.0.crate) = 23951
+SHA256 (rust/crates/wasi-0.14.5+wasi-0.2.4.crate) = a4494f6290a82f5fe584817a676a34b9d6763e8d9d18204009fb31dceca98fd4
+SIZE (rust/crates/wasi-0.14.5+wasi-0.2.4.crate) = 18092
+SHA256 (rust/crates/wasip2-1.0.0+wasi-0.2.4.crate) = 03fa2761397e5bd52002cd7e73110c71af2109aca4e521a9f40473fe685b0a24
+SIZE (rust/crates/wasip2-1.0.0+wasi-0.2.4.crate) = 132019
+SHA256 (rust/crates/wasm-bindgen-0.2.101.crate) = 7e14915cadd45b529bb8d1f343c4ed0ac1de926144b746e2710f9cd05df6603b
+SIZE (rust/crates/wasm-bindgen-0.2.101.crate) = 47841
+SHA256 (rust/crates/wasm-bindgen-backend-0.2.101.crate) = e28d1ba982ca7923fd01448d5c30c6864d0a14109560296a162f80f305fb93bb
+SIZE (rust/crates/wasm-bindgen-backend-0.2.101.crate) = 32331
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.101.crate) = 7c3d463ae3eff775b0c45df9da45d68837702ac35af998361e2c84e7c5ec1b0d
+SIZE (rust/crates/wasm-bindgen-macro-0.2.101.crate) = 9804
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.101.crate) = 7bb4ce89b08211f923caf51d527662b75bdc9c9c7aab40f86dcb9fb85ac552aa
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.101.crate) = 26415
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.101.crate) = f143854a3b13752c6950862c906306adb27c7e839f7414cec8fea35beab624c1
+SIZE (rust/crates/wasm-bindgen-shared-0.2.101.crate) = 9055
+SHA256 (rust/crates/web-sys-0.3.78.crate) = 77e4b637749ff0d92b8fad63aa1f7cff3cbe125fd49c175cd6345e7272638b12
+SIZE (rust/crates/web-sys-0.3.78.crate) = 642410
+SHA256 (rust/crates/winapi-util-0.1.11.crate) = c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22
+SIZE (rust/crates/winapi-util-0.1.11.crate) = 13368
+SHA256 (rust/crates/windows-link-0.2.0.crate) = 45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65
+SIZE (rust/crates/windows-link-0.2.0.crate) = 6170
SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
+SHA256 (rust/crates/windows-sys-0.61.0.crate) = e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa
+SIZE (rust/crates/windows-sys-0.61.0.crate) = 2517134
SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3
@@ -139,11 +233,11 @@ SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681
SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
-SHA256 (rust/crates/wit-bindgen-rt-0.39.0.crate) = 6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1
-SIZE (rust/crates/wit-bindgen-rt-0.39.0.crate) = 12241
+SHA256 (rust/crates/wit-bindgen-0.45.1.crate) = 5c573471f125075647d03df72e026074b7203790d41351cd6edc96f46bcccd36
+SIZE (rust/crates/wit-bindgen-0.45.1.crate) = 60395
SHA256 (rust/crates/wyz-0.5.1.crate) = 05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed
SIZE (rust/crates/wyz-0.5.1.crate) = 18790
-SHA256 (rust/crates/zerocopy-0.8.25.crate) = a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb
-SIZE (rust/crates/zerocopy-0.8.25.crate) = 252714
-SHA256 (rust/crates/zerocopy-derive-0.8.25.crate) = 28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef
-SIZE (rust/crates/zerocopy-derive-0.8.25.crate) = 87671
+SHA256 (rust/crates/zerocopy-0.8.27.crate) = 0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c
+SIZE (rust/crates/zerocopy-0.8.27.crate) = 252663
+SHA256 (rust/crates/zerocopy-derive-0.8.27.crate) = 88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831
+SIZE (rust/crates/zerocopy-derive-0.8.27.crate) = 89827
diff --git a/textproc/py-json-repair/Makefile b/textproc/py-json-repair/Makefile
index 5d61179ad4de..8a3e023f6f29 100644
--- a/textproc/py-json-repair/Makefile
+++ b/textproc/py-json-repair/Makefile
@@ -1,7 +1,8 @@
PORTNAME= json-repair
-DISTVERSION= 0.50.0
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.50.1
CATEGORIES= textproc python
-MASTER_SITES= PYPI
+#MASTER_SITES= PYPI # missing file for tests
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
DISTNAME= ${PORTNAME:S/-/_/}-${PORTVERSION}
@@ -14,12 +15,18 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}wheel>=0.44.0:devel/py-wheel@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-benchmark>0:devel/py-pytest-benchmark@${PY_FLAVOR}
USES= python
USE_PYTHON= pep517 autoplist pytest
+USE_GITHUB= yes
+GH_ACCOUNT= mangiucugna
+GH_PROJECT= ${PORTNAME:S/-/_/}
+
NO_ARCH= yes
# tests as of 0.50.0: 3 failed, 94 passed, 4 errors in 7.12s, see https://github.com/mangiucugna/json_repair/issues/147
+# tests as of 0.50.1: 8 failed, 24 passed in 18.04s
.include <bsd.port.mk>
diff --git a/textproc/py-json-repair/distinfo b/textproc/py-json-repair/distinfo
index 7349e6e3c8d5..22210478ad38 100644
--- a/textproc/py-json-repair/distinfo
+++ b/textproc/py-json-repair/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1756617943
-SHA256 (json_repair-0.50.0.tar.gz) = 1d42a3f353e389cf6051941b45fa44b6d130af3c91406a749e88586d830adb89
-SIZE (json_repair-0.50.0.tar.gz) = 34815
+TIMESTAMP = 1757284136
+SHA256 (mangiucugna-json_repair-v0.50.1_GH0.tar.gz) = 0b6eb0d5d26c5f817938912684843150efa85c38896fdbc2edfe9c7f11752829
+SIZE (mangiucugna-json_repair-v0.50.1_GH0.tar.gz) = 2513812
diff --git a/textproc/py-json-repair/files/patch-pyproject.toml b/textproc/py-json-repair/files/patch-pyproject.toml
index fc5dd52bcba2..f6e5bac5c774 100644
--- a/textproc/py-json-repair/files/patch-pyproject.toml
+++ b/textproc/py-json-repair/files/patch-pyproject.toml
@@ -1,9 +1,9 @@
---- pyproject.toml.orig 2025-08-31 06:16:42 UTC
+--- pyproject.toml.orig 2025-09-07 22:29:05 UTC
+++ pyproject.toml
-@@ -4,8 +4,6 @@ version = "0.50.0"
+@@ -4,8 +4,6 @@ version = "0.50.1"
[project]
name = "json_repair"
- version = "0.50.0"
+ version = "0.50.1"
-license = "MIT"
-license-files = ["LICENSE"]
authors = [
diff --git a/textproc/py-markdown-it-py/Makefile b/textproc/py-markdown-it-py/Makefile
index d6c3e88dfa1c..20b855f5a7f0 100644
--- a/textproc/py-markdown-it-py/Makefile
+++ b/textproc/py-markdown-it-py/Makefile
@@ -1,8 +1,9 @@
PORTNAME= markdown-it-py
-PORTVERSION= 3.0.0
+PORTVERSION= 4.0.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+DISTNAME= markdown_it_py-${PORTVERSION}
MAINTAINER= sunpoet@FreeBSD.org
COMMENT= Python port of markdown-it
@@ -15,7 +16,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flit-core>=3.4<4:devel/py-flit-core@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mdurl>=0.1<1:textproc/py-mdurl@${PY_FLAVOR}
-USES= python
+USES= python:3.10+
USE_PYTHON= autoplist concurrent pep517
NO_ARCH= yes
diff --git a/textproc/py-markdown-it-py/distinfo b/textproc/py-markdown-it-py/distinfo
index c371b6f73205..1c1979b9f2da 100644
--- a/textproc/py-markdown-it-py/distinfo
+++ b/textproc/py-markdown-it-py/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1688166326
-SHA256 (markdown-it-py-3.0.0.tar.gz) = e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb
-SIZE (markdown-it-py-3.0.0.tar.gz) = 74596
+TIMESTAMP = 1757120834
+SHA256 (markdown_it_py-4.0.0.tar.gz) = cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3
+SIZE (markdown_it_py-4.0.0.tar.gz) = 73070
diff --git a/textproc/py-markdown/Makefile b/textproc/py-markdown/Makefile
index cb9910d800cf..be9af84a823a 100644
--- a/textproc/py-markdown/Makefile
+++ b/textproc/py-markdown/Makefile
@@ -1,5 +1,5 @@
PORTNAME= markdown
-PORTVERSION= 3.8.2
+PORTVERSION= 3.9
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-markdown/distinfo b/textproc/py-markdown/distinfo
index 352e8ef8bb16..fcc4898185ab 100644
--- a/textproc/py-markdown/distinfo
+++ b/textproc/py-markdown/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1750954242
-SHA256 (markdown-3.8.2.tar.gz) = 247b9a70dd12e27f67431ce62523e675b866d254f900c4fe75ce3dda62237c45
-SIZE (markdown-3.8.2.tar.gz) = 362071
+TIMESTAMP = 1757436551
+SHA256 (markdown-3.9.tar.gz) = d2900fe1782bd33bdbbd56859defef70c2e78fc46668f8eb9df3128138f2cb6a
+SIZE (markdown-3.9.tar.gz) = 364585
diff --git a/textproc/py-marko/Makefile b/textproc/py-marko/Makefile
index be8653a665d9..20f711442313 100644
--- a/textproc/py-marko/Makefile
+++ b/textproc/py-marko/Makefile
@@ -1,5 +1,5 @@
PORTNAME= marko
-PORTVERSION= 2.1.4
+PORTVERSION= 2.2.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-marko/distinfo b/textproc/py-marko/distinfo
index 4c0b540cbed6..7be2d2547ec3 100644
--- a/textproc/py-marko/distinfo
+++ b/textproc/py-marko/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1750188140
-SHA256 (marko-2.1.4.tar.gz) = dd7d66f3706732bf8f994790e674649a4fd0a6c67f16b80246f30de8e16a1eac
-SIZE (marko-2.1.4.tar.gz) = 142795
+TIMESTAMP = 1757120836
+SHA256 (marko-2.2.0.tar.gz) = 213c146ba197c1d6bcb06ae3658b7d87e45f6def35c09905b86aa6bb1984eba6
+SIZE (marko-2.2.0.tar.gz) = 143406
diff --git a/textproc/py-markups/Makefile b/textproc/py-markups/Makefile
index 807de39378f5..8b24d4f24f9a 100644
--- a/textproc/py-markups/Makefile
+++ b/textproc/py-markups/Makefile
@@ -1,6 +1,6 @@
PORTNAME= markups
PORTVERSION= 4.0.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +18,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.2:devel/py-setuptools@${PY_
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}python-markdown-math>=0:textproc/py-python-markdown-math@${PY_FLAVOR}
TEST_DEPENDS= asciidoc>=0:textproc/asciidoc \
${PYTHON_PKGNAMEPREFIX}docutils>=0,1:textproc/py-docutils@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}markdown>=3:textproc/py-markdown@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=0:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pymdown-extensions>=0:textproc/py-pymdown-extensions@${PY_FLAVOR} \
diff --git a/textproc/py-mathics-pygments/Makefile b/textproc/py-mathics-pygments/Makefile
index 78c3432988da..730975f0752f 100644
--- a/textproc/py-mathics-pygments/Makefile
+++ b/textproc/py-mathics-pygments/Makefile
@@ -1,5 +1,6 @@
PORTNAME= mathics_pygments
PORTVERSION= 1.0.4
+PORTREVISION= 1
CATEGORIES= textproc math python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -11,10 +12,10 @@ WWW= https://mathics.org/
LICENSE= MIT
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pygments>0:textproc/py-pygments@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}mathics_scanner>0:math/py-mathics-scanner
+ ${PYTHON_PKGNAMEPREFIX}Mathics_Scanner>0:math/py-mathics-scanner
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pygments>0:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}types_pygments>0:devel/py-types-Pygments@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}mathics_scanner>0:math/py-mathics-scanner
+ ${PYTHON_PKGNAMEPREFIX}Mathics_Scanner>0:math/py-mathics-scanner
#USE_GITHUB= yes
#GH_ACCOUNT= Mathics3
diff --git a/textproc/py-mdformat/Makefile b/textproc/py-mdformat/Makefile
index 740ccb42bbe0..989ab1be270d 100644
--- a/textproc/py-mdformat/Makefile
+++ b/textproc/py-mdformat/Makefile
@@ -1,12 +1,13 @@
# XXX: see below (post-patch target) before updating
PORTNAME= mdformat
DISTVERSION= 0.7.22
+PORTREVISION= 2
CATEGORIES= textproc python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= nivit@FreeBSD.org
COMMENT= CommonMark compliant Markdown formatter
-WWW= https://github.com/executablebooks/mdformat
+WWW= https://github.com/hukkin/mdformat
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
@@ -14,9 +15,9 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.0.0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0.41.3:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}importlib-metadata>=3.6.0:devel/py-importlib-metadata@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}markdown-it-py>=1.0.0<4.0.0:textproc/py-markdown-it-py@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}markdown-it-py>=1<5:textproc/py-markdown-it-py@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mdurl>=0.1.2:textproc/py-mdurl@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}tomli>=1.1.0:textproc/py-tomli@${PY_FLAVOR} \
+ ${PY_TOMLI} \
${PYTHON_PKGNAMEPREFIX}zipp>=0.5:devel/py-zipp@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}covdefaults>=2.3.0_1:devel/py-covdefaults@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytest-cov>=4.1.0:devel/py-pytest-cov@${PY_FLAVOR} \
diff --git a/textproc/py-mdformat/files/patch-pyproject.toml b/textproc/py-mdformat/files/patch-pyproject.toml
new file mode 100644
index 000000000000..b34885e1d500
--- /dev/null
+++ b/textproc/py-mdformat/files/patch-pyproject.toml
@@ -0,0 +1,13 @@
+Obtained from: https://github.com/hukkin/mdformat/commit/a822aca00e5b918953597499e67c8bb7767c7960
+
+--- pyproject.toml.orig 2025-01-30 17:57:20 UTC
++++ pyproject.toml
+@@ -13,7 +13,7 @@ dependencies = [
+ license = { file = "LICENSE" }
+ requires-python = ">=3.9"
+ dependencies = [
+- 'markdown-it-py >=1.0.0,<4.0.0',
++ 'markdown-it-py>=1,<5',
+ 'tomli >=1.1.0; python_version < "3.11"',
+ 'importlib-metadata >=3.6.0; python_version < "3.10"',
+ ]
diff --git a/textproc/py-mdit-py-plugins/Makefile b/textproc/py-mdit-py-plugins/Makefile
index 7e331c7652da..4491f49c54ff 100644
--- a/textproc/py-mdit-py-plugins/Makefile
+++ b/textproc/py-mdit-py-plugins/Makefile
@@ -1,5 +1,5 @@
PORTNAME= mdit-py-plugins
-PORTVERSION= 0.4.2
+PORTVERSION= 0.5.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,9 +13,9 @@ LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flit-core>=3.4<4:devel/py-flit-core@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}markdown-it-py>=1.0.0<4.0.0:textproc/py-markdown-it-py@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}markdown-it-py>=2.0.0<5.0.0:textproc/py-markdown-it-py@${PY_FLAVOR}
-USES= python
+USES= python:3.10+
USE_PYTHON= autoplist concurrent pep517
NO_ARCH= yes
diff --git a/textproc/py-mdit-py-plugins/distinfo b/textproc/py-mdit-py-plugins/distinfo
index 0816bae0de53..0edf11d4c98a 100644
--- a/textproc/py-mdit-py-plugins/distinfo
+++ b/textproc/py-mdit-py-plugins/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1726081045
-SHA256 (mdit_py_plugins-0.4.2.tar.gz) = 5f2cd1fdb606ddf152d37ec30e46101a60512bc0e5fa1a7002c36647b09e26b5
-SIZE (mdit_py_plugins-0.4.2.tar.gz) = 43542
+TIMESTAMP = 1757120838
+SHA256 (mdit_py_plugins-0.5.0.tar.gz) = f4918cb50119f50446560513a8e311d574ff6aaed72606ddae6d35716fe809c6
+SIZE (mdit_py_plugins-0.5.0.tar.gz) = 44655
diff --git a/textproc/py-mistune/Makefile b/textproc/py-mistune/Makefile
index 597a7687169e..c8eb1e8ec441 100644
--- a/textproc/py-mistune/Makefile
+++ b/textproc/py-mistune/Makefile
@@ -1,5 +1,5 @@
PORTNAME= mistune
-PORTVERSION= 3.1.3
+PORTVERSION= 3.1.4
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-mistune/distinfo b/textproc/py-mistune/distinfo
index 57fdd95cabb9..e9198fc661cc 100644
--- a/textproc/py-mistune/distinfo
+++ b/textproc/py-mistune/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1744289040
-SHA256 (mistune-3.1.3.tar.gz) = a7035c21782b2becb6be62f8f25d3df81ccb4d6fa477a6525b15af06539f02a0
-SIZE (mistune-3.1.3.tar.gz) = 94347
+TIMESTAMP = 1757436553
+SHA256 (mistune-3.1.4.tar.gz) = b5a7f801d389f724ec702840c11d8fc48f2b33519102fc7ee739e8177b672164
+SIZE (mistune-3.1.4.tar.gz) = 94588
diff --git a/textproc/py-mkdocs-autorefs/Makefile b/textproc/py-mkdocs-autorefs/Makefile
index 80d93c73ec81..71a4ff222611 100644
--- a/textproc/py-mkdocs-autorefs/Makefile
+++ b/textproc/py-mkdocs-autorefs/Makefile
@@ -1,5 +1,5 @@
PORTNAME= mkdocs-autorefs
-DISTVERSION= 1.4.2
+DISTVERSION= 1.4.3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-mkdocs-autorefs/distinfo b/textproc/py-mkdocs-autorefs/distinfo
index e75f0fece2d0..86baf34936ae 100644
--- a/textproc/py-mkdocs-autorefs/distinfo
+++ b/textproc/py-mkdocs-autorefs/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747893756
-SHA256 (mkdocs_autorefs-1.4.2.tar.gz) = e2ebe1abd2b67d597ed19378c0fff84d73d1dbce411fce7a7cc6f161888b6749
-SIZE (mkdocs_autorefs-1.4.2.tar.gz) = 54961
+TIMESTAMP = 1757764207
+SHA256 (mkdocs_autorefs-1.4.3.tar.gz) = beee715b254455c4aa93b6ef3c67579c399ca092259cc41b7d9342573ff1fc75
+SIZE (mkdocs_autorefs-1.4.3.tar.gz) = 55425
diff --git a/textproc/py-myst-parser/Makefile b/textproc/py-myst-parser/Makefile
index 07205baa80c8..44977c873ed6 100644
--- a/textproc/py-myst-parser/Makefile
+++ b/textproc/py-myst-parser/Makefile
@@ -1,5 +1,6 @@
PORTNAME= myst-parser
PORTVERSION= 4.0.1
+PORTREVISION= 1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -16,7 +17,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flit-core>=3.4<4:devel/py-flit-core@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}docutils>=0.19,1<0.22,1:textproc/py-docutils@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}Jinja2>=0:devel/py-Jinja2@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}markdown-it-py>=3.0<4:textproc/py-markdown-it-py@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}markdown-it-py>=3.0<5:textproc/py-markdown-it-py@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}mdit-py-plugins>=0.4.1<1:textproc/py-mdit-py-plugins@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyyaml>=0:devel/py-pyyaml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sphinx>=5,1<9,1:textproc/py-sphinx@${PY_FLAVOR}
diff --git a/textproc/py-myst-parser/files/patch-pyproject.toml b/textproc/py-myst-parser/files/patch-pyproject.toml
index 67ed6bf33144..7e4e15bb5fdc 100644
--- a/textproc/py-myst-parser/files/patch-pyproject.toml
+++ b/textproc/py-myst-parser/files/patch-pyproject.toml
@@ -1,7 +1,11 @@
---- pyproject.toml.orig 2024-08-05 14:02:40 UTC
+--- pyproject.toml.orig 2025-02-12 10:52:59 UTC
+++ pyproject.toml
-@@ -38,7 +38,7 @@ dependencies = [
- "markdown-it-py~=3.0",
+@@ -36,10 +36,10 @@ dependencies = [
+ dependencies = [
+ "docutils>=0.19,<0.22",
+ "jinja2", # required for substitutions, but let sphinx choose version
+- "markdown-it-py~=3.0",
++ "markdown-it-py>=3.0,<5",
"mdit-py-plugins~=0.4,>=0.4.1",
"pyyaml",
- "sphinx>=7,<9",
diff --git a/textproc/py-ntc-templates/Makefile b/textproc/py-ntc-templates/Makefile
index 92590d63ce14..1f6e2fbe4bdc 100644
--- a/textproc/py-ntc-templates/Makefile
+++ b/textproc/py-ntc-templates/Makefile
@@ -1,6 +1,6 @@
PORTNAME= ntc-templates
DISTVERSIONPREFIX= v
-DISTVERSION= 8.0.0
+DISTVERSION= 8.1.0
CATEGORIES= textproc net-mgmt python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-ntc-templates/distinfo b/textproc/py-ntc-templates/distinfo
index 584e5730545e..718ff9bacd85 100644
--- a/textproc/py-ntc-templates/distinfo
+++ b/textproc/py-ntc-templates/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1756398279
-SHA256 (networktocode-ntc-templates-v8.0.0_GH0.tar.gz) = 0c3c2a9a5aaccbcc77b50038401d523bf54871c949f59ade21f922c057c13873
-SIZE (networktocode-ntc-templates-v8.0.0_GH0.tar.gz) = 1634105
+TIMESTAMP = 1758704128
+SHA256 (networktocode-ntc-templates-v8.1.0_GH0.tar.gz) = 8adc469f1e1746ace9c317e80040487a7fbeffd41df0e7865327dd50c7a20651
+SIZE (networktocode-ntc-templates-v8.1.0_GH0.tar.gz) = 1642931
diff --git a/textproc/py-ocrmypdf/Makefile b/textproc/py-ocrmypdf/Makefile
index dee7b7751944..52412e6c56a9 100644
--- a/textproc/py-ocrmypdf/Makefile
+++ b/textproc/py-ocrmypdf/Makefile
@@ -1,6 +1,5 @@
PORTNAME= ocrmypdf
-DISTVERSION= 16.10.4
-PORTREVISION= 1
+DISTVERSION= 16.11.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-ocrmypdf/distinfo b/textproc/py-ocrmypdf/distinfo
index ff8097787e66..e20d42f98e01 100644
--- a/textproc/py-ocrmypdf/distinfo
+++ b/textproc/py-ocrmypdf/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1753074854
-SHA256 (ocrmypdf-16.10.4.tar.gz) = de749ef5f554b63d57e68d032e7cba5500cbd5030835bf24f658f7b7a04f3dc1
-SIZE (ocrmypdf-16.10.4.tar.gz) = 7003649
+TIMESTAMP = 1757764047
+SHA256 (ocrmypdf-16.11.0.tar.gz) = d89077e503238dac35c6e565925edc8d98b71e5289853c02cacbc1d0901f1be7
+SIZE (ocrmypdf-16.11.0.tar.gz) = 7015068
diff --git a/textproc/py-parsel/Makefile b/textproc/py-parsel/Makefile
index 04e4adb48cef..081902cdcf9f 100644
--- a/textproc/py-parsel/Makefile
+++ b/textproc/py-parsel/Makefile
@@ -1,6 +1,6 @@
PORTNAME= parsel
PORTVERSION= 1.10.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE= BSD3CLAUSE
BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssselect>=1.2.0:www/py-cssselect@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml5>=2.3:devel/py-lxml5@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml>=2.3:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>=0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}w3lib>=1.19.0:www/py-w3lib@${PY_FLAVOR}
diff --git a/textproc/py-petl/Makefile b/textproc/py-petl/Makefile
index 2292dfaea49c..23cf5c57930e 100644
--- a/textproc/py-petl/Makefile
+++ b/textproc/py-petl/Makefile
@@ -1,6 +1,6 @@
PORTNAME= petl
PORTVERSION= 1.7.17
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -54,7 +54,7 @@ SMB_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}smbprotocol>=1.0.1:net/py-smbprotocol@${
XLS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}xlrd>=2.0.1:textproc/py-xlrd@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}xlwt>=1.3.0:textproc/py-xlwt@${PY_FLAVOR}
XLSX_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}openpyxl>=2.6.2:textproc/py-openpyxl@${PY_FLAVOR}
-XPATH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=4.4.0:devel/py-lxml5@${PY_FLAVOR}
+XPATH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=4.4.0:devel/py-lxml@${PY_FLAVOR}
WHOOSH_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}whoosh>=0:textproc/py-whoosh@${PY_FLAVOR}
.include <bsd.port.mk>
diff --git a/textproc/py-pikepdf/Makefile b/textproc/py-pikepdf/Makefile
index 4ee349f7d1e8..170abe1b3bcd 100644
--- a/textproc/py-pikepdf/Makefile
+++ b/textproc/py-pikepdf/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pikepdf
DISTVERSION= 9.9.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -17,7 +17,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLA
${PYTHON_PKGNAMEPREFIX}wheel>=0.37:devel/py-wheel@${PY_FLAVOR}
LIB_DEPENDS= libqpdf.so:print/qpdf
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}deprecated>0:devel/py-deprecated@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml5>=4.8:devel/py-lxml5@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml>=4.8:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}packaging>0:devel/py-packaging@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pillow>=10.0.1:graphics/py-pillow@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=20.2.0:devel/py-attrs@${PY_FLAVOR} \
diff --git a/textproc/py-pyexcel-ezodf/Makefile b/textproc/py-pyexcel-ezodf/Makefile
index fa86d6b6712b..dd16701ff41d 100644
--- a/textproc/py-pyexcel-ezodf/Makefile
+++ b/textproc/py-pyexcel-ezodf/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pyexcel-ezodf
PORTVERSION= 0.3.4
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517
diff --git a/textproc/py-pyexcel-ods3/Makefile b/textproc/py-pyexcel-ods3/Makefile
index 7d06f873dd61..86a7991d602e 100644
--- a/textproc/py-pyexcel-ods3/Makefile
+++ b/textproc/py-pyexcel-ods3/Makefile
@@ -1,6 +1,6 @@
PORTNAME= pyexcel-ods3
PORTVERSION= 0.6.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyexcel-ezodf>=0.3.3:textproc/py-pyexcel-ezodf@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pyexcel-io>=0.6.2:textproc/py-pyexcel-io@${PY_FLAVOR}
diff --git a/textproc/py-pylatexenc/Makefile b/textproc/py-pylatexenc/Makefile
new file mode 100644
index 000000000000..e08374d7010d
--- /dev/null
+++ b/textproc/py-pylatexenc/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= pylatexenc
+PORTVERSION= 2.10
+CATEGORIES= textproc python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Converts simple LaTeX to an unicode approximation
+WWW= https://pylatexenc.readthedocs.io/en/latest/ \
+ https://github.com/phfaist/pylatexenc
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>0:devel/py-poetry-core@${PY_FLAVOR} \
+ ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= pep517 autoplist pytest
+
+TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+
+NO_ARCH= yes
+
+# tests as of 2.10: 97 passed, 1 warning in 39.53s
+
+.include <bsd.port.mk>
diff --git a/textproc/py-pylatexenc/distinfo b/textproc/py-pylatexenc/distinfo
new file mode 100644
index 000000000000..2d0c76020879
--- /dev/null
+++ b/textproc/py-pylatexenc/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1758325453
+SHA256 (pylatexenc-2.10.tar.gz) = 3dd8fd84eb46dc30bee1e23eaab8d8fb5a7f507347b23e5f38ad9675c84f40d3
+SIZE (pylatexenc-2.10.tar.gz) = 162597
diff --git a/textproc/py-pylatexenc/pkg-descr b/textproc/py-pylatexenc/pkg-descr
new file mode 100644
index 000000000000..73f396b2b794
--- /dev/null
+++ b/textproc/py-pylatexenc/pkg-descr
@@ -0,0 +1,2 @@
+pylatexenc is a simple LaTeX parser providing latex-to-unicode and
+unicode-to-latex conversion.
diff --git a/textproc/py-python-docx/Makefile b/textproc/py-python-docx/Makefile
index baf2ce9f3789..d1b270eb64ed 100644
--- a/textproc/py-python-docx/Makefile
+++ b/textproc/py-python-docx/Makefile
@@ -1,6 +1,6 @@
PORTNAME= python-docx
PORTVERSION= 1.1.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= MIT
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.0.0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.3.4:devel/py-lxml5@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.3.4:devel/py-lxml@${PY_FLAVOR}
# Python3 ready
USES= python
diff --git a/textproc/py-python-pptx/Makefile b/textproc/py-python-pptx/Makefile
index 3ca6233c21f1..55ed1d692fa5 100644
--- a/textproc/py-python-pptx/Makefile
+++ b/textproc/py-python-pptx/Makefile
@@ -1,6 +1,6 @@
PORTNAME= python-pptx
DISTVERSION= 1.0.2
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -15,7 +15,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.1.0:devel/py-lxml5@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.1.0:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pillow>=3.3.2:graphics/py-pillow@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}XlsxWriter>=0.5.7:textproc/py-xlsxwriter@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}behave>0:devel/py-behave@${PY_FLAVOR} \
diff --git a/textproc/py-python-ulid/Makefile b/textproc/py-python-ulid/Makefile
index 558de8481331..a50e7f8650d4 100644
--- a/textproc/py-python-ulid/Makefile
+++ b/textproc/py-python-ulid/Makefile
@@ -1,5 +1,5 @@
PORTNAME= python-ulid
-PORTVERSION= 3.0.0
+PORTVERSION= 3.1.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-python-ulid/distinfo b/textproc/py-python-ulid/distinfo
index b6ee4b7ce231..8d1bfa75b090 100644
--- a/textproc/py-python-ulid/distinfo
+++ b/textproc/py-python-ulid/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1728922918
-SHA256 (python_ulid-3.0.0.tar.gz) = e50296a47dc8209d28629a22fc81ca26c00982c78934bd7766377ba37ea49a9f
-SIZE (python_ulid-3.0.0.tar.gz) = 28822
+TIMESTAMP = 1757120840
+SHA256 (python_ulid-3.1.0.tar.gz) = ff0410a598bc5f6b01b602851a3296ede6f91389f913a5d5f8c496003836f636
+SIZE (python_ulid-3.1.0.tar.gz) = 93175
diff --git a/textproc/py-smile/Makefile b/textproc/py-smile/Makefile
new file mode 100644
index 000000000000..246e7426a171
--- /dev/null
+++ b/textproc/py-smile/Makefile
@@ -0,0 +1,46 @@
+PORTNAME= smile
+DISTVERSION= 2.10.2
+CATEGORIES= textproc python
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= tagattie@FreeBSD.org
+COMMENT= Emoji picker
+WWW= https://mijorus.it/projects/smile/
+
+LICENSE= GPLv3
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+BUILD_DEPENDS= appstream-util:devel/appstream-glib
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dbus>=1.2.18:devel/py-dbus@${PY_FLAVOR}
+
+USES= desktop-file-utils gettext-tools gnome meson pkgconfig python \
+ shebangfix
+
+USE_GITHUB= yes
+GH_ACCOUNT= mijorus
+
+USE_GNOME= glib20 gtk40 libadwaita pygobject3
+GLIB_SCHEMAS= it.mijorus.smile.gschema.xml
+
+SHEBANG_FILES= src/smile.in
+python_OLD_CMD= @PYTHON@
+
+BINARY_ALIAS= python3=${PYTHON_CMD}
+NO_ARCH= yes
+
+OPTIONS_DEFAULT= WAYLAND X11
+OPTIONS_GROUP= AUTOPASTE
+OPTIONS_GROUP_AUTOPASTE=WAYLAND X11
+
+AUTOPASTE_DESC= Backend for automatic paste
+WAYLAND_DESC= Use wl-clipboard as backend on Wayland
+X11_DESC= Use xdotool as backend on X11
+
+WAYLAND_RUN_DEPENDS= wl-paste:x11/wl-clipboard
+X11_RUN_DEPENDS= xdotool:x11/xdotool
+
+post-install:
+ @${FIND} ${STAGEDIR}${PREFIX} -type f \
+ \( -name meson.build -o -name smile.in \) -delete
+
+.include <bsd.port.mk>
diff --git a/textproc/py-smile/distinfo b/textproc/py-smile/distinfo
new file mode 100644
index 000000000000..15023ea0b2d4
--- /dev/null
+++ b/textproc/py-smile/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1757832551
+SHA256 (mijorus-smile-2.10.2_GH0.tar.gz) = 9edd8e54653e43b6a7eb7fc44721ce918a615082594bdff5204756e35d0c7512
+SIZE (mijorus-smile-2.10.2_GH0.tar.gz) = 2200972
diff --git a/textproc/py-smile/pkg-descr b/textproc/py-smile/pkg-descr
new file mode 100644
index 000000000000..e51894466faf
--- /dev/null
+++ b/textproc/py-smile/pkg-descr
@@ -0,0 +1 @@
+Smile is a simple emoji picker for linux with custom tags support.
diff --git a/textproc/py-smile/pkg-plist b/textproc/py-smile/pkg-plist
new file mode 100644
index 000000000000..fa4cb9b250da
--- /dev/null
+++ b/textproc/py-smile/pkg-plist
@@ -0,0 +1,82 @@
+bin/smile
+share/appdata/it.mijorus.smile.appdata.xml
+share/applications/it.mijorus.smile.desktop
+share/icons/hicolor/scalable/actions/arrow2-right-symbolic.svg
+share/icons/hicolor/scalable/actions/arrow2-top-right-symbolic.svg
+share/icons/hicolor/scalable/actions/baseball-symbolic.svg
+share/icons/hicolor/scalable/actions/bear-symbolic.svg
+share/icons/hicolor/scalable/actions/birthday-symbolic.svg
+share/icons/hicolor/scalable/actions/checkmark-symbolic.svg
+share/icons/hicolor/scalable/actions/driving-symbolic.svg
+share/icons/hicolor/scalable/actions/flag-filled-symbolic.svg
+share/icons/hicolor/scalable/actions/history-undo-symbolic.svg
+share/icons/hicolor/scalable/actions/input-keyboard-numlock-symbolic.svg
+share/icons/hicolor/scalable/actions/it.mijorus.smile.crazy.svg
+share/icons/hicolor/scalable/actions/lightbulb-symbolic.svg
+share/icons/hicolor/scalable/actions/restaurant-symbolic.svg
+share/icons/hicolor/scalable/actions/sentiment-very-satisfied-symbolic.svg
+share/icons/hicolor/scalable/actions/smile-checkmark-symbolic.svg
+share/icons/hicolor/scalable/actions/smile-dialog-warning.svg
+share/icons/hicolor/scalable/actions/smile-entry-clear-symbolic.svg
+share/icons/hicolor/scalable/actions/smile-settings-symbolic.svg
+share/icons/hicolor/scalable/actions/smile-symbolic.svg
+share/icons/hicolor/scalable/actions/smile-warning-small-symbolic.svg
+share/icons/hicolor/scalable/apps/it.mijorus.smile.svg
+share/icons/hicolor/symbolic/apps/it.mijorus.smile-symbolic.svg
+share/locale/de/LC_MESSAGES/smile.mo
+share/locale/es/LC_MESSAGES/smile.mo
+share/locale/fr/LC_MESSAGES/smile.mo
+share/locale/it/LC_MESSAGES/smile.mo
+share/locale/ja/LC_MESSAGES/smile.mo
+share/locale/nl/LC_MESSAGES/smile.mo
+share/locale/oc/LC_MESSAGES/smile.mo
+share/locale/pl/LC_MESSAGES/smile.mo
+share/locale/pt_BR/LC_MESSAGES/smile.mo
+share/locale/ru/LC_MESSAGES/smile.mo
+share/locale/sv/LC_MESSAGES/smile.mo
+share/locale/tr/LC_MESSAGES/smile.mo
+share/locale/zh/LC_MESSAGES/smile.mo
+share/locale/zh_TW/LC_MESSAGES/smile.mo
+%%DATADIR%%/assets/emoji_locales/da.json
+%%DATADIR%%/assets/emoji_locales/de.json
+%%DATADIR%%/assets/emoji_locales/es.json
+%%DATADIR%%/assets/emoji_locales/et.json
+%%DATADIR%%/assets/emoji_locales/fi.json
+%%DATADIR%%/assets/emoji_locales/fr.json
+%%DATADIR%%/assets/emoji_locales/hu.json
+%%DATADIR%%/assets/emoji_locales/it.json
+%%DATADIR%%/assets/emoji_locales/ja.json
+%%DATADIR%%/assets/emoji_locales/ko.json
+%%DATADIR%%/assets/emoji_locales/lt.json
+%%DATADIR%%/assets/emoji_locales/nb.json
+%%DATADIR%%/assets/emoji_locales/nl.json
+%%DATADIR%%/assets/emoji_locales/pl.json
+%%DATADIR%%/assets/emoji_locales/pt.json
+%%DATADIR%%/assets/emoji_locales/ru.json
+%%DATADIR%%/assets/emoji_locales/sv.json
+%%DATADIR%%/smile.gresource
+%%DATADIR%%/smile/Picker.py
+%%DATADIR%%/smile/Settings.py
+%%DATADIR%%/smile/ShortcutsWindow.py
+%%DATADIR%%/smile/__init__.py
+%%DATADIR%%/smile/assets/emoji_list.py
+%%DATADIR%%/smile/assets/smile.autostart.desktop
+%%DATADIR%%/smile/assets/style.css
+%%DATADIR%%/smile/components/CustomPopover.py
+%%DATADIR%%/smile/components/CustomTagEntry.py
+%%DATADIR%%/smile/components/SkintoneSelector.py
+%%DATADIR%%/smile/components/UpdateDialog.py
+%%DATADIR%%/smile/components/UrlRow.py
+%%DATADIR%%/smile/lib/DbusService.py
+%%DATADIR%%/smile/lib/custom_tags.py
+%%DATADIR%%/smile/lib/emoji_history.py
+%%DATADIR%%/smile/lib/localized_tags.py
+%%DATADIR%%/smile/lib/user_config.py
+%%DATADIR%%/smile/lib/widget_utils.py
+%%DATADIR%%/smile/main.py
+%%DATADIR%%/smile/smile.gresource
+%%DATADIR%%/smile/smile.gresource.xml
+%%DATADIR%%/smile/ui/importexport-customtags.ui
+%%DATADIR%%/smile/ui/menu.ui
+%%DATADIR%%/smile/ui/shortcuts.ui
+%%DATADIR%%/smile/utils.py
diff --git a/textproc/py-sphinx-autobuild/Makefile b/textproc/py-sphinx-autobuild/Makefile
index 20bc1ba1b6e5..dc3f881e8745 100644
--- a/textproc/py-sphinx-autobuild/Makefile
+++ b/textproc/py-sphinx-autobuild/Makefile
@@ -1,5 +1,5 @@
PORTNAME= sphinx-autobuild
-PORTVERSION= 2024.10.3
+PORTVERSION= 2025.8.25
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -7,7 +7,7 @@ DISTNAME= sphinx_autobuild-${PORTVERSION}
MAINTAINER= sunpoet@FreeBSD.org
COMMENT= Rebuild Sphinx documentation on changes, with hot reloading in the browser
-WWW= https://github.com/executablebooks/sphinx-autobuild
+WWW= https://github.com/sphinx-doc/sphinx-autobuild
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE.rst
@@ -20,7 +20,7 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}colorama>=0.4.6:devel/py-colorama@${PY_FLAVO
${PYTHON_PKGNAMEPREFIX}watchfiles>=0.20:devel/py-watchfiles@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}websockets>=11:devel/py-websockets@${PY_FLAVOR}
-USES= python
+USES= python:3.11+
USE_PYTHON= autoplist concurrent pep517
NO_ARCH= yes
diff --git a/textproc/py-sphinx-autobuild/distinfo b/textproc/py-sphinx-autobuild/distinfo
index 6b79c986016a..e5ed4b63af63 100644
--- a/textproc/py-sphinx-autobuild/distinfo
+++ b/textproc/py-sphinx-autobuild/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1728632482
-SHA256 (sphinx_autobuild-2024.10.3.tar.gz) = 248150f8f333e825107b6d4b86113ab28fa51750e5f9ae63b59dc339be951fb1
-SIZE (sphinx_autobuild-2024.10.3.tar.gz) = 14023
+TIMESTAMP = 1757120842
+SHA256 (sphinx_autobuild-2025.8.25.tar.gz) = 9cf5aab32853c8c31af572e4fecdc09c997e2b8be5a07daf2a389e270e85b213
+SIZE (sphinx_autobuild-2025.8.25.tar.gz) = 15200
diff --git a/textproc/py-sphinx-intl/Makefile b/textproc/py-sphinx-intl/Makefile
index f2a147aa6b95..0056711a32d0 100644
--- a/textproc/py-sphinx-intl/Makefile
+++ b/textproc/py-sphinx-intl/Makefile
@@ -1,5 +1,5 @@
PORTNAME= sphinx-intl
-PORTVERSION= 2.3.1
+PORTVERSION= 2.3.2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,13 +13,14 @@ WWW= https://sphinx-intl.readthedocs.io/en/master/ \
LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61:devel/py-setuptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>=8:devel/py-setuptools-scm@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=0:devel/py-babel@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}click>=0:devel/py-click@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}Babel>=2.9.0:devel/py-babel@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}click>=8.0.0:devel/py-click@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR}
-USES= python:3.9+
+USES= python
USE_PYTHON= autoplist concurrent pep517
NO_ARCH= yes
diff --git a/textproc/py-sphinx-intl/distinfo b/textproc/py-sphinx-intl/distinfo
index 29b5e8c8c902..e7168ad5b0f7 100644
--- a/textproc/py-sphinx-intl/distinfo
+++ b/textproc/py-sphinx-intl/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1734888364
-SHA256 (sphinx_intl-2.3.1.tar.gz) = e2d04b907f57a029d46b4da344fd791e660d935eab6ced8a274fc65446389af1
-SIZE (sphinx_intl-2.3.1.tar.gz) = 28006
+TIMESTAMP = 1757120844
+SHA256 (sphinx_intl-2.3.2.tar.gz) = 04b0d8ea04d111a7ba278b17b7b3fe9625c58b6f8ffb78bb8a1dd1288d88c1c7
+SIZE (sphinx_intl-2.3.2.tar.gz) = 27921
diff --git a/textproc/py-sphinx-intl/files/patch-pyproject.toml b/textproc/py-sphinx-intl/files/patch-pyproject.toml
new file mode 100644
index 000000000000..876a3387d665
--- /dev/null
+++ b/textproc/py-sphinx-intl/files/patch-pyproject.toml
@@ -0,0 +1,21 @@
+--- pyproject.toml.orig 2025-08-02 04:52:34 UTC
++++ pyproject.toml
+@@ -7,8 +7,7 @@ requires-python = ">=3.9"
+ description = "Sphinx utility that make it easy to translate and to apply translation."
+ readme = "README.rst"
+ requires-python = ">=3.9"
+-license = "BSD-2-Clause"
+-license-files = ["LICENSE"]
++license = {file = "LICENSE"}
+ dependencies = [
+ "click>=8.0.0",
+ "babel>=2.9.0",
+@@ -55,7 +54,7 @@ sphinx-intl = "sphinx_intl.commands:main"
+ sphinx-intl = "sphinx_intl.commands:main"
+
+ [build-system]
+-requires = ["setuptools>=64", "setuptools_scm>=8"]
++requires = ["setuptools>=61", "setuptools_scm>=8"]
+ build-backend = "setuptools.build_meta"
+
+ [tool.setuptools]
diff --git a/textproc/py-sphinx-material/Makefile b/textproc/py-sphinx-material/Makefile
index 0a8b2b7d46b3..716ad679f3d6 100644
--- a/textproc/py-sphinx-material/Makefile
+++ b/textproc/py-sphinx-material/Makefile
@@ -1,6 +1,6 @@
PORTNAME= sphinx_material
DISTVERSION= 0.0.36
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -16,7 +16,7 @@ RUN_DEPENDS= ${PY_DEPENDS}
PY_DEPENDS= sphinx-build:textproc/py-sphinx@${PY_FLAVOR} \
slugify:textproc/py-python-slugify@${PY_FLAVOR} \
css-html-js-minify:www/py-css-html-js-minify@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}beautifulsoup>0:www/py-beautifulsoup@${PY_FLAVOR}
#USE_GITHUB= yes
diff --git a/textproc/py-sphinx-sitemap/Makefile b/textproc/py-sphinx-sitemap/Makefile
index 76c3ae293905..4d0b21d0bb08 100644
--- a/textproc/py-sphinx-sitemap/Makefile
+++ b/textproc/py-sphinx-sitemap/Makefile
@@ -1,5 +1,5 @@
PORTNAME= sphinx-sitemap
-PORTVERSION= 2.7.2
+PORTVERSION= 2.8.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-sphinx-sitemap/distinfo b/textproc/py-sphinx-sitemap/distinfo
index d82ec39753e8..a35581ec8c5b 100644
--- a/textproc/py-sphinx-sitemap/distinfo
+++ b/textproc/py-sphinx-sitemap/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1750954246
-SHA256 (sphinx_sitemap-2.7.2.tar.gz) = 819e028e27579b47efa0e2f863b87136b711c45f13e84730610e80316f6883da
-SIZE (sphinx_sitemap-2.7.2.tar.gz) = 6387
+TIMESTAMP = 1757120846
+SHA256 (sphinx_sitemap-2.8.0.tar.gz) = 749d7184a0c7b73d486a232b54b5c1b38a0e2d6f18cf19fb1b033b8162b44a82
+SIZE (sphinx_sitemap-2.8.0.tar.gz) = 6829
diff --git a/textproc/py-sphinx-tabs/Makefile b/textproc/py-sphinx-tabs/Makefile
index e1c05e150d5a..272fe149a9d6 100644
--- a/textproc/py-sphinx-tabs/Makefile
+++ b/textproc/py-sphinx-tabs/Makefile
@@ -1,6 +1,6 @@
PORTNAME= sphinx-tabs
PORTVERSION= 3.4.7
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -18,7 +18,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLA
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}docutils>=0,1:textproc/py-docutils@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pygments>=0:textproc/py-pygments@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sphinx>=1.8,1:textproc/py-sphinx@${PY_FLAVOR}
-TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517
diff --git a/textproc/py-tiktoken/Makefile b/textproc/py-tiktoken/Makefile
index f0e384638d32..a6239c676dd2 100644
--- a/textproc/py-tiktoken/Makefile
+++ b/textproc/py-tiktoken/Makefile
@@ -1,6 +1,5 @@
PORTNAME= tiktoken
-PORTVERSION= 0.9.0
-PORTREVISION= 5
+PORTVERSION= 0.11.0
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-tiktoken/Makefile.crates b/textproc/py-tiktoken/Makefile.crates
index 4ed70e22bfda..50e4fac9ceb0 100644
--- a/textproc/py-tiktoken/Makefile.crates
+++ b/textproc/py-tiktoken/Makefile.crates
@@ -1,31 +1,31 @@
CARGO_CRATES= aho-corasick-1.1.3 \
- autocfg-1.4.0 \
+ autocfg-1.5.0 \
bit-set-0.5.3 \
bit-vec-0.6.3 \
- bstr-1.11.3 \
- cfg-if-1.0.0 \
+ bstr-1.12.0 \
+ cfg-if-1.0.3 \
fancy-regex-0.13.0 \
heck-0.5.0 \
- indoc-2.0.5 \
- libc-0.2.169 \
- memchr-2.7.4 \
+ indoc-2.0.6 \
+ libc-0.2.175 \
+ memchr-2.7.5 \
memoffset-0.9.1 \
- once_cell-1.20.3 \
- portable-atomic-1.10.0 \
- proc-macro2-1.0.93 \
- pyo3-0.22.6 \
- pyo3-build-config-0.22.6 \
- pyo3-ffi-0.22.6 \
- pyo3-macros-0.22.6 \
- pyo3-macros-backend-0.22.6 \
- quote-1.0.38 \
- regex-1.11.1 \
- regex-automata-0.4.9 \
- regex-syntax-0.8.5 \
+ once_cell-1.21.3 \
+ portable-atomic-1.11.1 \
+ proc-macro2-1.0.101 \
+ pyo3-0.24.2 \
+ pyo3-build-config-0.24.2 \
+ pyo3-ffi-0.24.2 \
+ pyo3-macros-0.24.2 \
+ pyo3-macros-backend-0.24.2 \
+ quote-1.0.40 \
+ regex-1.11.2 \
+ regex-automata-0.4.10 \
+ regex-syntax-0.8.6 \
rustc-hash-1.1.0 \
- serde-1.0.217 \
- serde_derive-1.0.217 \
- syn-2.0.98 \
- target-lexicon-0.12.16 \
- unicode-ident-1.0.16 \
- unindent-0.2.3
+ serde-1.0.219 \
+ serde_derive-1.0.219 \
+ syn-2.0.106 \
+ target-lexicon-0.13.2 \
+ unicode-ident-1.0.18 \
+ unindent-0.2.4
diff --git a/textproc/py-tiktoken/distinfo b/textproc/py-tiktoken/distinfo
index 9eb3e2f08a01..2cf9c35ad5f2 100644
--- a/textproc/py-tiktoken/distinfo
+++ b/textproc/py-tiktoken/distinfo
@@ -1,65 +1,65 @@
-TIMESTAMP = 1739930208
-SHA256 (tiktoken-0.9.0.tar.gz) = d02a5ca6a938e0490e1ff957bc48c8b078c88cb83977be1625b1fd8aac792c5d
-SIZE (tiktoken-0.9.0.tar.gz) = 35991
+TIMESTAMP = 1757120848
+SHA256 (tiktoken-0.11.0.tar.gz) = 3c518641aee1c52247c2b97e74d8d07d780092af79d5911a6ab5e79359d9b06a
+SIZE (tiktoken-0.11.0.tar.gz) = 37648
SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
-SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26
-SIZE (rust/crates/autocfg-1.4.0.crate) = 17712
+SHA256 (rust/crates/autocfg-1.5.0.crate) = c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8
+SIZE (rust/crates/autocfg-1.5.0.crate) = 18729
SHA256 (rust/crates/bit-set-0.5.3.crate) = 0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1
SIZE (rust/crates/bit-set-0.5.3.crate) = 14470
SHA256 (rust/crates/bit-vec-0.6.3.crate) = 349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb
SIZE (rust/crates/bit-vec-0.6.3.crate) = 19927
-SHA256 (rust/crates/bstr-1.11.3.crate) = 531a9155a481e2ee699d4f98f43c0ca4ff8ee1bfd55c31e9e98fb29d2b176fe0
-SIZE (rust/crates/bstr-1.11.3.crate) = 351536
-SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
-SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/bstr-1.12.0.crate) = 234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4
+SIZE (rust/crates/bstr-1.12.0.crate) = 351557
+SHA256 (rust/crates/cfg-if-1.0.3.crate) = 2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9
+SIZE (rust/crates/cfg-if-1.0.3.crate) = 8719
SHA256 (rust/crates/fancy-regex-0.13.0.crate) = 531e46835a22af56d1e3b66f04844bed63158bc094a628bec1d321d9b4c44bf2
SIZE (rust/crates/fancy-regex-0.13.0.crate) = 85930
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
-SHA256 (rust/crates/indoc-2.0.5.crate) = b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5
-SIZE (rust/crates/indoc-2.0.5.crate) = 14396
-SHA256 (rust/crates/libc-0.2.169.crate) = b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a
-SIZE (rust/crates/libc-0.2.169.crate) = 757901
-SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3
-SIZE (rust/crates/memchr-2.7.4.crate) = 96670
+SHA256 (rust/crates/indoc-2.0.6.crate) = f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd
+SIZE (rust/crates/indoc-2.0.6.crate) = 17164
+SHA256 (rust/crates/libc-0.2.175.crate) = 6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543
+SIZE (rust/crates/libc-0.2.175.crate) = 788728
+SHA256 (rust/crates/memchr-2.7.5.crate) = 32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0
+SIZE (rust/crates/memchr-2.7.5.crate) = 97603
SHA256 (rust/crates/memoffset-0.9.1.crate) = 488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a
SIZE (rust/crates/memoffset-0.9.1.crate) = 9032
-SHA256 (rust/crates/once_cell-1.20.3.crate) = 945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e
-SIZE (rust/crates/once_cell-1.20.3.crate) = 33456
-SHA256 (rust/crates/portable-atomic-1.10.0.crate) = 280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6
-SIZE (rust/crates/portable-atomic-1.10.0.crate) = 174760
-SHA256 (rust/crates/proc-macro2-1.0.93.crate) = 60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99
-SIZE (rust/crates/proc-macro2-1.0.93.crate) = 52388
-SHA256 (rust/crates/pyo3-0.22.6.crate) = f402062616ab18202ae8319da13fa4279883a2b8a9d9f83f20dbade813ce1884
-SIZE (rust/crates/pyo3-0.22.6.crate) = 546746
-SHA256 (rust/crates/pyo3-build-config-0.22.6.crate) = b14b5775b5ff446dd1056212d778012cbe8a0fbffd368029fd9e25b514479c38
-SIZE (rust/crates/pyo3-build-config-0.22.6.crate) = 31369
-SHA256 (rust/crates/pyo3-ffi-0.22.6.crate) = 9ab5bcf04a2cdcbb50c7d6105de943f543f9ed92af55818fd17b660390fc8636
-SIZE (rust/crates/pyo3-ffi-0.22.6.crate) = 69352
-SHA256 (rust/crates/pyo3-macros-0.22.6.crate) = 0fd24d897903a9e6d80b968368a34e1525aeb719d568dba8b3d4bfa5dc67d453
-SIZE (rust/crates/pyo3-macros-0.22.6.crate) = 8182
-SHA256 (rust/crates/pyo3-macros-backend-0.22.6.crate) = 36c011a03ba1e50152b4b394b479826cad97e7a21eb52df179cd91ac411cbfbe
-SIZE (rust/crates/pyo3-macros-backend-0.22.6.crate) = 66312
-SHA256 (rust/crates/quote-1.0.38.crate) = 0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc
-SIZE (rust/crates/quote-1.0.38.crate) = 31252
-SHA256 (rust/crates/regex-1.11.1.crate) = b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191
-SIZE (rust/crates/regex-1.11.1.crate) = 254170
-SHA256 (rust/crates/regex-automata-0.4.9.crate) = 809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908
-SIZE (rust/crates/regex-automata-0.4.9.crate) = 618525
-SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c
-SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541
+SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d
+SIZE (rust/crates/once_cell-1.21.3.crate) = 34534
+SHA256 (rust/crates/portable-atomic-1.11.1.crate) = f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483
+SIZE (rust/crates/portable-atomic-1.11.1.crate) = 185506
+SHA256 (rust/crates/proc-macro2-1.0.101.crate) = 89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de
+SIZE (rust/crates/proc-macro2-1.0.101.crate) = 53886
+SHA256 (rust/crates/pyo3-0.24.2.crate) = e5203598f366b11a02b13aa20cab591229ff0a89fd121a308a5df751d5fc9219
+SIZE (rust/crates/pyo3-0.24.2.crate) = 1113754
+SHA256 (rust/crates/pyo3-build-config-0.24.2.crate) = 99636d423fa2ca130fa5acde3059308006d46f98caac629418e53f7ebb1e9999
+SIZE (rust/crates/pyo3-build-config-0.24.2.crate) = 34019
+SHA256 (rust/crates/pyo3-ffi-0.24.2.crate) = 78f9cf92ba9c409279bc3305b5409d90db2d2c22392d443a87df3a1adad59e33
+SIZE (rust/crates/pyo3-ffi-0.24.2.crate) = 76458
+SHA256 (rust/crates/pyo3-macros-0.24.2.crate) = 0b999cb1a6ce21f9a6b147dcf1be9ffedf02e0043aec74dc390f3007047cecd9
+SIZE (rust/crates/pyo3-macros-0.24.2.crate) = 8874
+SHA256 (rust/crates/pyo3-macros-backend-0.24.2.crate) = 822ece1c7e1012745607d5cf0bcb2874769f0f7cb34c4cde03b9358eb9ef911a
+SIZE (rust/crates/pyo3-macros-backend-0.24.2.crate) = 72654
+SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d
+SIZE (rust/crates/quote-1.0.40.crate) = 31063
+SHA256 (rust/crates/regex-1.11.2.crate) = 23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912
+SIZE (rust/crates/regex-1.11.2.crate) = 166265
+SHA256 (rust/crates/regex-automata-0.4.10.crate) = 6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6
+SIZE (rust/crates/regex-automata-0.4.10.crate) = 622754
+SHA256 (rust/crates/regex-syntax-0.8.6.crate) = caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001
+SIZE (rust/crates/regex-syntax-0.8.6.crate) = 358808
SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2
SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331
-SHA256 (rust/crates/serde-1.0.217.crate) = 02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70
-SIZE (rust/crates/serde-1.0.217.crate) = 79019
-SHA256 (rust/crates/serde_derive-1.0.217.crate) = 5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0
-SIZE (rust/crates/serde_derive-1.0.217.crate) = 57749
-SHA256 (rust/crates/syn-2.0.98.crate) = 36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1
-SIZE (rust/crates/syn-2.0.98.crate) = 297807
-SHA256 (rust/crates/target-lexicon-0.12.16.crate) = 61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1
-SIZE (rust/crates/target-lexicon-0.12.16.crate) = 26488
-SHA256 (rust/crates/unicode-ident-1.0.16.crate) = a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034
-SIZE (rust/crates/unicode-ident-1.0.16.crate) = 47684
-SHA256 (rust/crates/unindent-0.2.3.crate) = c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce
-SIZE (rust/crates/unindent-0.2.3.crate) = 7306
+SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6
+SIZE (rust/crates/serde-1.0.219.crate) = 78983
+SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00
+SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
+SHA256 (rust/crates/syn-2.0.106.crate) = ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6
+SIZE (rust/crates/syn-2.0.106.crate) = 301514
+SHA256 (rust/crates/target-lexicon-0.13.2.crate) = e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a
+SIZE (rust/crates/target-lexicon-0.13.2.crate) = 27923
+SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
+SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
+SHA256 (rust/crates/unindent-0.2.4.crate) = 7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3
+SIZE (rust/crates/unindent-0.2.4.crate) = 7422
diff --git a/textproc/py-tokenizer/Makefile b/textproc/py-tokenizer/Makefile
index b4ad88c9c8d9..ee21564392ed 100644
--- a/textproc/py-tokenizer/Makefile
+++ b/textproc/py-tokenizer/Makefile
@@ -1,6 +1,5 @@
PORTNAME= tokenizer
-PORTVERSION= 3.5.0
-PORTREVISION= 1
+PORTVERSION= 3.5.2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/textproc/py-tokenizer/distinfo b/textproc/py-tokenizer/distinfo
index 5002d345dfbd..d80638e051df 100644
--- a/textproc/py-tokenizer/distinfo
+++ b/textproc/py-tokenizer/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1756293103
-SHA256 (tokenizer-3.5.0.tar.gz) = f26694d6be85815d23db167ee9b1c9e2ed7b672cfc8b9baa607ba3aba6070727
-SIZE (tokenizer-3.5.0.tar.gz) = 127323
+TIMESTAMP = 1758898772
+SHA256 (tokenizer-3.5.2.tar.gz) = 36a425197f0623b68ca1e81f22b283df599f80ed1121af8a88a1a45031eb36a9
+SIZE (tokenizer-3.5.2.tar.gz) = 104221
diff --git a/textproc/py-tokenizers/Makefile b/textproc/py-tokenizers/Makefile
index 4227ba8a3d11..44c404cce9b9 100644
--- a/textproc/py-tokenizers/Makefile
+++ b/textproc/py-tokenizers/Makefile
@@ -1,6 +1,5 @@
PORTNAME= tokenizers
-DISTVERSION= 0.22.0
-PORTREVISION= 1
+DISTVERSION= 0.22.1
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,11 +13,11 @@ LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/tokenizers/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=1.0<2.0:devel/py-maturin@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}huggingface-hub>=0.16.4<1.0:misc/py-huggingface-hub@${PY_FLAVOR}
-TEST_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/oniguruma.pc:devel/oniguruma \
+LIB_DEPENDS= libonig.so:devel/oniguruma
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}huggingface-hub>=0.16.4<2.0:misc/py-huggingface-hub@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}numpy>0:math/py-numpy@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}datasets>0:misc/py-datasets@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}datasets>0:misc/py-datasets@${PY_FLAVOR}
USES= cargo python
USE_PYTHON= autoplist pep517 pytest
@@ -31,6 +30,7 @@ CARGO_INSTALL= no
CARGO_TEST= no
CARGO_TEST_ARGS= --no-default-features
+MAKE_ENV= ${CARGO_ENV}
TEST_ARGS= tests
TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
diff --git a/textproc/py-tokenizers/Makefile.crates b/textproc/py-tokenizers/Makefile.crates
index f1c05a287689..b71be3653cb7 100644
--- a/textproc/py-tokenizers/Makefile.crates
+++ b/textproc/py-tokenizers/Makefile.crates
@@ -10,10 +10,10 @@ CARGO_CRATES= addr2line-0.24.2 \
autocfg-1.5.0 \
backtrace-0.3.75 \
base64-0.13.1 \
- bitflags-2.9.3 \
+ bitflags-2.9.4 \
bumpalo-3.19.0 \
castaway-0.2.4 \
- cc-1.2.34 \
+ cc-1.2.38 \
cfg-if-1.0.3 \
colorchoice-1.0.4 \
compact_str-0.9.0 \
@@ -24,7 +24,7 @@ CARGO_CRATES= addr2line-0.24.2 \
darling-0.20.11 \
darling_core-0.20.11 \
darling_macro-0.20.11 \
- dary_heap-0.3.7 \
+ dary_heap-0.3.8 \
derive_builder-0.20.2 \
derive_builder_core-0.20.2 \
derive_builder_macro-0.20.2 \
@@ -32,9 +32,10 @@ CARGO_CRATES= addr2line-0.24.2 \
encode_unicode-1.0.0 \
env_filter-0.1.3 \
env_logger-0.11.8 \
- errno-0.3.13 \
+ errno-0.3.14 \
esaxx-rs-0.1.10 \
fastrand-2.3.0 \
+ find-msvc-tools-0.1.2 \
fnv-1.0.7 \
futures-0.3.31 \
futures-channel-0.3.31 \
@@ -57,10 +58,10 @@ CARGO_CRATES= addr2line-0.24.2 \
itoa-1.0.15 \
jiff-0.2.15 \
jiff-static-0.2.15 \
- js-sys-0.3.77 \
+ js-sys-0.3.80 \
libc-0.2.175 \
- linux-raw-sys-0.9.4 \
- log-0.4.27 \
+ linux-raw-sys-0.11.0 \
+ log-0.4.28 \
macro_rules_attribute-0.2.2 \
macro_rules_attribute-proc_macro-0.2.2 \
matrixmultiply-0.3.10 \
@@ -69,8 +70,8 @@ CARGO_CRATES= addr2line-0.24.2 \
minimal-lexical-0.2.1 \
miniz_oxide-0.8.9 \
mio-1.0.4 \
- monostate-0.1.14 \
- monostate-impl-0.1.14 \
+ monostate-0.1.16 \
+ monostate-impl-0.1.16 \
ndarray-0.16.1 \
nom-7.1.3 \
num-complex-0.4.6 \
@@ -111,12 +112,13 @@ CARGO_CRATES= addr2line-0.24.2 \
regex-syntax-0.8.6 \
rustc-demangle-0.1.26 \
rustc-hash-2.1.1 \
- rustix-1.0.8 \
+ rustix-1.1.2 \
rustversion-1.0.22 \
ryu-1.0.20 \
- serde-1.0.219 \
- serde_derive-1.0.219 \
- serde_json-1.0.143 \
+ serde-1.0.225 \
+ serde_core-1.0.225 \
+ serde_derive-1.0.225 \
+ serde_json-1.0.145 \
shlex-1.3.0 \
signal-hook-registry-1.4.6 \
slab-0.4.11 \
@@ -125,13 +127,13 @@ CARGO_CRATES= addr2line-0.24.2 \
static_assertions-1.1.0 \
strsim-0.11.1 \
syn-2.0.106 \
- target-lexicon-0.13.2 \
- tempfile-3.21.0 \
+ target-lexicon-0.13.3 \
+ tempfile-3.22.0 \
thiserror-2.0.16 \
thiserror-impl-2.0.16 \
tokio-1.47.1 \
tokio-macros-2.5.0 \
- unicode-ident-1.0.18 \
+ unicode-ident-1.0.19 \
unicode-normalization-alignments-0.1.12 \
unicode-segmentation-1.12.0 \
unicode-width-0.2.1 \
@@ -140,16 +142,19 @@ CARGO_CRATES= addr2line-0.24.2 \
utf8parse-0.2.2 \
version_check-0.9.5 \
wasi-0.11.1+wasi-snapshot-preview1 \
- wasi-0.14.3+wasi-0.2.4 \
- wasm-bindgen-0.2.100 \
- wasm-bindgen-backend-0.2.100 \
- wasm-bindgen-macro-0.2.100 \
- wasm-bindgen-macro-support-0.2.100 \
- wasm-bindgen-shared-0.2.100 \
+ wasi-0.14.7+wasi-0.2.4 \
+ wasip2-1.0.1+wasi-0.2.4 \
+ wasm-bindgen-0.2.103 \
+ wasm-bindgen-backend-0.2.103 \
+ wasm-bindgen-macro-0.2.103 \
+ wasm-bindgen-macro-support-0.2.103 \
+ wasm-bindgen-shared-0.2.103 \
web-time-1.1.0 \
windows-link-0.1.3 \
+ windows-link-0.2.0 \
windows-sys-0.59.0 \
windows-sys-0.60.2 \
+ windows-sys-0.61.0 \
windows-targets-0.52.6 \
windows-targets-0.53.3 \
windows_aarch64_gnullvm-0.52.6 \
@@ -168,6 +173,6 @@ CARGO_CRATES= addr2line-0.24.2 \
windows_x86_64_gnullvm-0.53.0 \
windows_x86_64_msvc-0.52.6 \
windows_x86_64_msvc-0.53.0 \
- wit-bindgen-0.45.0 \
- zerocopy-0.8.26 \
- zerocopy-derive-0.8.26
+ wit-bindgen-0.46.0 \
+ zerocopy-0.8.27 \
+ zerocopy-derive-0.8.27
diff --git a/textproc/py-tokenizers/distinfo b/textproc/py-tokenizers/distinfo
index 8fe7c03e2d2c..f86e520677ee 100644
--- a/textproc/py-tokenizers/distinfo
+++ b/textproc/py-tokenizers/distinfo
@@ -1,6 +1,6 @@
-TIMESTAMP = 1756545522
-SHA256 (tokenizers-0.22.0.tar.gz) = 2e33b98525be8453f355927f3cab312c36cd3e44f4d7e9e97da2fa94d0a49dcb
-SIZE (tokenizers-0.22.0.tar.gz) = 362771
+TIMESTAMP = 1758523747
+SHA256 (tokenizers-0.22.1.tar.gz) = 61de6522785310a309b3407bac22d99c4db5dba349935e99e4d15ea2226af2d9
+SIZE (tokenizers-0.22.1.tar.gz) = 363123
SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa
@@ -25,14 +25,14 @@ SHA256 (rust/crates/backtrace-0.3.75.crate) = 6806a6321ec58106fea15becdad98371e2
SIZE (rust/crates/backtrace-0.3.75.crate) = 92665
SHA256 (rust/crates/base64-0.13.1.crate) = 9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8
SIZE (rust/crates/base64-0.13.1.crate) = 61002
-SHA256 (rust/crates/bitflags-2.9.3.crate) = 34efbcccd345379ca2868b2b2c9d3782e9cc58ba87bc7d79d5b53d9c9ae6f25d
-SIZE (rust/crates/bitflags-2.9.3.crate) = 47777
+SHA256 (rust/crates/bitflags-2.9.4.crate) = 2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394
+SIZE (rust/crates/bitflags-2.9.4.crate) = 47950
SHA256 (rust/crates/bumpalo-3.19.0.crate) = 46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43
SIZE (rust/crates/bumpalo-3.19.0.crate) = 96414
SHA256 (rust/crates/castaway-0.2.4.crate) = dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a
SIZE (rust/crates/castaway-0.2.4.crate) = 12546
-SHA256 (rust/crates/cc-1.2.34.crate) = 42bc4aea80032b7bf409b0bc7ccad88853858911b7713a8062fdc0623867bedc
-SIZE (rust/crates/cc-1.2.34.crate) = 111754
+SHA256 (rust/crates/cc-1.2.38.crate) = 80f41ae168f955c12fb8960b057d70d0ca153fb83182b57d86380443527be7e9
+SIZE (rust/crates/cc-1.2.38.crate) = 90139
SHA256 (rust/crates/cfg-if-1.0.3.crate) = 2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9
SIZE (rust/crates/cfg-if-1.0.3.crate) = 8719
SHA256 (rust/crates/colorchoice-1.0.4.crate) = b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75
@@ -53,8 +53,8 @@ SHA256 (rust/crates/darling_core-0.20.11.crate) = 0d00b9596d185e565c2207a0b01f8b
SIZE (rust/crates/darling_core-0.20.11.crate) = 68006
SHA256 (rust/crates/darling_macro-0.20.11.crate) = fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead
SIZE (rust/crates/darling_macro-0.20.11.crate) = 2532
-SHA256 (rust/crates/dary_heap-0.3.7.crate) = 04d2cd9c18b9f454ed67da600630b021a8a80bf33f8c95896ab33aaf1c26b728
-SIZE (rust/crates/dary_heap-0.3.7.crate) = 24076
+SHA256 (rust/crates/dary_heap-0.3.8.crate) = 06d2e3287df1c007e74221c49ca10a95d557349e54b3a75dc2fb14712c751f04
+SIZE (rust/crates/dary_heap-0.3.8.crate) = 26544
SHA256 (rust/crates/derive_builder-0.20.2.crate) = 507dfb09ea8b7fa618fcf76e953f4f5e192547945816d5358edffe39f6f94947
SIZE (rust/crates/derive_builder-0.20.2.crate) = 36661
SHA256 (rust/crates/derive_builder_core-0.20.2.crate) = 2d5bcf7b024d6835cfb3d473887cd966994907effbe9227e8c8219824d06c4e8
@@ -69,12 +69,14 @@ SHA256 (rust/crates/env_filter-0.1.3.crate) = 186e05a59d4c50738528153b83b0b0194d
SIZE (rust/crates/env_filter-0.1.3.crate) = 15191
SHA256 (rust/crates/env_logger-0.11.8.crate) = 13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f
SIZE (rust/crates/env_logger-0.11.8.crate) = 32538
-SHA256 (rust/crates/errno-0.3.13.crate) = 778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad
-SIZE (rust/crates/errno-0.3.13.crate) = 12449
+SHA256 (rust/crates/errno-0.3.14.crate) = 39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb
+SIZE (rust/crates/errno-0.3.14.crate) = 12002
SHA256 (rust/crates/esaxx-rs-0.1.10.crate) = d817e038c30374a4bcb22f94d0a8a0e216958d4c3dcde369b1439fec4bdda6e6
SIZE (rust/crates/esaxx-rs-0.1.10.crate) = 175210
SHA256 (rust/crates/fastrand-2.3.0.crate) = 37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be
SIZE (rust/crates/fastrand-2.3.0.crate) = 15076
+SHA256 (rust/crates/find-msvc-tools-0.1.2.crate) = 1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959
+SIZE (rust/crates/find-msvc-tools-0.1.2.crate) = 30461
SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
SIZE (rust/crates/fnv-1.0.7.crate) = 11266
SHA256 (rust/crates/futures-0.3.31.crate) = 65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876
@@ -119,14 +121,14 @@ SHA256 (rust/crates/jiff-0.2.15.crate) = be1f93b8b1eb69c77f24bbb0afdf66f54b632ee
SIZE (rust/crates/jiff-0.2.15.crate) = 712996
SHA256 (rust/crates/jiff-static-0.2.15.crate) = 03343451ff899767262ec32146f6d559dd759fdadf42ff0e227c7c48f72594b4
SIZE (rust/crates/jiff-static-0.2.15.crate) = 76146
-SHA256 (rust/crates/js-sys-0.3.77.crate) = 1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f
-SIZE (rust/crates/js-sys-0.3.77.crate) = 55538
+SHA256 (rust/crates/js-sys-0.3.80.crate) = 852f13bec5eba4ba9afbeb93fd7c13fe56147f055939ae21c43a29a0ecb2702e
+SIZE (rust/crates/js-sys-0.3.80.crate) = 56202
SHA256 (rust/crates/libc-0.2.175.crate) = 6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543
SIZE (rust/crates/libc-0.2.175.crate) = 788728
-SHA256 (rust/crates/linux-raw-sys-0.9.4.crate) = cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12
-SIZE (rust/crates/linux-raw-sys-0.9.4.crate) = 2311088
-SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94
-SIZE (rust/crates/log-0.4.27.crate) = 48120
+SHA256 (rust/crates/linux-raw-sys-0.11.0.crate) = df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039
+SIZE (rust/crates/linux-raw-sys-0.11.0.crate) = 2659624
+SHA256 (rust/crates/log-0.4.28.crate) = 34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432
+SIZE (rust/crates/log-0.4.28.crate) = 51131
SHA256 (rust/crates/macro_rules_attribute-0.2.2.crate) = 65049d7923698040cd0b1ddcced9b0eb14dd22c5f86ae59c3740eab64a676520
SIZE (rust/crates/macro_rules_attribute-0.2.2.crate) = 15330
SHA256 (rust/crates/macro_rules_attribute-proc_macro-0.2.2.crate) = 670fdfda89751bc4a84ac13eaa63e205cf0fd22b4c9a5fbfa085b63c1f1d3a30
@@ -143,10 +145,10 @@ SHA256 (rust/crates/miniz_oxide-0.8.9.crate) = 1fa76a2c86f704bdb222d66965fb3d632
SIZE (rust/crates/miniz_oxide-0.8.9.crate) = 67132
SHA256 (rust/crates/mio-1.0.4.crate) = 78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c
SIZE (rust/crates/mio-1.0.4.crate) = 104212
-SHA256 (rust/crates/monostate-0.1.14.crate) = aafe1be9d0c75642e3e50fedc7ecadf1ef1cbce6eb66462153fc44245343fbee
-SIZE (rust/crates/monostate-0.1.14.crate) = 15081
-SHA256 (rust/crates/monostate-impl-0.1.14.crate) = c402a4092d5e204f32c9e155431046831fa712637043c58cb73bc6bc6c9663b5
-SIZE (rust/crates/monostate-impl-0.1.14.crate) = 7754
+SHA256 (rust/crates/monostate-0.1.16.crate) = 5f766eeb5719df144c29802e56f3f7e0b3f29bd3ec8ab6c819aa1eaddec3f80c
+SIZE (rust/crates/monostate-0.1.16.crate) = 15288
+SHA256 (rust/crates/monostate-impl-0.1.16.crate) = 88d4b3dcd6ce9277a52fb05f00bf3e45d475af8cce7376de2f8d6bd065fa4adb
+SIZE (rust/crates/monostate-impl-0.1.16.crate) = 7783
SHA256 (rust/crates/ndarray-0.16.1.crate) = 882ed72dce9365842bf196bdeedf5055305f11fc8c03dee7bb0194a6cad34841
SIZE (rust/crates/ndarray-0.16.1.crate) = 291026
SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
@@ -227,18 +229,20 @@ SHA256 (rust/crates/rustc-demangle-0.1.26.crate) = 56f7d92ca342cea22a06f2121d944
SIZE (rust/crates/rustc-demangle-0.1.26.crate) = 30340
SHA256 (rust/crates/rustc-hash-2.1.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d
SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154
-SHA256 (rust/crates/rustix-1.0.8.crate) = 11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8
-SIZE (rust/crates/rustix-1.0.8.crate) = 416688
+SHA256 (rust/crates/rustix-1.1.2.crate) = cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e
+SIZE (rust/crates/rustix-1.1.2.crate) = 422717
SHA256 (rust/crates/rustversion-1.0.22.crate) = b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d
SIZE (rust/crates/rustversion-1.0.22.crate) = 21096
SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f
SIZE (rust/crates/ryu-1.0.20.crate) = 48738
-SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6
-SIZE (rust/crates/serde-1.0.219.crate) = 78983
-SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00
-SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
-SHA256 (rust/crates/serde_json-1.0.143.crate) = d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a
-SIZE (rust/crates/serde_json-1.0.143.crate) = 155342
+SHA256 (rust/crates/serde-1.0.225.crate) = fd6c24dee235d0da097043389623fb913daddf92c76e9f5a1db88607a0bcbd1d
+SIZE (rust/crates/serde-1.0.225.crate) = 28467
+SHA256 (rust/crates/serde_core-1.0.225.crate) = 659356f9a0cb1e529b24c01e43ad2bdf520ec4ceaf83047b83ddcc2251f96383
+SIZE (rust/crates/serde_core-1.0.225.crate) = 63004
+SHA256 (rust/crates/serde_derive-1.0.225.crate) = 0ea936adf78b1f766949a4977b91d2f5595825bd6ec079aa9543ad2685fc4516
+SIZE (rust/crates/serde_derive-1.0.225.crate) = 58560
+SHA256 (rust/crates/serde_json-1.0.145.crate) = 402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c
+SIZE (rust/crates/serde_json-1.0.145.crate) = 155748
SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
SIZE (rust/crates/shlex-1.3.0.crate) = 18713
SHA256 (rust/crates/signal-hook-registry-1.4.6.crate) = b2a4719bff48cee6b39d12c020eeb490953ad2443b7055bd0b21fca26bd8c28b
@@ -255,10 +259,10 @@ SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3
SIZE (rust/crates/strsim-0.11.1.crate) = 14266
SHA256 (rust/crates/syn-2.0.106.crate) = ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6
SIZE (rust/crates/syn-2.0.106.crate) = 301514
-SHA256 (rust/crates/target-lexicon-0.13.2.crate) = e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a
-SIZE (rust/crates/target-lexicon-0.13.2.crate) = 27923
-SHA256 (rust/crates/tempfile-3.21.0.crate) = 15b61f8f20e3a6f7e0649d825294eaf317edce30f82cf6026e7e4cb9222a7d1e
-SIZE (rust/crates/tempfile-3.21.0.crate) = 42581
+SHA256 (rust/crates/target-lexicon-0.13.3.crate) = df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c
+SIZE (rust/crates/target-lexicon-0.13.3.crate) = 28498
+SHA256 (rust/crates/tempfile-3.22.0.crate) = 84fa4d11fadde498443cca10fd3ac23c951f0dc59e080e9f4b93d4df4e4eea53
+SIZE (rust/crates/tempfile-3.22.0.crate) = 43044
SHA256 (rust/crates/thiserror-2.0.16.crate) = 3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0
SIZE (rust/crates/thiserror-2.0.16.crate) = 29095
SHA256 (rust/crates/thiserror-impl-2.0.16.crate) = 6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960
@@ -267,8 +271,8 @@ SHA256 (rust/crates/tokio-1.47.1.crate) = 89e49afdadebb872d3145a5638b59eb0691ea2
SIZE (rust/crates/tokio-1.47.1.crate) = 829790
SHA256 (rust/crates/tokio-macros-2.5.0.crate) = 6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8
SIZE (rust/crates/tokio-macros-2.5.0.crate) = 12617
-SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
-SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
+SHA256 (rust/crates/unicode-ident-1.0.19.crate) = f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d
+SIZE (rust/crates/unicode-ident-1.0.19.crate) = 47480
SHA256 (rust/crates/unicode-normalization-alignments-0.1.12.crate) = 43f613e4fa046e69818dd287fdc4bc78175ff20331479dab6e1b0f98d57062de
SIZE (rust/crates/unicode-normalization-alignments-0.1.12.crate) = 91546
SHA256 (rust/crates/unicode-segmentation-1.12.0.crate) = f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493
@@ -285,26 +289,32 @@ SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853a
SIZE (rust/crates/version_check-0.9.5.crate) = 15554
SHA256 (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b
SIZE (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = 28477
-SHA256 (rust/crates/wasi-0.14.3+wasi-0.2.4.crate) = 6a51ae83037bdd272a9e28ce236db8c07016dd0d50c27038b3f407533c030c95
-SIZE (rust/crates/wasi-0.14.3+wasi-0.2.4.crate) = 144010
-SHA256 (rust/crates/wasm-bindgen-0.2.100.crate) = 1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5
-SIZE (rust/crates/wasm-bindgen-0.2.100.crate) = 48288
-SHA256 (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6
-SIZE (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 32111
-SHA256 (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407
-SIZE (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 9663
-SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de
-SIZE (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 26243
-SHA256 (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d
-SIZE (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 8570
+SHA256 (rust/crates/wasi-0.14.7+wasi-0.2.4.crate) = 883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c
+SIZE (rust/crates/wasi-0.14.7+wasi-0.2.4.crate) = 18219
+SHA256 (rust/crates/wasip2-1.0.1+wasi-0.2.4.crate) = 0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7
+SIZE (rust/crates/wasip2-1.0.1+wasi-0.2.4.crate) = 132087
+SHA256 (rust/crates/wasm-bindgen-0.2.103.crate) = ab10a69fbd0a177f5f649ad4d8d3305499c42bab9aef2f7ff592d0ec8f833819
+SIZE (rust/crates/wasm-bindgen-0.2.103.crate) = 47309
+SHA256 (rust/crates/wasm-bindgen-backend-0.2.103.crate) = 0bb702423545a6007bbc368fde243ba47ca275e549c8a28617f56f6ba53b1d1c
+SIZE (rust/crates/wasm-bindgen-backend-0.2.103.crate) = 32238
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.103.crate) = fc65f4f411d91494355917b605e1480033152658d71f722a90647f56a70c88a0
+SIZE (rust/crates/wasm-bindgen-macro-0.2.103.crate) = 9382
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.103.crate) = ffc003a991398a8ee604a401e194b6b3a39677b3173d6e74495eb51b82e99a32
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.103.crate) = 26418
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.103.crate) = 293c37f4efa430ca14db3721dfbe48d8c33308096bd44d80ebaa775ab71ba1cf
+SIZE (rust/crates/wasm-bindgen-shared-0.2.103.crate) = 9060
SHA256 (rust/crates/web-time-1.1.0.crate) = 5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb
SIZE (rust/crates/web-time-1.1.0.crate) = 18026
SHA256 (rust/crates/windows-link-0.1.3.crate) = 5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a
SIZE (rust/crates/windows-link-0.1.3.crate) = 6154
+SHA256 (rust/crates/windows-link-0.2.0.crate) = 45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65
+SIZE (rust/crates/windows-link-0.2.0.crate) = 6170
SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
SHA256 (rust/crates/windows-sys-0.60.2.crate) = f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb
SIZE (rust/crates/windows-sys-0.60.2.crate) = 2518479
+SHA256 (rust/crates/windows-sys-0.61.0.crate) = e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa
+SIZE (rust/crates/windows-sys-0.61.0.crate) = 2517134
SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
SHA256 (rust/crates/windows-targets-0.53.3.crate) = d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91
@@ -341,9 +351,9 @@ SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
SHA256 (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486
SIZE (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 834400
-SHA256 (rust/crates/wit-bindgen-0.45.0.crate) = 052283831dbae3d879dc7f51f3d92703a316ca49f91540417d38591826127814
-SIZE (rust/crates/wit-bindgen-0.45.0.crate) = 60405
-SHA256 (rust/crates/zerocopy-0.8.26.crate) = 1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f
-SIZE (rust/crates/zerocopy-0.8.26.crate) = 249223
-SHA256 (rust/crates/zerocopy-derive-0.8.26.crate) = 9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181
-SIZE (rust/crates/zerocopy-derive-0.8.26.crate) = 88080
+SHA256 (rust/crates/wit-bindgen-0.46.0.crate) = f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59
+SIZE (rust/crates/wit-bindgen-0.46.0.crate) = 60508
+SHA256 (rust/crates/zerocopy-0.8.27.crate) = 0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c
+SIZE (rust/crates/zerocopy-0.8.27.crate) = 252663
+SHA256 (rust/crates/zerocopy-derive-0.8.27.crate) = 88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831
+SIZE (rust/crates/zerocopy-derive-0.8.27.crate) = 89827
diff --git a/textproc/py-toronado/Makefile b/textproc/py-toronado/Makefile
index 86913adce597..4fc875d49174 100644
--- a/textproc/py-toronado/Makefile
+++ b/textproc/py-toronado/Makefile
@@ -1,6 +1,6 @@
PORTNAME= toronado
PORTVERSION= 0.1.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc www python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +13,7 @@ LICENSE= APACHE20
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cssselect>=0:www/py-cssselect@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}cssutils>=0:www/py-cssutils@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml5>=0:devel/py-lxml5@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent distutils
diff --git a/textproc/py-tree-sitter-language-pack/Makefile b/textproc/py-tree-sitter-language-pack/Makefile
new file mode 100644
index 000000000000..1f8b50a300d5
--- /dev/null
+++ b/textproc/py-tree-sitter-language-pack/Makefile
@@ -0,0 +1,28 @@
+PORTNAME= tree-sitter-language-pack
+DISTVERSION= 0.9.1
+CATEGORIES= textproc python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+DISTNAME= ${PORTNAME:S/-/_/g}-${PORTVERSION}
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Tree-sitter: Collection of 160+ tree-sitter language parsers
+WWW= https://github.com/Goldziher/tree-sitter-language-pack
+
+LICENSE= APACHE20
+
+BUILD_DEPENDS= ${PY_SETUPTOOLS} \
+ ${PYTHON_PKGNAMEPREFIX}typing-extensions>0:devel/py-typing-extensions@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}tree-sitter023==0.23.2:devel/py-tree-sitter023@${PY_FLAVOR}
+
+USES= python
+USE_PYTHON= pep517 cython3 autoplist pytest
+
+TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
+TEST_WRKSRC= ${WRKSRC}/tests
+
+post-install:
+ @${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} +
+
+.include <bsd.port.mk>
diff --git a/textproc/py-tree-sitter-language-pack/distinfo b/textproc/py-tree-sitter-language-pack/distinfo
new file mode 100644
index 000000000000..975ee711c618
--- /dev/null
+++ b/textproc/py-tree-sitter-language-pack/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1758702264
+SHA256 (tree_sitter_language_pack-0.9.1.tar.gz) = 2da539751ecc50b9e6bbfca38b57501a3c55e67186a939d5bf149d9cb7220974
+SIZE (tree_sitter_language_pack-0.9.1.tar.gz) = 49489962
diff --git a/textproc/py-tree-sitter-language-pack/files/patch-pyproject.toml b/textproc/py-tree-sitter-language-pack/files/patch-pyproject.toml
new file mode 100644
index 000000000000..c87baf8b1e95
--- /dev/null
+++ b/textproc/py-tree-sitter-language-pack/files/patch-pyproject.toml
@@ -0,0 +1,35 @@
+- adjust version requirements
+- remove "unimportant" tree-sitter-* dependencies that aren't yet ported
+
+--- pyproject.toml.orig 2025-09-23 06:46:36 UTC
++++ pyproject.toml
+@@ -1,7 +1,7 @@ build-backend = "setuptools.build_meta"
+ [build-system]
+ build-backend = "setuptools.build_meta"
+
+-requires = [ "cython>=3.0.12", "setuptools>=80.9.0", "typing-extensions>=4.15.0" ]
++requires = [ "cython", "setuptools", "typing-extensions>=4.15.0" ]
+
+ [project]
+ name = "tree-sitter-language-pack"
+@@ -17,7 +17,6 @@ keywords = [
+ "text-processing",
+ "tree-sitter",
+ ]
+-license = "MIT OR Apache-2.0"
+
+ authors = [ { name = "Na'aman Hirschfeld", email = "nhirschfeld@gmail.com" } ]
+ requires-python = ">=3.9.0"
+@@ -37,9 +36,9 @@ dependencies = [
+ ]
+ dependencies = [
+ "tree-sitter==0.23.2",
+- "tree-sitter-c-sharp==0.23.1",
+- "tree-sitter-embedded-template==0.23.2",
+- "tree-sitter-yaml==0.7.0",
++ #"tree-sitter-c-sharp==0.23.1",
++ #"tree-sitter-embedded-template==0.23.2",
++ #"tree-sitter-yaml==0.7.0",
+ ]
+
+ urls.documentation = "https://github.com/Goldziher/tree-sitter-language-pack#readme"
diff --git a/textproc/py-tree-sitter-language-pack/files/patch-setup.py b/textproc/py-tree-sitter-language-pack/files/patch-setup.py
new file mode 100644
index 000000000000..815327e24373
--- /dev/null
+++ b/textproc/py-tree-sitter-language-pack/files/patch-setup.py
@@ -0,0 +1,50 @@
+--- setup.py.orig 2025-09-24 08:43:32 UTC
++++ setup.py
+@@ -4,7 +4,7 @@ from setuptools import Extension, find_packages, setup
+ from platform import system
+
+ from setuptools import Extension, find_packages, setup
+-from setuptools.command.bdist_wheel import bdist_wheel
++#from setuptools.command.bdist_wheel import bdist_wheel
+ from setuptools.command.build_ext import build_ext
+
+ MIN_PYTHON_VERSION = 39
+@@ -99,19 +99,19 @@ class BuildExt(build_ext):
+ super().build_extension(ext)
+
+
+-class BdistWheel(bdist_wheel):
+- """Custom bdist_wheel command to handle Python 3.9+ ABI tag."""
++#class BdistWheel(bdist_wheel):
++# """Custom bdist_wheel command to handle Python 3.9+ ABI tag."""
++#
++# def get_tag(self) -> tuple[str, str, str]:
++# """Get the tag for the wheel."""
++# python, abi, platform = super().get_tag()
++# platform = platform.replace("linux", "manylinux2014")
++# if python.startswith("cp") and int(python[2:]) >= MIN_PYTHON_VERSION:
++# # Support all Python versions >= 3.9 using abi3
++# return "cp39", "abi3", platform
++# return python, abi, platform
+
+- def get_tag(self) -> tuple[str, str, str]:
+- """Get the tag for the wheel."""
+- python, abi, platform = super().get_tag()
+- platform = platform.replace("linux", "manylinux2014")
+- if python.startswith("cp") and int(python[2:]) >= MIN_PYTHON_VERSION:
+- # Support all Python versions >= 3.9 using abi3
+- return "cp39", "abi3", platform
+- return python, abi, platform
+
+-
+ setup(
+ packages=find_packages(include=["tree_sitter_language_pack", "tree_sitter_language_pack.bindings"]),
+ package_data={"tree_sitter_language_pack": ["py.typed"]},
+@@ -120,7 +120,6 @@ setup(
+ include_package_data=True,
+ cmdclass={
+ "build_ext": BuildExt,
+- "bdist_wheel": BdistWheel,
+ },
+ options={"build_ext": {"inplace": True}},
+ )
diff --git a/textproc/py-tree-sitter-language-pack/files/patch-tree__sitter__language__pack_____init____.py b/textproc/py-tree-sitter-language-pack/files/patch-tree__sitter__language__pack_____init____.py
new file mode 100644
index 000000000000..caef2a8a713b
--- /dev/null
+++ b/textproc/py-tree-sitter-language-pack/files/patch-tree__sitter__language__pack_____init____.py
@@ -0,0 +1,39 @@
+--- tree_sitter_language_pack/__init__.py.orig 2025-09-23 06:46:36 UTC
++++ tree_sitter_language_pack/__init__.py
+@@ -6,9 +6,9 @@ from typing import Literal, cast
+ from pathlib import Path
+ from typing import Literal, cast
+
+-import tree_sitter_c_sharp
+-import tree_sitter_embedded_template
+-import tree_sitter_yaml
++#import tree_sitter_c_sharp
++#import tree_sitter_embedded_template
++#import tree_sitter_yaml
+ from tree_sitter import Language, Parser
+
+ SupportedLanguage = Literal[
+@@ -35,7 +35,6 @@ SupportedLanguage = Literal[
+ "commonlisp",
+ "cpon",
+ "cpp",
+- "csharp",
+ "css",
+ "csv",
+ "cuda",
+@@ -47,7 +46,6 @@ SupportedLanguage = Literal[
+ "elisp",
+ "elixir",
+ "elm",
+- "embeddedtemplate",
+ "erlang",
+ "fennel",
+ "firrtl",
+@@ -179,7 +177,6 @@ SupportedLanguage = Literal[
+ "wgsl",
+ "xcompose",
+ "xml",
+- "yaml",
+ "yuck",
+ "zig",
+ "magik",
diff --git a/textproc/py-tree-sitter-language-pack/pkg-descr b/textproc/py-tree-sitter-language-pack/pkg-descr
new file mode 100644
index 000000000000..5258a36730f1
--- /dev/null
+++ b/textproc/py-tree-sitter-language-pack/pkg-descr
@@ -0,0 +1,2 @@
+py-tree-sitter-language-pack contains a comprehensive collection of 160+
+tree-sitter language parsers.
diff --git a/textproc/py-xmldiff/Makefile b/textproc/py-xmldiff/Makefile
index 8939e60c1078..210c2ffd9dba 100644
--- a/textproc/py-xmldiff/Makefile
+++ b/textproc/py-xmldiff/Makefile
@@ -1,6 +1,6 @@
PORTNAME= xmldiff
PORTVERSION= 2.7.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -14,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=3.1.0:devel/py-lxml5@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=3.1.0:devel/py-lxml@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist concurrent pep517
diff --git a/textproc/qrcodegen/Makefile b/textproc/qrcodegen/Makefile
index 01ee8de5482c..d46f6364a54f 100644
--- a/textproc/qrcodegen/Makefile
+++ b/textproc/qrcodegen/Makefile
@@ -1,42 +1,37 @@
PORTNAME= qrcodegen
-PORTVERSION= 1.14.2
-PORTREVISION= 1
+DISTVERSION= 1.14.2
+PORTREVISION= 2
CATEGORIES= textproc java
MASTER_SITES= http://bsd-geek.de/FreeBSD/distfiles/
-DISTNAME= ${PORTNAME}_${PORTVERSION}
+DISTNAME= ${PORTNAME}_${DISTVERSION}
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= kevinz5000@gmail.com
COMMENT= GUI to generate QR codes
WWW= https://sites.google.com/site/qrcodeforwn/home/qr-code-generator-for-wireless-networks
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= java zip:infozip
-
+USES= java zip
+JAVA_VERSION= 8
+
+DESKTOP_ENTRIES= "Portable QR-Code Generator" \
+ "${COMMENT}" \
+ "" \
+ "${PORTNAME}" \
+ "Utility;2DGraphics;Java;" \
+ false
+EXTRACT_BEFORE_ARGS= -jqo
+EXTRACT_AFTER_ARGS= -d ${WRKSRC}
NO_ARCH= yes
NO_BUILD= yes
-SUB_FILES= qrcodegen
+SUB_FILES= ${PORTNAME}
INSTALLFILES= FAQ.txt Installation.txt NOTICE QRCodeGen.jar Version.html
-DESKTOP_ENTRIES="Portable QR-Code Generator" \
- "${COMMENT}" \
- "" \
- "qrcodegen" \
- "Utility;2DGraphics;Java;" \
- false
-
-do-extract:
- @${RM} -r ${WRKDIR}
- @${MKDIR} ${WRKSRC}
- @${UNZIP_CMD} -q -j -d ${WRKSRC} ${DISTDIR}/${EXTRACT_ONLY}
-
do-install:
- @${MKDIR} ${STAGEDIR}${DATADIR}
-.for i in ${INSTALLFILES}
- ${INSTALL_DATA} ${WRKSRC}/${i} ${STAGEDIR}${DATADIR}/
-.endfor
- ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/
+ ${MKDIR} ${STAGEDIR}${DATADIR}
+ ${INSTALL_DATA} ${INSTALLFILES:C|^|${WRKSRC}/|} ${STAGEDIR}${DATADIR}
+ ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
.include <bsd.port.mk>
diff --git a/textproc/qrcodegen/files/qrcodegen.in b/textproc/qrcodegen/files/qrcodegen.in
index 05eadc249d9a..4d7042557b37 100644
--- a/textproc/qrcodegen/files/qrcodegen.in
+++ b/textproc/qrcodegen/files/qrcodegen.in
@@ -1,5 +1,6 @@
#!/bin/sh
cd %%DATADIR%%
+export JAVA_VERSION="%%JAVA_VERSION%%"
exec %%LOCALBASE%%/bin/java -jar QRCodeGen.jar "$@"
diff --git a/textproc/riffdiff/Makefile b/textproc/riffdiff/Makefile
index af5d004dd022..898ee7b59e54 100644
--- a/textproc/riffdiff/Makefile
+++ b/textproc/riffdiff/Makefile
@@ -1,6 +1,5 @@
PORTNAME= riffdiff
-DISTVERSION= 3.4.0
-PORTREVISION= 1
+DISTVERSION= 3.4.1
CATEGORIES= textproc
MAINTAINER= yuri@FreeBSD.org
diff --git a/textproc/riffdiff/distinfo b/textproc/riffdiff/distinfo
index 2ce1c355a6e3..0cbf546b5803 100644
--- a/textproc/riffdiff/distinfo
+++ b/textproc/riffdiff/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1753124376
+TIMESTAMP = 1758123882
SHA256 (rust/crates/addr2line-0.14.0.crate) = 7c0929d69e78dd9bf5408269919fcbcaeb2e35e5d43e5815517cdc6a8e11a423
SIZE (rust/crates/addr2line-0.14.0.crate) = 30065
SHA256 (rust/crates/adler-0.2.3.crate) = ee2a4ec343196209d6594e19543ae87a39f96d5534d7174822a3ad825dd6ed7e
@@ -247,5 +247,5 @@ SHA256 (rust/crates/zerovec-0.11.2.crate) = 4a05eb080e015ba39cc9e23bbe5e7fb04d5f
SIZE (rust/crates/zerovec-0.11.2.crate) = 124500
SHA256 (rust/crates/zerovec-derive-0.11.1.crate) = 5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f
SIZE (rust/crates/zerovec-derive-0.11.1.crate) = 21294
-SHA256 (walles-riff-3.4.0_GH0.tar.gz) = ac1b973ab3dc0386f59c1b92bb509eab762d1524781c5e60e1208cfce70966e4
-SIZE (walles-riff-3.4.0_GH0.tar.gz) = 2074194
+SHA256 (walles-riff-3.4.1_GH0.tar.gz) = d209e5b5a68907382cc91061d2e0570789293214b402c1b344008760fe298302
+SIZE (walles-riff-3.4.1_GH0.tar.gz) = 2074368
diff --git a/textproc/rubygem-actiontext71/Makefile b/textproc/rubygem-actiontext71/Makefile
index b7d2130655a2..bf5fdeaf1e4d 100644
--- a/textproc/rubygem-actiontext71/Makefile
+++ b/textproc/rubygem-actiontext71/Makefile
@@ -1,5 +1,5 @@
PORTNAME= actiontext
-PORTVERSION= 7.1.5.1
+PORTVERSION= 7.1.5.2
CATEGORIES= textproc rubygems
MASTER_SITES= RG
PKGNAMESUFFIX= 71
diff --git a/textproc/rubygem-actiontext71/distinfo b/textproc/rubygem-actiontext71/distinfo
index 6576322b2ce1..328f7fe06a86 100644
--- a/textproc/rubygem-actiontext71/distinfo
+++ b/textproc/rubygem-actiontext71/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1734888820
-SHA256 (rubygem/actiontext-7.1.5.1.gem) = b8e261cfad5bc6a78b3f15be5e7c7f32190041b3dc6f027a3a353b4392d2f7ec
-SIZE (rubygem/actiontext-7.1.5.1.gem) = 137216
+TIMESTAMP = 1757121966
+SHA256 (rubygem/actiontext-7.1.5.2.gem) = 505678e4611762cb68e9c05bc5776ce5977415beed2fbabdd0ed110c63390207
+SIZE (rubygem/actiontext-7.1.5.2.gem) = 137216
diff --git a/textproc/rubygem-actiontext72/Makefile b/textproc/rubygem-actiontext72/Makefile
index 30e51d202acf..e518782c43b5 100644
--- a/textproc/rubygem-actiontext72/Makefile
+++ b/textproc/rubygem-actiontext72/Makefile
@@ -1,5 +1,5 @@
PORTNAME= actiontext
-PORTVERSION= 7.2.2.1
+PORTVERSION= 7.2.2.2
CATEGORIES= textproc rubygems
MASTER_SITES= RG
PKGNAMESUFFIX= 72
diff --git a/textproc/rubygem-actiontext72/distinfo b/textproc/rubygem-actiontext72/distinfo
index b2f0a0ae171c..eaf70827840b 100644
--- a/textproc/rubygem-actiontext72/distinfo
+++ b/textproc/rubygem-actiontext72/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1734888846
-SHA256 (rubygem/actiontext-7.2.2.1.gem) = f369cee41a6674b697bf9257d917a3dce575a2c89935af437b432d6737a3f0d6
-SIZE (rubygem/actiontext-7.2.2.1.gem) = 137216
+TIMESTAMP = 1757121992
+SHA256 (rubygem/actiontext-7.2.2.2.gem) = 8e80623cf206f077f4b671846ba74b0cb154b2a306a6569d3c4b3deb22e2b701
+SIZE (rubygem/actiontext-7.2.2.2.gem) = 137216
diff --git a/textproc/rubygem-actiontext80/Makefile b/textproc/rubygem-actiontext80/Makefile
index 37f6cbc75fba..75a7fb1a5a78 100644
--- a/textproc/rubygem-actiontext80/Makefile
+++ b/textproc/rubygem-actiontext80/Makefile
@@ -1,5 +1,5 @@
PORTNAME= actiontext
-PORTVERSION= 8.0.2
+PORTVERSION= 8.0.2.1
CATEGORIES= textproc rubygems
MASTER_SITES= RG
PKGNAMESUFFIX= 80
diff --git a/textproc/rubygem-actiontext80/distinfo b/textproc/rubygem-actiontext80/distinfo
index 93ab70f568e0..7cf8fbb4a72c 100644
--- a/textproc/rubygem-actiontext80/distinfo
+++ b/textproc/rubygem-actiontext80/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1742070794
-SHA256 (rubygem/actiontext-8.0.2.gem) = a40db32032ee2fbb479d5d69318c4284344c1cda73836fd73ffcdb917d203abf
-SIZE (rubygem/actiontext-8.0.2.gem) = 141824
+TIMESTAMP = 1757122018
+SHA256 (rubygem/actiontext-8.0.2.1.gem) = 0cc4b3b5cfb9d915c6697b05b013dad7f4eaf074d9989700b6a0a55cf620d6b8
+SIZE (rubygem/actiontext-8.0.2.1.gem) = 141824
diff --git a/textproc/rubygem-asciidoctor-pdf/Makefile b/textproc/rubygem-asciidoctor-pdf/Makefile
index 5a621dd08beb..6cc7d285371d 100644
--- a/textproc/rubygem-asciidoctor-pdf/Makefile
+++ b/textproc/rubygem-asciidoctor-pdf/Makefile
@@ -1,6 +1,6 @@
PORTNAME= asciidoctor-pdf
PORTVERSION= 2.3.19
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc rubygems
MASTER_SITES= RG
@@ -17,7 +17,7 @@ RUN_DEPENDS= rubygem-asciidoctor>=2.0<3:textproc/rubygem-asciidoctor \
rubygem-matrix>=0.4<1:math/rubygem-matrix \
rubygem-prawn24>=2.4.0<2.5:print/rubygem-prawn24 \
rubygem-prawn-icon3>=3.1.0<3.2:print/rubygem-prawn-icon3 \
- rubygem-prawn-svg>=0.36.1<0.37:print/rubygem-prawn-svg \
+ rubygem-prawn-svg036>=0.36.1<0.37:print/rubygem-prawn-svg036 \
rubygem-prawn-table>=0.2.0<0.3:print/rubygem-prawn-table \
rubygem-prawn-templates>=0.1.0<0.2:print/rubygem-prawn-templates \
rubygem-treetop>=1.6.0<1.7:devel/rubygem-treetop \
diff --git a/textproc/rubygem-commonmarker/Makefile b/textproc/rubygem-commonmarker/Makefile
index b362dbfe5c8d..b19327467805 100644
--- a/textproc/rubygem-commonmarker/Makefile
+++ b/textproc/rubygem-commonmarker/Makefile
@@ -1,6 +1,5 @@
PORTNAME= commonmarker
-PORTVERSION= 2.3.1
-PORTREVISION= 2
+PORTVERSION= 2.3.2
CATEGORIES= textproc rubygems
MASTER_SITES= RG
DISTFILES= ${DISTNAME}.gem
diff --git a/textproc/rubygem-commonmarker/Makefile.crates b/textproc/rubygem-commonmarker/Makefile.crates
index 938de0009d71..326f3a4d0fc1 100644
--- a/textproc/rubygem-commonmarker/Makefile.crates
+++ b/textproc/rubygem-commonmarker/Makefile.crates
@@ -1,131 +1,143 @@
-CARGO_CRATES= adler2-2.0.0 \
+CARGO_CRATES= adler2-2.0.1 \
aho-corasick-1.1.3 \
- anstream-0.6.18 \
- anstyle-1.0.10 \
- anstyle-parse-0.2.6 \
- anstyle-query-1.1.2 \
- anstyle-wincon-3.0.6 \
+ anstream-0.6.19 \
+ anstyle-1.0.11 \
+ anstyle-parse-0.2.7 \
+ anstyle-query-1.1.3 \
+ anstyle-wincon-3.0.9 \
base64-0.22.1 \
bincode-1.3.3 \
bindgen-0.69.5 \
bit-set-0.5.3 \
bit-vec-0.6.3 \
bitflags-1.3.2 \
- bitflags-2.6.0 \
- bon-3.3.2 \
- bon-macros-3.3.2 \
- bumpalo-3.16.0 \
- caseless-0.2.1 \
- cc-1.2.6 \
+ bitflags-2.9.1 \
+ bon-3.6.5 \
+ bon-macros-3.6.5 \
+ bumpalo-3.19.0 \
+ caseless-0.2.2 \
+ cc-1.2.31 \
cexpr-0.6.0 \
- cfg-if-1.0.0 \
+ cfg-if-1.0.1 \
clang-sys-1.8.1 \
- clap-4.5.23 \
- clap_builder-4.5.23 \
- clap_derive-4.5.18 \
- clap_lex-0.7.4 \
- colorchoice-1.0.3 \
- comrak-0.39.1 \
- crc32fast-1.4.2 \
- darling-0.20.10 \
- darling_core-0.20.10 \
- darling_macro-0.20.10 \
- deranged-0.3.11 \
- deunicode-1.6.0 \
- either-1.13.0 \
+ clap-4.5.42 \
+ clap_builder-4.5.42 \
+ clap_derive-4.5.41 \
+ clap_lex-0.7.5 \
+ colorchoice-1.0.4 \
+ comrak-0.41.0 \
+ crc32fast-1.5.0 \
+ darling-0.21.1 \
+ darling_core-0.21.1 \
+ darling_macro-0.21.1 \
+ deranged-0.4.0 \
+ deunicode-1.6.2 \
+ either-1.15.0 \
emojis-0.6.4 \
entities-1.0.1 \
- equivalent-1.0.1 \
- errno-0.3.10 \
+ equivalent-1.0.2 \
+ errno-0.3.13 \
fancy-regex-0.11.0 \
- flate2-1.0.35 \
+ flate2-1.1.2 \
fnv-1.0.7 \
glob-0.3.2 \
- hashbrown-0.15.2 \
+ hashbrown-0.15.4 \
heck-0.5.0 \
ident_case-1.0.1 \
- indexmap-2.7.0 \
+ indexmap-2.10.0 \
is_terminal_polyfill-1.70.1 \
itertools-0.12.1 \
- itoa-1.0.14 \
+ itoa-1.0.15 \
lazy_static-1.5.0 \
lazycell-1.3.0 \
- libc-0.2.169 \
- libloading-0.8.6 \
+ libc-0.2.174 \
+ libloading-0.8.8 \
linked-hash-map-0.5.6 \
- linux-raw-sys-0.4.14 \
- log-0.4.22 \
+ linux-raw-sys-0.9.4 \
+ log-0.4.27 \
magnus-0.7.1 \
magnus-macros-0.6.0 \
- memchr-2.7.4 \
+ memchr-2.7.5 \
minimal-lexical-0.2.1 \
- miniz_oxide-0.8.2 \
+ miniz_oxide-0.8.9 \
nom-7.1.3 \
num-conv-0.1.0 \
- once_cell-1.20.2 \
- onig-6.4.0 \
- onig_sys-69.8.1 \
- phf-0.11.2 \
- phf_shared-0.11.2 \
- pkg-config-0.3.31 \
- plist-1.7.0 \
+ once_cell-1.21.3 \
+ once_cell_polyfill-1.70.1 \
+ onig-6.5.1 \
+ onig_sys-69.9.1 \
+ phf-0.11.3 \
+ phf_shared-0.11.3 \
+ pkg-config-0.3.32 \
+ plist-1.7.4 \
powerfmt-0.2.0 \
- prettyplease-0.2.25 \
- proc-macro2-1.0.92 \
- quick-xml-0.32.0 \
- quote-1.0.38 \
- rb-sys-0.9.114 \
- rb-sys-build-0.9.114 \
+ prettyplease-0.2.36 \
+ proc-macro2-1.0.95 \
+ quick-xml-0.38.1 \
+ quote-1.0.40 \
+ rb-sys-0.9.117 \
+ rb-sys-build-0.9.117 \
rb-sys-env-0.1.2 \
rctree-0.6.0 \
regex-1.11.1 \
regex-automata-0.4.9 \
regex-syntax-0.8.5 \
rustc-hash-1.1.0 \
- rustix-0.38.42 \
- rustversion-1.0.19 \
- ryu-1.0.18 \
+ rustix-1.0.8 \
+ rustversion-1.0.21 \
+ ryu-1.0.20 \
same-file-1.0.6 \
- seq-macro-0.3.5 \
- serde-1.0.217 \
- serde_derive-1.0.217 \
- serde_json-1.0.134 \
+ seq-macro-0.3.6 \
+ serde-1.0.219 \
+ serde_derive-1.0.219 \
+ serde_json-1.0.142 \
shell-words-1.1.0 \
shlex-1.3.0 \
- siphasher-0.3.11 \
+ siphasher-1.0.1 \
slug-0.1.6 \
strsim-0.11.1 \
- syn-2.0.93 \
+ syn-2.0.104 \
syntect-5.2.0 \
- terminal_size-0.4.1 \
+ terminal_size-0.4.2 \
thiserror-1.0.69 \
thiserror-impl-1.0.69 \
- time-0.3.37 \
- time-core-0.1.2 \
- time-macros-0.2.19 \
- tinyvec-1.8.1 \
+ time-0.3.41 \
+ time-core-0.1.4 \
+ time-macros-0.2.22 \
+ tinyvec-1.9.0 \
tinyvec_macros-0.1.1 \
typed-arena-2.0.2 \
- unicode-ident-1.0.14 \
+ unicode-ident-1.0.18 \
unicode-normalization-0.1.24 \
unicode_categories-0.1.1 \
utf8parse-0.2.2 \
walkdir-2.5.0 \
- wasm-bindgen-0.2.99 \
- wasm-bindgen-backend-0.2.99 \
- wasm-bindgen-macro-0.2.99 \
- wasm-bindgen-macro-support-0.2.99 \
- wasm-bindgen-shared-0.2.99 \
+ wasm-bindgen-0.2.100 \
+ wasm-bindgen-backend-0.2.100 \
+ wasm-bindgen-macro-0.2.100 \
+ wasm-bindgen-macro-support-0.2.100 \
+ wasm-bindgen-shared-0.2.100 \
winapi-util-0.1.9 \
+ windows-link-0.1.3 \
windows-sys-0.59.0 \
+ windows-sys-0.60.2 \
windows-targets-0.52.6 \
+ windows-targets-0.53.3 \
windows_aarch64_gnullvm-0.52.6 \
+ windows_aarch64_gnullvm-0.53.0 \
windows_aarch64_msvc-0.52.6 \
+ windows_aarch64_msvc-0.53.0 \
windows_i686_gnu-0.52.6 \
+ windows_i686_gnu-0.53.0 \
windows_i686_gnullvm-0.52.6 \
+ windows_i686_gnullvm-0.53.0 \
windows_i686_msvc-0.52.6 \
+ windows_i686_msvc-0.53.0 \
windows_x86_64_gnu-0.52.6 \
+ windows_x86_64_gnu-0.53.0 \
windows_x86_64_gnullvm-0.52.6 \
+ windows_x86_64_gnullvm-0.53.0 \
windows_x86_64_msvc-0.52.6 \
+ windows_x86_64_msvc-0.53.0 \
xdg-2.5.2 \
yaml-rust-0.4.5
diff --git a/textproc/rubygem-commonmarker/distinfo b/textproc/rubygem-commonmarker/distinfo
index 0be57d1defab..154fcc2ed811 100644
--- a/textproc/rubygem-commonmarker/distinfo
+++ b/textproc/rubygem-commonmarker/distinfo
@@ -1,20 +1,20 @@
-TIMESTAMP = 1751208234
-SHA256 (commonmarker-2.3.1.gem) = 8943ef0731a4205765b1ab8f25a7a9b9f62acb28b0054c7d60f06720a23cadc7
-SIZE (commonmarker-2.3.1.gem) = 31744
-SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
-SIZE (rust/crates/adler2-2.0.0.crate) = 13529
+TIMESTAMP = 1757121868
+SHA256 (commonmarker-2.3.2.gem) = bf84e3735f4e5ce08125aa93689a8cda4c811579743916249322d95c2f1ce711
+SIZE (commonmarker-2.3.2.gem) = 32256
+SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa
+SIZE (rust/crates/adler2-2.0.1.crate) = 13366
SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916
SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311
-SHA256 (rust/crates/anstream-0.6.18.crate) = 8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b
-SIZE (rust/crates/anstream-0.6.18.crate) = 29681
-SHA256 (rust/crates/anstyle-1.0.10.crate) = 55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9
-SIZE (rust/crates/anstyle-1.0.10.crate) = 15725
-SHA256 (rust/crates/anstyle-parse-0.2.6.crate) = 3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9
-SIZE (rust/crates/anstyle-parse-0.2.6.crate) = 22343
-SHA256 (rust/crates/anstyle-query-1.1.2.crate) = 79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c
-SIZE (rust/crates/anstyle-query-1.1.2.crate) = 9969
-SHA256 (rust/crates/anstyle-wincon-3.0.6.crate) = 2109dbce0e72be3ec00bed26e6a7479ca384ad226efdd66db8fa2e3a38c83125
-SIZE (rust/crates/anstyle-wincon-3.0.6.crate) = 12271
+SHA256 (rust/crates/anstream-0.6.19.crate) = 301af1932e46185686725e0fad2f8f2aa7da69dd70bf6ecc44d6b703844a3933
+SIZE (rust/crates/anstream-0.6.19.crate) = 28767
+SHA256 (rust/crates/anstyle-1.0.11.crate) = 862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd
+SIZE (rust/crates/anstyle-1.0.11.crate) = 15880
+SHA256 (rust/crates/anstyle-parse-0.2.7.crate) = 4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2
+SIZE (rust/crates/anstyle-parse-0.2.7.crate) = 21707
+SHA256 (rust/crates/anstyle-query-1.1.3.crate) = 6c8bdeb6047d8983be085bab0ba1472e6dc604e7041dbf6fcd5e71523014fae9
+SIZE (rust/crates/anstyle-query-1.1.3.crate) = 10190
+SHA256 (rust/crates/anstyle-wincon-3.0.9.crate) = 403f75924867bb1033c59fbf0797484329750cfbe3c4325cd33127941fabc882
+SIZE (rust/crates/anstyle-wincon-3.0.9.crate) = 12561
SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6
SIZE (rust/crates/base64-0.22.1.crate) = 81597
SHA256 (rust/crates/bincode-1.3.3.crate) = b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad
@@ -27,136 +27,138 @@ SHA256 (rust/crates/bit-vec-0.6.3.crate) = 349f9b6a179ed607305526ca489b34ad0a41a
SIZE (rust/crates/bit-vec-0.6.3.crate) = 19927
SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
-SHA256 (rust/crates/bitflags-2.6.0.crate) = b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de
-SIZE (rust/crates/bitflags-2.6.0.crate) = 45357
-SHA256 (rust/crates/bon-3.3.2.crate) = fe7acc34ff59877422326db7d6f2d845a582b16396b6b08194942bf34c6528ab
-SIZE (rust/crates/bon-3.3.2.crate) = 48519
-SHA256 (rust/crates/bon-macros-3.3.2.crate) = 4159dd617a7fbc9be6a692fe69dc2954f8e6bb6bb5e4d7578467441390d77fd0
-SIZE (rust/crates/bon-macros-3.3.2.crate) = 78732
-SHA256 (rust/crates/bumpalo-3.16.0.crate) = 79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c
-SIZE (rust/crates/bumpalo-3.16.0.crate) = 85677
-SHA256 (rust/crates/caseless-0.2.1.crate) = 808dab3318747be122cb31d36de18d4d1c81277a76f8332a02b81a3d73463d7f
-SIZE (rust/crates/caseless-0.2.1.crate) = 18826
-SHA256 (rust/crates/cc-1.2.6.crate) = 8d6dbb628b8f8555f86d0323c2eb39e3ec81901f4b83e091db8a6a76d316a333
-SIZE (rust/crates/cc-1.2.6.crate) = 99923
+SHA256 (rust/crates/bitflags-2.9.1.crate) = 1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967
+SIZE (rust/crates/bitflags-2.9.1.crate) = 47913
+SHA256 (rust/crates/bon-3.6.5.crate) = 33d9ef19ae5263a138da9a86871eca537478ab0332a7770bac7e3f08b801f89f
+SIZE (rust/crates/bon-3.6.5.crate) = 58611
+SHA256 (rust/crates/bon-macros-3.6.5.crate) = 577ae008f2ca11ca7641bd44601002ee5ab49ef0af64846ce1ab6057218a5cc1
+SIZE (rust/crates/bon-macros-3.6.5.crate) = 86123
+SHA256 (rust/crates/bumpalo-3.19.0.crate) = 46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43
+SIZE (rust/crates/bumpalo-3.19.0.crate) = 96414
+SHA256 (rust/crates/caseless-0.2.2.crate) = 8b6fd507454086c8edfd769ca6ada439193cdb209c7681712ef6275cccbfe5d8
+SIZE (rust/crates/caseless-0.2.2.crate) = 29309
+SHA256 (rust/crates/cc-1.2.31.crate) = c3a42d84bb6b69d3a8b3eaacf0d88f179e1929695e1ad012b6cf64d9caaa5fd2
+SIZE (rust/crates/cc-1.2.31.crate) = 109427
SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766
SIZE (rust/crates/cexpr-0.6.0.crate) = 17966
-SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
-SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/cfg-if-1.0.1.crate) = 9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268
+SIZE (rust/crates/cfg-if-1.0.1.crate) = 8683
SHA256 (rust/crates/clang-sys-1.8.1.crate) = 0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4
SIZE (rust/crates/clang-sys-1.8.1.crate) = 44009
-SHA256 (rust/crates/clap-4.5.23.crate) = 3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84
-SIZE (rust/crates/clap-4.5.23.crate) = 56460
-SHA256 (rust/crates/clap_builder-4.5.23.crate) = 30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838
-SIZE (rust/crates/clap_builder-4.5.23.crate) = 164180
-SHA256 (rust/crates/clap_derive-4.5.18.crate) = 4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab
-SIZE (rust/crates/clap_derive-4.5.18.crate) = 30131
-SHA256 (rust/crates/clap_lex-0.7.4.crate) = f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6
-SIZE (rust/crates/clap_lex-0.7.4.crate) = 12858
-SHA256 (rust/crates/colorchoice-1.0.3.crate) = 5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990
-SIZE (rust/crates/colorchoice-1.0.3.crate) = 7923
-SHA256 (rust/crates/comrak-0.39.1.crate) = 2fefab951771fc3beeed0773ce66a4f7b706273fc6c4c95b08dd1615744abcf5
-SIZE (rust/crates/comrak-0.39.1.crate) = 178985
-SHA256 (rust/crates/crc32fast-1.4.2.crate) = a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3
-SIZE (rust/crates/crc32fast-1.4.2.crate) = 38491
-SHA256 (rust/crates/darling-0.20.10.crate) = 6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989
-SIZE (rust/crates/darling-0.20.10.crate) = 32031
-SHA256 (rust/crates/darling_core-0.20.10.crate) = 95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5
-SIZE (rust/crates/darling_core-0.20.10.crate) = 65015
-SHA256 (rust/crates/darling_macro-0.20.10.crate) = d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806
-SIZE (rust/crates/darling_macro-0.20.10.crate) = 1874
-SHA256 (rust/crates/deranged-0.3.11.crate) = b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4
-SIZE (rust/crates/deranged-0.3.11.crate) = 18043
-SHA256 (rust/crates/deunicode-1.6.0.crate) = 339544cc9e2c4dc3fc7149fd630c5f22263a4fdf18a98afd0075784968b5cf00
-SIZE (rust/crates/deunicode-1.6.0.crate) = 170864
-SHA256 (rust/crates/either-1.13.0.crate) = 60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0
-SIZE (rust/crates/either-1.13.0.crate) = 19169
+SHA256 (rust/crates/clap-4.5.42.crate) = ed87a9d530bb41a67537289bafcac159cb3ee28460e0a4571123d2a778a6a882
+SIZE (rust/crates/clap-4.5.42.crate) = 58305
+SHA256 (rust/crates/clap_builder-4.5.42.crate) = 64f4f3f3c77c94aff3c7e9aac9a2ca1974a5adf392a8bb751e827d6d127ab966
+SIZE (rust/crates/clap_builder-4.5.42.crate) = 169655
+SHA256 (rust/crates/clap_derive-4.5.41.crate) = ef4f52386a59ca4c860f7393bcf8abd8dfd91ecccc0f774635ff68e92eeef491
+SIZE (rust/crates/clap_derive-4.5.41.crate) = 33493
+SHA256 (rust/crates/clap_lex-0.7.5.crate) = b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675
+SIZE (rust/crates/clap_lex-0.7.5.crate) = 13469
+SHA256 (rust/crates/colorchoice-1.0.4.crate) = b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75
+SIZE (rust/crates/colorchoice-1.0.4.crate) = 8196
+SHA256 (rust/crates/comrak-0.41.0.crate) = 57c9011f1cb8ff2306380cd0cd455611341d0a064bf7907234c3da4c6babb423
+SIZE (rust/crates/comrak-0.41.0.crate) = 184106
+SHA256 (rust/crates/crc32fast-1.5.0.crate) = 9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511
+SIZE (rust/crates/crc32fast-1.5.0.crate) = 40723
+SHA256 (rust/crates/darling-0.21.1.crate) = d6b136475da5ef7b6ac596c0e956e37bad51b85b987ff3d5e230e964936736b2
+SIZE (rust/crates/darling-0.21.1.crate) = 39863
+SHA256 (rust/crates/darling_core-0.21.1.crate) = b44ad32f92b75fb438b04b68547e521a548be8acc339a6dacc4a7121488f53e6
+SIZE (rust/crates/darling_core-0.21.1.crate) = 73510
+SHA256 (rust/crates/darling_macro-0.21.1.crate) = 2b5be8a7a562d315a5b92a630c30cec6bcf663e6673f00fbb69cca66a6f521b9
+SIZE (rust/crates/darling_macro-0.21.1.crate) = 2527
+SHA256 (rust/crates/deranged-0.4.0.crate) = 9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e
+SIZE (rust/crates/deranged-0.4.0.crate) = 23235
+SHA256 (rust/crates/deunicode-1.6.2.crate) = abd57806937c9cc163efc8ea3910e00a62e2aeb0b8119f1793a978088f8f6b04
+SIZE (rust/crates/deunicode-1.6.2.crate) = 172772
+SHA256 (rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719
+SIZE (rust/crates/either-1.15.0.crate) = 20114
SHA256 (rust/crates/emojis-0.6.4.crate) = 99e1f1df1f181f2539bac8bf027d31ca5ffbf9e559e3f2d09413b9107b5c02f4
SIZE (rust/crates/emojis-0.6.4.crate) = 120190
SHA256 (rust/crates/entities-1.0.1.crate) = b5320ae4c3782150d900b79807611a59a99fc9a1d61d686faafc24b93fc8d7ca
SIZE (rust/crates/entities-1.0.1.crate) = 24795
-SHA256 (rust/crates/equivalent-1.0.1.crate) = 5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5
-SIZE (rust/crates/equivalent-1.0.1.crate) = 6615
-SHA256 (rust/crates/errno-0.3.10.crate) = 33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d
-SIZE (rust/crates/errno-0.3.10.crate) = 11824
+SHA256 (rust/crates/equivalent-1.0.2.crate) = 877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f
+SIZE (rust/crates/equivalent-1.0.2.crate) = 7419
+SHA256 (rust/crates/errno-0.3.13.crate) = 778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad
+SIZE (rust/crates/errno-0.3.13.crate) = 12449
SHA256 (rust/crates/fancy-regex-0.11.0.crate) = b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2
SIZE (rust/crates/fancy-regex-0.11.0.crate) = 82918
-SHA256 (rust/crates/flate2-1.0.35.crate) = c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c
-SIZE (rust/crates/flate2-1.0.35.crate) = 109188
+SHA256 (rust/crates/flate2-1.1.2.crate) = 4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d
+SIZE (rust/crates/flate2-1.1.2.crate) = 76495
SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1
SIZE (rust/crates/fnv-1.0.7.crate) = 11266
SHA256 (rust/crates/glob-0.3.2.crate) = a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2
SIZE (rust/crates/glob-0.3.2.crate) = 22359
-SHA256 (rust/crates/hashbrown-0.15.2.crate) = bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289
-SIZE (rust/crates/hashbrown-0.15.2.crate) = 138478
+SHA256 (rust/crates/hashbrown-0.15.4.crate) = 5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5
+SIZE (rust/crates/hashbrown-0.15.4.crate) = 140447
SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea
SIZE (rust/crates/heck-0.5.0.crate) = 11517
SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39
SIZE (rust/crates/ident_case-1.0.1.crate) = 3492
-SHA256 (rust/crates/indexmap-2.7.0.crate) = 62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f
-SIZE (rust/crates/indexmap-2.7.0.crate) = 85335
+SHA256 (rust/crates/indexmap-2.10.0.crate) = fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661
+SIZE (rust/crates/indexmap-2.10.0.crate) = 95836
SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
SHA256 (rust/crates/itertools-0.12.1.crate) = ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569
SIZE (rust/crates/itertools-0.12.1.crate) = 137761
-SHA256 (rust/crates/itoa-1.0.14.crate) = d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674
-SIZE (rust/crates/itoa-1.0.14.crate) = 11210
+SHA256 (rust/crates/itoa-1.0.15.crate) = 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c
+SIZE (rust/crates/itoa-1.0.15.crate) = 11231
SHA256 (rust/crates/lazy_static-1.5.0.crate) = bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe
SIZE (rust/crates/lazy_static-1.5.0.crate) = 14025
SHA256 (rust/crates/lazycell-1.3.0.crate) = 830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55
SIZE (rust/crates/lazycell-1.3.0.crate) = 12502
-SHA256 (rust/crates/libc-0.2.169.crate) = b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a
-SIZE (rust/crates/libc-0.2.169.crate) = 757901
-SHA256 (rust/crates/libloading-0.8.6.crate) = fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34
-SIZE (rust/crates/libloading-0.8.6.crate) = 28922
+SHA256 (rust/crates/libc-0.2.174.crate) = 1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776
+SIZE (rust/crates/libc-0.2.174.crate) = 779933
+SHA256 (rust/crates/libloading-0.8.8.crate) = 07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667
+SIZE (rust/crates/libloading-0.8.8.crate) = 31345
SHA256 (rust/crates/linked-hash-map-0.5.6.crate) = 0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f
SIZE (rust/crates/linked-hash-map-0.5.6.crate) = 15049
-SHA256 (rust/crates/linux-raw-sys-0.4.14.crate) = 78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89
-SIZE (rust/crates/linux-raw-sys-0.4.14.crate) = 1826665
-SHA256 (rust/crates/log-0.4.22.crate) = a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24
-SIZE (rust/crates/log-0.4.22.crate) = 44027
+SHA256 (rust/crates/linux-raw-sys-0.9.4.crate) = cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12
+SIZE (rust/crates/linux-raw-sys-0.9.4.crate) = 2311088
+SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94
+SIZE (rust/crates/log-0.4.27.crate) = 48120
SHA256 (rust/crates/magnus-0.7.1.crate) = 3d87ae53030f3a22e83879e666cb94e58a7bdf31706878a0ba48752994146dab
SIZE (rust/crates/magnus-0.7.1.crate) = 186855
SHA256 (rust/crates/magnus-macros-0.6.0.crate) = 5968c820e2960565f647819f5928a42d6e874551cab9d88d75e3e0660d7f71e3
SIZE (rust/crates/magnus-macros-0.6.0.crate) = 6642
-SHA256 (rust/crates/memchr-2.7.4.crate) = 78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3
-SIZE (rust/crates/memchr-2.7.4.crate) = 96670
+SHA256 (rust/crates/memchr-2.7.5.crate) = 32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0
+SIZE (rust/crates/memchr-2.7.5.crate) = 97603
SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a
SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841
-SHA256 (rust/crates/miniz_oxide-0.8.2.crate) = 4ffbe83022cedc1d264172192511ae958937694cd57ce297164951b8b3568394
-SIZE (rust/crates/miniz_oxide-0.8.2.crate) = 59068
+SHA256 (rust/crates/miniz_oxide-0.8.9.crate) = 1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316
+SIZE (rust/crates/miniz_oxide-0.8.9.crate) = 67132
SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
SIZE (rust/crates/nom-7.1.3.crate) = 117570
SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9
SIZE (rust/crates/num-conv-0.1.0.crate) = 7444
-SHA256 (rust/crates/once_cell-1.20.2.crate) = 1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775
-SIZE (rust/crates/once_cell-1.20.2.crate) = 33394
-SHA256 (rust/crates/onig-6.4.0.crate) = 8c4b31c8722ad9171c6d77d3557db078cab2bd50afcc9d09c8b315c59df8ca4f
-SIZE (rust/crates/onig-6.4.0.crate) = 32616
-SHA256 (rust/crates/onig_sys-69.8.1.crate) = 7b829e3d7e9cc74c7e315ee8edb185bf4190da5acde74afd7fc59c35b1f086e7
-SIZE (rust/crates/onig_sys-69.8.1.crate) = 638216
-SHA256 (rust/crates/phf-0.11.2.crate) = ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc
-SIZE (rust/crates/phf-0.11.2.crate) = 21569
-SHA256 (rust/crates/phf_shared-0.11.2.crate) = 90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b
-SIZE (rust/crates/phf_shared-0.11.2.crate) = 14284
-SHA256 (rust/crates/pkg-config-0.3.31.crate) = 953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2
-SIZE (rust/crates/pkg-config-0.3.31.crate) = 20880
-SHA256 (rust/crates/plist-1.7.0.crate) = 42cf17e9a1800f5f396bc67d193dc9411b59012a5876445ef450d449881e1016
-SIZE (rust/crates/plist-1.7.0.crate) = 101068
+SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d
+SIZE (rust/crates/once_cell-1.21.3.crate) = 34534
+SHA256 (rust/crates/once_cell_polyfill-1.70.1.crate) = a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad
+SIZE (rust/crates/once_cell_polyfill-1.70.1.crate) = 7510
+SHA256 (rust/crates/onig-6.5.1.crate) = 336b9c63443aceef14bea841b899035ae3abe89b7c486aaf4c5bd8aafedac3f0
+SIZE (rust/crates/onig-6.5.1.crate) = 32394
+SHA256 (rust/crates/onig_sys-69.9.1.crate) = c7f86c6eef3d6df15f23bcfb6af487cbd2fed4e5581d58d5bf1f5f8b7f6727dc
+SIZE (rust/crates/onig_sys-69.9.1.crate) = 656378
+SHA256 (rust/crates/phf-0.11.3.crate) = 1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078
+SIZE (rust/crates/phf-0.11.3.crate) = 23231
+SHA256 (rust/crates/phf_shared-0.11.3.crate) = 67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5
+SIZE (rust/crates/phf_shared-0.11.3.crate) = 15199
+SHA256 (rust/crates/pkg-config-0.3.32.crate) = 7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c
+SIZE (rust/crates/pkg-config-0.3.32.crate) = 21370
+SHA256 (rust/crates/plist-1.7.4.crate) = 3af6b589e163c5a788fab00ce0c0366f6efbb9959c2f9874b224936af7fce7e1
+SIZE (rust/crates/plist-1.7.4.crate) = 103748
SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391
SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165
-SHA256 (rust/crates/prettyplease-0.2.25.crate) = 64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033
-SIZE (rust/crates/prettyplease-0.2.25.crate) = 58681
-SHA256 (rust/crates/proc-macro2-1.0.92.crate) = 37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0
-SIZE (rust/crates/proc-macro2-1.0.92.crate) = 52353
-SHA256 (rust/crates/quick-xml-0.32.0.crate) = 1d3a6e5838b60e0e8fa7a43f22ade549a37d61f8bdbe636d0d7816191de969c2
-SIZE (rust/crates/quick-xml-0.32.0.crate) = 184149
-SHA256 (rust/crates/quote-1.0.38.crate) = 0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc
-SIZE (rust/crates/quote-1.0.38.crate) = 31252
-SHA256 (rust/crates/rb-sys-0.9.114.crate) = b41b4e5d871203c3ce7c7bd0f27390fb6eee494ef9c4822a151854610e562f05
-SIZE (rust/crates/rb-sys-0.9.114.crate) = 28493
-SHA256 (rust/crates/rb-sys-build-0.9.114.crate) = de20c3cc2868958bdf8eae7431e6797cb3ce29fcdd5bada95231c4c3c167e701
-SIZE (rust/crates/rb-sys-build-0.9.114.crate) = 24283
+SHA256 (rust/crates/prettyplease-0.2.36.crate) = ff24dfcda44452b9816fff4cd4227e1bb73ff5a2f1bc1105aa92fb8565ce44d2
+SIZE (rust/crates/prettyplease-0.2.36.crate) = 71870
+SHA256 (rust/crates/proc-macro2-1.0.95.crate) = 02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778
+SIZE (rust/crates/proc-macro2-1.0.95.crate) = 51820
+SHA256 (rust/crates/quick-xml-0.38.1.crate) = 9845d9dccf565065824e69f9f235fafba1587031eda353c1f1561cd6a6be78f4
+SIZE (rust/crates/quick-xml-0.38.1.crate) = 201181
+SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d
+SIZE (rust/crates/quote-1.0.40.crate) = 31063
+SHA256 (rust/crates/rb-sys-0.9.117.crate) = f900d1ce4629a2ebffaf5de74bd8f9c1188d4c5ed406df02f97e22f77a006f44
+SIZE (rust/crates/rb-sys-0.9.117.crate) = 28664
+SHA256 (rust/crates/rb-sys-build-0.9.117.crate) = ef1e9c857028f631056bcd6d88cec390c751e343ce2223ddb26d23eb4a151d59
+SIZE (rust/crates/rb-sys-build-0.9.117.crate) = 24740
SHA256 (rust/crates/rb-sys-env-0.1.2.crate) = a35802679f07360454b418a5d1735c89716bde01d35b1560fc953c1415a0b3bb
SIZE (rust/crates/rb-sys-env-0.1.2.crate) = 9203
SHA256 (rust/crates/rctree-0.6.0.crate) = e03e7866abec1101869ffa8e2c8355c4c2419d0214ece0cc3e428e5b94dea6e9
@@ -169,56 +171,56 @@ SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303af
SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541
SHA256 (rust/crates/rustc-hash-1.1.0.crate) = 08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2
SIZE (rust/crates/rustc-hash-1.1.0.crate) = 9331
-SHA256 (rust/crates/rustix-0.38.42.crate) = f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85
-SIZE (rust/crates/rustix-0.38.42.crate) = 378683
-SHA256 (rust/crates/rustversion-1.0.19.crate) = f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4
-SIZE (rust/crates/rustversion-1.0.19.crate) = 20616
-SHA256 (rust/crates/ryu-1.0.18.crate) = f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f
-SIZE (rust/crates/ryu-1.0.18.crate) = 47713
+SHA256 (rust/crates/rustix-1.0.8.crate) = 11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8
+SIZE (rust/crates/rustix-1.0.8.crate) = 416688
+SHA256 (rust/crates/rustversion-1.0.21.crate) = 8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d
+SIZE (rust/crates/rustversion-1.0.21.crate) = 21001
+SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f
+SIZE (rust/crates/ryu-1.0.20.crate) = 48738
SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502
SIZE (rust/crates/same-file-1.0.6.crate) = 10183
-SHA256 (rust/crates/seq-macro-0.3.5.crate) = a3f0bf26fd526d2a95683cd0f87bf103b8539e2ca1ef48ce002d67aad59aa0b4
-SIZE (rust/crates/seq-macro-0.3.5.crate) = 13332
-SHA256 (rust/crates/serde-1.0.217.crate) = 02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70
-SIZE (rust/crates/serde-1.0.217.crate) = 79019
-SHA256 (rust/crates/serde_derive-1.0.217.crate) = 5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0
-SIZE (rust/crates/serde_derive-1.0.217.crate) = 57749
-SHA256 (rust/crates/serde_json-1.0.134.crate) = d00f4175c42ee48b15416f6193a959ba3a0d67fc699a0db9ad12df9f83991c7d
-SIZE (rust/crates/serde_json-1.0.134.crate) = 154351
+SHA256 (rust/crates/seq-macro-0.3.6.crate) = 1bc711410fbe7399f390ca1c3b60ad0f53f80e95c5eb935e52268a0e2cd49acc
+SIZE (rust/crates/seq-macro-0.3.6.crate) = 16031
+SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6
+SIZE (rust/crates/serde-1.0.219.crate) = 78983
+SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00
+SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
+SHA256 (rust/crates/serde_json-1.0.142.crate) = 030fedb782600dcbd6f02d479bf0d817ac3bb40d644745b769d6a96bc3afc5a7
+SIZE (rust/crates/serde_json-1.0.142.crate) = 155363
SHA256 (rust/crates/shell-words-1.1.0.crate) = 24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde
SIZE (rust/crates/shell-words-1.1.0.crate) = 9871
SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64
SIZE (rust/crates/shlex-1.3.0.crate) = 18713
-SHA256 (rust/crates/siphasher-0.3.11.crate) = 38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d
-SIZE (rust/crates/siphasher-0.3.11.crate) = 10442
+SHA256 (rust/crates/siphasher-1.0.1.crate) = 56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d
+SIZE (rust/crates/siphasher-1.0.1.crate) = 10351
SHA256 (rust/crates/slug-0.1.6.crate) = 882a80f72ee45de3cc9a5afeb2da0331d58df69e4e7d8eeb5d3c7784ae67e724
SIZE (rust/crates/slug-0.1.6.crate) = 6787
SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f
SIZE (rust/crates/strsim-0.11.1.crate) = 14266
-SHA256 (rust/crates/syn-2.0.93.crate) = 9c786062daee0d6db1132800e623df74274a0a87322d8e183338e01b3d98d058
-SIZE (rust/crates/syn-2.0.93.crate) = 293925
+SHA256 (rust/crates/syn-2.0.104.crate) = 17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40
+SIZE (rust/crates/syn-2.0.104.crate) = 299699
SHA256 (rust/crates/syntect-5.2.0.crate) = 874dcfa363995604333cf947ae9f751ca3af4522c60886774c4963943b4746b1
SIZE (rust/crates/syntect-5.2.0.crate) = 822671
-SHA256 (rust/crates/terminal_size-0.4.1.crate) = 5352447f921fda68cf61b4101566c0bdb5104eff6804d0678e5227580ab6a4e9
-SIZE (rust/crates/terminal_size-0.4.1.crate) = 10037
+SHA256 (rust/crates/terminal_size-0.4.2.crate) = 45c6481c4829e4cc63825e62c49186a34538b7b2750b73b266581ffb612fb5ed
+SIZE (rust/crates/terminal_size-0.4.2.crate) = 9976
SHA256 (rust/crates/thiserror-1.0.69.crate) = b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52
SIZE (rust/crates/thiserror-1.0.69.crate) = 22198
SHA256 (rust/crates/thiserror-impl-1.0.69.crate) = 4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1
SIZE (rust/crates/thiserror-impl-1.0.69.crate) = 18365
-SHA256 (rust/crates/time-0.3.37.crate) = 35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21
-SIZE (rust/crates/time-0.3.37.crate) = 123257
-SHA256 (rust/crates/time-core-0.1.2.crate) = ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3
-SIZE (rust/crates/time-core-0.1.2.crate) = 7191
-SHA256 (rust/crates/time-macros-0.2.19.crate) = 2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de
-SIZE (rust/crates/time-macros-0.2.19.crate) = 24268
-SHA256 (rust/crates/tinyvec-1.8.1.crate) = 022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8
-SIZE (rust/crates/tinyvec-1.8.1.crate) = 47269
+SHA256 (rust/crates/time-0.3.41.crate) = 8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40
+SIZE (rust/crates/time-0.3.41.crate) = 138369
+SHA256 (rust/crates/time-core-0.1.4.crate) = c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c
+SIZE (rust/crates/time-core-0.1.4.crate) = 8422
+SHA256 (rust/crates/time-macros-0.2.22.crate) = 3526739392ec93fd8b359c8e98514cb3e8e021beb4e5f597b00a0221f8ed8a49
+SIZE (rust/crates/time-macros-0.2.22.crate) = 24604
+SHA256 (rust/crates/tinyvec-1.9.0.crate) = 09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71
+SIZE (rust/crates/tinyvec-1.9.0.crate) = 54137
SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20
SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865
SHA256 (rust/crates/typed-arena-2.0.2.crate) = 6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a
SIZE (rust/crates/typed-arena-2.0.2.crate) = 11848
-SHA256 (rust/crates/unicode-ident-1.0.14.crate) = adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83
-SIZE (rust/crates/unicode-ident-1.0.14.crate) = 47547
+SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512
+SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743
SHA256 (rust/crates/unicode-normalization-0.1.24.crate) = 5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956
SIZE (rust/crates/unicode-normalization-0.1.24.crate) = 126536
SHA256 (rust/crates/unicode_categories-0.1.1.crate) = 39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e
@@ -227,38 +229,60 @@ SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faec
SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499
SHA256 (rust/crates/walkdir-2.5.0.crate) = 29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b
SIZE (rust/crates/walkdir-2.5.0.crate) = 23951
-SHA256 (rust/crates/wasm-bindgen-0.2.99.crate) = a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396
-SIZE (rust/crates/wasm-bindgen-0.2.99.crate) = 46136
-SHA256 (rust/crates/wasm-bindgen-backend-0.2.99.crate) = 5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79
-SIZE (rust/crates/wasm-bindgen-backend-0.2.99.crate) = 30928
-SHA256 (rust/crates/wasm-bindgen-macro-0.2.99.crate) = 2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe
-SIZE (rust/crates/wasm-bindgen-macro-0.2.99.crate) = 7011
-SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.99.crate) = 30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2
-SIZE (rust/crates/wasm-bindgen-macro-support-0.2.99.crate) = 22800
-SHA256 (rust/crates/wasm-bindgen-shared-0.2.99.crate) = 943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6
-SIZE (rust/crates/wasm-bindgen-shared-0.2.99.crate) = 7773
+SHA256 (rust/crates/wasm-bindgen-0.2.100.crate) = 1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5
+SIZE (rust/crates/wasm-bindgen-0.2.100.crate) = 48288
+SHA256 (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6
+SIZE (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 32111
+SHA256 (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407
+SIZE (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 9663
+SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de
+SIZE (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 26243
+SHA256 (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d
+SIZE (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 8570
SHA256 (rust/crates/winapi-util-0.1.9.crate) = cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb
SIZE (rust/crates/winapi-util-0.1.9.crate) = 12464
+SHA256 (rust/crates/windows-link-0.1.3.crate) = 5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a
+SIZE (rust/crates/windows-link-0.1.3.crate) = 6154
SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
+SHA256 (rust/crates/windows-sys-0.60.2.crate) = f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb
+SIZE (rust/crates/windows-sys-0.60.2.crate) = 2518479
SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973
SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403
+SHA256 (rust/crates/windows-targets-0.53.3.crate) = d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91
+SIZE (rust/crates/windows-targets-0.53.3.crate) = 7099
SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3
SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764
+SIZE (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 782443
SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469
SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615
+SHA256 (rust/crates/windows_aarch64_msvc-0.53.0.crate) = c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c
+SIZE (rust/crates/windows_aarch64_msvc-0.53.0.crate) = 834446
SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b
SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402
+SHA256 (rust/crates/windows_i686_gnu-0.53.0.crate) = c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3
+SIZE (rust/crates/windows_i686_gnu-0.53.0.crate) = 936973
SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66
SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940
+SHA256 (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11
+SIZE (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 854056
SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66
SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163
+SHA256 (rust/crates/windows_i686_msvc-0.53.0.crate) = 581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d
+SIZE (rust/crates/windows_i686_msvc-0.53.0.crate) = 903450
SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78
SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363
+SHA256 (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba
+SIZE (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 902585
SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d
SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57
+SIZE (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 782434
SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec
SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564
+SHA256 (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486
+SIZE (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 834400
SHA256 (rust/crates/xdg-2.5.2.crate) = 213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546
SIZE (rust/crates/xdg-2.5.2.crate) = 14394
SHA256 (rust/crates/yaml-rust-0.4.5.crate) = 56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85
diff --git a/textproc/rubygem-cucumber-gherkin/Makefile b/textproc/rubygem-cucumber-gherkin/Makefile
index 26c5e9d68b3b..3f1c7221d032 100644
--- a/textproc/rubygem-cucumber-gherkin/Makefile
+++ b/textproc/rubygem-cucumber-gherkin/Makefile
@@ -1,5 +1,5 @@
PORTNAME= cucumber-gherkin
-PORTVERSION= 33.1.0
+PORTVERSION= 34.0.0
CATEGORIES= textproc rubygems
MASTER_SITES= RG
diff --git a/textproc/rubygem-cucumber-gherkin/distinfo b/textproc/rubygem-cucumber-gherkin/distinfo
index 8f8b8bf376d7..a615d288bb73 100644
--- a/textproc/rubygem-cucumber-gherkin/distinfo
+++ b/textproc/rubygem-cucumber-gherkin/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1753796220
-SHA256 (rubygem/cucumber-gherkin-33.1.0.gem) = 986f0c55b011086fc0480fa7a5c8e6957d07e287176cfdb0aa03e8dd5370ab43
-SIZE (rubygem/cucumber-gherkin-33.1.0.gem) = 32256
+TIMESTAMP = 1757121870
+SHA256 (rubygem/cucumber-gherkin-34.0.0.gem) = c4b1ef7e9a536498e09be99fc6ab64e723cbed99fe8136bb6f2c835e5f2c4c6d
+SIZE (rubygem/cucumber-gherkin-34.0.0.gem) = 32256
diff --git a/textproc/rubygem-cucumber-gherkin32/Makefile b/textproc/rubygem-cucumber-gherkin32/Makefile
new file mode 100644
index 000000000000..edb27a5c6475
--- /dev/null
+++ b/textproc/rubygem-cucumber-gherkin32/Makefile
@@ -0,0 +1,25 @@
+PORTNAME= cucumber-gherkin
+PORTVERSION= 32.2.0
+CATEGORIES= textproc rubygems
+MASTER_SITES= RG
+PKGNAMESUFFIX= 32
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Fast Gherkin lexer/parser based on the Ragel State Machine Compiler
+WWW= https://github.com/cucumber/gherkin
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= rubygem-cucumber-messages27>=25<28:devel/rubygem-cucumber-messages27
+
+USES= gem
+
+NO_ARCH= yes
+
+PORTSCOUT= limit:^32\.
+
+post-install:
+ ${RM} ${STAGEDIR}${PREFIX}/bin/gherkin ${STAGEDIR}${PREFIX}/bin/gherkin-ruby
+
+.include <bsd.port.mk>
diff --git a/textproc/rubygem-cucumber-gherkin32/distinfo b/textproc/rubygem-cucumber-gherkin32/distinfo
new file mode 100644
index 000000000000..dd40f66ce70d
--- /dev/null
+++ b/textproc/rubygem-cucumber-gherkin32/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1757436665
+SHA256 (rubygem/cucumber-gherkin-32.2.0.gem) = a33699d3be9c7fe1b6d4a26c1aa18150f274a90c871a6bc1811d5795a52e4ad6
+SIZE (rubygem/cucumber-gherkin-32.2.0.gem) = 32256
diff --git a/textproc/rubygem-cucumber-gherkin32/pkg-descr b/textproc/rubygem-cucumber-gherkin32/pkg-descr
new file mode 100644
index 000000000000..77e6fe4db2cc
--- /dev/null
+++ b/textproc/rubygem-cucumber-gherkin32/pkg-descr
@@ -0,0 +1 @@
+A fast Gherkin lexer/parser based on the Ragel State Machine Compiler.
diff --git a/textproc/rubygem-cucumber-html-formatter/Makefile b/textproc/rubygem-cucumber-html-formatter/Makefile
index 8e6924f4c489..f82afb47c444 100644
--- a/textproc/rubygem-cucumber-html-formatter/Makefile
+++ b/textproc/rubygem-cucumber-html-formatter/Makefile
@@ -1,5 +1,5 @@
PORTNAME= cucumber-html-formatter
-PORTVERSION= 21.13.0
+PORTVERSION= 21.14.0
CATEGORIES= textproc rubygems
MASTER_SITES= RG
diff --git a/textproc/rubygem-cucumber-html-formatter/distinfo b/textproc/rubygem-cucumber-html-formatter/distinfo
index 1337bbe65bff..775eeecf6fd1 100644
--- a/textproc/rubygem-cucumber-html-formatter/distinfo
+++ b/textproc/rubygem-cucumber-html-formatter/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752266254
-SHA256 (rubygem/cucumber-html-formatter-21.13.0.gem) = 882e20b7da8642d6284112bcc837cb96738490086bac227137f543eae587ee4d
-SIZE (rubygem/cucumber-html-formatter-21.13.0.gem) = 283648
+TIMESTAMP = 1757121872
+SHA256 (rubygem/cucumber-html-formatter-21.14.0.gem) = 7fbaeb38c76e982848cf144136544853102ed906b6e54070bba409e505742267
+SIZE (rubygem/cucumber-html-formatter-21.14.0.gem) = 283648
diff --git a/textproc/rubygem-elasticsearch-api/Makefile b/textproc/rubygem-elasticsearch-api/Makefile
index 5f4a34edbb62..d1badb394512 100644
--- a/textproc/rubygem-elasticsearch-api/Makefile
+++ b/textproc/rubygem-elasticsearch-api/Makefile
@@ -1,5 +1,5 @@
PORTNAME= elasticsearch-api
-PORTVERSION= 9.0.0
+PORTVERSION= 9.1.2
CATEGORIES= textproc rubygems
MASTER_SITES= RG
diff --git a/textproc/rubygem-elasticsearch-api/distinfo b/textproc/rubygem-elasticsearch-api/distinfo
index 07e9b5f96cce..e95931dd4cb4 100644
--- a/textproc/rubygem-elasticsearch-api/distinfo
+++ b/textproc/rubygem-elasticsearch-api/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1745936424
-SHA256 (rubygem/elasticsearch-api-9.0.0.gem) = 00af6b58bd5786d994d12f9899b787789a345a74a9ea887b1926790a432a50c7
-SIZE (rubygem/elasticsearch-api-9.0.0.gem) = 217088
+TIMESTAMP = 1757436669
+SHA256 (rubygem/elasticsearch-api-9.1.2.gem) = 7ca43dfea1662b6106bb4f4a7fe266fcca0e0f1b588da705d26f6ada4766c8ed
+SIZE (rubygem/elasticsearch-api-9.1.2.gem) = 230400
diff --git a/textproc/rubygem-elasticsearch-api8/Makefile b/textproc/rubygem-elasticsearch-api8/Makefile
index 7cf6a33e7765..1f2b0d667c69 100644
--- a/textproc/rubygem-elasticsearch-api8/Makefile
+++ b/textproc/rubygem-elasticsearch-api8/Makefile
@@ -1,5 +1,5 @@
PORTNAME= elasticsearch-api
-PORTVERSION= 8.18.0
+PORTVERSION= 8.19.1
CATEGORIES= textproc rubygems
MASTER_SITES= RG
PKGNAMESUFFIX= 8
diff --git a/textproc/rubygem-elasticsearch-api8/distinfo b/textproc/rubygem-elasticsearch-api8/distinfo
index 52c33b2c26b3..268bf3889597 100644
--- a/textproc/rubygem-elasticsearch-api8/distinfo
+++ b/textproc/rubygem-elasticsearch-api8/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1745178236
-SHA256 (rubygem/elasticsearch-api-8.18.0.gem) = 56ea86d763a8dd781374b76eba6b45977e267510c09e979d1ebe018463379666
-SIZE (rubygem/elasticsearch-api-8.18.0.gem) = 209920
+TIMESTAMP = 1757121878
+SHA256 (rubygem/elasticsearch-api-8.19.1.gem) = 13253f983c11281ee5616ed71e70f1c2981e7a15eb99a92d718075fd3fa471db
+SIZE (rubygem/elasticsearch-api-8.19.1.gem) = 214016
diff --git a/textproc/rubygem-elasticsearch-model/Makefile b/textproc/rubygem-elasticsearch-model/Makefile
index dfa7fd7adad7..fc4ac9c870c1 100644
--- a/textproc/rubygem-elasticsearch-model/Makefile
+++ b/textproc/rubygem-elasticsearch-model/Makefile
@@ -1,6 +1,5 @@
PORTNAME= elasticsearch-model
-PORTVERSION= 8.0.0
-PORTREVISION= 1
+PORTVERSION= 8.0.1
CATEGORIES= textproc rubygems
MASTER_SITES= RG
diff --git a/textproc/rubygem-elasticsearch-model/distinfo b/textproc/rubygem-elasticsearch-model/distinfo
index 943e9787bd19..302e10316930 100644
--- a/textproc/rubygem-elasticsearch-model/distinfo
+++ b/textproc/rubygem-elasticsearch-model/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1717245835
-SHA256 (rubygem/elasticsearch-model-8.0.0.gem) = 5cbfe0fe2ad02c9e0f153bd85ea3dbd82798fd5a2a5a843ae353ea2e44fad911
-SIZE (rubygem/elasticsearch-model-8.0.0.gem) = 68608
+TIMESTAMP = 1757436671
+SHA256 (rubygem/elasticsearch-model-8.0.1.gem) = 7579539d3d4193ddb3e01dc7b0542ef4c5b391c46ab0afbb1b27bec8ee6b331c
+SIZE (rubygem/elasticsearch-model-8.0.1.gem) = 68608
diff --git a/textproc/rubygem-elasticsearch-persistence/Makefile b/textproc/rubygem-elasticsearch-persistence/Makefile
index 3d72c7690812..2a49188ff82c 100644
--- a/textproc/rubygem-elasticsearch-persistence/Makefile
+++ b/textproc/rubygem-elasticsearch-persistence/Makefile
@@ -1,5 +1,5 @@
PORTNAME= elasticsearch-persistence
-PORTVERSION= 8.0.0
+PORTVERSION= 8.0.1
CATEGORIES= textproc rubygems
MASTER_SITES= RG
@@ -13,7 +13,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.txt
RUN_DEPENDS= rubygem-activemodel71>=4:databases/rubygem-activemodel71 \
rubygem-activesupport71>=4:devel/rubygem-activesupport71 \
rubygem-elasticsearch8>=8<9:textproc/rubygem-elasticsearch8 \
- rubygem-elasticsearch-model>=${PORTVERSION}<${PORTVERSION}_99:textproc/rubygem-elasticsearch-model \
+ rubygem-elasticsearch-model>=8.0<9:textproc/rubygem-elasticsearch-model \
rubygem-hashie>=0:devel/rubygem-hashie
USES= gem
diff --git a/textproc/rubygem-elasticsearch-persistence/distinfo b/textproc/rubygem-elasticsearch-persistence/distinfo
index 60cce550b9e2..39f6acfaebe9 100644
--- a/textproc/rubygem-elasticsearch-persistence/distinfo
+++ b/textproc/rubygem-elasticsearch-persistence/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1717245837
-SHA256 (rubygem/elasticsearch-persistence-8.0.0.gem) = c077f77e19c1b9cea8147469143201452bb415e018d3aa7ff0b7478421499d9c
-SIZE (rubygem/elasticsearch-persistence-8.0.0.gem) = 29696
+TIMESTAMP = 1757436673
+SHA256 (rubygem/elasticsearch-persistence-8.0.1.gem) = 69306e749f8c2b2104f0045fdccd595017a7175f5f948485993319bb945973fc
+SIZE (rubygem/elasticsearch-persistence-8.0.1.gem) = 29696
diff --git a/textproc/rubygem-elasticsearch-rails/Makefile b/textproc/rubygem-elasticsearch-rails/Makefile
index f6c7e696991d..4ce531272396 100644
--- a/textproc/rubygem-elasticsearch-rails/Makefile
+++ b/textproc/rubygem-elasticsearch-rails/Makefile
@@ -1,5 +1,5 @@
PORTNAME= elasticsearch-rails
-PORTVERSION= 8.0.0
+PORTVERSION= 8.0.1
CATEGORIES= textproc rubygems
MASTER_SITES= RG
diff --git a/textproc/rubygem-elasticsearch-rails/distinfo b/textproc/rubygem-elasticsearch-rails/distinfo
index efe0558bff20..86f724bf020e 100644
--- a/textproc/rubygem-elasticsearch-rails/distinfo
+++ b/textproc/rubygem-elasticsearch-rails/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1717245839
-SHA256 (rubygem/elasticsearch-rails-8.0.0.gem) = 4272655f7777bba00af9a1dae08fbf5ee4e0d3f22d1460b1dba5af9a593f42b1
-SIZE (rubygem/elasticsearch-rails-8.0.0.gem) = 4263424
+TIMESTAMP = 1757436675
+SHA256 (rubygem/elasticsearch-rails-8.0.1.gem) = 5c1651503e7ec5c87c7187b4d683c651c31a664c3303c915d29e1e39e8beb6ed
+SIZE (rubygem/elasticsearch-rails-8.0.1.gem) = 4263424
diff --git a/textproc/rubygem-elasticsearch/Makefile b/textproc/rubygem-elasticsearch/Makefile
index 8f2e578b93ce..21acea655003 100644
--- a/textproc/rubygem-elasticsearch/Makefile
+++ b/textproc/rubygem-elasticsearch/Makefile
@@ -1,5 +1,5 @@
PORTNAME= elasticsearch
-PORTVERSION= 9.0.0
+PORTVERSION= 9.1.2
CATEGORIES= textproc rubygems
MASTER_SITES= RG
diff --git a/textproc/rubygem-elasticsearch/distinfo b/textproc/rubygem-elasticsearch/distinfo
index e5c6de6ab54f..076874f1f21e 100644
--- a/textproc/rubygem-elasticsearch/distinfo
+++ b/textproc/rubygem-elasticsearch/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1745936422
-SHA256 (rubygem/elasticsearch-9.0.0.gem) = f5e37ae4256c976dbf38e3b1298e1e32addd936b424c1f16ff89306ce3479329
-SIZE (rubygem/elasticsearch-9.0.0.gem) = 15872
+TIMESTAMP = 1757436667
+SHA256 (rubygem/elasticsearch-9.1.2.gem) = 4716303e4a6edf898352f40d89555e0d0e648826d0bfd00c38b5421eb2a50104
+SIZE (rubygem/elasticsearch-9.1.2.gem) = 15872
diff --git a/textproc/rubygem-elasticsearch8/Makefile b/textproc/rubygem-elasticsearch8/Makefile
index ea654f6a006a..a64310333ae1 100644
--- a/textproc/rubygem-elasticsearch8/Makefile
+++ b/textproc/rubygem-elasticsearch8/Makefile
@@ -1,5 +1,5 @@
PORTNAME= elasticsearch
-PORTVERSION= 8.18.0
+PORTVERSION= 8.19.1
CATEGORIES= textproc rubygems
MASTER_SITES= RG
PKGNAMESUFFIX= 8
diff --git a/textproc/rubygem-elasticsearch8/distinfo b/textproc/rubygem-elasticsearch8/distinfo
index 625d76138955..2dad08e14718 100644
--- a/textproc/rubygem-elasticsearch8/distinfo
+++ b/textproc/rubygem-elasticsearch8/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1745178234
-SHA256 (rubygem/elasticsearch-8.18.0.gem) = 2bad7699b49dfd3a66b9a2fefa86460d884bbc6600eba189df46822134a45671
-SIZE (rubygem/elasticsearch-8.18.0.gem) = 25088
+TIMESTAMP = 1757121880
+SHA256 (rubygem/elasticsearch-8.19.1.gem) = a0869c1427ef077032d456dcb2fdd527a2270d95898b6a9b342ab627657770ae
+SIZE (rubygem/elasticsearch-8.19.1.gem) = 25088
diff --git a/textproc/rubygem-hikidoc/Makefile b/textproc/rubygem-hikidoc/Makefile
index 9ae81df64ed1..650cd24db209 100644
--- a/textproc/rubygem-hikidoc/Makefile
+++ b/textproc/rubygem-hikidoc/Makefile
@@ -1,5 +1,5 @@
PORTNAME= hikidoc
-PORTVERSION= 0.1.0
+PORTVERSION= 0.1.1
CATEGORIES= textproc ruby
MASTER_SITES= RG
diff --git a/textproc/rubygem-hikidoc/distinfo b/textproc/rubygem-hikidoc/distinfo
index b57cc41eb4d4..b279770f8282 100644
--- a/textproc/rubygem-hikidoc/distinfo
+++ b/textproc/rubygem-hikidoc/distinfo
@@ -1,2 +1,3 @@
-SHA256 (rubygem/hikidoc-0.1.0.gem) = 409097a9fd81b48a6182ac8350a3dc7304e6ec85f4aa0777e22bafa860a070a9
-SIZE (rubygem/hikidoc-0.1.0.gem) = 21504
+TIMESTAMP = 1757313584
+SHA256 (rubygem/hikidoc-0.1.1.gem) = 83938aee65028a73220764617dc95ab0e3e4daf0d774577825f64fb4e0f1c1dd
+SIZE (rubygem/hikidoc-0.1.1.gem) = 27648
diff --git a/textproc/rubygem-libxml-ruby/Makefile b/textproc/rubygem-libxml-ruby/Makefile
index cfbf561d5dc7..3cc1d0be11c4 100644
--- a/textproc/rubygem-libxml-ruby/Makefile
+++ b/textproc/rubygem-libxml-ruby/Makefile
@@ -1,6 +1,5 @@
PORTNAME= libxml-ruby
-PORTVERSION= 5.0.4
-PORTREVISION= 1
+PORTVERSION= 5.0.5
CATEGORIES= textproc rubygems
MASTER_SITES= RG
diff --git a/textproc/rubygem-libxml-ruby/distinfo b/textproc/rubygem-libxml-ruby/distinfo
index 7c6b8c292746..cb4c1f7c99c0 100644
--- a/textproc/rubygem-libxml-ruby/distinfo
+++ b/textproc/rubygem-libxml-ruby/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1747716412
-SHA256 (rubygem/libxml-ruby-5.0.4.gem) = 78c3fb06c88a0e2b26197efa82fa663229809c1c8bf4e259bdaa8e2b60856ae6
-SIZE (rubygem/libxml-ruby-5.0.4.gem) = 364544
+TIMESTAMP = 1757121882
+SHA256 (rubygem/libxml-ruby-5.0.5.gem) = f1bc07152982df555d70159a694ee2a53539de2cdad4b3c8a447fbb15e7e4e9a
+SIZE (rubygem/libxml-ruby-5.0.5.gem) = 364544
diff --git a/textproc/rubygem-rexml/Makefile b/textproc/rubygem-rexml/Makefile
index 11574b6ccfcf..6d1008d5a812 100644
--- a/textproc/rubygem-rexml/Makefile
+++ b/textproc/rubygem-rexml/Makefile
@@ -1,5 +1,5 @@
PORTNAME= rexml
-PORTVERSION= 3.4.1
+PORTVERSION= 3.4.3
CATEGORIES= textproc rubygems
MASTER_SITES= RG
diff --git a/textproc/rubygem-rexml/distinfo b/textproc/rubygem-rexml/distinfo
index b4cac93ac102..34351bfd9be9 100644
--- a/textproc/rubygem-rexml/distinfo
+++ b/textproc/rubygem-rexml/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1739930314
-SHA256 (rubygem/rexml-3.4.1.gem) = c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca
-SIZE (rubygem/rexml-3.4.1.gem) = 104960
+TIMESTAMP = 1757436677
+SHA256 (rubygem/rexml-3.4.3.gem) = 0e2a4602dd7f02979e29a0c6bc0f57a76ca99fc093eee17cf9a1cd32fa95a115
+SIZE (rubygem/rexml-3.4.3.gem) = 105984
diff --git a/textproc/sift/Makefile b/textproc/sift/Makefile
index abc4a696af19..ac22faecd6c8 100644
--- a/textproc/sift/Makefile
+++ b/textproc/sift/Makefile
@@ -1,7 +1,7 @@
PORTNAME= sift
PORTVERSION= 0.9.0
DISTVERSIONPREFIX= v
-PORTREVISION= 51
+PORTREVISION= 53
CATEGORIES= textproc
MAINTAINER= sunpoet@FreeBSD.org
@@ -19,9 +19,9 @@ PLIST_FILES= bin/sift
USE_GITHUB= yes
GH_ACCOUNT= svent
-GH_TUPLE= golang:crypto:v0.25.0:golang_crypto/vendor/golang.org/x/crypto \
- golang:sys:v0.22.0:golang_sys/vendor/golang.org/x/sys \
- golang:term:v0.22.0:golang_term/vendor/golang.org/x/term \
+GH_TUPLE= golang:crypto:v0.41.0:golang_crypto/vendor/golang.org/x/crypto \
+ golang:sys:v0.35.0:golang_sys/vendor/golang.org/x/sys \
+ golang:term:v0.34.0:golang_term/vendor/golang.org/x/term \
svent:go-flags:4bcbad3:svent_goflags/vendor/github.com/svent/go-flags \
svent:go-nbreader:7cef48d:svent_gonbreader/vendor/github.com/svent/go-nbreader
diff --git a/textproc/sift/distinfo b/textproc/sift/distinfo
index 31e21d7b403e..9092e22d9125 100644
--- a/textproc/sift/distinfo
+++ b/textproc/sift/distinfo
@@ -1,12 +1,12 @@
-TIMESTAMP = 1721823006
+TIMESTAMP = 1757120544
SHA256 (svent-sift-v0.9.0_GH0.tar.gz) = bbbd5c472c36b78896cd7ae673749d3943621a6d5523d47973ed2fc6800ae4c8
SIZE (svent-sift-v0.9.0_GH0.tar.gz) = 37442
-SHA256 (golang-crypto-v0.25.0_GH0.tar.gz) = 44619ce0bc1901464e14925487f5152b850b50e214cc12021dbe177f22444749
-SIZE (golang-crypto-v0.25.0_GH0.tar.gz) = 1796762
-SHA256 (golang-sys-v0.22.0_GH0.tar.gz) = b5a84a20ff327803ed47aefd837a3264d511b3f644017cb8e050ff1f5bd22471
-SIZE (golang-sys-v0.22.0_GH0.tar.gz) = 1498230
-SHA256 (golang-term-v0.22.0_GH0.tar.gz) = 12263f0da55447aa51fb5d5bef6ca12e37bf2058db6c625e498d06e462fca79e
-SIZE (golang-term-v0.22.0_GH0.tar.gz) = 14742
+SHA256 (golang-crypto-v0.41.0_GH0.tar.gz) = e2755451de1987afe358285b19ff7fa2eadb1286a2a2e11b21f725bc1d47efdf
+SIZE (golang-crypto-v0.41.0_GH0.tar.gz) = 2156602
+SHA256 (golang-sys-v0.35.0_GH0.tar.gz) = 08a0eed7f36ae25bfd3275b92c8542da4924ce2902c36599d5a1f87d54f3b5dd
+SIZE (golang-sys-v0.35.0_GH0.tar.gz) = 1531316
+SHA256 (golang-term-v0.34.0_GH0.tar.gz) = f948aa92fff29f98e5eb80fbc6cf8f61bb99de1eee1ab4d7aefdd6e45344cefa
+SIZE (golang-term-v0.34.0_GH0.tar.gz) = 15939
SHA256 (svent-go-flags-4bcbad3_GH0.tar.gz) = 8fb342e5d1ad220c7040a6f185f39a38679f9c88e24716fcc6f2fef2ee09825a
SIZE (svent-go-flags-4bcbad3_GH0.tar.gz) = 45988
SHA256 (svent-go-nbreader-7cef48d_GH0.tar.gz) = 62e0248ba434aa54461f554afc532cd5a4393ce55c35fdf750175fa14f997448
diff --git a/textproc/sigil/Makefile b/textproc/sigil/Makefile
index aea38a7682cd..a1ec7b4bb720 100644
--- a/textproc/sigil/Makefile
+++ b/textproc/sigil/Makefile
@@ -1,5 +1,5 @@
PORTNAME= sigil
-DISTVERSION= 2.6.0
+DISTVERSION= 2.6.2
CATEGORIES= textproc
MAINTAINER= jonc@chen.org.nz
@@ -12,7 +12,7 @@ LICENSE_FILE= ${WRKSRC}/COPYING.txt
LIB_DEPENDS= libpcre2-16.so:devel/pcre2 \
libhunspell-1.7.so:textproc/hunspell
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dulwich>=0.15.0:devel/py-dulwich@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR}
USES= cmake cpe desktop-file-utils gl localbase:ldflags \
minizip pkgconfig python qt:6 shebangfix
diff --git a/textproc/sigil/distinfo b/textproc/sigil/distinfo
index d998603bb423..2abfb76cb10f 100644
--- a/textproc/sigil/distinfo
+++ b/textproc/sigil/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1752900227
-SHA256 (Sigil-Ebook-Sigil-2.6.0_GH0.tar.gz) = 2ae229c548de10d92d79f61431503bae28a6df1c09d887b399973723a1e5e6f1
-SIZE (Sigil-Ebook-Sigil-2.6.0_GH0.tar.gz) = 19447356
+TIMESTAMP = 1757793962
+SHA256 (Sigil-Ebook-Sigil-2.6.2_GH0.tar.gz) = e53d4ace437a6f02513246b2911a1cd0e5898a283c0ec5c097bd1fc7874efb62
+SIZE (Sigil-Ebook-Sigil-2.6.2_GH0.tar.gz) = 19462877
diff --git a/textproc/sttr/Makefile b/textproc/sttr/Makefile
index fd8fbe0b5ecc..18a783562e0c 100644
--- a/textproc/sttr/Makefile
+++ b/textproc/sttr/Makefile
@@ -1,6 +1,7 @@
PORTNAME= sttr
DISTVERSIONPREFIX= v
DISTVERSION= 0.2.27
+PORTREVISION= 1
CATEGORIES= textproc
MAINTAINER= se@FreeBSD.org
diff --git a/textproc/television/Makefile b/textproc/television/Makefile
index 62db60ec5f63..852ca0c8a3c2 100644
--- a/textproc/television/Makefile
+++ b/textproc/television/Makefile
@@ -1,6 +1,6 @@
PORTNAME= television
DISTVERSION= 0.13.3
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc
MAINTAINER= uzsolt@FreeBSD.org
@@ -19,11 +19,6 @@ USES= cargo
USE_GITHUB= yes
GH_ACCOUNT= alexpasmantier
-PLIST_FILES= bin/${PORTNAME} \
- bin/tv \
- share/man/man1/${PORTNAME}.1.gz \
- share/man/man1/tv.1.gz
-
post-install:
cd ${STAGEDIR}${PREFIX}/bin && \
${LN} tv ${PORTNAME}
@@ -31,5 +26,8 @@ post-install:
${STAGEDIR}${PREFIX}/share/man/man1/tv.1
cd ${STAGEDIR}${PREFIX}/share/man/man1 && \
${LN} tv.1 television.1
+ ${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/.config/config.toml ${STAGEDIR}${EXAMPLESDIR}
+ ${INSTALL_DATA} ${WRKSRC}/docs/01-Users/* ${STAGEDIR}${DOCSDIR}
.include <bsd.port.mk>
diff --git a/textproc/television/pkg-plist b/textproc/television/pkg-plist
new file mode 100644
index 000000000000..0c82f42607e6
--- /dev/null
+++ b/textproc/television/pkg-plist
@@ -0,0 +1,19 @@
+bin/television
+bin/tv
+share/man/man1/television.1.gz
+share/man/man1/tv.1.gz
+%%EXAMPLESDIR%%/config.toml
+%%DOCSDIR%%/01-installation.md
+%%DOCSDIR%%/02-quickstart.md
+%%DOCSDIR%%/03-configuration.md
+%%DOCSDIR%%/04-keybindings.md
+%%DOCSDIR%%/05-shell-integration.md
+%%DOCSDIR%%/06-search-patterns.md
+%%DOCSDIR%%/07-channels.md
+%%DOCSDIR%%/08-themes.md
+%%DOCSDIR%%/09-cli.md
+%%DOCSDIR%%/10-community-channels-unix.md
+%%DOCSDIR%%/10-community-channels-windows.md
+%%DOCSDIR%%/11-terminal_emulators.md
+%%DOCSDIR%%/12-showcase.md
+%%DOCSDIR%%/13-contributing-channels.md
diff --git a/textproc/textnote/Makefile b/textproc/textnote/Makefile
index 5f64ea2e1d32..78c5694b4d51 100644
--- a/textproc/textnote/Makefile
+++ b/textproc/textnote/Makefile
@@ -1,7 +1,7 @@
PORTNAME= textnote
DISTVERSIONPREFIX= v
DISTVERSION= 1.3.0
-PORTREVISION= 28
+PORTREVISION= 29
CATEGORIES= textproc
MAINTAINER= 0mp@FreeBSD.org
diff --git a/textproc/textql/Makefile b/textproc/textql/Makefile
index fd97f442d716..9758a75c6a2b 100644
--- a/textproc/textql/Makefile
+++ b/textproc/textql/Makefile
@@ -1,6 +1,6 @@
PORTNAME= textql
PORTVERSION= g20210706
-PORTREVISION= 22
+PORTREVISION= 23
CATEGORIES= textproc
MAINTAINER= ume@FreeBSD.org
diff --git a/textproc/translate-toolkit/Makefile b/textproc/translate-toolkit/Makefile
index 87c84a8d5c7a..d686bae76fde 100644
--- a/textproc/translate-toolkit/Makefile
+++ b/textproc/translate-toolkit/Makefile
@@ -1,6 +1,6 @@
PORTNAME= translate-toolkit
PORTVERSION= 3.12.2
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc
MASTER_SITES= PYPI \
https://github.com/translate/translate/releases/download/${PORTVERSION}/
@@ -19,7 +19,7 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=42:devel/py-setuptools@${PY_FL
${RUN_DEPENDS}
RUN_DEPENDS= bash:shells/bash \
msghack:devel/gettext-msghack \
- ${PYTHON_PKGNAMEPREFIX}lxml5>=4.6.3:devel/py-lxml5@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}lxml>=4.6.3:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}sqlite3>=0:databases/py-sqlite3@${PY_FLAVOR}
USES= gettext python shebangfix
diff --git a/textproc/trdsql/Makefile b/textproc/trdsql/Makefile
index f2a20df22cc9..21245c080909 100644
--- a/textproc/trdsql/Makefile
+++ b/textproc/trdsql/Makefile
@@ -1,7 +1,7 @@
PORTNAME= trdsql
DISTVERSIONPREFIX= v
DISTVERSION= 0.20.0
-PORTREVISION= 9
+PORTREVISION= 10
CATEGORIES= textproc
MAINTAINER= lcook@FreeBSD.org
diff --git a/textproc/tree-sitter-grammars/Makefile b/textproc/tree-sitter-grammars/Makefile
index 586c9ea4c669..c2aec35d5499 100644
--- a/textproc/tree-sitter-grammars/Makefile
+++ b/textproc/tree-sitter-grammars/Makefile
@@ -60,6 +60,10 @@ post-extract:
${CP} ${DISTDIR}/${LANG_HASH}/languages.toml ${WRKSRC}
+post-patch:
+ ${REINPLACE_CMD} "s#WRKDIR#${WRKDIR}#" \
+ ${WRKSRC}/src/main.rs
+
post-build:
cd ${WRKSRC}; \
${CARGO_TARGET_DIR}/release/build-tree-sitter --output ./output --tmp ${WRKSRC}/grammars
diff --git a/textproc/tree-sitter-grammars/files/patch-src_main.rs b/textproc/tree-sitter-grammars/files/patch-src_main.rs
index 4197c86a3f26..ea6c62211292 100644
--- a/textproc/tree-sitter-grammars/files/patch-src_main.rs
+++ b/textproc/tree-sitter-grammars/files/patch-src_main.rs
@@ -31,3 +31,11 @@
let path = if let Some(subpath) = grammar.source.subpath.as_ref() {
path.join(subpath)
} else {
+@@ -171,6 +171,7 @@ fn build_tree_sitter(name: &str, path: &Path, output:
+ fn build_tree_sitter(name: &str, path: &Path, output: &Path) -> Result<()> {
+ println!("-----------------------------------");
+ println!("now building tree sitter for {name}");
++ std::env::set_var("XDG_CACHE_HOME", "WRKDIR/.cache");
+ let output = Command::new("tree-sitter")
+ .current_dir(path)
+ .arg("build")
diff --git a/textproc/tui-journal/Makefile b/textproc/tui-journal/Makefile
index 345c9b4c1177..6820068a502c 100644
--- a/textproc/tui-journal/Makefile
+++ b/textproc/tui-journal/Makefile
@@ -1,7 +1,6 @@
PORTNAME= tui-journal
DISTVERSIONPREFIX= v
-DISTVERSION= 0.16.0
-PORTREVISION= 1
+DISTVERSION= 0.16.1
CATEGORIES= textproc
MAINTAINER= dutra@FreeBSD.org
diff --git a/textproc/tui-journal/Makefile.crates b/textproc/tui-journal/Makefile.crates
index 373ad90a1a31..9a5b1c3a4e11 100644
--- a/textproc/tui-journal/Makefile.crates
+++ b/textproc/tui-journal/Makefile.crates
@@ -23,19 +23,18 @@ CARGO_CRATES= addr2line-0.24.2 \
bytes-1.10.1 \
cassowary-0.3.0 \
castaway-0.2.4 \
- cc-1.2.29 \
+ cc-1.2.30 \
cfg-if-1.0.1 \
chrono-0.4.41 \
clap-4.5.41 \
clap_builder-4.5.41 \
clap_derive-4.5.41 \
clap_lex-0.7.5 \
- clipboard-win-5.4.0 \
+ clipboard-win-5.4.1 \
colorchoice-1.0.4 \
compact_str-0.8.1 \
concurrent-queue-2.5.0 \
const-oid-0.9.6 \
- core-foundation-0.9.4 \
core-foundation-sys-0.8.7 \
cpufeatures-0.2.17 \
crc-3.3.0 \
@@ -70,8 +69,6 @@ CARGO_CRATES= addr2line-0.24.2 \
flume-0.11.1 \
fnv-1.0.7 \
foldhash-0.1.5 \
- foreign-types-0.3.2 \
- foreign-types-shared-0.1.1 \
form_urlencoded-1.2.1 \
futures-channel-0.3.31 \
futures-core-0.3.31 \
@@ -109,8 +106,8 @@ CARGO_CRATES= addr2line-0.24.2 \
idna_adapter-1.2.1 \
indexmap-2.10.0 \
indoc-2.0.6 \
- instability-0.3.7 \
- io-uring-0.7.8 \
+ instability-0.3.9 \
+ io-uring-0.7.9 \
is_terminal_polyfill-1.70.1 \
itertools-0.13.0 \
itoa-1.0.15 \
@@ -120,7 +117,7 @@ CARGO_CRATES= addr2line-0.24.2 \
libc-0.2.174 \
libgit2-sys-0.18.2+1.9.1 \
libm-0.2.15 \
- libredox-0.1.4 \
+ libredox-0.1.8 \
libsqlite3-sys-0.30.1 \
libz-sys-1.1.22 \
linux-raw-sys-0.4.15 \
@@ -134,7 +131,6 @@ CARGO_CRATES= addr2line-0.24.2 \
minimal-lexical-0.2.1 \
miniz_oxide-0.8.9 \
mio-1.0.4 \
- native-tls-0.2.14 \
nom-7.1.3 \
num-bigint-dig-0.8.4 \
num-conv-0.1.0 \
@@ -152,10 +148,6 @@ CARGO_CRATES= addr2line-0.24.2 \
object-0.36.7 \
once_cell-1.21.3 \
once_cell_polyfill-1.70.1 \
- openssl-0.10.73 \
- openssl-macros-0.1.1 \
- openssl-probe-0.1.6 \
- openssl-sys-0.9.109 \
option-ext-0.2.0 \
os_pipe-1.2.2 \
parking-2.2.1 \
@@ -185,22 +177,19 @@ CARGO_CRATES= addr2line-0.24.2 \
ratatui-0.29.0 \
rayon-1.10.0 \
rayon-core-1.12.1 \
- redox_syscall-0.5.13 \
+ redox_syscall-0.5.17 \
redox_users-0.5.0 \
rsa-0.9.8 \
- rustc-demangle-0.1.25 \
+ rustc-demangle-0.1.26 \
rustix-0.38.44 \
- rustix-1.0.7 \
+ rustix-1.0.8 \
rustversion-1.0.21 \
ryu-1.0.20 \
- schannel-0.1.27 \
scopeguard-1.2.0 \
- security-framework-2.11.1 \
- security-framework-sys-2.14.0 \
serde-1.0.219 \
serde_derive-1.0.219 \
- serde_json-1.0.140 \
- serde_spanned-0.6.9 \
+ serde_json-1.0.141 \
+ serde_spanned-1.0.0 \
serde_urlencoded-0.7.1 \
sha1-0.10.6 \
sha2-0.10.9 \
@@ -213,7 +202,7 @@ CARGO_CRATES= addr2line-0.24.2 \
slab-0.4.10 \
smallvec-1.15.1 \
smawk-0.3.2 \
- socket2-0.5.10 \
+ socket2-0.6.0 \
spin-0.9.8 \
spki-0.7.3 \
sqlx-0.8.6 \
@@ -244,13 +233,13 @@ CARGO_CRATES= addr2line-0.24.2 \
tinystr-0.8.1 \
tinyvec-1.9.0 \
tinyvec_macros-0.1.1 \
- tokio-1.46.1 \
+ tokio-1.47.0 \
tokio-macros-2.5.0 \
tokio-stream-0.1.17 \
- toml-0.8.23 \
- toml_datetime-0.6.11 \
- toml_edit-0.22.27 \
- toml_write-0.1.2 \
+ toml-0.9.2 \
+ toml_datetime-0.7.0 \
+ toml_parser-1.0.1 \
+ toml_writer-1.0.2 \
tracing-0.1.41 \
tracing-attributes-0.1.30 \
tracing-core-0.1.34 \
@@ -297,7 +286,6 @@ CARGO_CRATES= addr2line-0.24.2 \
windows-result-0.3.4 \
windows-strings-0.4.2 \
windows-sys-0.48.0 \
- windows-sys-0.52.0 \
windows-sys-0.59.0 \
windows-sys-0.60.2 \
windows-targets-0.48.5 \
diff --git a/textproc/tui-journal/distinfo b/textproc/tui-journal/distinfo
index 902809dbe9bb..859c657a6a11 100644
--- a/textproc/tui-journal/distinfo
+++ b/textproc/tui-journal/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1752858539
+TIMESTAMP = 1757953652
SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa
@@ -49,8 +49,8 @@ SHA256 (rust/crates/cassowary-0.3.0.crate) = df8670b8c7b9dae1793364eafadf7239c40
SIZE (rust/crates/cassowary-0.3.0.crate) = 22876
SHA256 (rust/crates/castaway-0.2.4.crate) = dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a
SIZE (rust/crates/castaway-0.2.4.crate) = 12546
-SHA256 (rust/crates/cc-1.2.29.crate) = 5c1599538de2394445747c8cf7935946e3cc27e9625f889d979bfb2aaf569362
-SIZE (rust/crates/cc-1.2.29.crate) = 108072
+SHA256 (rust/crates/cc-1.2.30.crate) = deec109607ca693028562ed836a5f1c4b8bd77755c4e132fc5ce11b0b6211ae7
+SIZE (rust/crates/cc-1.2.30.crate) = 108550
SHA256 (rust/crates/cfg-if-1.0.1.crate) = 9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268
SIZE (rust/crates/cfg-if-1.0.1.crate) = 8683
SHA256 (rust/crates/chrono-0.4.41.crate) = c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d
@@ -63,8 +63,8 @@ SHA256 (rust/crates/clap_derive-4.5.41.crate) = ef4f52386a59ca4c860f7393bcf8abd8
SIZE (rust/crates/clap_derive-4.5.41.crate) = 33493
SHA256 (rust/crates/clap_lex-0.7.5.crate) = b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675
SIZE (rust/crates/clap_lex-0.7.5.crate) = 13469
-SHA256 (rust/crates/clipboard-win-5.4.0.crate) = 15efe7a882b08f34e38556b14f2fb3daa98769d06c7f0c1b076dfd0d983bc892
-SIZE (rust/crates/clipboard-win-5.4.0.crate) = 20559
+SHA256 (rust/crates/clipboard-win-5.4.1.crate) = bde03770d3df201d4fb868f2c9c59e66a3e4e2bd06692a0fe701e7103c7e84d4
+SIZE (rust/crates/clipboard-win-5.4.1.crate) = 20994
SHA256 (rust/crates/colorchoice-1.0.4.crate) = b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75
SIZE (rust/crates/colorchoice-1.0.4.crate) = 8196
SHA256 (rust/crates/compact_str-0.8.1.crate) = 3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32
@@ -73,8 +73,6 @@ SHA256 (rust/crates/concurrent-queue-2.5.0.crate) = 4ca0197aee26d1ae37445ee532fe
SIZE (rust/crates/concurrent-queue-2.5.0.crate) = 22654
SHA256 (rust/crates/const-oid-0.9.6.crate) = c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8
SIZE (rust/crates/const-oid-0.9.6.crate) = 45382
-SHA256 (rust/crates/core-foundation-0.9.4.crate) = 91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f
-SIZE (rust/crates/core-foundation-0.9.4.crate) = 27743
SHA256 (rust/crates/core-foundation-sys-0.8.7.crate) = 773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b
SIZE (rust/crates/core-foundation-sys-0.8.7.crate) = 37712
SHA256 (rust/crates/cpufeatures-0.2.17.crate) = 59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280
@@ -143,10 +141,6 @@ SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da2
SIZE (rust/crates/fnv-1.0.7.crate) = 11266
SHA256 (rust/crates/foldhash-0.1.5.crate) = d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2
SIZE (rust/crates/foldhash-0.1.5.crate) = 21901
-SHA256 (rust/crates/foreign-types-0.3.2.crate) = f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1
-SIZE (rust/crates/foreign-types-0.3.2.crate) = 7504
-SHA256 (rust/crates/foreign-types-shared-0.1.1.crate) = 00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b
-SIZE (rust/crates/foreign-types-shared-0.1.1.crate) = 5672
SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456
SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969
SHA256 (rust/crates/futures-channel-0.3.31.crate) = 2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10
@@ -221,10 +215,10 @@ SHA256 (rust/crates/indexmap-2.10.0.crate) = fe4cd85333e22411419a0bcae1297d25e58
SIZE (rust/crates/indexmap-2.10.0.crate) = 95836
SHA256 (rust/crates/indoc-2.0.6.crate) = f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd
SIZE (rust/crates/indoc-2.0.6.crate) = 17164
-SHA256 (rust/crates/instability-0.3.7.crate) = 0bf9fed6d91cfb734e7476a06bde8300a1b94e217e1b523b6f0cd1a01998c71d
-SIZE (rust/crates/instability-0.3.7.crate) = 13682
-SHA256 (rust/crates/io-uring-0.7.8.crate) = b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013
-SIZE (rust/crates/io-uring-0.7.8.crate) = 94958
+SHA256 (rust/crates/instability-0.3.9.crate) = 435d80800b936787d62688c927b6490e887c7ef5ff9ce922c6c6050fca75eb9a
+SIZE (rust/crates/instability-0.3.9.crate) = 14451
+SHA256 (rust/crates/io-uring-0.7.9.crate) = d93587f37623a1a17d94ef2bc9ada592f5465fe7732084ab7beefabe5c77c0c4
+SIZE (rust/crates/io-uring-0.7.9.crate) = 99792
SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf
SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492
SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186
@@ -243,8 +237,8 @@ SHA256 (rust/crates/libgit2-sys-0.18.2+1.9.1.crate) = 1c42fe03df2bd3c53a3a9c7317
SIZE (rust/crates/libgit2-sys-0.18.2+1.9.1.crate) = 1856057
SHA256 (rust/crates/libm-0.2.15.crate) = f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de
SIZE (rust/crates/libm-0.2.15.crate) = 156108
-SHA256 (rust/crates/libredox-0.1.4.crate) = 1580801010e535496706ba011c15f8532df6b42297d2e471fec38ceadd8c0638
-SIZE (rust/crates/libredox-0.1.4.crate) = 6946
+SHA256 (rust/crates/libredox-0.1.8.crate) = 360e552c93fa0e8152ab463bc4c4837fce76a225df11dfaeea66c313de5e61f7
+SIZE (rust/crates/libredox-0.1.8.crate) = 7268
SHA256 (rust/crates/libsqlite3-sys-0.30.1.crate) = 2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149
SIZE (rust/crates/libsqlite3-sys-0.30.1.crate) = 5122296
SHA256 (rust/crates/libz-sys-1.1.22.crate) = 8b70e7a7df205e92a1a4cd9aaae7898dac0aa555503cc0a649494d0d60e7651d
@@ -271,8 +265,6 @@ SHA256 (rust/crates/miniz_oxide-0.8.9.crate) = 1fa76a2c86f704bdb222d66965fb3d632
SIZE (rust/crates/miniz_oxide-0.8.9.crate) = 67132
SHA256 (rust/crates/mio-1.0.4.crate) = 78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c
SIZE (rust/crates/mio-1.0.4.crate) = 104212
-SHA256 (rust/crates/native-tls-0.2.14.crate) = 87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e
-SIZE (rust/crates/native-tls-0.2.14.crate) = 29385
SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
SIZE (rust/crates/nom-7.1.3.crate) = 117570
SHA256 (rust/crates/num-bigint-dig-0.8.4.crate) = dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151
@@ -307,14 +299,6 @@ SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a71648
SIZE (rust/crates/once_cell-1.21.3.crate) = 34534
SHA256 (rust/crates/once_cell_polyfill-1.70.1.crate) = a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad
SIZE (rust/crates/once_cell_polyfill-1.70.1.crate) = 7510
-SHA256 (rust/crates/openssl-0.10.73.crate) = 8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8
-SIZE (rust/crates/openssl-0.10.73.crate) = 283994
-SHA256 (rust/crates/openssl-macros-0.1.1.crate) = a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c
-SIZE (rust/crates/openssl-macros-0.1.1.crate) = 5601
-SHA256 (rust/crates/openssl-probe-0.1.6.crate) = d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e
-SIZE (rust/crates/openssl-probe-0.1.6.crate) = 8128
-SHA256 (rust/crates/openssl-sys-0.9.109.crate) = 90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571
-SIZE (rust/crates/openssl-sys-0.9.109.crate) = 78247
SHA256 (rust/crates/option-ext-0.2.0.crate) = 04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d
SIZE (rust/crates/option-ext-0.2.0.crate) = 7345
SHA256 (rust/crates/os_pipe-1.2.2.crate) = db335f4760b14ead6290116f2427bf33a14d4f0617d49f78a246de10c1831224
@@ -373,38 +357,32 @@ SHA256 (rust/crates/rayon-1.10.0.crate) = b418a60154510ca1a002a752ca9714984e21e4
SIZE (rust/crates/rayon-1.10.0.crate) = 180155
SHA256 (rust/crates/rayon-core-1.12.1.crate) = 1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2
SIZE (rust/crates/rayon-core-1.12.1.crate) = 70701
-SHA256 (rust/crates/redox_syscall-0.5.13.crate) = 0d04b7d0ee6b4a0207a0a7adb104d23ecb0b47d6beae7152d0fa34b692b29fd6
-SIZE (rust/crates/redox_syscall-0.5.13.crate) = 29489
+SHA256 (rust/crates/redox_syscall-0.5.17.crate) = 5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77
+SIZE (rust/crates/redox_syscall-0.5.17.crate) = 30002
SHA256 (rust/crates/redox_users-0.5.0.crate) = dd6f9d3d47bdd2ad6945c5015a226ec6155d0bcdfd8f7cd29f86b71f8de99d2b
SIZE (rust/crates/redox_users-0.5.0.crate) = 15586
SHA256 (rust/crates/rsa-0.9.8.crate) = 78928ac1ed176a5ca1d17e578a1825f3d81ca54cf41053a592584b020cfd691b
SIZE (rust/crates/rsa-0.9.8.crate) = 85741
-SHA256 (rust/crates/rustc-demangle-0.1.25.crate) = 989e6739f80c4ad5b13e0fd7fe89531180375b18520cc8c82080e4dc4035b84f
-SIZE (rust/crates/rustc-demangle-0.1.25.crate) = 29590
+SHA256 (rust/crates/rustc-demangle-0.1.26.crate) = 56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace
+SIZE (rust/crates/rustc-demangle-0.1.26.crate) = 30340
SHA256 (rust/crates/rustix-0.38.44.crate) = fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154
SIZE (rust/crates/rustix-0.38.44.crate) = 379347
-SHA256 (rust/crates/rustix-1.0.7.crate) = c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266
-SIZE (rust/crates/rustix-1.0.7.crate) = 414500
+SHA256 (rust/crates/rustix-1.0.8.crate) = 11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8
+SIZE (rust/crates/rustix-1.0.8.crate) = 416688
SHA256 (rust/crates/rustversion-1.0.21.crate) = 8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d
SIZE (rust/crates/rustversion-1.0.21.crate) = 21001
SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f
SIZE (rust/crates/ryu-1.0.20.crate) = 48738
-SHA256 (rust/crates/schannel-0.1.27.crate) = 1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d
-SIZE (rust/crates/schannel-0.1.27.crate) = 42772
SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49
SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619
-SHA256 (rust/crates/security-framework-2.11.1.crate) = 897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02
-SIZE (rust/crates/security-framework-2.11.1.crate) = 80188
-SHA256 (rust/crates/security-framework-sys-2.14.0.crate) = 49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32
-SIZE (rust/crates/security-framework-sys-2.14.0.crate) = 20537
SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6
SIZE (rust/crates/serde-1.0.219.crate) = 78983
SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00
SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798
-SHA256 (rust/crates/serde_json-1.0.140.crate) = 20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373
-SIZE (rust/crates/serde_json-1.0.140.crate) = 154852
-SHA256 (rust/crates/serde_spanned-0.6.9.crate) = bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3
-SIZE (rust/crates/serde_spanned-0.6.9.crate) = 10210
+SHA256 (rust/crates/serde_json-1.0.141.crate) = 30b9eff21ebe718216c6ec64e1d9ac57087aad11efc64e32002bce4a0d4c03d3
+SIZE (rust/crates/serde_json-1.0.141.crate) = 155322
+SHA256 (rust/crates/serde_spanned-1.0.0.crate) = 40734c41988f7306bb04f0ecf60ec0f3f1caa34290e4e8ea471dcd3346483b83
+SIZE (rust/crates/serde_spanned-1.0.0.crate) = 10956
SHA256 (rust/crates/serde_urlencoded-0.7.1.crate) = d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd
SIZE (rust/crates/serde_urlencoded-0.7.1.crate) = 12822
SHA256 (rust/crates/sha1-0.10.6.crate) = e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba
@@ -429,8 +407,8 @@ SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69
SIZE (rust/crates/smallvec-1.15.1.crate) = 38116
SHA256 (rust/crates/smawk-0.3.2.crate) = b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c
SIZE (rust/crates/smawk-0.3.2.crate) = 13831
-SHA256 (rust/crates/socket2-0.5.10.crate) = e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678
-SIZE (rust/crates/socket2-0.5.10.crate) = 58169
+SHA256 (rust/crates/socket2-0.6.0.crate) = 233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807
+SIZE (rust/crates/socket2-0.6.0.crate) = 57974
SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67
SIZE (rust/crates/spin-0.9.8.crate) = 38958
SHA256 (rust/crates/spki-0.7.3.crate) = d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d
@@ -491,20 +469,20 @@ SHA256 (rust/crates/tinyvec-1.9.0.crate) = 09b3661f17e86524eccd4371ab0429194e0d7
SIZE (rust/crates/tinyvec-1.9.0.crate) = 54137
SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20
SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865
-SHA256 (rust/crates/tokio-1.46.1.crate) = 0cc3a2344dafbe23a245241fe8b09735b521110d30fcefbbd5feb1797ca35d17
-SIZE (rust/crates/tokio-1.46.1.crate) = 823632
+SHA256 (rust/crates/tokio-1.47.0.crate) = 43864ed400b6043a4757a25c7a64a8efde741aed79a056a2fb348a406701bb35
+SIZE (rust/crates/tokio-1.47.0.crate) = 828980
SHA256 (rust/crates/tokio-macros-2.5.0.crate) = 6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8
SIZE (rust/crates/tokio-macros-2.5.0.crate) = 12617
SHA256 (rust/crates/tokio-stream-0.1.17.crate) = eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047
SIZE (rust/crates/tokio-stream-0.1.17.crate) = 38477
-SHA256 (rust/crates/toml-0.8.23.crate) = dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362
-SIZE (rust/crates/toml-0.8.23.crate) = 36050
-SHA256 (rust/crates/toml_datetime-0.6.11.crate) = 22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c
-SIZE (rust/crates/toml_datetime-0.6.11.crate) = 16125
-SHA256 (rust/crates/toml_edit-0.22.27.crate) = 41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a
-SIZE (rust/crates/toml_edit-0.22.27.crate) = 78602
-SHA256 (rust/crates/toml_write-0.1.2.crate) = 5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801
-SIZE (rust/crates/toml_write-0.1.2.crate) = 15660
+SHA256 (rust/crates/toml-0.9.2.crate) = ed0aee96c12fa71097902e0bb061a5e1ebd766a6636bb605ba401c45c1650eac
+SIZE (rust/crates/toml-0.9.2.crate) = 56695
+SHA256 (rust/crates/toml_datetime-0.7.0.crate) = bade1c3e902f58d73d3f294cd7f20391c1cb2fbcb643b73566bc773971df91e3
+SIZE (rust/crates/toml_datetime-0.7.0.crate) = 18108
+SHA256 (rust/crates/toml_parser-1.0.1.crate) = 97200572db069e74c512a14117b296ba0a80a30123fbbb5aa1f4a348f639ca30
+SIZE (rust/crates/toml_parser-1.0.1.crate) = 35063
+SHA256 (rust/crates/toml_writer-1.0.2.crate) = fcc842091f2def52017664b53082ecbbeb5c7731092bad69d2c63050401dfd64
+SIZE (rust/crates/toml_writer-1.0.2.crate) = 16988
SHA256 (rust/crates/tracing-0.1.41.crate) = 784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0
SIZE (rust/crates/tracing-0.1.41.crate) = 82448
SHA256 (rust/crates/tracing-attributes-0.1.30.crate) = 81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903
@@ -597,8 +575,6 @@ SHA256 (rust/crates/windows-strings-0.4.2.crate) = 56e6c93f3a0c3b36176cb1327a495
SIZE (rust/crates/windows-strings-0.4.2.crate) = 13983
SHA256 (rust/crates/windows-sys-0.48.0.crate) = 677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9
SIZE (rust/crates/windows-sys-0.48.0.crate) = 2628884
-SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d
-SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877
SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b
SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323
SHA256 (rust/crates/windows-sys-0.60.2.crate) = f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb
@@ -687,5 +663,5 @@ SHA256 (rust/crates/zerovec-0.11.2.crate) = 4a05eb080e015ba39cc9e23bbe5e7fb04d5f
SIZE (rust/crates/zerovec-0.11.2.crate) = 124500
SHA256 (rust/crates/zerovec-derive-0.11.1.crate) = 5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f
SIZE (rust/crates/zerovec-derive-0.11.1.crate) = 21294
-SHA256 (AmmarAbouZor-tui-journal-v0.16.0_GH0.tar.gz) = 2566eb09c57c70902aa38ecc75a1d961b5f6f46e1a0092d1b2db325a201675b1
-SIZE (AmmarAbouZor-tui-journal-v0.16.0_GH0.tar.gz) = 2010224
+SHA256 (AmmarAbouZor-tui-journal-v0.16.1_GH0.tar.gz) = 50175b107adf10a1555577cd84d83ae74a06430066598ac3e1e3f1d8bca91ff0
+SIZE (AmmarAbouZor-tui-journal-v0.16.1_GH0.tar.gz) = 2009511
diff --git a/textproc/uni/Makefile b/textproc/uni/Makefile
index ca32b88876c9..a94a411470fe 100644
--- a/textproc/uni/Makefile
+++ b/textproc/uni/Makefile
@@ -1,7 +1,7 @@
PORTNAME= uni
PORTVERSION= 2.8.0
DISTVERSIONPREFIX= v
-PORTREVISION= 6
+PORTREVISION= 7
CATEGORIES= textproc
MAINTAINER= thierry@FreeBSD.org
diff --git a/textproc/up/Makefile b/textproc/up/Makefile
index a7a2a9871a24..16e10c18cb23 100644
--- a/textproc/up/Makefile
+++ b/textproc/up/Makefile
@@ -1,7 +1,7 @@
PORTNAME= up
DISTVERSIONPREFIX= v
DISTVERSION= 0.4
-PORTREVISION= 28
+PORTREVISION= 29
CATEGORIES= textproc
MAINTAINER= 0mp@FreeBSD.org
diff --git a/textproc/vale/Makefile b/textproc/vale/Makefile
index a8bf534673ce..c59e5c74ff5b 100644
--- a/textproc/vale/Makefile
+++ b/textproc/vale/Makefile
@@ -1,7 +1,7 @@
PORTNAME= vale
DISTVERSIONPREFIX= v
DISTVERSION= 3.12.0
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc
MAINTAINER= bofh@FreeBSD.org
diff --git a/textproc/vgrep/Makefile b/textproc/vgrep/Makefile
index d4c26dcfe178..84f9f65e81f1 100644
--- a/textproc/vgrep/Makefile
+++ b/textproc/vgrep/Makefile
@@ -1,7 +1,7 @@
PORTNAME= vgrep
DISTVERSIONPREFIX= v
DISTVERSION= 2.8.0
-PORTREVISION= 9
+PORTREVISION= 10
CATEGORIES= textproc
MAINTAINER= lcook@FreeBSD.org
diff --git a/textproc/xan/Makefile b/textproc/xan/Makefile
index e9355f3454ff..276298c31797 100644
--- a/textproc/xan/Makefile
+++ b/textproc/xan/Makefile
@@ -1,6 +1,5 @@
PORTNAME= xan
-DISTVERSION= 0.52.0
-PORTREVISION= 1
+DISTVERSION= 0.53.0
CATEGORIES= textproc
MAINTAINER= tagattie@FreeBSD.org
diff --git a/textproc/xan/Makefile.crates b/textproc/xan/Makefile.crates
index 1ce014af47d7..af87b8a6d32d 100644
--- a/textproc/xan/Makefile.crates
+++ b/textproc/xan/Makefile.crates
@@ -123,6 +123,8 @@ CARGO_CRATES= adler2-2.0.0 \
instability-0.3.7 \
itertools-0.13.0 \
itoa-1.0.15 \
+ jemalloc-sys-0.5.4+5.3.0-patched \
+ jemallocator-0.5.4 \
jiff-0.2.14 \
jiff-static-0.2.14 \
jiff-tzdb-0.1.4 \
diff --git a/textproc/xan/distinfo b/textproc/xan/distinfo
index 525cf85253d4..8b7507818670 100644
--- a/textproc/xan/distinfo
+++ b/textproc/xan/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1754183213
+TIMESTAMP = 1758519511
SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
SIZE (rust/crates/adler2-2.0.0.crate) = 13529
SHA256 (rust/crates/ahash-0.8.12.crate) = 5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75
@@ -249,6 +249,10 @@ SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d
SIZE (rust/crates/itertools-0.13.0.crate) = 146261
SHA256 (rust/crates/itoa-1.0.15.crate) = 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c
SIZE (rust/crates/itoa-1.0.15.crate) = 11231
+SHA256 (rust/crates/jemalloc-sys-0.5.4+5.3.0-patched.crate) = ac6c1946e1cea1788cbfde01c993b52a10e2da07f4bac608228d1bed20bfebf2
+SIZE (rust/crates/jemalloc-sys-0.5.4+5.3.0-patched.crate) = 884321
+SHA256 (rust/crates/jemallocator-0.5.4.crate) = a0de374a9f8e63150e6f5e8a60cc14c668226d7a347d8aee1a45766e3c4dd3bc
+SIZE (rust/crates/jemallocator-0.5.4.crate) = 13088
SHA256 (rust/crates/jiff-0.2.14.crate) = a194df1107f33c79f4f93d02c80798520551949d59dfad22b6157048a88cca93
SIZE (rust/crates/jiff-0.2.14.crate) = 712978
SHA256 (rust/crates/jiff-static-0.2.14.crate) = 6c6e1db7ed32c6c71b759497fae34bf7933636f75a251b9e736555da426f6442
@@ -613,5 +617,5 @@ SHA256 (rust/crates/zlib-rs-0.5.1.crate) = 626bd9fa9734751fc50d6060752170984d705
SIZE (rust/crates/zlib-rs-0.5.1.crate) = 193055
SHA256 (rust/crates/zopfli-0.8.1.crate) = e5019f391bac5cf252e93bbcc53d039ffd62c7bfb7c150414d61369afe57e946
SIZE (rust/crates/zopfli-0.8.1.crate) = 50972
-SHA256 (medialab-xan-0.52.0_GH0.tar.gz) = da4ee61b829284948841f88a7ce01078067aae29f0965311f0c4632467ff8721
-SIZE (medialab-xan-0.52.0_GH0.tar.gz) = 5898409
+SHA256 (medialab-xan-0.53.0_GH0.tar.gz) = 0b7bdea4cf18ea6dcaeaffb64fa2b7f7dca07760af3c89ac6955c338e94ad49b
+SIZE (medialab-xan-0.53.0_GH0.tar.gz) = 5901324
diff --git a/textproc/xml2rfc/Makefile b/textproc/xml2rfc/Makefile
index eb8d426ef60e..000327a6482e 100644
--- a/textproc/xml2rfc/Makefile
+++ b/textproc/xml2rfc/Makefile
@@ -1,5 +1,6 @@
PORTNAME= xml2rfc
-PORTVERSION= 3.30.1
+PORTVERSION= 3.30.2
+PORTREVISION= 1
CATEGORIES= textproc
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
@@ -13,7 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PY_SETUPTOOLS} \
${PYTHON_PKGNAMEPREFIX}wheel>=0.44.0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>=5.3.0:devel/py-lxml5@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>=5.3.0:devel/py-lxml@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}requests>=2.5.0:www/py-requests@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}country>=22.3.5:devel/py-country@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}intervaltree>=3.1.0:devel/py-intervaltree@${PY_FLAVOR} \
diff --git a/textproc/xml2rfc/distinfo b/textproc/xml2rfc/distinfo
index 668260943b53..5b1bfe643cdf 100644
--- a/textproc/xml2rfc/distinfo
+++ b/textproc/xml2rfc/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1756661238
-SHA256 (xml2rfc-3.30.1.tar.gz) = 9299d9a9f02c41a51da28674c54cf4ed99f457ea121edcc0727026fcfd21d746
-SIZE (xml2rfc-3.30.1.tar.gz) = 421403
+TIMESTAMP = 1757432609
+SHA256 (xml2rfc-3.30.2.tar.gz) = dfd9f23288cfa805ad5bb613c9540dc1b349da98e117a16e0ca887d2261ed311
+SIZE (xml2rfc-3.30.2.tar.gz) = 421930
diff --git a/textproc/xmlto/Makefile b/textproc/xmlto/Makefile
index 278d599474d7..640427a37497 100644
--- a/textproc/xmlto/Makefile
+++ b/textproc/xmlto/Makefile
@@ -17,8 +17,8 @@ WWW= https://pagure.io/xmlto/
LICENSE= GPLv2
-DEPRECATED= Depends on vulnerable unmaintained libxslt
-EXPIRATION_DATE=2025-09-12
+DEPRECATED= Depends on vulnerable libxslt
+EXPIRATION_DATE=2025-12-31
BUILD_DEPENDS= ${BASH_CMD}:shells/bash \
${GETOPT_CMD}:misc/getopt \
diff --git a/textproc/yamlfmt/Makefile b/textproc/yamlfmt/Makefile
index 1330f69987b4..23dd599bb736 100644
--- a/textproc/yamlfmt/Makefile
+++ b/textproc/yamlfmt/Makefile
@@ -1,7 +1,7 @@
PORTNAME= yamlfmt
DISTVERSIONPREFIX= v
DISTVERSION= 0.17.2
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= textproc
MAINTAINER= meta@FreeBSD.org
diff --git a/textproc/yelp-tools/Makefile b/textproc/yelp-tools/Makefile
index f04feeacedb0..c15ffda2bc65 100644
--- a/textproc/yelp-tools/Makefile
+++ b/textproc/yelp-tools/Makefile
@@ -1,6 +1,6 @@
PORTNAME= yelp-tools
PORTVERSION= 42.1
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc gnome
MASTER_SITES= GNOME
DIST_SUBDIR= gnome
@@ -11,7 +11,7 @@ WWW= https://gitlab.gnome.org/GNOME/yelp-tools
LICENSE= GPLv2+
-BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml5>0:devel/py-lxml5@${PY_FLAVOR} \
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}lxml>0:devel/py-lxml@${PY_FLAVOR} \
itstool:textproc/itstool \
yelp-xsl>=0:textproc/yelp-xsl
diff --git a/textproc/ytt/Makefile b/textproc/ytt/Makefile
index 1a53f933b086..7985896042fd 100644
--- a/textproc/ytt/Makefile
+++ b/textproc/ytt/Makefile
@@ -1,7 +1,7 @@
PORTNAME= ytt
DISTVERSIONPREFIX= v
DISTVERSION= 0.52.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc
MAINTAINER= yuri@FreeBSD.org