Handle connection errors gracefully

Every now and then HA doesn't get an answer from any of my airco's (I have 4) and throws a long error. It would be great if this error is caught and handled nicely.
2023-09-07 09:26:50.772 ERROR (MainThread) [custom_components.mitsubishi_wf_rac.wfrac.device] Error: something went wrong updating the airco [Airco ec0baefc92e4] values
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 466, in _make_request
six.raise_from(e, None)
File "<string>", line 3, in raise_from
File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 461, in _make_request
httplib_response = conn.getresponse()
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/http/client.py", line 1378, in getresponse
response.begin()
File "/usr/local/lib/python3.11/http/client.py", line 318, in begin
version, status, reason = self._read_status()
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/http/client.py", line 279, in _read_status
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/socket.py", line 706, in readinto
return self._sock.recv_into(b)
^^^^^^^^^^^^^^^^^^^^^^^
TimeoutError: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 486, in send
resp = conn.urlopen(
^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 798, in urlopen
retries = retries.increment(
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/urllib3/util/retry.py", line 550, in increment
raise six.reraise(type(error), error, _stacktrace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/urllib3/packages/six.py", line 770, in reraise
raise value
File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 714, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 468, in _make_request
self._raise_timeout(err=e, url=url, timeout_value=read_timeout)
File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 357, in _raise_timeout
raise ReadTimeoutError(
urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host='<IP_ADDRESS>', port=51443): Read timed out. (read timeout=30)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/config/custom_components/mitsubishi_wf_rac/wfrac/device.py", line 53, in update
response = await self._api.get_aircon_stats()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/mitsubishi_wf_rac/wfrac/repository.py", line 110, in get_aircon_stats
result = await self._post("getAirconStat")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/mitsubishi_wf_rac/wfrac/repository.py", line 66, in _post
response = await self._hass.async_add_executor_job(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/api.py", line 115, in post
return request("post", url, data=data, json=json, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/api.py", line 59, in request
return session.request(method=method, url=url, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 532, in send
raise ReadTimeout(e, request=request)
requests.exceptions.ReadTimeout: HTTPConnectionPool(host='<IP_ADDRESS>', port=51443): Read timed out. (read timeout=30)

First of all, thank you for taking the trouble to write this integration!
I'm having a very similar problem here, also with 4 airco units. After about every reboot, one of the four does not come to live, with a log message like this:
Logger: custom_components.mitsubishi_wf_rac.wfrac.device
Source: custom_components/mitsubishi_wf_rac/wfrac/repository.py:66
Integration: Mitsubishi WF-RAC ([documentation](https://github.com/jeatheak/Mitsubishi-WF-RAC-Integration/))
First occurred: 4:34:35 PM (1 occurrences)
Last logged: 4:34:35 PM

Error: something went wrong updating the airco [Airco werkkamer] values
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/lib/python3.10/site-packages/urllib3/util/connection.py", line 95, in create_connection
    raise err
  File "/usr/local/lib/python3.10/site-packages/urllib3/util/connection.py", line 85, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

which then triggers a cascade of errors in the log.
It's not always the same unit that doesn't work. Sometimes, after a series of HA restarts, all 4 work so I wouldn't expect some actual incompatibility. As the official Smart M-Air app itself also takes several seconds to connect to the 4 units,
and even had some real trouble keeping all 4 units connected when I didn't use their cloud account yet, I suspect that connection failures are to be expected and retried periodically with this interface.

First of all, thank you for taking the trouble to write this integration!
I'm having a very similar problem here, also with 4 airco units. After about every reboot, one of the four does not come to live, with a log message like this:
Logger: custom_components.mitsubishi_wf_rac.wfrac.device
Source: custom_components/mitsubishi_wf_rac/wfrac/repository.py:66
Integration: Mitsubishi WF-RAC ([documentation](https://github.com/jeatheak/Mitsubishi-WF-RAC-Integration/))
First occurred: 4:34:35 PM (1 occurrences)
Last logged: 4:34:35 PM

Error: something went wrong updating the airco [Airco werkkamer] values
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/lib/python3.10/site-packages/urllib3/util/connection.py", line 95, in create_connection
    raise err
  File "/usr/local/lib/python3.10/site-packages/urllib3/util/connection.py", line 85, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

which then triggers a cascade of errors in the log.
It's not always the same unit that doesn't work. Sometimes, after a series of HA restarts, all 4 work so I wouldn't expect some actual incompatibility. As the official Smart M-Air app itself also takes several seconds to connect to the 4 units, and even had some real trouble keeping all 4 units connected when I didn't use their cloud account yet, I suspect that connection failures are to be expected and retried periodically with this interface.

Same problem here. 3 units and often when I reboot Home Assistant, 1 of 2 don't connect.
airco log.txt

First of all, thank you for taking the trouble to write this integration!
I'm having a very similar problem here, also with 4 airco units. After about every reboot, one of the four does not come to live, with a log message like this:
Logger: custom_components.mitsubishi_wf_rac.wfrac.device
Source: custom_components/mitsubishi_wf_rac/wfrac/repository.py:66
Integration: Mitsubishi WF-RAC ([documentation](https://github.com/jeatheak/Mitsubishi-WF-RAC-Integration/))
First occurred: 4:34:35 PM (1 occurrences)
Last logged: 4:34:35 PM

Error: something went wrong updating the airco [Airco werkkamer] values
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/site-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/lib/python3.10/site-packages/urllib3/util/connection.py", line 95, in create_connection
    raise err
  File "/usr/local/lib/python3.10/site-packages/urllib3/util/connection.py", line 85, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

which then triggers a cascade of errors in the log.
It's not always the same unit that doesn't work. Sometimes, after a series of HA restarts, all 4 work so I wouldn't expect some actual incompatibility. As the official Smart M-Air app itself also takes several seconds to connect to the 4 units, and even had some real trouble keeping all 4 units connected when I didn't use their cloud account yet, I suspect that connection failures are to be expected and retried periodically with this interface.

Same problem here. 3 units and often when I reboot Home Assistant, 1 of 2 don't connect.
airco log.txt

Same here as well. After a HA Core update for example, I typically have to restart HA a few more times to ensure all AC entities are visible again.


Fix exit code in service-boot.sh

The previous pattern <command> || exit $? actually doesn't work.
Use set -e in the script instead.

Coverage remained the same at 34.095% when pulling b180894e29d8bc80ca83c550cb61165cfbad2dad on zhiyuhe/fix_install_exit into 292ce2c577d1de9fac6bf8029d35e85da9498090 on master.


Question about refactoring

In your instructions, you said change  applicationId to com.yourname.themename. So I renamed it to com.erraticfox.arkham and then you said Enter the desired first part of your package name(should be same as that in applicationId of bild.gradle) and click refactor so I right-clicked the substratum folder and refactored to com because as you said again Enter the desired first part of your package name(should be same as that in applicationId of bild.gradle) and when I click DO REFACTOR it says there's already a folder with that name. What do I do?

Delete the com folder which is already there and then do refractor.

Alright, thanks! I went ahead and just did org.erraticfox.arkham. When I do Step 1 and 2 and install it, it says it couldn't verify integrity and it needs rebased on the new format.

Generate a signed apk and install it .
Dont use the "run" feature

@srisurya95 Ensure that you have Instant Run turned off, and you can use the "Run" feature from Android Studio. Once you have Instant Run disabled on your project, edit your app configuration to launch No Activity to install the APK silently through Android Studio.

@srisurya95 how do I do that? Again, sorry. I'm not familiar with the interface yet. Caring is sharing. :)
@nicholaschum do I just disable Enable instant run to hotswap ...? If so I got that, but I was unable to find the option to launch No Activity, how can I do this?

@ErraticFox

@ErraticFox
build--->generate signed apk

@ErraticFox
Method which Nicholas explained is the better one for debugging.

It worked like a charm. Since I'm new, do you guys have any resources / guides for doing something as simple as making icons for the navBar? Because as I was stuck on this part we are discussing, I went on to step 3 right when I got stuck just to see what else there was and I was completely lost on the overlays part.

@ErraticFox not particularly, but if you want to make different icon packs for navbars you could add an overlay folder "assets/overlays/com.android.systemui.navbars", of which follow the traditional style of overlays like:
"assets/overlays/com.android.systemui.navbars/res/drawable-xxhdpi/image_to_replace"
and you can add more by doing
"assets/overlays/com.android.systemui.navbars/type2_navName1/drawable-xxhdpi/image_to_replace"
"assets/overlays/com.android.systemui.navbars/type2_navName2/drawable-xxhdpi/image_to_replace"
By using type2 overlays you should consult the chart which explains what the three types of modifications you can do in one overlay folder.

@ErraticFox
Substratum G+ community will be helpful for that.

@ErraticFox Test

One more question then I should be good. When you say image_to_replace, I'm assuming I have to rename it the exact image name. If so, how do I go able getting the image name?

@ErraticFox like ic_sysbar_home is an image you want to replace. But you'll have to find it within a decompiled version of SystemUI.apk

Alright, I've made it all the way to privacy now. Generated Signed APK, installed and it says it's not licensed. I've checked logcats for everything and I can't find anything named SubstratumAntiPiracyLog

Did you enable ".enableInstallerId(InstallerID.GOOGLE_PLAY)" but installed it from your phone?
That means that it will force the user to only be able to use that from the Play Store and if you installed it by hand then it isn't matching that tag.

So does this mean they can only install it via APK? .enableInstallerId(InstallerID.GOOGLE_PLAY) is not commented, so it should be enabled. So how do I go about getting the SubstratumAntiPiracyLog to pop up? It's inside Substratum. So it did install.

@ErraticFox as I said previously, if you had it enabled (non commented), it will trip it up when you install it manually by hand. Only Play Store installs will be verified.

Uninstall it, comment that line out, reinstall it with the new APK, then which CatLog should I be looking at for SubstratumAntiPiracyLog ?

As long as you have this line, AND AntiPiracy is running, you just need to check your logcat.
https://github.com/TeamSubstratum/SubstratumThemeTemplate/blob/master/app/src/main/java/substratum/theme/template/SubstratumLauncher.java#L51
Any further questions, please take it to the G+. Thanks!


(AzureCXP) fixes MicrosoftDocs/azure-docs#99786

Performed changes line number 228
changed from
--source samples/aci-helloworld:latest
changed to
--source aci-helloworld:latest \

Learn Build status updates of commit 24e0fd8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

articles/container-registry/container-registry-import-images.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@tejaswikolli-web
Can you review the proposed changes? IMPORTANT: When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


GPII-4483: Update dependencies.

See GPII-4483 for details.

Cheers, cut the release and did the rest of the housekeeping.  Doesn't seem to help with Javi's issue, but it was worth getting it out of the way.


Release a new version?

Hello,
I'm a user of greenclip, and I'm migrating to NixOS. While trying to install greenclip, but the build fails. Can you please release v3 to http://hackage.haskell.org/package/greenclip ?
Please see https://github.com/NixOS/nixpkgs/issues/43684 for context.

Completly forgot about hackage, will do it during the week-end

I have bumped the package on hackage, let me know if you succeed to install it on NixOS.
If it use ghc 8.4.3 it may not compile as one of my dependance is out of date https://github.com/supki/wordexp
I will need to contact the owner to update it or fork the project inside greenclip to patch it.

It's failing and I don't know much about Haskell to know why, here's the error message:
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file greenclip-3.0.2/greenclip.cabal
patching sources
compileBuildDriverPhase
setupCompileFlags: -package-db=/tmp/nix-build-greenclip-3.0.2.drv-0/setup-package.conf.d -j12 -threaded
[1 of 1] Compiling Main             ( /nix/store/4mdp8nhyfddh7bllbi7xszz7k9955n79-Setup.hs, /tmp/nix-build-greenclip-3.0.2.drv-0/Main.o )
Linking Setup ...
configuring
configureFlags: --verbose --prefix=/nix/store/ndgclzjcngd2djzp35rh4zinfan4yv0f-greenclip-3.0.2 --libdir=$prefix/lib/$compiler --libsubdir=$pkgid --docdir=/nix/store/r5w1rcmjdr1mb812qgryfi5y4skbsdgm-greenclip-3.0.2-doc/share/doc/greenclip-3.0.2 --with-gcc=gcc --package-db=/tmp/nix-build-greenclip-3.0.2.drv-0/package.conf.d --ghc-option=-j12 --disable-split-objs --enable-library-profiling --profiling-detail=all-functions --disable-profiling --enable-shared --disable-coverage --enable-static --disable-executable-dynamic --enable-tests --enable-library-vanilla --enable-library-for-ghci --ghc-option=-split-sections --extra-lib-dirs=/nix/store/2ycq3hgnkczlb06hy79lmficf392qgfd-ncurses-6.1/lib --extra-lib-dirs=/nix/store/jvz2yldc7kcfxrfwi44dys82rf9qgwwl-gmp-6.1.2/lib
Using Parsec parser
Configuring greenclip-3.0.2...
CallStack (from HasCallStack):
  die', called at libraries/Cabal/Cabal/Distribution/Simple/Configure.hs:958:20 in Cabal-<IP_ADDRESS>:Distribution.Simple.Configure
  configureFinalizedPackage, called at libraries/Cabal/Cabal/Distribution/Simple/Configure.hs:462:12 in Cabal-<IP_ADDRESS>:Distribution.Simple.Configure
  configure, called at libraries/Cabal/Cabal/Distribution/Simple.hs:596:20 in Cabal-<IP_ADDRESS>:Distribution.Simple
  confHook, called at libraries/Cabal/Cabal/Distribution/Simple/UserHooks.hs:67:5 in Cabal-<IP_ADDRESS>:Distribution.Simple.UserHooks
  configureAction, called at libraries/Cabal/Cabal/Distribution/Simple.hs:178:19 in Cabal-<IP_ADDRESS>:Distribution.Simple
  defaultMainHelper, called at libraries/Cabal/Cabal/Distribution/Simple.hs:115:27 in Cabal-<IP_ADDRESS>:Distribution.Simple
  defaultMain, called at /nix/store/4mdp8nhyfddh7bllbi7xszz7k9955n79-Setup.hs:2:8 in main:Main
Setup: Encountered missing dependencies:
base >=4 && <<IP_ADDRESS>, protolude -any, wordexp -any

Can you enable a verbose mode ?
Because the error is just saying that a dependency is missing, but there is no information regarding which one

I think the missing dependencies are protolude and wordexp. When I add them to the nix derivation I get another error.
The nix derivation with added deps
  "greenclip" = callPackage
    ({ mkDerivation, base, binary, classy-prelude, directory, microlens
     , microlens-mtl, protolude, text, unix, utf8-string, vector, wordexp, X11
     }:
     mkDerivation {
       pname = "greenclip";
       version = "3.0.2";
       sha256 = "1b1nx2jnwal1fhwh7cq0hv1nrwc2hzzh96yab6cpv0r8bm34qxs7";
       isLibrary = false;
       isExecutable = true;
       executableHaskellDepends = [
         base binary classy-prelude directory microlens microlens-mtl protolude
         text unix utf8-string vector wordexp X11
       ];
       description = "Simple clipboard manager to be integrated with rofi";
       license = stdenv.lib.licenses.bsd3;
       hydraPlatforms = stdenv.lib.platforms.none;
     }) {};

And the error:
building '/nix/store/f8glrczpvgm61l34iikw6i45cgmzah8z-greenclip-3.0.2.drv'...
setupCompilerEnvironmentPhase
Build with /nix/store/p372bagly14f82850qkzpjyimvw8ipqy-ghc-8.2.2.
ignoring (possibly broken) abi-depends field for packages
ignoring (possibly broken) abi-depends field for packages
unpacking sources
unpacking source archive /nix/store/a2k1hakrv01k926xpvv8nj126py1hshd-greenclip-3.0.2.tar.gz
source root is greenclip-3.0.2
setting SOURCE_DATE_EPOCH to timestamp<PHONE_NUMBER> of file greenclip-3.0.2/greenclip.cabal
patching sources
compileBuildDriverPhase
setupCompileFlags: -package-db=/tmp/nix-build-greenclip-3.0.2.drv-0/setup-package.conf.d -j1 -threaded
[1 of 1] Compiling Main             ( /nix/store/4mdp8nhyfddh7bllbi7xszz7k9955n79-Setup.hs, /tmp/nix-build-greenclip-3.0.2.drv-0/Main.o )
Linking Setup ...
configuring
configureFlags: --verbose --prefix=/nix/store/6lza6f4m3x2qjbdiw21rp0rvs5w9mxx0-greenclip-3.0.2 --libdir=$prefix/lib/$compiler --libsubdir=$pkgid --docdir=/nix/store/hz5mpmk331jnxi2wf7bz2sammygrylla-greenclip-3.0.2-doc/share/doc/greenclip-3.0.2 --with-gcc=gcc --package-db=/tmp/nix-build-greenclip-3.0.2.drv-0/package.conf.d --ghc-option=-j1 --disable-split-objs --enable-library-profiling --profiling-detail=all-functions --disable-profiling --enable-shared --disable-coverage --disable-executable-dynamic --enable-tests --enable-library-vanilla --enable-library-for-ghci --ghc-option=-split-sections --extra-lib-dirs=/nix/store/q8rg4mca5zqv98arpxd7164pqa72hf1n-ncurses-6.1/lib --extra-lib-dirs=/nix/store/hhzvw77vrmn5f506kfyb1yh1sdinkbwf-gmp-6.1.2/lib
Configuring greenclip-3.0.2...
Dependency X11 >=1.6: using X11-1.8
Dependency base >=4 && <<IP_ADDRESS>: using base-<IP_ADDRESS>
Dependency binary -any: using binary-<IP_ADDRESS>
Dependency bytestring -any: using bytestring-<IP_ADDRESS>
Dependency directory -any: using directory-<IP_ADDRESS>
Dependency exceptions -any: using exceptions-0.8.3
Dependency hashable -any: using hashable-<IP_ADDRESS>
Dependency microlens -any: using microlens-<IP_ADDRESS>
Dependency microlens-mtl -any: using microlens-mtl-<IP_ADDRESS>
Dependency protolude -any: using protolude-0.2.2
Dependency text -any: using text-<IP_ADDRESS>
Dependency unix -any: using unix-<IP_ADDRESS>
Dependency vector -any: using vector-<IP_ADDRESS>
Dependency wordexp -any: using wordexp-<IP_ADDRESS>
Setup: The program 'pkg-config' version >=0.9.0 is required but it could not
be found.
builder for '/nix/store/f8glrczpvgm61l34iikw6i45cgmzah8z-greenclip-3.0.2.drv' failed with exit code 1

This derivation compile successfully:
    ({ mkDerivation, base, binary, classy-prelude, directory, libXdmcp
     , microlens, microlens-mtl, pkgconfig, protolude, text, unix,
     , utf8-string, vector, wordexp, x11, X11
     }:
     mkDerivation {
       pname = "greenclip";
       version = "3.0.2";
       sha256 = "1b1nx2jnwal1fhwh7cq0hv1nrwc2hzzh96yab6cpv0r8bm34qxs7";
       isLibrary = false;
       isExecutable = true;
       executableHaskellDepends = [
         base binary classy-prelude directory microlens microlens-mtl protolude
         text unix utf8-string vector wordexp X11 pkgconfig
       ];
       libraryPkgconfigDepends = [
         x11 libXdmcp
       ];
       description = "Simple clipboard manager to be integrated with rofi";
       license = stdenv.lib.licenses.bsd3;
       hydraPlatforms = stdenv.lib.platforms.none;
     }) {};

However when I run greenclip daemon or greenclip print I get errors:
Data.Binary.Get.runGet at position 81: not enough bytes
CallStack (from HasCallStack):
  error, called at libraries/binary/src/Data/Binary/Get.hs:351:5 in binary-<IP_ADDRESS>:Data.Binary.Get

Yup checked it and it works fine. Thank you !

If it use ghc 8.4.3 it may not compile as one of my dependance is out of date https://github.com/supki/wordexp

I'm guessing that might be the reason.

How did you endup being able to build it @Tomahna but not you @kalbasit  ?

I'm using a slightly older version of nixpkgs which must not have introduced the problem with wordexp yet.
I'm using the nixos-unstable channel which is currently 8-10 days behind the master branch. I'll definitely have the same problem soon.

I will try to submit a patch to the maintainer during this week as he seems still active on github.

https://github.com/supki/wordexp/pull/1

Merge and released on hackage, let me know if it fix your issue

@erebe awesome, I'll test as soon as the update shows up in nixpkgs!

Some news ?

A new version of nixos-unstable has been released yesterday. I tested it today but, sadly, it does not includes the latest versions of wordexp and greenclip.

Thanks for the reply.
So let's wait for the next version of the unstable

I'll try cherry-picking the update commit as soon as it lands on the master.

You need to take the 3.1 version of greenclip on hackage, I have removed the constraint base <<IP_ADDRESS> as wordexp is now able to build with base > <IP_ADDRESS>

@erebe awesome, thank you! The following overlay fixed the issue for me. I updated it to v3.1.1 but I also encountered an issue where xdmcp is not found. I think this issue can now be closed, I'll have to deal with nixpkgs downstream to fix the xdmcp issue that fixed in my overlay.
self: super:

{
  haskellPackages = super.haskellPackages.override {
    overrides = hsSelf: hsSuper: {
      greenclip  = self.haskell.lib.overrideCabal hsSuper.greenclip  (oa: {
        version = "3.1.1";
        sha256 = "1axh1q7kcvcnhn4rl704i4gcix5yn5v0sb3bdgjk4vgkd7fv8chw";
        executablePkgconfigDepends = oa.executablePkgconfigDepends ++ [super.xorg.libXdmcp];
      });

      wordexp  = self.haskell.lib.overrideCabal hsSuper.wordexp  (oa: {
        version = "0.2.2";
        sha256 = "1mbcrq89jz0dcibw66w0jdy4f4bfpx4zwjfs98rm3jjgdikwdzb4";
      });
    };
  };
}

@kalbasit do you know where I paste that snippet (I assume it is the solution?). Thanks

@chrissound you should add that as an overlay. The easiest way is to add that to your ~/.config/nixpkgs/overlays.nix (create the file if it does not exist). You can find the latest version of the snippet above at https://github.com/kalbasit/shabka/blob/master/overlays/greenclip.nix
The nixpkgs manual is also a great resource for overlays, https://nixos.org/nixpkgs/manual/#chap-overlays

Works great, many thanks @Tomahna. Had some issue getting the nix overlay configured.


Create a draft development workflow policy

We need a standardized procedure for managing our git repositories. The aim of this issue is to create a draft document which will specify how repositories should be branched and merged, and how code updates should be deployed from development to staging to production.

https://docs.google.com/document/d/1jxyQoWkQ7nXUR6xZpX8eBUN5QQiOPha4f1ZChtV7nKQ/edit#heading=h.h6sh2ltzzg81


HTML repr for awkward instances

Description of new feature
The current implementation shows awkward instances (principally arrays) as blocks of XML. Since a lot of usage will be via notebooks, it would be very helpful to provide a visual layout, including expandable sections. The dask project has undertaken such work over the last couple of years, and users of, for example, the array API have found it to be very useful.

The XML blocks are for the layouts only, which are public API, but somewhat of a "debugging view" for developers. (Awkward v2 can't be wrapped with the high-level ak.Array yet, so right now, it's the only view for v2.) The choice of XML was because it's human readable, has a natural indentation, and kinda looks like standard Python reprs that are enclosed in angle brackets (<, >). The motivations weren't any deeper than that, and there is no program that I know of that expects them to be strict XML.
HTML views would be cool, but that strikes me as a high-level thing, for ak.Array. (Though I suppose both high- and low-level views could get an HTML treatment.) I wonder what form it should take: nested boxes? a tree?
It would be important for the default rendering to not be large, even if the type contains records with many fields. These things will pop up in output, unasked for, and it can be annoying when such things make the window scroll (like Matplotlib's histograms when you forget to add a semicolon).
Maybe if the representation starts small and only gets big if you click on parts to unpack them? (Like a GitHub diff, which provides more context if you click on "...".) Maybe type information could be integrated into values?

Oh certainly for both! I was mainly talking about the contents/layout XML, but it would make a lot of sense to include that in the higher-level objects too, as expandable parts. Note that the text repr, when not in the notebook, will remain unchanged.


Removed commit message from calc-stats function

What does this PR do ?
This PR resolves the issue of unnecessary commit messages when executing vc-analyze calc-stats /path
Fixes #23
Before:

After:

Gg this works✨


Worker (.net version) is notoriously flaky (workaround included)

Description
There's something with the .net version of the worker app that causes it to randomly not connect to db or redis on startup, which results in a crash. Over the last year I've had thousands of students use this app to learn docker and swarm, and one of the most common issues is this worker failing on startup. It happens on all modern docker versions, across platforms, and there is no common theme to why it doesn't work.
Today in testing, we killed the broken service, which was re-creating the task over and over and it was failing, and once the service was recreated, and it worked... with no changes in how we created it. See log below for typical behavior. The stack trace tells you it can't resolve something, but doesn't show what it can't look up, so I can't tell what it thinks the problem is. From all the cases I've seen and testing I've done, it's not related to other services being down or general network issues.
This also happens for Kubernetes, as seen by other issues reported in this repo.
Hundreds of people have reported this problem to me, and deploying the java version fixes the issue.
Workaround
Deploy the java version of the worker, which I have build here: bretfisher/examplevotingapp_worker:java
Steps to reproduce the issue, if relevant:
In swarm:

deploy all voting app services except worker. Ensure they work as they should.
deploy .net version of worker, using examples in this repo README
random deploys will randomly fail with stack trace of "no such device or address"
service will create a new task, that may work, or may not

Describe the results you received:
Notice below that we created a worker service with two replicas, and you'll see one replica work, and the other fail, then get re-created on the same node and work the 2nd time. It's random if it fails, and which one would fail.
➜  vote git:(master) ✗ docker service logs 413rw4tamzd6
vote_worker.2.itk0wfpt22gh@node3    | Waiting for db
vote_worker.2.itk0wfpt22gh@node3    | Connected to db
vote_worker.2.itk0wfpt22gh@node3    | Found redis at <IP_ADDRESS>
vote_worker.2.itk0wfpt22gh@node3    | Connecting to redis
vote_worker.2.itk0wfpt22gh@node3    | Processing vote for 'a' by 'fb54d895d481b473'
vote_worker.2.tv9i1viknli2@node3    | System.AggregateException: One or more errors occurred. (No such device or address) ---> System.Net.Internals.SocketExceptionFactory+ExtendedSocketException: No such device or address
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6)
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.ResolveCallback(Object context)
vote_worker.2.tv9i1viknli2@node3    | --- End of stack trace from previous location where exception was thrown ---
vote_worker.2.tv9i1viknli2@node3    |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.HostResolutionEndHelper(IAsyncResult asyncResult)
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.EndGetHostAddresses(IAsyncResult asyncResult)
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.<>c.<GetHostAddressesAsync>b__25_1(IAsyncResult asyncResult)
vote_worker.2.tv9i1viknli2@node3    |    at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)
vote_worker.2.tv9i1viknli2@node3    |    --- End of inner exception stack trace ---
vote_worker.2.tv9i1viknli2@node3    |    at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
vote_worker.2.tv9i1viknli2@node3    |    at Npgsql.NpgsqlConnector.Connect(NpgsqlTimeout timeout)
vote_worker.2.tv9i1viknli2@node3    |    at Npgsql.NpgsqlConnector.RawOpen(NpgsqlTimeout timeout)
vote_worker.2.tv9i1viknli2@node3    |    at Npgsql.NpgsqlConnector.Open(NpgsqlTimeout timeout)
vote_worker.2.tv9i1viknli2@node3    |    at Npgsql.ConnectorPool.Allocate(NpgsqlConnection conn, NpgsqlTimeout timeout)
vote_worker.2.tv9i1viknli2@node3    |    at Npgsql.NpgsqlConnection.OpenInternal()
vote_worker.2.tv9i1viknli2@node3    |    at Worker.Program.OpenDbConnection(String connectionString) in /code/src/Worker/Program.cs:line 78
vote_worker.2.tv9i1viknli2@node3    |    at Worker.Program.Main(String[] args) in /code/src/Worker/Program.cs:line 19
vote_worker.2.tv9i1viknli2@node3    | ---> (Inner Exception #0) System.Net.Internals.SocketExceptionFactory+ExtendedSocketException (0x00000005): No such device or address
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.InternalGetHostByName(String hostName, Boolean includeIPv6)
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.ResolveCallback(Object context)
vote_worker.2.tv9i1viknli2@node3    | --- End of stack trace from previous location where exception was thrown ---
vote_worker.2.tv9i1viknli2@node3    |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.HostResolutionEndHelper(IAsyncResult asyncResult)
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.EndGetHostAddresses(IAsyncResult asyncResult)
vote_worker.2.tv9i1viknli2@node3    |    at System.Net.Dns.<>c.<GetHostAddressesAsync>b__25_1(IAsyncResult asyncResult)
vote_worker.2.tv9i1viknli2@node3    |    at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic(IAsyncResult iar, Func`2 endFunction, Action`1 endAction, Task`1 promise, Boolean requiresSynchronization)<---
vote_worker.2.tv9i1viknli2@node3    |
vote_worker.1.hjt41aigtbwq@node2    | Waiting for db
vote_worker.1.hjt41aigtbwq@node2    | Waiting for db
vote_worker.1.hjt41aigtbwq@node2    | Waiting for db
vote_worker.1.hjt41aigtbwq@node2    | Waiting for db
vote_worker.1.hjt41aigtbwq@node2    | Waiting for db
vote_worker.1.hjt41aigtbwq@node2    | Connected to db
vote_worker.1.hjt41aigtbwq@node2    | Found redis at <IP_ADDRESS>
vote_worker.1.hjt41aigtbwq@node2    | Connecting to redis
vote_worker.1.hjt41aigtbwq@node2    | Processing vote for 'b' by 'fb54d895d481b473'

Describe the results you expected:
Worker always works :)
Additional information you deem important (e.g. issue happens only occasionally):
Output of docker version:
root@node3:~# docker version
Client:
 Version:           18.09.5
 API version:       1.39
 Go version:        go1.10.8
 Git commit:        e8ff056
 Built:             Thu Apr 11 04:44:24 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          18.09.5
  API version:      1.39 (minimum version 1.12)
  Go version:       go1.10.8
  Git commit:       e8ff056
  Built:            Thu Apr 11 04:10:53 2019
  OS/Arch:          linux/amd64
  Experimental:     false

Output of docker info:
root@node3:~# docker info
Containers: 20
 Running: 0
 Paused: 0
 Stopped: 20
Images: 38
Server Version: 18.09.5
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: active
 NodeID: 1zyd50hmid7dado3s02tago7y
 Is Manager: true
 ClusterID: spa40crzsqgtn4pix7hj4sac1
 Managers: 3
 Nodes: 3
 Default Address Pool: <IP_ADDRESS>/8
 SubnetSize: 24
 Orchestration:
  Task History Retention Limit: 5
 Raft:
  Snapshot Interval: 10000
  Number of Old Snapshots to Retain: 0
  Heartbeat Tick: 1
  Election Tick: 10
 Dispatcher:
  Heartbeat Period: 5 seconds
 CA Configuration:
  Expiry Duration: 3 months
  Force Rotate: 0
 Autolock Managers: false
 Root Rotation In Progress: false
 Node Address: <IP_ADDRESS>
 Manager Addresses:
  <IP_ADDRESS>:2377
  <IP_ADDRESS>:2377
  <IP_ADDRESS>:2377
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: bb71b10fd8f58240ca47fbb579b9d1028eea7c84
runc version: 2b18fe1d885ee5083ef9f0838fee39b62d653e30
init version: fec3683
Security Options:
 apparmor
 seccomp
  Profile: default
Kernel Version: 4.4.0-154-generic
Operating System: Ubuntu 16.04.6 LTS
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 992.1MiB
Name: node3
ID: UA2M:37YB:EPX6:BKDU:WMNA:3F4A:GVE6:X3GD:Q3UK:YKYF:6J2H:QQNC
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
 <IP_ADDRESS>/8
Live Restore Enabled: false
Product License: Community Engine

WARNING: No swap limit support

Additional environment details (AWS, Docker for Mac, Docker for Windows, VirtualBox, physical, etc.):
This has happened on Docker Desktop, Digital Ocean, Docker Toolbox on VirtualBox, and more.

I'm doing Bret's course (120% useful 😉) and I can confirm the same behaviour with current Docker CE version 19.03.1:
docker version:
Client: Docker Engine - Community
 Version:           19.03.1
 API version:       1.40
 Go version:        go1.12.5
 Git commit:        74b1e89
 Built:             Thu Jul 25 21:21:05 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.1
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.5
  Git commit:       74b1e89e8a
  Built:            Thu Jul 25 21:27:55 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.2.6
  GitCommit:        894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc:
  Version:          1.0.0-rc8
  GitCommit:        425e105d5a03fabd737a126ad93d62a9eeede87f
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

docker info:
Client:
 Debug Mode: false

Server:
 Containers: 2
  Running: 2
  Paused: 0
  Stopped: 0
 Images: 3
 Server Version: 19.03.1
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: active
  NodeID: vpe4ire3d489jbp4pqwrpcxmf
  Is Manager: true
  ClusterID: gzt5kws74f8vu9oneudbhlqnf
  Managers: 1
  Nodes: 3
  Default Address Pool: <IP_ADDRESS>/8
  SubnetSize: 24
  Data Path Port: 4789
  Orchestration:
   Task History Retention Limit: 5
  Raft:
   Snapshot Interval: 10000
   Number of Old Snapshots to Retain: 0
   Heartbeat Tick: 1
   Election Tick: 10
  Dispatcher:
   Heartbeat Period: 5 seconds
  CA Configuration:
   Expiry Duration: 3 months
   Force Rotate: 0
  Autolock Managers: false
  Root Rotation In Progress: false
  Node Address: <IP_ADDRESS>
  Manager Addresses:
   <IP_ADDRESS>:2377
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
 init version: fec3683
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 4.14.134-boot2docker
 Operating System: Boot2Docker 19.03.1 (TCL 10.1)
 OSType: linux
 Architecture: x86_64
 CPUs: 1
 Total Memory: 989.5MiB
 Name: node1
 ID: 25IG:VCNG:ICH2:K4K5:OQMM:H5HP:O25K:6UD6:TIPU:F27K:FJOV:TTBU
 Docker Root Dir: /mnt/sda1/var/lib/docker
 Debug Mode: false
 Username: logoff
 Registry: https://index.docker.io/v1/
 Labels:
  provider=virtualbox
 Experimental: false
 Insecure Registries:
  <IP_ADDRESS>/8
 Live Restore Enabled: false
 Product License: Community Engine

One issue that has caused this is the lack of correct depends_on for worker in the compose files. I've created PR #141 to resolve that, which should ensure that both redis and db services (and their DNS) are created before the .net worker starts.

I must have an older verion of your repo, because the worker is listed before the db and I had this issue. Creating the db service before the worker fixed it for me!

I'm thinking this issue should be good to go now. Thoughts @BretFisher ?


[Feature Request]: Ability to store encrypted passwords as variables

What would you like to happen?
I can have an RDBMS connection defined, and use variables defined in project environments for the db name and the db host etc.
If I input the password for the RDBMS connection, that password is stored encrypted in the corresponding metadata file.
If I have different passwords in different environments, while I can specify a variable and store the different passwords against that variable in the environment files, and use that variable for the password in the RDBMS connection info, the passwords get stored in clear text in the environment files.
So, there should be a way of telling Hop that the value for a variable needs to be stored encrypted in the environment file.
Issue Priority
Priority: 3
Issue Component
Component: Hop Config

I am aware that it can be achieved by using hop-encrypt and manually updating the enviroment's .json file, but it would be nice to simply have it happen through the gui

great request @kranskydog,
An extra UI option to generate the string would be helpful indeed.

Before:

After:

It uses the password encoder that is configured, including the AES plugin.


(Windows) Crashes after debug

Currently on a properly setup windows install of jitstreamer it currently crashes when you activate jit. everything else like mounting or pairing works perfectly fine.

Error 1
Fault bucket<PHONE_NUMBER>595307350, type 4
Event Name: APPCRASH
Response: Not available
Cab Id: 0
Problem signature:
P1: jit_streamer-x86_64-pc-windows-gnu.exe
P2: <IP_ADDRESS>
P3: 6245fc3d
P4: ntdll.dll
P5: 10.0.19041.1566
P6: 1be73aa8
P7: c0000005
P8:<PHONE_NUMBER>0a6c3b
P9:
P10:
Attached files:
\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER91CE.tmp.dmp
\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER929A.tmp.WERInternalMetadata.xml
\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER92BA.tmp.xml
\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER92C8.tmp.csv
\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER9317.tmp.txt
These files may be available here:
\?\C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_jit_streamer-x86_4a539bd47932fac9f1456fb992a3601e9027a61d_f2fb59df_f6a88e12-0cf4-430f-88a7-489fd1b3a29c
Analysis symbol:
Rechecking for solution: 0
Report Id: d0cb5db3-0a61-45cb-abff-604a32cc0128
Report Status: 268435456
Hashed bucket: 321e6364b225864319164efb84112756
Cab Guid: 0
Error 2
Faulting application name: jit_streamer-x86_64-pc-windows-gnu.exe, version: <IP_ADDRESS>, time stamp: 0x6245fc3d
Faulting module name: ntdll.dll, version: 10.0.19041.1566, time stamp: 0x1be73aa8
Exception code: 0xc0000005
Fault offset: 0x00000000000a6c3b
Faulting process id: 0x3134
Faulting application start time: 0x01d84a16b1e9a51c
Faulting application path: C:\Users\NameUnimportant\Downloads\jitstreamer\jit_streamer-x86_64-pc-windows-gnu.exe
Faulting module path: C:\Windows\SYSTEM32\ntdll.dll
Report Id: d0cb5db3-0a61-45cb-abff-604a32cc0128
Faulting package full name:
Faulting package-relative application ID:

Can you give us information about the system? OS, architecture, iPhone model etc.

OS: windows 10 21h2 build 19044.1620
Architecture: intel x86_64
Cpu: i3 350m
Ram: 16gb
idevice: iPhone 8 Plus iOS 15.0.2
The logs was received from event viewer in the original post.

I haven't been able to test it. There are no pre-made binaries to test that with i could try out building at some point.

If anyone wants to help debug this, it needs to be run in an mingw64 env so we can see the unwind or possibly a segfault. Running in an MSVC env doesn't seem to give proper crash information.

ok so @jkcoxson, i use msys2 mingw64 to run the program with logging enabled and here is a screenshot of the logs. Hope this helps.


Performance Issue: Unnecessary GET request for deleting frames

Description
https://github.com/dsc-x/omg-frames/blob/332ec82c7905799a4986ac81c20772e08fd35d6c/js/loginsignup.js#L162-L181
When a user heads over to gallery.html and then deletes an image, two requests happen one DELETE and another GET (line number 169) . Now the GET request is very time-consuming, so we should try to make fewer GET requests.
Solution
When the user first loads the gallery.html, we make one GET request and store the data we get in an array. Each element of an array represent one frame. For deletion, we can simply make the DELETE request and remove the corresponding frame from the array, and also toggle the display of that frame. This will make sure that there is one GET request in that user session.

Previously:
gallery.html loads ---> getframes() called with GET request for Getting Frames
if (user deletes frame ){
deleteframe() called
getframes() again called for fetching again frames
}
Now:
gallery.html loads ---> getframes() called with GET request for Getting Frames --->all frames stored in array ---> displayarrayofframes() called for displaying fetched array
if (user deletes frame ){
deleteframe() called
delete that frame from array
displayarrayofframes() called
}

Previously:
gallery.html loads ---> getframes() called with GET request for Getting Frames
if (user deletes frame ){
deleteframe() called
getframes() again called for fetching again frames
}
Now:
gallery.html loads ---> getframes() called with GET request for Getting Frames --->all frames stored in array ---> displayarrayofframes() called for displaying fetched array
if (user deletes frame ){
deleteframe() called
delete that frame from array
displayarrayofframes() called
}


PlayOrder not being read

Hello @vers-one,
I think the newest version of the NuGet package doesn't contain the latest version of the assemblies.
When analyzing the assembly in your latest NuGet package I can see that the assembly version is still 2.0.5, despite your adjustions in the project files:
[assembly: TargetFramework(".NETStandard,Version=v1.3", FrameworkDisplayName = "")]
[assembly: AssemblyCompany("vers")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyCopyright("vers, 2015-2018")]
[assembly: AssemblyFileVersion("<IP_ADDRESS>")]
[assembly: AssemblyInformationalVersion("2.0.4")]
[assembly: AssemblyProduct("VersOne.Epub")]
[assembly: AssemblyTitle("VersOne.Epub")]
[assembly: AssemblyVersion("<IP_ADDRESS>")]

This leads to my pull request not being included:
    internal class Program
    {
        static void Main(string[] args)
        {
            var ePub = EpubReader.ReadBook(@"C:\Users\Jann Flepp\Downloads\Tom Christiansen - Perl Cookbook.epub");

            var points = GetNavigationPoints(ePub.Schema.Navigation.NavMap).ToArray();

            Console.WriteLine("Any playorder null: " + (points.Any(p => p.PlayOrder == null) ? "true" : "false"));
        }

        private static IEnumerable<EpubNavigationPoint> GetNavigationPoints(IEnumerable<EpubNavigationPoint> map)
        {
            foreach (var point in map)
            {
                yield return point;
                foreach (var subPoint in GetNavigationPoints(point.ChildNavigationPoints))
                {
                    yield return subPoint;
                }
            }
        }
    }

With NuGet Package
<PackageReference Include="VersOne.Epub" Version="2.0.5" />
Any playorder null: true

With Reference to master branch project
<ProjectReference Include="..\VersOne.Epub\VersOne.Epub.csproj" />
Any playorder null: false

Could you verify my assumptions?
Thanks for your help!

You are right. Sorry about that!
I repackaged the correct binary as <IP_ADDRESS> and published it to the NuGet. Could you please verify that it works now?

No problem, I'm glad that you could already solve the issue.
Thank you for your help!
best regards


CODEOWNERS with list of maintainers

The second attempt of the #6830 that was closed after a discussion.
My proposition is to add the CODEOWNERS file to help for contributors to quickly find a maintainer (as I did myself today). Even better, for those devs that already have a write access they'll automatically be assigned as reviewers for a PR for the particular app.
The other steps like creating luci-dev team as I described in my comment can be done later. But the CODEOWNERS can start helping us today and save time for contributors. We may add a link to it into the PR template.
It won't change anything in terms of security so the PR is safe to merge.

just merge this?

Not much has changed since #6830 which did not receive approval.
(and like jow noted in that PR, the proposed list already contains quite many ancient users who haven't been active for a while)

I guess this is in the catagory "better than nothing". But anyway, somebody needs to make decision, either merge or not. Waiting for the all singing and dancing solution will likely mean nothing will happen.

I've read earlier revisions of info on this document and found some things left unexplained. More recent revisions seem much more clear.
https://github.com/github/docs/blob/main/content/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners.md
But... unless a user mentioned in the CODEOWNERS file has write permissions to this repo, it's nothing more than a glorified reference document (so no behaviour changes will result, at present standards; a good thing). The document needs to be maintained, however. Do you commit to maintaining it?


Access highlighted suggestion from renderSuggestion

In my application, I use css-modules for styling. I also want to style highlighted suggestions differently from non-highlighted suggestions.
Unfortunately, I can't do this without breaking encapsulation, because the highlight class react-autosuggest__suggestion--highlighted is applied to a list item within <Autosuggest>, not to my <Suggestion> component.
I propose passing either highlightedSuggestion, or an isHighlighted flag torenderSuggestion as an additional argument. This way my <Suggestion> component would be able to style itself based on whether or not it was highlighted.

Another possible solution would be to allow users of react-autowhatever and react-autosuggest pass in an onHighlightedItemChange property. This way, the parent component could maintain its own state for highlightedSuggestion, and use this state within renderSuggestion.

I like the idea of adding isHighlighted to renderSuggestion, so the signature becomes:
function renderSuggestion(suggestion, { isHighlighted, query })

Would you like to submit a PR?

Yes, sounds good to me. I'll put together a PR soon.


Fix installation error

Fix #61 and so on.

We need to add the file on post process.

We need to add the file on post process.

What do you mean?

What do you mean?

Rename .gitattribut to make it invalid. (like  .gitattribute.txt)
Recover name from .gitattribute.txt to .gitattribute on post install script as we do for README (https://github.com/koriym/Koriym.PhpSkeleton/blob/f1683486b4232385bb634a60c1fccac0707e1a69/src/Installer.php#L99)

Rename .gitattribut to make it invalid. (like  .gitattribute.txt)
Recover name from .gitattribute.txt to .gitattribute on post install script as we do for README (https://github.com/koriym/Koriym.PhpSkeleton/blob/f1683486b4232385bb634a60c1fccac0707e1a69/src/Installer.php#L99)

@kenjis I'll take care of this issue. Thank you for taking the time to do this!

@kenjis I'll take care of this issue. Thank you for taking the time to do this!

Thanks!

Thanks!


Update artifact id for RxJava2.x branch

Fixed by https://github.com/pwittchen/ReactiveBeacons/commit/5622187caa73c5cc15572739d889bb2e7025865c.


Manipulating GPT Responses (Prefixes & Prompting for Formatting)

I'm querying GPT with a table like:
Name:
Date:
Location:
SF:
And would love for the response to just be the answer alone since I am writing the answer to an excel file that already has the table so my result ends up looking like:
Name: Name: Bob
Date: Date: 1/1/2023
Location: Location: New York
SF: SF: 2000 square feet
Months: Months: 20 months

How do I prevent it from repeating the question in this way
How do I prevent it from providing units (i.e 2000 "square feet" vs. "2000")

Thank you!

Stumbled upon this excellent article on twitter just moments ago. It referenced Riley Goodside prompting GPT to provide an answer in JSON which GPT provided very well structured data in response to: https://blog.humphd.org/pouring-language-through-shape/
So I modified my prompt to: JSON object describing the following: Name: Date (DD/MM/YYYY): Location: Rate ('$x.xx'): Square Footage:
If you print() the response it seems to come out to my exact specifications:
{
"Name": "Jane Doe",
"Date": "01/01/2023",
"Location": "NYC",
"Rate": "$1.50",
"Square Footage": "2,000",
}
Next we parse out the above JSON provided by GPT and assign the answer values from the JSON to the object.
# parse the JSON object returned by GPT
response_json = json.loads(response.response)

# assign the values from the JSON object to variables
name = response_json["Name"]
date = response_json["Date"]
location = response_json["Location"]
rate = response_json["Rate"]
square_footage = response_json["Square Footage"]

Now I have variables that contain the exact data I wanted to retrieve from GPT in the exact format I wanted. BINGO


Sentinel2 L1C requester pays

Hi @vincentsarago :wave:
It happened, AWS now requires a requester pays header for Sentinel2 L1C :cry: . How do we move forward with rio tiler from here?
This is the message I get when running the first example in the README
from rio_tiler import sentinel2
tile, mask = sentinel2.tile('S2A_tile_20170729_19UDP_0', 77, 89, 8)
# rasterio._err.CPLE_AWSAccessDeniedError: Access Denied

Interestingly when I run the command again I get this
# rasterio._err.CPLE_OpenFailedError: '/vsis3/sentinel-s2-l1c/tiles/19/U/DP/2017/7/29/0/preview.jp2' does not exist in the file system, and is not recognized as a supported dataset name.

which is more inline with what my (previously working) lambda sentinel2 tiler is now saying..

Hi @samsammurphy,
To make it work you need to set AWS_REQUEST_PAYER="requester" environment.
I could add a
with rasterio.Env(AWS_REQUEST_PAYER="requester") as env:

but I'm not sure it's the best way to do

Howdy @vincentsarago
I understand the concern that rio tiler uses will be charged by AWS to access L1C now. It has to be really clear to the users (i.e. to avoids nasty surprises).
From the front end maybe this could be a one time configuration setting
from rio_tiler import sentinel2
sentinel2.aws_requester_payer = 'requester'

This could have the effect setting the AWS_REQUEST_PAYER environment variable before running rio tiler, maybe through rasterio as you mentioned, or perhaps as subprocess command?  The latter, however, might not work on all machines (?) and would require python2 vs 3 handling, here's what it might look like anyway..
import subprocess
subprocess.run(['export', 'AWS_REQUEST_PAYER="requester"'])

FYI
There was a ticket couples years ago about the same subject on rasterio: https://github.com/mapbox/rasterio/issues/692

Cheers!
Mojodna suggests a way of setting the environment variable which would handle the reservation I had with my previous subprocess-based suggestion, namely:
os.environ["AWS_REQUEST_PAYER"] = "requester"


Solr error when running dev dataverse container

When starting the dataverse container from dev_env, there is an error creating a new dataverse.
Steps to reproduce:
./rm-env.sh
./run-env.sh 9692-files-api-extension-display-data
login as dataverseAdmin
create a dataverse
error message:

Exception in solr log: solr.log

Unfortunately, I'm having trouble reproducing this:

Here's the output from my run:

output
HMDC-beamish:dev-env pdurbin$ git log --oneline | head -1
c008e4d Merge pull request #176 from IQSS/update-solr-dv6
HMDC-beamish:dev-env pdurbin$
HMDC-beamish:dev-env pdurbin$ ./rm-env.sh
WARNING: The DATAVERSE_IMAGE_TAG variable is not set. Defaulting to a blank string.
WARNING: The DATAVERSE_BOOTSTRAP_TIMEOUT variable is not set. Defaulting to a blank string.
Removing network dev-env_dataverse
WARNING: Network dev-env_dataverse not found.
Removing network dev-env_default
WARNING: Network dev-env_default not found.
HMDC-beamish:dev-env pdurbin$
HMDC-beamish:dev-env pdurbin$
HMDC-beamish:dev-env pdurbin$ ./run-env.sh 9692-files-api-extension-display-data
INFO - Setting up Dataverse on image tag 9692-files-api-extension-display-data...
INFO - Removing current environment if exists...
Removing network dev-env_dataverse
WARNING: Network dev-env_dataverse not found.
Removing network dev-env_default
WARNING: Network dev-env_default not found.
INFO - Running docker containers...

*The first time, I had a timeout due to overloading the mac a bit. I tossed out the volumes and the containers for that reason.


changed store api's --sync-block-duration to 15m

[x] I added CHANGELOG entry for this change.
[ ] Change is not relevant to the end user.

Changes
Changed the --sync-block-duration in store api from 3m to 15m as suggested from the discussion #6288

Verification

@Player256 can you add a changelog entry, please? 🙏

@Player256 can you add a changelog entry, please? 🙏

Yes, sure I will add it.

Not quite sure why the GH actions are stuck 🤔

should I open another pr?

Let's merge this, I will follow up with a PR to fix docs.


Recurring task  without caption field clicked done generates tiddler named <>

Bug actually not due to past date but to lack of caption field, changing erroneous title of the issue

Problem likely comes from this line in macros/done-mark:
  <$set name="newTitle" filter="[all[current]has[caption]]" value={{!!caption}} emptyValue="<<currentTiddler>>">

2 sides to this issue:
!!! why some tasks don't have a caption?
Very likely because it was generated with an older version. Checked that any new task has the field normally.
!!! The empty value clearly doesn't work like this
As suspected, it was because of the quotes. solved.


feat: add custom pod labels and annotations

A small PR that adds the option to set custom pod level annotations and labels. This is helpful for some management applications or policies :)

A small PR that adds the option to set custom pod level annotations and labels. This is helpful for some management applications or policies :)

Hi @Demonsthere, LGTM thanks a lot!


Enabling S3 bucket share

Feature or Bugfix

Feature

Detail

We want to enable bucket sharing along with access point share which already exists in data all right now.
A user will be able to request shares at bucket level and at the folder level with access points.
Please NOTE: There is some common code between Access point share managers and processors and S3 Bucket managers and processors. We will send out a separate PR for that refactoring work at a later time.

Relates

https://github.com/awslabs/aws-dataall/issues/284
https://github.com/awslabs/aws-dataall/pull/823
https://github.com/awslabs/aws-dataall/pull/846/files#diff-c1f522a1f50d8bcf7b6e5b2e586e40a8de784caa80345f4e05a6329ae2a372d0

Contributors:

Contents of this PR have been contributed by @anushka-singh, @blitzmohit, @rbernotas, @TejasRGitHub

Security
Please answer the questions below briefly where applicable, or write N/A. Based on
OWASP 10.

Does this PR introduce or modify any input fields or queries - this includes
fetching data from storage outside the application (e.g. a database, an S3 bucket)?

Is the input sanitized?
What precautions are you taking before deserializing the data you consume?
Is injection prevented by parametrizing queries?
Have you ensured no eval or similar functions are used?

Does this PR introduce any functionality or component that requires authorization?

How have you ensured it respects the existing AuthN/AuthZ mechanisms?
Are you logging failed auth attempts?

Are you using or adding any cryptographic features?

Do you use a standard proven implementations?
Are the used keys controlled by the customer? Where are they stored?

Are you introducing any new policies/roles/users?

Have you used the least-privilege principle? How?

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

Hi @anushka-singh - thanks again for this PR, I just left a few comments after going through the code myself. Most of the comments are minor but please give a look over and let me know if any questions
I will also be deploying the above to my AWS data.all deployment today and running through some tests and will leave any remaining comments here when complete

Final remark on the PR: @noah-paige @anmolsgandhi @anushka-singh
At the moment all sharing mechanisms are enabled and there is no configuration on the config.json. So if a customer wants to restrict a particular way of sharing data in data.all it is not possible at the moment. What do you think?

do we see the need of allowing configuration of the sharing mechanisms allowed?
and how important is it?

In any case I think we can move forward with this PR and if needed implement the config in another PR

Testing in AWS:

[X] CICD from previous deployment succeeds

For each of the following checks we test the 3 different scenarios:
- Created Dataset
- Imported Dataset with SSE-S3 encryption
- Imported Dataset with KMS encryption

[ ] Before doing anything, we check that pre-existing tables and folders shares still work --> check in Athena and Access points calls
[ ] We share the S3 Bucket and Pre-existing tables and folders shares still work --> check in Athena and Access points calls
[ ] Check S3 Bucket share works
[ ] Check removing S3 Bucket share
[ ] Check removing folder share
[ ] Check removing both
[ ] Check re-adding bucket share
[ ] Check re-adding folder share
[ ] Check new S3 share
[ ] Check new folder share

I just realized:

the PR is pointing to v2m1m0. Changing the source branch results in some additional git-ing that we need to do
we need to update the documentation in the userguide. How much bandwidth do you have for these? I don't think it will be much

Final remark on the PR: @noah-paige @anmolsgandhi @anushka-singh At the moment all sharing mechanisms are enabled and there is no configuration on the config.json. So if a customer wants to restrict a particular way of sharing data in data.all it is not possible at the moment. What do you think?

do we see the need of allowing configuration of the sharing mechanisms allowed?
and how important is it?

In any case I think we can move forward with this PR and if needed implement the config in another PR

On this comment.
We do have a config for disabling the folder sharing mechanism.
"file_uploads": false,                 "file_actions": false,
Setting this to false, disables access point sharing.
There is no provision for disabling s3 bucket sharing at the moment though.
I think we dont need the option at the moment since the idea was every dataset should be able to be shared fully with bucket share or folder wise with access point. If in the future, we identify a need for restricting access, we can simply add a config in config.json for it.

I just realized:

the PR is pointing to v2m1m0. Changing the source branch results in some additional git-ing that we need to do
we need to update the documentation in the userguide. How much bandwidth do you have for these? I don't think it will be much

Yes, that will be needed. I might need your help with it.
I would like to update the documentation too. Do we have an estimate on how long it will take? I can then maybe try to put in some sprint planning.

Testing in AWS:

[x]  CICD from previous deployment succeeds. Migration script runs successfully.

For each of the following checks we test the 3 different scenarios: - Created Dataset - Imported Dataset with SSE-S3 encryption - Imported Dataset with KMS encryption - Imported Dataset from multiple buckets with KMS encryption

[x]  Before doing anything, we check that pre-existing tables and folders shares still work --> check in Athena and Access points calls --> we see the changes in the UI, with the new command to list s3
[x]  We share the S3 Bucket and Pre-existing tables and folders shares still work --> check in Athena and Access points calls
[x]  Check S3 Bucket share works -  we see all share item and its status after share as SHARE_SUCCEEDED for the bucket and get-object downloading of files in the bucket works

Now, only the case for imported KMS vs SSE-S3 are checked: Check removing S3 Bucket share - get object gives an AccessDenied error. Share item status is REVOKE_SUCCEEDED.

[x]  Imported Dataset with SSE-S3 encryption: succeeds but with some error logs (error 1)
[x]  Imported Dataset with KMS encryption

Check removing folder share - get object gives an AccessDenied error. Share item status is REVOKE_SUCCEEDED

[ ]  Imported Dataset with SSE-S3 encryption: folders are in REVOKE_SUCCEDDED but share request stays in REVOKE_IN_PROGRESS (details and logs in error 2)
[ ]  Imported Dataset with KMS encryption, not tested yet (it will fail like the previous one)

Check re-adding bucket share only

[x]  Imported Dataset with SSE-S3 encryption
[x]  Imported Dataset with KMS encryption

Check re-adding folder share only

[ ]  Imported Dataset with SSE-S3 encryption, not tested yet (it will fail with error 3)
[ ]  Imported Dataset with KMS encryption, not tested yet (it will fail with error 3)

Edge cases. Some not tested yet. Check add folder + s3 share at the same time

[x]  Created Dataset with KMS encryption --> checked with a role that did not have previous folder share requests to avoid error 3 (get_object works using s3 and s3 access point)
[ ]  Imported Dataset with SSE-S3 encryption

Check remove folder + s3 share at the same time --- failing error 2

[ ]  Created Dataset with KMS encryption
[ ]  Imported Dataset with SSE-S3 encryption

Check adding one and removing the other at the same time

[ ]  Created Dataset with KMS encryption
[ ]  Imported Dataset with SSE-S3 encryption

Errors found
Error 1 ---> In another issue
This error is just cosmetic and it will addressed in #614

Approving S3 Bucket sharing log shows failure but the sharing works fine (share item ends in SHARE_SUCCEEDED and we can download objects from S3 bucket):Failed to get kms key id of alias/SSE-S3 : An error occurred (NotFoundException) when calling the DescribeKey operation: Alias arn:aws:kms:eu-west-1:XXXXXXXX:alias/SSE-S3 is not found.
Revoking S3 Bucket sharing log shows failure but the sharing revoke works fine (share item ends in REVOKE_SUCCEEDED and we cannot download objects from S3 bucket): Failed to get kms key id of alias/SSE-S3 : An error occurred (NotFoundException) when calling the DescribeKey operation: Alias arn:aws:kms:eu-west-1:XXXXXXX:alias/SSE-S3 is not found.

Error 2 ---> 🧑🏭 needs fixing
This is a generic issue, it is not due to pre-existing resources. Imported Dataset with SSE-S3 encryption: folders are in REVOKE_SUCCEDDED but share request stays in REVOKE_IN_PROGRESS (error 2) Looking at the logs, it fails in dataall/modules/dataset_sharing/services/data_sharing_service.py:199 when we pass the variable existing_shared_buckets=existing_shared_buckets to the initialization of the ProcessS3AccessPointShare, but that variable is not declared in the class

Error 3 ---> 🧑🏭 needs fixing
This is a backwards compatibility issue. It fails when the Bucket is encrypted with a KMS key. Looking at the code and the logs I think the issue is in this line dataall/modules/dataset_sharing/services/share_managers/s3_access_point_share_manager.py:184
share_manager.add_missing_resources_to_policy_statement(
    kms_key_id,
    kms_target_resources,
    existing_policy["Statement"][1],
    IAM_ACCESS_POINT_ROLE_POLICY
)

We are assuming that the IAM role policy has 2 statements, but in pre-existing IAM roles there is one statement only.

Error 4 ---> In another issue
Sometimes we face again the issue that we had in the past of an access point taking a long time to get created and the put access point policy failure. I just want to note it here, but it is unrelated to this PR and it should be solved in a separate PR.

Error 2 and 3 found here have been fixed in next revision

Testing in AWS 2:

[X] CICD from previous deployment succeeds. Migration script runs successfully.

For each of the following checks we test the 3 different scenarios:
- Created Dataset
- Imported Dataset with SSE-S3 encryption
- Imported Dataset with KMS encryption

[ ] Before doing anything, we check that pre-existing folders shares still work --> check Access points calls --> we see the changes in the UI, with the new command to list s3
[ ] We share the S3 Bucket and Pre-existing folders shares still work --> check Access points calls
[ ] Check S3 Bucket share works -  we see all share item and its status after share as SHARE_SUCCEEDED for the bucket and get-object downloading of files in the bucket works

Check removing S3 Bucket share - get object gives an AccessDenied error. Share item status is REVOKE_SUCCEEDED.

[ ] Imported Dataset with SSE-S3 encryption: succeeds but with some error logs (error 1)
[ ] Imported Dataset with KMS encryption

Check removing folder share - get object gives an AccessDenied error. Share item status is REVOKE_SUCCEEDED

[ ] Imported Dataset with SSE-S3 encryption: folders are in REVOKE_SUCCEDDED but share request stays in REVOKE_IN_PROGRESS (details and logs in error 2)
[ ] Imported Dataset with KMS encryption, not tested yet (it will fail like the previous one)

Check re-adding bucket share only

[ ] Imported Dataset with SSE-S3 encryption
[ ] Imported Dataset with KMS encryption

Check re-adding folder share only

[ ] Imported Dataset with SSE-S3 encryption, not tested yet (it will fail with error 3)
[ ] Imported Dataset with KMS encryption, not tested yet (it will fail with error 3)

Edge cases. Some not tested yet.
Check add folder + s3 share at the same time

[ ] Created Dataset with KMS encryption --> checked with a role that did not have previous folder share requests to avoid error 3 (get_object works using s3 and s3 access point)
[ ] Imported Dataset with SSE-S3 encryption

Check remove folder + s3 share at the same time --- failing error 2

[ ] Created Dataset with KMS encryption
[ ] Imported Dataset with SSE-S3 encryption

Check adding one and removing the other at the same time

[ ] Created Dataset with KMS encryption
[ ] Imported Dataset with SSE-S3 encryption

Errors found

Re-tested with the latest fixes @anushka-singh
Backwards compatibility test
Error 1 test:

[X] Created Dataset -- Error 1 fixed
[X] Imported Dataset with KMS encryption

Error 2 test:

[ ] Imported Dataset with SSE-S3 encryption - Approve S3 bucket share - it does not contain an statement with kms/None

Error 3 test:

[ ] Imported Dataset with SSE-S3 encryption - Revoke S3 Bucket share and access points - it successfully removes items in IAM policy


Password is not persisted in some cases

Issue Type: Bug
Repro:
Connect to a SQL Server, provide the password, don't choose to save the password.  Connection is now in recent connections list.
Create a new query tab.
Click Connect
Choose the connection from recent connections list.
Provide the password.
click the save password checkbox
Click connect
Repeat, but this time notice that the password is not persisted.
Azure Data Studio version: Azure Data Studio 1.3.1-insider (bd53e685d0091f9fe09c2662c30e0e506c402561, 2018-11-09T21:10:38.782Z)
OS version: Darwin x64 18.2.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz (8 x 2200)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: enabledrasterization: enabledvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
2, 2, 2

Memory (System)
16.00GB (0.06GB free)

Process Argv
/Applications/Azure Data Studio.app/Contents/MacOS/Electron

Screen Reader
no

VM
0%

Extensions (9)

Extension
Author (truncated)
Version

vscode-sanddance
dan
0.0.1

newdatabase
kev
0.0.1

ssmskeymap
kev
1.0.0

agent
Mic
0.35.0

import
Mic
0.4.0

profiler
Mic
0.3.0

server-report
Mic
0.1.3

sql-vnext
Mic
0.8.1

whoisactive
Mic
0.1.1

I've got a similar issue. Password are not being persisted on my password auth saved connection even if the checkbox is selected upon creation or edition.

Closing older issues.  Please let us know if you're still impacted by this issue.

yes, the issue still persists


Update user-submission.md

Need to call out and update the 3rd party tool section.

@JohanFreelancer9 - kindly do the copy editor review for this PR. Thanks


Issue #7: Add Tomcat Native Libraries

Seems to work for every version of Tomcat and JRE in this repo -- seeing output like this when Tomcat starts:
Nov 17, 2015 5:46:38 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: Loaded APR based Apache Tomcat Native library 1.1.33 using APR version 1.5.1.
Nov 17, 2015 5:46:38 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
Nov 17, 2015 5:46:38 PM org.apache.catalina.core.AprLifecycleListener initializeSSL
INFO: OpenSSL successfully initialized (OpenSSL 1.0.1k 8 Jan 2015)

LGTM
The Travis failure looks like a hiccup from a Debian mirror. Perhaps @tianon, @yosifkit, or @Moghedrin  can rerun that build from the Travis site.


bug: barrier stuck for minutes

Describe the bug
The metrics diagram looks broken, because no barriers are collected during a long time.
Both barrier number and latency are very high.

During the whole running https://g-2927a1b4d9.grafana-workspace.us-east-1.amazonaws.com/d/EpkBw5W4k/risingwave-test-dashboard?org[…]90631&from=1683537069000&to=1683623809000

To Reproduce
Longevity test
Expected behavior
No response
Additional context
Await-Tree Dump of Compute Node 3.txt
Await-Tree Dump of Compute Node 4.txt
Await-Tree Dump of Compute Node 5.txt
See more context in Slack channel: https://risingwave-labs.slack.com/archives/C034TRPKN1F/p1683627627166979

Slack notification: https://risingwave-labs.slack.com/archives/C048NM5LNKX/p1683623832327539
Buildkite: https://buildkite.com/risingwave-test/longevity-kubebench/builds/302

Test configuration:

The problem is caused by:

The state of distinct table of aggregation has bad locality
When the amount of data reached become larger than meta cache, the meta cache miss caused high read latency
The read latency caused longer barrier latency, since the number of rows in one epoch is constant (not well backpressured, which may be a potential problem to be improved)


implement min and max functions in stdlib

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Marein seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Done!


Write an extra function to be tested

Write an extra function in idex.js
Create a new branch,
Open the PR
But do not merge your own code

Additional functions and checks were added in #12 please review 👍


Type from declare module "*"; import can't be accessed.

TypeScript Version:  nightly (2.3.0-dev.20170415)
Code
declarations.d.ts
declare module "*";

a.ts
import { T } from "foo";
export const x: T = 0;

Expected behavior:
No error.
Actual behavior:
a.ts(1,10): error TS6133: 'T' is declared but never used.
a.ts(2,17): error TS2304: Cannot find name 'T'.

On second thought, this is probably correct to be an error, although the error message(s) could be more helpful.

I do not think you should be able to pick a concrete type from an unknown entity. +1 for the error message.

This is a problem with any value used as a type:
const T = 0;
type U = T;

Gives a.ts(2,10): error TS2304: Cannot find name 'T'.
In contrast, we have a nice error message for:
type T = number;
const x = T;

Gives a.ts(2,11): error TS2693: 'T' only refers to a type, but is being used as a value here.

I don't know what this would mean.


Check for updates

Automatically check for updates and print to your console if any are found.
Potentially could have it update itself but not sure if that'll be possible with the dll trying to replace itself..

Resolved by https://github.com/Vurv78/Autorun-rs/commit/504fc1ca2c845a29c863bab6d61b4ccbb0b91c28


Cache channels for services...

Right now, channels are not cached; a new channel is created every time a service is created. This slows down new service creation. Adding caching support so the performance improves.

Fixed in GitHub.


Accessing GitHub and making commits through leetcode.

Is your feature request related to a problem? Please describe.
Many of my friends commit on GitHub whatever questions they have done on leetcode. So each time one of their problems is completed, they need to copy and paste it, then make a commit locally and push it on GitHub which is not convenient.
Describe the solution you'd like
So what I am thinking of doing is making an extension to make commits directly from leetcode in whatever repo and whatever folder the user wants. This would require one-time authentication by the user for which I would write instructions in my PR.
How do we know when the feature is complete?
I will submit the code for the extension and create a PR.

Please assign this issue to me under gssoc'24.

@Sulagna-Dutta-Roy  I'd like to work on this issue, if it hasn't been solved yet.
Thank you!

Already added a leetcode extension to my repository. Closing this @Sambit-Mondal


Cannot use 'in' operator to search for ... in null

const diff = require('microdiff').default
const a1 = {"a": { "b": 1 }}
const a2 = {"a": null}
console.log(diff(a1, a2))

/Users/.../node_modules/microdiff/dist/index.cjs:8
		if (!(key in newObj)) {
		          ^

TypeError: Cannot use 'in' operator to search for 'b' in null

Thanks for reporting this! I will work on a fix, it should not take long.

Ok, this should be fixed now. Let me know if you continue to have problems with this in version v1.1.1+.

@AsyncBanana I'm having same issue in "microdiff": "^1.3.2"

Could you send me the relevant code?

getting the same issue (comparing arrays of objects with arrays inside)

Microdiff expects basic objects or arrays. I would handle any other values before passing them to the diff function.


ktx-app

how switch between screen
set the screen with ktxGame
but how changed in screen

Not sure what's the issue here.
KtxGame code is available here. After you call setScreen, the current screen is hidden, and the new screen is resized and shown. Then, KtxGame continuously calls its rendering method.

@czyzby
I'm inside ktxgame
addscreen
addscreen
addscreen
//and then
setscreen
game on a screen, now
and i want change screen in screen class that is set and showing now by code
i do not understand how can change screen out of ktxgame
companion object or static not work because everything is private
event can`t use if statment.
when say

if (currentScreen == AScreen()) setScreent(BScreen())

You should keep a reference to the original KtxGame. For example:
class MyScreen(val game: KtxGame) : KtxScreen {
    // Implement your logic.
}

thanks


400 error "Something went wrong"

I'm receiving the following 400 error when testing the plugin directly from the custom connector in Flow using /POST/RenderReport. Running /GET/Reports does return the correct data however.
I've already tried completely reversing all installation steps then starting again but get the same result. I've also tried with both v1.3 and v1.4 with the same issue.
Do you have any ideas around what could be causing this?
`{
  "error": {
    "code": "0x80040265",
    "message": "Something went wrong.",
    "innererror": {
      "message": "Something went wrong.",
      "type": "System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]",
      "stacktrace": "   at Microsoft.Crm.Extensibility.OrganizationSdkServiceInternal.Execute(OrganizationRequest request, CorrelationToken correlationToken, CallerOriginToken callerOriginToken, WebServiceType serviceType, Boolean checkAdminMode, ExecutionContext executionContext, Dictionary`2 optionalParameters)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataExecutionContext.Execute(OrganizationRequest request, ExecutionContext executionContext)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataServiceDataProvider.ExecuteOperation(CrmODataExecutionContext context, EdmOperation edmOperation, Dictionary`2 parameters, Dictionary`2 boundParameters)\r\n   at Microsoft.Crm.Extensibility.OData.ActionController.ProcessOperationRequest(String operationName, Dictionary`2 operationParameters, EntityReference entityReference, String boundEntityName, String boundEntityType)\r\n   at Microsoft.Crm.Extensibility.OData.ActionController.<>c__DisplayClass11_0.<PostBoundAction>b__0()\r\n   at Microsoft.PowerApps.CoreFramework.ActivityLoggerExtensions.Execute[TResult](ILogger logger, EventId eventId, ActivityType activityType, Func`1 func, IEnumerable`1 additionalCustomProperties)\r\n   at Microsoft.Xrm.Telemetry.XrmTelemetryExtensions.Execute[TResult](ILogger logger, XrmTelemetryActivityType activityType, Func`1 func)\r\n   at lambda_method(Closure , Object , Object[] )\r\n   at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters)\r\n   at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__1.MoveNext()"
    }
  }
}`

Unfortunately, these issues are very hard to troubleshoot without specific details about the report.  For example, if the report expects parameters and they are not passed in, that could result in this error.
Can you provide some more details about your specific scenario?

Hi
I tried with every report in my environment, with and without parameters.
The error is always the same.
Da: Bob Guidinger<EMAIL_ADDRESS>Risposta: "bguidinger/Xrm.ReportScheduler"<EMAIL_ADDRESS>Data: mercoledì 20 marzo 2019 14:39
A: "bguidinger/Xrm.ReportScheduler"<EMAIL_ADDRESS>Cc: Gatti Maurizio<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Oggetto: Re: [bguidinger/Xrm.ReportScheduler] 400 error "Something went wrong" (#9)
Unfortunately, these issues are very hard to troubleshoot without specific details about the report. For example, if the report expects parameters and they are not passed in, that could result in this error.
Can you provide some more details about your specific scenario?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/bguidinger/Xrm.ReportScheduler/issues/9#issuecomment-474832483, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AtAMBKvuKB-r3HI863_SNezu2DAesJLGks5vYjoCgaJpZM4YsFme.
Maurizio Gatti
Accounting and Service Manager - Board member
Mobile: +39<PHONE_NUMBER>
Telefono: +390522621247
email<EMAIL_ADDRESS>web: www.sinthera.com
Personal Conference Room
Accesso da web: sinthera.webex.com/meet/mgatti
Accesso da video<EMAIL_ADDRESS>SINTHERA
UDINE | REGGIO EMILIA | PADOVA
[Sinthera on LinkedIn] http://bit.ly/2TgUlpt [Sinthera on Twitter]  http://bit.ly/2OZTFqJ [Sinthera on Facebook]  http://bit.ly/2P0qF26
Le informazioni contenute in questa e-mail sono di natura confidenziale e riservata. Qualora non foste i destinatari Vi invitiamo a comunicare l'errata ricezione al legittimo titolare ed a cancellare tale file ed i suoi allegati dal Vostro computer. Vi informiamo inoltre che, in tale caso è espressamente vietata ogni attività di riproduzione, diffusione, inoltro, copia, stampa, anche parziale, di tale messaggio e dei suoi allegati.
This message and all attachments are confidential and may be protected by the attorney-client or other privileges. Any unauthorized review, use, disclosure or distribution is prohibited. If you believe this message has been sent to you in error, please notify the sender by replying to this transmission and delete the message without first disclosing it. Thank you.

For consistency I’m sending you this which is a repeat of the email I sent earlier in response to my own post on Github on this issue.
I only have two fields on the report to make it simple for testing – name and invoiceid.  No parameters.
Here is the layout of my Flow (or one of them anyway, I tried many different ways):
<EMAIL_ADDRESS>Made up of:
<EMAIL_ADDRESS><EMAIL_ADDRESS>Condition is a Boolean field on the invoice entity used for the trigger.
<EMAIL_ADDRESS>The report is loaded into CRM.
Julia Streatfield
D: +44 (0)20 7395 8214 | M: +44 (0)7837 263 082
From: Bob Guidinger<EMAIL_ADDRESS>Sent: 20 March 2019 13:39
To: bguidinger/Xrm.ReportScheduler<EMAIL_ADDRESS>Cc: Julia Streatfield<EMAIL_ADDRESS>Comment<EMAIL_ADDRESS>Subject: Re: [bguidinger/Xrm.ReportScheduler] 400 error "Something went wrong" (#9)
Unfortunately, these issues are very hard to troubleshoot without specific details about the report. For example, if the report expects parameters and they are not passed in, that could result in this error.
Can you provide some more details about your specific scenario?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/bguidinger/Xrm.ReportScheduler/issues/9#issuecomment-474832483, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Ap8vdJ7hDdMmK0iTaYm44l2h5dwUBBcaks5vYjoCgaJpZM4YsFme.

The CBI's (Confederation of British Industry's) registered address is:
Cannon Place, 78 Cannon Street, London EC4N 6HN
Company number: RC000139

Closing this issue as these comments are from a few months ago.  I've added additional logging to the plugins to help troubleshoot these issues in the future.  If you are still experiencing issues, please open up a new issue with the details.

@bguidinger :
I am getting below error.
{
"error": {
"code": "0x80040265",
"message": "Something went wrong: The remote server returned an error: (400) Bad Request.",
"innererror": {
"message": "Something went wrong: The remote server returned an error: (400) Bad Request.",
"type": "System.ServiceModel.FaultException1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]",       "stacktrace": "   at Microsoft.Crm.Extensibility.OrganizationSdkServiceInternal.Execute(OrganizationRequest request, InvocationContext invocationContext, CallerOriginToken callerOriginToken, WebServiceType serviceType, Boolean checkAdminMode, ExecutionContext executionContext, Dictionary2 optionalParameters)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataExecutionContext.Execute(OrganizationRequest request, ExecutionContext executionContext)\r\n   at Microsoft.Crm.Extensibility.OData.CrmODataServiceDataProvider.ExecuteOperation(CrmODataExecutionContext context, EdmOperation edmOperation, Dictionary2 parameters, Dictionary2 boundParameters)\r\n   at Microsoft.Crm.Extensibility.OData.ActionController.ProcessOperationRequest(String operationName, Dictionary2 operationParameters, EntityReference entityReference, String boundEntityName, String boundEntityType)\r\n   at Microsoft.Crm.Extensibility.OData.ActionController.<>c__DisplayClass11_0.<PostBoundAction>b__0()\r\n   at Microsoft.PowerApps.CoreFramework.ActivityLoggerExtensions.Execute[TResult](ILogger logger, EventId eventId, ActivityType activityType, Func1 func, IEnumerable1 additionalCustomProperties)\r\n   at Microsoft.Xrm.Telemetry.XrmTelemetryExtensions.Execute[TResult](ILogger logger, XrmTelemetryActivityType activityType, Func1 func)\r\n   at lambda_method(Closure , Object , Object[] )\r\n   at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.b__9(Object instance, Object[] methodParameters)\r\n   at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Controllers.ApiControllerActionInvoker.d__0.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Controllers.ActionFilterResult.d__2.MoveNext()\r\n--- End of stack trace from previous location where exception was thrown ---\r\n   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\n   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n   at System.Web.Http.Dispatcher.HttpControllerDispatcher.d__1.MoveNext()"
}
}
}
Please Help


Create server/ and client/ skeleton files

Create controllers/*
Create routers/*
Create models/userModel.js
Create /client/scss/*

Added empty backend and front end files


Git pull Regex not correct

Hey guys am I missing something. I am trying to create a config file for the repo and its giving me the "not a valid value for dictionary value @ data['options']."  error.
So I checked the regex and it looks like this "(?:.+):(//)?(.*?)(\.git)(/?|\#[-\d\w._]+?)" the \ in front of the .git means that the file needs to look like this:
https://example.com/my_configs\.git
but the backslash breaks the functionality so you have to do:
https://example.com/my_configs\\.git
Also it looks like options:
"deployment_user"
"deployment_password"
and repeat options
are required even though they are listed as optional

Getting the same strange error as you @JustinLavan. I was just trying to setup Git Pull until I found your issue. I'm both getting the "not a valid value" error and it needs indeed the user and password options for me.


Can I use other models except claude and gpt to do the multimodal work?

Hi, I have a question for the multimodal work. When I set the engine as Yi-vision from 01-ai, it shows the error as follows
ValueError: The engine provided is not multimodal. Please provide a multimodal engine, one of the following: ['gpt-4-turbo', 'gpt-4o', 'claude-3-5-sonnet-20240620', 'claude-3-opus-20240229', 'claude-3-sonnet-20240229', 'claude-3-haiku-20240307', 'gpt-4-turbo-2024-04-09']

I think the model Yi- vision is multimodal but I am not sure the multimodalLLMCall support custom model?

We do not yet support Yi (or other models besides claude/gpt-4 for multimodal)  -- but this should be fairly easy to implement! It should basically mimic the structure of e.g., ChatAnthropic class. If someone implements this it'd be great! If not we'd get to this hopefully soon.


Remove or disable google analytics (by default)

Hey there,
why do we want to support companies like google getting more user data?
We expect - or at least hope - that a lot of projects participate in the digital climate strike.
We

piss off admins who see the google analytics by default
give the data of users of websites, who previously didn't have google analytics, to google

and for what?...

I agree completely. Perhaps we should switch GA from opt-out to opt-in?

Hey @NerdyProjects and @miloskroulik,
First up, thank for this feedback. I'm aligned with you on not wanting to send user data to Google on websites that previously did not have Google Analytics. We thought about this default when we implemented this feature and settled on this default (with the option to easily remove it) for a number of reasons. I'll try to outline them as best I can here, along with what I recommend instead of changing the default:

Hey @NerdyProjects and @miloskroulik,
First up, thank for this feedback. I'm aligned with you on not wanting to send user data to Google on websites that previously did not have Google Analytics. We thought about this default when we implemented this feature and settled where we did for a number of reasons. I'll try to outline them as best I can, along with what I recommend instead of changing the default:

As you’re probably aware, this javascript widget is part of a much broader campaign to drive turnout on September 20th and raise massive, widespread public awareness about the Global Climate Strike. A critical data point for generating media coverage, promoting the strikes, and for using to convince large website targets is the total number of websites that have added the widget. For example, we can now say publicly that over 900 sites have added the banner. Without GA being on by default, we would be unaware of the vast majority of sites and lose this critical tactic from our campaign toolbelt.
Ancillary to this, GA has enabled us to follow up some of the large sites and ask them a) to post about it on social media, and b) join the participants list of the website (https://digital.globalclimatestrike.net/#participants). Not only have the websites we’ve spoken been delighted by this, but added more logos on the website provides legitimacy to the campaign and our outreach has been strengthened. Without GA we would be unlikely to have this feedback loop and opportunity.
Providing the option to disable balances these benefits with the real issue you mention about Google Analytics being added (intentionally, or unintentionally) to a website that doesn’t want it.

So, instead of flipping the default on this, I think we should update the README to be super clear (with some bolding, for example) that the widget adds Google analytics by default, but it can be disabled in the options. We could even include the specific additional script tag they will need so folks can just copy and paste it.
How does that sound? I totally hear y’all on the downside with this - but am also hoping this provides a bit more transparency / thinking into why it’s on by default.

Closing this because we have #77 issue as the longer term resolution.


m3u8 video freezes, sound plays

Describe the bug
When playing a m3u8 video, the video plays for a short while, then the video freezes, but the sound continues playing. In Chrome or Firefox on Android the video works fine.
To Reproduce
Steps to reproduce the behavior:
Go to any m3u8 video address using Kiwi, e.g. https://test-streams.mux.dev/x36xhzz/x36xhzz.m3u8
and hit play.
Or you can also go to a site like https://jsitor.com/ and insert the following html to see the same problem using the video tag:

Smartphone (please complete the following information):

Device: Huawei Mate 20X 5G
Android Version : 10, Huawei version of it is EMUI 12
Kiwi Browser Version 101.0.4951.40

Same issues here.When plays for a short while or fast forward video will freezes,but you can player other video then return back player again problem solve

Same issue. This bug still exists in the latest version (103.0.5060.104). Please fix it as soon as possible, thanks.


Add GET CONFIG serial command

Implement Serial Command GET CONFIG
as mentionned in https://github.com/SlimeVR/SlimeVR-Tracker-ESP/issues/6

@unlogisch04 .... you could have checked your suggestions worked at least.
also why do we need that. those are not set in the user space

im fixing it

also why do we need that. those are not set in the user space nevermind didnt see those

Sorry, did not think that this would break something. And not sure how to check on Web.

@Eirenliel Everything is ready to merge


Getx Get.to Error

Steps to Reproduce

Execute flutter run on the code sample
...
...

Expected results:
Actual results:

Code sample

Logs

Hi @saidG06,
When opening an issue, please try to provide all or some of the information indicated in the template.

Issue Template
If you are looking for support, please check out our documentation
or consider asking a question on Stack Overflow:
- https://flutter.dev/
- https://api.flutter.dev/
- https://stackoverflow.com/questions/tagged/flutter?sort=frequent

If you have found a bug or if our documentation doesn't have an answer
to what you're looking for, then fill our the template below. Please read
our guide to filing a bug first: https://flutter.dev/docs/resources/bug-reports

Steps to Reproduce

Please tell us exactly how to reproduce the problem you are running into.

Please attach a small application (ideally just one main.dart file) that
reproduces the problem. You could use https://gist.github.com/ for this.

If the problem is with your application's rendering, then please attach
a screenshot and explain what the problem is.

1. ...
2. ...
3. ...

Please tell us which target platform(s) the problem occurs (Android / iOS / Web / macOS / Linux / Windows)
Which target OS version, for Web, browser, is the test system running?
Does the problem occur on emulator/simulator as well as on physical devices?

Target Platform:
Target OS version/browser:
Devices:

Run your application with `flutter run --verbose` and attach all the
log output below between the lines with the backticks. If there is an
exception, please see if the error message includes enough information
to explain how to solve the issue.

Run `flutter analyze` and attach any output of that command below.
If there are any analysis errors, try resolving them before filing this issue.

Finally, paste the output of running `flutter doctor -v` here.

Closing this issue, since no information has been provided.
Thank you.

hi @danagbemava-nc   im sorry about that this is my first issue , so the prob was a use globle key inside the getx controller so when you get back to last page a get Multiple Key used i solve it by remove the globale key from getx Controller .