[feature request] Link external gate status to binary_sensor

Hi,
I have an exterior gate using a Somfy SGA 6000 motor configured as 3 button garage door in ESPSomfy RTS.
It works perfectly to open and close the door.
I also have 4 keygo remotes using single buttons that open/close the same.
My problem is that even if I linked the remotes in SomfyRTS, I have false positive statuses in somfy RTS.
I added a magnetic sensor on the gate to have the right status of the door in Home Assistant. It is represented as binary_sensor.
Could it be possible in any way to change the status of ESPSomfy RTS cover and link it to the binary_sensor ?
It could be directly linked or a service to set the current status of SomfyRTS without triggering any RTS command.
What do you think ?
Regards,
U.

That is actually a fine plan.  Let me think about how to organize those endpoints.  I think simply exposing another service on the HA component may do the trick.  The cover entity can be a real PITA but if I extend the services beyond what is stock I may be able to tweak the open and closed state.  I had to do that with tilt only blinds.

I have modeled a couple of services in Home Assistant and you will be able to call a service on the gate to set the current position without moving the gate.  So when the magnetic sensor trips all you need to do is call set_current_position with 0% or 100% and it will reflect opened or closed.
This also goes along with the ability to use external sun and wind sensors by sending the sensor commands to the motor.  All of these will be released in the next couple of days with v2.1.8.

I have released v2.1.8 for ESPSomfy RTS and the HA integration.  You should now be able to set the position with an automation.

Just tested, it works as expected. Many thanks.


Break control ID out into separate column for PSV output

Currently looks like this:
,1234567890,us-east-1,1.1,INFO,Scored,Level 1,[check11] Avoid the use of the root account (Scored),Root account last accessed (password key_1 key_2): 2019-02-06T20:22:36+00:00 N/A N/A

I'm referring to [check11] always being a part of the control name. Can we break this out into a separate column? Desired state shown below.
,1234567890,us-east-1,1.1,INFO,Scored,Level 1,[check11],Avoid the use of the root account (Scored),Root account last accessed (password key_1 key_2): 2019-02-06T20:22:36+00:00 N/A N/A

Hi @kmcquade, if I may ask, why do you need that? you could add it easily with ./prowler -M csv -c check11|sed s/\]/\],/g or changing the outputs here https://github.com/toniblyx/prowler/blob/master/include/outputs#L64 and $TITLE_TEXT. That's not a planned planned, not sure if others could benefit from it, but you can make the change to fit your needs.


Debugger Error

