bazel: 3.3.1 -> 3.7.2

Motivation for this change
The rules_scala for Bazel has added support for Scala 2.13 lately. According to their compatibility matrix it requires at least Bazel 3.5.
Upgrading bazel in nixpkgs is blocked currently on dm-sonnet, since it needs the --incompatible_disable_deprecated_attr_params=false being passed to bazel, which has been removed in bazel 3.4.0 (https://github.com/bazelbuild/bazel/commit/1ed9a072c93409d92f838f3ae3056602e7e59515).
Currently, in order to build dm-sonnet, which depends on tensorflow 1, which in turn requires bazel 0.26, you have to build bazel 0.26 and bazel 3. The same is true for tensorflow-probability.
Using the same old bazel version to build dm-sonnet and tensorflow-probability which is a hard requirement for tensorflow 1 unblocks the situation for bazel 3.
Note that building dm-sonnet and tensorflow-probability is impossible since tensorflow 1 is broken right now: #104801
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip" (bazel-remote, bazel-watcher, gvisor build successfully -- I ran out of disk space when building tensorflow 2)
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Fails to build on darwin:

ERROR: /private/tmp/nix-build-bazel-3.7.1.drv-0/bazel_1Ml8wqkK/out/external/com_google_protobuf/BUILD:470:10: Linking of rule '@com_google_protobuf//:protoc' failed (Exit 1): cc_wrapper.sh failed: error executing command
  (cd /private/tmp/nix-build-bazel-3.7.1.drv-0/bazel_1Ml8wqkK/out/execroot/io_bazel && \
  exec env - \
    PATH=/nix/store/xyk4jplzpxb6p8cm3widrk7ziaa0fzhv-zip-3.0/bin:/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/bin:/nix/store/0mck84ig5kb8shfimbyh95q1l1l76q7b-unzip-6.0/bin:/nix/store/0kr56m7izdl3vjd1z3z93mbbbxj5dilv-which-2.21/bin:/nix/store/dbkd1i670cdm3dzh3wxhq33lf2sgd37q-bash/bin:/nix/store/9nl3fcrs1xzszq57iwlf60xz2ydzbj8n-cctools-port-949.0.1/bin:/nix/store/1nfvgyd3yhkiz4f38a0706w2k01q1mk7-clang-wrapper-6.0.1/bin:/nix/store/q83w0lxfs9wfzabpjxs538f64aam50q2-clang-6.0.1/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/585a9hfx0j3s60w6acgx8amcbnwwqczk-cctools-binutils-darwin-wrapper-949.0.1/bin:/nix/store/l5707pca91sq99fd5fq4x84302zssyjj-cctools-binutils-darwin-949.0.1/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/7wyjz9l8m3fl3c93ws224af3s0nvhh3m-zulu1.8.0_202-<IP_ADDRESS>/bin:/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/nggf2cl7ksb7ndzcl4nvb6c8hpklyaf8-findutils-4.7.0/bin:/nix/store/xqc84l3pdvzcf313ldjhcg3vrrv1xs9v-diffutils-3.7/bin:/nix/store/8h9dbc09qhr3s760qll6p6011jw5k8gb-gnused-4.8/bin:/nix/store/m2b4kl67rbj0yazivr09iyxmykpp2q0z-gnugrep-3.5/bin:/nix/store/sid02y809av1wzc0wp9wkar308ry1sqd-gawk-5.1.0/bin:/nix/store/6qxcfbn03llkak3ylnyam2lpdxamydii-gnutar-1.32/bin:/nix/store/xzjx4kcl75c0dbv7018709gsl16gvywr-gzip-1.10/bin:/nix/store/ynxdp22ag51b67raxjklc0m3n71vdz28-bzip2-<IP_ADDRESS>.1-bin/bin:/nix/store/v09a9pk9kw8fp21af2hpyyxggbqhjczh-gnumake-4.3/bin:/nix/store/k89nm2jva0qmvd970f84wq2iq1iwm9bs-bash-4.4-p23/bin:/nix/store/cw9k1mzhlqp306sxsg12k24b3gki834v-patch-2.7.6/bin:/nix/store/vr0zvhpaggl74vbry14idx21vjjc6dqi-xz-5.2.5-bin/bin:/nix/store/k89nm2jva0qmvd970f84wq2iq1iwm9bs-bash-4.4-p23/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/nggf2cl7ksb7ndzcl4nvb6c8hpklyaf8-findutils-4.7.0/bin:/nix/store/sid02y809av1wzc0wp9wkar308ry1sqd-gawk-5.1.0/bin:/nix/store/m2b4kl67rbj0yazivr09iyxmykpp2q0z-gnugrep-3.5/bin:/nix/store/s7s7v2l731rz05idnbdprmjynlrd7n6b-gnutar-1.32/bin:/nix/store/8h9dbc09qhr3s760qll6p6011jw5k8gb-gnused-4.8/bin:/nix/store/xzjx4kcl75c0dbv7018709gsl16gvywr-gzip-1.10/bin:/nix/store/0kr56m7izdl3vjd1z3z93mbbbxj5dilv-which-2.21/bin:/nix/store/0mck84ig5kb8shfimbyh95q1l1l76q7b-unzip-6.0/bin:/nix/store/09cyn6fj29fic4k5q6h2h9vm103dhrp7-file-5.39/bin:/nix/store/xyk4jplzpxb6p8cm3widrk7ziaa0fzhv-zip-3.0/bin \
    PWD=/proc/self/cwd \
  external/local_config_cc/cc_wrapper.sh -o bazel-out/host/bin/external/com_google_protobuf/protoc bazel-out/host/bin/external/com_google_protobuf/_objs/protoc/main.o bazel-out/host/bin/external/com_google_protobuf/libprotoc_lib.a bazel-out/host/bin/external/com_google_protobuf/libprotobuf.a bazel-out/host/bin/external/com_google_protobuf/libprotobuf_lite.a bazel-out/host/bin/third_party/zlib/libzlib_checked_in.a -lpthread -lm -lpthread -lm -lpthread -lm -lpthread -lm '-stdlib=libc++' -Wl,-L/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/lib -Wl,-L/nix/store/cbs1calcw6xh6dz7r1mxkijw4v4rgd1a-libc++-7.1.0/lib -Wl,-L/nix/store/3wnhbj0xfipva23yvnrgcfjlv924r12a-objc4-osx-10.12.6/lib -Wl,-L/nix/store/byirfzwb54iv0v56mj1crld2sg6z8qkv-libc++-6.0.1/lib -Wl,-L/nix/store/c00xjsrg94dynv1wx18jxhcsh15547b2-libc++abi-6.0.1/lib -Wl,-L/nix/store/yckj2fwd8rb0h35w7zbz800q7kzkh9l7-compiler-rt-6.0.1/lib -Wl,-L/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/lib -Wl,-L/nix/store/cbs1calcw6xh6dz7r1mxkijw4v4rgd1a-libc++-7.1.0/lib -Wl,-L/nix/store/3wnhbj0xfipva23yvnrgcfjlv924r12a-objc4-osx-10.12.6/lib -Wl,-L/nix/store/byirfzwb54iv0v56mj1crld2sg6z8qkv-libc++-6.0.1/lib -Wl,-L/nix/store/c00xjsrg94dynv1wx18jxhcsh15547b2-libc++abi-6.0.1/lib -Wl,-L/nix/store/yckj2fwd8rb0h35w7zbz800q7kzkh9l7-compiler-rt-6.0.1/lib -Wl,-F/nix/store/w9k2k0djxf6clhx5q4dz3f6k479cy2ww-apple-framework-CoreFoundation/Library/Frameworks -Wl,-F/nix/store/87ngq9bm636xg9kscijlmx4nndq559vn-apple-framework-CoreServices/Library/Frameworks -Wl,-F/nix/store/0q82bl61hakv566sanz8vb6kfg6w96ma-apple-framework-Foundation/Library/Frameworks -Wl,-S -undefined dynamic_lookup -headerpad_max_install_names -lstdc++ -lm)
Execution platform: //:default_host_platform
[902 / 924] 3 actions, 2 running
    @com_github_grpc_grpc//:grpc_lb_policy_xds; 2s local
    @com_github_grpc_grpc//src/compiler:grpc_cpp_plugin; 0s local
    [Sched] Linking src/main/cpp/util/libnumbers.a

0  0x1095f1a51  __assert_rtn + 129
1  0x1097ca444  ld::passes::stubs::x86_64::classic::LazyPointerAtom::LazyPointerAtom(ld::passes::stubs::Pass&, ld::Atom const&, bool, bool) + 420
2  0x1097c7c6a  ld::passes::stubs::Pass::makeStub(ld::Atom const&, bool) + 2762
3  0x1097c8c5f  ld::passes::stubs::Pass::process(ld::Internal&) + 2511
4  0x1097c92c0  ld::passes::stubs::doPass(Options const&, ld::Internal&) + 128
5  0x1095f2ff4  main + 1860
A linker snapshot was created at:
	/tmp/protoc-2020-10-30-140946.ld-snapshot
ld: Assertion failed: (targetAtom != NULL), function Fixup, file ../../../../ld64/src/ld/ld.hpp, line 776.
clang-6.0: error: linker command failed with exit code 1 (use -v to see invocation)
[902 / 924] 3 actions, 2 running
    @com_github_grpc_grpc//:grpc_lb_policy_xds; 2s local
    @com_github_grpc_grpc//src/compiler:grpc_cpp_plugin; 0s local
    [Sched] Linking src/main/cpp/util/libnumbers.a

Target //src:bazel_nojdk failed to build
[905 / 924] checking cached actions

ERROR: /private/tmp/nix-build-bazel-3.7.1.drv-0/bazel_src/src/main/cpp/BUILD:112:10 Linking of rule '@com_google_protobuf//:protoc' failed (Exit 1): cc_wrapper.sh failed: error executing command
  (cd /private/tmp/nix-build-bazel-3.7.1.drv-0/bazel_1Ml8wqkK/out/execroot/io_bazel && \
  exec env - \
    PATH=/nix/store/xyk4jplzpxb6p8cm3widrk7ziaa0fzhv-zip-3.0/bin:/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/bin:/nix/store/0mck84ig5kb8shfimbyh95q1l1l76q7b-unzip-6.0/bin:/nix/store/0kr56m7izdl3vjd1z3z93mbbbxj5dilv-which-2.21/bin:/nix/store/dbkd1i670cdm3dzh3wxhq33lf2sgd37q-bash/bin:/nix/store/9nl3fcrs1xzszq57iwlf60xz2ydzbj8n-cctools-port-949.0.1/bin:/nix/store/1nfvgyd3yhkiz4f38a0706w2k01q1mk7-clang-wrapper-6.0.1/bin:/nix/store/q83w0lxfs9wfzabpjxs538f64aam50q2-clang-6.0.1/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/585a9hfx0j3s60w6acgx8amcbnwwqczk-cctools-binutils-darwin-wrapper-949.0.1/bin:/nix/store/l5707pca91sq99fd5fq4x84302zssyjj-cctools-binutils-darwin-949.0.1/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/7wyjz9l8m3fl3c93ws224af3s0nvhh3m-zulu1.8.0_202-<IP_ADDRESS>/bin:/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/nggf2cl7ksb7ndzcl4nvb6c8hpklyaf8-findutils-4.7.0/bin:/nix/store/xqc84l3pdvzcf313ldjhcg3vrrv1xs9v-diffutils-3.7/bin:/nix/store/8h9dbc09qhr3s760qll6p6011jw5k8gb-gnused-4.8/bin:/nix/store/m2b4kl67rbj0yazivr09iyxmykpp2q0z-gnugrep-3.5/bin:/nix/store/sid02y809av1wzc0wp9wkar308ry1sqd-gawk-5.1.0/bin:/nix/store/6qxcfbn03llkak3ylnyam2lpdxamydii-gnutar-1.32/bin:/nix/store/xzjx4kcl75c0dbv7018709gsl16gvywr-gzip-1.10/bin:/nix/store/ynxdp22ag51b67raxjklc0m3n71vdz28-bzip2-<IP_ADDRESS>.1-bin/bin:/nix/store/v09a9pk9kw8fp21af2hpyyxggbqhjczh-gnumake-4.3/bin:/nix/store/k89nm2jva0qmvd970f84wq2iq1iwm9bs-bash-4.4-p23/bin:/nix/store/cw9k1mzhlqp306sxsg12k24b3gki834v-patch-2.7.6/bin:/nix/store/vr0zvhpaggl74vbry14idx21vjjc6dqi-xz-5.2.5-bin/bin:/nix/store/k89nm2jva0qmvd970f84wq2iq1iwm9bs-bash-4.4-p23/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/nggf2cl7ksb7ndzcl4nvb6c8hpklyaf8-findutils-4.7.0/bin:/nix/store/sid02y809av1wzc0wp9wkar308ry1sqd-gawk-5.1.0/bin:/nix/store/m2b4kl67rbj0yazivr09iyxmykpp2q0z-gnugrep-3.5/bin:/nix/store/s7s7v2l731rz05idnbdprmjynlrd7n6b-gnutar-1.32/bin:/nix/store/8h9dbc09qhr3s760qll6p6011jw5k8gb-gnused-4.8/bin:/nix/store/xzjx4kcl75c0dbv7018709gsl16gvywr-gzip-1.10/bin:/nix/store/0kr56m7izdl3vjd1z3z93mbbbxj5dilv-which-2.21/bin:/nix/store/0mck84ig5kb8shfimbyh95q1l1l76q7b-unzip-6.0/bin:/nix/store/09cyn6fj29fic4k5q6h2h9vm103dhrp7-file-5.39/bin:/nix/store/xyk4jplzpxb6p8cm3widrk7ziaa0fzhv-zip-3.0/bin \
    PWD=/proc/self/cwd \
  external/local_config_cc/cc_wrapper.sh -o bazel-out/host/bin/external/com_google_protobuf/protoc bazel-out/host/bin/external/com_google_protobuf/_objs/protoc/main.o bazel-out/host/bin/external/com_google_protobuf/libprotoc_lib.a bazel-out/host/bin/external/com_google_protobuf/libprotobuf.a bazel-out/host/bin/external/com_google_protobuf/libprotobuf_lite.a bazel-out/host/bin/third_party/zlib/libzlib_checked_in.a -lpthread -lm -lpthread -lm -lpthread -lm -lpthread -lm '-stdlib=libc++' -Wl,-L/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/lib -Wl,-L/nix/store/cbs1calcw6xh6dz7r1mxkijw4v4rgd1a-libc++-7.1.0/lib -Wl,-L/nix/store/3wnhbj0xfipva23yvnrgcfjlv924r12a-objc4-osx-10.12.6/lib -Wl,-L/nix/store/byirfzwb54iv0v56mj1crld2sg6z8qkv-libc++-6.0.1/lib -Wl,-L/nix/store/c00xjsrg94dynv1wx18jxhcsh15547b2-libc++abi-6.0.1/lib -Wl,-L/nix/store/yckj2fwd8rb0h35w7zbz800q7kzkh9l7-compiler-rt-6.0.1/lib -Wl,-L/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/lib -Wl,-L/nix/store/cbs1calcw6xh6dz7r1mxkijw4v4rgd1a-libc++-7.1.0/lib -Wl,-L/nix/store/3wnhbj0xfipva23yvnrgcfjlv924r12a-objc4-osx-10.12.6/lib -Wl,-L/nix/store/byirfzwb54iv0v56mj1crld2sg6z8qkv-libc++-6.0.1/lib -Wl,-L/nix/store/c00xjsrg94dynv1wx18jxhcsh15547b2-libc++abi-6.0.1/lib -Wl,-L/nix/store/yckj2fwd8rb0h35w7zbz800q7kzkh9l7-compiler-rt-6.0.1/lib -Wl,-F/nix/store/w9k2k0djxf6clhx5q4dz3f6k479cy2ww-apple-framework-CoreFoundation/Library/Frameworks -Wl,-F/nix/store/87ngq9bm636xg9kscijlmx4nndq559vn-apple-framework-CoreServices/Library/Frameworks -Wl,-F/nix/store/0q82bl61hakv566sanz8vb6kfg6w96ma-apple-framework-Foundation/Library/Frameworks -Wl,-S -undefined dynamic_lookup -headerpad_max_install_names -lstdc++ -lm)
Execution platform: //:default_host_platform
[905 / 924] checking cached actions

INFO: Elapsed time: 418.811s, Critical Path: 45.58s
[905 / 924] checking cached actions

INFO: 905 processes: 107 internal, 798 local.
[905 / 924] checking cached actions

FAILED: Build did NOT complete successfully

FAILED: Build did NOT complete successfully

ERROR: Could not build Bazel

@SuperSandro2000 That seems to be the same error you got here: https://github.com/NixOS/nixpkgs/pull/102230#issuecomment-733606007 for libretro.gambatte
Are you sure your mac is still working properly? (just asking since this error seems to be really rare, and you hit it twice already -- without anyone else seeing it... :question: )

I get a build failure on macOS:
ERROR: /private/tmp/nix-build-bazel-3.7.1.drv-0/bazel_src/third_party/ijar/BUILD:79:10: Linking of rule '//third_party/ijar:ijar' failed (Exit 1): cc_wrapper.sh failed: error executing command
  (cd /private/tmp/nix-build-bazel-3.7.1.drv-0/bazel_jVDIAoo7/out/execroot/io_bazel && \
  exec env - \
    PATH=/nix/store/xyk4jplzpxb6p8cm3widrk7ziaa0fzhv-zip-3.0/bin:/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/bin:/nix/store/0mck84ig5kb8shfimbyh95q1l1l76q7b-unzip-6.0/bin:/nix/store/0kr56m7izdl3vjd1z3z93mbbbxj5dilv-which-2.21/bin:/nix/store/dbkd1i670cdm3dzh3wxhq33lf2sgd37q-bash/bin:/nix/store/9nl3fcrs1xzszq57iwlf60xz2ydzbj8n-cctools-port-949.0.1/bin:/nix/store/1nfvgyd3yhkiz4f38a0706w2k01q1mk7-clang-wrapper-6.0.1/bin:/nix/store/q83w0lxfs9wfzabpjxs538f64aam50q2-clang-6.0.1/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/585a9hfx0j3s60w6acgx8amcbnwwqczk-cctools-binutils-darwin-wrapper-949.0.1/bin:/nix/store/l5707pca91sq99fd5fq4x84302zssyjj-cctools-binutils-darwin-949.0.1/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/7wyjz9l8m3fl3c93ws224af3s0nvhh3m-zulu1.8.0_202-<IP_ADDRESS>/bin:/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/nggf2cl7ksb7ndzcl4nvb6c8hpklyaf8-findutils-4.7.0/bin:/nix/store/xqc84l3pdvzcf313ldjhcg3vrrv1xs9v-diffutils-3.7/bin:/nix/store/8h9dbc09qhr3s760qll6p6011jw5k8gb-gnused-4.8/bin:/nix/store/m2b4kl67rbj0yazivr09iyxmykpp2q0z-gnugrep-3.5/bin:/nix/store/sid02y809av1wzc0wp9wkar308ry1sqd-gawk-5.1.0/bin:/nix/store/6qxcfbn03llkak3ylnyam2lpdxamydii-gnutar-1.32/bin:/nix/store/xzjx4kcl75c0dbv7018709gsl16gvywr-gzip-1.10/bin:/nix/store/ynxdp22ag51b67raxjklc0m3n71vdz28-bzip2-<IP_ADDRESS>.1-bin/bin:/nix/store/v09a9pk9kw8fp21af2hpyyxggbqhjczh-gnumake-4.3/bin:/nix/store/k89nm2jva0qmvd970f84wq2iq1iwm9bs-bash-4.4-p23/bin:/nix/store/cw9k1mzhlqp306sxsg12k24b3gki834v-patch-2.7.6/bin:/nix/store/vr0zvhpaggl74vbry14idx21vjjc6dqi-xz-5.2.5-bin/bin:/nix/store/k89nm2jva0qmvd970f84wq2iq1iwm9bs-bash-4.4-p23/bin:/nix/store/66swkp2v4ign5d7ygs32wld4jwwpyknj-coreutils-8.32/bin:/nix/store/nggf2cl7ksb7ndzcl4nvb6c8hpklyaf8-findutils-4.7.0/bin:/nix/store/sid02y809av1wzc0wp9wkar308ry1sqd-gawk-5.1.0/bin:/nix/store/m2b4kl67rbj0yazivr09iyxmykpp2q0z-gnugrep-3.5/bin:/nix/store/s7s7v2l731rz05idnbdprmjynlrd7n6b-gnutar-1.32/bin:/nix/store/8h9dbc09qhr3s760qll6p6011jw5k8gb-gnused-4.8/bin:/nix/store/xzjx4kcl75c0dbv7018709gsl16gvywr-gzip-1.10/bin:/nix/store/0kr56m7izdl3vjd1z3z93mbbbxj5dilv-which-2.21/bin:/nix/store/0mck84ig5kb8shfimbyh95q1l1l76q7b-unzip-6.0/bin:/nix/store/09cyn6fj29fic4k5q6h2h9vm103dhrp7-file-5.39/bin:/nix/store/xyk4jplzpxb6p8cm3widrk7ziaa0fzhv-zip-3.0/bin \
    PWD=/proc/self/cwd \
  external/local_config_cc/cc_wrapper.sh -o bazel-out/darwin-opt-exec-EDC14992/bin/third_party/ijar/ijar bazel-out/darwin-opt-exec-EDC14992/bin/third_party/ijar/_objs/ijar/classfile.o bazel-out/darwin-opt-exec-EDC14992/bin/third_party/ijar/_objs/ijar/ijar.o bazel-out/darwin-opt-exec-EDC14992/bin/third_party/ijar/libzip.a bazel-out/darwin-opt-exec-EDC14992/bin/third_party/ijar/libplatform_utils.a bazel-out/darwin-opt-exec-EDC14992/bin/src/main/cpp/util/libfilesystem.a bazel-out/darwin-opt-exec-EDC14992/bin/src/main/cpp/util/liberrors.a bazel-out/darwin-opt-exec-EDC14992/bin/src/main/cpp/util/libport.a bazel-out/darwin-opt-exec-EDC14992/bin/src/main/cpp/util/liblogging.a bazel-out/darwin-opt-exec-EDC14992/bin/src/main/cpp/util/libstrings.a bazel-out/darwin-opt-exec-EDC14992/bin/third_party/ijar/libzlib_client.a bazel-out/darwin-opt-exec-EDC14992/bin/third_party/zlib/libzlib_checked_in.a '-stdlib=libc++' -Wl,-L/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/lib -Wl,-L/nix/store/cbs1calcw6xh6dz7r1mxkijw4v4rgd1a-libc++-7.1.0/lib -Wl,-L/nix/store/3wnhbj0xfipva23yvnrgcfjlv924r12a-objc4-osx-10.12.6/lib -Wl,-L/nix/store/byirfzwb54iv0v56mj1crld2sg6z8qkv-libc++-6.0.1/lib -Wl,-L/nix/store/c00xjsrg94dynv1wx18jxhcsh15547b2-libc++abi-6.0.1/lib -Wl,-L/nix/store/yckj2fwd8rb0h35w7zbz800q7kzkh9l7-compiler-rt-6.0.1/lib -Wl,-L/nix/store/0mabx9absir73mmijrsv0dsyvyya463r-python3-3.8.6/lib -Wl,-L/nix/store/cbs1calcw6xh6dz7r1mxkijw4v4rgd1a-libc++-7.1.0/lib -Wl,-L/nix/store/3wnhbj0xfipva23yvnrgcfjlv924r12a-objc4-osx-10.12.6/lib -Wl,-L/nix/store/byirfzwb54iv0v56mj1crld2sg6z8qkv-libc++-6.0.1/lib -Wl,-L/nix/store/c00xjsrg94dynv1wx18jxhcsh15547b2-libc++abi-6.0.1/lib -Wl,-L/nix/store/yckj2fwd8rb0h35w7zbz800q7kzkh9l7-compiler-rt-6.0.1/lib -Wl,-F/nix/store/w9k2k0djxf6clhx5q4dz3f6k479cy2ww-apple-framework-CoreFoundation/Library/Frameworks -Wl,-F/nix/store/87ngq9bm636xg9kscijlmx4nndq559vn-apple-framework-CoreServices/Library/Frameworks -Wl,-F/nix/store/0q82bl61hakv566sanz8vb6kfg6w96ma-apple-framework-Foundation/Library/Frameworks -Wl,-S -undefined dynamic_lookup -headerpad_max_install_names -lstdc++ -lm)
Execution platform: //:default_host_platform
[531 / 2,164] 15 actions running
    @com_google_protobuf//:protoc_lib; 9s local
    @com_google_protobuf//:protobuf_lite; 4s local
    @com_google_protobuf//:protobuf_lite; 4s local
    Compiling src/main/cpp/startup_options.cc; 1s local
    @com_github_grpc_grpc//:grpc_lb_policy_xds; 1s local
    Compiling upb/upb/encode.c; 1s local
    Compiling src/main/cpp/rc_file.cc; 0s local
    Compiling src/main/cpp/util/errors_posix.cc; 0s local ...
0  0x103e67a51  __assert_rtn + 129
1  0x104040444  ld::passes::stubs::x86_64::classic::LazyPointerAtom::LazyPointerAtom(ld::passes::stubs::Pass&, ld::Atom const&, bool, bool) + 420
2  0x10403dc6a  ld::passes::stubs::Pass::makeStub(ld::Atom const&, bool) + 2762
3  0x10403ec5f  ld::passes::stubs::Pass::process(ld::Internal&) + 2511
4  0x10403f2c0  ld::passes::stubs::doPass(Options const&, ld::Internal&) + 128
5  0x103e68ff4  main + 1860
6  0x7fff68dc3cc9  start + 1
A linker snapshot was created at:
        /tmp/ijar-2020-11-01-111228.ld-snapshot
ld: Assertion failed: (targetAtom != NULL), function Fixup, file ../../../../ld64/src/ld/ld.hpp, line 776.
clang-6.0: error: linker command failed with exit code 1 (use -v to see invocation)

@uri-canva seems to be the same error as https://github.com/NixOS/nixpkgs/pull/105439#issuecomment-735821574
I think if we find out why libmodplug fails with that error too since 21. november, that can be fixed for bazel also?!

You're right, in fact that build failure exists regardless of this PR.

Could this be a reason for those linker errors?

Could be but I am not that deep into the big sur update to fully understand it.

Since bazel 3.3.1 fails with the same error on hydra, should we just mark this package as broken on darwin?

If we mark it as broken it will stop being built right? That means that even if it gets fixed by a more general big sur fix we won't notice. Since it was broken by a more general change, it's likely it will be fixed by a general change too.

If we mark it as broken it will stop being built right? That means that even if it gets fixed by a more general big sur fix we won't notice. Since it was broken by a more general change, it's likely it will be fixed by a general change too.

Right, but bazel is quite huge, compared to libmodplug for example. We could monitor libmodplug builds (I created #105537 to track this) and could re-enable bazel when libmodplug no longer fails. I guess this would reduce power consumption by some order...

If we mark it as broken it will stop being built right?

You can't build it on darwin at all.

That means that even if it gets fixed by a more general big sur fix we won't notice.

Yeah but otherwise we get failures until it is fixed which is not great especially when other PRs see failing builds in their nixpkgs-review.

Since it was broken by a more general change, it's likely it will be fixed by a general change too.

I wouldn't count on that.

If you mark it as broken on darwin I would merge it.

:ok_hand:  Done.

I'm not familiar enough with our usage of broken in general to know if this is a valid use case for it, so I will defer to you.
I bisected the failure, it's https://github.com/NixOS/nixpkgs/commit/473b341fb1aa01c23eb0ed942a03463cf029e21b, not the big sur change.

I bisected the failure, it's 473b341, not the big sur change.

Wow, really? That looks so innocent... :smile:
Does libmodplug build when manually adding the -macosx_version_min 10.12 linker arguments?

Verified, if I revert that change on this PR it builds correctly.

Yeah, verified it fixes the issue with libmodplug as well.

Thank you @uri-canva!
@SuperSandro2000 How should we proceed? I can add a comment above the broken = isDarwin setting that it should be removed once #105573 is fixed (I'll re-phrase the ticket that it is about a general problem, not only libmodplug).

I can add a comment above the broken = isDarwin setting that it should be removed once #105573 is fixed (I'll re-phrase the ticket that it is about a general problem, not only libmodplug).

That sounds great to keep track of why the package is broken.

That sounds great to keep track of why the package is broken.

Done.

@avdv I’d say we can merge after rebase on master.

I'm trying to nix-build after rebase at least since yesterday, but download of bazel sources from GitHub is too slow and times out...

Great work! Tested that it compiles for me, passes test phase and that bazel --version runs ok on Gentoo x86_64 under sandbox = true.

Now, bazel 3.7.2 has been released which fixes a single bug with --run_under invcation`.
Do we want to merge this PR and do 3.7.2 later or should we aim for 3.7.2 to avoid rebuilds of dependent packages?

Now, bazel 3.7.2 has been released which fixes a single bug with --run_under invcation.
Do we want to merge this PR and do 3.7.2 later or should we aim for 3.7.2 to avoid rebuilds of dependent packages?

I say update once, no need to rebuild packages twice.

I'm going to update this PR going from Bazel 3.3.1 -> 3.7.1. Marking as draft for the time being...

I added a commit on top of the current branch (could be squashed into the former one) upgrading bazel 3.7.1 to 3.7.2. I successfully built bazel_3, tts, python3Packages.tensorflow_2, gvisor, bazel-remote, bazel-watcher and python38Packages.mask-rcnn on NixOS.

Also builds fine on Gentoo amd64 :heavy_check_mark:

Result of nixpkgs-review pr 105439 run on x86_64-darwin 1

8 packages marked as broken and skipped:

bazel-watcher
python37Packages.arviz
python37Packages.graph_nets
python37Packages.mask-rcnn
python37Packages.pymc3
python37Packages.tensorflow-probability
python38Packages.mask-rcnn
tts

5 packages failed to build:

bazel (bazel_3)
bazel-remote
python37Packages.tensorflow_2 (python37Packages.tensorflow-build_2)
python38Packages.tensorflow_2 (python38Packages.tensorflow-build_2)
python39Packages.tensorflow_2 (python39Packages.tensorflow-build_2)

bazel
Execution platform: //:default_host_platform
0  0x1024bda51  __assert_rtn + 129
1  0x102696444  ld::passes::stubs::x86_64::classic::LazyPointerAtom::LazyPointerAtom(ld::passes::stubs::Pass&, ld::Atom const&, bool, bool) + 420
2  0x102693c6a  ld::passes::stubs::Pass::makeStub(ld::Atom const&, bool) + 2762
3  0x102694c5f  ld::passes::stubs::Pass::process(ld::Internal&) + 2511
4  0x1026952c0  ld::passes::stubs::doPass(Options const&, ld::Internal&) + 128
5  0x1024beff4  main + 1860
A linker snapshot was created at:
        /tmp/zipper-2020-11-21-190013.ld-snapshot
ld: Assertion failed: (targetAtom != NULL), function Fixup, file ../../../../ld64/src/ld/ld.hpp, line 776.
clang-6.0: error: linker command failed with exit code 1 (use -v to see invocation)
Target //src:bazel_nojdk failed to build
INFO: Elapsed time: 207.526s, Critical Path: 24.92s
INFO: 552 processes: 95 internal, 457 local.
FAILED: Build did NOT complete successfully

ERROR: Could not build Bazel

Should we fix Bazel on darwin or mark it as broken?

Should we fix Bazel on darwin or mark it as broken?

I already had marked it as broken, but seems the commit was lost during my rebase on master. I'll re-add it shortly...

I cherry-picked the old commit to mark bazel_3 as broken on darwin. Sorry for the confusion!

Result of nixpkgs-review pr 105439 run on x86_64-darwin 1

17 packages marked as broken and skipped:

bazel
bazel-remote
bazel-watcher
bazel_3
python37Packages.arviz
python37Packages.graph_nets
python37Packages.mask-rcnn
python37Packages.pymc3
python37Packages.tensorflow-build_2
python37Packages.tensorflow-probability
python37Packages.tensorflow_2
python38Packages.mask-rcnn
python38Packages.tensorflow-build_2
python38Packages.tensorflow_2
python39Packages.tensorflow-build_2
python39Packages.tensorflow_2
tts

BTW, I would really prefer fixing this on darwin than marking it as broken. Whatever I tried, either it failed finding standard header files, or it ran into the linker issue...

Yea it's bad that it's broken. I wouldn't be able to adopt this version at work since most devs are using Macs. Did you try to revert https://github.com/NixOS/nixpkgs/commit/473b341fb1aa01c23eb0ed942a03463cf029e21b? If that works, can you try setting up ldflags to include the -macosx_version_min 10.12 option?

Did you try to revert 473b341?

Yes, uri-canva verified that it works again when reverting that commit. (see https://github.com/NixOS/nixpkgs/pull/105439#issuecomment-738364700)

If that works, can you try setting up ldflags to include the -macosx_version_min 10.12 option?

Tried that, but ran into a different error. Interestingly, removing that option from the libmodplug linker flags made it build again successfully. (see https://github.com/NixOS/nixpkgs/issues/105573)

@avdv Are you still going to proceed with efforts to move this forward? Seems like there are some merge conflicts and Darwin is still disabled?

@avdv Are you still going to proceed with efforts to move this forward? Seems like there are some merge conflicts and Darwin is still disabled?

@avdv Are you still going to proceed with efforts to move this forward? Seems like there are some merge conflicts and Darwin is still disabled?

@groodt my priorities have shifted, but I still want to move this forward. I'll rebase and try to build again...

@avdv Are you still going to proceed with efforts to move this forward? Seems like there are some merge conflicts and Darwin is still disabled?

@groodt my priorities have shifted, but I still want to move this forward. I'll rebase and try to build again...

@avdv Any chance you can rebase this? It would be great to have this as well as Bazel 4.0.0 as options if we can, particularly since this seems so close?

@avdv Any chance you can rebase this? It would be great to have this as well as Bazel 4.0.0 as options if we can, particularly since this seems so close?

@avdv Any chance you can rebase this? It would be great to have this as well as Bazel 4.0.0 as options if we can, particularly since this seems so close?

@groodt I'll try to give a shot this evening... but don't hold your breath.

@avdv Any chance you can rebase this? It would be great to have this as well as Bazel 4.0.0 as options if we can, particularly since this seems so close?

@groodt I'll try to give a shot this evening... but don't hold your breath.

I have rebased this PR onto master, and also removed the disable on darwin for now... Let me know if I should re-add it.

I have rebased this PR onto master, and also removed the disable on darwin for now... Let me know if I should re-add it.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 105439 run on x86_64-darwin 1

29 packages marked as broken and skipped:

bazel-watcher
python37Packages.arviz
python37Packages.baselines
python37Packages.graph_nets
python37Packages.mask-rcnn
python37Packages.optuna
python37Packages.pymc3
python37Packages.rl-coach
python37Packages.tensorflow-probability
python38Packages.arviz
python38Packages.baselines
python38Packages.graph_nets
python38Packages.mask-rcnn
python38Packages.optuna
python38Packages.pymc3
python38Packages.rl-coach
python38Packages.tensorflow-probability
python39Packages.baselines
python39Packages.edward
python39Packages.graph_nets
python39Packages.scikit-tda
python39Packages.tensorflow
python39Packages.tensorflow-build
python39Packages.tensorflow-build_2
python39Packages.tensorflow-probability
python39Packages.tensorflowWithoutCuda
python39Packages.tensorflow_2
python39Packages.tflearn
python39Packages.umap-learn

1 package failed to build and already failed to build on hydra master:

bazel: log https://termbin.com/vy36

20 packages failed to build and are new build failures:

(bazel_3): log was empty
bazel-remote: log was empty
python37Packages.edward: log was empty
python37Packages.scikit-tda: log was empty
python37Packages.tensorflow: log was empty
(python37Packages.tensorflow-build: log was empty
,python37Packages.tensorflow-build_2: log was empty
,python37Packages.tensorflowWithoutCuda: log was empty
,python37Packages.tensorflow_2): log was empty
python37Packages.tflearn: log was empty
python37Packages.umap-learn: log was empty
python38Packages.edward: log was empty
python38Packages.scikit-tda: log was empty
python38Packages.tensorflow: log was empty
(python38Packages.tensorflow-build: log was empty
,python38Packages.tensorflow-build_2: log was empty
,python38Packages.tensorflowWithoutCuda: log was empty
,python38Packages.tensorflow_2): log was empty
python38Packages.tflearn: log was empty
python38Packages.umap-learn: log was empty

The following issues got detected with the above build packages.
Please fix at least the ones listed with your changed packages:
bazel:

Please consider this feature to be alpha.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 105439 run on x86_64-darwin 1

29 packages marked as broken and skipped:

bazel-watcher
python37Packages.arviz
python37Packages.baselines
python37Packages.graph_nets
python37Packages.mask-rcnn
python37Packages.optuna
python37Packages.pymc3
python37Packages.rl-coach
python37Packages.tensorflow-probability
python38Packages.arviz
python38Packages.baselines
python38Packages.graph_nets
python38Packages.mask-rcnn
python38Packages.optuna
python38Packages.pymc3
python38Packages.rl-coach
python38Packages.tensorflow-probability
python39Packages.baselines
python39Packages.edward
python39Packages.graph_nets
python39Packages.scikit-tda
python39Packages.tensorflow
python39Packages.tensorflow-build
python39Packages.tensorflow-build_2
python39Packages.tensorflow-probability
python39Packages.tensorflowWithoutCuda
python39Packages.tensorflow_2
python39Packages.tflearn
python39Packages.umap-learn

1 package failed to build and already failed to build on hydra master:

bazel: log https://termbin.com/vy36

20 packages failed to build and are new build failures:

(bazel_3): log was empty
bazel-remote: log was empty
python37Packages.edward: log was empty
python37Packages.scikit-tda: log was empty
python37Packages.tensorflow: log was empty
(python37Packages.tensorflow-build: log was empty
,python37Packages.tensorflow-build_2: log was empty
,python37Packages.tensorflowWithoutCuda: log was empty
,python37Packages.tensorflow_2): log was empty
python37Packages.tflearn: log was empty
python37Packages.umap-learn: log was empty
python38Packages.edward: log was empty
python38Packages.scikit-tda: log was empty
python38Packages.tensorflow: log was empty
(python38Packages.tensorflow-build: log was empty
,python38Packages.tensorflow-build_2: log was empty
,python38Packages.tensorflowWithoutCuda: log was empty
,python38Packages.tensorflow_2): log was empty
python38Packages.tflearn: log was empty
python38Packages.umap-learn: log was empty

The following issues got detected with the above build packages.
Please fix at least the ones listed with your changed packages:
bazel:

Please consider this feature to be alpha.
 Let me know if I should re-add it.

I would prefer it so that hydra does not try to build it on darwin which saves some build time.

I have rebased this PR onto master, and also removed the disable on darwin for now... Let me know if I should re-add it.

I would prefer it so that hydra does not try to build it on darwin which saves some build time.

I would prefer it so that hydra does not try to build it on darwin which saves some build time.

What is the procedure for deprecating a package for a platform? Is it up to the maintainer(s)?
The PRs have already been ready for Bazel 3.7.2 and 4.0.0 for Linux, it has been the darwin package blocking things.
There seem to be some fundamental underlying Nixpkgs Darwin stdenv limitations or issues that it may not be possible to resolve. See: https://github.com/NixOS/nixpkgs/pull/106984#issuecomment-770455943
The summary of the situation on Darwin is:

A low-level change in pkgs/build-support/bintools-wrapper/default.nix may have had unintended side-effects on the Darwin Bazel package. Not sure where the best place for the fix for this should be.
There may be some changes to modern Bazel which cannot be built with the Nixpkgs Darwin stdenv. This would really be a shame, but it might be the limits of what can be done with the open source code that Apple provides and the limits of what the Nixpkgs Darwin stdenv is capable of building. I'm not familiar enough with the low-level Apple toolchains to make a call on this though.

I would prefer it so that hydra does not try to build it on darwin which saves some build time.

What is the procedure for deprecating a package for a platform? Is it up to the maintainer(s)?
The PRs have already been ready for Bazel 3.7.2 and 4.0.0 for Linux, it has been the darwin package blocking things.
There seem to be some fundamental underlying Nixpkgs Darwin stdenv limitations or issues that it may not be possible to resolve. See: https://github.com/NixOS/nixpkgs/pull/106984#issuecomment-770455943
The summary of the situation on Darwin is:

A low-level change in pkgs/build-support/bintools-wrapper/default.nix may have had unintended side-effects on the Darwin Bazel package. Not sure where the best place for the fix for this should be.
There may be some changes to modern Bazel which cannot be built with the Nixpkgs Darwin stdenv. This would really be a shame, but it might be the limits of what can be done with the open source code that Apple provides and the limits of what the Nixpkgs Darwin stdenv is capable of building. I'm not familiar enough with the low-level Apple toolchains to make a call on this though.

What is the procedure for deprecating a package for a platform?

We can just mark it broken for darwin for now or we keep the old version around just for darwin to advance linux.

We can just mark it broken for darwin for now or we keep the old version around just for darwin to advance linux.

Sure, but who makes the call? Is it up to the maintainer or is purely your concern around saving build time?

Sure, but who makes the call? Is it up to the maintainer or is purely your concern around saving build time?

If the problem happens with libraries it is usually pretty easy to decide because something has a hard dependency on a specific version.
The call is usually on the maintainer if two versions should be maintainers.
Right now a lot of hashes are changing when bazel updates. Would that cause problems when Darwin uses another version? If so I would suggest to mark it broken for now.

Right now a lot of hashes are changing when bazel updates. Would that cause problems when Darwin uses another version? If so I would suggest to mark it broken for now.

I don't think we should read too much into the broken packages for Python in this PR. These are due to the dependency chain that @avdv is trying to unwind. An alternative to the changes that have been made here is to have bazel_3 remain Bazel 3.3.1 and introduce bazel_3_7 and then a different PR to make the changes necessary to the libraries to use Bazel 3.7.2 and flip the default bazel_3 to become Bazel 3.7.2.
We do have a working version on Bazel 4.0.0 on Darwin here btw:
https://github.com/NixOS/nixpkgs/pull/106984#issuecomment-770486822
I imagine the same approach will work here as well.

Good news: I got it to build on darwin. See https://github.com/avdv/nixpkgs/runs/1805658321?check_suite_focus=true
I was using the default llvmPackages.stdenv (clang 7, which was failing with "cannot find libarc-lite.dylib") and just patched the xcode_locator.m file to remove using ARC -- so it leaks memory, but it's a short lived process and only used throughout the build of bazel itself, AFAICS.
https://github.com/avdv/nixpkgs/blob/ibazel-debug-2/pkgs/development/tools/build-managers/bazel/bazel_3/no-arc.patch
Thoughts?

I was using the default llvmPackages.stdenv (clang 7, which was failing with "cannot find libarc-lite.dylib") and just patched the xcode_locator.m file to remove using ARC -- so it leaks memory, but it's a short lived process and only used throughout the build of bazel itself, AFAICS.

That's actually a really smart observation! Nice work! I think it's a good idea.
Does the newer version of Clang come with thread_local support so the re2 patches are no longer required?

Does the newer version of Clang come with thread_local support so the re2 patches are no longer required?

I don't know. Should be easy to test...

I don't know. Should be easy to test...

If you can bring the changes into this PR or give me a link to another branch / PR I can try test on my machine.

If you can bring the changes into this PR or give me a link to another branch / PR I can try test on my machine.

I was merely thinking of something as simple as running clang++ -c foo.cc on darwin:
namespace test {
  extern thread_local int foo;
}

Does that compile with clang 7? Does it fail with clang 6?

Great stuff @avdv!

@avdv Unfortunately, it doesn't seem so easy to test.
❯ cat foo.cc && nix run nixpkgs.llvmPackages_6.clang-unwrapped -c clang -c foo.cc && ls -la foo.o && rm foo.o
namespace test {
  extern thread_local int foo;
}
-rw-r--r--  1 groodt  wheel  200  2 Feb 00:38 foo.o

/tmp
❯ cat foo.cc && nix run nixpkgs.llvmPackages_7.clang-unwrapped -c clang -c foo.cc && ls -la foo.o && rm foo.o
namespace test {
  extern thread_local int foo;
}
-rw-r--r--  1 groodt  wheel  200  2 Feb 00:39 foo.o

That example isn't running with the exact same version of nixpkgs as this PR, but it appears to demonstrate that both clang6 and clang7 from nixpkgs can handle thread_local.
Just for curiousity, here is what the output of the built-in Apple toolchains does.
/tmp
❯ cat foo.cc && clang++ --version && clang++ -c foo.cc && ls -la foo.o && rm foo.o
namespace test {
  extern thread_local int foo;
}
Apple clang version 12.0.0 (clang-1<IP_ADDRESS>)
Target: x86_64-apple-darwin19.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
foo.cc:2:10: error: unknown type name 'thread_local'
  extern thread_local int foo;
         ^
1 error generated.

/tmp
❯ cat foo.cc && clang++ --version && clang++ -std=c++11 -c foo.cc && ls -la foo.o && rm foo.o
namespace test {
  extern thread_local int foo;
}
Apple clang version 12.0.0 (clang-1<IP_ADDRESS>)
Target: x86_64-apple-darwin19.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
-rw-r--r--  1 groodt  wheel  208  2 Feb 00:45 foo.o

I don't know exactly what that means, but I think it means something really complex is going on with the setup of the tools in this derivation. 😂
Maybe we should just try bring the change to xcode_locator.m into this PR. I think it will resolve the issues and we can ask @divanorama to do the same in the Bazel 4.0.0 PR.

That example isn't running with the exact same version of nixpkgs as this PR, but it appears to demonstrate that both clang6 and clang7 from nixpkgs can handle thread_local.

This probably means that somewhere inside the bazel build, there are still some calls to the platform tools (xcrun somewhere?) instead of the nix provided clang, I guess.

Maybe we should just try bring the change to xcode_locator.m into this PR. I think it will resolve the issues and we can ask @divanorama to do the same in the Bazel 4.0.0 PR.

Agreed. This should be the next step. I'll streamline the changes and incorporate them into this PR...
I also have upgraded the build JDK used from 8 to 11; thinking that there's no good reason to build with a different JDK than what is used as the run JDK. Any objections if I also include this in this PR? (note, openjdk 8 is EOL in about a year anyways)

This probably means that somewhere inside the bazel build, there are still some calls to the platform tools (xcrun somewhere?) instead of the nix provided clang, I guess.

Indeed bazel may still be picking up xcrun from the host sometimes. There are nix patches around that already https://github.com/NixOS/nixpkgs/pull/106984#issuecomment-764963717 but they don't cover all xcrun occurrences in bazel code https://github.com/bazelbuild/bazel/search?q=xcrun&type=code . We could try to override it more

Though in 4.0.0 PR I've added --verbose_failures and at least some failures were for clang from nixpkgs https://github.com/divanorama/nixpkgs/commit/5a8f64800a21c7955320bea4ed290b930effa688

This probably means that somewhere inside the bazel build, there are still some calls to the platform tools (xcrun somewhere?) instead of the nix provided clang, I guess.

Maybe, although the error message seen was slightly different in https://github.com/NixOS/nixpkgs/pull/106984#issuecomment-770278247
error: thread-local storage is not supported for the current target
Not sure if that is only due to the structure of the code in foo.cc though.

I also have upgraded the build JDK used from 8 to 11; thinking that there's no good reason to build with a different JDK than what is used as the run JDK. Any objections if I also include this in this PR? (note, openjdk 8 is EOL in about a year anyways)

Sounds good to me as long as it doesn't introduce any problems with Darwin or Linux. This PR has a lot of changes already as it is.

I have pushed the latest changes which should enable building bazel 3.7.2 on Linux and Darwin. :crossed_fingers:

I have pushed the latest changes which should enable building bazel 3.7.2 on Linux and Darwin. 🤞

We have lift-off! 🚀 Thanks to everyone for showing so much determination and intelligence.
...

INFO: 24 processes: 9 internal, 13 processwrapper-sandbox, 2 worker.
[24 / 24] 2 / 2 tests; checking cached actions; last test: .../myproject:hello
INFO: Build completed successfully, 24 total actions
//examples/cpp:hello-success_test                                        PASSED in 1.3s
//examples/java-native/src/test/java/com/example/myproject:hello         PASSED in 0.8s

Executed 2 out of 2 tests: 2 tests pass.
There were tests whose specified size is too big. Use the --test_verbose_timeout_warnings command line option to see which ones these are.
INFO: Build completed successfully, 24 total actions

❯ /nix/store/qlda6hniigd4sknazlzdyxfgff8hj9p9-bazel-3.7.2/bin/bazel version
Build label: 3.7.2- (@non-git)
Build target: bazel-out/darwin-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Tue. Jan. 1 00:00:00 1980 (315532800)
Build timestamp: 315532800
Build timestamp as int: 315532800

@groodt @avdv thank you so much for you persistence and hard work getting this fixed. How can I buy you beer? 🥳🥳

Indeed bazel may still be picking up xcrun from the host sometimes. There are nix patches around that already #106984 (comment) but they don't cover all xcrun occurrences in bazel code bazelbuild/bazel/search?q=xcrun&type=code . We could try to override it more

Replacing every xcrun occurrence seems to be a tedious task, since you also would have to do this for the sub-builds too, right? Would it be better to replace xcrun itself with a script, which simply returns the nix tools depending on how it is run?

The last commit does not follow the contributing guide.

The last commit does not follow the contributing guide.

Fixed.

builder for '/nix/store/8j2glkr3bwf5l2r4jwxn1xqpsr7a0hd1-envoy-1.16.2.drv' failed with exit code 1; last 10 log lines:
  patching file test/extensions/quic_listeners/quiche/platform/spdy_platform_test.cc
  patching file test/extensions/quic_listeners/quiche/test_proof_source.h
  patching file test/extensions/quic_listeners/quiche/test_utils.h
  applying patch /nix/store/jb1r2ja3b3j30a4jr73rfh0flg8vbicm-0002-Add-upb-patch-to-make-it-compile-under-GCC10.patch
  patching file bazel/repositories.bzl
  patching file bazel/upb2.patch
  configuring
  fixed output derivation was built for a different bazel version
       got: bazel-3.3.1
  expected: bazel-3.7.2

builder for '/nix/store/8j2glkr3bwf5l2r4jwxn1xqpsr7a0hd1-envoy-1.16.2.drv' failed with exit code 1; last 10 log lines:
  patching file test/extensions/quic_listeners/quiche/platform/spdy_platform_test.cc
  patching file test/extensions/quic_listeners/quiche/test_proof_source.h
  patching file test/extensions/quic_listeners/quiche/test_utils.h
  applying patch /nix/store/jb1r2ja3b3j30a4jr73rfh0flg8vbicm-0002-Add-upb-patch-to-make-it-compile-under-GCC10.patch
  patching file bazel/repositories.bzl
  patching file bazel/upb2.patch
  configuring
  fixed output derivation was built for a different bazel version
       got: bazel-3.3.1
  expected: bazel-3.7.2

@SuperSandro2000 I've pushed a commit to address envoy too.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 105439 run on x86_64-darwin 1

12 packages marked as broken and skipped:

bazel-watcher
python37Packages.arviz
python37Packages.graph_nets
python37Packages.optuna
python37Packages.pymc3
python37Packages.rl-coach
python38Packages.arviz
python38Packages.graph_nets
python38Packages.optuna
python38Packages.pymc3
python38Packages.rl-coach
python39Packages.graph_nets

1 package failed to build and are new build failure:

bazel-remote: log https://termbin.com/8et5

1 package built:

bazel (bazel_3)

The following issues got detected with the above build packages.
Please fix at least the ones listed with your changed packages:
bazel:

Please consider this feature to be alpha.

Is this related?
hash mismatch in fixed-output derivation '/nix/store/cljnyq0cby3m6mi0lccjh508ap7429xx-tensorflow-2.4.0-deps.tar.gz':
  wanted: sha256:0615mj7jg04zc8i2095wr0icllzq1i5q0kvigjc7jkzghlrkibby
  got:    sha256:0s8q5rxq8abr50c5jpwv96ncfc0k8jw7w70ri8viqy031g9v9v45

Do you have an idea about bazel_remote? If not we could mark it broken on darwin.

Seems to be the same problem as with bazel-watcher. (see https://github.com/NixOS/nixpkgs/pull/105669#issuecomment-737454090)
I tried to build bazel-watcher on top of this PR and it failed in the same way - cannot find a standard C++ header.
This might indicate a sincere problem with bazel on Darwin and probably needs attention separately. I'll mark it as broken for now...

Is this related?
hash mismatch in fixed-output derivation '/nix/store/cljnyq0cby3m6mi0lccjh508ap7429xx-tensorflow-2.4.0-deps.tar.gz':
  wanted: sha256:0615mj7jg04zc8i2095wr0icllzq1i5q0kvigjc7jkzghlrkibby
  got:    sha256:0s8q5rxq8abr50c5jpwv96ncfc0k8jw7w70ri8viqy031g9v9v45

Let me have a look...

I have fixed up the "bazel: 3.7.1 -> 3.7.2" commit with changed hashes for tensorflow{,WithCuda}. @SuperSandro2000 PTAL

@avdv I think Sandro might want you to fix the last commit according to the style guide.

The last commit does not follow the contributing guide.

fyi: https://wiki.nixplatform.io/home/propsals-and-feedback/collaborate-with-nix#squashing-commits

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 105439 run on x86_64-linux 1

14 packages marked as broken and skipped:

python37Packages.arviz
python37Packages.dm-sonnet
python37Packages.graph_nets
python37Packages.optuna
python37Packages.pymc3
python37Packages.rl-coach
python38Packages.arviz
python38Packages.dm-sonnet
python38Packages.graph_nets
python38Packages.optuna
python38Packages.pymc3
python38Packages.rl-coach
python39Packages.dm-sonnet
python39Packages.graph_nets

4 packages built:

bazel (bazel_3)
bazel-remote
bazel-watcher
gvisor

The following issues got detected with the above build packages.
Please fix at least the ones listed with your changed packages:
bazel:

Please consider this feature to be alpha.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 105439 run on x86_64-darwin 1

13 packages marked as broken and skipped:

bazel-remote
bazel-watcher
python37Packages.arviz
python37Packages.graph_nets
python37Packages.optuna
python37Packages.pymc3
python37Packages.rl-coach
python38Packages.arviz
python38Packages.graph_nets
python38Packages.optuna
python38Packages.pymc3
python38Packages.rl-coach
python39Packages.graph_nets

1 package built:

bazel (bazel_3)

The following issues got detected with the above build packages.
Please fix at least the ones listed with your changed packages:
bazel:

Please consider this feature to be alpha.

Thank you @SuperSandro2000 !

I am trying to add execlog to our bazel package in https://github.com/NixOS/nixpkgs/pull/111975 , if you have advice on how to fix my error, advice welcome :)

Congratulations @avdv, this was quite the challenging upgrade! Thanks for sticking with it.

Wow, amazing work all!


react-native-webview cache not working for iOS

Bug description:
I have implemented a PWA inside react-native-webview. When i'm running the application in Android, the pages are getting cached as expected and working offline as well but when i'm running the same in iOS, its throwing error when i'm trying to use the application offline.

To Reproduce:

Embed a PWA in webview.
Run the application using npx react-native run-ios

Expected behavior:
Expectation: Like Android in iOS also, when accessing offline, the webview should display the pages from cache.

Screenshots/Videos:

Environment:

OS: iOS
OS version: 14.0
react-native version: 0.63.2
react-native-webview version: 10.8.3

I am facing the same issue :( Can someone please help us with an alternative/workaround?

hi @niteshsyngenta11  Have you solved it yet ?

Hi everyone  I use the latest version of the react-native-webview and I encounter the same issues. In the app it is multiple webviews that use the same static assets. On android everything is properly cached but on ios each webview send request for the assets

+1

+1

+1

+1

+1

+1

Hey any update on this issue?


reproduction in keras doesn't give same accuracy

Hi,
I have been trying to reproduce the same DS-CNN architecture in Keras mode in Edge Impulse Studio. I implemented the exact same arch and try to give the system the same dataset as training and validation. but I see an overfitting issue (training accuracy goes to 100 but validation accuracy stays around 88 percent).
Do you have any idea why reproducing in Keras giving me this overfitting issue?
Thank you in advance,

I know its been a long time since this question was asked but incase it is useful to anyone else, if you go to here: https://github.com/ARM-software/ML-examples/tree/main/tflu-kws-cortex-m/Training we have implemented training of the networks using TF2 and Keras APIs. Accuracy is maintained so there is nothing about swapping to Keras that should reduce model accuracy


Missing nested example

Hello @waynevanson
Would you happen to have the missing nested example on a codepen or somewhere?
It would be great to add it to the examples section.
Thanks in advance

@gregoryforel When I rebuild this with hooks I'll add the example.

Thank you for answering! Looking forward to it

+1 thanks

@waynevanson  can you tell when this will be added?

A nested example I wrote
https://codesandbox.io/s/fervent-lehmann-ci8j3?file=/src/App.js

Hey, I just wrote a nested sortable this morning.
I used the group prop to do it, you can see the put and pull to have more granular control over whether an item is allowed to be dropped in a certain place. I hope this helps
<ReactSortable
  list={sortedItems}
  setList={onSetList}
  group={{ name: 'root', put: ['nested'], pull: true }}
>
  {sortedItems.map(item => {
    return (

        <ReactSortable
          group={{
            name: 'nested',
            pull: true,
            put: ['root', 'nested'],
          }}
          animation="150"
          fallbackOnBody
          swapThreshold="0.65"
          list={item.nestedList}
          setList={onSetNestedList}
        >
          {item.nestedList.map(nestedItem => {
            return
{nestedItem}
;
          })}
        </ReactSortable>

    )}
  )}
</ReactSortable>

I ran into issues with state management, which is why I made it blank at the time. I believe I have some solution, but can't be applied to major version 2 of react-sortablejs.

For whoever ends up needing an nested example, here is one that I made: https://codesandbox.io/s/react-sortable-js-nested-tu8nn?file=/src/App.js

For whoever ends up needing an nested example, here is one that I made, using l704863851's example: https://codesandbox.io/s/react-sortable-js-nested-tu8nn?file=/src/App.js

It helped me! thank you!

Hey, I just wrote a nested sortable this morning.
I used the group prop to do it, you can see the put and pull to have more granular control over whether an item is allowed to be dropped in a certain place. I hope this helps
<ReactSortable
  list={sortedItems}
  setList={onSetList}
  group={{ name: 'root', put: ['nested'], pull: true }}
>
  {sortedItems.map(item => {
    return (

        <ReactSortable
          group={{
            name: 'nested',
            pull: true,
            put: ['root', 'nested'],
          }}
          animation="150"
          fallbackOnBody
          swapThreshold="0.65"
          list={item.nestedList}
          setList={onSetNestedList}
        >
          {item.nestedList.map(nestedItem => {
            return
{nestedItem}
;
          })}
        </ReactSortable>

    )}
  )}
</ReactSortable>

For me, it some times throws the error "TypeError: Cannot read property 'props' of null"

This is an intermittent issue but I am really unsure about the actual root cause.

If you're using classes, I have an example for you. I'm using recursion to achieve the sorting result.
import React from 'react';
import { ReactSortable, Swap, Sortable } from "react-sortablejs";

export default class List extends React.Component {

    constructor (props) {
        super(props);
        this.state = {
            list: [
                {
                    id: "g17201002596u53e7n8dp8m",
                    name: "menu",
                    children: [
                        { id: "g16181002516373h7b8dp8j", name: "shrek", component: "image" },
                        { id: "g1619813226283as3o3xclm", name: "moana", component: "image" },
                        {
                            id: "g1620327887630yddnv249k",
                            name: "frozen",
                            component: "container",
                            children: [
                                { id: "g16181002516373h7b8dp9t", name: "lion king", component: "image" },
                                { id: "g1619813226283as3o3xc54", name: "toy story", component: "image" },
                                { id: "g1619813226283as3o3xc34", name: "frozen", component: "image" }
                            ]
                        }
                    ]
                },
                {
                    id: "g1727460259hski17n8sjf8",
                    name: "level",
                    children: [
                        { id: "g16181002516373h7b8dp8j", name: "up", component: "image" },
                        { id: "g1619813226283as3o3xclm", name: "tangled", component: "image" },
                        { id: "g1620327887630yddnv249w", name: "snow white", component: "image" }
                    ]
                }
            ]
        }
    }

    //update list recursively
    sortList(currentList, sortedList, parent) {
        for (let key in currentList) {
            currentList[key] = currentList[key];
            if(currentList[key].id === parent) {
                currentList[key].children = sortedList;
            } else {
                if(currentList[key].children) {
                    this.sortList(currentList[key].children, sortedList, parent);
                }
            }
        }
        return currentList;
    }

    //set state
    setList(sortedList, parent) {
        const list = this.sortList(this.state.list, sortedList, parent);
        this.setState({ list: list });
    }

    //creating list item function
    createItem(child) {
        let listItem = null;
        switch(child.component) {
            case 'container':
                listItem =

                    {
                        (child.children) ?
                        <ReactSortable
                            list={ child.children }
                            parent={ child.id }
                            setList={
                                (sortedList, element) => {
                                    if(element) this.setList(sortedList, element.options.parent);
                                }
                            }
                        >
                        {
                            child.children.map((item) => this.createItem(item))
                        }
                        </ReactSortable>
                        :

                    }

            break
            default:
                listItem =
{ item.name }

        }
        return listItem;
    }

    //creating list function
    createList(list) {
        return list.map((child) => {
            return (
                <ReactSortable
                    list={ child.children }
                    parent={ child.id }
                    setList={
                        (sortedList, element) => {
                            if(element) this.setList(sortedList, element.options.parent);
                        }
                    }
                >
                {
                    child.children.map((item) => {
                        return this.createItem(item);
                    })
                }
                </ReactSortable>
            )
        });
    }

    //render the component
    render() {
        return(

{ this.createList(this.state.list) }

        )
    }
}

@IlyasArinov

For whoever ends up needing an nested example, here is one that I made, using l704863851's example: https://codesandbox.io/s/react-sortable-js-nested-tu8nn?file=/src/App.js

Can we make the child from one container not dropped in another

@IlyasArinov

For whoever ends up needing an nested example, here is one that I made, using l704863851's example: https://codesandbox.io/s/react-sortable-js-nested-tu8nn?file=/src/App.js

Can we make the child from one container not dropped in another

Yeah, use different group name or put, pull

@IlyasArinov Yes have tried it. what i am trying to achieve is all object are sortable and certain object can be child of other objects based on condition.
eg A, B, C, D, E, F are the objects and all should be sortable.
I can move B into C but not into D. Similarly E and F can me moved to D but not in to C.  -> trying to achieve this logic
tried to handle the changes onEnd or onAdd. But not able to achieve it.
If you have any idea, please share it.

I wrote a nested example referring to these cases, but nesting will cause reference relationships, I do not understand how the internal operation, can you help me
https://codesandbox.io/s/winter-rain-9gv5y3?file=/src/App.js

what is the program code of onSetNestedList?

@IlyasArinov or anyone else, if you have a nested example for sortable in Vue.js. Kindly share it.

Has anyone managed to fix the react 18 duplication issue?
In the example provided by @IlyasArinov https://codesandbox.io/s/react-sortable-js-nested-tu8nn?file=/src/App.js

There is a bug when you drag an item from a container one level up. For example, if you drag text: item 8 under container: item 2. the original item 8 will stay in place but a new one will be created under item 2. The same happens when you drag a nested container to the root level.
Have been struggling with how to fix this issue.

There is a bug when you drag an item from a container one level up. For example, if you drag text: item 8 under container: item 2. the original item 8 will stay in place but a new one will be created under item 2. The same happens when you drag a nested container to the root level.

@bonttimo dunno if still relevant but if you haven't fixed it yet I am working on fixing it. I see the issue

@bytewiz Did you finish it?

Has anyone managed to fix the react 18 duplication issue?
In the example provided by @IlyasArinov https://codesandbox.io/s/react-sortable-js-nested-tu8nn?file=/src/App.js  There is a bug when you drag an item from a container one level up. For example, if you drag text: item 8 under container: item 2. the original item 8 will stay in place but a new one will be created under item 2. The same happens when you drag a nested container to the root level.
Have been struggling with how to fix this issue.

Any chance you found a fix for this?

Any updates on this?

I also have the same problem, I have tried something like using flushSync but it doesn't seem to work well.
It took me a while, here's how I fixed it.
Rearrange the order of setList was called (deeper elements are executed first).
Here is the result:

flushSync

Can you share the code?

@pawpaw2022

Can you share the code?

This is my sandbox.
Look at my /src/groupTree/GroupTree.tsx/handleSetGroups you can see my flushSync attemp at 2..
(worked but cause warning "flushSync was called from inside a lifecycle")
My demo currently worked without problem with 3.

Your code completely works fine but only for the single root it is not working for the multiple root as in one root drag to make the child of another root

I also have the same problem, I have tried something like using flushSync but it doesn't seem to work well. It took me a while, here's how I fixed it.
SOLVE IDEA: rearrange the orders of changes (stacking changes order and executed the order with deeper elements first).
This is my sandbox

Works fine can you modify it so we can add multiple parents?

@sagun-k @fineshop

Your code completely works fine but only for the single root it is not working for the multiple root as in one root drag to make the child of another root

Works fine can you modify it so we can add multiple parents?

I was fixed it a bit to work on multiple root base on groupname, good luck.

New sandbox

@sagun-k @fineshop

Your code completely works fine but only for the single root it is not working for the multiple root as in one root drag to make the child of another root

Works fine can you modify it so we can add multiple parents?

I was fixed it a bit to work on multiple root base on groupname, good luck.

New sandbox

Thank you for this.

Hi all, not sure if this is solved but I'm using nested sortables with groups in a live app I built – here's my implementation.
For all sortables my sortableOptions are:
const sortableOptions = {
  animation: 150,
  fallbackOnBody: true,
  swapThreshold: 0.1,
  group: "shared",
  revertOnSpill: true,
};

Then my nested to-do list structure.
const handleSetList = useCallback(
  (newTodos: ParentTodo[], sortable: any) => {
    if (sortable) {
      flushSync(() => {
        setTodos(newTodos);
      });
    } else {
      setTodos(newTodos);
    }
  },
  [setTodos]
);

const handleSetSubList = useCallback(
  (subTodos: SubTodo[], todo: ParentTodo, sortable: any) => {
    const newSubTodos = todos.map((t) => {
      if (t.id === todo.id) {
        return { ...t, subTodos };
      }
      return t;
    });
    if (sortable) {
      flushSync(() => {
        setTodos(newSubTodos);
      });
    } else {
      setTodos(newSubTodos);
    }
  },
  [todos, setTodos]
);

<ReactSortable
        {...sortableOptions}
        list={todos}
        setList={(newTodos, sortable) => handleSetList(newTodos, sortable)}
      >
        {todos.map((todo) => (

 Parent Todo

            <ReactSortable
              {...sortableOptions}
              list={todo.subTodos as SubTodo[]}
              setList={(subTodos, sortable) =>
                handleSetSubList(subTodos, todo, sortable)
              }
            >
              {todo.subTodos.map((subTodo: Todo) => (

 Sub-todo

              ))}
            </ReactSortable>

        ))}
      </ReactSortable>

For reference my Todo structure is an object with a list of subTodos which optionally have subtodos or not.
export interface SubTodo extends Todo {
  subTodos: [];
}

export interface ParentTodo extends Todo {
  subTodos: SubTodo[];
}

It works great for me!


Syntax error for image config.

🐛 Bug Report
Getting syntax error when trying to add image configuration and toolbar who name includes colon.
🔍 Bug Description
Sample code which throws error:
presets.define :welcome, inherit: false do
    toolbar :undo, :redo, :|, :sourceEditing, :fontFamily, :fontSize, :heading, :|,
            :bold, :italic, :underline, :strikethrough, :removeFormat, :|,
            :fontColor, :fontBackgroundColor, :|, :alignment, :|,
            :link, :|, :bulletedList, :numberedList, :outdent, :indent,
            :blockQuote, :|, :imageUpload, :imageInsert,
            :imageStyle:full, :imageStyle:alignLeft, :imageStyle:alignRight,
            :resizeImage:50, :resizeImage:75, :resizeImage:original,
            :imageTextAlternative, :|, :insertTable, :horizontalLine

    plugins :Essentials, :Paragraph, :Bold, :Italic, :Underline, :Strikethrough,
            :RemoveFormat, :Link, :List, :Indent, :BlockQuote,
            :Font, :FontFamily, :FontSize, :FontColor, :FontBackgroundColor,
            :Alignment, :Image, :ImageUpload, :ImageBlock, :ImageCaption, :ImageInline,
            :ImageInsert, :ImageInsertViaUrl, :ImageResize, :ImageStyle,
            :ImageTextAlternative, :ImageToolbar, :MediaEmbed, :Table, :TableToolbar,
            :HorizontalLine, :SourceEditing, :Heading

    configure :image, {
      toolbar: [
        'imageStyle:full', 'imageStyle:alignLeft', 'imageStyle:alignRight',
        '|', 'resizeImage:50', 'resizeImage:75', 'resizeImage:original',
        '|', 'imageTextAlternative'
      ],
      styles: [
        'full',
        'alignLeft',
        'alignRight'
      ],
      resizeOptions: [
        {
          name: 'resizeImage:original',
          value: null,
          label: 'Original size'
        },
        {
          name: 'resizeImage:50',
          value: '50',
          label: '50%'
        },
        {
          name: 'resizeImage:75',
          value: '75',
          label: '75%'
        }
      ],
      insert: {
        integrations: ['insertImageViaUrl']
      }
    }
  end

A clear and concise description of what the bug is.
📝 Steps to Reproduce

Go to '...'
Click on '....'
Scroll down to '....'
See error

✅ Expected Behavior
A clear and concise description of what you expected to happen.
❌ Actual Behavior
A clear and concise description of what actually happened.
📸 Screenshots

If applicable, add screenshots to help explain your problem.
📋 Additional Context

Add any other context about the problem here
Include relevant logs if available
List related issues/PRs

@Mati365  Can you please tell if we are using wrong syntax or this is an issue ?

@dil-bparihar Typo, :imageStyle:full

can you suggest what is the correct way to use it.

for toolbar names

It works, but you have to specify array of strings instead of array of symbols. Take a look at this example:
        toolbar "undo", "redo", "|",
                "sourceEditing", "fontFamily", "fontSize", "heading", "|",
                "bold", "italic", "underline", "strikethrough", "removeFormat", "|",
                "fontColor", "fontBackgroundColor", "|",
                "alignment", "|",
                "link", "|",
                "bulletedList", "numberedList", "outdent", "indent",
                "blockQuote", "|",
                "imageUpload", "imageInsert",
                "imageStyle:full", "imageStyle:alignLeft", "imageStyle:alignRight",
                "resizeImage:50", "resizeImage:75", "resizeImage:original",
                "imageTextAlternative", "|",
                "insertTable", "horizontalLine"

@Mati365 , after adding array of sting  the toobar has wiped out and getting below error.

Most likely misconfiguration in image plugin. Probably missing icon.

Thanks @Mati365 , it's working now after removing ("resizeImage:50", "resizeImage:75")

It'd better to just specify icons, like this:
                configure :image, {
                        styles: [
                        "full",
                        "alignLeft",
                        "alignRight"
                        ],
                        resizeUnit: "%",
                        resizeOptions: [
                        {
                        name: "imageResize:original",
                        value: nil,
                        icon: "original",
                        label: "Original size"
                        },
                        {
                        name: "imageResize:50",
                        value: "50",
                        label: "50",
                        icon: "medium"
                        },
                        {
                        name: "imageResize:75",
                        value: "75",
                        label: "75",
                        icon: "large"
                        },
                        {
                        name: "imageResize:full",
                        value: "100",
                        label: "100",
                        icon: "huge"
                        }
                        ],
                        insert: {
                        integrations: [ "insertImageViaUrl" ]
                        }

@Mati365 thank you for your quick response, I really appreciate it!


Add instructions to add to blogs

For various blogging engines, like Ghost, Wordpress, etc, it would be worthwhile to add a description of how to add the banner, that could be followed by someone without frontend engineering skills.

I just added the banner to my Ghost blog, so I can write down the steps for Ghost platform. What is the right place to add these instructions?

Probably the README for now.


docs(README.md):  the five standard layouts link is not working

Describe the bug
see title
To Reproduce
click the five standard layouts

This should be an easy fix. I'm looking for a good representation of the layouts now, and will submit a PR as soon as I find one that I like.
I'll update this comment as I find links that are "not quite right" for the docs but helpful if anyone else comes across this:

https://dev.to/rajasegar/a-guide-to-create-tmux-like-custom-layouts-in-spacemacs-4j9p#layouts

I looked up the original link in the Wayback Machine, and it didn't include any graphical of what the layouts look like.
I'll try to find something better, but for now I'll just submit a PR that updates the link to an online version of the manpage to replace the one that rotted.

PR submitted!

Closed via #854.


Cursor moving to the top of the buffer after saving/formatting

Description
When i edit the same buffer in peek_definition prompt and save , cursor move to the top of the screen.
I'm not sure if this is  lspsaga related but i do not seems to have this behaviour elsewhere.
Expected Behavior
Cursor to stay in the same position :
Actual Behavior
Cursor move to top of the buffer
Neovim Built in Behavior
none
Details
Steps to reproduce
Use Code Test.tsx
import {StyleSheet, View} from 'react-native';

const Test = () => {
  const arr = Array.from(Array(5));
  return (
    <View style={styles.colors}>
      {arr.map(el => {
        // return <View key={el} style={{...styles.color}} />;
        return <View key={el} style={styles.color} />;
      })}
    </View>
  );
};

const styles = StyleSheet.create({
  colors: {
    //
    alignItems: 'center',
    justifyContent: 'space-around',
    flexDirection: 'row',
  },
  color: {
    borderRadius: 50,
    height: 30,
    width: 30,
  },
});

Replace return statement with
return <View key={el} style={{...styles.color}} />;

the issue seems to be with style={{...styles.color}} once replaced with style={styles.color} cursor stay in the correct position
Environment Information
NVIM v0.7.2
Build type: Release
LuaJIT 2.1.0-beta3

uname -a
Linux dev 5.19.7-arch1-1 #1 SMP PREEMPT_DYNAMIC

git log
commit c2ef0115fb917460daf5c76fe3ad3a9357213b54 (grafted, HEAD -> main, origin/main, origin/HEAD)
Author: Adelar da Silva Queiróz
Date:   Fri Sep 16 20:41:25 2022 -0300

    Spelling corrections and changes (#526)

typescript-language-server right?

typescript-language-server right?
yes , im also using null-ls with prettierd for formatting if that helps

@NikolaM-Dev  thanks for the hint, i just tested it with prettier and i'm experiencing the same issue , would you mind to share your dot files or something that will point me to the right direction?

I have re done my config and everything works :D


Configurable link to transcription guidelines

This is at the project level (shared by all documents)

Implemented in c7c0da1bf5fb7a26358b42f0ea9e2e6032c970cb
Now a parameter editor_help_link in config.ini


Question 1

My understanding is that all declarations are hoisted, but var is initialized with undefined while let and const are only initialized when they are assigned a value, which is why you see undefined for the first console.log() but a ReferenceError for the second.

See #11


Required - API Role - Minimum Privileges Required

It would be good to have published the minimum privileges required in jamf pro for (API Roles and Clients).
Currently, I've just enabled "Send Computer Remote Command to Download and Install OS X Update"

Additionally, with v4beta1... Based on the WARNING I got in the logs... I removed the below installation parameters (soon to be deprecated I assume).
--auth-jamf-account=AccountName
--auth-jamf-password=Password
and setup an "API Role and Client" (Mentioned above in the main post)
Added the below into my installation parameters
--auth-jamf-client=ClientID
--auth-jamf-secret=ClientSecret
In doing so, I get the following in the super logs when super attempts installation.
Error: Unable to validate Jamf Pro API software update workflow type. Verify that the provided Jamf Pro credentials has appropriate privledges:
Error: Failed to validate Jamf Pro API configuration

Yep, I was going to say the permissions were in the wiki, you just needed to add each component into the Roles and client section individually

A few things here....

I haven't had time to update the Wiki for v4, but it's a priority.
Until then the Changelog documentation is accurate.
In the Changelog you'll find the required API permissions.


HRM not working

i use vue-cli to create my project, then  cnpm install to load package, then  npm run dev to start my project,
it didnt open my browser as usual and i got a log  '95% emitting DONE  Compiled successfully in 5897ms14:36:49       I  Your application is running here: http://localhost:8080 '  like this;

so i open http://localhost:8080  and  got a vue page, but when i revise code, HRM not working , i need refresh browser by myself, broser log a error

at sametime  i got same log in shell  like first picture, i dont know what happend, i need help !!

It might have something to do with windows and hosts... could try changing your host from localhost to <IP_ADDRESS> in config/index.js? Solved a couple of issues for me.
Hope it helps.

@afontcu  thanks for help ,  i rewrite  host and port ,  HRM comes back; i dont know the reason, bu it dose useful, thanks again!!!

I'm also having this problem using this template to develop for the SAFE Browser. A few versions back it used to work, but after a few updated I get error:
XMLHttpRequest cannot load http://localhost:3000/sockjs-node/info?t=1511445071485. The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. Origin 'localhost://p:3000' is therefore not allowed access. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.

client?843a:164 [WDS] Disconnected!

I get the same error using other boilerplates that user HMR. Anyone knows what has been recently updated in Webpacks's HMR config that could cause this?
I've tried adding headers: { 'Access-Control-Allow-Origin': '*' } to config, but that doesn't help...

Have any of you tried the poll option in /config/index.js?


support regexp path

My api want to forward some requests to other api service, but ':path' does not catch '/' character:
app.all('/myapi/:path', function *(path) {
    // forward this request to other api like`http://xxx/otherapi/${path}`
    // but this path does not match '/myapi/user/101'
}

Is there a way to specify a regexp path?, e.g.
app.all(/^\/myapi\//, function *(path) {
}

Sorry I found this lib uses 'path-to-regexp' which supports regexp.


Removing exclusions when using managed configuration profile

If AV exclusions were added through the managed configuration profile, they can only be removed through this. The command line works for exclusions that were added locally.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 04ef0d15-6735-bb94-0d86-d57ffbaa05f7
Version Independent ID: 52e516b5-b365-4950-334a-c4797333093d
Content: Set preferences for Microsoft Defender for Endpoint on Linux
Content Source: microsoft-365/security/defender-endpoint/linux-preferences.md
Product: m365-security
Technology: mde
GitHub Login: @Dansimp
Microsoft Alias: dansimp

@msbemba

@elenazvarici Thank you for your feedback. We have made changes to the document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/8728
Once the author approves, the changes will be live.
Thanks
Sri

@msbemba Thank you very much for the contribution and updating the documentation with PR. @elenazvarici Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Avoid type checking for config func and config var

Type checking was broken (caused a panic) when both the function and the variable used as an argument to a function are defined via config.
This commit simply removes the type check in this particular case. Ideally we would instead perform type checking based on the reflection derived types from the config based functions.

Closing this as I fixed slightly differently and added a couple more tests in https://github.com/benhoyt/goawk/commit/c5f1bc65519297a35f32678fc7edfe80cd04f22e


Chinese Translations

Does this even support Chinese translations?
In the config file i changed the fromlanguage code from ja to zh but all the translators are greyed out
-XUnity.AutoTranslator-ReiPatcher-3.5.0

You should use zh-CN or zh-TW flags instead.

Thanks that's was it


fix: use env var to specify tictactoe address instead of flag

#288  👈 (View in Graphite)
main

This stack of pull requests is managed by Graphite. Learn more about stacking.


ClientAuthenticationError by using VisualStudioCodeCredential

Package Name: azure-identity
Package Version: 1.8.0
Operating System: Windows 10
Python Version: 3.8

Hello,
I tried to use VisualStudioCodeCredential from azure-identity in combination with the Azure Account VScode extension.
It worked for a while but now a ClientAuthenticationError is raised.
Here is the traceback:
  File "C:\foo\lib\site-packages\azure\storage\blob\_shared\policies.py", line 489, in send
    response = self.next.send(request)
  File "C:\foo\lib\site-packages\azure\core\pipeline\_base.py", line 71, in send
    response = self.next.send(request)
  File "C:\foo\lib\site-packages\azure\core\pipeline\_base.py", line 71, in send
    response = self.next.send(request)
  File "C:\foo\lib\site-packages\azure\core\pipeline\policies\_authentication.py", line 117, in send
    self.on_request(request)
  File "C:\foo\lib\site-packages\azure\core\pipeline\policies\_authentication.py", line 94, in on_request
    self._token = self._credential.get_token(*self._scopes)
  File "C:\foo\lib\site-packages\azure\identity\_credentials\vscode.py", line 152, in get_token
    return super(VisualStudioCodeCredential, self).get_token(*scopes, **kwargs)
  File "C:\foo\lib\site-packages\azure\identity\_internal\get_token_mixin.py", line 76, in get_token
    token = self._request_token(*scopes, **kwargs)
  File "C:\foo\lib\site-packages\azure\identity\_credentials\vscode.py", line 163, in _request_token
    return self._client.obtain_token_by_refresh_token(scopes, refresh_token, **kwargs)
  File "C:\foo\lib\site-packages\azure\identity\_internal\aad_client.py", line 57, in obtain_token_by_refresh_token
    return self._run_pipeline(request, **kwargs)
  File "C:\foo\lib\site-packages\azure\identity\_internal\aad_client.py", line 76, in _run_pipeline
    return self._process_response(response, now)
  File "C:\foo\lib\site-packages\azure\identity\_internal\aad_client_base.py", line 135, in _process_response
    _raise_for_error(response, content)
  File "C:\foo\lib\site-packages\azure\identity\_internal\aad_client_base.py", line 288, in _raise_for_error
    raise ClientAuthenticationError(message=message, response=response.http_response)
azure.core.exceptions.ClientAuthenticationError: Azure Active Directory error '(invalid_grant) AADSTS70043: The refresh token has expired or is invalid due to sign-in frequency checks by conditional access. The token was issued on 2021-10-18T18:59:27.4825877Z and the maximum allowed lifetime for this request is 86400.
Trace ID: 635927ad-a3ce-4cd7-b566-cbd3f1482300
Correlation ID: dec74379-a04d-4140-b594-9b7333d130af
Timestamp: 2022-03-20 12:06:45Z'

What can I do about it?
Note that I have no error with an AzureCliCredential.
Is this related to the following issue? https://github.com/Azure/azure-sdk-for-python/issues/19509
Thanks for your help

Hi @kashifkhan, I don't believe this is a Storage issue. Storage is simply calling into azure-identity and the exception is coming from within when fetching the token. I think this may belong with whoever owns azure-identity :)

@Blabll Thanks for reaching out.
Could you check the version of the Azure Account extension?
It is a known issue that the latest Azure Account extension does not work well with Azure-identity package.
As a workaround, you can use version 0.9.11 or earlier of the Azure Account extension.
For more information: https://github.com/Azure/azure-sdk-for-python/blob/main/sdk/identity/azure-identity/README.md#authenticate-via-visual-studio-code

Ok sorry I missed this part of the documentation.
The authentication works properly now.
Thank you very much for your help.

This is still broken in late September 2022.   We downgraded our VSCode extension to 0.9.10 and resolved the issue.


Build for Elbrus(e2k)

0001-Fix-some-compilation-errors-for-e2k.zip

Environment

LWJGL version: 3.2.2
LWJGL build #: X
Java version: 1.8.0_152
Platform: Linux
Module: core|binding name

Description

I am trying to compile lwjgl for an alternative architecture processor. In Russia, there is a computer on its architecture, called Elbrus, code name "e2k". I optimized the code to build correctly, but at compile time the binaries are loaded and they certainly don't work on, not x86. What can be done? Your library is needed for minecraft ))))))

LWJGL does not support architectures other than x86/x64 atm. Support for ARM is coming at a later time. I can't help with other architectures, unless you could provide specific information about what's not working as expected.
Btw, the above patch is trying to fix issues in bindings that Minecraft does not use. You can simply disable them in build-bindings.xml.

Also see this comment.


Open Vsx version of extension is outdated

Hi, please consider updating extension in open-vsx so people who use VSCodium could use up to date version.

We unfortunately don't have the capacity to support VSCodium.


Fixed issues with metadata_caching suite related to the RPM

Abhishek,
I modified how the metadata suite is copied to the maprfs cluster and changed the folder permissions so that the Drillbit process user owns the entire folder. I got a clean regression run. However this change is currently not compatible with the Docker setup. We can discuss whether it is even a possible solution to update the docker setup to support passwordless ssh from the machine which runs the test framework onto the drill cluster.
Rahul

Looks good. To find the Drillbit user, can't we make use of some (possibly new) variable in drillTestConfig
That might help make it simple and work on Docker as well.

If any new variable is added to drillTestConfig please share the details with the team, thanks!


Ore scanner dose not work or unclear how to set it up

so ive followed the wiki and what other information i could ive sent up a ore scan sat with power and 4k data storage and when i try to link the ore scanner to it, it dose want to no matter what i try in the sat builder it just wont link. unless the ore scanner is apost to be the main part of the satlite which i wont work there

try to wait a bit more, scanning takes time

ok but what goses on the sat type area because the ore thing dose not work
there
On Mar 26, 2017 5:16 PM, "wormzjl"<EMAIL_ADDRESS>wrote:

try to wait a bit more, scanning takes time
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/zmaster587/AdvancedRocketry/issues/471#issuecomment-289316763,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AI7XFLE49OlJ7V1n0BEuzz0JIcxKh3qiks5rptWigaJpZM4MpkYO
.

english please?

never mind i got the sat to work it was just that how to do it was not well said and it did not say to build the satellite in the sat builder for the ore scanner to be in place other then a sat id chip

I've updated instructions here: http://<IP_ADDRESS>:8000/AdvancedRocketry/items/satellite.php hopefully this is a bit more clear.  I'd like to make it more clear http://<IP_ADDRESS>:8000/AdvancedRocketry/items/oreScanner.php here, but I cannot figure out a better order to put stuff together

maybe a picture showing how the ore scanner sat is made and linked


Remove C from title

the whole guideline is only about C++ and C and C++ are not the same thing.

[x] I followed the CONTRIBUTING guidelines.

Below, describe what this Pull Request adds:
Removed C from title

Why do we want to remove C from the title? There is some information about using C in the chapter.

Hm, I'm not sure about this either. I see where it's coming from, the chapter is indeed written mainly from the C++ perspective. However, most of the tools (and even libraries) are very well usable for C as well. And, let's face it, C is not that different from what one might call the "C dialect" of C++, or C--, or whatever you like to call the way in which some C++ programs are written with only very limited object oriented, template or other C++ specific functionality, so in that sense C is more or less a subset of C++ (am I stepping on people's toes yet or did I phrase that carefully enough? :P). We could also just add a note at the beginning stating this caveat. I don't know if it makes sense to write a separate C chapter, it would probably be very short and could then refer to the C++ one for more information on tools like gdb, clang, etc. (a bit like the Fortran one).

