Feature/migrate to Angular v12.0.0

Codecov Report

Merging #88 (38b40e4) into master (29f9fd8) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master      #88   +/-   ##
=======================================
  Coverage   96.92%   96.92%
=======================================
  Files          13       13
  Lines         651      651
  Branches       92       92
=======================================
  Hits          631      631
  Misses         20       20

Impacted Files
Coverage Δ

projects/angular8-yandex-maps/src/test.ts
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 29f9fd8...38b40e4. Read the comment docs.


ZFS Volume Size Reporting

Any volume (or my 4 disk cache pool) that is formatted under zfs always reports 0 bytes used.  This also throws off the percentages.  Are there any plans to support these volumes better?  It also affects other monitoring tools and the unraid dashboard seems to be the only place that reports the sizes correctly.
Thank you!

That's curious. I have an old disk lying around I could format as zfs to try and figure out the problem.
In the meantime it would be very helpful if you could go to the application's logs and see if there are any errors being logged.

There were no errors in the logs.  I think it's just how zfs reports to normal OS functions.
Here is what zfs list and df -h report for the sizes on my zfs formated volumes and what the web GUI shows.
(nvme_cache is 4x 2TB in raidz1 so the ~6TB size is expected.)
zfs list
NAME            USED  AVAIL     REFER  MOUNTPOINT
disk1          12.1T  5.98T      144K  /mnt/disk1
disk10         8.99T  9.07T      104K  /mnt/disk10
disk11         8.97T  9.09T      104K  /mnt/disk11
disk6          13.6T  4.42T      104K  /mnt/disk6
nvme_cache     4.78T   508G      209K  /mnt/nvme_cache
ssd_cache      59.3G  1.70T     6.58G  /mnt/ssd_cache

df -h
Filesystem     Size  Used Avail Use% Mounted on
disk1          6.0T  256K  6.0T   1% /mnt/disk1
disk6          4.5T  128K  4.5T   1% /mnt/disk6
disk10         9.1T  128K  9.1T   1% /mnt/disk10
disk11         9.1T  128K  9.1T   1% /mnt/disk11
nvme_cache     508G  256K  508G   1% /mnt/nvme_cache
ssd_cache      1.8T  6.6G  1.7T   1% /mnt/ssd_cache

Thank you for the details. I'll see what I can figure out.

I am unfortunately unable to reproduce this bug with a single ZFS disk. As you can see I have a single cache disk formatted as ZFS.

This is my conf.yml
disks:
  cache:
    - /mnt/cache
    - /mnt/test

And this is the response I get
"cache":[{"mount":"/mnt/cache","total":465,"used":327,"free":138,"used_percent":70.32,"free_percent":29.68},{"mount":"/mnt/test","total":430,"used":4,"free":426,"used_percent":0.93,"free_percent":99.07}]

I suppose the problem only appears with raidzN configurations, I do happen to have 3 random disks I could try and cobble together into a ZFS raidz1 pool. I'll see what I can do.

Are the files on it in a dataset?

This seems to be the issue. Forgive me but I am not very knowledgeable when it comes with ZFS. I currently have a raidz1 configuration with files in a dataset, and the API is reporting disk usage as 0.
However  I was able to fix this by specifying the dataset mount, as opposed to the cache mount itself.
Conf
disks:
  cache:
    - /mnt/cache
    - /mnt/cache_test
    - /mnt/cache_test/test_dataset

This is the response, cache_test is empty, but cache_test/test_dataset is correctly being read
{"mount":"/mnt/cache","total":465,"used":327,"free":138,"used_percent":70.32,"free_percent":29.68},
{"mount":"/mnt/cache_test","total":211,"used":0,"free":211,"used_percent":0,"free_percent":100},
{"mount":"/mnt/cache_test/test_dataset","total":215,"used":4,"free":211,"used_percent":1.86,"free_percent":98.14}

You'd want to remove /mnt/cache_test from the conf, to obtain the correct total amount.
However however, with  multiple datasets this doesn't work as they are seen as different disks and their sizes are added.
{"mount":"/mnt/cache","total":465,"used":327,"free":138,"used_percent":70.32,"free_percent":29.68},
{"mount":"/mnt/cache_test","total":203,"used":0,"free":203,"used_percent":0,"free_percent":100},
{"mount":"/mnt/cache_test/test_dataset","total":207,"used":4,"free":203,"used_percent":1.93,"free_percent":98.07},
{"mount":"/mnt/cache_test/test_dataset_2","total":211,"used":8,"free":203,"used_percent":3.79,"free_percent":96.21}

I see two solutions:

best and more difficult: figure out the root cause of the issue, and make it so the software is able to tell that the specified mount is a ZFS pool and extract the correct values
quick and dirty: add a new configuration section specifically for ZFS datasets to be able to interpret the data correctly when reading the various datasets

I'll attempt the first solution and fallback to the second if it's not feasible.

I've been looking into possible solutions. However I'm missing some crucial information, namely I am not sure I understand the interaction between the 4 ZFS disks and your array. Are they single disk pools?
If I were to give you the ability to specify a list of ZFS pools, indicating wether or not they are part of the array or the cache, would this give you the flexibility to obtain the data in the format you require? I'm imagining additional entries to the cache/array response, one for each ZFS pool with the usual information.
I would essentially be parsing the output of  zpool list using the labels provided in the configuration to assign the parsed data to the array or the cache.

I feel like all my snapshots are also adding to the jumble of numbers.
However, it seems that if a mountpoint gets listed in cache/array in the conf.yml and it happens to appear as the "Mountpoint" in the output of 'zfs list -p' you can then use the "Used" and "Avail" columns to sum up the total space and have the used/free values to return.
To clarify my setup, I have 13x 20TB drives in my array including 2 parity.  Disk 1 is my target for replication of my important appdata structure from nvme_cache. Disks 6, 10 and 11 just happened to be new and I made them zfs but they aren't getting special use.  Then there are 4x 2TB nvme drives that are in raidz1 working out to just under 6TB of space available (however it really seems to have always been shy of that figure).  I also have a SATA SSD and another USB HDD that are additional unraid cache pools, of which the SSD is a single disk zpool.
For whatever reason (probably because you can have multiple datasets in a pool) zfs seems to report the disk size as what's left available and zero usage.  I think the 'zfs list' has the accurate data. The sizes in 'zpool list' seem based on the total bytes of disks involved and over-report the total size when a disk is "lost" to parity.
zpool list -p
NAME                  SIZE           ALLOC            FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
disk1<PHONE_NUMBER>0176<PHONE_NUMBER>9888<PHONE_NUMBER>288        -         -      8     66   1.00    ONLINE  -
disk10<PHONE_NUMBER>0176<PHONE_NUMBER>952<PHONE_NUMBER>2224        -         -      0     49   1.00    ONLINE  -
disk11<PHONE_NUMBER>0176<PHONE_NUMBER>744<PHONE_NUMBER>8432        -         -      0     49   1.00    ONLINE  -
disk6<PHONE_NUMBER>0176<PHONE_NUMBER>6016<PHONE_NUMBER>160        -         -      0     75   1.00    ONLINE  -
nvme_cache<PHONE_NUMBER>584<PHONE_NUMBER>480<PHONE_NUMBER>04        -         -     46     89   1.00    ONLINE  -
ssd_cache<PHONE_NUMBER>344<PHONE_NUMBER>8<PHONE_NUMBER>696        -         -      3      3   1.00    ONLINE  -

datasets.txt from zfs list -p

Also, since you can have multiple unraid cache pools, do you think this is something that can be configured separately or do you plan to keep the result as the total off all the cache pools? (Probably a separate issue.)

I have done some testing. The solution you proposed seems to work, however it requires the container to run in privileged mode, this is something I'd like to avoid.
If I were to implement it this way, I would not want to make it the default, and only something individual users would need to opt in to.
In any case, if you feel comfortable with running the container as privileged I have made available a qa build that you can test out. If you wish to do so please follow the steps in this new section on the readme, while also selecting Privileged: ON when adding the new container.

Also, since you can have multiple unraid cache pools, do you think this is something that can be configured separately or do you plan to keep the result as the total off all the cache pools? (Probably a separate issue.)

I am not sure exactly what you are asking, the response already provides separate data for each disk in the array, and for each cache listed, but yes please open a new issue if you wish to discuss this further.

I setup the QA build and it's working just fine.  Thanks for taking the time to look in to it!  Now I can list the free GB on the array and each of the three cache pools on my dashboard.
I agree it would be nice to not have to run privileged. I often forget that's an issue since you always log in to unraid as root.
You're absolutely right about it already returning the data for each line in the cache section.  I think I'd been looking at adding up things for too long yesterday and was thinking my nvme were on separate lines for some reason.  No changes needed there.

That's great to hear. I'll figure out exactly how I want to deal with the higher privilege required, and then release it officially. In the meantime you can just keep using the QA build if you wish.
If you do, not update it as I'll very likely be pushing new experimental builds on that tag.

Released as part of v0.3.0
You can now switch to the official image, just remember to set it to privileged if you wish to see the correct ZFS data.


add tests for thin packfiles

It seems we're not testing decoding thin packfiles, so we should add some tests for it.

See https://github.com/src-d/go-git/pull/994


bazel 0.1.2  undeclared inclusions fixes needed in BUILD files