When I try to enter debug mode, It throws errors regarding the paths:
ERROR: Syntax error: Illegal \u or \U sequence
ERROR: prolog_debugger:set_breakpoints('C:
ERROR: ** here **
ERROR: \Users\Andrei\Desktop\Probleme Sicstus Prolog\Laborator1\test.pl', "") .

I think it doesn't parse the path correctly and tries to escape characters after  \.
This is on Windows 10.
Any suggestions?

Thank you for reporting the non escaping bug that is fixed now.

No problem. And thank your for the fix and the extension!


Uninstall using id invalid package detection

Brief description of your issue
Error detecting correct package by id.
Steps to reproduce

winget install PythonSoftwareFoundation.Python.3.8
winget uninstall PythonSoftwareFoundation.Python.3.8

Expected behavior
Winget should use the exact match if one is available (Also I don't even know why the 2nd one matches at all).
Actual behavior
PS C:\> winget uninstall PythonSoftwareFoundation.Python.3.8
Multiple installed packages found matching input criteria. Please refine the input.
Name                  Id
------------------------------------------------------------
Python 3.8            PythonSoftwareFoundation.Python.3.8
Python 3.7.8 (64-bit) {886f7e19-ca0e-4f00-9cb5-14f6506fea86}

Environment
[winget --info]
Windows Package Manager v1.0.11451
Windows: Windows.Desktop v10.0.21390.1
Package: Microsoft.DesktopAppInstaller v1.11.11451.0

@agowa338 Now you can use winget install Python.Python.3. Also, if you want to install any specific version, you can use winget show Python.Python.3 --versions to list all versions and install it using winget install Python.Python.3 --version <version>

Just piggybacking on this same issue.

Running winget show gives me the same versions... I have no idea where to go from here.

@DuNuNuBatman We are still making improvements in this area. We do cover some of the options at https://docs.microsoft.com/en-us/windows/package-manager/winget/install#multiple-selections
Try: winget show github.cli --versions -s winget.

ah, my mistake. I thought the behavior had changed and the id was the default. Thanks!

Thank you for taking the time to report this issue. In the amount of time the issue has been open, there have been several updates to the WinGet CLI which may have helped mitigate some of these concerns. I encourage you to try out the latest version of the CLI and see if your issue still persists.
Close with reason: Stale;


Is there a way to remove profile icon on next build?

First of all i really like the ungoogled chromium . It feels very light and fast and of course private .
Is it possible since we are not using the Sign In To Google services , to remove the profile button (avatar) ? I remember there was a patch for an older version but i don't know if this will work for the upcoming release.
Is there any temp workaround to hide it?
Thanks a lot!

You talk about this patch https://github.com/hparadiz/chromium-disable-profile-button-patch
No, it doesn't work on new Chromium versions.

It is possible to write a patch to disable the avatar button, but I'm not sure whether that would be desirable for people who use multiple profiles. I don't see any Google-specific sign in option on the latest build.

You can use something like this patch https://raw.githubusercontent.com/xsmile/inox-patchset/e111eb8dadedbb9fa673f0a7bb129d10ab93fe2e/9003-disable-avatar-button.patch which disables the button unless it is enabled via chrome://flags.
Alternatively as mentioned by @Artur96 it might be better to keep it enabled by deault unless the user disables it.

The reasoning from @Artur96 is correct. AFAIK privacy and security are still intact with that button, so I see no reason to make a cosmetic change that deviates from Chromium's behavior.


Message: Service geckodriver unexpectedly exited. Status code was: -11

Hi, we are using the whaleshong 0.9.0 for firefox. The installed firefox version 68.0.2, but when we try to start the python script we receive the following error:
Traceback (most recent call last):
File "/root/webwhatsappinterface/worker/webWhatsappinterface_python3.py", line 737, in
bot.loop.run_until_complete(bot.start())
File "/usr/lib/python3.6/asyncio/base_events.py", line 484, in run_until_complete
return future.result()
File "/root/webwhatsappinterface/worker/webWhatsappinterface_python3.py", line 703, in start
await self._driver.start()
File "/usr/local/lib/python3.6/dist-packages/whalesong/init.py", line 95, in start
await self._driver.start_driver()
File "/usr/local/lib/python3.6/dist-packages/whalesong/driver.py", line 49, in start_driver
await self._fut_start
File "/usr/local/lib/python3.6/dist-packages/whalesong/driver.py", line 53, in start_driver
await self._fut_start
File "/usr/local/lib/python3.6/dist-packages/whalesong/driver_firefox.py", line 76, in _internal_start_driver
self.driver = await self._run_async(self._internal_start_driver_sync)
File "/usr/local/lib/python3.6/dist-packages/whalesong/driver_firefox.py", line 73, in _run_async
return await self.loop.run_in_executor(self._pool_executor, partial(method, *args, **kwargs))
File "/usr/lib/python3.6/concurrent/futures/thread.py", line 56, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.6/dist-packages/whalesong/driver_firefox.py", line 98, in _internal_start_driver_sync
**self.options['extra_params'])
File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/firefox/webdriver.py", line 164, in init
self.service.start()
File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/common/service.py", line 98, in start
self.assert_process_still_running()
File "/usr/local/lib/python3.6/dist-packages/selenium/webdriver/common/service.py", line 111, in assert_process_still_running
% (self.path, return_code)
selenium.common.exceptions.WebDriverException: Message: Service geckodriver unexpectedly exited. Status code was: -11

It looks like a problem with Selenium version and firefox versio: https://stackoverflow.com/questions/54014683/selenium-with-firefox-webdriver-results-in-error-service-geckodriver-unexpected


Type-unification / literal_value access problems

With the current master, I am strugging to unify arrays with contents of Literal[int] and int32. Also, the literal_value property fails:
import numpy as np
from numba import njit
from numba.extending import overload

def foo(bar):
    # stub for overload
    pass

@overload(foo)
def foo_ovl(a):
    const_val = 1

    def foo_impl(a):
        if a.size == 1:
            result = np.full((1, 1), const_val)
        else:
            # This result array would of course be the output
            # of some algorithm... The point is, that it is created
            # from the contents of `a`.
            result = np.full((1, 1), a[0])
        return result

    return foo_impl

@njit
def test_foo(a):
    return foo(a)

a = np.arange(10)
test_foo(a)

Output:
TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Invalid use of Function() with argument(s) of type(s): (array(int32, 1d, C))
 * parameterized
In definition 0:
    TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Cannot unify array(Literal[int](1), 2d, C) and array(int32, 2d, C) for 'result', defined at  (17)

File "", line 17:
    def foo_impl(a):

        if a.size == 1:
            result = np.full((1, 1), const_val)
            ^

[1] During: typing of assignment at  (22)

File "", line 22:
    def foo_impl(a):

            # from the contents of `a`.
            result = np.full((1, 1), a[0])
            ^

    raised from C:\Users\My User\Documents\My Project\libraries\numba\numba\typeinfer.py:984
In definition 1:
    TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Cannot unify array(Literal[int](1), 2d, C) and array(int32, 2d, C) for 'result', defined at  (17)

File "", line 17:
    def foo_impl(a):

        if a.size == 1:
            result = np.full((1, 1), const_val)
            ^

[1] During: typing of assignment at  (22)

File "", line 22:
    def foo_impl(a):

            # from the contents of `a`.
            result = np.full((1, 1), a[0])
            ^

    raised from C:\Users\My User\Documents\My Project\libraries\numba\numba\typeinfer.py:984
This error is usually caused by passing an argument of a type that is unsupported by the named function.
[1] During: resolving callee type: Function()
[2] During: typing of call at  (30)

File "", line 30:
def test_foo(a):
    return foo(a)
    ^

I attempted to fix the unification problem with literal_value by changing the offending line to:
            result = np.full((1, 1), const_val.literal_value)

This however results in:
TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Invalid use of Function() with argument(s) of type(s): (array(int32, 1d, C))
 * parameterized
In definition 0:
    TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Unknown attribute 'literal_value' of type Literal[int](1)

File "", line 17:
    def foo_impl(a):

        if a.size == 1:
            result = np.full((1, 1), const_val.literal_value)
            ^

[1] During: typing of get attribute at  (17)

File "", line 17:
    def foo_impl(a):

        if a.size == 1:
            result = np.full((1, 1), const_val.literal_value)
            ^

    raised from C:\Users\My User\Documents\My Project\libraries\numba\numba\typeinfer.py:984
In definition 1:
    TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Unknown attribute 'literal_value' of type Literal[int](1)

File "", line 17:
    def foo_impl(a):

        if a.size == 1:
            result = np.full((1, 1), const_val.literal_value)
            ^

[1] During: typing of get attribute at  (17)

File "", line 17:
    def foo_impl(a):

        if a.size == 1:
            result = np.full((1, 1), const_val.literal_value)
            ^

    raised from C:\Users\My User\Documents\My Project\libraries\numba\numba\typeinfer.py:984
This error is usually caused by passing an argument of a type that is unsupported by the named function.
[1] During: resolving callee type: Function()
[2] During: typing of call at  (30)

File "", line 30:
def test_foo(a):
    return foo(a)
    ^

@stuartarchibald In response to your question on gitter: Indeed, this is on Windows 10, x64, Intel 5300U.

@ARF1 thanks, if you do from numba import typeof and then run typeof(1) and typeof(np.arange(10)[0]), I'd anticipate you'll find an int64 and an int32.

@stuartarchibald Respect, for not being able to reproduce the bug yourself, you are spot on:
Python 3.8.1 (default, Jan  8 2020, 15:55:49) [MSC v.1916 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 7.12.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import numpy as np

In [2]: from numba import typeof

In [3]: typeof(1)
Out[3]: int64

In [4]: typeof(np.arange(10)[0])
Out[4]: int32

Thanks for reporting back, I presume this is now "resolved", in that the behaviour is understood and Numba's response matches?

Thanks for reporting back, I presume this is now "resolved", in that the behaviour is understood and Numba's response matches?

@stuartarchibald Sorry, I did not make the mental leap you were expecting me to have made here. I thought I was just reporting back to help debug something.
I now thought about this again and, if I understand correctly, you were implying that the message Cannot unify array(Literal[int](1), 2d, C) and array(int32, 2d, C) occurs because Literal[int] is fundamentally int64; and int64 and int32 can fundamentally not be unified.
I am not quite yet sure how to solve this. I imagine, I will have to cast the literal_value to int32 before working with it to avoid mixing non-unifyable types.
But how will I do that if I cannot access the literal_value? (C.f. the error message Unknown attribute 'literal_value' of type Literal[int](1) mentioned in OP.)
Also, in the interest of clarity of the error messages, could the string representation be changed from Literal[int] to Literal[int64]? That would at least have put me on the right track, I think...
The change seems trivial implement since all that happens seems to be name = 'Literal[int]({})'.format(value). The question is, is LiteralInteger ever not int64?

OK, this was much simpler than I thought. The answer is simply to cast the IntegerLiteral. So user-friendly I did not even think consider it...
literal_value only exists in the "overload" body, not in the implementation body. (Not sure, what terminology you use for these two domains...)
For anybody else stumbling on this issue, the solution is:
import numpy as np
from numba import njit
from numba.core import types
from numba.extending import overload

def foo(bar):
    # stub for overload
    pass

@overload(foo)
def foo_ovl(a):
    const_val = 1

    def foo_impl(a):
        if a.size == 1:
            result = np.full((1, 1), types.int32(const_val))
        else:
            # This result array would of course be the output
            # of some algorithm... The point is, that it is created
            # from the contents of `a`.
            result = np.full((1, 1), a[0])
        return result

    return foo_impl

@njit
def test_foo(a):
    return foo(a)

a = np.arange(10)
test_foo(a)

I'd probably go with something like:
import numpy as np
from numba import njit
from numba.extending import overload

def foo(bar):
    # stub for overload
    pass

@overload(foo)
def foo_ovl(a):
    const_val = a.dtype(1) # <--- Use `a`'s dtype for the constant.
    def foo_impl(a):
        if a.size == 1:
            result = np.full((1, 1), const_val)
        else:
            result = np.full((1, 1), a[0])
        return result

    return foo_impl

@njit
def test_foo(a):
    return foo(a)

a = np.arange(10)
test_foo(a)

this way the dtype of the constant is consistent with the dtype of a, no matter what the platform integers are like.


Added esri-specific mocks so we can fake the creation of an esri Map …

…and MapView
This PR is specifically designed to enable the testing of any 3rd-party module that runs some type of Constructor.
When we import our MapView into any file, that import immediately fails due to the new MapView constructor in the file's ComponentDidMount. In order to get past this and test the rest our application, we need to mock out an ESRI MapView. To do this, we bypass our jest's moduleNameMapper and specify a specific Mock, one which returns a Promise like a MapView. I did the same, minus the Promise, for the esri/Map module as its Constructor returns a simple object.
While this update has the annoying disadvantage of spec'ing out any esri module you use in our mocks folder, we can now easily test the rest of the application, and any 3rd-party module that contains a Constructor.

Sweet thanks man.  I'll do some more testing when I get home tonight. This is an excellent idea since it shows how to enable testing for components in this situation if someone is interested in doing so.
I've added some initial comments to the code.  I would like to get this merged before the conference if you have time, but if not and you would like me to make the changes just lemme know.

Looks good

@SwampGuzzler
I figured out a way to have fallback mappings and generic mocks, check out the latest commit and let me know what you think?
I also cleaned up the test commands. There now two commands, one is test which just runs jest and the other is lint to run the linter. This way we can run npm test -- -u if we need to update our snapshots

Awesome! The function Mock is going to be super useful.
I was wondering about the test command update: when my snapshot tests failed properly due to component updates, I wasn't offered the standard Jest 'update this component's snapshot?' question.
Is this because we had our lint task tacked onto the Jest command?

Yup, also why running npm test -- -u was not working. The -- is just a passthrough technique so it was calling jest; eslint; -u.  Technically if we reversed the commands it could still work in a single command (figured this out this morning), which I may do, so something like this for npm test:
eslint src/**/*.js; jest (no semi after jest so -u gets appended correctly)


From merging shape 0 with other shapes. for 'concat/concat_dim' (op: 'Pack') with input shapes: [64,100], [64,256]

/home/naveen/anaconda3/lib/python3.7/site-packages/dask/config.py:168: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
data = yaml.load(f.read()) or {}
WARNING:tensorflow:From /home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/ops/resource_variable_ops.py:1630: calling BaseResourceVariable.init (from tensorflow.python.ops.resource_variable_ops) with constraint is deprecated and will be removed in a future version.
Instructions for updating:
If using Keras pass *_constraint arguments to layers.
(64, 256)
Traceback (most recent call last):
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/ops.py", line 1610, in _create_c_op
c_op = c_api.TF_FinishOperation(op_desc)
tensorflow.python.framework.errors_impl.InvalidArgumentError: Dimension 1 in both shapes must be equal, but are 100 and 256. Shapes are [64,100] and [64,256].
From merging shape 0 with other shapes. for 'concat/concat_dim' (op: 'Pack') with input shapes: [64,100], [64,256].
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/naveen/eclipse-workspace/text-to-image-master/train.py", line 238, in
main()
File "/home/naveen/eclipse-workspace/text-to-image-master/train.py", line 76, in main
input_tensors, variables, loss, outputs, checks = gan.build_model()
File "/home/naveen/eclipse-workspace/text-to-image-master/model.py", line 39, in build_model
fake_image = self.generator(t_z, t_real_caption)
File "/home/naveen/eclipse-workspace/text-to-image-master/model.py", line 141, in generator
z_concat = tf.concat(1, [t_z, reduced_text_embedding])
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/util/dispatch.py", line 180, in wrapper
return target(*args, **kwargs)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/ops/array_ops.py", line 1427, in concat
ops.convert_to_tensor(axis, name="concat_dim",dtype=dtypes.int32).get_shape().assert_has_rank(0)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/ops.py", line 1184, in convert_to_tensor
return convert_to_tensor_v2(value, dtype, preferred_dtype, name)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/ops.py", line 1242, in convert_to_tensor_v2
as_ref=False)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/ops.py", line 1296, in internal_convert_to_tensor
ret = conversion_func(value, dtype=dtype, name=name, as_ref=as_ref)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/ops/array_ops.py", line 1278, in _autopacking_conversion_function
return _autopacking_helper(v, dtype, name or "packed")
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/ops/array_ops.py", line 1214, in _autopacking_helper
return gen_array_ops.pack(elems_as_tensors, name=scope)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/ops/gen_array_ops.py", line 6304, in pack
"Pack", values=values, axis=axis, name=name)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/op_def_library.py", line 793, in _apply_op_helper
op_def=op_def)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/util/deprecation.py", line 507, in new_func
return func(*args, **kwargs)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/ops.py", line 3360, in create_op
attrs, op_def, compute_device)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/ops.py", line 3429, in _create_op_internal
op_def=op_def)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/ops.py", line 1773, in init
control_input_ops)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/ops.py", line 1613, in _create_c_op
raise ValueError(str(e))
ValueError: Dimension 1 in both shapes must be equal, but are 100 and 256. Shapes are [64,100] and [64,256].
From merging shape 0 with other shapes. for 'concat/concat_dim' (op: 'Pack') with input shapes: [64,100], [64,256].

the above error msg i am getting when I am using default options for train.py.
if I change the "--z_dim" == 256, I am getting the following error,
/home/naveen/anaconda3/lib/python3.7/site-packages/dask/config.py:168: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
data = yaml.load(f.read()) or {}
WARNING:tensorflow:From /home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/ops/resource_variable_ops.py:1630: calling BaseResourceVariable.init (from tensorflow.python.ops.resource_variable_ops) with constraint is deprecated and will be removed in a future version.
Instructions for updating:
If using Keras pass *_constraint arguments to layers.
(64, 256)
Traceback (most recent call last):
File "/home/naveen/eclipse-workspace/text-to-image-master/train.py", line 238, in
main()
File "/home/naveen/eclipse-workspace/text-to-image-master/train.py", line 76, in main
input_tensors, variables, loss, outputs, checks = gan.build_model()
File "/home/naveen/eclipse-workspace/text-to-image-master/model.py", line 39, in build_model
fake_image = self.generator(t_z, t_real_caption)
File "/home/naveen/eclipse-workspace/text-to-image-master/model.py", line 141, in generator
z_concat = tf.concat(1, [t_z, reduced_text_embedding])
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/util/dispatch.py", line 180, in wrapper
return target(*args, **kwargs)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/ops/array_ops.py", line 1427, in concat
ops.convert_to_tensor(axis, name="concat_dim",dtype=dtypes.int32).get_shape().assert_has_rank(0)
File "/home/naveen/anaconda3/lib/python3.7/site-packages/tensorflow_core/python/framework/tensor_shape.py", line 995, in assert_has_rank
raise ValueError("Shape %s must have rank %d" % (self, rank))
ValueError: Shape (2, 64, 256) must have rank 0.
I request your help in this regard....