Many C best practices are considered dangerous in C++. If this text is supposed to advise on good coding guidelines, the distinction between good C and good C++ should be made clearer.
If I want information on C I have to read all the stuff that applies to C++. I see the convenience part to keep them together, but as a new user I find it misleading.

Best practices is a fair point.
However, quickly scanning through the chapter again, it seems to me that everything up to the Style section is applicable to both C and C++, in some cases (build warnings) it's even explicitly separately mentioned.
Maybe we can add some info about good coding practices in both languages. This could be added to the part where the Google style guidelines etc are mentioned, I'd say.
We could even put that part at the top of the document, with a short intro text and referring to good books or other references for further details and learning for beginners.

C libraries can and often are called from Fortran as well. Yes, C++ started life as C-with-classes, but that's a quarter of a century ago. Modern C++ has replaced pretty much the entire C API with better, safer C++ equivalents, and as Jens put it, we should not make it seem as if mixing in C with your C++ code is a good idea.
It's true that many of the tools listed here work with both C and C++, either because they're part of a toolchain that has frontends for many languages, or because they're language-agnostic. But everything that's been said here about C also goes for Fortran, and Fortran is not on this page.
Maybe we should consider making this a page on native development in general? In the end it's having binaries that tie all these things together, and the separate Fortran page doesn't add much.

