Add more item methods

Now that lists are as convienent to create as arrays with the List.of() pattern, some methods I've added can become useful, and avoid an ugly conversion to an array to add lines.
I also took the opportunity to make an isolated modification on a under-specified return type that prevented method chaining.

These changes can wait, there is no urge to bump the version ;)

Thanks!


Changes with update to React 4

typos and fixes to adapt to react and reactRouter changes

Good stuff !! :) thanks


Fix interactive mode stripping end of message

Due to the stream rate limit there was a chance we'd not print the latest 2 tokens of the message.

Thank you!


NwRfcNet.RfcException: Conversion error between two character sets.

When i try to open connection, i get this error:
NwRfcNet.RfcException: Conversion error between two character sets.
Could you explain why i get it and any ideas how to fix it.

Are you trying to open a connection to a non Unicode SAP system ?

Hi. @anasvikh  that i've faced that once before. The reason is that our .net client's sap credentials was different from what it should have been such as my password. Somehow the password was changed by our sap team without our knowledge. Once we had the new password and changed our clients credentials it has worked like a charm.


Enable recommended set of GCC/Clang warnings and hardning flags

A (massive) dump of warnings generated by gcc/clang with this follows.

I find -Wcast-align particularly concerning for portability to platforms where unaligned reads throw traps.
-Wstrict-overflow looks real too
-Wtraditional-conversion might be too much noise I'll have to look at that more closely
-Wreserved* shows you disregard the C standard quite hard ;)

Compiling with { make clean; make; } && { make clean; make CC=clang;; } locally should yield nicer colored output.
Dump: https://gist.github.com/DanielG/422d495c4bc90bb9a74e5804e2a6baec
--Daniel

Hi,
I find the set of flags you suggested to be a bit too extreme for this kind of project (this is a hobby open-source project after all). Being interested, I went through Debian build logs of a few well-known server programs (nginx, lighttpd, proftpd, ...), and found out that none of them had similar sets of flags enabled (if I haven't missed anything, some of them even don't seem to use -Wall).
Nevertheless, I still implemented at least some of them in 4af0abce99dad2a2e9854280dafcd1c219219fb3 - when I tried to implement them all, I came across some "weird behaviour", and wrapping pieces of code in #pragma GCC diagnostic ... does not seem to be a good strategy going forward.
I am still investigating what to do with the -Wcast-align=strict warnings, as I understand that they could be the cause of slow-downs on some platforms. While I can see the solution for some of them, there seem to be cases where it would be necessary to copy stuff around (there seems to be a somewhat similar problem in the kernel), which would penalize platforms where unaligned memory accesses are not a huge issue, and it turns out that the most commonly used platforms today (x86-64, ARM64) fall into that category. Also, I am probably going to add some/all of the suggested -f hardening flags in the (hopefully near) future.
Leaving this PR open for now.
-- Vít

You shouldn't use established C projects as a reference. Change is hard in a large project, but new projects should start on the right foot.
Frankly #pragma overrides is absoluteley the way to go. They make it very clear and obvious where the problem spots are that need improvement (so you don't have to fix them all at once) and having the largest set of warning options enabled means no one can sneak problems into the project going forward without it being obvious in the patch due to the #pragma sprinkles.

The set of hardening flags was significantly extended in 0e89cde96f839c0c6e979cb75cb59d933653cbb7 to the point where I consider this problem to be resolved. The set is not completely identical to the one suggested in this pull request; one reason being that I wanted the project to be compilable with the default flags even on older and/or unusual platforms (I used GCC 8.4.0 for MIPS32 OpenWRT for reference).
So, a few notes:

some additional flags (not suggested in this PR) were added, notably -Werror=implicit-function-declaration and -Wdate-time
-Wshadow and -Wstrict-prototypes were prefixed with -Werror=...
-fanalyzer and -Warith-conversion were omitted as they are not supported by older versions of GCC
-Wtraditional-conversion was omitted because it indeed seems to cause too much noise, mainly because it does not seem to like the bool type (from the standard stdbool.h header)
while a lot of pieces of code that caused warnings were fixed, there is still quite a substantial amount of spots where GCC ignore pragmas were used; all of these spots have explanatory comments above them
some of the warning flags were causing false positives - notably here and here
regarding the alignment warnings caused by -Wcast-align=strict - after a careful inspection of the problem spots, there does not seem to be a place in the code where unaligned accesses could occur as of now (if I had not missed anything); to achieve this state of things, a lot of spots were fixed (in various ways), but there are some spots where the "guaranteed alignment" is not at all obvious - these spots were marked for improvement with // IMPROVE: ... comments
-Werror was removed from the default set of flags, although it can be enabled using certain environment variables


Add documentation for creating a new addon

Tested the link locally and it looks like it's working! (Just ran the app with ember server and clicked on it. Not sure if that means it'll work in prod though

Netflify preview also looking good: https://deploy-preview-113--ember-cli-guides.netlify.com/release/basic-use/cli-commands/


added mocked tests for databases - part 4

Refer Issue : #207
Add tests for databases.patch_config, databases.reset_auth, databases.update_cluster_size, databases.update_firewall_rules, databases.update_maintenance_window, databases.online_migration, databases.update_region, databases.update_sql_mode
for databases.promote_replica, databases.update_connection_pool,
databases.update_major_version tests were already there.

have a look at this PR, I guess this is ready to merge!

The lint failure can be ignored. Add # pylint: disable=too-many-lines at the top of your file.

The pushed branch have # pylint: disable=too-many-lines at the top but still failing lint tests

The pushed branch have # pylint: disable=too-many-lines at the top but still failing lint tests

it currently has # pylint: disable=line-too-long, you'll need to add # pylint: disable=too-many-lines. They're very similar 😆

The pushed branch have # pylint: disable=too-many-lines at the top but still failing lint tests

it currently has # pylint: disable=line-too-long, you'll need to add # pylint: disable=too-many-lines. They're very similar 😆

yeah didn't notice 🤣🤣🤣


moment().fromNow() "a few seconds ago"

moment().fromNow() is returning "a few seconds ago".
Why not "just now" ?

@timrwood thanks for your tips

it's actually moment.langData('en')._relativeTime.s = "just now" if you want to replace said string.
I am humanizing dates (without time information), so changing _relativeTime.s to the equivalent of "today" for all locales was my solution.

fromNow(true) returns "2 minutes ago","2 hours ago","a few seconds ago".
How can you do something like "2m" or "2h" or "2s" or "2d"?.

@puneet94 You can update your locale strings with https://momentjs.com/docs/#/customization/relative-time/

FWIW, I was able to apply "just now" using 2.12.0 by specifying a function for past:
moment.updateLocale('en', {
    relativeTime : {
        past: function(input) {
          return input === 'just now'
            ? input
            : input + ' ago'
        },
        s  : 'just now',
        future: "in %s",
        ss : '%d seconds',
        m:  "a minute",
        mm: "%d minutes",
        h:  "an hour",
        hh: "%d hours",
        d:  "a day",
        dd: "%d days",
        M:  "a month",
        MM: "%d months",
        y:  "a year",
        yy: "%d years"
    }
});

@richardszalay what date format are you using with this and how do you apply this?
I have a date string time =<PHONE_NUMBER>474,
and want to display it within a text tag
<Text>{time}</Text>

moment().fromNow() is returning "in 2 minutes".
Shouldn't it be "2 minutes ago"?


spotube: darwin: use makeWrapper instead of ln

Description of changes

https://github.com/NixOS/nixpkgs/pull/297751#issuecomment-2013027739
Or nix run nixpkgs#spotube would be stuck forever.
❯ nix run nixpkgs#spotube
^C⏎

nixpkgs on  spotube took 4m53s

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

For my understanding, is this bit of nixpkgs docs still accurate, or has the darwin situation changed?

Using the makeBinaryWrapper implementation is usually preferred, as it creates a tiny compiled wrapper executable, that can be used as a shebang interpreter. This is needed mostly on Darwin, where shebangs cannot point to scripts, due to a limitation with the execve-syscall.

They do almost the same things. But when it comes to Darwin, it's safer to use makeBinaryWrapper.

It's still makeWrapper.

https://github.com/NixOS/nixpkgs/blob/0f150faf98c9e5d9709bfb63fc9c23f45399baef/pkgs/build-support/setup-hooks/make-binary-wrapper/make-binary-wrapper.sh#L37
I believe makeWrapper and makeBinaryWrapper are the same

It depends on which hook was added to nativeBuildInputs, and you can see by the filename (make-binary-wrapper.sh) that this you linked the makeBinaryWrapper implementation of the bash function makeWrapper, while what you had written originally in the PR was using the makeWrapper impl of the bash function makeWrapper, which is different:
https://github.com/NixOS/nixpkgs/blob/d44b87d86f64b756e65cbf89506ca738a7204788/pkgs/build-support/setup-hooks/make-wrapper.sh#L36


Use embeddable ocdav go micro service

We now use the reva pgk/micro/ocdav package that implements a go micro compatible version of the ocdav service.
Requires https://github.com/cs3org/reva/pull/2665 and uses a replace until it is merged.
next steps I do not see as part of this PR:

[ ] extract ocdav into a dedicated extension
[ ] make all debug endpoints use micro http service and discover them via the micro registry

:boom: Acceptance test localApiTests-apiSpaces-ocis failed. Further test are cancelled...


Bug in ARMT?

https://github.com/RodkinIvan/associative-recurrent-memory-transformer/blob/aa145de9f50c08778e2579a2130b3db0d379bce5/modeling_amt/language_modeling.py#L157
Hi,
Thanks for the code.
Is this a bug? Since each layer won't have any connection with other layers.
Should it be [i-1] ?
@RodkinIvan

Hello,
Thank you for your interest in ARMT.
No, it's not a bug. Note that you refer to the __init__ method. Here we wrap each transformer layer with associative memory. Since we substituted all the layers with the wrapped layers, during the forward, transformer will call the wrapped ones, and therefore, before calling each layer, it will associate with the association matrix, and after calling each layer, it will update the associative state.
So, it should be [i] because we wrap the particular layer.
Feel free to ask if you need any further clarifications.
@TachikakaMin


soc: esp32: add support to zephyr-sdk, newlibc and cpp