I meet the same question, can somebody else  fix this question


UWP with broad file system access in libcurl fails

For UWP, we have <rescap:Capability Name="broadFileSystemAccess" /> set in the manifest and have enabled in the settings to allow the app.
libcurl eventually calls the C open API (which eventually calls CreateFileW), but this returns -1.
We currently have a fallback mechanism to use Windows::Storage::StorageFile::GetFileFromPathAsync instead, but it would be nice to see if we can get libcurl to work with broadFileSystemAccess.

CURL issues centralized here : https://github.com/BabylonJS/BabylonNative/issues/96


Add labeling for GOTO tag

Would be nice to allow a labeled Q/A so that you can, e.g., GOTO example_question.

Done. Q tags now have custom naming.


How to serve static files?

Hi, how to serve static files like .css files, or images to put in a web page with spin?
And, it is advisable/efficient doing that (if it is possible), or it will be better (but not elegant...) serving static files with another light http only file server?
Thanks for this and for answering.

Spin's run procedure passes its kw args to serve/servlet (docs), which means that it supports (or ought to support) serving static files using the #:extra-files-paths kw arg.
Try defining a path with (define-runtime-path static-files "static") and then passing it as that aforementioned kw arg, wrapped in a list: (list static-files)

Thanks for answering dkvasnicka. I can serve static files with serve/servlet without problems, but using your suggestion to do the same with spin doesn't work for me. Passing various parameters of serve/servlet to spin's "run" got unexpected results.
I tried very hard to make a simple self-contained example of static file serving with spin to share/contribute to the doc, but I surely miss something important.
I think this is an important severely undocument feature, I have to ask if someone can help. I am continuing experimenting in the meantime.

I think I've found the problem. The problem is that the #:servlet-regexp #rx"" interferes with serving static files, "hijacks" the requests and returns 404. When I change the regexp to something different, static files start to work but the rest of Spin behaves weirdly.
This was not immediately apparent to me because this is not the case when you use URL-based dispatching (which is what I now use when doing a Racket web app). When the start arg passed to serve/servlet is created using dispatch-case serving static files works like a charm.
I think it shouldn't be rocket science to fix this but to be honest I'm currently satisfied with the web app facilities provided by Racket itself.

Could this be fixed by simply adding an optional positional argument to run, namely one that gets passed as start to serve/servlet?