Or, make this page C++-specific, C++ being our preferred language for high-performance code, I think, and combine C and Fortran on one other page as second-class/legacy citizens. C and Fortran are closer than C and C++, in my view.

On the first 30 lines C is never mentioned. I simply felt, that this document is not about C.
It feels misleading to me, but simply close the issue if you disagree. :)

Makes sense @LourensVeen.

No, I agree @jenswehner, we can make it a lot clearer.

C++ being our preferred language for high-performance code

At the risk of making this a too philosophical discussion ;) Let's say I'm not 100% behind this. I think once you go for highest performance, it's often not C++ style code you'll end up with. If you want to be really nice and safe and modern, you wouldn't use vector::operator[] for instance, but rather the safer but less performant vector::at (example from a random discussion I recently saw on Twitter). Modern C++ with the whole std lib tries to be platform independent, generic, safeish, even readable if you can see through all the keywords, and of course performant, but not necessarily in the sense of high maximum throughput performance. It seems nowadays to be more about the mantra of don't pay for what you don't use, which is a design focus mantra.  You get control.
If you just want performance, you often get to the hardware level and C++ in the modern sense is certainly not optimized for this. Probably C is better, or CUDA of course, depending on your hardware.
For completeness' sake, let me just add that from my experience working on ROOT, I would say that starting such a big OO-based code from scratch nowadays in C++ would be quite a horrible idea. Just use Python or whatever for glue between high performance modules. C++ is just such a huge thing and there's so many ways to do things that it's really overwhelming and I would say really hard to maintain. It's still a nice language imho, especially for smaller high performance projects, but beware not to let it grow beyond control :D