This PR adds changes in all Espressif SoCs in order to allow newlibc and cpp build.
This also updates hal_espressif to enable usage of zephyr-sdk toolchain (after https://github.com/zephyrproject-rtos/sdk-ng/pull/426).
Current toolchain is still working and documentation will only be updated when zephyr-sdk gets proper toolchain in place.

DNM until the new Zephyr SDK is available in the CI.

DNM until the new Zephyr SDK is available in the CI so that this can be fully tested in the CI.

@stephanosio No reason to DNM this. Everything works as is using custom toolchain. Well, newlibc and cpp does not work, but I find it ok to merge this PR.

@stephanosio No reason to DNM this. Everything works as is using custom toolchain. Well, newlibc and cpp does not work, but I find it ok to merge this PR.

The premise for merging a PR is that it works. The green CI in this case is very misrepresentative of the status quo because it is silently skipping all tests for the esp32 board due to the espressif toolchain being not available in the CI image, and it is not running any tests with the Zephyr SDK either because, obviously, the Zephyr SDK release that supports ESP32 is not available at this time and, more importantly, you did not specify - zephyr  for the toolchains in the board esp32.yaml.

@sylvioalves Also what about esp32c3 (RISC-V)? Can riscv64-zephyr-elf toolchain from the Zephyr SDK be used to build the binaries for it?

A few issues that need to be addressed:

Need to add the zephyr toolchain to the list of the supported toolchains for the relevant boards so that twister builds the ESP32 tests using the Zephyr SDK in the CI.
https://github.com/zephyrproject-rtos/zephyr/blob/adc901aa6a39caffd7971ff99456b26414cd3793/boards/xtensa/esp32/esp32.yaml#L5-L6
https://github.com/zephyrproject-rtos/zephyr/blob/adc901aa6a39caffd7971ff99456b26414cd3793/boards/xtensa/esp32s2_saola/esp32s2_saola.yaml#L5-L6

Plus the ESP32's little brother:
https://github.com/zephyrproject-rtos/zephyr/blob/adc901aa6a39caffd7971ff99456b26414cd3793/boards/xtensa/esp_wrover_kit/esp_wrover_kit.yaml#L5-L6

A few issues that need to be addressed:

Need to add the zephyr toolchain to the list of the supported toolchains for the relevant boards so that twister builds the ESP32 tests using the Zephyr SDK in the CI.
https://github.com/zephyrproject-rtos/zephyr/blob/adc901aa6a39caffd7971ff99456b26414cd3793/boards/xtensa/esp32/esp32.yaml#L5-L6
https://github.com/zephyrproject-rtos/zephyr/blob/adc901aa6a39caffd7971ff99456b26414cd3793/boards/xtensa/esp32s2_saola/esp32s2_saola.yaml#L5-L6

Plus the ESP32's little brother, I think:
https://github.com/zephyrproject-rtos/zephyr/blob/adc901aa6a39caffd7971ff99456b26414cd3793/boards/xtensa/esp_wrover_kit/esp_wrover_kit.yaml#L5-L6

Heltec board.

By the way, it might be worth trying out this + the SDK PR with samples/modules/tflite-micro/hello_world. It builds and exercises Google's C++ TensorFlow Lite Micro library, which probably uses C++ features a lot more extensively than the synchronization sample. I can understand if supporting TFLM is a low priority for Espressif, but theoretically the sample should build and run on all boards that support C++ (it doesn't exercise any hardware). I can confirm it works on all QEMUs except qemu_nios2 (and native_posix)... for some reason... I need to file issues for those...
(Note that the other TFLM sample, magic_wand, works only on one specific board.)

By the way, it might be worth trying out this + the SDK PR with samples/modules/tflite-micro/hello_world. It builds and exercises Google's C++ TensorFlow Lite Micro library, which probably uses C++ features a lot more extensively than the synchronization sample. I can understand if supporting TFLM is a low priority for Espressif, but theoretically the sample should build and run on all boards that support C++ (it doesn't exercise any hardware). I can confirm it works on all QEMUs except qemu_nios2 (and native_posix)... for some reason. I need to file issues for those... and possibly expand the platform_allow for that test...
(Note that the other TFLM sample, magic_wand, works only on one specific board.)

@laurenmurphyx64 tested with ESP32, ESP32S2 and ESP32C3. All working good:
I (29) boot: ESP-IDF release/v4.3-149-gddfa61bcb0 2nd stage bootloader
I (29) boot: compile time 16:32:45
I (30) boot: chip revision: 1
I (33) boot_comm: chip revision: 1, min. bootloader chip revision: 0
I (40) boot.esp32: SPI Speed      : 40MHz
I (45) boot.esp32: SPI Mode       : DIO
I (50) boot.esp32: SPI Flash Size : 4MB
I (54) boot: Enabling RNG early entropy source...
I (60) boot: Partition Table:
I (63) boot: ## Label            Usage          Type ST Offset   Length
I (70) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (78) boot:  1 phy_init         RF data          01 01 0000f000 00001000
I (85) boot:  2 factory          factory app      00 00 00010000 00100000
I (93) boot: End of partition table
I (97) boot_comm: chip revision: 1, min. application chip revision: 0
I (104) esp_image: segment 0: paddr=00010020 vaddr=00000020 size=0001ch (    28)
I (113) esp_image: segment 1: paddr=00010044 vaddr=3ffb0000 size=00a70h (  2672) load
I (122) esp_image: segment 2: paddr=00010abc vaddr=3ffb0a70 size=00270h (   624) load
I (130) esp_image: segment 3: paddr=00010d34 vaddr=40080000 size=0332ch ( 13100) load
I (143) esp_image: segment 4: paddr=00014068 vaddr=00000000 size=0bfd0h ( 49104)
I (165) esp_image: segment 5: paddr=00020040 vaddr=3f400040 size=0db58h ( 56152) map
I (186) esp_image: segment 6: paddr=0002dba0 vaddr=00000000 size=02478h (  9336)
I (190) esp_image: segment 7: paddr=00030020 vaddr=400d0020 size=39c00h (236544) map
I (283) boot: Loaded app from partition at offset 0x10000
I (283) boot: Disabling RNG early entropy source...
*** Booting Zephyr OS build zephyr-v3.0.0-884-g1fdd82f7590b  ***
x_value: 1.0*2^-127, y_value: 1.0*2^-127

x_value: 1.2566366*2^-2, y_value: 1.4910772*2^-2

x_value: 1.2566366*2^-1, y_value: 1.1183078*2^-1

x_value: 1.8849551*2^-1, y_value: 1.677462*2^-1

x_value: 1.2566366*2^0, y_value: 1.9316229*2^-1

x_value: 1.5707957*2^0, y_value: 1.0420598*2^0

x_value: 1.8849551*2^0, y_value: 1.9146791*2^-1

x_value: 1.0995567*2^1, y_value: 1.6435742*2^-1

x_value: 1.2566366*2^1, y_value: 1.0674761*2^-1

x_value: 1.4137159*2^1, y_value: 1.8977352*2^-3

@sylvioalves Also what about esp32c3 (RISC-V)? Can riscv64-zephyr-elf toolchain from the Zephyr SDK be used to build the binaries for it?

@stephanosio Yes, it works. Twister complains about 2 tests that I had fixed a few days ago and will submit the changes as well.

@sylvioalves Also what about esp32c3 (RISC-V)? Can riscv64-zephyr-elf toolchain from the Zephyr SDK be used to build the binaries for it?

Yes, it can.

@stephanosio This should be final update. PTAL again.

This can be merged when a new Zephyr SDK release with the ESP32 support is available and the CI passes.

Zephyr SDK 0.14.1, which supports ESP32, is now available in the CI.
Rebased to run tests with the new SDK.

