From nobody Fri Sep 16 03:45:02 2022 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4MTKhb1kG0z4c8Fd; Fri, 16 Sep 2022 03:45:03 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4MTKhb14Wdz3Rl3; Fri, 16 Sep 2022 03:45:03 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1663299903; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ggy0MfOnWvmYXCwsu0z1FFKdaDND45os/z/IYze5C6s=; b=HQMFAwzX/fBO9WjM2sDs+oBmiiTMAwb3dtx/qiGfdF8LSEik/AMZNfKVU3DgG706CG+Vs3 DhfGPlkIWDVtzowmaWgmjpHpiSigqRHK56ZJ5GYlSe2fiVZMSnV/Utyen7/Tknj7BK7trI j/SoGuJCdMDXH9dIS5g4z1IKFYOEF3RhHij7fOQOqvl7Km0P8L2wczW7J4aTDbZBwrvOcy gfyB6NP9CAW4cGDjswpwCTVZViKuYprPXH1oQoOOYsBKk+6z0c1jNC1/YgH4PgZtEG1Lkq Ob9lYuNhbZNicDidBuTRkoD5DrYIJyfzP3554lYH+4hkcvdQ8mvozEVSzySdyg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4MTKhb00DwzF5P; Fri, 16 Sep 2022 03:45:02 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 28G3j24I080680; Fri, 16 Sep 2022 03:45:02 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 28G3j2qk080679; Fri, 16 Sep 2022 03:45:02 GMT (envelope-from git) Date: Fri, 16 Sep 2022 03:45:02 GMT Message-Id: <202209160345.28G3j2qk080679@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Kai Knoblich Subject: git: 09353d0a9c71 - main - games/anki: Update to 2.1.54 List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kai X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 09353d0a9c71e245d4460d90af49451261a8d587 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1663299903; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ggy0MfOnWvmYXCwsu0z1FFKdaDND45os/z/IYze5C6s=; b=cyLvXMsrFhDZNqNwteqWIqkNmjhBCFNysJRvYIw/KvgGoks7w9BVj+ASA2yCI+opRArvv5 cJPxgJPxl64GvMkH9rsae5ERbtb30VP5JnDT84O+TTHw9dUNHda5+5wnPzdK+nJW5yMxYY CtUz+3ERLGoeTlXIWE5QnyyjlCiBFN1KLXejiYYk3KH646TwKHNIdV7J1Szo90Tsczw1ce b+9iFXqryBfDuRg0dqAnKSrguy0siZnWNNeVtxN4Twqe35tEm4M3xV9Dt8F88tPQzciJqL 5KyWVu9TqK2Sv8vyaRwhZe+my1cNBJ/rHDvp8TDjH+/PfUrEtaXJurePe8h7mg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1663299903; a=rsa-sha256; cv=none; b=yKdo1EuyPwqwUjrZZNn+cWPTll4ETVTwXazGgwDsQOgceM1aeabSqEN/vXMh2RrMJFLzT/ vGrEeqfQqXdmmnRfkJ9tYDkUJsg1s4vwi0rAz3JszEzCgaNY+lXzDCoAwXXJNE704bJtTb KvxAjhcf5N8njmdeztyoj3cu2Y1KOnCoXS/Jflp8ox2x8SJfCZRkFTimi9O2F8wqetXI11 WJGOqUZ8U1+SvvlqQmeTLeTirTgNfqQs3x8MbiekRqnpVRHA/EGwBw0EPkMO7MFwdV164e vlTDhimKURNgv1J8lqmV00JwNtMg7mjas3TvsmQLi8bfwC4RHoKRTHF3gqeUvQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by kai: URL: https://cgit.FreeBSD.org/ports/commit/?id=09353d0a9c71e245d4460d90af49451261a8d587 commit 09353d0a9c71e245d4460d90af49451261a8d587 Author: Kai Knoblich AuthorDate: 2022-09-16 03:42:24 +0000 Commit: Kai Knoblich CommitDate: 2022-09-16 03:42:24 +0000 games/anki: Update to 2.1.54 * Remove BROKEN for aarch64 as the FreeBSD related sections in the Bazel rules should now be architecture independent. * Build a separate binary version of "esbuild" beforehand as the JS counterpart, which is used by the Bazel NodeJS ruleset, has fixed version checks that cannot patched out easily. Changelogs since 2.1.49: https://github.com/ankitects/anki/releases/tag/2.1.54 https://github.com/ankitects/anki/releases/tag/2.1.53 https://github.com/ankitects/anki/releases/tag/2.1.52 https://github.com/ankitects/anki/releases/tag/2.1.51 https://github.com/ankitects/anki/releases/tag/2.1.50 Reviewed by: tcberner (earlier revision) MFH: No (feature release) Differential Revision: https://reviews.freebsd.org/D36461 --- games/anki/Makefile | 504 +++++++------ games/anki/distinfo | 790 +++++++++++---------- games/anki/files/bazel/BUILD.bazel-i18n | 10 - games/anki/files/bazel/BUILD.bazel-pyqt5 | 27 - games/anki/files/bazel/pyqt5.bzl | 13 - games/anki/files/bazel/repos.bzl | 20 +- games/anki/files/patch-WORKSPACE | 9 - games/anki/files/patch-defs.bzl | 47 +- games/anki/files/patch-late__deps.bzl | 16 + ...cal__repos_esbuild__toolchain_esbuild__repo.bzl | 14 - ...h-local__repos_esbuild__toolchain_toolchain.bzl | 12 - ...epos_rules__nodejs_internal_common_os__name.bzl | 29 - ...__nodejs_internal_npm__install_npm__install.bzl | 10 +- ...repos_rules__nodejs_nodejs_private_os__name.bzl | 33 + ...nodejs_toolchains_esbuild_esbuild__packages.bzl | 23 + ...js_toolchains_esbuild_esbuild__repositories.bzl | 43 ++ ...repos_rules__nodejs_toolchains_node_BUILD.bazel | 29 +- games/anki/files/patch-platforms_BUILD.bazel | 21 +- games/anki/files/patch-proto_protobuf.bzl | 15 +- games/anki/files/patch-pylib_BUILD.bazel | 52 ++ games/anki/files/patch-pylib_anki_BUILD.bazel | 23 +- .../files/patch-pylib_anki___backend_BUILD.bazel | 15 +- games/anki/files/patch-pylib_tools_BUILD.bazel | 17 +- games/anki/files/patch-python_binary.bzl | 22 + games/anki/files/patch-python_pyqt_install.py | 30 + .../{patch-python.bzl => patch-python_python.bzl} | 6 +- games/anki/files/patch-python_stubs_BUILD.bazel | 35 + games/anki/files/patch-qt_BUILD.bazel | 25 +- games/anki/files/patch-qt_aqt_BUILD.bazel | 10 +- games/anki/files/patch-rslib_Cargo.toml | 16 - games/anki/files/patch-scripts_BUILD.bazel | 10 - ...tch-scripts_status.sh => patch-tools_status.sh} | 4 +- games/anki/files/patch-ts_lib_BUILD.bazel | 17 +- games/anki/pkg-message | 9 + games/anki/pkg-plist | 378 +++++++++- 35 files changed, 1433 insertions(+), 901 deletions(-) diff --git a/games/anki/Makefile b/games/anki/Makefile index 4d4a1e4fb6d3..a6ea8d1d1370 100644 --- a/games/anki/Makefile +++ b/games/anki/Makefile @@ -1,10 +1,11 @@ PORTNAME= anki -DISTVERSION= 2.1.49 -PORTREVISION= 4 +DISTVERSION= 2.1.54 # Don't forget to update ${_MY_BUILDHASH} if DISTVERSION changes CATEGORIES= games education python -MASTER_SITES= LOCAL/kai/:yarncache -DISTFILES= anki-yarn-cache-${DISTVERSION}${EXTRACT_SUFX}:yarncache +MASTER_SITES= LOCAL/kai/:yarncache \ + LOCAL/kai/:npmcache +DISTFILES= anki-yarn-cache-${DISTVERSION}${EXTRACT_SUFX}:yarncache \ + anki-npm-cache-${DISTVERSION}${EXTRACT_SUFX}:npmcache MAINTAINER= kai@FreeBSD.org COMMENT= Flashcard trainer with spaced repetition @@ -13,15 +14,14 @@ WWW= https://apps.ankiweb.net/ LICENSE= AGPLv3+ LICENSE_FILE= ${WRKSRC}/LICENSE -BROKEN_aarch64= needs adjustments (e.g. "//platforms:freebsd_arm64") for the shipped Bazel rules files to include several files during build. - NOT_FOR_ARCHS= armv6 armv7 i386 mips powerpc NOT_FOR_ARCHS_REASON= the bazel build framework supports only 64-bit systems. BUILD_DEPENDS= bash:shells/bash \ bazel:devel/bazel \ - esbuild:devel/esbuild \ + npm:www/npm \ protoc:devel/protobuf \ + rsync:net/rsync \ yarn:www/yarn \ ${PYTHON_PKGNAMEPREFIX}mypy-protobuf>=1.21:devel/py-mypy-protobuf@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}stringcase>0:devel/py-stringcase@${PY_FLAVOR} \ @@ -29,10 +29,8 @@ BUILD_DEPENDS= bash:shells/bash \ ${PYTHON_PKGNAMEPREFIX}fluent>0:devel/py-fluent@${PY_FLAVOR} \ ${RUN_DEPENDS} -# For x64 architectures there's also a Python package "orjson" that still needs -# to be ported once the required features (= "untagged unions", -# "specialication" and "const_generics") of the "smallvec" crate are available -# in the Rust release channel. +# NB: For x64 architectures there's also a Python package devel/py-orjson. +# Chances are good that it'll be added to RUN_DEPENDS with the next release. # # Although the "orjson" package is required via the setup.py of Anki's Python # library it's (still) optional in the code. @@ -48,116 +46,118 @@ RUN_DEPENDS= lame:audio/lame \ ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}Flask>0:www/py-flask@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}Flask-Cors>0:www/py-flask-cors@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}protobuf>0:devel/py-protobuf@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}stringcase>0:devel/py-stringcase@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}protobuf>=3.17:devel/py-protobuf@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}waitress>0:www/py-waitress@${PY_FLAVOR} # USES=ssl is required for the compilation of the Rust code -USES= cargo desktop-file-utils pyqt:5 python:3.8+ shebangfix ssl +USES= cargo desktop-file-utils go:modules,no_targets nodejs:build pyqt:5 \ + python:3.9+ shebangfix ssl USE_GITHUB= yes GH_ACCOUNT= ankitects # Translation files -GH_TUPLE= ankitects:anki-core-i18n:56d46d6:ftlrslib \ - ankitects:anki-desktop-ftl:5359f84:ftlextra +GH_TUPLE= ankitects:anki-core-i18n:f3f9912:ftlrslib \ + ankitects:anki-desktop-ftl:6e59ce7e:ftlextra # Bazel Skylib framework and sets of bazel rules GH_TUPLE+= bazelbuild:bazel-skylib:e59b620:bzlskylib \ bazelbuild:rules_cc:40548a2:bzlrcc \ bazelbuild:rules_java:c13e3ea:bzlrjava \ - bazelbuild:rules_nodejs:2d02e82:bzlrnodejs \ + bazelbuild:rules_nodejs:45e97fc:bzlrnodejs \ bazelbuild:rules_proto:f7a30f6:bzlrproto \ - ankitects:esbuild_toolchain:f942aa9:esbuildtc \ - ankitects:rules_pip:fb02cb7:bzlrpip \ - ankitects:rules_python:3927c9b:bzlrpython \ - ankitects:rules_rust:f66001a:bzlrrust \ - ankitects:rules_sass:275ace7:bzlrsass + bazelbuild:rules_python:b842276:bzlrpython \ + ankitects:rules_rust:adf2790:bzlrrust \ + bazelbuild:rules_sass:d0cda22:bzlrsass +# esbuild dependencies +GH_TUPLE+= evanw:esbuild:${_MY_ESBUILDVER}:esbuild \ + golang:sys:aa78b53d3365:golang_sys USE_PYQT= pyqt5 sip webengine SHEBANG_FILES= qt/tools/runanki.system.in -CARGO_CRATES= Inflector-0.11.4 \ - adler-1.0.2 \ - ahash-0.7.4 \ +CARGO_CRATES= adler-1.0.2 \ + ahash-0.7.6 \ aho-corasick-0.7.18 \ - ammonia-3.1.2 \ - anyhow-1.0.42 \ - arc-swap-1.3.0 \ + ammonia-3.1.4 \ + anyhow-1.0.56 \ + arc-swap-1.5.0 \ arrayref-0.3.6 \ arrayvec-0.4.12 \ - arrayvec-0.5.2 \ - askama-0.10.5 \ - askama_derive-0.10.5 \ - askama_escape-0.10.1 \ - askama_shared-0.11.1 \ - async-trait-0.1.51 \ + arrayvec-0.7.2 \ + async-trait-0.1.52 \ atty-0.2.14 \ - autocfg-1.0.1 \ + autocfg-1.1.0 \ base64-0.13.0 \ - bitflags-1.2.1 \ - bitvec-0.19.5 \ - blake3-0.3.8 \ - bumpalo-3.7.0 \ + bitflags-1.3.2 \ + blake3-1.3.1 \ + block-buffer-0.10.2 \ + bstr-0.2.17 \ + bumpalo-3.9.1 \ byteorder-1.4.3 \ - bytes-1.0.1 \ - cc-1.0.69 \ - cfg-if-0.1.10 \ + bytes-1.1.0 \ + cast-0.2.7 \ + cc-1.0.73 \ cfg-if-1.0.0 \ chrono-0.4.19 \ - coarsetime-0.1.19 \ + clap-2.34.0 \ + coarsetime-0.1.21 \ codespan-0.11.1 \ codespan-reporting-0.11.1 \ constant_time_eq-0.1.5 \ convert_case-0.4.0 \ - core-foundation-0.9.1 \ - core-foundation-sys-0.8.2 \ - crc32fast-1.2.1 \ - crossbeam-channel-0.5.1 \ - crossbeam-utils-0.8.5 \ - crypto-mac-0.8.0 \ + core-foundation-0.9.3 \ + core-foundation-sys-0.8.3 \ + crc32fast-1.3.2 \ + criterion-0.3.5 \ + criterion-plot-0.4.4 \ + crossbeam-channel-0.5.2 \ + crossbeam-deque-0.8.1 \ + crossbeam-epoch-0.9.7 \ + crossbeam-utils-0.8.7 \ + crypto-common-0.1.3 \ cssparser-0.27.2 \ cssparser-macros-0.6.0 \ - ctor-0.1.20 \ - derivative-2.2.0 \ - derive_more-0.99.16 \ - digest-0.9.0 \ - dirs-2.0.2 \ - dirs-sys-0.3.6 \ + csv-1.1.6 \ + csv-core-0.1.10 \ + derive_more-0.99.17 \ + digest-0.10.3 \ + dirs-next-2.0.0 \ + dirs-sys-next-0.1.2 \ dtoa-0.4.8 \ dtoa-short-0.3.3 \ dunce-1.0.2 \ either-1.6.1 \ - encoding_rs-0.8.28 \ - env_logger-0.8.4 \ + encoding_rs-0.8.30 \ + env_logger-0.9.0 \ fallible-iterator-0.2.0 \ fallible-streaming-iterator-0.1.9 \ - fixedbitset-0.2.0 \ - flate2-1.0.20 \ - fluent-0.15.0 \ - fluent-bundle-0.15.1 \ + fastrand-1.7.0 \ + fixedbitset-0.4.1 \ + flate2-1.0.22 \ + fluent-0.16.0 \ + fluent-bundle-0.15.2 \ fluent-langneg-0.13.0 \ fluent-syntax-0.11.0 \ fnv-1.0.7 \ foreign-types-0.3.2 \ foreign-types-shared-0.1.1 \ form_urlencoded-1.0.1 \ - funty-1.1.0 \ - futf-0.1.4 \ - futures-0.3.16 \ - futures-channel-0.3.16 \ - futures-core-0.3.16 \ - futures-executor-0.3.16 \ - futures-io-0.3.16 \ - futures-macro-0.3.16 \ - futures-sink-0.3.16 \ - futures-task-0.3.16 \ - futures-util-0.3.16 \ + futf-0.1.5 \ + futures-0.3.21 \ + futures-channel-0.3.21 \ + futures-core-0.3.21 \ + futures-executor-0.3.21 \ + futures-io-0.3.21 \ + futures-macro-0.3.21 \ + futures-sink-0.3.21 \ + futures-task-0.3.21 \ + futures-util-0.3.21 \ fxhash-0.2.1 \ - generic-array-0.14.4 \ + generic-array-0.14.5 \ getopts-0.2.21 \ getrandom-0.1.16 \ - getrandom-0.2.3 \ - ghost-0.1.2 \ - h2-0.3.3 \ + getrandom-0.2.5 \ + h2-0.3.12 \ + half-1.8.2 \ hashbrown-0.11.2 \ hashlink-0.7.0 \ heck-0.3.3 \ @@ -165,194 +165,203 @@ CARGO_CRATES= Inflector-0.11.4 \ hex-0.4.3 \ html5ever-0.25.1 \ htmlescape-0.3.1 \ - http-0.2.4 \ - http-body-0.4.2 \ - httparse-1.4.1 \ - httpdate-1.0.1 \ - humansize-1.1.1 \ + http-0.2.6 \ + http-body-0.4.4 \ + httparse-1.6.0 \ + httpdate-1.0.2 \ humantime-2.1.0 \ - hyper-0.14.11 \ + hyper-0.14.17 \ hyper-rustls-0.22.1 \ hyper-tls-0.5.0 \ + id_tree-1.8.0 \ idna-0.2.3 \ - indexmap-1.7.0 \ + indexmap-1.8.0 \ indoc-0.3.6 \ indoc-impl-0.3.6 \ inflections-1.1.1 \ - instant-0.1.10 \ + instant-0.1.12 \ intl-memoizer-0.5.1 \ intl_pluralrules-7.0.1 \ - inventory-0.1.10 \ - inventory-impl-0.1.10 \ - ipnet-2.3.1 \ - itertools-0.9.0 \ - itertools-0.10.1 \ - itoa-0.4.7 \ - js-sys-0.3.52 \ + ipnet-2.4.0 \ + itertools-0.10.3 \ + itoa-0.4.8 \ + itoa-1.0.1 \ + jobserver-0.1.24 \ + js-sys-0.3.56 \ kuchiki-0.8.1 \ lazy_static-1.4.0 \ - lexical-core-0.7.6 \ - libc-0.2.98 \ - libsqlite3-sys-0.22.2 \ + libc-0.2.120 \ + libsqlite3-sys-0.23.2 \ linkify-0.5.0 \ - lock_api-0.4.4 \ + lock_api-0.4.6 \ log-0.4.14 \ mac-0.1.1 \ maplit-1.0.2 \ markup5ever-0.10.1 \ markup5ever_rcdom-0.1.0 \ - matches-0.1.8 \ - memchr-2.4.0 \ + matches-0.1.9 \ + memchr-2.4.1 \ + memoffset-0.6.5 \ mime-0.3.16 \ - mime_guess-2.0.3 \ + mime_guess-2.0.4 \ + minimal-lexical-0.2.1 \ miniz_oxide-0.4.4 \ - mio-0.7.13 \ + mio-0.8.1 \ miow-0.3.7 \ multimap-0.8.3 \ - native-tls-0.2.7 \ + native-tls-0.2.8 \ new_debug_unreachable-1.0.4 \ nodrop-0.1.14 \ - nom-6.1.2 \ - nom-7.0.0-alpha1 \ - ntapi-0.3.6 \ + nom-7.1.1 \ + ntapi-0.3.7 \ num-format-0.4.0 \ num-integer-0.1.44 \ num-traits-0.2.14 \ - num_cpus-1.13.0 \ - num_enum-0.5.2 \ - num_enum_derive-0.5.2 \ - once_cell-1.8.0 \ - openssl-0.10.35 \ - openssl-probe-0.1.4 \ - openssl-sys-0.9.65 \ - ouroboros-0.9.5 \ - ouroboros_macro-0.9.5 \ - parking_lot-0.11.1 \ - parking_lot_core-0.8.3 \ + num_cpus-1.13.1 \ + num_enum-0.5.7 \ + num_enum_derive-0.5.7 \ + num_threads-0.1.4 \ + once_cell-1.10.0 \ + oorandom-11.1.3 \ + openssl-0.10.38 \ + openssl-probe-0.1.5 \ + openssl-sys-0.9.72 \ + parking_lot-0.11.2 \ + parking_lot-0.12.0 \ + parking_lot_core-0.8.5 \ + parking_lot_core-0.9.1 \ paste-0.1.18 \ paste-impl-0.1.18 \ percent-encoding-2.1.0 \ - pest-2.1.3 \ - petgraph-0.5.1 \ + petgraph-0.6.0 \ phf-0.8.0 \ - phf-0.9.0 \ + phf-0.10.1 \ phf_codegen-0.8.0 \ phf_generator-0.8.0 \ - phf_generator-0.9.0 \ + phf_generator-0.10.0 \ phf_macros-0.8.0 \ - phf_macros-0.9.0 \ + phf_macros-0.10.0 \ phf_shared-0.8.0 \ - phf_shared-0.9.0 \ - pin-project-1.0.8 \ - pin-project-internal-1.0.8 \ - pin-project-lite-0.2.7 \ + phf_shared-0.10.0 \ + pin-project-1.0.10 \ + pin-project-internal-1.0.10 \ + pin-project-lite-0.2.8 \ pin-utils-0.1.0 \ - pkg-config-0.3.19 \ - ppv-lite86-0.2.10 \ + pkg-config-0.3.24 \ + plotters-0.3.1 \ + plotters-backend-0.3.2 \ + plotters-svg-0.3.1 \ + ppv-lite86-0.2.16 \ precomputed-hash-0.1.1 \ - proc-macro-crate-1.0.0 \ - proc-macro-error-1.0.4 \ - proc-macro-error-attr-1.0.4 \ + proc-macro-crate-1.1.3 \ proc-macro-hack-0.5.19 \ - proc-macro-nested-0.1.6 \ - proc-macro2-1.0.28 \ - prost-0.7.0 \ - prost-build-0.7.0 \ - prost-derive-0.7.0 \ - prost-types-0.7.0 \ + proc-macro-nested-0.1.7 \ + proc-macro2-1.0.36 \ + prost-0.9.0 \ + prost-build-0.9.0 \ + prost-derive-0.9.0 \ + prost-types-0.9.0 \ pulldown-cmark-0.8.0 \ - pyo3-0.13.2 \ - pyo3-macros-0.13.2 \ - pyo3-macros-backend-0.13.2 \ - quote-1.0.9 \ - radium-0.5.3 \ + pyo3-0.15.1 \ + pyo3-build-config-0.15.1 \ + pyo3-macros-0.15.1 \ + pyo3-macros-backend-0.15.1 \ + quote-1.0.15 \ rand-0.7.3 \ - rand-0.8.4 \ + rand-0.8.5 \ rand_chacha-0.2.2 \ rand_chacha-0.3.1 \ rand_core-0.5.1 \ rand_core-0.6.3 \ rand_hc-0.2.0 \ - rand_hc-0.3.1 \ rand_pcg-0.2.1 \ - redox_syscall-0.2.9 \ + rayon-1.5.1 \ + rayon-core-1.9.1 \ + redox_syscall-0.2.11 \ redox_users-0.4.0 \ - regex-1.5.4 \ - regex-syntax-0.6.25 \ + regex-1.5.6 \ + regex-automata-0.1.10 \ + regex-syntax-0.6.26 \ remove_dir_all-0.5.3 \ - reqwest-0.11.4 \ ring-0.16.20 \ - rusqlite-0.25.3 \ + rusqlite-0.26.3 \ rustc-hash-1.1.0 \ - rustc_version-0.3.3 \ + rustc_version-0.4.0 \ rustls-0.19.1 \ rustls-native-certs-0.5.0 \ - ryu-1.0.5 \ + rustversion-1.0.6 \ + ryu-1.0.9 \ + same-file-1.0.6 \ schannel-0.1.19 \ scopeguard-1.1.0 \ sct-0.6.1 \ - security-framework-2.3.1 \ - security-framework-sys-2.3.0 \ + security-framework-2.6.1 \ + security-framework-sys-2.6.1 \ selectors-0.22.0 \ - semver-0.11.0 \ - semver-parser-0.10.2 \ - serde-1.0.127 \ - serde-aux-2.2.0 \ - serde_derive-1.0.127 \ - serde_json-1.0.66 \ + self_cell-0.10.2 \ + semver-1.0.6 \ + serde-1.0.136 \ + serde-aux-3.0.1 \ + serde_cbor-0.11.2 \ + serde_derive-1.0.136 \ + serde_json-1.0.79 \ serde_repr-0.1.7 \ serde_tuple-0.5.0 \ serde_tuple_macros-0.5.0 \ - serde_urlencoded-0.7.0 \ + serde_urlencoded-0.7.1 \ servo_arc-0.1.1 \ - sha1-0.6.0 \ - siphasher-0.3.6 \ - slab-0.4.3 \ + sha1-0.6.1 \ + sha1_smol-1.0.0 \ + signal-hook-registry-1.4.0 \ + siphasher-0.3.10 \ + slab-0.4.5 \ slog-2.7.0 \ slog-async-2.7.0 \ slog-envlogger-2.2.0 \ slog-scope-4.4.0 \ slog-stdlog-4.1.0 \ - slog-term-2.6.0 \ - smallvec-1.6.1 \ - socket2-0.4.1 \ + slog-term-2.9.0 \ + smallvec-1.8.0 \ + snowflake-1.3.0 \ + socket2-0.4.4 \ spin-0.5.2 \ stable_deref_trait-1.2.0 \ - static_assertions-1.1.0 \ - string_cache-0.8.1 \ + string_cache-0.8.3 \ string_cache_codegen-0.5.1 \ - strum-0.21.0 \ - strum_macros-0.21.1 \ + strum-0.23.0 \ + strum_macros-0.23.1 \ subtle-2.4.1 \ - syn-1.0.74 \ + syn-1.0.88 \ take_mut-0.2.2 \ - tap-1.0.1 \ - tempfile-3.2.0 \ + tempfile-3.3.0 \ tendril-0.4.2 \ - term-0.6.1 \ - termcolor-1.1.2 \ + term-0.7.0 \ + termcolor-1.1.3 \ + textwrap-0.11.0 \ thin-slice-0.1.1 \ - thiserror-1.0.26 \ - thiserror-impl-1.0.26 \ - thread_local-1.1.3 \ + thiserror-1.0.30 \ + thiserror-impl-1.0.30 \ + thread_local-1.1.4 \ time-0.1.44 \ + time-0.3.7 \ + time-macros-0.2.3 \ tinystr-0.3.4 \ - tinyvec-1.3.1 \ + tinytemplate-1.2.1 \ + tinyvec-1.5.1 \ tinyvec_macros-0.1.0 \ - tokio-1.9.0 \ - tokio-macros-1.3.0 \ + tokio-1.17.0 \ + tokio-macros-1.7.0 \ tokio-native-tls-0.3.0 \ tokio-rustls-0.22.0 \ tokio-socks-0.5.1 \ - tokio-util-0.6.7 \ + tokio-util-0.6.9 \ toml-0.5.8 \ tower-service-0.3.1 \ - tracing-0.1.26 \ - tracing-core-0.1.18 \ + tracing-0.1.32 \ + tracing-core-0.1.23 \ try-lock-0.2.3 \ type-map-0.4.0 \ - typenum-1.13.0 \ - ucd-trie-0.1.3 \ + typenum-1.15.0 \ unic-char-property-0.9.0 \ unic-char-range-0.9.0 \ unic-common-0.9.0 \ @@ -363,45 +372,57 @@ CARGO_CRATES= Inflector-0.11.4 \ unic-ucd-category-0.9.0 \ unic-ucd-version-0.9.0 \ unicase-2.6.0 \ - unicode-bidi-0.3.5 \ + unicode-bidi-0.3.7 \ unicode-normalization-0.1.19 \ - unicode-segmentation-1.8.0 \ - unicode-width-0.1.8 \ + unicode-segmentation-1.9.0 \ + unicode-width-0.1.9 \ unicode-xid-0.2.2 \ - unindent-0.1.7 \ + unindent-0.1.8 \ untrusted-0.7.1 \ url-2.2.2 \ utf-8-0.7.6 \ utf8-decode-1.0.1 \ utime-0.3.1 \ vcpkg-0.2.15 \ - version_check-0.9.3 \ + version_check-0.9.4 \ + walkdir-2.3.2 \ want-0.3.0 \ wasi-0.9.0+wasi-snapshot-preview1 \ wasi-0.10.0+wasi-snapshot-preview1 \ - wasm-bindgen-0.2.75 \ - wasm-bindgen-backend-0.2.75 \ - wasm-bindgen-futures-0.4.25 \ - wasm-bindgen-macro-0.2.75 \ - wasm-bindgen-macro-support-0.2.75 \ - wasm-bindgen-shared-0.2.75 \ - web-sys-0.3.52 \ + wasi-0.11.0+wasi-snapshot-preview1 \ + wasm-bindgen-0.2.79 \ + wasm-bindgen-backend-0.2.79 \ + wasm-bindgen-futures-0.4.29 \ + wasm-bindgen-macro-0.2.79 \ + wasm-bindgen-macro-support-0.2.79 \ + wasm-bindgen-shared-0.2.79 \ + web-sys-0.3.56 \ webpki-0.21.4 \ webpki-roots-0.21.1 \ - which-4.2.2 \ + which-4.2.4 \ winapi-0.3.9 \ winapi-i686-pc-windows-gnu-0.4.0 \ winapi-util-0.1.5 \ winapi-x86_64-pc-windows-gnu-0.4.0 \ + windows-sys-0.32.0 \ + windows_aarch64_msvc-0.32.0 \ + windows_i686_gnu-0.32.0 \ + windows_i686_msvc-0.32.0 \ + windows_x86_64_gnu-0.32.0 \ + windows_x86_64_msvc-0.32.0 \ winreg-0.7.0 \ - wyz-0.2.0 \ - xml5ever-0.16.1 \ + xml5ever-0.16.2 \ zip-0.5.13 \ + zstd-0.10.0+zstd.1.5.2 \ + zstd-safe-4.1.4+zstd.1.5.2 \ + zstd-sys-1.6.3+zstd.1.5.2 \ reqwest@git+https://github.com/ankitects/reqwest.git?rev=7591444614de02b658ddab125efba7b2bb4e2335\#7591444614de02b658ddab125efba7b2bb4e2335 \ hyper-timeout@git+https://github.com/ankitects/hyper-timeout.git?rev=0cb6f7d14c62819e37cd221736f8b0555e823712\#0cb6f7d14c62819e37cd221736f8b0555e823712 \ + csv,csv-core@git+https://github.com/ankitects/rust-csv.git?rev=1c9d3aab6f79a7d815c69f925a46a4590c115f90\#1c9d3aab6f79a7d815c69f925a46a4590c115f90 \ linkcheck@git+https://github.com/ankitects/linkcheck.git?rev=2f20798ce521cc594d510d4e417e76d5eac04d4b\#2f20798ce521cc594d510d4e417e76d5eac04d4b \ tokio-io-timeout@git+https://github.com/ankitects/tokio-io-timeout.git?rev=1ee0892217e9a76bba4bb369ec5fab8854935a3c\#1ee0892217e9a76bba4bb369ec5fab8854935a3c \ pct-str@git+https://github.com/timothee-haudebourg/pct-str.git?rev=4adccd8d4a222ab2672350a102f06ae832a0572d\#4adccd8d4a222ab2672350a102f06ae832a0572d + CARGO_CARGOTOML= ${WRKSRC}/pylib/rsbridge/Cargo.toml CARGO_BUILD= no @@ -415,8 +436,10 @@ CARGO_ENV= BAZEL=1 \ PROTO_TOP=${WRKSRC}/proto/.top_level \ PROTOC=${LOCALBASE}/bin/protoc \ BACKEND_PROTO=${WRKSRC}/rslib/backend.proto \ - RSLIB_FTL_ROOT=${_MY_LOCALREPO}/ftlrslib/l10n.toml \ - EXTRA_FTL_ROOT=${_MY_LOCALREPO}/ftlextra/l10n.toml + RSLIB_FTL_ROOT=${WRKSRC_ftlrslib}/l10n.toml \ + EXTRA_FTL_ROOT=${WRKSRC_ftlextra}/l10n.toml + +GO_TARGET= ./cmd/esbuild:esbuild OPTIONS_DEFAULT= MPV OPTIONS_GROUP= PLAYER @@ -431,10 +454,15 @@ MPV_RUN_DEPENDS= mpv:multimedia/mpv # Should contain the most recent commit that reflects ${DISTVERSION} and must # be exactly 8 digits otherwise the check for newer versions won't work as # expected. -_MY_BUILDHASH= dc80804a +_MY_BUILDHASH= b6a7760c +# Required version of esbuild that is pre-built. This is because the JS +# counterpart of esbuild, which is used by the NodeJS ruleset for Bazel, has a +# fixed version check for the binary version. +_MY_ESBUILDVER= v0.14.11 # Path of the local bazel repositories _MY_LOCALREPO= ${WRKSRC}/local_repos -# Path of cache that is used by www/yarn +# Path of caches that are used by www/npm and www/yarn +_MY_NPMCACHE= ${WRKDIR}/.npm _MY_YARNCACHE= ${WRKDIR}/.yarn post-extract: @@ -447,25 +475,24 @@ post-extract: ${_MY_LOCALREPO}/local_node/node/lib \ ${_MY_LOCALREPO}/local_node/yarn/bin \ ${_MY_LOCALREPO}/protoc_bin_freebsd/bin \ - ${_MY_LOCALREPO}/pyqt5 \ ${_MY_LOCALREPO}/rust_output/librsbridge \ ${_MY_LOCALREPO}/rust_output/strings_json # Create empty WORKSPACE files in the top directory of each local # repository @${TOUCH} ${_MY_LOCALREPO}/local_esbuild/WORKSPACE \ ${_MY_LOCALREPO}/local_node/WORKSPACE \ - ${_MY_LOCALREPO}/protoc_bin_freebsd/WORKSPACE \ - ${_MY_LOCALREPO}/pyqt5/WORKSPACE \ - ${_MY_LOCALREPO}/rust_output/WORKSPACE - # Copy the bazel rules for NodeJS and esbuild to the custom local repository + ${_MY_LOCALREPO}/protoc_bin_freebsd/WORKSPACE + # Copy the bazel rules for NodeJS to the custom local repository # as they need some patching - @${CP} -r ${WRKSRC_esbuildtc} ${_MY_LOCALREPO}/esbuild_toolchain @${CP} -r ${WRKSRC_bzlrnodejs} ${_MY_LOCALREPO}/rules_nodejs # Link the remaining bazel rules into the custom local repository as # they don't need to be patched -.for _dir in bzlskylib bzlrcc bzlrjava bzlrpip bzlrproto bzlrpython bzlrrust bzlrsass ftlextra ftlrslib +.for _dir in bzlskylib bzlrcc bzlrjava bzlrproto bzlrpython bzlrrust bzlrsass @${RLN} ${WRKSRC_${_dir}} ${_MY_LOCALREPO}/${_dir:S/bzlr/rules_/} .endfor + # Prepare the Go environment for esbuild + @${MKDIR} ${WRKSRC_esbuild}/vendor/golang.org/x + @${RLN} ${WRKSRC_golang_sys} ${WRKSRC_esbuild}/vendor/golang.org/x/sys # Copy custom BUILD.bazel files to the local repositories @${CP} ${FILESDIR}/bazel/BUILD.bazel-local_esbuild \ ${_MY_LOCALREPO}/local_esbuild/BUILD.bazel @@ -473,22 +500,16 @@ post-extract: ${_MY_LOCALREPO}/local_node/BUILD.bazel @${CP} ${FILESDIR}/bazel/BUILD.bazel-protoc_bin_freebsd \ ${_MY_LOCALREPO}/protoc_bin_freebsd/BUILD.bazel - @${CP} ${FILESDIR}/bazel/BUILD.bazel-pyqt5 \ - ${_MY_LOCALREPO}/pyqt5/BUILD.bazel @${CP} ${FILESDIR}/bazel/BUILD.bazel-rust_output-librsbridge \ ${_MY_LOCALREPO}/rust_output/librsbridge/BUILD.bazel @${CP} ${FILESDIR}/bazel/BUILD.bazel-rust_output-strings_json \ ${_MY_LOCALREPO}/rust_output/strings_json/BUILD.bazel - @${CP} ${FILESDIR}/bazel/BUILD.bazel-i18n ${WRKSRC_ftlrslib}/BUILD.bazel - @${CP} ${FILESDIR}/bazel/BUILD.bazel-i18n ${WRKSRC_ftlextra}/BUILD.bazel # Move some files out of the way as they will be replaced by custom copies. @${MV} ${WRKSRC}/repos.bzl ${WRKSRC}/repos.bzl.dist - @${MV} ${WRKSRC}/pip/pyqt5/defs.bzl ${WRKSRC}/pip/pyqt5/defs.bzl.dist @${MV} ${WRKSRC}/pylib/rsbridge/BUILD.bazel ${WRKSRC}/pylib/rsbridge/BUILD.bazel.dist @${MV} ${WRKSRC}/rslib/i18n/BUILD.bazel ${WRKSRC}/rslib/i18n/BUILD.bazel.dist # Copy the replacement files @${CP} ${FILESDIR}/bazel/repos.bzl ${WRKSRC}/ - @${CP} ${FILESDIR}/bazel/pyqt5.bzl ${WRKSRC}/pip/pyqt5/defs.bzl @${CP} ${FILESDIR}/bazel/BUILD.bazel-pylib-rsbridge \ ${WRKSRC}/pylib/rsbridge/BUILD.bazel @${CP} ${FILESDIR}/bazel/BUILD.bazel-rslib-i18n \ @@ -500,19 +521,19 @@ post-patch: @${REINPLACE_CMD} -e 's|\@PREFIX\@|${PREFIX}|' \ ${WRKSRC}/qt/tools/runanki.system.in @${REINPLACE_CMD} -e 's|%%_MY_BUILDHASH%%|${_MY_BUILDHASH}|' \ - ${WRKSRC}/scripts/status.sh + ${WRKSRC}/tools/status.sh @${REINPLACE_CMD} -e 's|%%_MY_LOCALREPO%%|${_MY_LOCALREPO}|g' \ - ${WRKSRC}/repos.bzl ${WRKSRC}/proto/protobuf.bzl \ - ${_MY_LOCALREPO}/esbuild_toolchain/esbuild_repo.bzl + ${WRKSRC}/proto/protobuf.bzl \ + ${WRKSRC}/repos.bzl \ + ${_MY_LOCALREPO}/rules_nodejs/toolchains/esbuild/esbuild_repositories.bzl @${REINPLACE_CMD} -e 's|%%_MY_YARNCACHE%%|${_MY_YARNCACHE}|' \ ${_MY_LOCALREPO}/rules_nodejs/internal/npm_install/npm_install.bzl pre-configure: # Link the binaries of Node, Protobuf and Yarn into the local bazel # repositories to provide them during build. - ${LN} -s ${LOCALBASE}/bin/protoc-gen-mypy ${WRKSRC}/pylib/tools/protoc-gen-mypy - ${LN} -s ${LOCALBASE}/bin/esbuild ${_MY_LOCALREPO}/local_esbuild/bin/esbuild ${LN} -s ${LOCALBASE}/bin/node ${_MY_LOCALREPO}/local_node/node/bin/node + ${LN} -s ${LOCALBASE}/lib/node_modules ${_MY_LOCALREPO}/local_node/node/lib/node_modules ${LN} -s ${LOCALBASE}/bin/yarn.js ${_MY_LOCALREPO}/local_node/yarn/bin/yarn.js ${LN} -s ${LOCALBASE}/bin/protoc ${_MY_LOCALREPO}/protoc_bin_freebsd/bin/protoc @@ -526,6 +547,20 @@ pre-configure: # `-> produces ${_MY_LOCALREPO}/rust_output/librsbridge/librsbridge.so # 3. The remaining components (Python, Qt5 and JS) are built by bazel pre-build: + ${ECHO_MSG} "===> Building vendored esbuild binary with Go" + (cd ${WRKSRC_esbuild} ; \ + for t in ${GO_TARGET}; do \ + out=$$(${BASENAME} $$(${ECHO_CMD} $${t} | \ + ${SED} -Ee 's/^[^:]*:([^:]+).*$$/\1/' -e 's/^\.$$/esbuild/')); \ + pkg=$$(${ECHO_CMD} $${t} | \ + ${SED} -Ee 's/^([^:]*).*$$/\1/' -e 's/^esbuild$$/./'); \ + ${ECHO_MSG} "===> Building $${out} from $${pkg}"; \ + ${SETENV} ${MAKE_ENV} ${GO_ENV} GOPROXY=off ${GO_CMD} build ${GO_BUILDFLAGS} \ + -o ${GO_WRKDIR_BIN}/$${out} \ + $${pkg}; \ + done) + ${CP} ${GO_WRKDIR_BIN}/esbuild ${_MY_LOCALREPO}/local_esbuild/bin/ + ${ECHO_MSG} "===> Building library with Rust" # Generate buildinfo.txt which is used via BUILDINFO in ${CARGO_ENV} during # compilation. ${ECHO_CMD} -e "STABLE_VERSION ${DISTVERSION}\nSTABLE_BUILDHASH ${_MY_BUILDHASH}" >> ${_MY_LOCALREPO}/rust_output/buildinfo.txt @@ -543,15 +578,22 @@ do-build: # via "tsc". cd ${WRKSRC} && \ bazel --output_user_root="${WRKDIR}/.bazel" build \ + --action_env=npm_config_cache="${_MY_NPMCACHE}" \ + --action_env=npm_config_offline="true" \ + --action_env=PYO3_PYTHON="${PYTHON_CMD}" \ --action_env=PYTHON_SITE_PACKAGES="${PYTHON_SITELIBDIR}" \ --action_env=PYTHON_SYS_EXECUTABLE="${PYTHON_CMD}" \ + --color=no \ --compilation_mode opt \ - --jobs 1 \ + --config opt \ + --jobs=1 \ --subcommands \ - dist + --show_progress_rate_limit=-1 \ + wheels post-build: - ${TAR} -xf `${FIND} ${WRKDIR}/.bazel -name "dist.tar"` -C ${WRKSRC} + ${MKDIR} ${WRKSRC}/bazel-dist + ${TAR} -xf `${FIND} ${WRKDIR}/.bazel -name "wheels.tar"` -C ${WRKSRC}/bazel-dist cd ${WRKSRC}/bazel-dist && \ ${UNZIP_NATIVE_CMD} anki-${DISTVERSION}-*.whl && \ ${UNZIP_NATIVE_CMD} aqt-${DISTVERSION}-*.whl @@ -570,7 +612,7 @@ do-install: cd ${WRKSRC}/bazel-dist/ \ && ${COPYTREE_SHARE} anki ${STAGEDIR}${DATADIR} "! -name .gitignore" \ && ${COPYTREE_SHARE} aqt ${STAGEDIR}${DATADIR} "! -name .gitignore" - cd ${WRKSRC}/qt/linux \ + cd ${WRKSRC}/qt/bundle/lin \ && ${INSTALL_DATA} anki.xpm anki.png ${STAGEDIR}${PREFIX}/share/pixmaps \ && ${INSTALL_DATA} anki.desktop ${STAGEDIR}${PREFIX}/share/applications \ && ${INSTALL_MAN} anki.1 ${STAGEDIR}${MANPREFIX}/man/man1 @@ -578,9 +620,19 @@ do-install: && ${INSTALL_SCRIPT} runanki.system.in ${STAGEDIR}${PREFIX}/bin/anki ${STRIP_CMD} ${STAGEDIR}${DATADIR}/anki/_backend/rsbridge.so +# Helper target to make the generation of the npm cache easier (only required for esbuild-npm) +make-npm-cache: patch + @cd ${WRKDIR} && ${RM} -r ${_MY_NPMCACHE} + @cd ${WRKSRC_bzlrnodejs}/toolchains/esbuild/ \ + && ${SETENV} HOME=${WRKDIR} ${LOCALBASE}/bin/npm install --no-optional --ignore-scripts + @cd ${_MY_NPMCACHE} \ + && ${RM} -r _locks anonymous-cli-metrics.json + @cd ${WRKDIR} \ + && ${TAR} -czf ${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX} .npm \ + && ${ECHO_CMD} "Please upload the file ${WRKDIR}/${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX}" + # Helper target to make the generation of the yarn cache easier -make-yarn-cache: - # Run "make extract" before executing this target +make-yarn-cache: patch @${RM} -r ${_MY_YARNCACHE} @cd ${WRKSRC}/ts \ && ${LOCALBASE}/bin/yarn --cache-folder ${_MY_YARNCACHE} install diff --git a/games/anki/distinfo b/games/anki/distinfo index 1578f24a7672..ca7baf22ee3c 100644 --- a/games/anki/distinfo +++ b/games/anki/distinfo @@ -1,64 +1,60 @@ -TIMESTAMP = 1648230415 -SHA256 (anki-yarn-cache-2.1.49.tar.gz) = 74a36b10b9d0bd9cbef8592acfe19b778eb2d1e4661d4c8f37fcef8e302b08fb -SIZE (anki-yarn-cache-2.1.49.tar.gz) = 104554659 -SHA256 (rust/crates/Inflector-0.11.4.crate) = fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3 -SIZE (rust/crates/Inflector-0.11.4.crate) = 17438 +TIMESTAMP = 1662406747 +SHA256 (anki-yarn-cache-2.1.54.tar.gz) = cc2a8185de1ec617a1d90c8108f0bf00fc28f7aa307e79c4e72040602d8f502d +SIZE (anki-yarn-cache-2.1.54.tar.gz) = 141134171 +SHA256 (anki-npm-cache-2.1.54.tar.gz) = f137df731bdffd4d62c2d46d35913714180a4c2c52e8079376653d870631ab0d +SIZE (anki-npm-cache-2.1.54.tar.gz) = 3261225 SHA256 (rust/crates/adler-1.0.2.crate) = f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe SIZE (rust/crates/adler-1.0.2.crate) = 12778 -SHA256 (rust/crates/ahash-0.7.4.crate) = 43bb833f0bf979d8475d38fbf09ed3b8a55e1885fe93ad3f93239fc6a4f17b98 -SIZE (rust/crates/ahash-0.7.4.crate) = 37072 +SHA256 (rust/crates/ahash-0.7.6.crate) = fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47 +SIZE (rust/crates/ahash-0.7.6.crate) = 38030 SHA256 (rust/crates/aho-corasick-0.7.18.crate) = 1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f SIZE (rust/crates/aho-corasick-0.7.18.crate) = 112923 -SHA256 (rust/crates/ammonia-3.1.2.crate) = 2e445c26125ff80316eaea16e812d717b147b82a68682bd4730f74d4845c8b35 -SIZE (rust/crates/ammonia-3.1.2.crate) = 39704 -SHA256 (rust/crates/anyhow-1.0.42.crate) = 595d3cfa7a60d4555cb5067b99f07142a08ea778de5cf993f7b75c7d8fabc486 -SIZE (rust/crates/anyhow-1.0.42.crate) = 34827 -SHA256 (rust/crates/arc-swap-1.3.0.crate) = e906254e445520903e7fc9da4f709886c84ae4bc4ddaf0e093188d66df4dc820 -SIZE (rust/crates/arc-swap-1.3.0.crate) = 63680 +SHA256 (rust/crates/ammonia-3.1.4.crate) = ea9f21d23d82bae9d33c21080572af1fa749788e68234b5d8fa5e39d3e0783ed +SIZE (rust/crates/ammonia-3.1.4.crate) = 39875 +SHA256 (rust/crates/anyhow-1.0.56.crate) = 4361135be9122e0870de935d7c439aef945b9f9ddd4199a553b5270b49c82a27 +SIZE (rust/crates/anyhow-1.0.56.crate) = 44780 +SHA256 (rust/crates/arc-swap-1.5.0.crate) = c5d78ce20460b82d3fa150275ed9d55e21064fc7951177baacf86a145c4a4b1f +SIZE (rust/crates/arc-swap-1.5.0.crate) = 65351 SHA256 (rust/crates/arrayref-0.3.6.crate) = a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544 SIZE (rust/crates/arrayref-0.3.6.crate) = 10035 SHA256 (rust/crates/arrayvec-0.4.12.crate) = cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9 SIZE (rust/crates/arrayvec-0.4.12.crate) = 26551 -SHA256 (rust/crates/arrayvec-0.5.2.crate) = 23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b -SIZE (rust/crates/arrayvec-0.5.2.crate) = 27838 -SHA256 (rust/crates/askama-0.10.5.crate) = d298738b6e47e1034e560e5afe63aa488fea34e25ec11b855a76f0d7b8e73134 -SIZE (rust/crates/askama-0.10.5.crate) = 7994 -SHA256 (rust/crates/askama_derive-0.10.5.crate) = ca2925c4c290382f9d2fa3d1c1b6a63fa1427099721ecca4749b154cc9c25522 -SIZE (rust/crates/askama_derive-0.10.5.crate) = 6927 -SHA256 (rust/crates/askama_escape-0.10.1.crate) = 90c108c1a94380c89d2215d0ac54ce09796823cca0fd91b299cfff3b33e346fb -SIZE (rust/crates/askama_escape-0.10.1.crate) = 8535 -SHA256 (rust/crates/askama_shared-0.11.1.crate) = 2582b77e0f3c506ec4838a25fa8a5f97b9bed72bb6d3d272ea1c031d8bd373bc -SIZE (rust/crates/askama_shared-0.11.1.crate) = 30554 -SHA256 (rust/crates/async-trait-0.1.51.crate) = 44318e776df68115a881de9a8fd1b9e53368d7a4a5ce4cc48517da3393233a5e -SIZE (rust/crates/async-trait-0.1.51.crate) = 25531 +SHA256 (rust/crates/arrayvec-0.7.2.crate) = 8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6 +SIZE (rust/crates/arrayvec-0.7.2.crate) = 29341 +SHA256 (rust/crates/async-trait-0.1.52.crate) = 061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3 +SIZE (rust/crates/async-trait-0.1.52.crate) = 25913 SHA256 (rust/crates/atty-0.2.14.crate) = d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8 SIZE (rust/crates/atty-0.2.14.crate) = 5470 -SHA256 (rust/crates/autocfg-1.0.1.crate) = cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a -SIZE (rust/crates/autocfg-1.0.1.crate) = 12908 +SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa +SIZE (rust/crates/autocfg-1.1.0.crate) = 13272 SHA256 (rust/crates/base64-0.13.0.crate) = 904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd SIZE (rust/crates/base64-0.13.0.crate) = 62070 -SHA256 (rust/crates/bitflags-1.2.1.crate) = cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693 -SIZE (rust/crates/bitflags-1.2.1.crate) = 16745 -SHA256 (rust/crates/bitvec-0.19.5.crate) = 8942c8d352ae1838c9dda0b0ca2ab657696ef2232a20147cf1b30ae1a9cb4321 -SIZE (rust/crates/bitvec-0.19.5.crate) = 148200 -SHA256 (rust/crates/blake3-0.3.8.crate) = b64485778c4f16a6a5a9d335e80d449ac6c70cdd6a06d2af18a6f6f775a125b3 -SIZE (rust/crates/blake3-0.3.8.crate) = 154058 -SHA256 (rust/crates/bumpalo-3.7.0.crate) = 9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631 -SIZE (rust/crates/bumpalo-3.7.0.crate) = 134261 +SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a +SIZE (rust/crates/bitflags-1.3.2.crate) = 23021 +SHA256 (rust/crates/blake3-1.3.1.crate) = a08e53fc5a564bb15bfe6fae56bd71522205f1f91893f9c0116edad6496c183f +SIZE (rust/crates/blake3-1.3.1.crate) = 157714 +SHA256 (rust/crates/block-buffer-0.10.2.crate) = 0bf7fe51849ea569fd452f37822f606a5cabb684dc918707a0193fd4664ff324 +SIZE (rust/crates/block-buffer-0.10.2.crate) = 10258 +SHA256 (rust/crates/bstr-0.2.17.crate) = ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223 +SIZE (rust/crates/bstr-0.2.17.crate) = 330350 +SHA256 (rust/crates/bumpalo-3.9.1.crate) = a4a45a46ab1f2412e53d3a0ade76ffad2025804294569aae387231a0cd6e0899 +SIZE (rust/crates/bumpalo-3.9.1.crate) = 77507 SHA256 (rust/crates/byteorder-1.4.3.crate) = 14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610 SIZE (rust/crates/byteorder-1.4.3.crate) = 22512 -SHA256 (rust/crates/bytes-1.0.1.crate) = b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040 -SIZE (rust/crates/bytes-1.0.1.crate) = 48142 -SHA256 (rust/crates/cc-1.0.69.crate) = e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2 -SIZE (rust/crates/cc-1.0.69.crate) = 56044 -SHA256 (rust/crates/cfg-if-0.1.10.crate) = 4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822 -SIZE (rust/crates/cfg-if-0.1.10.crate) = 7933 +SHA256 (rust/crates/bytes-1.1.0.crate) = c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8 +SIZE (rust/crates/bytes-1.1.0.crate) = 49640 +SHA256 (rust/crates/cast-0.2.7.crate) = 4c24dab4283a142afa2fdca129b80ad2c6284e073930f964c3a1293c225ee39a +SIZE (rust/crates/cast-0.2.7.crate) = 11222 +SHA256 (rust/crates/cc-1.0.73.crate) = 2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11 +SIZE (rust/crates/cc-1.0.73.crate) = 57880 SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 SHA256 (rust/crates/chrono-0.4.19.crate) = 670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73 SIZE (rust/crates/chrono-0.4.19.crate) = 155663 -SHA256 (rust/crates/coarsetime-0.1.19.crate) = 2918e2ffa91a49dabbba4965fe38a37a1ba0b6953a29e32cc250a8d59cd42232 -SIZE (rust/crates/coarsetime-0.1.19.crate) = 7927 +SHA256 (rust/crates/clap-2.34.0.crate) = a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c +SIZE (rust/crates/clap-2.34.0.crate) = 202210 +SHA256 (rust/crates/coarsetime-0.1.21.crate) = 441947d9f3582f20b35fdd2bc5ada3a8c74c9ea380d66268607cb399b510ee08 +SIZE (rust/crates/coarsetime-0.1.21.crate) = 8167 SHA256 (rust/crates/codespan-0.11.1.crate) = 3362992a0d9f1dd7c3d0e89e0ab2bb540b7a95fea8cd798090e758fda2899b5e SIZE (rust/crates/codespan-0.11.1.crate) = 8895 SHA256 (rust/crates/codespan-reporting-0.11.1.crate) = 3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e @@ -67,34 +63,42 @@ SHA256 (rust/crates/constant_time_eq-0.1.5.crate) = 245097e9a4535ee1e3e3931fcfcd SIZE (rust/crates/constant_time_eq-0.1.5.crate) = 4936 SHA256 (rust/crates/convert_case-0.4.0.crate) = 6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e *** 2722 LINES SKIPPED ***