Hi Jens,
Maybe combining the two languages in one chapter indeed doesn't make sense, and you could try making a pull request where you make a separate C chapter? I guess you could solve the overlap in content by putting some links in the C chapter to the C++ chapter. Just removing C from the title seems a bit too quick though.

@egpbos On the other hand, Eigen beats other linear algebra libraries on certain calculations because it uses expression templates, something that's definitely not C-ish or Fortran-ish.
I recently came across an agent-based simulation written in Python which has some pretty complex logic, and which I'm sure would be a lot faster if written in C, C++ or Fortran. Would you recommend they use something else than C++ if they need more performance? Or to use a struct and separate functions in C++ for performance?

@LourensVeen expression templates are a good counterpoint, you're right, xtensor, armadillo, and probably others do the same. However, the template dialect of C++ has its own unique issues: hard to debug (walls of debug text), horrible syntax (< < < < < < enable_if < blabla >.value, thing_one<stuff, more_stuff>, please_save_me<>>>>> (error, missing ">")), and lack of expressibility in the current syntax, i.e. your code will be 90% helper functions to solve some really simple things like if-statements. Not really easy to maintain or write, so maybe in the end the total time of the scientific project (development + generating results etc) will be longer than when you had used a simpler language with less performance. I'm not advocating for or against C++ or Python, but saying it's the HPC language of choice maybe goes a bit too far. Right tool for the job I would say, and of course also considering the skills of the engineer :) Maybe what I'm saying is: I would trust you to build a solid C++ framework from scratch, but maybe you shouldn't trust me to do that :D ;)