@stephanosio CI seems not able to perform cloning of the hal_espressif submodules as from below. Those submodules are required as a few source code and mostly those wifi/ble binaries blobs comes in place. Is there anything we can do to evaluate this?
-- Found Git: /usr/bin/git (found version "2.25.1")
-- Initialising new submodule components/bootloader/subproject/components/micro-ecc/micro-ecc...
Cloning into '/__w/zephyr/modules/hal/espressif/components/bootloader/subproject/components/micro-ecc/micro-ecc'...
Submodule path 'components/bootloader/subproject/components/micro-ecc/micro-ecc': checked out 'd037ec89546fad14b5c4d5456c2e23a71e554966'
-- Initialising new submodule components/bt/controller/esp32c3-bt-lib...
Submodule 'components/bt/controller/esp32c3-bt-lib' (https://github.com/espressif/esp32c3-bt-lib) registered for path 'components/bt/controller/esp32c3-bt-lib'
Cloning into '/__w/zephyr/modules/hal/espressif/components/bt/controller/esp32c3-bt-lib'...
Submodule path 'components/bt/controller/esp32c3-bt-lib': checked out '12f00c45ce9c8cf9a9b2e607b4954f12d4191ffb'
-- Initialising new submodule components/bt/controller/lib_esp32...
Submodule 'components/bt/controller/lib_esp32' (https://github.com/espressif/esp32-bt-lib.git) registered for path 'components/bt/controller/lib_esp32'
Cloning into '/__w/zephyr/modules/hal/espressif/components/bt/controller/lib_esp32'...
Submodule path 'components/bt/controller/lib_esp32': checked out 'ec61ca3caa64874e11f39a92654b4160bb5db06e'
-- Initialising new submodule components/esp_wifi/lib...
fatal: Needed a single revision
Unable to find current revision in submodule path 'components/esp_wifi/lib'
CMake Error at /__w/zephyr/modules/hal/espressif/tools/cmake/git_submodules.cmake:48 (message):
  Git submodule init failed for components/esp_wifi/lib

CI seems not able to perform cloning of the hal_espressif submodules as from below.

This would not be just a problem with the CI, but with the west.yml itself.
If I understand correctly, you need to specify submodules: true for the west update to fetch the submodules in the module repository.

CI seems not able to perform cloning of the hal_espressif submodules as from below.

This would not be just a problem with the CI, but with the west.yml itself.
If I understand correctly, you need to specify submodules: true for the west update to fetch the submodules in the module repository.
p.s. was it a deliberate decision to not add submodules: true in the Zephyr main west.yml since that would cause west update to take longer for everyone? we could technically add west espressif update in the CI workflows, but that is a very ugly solution in my opinion.

@stephanosio Yes, reason that it isn't in there already is due to the time it takes to sync. I have updated this PR adding the submodule to test CI.
What would be the recommendation for the submodules? Perhaps we could add some custom vendor file that needs to be run in CI in a way "no ugly way". What do you think?

What would be the recommendation for the submodules? Perhaps we could add some custom vendor file that needs to be run in CI in a way "no ugly way".

@mbolivar-nordic What do you think we should do here?

Can you confirm the failure? It seems not esp32 related:

c5b59282d6bcbcc5eedaf29b386c90c77036440b is the offending commit.

Can you confirm the failure? It seems not esp32 related:

c5b5928 is the offending commit.

I consider then CI has passed. I'll trigger again after that gets fixed. So we are pending the submodules issue, right?

So we are pending the submodules issue, right?

Yes.

So wait, am I hearing that you want to fetch some submodules that contain binary blobs?

So wait, am I hearing that you want to fetch some submodules that contain binary blobs?

Until now, west espressif update is the documented command necessary to retrieve Wifi/BT submodules/binary blobs.
However, having Espressif running in CI also requires that. So we want to figured out if there is a solution for that. Let's continue on #infrastructure discord channel.

Removed last submodules commit and rebased.

@sylvioalves As per https://github.com/zephyrproject-rtos/hal_espressif/pull/111#issuecomment-1119029094, should this PR be marked as "ready for review?"

@sylvioalves As per zephyrproject-rtos/hal_espressif#111 (comment), should this PR be marked as "ready for review?"

Now yes, I was waiting CI to pass before making it ready.

Latest changes are:

Updated documentation to meet new toolchain usage.
Added ignore tags in each ESP32 boards.
Update west.yml to bring HAL changes related to submodules

Only rebase due to <zephyr/... I think this should be merged before #45517


[CI-test] jekyll: Update the dependencies

Just an attempt to reproduce, analyze, and fix an evaluation error with @GrahamcOfBorg.

@grahamcofborg eval

Success on x86_64-linux (full log)
Partial log (click to expand)
shrinking RPATHs of ELF executables and libraries in /nix/store/jy8ivs2v4r9ncvwjdji5nvl2mvnrgr9s-ruby2.4.3-jemoji-0.9.0
checking for references to /build in /nix/store/4byicm79xc8lw5nkmrfv6cdw5bp0iphr-ruby2.4.3-jekyll-sitemap-1.2.0...
shrinking RPATHs of ELF executables and libraries in /nix/store/554h1d7k9yy5d5bkh672zr739ari1nmn-ruby2.4.3-jekyll-mentions-1.2.0
patching script interpreter paths in /nix/store/jy8ivs2v4r9ncvwjdji5nvl2mvnrgr9s-ruby2.4.3-jemoji-0.9.0
checking for references to /build in /nix/store/jy8ivs2v4r9ncvwjdji5nvl2mvnrgr9s-ruby2.4.3-jemoji-0.9.0...
patching script interpreter paths in /nix/store/554h1d7k9yy5d5bkh672zr739ari1nmn-ruby2.4.3-jekyll-mentions-1.2.0
checking for references to /build in /nix/store/554h1d7k9yy5d5bkh672zr739ari1nmn-ruby2.4.3-jekyll-mentions-1.2.0...
building '/nix/store/76gz6q0npppvcdixn3b152l84wcjhr1j-jekyll-3.7.2.drv'...
created 134 symlinks in user environment
/nix/store/12rkf8m2n59drsvi911nlxsajqmv7rx6-jekyll-3.7.2

Success on aarch64-linux (full log)
Partial log (click to expand)
/nix/store/wa5rsziivalch5qcgyxd2rybxfcix4gz-ruby2.4.3-jekyll-sitemap-1.2.0/lib/ruby/gems/2.4.0/gems/jekyll-sitemap-1.2.0/script/cibuild: interpreter directive changed from "/bin/sh" to "/nix/store/shjmvsnwrlg7rd8m0kzgpygqq4if312z-bash-4.4-p12/bin/sh"
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/4xa27c047dmgzzpabb7ndf4cagz57wwm-ruby2.4.3-jemoji-0.9.0
patching script interpreter paths in /nix/store/4xa27c047dmgzzpabb7ndf4cagz57wwm-ruby2.4.3-jemoji-0.9.0
/nix/store/wa5rsziivalch5qcgyxd2rybxfcix4gz-ruby2.4.3-jekyll-sitemap-1.2.0/lib/ruby/gems/2.4.0/gems/jekyll-sitemap-1.2.0/script/bootstrap: interpreter directive changed from "/bin/sh" to "/nix/store/shjmvsnwrlg7rd8m0kzgpygqq4if312z-bash-4.4-p12/bin/sh"
checking for references to /build in /nix/store/4xa27c047dmgzzpabb7ndf4cagz57wwm-ruby2.4.3-jemoji-0.9.0...
checking for references to /build in /nix/store/wa5rsziivalch5qcgyxd2rybxfcix4gz-ruby2.4.3-jekyll-sitemap-1.2.0...
building '/nix/store/ql352h48y21wcirhha35hx1b05gjmm6p-jekyll-3.7.2.drv'...
created 134 symlinks in user environment
/nix/store/84p6mnccvlz8x6a72f3dvkypffhhl9a6-jekyll-3.7.2

Success on aarch64-linux (full log)
Partial log (click to expand)
/nix/store/84p6mnccvlz8x6a72f3dvkypffhhl9a6-jekyll-3.7.2

Success on x86_64-linux (full log)
Partial log (click to expand)
checking for references to /tmp/nix-build-ruby2.4.3-jekyll-mentions-1.2.0.drv-0 in /nix/store/554h1d7k9yy5d5bkh672zr739ari1nmn-ruby2.4.3-jekyll-mentions-1.2.0...
Successfully installed jemoji-0.9.0
1 gem installed
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/jy8ivs2v4r9ncvwjdji5nvl2mvnrgr9s-ruby2.4.3-jemoji-0.9.0
patching script interpreter paths in /nix/store/jy8ivs2v4r9ncvwjdji5nvl2mvnrgr9s-ruby2.4.3-jemoji-0.9.0
checking for references to /tmp/nix-build-ruby2.4.3-jemoji-0.9.0.drv-0 in /nix/store/jy8ivs2v4r9ncvwjdji5nvl2mvnrgr9s-ruby2.4.3-jemoji-0.9.0...
building path(s) ‘/nix/store/12rkf8m2n59drsvi911nlxsajqmv7rx6-jekyll-3.7.2’
created 134 symlinks in user environment
/nix/store/12rkf8m2n59drsvi911nlxsajqmv7rx6-jekyll-3.7.2

Success on aarch64-linux (full log)
Partial log (click to expand)
/nix/store/84p6mnccvlz8x6a72f3dvkypffhhl9a6-jekyll-3.7.2

Success on x86_64-linux (full log)
Partial log (click to expand)
/nix/store/12rkf8m2n59drsvi911nlxsajqmv7rx6-jekyll-3.7.2

Success on x86_64-linux (full log)
Partial log (click to expand)
/nix/store/12rkf8m2n59drsvi911nlxsajqmv7rx6-jekyll-3.7.2

Success on aarch64-linux (full log)
Partial log (click to expand)
/nix/store/84p6mnccvlz8x6a72f3dvkypffhhl9a6-jekyll-3.7.2


Chats in new windows

You can create a additional option with allow to open new conversations in new windows.
If you want to get friends list you have to add
display: none !important;
to '_4bl9' CSS3 class.
If you want to get the conversation you have to add
display: none !important;
to '_1enh _4bl7' CSS3 class.
And just open site with this styles in new windows.

vote +1


Timezone support?

First off, great work on this.
Is there an easy way to incorporate timezones into this? Would like to be able to tack on a time-zone="America/Los_Angeles" attribute and have the times be formatted to that particular timezone.

From the bootstrap daterangepicker docs I see there's timeZone, which looks like the right choice.
I'm setting timeZone: "+1:00", as per the docs, but the date isn't respecting the formatting when a daterange change happens. Here is my config:
    $scope.daterangePickerOpts =
      ranges:
        "Today": [
          "2015-01-06T19:58:54.987Z",
          "2015-01-06T19:58:54.987Z"
        ],
       "Yesterday": [
         "2015-01-05T19:58:54.987Z",
         "2015-01-05T19:58:54.987Z"
       ],
       "Past 3 days": [
         "2015-01-03T19:58:54.987Z",
         "2015-01-06T19:58:54.987Z"
       ]
      format: 'ddd, MMM. Do, hh:mma z'
      timeZone: "+1:00"

Initially it's in the correct format that I'm looking for:

On a change however, it reverts to the default (local) timezone (not what I want):

Any ideas on how to ensure that the timeZone formatting is always respected?

An additional example of the issue:
Correct:

But incorrect, after user selects a different daterange:

I found the same issue.  When you specify custom options _init is called twice and the second call erases all your options.
I changed this:
opts = angular.extend({}, dateRangePickerConfig, customOpts);
to this:
opts = angular.extend({}, dateRangePickerConfig, customOpts, $scope.opts);
and commented out this watch block: $scope.$watch('opts', function(newOpts) {..}
This means options aren't dynamic, but I didn't really need that.

Thanks, that sounds reasonable.

I want my options to be dynamic as I add default ranges depending on user input.
BUT
I also want the datapicker to display my times in UTC time even if that is not my local time.
How do I do this ?


Rebooting and trying to bring domain up results in: `default_pool_name': No storage pools are defined

Hi all,
I've just created a machine with vagrant and libvirt. Halted the guest (with vagrant halt), rebooted my host machine and after trying to bring up guest machine again (with vagrant up) I get the following error message:
rafaelri@samsung550p:/var/vagrant/odk$ vagrant up db
Bringing machine 'db' up with 'libvirt' provider...
==> db: Starting domain.
==> db: Waiting for domain to get an IP address...
==> db: Waiting for SSH to become available...
==> db: Creating shared folders metadata...
==> db: Removing domain...
/home/rafaelri/.vagrant.d/gems/gems/fog-1.25.0/lib/fog/libvirt/models/compute/volume.rb:93:in `default_pool_name': No storage pools are defined (Fog::Errors::Error)
	from /home/rafaelri/.vagrant.d/gems/gems/fog-1.25.0/lib/fog/libvirt/models/compute/volume.rb:31:in `initialize'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-core-1.25.0/lib/fog/core/collection.rb:112:in `new'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-core-1.25.0/lib/fog/core/collection.rb:112:in `new'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-core-1.25.0/lib/fog/core/collection.rb:99:in `block in load'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-core-1.25.0/lib/fog/core/collection.rb:98:in `each'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-core-1.25.0/lib/fog/core/collection.rb:98:in `load'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-1.25.0/lib/fog/libvirt/models/compute/volumes.rb:11:in `all'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-1.25.0/lib/fog/libvirt/models/compute/server.rb:134:in `block in volumes'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-1.25.0/lib/fog/libvirt/models/compute/server.rb:134:in `map'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-1.25.0/lib/fog/libvirt/models/compute/server.rb:134:in `volumes'
	from /home/rafaelri/.vagrant.d/gems/gems/fog-1.25.0/lib/fog/libvirt/models/compute/server.rb:85:in `destroy'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/destroy_domain.rb:31:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/forward_ports.rb:193:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/connect_libvirt.rb:18:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builder.rb:116:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `block in run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/util/busy.rb:19:in `busy'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/call.rb:53:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/config_validate.rb:25:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builder.rb:116:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `block in run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/util/busy.rb:19:in `busy'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `run'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/wait_till_up.rb:90:in `terminate'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/wait_till_up.rb:81:in `recover'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:67:in `block in recover'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:64:in `each'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:64:in `recover'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:53:in `rescue in call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:28:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/forward_ports.rb:30:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/wait_till_up.rb:73:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/start_domain.rb:26:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/synced_folders.rb:84:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/synced_folder_cleanup.rb:28:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/synced_folders/nfs/action_cleanup.rb:25:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/prepare_nfs_valid_ids.rb:12:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/create_networks.rb:76:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-cachier-1.1.0/lib/vagrant-cachier/action/install_buckets.rb:14:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/provision.rb:80:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-cachier-1.1.0/lib/vagrant-cachier/action/configure_bucket_root.rb:20:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builder.rb:116:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `block in run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/util/busy.rb:19:in `busy'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/call.rb:53:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builder.rb:116:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `block in run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/util/busy.rb:19:in `busy'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/call.rb:53:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/connect_libvirt.rb:18:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/config_validate.rb:25:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:95:in `block in finalize_action'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builder.rb:116:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `block in run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/util/busy.rb:19:in `busy'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/call.rb:53:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /home/rafaelri/.vagrant.d/gems/gems/vagrant-libvirt-0.0.24/lib/vagrant-libvirt/action/connect_libvirt.rb:45:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builtin/config_validate.rb:25:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/warden.rb:34:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/builder.rb:116:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `block in run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/util/busy.rb:19:in `busy'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/action/runner.rb:66:in `run'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/machine.rb:196:in `action_raw'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/machine.rb:173:in `block in action'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/environment.rb:474:in `lock'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/machine.rb:161:in `call'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/machine.rb:161:in `action'
	from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/batch_action.rb:82:in `block (2 levels) in run'

Even worse is the fact that I cannot destroy it and recreate without manually removing the disk file at /var/lib/libvirt/images and restarting libvirtd daemon.

Since no further updates were posted since December 2014 and we now do actually print a message about non-existing arbitrary storage pools, I'm closing this issue; feel free to comment if you feel it wasn't resolved.


Dependency for babel-plugin-inline-svg fails Node >= 12

Describe the bug
When running yarn using Node 12 on Windows (presumably all OS's) the dependencies fail on gatsby-plugin-inline-svg for sub dep deasync build using node-gyp.
To Reproduce
Upgrade local node version to 12
Expected behavior
Should download and build dependencies without errors
Screenshots

Applicable Versions:

Netlify CMS version: latest
OS: Windows 10

Node.JS version: 12.3.1

Confirmation there was an issue with deasync fixed:
https://github.com/abbr/deasync/issues/114

Ah so that's what's causing it - is there a fix?

Unfortunately this is a dependency in the website.
No, there is not a fix for it and would require 2 packages deep to apply the change and update of the dependency. First level in https://github.com/Yukaii/synchronized-promise/issues/6
Maybe a different package for inline svg would be the way to solve this one.

https://github.com/Yukaii/synchronized-promise/issues/6 fixed. Now on to babel-plugin-inline-svg
https://github.com/iest/babel-plugin-inline-svg/issues/3
https://github.com/iest/babel-plugin-inline-svg/pull/4

Fixing this issue will solve the ability to develop under Node 12 for the monorepo, so I have split the 2 issues (monorepo vs site).
I think since we are building the site in a different build process and can target a lower version of node until it is fixed, these issues can stay separate.

PR issued for<EMAIL_ADDRESS>fix. 🎉


[FEATURE REQUEST] Open Note after capture

Is your feature request related to a problem? Please describe.
 For example, I'd like to add a card to a Kanban-Board and then also open the Kanban Baord. I figured out how to do the former, but I didn't find out how to do the later automatically afterwards.
Describe the solution you'd like
Add a checkbox with "Open Note after capturing to it". Basically the same option that you already have when quickadding a template.
Additional context
I apologize in advance for creating this issue if you can already somehow do it with a Macro. I just did not figure out how.

Hey! I've just added this in the latest update. Would you check if it is as expected? =D

works perfectly. Thanks a lot! 🤗


Time tracking Cactus spine patch icon change

Potato cactus patches passed the poll, this is to avoid confusion.

This was changed in 72ca27edca65b579c5a4f30d45bf20d9d120418f.


ignore subscriptions in response cache plugin

Description
Response cache plugin adds type names to every selection set in the query documents to allow introspection and TTL calculation. This introduce a validation error when a subscription is used since the root subscription selection set should only contain one field. Since response cache has no sense in the context of subscriptions, it is safe to just ignore subscription documents.
Fixes https://github.com/dotansimha/graphql-yoga/issues/3005
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

Fixed by https://github.com/n1ru4l/envelop/pull/1956


#147

Merge checklist

[ ] TravisCI tests passed
[ ] Documentation

Codecov Report

Merging #155 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #155   +/-   ##
=======================================
  Coverage   27.63%   27.63%
=======================================
  Files           4        4
  Lines         597      597
=======================================
  Hits          165      165
  Misses        432      432

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 36c0d3f...69363a6. Read the comment docs.


Export a Pull() function

Provide a Pull() function that can be called directly, to go with the Push() function.

@rh-atomic-bot r+


MockComponent does not include attributes and methods of extended class

I'm using MockComponent to mock a component that extends another class. In the mocked component are only the attributes and methods of the main class included but not the ones of the base class.

Sure:
import {Component, Input, ViewChild} from '@angular/core';
import {async, ComponentFixture, TestBed} from '@angular/core/testing';
import {MockComponent} from 'ng-mocks';
import {By} from '@angular/platform-browser';

export class BaseComponent {

  @Input()
  public baseCompInput: string;

  public baseCompAttribute: string;

  public baseCompMethod(): string {
    return 'base';
  }
}

@Component({
  selector: 'test-component',
  template: ''
})
export class ExtendedComponent extends BaseComponent {

  @Input()
  public extendedCompInput: string;

  public extendedCompAttribute: string;

  public extendedCompMethod(): string {
    return 'extended';
  }
}

@Component({
  selector: 'component-container',
  template: '<test-component extendedCompInput="test" baseCompInput="test"></test-component>'
})
export class ComponentContainer {

  @ViewChild(ExtendedComponent)
  private extendedComp: ExtendedComponent;

  public test(): void {
    this.extendedComp.extendedCompMethod();
  }

}

describe('mock extended component', () => {
  let component: ComponentContainer;
  let fixture: ComponentFixture<ComponentContainer>;
  let extendedComponent: ExtendedComponent;

  beforeEach(async(() => {
    TestBed.configureTestingModule({
      declarations: [
        ComponentContainer,
        MockComponent(ExtendedComponent),
      ],
    }).compileComponents();
  }));

  beforeEach(() => {
    fixture = TestBed.createComponent(ComponentContainer);
    component = fixture.componentInstance;
    fixture.detectChanges();

    extendedComponent = fixture.debugElement.query(By.directive(ExtendedComponent)).componentInstance;
  });

  it('should have the attribute and method of the extended class', () => {
    expect(extendedComponent.extendedCompInput).toBeDefined('input');
    expect(extendedComponent.extendedCompAttribute).toBeDefined('attribute');
    expect(extendedComponent.extendedCompMethod).toBeDefined('method');
  });

  it('should have the attribute and method of the base class', () => {
    expect(extendedComponent.baseCompInput).toBeDefined('input');
    expect(extendedComponent.baseCompAttribute).toBeDefined('attribute');
    expect(extendedComponent.baseCompMethod).toBeDefined('method');
  });

  describe('test', () => {
    beforeEach(() => {
      spyOn(extendedComponent, 'baseCompMethod');
      component.test();
    });

    it('should call baseCompMethod', () => {
      expect(extendedComponent.baseCompMethod).toHaveBeenCalled();
    });
  });
});

In order for those attributes and methods to be defined they would need to make assumptions as to the default value/implementation which is out of the scope of this lib and could result in some unexpected side-effects in your tests. You can always use a typescript mocking lib to extend one of the ng-mock objects if you need further behavior in a type-safe manner. I have an example of how to do so with https://www.npmjs.com/package/ts-mockery in the below stack blitz.
https://stackblitz.com/edit/ng-mocks-examples?file=app%2Fapp.component.spec.ts
Let me know if I am missing something in your explanation but it does sound out of scope for this lib.

Uggh I forgot to sign in to stackblitz so my changes weren't saved. Will redo them.

Updated the stackblitz and it saved this time:
https://stackblitz.com/edit/ng-mocks-examples?file=app%2Fapp.component.spec.ts

In my particular case a method was called on a component that I accessed via ViewChild. That's why I included the last test scenario to make clear why it would be useful to not only have access to the inputs and ouputs on the mock but also to all other public attributes and methods.
But I see your point. I've just mocked the called method by myself as you recommended.
Thanks.


clock dependency

When clock gets impacted by my merge, we’ll have to drop the git submodule and use the hackagedb one.

 Furthermore, I think the package is broken. We’ll need to change that ASAP.

The package works on my Archlinux, so I guess I can simply close this, but… It’ll be good that the author pushes the fix…


No "friendly" 404 page for missing content

If I visit a page which does not exist, I do not get a friendly 404 page.
We used to display a nicer page and should certainly add something using the error pages flow.
e.g. http://localhost:48408/sometiing

Hi,
Looking into this issue at the moment.
Thanks, Baba.

Fixed. Pull request created. https://github.com/HTBox/allReady/pull/1916


Adding/removing widgets when having Time Series

Context
When you delete existing widgets when having a Time Series, the TS bar grows horizontally but without the histogram
Steps to Reproduce

Create a map
Add few widgets
Add TS Widget
Delete all widgets except the TS one

Current Result

Context
When you have a Time Series widget added and you try to add some others widgets from scratch
Steps to Reproduce

Create a map
Add TS Widget
Add few widgets
Widgets may not appear until you refresh the page

Current Result

Tip: if you resize the page, it 'solves' the problem.

I feel this issue has already been reported, but in any case you have reported with the new "handlers" thing but happens in production right now.

Possible duplicate of #12123

While developing another issue, we ran into this and the reason seems that autostyle is enabled by default, but the model lacks some color information so it breaks.
It breaks in function _generateFillGradients of chart.js

Closing it because, as @rjimenezda mentioned, it is duplicated with https://github.com/CartoDB/cartodb/issues/12123. 💋  thanks @josecruz

Duplicated: #12655


Rename a file (and also move) check is not case-sensitive

Hi, I'm on macOS and when I try to rename (or move) a file "driving.tsx" to "Driving.tsx" I get the warning "path/Driving.tsx already exists" and so no action.
I have search where the check is done and I think that "loop.fs_stat" are not case-sensitive :
https://github.com/nvim-neo-tree/neo-tree.nvim/blob/7a6b0d43d70636edfec183fb49c02f725765da73/lua/neo-tree/sources/filesystem/lib/fs_actions.lua#L546

Because your FS is not case sensitive.
driving.tsx and Driving.tsx are same name.

I didn't even think it was possible not to be...
Thanks for the explanation 👍


[Winograd] Add filtering by annotations for Winograd rewrites

This PR adds filtering functionality to Winograd conv rewrites based on a __winograd_conv attribute. Convolutions are expected to be annotated with this attribute before the pass invocation, most likely by a transform script called from iree-preprocessing-transform-interpreter as preprocessing.
Since Winograd affects numerical results, and the performance benefit is different for different shapes, it is usually necessary to select specific shapes to use Winograd. This PR enables users to make this selection based on shapes or parameters of specific convolutions.

This PR adds filtering functionality to Winograd conv rewrites based on a __winograd_conv attribute.

Oh no, this looks like filter-based patterns. I wonder if we can have better matcher instead of using attribute?

This PR adds filtering functionality to Winograd conv rewrites based on a __winograd_conv attribute.

Oh no, this looks like filter-based patterns. I wonder if we can have better matcher instead of using attribute?

There is not really a good way to tell if winograd is worth using for a specific convolution (it changes numerics and it does not necessarily help performance), so right now it has to be decided by the user. Maybe in the future there can be some selection based on benchmarking so we no longer rely on user input, but for now this is necessary.

This PR adds filtering functionality to Winograd conv rewrites based on a __winograd_conv attribute.

Oh no, this looks like filter-based patterns. I wonder if we can have better matcher instead of using attribute?

The issue is that we don't have a good idea of when it is good to use a convolution for winograd vs something else, so for now we are having the user annotate it (that is what we did in the past). So these annotations are expected to be user provided.

I think it might be better to move this whole pass to preprocessing.
IIUC is the "deployment mode" is that you run the transform dialect script first and then you run this pass?

Yeah, that is how it will work right now. I think it could make sense in Preprocessing, but I can move it in another PR later.

I think it might be better to move this whole pass to preprocessing.
IIUC is the "deployment mode" is that you run the transform dialect script first and then you run this pass?

Yeah, that is how it will work right now. I think it could make sense in Preprocessing, but I can move it in another PR later.
EDIT: The only way I could see it being potentially useful elsewhere is if we wanted to experiment with doing some transformation after partial tiling (to try and avoid global transient buffers). I haven't thought about that much at all, though, so have no idea if that would be a good idea.

Then this needs to be documented/tested... cause now we are introducing an expected ordering between the transform dialect based preprocessing and pipeline options.


[MultipartReaderStream] Misleading exception message

When multipart/form-data request is malformed for instance (missing double dash at boundary start):

9051914041544843365972754266
Content-Disposition: form-data; name="text"
text default
--9051914041544843365972754266--

and request body is greater than default limit for HeadersLengthLimit (which is 16KB now), user get exception message of "Multipart body length limit 16384 exceeded."
MultipartReaderStream.cs #166

https://github.com/aspnet/HttpAbstractions/blob/dev/src/Microsoft.AspNetCore.WebUtilities/MultipartReaderStream.cs#L166

This issue was moved to aspnet/HttpAbstractions#736


Fixed nth_element, added unary_nor

This commit adds unary_nor, and nor1 as a logical operator.
It also adds/fixes support for user defined types in nth_element.

Thanks for that! It's a good idea. I have some comments:

NOR is a binary operator (negation of OR).
NOR operator can be constructed using binary_negate and logial_or:

not2(logical_or(arg1, arg2))

Don't use master branch for pull requests, make a special feature branch (in this case it could be called fix-nth-element' or whatever), because now your master` and Boost.Compute are different and that can make problems when you want to make next pull request.
It would be great to have test for user-defined types for nth_element.

Maybe it would good to add find algorithm version that works with user defined types (Compare or Equal binary function would be required)?


CLI often passes inline-relations-depth query param to CAPI, which is deprecated

It looks like we use the query parameter inline-relations-depth in a number of places. According the docs on at least the spaces endpoint this parameter is deprecated, and I believe it is generally deprecated.
We should make chores to find out whether we depend on this parameter's behavior, and to remove use of it.

hey @willmurphyscode thanks for creating this issue. something also to perhaps consider for vat. cc @zrob @mkenyon

Hi @willmurphyscode could you please let us know if you want to keep this issue around? I think this has been removed from V3 but is not actionable for V6/V2. Thanks.

@abbyachau You are correct. This issue will be automatically resolved by the switch to V3, and is not actionable otherwise. Thanks for following up!


NGINX up-to-date

These commands are just the minimal steps for Nginx + PHP installation and it’s easier for users to install Nginx directly with apt in one command even if installing the last version is better most of the tomes

You always have been encouraging up-to-date versions, but for nginx this is not really important?
Right there, what I understand, newcomers should install NGINX 1.14.2 04 Dec 2018 (if debian 10).
And they should do that, only because this is simpler than using what is inside the commit.
Directly with Apt? Apt is still there, I only change the repository like you do for PHP.
The only difference, I replaced "Debian" by "ID" in case if they are not using Debian like Ubuntu.
Moreover, this is precised, so if they read they will find the solution pretty easily. Easier than that, if they read what they paste, they will find out.
I don't ask them to compile NGINX by themselves, so at least you should write something up to date and not, "it's easier".

It’s just the most basics steps to install Nginx / PHP and even the official Nginx documentation also include this way.
The primary goal of this documentation is to install Azuriom and the Nginx/PHP commands are just here for convenience


Drawing svg

Does this library support drawing svg on the canvas?

Can you try https://github.com/canvg/canvg or https://stackoverflow.com/questions/3768565/drawing-an-svg-file-on-a-html5-canvas or https://stackoverflow.com/questions/2907537/how-to-convert-svg-files-to-html5s-canvas
and tell me the result?

Thanks @gydroperit


Sobel

Implement a Sobel Filter

Make a way to set/unset the weights for convolution so the same kernel can be reapplied to data.


Nerf (Raid) Farm spawns

I would like to exclude mob captains from raids.  I think that is causing an issue with a raid farm.  I think Evokers are becoming captains, making them stay around a long time, and then causing Vex's to stick around and break the farm.

I found the file "captains.json" in mob-captains-v2.1.0\data\ps-mob\tags\entity_types but I don't really get what's going on here.  All the mobs are set to "required": false which seems backwards.
How can I exclude Evokers from becoming mob captains?

Hey,
If you only want to disable evokers from becoming captains, you can just remove them from the captains.json list you found. The "required": false tells the game to load the file even if that entry doesn’t exist.
the rest of the config is accessible through a chat based menu ingame because of data pack limitations.
A more permanent solution for raid mobs might follow.

Hey, moving forward, actually removing Mob Captains from raid farms will only be possible by removing said mobs from the list, but they should spawn less frequently in all farms in the upcoming v3.0.0 release

I had to remove evokers and pillagers, and maybe witches from being captains to get my raid farm working again.  But the config worked fine.  How do you detect if the mobs spawn in a farm or not?  We use our enderman farm to get all the goodies :D

The new system blocks spawns in a radius of 24 blocks around where any captain spawns for 10 minutes (the time is configurable).
That way, if a captain spawns in a farm, the whole farm won’t produce another captain for 10 minutes (or just a lot fewer if the farm is bigger).


My graphiql Yoga enviorment is lagging and not responsive

Describe the bug
Basically, I can't do anything the cursor doesn't move with the text and if I type the word mutation it takes about 30 seconds to appear. I cannot highlight or use my cursor for anything.
I have tried:

restarting the server
clearing the url
Completely removing node modules folder and reinstalling the dependency

If anyone else is having or had this issue please comment. As I literally cannot use my graphiql environment
Your Example Website or App
https://github.com/wakywayne/wrestling-event-coordinator
Steps to Reproduce the Bug or Issue
to reproduce the issue make a server and see if you have a similar problem
Expected behavior
I expect graphiql to be responsive like it has been for the past few day all of asudden it stopped working.
Screenshots or Videos
No response
Platform

OS: windows
NodeJS: 18.1.0
"@graphql-yoga/node": "^2.13.13",

Additional context
No response

Hey there, thanks for reporting this issue! I see you're using an older version of Yoga, do you experience the same problem with the latest v3 version and it's GraphiQL?

No, I updated to the latest version and it went away thank you!!

I also have a question. With the new version of react and nextJS having server components how do you guys recommend querying the yoga instance in a server component since you can't use apollo client In a server component? Thanks again my yoga grapiql is working great now that I updated

Awesome, I am happy to hear everything works in v3!

how do you guys recommend querying the yoga instance in a server component since you can't use apollo client In a server component?

I am not sure it makes a big difference, you still end up making a regular HTTP request to Yoga, right? But I might've oversimplified this answer, I recommend opening a discussion and asking the same question - gives us a chance to think about it thoroughly.


fix: provide correct type for _service with dynamic schema

Reported in issue #1211,
Performing subgraph introspection (federation) on a server built with dynamic schema results in incorrect type for _service.
Steps to reproduce are within the issue ticket.
Solution is modeled after code used to resolve the _service property when using non-dynamic schemas.

Thanks! 🙂


Boxplot componet

React-vis does not have one, I am not sure if I can contribute upstream, but for now this can get us a nice D3 boxplot for continuous numerical columns.
Or using the React-vis candlestick example
https://github.com/uber/react-vis/blob/master/showcase/examples/candlestick/candlestick.js

basic version done.

Requires theme'ing but that is not priority.


Fix dependency manifest and CI

I've fixed the dependency manifest to install isort only for Python <4. The reason is this: Since this project requires Python 3.6+, only dependencies that also require Python 3.6+ or lower can be resolved. The last version of isort that still required only Python 3.6+ used an upper bound (<4) on the Python version specifier, so isort cannot be resolved anymore. To work around this problem, I've added the Python version upper bound only to isort.
I've also fixed the CI config to use Ubuntu 20.04 when testing against Python 3.6 because that's the last Ubuntu version supporting Python 3.6. CI checks for all other Python versions run against the latest available Ubuntu version.
These changes should restore the installation with Poetry and CI. :crossed_fingers:

@sisp thank you for the contribution!
I wonder if we should just lift the Python minimum requirement to the latest still supported Python version instead.
WDYT?

You're welcome.
I guess we could. An EOL Python interpreter shouldn't be used anymore, so it should be fine to discontinue supporting it. How releasing v0.3.1 first still with Python 3.6+ support which includes the upper bound removal fix? Then, we can drop Python 3.6 and 3.7, also extend the test matrix to Python 3.11 and 3.12, and release v0.4.0?

@sisp yes, can do!
Would you be open to contribute the update of the interpeters, too?

Yes, gladly.


Android Vulkan header VK_MAKE_API_VERSION not defined

For Android, we currently using this version of the Android NDK.
https://github.com/KhronosGroup/OpenXR-Tutorials/blob/e12b2ad7d262a0059b157eb4092fc2248c97affa/Chapter2/app/build.gradle#L8
Unfortunately, VK_MAKE_API_VERSION is not defined in this version of the Vulkan headers. As a workaround, I have defined VK_MAKE_API_VERSION to wrap over VK_MAKE_VERSION.
https://github.com/KhronosGroup/OpenXR-Tutorials/blob/e12b2ad7d262a0059b157eb4092fc2248c97affa/Common/GraphicsAPI_Vulkan.cpp#L14-L16
Is this workaround suitable or bad practice?
I haven't checked, but do later versions of the NDK have newer Vulkan headers that have the VK_MAKE_API_VERSION macro?
If so, do we want to upgrade our NDK version for the tutorial?

Ok, closing issue.


Raw server response?

Is it possible to receive raw server messages?

Getting every raw message? Not a the moment. You can listen to the OnMessageReceived and then access the RawIrcMessage via something like:
e.ChatMessage.RawIrcMessage

If you really need access, I don't see why an event can't be added that fires on every message received. Not sure about the implications on resources however.

I guess it's not completely necessary. I just like to see it. I like to see those pings mostly just to know everything is still going smoothly.

When initializing TwitchClient, you can tell the library to print out debug messages. These messages include every message received from Twitch, as well as sent messages. This assumes you only need it for debugging/assurance, and not production.

If you do want it for production though, let me know and I can add it :)

If it won't hurt performance unless used then sure! I like to offer the raw view, especially in a dev mode/edition.

I don't think it should be a problem. Will edit this comment with the commit link once pushed.


Use only JSON for pen block definitions

This is a followup on my previous changes that made block definitions shorter.
I'm not sure that scratch should go fully to using JSON block definitions, but if you did it would look like this.  I've tagged people who may have strong opinions about developer ergonomics/block definition.
I've moved the "extensions" attribute to be closer to the start of the block definition, since it's broadly defining how a block looks and interacts with other blocks.
As I mentioned before, I don't have a strong opinion about the names that I've given the extensions (colours_pen, shape_statement, output_number, etc).  If there are other names that are more accurate for scratch team, I'm happy to use those.
The change in vertical_extensions.js makes setting the colour also set the category attribute, which removed one line per block definition.

I think it'll be easy to generate the simple blocks, like pen up and pen down.  What about blocks with inputs?

We haven't completely settled on how we'll specify inputs in our block string. The current proposal is something like 'give {MY_ARG,string} to my reporter' but based on recent conversations that's likely to change. At any rate, it'll be something which conveys some of that info, and the rest of the necessary info will be outside the string somewhere nearby.
I think the most painful part will be replacing our placeholder with your %1, but that's just a bit of text manipulation and we can do it once at extension-load time. Generating your args0 list looks like it'll be a relatively straightforward matter of dropping in the name of the arg along with a lookup into a type mapping. Also, if we end up switching out the currently-proposed complicated placeholders with stuff like %1 then maybe the string manipulation will be trivial...
The current Scratch extensions proposal doesn't currently cover it, but we'll need to add a way to indicate the kind of block being defined: hat, C/E, regular statement, and so on. If I understand correctly that (along with the block category) will influence the list of Blockly extensions to be applied, which seems easy enough.

BTW, the Scratch extensions proposal currently lives here: https://github.com/LLK/scratch-vm/wiki/Extensions-Proposal
Also potentially of interest: https://github.com/LLK/scratch-vm/wiki/Extension-translation-straw-cat

You may not have an answer to this yet, but: are you going to have a list of every shape of block that may be created, and disallow all other shapes?
For instance, you can have a C or E shaped block.  What about the next step, where it has three statement inputs?  (The current best name for it is an
E
L

block.)

Awesome, I'll take another look at those.
Note that I'm not solely concerned about blocks created as Scratch extensions.  I'm also thinking about block definition for anyone who uses just scratch-blocks as their library.

I plan to explicitly support CELL blocks ;)
Serious answer: we haven't fully resolved that yet but we're leaning toward only allowing Scratch extensions to specify Scratch's "usual" shapes, probably with an enum or something similar, plus a flag or two for things like whether or not the block terminates a stack. There's a chance we'll have a unified "choose" type which covers things like if, if-else, and switch, but I expect that's the craziest it'll get.

we're leaning toward only allowing Scratch extensions to specify Scratch's "usual" shapes

And non-scratch extensions?

And non-scratch extensions?

Sorry, I was just using "Scratch extensions" to distinguish "bag o' blocks" extensions from Blockly's "do something to a block" extensions. As far as I'm aware, we're only planning on supporting "bag o' blocks" extensions in a scratch-gui / scratch-vm kind of context. Specifically, I've been operating under the assumption that scratch-blocks would be unaware that such a beast exists, and that it would be our problem (scratch-vm's & scratch-gui's problem) to present block definitions to scratch-blocks in a way that makes extension blocks and "core" blocks (like "move 10 steps") more or less indistinguishable. We've even discussed the possibility of implementing all Scratch 3.0 blocks in terms of the "extension" system.
In that respect, as long as scratch-blocks supports at least as many shapes as we plan to expose to Scratch extension authors, I'm happy. I don't see a need for scratch-blocks to impose restrictions beyond what Blockly does -- we'll impose those restrictions on the "client" side of this API.

Okay, sounds good to me.
Yes, there's a language problem with scratch extensions vs. blockly extensions.  I'm trying to find a good way to distinguish between the two in normal conversation.

And one more note on the topic of supporting block shapes, we've already seen a few cases of developers trying to make a block that isn't supported in Scratch Blocks (example: https://github.com/LLK/scratch-blocks/issues/919) but I don't think there's a full spec for what will be supported in SB yet (independent of what Scratch 3.0 supports).

€ blocks?

@rachel-fenichel I'm concerned about using multiple different ways to define blocks, we may want to favor consistency. One difficult thing already about the block-defining process is the number of different ways one can do it. Maybe we should just wait on/work with @cwillisf on the extension definition level?

After talking offline with @rachel-fenichel, I think we should try to err on the side of consistency and leave these definitions the way they are.


Feature/gus 1351 support date comparisons in illogical

Description
Adding illogical support for date comparison for operators:
>
>=
<
<=

Test Coverage

[x] unit

References

Closes GUS-1351

Code looks good.
Need to update at least the README as well


Please add C# / Blazor Support

The first article in this series, Quickstart: Building your first static site with Azure Static Web Apps has tabs for Blazor. At the bottom of that page is a Next Steps link to this page. But this page doesn't continue with the Blazor/C#-preferred example. Therefore, this page could be improved by including instructions for creating a C#-based Azure Functions backend for Azure Static Web Apps. Or, if C#-based Azure Functions are not supported (yet), then merely pointing that out would be helpful to the uninitiated.

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

ID: 5689b389-ead5-825d-dde1-9a290bc0819f
Version Independent ID: 52a526a2-477a-dda4-02b4-eac1440811ed
Content: Add an API to Azure Static Web Apps with Azure Functions
Content Source: articles/static-web-apps/add-api.md
Service: static-web-apps
GitHub Login: @craigshoemaker
Microsoft Alias: cshoe

@CalvinQuark
Thanks for your feedback! We will investigate and update as appropriate.

Thank you again for the feedback @CalvinQuark. I reviewed the doc and Step 3 of Create the API instructs to select Javascript as the language. Reason being this doc primary purpose to adding a simple Azure Function JavaScript API to a NodeJS front end.
It's important to note that even though you were on the Blazor tab of Static Web App quick start, adding API is completely idempotent of the front end. You can easily have an Vue front-end with a C# API, a vanilla HTML front-end with a PowerShell API, an Angular front-end with a Python API back end. There are all sorts of permutations, so from that aspect, this doc isn't to illustrate the language what to use but moreover how to create and connect the resources together with the path of least resistance.


Update page header to include link to admin page

Add a link to the admin page for logged-in admins.

Completed in 9771c333dce716cbeb36439cdcfb4a031d17f0a5


Handle Web Light's lack of cookies

Web Light appears not to allow cookies at all, which can cause ids to change on every page view.
Passing values via querystring is a potential option to look into for handling this behaviour.

@colmsnowplow, we are well aware of the issue that Google WebLight
generates the very same UUID due to stripped JS library. However, this appears to be the opposite issue now. Just wanted to mention it here.


CreateMenu should display within the chat window area

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Expected Result:
CreateMenu should display within the chat window area

Actual Result:
CreateMenu displayed above the chat list in Left Hand Navigation

Action Performed:
When tapping the + button from a chat on desktop and web, the CreateMenu is displayed above the chat list, rather than within the chat window
Platform:
Web and Desktop v 1.0.5-36
Notes/Photos/Videos:
Please note: the missing 'Split Bill' option is expected for now
Expensify/Expensify Issue URL:
https://github.com/Expensify/Expensify/issues/158164

Job on Upwork https://www.upwork.com/jobs/~01ca7ce2254d69fcb5

Hi, I would love to work on this issue!
As a part of my proposal, I will:
Use a prop anchorPosition as style in CreateMenu for the anchor position of the PopOver:
https://github.com/Expensify/Expensify.cash/blob/46d6cb4911c923bb9ee367e42076f33e8cd93f45/src/components/CreateMenu.js#L102-L110
This will be: anchorPosition = {this.props.anchorPosition}  instead.
Create a new style styles.createMenuReportAction and use {
left: 18 + variables.sideBarWidth,
bottom: 100,
} it as the prop for the CreateMenu in ReportActionCompose.
https://github.com/Expensify/Expensify.cash/blob/46d6cb4911c923bb9ee367e42076f33e8cd93f45/src/pages/home/sidebar/SidebarScreen.js#L87-L95
Similarly, use the existing style  styles.createMenuPosition (rename it as styles.createMenuSidebarPosition instead) as a prop for the CreateMenu in SidebarScreen.
Looking forward to working on this issue.

@stitesExpensify I just assigned to you since you were assigned to the issue in the Expensify/Expensify repo.  Can you review incoming proposals? @npsedhain submitted one above

Hi,
This is Kaushik here and instead of making long coding structure here is simple explanation for this,

create a new stylesheet for this popover.

Hi @kaushiktd, are you saying that you think this could be solved just by editing styles rather than creating an anchor prop? If so I think that may be the better solution in this case

Hi @kaushiktd , are you still interested in helping? If so, can you reply to @stitesExpensify comment above? Thanks

@stitesExpensify
<Popover
onClose={this.props.onClose}
isVisible={this.props.isVisible}
onModalHide={() => {
this.onModalHide();
this.resetOnModalHide();
}}
anchorPosition={styles.createMenuPosition}

In Your code, you've added "createMenuPosition" in which left is define: 18, and bottom is: 100
like:
createMenuPosition: {
left: 18,
bottom: 100,
},
Now there is two posibilities

Add side bar width to left anchorPosition
like:
createMenuPosition: {
left: 18 + sideBarWidth,
bottom: 100,
},

Add position absolute to "createMenuPosition" and position relative to its parent view in which view popover is displayed and set position left according device width.

I can do this on Upwork if you can assign this job to me on upwork

@kaushiktd, I had actually tried solution number 2 as well, and I don't think it is possible without any kind of DOM manipulation. CreateMenu and FAB, for instance, aren't parent-child components, they are in different branches in the DOM. So, I am curious to know how you'd address this problem.
cc: @mallenexpensify

Thanks, Anup. We've sent you the offer on Upwork. Please remember to link your PR to this issue when you're ready! 👍

@trjExpensify. Just a point here. I think the animation should be from bottom to top for the menu.

Thanks, @trjExpensify, will raise a PR tomorrow and link to this issue. :)

Yep, bottom to top from within the chat screen makes sense. 👍

@npsedhain can you provide an update? It appears things might have stalled a bit

Hey @mallenexpensify, thanks for reaching out, I am actually waiting on @tgolen on the PR as I have done what had been asked on the comments. Maybe he has been busy lately? I don't really know!

I think, this issue is resolved & should be closed.

Let me know if there is anything I can do. 😅

As discussed in Slack, yes @npsedhain should be paid. Even though his pull request caused a regression, he wasn't given a chance to resolve that due to random one-off circumstances. The base branch was renamed in the E.cash repo, so GitHub was broken and didn't allow us to revert the pull request like we normally would. So let's pay out and close this issue.

Let me know if there is anything I can do. 😅

@npsedhain As far as I can tell, there are no remaining TODOs for this issue. These things happen, and that's why we have a QA process. Just so you know, what would normally happen would be that your PR would just be reverted, and you'd be given another chance to fix the issue without causing a regression. Does that make sense?

Thanks @roryabraham. It totally makes sense and I get it that the issue was one off provided that I didn't have such experiences in the issues I jad contributed before hand. So I totally get it. But let me know if anything else comes up even after this is closed. Happy to help and be a part of this. :)

@roryabraham should I wait to see if there are any more regressions or pay @npsedhain now?

At this point, I would just pay him, because if there are any regressions they are on me now (because I fixed the regressions caused by this PR with my own PR). Sorry if that was poorly worded, but hopefully you get what I'm saying.

Thanks, I just wanted to double check to be safe. I need to split now but planning to pay this afternoon

The contributor has been paid, the contract has been completed, and the Upwork post has been closed


[Question] The demo collapse

Question
can't use the demo

You should be able to use it now

The demo shows No interface is running right now.

should be working now.,


Controller-runtime and custom cache

Trying to setup a custom cache to filter APIBindings it seems that the resulting URL is not properly processed.
options.NewCache = cache.BuilderWithOptions(cache.Options{
		SelectorsByObject: cache.SelectorsByObject{
			&apisv1alpha1.APIBinding{}: {
				Field: fields.SelectorFromSet(fields.Set{
					"spec.reference.workspace.exportName": "settings-configuration.pipeline-service.io",
					"spec.reference.workspace.path":       "root:pipeline-service:management",
				}),
			},
		},
	})

gives
W0909 17:14:34.487460 1472564 reflector.go:324] pkg/mod/k8s.io/client-go@v0.24.3/tools/cache/reflector.go:167: failed to list *v1alpha1.APIBinding: forbidden: User "kcp-admin" cannot get path "/services/apiexport/root:pipeline-service:management/settings-configuration.pipeline-service.io/apis/apis.kcp.dev/v1alpha1/apibindings": Path not resolved to a valid virtual workspace
E0909 17:14:34.487484 1472564 reflector.go:138] pkg/mod/k8s.io/client-go@v0.24.3/tools/cache/reflector.go:167: Failed to watch *v1alpha1.APIBinding: failed to list *v1alpha1.APIBinding: forbidden: User "kcp-admin" cannot get path "/services/apiexport/root:pipeline-service:management/settings-configuration.pipeline-service.io/apis/apis.kcp.dev/v1alpha1/apibindings": Path not resolved to a valid virtual workspace