Something like:
(define run
  (make-keyword-procedure
    (lambda (kws kw-args . etc)
      (cond
        [(< 1 (length etc)) ; change this to just check that there is only one
         (error 'run
                "serve/servlet only takes one positional argument, found ~a"
                (length etc))]
        [(ormap (curryr memq '(#:servlet-regexp #:command-line?)) kws)
         (error 'run
                "kw args may not include #:servlet-regexp or #:command-line?")]
        [else
         (let* ([kw-pairs (append '((#:servlet-regexp #rx"")
                                    (#:command-line? #t))
                                  (filter (lambda (kw-pair)
                                            (not (eq? '#:response-maker (car kw-pair))))
                                          (map list kws kw-args)))]
                [sorted-pairs (sort kw-pairs keyword<? #:key first)]
                [response-maker (let ([response-maker-pair
                                       (findf (lambda (p) (eq? (car p) '#:response-maker))
                                              (map list kws kw-args))])
                                  (if response-maker-pair
                                      (cadr response-maker-pair)
                                      default-response-maker))])
           (keyword-apply serve/servlet
                          (map first sorted-pairs)
                          (map second sorted-pairs)
                          (if (< 1 (length etc)) ; if there was a positional argument, pass it
                            (list (car etc))
                            (list (lambda (req)
                                    (request->handler req response-maker))))))]))))

perhaps?
I'm not sure about this at all, the code is not commented or documented, so it is difficult to figure out.

Something like this should work but then it seems to me that it doesn't make much sense to actually use Spin (because you'd do a lot of the crucial work in dispatch-case anyway). You might as well go with vanilla Racket webserver API, am I right?

That's true. Could Spin's regex-based routing system be adapted to create dispatch-rules? That way, the framework does all the work, and static files could be routed accordingly (the best of both worlds!)

I believe it could and I'm sure the author won't turn his back on a nice pull request ;)

I have just added a pull request which adds a simple "get-file" function to provide spin based routing for the http "GET" method which serves binary files from the filesystem.
I have also provided a new section in the README.md file on the topic of serving binary files.
Note that there is a very simple way to hook into the standard Racket web-application, you simply need to ensure the #:response-maker keyword in the run function is provided with a response-maker which calls the (next-dispatcher) function.  Please see the updated README.me for details.
Note that the Adding binary servlets pull request requires the previous Adding multi segment route parameters pull request.


Creating draft version of entity before creating any live version - not possible without manually creating version entry?

PHP Version: 8.3   | Shopware Version: <IP_ADDRESS>  | Affected area / extension: Platform(Default)

Expected behaviour:
If I create an entity with a draft version, the version manager should also create the corresponding version entry, e.g. because various data is added to it using apis etc and only once everything exists, it should be set to live.
Currently that only occurs in "createVersion": https://github.com/shopware/shopware/blob/v<IP_ADDRESS>/src/Core/Framework/DataAbstractionLayer/VersionManager.php#L140
However, that cannot be used without first writing an entity into the database and for it to be merged correctly to a Live version, it has to be a live version.
In the insert / upsert https://github.com/shopware/shopware/blob/v<IP_ADDRESS>/src/Core/Framework/DataAbstractionLayer/VersionManager.php#L96
no such version is created, which is why later using "merge" fails.
If one creates the version entry manually similar to https://github.com/shopware/shopware/blob/v<IP_ADDRESS>/src/Core/Framework/DataAbstractionLayer/VersionManager.php#L140 everything works fine.
The documentation also does not mention how to create a draft version initially, without first creating a live version https://developer.shopware.com/docs/guides/plugins/plugins/framework/data-handling/versioning-entities.html#create-and-merge-version
Actual behaviour:
see above.
How to reproduce:
see above.

[public] Shopware automated response: This issue is linked to the internal issue: NEXT-38844
[created from NEXT-38844, comment 502679]

Hey @AndreasA
currently it is not intended to have the possibility to create a draft version of an entity without having a live version of this entity present. Therefore this is not a bug and I would like to point you to our feedback portal, as I would see this as a new feature https://feedback.shopware.com/forums/942607-shopware-6-product-feedback-ideas
Best regards from Schöppingen
Michael Telgmann

sure 👍 here we go https://github.com/shopware/docs/pull/1519


Allow x-amz-tagging-directive to be null on CopyObject

Describe the feature
A way to let 'x-amz-tagging-directive' not be used in request headers. This header is always being set on CopyObject according to
CopyObjectRequestMarshaller : 77

if (copyObjectRequest.IsSetTagSet())
            {
                request.Headers.Add(S3Constants.AmzHeaderTagging, AmazonS3Util.TagSetToQueryString(copyObjectRequest.TagSet));
                request.Headers.Add(S3Constants.AmzHeaderTaggingDirective, TaggingDirective.REPLACE.Value);
            }
            else
            {
                request.Headers.Add(S3Constants.AmzHeaderTaggingDirective, TaggingDirective.COPY.Value);
            }

Use Case
The header 'x-amz-tagging-directive' is always being set. But some service like Cloudflare R2 doesn't have an implementation for it yet, then the request fail. According to S3 Documentation:
API_CopyObject
When you don't set the x-amz-tagging-directive header and the source object has non-empty tags. This is because the default value of x-amz-tagging-directive is COPY.
Proposed Solution
Remove the else from CopyObjectRequestMarshaller : 82
Other Information
No response
Acknowledgements

[X] I may be able to implement this feature request
[ ] This feature might incur a breaking change

AWS .NET SDK and/or Package version used
AWS SDK 3.7.303
Targeted .NET Platform
.NET8
Operating System and version
Linux

Re-opening, we noticed via an internal ticket that this may be an obstacle when copying an object with tags from a general purpose bucket to a directory bucket when using S3 Express One Zone.
From https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html#API_CopyObject_RequestBody

Directory buckets - For directory buckets in a CopyObject operation, only the empty tag-set is supported. Any requests that attempt to write non-empty tags into directory buckets will receive a 501 Not Implemented status code.

The following scenarios should be supported when copying from either a general purpose or directory bucket to a directory bucket, and clearing the tags.

When you attempt to REPLACE the tag-set of a directory bucket source object and set the x-amz-tagging value of the directory bucket destination object to empty.
When you attempt to REPLACE the tag-set of a general purpose bucket source object that has non-empty tags and set the x-amz-tagging value of the directory bucket destination object to empty.

However because the .NET SDK does not currently let you set REPLACE alongside an empty tag-set, it's challenging to copy an object that has tags originally. I think we ought to expose x-amz-tagging-directive independently.

Resolving as the latest preview version of the S3 package (https://www.nuget.org/packages/AWSSDK.S3/4.0.0-preview.3) allows TaggingDirective to be set by customers when copying objects.


Pass the resourceQuest into schedulingUnit

Pass the resourceQuest into schedulingUnit so that we can filter and score the cluster based on resource quest of workloads.
At present, the interpret of the PodTemplate path of K8s native resources is built in, and it can be put into FTC for subsequent consideration.
Refer to https://github.com/kubewharf/kubeadmiral/blob/7ede6f4b715d2b3861ce8a6b4f681cc229d86cfe/pkg/util/pod/pod.go#L38

Test Result:
When apply a deploy whose resource quest is more than available resources in clusters
I0809 04:24:28.620856       1 generic_scheduler.go:164] "Cluster doesn't fit" controller="scheduler" key="default/echo-server-deployments.apps" source-gvk="apps/v1, Kind=Deployment" ftc="deployments.apps" policy="default/policy-all-clusters" name="kubeadmiral-member-1" reason="Insufficient cpu"
I0809 04:24:28.620879       1 generic_scheduler.go:164] "Cluster doesn't fit" controller="scheduler" key="default/echo-server-deployments.apps" source-gvk="apps/v1, Kind=Deployment" ftc="deployments.apps" policy="default/policy-all-clusters" name="kubeadmiral-member-2" reason="Insufficient cpu"
I0809 04:24:28.620893       1 generic_scheduler.go:164] "Cluster doesn't fit" controller="scheduler" key="default/echo-server-deployments.apps" source-gvk="apps/v1, Kind=Deployment" ftc="deployments.apps" policy="default/policy-all-clusters" name="kubeadmiral-member-3" reason="Insufficient cpu"


Consider changing "consider" error messages

Something about this doesn't feel right:
ruff --fix --extend-ignore=F401 .
Found 2 error(s).
python_modules/automation-internal/automation_internal/cloud/check/old_images.py:79:9: PLR1722 Consider using `sys.exit()`
python_modules/automation-internal/automation_internal/infra/terragrunt.py:318:5: PLR1722 Consider using `sys.exit()`
2 potentially fixable with the --fix option.

Why am I only supposed to "consider" fixing these but not all the other issues Ruff flags? Ruff exits with error code 1 if there are errors-- most users will use ruff in a context where they try to get 0, for which you have to fix or ignore these (same as for other errors). So IMO it should just say: use sys.exit().

Hah, I think we took this from Pylint, but yeah, agree.


RFE: preview website for pull requests

It would be awesome to have optional preview of the website for the pull requests. It would help contributors to present their changes for big updates (layout, big pages, et.c). It could be automated via a chatops command.

@oleg-nenashev I think before implementing #1117 we have to complete this issue.

stale


MinecraftProtocol can't connect with proxy

Hey, i'm using
this.protocol = new MinecraftProtocol(username, password,false , proxy);
as  code with a proxy set, but i keep getting this weird exception
[Veneficus] [ERROR] Failed loggin in 'HIDDEN@HIDDEN:HIDDEN! Invalid credentials. com.github.steveice10.mc.auth.exception.request.InvalidCredentialsException: Invalid credentials. Invalid username or password.     at com.github.steveice10.mc.auth.util.HTTP.makeRequest(HTTP.java:79)     at com.github.steveice10.mc.auth.service.AuthenticationService.loginWithPassword(AuthenticationService.java:280)     at com.github.steveice10.mc.auth.service.AuthenticationService.login(AuthenticationService.java:217)     at com.github.steveice10.mc.protocol.MinecraftProtocol.<init>(MinecraftProtocol.java:191)     at org.veneficus.bot.Core.BotClient.getProtocol(BotClient.java:52)     at org.veneficus.bot.Core.BotClient.<init>(BotClient.java:42)     at org.veneficus.bot.Core.Threads.StartBotsThread.run(StartBotsThread.java:31)     at java.lang.Thread.run(Thread.java:748)
Logging in with that account on minecraft.net works.

Check if username/email and password are correct, try logging in with email if you are using username or the other way around...

@Mareckoo01 Logging in in the launcher works and logging in without a proxy works too.

Then that proxy is banned by mojang. They even ban accounts nowdays...

But how do you tell if a Proxy its banned?

Well.. if it is public and used by enough people, the chance of it being banned increases? or by trying to login with it and it doesn't work?

Well, it is public, but just got uploaded this very day.

That doesn't mean that it wasn't used before..

Probably banned proxy

alot of proxys are banned from mojang


How can i output an canvas image?

Hi~
It is really a good job. In my use, I am puzzled... where can I see the results after using webgl drawn a graph？

Hello! Do you use this module with the "3d-core-raub" package? If so, you should have a desktop window where everything is drawn. If you want to store the picture from that window, it basically means "to make snapshot". Since we work with GL you probably can use glPixelStorei. When done, the picture is in the provided buffer (in memory) and you are to store it as you wish.
As a good use-case I'd like to provide a working example of such application. I'll inform you if I succeed.

@axmand please look at this example, maybe even run it...
It's a bit dirty, because I had to mimic the BMP file format for FreeImage, but hey it works anyway. And you can save whatever format Freeimage saves (bmp, gif, jpg, tga, webp - to name just few).
Is that what you wanted to achieve? Does it solve your problem?

Hello! Do you use this module with the "3d-core-raub" package? If so, you should have a desktop window where everything is drawn. If you want to store the picture from that window, it basically means "to make snapshot". Since we work with GL you probably can use glReadPixels. When done, the picture is in the provided buffer (in memory) and you are to store it as you wish.
As a good use-case I'd like to provide a working example of such application. I'll inform you if I succeed.
I am very grateful for your tips.
I followed your prompt and it has run smoothly  by using "3d-core-raub" instead, The code that can be run is as follows:

const node3d = require("3d-core-raub");
global.document = global.window = node3d.doc;
const requestAnimationFrame = window.requestAnimationFrame;
const {gl,Screen} = node3d;
const screen = new Screen();
//your own gl rendering
const updateFrame = ()=>{
   //something else
   screen.draw();
   requestAnimationFrame(updateFrame);
};
updateFrame();


Traefik preferring ACME over provided certificates for configured sites

What version of Traefik are you using (traefik version)?
1.1.2
What is your environment & configuration (arguments, toml...)?
traefik.toml:
defaultEntryPoints = ["http", "https"]
[entryPoints]
  [entryPoints.http]
  address = ":80"
    [entryPoints.http.redirect]
    entryPoint = "https"
  [entryPoints.https]
  address = ":443"
    [entryPoints.https.tls]
      [[entryPoints.https.tls.certificates]]
        CertFile = "/etc/ssl/certs/deployed/wildcard.mysite.com.crt"
        KeyFile = "/etc/ssl/certs/deployed/wildcard.mysite.com.key"

[acme]
  email = "<redacted>"
  storage = "acme.json"
  storageFile = "acme.json"
  onDemand = true
  onHostRule = true
  entryPoint = "https"
  caServer = "https://acme-staging.api.letsencrypt.org/directory"

[docker]
  exposedbydefault = false

docker service:
docker service create \
    --name traefik \
    --constraint=node.role==manager \
    --constraint 'node.labels.hosting-shared == 1' \
    --constraint 'node.labels.production == 1' \
    --publish 80:80 --publish 8080:8080 --publish 443:443 \
    --mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock \
    --mount type=bind,source=/docker/traefik/lets-encrypt,target=/etc/traefik/acme \
    --mount type=bind,source=/docker/traefik/certs,target=/etc/ssl/certs/deployed \
    --mount type=bind,source=/docker/traefik/traefik.toml,target=/traefik.toml \
    --network web \
    traefik \
    --docker \
    --docker.swarmmode \
    --docker.domain=traefik \
    --docker.watch \
    --web

What did you do?
I set up a default wildcard certificate, *.mysite.com. I set up a hosts entry on my machine so I could test whoam1.mysite.com. I browsed to the site and as expected received the "404 page not found" message. My certificate loaded correctly.
Then I set up a container and browsed to the site again:
docker service create \
    --name whoami1 \
    --label traefik.port=80 \
    --label traefik.frontend.rule=Host:whoami1.mysite.com \
    --network web \
    emilevauge/whoami

What did you expect to see?
I expected to see the whoami page, with my certificate correctly loading.
What did you see instead?
Instead, I received an ERR_SSL_PROTOCOL_ERROR.
"This site can’t provide a secure connection. whoami1.mysite.com sent an invalid response."
Inspecting the logs revealed that Traefik is requesting a Let's Encrypt certificate instead of using the one I provided (and of course failing, since the DNS entry isn't pointing to this server):
server.go:2317: http: TLS handshake error from <IP_ADDRESS>:53634: Cannot obtain certificates map[whoami1.mysite.com:acme: Error 400 - urn:acme:error:connection - Failed to connect to x.x.x.x:443 for TLS-SNI-01 challenge

This is a duplicate of https://github.com/containous/traefik/issues/672. Currently working on a fix.

Resolved with https://github.com/containous/traefik/pull/1018

Not sure if I should open a new issue for this or not, but I seem to have the exact same problem. I run version 1.7.3 and this issue should be fixed from as early as 1.2.0.
The only difference between me and the OP is that I've configured it with command line arguments instead, running inside Docker swarm (but the Swarm-part shouldn't be relevant). Here is my Swarm stack deploy file:
version: '3.3'

services:
  consul:
    image: consul:1.3.0
    command: agent -server -bootstrap-expect=1
    networks:
      - consul-net
    volumes:
      - type: bind
        source: /var/traefik-data/consul-data/
        target: /consul/data/
    environment:
      - CONSUL_BIND_INTERFACE=eth0
      - CONSUL_CLIENT_INTERFACE=eth0
    deploy:
      replicas: 1
      restart_policy:
        condition: on-failure
      placement:
        constraints:
          - "node.role == manager"
  initiation:
    image: traefik:1.7
    networks:
      - consul-net
    depends_on:
      - consul
    deploy:
      restart_policy:
        condition: on-failure
    command:
      - storeconfig
      - --entryPoints=Name:http Address::80
      - --entryPoints=Name:https Address::443 TLS:/cert/star.service.example.local.crt,/cert/star.service.example.local.key
      - --defaultentrypoints=http,https
      - --api
      - --api.entryPoint=traefik
      - --api.dashboard=true
      - --docker
      - --docker.swarmmode
      - --docker.watch
      - --docker.exposedByDefault=false
      - --docker.endpoint=tcp://swarm.service.example.local:2376
      - --acme
      - --acme.storage=traefik/acme/account
      - --acme.entryPoint=https
      - --acme.httpChallenge.entryPoint=http
      - --acme.onHostRule=true
      - --acme.onDemand=false
      -<EMAIL_ADDRESS>      - --consul
      - --consul.endpoint=consul:8500
      - --consul.prefix=traefik
      - --logLevel=WARN
      - --traefikLog.format=json
      - --accessLog.format=json
  app:
    image: traefik:1.7
    networks:
      - consul-net
      - traefik-net
    ports:
      - target: 80
        published: 80
        protocol: tcp
        mode: host
      - target: 443
        published: 443
        protocol: tcp
        mode: host
    volumes:
      - type: bind
        source: /var/traefik-data/certificates/
        target: /cert/
    depends_on:
      - consul
      - initiation
    deploy:
      mode: global
      restart_policy:
        condition: on-failure
      placement:
        constraints:
          - "node.role == manager"
      update_config:
        parallelism: 1
        delay: 10s
      labels:
        traefik.enable: "true"
        traefik.docker.network: "traefik-net"
        traefik.port: 8080
        traefik.frontend.rule: "Host:traefik.service.example.local"
        traefik.frontend.entryPoints: "https"
        traefik.frontend.whitelist.sourceRange: "<IP_ADDRESS>/16, <IP_ADDRESS>/8"
    command:
      - --consul
      - --consul.endpoint=consul:8500
      - --consul.prefix=traefik
      - --logLevel=WARN
      - --traefikLog.format=json

networks:
  traefik-net:
    external:
      name: traefik-net
  consul-net:
    driver: overlay

As you can see, I have a wildcard certificate for *.service.example.local, which is self-signed. Obviously because I cannot use Lets Encrypt for these. However, when I run ACME for other services (that are publically available), I get the following in my logs:
Error getting ACME certificates [traefik.service.example.local] : cannot obtain certificates: acme: Error 400 - urn:ietf:params:acme:error:malformed - Error creating new order :: Name does not end in a public suffix
Error getting ACME certificates [elasticsearch.service.example.local] : cannot obtain certificates: acme: Error 400 - urn:ietf:params:acme:error:malformed - Error creating new order :: Name does not end in a public suffix
...


[UI, not MVP] Ability to add a new Data Source

placeholder issue for UI

This was actually done as a part of #127 so I'm going to close this one for now. Let me know if I missed anything!


Improve feature detection and reuse BarcodeDetector

This patch includes improved feature detection support to decide whether
or not the polyfill is necessary. It first checks if the BarcodeDetector
supports QR codes and if so creates a new instance configured to only
detect this format. This instance is reused between frames to avoid
repeating the initialization steps.
Usage of the BarcodeDetector object is also moved to the main thread.
While the polyfill is blocking the native implementation is asynchronous
and sending the image data to a worker first is wasted effort.

Thanks @reillyeon - I want to keep all of the logic contained inside the worker, right now we are splitting two pieces of similar logic across two different files to be run in one context or the other and I would like to keep them contained for now and running on the worker thread. I understand that there might be some overhead serializing the image data for transfer, but I'm ok with that in this case.
Also, is 'getSupportedFormats' available across all recent versions of Chrome? Might need to 'getSupportedFormats' in BarcodeDetector to stop it from crashing.
Hmm, also I am not sure why on earth I was initializing the detector every frame...

PR here: https://github.com/PaulKinlan/qrcode/pull/60
For context, I'm also in the middle of a larger refactoring of the UI and all Main thread work, so keep everything isolated in the worker is super handy right now.

@reillyeon - whilst I have you, on Chrome OS when you call getSupportedFormats it throws an exception saying it is not supported (which I understand), why would it just not return an empty list? That kind of implies there are no supported formats on the device.


Adding a job with a "maxParallelTasks" parameter greater than zero causes an error: Forbidden

Problem Description
Adding a job with a "maxParallelTasks" parameter greater than zero causes an error: Forbidden
Reason: Property maxParallelTasks is not enabled for current account
Documentation has no information about any limitations: https://docs.microsoft.com/en-us/rest/api/batchservice/job/add#request-headers
Additional Logs
...
azure.batch.models._models_py3.BatchErrorException: Request encountered an exception.
Code: Forbidden
Message: {'additional_properties': {}, 'lang': 'en-US', 'value': 'Access is Forbidden\nRequestId:d49b9b23-1a78-42d5-a00d-b4037e5fb441\nTime:2022-02-22T10:57:57.6311327Z'}
Reason: Property maxParallelTasks is not enabled for current account

Thanks for pointing this out. The maxParallelTasks property is currently enabled for specific accounts only. It also requires enableInterNodeCommunication to be set to true, which is part of the reason it isn't enabled everywhere yet. We'll work on updating the documentation to make this less confusing.
If you would like to enable it for an account, please submit a support request using the "New Support Request" option on the Batch account in the Azure Portal.

On second thought - I'll leave this issue open until we have the documentation update in place.


net/http/httptrace: function called after RoundTrip returns an error

The documentation for httptrace says
// Functions may be
// called concurrently from different goroutines, starting after the
// call to Transport.RoundTrip and ending either when RoundTrip
// returns an error, or when the Response.Body is closed.

However, if RoundTrip is canceled or times out before t.dialConn completes, ConnectStart can be called concurrently with code that runs after RoundTrip returns an error.
https://golang.org/src/net/http/transport.go#L880
Here is a sample race found by TSAN:
WARNING: DATA RACE
Read at 0x00c420204418 by goroutine 98:
  [in my code that reads the final trace struct after RoundTrip has returned an error]

Previous write at 0x00c420204418 by goroutine 100:
  [in my implementation of ConnectStart]
  net.dialSingle()
      go/gc/src/net/dial.go:511 +0xde5
  net.dialSerial()
      go/gc/src/net/dial.go:489 +0x245
  net.(*Dialer).DialContext()
      go/gc/src/net/dial.go:371 +0x977
  [some frames redacted]
  net/http.(*Transport).dial()
      go/gc/src/net/http/transport.go:821 +0xe3
  net/http.(*Transport).dialConn()
      go/gc/src/net/http/transport.go:962 +0x242a
  net/http.(*Transport).getConn.func4()
      go/gc/src/net/http/transport.go:880 +0xa2

I'm not sure if this is a documentation bug or a code bug. The only way to implement the documentation faithfully is to either (a) prevent calling hooks after the conditions specified in the doc have been reached, or (b) wait for the background t.dialConn to complete before returning from RoundTrip with an error. The second solution doesn't seem practical. The first solution is doable, but do we really need a strict guarantee in the first place?

/cc @bradfitz


java.nio.charset.UnsupportedCharsetException: gdk

java.nio.charset.UnsupportedCharsetException: gdk
at java.nio.charset.Charset.forName(Charset.java:309)
at okhttp3.MediaType.parse(MediaType.java)
charset(MediaType.java)
at okhttp3.ResponseBody.charset(ResponseBody.java)
at okhttp3.ResponseBody.string(ResponseBody.java)
at com.linkin.base.nhttp.http.HttpRequest.onFailure(HttpRequest.java)
onResponse(HttpRequest.java)
at okhttp3.RealCall$AsyncCall.execute(RealCall.java)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
Now i use okhttp:3.6 and okio:1.11.0.
Then i meet this exception.
The request i ' m not setting header.
But i use okhttp is no thi problem.
So how can I fix this ?

The response you’re receiving cannot be decoded as a string because gdk is not a supported charset. Consider asking the webserver’s administrator to encode using UTF-8 instead.

The webserver’s administrator tells me that he always use UTF-8 , without gdk.
This Expection is not usually happend,but it still.
How can i location this ?

Unsure what your next step is. Know which URL does this? Is it HTTPS? Otherwise maybe it's a man-in-the-middle attack?

I can't know which url does.
And only a little people meet this Expection.
This Expection is Okhttp3 catched, so I don't when it happend

No action for us to take on this. If you can provide a test case that demonstrates a bug, I'm happy to reopen this.


React Native how using multiple page?

Hi,
how to redirect to react native ?
Ex : index.android.js - login.js . profile.js
 <View style={styles.container}>         <Text style={styles.welcome}>           Welcome to React Native!         </Text>         <Text style={styles.instructions}>           To get started, edit index.android.js         </Text>         <Text style={styles.instructions}>           Shake or press menu button for dev menu         </Text>       </View>
Thanks :)

Please submit questions to StackOverflow.

My StackOverflow account is banned :/

What you need is a Navigator, it's already part of the react-native.
Check this article<EMAIL_ADDRESS>

<EMAIL_ADDRESS>

@facebook-github-bot answered

Closing this issue as @charpeni says the question asked has been answered. Please help us by asking questions on StackOverflow. StackOverflow is amazing for Q&A: it has a reputation system, voting, the ability to mark a question as answered. Because of the reputation system it is likely the community will see and answer your question there. This also helps us use the GitHub bug tracker for bugs only.


Some questions and potential improvement on the code

Good code and is easy to understand!

These two actually are the same, I'm not sure why it's called twice.  I think copy operation might work as well and save some computation.
https://github.com/rohitgandikota/erasing/blob/724514a05b55e047dc783d1e42d444989230620d/train-scripts/train-esd.py#L221-L222

These two lines are unnecessary. I've checked it and their requires_grad property is already set to False because of the previous with torch.no_grad() context.
https://github.com/rohitgandikota/erasing/blob/724514a05b55e047dc783d1e42d444989230620d/train-scripts/train-esd.py#L244-L245

Yes you are right! Although getting token embeddings is usually not expensive. But yes, it will improve the efficiency, given they are the same. Thanks!


Re-evaluate readPairOrientation, readStrandOrigin

Describe the issue with the metadata
As written, the definitions for these two are somewhat confusing. One of the valid values for readPairOrientation is fr-firststrand which is actually a combination of both readPairOrientation and readStrandOrigin.
This blog post has a nice summary: https://littlebitofdata.com/en/2017/08/strandness_in_rnaseq/
I think that we could actually combine these two terms into one to simplify data entry for annotators and to also make these more useful for processing - ultimately, data users want to know what strandedness setting to use in their software of choice, and it's easier to provide a straightforward annotation instead of a multiple of terms that they'll have to interpret.
HTAN (which I believe adoped from GDC) use this, which pairs nicely with the potential options for strandedness that one might select:
term: Library Strand
definition: Library stranded-ness. (OK, this could be more specific)
values: Unstranded, FirstStranded, SecondStranded, NotApplicable

can add isStranded to this review too, for the same reason.


[Benchmarking][Python] Benchmark builds on test-mac-arm are failing

Benchmark builds on test-mac-arm started failing on 12/21/2022 after https://github.com/apache/arrow/pull/14925 was merged into main . The first failed build: https://buildkite.com/apache-arrow/arrow-bci-benchmark-on-test-mac-arm/builds/2070
Steps to reproduce the issue on test-mac-arm:
cd ~
rm -rf arrow
git clone https://github.com/apache/arrow.git
cd arrow
conda create -y -n arrow-commit -c conda-forge \
  --file ci/conda_env_unix.txt \
  --file ci/conda_env_cpp.txt \
  --file ci/conda_env_python.txt \
  compilers \
  python=3.8 \
  pandas \
  aws-sdk-cpp \
  r
conda activate arrow-commit
pip install -r python/requirements-build.txt -r python/requirements-test.txt
source dev/conbench_envs/hooks.sh set_arrow_build_and_run_env_vars
export RANLIB=`which $RANLIB`
export AR=`which $AR`
export ARROW_JEMALLOC=OFF
ci/scripts/cpp_build.sh $(pwd) $(pwd)
ci/scripts/python_build.sh $(pwd) $(pwd)
(arrow-commit) voltrondata@m1mini01 arrow % python
Python 3.8.15 | packaged by conda-forge | (default, Nov 22 2022, 08:49:06)
[Clang 14.0.6 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyarrow
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/voltrondata/miniconda3/envs/arrow-commit/lib/python3.8/site-packages/pyarrow/_init_.py", line 65, in <module>
    import pyarrow.lib as _lib
ImportError: dlopen(/Users/voltrondata/miniconda3/envs/arrow-commit/lib/python3.8/site-packages/pyarrow/lib.cpython-38-darwin.so, 2): Library not loaded: /Users/voltrondata/arrow/python/build/lib.macosx-11.0-arm64-cpython-38/pyarrow/lib/libarrow_python.1100.dylib
  Referenced from: /Users/voltrondata/miniconda3/envs/arrow-commit/lib/python3.8/site-packages/pyarrow/lib.cpython-38-darwin.so
  Reason: image not found
>>>

Component(s)
Benchmarking

@ursabot please benchmark


Can't Drag/Move Connections into Folders

Description

Create connection
Create folder
Try to drag connection into folder using mouse
Fail

A pretty easy workaround is to copy/paste the connection into the desired folder, and then delete the original.
DBeaver Version
CE 22.3.2
Operating System
Ubuntu 22.04 w/X.org
Database and driver
No response
Steps to reproduce
No response
Additional context
No response

Hello @pgalbraith
What OS do you have?

related? #17415

Ah yeah that looks like it's my problem.  I'm running on Ubuntu using x.org (wayland disabled).

Likely duplicate of #17415

Sorry, I do not understand. Is your problem solved? Did you try to update DBeaver? Because https://github.com/dbeaver/dbeaver/issues/17415 is closed already.

@LonwoLonwo I say there was a commit in December re: #17415 so I was just assuming this hadn't made it to a release yet, but I'll re-open this just in case.

Same issue. same operating system.

Same issue here, but I'm on Arch. Kernel 6.1.8/DE: Plasma 5.26.5/x11.
I noticed the issue on dbeaver version 22.3.2, so I downloaded 22.3.3 to test if it's fixed, but the behavior is the same. I know I've drag-n-dropped successfully at some point in the past, but not sure how long ago.
The issue is the same both in the 'database navigator' and 'projects' view. Drag and drop does not work for moving connections between folders, moving folders into other folders, rearranging folders or connections
https://user-images.githubusercontent.com/49351525/216105254-bf889b7e-87e8-4319-9761-ac8a46cf28b9.mp4

I have the same problem!
I'm used distro Ubuntu 20.04.2 LTS

It is happening for me using Ubuntu 22.04 with Xorg.

Update ubuntu for 22.04.2 LTS and dbeaver  23.0.0.
It's working!

It's not working here!

It's strange, I'm with this exact versions on ubuntu and dbeaver e it's working!

It's strange, I'm with this exact versions on ubuntu and dbeaver e it's working!

It's because you're using Wayland now, the upgrade to Ubuntu must have changed the default for you.

 Before was "X11". Thanks by informations!

I'm also having this issue, 25 Apr
I'm using Ubuntu 22.04 with Xorg.
DBeaver <IP_ADDRESS>304231635

Same issue here T_T
DBeaver Version <IP_ADDRESS>304240616
Ubuntu 22.04.2 LTS

Not working for me. Same issue: Cannot drag/drop connections into folders.
Rocky Linux release 8.7 (Green Obsidian)
DBeaver Version <IP_ADDRESS>307091549

I can confirm this issue does not work for me either:
Dbeaver: Version <IP_ADDRESS>308061552
OS: Ubuntu 22.04
Display Server: X11
Work around

Copy and Paste the connection into the folder
Delete the old connection
Rename the new connection (removing the '1' at the end of the name)

Correct workaround is doing right click "Edit Connection" and modify folder to any predefined folder in the dropdown field.

Does the workaround preserve the "SQL Editor"->"Recent SQL script" ?

Thanks for the warning, I didn't know this would happen after the copy procedure.
I have Dbeaver installed on Arch and following this path I could get my scripts back.
~/.local/share/DBeaverData/workspace6/General/Scripts/
Using "snap" I think you can follow the path to copy your .sql scripts: ~/snap/dbeaver-ce/current/.local/share/DBeaverData/workspace6/General/Scripts/

same problem here, ubuntu 23.10, dbeaver 23.2.5

Not workin
ubuntu 22.04
DBeaver <IP_ADDRESS>402181738

Still occurring on DBeaver <IP_ADDRESS>403031740

OS Name:                                     Fedora Linux 39 (Workstation Edition)
OS Type:                                     64-bit
GNOME Version:                               45.5
Windowing System:                            X11
Kernel Version:                              Linux 6.7.9-200.fc39.x86_64

In the meantime, as posted above, it works fine to use Right click connection -> Edit Connection -> General tab -> Connection folder.

Yeah, for connection it works fine. But if you want to move folder, you don't have such option.

Same issue. Linux Mint 21.3, X11, DBeaver 24.2.1

Same issue here, Ubuntu 24.04 Using Gnome and X11.
I can't move folders or connection into another


development - npm webpack missing in package.json

I am not very experienced with node/npm, but when setting up the development environment I had problems because webpack was missing, after installing it is now added to my package.json:
    "node-sass": "^4.10.0",
    "npm-install-webpack-plugin": "^4.0.5",
    "npm-run-all": "^4.1.5",

I assume, some developers have installed webpack globally and so don't need to install it with this project, but it should be checked/installed by composer.

Hi @ezzra,
I think you'd just need to run: npm install before running the development commands. Looks like I've made the assumption developers will know to do this so I'll update the readme with this line. Webpack will be installed locally as part of npm install.

mh Iam not sure but its possible that I forgot it, anyways its good to have it within the guidelines


IPAdapterFaceID LoRA

Hello, thanks for your work looks amazing. I am new and trying to understand the flow and how the repo works. I have a question regarding the new faceid model about the LoRA. I guess the LoRA file is the one on HF named ip-adapter-faceid_sd15_lora.safetensors, I don't understan how do i load it in IPAdapterFaceID? and how can i replicate the result in https://huggingface.co/h94/IP-Adapter-FaceID/blob/main/ip-adapter-faceid.jpg what prompt should i use? thanks for helping.

hi, you can refer to discussion in https://github.com/cubiq/ComfyUI_IPAdapter_plus/issues/145#issuecomment-1867516955

Thanks for the reply. when normal LoRa is mentioned in https://github.com/cubiq/ComfyUI_IPAdapter_plus/issues/145#issuecomment-1867516955 does that mean to load it using the diffusers library so the  pipe.load_lora_weights() method? and then pass the pipeline to IPAdapterFaceID? thanks for helping.


I would like to see the incoming requests dump into stdout

I would like to have a way to configure, per imposter, if the incoming requests should be dumped to stdout or not.
Also would be nice to have a command line option to override all imposters dump configurations.

Hey @pafuent, thanks for creating the issue, I think something like this could be really helpful and benefitial for Killgrave users.
So, before diving into code implementations, could you bring a bit more information about what's your specific use case and/or what are you exactly trying to solve by adding this feature?
There's no issue yet, but we discussed adding a verbose (-v/--verbose) configuration option with @aperezg in the past which would basically cover your use case (if I understood it correctly) and bring some additional information to the user. So, I'm wondering whether it does worth to add this feature as a separated option or not.
Thanks!! 🙌🏻

Well the concrete use case that I'm trying to solve is related to logging. I needed to test locally the implementation of a logging proxy that will send the logs that receive to a multiple destinations. One of them is Splunk, so instead of deploying a local instance, I used killgrave to simulate it. But then I needed to validate that some tweaks made to the incoming log were sent properly to Splunk. And in my case, it's far more easy to just grep the output of killgrave than checking that in a full fledged Splunk instance.
As you mention, a verbose flag would solve my use case. I also like the idea of the multiple levels, because in my case the imposters that matched is not valuable, so if I can skip those it will be better.
Let me know if you have a PR already for that, if that isn't the case, I would be glad to implement it in my PR.

Gotcha! Thanks for the explanation! 🙏🏻  Sounds like a really good usage case for Killgrave 🙌🏻

Let me know if you have a PR already for that, if that isn't the case, I would be glad to implement it in my PR.

There's no PR neither an actual design, so feel free to either suggest your idea on the issue (which levels and what information will be logged for each) or to redo the existing pull request in a sense it introduces a basic implementation of the "verbose" flag that could be evolved in the near future.

Sure, I'll try to came up with something and update my PR accordingly.

Sorry for not taking care of this PR, it fell into the cracks and got forgotten. Seems that https://github.com/friendsofgo/killgrave/pull/170 is taking care of this, so I will close this PR.

Sorry, I closed the issue not the PR 🤦🏼♂


how to apply material theme to the datatable?

I was able to make the datatable show up but no theme applied - the first picture. I have attached the typescript, css and html files. Can anybody help me how to apply the material theme to the datatable?

typescript

lock.component.html

lock.component.css

see this - https://github.com/swimlane/ngx-datatable/issues/745


Nixpkgs Devbox v0.13.0 build failure

https://nixpkgs-update-logs.nix-community.org/devbox/2024-09-20.log

Good catch, we're using a newer version of Go than the default in Nixpkgs, so we have to change buildGoModule to buildGo123Module. I'll update the derivation.

See https://github.com/NixOS/nixpkgs/pull/343377

0.13.0 is now in Nixpkgs.
as of 0.13.2, you can also install Devbox via our Nix flake, to get the latest version as soon as it's released:
nix profile install github:jetify-com/devbox/latest


Improvement: transition duration/delay number parsing

Currently, transition duration/delay such as 0.5s is preserved as-is. When passed to Weex's animation API which expects number of milliseconds, this seems to be treated as 0.5ms instead (likely via parseInt).
We can of course check this in the runtime framework, but ideally weex-styler could normalize these durations during the build phase.

@yyx990803 OK. The unit s could be formatted to ms. Is it necessary to delete ms unit?

Normalizing durations into integers would be nice.


DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3, and in 3.9 it will stop working

Since we already have people using Python 3.9, we should change this.
modin\pandas\iterator.py:16

I have created https://github.com/modin-project/modin/pull/2641 to fix this. I have also fixed some deprecation warnings.

I have created https://github.com/modin-project/modin/pull/2641 to fix this. I have also fixed some deprecation warnings.

The change was delayed to Python 3.10 which will raise ImportError for importing ABC directly from collections.

The change was delayed to Python 3.10 which will raise ImportError for importing ABC directly from collections.


doc/design: Add a version prefix to the release tag in release.md

Update the doc/design/release.md documentation and ensure the git
release tag that's produced is prefixed with v so Go dependency
resolution works.

Description of the change:
Motivation for the change:
Reviewer Checklist

[ ] Implementation matches the proposed design, or proposal is updated to match implementation
[ ] Sufficient unit test coverage
[ ] Sufficient end-to-end test coverage
[ ] Docs updated or added to /doc
[ ] Commit messages sensible and descriptive

/lgtm
/approve


[Feature Request]: Allow to use both model serving modes in the same project

Feature description
We are moving towards having ModelMesh and KServe working together in the cluster, it has still some issues, but it can work already.
We should consider adding more flexibility in the DS Projects about using both the tools in the same DS Project.
Describe alternatives you've considered
if there are reasons not to have this option implemented, I think we should at least work on giving the option to change the selected serving mode - https://github.com/opendatahub-io/odh-dashboard/issues/2144
Anything else?
No response

Hi @bdattoma the model serving team (cc @Jooho @Xaenalt ) are working to support both ModelMesh and KServe in the same DS Project in the future, but we don't have the possibility right now to do so. We'll add that feature once it's supported by the controllers.
In the meantime, the alternative of change the selected serving mode could be feasible, we would need UX, but it's a matter of removing all the model serving resources and change lables in the project. That's something we can support in the meantime. cc @vconzola

Migrated to: https://issues.redhat.com/browse/RHOAIRFE-27


Refactor

Merge Interpreter and MLE
Merge multiple write code actions into one
Decouple plan and tool module, add tool recommender
Simplify tool usage
Add ReAct mode

Codecov Report
Attention: Patch coverage is 35.60372% with 208 lines in your changes are missing coverage. Please review.

Project coverage is 36.67%. Comparing base (9ad2f22) to head (3244e6c).
Report is 7 commits behind head on code_interpreter.

Files
Patch %
Lines

metagpt/tools/tool_recommend.py
5.00%
76 Missing :warning:

metagpt/roles/mi/interpreter.py
10.14%
62 Missing :warning:

metagpt/actions/mi/write_analysis_code.py
25.92%
20 Missing :warning:

metagpt/utils/common.py
6.66%
14 Missing :warning:

metagpt/tools/tool_registry.py
58.62%
12 Missing :warning:

metagpt/strategy/planner.py
28.57%
10 Missing :warning:

metagpt/provider/openai_api.py
33.33%
6 Missing :warning:

metagpt/provider/base_llm.py
25.00%
3 Missing :warning:

metagpt/actions/mi/write_plan.py
50.00%
2 Missing :warning:

metagpt/roles/role.py
50.00%
1 Missing :warning:

... and 2 more

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@                  Coverage Diff                  @@
##           code_interpreter     #990       +/-   ##
=====================================================
- Coverage             81.18%   36.67%   -44.51%
=====================================================
  Files                   226      223        -3
  Lines                 12466    12402       -64
=====================================================
- Hits                  10120     4549     -5571
- Misses                 2346     7853     +5507

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Cannot get ssh keys

Trying to run habitus even with the provided example, I get:

security git:(master) ✗ habitus_linux_amd64 --host=unix:///var/run/docker.sock --binding=<IP_ADDRESS> --build host=<IP_ADDRESS>
2016/10/24 16:14:55 ▶ Using '/home/wael/workspace/habitus/examples/security/build.yml' as build file
2016/10/24 16:14:55 ▶ Collecting artifact information
2016/10/24 16:14:55 ▶ Building 1 steps
2016/10/24 16:14:55 ▶ Step 0 - builder: builder
2016/10/24 16:14:55 ▶ Parallel build for builder
2016/10/24 16:14:55 ▶ Building builder
2016/10/24 16:14:55 ▶ Parsing and converting 'Dockerfile'
2016/10/24 16:14:55 ▶ Starting API on 8080
2016/10/24 16:14:55 ▶ Writing the new Dockerfile into Dockerfile.generated
2016/10/24 16:14:55 ▶ Building the builder image from Dockerfile.generated
Step 1 : FROM ubuntu
---> f753707788c5
Step 2 : RUN apt-get update && apt-get install -y wget openssh-client
---> Using cache
---> f149286ec705
Step 3 : RUN mkdir ~/.ssh && ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts
---> Using cache
---> d093edca0423
Step 4 : ARG host
---> Using cache
---> e744a38e08e2
Step 5 : ENV PRIVATE_KEY /root/.ssh/id_rsa
---> Using cache
---> 1a1212d088d7
Step 6 : RUN wget -O $PRIVATE_KEY http://:8080$host/v1/secrets/file/id_rsa && chmod 0600 $PRIVATE_KEY && ssh -T<EMAIL_ADDRESS>&& rm $PRIVATE_KEY
---> Running in 0bd430f3b4ef
--2016-10-24 14:14:55--  http://<IP_ADDRESS>:8080/v1/secrets/file/id_rsa
Connecting to <IP_ADDRESS>:8080... failed: Connection refused.
2016/10/24 16:14:56 ▶ Build for step builder failed due to The command '/bin/sh -c wget -O $PRIVATE_KEY http://:8080$host/v1/secrets/file/id_rsa && chmod 0600 $PRIVATE_KEY && ssh -T<EMAIL_ADDRESS>&& rm $PRIVATE_KEY' returned a non-zero code: 4

Command
$ habitus_linux_amd64 --host=unix:///var/run/docker.sock --binding=<IP_ADDRESS> --build host=<IP_ADDRESS>
Environment:

Ubuntu 16.04 and Docker 1.12.1

@benzid-wael Did you get past this error? I have the same problem

Got the solution in my case from this thread #14
#check active private ip, could be any enX

ipconfig getifaddr en0

sudo habitus --build host=$(ipconfig getifaddr en0) --host unix:///var/run/docker.sock --binding=<IP_ADDRESS>

Then the Docker file can look like the example

Had to do almost same for linux :
habitus --host=unix:///var/run/docker.sock --binding=<IP_ADDRESS> --build host=$(ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}')

In the Habitus IP address section of the main site the following is mentioned:

Finding the correct IP address to server Habitus API (and secrets) on can be tricky. You don't want to bind it to <IP_ADDRESS> since it will make Habitus and your secrets available to your entire local network (and possibly the internet if you're running a tunnel) during the build time.

Is it still fine to use the --binding=<IP_ADDRESS> option?

Hi @cnjr2 ,
Definitely not ! All your local network will access your file. I did it just to test.

Hey @Apokly, thanks for your reply. I have also been able to do builds when using the --binding=<IP_ADDRESS>, but not with other IPs, such as the default mentioned. Do you know how to find out which one is usable and safe?

No, I didn't really spend a lot of time using Habitus, since I wondered how to use it in an external context (with https://zeit.co/now for example). I tried with my own local IP and docker's one (Docker network interface, called docker0 on linux). But if you find the solution, I'll really appreciate an answer.

I have settled for this for now:
host=$(ipconfig getifaddr en0)
sudo habitus --build host=$host --host unix:///var/run/docker.sock --binding=$host

To clarify this issue.
Habitus is an application which doesn't run in your docker network!
If you use want to expose your secrets to your builds you have to tell Habitus on which IP address it needs to bind and expose the secrets. Use the --binding to tell Habitus which IP address it has to bind to.
The next step is to tell the build process where Habitus is exposing his secrets. Because every build process is isolated and has his own network, you can't bind to localhost or something. You need the real IP of the exposed secrets. The easiest way is to use build environments with the --build switch.
$habitus --bind [ip_to_bind_to] --build HABITUS_SECRET_SERVER=[ip_to_bind_to]
In you Dockerfile you can use the Docker build argument.
 ARG HABITUS_SECRET_SERVER
 RUN wget -O ~/.ssh/id_rsa http://$HABITUS_SECRET_SERVER:8080/v1/secrets/file/id_rsa

You need the real IP of the exposed secrets

So I need to have a server that expose, for example, my private SSH key and so habitus will wget it every time I deploy my Dockerfile ? What's goal ? What about security ?
I won't expose my private SSH key on a webserver, even with the default 80 port, so if it's the solution i will definitely not use Habitus.

@Apokly your end goal is to create a Docker image without any trace of your secrets and deploy this Docker image to production. You don't want your private keys on your webserver of course. And binding Habitus to an IP address can be a private one of course which is not connected to the Internet of course.
A lot of Habitus users are running Habitus in their own CI/CD solution using the keys in a secure environment and build the Docker image and push the Docker images (without secrets) to a registry and deploy it on the Docker cluster.
P.S. I removed real because this was confusing.

Understood ! Thank you for quick and useful answers. I'm still convinced that it's a little bit insecure since you have to expose permanently you secret keys on a webserver (even if not connected to internet), but I understand the meaning.

@Apokly no problem.  Habitus is only exposing the secrets uring the build, when Habitus is done there is not secret service of course bind to an IP address.


Would it be possible to bundle dependencies into renderer.js

Hi! I have been playing around with this project a bit and I was wondering: is it possible to bundle dependencies (like react) into renderer.js?
I am just getting started with scala.js and wanted to figure that out. I did try to add the scala-js-bundler plugin, but I have no clue how to integrate it with ElectronPlugin.
If you have any pointers, that would be great.
Thanks!

This plugin is very barebones conversion to Scala.js, for more complex projects I would advise to checkout https://github.com/ptrdom/scalajs-vite#electron. This is a plugin based on Vite, it is fully functional, but I do not like how slow is the bundling with Vite, that is why I am still working on https://github.com/ptrdom/scalajs-esbuild. This esbuild based plugin has really amazing bundling performance, but I have not yet implemented the Electron plugin for it yet.


Download taxid descriptions

download with 100 batch and 16 threads.

Ready for review~

you don't need an account for Entrez. just need to put an email there.

@yunfangjuan you could change to<EMAIL_ADDRESS>if you like


fix: do ECClient disconnect in RTCIceConnectionStateClosed only to prevent crash.

I found a bug that it crashes when I disconnect a room.
The bug is described in the issue I sent earlier: https://github.com/zevarito/Licode-ErizoClientIOS/issues/74
I found the reason it crashes is that a block inside ECClient is being released when the ECClient is released(while ECRoom's publishingStatsTimer released, and so that ECRoom and ECClient are released).
So I move the disconnect to RTCIceConnectionStateClosed to prevent this crash.
And after I read the references addressed in this issue (https://github.com/zevarito/Licode-ErizoClientIOS/issues/73), I still didn't find the answer that should both RTCIceConnectionStateDisconnected and  RTCIceConnectionStateClosed do disconnect. Since disconnect deallocates ECRoom, and it "probably" always calls RTCIceConnectionStateClosed, we could safely call disconnect at RTCIceConnectionStateClosed.

And so far I couldn't reproduce the crash on your sample code yet.
And also I didn't build WebRTC to get the debug symbol see the backtrace (although I guess it's irrelevant). I will try it later.


GetStorage is not reliable for cross-thread operations.

I am using flutter_background_service.
After reviewing the source code of GetStorage, it seems that it only reads data from the local disk once on startup and stores it in memory. All subsequent storage and retrieval operations are performed in memory.
However, background services run on a separate thread from the main thread, so operations performed in the main thread's memory cannot be synchronized with the background thread. Even if initialized in the background service, it would be ineffective because once the background service is started, it will not close again by default.
Even if GetStorage.init() is called, it will simply return the previously fetched value from the background thread's memory without fetching a new one.

did you fixed it .?


It is not work when use gpt-4 model！ha ha

Verify latest release

[X] I verified that the issue exists in the latest chatgpt release

Verify webapp is working

[X] I verify that the ChatGPT webapp is working properly for this account.

Environment details
node.js version: v20.3.1
Describe the Bug
when I use model gpt-4，it always not work！
[hello@xxx temp]# npx chatgpt@latest --model gpt-4 "what is your GPT version?what time do your knowledge cutoff?"
 I am based on GPT-3, which is the latest version as of my knowledge cutoff in September 2021.

And the bill at openAI console haved pay for gpt-4。It is so weird ， until see the code
chatgpt-api.ts#L83
if (this._systemMessage === undefined) {
      const currentDate = new Date().toISOString().split('T')[0]
      this._systemMessage = `You are ChatGPT, a large language model trained by OpenAI. Answer as concisely as possible.\nKnowledge cutoff: 2021-09-01\nCurrent date: ${currentDate}`
    }

Looks like this is not issue with this library but rather OpenAI disabled gpt4.

Probably the issue should be closed.

the default systemMessage shoud not include “Knowledge cutoff: 2021-09-01”，this will make the chatgpt answer “I am based on GPT-3”。
chatgpt-api.ts#L83

Probably the issue should be closed.

This project is undergoing a major revamp; closing out old issues as part of the prep process.
The chatgpt package is pretty outdated at this point. I recommend that you use the openai package or the openai-fetch package instead.


Mobile horizontal scroll on homepage

Deployed to: http://staging.quran.com:32876

rebuild

rebuild

Deployed to: http://staging.quran.com:32769


GPUGridLayer crashes when used with GridLayer

Description

GPUGridLayer crashes when used with GridLayer
Repro Steps

In examples/layer-browser run npm run start-local
Deselect ScatterplotLayer so that we can see results clearly.
Select GridLayer and then select GPUGridLayer and now deselect GridLayer.
The screen should display GPUGridLayer only but you'll see a blank screen.
Deselect  GPUGridLayer and it'll crash.

Environment (please complete the following information):

Framework Version: [e.g. deck.gl 7.3.0-alpha.4]
Browser Version: [e.g. Chrome 76.0]
OS: [e.g. Ubuntu 18.04.3 LTS]

Logs

It crashes because both the layers recieve the same id "gpu-grid-layer" from line 23 in lines 42 and 43.
https://github.com/uber/deck.gl/blob/43e40992a37d6283480b0193c8409f0a9d1e55db/examples/layer-browser/src/examples/additional-layers.js#L20-L43


remove otlpserver.CliEvent

otlpserver.CliEvent was an idea from a long time ago to put spans and span events in the same list. This predated working directly with protobuf spans, which is now the norm in otel-cli. Mostly this is a cosmetic / internal change and should not impact any users. otel-cli server tui had some weird behavior that changed, but mostly it should be better and more accurate.

TODO: I think I forgot to re-implement checking the new ServerMeta map in the functional tests.


How to use streaming-api

Problem
I want to use the streaming features, but I see no examples to how I would code it. I don't know what a streaming server should be? Is it perhaps a kafka server?
Could you please provide a short guide or tutorial?

Have you already looked at the simpleStreaming sample that comes with TeslaJS?

Yes, all I see is that the program waits for data, and suddenly it is just "done" and show me a couple of lines from the stream.
What is the stream server supposed to do?  What kind of server can receive this? Any examples?

The sample shows how the Tesla streaming API works.  You call it and it opens a streaming connection.  When/if data is available from Tesla the callback will be called with the data.  When the car is not moving the data is limited and the connection will close.


How to delete module

I made new module php artisan module:make sqlqueries
and then rm -rf Modules/sqlqueries
now every artisan command throws
[Illuminate\Contracts\Filesystem\FileNotFoundException]     File does not exist at path /module.json
I clear cache but nothing. How to sucessfully delete module:)

This is the only way to delete a module.
Are you sure there is no mention of it left somewhere ?

Some file is need module.json file from my deletem module. See this :
in Filesystem.php line 41 at Filesystem->get('/module.json') in Json.php line 111 at Json->getContents() in Json.php line 126 at Json->Nwidart\Modules\{closure}() in Repository.php line 288 at Repository->remember('/module.json', 60, object(Closure)) in CacheManager.php line 302 at CacheManager->__call('remember', array('/module.json', 60, object(Closure))) in Json.php line 127 at Json->getAttributes() in Json.php line 40 at Json->__construct('/module.json', object(Filesystem)) in Module.php line 190 at Module->json() in Module.php line 203 at Module->get('active', 0) in Module.php line 293 at Module->isStatus(1) in Repository.php line 204 at Repository->getByStatus(1) in Repository.php line 231 at Repository->enabled() in Repository.php line 263 at Repository->getOrdered() in Repository.php line 295 at Repository->register() in BootstrapServiceProvider.php line 22 at BootstrapServiceProvider->register() in Application.php line 568 at Application->register(object(BootstrapServiceProvider)) in LaravelModulesServiceProvider.php line 35 at LaravelModulesServiceProvider->registerModules() in LaravelModulesServiceProvider.php line 27 at LaravelModulesServiceProvider->boot() at call_user_func_array(array(object(LaravelModulesServiceProvider), 'boot'), array()) in BoundMethod.php line 28 at BoundMethod::Illuminate\Container\{closure}() in helpers.php line 912 at value(object(Closure)) in BoundMethod.php line 86 at BoundMethod::callBoundMethod(object(Application), array(object(LaravelModulesServiceProvider), 'boot'), object(Closure)) in BoundMethod.php line 30 at BoundMethod::call(object(Application), array(object(LaravelModulesServiceProvider), 'boot'), array(), null) in Container.php line 524 at Container->call(array(object(LaravelModulesServiceProvider), 'boot')) in Application.php line 762 at Application->bootProvider(object(LaravelModulesServiceProvider)) in Application.php line 745 at Application->Illuminate\Foundation\{closure}(object(LaravelModulesServiceProvider), 24) at array_walk(array(object(EventServiceProvider), object(LogServiceProvider), object(RoutingServiceProvider), object(AuthServiceProvider), object(CookieServiceProvider), object(DatabaseServiceProvider), object(EncryptionServiceProvider), object(FilesystemServiceProvider), object(FormRequestServiceProvider), object(FoundationServiceProvider), object(NotificationServiceProvider), object(PaginationServiceProvider), object(SessionServiceProvider), object(ViewServiceProvider), object(HtmlServiceProvider), object(ExcelServiceProvider), object(DatatablesServiceProvider), object(ServiceProvider), object(FormBuilderServiceProvider), object(LaratrustServiceProvider), object(EventServiceProvider), object(RepositoryServiceProvider), object(ConsoleServiceProvider), object(ContractsServiceProvider), object(LaravelModulesServiceProvider), object(DuskServiceProvider), object(AppServiceProvider), object(AuthServiceProvider), object(EventServiceProvider), object(RouteServiceProvider), object(MailServiceProvider), object(QueueServiceProvider), object(TranslationServiceProvider), object(CacheServiceProvider)), object(Closure)) in Application.php line 746 at Application->boot() in BootProviders.php line 17 at BootProviders->bootstrap(object(Application)) in Application.php line 208 at Application->bootstrapWith(array('Illuminate\\Foundation\\Bootstrap\\LoadEnvironmentVariables', 'Illuminate\\Foundation\\Bootstrap\\LoadConfiguration', 'Illuminate\\Foundation\\Bootstrap\\HandleExceptions', 'Illuminate\\Foundation\\Bootstrap\\RegisterFacades', 'Illuminate\\Foundation\\Bootstrap\\RegisterProviders', 'Illuminate\\Foundation\\Bootstrap\\BootProviders')) in Kernel.php line 160 at Kernel->bootstrap() in Kernel.php line 144 at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116 at Kernel->handle(object(Request)) in index.php line 53 at require('/Users/janpisula/Sites/ew2/public/index.php') in server.php line 128

This response is consistent with cache beeing used.
What kind of cache system do you use?

array

Other than cache, as nWidart said, might be mention somewhere, try system-wide search for that module name (case-insensitive)

I had the same problem when deleting a module or making an error in the file module.json.
To solve it in my case for redis I had to do the following:
$ redis-cli
$ DEL key laravel:pingpong-modules
$ DEL key laravel:/Users/mario/Documents/proyectos/hoyvoyweb/modules/**{moduleName}**/module.json

It seems that everything is produced by the cache generated by the package itself.

Strange that a cache:clear didn't clear these keys though.

Yeah, I have dealt with this numerous times.
Artisan command will not execute since it loads application first and that in turns loads cache from redis, and when you execute cache:clear it will fail with an error since references to non-existing files.
Only way to fix is to wait for cache expires or manually clear cache keys.

I found the following sequence works...

module:disable
cache:clear
now delete module directory
cache:clear - just for good luck

Just remove all cache files at storage/framework/data/cache/data and artisan command work fine.

Use this command
-  php artisan module:disable
-  php artisan cache:clear
- Now delete module directory
-  php artisan cache:clear - just for good luck

Use this command

php artisan module:disable your_module_name
php artisan cache:clear
Now delete module directory by manually
php artisan cache:clear - just for good luck

I used the next command in version 9 and works well
php artisan module:delete your_module_name

I had the same problem when deleting a module or making an error in the file module.json.
To solve it in my case for redis I had to do the following:
bootstrap/cache -> Delete All Files
storage/framework/cache/data -> Delete All Files
and then after run command :::
composer dump-autoload && php artisan optimize:clear && php artisan optimize && php artisan view:clear

I used the next command in version 9 and works well php artisan module:delete your_module_name

this was the correct answer it also clears modules_statuses as well. its much more assuring ! Thanks by the way.