So if you came to me and asked which language to use for performance-critical code, what should I say?

"It depends" ;) My answer to such a generic question would be:

If it's just numerical algorithms:

Try NumPy
If that's not good enough for some part of your code: try xtensor or similar to build a performance critical module that interfaces with NumPy

If it's something more complex then it really depends on your skills and interests, but still I would say:

Do prototyping in a language you know really well.
If the whole thing is performance critical, implement the final version in C++.
If only parts are performance critical, maybe again do Python modules, but I'm not an expert in this area.

with C++17 and constexpr if it got a lot better with the templates. To be honest I do not like python because the dynamic typing drives me nuts.
A new project would still be python because you get x times more contributions and 95% of the code is boilerplate anyway.

@JensWehner Is this pull request something you intend to work on? See my comment here for a possible way forward: https://github.com/NLeSC/guide/pull/207#issuecomment-621010716. Or can it be closed?

I intent to yes, but I do not know when. :)

@JensWehner Left NLeSC some time ago, so I guess this will never get done.


JPA - Generate TypeSafe alias from QClass properties

Hello QueryDsl team,
I would like to put a request for you, about aliasing.
For example let's say I have this class:
public Class Customer {
    private Integer amount;

    @Transient
    @QueryType(PropertyType.SIMPLE)
    private Integer irr;
}