and also for other resources that my controller owns
W0909 17:14:34.050696 1472564 reflector.go:324] pkg/mod/k8s.io/client-go@v0.24.3/tools/cache/reflector.go:167: failed to list *v1.NetworkPolicy: forbidden: User "kcp-admin" cannot get path "/services/apiexport/root:pipeline-service:management/settings-configuration.pipeline-service.io/apis/networking.k8s.io/v1/networkpolicies": Path not resolved to a valid virtual workspace
E0909 17:14:34.050739 1472564 reflector.go:138] pkg/mod/k8s.io/client-go@v0.24.3/tools/cache/reflector.go:167: Failed to watch *v1.NetworkPolicy: failed to list *v1.NetworkPolicy: forbidden: User "kcp-admin" cannot get path "/services/apiexport/root:pipeline-service:management/settings-configuration.pipeline-service.io/apis/networking.k8s.io/v1/networkpolicies": Path not resolved to a valid virtual workspace

Without custom cache it works and the url is
https://xxx.xxx.xxx.xxx:6443/services/apiexport/root:pipeline-service:management/settings-configuration.pipeline-service.io"

I haven't had time to investigate and I am not excluding that I did something wrong but this is the only modification.

If you're managing the NewCache function, you need to make sure it does this: https://github.com/kcp-dev/controller-runtime/blob/824b15a11b186ee83a716bbc28d9b7b1ca538f6a/pkg/kcp/wrappers.go#L62-L72