Started out with this error
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ bazel build --verbose_failures -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer
INFO: Found 1 target...
INFO: From Compiling external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.cc:
src/main/tools/namespace-sandbox.c:633: execvp(argv[0], argv): No such file or directory
ERROR: /tmp/gbowyer/.cache/bazel/_bazel_gbowyer/d132132edbbae685571ab9488dabc906/external/gemmlowp/BUILD:77:1: C++ compilation of rule '@gemmlowp//:eight_bit_int_gemm' failed: crosstool_wrapper_driver_is_not_gcc failed: error executing command
  (cd /tmp/gbowyer/.cache/bazel/_bazel_gbowyer/d132132edbbae685571ab9488dabc906/tensorflow && \
  exec env - \
    PATH=/opt/java/jdk1.8.0_31/bin:/tmp/gbowyer/dbpedia-thing/env/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/cuda-7.0/bin:/usr/local/cuda-7.0/bin:/sbin:/usr/sbin:/tmp/gbowyer/.scripts:/sbin:/usr/sbin:/tmp/gbowyer/pkg/bin:/tmp/gbowyer/.scripts:/tmp/gbowyer/pkgs/bin \
  third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -fPIE -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer -g0 -O2 -DNDEBUG -ffunction-sections -fdata-sections '-std=c++11' -iquote external/gemmlowp -iquote bazel-out/local_linux-opt/genfiles/external/gemmlowp -iquote external/bazel_tools -iquote bazel-out/local_linux-opt/genfiles/external/bazel_tools -isystem external/bazel_tools/tools/cpp/gcc3 -no-canonical-prefixes -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' '-frandom-seed=bazel-out/local_linux-opt/bin/external/gemmlowp/_objs/eight_bit_int_gemm/external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.o' -MD -MF bazel-out/local_linux-opt/bin/external/gemmlowp/_objs/eight_bit_int_gemm/external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.d -c external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.cc -o bazel-out/local_linux-opt/bin/external/gemmlowp/_objs/eight_bit_int_gemm/external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.o): crosstool_wrapper_driver_is_not_gcc failed: error executing command
  (cd /tmp/gbowyer/.cache/bazel/_bazel_gbowyer/d132132edbbae685571ab9488dabc906/tensorflow && \
  exec env - \
    PATH=/opt/java/jdk1.8.0_31/bin:/tmp/gbowyer/dbpedia-thing/env/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/cuda-7.0/bin:/usr/local/cuda-7.0/bin:/sbin:/usr/sbin:/tmp/gbowyer/.scripts:/sbin:/usr/sbin:/tmp/gbowyer/pkg/bin:/tmp/gbowyer/.scripts:/tmp/gbowyer/pkgs/bin \
  third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc -U_FORTIFY_SOURCE '-D_FORTIFY_SOURCE=1' -fstack-protector -fPIE -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer -g0 -O2 -DNDEBUG -ffunction-sections -fdata-sections '-std=c++11' -iquote external/gemmlowp -iquote bazel-out/local_linux-opt/genfiles/external/gemmlowp -iquote external/bazel_tools -iquote bazel-out/local_linux-opt/genfiles/external/bazel_tools -isystem external/bazel_tools/tools/cpp/gcc3 -no-canonical-prefixes -Wno-builtin-macro-redefined '-D__DATE__="redacted"' '-D__TIMESTAMP__="redacted"' '-D__TIME__="redacted"' '-frandom-seed=bazel-out/local_linux-opt/bin/external/gemmlowp/_objs/eight_bit_int_gemm/external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.o' -MD -MF bazel-out/local_linux-opt/bin/external/gemmlowp/_objs/eight_bit_int_gemm/external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.d -c external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.cc -o bazel-out/local_linux-opt/bin/external/gemmlowp/_objs/eight_bit_int_gemm/external/gemmlowp/eight_bit_int_gemm/eight_bit_int_gemm.o).
Target //tensorflow/cc:tutorials_example_trainer failed to build
INFO: Elapsed time: 1.907s, Critical Path: 1.27s
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ third_party/gpus/crosstool/clang/bin/crosstool_wrapper_driver_is_not_gcc
gcc: fatal error: no input files
compilation terminated.
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2015 NVIDIA Corporation
Built on Mon_Feb_16_22:59:02_CST_2015
Cuda compilation tools, release 7.0, V7.0.27
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $

Suggestion from Vijay Vasudevan is to use different bazel build params

Can you try building with --spawn_strategy=standalone ?  After talking with the bazel folks it looks like the sandbox for some reason doesn't have the crosstool wrapper in the right location, so running in standalone mode might work better.

That yields this error
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ bazel build --verbose_failures -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer --spawn_strategy=standalone
INFO: Found 1 target...
ERROR: /tmp/gbowyer/tensorflow/tensorflow/stream_executor/BUILD:5:1: undeclared inclusion(s) in rule '//tensorflow/stream_executor:stream_executor':
this rule is missing dependency declarations for the following files included by 'tensorflow/stream_executor/cuda/cuda_platform_id.cc':
  '/tmp/gbowyer/tensorflow/tensorflow/stream_executor/cuda/cuda_platform_id.h'.
Target //tensorflow/cc:tutorials_example_trainer failed to build
INFO: Elapsed time: 2.893s, Critical Path: 2.64s
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ bazel build --verbose_failures -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package --spawn_strategy=standalone
INFO: Found 1 target...
ERROR: /tmp/gbowyer/tensorflow/tensorflow/core/BUILD:272:1: undeclared inclusion(s) in rule '//tensorflow/core:gpu_kernels':
this rule is missing dependency declarations for the following files included by 'tensorflow/core/kernels/aggregate_ops_gpu.cu.cc':
  '/tmp/gbowyer/tensorflow/tensorflow/core/framework/tensor_types.h'.
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 38.609s, Critical Path: 37.67s
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $

Evgeny Shaliov notes that

nvcc --version should return 6.5.* but CUDA toolkit should be installed 7.0.
I posted https://groups.google.com/a/tensorflow.org/forum/#!topic/discuss/jRkkvsB1iWA.
Also pay attention what gcc version you use.
Best regards,
Evgeny.

Vijay Vasudevan also remarks

Yikes! :(
What version of bazel do you happen to be using?

And asks to move this to github issues, so here we are :P

(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2015 NVIDIA Corporation
Built on Mon_Feb_16_22:59:02_CST_2015
Cuda compilation tools, release 7.0, V7.0.27
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ gcc --version
gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ bazel --version
Unknown Bazel startup option: '--version'.
  For more info, run 'blaze help startup_options'.
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $ bazel version
...............
Build label: head (@53f4076)
Build target: bazel-out/local_linux-fastbuild/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Wed Dec 9 16:34:56 2015<PHONE_NUMBER>)
Build timestamp:<PHONE_NUMBER>
Build timestamp as int:<PHONE_NUMBER>
(env)gbowyer@compute-10-3-61-179 ~/tensorflow $

I am going to see if changing bazel and nvcc helps, I will start with bazel first as I dont relish the idea of deploying older nvcc compilers.

Yeah, I think this is a bazel or tensorflow BUILD issue, not an nvcc one.
Can you try using bazel 0.1.1 or bazel 0.1.2?
@damienmg in case he has some ideas, since I can't reproduce this at HEAD with bazel 0.1.1

I'm not sure how related this is, but I had one of the abovementioned issues, "undeclared inclusions in rule ..stream_executor", with another GPU (K80), and downgrading from Bazel 0.1.2 to Bazel 0.1.1 helped.

The include error should have been fixed with my changes but I may have missed some targets. We don't test all tensorflow targets on ci.bazel.io (we don't have GPU). The corresponding headers should be added in the TensorFlow's build files.

Thanks @damienmg, I'll try to get the fix in today.

can confirm this bug, just git cloned fresh from the tree using blaze 0.1.2, downgrading to blaze 0.1.1 fixes the problem.

I can't seem to reproduce this, either on my mac or on my linux machine, both pulling tensorflow from HEAD and installing bazel fresh from bazel.io for 0.1.2.
William: by any chance would you have time to figure out what the necessary changes are?  I'd be happy to integrate them.

Nevermind, it's the GPU only targets that are messed up.  no wonder.

okay, sort of fixed in https://github.com/tensorflow/tensorflow/commit/a4cefca9f40ae6cfe366b6187d07e5199aa74895
--standalone argument is still required.  Seems like it needs to be addressed by bazel team at https://github.com/bazelbuild/bazel/issues/698

That fix seems to have cured it thanks

There may be a similar bug which still exists. Platform arch-linux
./configure
bazel build --jobs 2 --config=cuda --verbose_failures --spawn_strategy=standalone -c opt //tensorflow/tools/pip_package:build_pip_package

ERROR: $PARENT_DIR/src/tensorflow/tensorflow/stream_executor/BUILD:5:1: undeclared inclusion(s) in rule '//tensorflow/stream_executor:stream_executor':
this rule is missing dependency declarations for the following files included by 'tensorflow/stream_executor/cuda/cuda_dnn.cc':
  '/opt/cuda/include/cuda_runtime.h'
  '/opt/cuda/include/host_config.h'
  '/opt/cuda/include/builtin_types.h'
  '/opt/cuda/include/device_types.h'
  '/opt/cuda/include/host_defines.h'
  '/opt/cuda/include/driver_types.h'
  '/opt/cuda/include/surface_types.h'
  '/opt/cuda/include/texture_types.h'
  '/opt/cuda/include/vector_types.h'
  '/opt/cuda/include/channel_descriptor.h'
  '/opt/cuda/include/cuda_runtime_api.h'
  '/opt/cuda/include/cuda_device_runtime_api.h'
  '/opt/cuda/include/driver_functions.h'
  '/opt/cuda/include/vector_functions.h'
  '/opt/cuda/include/vector_functions.hpp'.
Target //tensorflow/tools/pip_package:build_pip_package failed to build

@lberki has a fix for this.

@damienmg: is this a fix to our BUILD rules?  We might have to update our jenkins gpu pip builder to 0.1.2 I guess.
@jendap: do you know which bazel we're using there?

@vrv it it not a problem in tensorflow BUILD files. It is in bazel (android rules). I have added you to cc on the fix @lberki has created.
It is happening with bazel 0.1.2 release which you can download from github (and bazel.io). IT was also happening on release 0.1.3 branch a couple of days ago. But we have a fix for it now. Just release it and we are good.

Actually I'm not sure about this GPU issue. We were talking with bazel team about something with android and 0.1.2 but it may be the same thing. I have tried myself 0.1.2 with android only. Not gpu yet. I will try it next week.

I have a similar problem on Arch Linux, too.
Running
bazel build -c opt --config=cuda --verbose_failures //tensorflow/tools/pip_package:build_pip_package

This error occurs
ERROR: /home/test/tensorflow/tensorflow/core/BUILD:213:1: undeclared inclusion(s) in rule '//tensorflow/core:gpu_runtime':
this rule is missing dependency declarations for the following files included by 'tensorflow/core/common_runtime/gpu/gpu_device_factory.cc':
  '/opt/cuda/include/cuda_runtime.h'
  '/opt/cuda/include/host_config.h'
  '/opt/cuda/include/builtin_types.h'
  '/opt/cuda/include/device_types.h'
  '/opt/cuda/include/host_defines.h'
  '/opt/cuda/include/driver_types.h'
  '/opt/cuda/include/surface_types.h'
  '/opt/cuda/include/texture_types.h'
  '/opt/cuda/include/vector_types.h'
  '/opt/cuda/include/channel_descriptor.h'
  '/opt/cuda/include/cuda_runtime_api.h'
  '/opt/cuda/include/cuda_device_runtime_api.h'
  '/opt/cuda/include/driver_functions.h'
  '/opt/cuda/include/vector_functions.h'
  '/opt/cuda/include/vector_functions.hpp'.
Target //tensorflow/tools/pip_package:build_pip_package failed to build

Is there yet any solutions?

@frankyjuang, did u try downgrading bazel to 0.1.1?

@wchan, downgrading to 0.1.1 works!!! Thanks a lot.
@gillhofer, Arch linux 4.3.3 with CUDA 7.0, gcc/g++ 4.9.3 and bazel 0.1.1 works. You can give it a try. Btw, I have nvidia gtx 660, so setting compute capability to 3.0 with
$ TF_UNOFFICIAL_SETTING=1 ./configure is needed.

The include issue is due to https://github.com/bazelbuild/bazel/issues/714 (tl;dr: current workaround is to have a longer path for /opt/cuda).

Note that today Bazel's release 0.1.3 should fix that error.

@damienmg I tried the 0.1.3. However, this bug still exists...Any ideas?
Arch Linux with gcc 4.9.3
$ bazel build -c opt --config=cuda --verbose_failures --spawn_strategy=standalone //tensorflow/cc:tutorials_example_trainer
ERROR: /home/test/tensorflow/tensorflow/stream_executor/BUILD:5:1: undeclared inclusion(s) in rule '//tensorflow/stream_executor:stream_executor':
this rule is missing dependency declarations for the following files included by 'tensorflow/stream_executor/cuda/cuda_rng.cc':
  '/opt/cuda/include/cuda_runtime.h'
  '/opt/cuda/include/host_config.h'
  '/opt/cuda/include/builtin_types.h'
  '/opt/cuda/include/device_types.h'
  '/opt/cuda/include/driver_types.h'
  '/opt/cuda/include/surface_types.h'
  '/opt/cuda/include/texture_types.h'
  '/opt/cuda/include/vector_types.h'
  '/opt/cuda/include/channel_descriptor.h'
  '/opt/cuda/include/cuda_runtime_api.h'
  '/opt/cuda/include/host_defines.h'
  '/opt/cuda/include/cuda_device_runtime_api.h'
  '/opt/cuda/include/driver_functions.h'
  '/opt/cuda/include/vector_functions.h'
  '/opt/cuda/include/vector_functions.hpp'.
Target //tensorflow/cc:tutorials_example_trainer failed to build
INFO: Elapsed time: 84.234s, Critical Path: 80.07s

So the problem is that 0.1.3 fix the problem in our CROSSTOOL file. here the problems are in TensorFlow's cuda support.
The fix in Bazel was https://github.com/bazelbuild/bazel/commit/763f1397155fc7c12e1f1071a1bc942f91b867c4
So applying the same change to third_party/gpus/crosstool/CROSSTOOL should work, that is
adding unfiltered_cxx_flag: "-fno-canonical-system-headers at https://github.com/tensorflow/tensorflow/blob/master/third_party/gpus/crosstool/CROSSTOOL#L110
Hope that helps!

@damienmg ,yes it works! thanks. But I encounter another problem with crosstool_wrapper_driver_is_not_gcc. I had tried bazel 0.1.0, 0.1.1, 0.1.2, 0.1.3. It just can't work...

Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 170.105s, Critical Path: 121.60s

You should see the error from the script itself a few lines before the ERROR: line.

Fixed in the above commit, we believe.

i have a similar issue compiling current master with bazel 2 compute capability 3.0 and cuda 7.5 :
ERROR: /home/pragma/tensorflow/tensorflow/core/kernels/BUILD:685:1: undeclared inclusion(s) in rule '//tensorflow/core/kernels:conv_ops':
this rule is missing dependency declarations for the following files included by 'tensorflow/core/kernels/conv_ops.cc':
  '/home/pragma/tensorflow/tensorflow/core/common_runtime/gpu_device_context.h'
  '/home/pragma/tensorflow/tensorflow/core/common_runtime/device.h'
  '/home/pragma/tensorflow/tensorflow/core/graph/graph.h'
  '/home/pragma/tensorflow/tensorflow/core/graph/edgeset.h'
  '/home/pragma/tensorflow/tensorflow/core/graph/types.h'.
In file included from external/eigen_archive/eigen-eigen-ed4c9730b545/unsupported/Eigen/CXX11/Core:35:0,
                 from external/eigen_archive/eigen-eigen-ed4c9730b545/unsupported/Eigen/CXX11/Tensor:14,
                 from ./third_party/eigen3/unsupported/Eigen/CXX11/Tensor:1,
                 from ./tensorflow/core/framework/types.h:23,
                 from ./tensorflow/core/framework/type_traits.h:22,
                 from ./tensorflow/core/framework/allocator.h:25,
                 from ./tensorflow/core/framework/op_kernel.h:22,
                 from ./tensorflow/core/framework/numeric_op.h:19,
                 from tensorflow/core/kernels/conv_ops.cc:22:
external/eigen_archive/eigen-eigen-ed4c9730b545/unsupported/Eigen/CXX11/src/Core/util/EmulateArray.h: In static member function 'static void Eigen::internal::TensorExecutor<Expression, Eigen::ThreadPoolDevice, Vectorizable>::run(const Expression&, const Eigen::ThreadPoolDevice&) [with Expression = const Eigen::TensorAssignOp<Eigen::TensorMap<Eigen::Tensor<float, 2, 1, long int>, 16>, const Eigen::TensorContractionOp<const Eigen::array<Eigen::IndexPair<long int>, 1ul>, const Eigen::TensorMap<Eigen::Tensor<const float, 2, 1, long int>, 16>, const Eigen::TensorMap<Eigen::Tensor<const float, 2, 1, long int>, 16> > >; bool Vectorizable = true]':
external/eigen_archive/eigen-eigen-ed4c9730b545/unsupported/Eigen/CXX11/src/Core/util/EmulateArray.h:24:67: warning: array subscript is above array bounds [-Warray-bounds]
   EIGEN_STRONG_INLINE T& operator[] (size_t index) { return values[index]; }
                                                                   ^
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 138.998s, Critical Path: 137.36s

Yep, the build is broken at the moment -- we have a fix we're trying to push through.

Similar problem ... C++ compilation of rule '//tensorflow/stream_executor:stream_executor' failed: gcc failed: error executing command

FYI : I was able to build the GPU pip package using the changes listed in this install script : https://github.com/noisychannel/tensorflow_install/blob/master/tf_install.sh
Specifically, check the function fix_tf which makes changes in third_party/gpus/crosstool/CROSSTOOL, tensorflow/tensorflow.bzl and tensorflow/stream_executor/BUILD.


VAC Banned possibly by VAC-Bypass

I had installed a new copy of windows with no hacks or sources, played csgo for a while legit and then I decided to use Osiris with Vac-Bypass injecting with Zer0memory injector.
So I downloaded all the sources and compiled with plenty of junkcode. Closed steam and launched the VAC-Bypass. As soon as steam launched I got an account alert that I was banned by VAC on csgo. I didn't even get time to open csgo or to inject anything.
I made this thread to see if this was happening to anyone else at this time. If so please tell me about your story. Thanks,

Harvo

this has nothing to do with bypass or osiris. you have been banned way before. its only show because you login.

this has nothing to do with bypass or osiris. you have been banned way before. its only show because you login.

he clearly said "Closed steam and launched the VAC-Bypass"

he clearly said "Closed steam and launched the VAC-Bypass"

this has nothing to do with bypass or osiris. you have been banned way before. its only show because you login.

Please read the thread, Like I said, I was playing csgo for a while and then I downloaded the sources and compiled. I loaded Vac bypass about 30 seconds after I closed csgo and steam.

this has nothing to do with bypass or osiris. you have been banned way before. its only show because you login.

Please read the thread, Like I said, I was playing csgo for a while and then I downloaded the sources and compiled. I loaded Vac bypass about 30 seconds after I closed csgo and steam.

Steam doesnt scan your hard drive, sometimes it takes a week or two to get banned. Please close this ticket as it is invalid


camel- k with spring cloud config

i am using this code to fetch config from spring cloud config server  and by using this command kamel run Config.java --dev -d camel:core -d camel:camel-spring -d camel:spring-cloud execute the code

but i am getting this error as mentioned above.

I think your issue is related to the spring dependencies. Camel-k only support quarkus and tries to replace any camel-xxx dependency by camel quarkus one declared in the CamelCatalog Custom Resource. You can go see your operator logs if you can get more informations kubectl logs camel-k-operator-xxxxx.

Yes, Camel K is actually only available with Camel Quarkus runtime (via Camel K runtime project). We are planning to extend support on other runtimes in future Camel K versions, but not for the immediate future.


Issue 1994 and static report bug

Issue #1994
A little corrected @tyge68 fix, now it seems to me more obvious the behavior that we expect in every case. Also fixed another bug: since now ratio is considered in dynamics, then after stopping ratio was considered for the case when there are no more active users, and this is clearly not what we want to see in the report.
@cyberw @eliezershindler

Good stuff!

confirmed working on 2.7.3 thanks.


Adding a new condition causes previous condition to disappear

But they show back up if you restart the app.
iphone and ipad.

This sounds like a situation where the comment existed without a user
attached to it, right? I'm guessing you are seeing a condition that isn't
ALSO a "machine_condition". This is the stuff that doing a one-time will
"fix".
On Mon, Jan 30, 2017 at 8:08 PM, RyanTG<EMAIL_ADDRESS>wrote:

But they show back up if you restart the app.
iphone and ipad.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/scottwainstock/pbm-ios/issues/111, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAK-LTOHZ_jkP-iViILBQsvtm_P18XC1ks5rXrPSgaJpZM4LyOLy
.

No, these are comments with users. They're all comments I made today.
Steps:

open app, make a comment on a machine.
Make a second comment.

Result: the first comment isn't listed in "past conditions" unless you restart app.

This also happened once. Seemed like a weird anomaly.

server-side code to support the iOS calls I need to make: https://github.com/scottwainstock/pbm/commit/f3b2c097540e4c0123fdc7f39b2b825c2a1f5474

I think this will do it: https://github.com/scottwainstock/pbm-ios/commit/e5846acee87005a7dd04f39e3682ab4349e57459


Interactive word asteroid game

Can use react to create website word game with asteroids.

Shiba as astronaut to shoot asteroids if work is typed correctly


automatic signup mail

Related Issuse

Info about Issue or bug

Closes: #367 [issue number that will be closed through this PR]
I have added working automatic signup mails, whenever new user signup, he will receive autogenerated mail from the system. But we have to add credentials t the .env file @codewithvk pls review
Checklist:

[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.(Specially for Backend)
[x] My changes generate no new warnings.

@codewithvk pls review


syntax error: operand expected

When trying to run this I get
gunqqer@Friithian:~$ ~/Documents/pxltrm/pxltrm

/home/gunqqer/Documents/pxltrm/pxltrm: line 29: "130" / 24: syntax error: operand expected (error token is ""130" / 24")

I am running GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)

Same here. My error message says (after a screenful of blank space):
/home/lmintmate/bin/pxltrm: line 29: "84" / 24: syntax error: operand expected
I'm normally running zsh 5.1.1 (x86_64-ubuntu-linux-gnu), but I also got the same error on GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu).
The concept of this program looks pretty interesting, and, even though I'm not a very heavy terminal user, I was still intrigued by the concept upon seeing it on r/unixporn - kudos. Thanks in advance for any help in getting it to work.

Fixed.


Azure Data Encryptions Documentation misguided us

Hello Team,
On the Documentation of the ADE, it shows that we can use the ADE for CentOS distributions option All disks which not possible on the last versions that uses XFS as file system by default.
Best regards,
"""""""""""""""""""""""""""""""""""""
Amine KONDI,
Microsoft Azure Architect Technologies

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

ID: 358673f9-fd9a-3357-bf50-4d9b7fbe6cc6
Version Independent ID: a4978908-6539-17f7-8fb6-3d88cad7237c
Content: Enable Azure Disk Encryption for Linux VMs
Content Source: articles/virtual-machines/linux/disk-encryption-overview.md
Service: security
GitHub Login: @msmbaldwin
Microsoft Alias: mbaldwin

Hello Team,
On the Documentation of the ADE, it shows that we can use the ADE for CentOS distributions option All disks which not possible on the last versions that uses XFS as file system by default.
Best regards,
"""""""""""""""""""""""""""""""""""""
Amine KONDI,
Microsoft Azure Architect Technologies

@YutongTie-MSFT
Hi YutongTie,
please finde below the concerned documontation  :
https://docs.microsoft.com/en-us/azure/virtual-machines/linux/disk-encryption-overview

@amkondi Thanks for the information. I have assigned the issue to the content author to investigate further and update the document as appropriate.
@msmbaldwin Hi, could you please help with this issue and update the document if necessary? Thanks.

Hello,
Any Updates ?

Hi, amkondi.  We have updated the "Supported Operating Systems" table to explicitly state which URNs are supported.  This should make it clear which versions of CentOs are covered.  Thank you for your suggestion! #please-close


user_deactivate not working

I'm not able to get user_deactivate to work. I'm running this against a JIRA server version 7.3.1:
from atlassian import Jira
import sys
import os

jira = Jira(
    url='https://jira.example.com',
    username=os.environ['JIRA_USERNAME'],
    password=os.environ['JIRA_PASSWORD'])

print(sys.argv[1])
jira.user_deactivate(sys.argv[1])

I'm getting back an enormous Java stack trace, wrapped in HTML. The most interesting part of the stack trace seems to be:
java.lang.NullPointerException
        at com.atlassian.jira.web.action.admin.user.EditUser.buildNewUser(EditUser.java:86) [classes/:?]
        at com.atlassian.jira.web.action.admin.user.EditUser.doValidation(EditUser.java:45) [classes/:?]

This JIRA server has been modified to work with Okta for SAML2 authentication, which involves disabling the jsp.login_jsp servlet. Is that the cause of the error I'm seeing?

Thanks for the suggestion.


Normative: Avoid double rejection processing for synchronous errors

If an exception is thrown synchronously, the top of the stack will
always have had CyclicModuleExecutionRejection called, and it would
be an error to call it again. This patch avoids re-calling it.
Fixes #84

Sorry, AsyncParentModules is only populated after the child has started execution (and hence after the error event), so this will work out correctly!
But see comments re the stack check.


Fix project build, mark test as integration

The test requires an ssh server to be listening on port 22.

also discovered this -- merging


Semantic colors don't match other languages

Semantic coloring is a huge improvement over the built-in textmate colors, especially for a tricky-to-color language like rust. But, the colors that are applied by rust-analyzer seem to contradict the color theme. Here is VSCode syntax coloring with semantic coloring off:

Here it is with semantic coloring on:

We can see a couple of issues. First, all keywords are purple. This contradicts other VSCode languages, like typescript, where only some keywords (for example if) are purple, and most keywords are blue. Type names, which are all green in other languages, are inconsistent: struct names are blue (the color of keywords in other languages) but enum names are green (as expected).
I'd be happy to work on changing the implementation to better match the coloring of other languages, but first I'd like to understand if this is intended behavior.

For keywords, see https://github.com/microsoft/vscode/issues/94367. For enums and structs, we emit specific tags for types: enum for enum, struct for struct, etc. It's up to the color theme to color or not color them.
Other language "work" because they rely on regex-based  based textmate scopes much more than rust.
Closing, as I belive this should be fixed in the color theme and not on our side.

Though, re-reading 94367, it seems like we can do better for keywords: https://github.com/rust-analyzer/rust-analyzer/pull/4353

Help me understand---is it your view that, in the default Dark+ color theme, coloring struct type names like keywords is correct behavior? Or that it's a bug on the VSCode side? Or something else?

This contradicts the behavior of, for example, the C++ extension, which colors struct type names like other type names:

This contradicts the behavior of, for example, the C++ extension

What semantic token type does C++ give for structs?
I believe we correctly flag it as struct and declaration:

The VSCode C++ extension implemented "enhanced colorization" before VSCode defined a colorization API. It bypasses the colorization API and directly colors the tokens. So, it doesn't specify a semantic token type. However, it colors struct names the same as other type names:

Having dug into this more, it's clear to me that this is a mistake in VSCode's default mappings for semantic tokens: https://github.com/microsoft/vscode/issues/97162
If they don't fix it, the solution is to simply define a rust-specific mapping from the semantic token type struct to the textmate scope entity.name.type.struct. The default mapping they currently have in place, storage.type.struct, is clearly intended for the struct keyword, not struct type names: https://macromates.com/manual/en/language_grammars

Oh, thanks for digging this up, fascinating find! I guess, we can paper over this by overriding the name on our side, let me cook up a PR... done, #4365.

Syntax coloring is a small obsession of mine 😄 There are a couple other optimizations that could be done to improve client-side performance and user-experience of semantic coloring. I'm working on a PR.

Here it is: #4383


define resource paths

We now have routing in place. We need to define a clear resource path strategy.
Current situation
Currently we have the following working paths:

/api/dev/: will generate a calendar, whether General Roman, or a national calendar, or a diocesan calendar, based on params
/api/dev/metadata/: will generate the index of all the available calendars and related data
/api/dev/testsindex/: will generate the index of all available unit tests
/api/dev/allevents/: will generate a collection of all possible liturgical events that go to creating a given calendar (this is NOT the calendar, only the events that may be found in the calendar)
/api/dev/regionaldata/: will produce the data for a given national or diocesan calendar, that is used to generate the calendar; can also create new data / update existing data with PUT / PATCH requests
/api/dev/easter/: will generate all the dates of Easter from 1583 to 9999

New Path schema
Proposed schema moving forward (RFC):
Calendars (GET, POST)

/api/dev/calendars/: will generate the index of all the available calendars and related data
/api/dev/calendar/generalroman/{YEAR}/: will generate the General Roman Calendar (aka Universal) for the year {YEAR} (if year is omitted, will default to the current year)
/api/dev/calendar/nation/{NATION}/{YEAR}/: will generate the national calendar for {NATION} for the year {YEAR} (if year is omitted, will default to the current year)
/api/dev/calendar/diocese/{DIOCESE}/{YEAR}/: will generate the diocesan calendar for {DIOCESE} for the year {YEAR} (if year is omitted, will default to the current year)

Roman Missals (GET, POST, PUT, PATCH)

/api/dev/missals/: will get the index of all Roman Missals for which data has been defined in the API
/api/dev/missal/generalroman/{YEAR}: will get / update / create sanctorale data for the Latin Roman Missal published in the year {YEAR}
/api/dev/missal/nation/{NATION}/{YEAR}: will get / update / create sanctorale data for the Missal of the nation {NATION} published in the year {YEAR}

Decrees of the Congregation for Divine Worship (GET, POST, PUT, PATCH)

/api/dev/decrees/: will get the data of Decrees of the Congregation for Divine Worship that add new festivities, or resolve coincidences between festivities; or create a new decree if one is issued (we shouldn't really have to update anything, but let's say a mistake was made when creating a new decree, perhaps we can allow to PATCH it)

Calendar data (GET, POST, PUT, PATCH)

/api/dev/data/: will get the index of all data files that have been defined for national or diocesan calendars
/api/dev/data/nation/{NATION}/: will get / update / create the data that is used to generate the national calendar for {NATION} (only data that will modify the sanctorale data from the relative Missal for the nation, or add new festivities for a given year that were not in the Missal, or move festivities etc.)
/api/dev/data/diocese/{DIOCESE}: will get / update / create the data that is used to generate the diocesan calendar for {DIOCESE}
/api/dev/data/widerregion/{WIDERREGION}: will get / update / create the data that is used for the Wider Region that certain nations may belong to (e.g. "EUROPE" or "AMERICAS"; this data will be included in the generation of a national calendar that belongs to the given Wider Region)

Dates of Easter (GET, POST)

/api/dev/easter/: will generate all the dates of Easter from 1583 to 9999

Liturgical events (GET, POST)

/api/dev/allevents/: will generate a collection of all possible liturgical events that go to creating the General Roman Calendar, whatever the year
/api/dev/allevents/nation/{NATION}/: will generate a collection of all possible liturgical events that go to creating the national calendar for {NATION}, whatever the year
/api/dev/allevents/diocese/{DIOCESE}: will generate a collection of all possible liturgical events that go to creating the diocesan calendar for {DIOCESE}, whatever the year

Unit Tests (GET, POST, PUT, PATCH)

/api/dev/tests/: will generate the index of all available unit tests
/api/dev/test/{TEST}/: will get an existing test by ID, or create a new test / update an existing test by ID

Please feel free to ask questions or contribute with ideas for better resource paths!

A few minor thoughts, take 'em or leave 'em.

It seems odd to me to have the plural /api/dev/calendars/ but then use the singular for other endpoints /api/dev/calendar/generalroman/{YEAR}/. I think I understand why you're doing it but from what I'm used to conventionally, I'd expect all endpoints to use the plural calendars path (even if they only return one calendar, specified by later parts of the path). (This applies to all plural endpoints, not just calendars.)
/nation/{NATION} seems grammatically odd to me. I guess these are properly referred to as "national" calendars and not "country" calendars? Would it make sense to do something like /national/{COUNTRY}, or is "nation" common language when talking about this kind of calendar?
Instead of allevents, I'd just use events. The "all" seems unnecessary and redundant.

Overall this looks great to me, I do like the new API schema better than the old one.

I agree with events in place of allevents.
As for singular or plural in the routes, I suppose you may be referring to Ruby on Rails, where often the resources will maintain the plural form, such as GET /photos/:id. However there can be cases where a singular form can be considered preferable: https://guides.rubyonrails.org/routing.html#singular-resources

"Sometimes, you have a resource that clients always look up without referencing an ID"

I figure, the base calendar is the General Roman Calendar. When retrieving a calendar resource you will always only retrieve a single calendar resource, and the "Calendar of calendars" is the General Roman Calendar which I'm thinking of making accessible simply at the path /api/dev/calendar/ rather than /api/dev/calendar/generalroman/. I don't know, I'll have to think about that, but I like the idea of hierarchy here: just plain /calendar/ is the General Roman calendar, any calendar underneath that will inherit from that.
Another question that I'm not sure how to deal with, is calendars for different rites. For example, here in Italy in the area around Milan, they use the "Ambrosian calendar", which I personally know nothing about. I'll need to find a liturgist from Milan who's available to explain it to me sooner or later. While the General Roman Calendar is defined in the Latin edition of the Roman Missal, how is the Ambrosian calendar defined? How similar or different is it from the General Roman Calendar? Can it be considered as inheriting from the General Roman Calendar? Could it be considered as a local / diocesan calendar?
What about other rites, such as the Melchite (Greek catholic) rite, or the Ruthenian catholic rite... Do they each have their own calendar? Do all eastern catholic rites inherit from a single calendar such as the "liturgy of John Chrysostom"? Since these rites are widespread over more than one country, I don't think they can be simply treated as "diocesan calendars", and I have no idea if they should descend hierarchically from the General Roman Calendar or if they are different enough that they should be treated in parallel to the General Roman Calendar. If they need to be treated in parallel, then we might have something like this:

/api/dev/calendar/{RITE} where {RITE} can be ROMAN, or AMBROSIAN, or MELCHITE, or RUTHENIAN, or however many other Catholic rites there are
/api/dev/calendar/{RITE}/{YEAR}: would retrieve the "general roman" or "general ambrosian" or "general melchite" etc. calendar for the given {YEAR}
/api/dev/calendar/{RITE}/nation/{NATION}/{YEAR}
/api/dev/calendar/{RITE}/diocese/{DIOCESE}/{YEAR}

In any case, I'm not very strongly opinionated about singular or plural. In a Ruby on Rails environment, you could use plural almost everywhere such that GET /calendars would be the index resource, and GET /calendars/:id would get a singular resource. If however, GET /calendars alone is the index resource with data about all available calendars, we might want to stick to GET /calendar for the General Roman Calendar; and consequently all other calendars that inherit from the General Roman would be under the same /calendar path. I personally kind of prefer to have the plural for the index, and the singular for a singular resource.
As for nation vs national, doesn't make much of a difference to me, I guess it's kind of where you put the meaning, if it's intended as an adjective referred to the calendar resource so (/calendar/national) would mean a national calendar as opposed to the General Roman Calendar; or if it's referring more to what comes immediately after, as in saying "which NATION do you want a calendar for? /nation/USA", or "which DIOCESE do you want a calendar for? /diocese/DIOCESEOFMANCHESTERNEWHAMPSHIRE". So /api/dev/calendar/nation/USA basically can be read as "Get the liturgical calendar for the nation USA".
When it comes to liturgical celebration, the calendar for the local diocese is always used (or for the religious congregation; the Franciscans have their own specific calendar, the Dominicans have their own specific calendar... That's something else to think of, how should calendars for religious communities be dealt with in a project that would like to become as much of a service as possible throughout the Church). In any case, you wouldn't really use a "national calendar" in a liturgical celebration. However the "national calendar" determines the diocesan calendar: all the dioceses of a given nation will inherit the calendar from the Roman Missal language edition for the nation in which the diocese is situated. I wouldn't even say that it's necessarily known or called a "national" calendar (that sounds kind of patriotic, so has almost more of a political nuance to it), it's simply the calendar as defined by the Bishops Conference for a given nation based on the language edition of the Roman Missal in that nation.
If we really wanted to respect the hierarchy of calendar data, /diocese should come under /nation, but that just might simply become too long of a path: /calendar/nation/NETHERLANDS/diocese/ROTTERDAM/{YEAR} starts to get a bit long. But that's kind of the idea in using nation or diocese: we're requesting the calendar as in use in the diocese nnn. It wouldn't quite work to do /calendar/national/NETHERLANDS/diocesan/ROTTERDAM/{YEAR}. But instead of creating paths that are too long, I think we can treat nation and diocese in parallel:

/calendar/nation/NETHERLANDS/{YEAR}
/calendar/diocese/ROTTERDAM/{YEAR}

Only thing that will need some attention in this case, is avoiding conflicts between names of Dioceses. If more than one diocese throughout the world has the same name, more specificity will need to be added to the key that identifies one of these dioceses. For example, DIOCESISDECARTAGENA_ES and DIOCESISDECARTAGENA_CO to distinguish the diocese of Cartagena in Spain from the diocese of the same name in Colombia.

Starting working on this on the v9 branch. This branch has nothing to do with a "version 9", it's simply a placeholder since I have to use a value of v4 through v9 in order for the routing to work; the branch will be merged into dev when it is completed, tested and functional. And dev will probably become v4 at that point.
So will be testing routes at the address: https://litcal.johnromanodorazio.com/api/v9/ .
I have currently implemented the events endpoint, you can see it and play with it at https://litcal.johnromanodorazio.com/api/v9/events.

https://litcal.johnromanodorazio.com/api/v9/events
should respond with events for the General Roman Calendar
https://litcal.johnromanodorazio.com/api/v9/events/nation/USA
should respond with events for the liturgical calendar in use in the USA
https://litcal.johnromanodorazio.com/api/v9/events/diocese/ROTTERDAM
should respond with events for the liturgical calendar in use in the diocese of Rotterdam in the Netherlands

The locale param is available on the path https://litcal.johnromanodorazio.com/api/v9/events for the General Roman Calendar events:

https://litcal.johnromanodorazio.com/api/v9/events?locale=it
should respond with events for the General Roman Calendar localized in Italian

You can also set the desired locale in the 'Accept-Language' header. Try in the devtools console (you will have to be on a page within the https://litcal.johnromanodorazio.com or https://litcal-staging.johnromanodorazio.com domains):
fetch('https://litcal.johnromanodorazio.com/api/v9/events', { headers: {'Accept-Language': 'nl'} })
  .then(response => response.json())
  .then(data => console.log(data));

You can also request a response content type of either application/json or application/yaml:
fetch('https://litcal.johnromanodorazio.com/api/v9/events', { headers: { 'Accept': 'application/yaml' } })
  .then(response => response.blob())
  .then(blob => blob.text())
  .then(data => console.log(data));

You can also try invalid paths or parameters to see how the API responds to invalid data.

I suppose another way of referring to the calendar for a given country, would be to refer to a Roman Missal. So rather than call it a "national calendar", seeing that the calendar in question is produced based on an edition of the Roman Missal as published in a certain country by the Bishops Conference (with the approval of the Congregation for Divine Worship), it could be referred to by the Missal, such as: /calendar/missal/USA in place of /calendar/nation/USA. Though this might be more correct in indicating where the data is coming from, but I'm afraid might be slightly less intuitive than referring by geographical area as is /calendar/nation/USA.
Where and when would the so called "national" calendar be used? It could be used to print a liturgical calendar that is distributed nation-wide, for example here in Italy Paulist Press distributes the liturgical calendar in Italian nation-wide. So there are no diocesan memorials in this printed calendar, only those that regard Italy (and consequently the wider region Europe). I suppose it could also be used on the website for the Bishops Conference. And it could be used for an smartphone app distributed on a nation-wide level, or for an Alexa skill distributed on a nation-wide level.
I would envision a smartphone app distributed on a nation-wide level with the choice of all dioceses within the nation. Perhaps in the future we'll get to the point where each diocese could distribute it's own app, but I don't see that happening in the near future. It would be quite simple having the API and an example app on hand, but you'll probably only find a handfew of dioceses taking interest in producing and publishing the app. Same for an Alexa or Google Assistant skill.

I'm not going to use /calendar/missal/{NATION} as a path parameter to retrieve a calendar, I'm going to stick with /calendar/nation/{NATION}, because I think it might get confusing seeing that I'm working on another /missals / /missal path to retrieve or set Roman Missal sanctorale data for various nations. I'll update the proposed path schema above with the latest developments.

This has evolved so much now, and version 4 is coming to maturity. We even have multi-language national and diocesan calendars now (see issue #150). But I won't close this issue until all of the PUT / PATCH / DELETE requests are correctly implemented on the various routes. This is still going to require quite a bit of work...


using RAM 71%

hello, i build NODE on Ubuntu application from windows,
i did this 2days ago
During these 2 days, that was all good, but i wake up this morning and my node using 71% of my pc RAM,
i let him, during this time i search any solution, after ~1hour, my node crashed, and my RAM came back to normal
Finally I had to restart my node  but now my uptime isnt really :(

Hey @qnixAVA thanks for reporting the issue, would you mind sharing more details about your exact setup? Did you run this on virtual box on a windows computer, could you describe your exact setup? Would you mind also sharing any logs produced during the run? You can find the log directory in HOME/.gecko/logs.

Hello, I run AVA on Ubuntu WSL and my computer got 8go RAM
And so I just manually reboot my node, thats work
Le ven. 5 juin 2020 à 20:28, aaronbuchwald<EMAIL_ADDRESS>a
écrit :

Hey @qnixAVA https://github.com/qnixAVA thanks for reporting the issue,
would you mind sharing more details about your exact setup? Did you run
this on virtual box on a windows computer, could you describe your exact
setup? Would you mind also sharing any logs produced during the run? You
can find the log directory in HOME/.gecko/logs.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ava-labs/gecko/issues/210#issuecomment-639690336, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AP2ZSWXB3IP2BOLWC7V7KYLRVE2NJANCNFSM4NSVUJ5Q
.

Thank you @qnixAVA , would you mind also sharing any of the logs produced during the run that ended up using 71% of available RAM, so that we can try to diagnose and fix the issue and improve your UX?


ngStorage crashes the whole application when ran in an iframe

Chrome prevents access to cookies and local storage if the page is load in an cross domain iframe and cookie settings are set to block third party cookies.

Error: Failed to read the 'localStorage' property from 'Window': Access is denied for this document.
    at Error (native)
    at Object. (https://rawgit.com/gsklee/ngStorage/master/ngStorage.js:42:41)
    at Object.d [as invoke] (https://code.angularjs.org/1.1.5/angular.min.js:28:304)
    at https://code.angularjs.org/1.1.5/angular.min.js:30:39
    at c (https://code.angularjs.org/1.1.5/angular.min.js:27:142)
    at d (https://code.angularjs.org/1.1.5/angular.min.js:27:276)
    at Object.instantiate (https://code.angularjs.org/1.1.5/angular.min.js:28:434)
    at https://code.angularjs.org/1.1.5/angular.min.js:53:326
    at https://code.angularjs.org/1.1.5/angular.min.js:44:274
    at n (https://code.angularjs.org/1.1.5/angular.min.js:7:74)

To demonstrate the issue I took the demo from your readme.md and put it into a jsfiddle iframe.
As you can see the application crashes and can't even bootstrap in Chrome

Your example does not crash now using latest (tagged 0.3.3).


Workingset Trimming Report not working

Every time we try to open this report on Nexus, following errors are occurring:

Field name  "Indicators" does not exists , removing this from DataSet_MemClerks fixing this error as the field is not used in the report.
@PiJoCoder , @asavioliMSFT
Correct fields are   ,[IndicatorsProcess]      ,[IndicatorsSystem]      ,[IndicatorsPool]  , should we add those to the grid ?

Yes. These column are the most important ones, that will show where the memory pressure is

Sure, we can add them to the grid. Thanks @hacitandogan!

Fixed


[RT] Updates the readme for when we finally make RT the main branch

Tweaked the linux mention to just say we don't test it as much, which is accurate.


Fixes #15117 yii\db\Schema::getTableMetadata cache refreshing

Fixes #15117. Before, setting $refresh still tried to pull from the cache. With this fix it doesn't and makes sure it loads from table again.

Oops wrong repo apparently. I remembered submitting to this repo before? Will re-submit.

My bad, here's the new PR: https://github.com/yiisoft/yii2/pull/16052


Need to improve "Configuring My Account Application" content

Is your suggestion related to a missing or misleading document? Please describe.
https://is.docs.wso2.com/en/5.11.0/develop/configure-my-account/
Here it is mentioned to edit the deployment.config.json file to customize the my account application. Where it has not mentioned that it is required to edit only if the application will be hosted externally, and if it is to change value on the application which shipped in the Identity Server product by default and keep hosted in the Identity Server as it is, it is required to edit the deployment.toml file instead. Where it will persist the changes on server restart.
Describe the improvement
Improve the doc as mentioned above.

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


Fix encoding ItemStack in TrackedData

When encoding ItemStacks in TrackedData the ItemStack itself is not optional as it was previously implemented. For further context, when encoding an ItemStack it will only encode as one byte if the ItemStack is empty.
Objective

Fixes #537

Solution

Remove the optional wrapping around the ItemStack value when encoding it in the TrackedData.

Must have been a leftover from #500

Makes sense, I was wondering how that got there.


Add clear button

This feature adds an option to add a third button in popup to clear the selected date.

Thanks for the contribution! I need to test this on multiple devices, give me some time please.


Fixed typo in commercial_paper.md

Type of change

Documentation update

Description
Fixed redundent 'the' typo

@karim-ch Thank you for fixing this! You need to sign off on the change before we can merge it.
 Next run
git push --force-with-lease origin patch-1

Hello, I'm getting this error when I type
git push --force-with-lease origin patch-1

error: src refspec patch-1 does not match any.
error: failed to push some refs to 'https://github.com/hyperledger/fabric.git'

What shall I do please ?

@btl5037 Brett - Can you advise Karim on what he should do here to sign his commit. The instructions from above do not seem to be working in this case.

@pamandrejko @karim-ch needs a valid email address in GitHub.

please see #861


Backport: Update version and Changelog for 21.1.0

Which issue does this PR close?
re https://github.com/apache/arrow-datafusion/issues/5744
Rationale for this change
Prepare for 22.1.0 release as described on https://github.com/apache/arrow-datafusion/issues/5744
What changes are included in this PR?
Update version to 22.1.0 and add (manual) Changelog entry on branch-21
Are these changes tested?
No
Are there any user-facing changes?
Eventually they will be

CI is not running on this PR for some reason -- I will merge to the branch and verify that the checks pass there.


Feature/register channel

What does this PR do?

Adds facebook endless for zero downtime restarts. This was happening when we deployed a new verison
Use channels for registering new routes/proxies
Adds a wrapper for logrus

+1 lgtm


No Documentation on How to Connect Visual Studio to DevOps

I went through several Microsoft DevOps labs and there is no instructions or help on how to connect the Visual Studio 2022 IDE to DevOps. There is also no info on the relationship of a VisualStudio-GitHub-to-DevOps-Azure versus VisualStudio-to-DevOps-Azure versus VisualStudio-to-Azure directly using publishing tools. The information is convoluted and confusing and leaves customers totally lost as to what the best CI/CD solution is best.
If this helps, here is instructions on how to connect Visual Studio 2022 to a Microsoft DevOps (organization and project) online:

First create a Microsoft Account, login to DevOps at https://dev.azure.com/ with this account, then create an free DevOps account. You do NOT need an Azure Subscription for this as the Azure Cloud hosting platform is optional. In DevOps create a single organization and project, or use one in an existing DevOps account and repository your business is running.
Open up Visual Studio 2022 and log into the same account as above. This helps the IDE connect to both DevOps and Azure later if you are using all three for the same login accounts.
In Visual Studio 2022, go to "Team" > "Manage Connections" (or the "Team Explorer" tab). Add a connection. In the dialog box it will ask for the URL to your DevOps account URL which should include the path to a Git organization and project. Enter the full website URL to your new DevOps website and project (https://dev.azure.com/organization/project) in the dialog box. If it asks you to login to DevOps using a different account, you can enter that here. That links your Visual Studio 2022 to DevOps at Azure! If your project has a real respository inside it, you will see it in VS. You can now see the "pipeline builds" and project in DevOps. And you can now use Git as well to pull down a Git clone of the remote DevOps repository project, push Git changes, or pull down Git changes from the remote DevOps repo to your local repo.

Hi @EMStokely - Thank you for providing detailed explanation.
Refer This


Cannot Deploy to Heroku

📋 Explain your issue
https://github.com/heroku/heroku-buildpack-static.git is deprecated and cant be used in Heroku Build
I tried deploying it with the nginx Buildpack and followed the instructions but it didnt work. Anybody has an idea how I could deploy my astro project to heroku?

Thanks for flagging this, @Mooskopf!
Looks like our heroku deployment guide needs to be updated, and the heroku's instructions for using the nginx buildpack instead are here: https://github.com/heroku/heroku-buildpack-static#warning-heroku-buildpack-static-is-deprecated


Pylint and code reformat with ruff for src/python/Utils

Fixes # (no issue created)
Status
In development
Description
Just playing around with the ruff library and checking the outcome of its auto-reformat for coding style and many of the pylint issues. I have used the following 2 commands:
ruff format src/python/Utils/
ruff check --fix src/python/Utils/

but from a different virtual environment that uses python 3.10.13 (so results might be slightly different than expected).
Is it backward compatible (if not, which system it affects?)
YES
Related PRs
None
External dependencies / deployment changes
None

Most of these changes are related to replacing single quotes ' by double quotes ".  According to PEP-8 coding style:
https://peps.python.org/pep-0008/#string-quotes
there is nothing really defined in. So it looks like ruff picked the double quotes one.
In any case, I am closing this out. I am happy to return to this if we decide to have further discussions on such automated code reformat.


Version httpd/branches 1.10.20 differs from 1.10.20 Git here

Noticed today  difference between httpd/branches/2.4  and 1.10.20-git:
Both has a version number 1.10.20, the diff files are :
.\h2_config.c
.\h2_config.h
.\h2_conn.c
.\h2_filter.c
.\h2_h2.c
.\mod_http2.c
.\mod_http2.h
.\mod_proxy_http2.c
Do we miss changes in branches/2.4 ?

No, some changes have been made in branches/2.4.x that have not arrived here yet.


Fix crash on missing etag in s3 storage driver

Fix broken blob access
Description
Replaces the required access to the etag key with optional access.
I am not sure what implications this has on other components, but you can at least read public blobs again.
This fixes #1682
Status

done, ready for review

Checklist (tick everything that applies)

[X] Code linting
[X] Documentation (no update required)
[X] Tests
[X] ICLA (I think I signed this already some time ago)

Thanks for reporting and fixing this issue.
Do you happen to know how it affects object uploads? Since, IIRC, we use e-tag returned on upload to verify that checksum matches and that there was no corruption on upload. Or this only affects get requests

Merged into trunk, thanks!


Move back to react-router

Closes https://github.com/relay-tools/react-router-relay/issues/119

Thanks!


Uncaught (in promise) ReferenceError: TAURI_INVOKE_KEY is not defined

Describe the bug
this error only happens on build/build debug, it works fine on dev mode
To Reproduce
Steps to reproduce the behavior:
start app, load a remote url, invoke command via tauri on web, the rust app does receive the command , but then webview can not get event
data emitted from rust app
Screenshots

Platform
Windows
latest nodejs, tauri
Stack Trace
Uncaught (in promise) ReferenceError: __TAURI_INVOKE_KEY__ is not defined
    at tauri-3147d768.js:15
    at new Promise (<anonymous>)
    at tauri-3147d768.js:15
    at tauri-3147d768.js:15
    at Object.next (tauri-3147d768.js:15)
    at tauri-3147d768.js:15
    at new Promise (<anonymous>)
    at r (tauri-3147d768.js:15)
    at i (tauri-3147d768.js:15)
    at tauri-fe7c6694.js:1

Can you make a minimal repro ? Also post full tauri info please.

Hello,
I have created a demo repo here:  https://github.com/Archieeeeee/tauridemo211218.git
tauri info

Operating System - Windows, version 10.0.22523 X64
Webview2 - 96.0.1054.57

Node.js environment
  Node.js - 16.13.1
  @tauri-apps/cli - 1.0.0-beta.10
  @tauri-apps/api - 1.0.0-beta.8

Global packages
  npm - 8.1.2
  yarn - 1.22.15

Rust environment
  rustc - 1.59.0-nightly
  cargo - 1.58.0-nightly

App directory structure
/.git
/.vs
/dist
/icons
/node_modules
/server
/src
/src-tauri

App
  tauri.rs - 1.0.0-beta.8
  build-type - bundle
  CSP - default-src blob: data: filesystem: ws: wss: http: https: tauri: 'unsafe-eval' 'unsafe-inline' 'self' img-src: 'self'
  distDir - ../dist
  devPath - http://localhost:3000
  framework - Vue.js

Done in 21.10s.

you have a weird project setup tbh and this is far from a minimal repro. If you can, please reduce this repro to bare minimum? Otherwise this gonna have to wait a bit.

The __TAURI_INVOKE_KEY__ is getting dropped on the next release.

quick fix for this: use window.__TAURI__.event.listen instead calling listen directly
https://github.com/tauri-apps/tauri/issues/2383#issuecomment-896196627


feat: allow custom client

:tada: This PR is included in version 1.9.0 :tada:
The release is available on:

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


http2 exception error

plugin version 1.2.6
Java version 14.0.1
Jmeter version 5.5
Macbook Pro OS version Ventura 13.5
Configured gRPC call with all the required fields, but receiving an http2 error. Compared the setup with Postman and normally received a replay. I also did a trace route and that was open/OK.
What can result in a http2 error?

The issue is solved. I added the .jks certificate and also I was only looking at the errors (Error in create SslContext with NPN_AND_ALPN JDK provider does not support NPN_AND_ALPN protocol) what was misleading. There is an error but it is still working.


LocationUpdatesForegroundService: mNotificationManager.startServiceInForeground

My App is targeting API 26, but I can't use this code:
// TODO(developer). If targeting O, use the following code.
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.O) {
mNotificationManager.startServiceInForeground(new Intent(this,
LocationUpdatesService.class), NOTIFICATION_ID, getNotification());
} else {
startForeground(NOTIFICATION_ID, getNotification());
}

Same here.. looks like there is no "NotificationManager.startServiceInForeground", more like "ContextCompat.startForegroundService()"


Question regarding the architecture

Hi, I really appreciate your work. An impressive idea. I want to ask a question regarding the 3D CNN architecture:

It's written, that CBR3D0 takes T which is cost volume of shape (BATCH_SIZE, CHANNELS (32), N_DEPTH, HEIGHT / 4, WIDTH / 4) and I which are concatenated images, as I guess (BATCH_SIZE, 9, 1, HEIGHT, WIDTH). So, there appears to be a shape inconsistency. Could you, please, clarify this one, if possible.
It also states, that CBT3D2 takes outputs from CTB3D1 and CBR3D2, which is a total of 48 channels instead of 64. Is it a typo?
Thanks in advance for your reply!

Hi there, thanks, sorry about we didn't explain the network structure clearly. we will revise it in the near future.

it is not concatenated directly, we also project the color to the volume, the shape is (BATCH_SIZE, 9, N_DEPTH, HEIGHT / 4, WIDTH / 4).
oh, the chns are incorrect in the CTB3D_1,2,3. you just bypass CTB3D_0, and 1-3  should be 64/32, 32/16, 16/8.

Oh, great, thank you! That explains everything. The only questions left are:

Do you downsample color images and then project them onto a reference plane?
When doing raymarching, it's no longer needed to downsample images, as we're working in NDC, is it correct?

exactly, yeah we don't have to downscale the images when doing raymarching.

I see. Great thanks for all of your replies. They helped a lot in understanding your paper! Have a nice day!


Multi-language support for Internationalization. Includes initial Spanish support.

TODO:
Add French and German dictionaries.


[bug] Type Exclusion Should be Consistent

🔎 Search Terms
"Exclude" "exclusion" "general" "concrete" "type"
🕗 Version & Regression Information

This is a crash
This changed between versions ______ and _______
This changed in commit or PR _______
This is the behavior in every version I tried, and I reviewed the FAQ for entries about anything
I was unable to test this on prior versions because _______

⏯ Playground Link
Playground Link
💻 Code
type T1 = {
  type: 1
  f1: 1
}
type T2 = {
  type: number
  f2: 2
}
type TA = T1 | T2

type T3 = {
  type: 3
  f3: 3
}
type TB = T1 | T3

const t1 = (t: T1) => {}
const t2 = (t: T2) => {}
const t3 = (t: T3) => {}

const fA = (t: TA) => {
  if (t.type === 1) {
    // These errors are correct since t can be either T1 or T2
    t.f1 // Property 'f1' does not exist on type 'TA'.\nProperty 'f1' does not exist on type 'T2'.(2339)
    t1(t) // Argument of type 'TA' is not assignable to parameter of type 'T1'.\nProperty 'f1' is missing in type 'T2' but required in type 'T1'.(2345)
  } else {
    // t must be of type T2 as T1 has been excluded
    t.f2 // Property 'f2' does not exist on type 'TA'.\nProperty 'f2' does not exist on type 'T1'.(2339)
    t2(t) // Argument of type 'TA' is not assignable to parameter of type 'T2'.\nProperty 'f2' is missing in type 'T1' but required in type 'T2'.(2345)
  }
}

const fB = (t: TB) => {
  if (t.type === 1) {
    t.f1
    t1(t)
  } else {
    t.f3
    t3(t)
  }
}

type T4 = 4
type T5 = number
type TC = T4 | T5
const t4 = (t: T4) => {}
const t5 = (t: T5) => {}

type T6 = 6
type TD = T4 | T6
const t6 = (t: T6) => {}

const fC = (t: TC) => {
  if (t === 4) {
    t4(t)
  } else {
    t5(t)
  }
}

const fD = (t: TD) => {
  if (t === 4) {
    t4(t)
  } else {
    t6(t)
  }
}

🙁 Actual behavior
The type system does not exclude type T1 from TA (via if (t.type === 1) where t: TA) when TA.type is  1 | number but excludes T1 from TB when TB.type is 1 | 3.
ALSO
The type system excludes type T4 from TC (via if (t === 4) where t: TC) when TC is 1 | number and excludes T5 from TD when TD is 4 | 5.
🙂 Expected behavior
Frankly I'm confused but I am attempting to share that to identify the problem or at least a clear model of how to understand this.
The narrowing behavior should be consistent whether the type excluded is part of a structure or not.
In more words: the else clause of fA should be able to determine that t is of type T2 (since type T1 is excluded) even though the type remains ambiguous in the if block OR the if and else clause of fc should be unable to determine the type of t.
My intuition is that the more useful choice would be for T1 to be excluded from TA determining that t is of type T2 in the else clause.
Additional information about the issue
A little history: I originally confused myself by trying to declare an unknown type Exclude<string, 'concrete'> and looking into it came to understand that Exclude works by removing types from a union.  This broke my intuitive understanding of the class of strings and a concrete strings membership therein but was a coherent and consistent way for it to work.
However, as I discovered I was wrong but also tried to simplify the situation, I discovered that Exclude was a distraction and that I could reproduce the behavior using conditionals but not in the way I expected.  On the back of my union-type-removal model of understanding exclude I expected fB to also not work but found the opposite.  Trying to scratch further, i removed the object structure and to my surprise found that the exclusion worked fine if the narrowing was not on an attribute of an object type.
To my ignorant eyes, it seems that a corner case may have been missed.  I expect it is more likely that my model is too simple.

related: https://github.com/microsoft/TypeScript/issues/55095

Another person throwing yet more evidence on the pile that TypeScript is either 1) a gateway drug to type theory or 2) just tends to attract mathematically-inclined thinkers in general...
As fun as it is at times to think about (and things like union types do have very interesting type thoery implications), it's been my experience that trying to construct a consistent mathematical model of the TypeScript type system is more or less a fool's errand.  The type system is built on years of pragmatic case-by-case decisions guided by what people are actually doing with JS/TS code in the wild, so any model you come up with to describe things is inevitably going to run into inconsistencies like this.  Trying to model it mathematically is a fun diversion, but has little real-world application, IMO.

a clear model of how to understand this.

I guess the overarching principle to keep in mind is that TypeScript is not a constraint solver.
Anyway, given how narrowing works, we'd need negated types to represent what's happening here. See https://github.com/microsoft/TypeScript/issues/42876#issuecomment-783609507

More practically speaking, I don't think discriminated-union narrowing works by elimination, e.g. even if you invert the condition so that
  if (t.type !== 1) {
    t.f2
    t2(t)
  } else {
    t.f1
    t1(t)
  }

It still doesn't rule out T1 in the true branch, even though it would be sound to do so.

Thank you both very much.  For these comments and for Typescript.
A number of responses, the important two at the end
@fatcerberus I don't mean anything as responsible as a mathematical model so much as just a mental one.  I am Mort and mere mortal here.
@RyanCavanaugh Regarding https://github.com/microsoft/TypeScript/issues/42876#issuecomment-783609507, I had attempted, with my discussion of escaping my confusion about Exclude (and a few other details), to communicate I had removed that mental trap from my thinking.
@RyanCavanaugh I don't understand what "we'd need negated types to represent what's happening here" means.  Is it possible to get a pointer to the implementation so that I could at least attempt to understand the meaning of the code?
@fatcerberus > I don't think discriminated-union narrowing works by elimination
Practically, it clearly doesn't in the object attribute case (fA where TA = { type: 1 | number } and the conditional is if (t.type === 1)), while does appear to work that way in the primitive case (fC where TC = 1 | number and the conditional is if (t === 1)).  The inconsistency between those cases is the only reason I thought this issue might be worth the team's time.  FWIW, adopting your negative case approach gives the same result.
@RyanCavanaugh I don't understand what "we'd need negated types to represent what's happening here" means.  Can we get a pointer to the current implementation so that I could at least attempt to understand the meaning of the code?

TypeScript is not a constraint solver.

Apologies that I missed the significance of this principle.  Typescript is a useful tool and I'm happy to accept its behavior in this case.  I'm happy to close this issue but thought that the inconsistency might be worth review.  Again, thank you both and the entire team very much.

fatcerberus: here is a simpler formulation that uses the negative conditional and works as expected in the primitive case but not in the object attribute case:
type T1 = {
  type: 1
  f1: 1
}
type T2 = {
  type: number
  f2: 2
}
type T3 = 3
type T4 = number

type TA = T1 | T2
type TB = T3 | T4

const t1 = (t: T1) => {}
const t2 = (t: T2) => {}
const t3 = (t: T3) => {}
const t4 = (t: T4) => {}

const fA = (t: TA) => {
  if (t.type !== 1) {
    t2(t) // Argument of type 'TA' is not assignable to parameter of type 'T2'.\nProperty 'f2' is missing in type 'T1' but required in type 'T2'.(2345)
  } else {
    t1(t) // Argument of type 'TA' is not assignable to parameter of type 'T1'.\nProperty 'f1' is missing in type 'T2' but required in type 'T1'.(2345)
  }
}

const fB = (t: TB) => {
  if (t !== 3) {
    t4(t)
  } else {
    t3(t)
  }
}

@erikerikson see the function narrowTypeByBinaryExpression in src/compiler/checker.ts

I don't mean anything as responsible as a mathematical model so much as just a mental one. I am Mort and mere mortal here.

That’s what you say, but I remember thinking the same thing when I was first trying to internalize the complexities of TS once upon a time, and it ultimately got me interested in category theory.  So just watch out for that in the future… :wink:
@erikerikson If it helps at all, there is no meaningful distinction between 1 | number and number - afaik, in any situation where the former type is constructed, it immediately collapses to the latter.  That’s why Ryan says you need negated types for this in general - so the type system can understand the concept of “any number except 1” at all levels of abstraction.

It isn't exactly what happens, but you can form a good-enough mental model by thinking of narrowing as intersection:
type X1 = { x: 1, y: "one" };
type XN = { x: number, y: "other" };
let obj: X1 | XN;

if (obj.x === 1) {
 // Intersect (X1 | XN) with { x: 1 }
 // X1 & { x: 1 } === X1
 // XN & { x: 1 } === well, just that
 // Neither are never
 // the result is obj: X1 | XN
}

if (obj.x === 2) {
 // Intersect (X1 | XN) with { x: 2 }
 // X1 & { x: 2 } === never (1 & 2 is never)
 // XN & { x: 2 } === well, just that
 // result: obj is XN, the union is filtered
}

if (obj.x !== 2) {
 // Intersect (X1 | XN) with OH NO...
 // There's no type of "not 2"
 // Nothing can be done
}

it immediately collapses to the latter

This is the case.  I have confirmed using ~/tests/cases/compiler/narrowByEquality.ts.  Interestingly, trying to pin this down better, I put Ryan's code in there and then simplified it as follows to no difference in the type outputs for the relevant types (and fixing the last conditional to what I presume was intended):
type X1 = { x: 1 };
type XN = { x: number };
declare let x1N: X1 | XN;
if (x1N.x === 1) {
    x1N;
}
if (x1N.x === 2) {
    x1N;
}
if (x1N.x !== 1) {
    x1N;
}

The corresponding output in tests/baselines/local/narrowByEquality.types does show the narrowing (>x1N : XN) in the never intersection case (if (x1N.x === 2)):
type X1 = { x: 1 };
  >X1 : { x: 1; }
  >x : 1

type XN = { x: number };
  >XN : { x: number; }
  >x : number

declare let x1N: X1 | XN;
  >x1N : X1 | XN

if (x1N.x === 1) {
  >x1N.x === 1 : boolean
  >x1N.x : number
  >x1N : X1 | XN
  >x : number
  >1 : 1

    x1N;
    >x1N : X1 | XN
}
if (x1N.x === 2) {
  >x1N.x === 2 : boolean
  >x1N.x : number
  >x1N : X1 | XN
  >x : number
  >2 : 2

    x1N;
    >x1N : XN
}
if (x1N.x !== 1) {
  >x1N.x !== 1 : boolean
  >x1N.x : number
  >x1N : X1 | XN
  >x : number
  >1 : 1

    x1N;
    >x1N : X1 | XN
}

Thank you very much for helping me identify this and decompose it into a more tangible and detailed model!  The implicitly negative case's narrowing carries a lot of explanatory power - great example to share and make it more concrete.  Hope this extended documentation provides a lot of help to the community.


Clean any lingering .git

This helps with cleaning existing git files.

I don't think removing .git folder is a responsibility for this task. I'd rather write in another gulp task to run before this one to bundle (if applies) and copy only necessary files to a deploy folder and then run this task.


[3.x] Window transparency support on Android

Implements per-pixel transparency feature on Android.
Allows plugins to do specific rendering and render godot UI on top (useful for camera support with drawing on top).
In order to do that, the plugin itself needs to move its own frame behind the main godot frame with something like that in java:
ViewGroup parentView = (ViewGroup)pluginFrame.getParent();
parentView.removeView(pluginFrame);
parentView.addView(pluginFrame, 0);

3.x only for now, because I haven't looked into how to do it with Vulkan yet.

@pouleyKetchoupp For this and #52320, do we want to cherry-pick them into the 3.3.x branch?
I thought only bug fixes were supposed to go in that branch, while this would fall under the new feature category.

@m4gr3d I was thinking it's small enough not to causes regressions, but you're right, since it should be just bug fixing these changes should go on 3.x only. I'll remove the tags.

Might be worth updating the doc since it's not longer limited to "desktop window"s:
                <member name="display/window/per_pixel_transparency/allowed" type="bool" setter="" getter="" default="false">
                        If [code]true[/code], allows per-pixel transparency in a desktop window. This affects performance, so leave it on [code]false[/code] unless you need it.
                </member>
                <member name="display/window/per_pixel_transparency/enabled" type="bool" setter="" getter="" default="false">
                        Sets the window background to transparent when it starts.
                </member>

Might be worth specifying which platforms this is implemented for now that it's not just desktop platforms.

I've made the last documentation updates and opened an issue for the app theme: https://github.com/godotengine/godot/issues/52725

Thanks!


About the mediapipeGraph  with a raw packet

I use the graph of facemesh at ios platform. Does the function followed only get packet when it detects the faces? Will the function not be called if no face is detected?
/// Provides the delegate with a raw packet.
@optional
- (void)mediapipeGraph:(MPPGraph *)graph
       didOutputPacket:(const mediapipe::Packet &)packet
            fromStream:(const std::string &)streamName;

How can I know if it detects no face?
thanks for your help!

i do this:
if (packet.IsEmpty()) {
        NSLog(@"packet is empty");
      return;
    }

but it doesn't print 'packet is empty'. when calls the function, the packet will not be empty?

Hello @BTLDXX-x
You would need to set the observe_timestamp_bounds variable to true. By default it is false so the packet is not returned empty. The variable is in the function argument ObserveOutputStream()

@ayushgdev thanks for your reply!

@BTLDXX-x Can we close this issue?


Missing documentation for adding valid secret

Hi @cpiehl
I tried to add an account, but I got "Invalid Secret" error message for these secrets:

h4hge9fwfcn8e4cg
Secret1234
a1s2d3f4g5h6j7k8

These are valid secrets:

This is a secret (I typed it with spaces, but it is stored without spaces)
4fwhhq43ttumxguc (I generated many random strings, and only this one is accepted)

Please add some information to README file, how to generate valid secret.

You're right, I really dropped the ball on documentation here.  "Invalid Secret" is just too vague of an error message, but trying those same keys in Google Authenticator shows why they aren't accepted:

h4hge9fwfcn8e4cg: "Key value has illegal character" when I get to 9
Secret1234: "Key value is too short"
a1s2d3f4g5h6j7k8: "Key value has illegal character" at 8

I'll update with better error messages and add the rules to README soon.

I close this issue, because it was fixed with https://github.com/cpiehl/py2fa/commit/0044dd4b9e7192d4a02242ca57df73bccce9edf0 and https://github.com/cpiehl/py2fa/commit/81867fd2317a3d170f25eb99f58cc1fb86e4ae17


Set remote tracking branch

Right now, if you push a branch that doesn't exist on the remote, it will create that new branch on the remote, but it won't set the current branch to track that

For some reason, when you do a hard reset, the tracking is fixed.
I'm trying to find the JGit equivalent to push -u

It looks like JGit doesn't support push -u, but I found a post about editing the config to set the upstream branch.

Perhaps check out: http://download.eclipse.org/jgit/site/<IP_ADDRESS>607150455-r/apidocs/org/eclipse/jgit/api/CreateBranchCommand.SetupUpstreamMode.html?

Yeah I've seen that, I was hoping to do it with some variation on the push command, but I don't think it's implemented. So I'll try this way

Sounds good


chore: bump deps

I had to replace QueueInspect(s.metadata.queueName) in rabbit with QueueDeclarePassive(s.metadata.queueName, false, false, false, false, amqp.Table{}) which in theory is equivalent as the first one has been deprecated
Checklist

[x] Commits are signed with Developer Certificate of Origin (DCO - learn more)

/run-e2e

/run-e2e rabbit

/run-e2e


detach doesn't work with userstamps

When there is an belongstomany relationship, detach/attach methods doesn't fill user stamps fields.
For example;
Auth::user()->buyerDemandActions()->detach($args['buyer_demand_id']);

Doesn't fill deleted_by in the pivot table.

Laravel pivot models don't support soft deletes.


WIP: end to end test improvement (POC ONLY)

[x] Page Object Pattern (page object and component)
[x] Log for page element if it cannot be found
[x] Random blueprint name and description
[x] Random component added into blueprint
[ ] Run test in parallel
[x] More info (step log) in test report
[x] Visual regression test (screen capture comparison)
[x] Performance improvement (~5 times faster than before)
[x] New HTML report (no electron dependency)

@martinpitt could you please review this POC if you have time? Thanks.

chrome failed, this could be a flake. But the edge failure looks more serious:
F/root/end-to-end/node_modules/fibers/future.js:313
						throw(ex);
						^

Error: No such driver
    at new RuntimeError (/root/end-to-end/node_modules/webdriverio/build/lib/utils/ErrorHandler.js:143:12)
    at Request._callback (/root/end-to-end/node_modules/webdriverio/build/lib/utils/RequestHandler.js:316:39)
    at Request.self.callback (/root/end-to-end/node_modules/request/request.js:185:22)
    at Request.emit (events.js:182:13)
    at Request.EventEmitter.emit (domain.js:442:20)
    at Request.<anonymous> (/root/end-to-end/node_modules/request/request.js:1161:10)
    at Request.emit (events.js:182:13)
    at Request.EventEmitter.emit (domain.js:442:20)
    at IncomingMessage.<anonymous> (/root/end-to-end/node_modules/request/request.js:1083:12)
    at Object.onceWrapper (events.js:273:13)

Sure, you can use cp -a to preserve symlinks. I'm just concerned because npm install takes several minutes, it compiles stuff, etc.

Thanks @martinpitt. end-to-end/node_modules was removed from local-clean of make file.


WSL2 --mount is caching/buffering with no chance of flushing immediately

Hi all,
As the title suggests this seems to be important feature request.
I want to mount ext2 partition which is inaccessible from Windows. Yes, you discovered the --mount option but it is lacking the ability to disable caching. If I edit text file from wsl shared path from windows it does not get reflected until some kind of buffer fills up. Because I edit only text files this buffer will fill up in a year time in order to flush it to the disk - just unusable. That's why I tried to mount the drive from within WSL with the mount statement (plus -o sync) but since the disk in windows is detected as unformatted it wants me to initialize it first before be able to assign a drive letter (which will format the disk unwantedly). A drive letter which is a must inside WSL mount.
So I am stuck with the --mount option without a chance to remove the buffer/cache.
Does anyone know if it is possible to use mount() which is as I can see the base function behind the linux mount and use it, by providing hard disk address etc but not drive letter?
I played around with (linux) mount statement and a hacky driver that enforces a drive letter in windows but after trying to apply it I get ERROR: MountWithRetry:306: mount(drvfsa, /mnt/e, 9p, 0x00000010, cache=mmap,msize=262144,trans=virtio,aname=drvfs;path=e:;uid=0;gid=0;metadata;symlinkroot=/mnt/) failed: Invalid argument
which makes me think that mount really can accept hard disk address (in this case broken from hacky driver - 0x00000010) one ?
Thanks

@Svetoslav92: You can specify mount options via --options. See: Specifying mount options

Sadly the 'sync' option isn't supported at the moment so another way you can do this is via:
sudo mount -o remount,sync <device>

After mounting the disk

"isn't supported at the moment" - well that's why it is important feature request lol

I didn't had the chance to test it but I trust that it works this way as it seems logical.
The bigger issue is now that my VirtualBox doesn't work as expected because of WSL2. You can close this if you wish or retain it as feature request.


[Background Media]: QA: Focus is not visible on 'Play' button

Engineering info:

Innovation Team engineer: @andy-blum
Innovation Team JIRA Ticket: https://jsw.ibm.com/browse/HC-2490
DPO consulting engineer: N/A

Description
Page Element:
Play button
Issue Description:
Keyboard focus is not visible clearly on the Play button
Expected:
Keyboard focus should be visible clearly on the button.
User Impact:
When focus indicator for the page element is not clear, the user would have difficulty in identifying the currently focused element. this impacts Keyboard only users and people who with low vision
Component(s) impacted
Background Media
Browser
Firefox
Carbon for IBM.com version
v1.35.0-rc.0
Severity
Severity 3 = The problem is visible or noticeable to users but does not impede the usability or functionality. Affects minor functionality, has a workaround.
Application/website
Carbon for IBM.com
Package
@carbon/ibmdotcom-react
CodeSandbox example
https://carbon-design-system.github.io/carbon-for-ibm-dotcom/next/web-components-react
Steps to reproduce the issue (if applicable)
No response
Release date (if applicable)
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[ ] I checked the current issues for duplicate issues

The Background media design specs do not have a focus state to work off of. Putting together a design exploration story to solve for the contrast issue on the focus state.

@andy-blum @proeung - I've updated the Background media design specs to define the focus state for the White theme. In the PDF, the relevant page is 13 and the info is also screencapped here:

If you have any questions, please let me know!

@RichKummer Thanks for updating the specs! We'll go ahead and move this issue into this sprint, now that we have the proper specs from design.

@IgnacioBecerra Double check change log.

@Gopi916 Staging storybook was slightly outdated -- the fix should be showing on staging now.


chore: document available manifests in readme

Describe your changes
Issue ticket number and link
Checklist before requesting a review

[x] I updated CHANGELOG.MD with a description of my changes
[x] If the change was to a module, I ran the code validation script (scripts/validate.sh)
[x] If the change was to a module, I have added thorough tests
[x] If the change was to a module, I have added/updated the module's README.md
[x] If a module was added, I added a reference to the module to the repository's README.md
[x] I verified that my code deploys successfully using seedfarmer apply

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: de4f258dca66c208f32cf2d70754fbe61eeb1f33
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: AIOpsModuleTestsInfrastruct-doMLXEYsnmxr
Commit ID: 7dba44a56e7c348abdca49b65227c83bc028f86a
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


npm run dev fails with this error - Error: error building site: process: readAndProcessContent: "/home//hugoplate/content/english/404.html:1:1": unmarshal failed: invalid character '{' looking for beginning of object key string

What is your Hugo Extended Version
0.138.0-ad82998d54b3f9f8c2741b67356813b55b3134b9+extended
What is your Go Version
go1.23.3 linux/amd64
What is your Node.js Version
22.11.0
What is your Operating System
ubuntu / zorin
Check for Existing Issues

[X] I have searched and found no relevant issues.

Expected Behavior
hugo -D server starts
Steps to Reproduce
clone hugoplate repo, cd into directory, run first 3 commands on github instructions (project setup, install deps, dev command) sections.
Code Reproduction URL
No response
Additional Information
Running "npm run dev" fails with this error - "Error: error building site: process: readAndProcessContent: "/home//hugoplate/content/english/404.html:1:1": unmarshal failed: invalid character '{' looking for beginning of object key string"

Hey @ll3N1GmAll, we have updated the theme, hopefully this issue is resolved. please check it and let me know. thanks


[plutus-exe] Added examples

Adds example types and programs to plutus-exe. There are two commands
~/code/iohk/plutus$ plc example --available
succInteger : (all s (size) (fun [(con integer) s] [(con integer) s]))
unit :: (type)
unitval : (all a (type) (fun a a))
bool :: (type)
true : (all a (type) (fun a (fun a a)))
false : (all a (type) (fun a (fun a a)))
churchNat :: (type)
churchZero : (all r (type) (fun r (fun (fun r r) r)))
churchSucc : (all r (type) (fun r (fun (fun r r) r)))

and
~/code/iohk/plutus$ plc example --single unitval
(program 1.0.0
  (abs a (type) (lam x a x))
)

(where unitval can be any "available" name). There are intentionally no available tests with recursive types inside, because the RV team got confused (and rightfully so) about our partial implementation of elimination contexts in the spec and my advise was "just ignore recursive types for now".
It is nice to package example programs together with type checking and evaluation machineries, because we change syntax from time to time, so it's nice to have a "show me the current syntax" command, and because we can play with things like this now:
plc example -s unitval | plc typecheck --stdin

Maybe it's even worth to add this to our CI ("whatever plc example returns must be type checkable").

Comments addressed.