QCustomer customer = new QCustomer("customer");

queryFactory()
.select(
   Projections.bean(Customer.class, customer.amount.as("irr"))
.from(customer)
.fetch();

This query works, and put amount value in "irr" property.
But my problem is that this aliasing is not typesafe : If I rename "irr" property in Customer class, I will not have any compilation issue.
So I tried to do :
queryFactory()
.select(
   Projections.bean(Customer.class, customer.amount.as(customer.irr))
.from(customer)
.fetch();

But this doesn't work, which is a problem.
Is there a way to provide a typesafe way to name an alias ? It's very important, especially when projecting query results into a transient property.
Thanks !

Here is a related issue https://github.com/querydsl/querydsl/issues/1572.
Maybe we can just fix the aliasing behaviour to make your second example work?

Hello timo,
Yes, I think that if you can fix the aliasing behaviour to work like the second example, it would be really great and useful !
Thanks again for your quick answer.


the pihole does not reproduce data

Hello,
I'm trying to set the pihole app in my server, but is seems not reciving the data.

I've configured the app as follows

and set the api key

Did I've missed something or there is a problem?

I've noticed that fenrus takes soooooome time to get the data and reproduce them in the widget. It was just a matter of time.


Filter off-chain votes for duplicate memberAddress before submitting

Similar to useOffchainVotingResults we should filter-out duplicate memberAddress values for added accuracy of the off-chain vote result submission. Currently, we do run checks for addresses which: 1) already voted 2) are delegated to another address. However, we should not rely on this logic always being present or working correctly.

[ ] We should also filter out addresses with 0 weight. For instance, Snapshot app (proper) will not let you even vote if you have 0 weight - a way to keep their votes clean.

We may not need this implemented: @adridadou is working on https://github.com/openlawteam/tribute-contracts/pull/284 which may negate the need for these checks, as we will want the contract to tell us if the vote is wrong based on a total member count at a certain checkpoint.

Closing per the comment immediately above.