@ncdc thank you for the pointer and sorry for the delay.
Adding something like this seems to work:
func ClusterAwareBuilderWithOptions(options cache.Options) cache.NewCacheFunc {
	return func(config *rest.Config, opts cache.Options) (cache.Cache, error) {
		if options.Scheme == nil {
			options.Scheme = opts.Scheme
		}
		if options.Mapper == nil {
			options.Mapper = opts.Mapper
		}
		if options.Resync == nil {
			options.Resync = opts.Resync
		}
		if options.Namespace == "" {
			options.Namespace = opts.Namespace
		}
		if opts.Resync == nil {
			opts.Resync = options.Resync
		}

		return kcp.NewClusterAwareCache(config, options)
	}
}

I would think it belongs to the wrapper. What do you think?
cc @varshaprasad96

@stevekuznetsov

Note: "seems to work" except that there is no label conversion for APIBinding so that I cannot filter through spec.reference.workspace.exportName and spec.reference.workspace.path but it would work for Pods for instance. Obviously the fact that not many resources support the mechanism significantly diminishes its value

Could you use an index here?

Could you use an index here?

I am not sure to follow. My understanding is that indexes help with retrieving resources from cache not avoiding them to get cached. Please let me know what I am missing. My original intent was not to cache the resources that I don't need to save some memory. As a workaround I am filtering the event and add unnecessary apibindings into the cache. As I am not expecting a huge amount of apibindings it is not a major concern for me.
An open question is: do we see value in making a cluster aware version of controller-runtime BuilderWithOptions?
As you stated for field selectors it is not granted but possibly for the other configurations? I am happy to create a PR if the answer is yes.

Please let me know what I am missing.

Sorry, I didn't realize your intent was to make your cache size smaller in memory. The index won't help there.

do we see value in making a cluster aware version of controller-runtime BuilderWithOptions?

I swear we had a PR open to do this .. yes, I think it's a good idea ish.

ack. I will look at that tomorrow.


fix(cira): updated to accept cira config name to case insensitive

These changes are not required any more as dev mode will be removed in upcoming release.


DO NOT MERGE need help understanding VCR failures

I get 4 test failures with this change, all in VCR, all at line 72 of my new Detective class, which
is

making an identical request as an existing Detective, and
I actually see the entries in the VCR cassette files (?!)

Could someone with more experience try "rake test" out on it and tell me what I'm not understanding?

Hmm.  It's a mystery to me.  I get the same error messages, e.g., there's a vcr_cassette in github.yml that describes "uri: https://api.github.com/repos/linuxfoundation/cii-best-practices-badge/contents/?...." but it's not getting used.
We recently updated VCR.  It's possible that it's had a subtle format change, and isn't correctly reading the old files.  We don't care about the exact contents of the VCR files, as long as they let us test the program.
What happens if you blow away the *.yml files in the vcr_cassettes directory, and force them to be recreated?

Thanks! That helped. A problem remains, however. With the branch currently updated as is, there remains an issue with the github_login cassette. If I delete it though, I get this test error:
GithubLoginTest#test_0001_Has link to GitHub Login:
Errno::ENOENT: No such file or directory @ rb_sysopen - test/vcr_cassettes/github_login.yml
    test/test_helper.rb:205:in `vcr_oauth_token'
    test/test_helper.rb:195:in `omniauth_hash'
    test/test_helper.rb:105:in `configure_omniauth_mock'
    test/features/github_login_test.rb:6:in `block in <class:GithubLoginTest>'

From what I can tell, test_helper is trying to grab "access_token" from the YAML file, which it expects to exist. GithubLoginTest skips this if I have GITHUB_PASSWORD set, which I have tried to do like this:
GITHUB_PASSWORD=2a8358805f737a165ad8b60d6779fabac0de3bde rake test

However, this doesn't seem to be the correct value to provide, since I then get this failure:
  1) Failure:
GithubLoginTest#test_0001_Has link to GitHub Login [/home/dale/Git/cii-best-practices-badge/test/features/github_login_test.rb:19]:
Expected false to be truthy.

Hmm, that's really a bug in our test setup.  We should be able to blow away VCR cassettes and have them get recreated (since that way, we can respond to changes in APIs and such).  Can you track that down and fix it?
Be careful, we don't want to store access tokens in VCR cassettes that actually provide any non-public access.

We have some bogus tokens stored in ~/.env - do they help?

The test was failing because the users show page is no longer showing the name of the user ("CII Test" was expected.) I changed the test to check for the name of the app in that step.
Note that directions for re-recording are at: https://github.com/linuxfoundation/cii-best-practices-badge/blob/master/doc/testing.md#external-api-testing
Fix is here: https://github.com/linuxfoundation/cii-best-practices-badge/commit/394a9015f8422ba0d6ed34b4313a378673c18ffc
Dale, I will get you write access to this repo so you can create branches. But as with currently, please don't merge to master without signoff from me or @david-a-wheeler .

@dwvisser you should have just gotten an invite for write access to this repo.

@dankohn I'm used to the work on a GitHub forking workflow, but I'd it makes you more comfortable, I can work on the main repo directly. I like my way because then I have no guilt pushing frequently and rewriting history before making an official pull request.

@dwvisser I won't insist, but my philosophy is that you should feel free to do any changes you want on your own branch. Since we're doing squash merges, it doesn't matter.
Any feel free to operate on a fork, but it just means I can't push a commit on to your branch.

[Current coverage][cc-pull] is 97.24%

Merging [#435][cc-pull] into [master][cc-base-branch] will decrease coverage by 1.04%

@@             master       #435   diff @@
==========================================
  Files            37         38     +1
  Lines           878        908    +30
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            863        883    +20
- Misses           15         25    +10
  Partials          0          0

Powered by Codecov. Last updated by [ff1ef3c...0c4954b][cc-compare]
[cc-base-branch]: https://codecov.io/gh/linuxfoundation/cii-best-practices-badge/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/linuxfoundation/cii-best-practices-badge/compare/ff1ef3c2f9f8a8ae9c61c9aa266e49f18d582a70...0c4954b2892b920914089543bac49ee888b69767?src=pr
[cc-pull]: https://codecov.io/gh/linuxfoundation/cii-best-practices-badge/pull/435?src=pr

Do you think this is teady to merge?

This Note: codecov/patch is reporting that this produces worse test coverage.  That's not the direction we want to go.  Can you add tests?

I've manually tested this now and am happy with it. However, I'm still running into the issue with VCR and github_login_test. The test complains because it has no episode for https://api.github.com/repos/ciitest/cii-best-practices-badge/contents/doc. Deleting the cassette file doesn't work, since there is some weird chicken-and-egg issue where the file must be present for tests to pass. The other thing I try is to set :record => :new_episodes in github_login_test, but then I'm seeing this error, even though when I look at the cassette file, it's using the exact same authorization token for that request as all the others:
  1) Error:
GithubLoginTest#test_0001_Has link to GitHub Login:
Octokit::Unauthorized: GET https://api.github.com/repos/ciitest/cii-best-practices-badge/contents/doc: 401 - Bad credentials // See: https://developer.github.com/v3
    app/lib/github_content_access.rb:26:in `get_info'
    app/lib/subdir_file_contents_detective.rb:55:in `get_relevant_files'
    app/lib/subdir_file_contents_detective.rb:67:in `match_file_content'
    app/lib/subdir_file_contents_detective.rb:84:in `determine_content_results'
    app/lib/subdir_file_contents_detective.rb:95:in `analyze'
    app/lib/chief.rb:108:in `propose_one_change'
    app/lib/chief.rb:131:in `block in propose_changes'
    app/lib/chief.rb:128:in `each'
    app/lib/chief.rb:128:in `propose_changes'
    app/lib/chief.rb:164:in `autofill'
    app/controllers/projects_controller.rb:76:in `create'

You have to set an environment variable with the password:
https://github.com/linuxfoundation/cii-best-practices-badge/blob/master/doc/testing.md#external-api-testing
On Thu, Jul 21, 2016 4:31 PM, Dale Visser<EMAIL_ADDRESS>wrote:
I've manually tested this now and am happy with it. However, I'm still running
into the issue with VCR and github_login_test. The test complains because it has
no episode for https://api.github.com/repos/ciitest/cii-best-practices-badge/contents/doc . Deleting the cassette file doesn't work, since there is some weird
chicken-and-egg issue where the file must be present for tests to pass. The other thing I try is to set :record => :new_episodes in github_login_test, but then I'm seeing this error, even though when I look
at the cassette file, it's using the exact same authorization token for that
request as all the others:

Error:
GithubLoginTest#test_0001_Has link to GitHub Login:
Octokit::Unauthorized: GET https://api.github.com/repos/ciitest/cii-best-practices-badge/contents/doc: 401 - Bad credentials // See: https://developer.github.com/v3
app/lib/github_content_access.rb:26:in get_info' app/lib/subdir_file_contents_detective.rb:55:in get_relevant_files'
app/lib/subdir_file_contents_detective.rb:67:in match_file_content' app/lib/subdir_file_contents_detective.rb:84:in determine_content_results'
app/lib/subdir_file_contents_detective.rb:95:in analyze' app/lib/chief.rb:108:in propose_one_change'
app/lib/chief.rb:131:in block in propose_changes' app/lib/chief.rb:128:in each'
app/lib/chief.rb:128:in propose_changes' app/lib/chief.rb:164:in autofill'
app/controllers/projects_controller.rb:76:in `create'

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub , or mute the thread .
-- Dan Kohn <mailto<EMAIL_ADDRESS>> Executive Director, Cloud Native Computing Foundation < https://cncf.io/ >
tel:+1-415-233-1000


MERGE SORT ALGORITHM

IN this i will provide the code to sort an array using merge sort algorithm.
please asssign me this under hacktoberfest 2023

You have added a pull request so i am closing it.


Add support for Rails 7

add support for rails 7
bump ruby version

Thanks for your contribution, @neumayr 🙌
I’ve just released v0.3.0.


azurecliprod storage account missing 2.0.61 msi breaking Chocolatey install

az feedback auto-generates most of the information requested below, as of CLI version 2.0.61

Describe the bug
install-package -Name "azure-cli" -ProviderName Chocolatey -Force -ForceBootstrap -RequiredVersion 2.0.61
Results in:
WARNING: Unable to download from URI 'https://azurecliprod.blob.core.windows.net/msi/azure-cli-2.0.61.msi' to ''.
To Reproduce
Run the above command
Expected behavior
To download msi 2.0.61 from container and install 2.0.61
Environment summary
Windows
Additional context
Seems that any release binaries have been pruned prior to 2.0.64

I only see versions from 2.0.64 onwards in the msi storage container.

we have existing iac which has a dependency on 2.0.61 - is there a policy in place to remove msi from the container? what I mean is, if I update our scripts to 2.0.64 - how long will it be until 2.0.64 blob is removed from the container?

We won't remove old version installers on purpose without good reason. I found #9535 to recover old MSI, it may be deleted by mistake. Are you using newer versions or you still prefer 2.0.61?

Close due to inactivity. Please feel free to repoen the issue if you have any further request regarding the old MSI.


Support apiPrefix and personal access token in the obsidian plugin

Thank you for your submission! Like many open source projects, we ask that you sign our CLA (Contributor License Agreement) before we can accept your contribution. If your email is listed below, please ensure that you sign the CLA with the same email address. **The following users still need to sign our CLA:**❌ThePlenkov
Already signed the CLA? To re-check, try refreshing the page.

Cannot sign by some reason. Asked Atlassian for help:

helloo @ThePlenkov, looks like it was a dropped webhook. We've delivered the webhook and the check is now passing. You can safely disregard the CLA-Bot's comment :)

@ThePlenkov Can you jump on Discord to discuss. https://discord.com/invite/3ZVEc3S48x
I am happy to accept a PR that adds support for On premise instances but just doing this work won't enable this to work as on premise API doesn't accept ADF so will need to support translation to Storage format when talking to the API.

@andymac4182 I've prepared a small gist showing how I convert MD to CXHTML using atlaskit:
https://gist.github.com/ThePlenkov/f800bc78cb33fc489d457ab8a4751413