Clarify safety on untrusted code

https://github.com/bazelbuild/starlark/blob/ce1fdb0e4eb2c85dfc549ddee4dcf55974392334/README.md?plain=1#L36-L37
The readme says:

It is safe to execute untrusted code.

https://github.com/google/starlark-go/issues/241#issuecomment-816369357 says:

we've never claimed that it is secure for running untrusted code. Scripts can easily cause denial of service by exhausting all memory, or by hash flooding.

It seems like executing arbitrary starlark code could crash a system, but other than that, there should be no way to escape the execution environment. Is this expectation correct?
The safety expectations also sound different from what https://github.com/google/cel-go offers, so it would be great if this could be elaborated in README.

but other than that, there should be no way to escape the execution environment. Is this expectation correct?

In theory, yes. However starlark-rust does unsafe code which may have bugs. Running starlark-rust in untrusted environment might be dangerous.
We should make that clear in readme.

(Deleted wrong comment)

Thanks for pointing this language out.
I'm worried that "It is safe to execute untrusted code" conveys unrealistic expectations about how hardened any given Starlark implementation is likely to be against truly malicious users. Imagine an implementation in a non-memory-safe language: Isn't "safe to execute untrusted code" practically equivalent to "There are no crash bugs"?
In Bazel, the design constraints that led to Starlark wasn't that we're dealing with untrusted code, so much as we want to preclude by construction code that is hostile to determinism and parallelism. Yes, to some extent you expect a user to not be able to compromise a Bazel host environment at the Starlark level (though you certainly could compromise it at the Bazel action execution level if not sandboxed). But we can soften the wording to avoid giving the impression that it's a primary use case that all implementations must satisfy.


TreeBrowser onRowClick called with incorrect context

When the adTreeBrowser's onRowClick callback is called, the context (this) of the original function is lost.
It looks like it was handled correctly in the various Draggable callbacks.  See: https://github.com/Adaptv/adapt-strap/blob/master/src/draggable/draggable.js#L94

thanks for reporting this


Show Refresh Rate

Command to get current refresh rate of display
Get-CimInstance -ClassName Win32_VideoController | Select-Object -Property CurrentRefreshRate
$refreshrate = (Get-CimInstance -ClassName Win32_VideoController -Property CurrentRefreshRate -CimSession $cimSession).CurrentRefreshRate
I'm wondering if we should show refresh rate with resolution or as a different option, Also I don't know how it will work with multi monitor setup
With resolution

As a different option

Would you like to send a PR?
We can have a flag that controls whether refresh rate should be shown along with resolution. Also, please explore how to get the info for multiple monitors.


Big file upload causes memory leak, and crash the app (iOS)

I try to upload biggest videos to own server, catching the file with php.
Everything works like charm at smaller videos, but the biggest videos (>1GB) causes memory leak and crashes the app, on my testing device (2016 iPad Pro).
In optimal case the videos should be 70-100minutes long, so they are almost everytime bigger then 1GB.
Do you have any solution or idea?

I am wondering about this as well, is there not an option where you can upload the file as a chunk?
When i tested upload a big file (about 1GB) as formdata, it eats around 1GB of my iOS device's RAM away. If there is not enough memory left, it will crash the app. I tested this on iPhone 6S Plus with 2GB RAM
I hope that developer will help clarify this if there is possible solution. If there is not, i hope that the developer will be able to add chunk upload options to help resolve big file issues.

Is there any solution?


Predicting class 3 for all the new images.

I am trying to predict labels (using pertained weights) for some random chest xray images. But it always predicts third class. I don't know if the implementation is working or no. Any idea what could be the problem?

same problem I am facing ,  did you resolved that


RESTCallee isn't working

I'm getting this response from the rest callee example.
{"args":["no callee registered for procedure 'com.myapp.rest'"],"error":"wamp.error.no_such_procedure"}

Something changed on Crossbar?

What precisely are you doing to get this error? The example at least starts up fine.

I just ran crossbar then I made the example request:
curl -H "Content-Type: application/json" \
    -d '{"procedure": "com.myapp.rest", "kwargs": {"url": "get", "method": "GET"}}' \
    http://<IP_ADDRESS>:8080/call

well, do you have a component that registered com.myapp.rest. anyway, try the example without modification.

Yeh, I tried the example without modification, actually the only change was on pythonpath due the virtualenv.

works for me (with current trunk of txaio, autobahn-python and crossbar):
oberstet@thinkpad-t430s:~/scm/crossbario/crossbarexamples/rest/callee$ cpy2_1
(python279_1)oberstet@thinkpad-t430s:~/scm/crossbario/crossbarexamples/rest/callee$ curl -H "Content-Type: application/json" \
>     -d '{"procedure": "com.myapp.rest", "kwargs": {"url": "get", "method": "GET"}}' \
>     http://<IP_ADDRESS>:8080/call
{"args":[{"content":"{\n  \"args\": {}, \n  \"headers\": {\n    \"Accept-Encoding\": \"gzip\", \n    \"Host\": \"httpbin.org\"\n  }, \n  \"origin\": \"<IP_ADDRESS>\", \n  \"url\": \"https://httpbin.org/get\"\n}\n","headers":{"Content-Encoding":[""],"Server":["nginx"],"Access-Control-Allow-Credentials":["true"],"Date":["Wed, 02 Dec 2015 12:33:31 GMT"],"Access-Control-Allow-Origin":["*"],"Content-Type":["application/json"]},"code":200}]}(python279_1)oberstet@thinkpad-t430s:~/scm/crossbario/crossbarexamples/rest/callee$

and
(python279_1)oberstet@thinkpad-t430s:~/scm/crossbario/crossbarexamples/rest/callee$ crossbar start
2015-12-02T13:33:02+0100 [Controller  24125]      __  __  __  __  __  __      __     __
2015-12-02T13:33:02+0100 [Controller  24125]     /  `|__)/  \/__`/__`|__) /\ |__)  |/  \
2015-12-02T13:33:02+0100 [Controller  24125]     \__,|  \\__/.__/.__/|__)/~~\|  \. |\__/
2015-12-02T13:33:02+0100 [Controller  24125]
2015-12-02T13:33:02+0100 [Controller  24125]     Version: 0.11.2
2015-12-02T13:33:02+0100 [Controller  24125]
2015-12-02T13:33:02+0100 [Controller  24125] Starting from node directory /home/oberstet/scm/crossbario/crossbarexamples/rest/callee/.crossbar
2015-12-02T13:33:02+0100 [Controller  24125] Loading node configuration file '/home/oberstet/scm/crossbario/crossbarexamples/rest/callee/.crossbar/config.json'
2015-12-02T13:33:02+0100 [Controller  24125] Entering reactor event loop...
2015-12-02T13:33:02+0100 [Controller  24125] Joined realm 'crossbar' on node management router
2015-12-02T13:33:02+0100 [Controller  24125] No WAMPlets detected in enviroment.
2015-12-02T13:33:02+0100 [Controller  24125] Starting Router with ID 'worker1'...
2015-12-02T13:33:02+0100 [Router      24130] Worker running under CPython-EPollReactor
2015-12-02T13:33:03+0100 [Controller  24125] Router with ID 'worker1' and PID 24130 started
2015-12-02T13:33:03+0100 [Controller  24125] Router 'worker1': realm 'realm1' (named 'realm1') started
2015-12-02T13:33:03+0100 [Controller  24125] Router 'worker1': role 'role1' (named 'anonymous') started on realm 'realm1'
2015-12-02T13:33:03+0100 [Router      24130] Site starting on 8080
2015-12-02T13:33:03+0100 [Controller  24125] Router 'worker1': transport 'transport1' started
2015-12-02T13:33:03+0100 [Controller  24125] Starting Container with ID 'worker2'...
2015-12-02T13:33:03+0100 [Container   24135] Worker running under CPython-EPollReactor
2015-12-02T13:33:03+0100 [Controller  24125] Container with ID 'worker2' and PID 24135 started
2015-12-02T13:33:03+0100 [Controller  24125] Container 'worker2': component 'component1' started
2015-12-02T13:33:30+0100 [Container   24135] Starting factory <twisted.web.client._HTTP11ClientFactory instance at 0x7f6bc3f30440>
2015-12-02T13:34:36+0100 [Container   24135] Stopping factory <twisted.web.client._HTTP11ClientFactory instance at 0x7f6bc3f30440>

there seems to be an issue on Python 3.5 though:
(python350_1)oberstet@thinkpad-t430s:~/scm/crossbario/crossbarexamples/rest/callee$ crossbar version
     __  __  __  __  __  __      __     __
    /  `|__)/  \/__`/__`|__) /\ |__)  |/  \
    \__,|  \\__/.__/.__/|__)/~~\|  \. |\__/

 Crossbar.io        : 0.11.2
   Autobahn         : 0.11.0
     UTF8 Validator : wsaccel-0.6.2
     XOR Masker     : wsaccel-0.6.2
     JSON Codec     : ujson-1.34
     MsgPack Codec  : msgpack-python-0.4.6
   Twisted          : 15.5.0-EPollReactor
   Python           : 3.5.0/CPython
 OS                 : Linux-3.13.0-68-generic-x86_64-with-debian-jessie-sid
 Machine            : x86_64

(python350_1)oberstet@thinkpad-t430s:~/scm/crossbario/crossbarexamples/rest/callee$ crossbar start
2015-12-02T13:40:34+0100 [Controller  24781]      __  __  __  __  __  __      __     __
2015-12-02T13:40:34+0100 [Controller  24781]     /  `|__)/  \/__`/__`|__) /\ |__)  |/  \
2015-12-02T13:40:34+0100 [Controller  24781]     \__,|  \\__/.__/.__/|__)/~~\|  \. |\__/
2015-12-02T13:40:34+0100 [Controller  24781]
2015-12-02T13:40:34+0100 [Controller  24781]     Version: 0.11.2
2015-12-02T13:40:34+0100 [Controller  24781]
2015-12-02T13:40:34+0100 [Controller  24781] Starting from node directory /home/oberstet/scm/crossbario/crossbarexamples/rest/callee/.crossbar
2015-12-02T13:40:34+0100 [Controller  24781] Loading node configuration file '/home/oberstet/scm/crossbario/crossbarexamples/rest/callee/.crossbar/config.json'
2015-12-02T13:40:34+0100 [Controller  24781] Entering reactor event loop...
2015-12-02T13:40:34+0100 [Controller  24781] Warning, could not set process title (setproctitle not installed)
2015-12-02T13:40:34+0100 [Controller  24781] Joined realm 'crossbar' on node management router
2015-12-02T13:40:34+0100 [Controller  24781] No WAMPlets detected in enviroment.
2015-12-02T13:40:34+0100 [Controller  24781] Starting Router with ID 'worker1'...
2015-12-02T13:40:34+0100 [Router      24785] Worker running under CPython-EPollReactor
2015-12-02T13:40:35+0100 [Controller  24781] Router with ID 'worker1' and PID 24785 started
2015-12-02T13:40:35+0100 [Controller  24781] Router 'worker1': realm 'realm1' (named 'realm1') started
2015-12-02T13:40:35+0100 [Controller  24781] Router 'worker1': role 'role1' (named 'anonymous') started on realm 'realm1'
2015-12-02T13:40:35+0100 [Router      24785] Site starting on 8080
2015-12-02T13:40:35+0100 [Controller  24781] Router 'worker1': transport 'transport1' started
2015-12-02T13:40:35+0100 [Controller  24781] Starting Container with ID 'worker2'...
2015-12-02T13:40:35+0100 [Container   24789] Worker running under CPython-EPollReactor
2015-12-02T13:40:35+0100 [Controller  24781] Container with ID 'worker2' and PID 24789 started
2015-12-02T13:40:35+0100 [Container   24789] Component loading failed:

Failed to import class 'crossbar.adapter.rest.RESTCallee'
Traceback (most recent call last):
  File "/home/oberstet/scm/crossbario/txaio/txaio/tx.py", line 338, in as_future
    return maybeDeferred(fun, *args, **kwargs)
  File "/home/oberstet/python350_1/lib/python3.5/site-packages/twisted/internet/defer.py", line 150, in maybeDeferred
    result = f(*args, **kw)
  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/container.py", line 191, in start_container_component
    create_component = _appsession_loader(config)
  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/__init__.py", line 68, in _appsession_loader
    klassname, Failure(e).getTraceback())
--- <exception caught here> ---
  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/__init__.py", line 59, in _appsession_loader
    component = getattr(module, klass_name)
builtins.AttributeError: module 'crossbar.adapter.rest' has no attribute 'RESTCallee'

2015-12-02T13:40:35+0100 [Container   24789] NativeWorkerSession.onUserError
Traceback (most recent call last):
  File "/home/oberstet/scm/crossbario/autobahn-python/autobahn/twisted/websocket.py", line 170, in _onMessage
    self.onMessage(payload, isBinary)
  File "/home/oberstet/scm/crossbario/autobahn-python/autobahn/wamp/websocket.py", line 95, in onMessage
    self._session.onMessage(msg)
  File "/home/oberstet/scm/crossbario/autobahn-python/autobahn/wamp/protocol.py", line 590, in onMessage
    on_reply = txaio.as_future(endpoint.fn, *invoke_args, **invoke_kwargs)
  File "/home/oberstet/scm/crossbario/txaio/txaio/tx.py", line 338, in as_future
    return maybeDeferred(fun, *args, **kwargs)
--- <exception caught here> ---
  File "/home/oberstet/python350_1/lib/python3.5/site-packages/twisted/internet/defer.py", line 150, in maybeDeferred
    result = f(*args, **kw)
  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/container.py", line 191, in start_container_component
    create_component = _appsession_loader(config)
  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/__init__.py", line 74, in _appsession_loader
    pythonpath=sys.path
autobahn.wamp.exception.ApplicationError: ApplicationError('crossbar.error.class_import_failed', args = ('Failed to import class \'crossbar.adapter.rest.RESTCallee\'\nTraceback (most recent call last):\n  File "/home/oberstet/scm/crossbario/txaio/txaio/tx.py", line 338, in as_future\n    return maybeDeferred(fun, *args, **kwargs)\n  File "/home/oberstet/python350_1/lib/python3.5/site-packages/twisted/internet/defer.py", line 150, in maybeDeferred\n    result = f(*args, **kw)\n  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/container.py", line 191, in start_container_component\n    create_component = _appsession_loader(config)\n  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/__init__.py", line 68, in _appsession_loader\n    klassname, Failure(e).getTraceback())\n--- <exception caught here> ---\n  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/__init__.py", line 59, in _appsession_loader\n    component = getattr(module, klass_name)\nbuiltins.AttributeError: module \'crossbar.adapter.rest\' has no attribute \'RESTCallee\'\n',), kwargs = {'pythonpath': ['/home/oberstet/scm/crossbario/crossbarexamples/rest/callee', '/home/oberstet/scm/crossbario/crossbar/crossbar/worker', '/home/oberstet/python350_1/bin', '/home/oberstet/scm/crossbario/autobahn-python', '/home/oberstet/scm/crossbario/txaio', '/home/oberstet/scm/crossbario/crossbar', '/home/oberstet/python350_1/lib/python35.zip', '/home/oberstet/python350_1/lib/python3.5', '/home/oberstet/python350_1/lib/python3.5/plat-linux', '/home/oberstet/python350_1/lib/python3.5/lib-dynload', '/home/oberstet/python350/lib/python3.5', '/home/oberstet/python350/lib/python3.5/plat-linux', '/home/oberstet/python350_1/lib/python3.5/site-packages']})

2015-12-02T13:40:35+0100 [Controller  24781] crossbar.error.class_import_failed: Failed to import class 'crossbar.adapter.rest.RESTCallee'
Traceback (most recent call last):
  File "/home/oberstet/scm/crossbario/txaio/txaio/tx.py", line 338, in as_future
    return maybeDeferred(fun, *args, **kwargs)
  File "/home/oberstet/python350_1/lib/python3.5/site-packages/twisted/internet/defer.py", line 150, in maybeDeferred
    result = f(*args, **kw)
  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/container.py", line 191, in start_container_component
    create_component = _appsession_loader(config)
  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/__init__.py", line 68, in _appsession_loader
    klassname, Failure(e).getTraceback())
--- <exception caught here> ---
  File "/home/oberstet/scm/crossbario/crossbar/crossbar/worker/__init__.py", line 59, in _appsession_loader
    component = getattr(module, klass_name)
builtins.AttributeError: module 'crossbar.adapter.rest' has no attribute 'RESTCallee'

2015-12-02T13:40:35+0100 [Controller  24781] sending TERM to subprocess 24785
2015-12-02T13:40:35+0100 [Controller  24781] waiting for 24785 to exit...
2015-12-02T13:40:35+0100 [Controller  24781] sending TERM to subprocess 24789
2015-12-02T13:40:35+0100 [Controller  24781] waiting for 24789 to exit...
2015-12-02T13:40:35+0100 [Router      24785] Received SIGTERM, shutting down.
2015-12-02T13:40:35+0100 [Container   24789] Received SIGTERM, shutting down.
2015-12-02T13:40:35+0100 [Router      24785] Connection to node controller lost.
2015-12-02T13:40:35+0100 [Router      24785] No more controller connection; shutting down.
2015-12-02T13:40:35+0100 [Router      24785] (TCP Port 8080 Closed)
2015-12-02T13:40:35+0100 [Container   24789] Connection to node controller lost.
2015-12-02T13:40:35+0100 [Container   24789] No more controller connection; shutting down.
2015-12-02T13:40:35+0100 [Controller  24781] Process connection gone: A process has ended with a probable error condition: process ended with exit code 1.
2015-12-02T13:40:35+0100 [Controller  24781] Node worker worker1 ended (1 workers left)
2015-12-02T13:40:35+0100 [Controller  24781] Node shutting down ..
2015-12-02T13:40:35+0100 [Controller  24781] Shutting down node...
2015-12-02T13:40:35+0100 [Controller  24781] Process connection gone: A process has ended with a probable error condition: process ended with exit code 1.
2015-12-02T13:40:35+0100 [Controller  24781] Node worker worker2 ended (0 workers left)
(python350_1)oberstet@thinkpad-t430s:~/scm/crossbario/crossbarexamples/rest/callee$

@meejah @hawkowl ^

As I can see the only difference is the crossbar version, I'm running 0.11.1 from pypi.
I've tried to install it directly on the system to be sure it wasn't a virtualenv/pythonpath issue, but this way the response seems worst.
{"args":["Connection refused"],"error":"wamp.error.runtime_error"}

And the following from crossbar stream:
2015-12-02T10:49:05-0200 [Controller  22431] Automatically choosing optimal Twisted reactor
2015-12-02T10:49:05-0200 [Controller  22431] Running on Linux and optimal reactor (epoll) was installed.
2015-12-02T10:49:05-0200 [Controller  22431]      __  __  __  __  __  __      __     __
2015-12-02T10:49:05-0200 [Controller  22431]     /  `|__)/  \/__`/__`|__) /\ |__)  |/  \
2015-12-02T10:49:05-0200 [Controller  22431]     \__,|  \\__/.__/.__/|__)/~~\|  \. |\__/
2015-12-02T10:49:05-0200 [Controller  22431]
2015-12-02T10:49:05-0200 [Controller  22431]     Version: 0.11.1
2015-12-02T10:49:05-0200 [Controller  22431]
2015-12-02T10:49:05-0200 [Controller  22431] Starting from node directory /mnt/sda3/johnny/Workspace/crossbarexamples/rest/callee/.crossbar
2015-12-02T10:49:05-0200 [Controller  22431] Loading node configuration file '/mnt/sda3/johnny/Workspace/crossbarexamples/rest/callee/.crossbar/config.json'
2015-12-02T10:49:05-0200 [Controller  22431] Entering reactor event loop...
2015-12-02T10:49:05-0200 [Controller  22431] Warning, could not set process title (setproctitle not installed)
2015-12-02T10:49:05-0200 [Controller  22431] Process utilities not available
2015-12-02T10:49:05-0200 [Controller  22431] Joined realm 'crossbar' on node management router
2015-12-02T10:49:05-0200 [Controller  22431] No WAMPlets detected in enviroment.
2015-12-02T10:49:05-0200 [Controller  22431] Starting Router with ID 'worker1'...
2015-12-02T10:49:06-0200 [Router      22436] Worker running under CPython-EPollReactor
2015-12-02T10:49:06-0200 [Router      22436] Process utilities not available
2015-12-02T10:49:06-0200 [Controller  22431] Router with ID 'worker1' and PID 22436 started
2015-12-02T10:49:06-0200 [Controller  22431] Router 'worker1': realm 'realm1' (named 'realm1') started
2015-12-02T10:49:06-0200 [Controller  22431] Router 'worker1': role 'role1' (named 'anonymous') started on realm 'realm1'
2015-12-02T10:49:06-0200 [Router      22436] Site starting on 8080
2015-12-02T10:49:06-0200 [Controller  22431] Router 'worker1': transport 'transport1' started
2015-12-02T10:49:06-0200 [Controller  22431] Starting Container with ID 'worker2'...
2015-12-02T10:49:06-0200 [Container   22441] Worker running under CPython-EPollReactor
2015-12-02T10:49:06-0200 [Container   22441] Process utilities not available
2015-12-02T10:49:06-0200 [Controller  22431] Container with ID 'worker2' and PID 22441 started
2015-12-02T10:49:06-0200 [Controller  22431] Container 'worker2': component 'component1' started
2015-12-02T10:49:09-0200 [Container   22441] Starting factory <twisted.web.client._HTTP11ClientFactory instance at 0x7f10efd9b3b0>
2015-12-02T10:49:09-0200 [Container   22441] Unhandled Error
Traceback (most recent call last):
Failure: twisted.internet.error.ConnectionRefusedError: Connection was refused by other side: 111: Connection refused.

2015-12-02T10:49:09-0200 [Container   22441] 'Connection refused'
2015-12-02T10:49:09-0200 [Container   22441] Stopping factory <twisted.web.client._HTTP11ClientFactory instance at 0x7f10efd9b3b0>

Some version details:
> $ crossbar version                                                                              ⬡ 4.2.1 [±master]
Automatically choosing optimal Twisted reactor
Running on Linux and optimal reactor (epoll) was installed.
     __  __  __  __  __  __      __     __
    /  `|__)/  \/__`/__`|__) /\ |__)  |/  \
    \__,|  \\__/.__/.__/|__)/~~\|  \. |\__/

 Crossbar.io        : 0.11.1
   Autobahn         : 0.10.9
     UTF8 Validator : autobahn
     XOR Masker     : autobahn
     JSON Codec     : stdlib
     MsgPack Codec  : msgpack-python-0.4.4
   Twisted          : 15.5.0-EPollReactor
   Python           : 2.7.9/CPython
 OS<EMAIL_ADDRESS> Machine            : x86_64

Yeah, this is because treq was not ported to Python 3, so it doesn't exist on Python 3.5. Treq just got ported (I need to do a release), so we can fix this.

@hawkowl ah, right. @johnnywell could you try crossbar trunk?

@oberstet I've just tried it but I got the same behavior as my last comment. I also cloned the crossbarexamples again just to be sure it is exactly the same as the repository.
Following version details:
> $ crossbar version                                                                              ⬡ 4.2.1 [±master]
Automatically choosing optimal Twisted reactor
Running on Linux and optimal reactor (epoll) was installed.
     __  __  __  __  __  __      __     __
    /  `|__)/  \/__`/__`|__) /\ |__)  |/  \
    \__,|  \\__/.__/.__/|__)/~~\|  \. |\__/

 Crossbar.io        : 0.11.2
   Autobahn         : 0.10.9
     UTF8 Validator : autobahn
     XOR Masker     : autobahn
     JSON Codec     : stdlib
     MsgPack Codec  : msgpack-python-0.4.4
   Twisted          : 15.5.0-EPollReactor
   Python           : 2.7.9/CPython
 OS<EMAIL_ADDRESS> Machine            : x86_64

Still the same with autobahn 0.11.0

@johnnywell well, I can't reproduce this

@oberstet Yeah, I'm going crazy with this. I'll give it some time, this might give me some luck.

@johnnywell do you have any kind of "fancy" network setup? like you are sitting behind a Web proxy or such for outgoing HTTP connections?

@oberstet yes, I'm in a enterprise network behind a web proxy, besides that I have some "fancy" network setup for a Linux container on my machine. Don you think it can interfere running crossbar locally?

yes, this (the web proxy) is likely the source of the issue. the REST callee essentially forwards a WAMP call into a HTTP request. and for the latter to cross the proxy, the REST bridge would need to know about that proxy. The REST bridge currently does not support that (I think .. @hawkowl )

Well, actually I'm already unsetting the proxy on the shell session where I'm making the calls. I can't even reach the crossbar caller if I don't do that.

@johnnywell yep, whenever HTTP is involved, the proxy needs to be configured or circumvented explicitly. But for HTTP requests that really are outgoing (to the internet), the latter would require to configured exceptions in proxy for the target HTTP host. Unlikely on an enterprise network.
anyway: https://github.com/crossbario/crossbar/issues/536

Turns out that was a proxy problem after all, but not between the caller and the callee. The error occurs because the RESTCallee wasn't able to call https://httpbin.org/, whit my internal REST API it works greatly.


Tomcat session expires causing session information in redis to be deleted

Background: The use Redis do session sharing. Session is currently shared by three projects
Problem: After logining in to a service, the service does not operate for a long time. When the timeout time set by the service tomcat is reached, even if other services are still in operation, there will be a forced exit. However, as long as one service is still in use, we do not want it to exit because one of the services has reached the timeout period.
Is there a good solution?
Thanks

Please provide redisson logs with logging level set to TRACE for org.redisson package. Also make sure that other services work with the same session.

version: tomcat 7    redisson-tomcat-7-3.11.6  redisson-all-3.11.6
Automatically clear expired session processes：

When the local session expires, the sessionid in redis will also be deleted
Our actual scenario is:
Projects A, B, and C use the first-level domain name for session sharing (using the same redis). If login is not performed for a long time after login on A, the tomcat session expiration policy is triggered, which will cause the data in redis to be synchronously destroyed, resulting in B And C go offline at the same time (B and C are in continuous operation at this time)

When the local session expires, the sessionid in redis will also be deleted

it's managed by Redis in RedissonSession.expireSession() method

At present, even if the service B is operated, it will automatically log out during the operation. But this is not the effect we want. We want to achieve this effect: clear the session only after the user actively logs out or does not use the three services A, B, and C for a long time. Instead of logging out of one of the services for a long time.
Is there any better solution? Or is it caused by our misuse?
Thank you.

does not use the three services A, B, and C for a long time

Did you try to extend session expiration timeout?

Thank you very much, this is a solution. We haven't found a good solution yet, let's try it

Tomcat manages session sessions based on Java Map. Tomcat will start a thread to scan the session in the scan and will actively trigger the session.isValid () operation. When the local session expires, it will actively trigger the deletion of session information in Redis, which will cause other project sessions to fail.
Here is the tomcat 7.x  source code
ManagerBase.java
public abstract class ManagerBase extends LifecycleMBeanBase implements Manager {
@Override
public void backgroundProcess() {
count = (count + 1) % processExpiresFrequency;
if (count == 0)
processExpires();
}
/**
* Invalidate all sessions that have expired.
*/
public void processExpires() {
    long timeNow = System.currentTimeMillis();
    Session sessions[] = findSessions();
    int expireHere = 0 ;

    if(log.isDebugEnabled())
        log.debug("Start expire sessions " + getName() + " at " + timeNow + " sessioncount " + sessions.length);
    for (int i = 0; i < sessions.length; i++) {
        if (sessions[i]!=null && !sessions[i].isValid()) {
            expireHere++;
        }
    }
    long timeEnd = System.currentTimeMillis();
    if(log.isDebugEnabled())
         log.debug("End expire sessions " + getName() + " processingTime " + (timeEnd - timeNow) + " expired sessions: " + expireHere);
    processingTime += ( timeEnd - timeNow );

}

StandardSession.java
public class StandardSession implements HttpSession, Session, Serializable {
/**
* Return the isValid flag for this session.
*/
@Override
public boolean isValid() {
    if (!this.isValid) {
        return false;
    }

    if (this.expiring) {
        return true;
    }

    if (ACTIVITY_CHECK && accessCount.get() > 0) {
        return true;
    }

    if (maxInactiveInterval > 0) {
        long timeNow = System.currentTimeMillis();
        int timeIdle;
        if (LAST_ACCESS_AT_START) {
            timeIdle = (int) ((timeNow - lastAccessedTime) / 1000L);
        } else {
            timeIdle = (int) ((timeNow - thisAccessedTime) / 1000L);
        }
        if (timeIdle >= maxInactiveInterval) {
            expire(true);
        }
    }

    return this.isValid;
}

public void expire(boolean notify) {
    // Check to see if session has already been invalidated.
    // Do not check expiring at this point as expire should not return until
    // isValid is false
    if (!isValid)
        return;

    synchronized (this) {
        // Check again, now we are inside the sync so this code only runs once
        // Double check locking - isValid needs to be volatile
        // The check of expiring is to ensure that an infinite loop is not
        // entered as per bug 56339
        if (expiring || !isValid)
            return;

        if (manager == null)
            return;

        // Mark this session as "being expired"
        expiring = true;

        // Notify interested application event listeners
        // FIXME - Assumes we call listeners in reverse order
        Context context = (Context) manager.getContainer();

        // The call to expire() may not have been triggered by the webapp.
        // Make sure the webapp's class loader is set when calling the
        // listeners
        ClassLoader oldTccl = null;
        if (context.getLoader() != null &&
                context.getLoader().getClassLoader() != null) {
            oldTccl = Thread.currentThread().getContextClassLoader();
            if (Globals.IS_SECURITY_ENABLED) {
                PrivilegedAction<Void> pa = new PrivilegedSetTccl(
                        context.getLoader().getClassLoader());
                AccessController.doPrivileged(pa);
            } else {
                Thread.currentThread().setContextClassLoader(
                        context.getLoader().getClassLoader());
            }
        }
        try {
            Object listeners[] = context.getApplicationLifecycleListeners();
            if (notify && (listeners != null)) {
                HttpSessionEvent event =
                    new HttpSessionEvent(getSession());
                for (int i = 0; i < listeners.length; i++) {
                    int j = (listeners.length - 1) - i;
                    if (!(listeners[j] instanceof HttpSessionListener))
                        continue;
                    HttpSessionListener listener =
                        (HttpSessionListener) listeners[j];
                    try {
                        context.fireContainerEvent("beforeSessionDestroyed",
                                listener);
                        listener.sessionDestroyed(event);
                        context.fireContainerEvent("afterSessionDestroyed",
                                listener);
                    } catch (Throwable t) {
                        ExceptionUtils.handleThrowable(t);
                        try {
                            context.fireContainerEvent(
                                    "afterSessionDestroyed", listener);
                        } catch (Exception e) {
                            // Ignore
                        }
                        manager.getContainer().getLogger().error
                            (sm.getString("standardSession.sessionEvent"), t);
                    }
                }
            }
        } finally {
            if (oldTccl != null) {
                if (Globals.IS_SECURITY_ENABLED) {
                    PrivilegedAction<Void> pa =
                        new PrivilegedSetTccl(oldTccl);
                    AccessController.doPrivileged(pa);
                } else {
                    Thread.currentThread().setContextClassLoader(oldTccl);
                }
            }
        }

        if (ACTIVITY_CHECK) {
            accessCount.set(0);
        }

        // Remove this session from our manager's active sessions
        manager.remove(this, true);

        // Notify interested session event listeners
        if (notify) {
            fireSessionEvent(Session.SESSION_DESTROYED_EVENT, null);
        }

        // Call the logout method
        if (principal instanceof GenericPrincipal) {
            GenericPrincipal gp = (GenericPrincipal) principal;
            try {
                gp.logout();
            } catch (Exception e) {
                manager.getContainer().getLogger().error(
                        sm.getString("standardSession.logoutfail"),
                        e);
            }
        }

        // We have completed expire of this session
        setValid(false);
        expiring = false;

        // Unbind any objects associated with this session
        String keys[] = keys();
        if (oldTccl != null) {
            if (Globals.IS_SECURITY_ENABLED) {
                PrivilegedAction<Void> pa = new PrivilegedSetTccl(
                        context.getLoader().getClassLoader());
                AccessController.doPrivileged(pa);
            } else {
                Thread.currentThread().setContextClassLoader(
                        context.getLoader().getClassLoader());
            }
        }
        try {
            for (int i = 0; i < keys.length; i++) {
                removeAttributeInternal(keys[i], notify);
            }
        } finally {
            if (oldTccl != null) {
                if (Globals.IS_SECURITY_ENABLED) {
                    PrivilegedAction<Void> pa =
                        new PrivilegedSetTccl(oldTccl);
                    AccessController.doPrivileged(pa);
                } else {
                    Thread.currentThread().setContextClassLoader(oldTccl);
                }
            }
        }
    }
}

RedissonSessionManager.java
public class RedissonSessionManager extends ManagerBase {
@Override
public void remove(Session session, boolean update) {
    super.remove(session, update);
    if (session.getIdInternal() != null) {
        ((RedissonSession)session).delete();
    }
}

@mrniko


ENH: Add larsoner, automerge, 3.7-3.10, use larsoner/openmeeg:conda-forge

Checklist

[x] Used a fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

@conda-forge-admin, please rerender

FYI locally I added .ci_support/migrations/python310.yaml with:
migrator_ts:<PHONE_NUMBER>
__migrator:
    migration_number: 1
    operation: key_add
    primary_key: python
    ordering:
        python:
            - 3.6.* *_cpython
            - 3.7.* *_cpython
            - 3.8.* *_cpython
            - 3.9.* *_cpython
            - 3.10.* *_cpython  # new entry
            - 3.6.* *_73_pypy
            - 3.7.* *_73_pypy
    paused: false
    longterm: True
    pr_limit: 40
    max_solver_attempts: 10  # this will make the bot retry "not solvable" stuff 10 times
    exclude:
      # this shouldn't attempt to modify the python feedstocks
      - python
      - pypy3.6
      - pypy-meta
      - cross-python
      - python_abi
    exclude_pinned_pkgs: false

python:
  - 3.10.* *_cpython
# additional entries to add for zip_keys
numpy:
  - 1.21
python_impl:
  - cpython

which I borrowed from mayavi. Not 100% sure it's correct, but CIs are at least running now.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

Failed to even lint the recipe, probably because of a conda-smithy bug :cry:. This likely indicates a problem in your meta.yaml, though. To get a traceback to help figure out what's going on, install conda-smithy and run conda smithy recipe-lint . from the recipe directory.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.
I do have some suggestions for making it better though...
For recipe:

License is not an SPDX identifier (or a custom LicenseRef) nor an SPDX license expression.

Documentation on acceptable licenses can be found here.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender

@conda-forge-admin, please rerender

@conda-forge-admin, please rerender


Interactive list

TODO-List: Add-Remove-Edit Functionalities
In this milestone, I:

Implemented a function for for the "Clear all completed" button (use filter() method).
Updated items object's value for completed key upon user actions.

Hi Code Reviewer, for the past day I've been getting linter webhint error preventing my project from being reviewed. Please I request that you review my project with the linter webhint error. Thank you

@tugsem Please what changes?

@joskalenda Thank you for your review. I've been having a webhint error since yesterday and the solution hasn't yet been found. I requested that my project be reviewed with the linters error which has been accepted for all previous reviews as indicated in the pull request description.

Hello @over-geek 👋,
This is an additional review as a result of the second opinion request.
I am sorry for what has transpired. It's true that @tugsem did not highlight what changes you need to make. However, @tugsem has once again claimed your newest code review request.
@tugsem, let's hope that you are going to review this PR and leave desirable feedback. Thank you.
Keep rocking 🚀!

@Lameck1 I am assisting the student via Slack right now, when he applies the changes, I am going to approve it. Thank you

STATUS: APPROVED 👍🎯
Hello @over-geek 👋
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉
Highlights ⭐
✔ All items have the right indexes
✔deleting an item updates the indexes as expected
✔ all checked items persist in the local storage
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


Skywrath Mage Concussive Shot

In old times in imba 6.88 this skill create circle effect on ground when hit enemy that shows "second aoe slow effect" aoe, but now it's shots projectiles from nothing to enemies.

It was reworked to make the actual hero hit by Concussive Shot project his own Concussive Shot.
This is intended. Please ask before opening this kind of issues.


pyautogui

Type: Feature Request
Auto-generated text from notebook cell performance. The duration for the renderer, VS Code Builtin Notebook Output Renderer, is slower than expected.
Execution Time: 286ms
Renderer Duration: 81ms
VS Code version: Code 1.94.2 (Universal) (384ff7382de624fb94dbaf6da11977bba1ecd427, 2024-10-09T16:08:44.566Z)
OS version: Darwin x64 20.6.0
Modes:

@Henrique77MH can you please share the notebook, especially the piece of code that has performance issues, with us to help troubleshoot?

Please provide detailed info about which part is slow, thanks in advance!


[Docs]  Insert into non-null column with nullable value

Search before asking

[X] I searched in the issues and found nothing similar.

Motivation
In spark, insert into a non-null column (primary-key) with a nullable value will display a error:
Cannot write nullable values to non-null column 'pkey'
But we can use the nvl or coalesce to work around. We need a docs in https://paimon.apache.org/docs/master/how-to/writing-tables/#applying-recordschanges-to-tables to demonstrate this.
we also need a test case to cover this like:
@Test
public void testNonnull() {
spark.sql(
"CREATE TABLE T (a INT NOT NULL, b INT, c STRING) TBLPROPERTIES"
+ " ('primary-key'='a', 'file.format'='avro')");
spark.sql(
"CREATE TABLE T2 (a INT, b INT, c STRING) TBLPROPERTIES"
+ " ('file.format'='avro')");
spark.sql("INSERT INTO T2 VALUES (1, 11, '111'), (null, 22, '222')").collectAsList();
Assertions.assertNoException(spark.sql("INSERT INTO T SELECT nvl(a, 1), b, c FROM T2"));
}
in class SparkWriteITCase
Solution
No response
Anything else?
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR!

Thanks @leaves12138 for creating this, I'd like to take it.

https://github.com/apache/incubator-paimon/issues/1048


Can I hide "body" in json?

Can I hide "body" in json?
If I can, how to do?
Thank you very much. ^_^

Hmm the HTML output is kinda core, can you explain the use case a bit? Are you using this to generate an index / navigation of some sort, where the content isn't important?

Because my JSON files
Only used as navigation,
There may be more than 100 data ( markdown file )
And the contents of each is based on JSON (use AJAX)
The flow like this: Edit Markdown-> JSON + HTML-> combine layout-> Web site
Just wanted to know, can I use "body: true" or "body: false" function? ^^
( Incidentally, your plugin is very helpful~ thank you!!! ^^ )

Ah ok I think I understand. Are you using the multiple file output for the content on each of the individual pages and looking to use the single file option for your navigation?  That use case makes sense.. I'd perhaps rather expose another method to generate this nav index as I'd rather not mix the config for the Markdown parser with options for the plugin (or have a separate object for that).

If you're still using this by chance I finally got around to a solution for this. #14 adds an optional transform function that you can use like this:
gulp.src('./content/**/*.md')
  .pipe(gutil.buffer())
  .pipe(markdownToJSON(marked, (data, file) => {
    delete data.body;
    return data;
  }))
  .pipe(gulp.dest('.'))

WOW, that's awesome! thank you very much. ;)


Flexible input prompt

Is your feature request related to a problem? Please describe.
I'm always frustrated when using the prompt as it is very repetitive, makes me very tired when typing.
Describe the solution you'd like
A flexible input prompt much like that used in projects such as Metasploit Framework,
If it is not related to any problem
I am so used to the terminal and need to use it efficiently and effectively, hence less typing more work philosophy.
Additional context
You're doing pretty good on the color scheme, very nice.

this issue is currently being worked on.


Use namespaces instead of underscore prefix for core bind classes

I propose this as a replacement for the underscore thing.
This PR doesn't remove the existing extra code that is needed to support classes with underscores (#26922 lists most of them).
The namespace names are just placeholders. I don't know what's our naming convention for namespaces.
There is a lot of ::ClassDB::bind_method lines in core_bind.cpp, which could be avoided if we move core_bind::ClassDB to its own namespace so it doesn't bother the other classes. Edit: Moved to its own namespace.

Are there any problems from the c-api end? Aka gdnative?

@fire I don't think there is any, but I didn't check. Most if not all the code that works around these underscores is just to strip it (or add it in case of a lookup).

I am surprised, never expected anything like this to work, if it really does feel free to go ahead and merge.

It may be safer to leave this for 4.0. I don't think it breaks anything, but I don't know what some GDNative language bindings out there are doing, so just to be safe...

The only annoyance I found is that we can't use VARIANT_ENUM_CAST because the template specializations it declares must be in the same namespace where the template was originally declared (which is why I moved all the VARIANT_ENUM_CAST to the bottom outside the namespace in core_bind.h).

Does this change anything on the front end?

I created #30153 which only removes the checks.

Any news in this regard? I'm now rewriting GDScript code and it would be nice to not have to deal with those pesky underscores.

I'll be revisiting this soon, but right now I'm focusing on other tasks.

Inspired by this PR, I've already done something similar while developing a custom module. But stumbled upon another bug while regenerating documentation and then generating the mono glue, see Xrayez/godot-geomtools#3.

@Xrayez The issue is with your PolyDecompType enum. Enums in namespaces needs the changes I made to type info in this PR.

Oh ok, so it would be nice for these changes to be cherry-picked to 3.2, else I'd have to make similar changes and/or revert to how it's now.

Just saying that I have some other module with having enums in namespaces which is an issue in and of itself (which is worth treating via separate PR perhaps which can be cherry-picked), for instance see: https://github.com/Xrayez/godot-anl/commit/642b470e8c1e1943e5c8016be2fc28213d5702b8#diff-142e17f094b421b5777b79be43c94633R336-R339. I've just had to duplicate enums eventually.

@neikeq This was last rebased over a year ago, what's the status of this?

It should be easy to re-do it for the master branch, but I haven't had time for that yet. Maybe next month.

I've added this to my TODO list for July.

Superseded by #51627.


can't connect database with environment variables

my docker-compose.yml below:
services:
  postgresql:
    image: sameersbn/postgresql:9.6-2
    environment:
      - DB_USER
      - DB_PASS
      - DB_NAME
    volumes:
      - /srv/docker/redmine/postgresql:/var/lib/postgresql

  redmine:
    image: sameersbn/redmine:3.4.4-2
    depends_on:
      - postgresql
    environment:
      - TZ

      # FIXME: can't connect db with environment
      - DB_ADAPTER
      - DB_HOST
      - DB_PORT
      - DB_USER
      - DB_PASS
      - DB_NAME

      ......

and export environments below:
...
# database settings
export DB_ADAPTER=postgresql
export DB_HOST=postgresql
export DB_PORT=postgresql
export DB_USER=redmine
export DB_PASS=password
export DB_NAME=redmine_production
...

then, i got error when docker-compose up
redmine_1       | Configuring redmine::database
redmine_1       | ERROR:
redmine_1       |   Please configure the database connection.
redmine_1       |   Refer http://git.io/JkE-cw for more information.
redmine_1       |   Cannot continue without a database. Aborting...
redmine_1       |

do you have any ideas?

Not really familiar with that feature, though quickly looking at it and looks like your doing it correctly.
https://docs.docker.com/compose/environment-variables/
The docs don't say if you need a certain version of docker-compose for this...

Tried it with just DB_USER and it appears to work fine.
diff --git a/docker-compose.yml b/docker-compose.yml
index cdf45855c9fc..7f7cb28822ad 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -4,7 +4,7 @@ services:
   postgresql:
     image: sameersbn/postgresql:9.6-2
     environment:
-    - DB_USER=redmine
+    - DB_USER
     - DB_PASS=password
     - DB_NAME=redmine_production
     volumes:
@@ -20,7 +20,7 @@ services:
     - DB_ADAPTER=postgresql
     - DB_HOST=postgresql
     - DB_PORT=5432
-    - DB_USER=redmine
+    - DB_USER
     - DB_PASS=password
     - DB_NAME=redmine_production

 $ docker version
Client:
 Version:	17.12.1-ce
 API version:	1.35
 Go version:	go1.10.1
 Git commit:	7390fc6
 Built:	Wed Apr 18 01:23:11 2018
 OS/Arch:	linux/amd64

Server:
 Engine:
  Version:	17.12.1-ce
  API version:	1.35 (minimum version 1.12)
  Go version:	go1.10.1
  Git commit:	7390fc6
  Built:	Wed Feb 28 17:46:05 2018
  OS/Arch:	linux/amd64
  Experimental:	false
 $ docker-compose -v
docker-compose version 1.17.1, build unknown

 $ docker-compose up
...
postgresql_1  | FATAL:  password authentication failed for user "root"
postgresql_1  | DETAIL:  Role "root" does not exist.
...

 $ DB_USER=redmine docker-compose up
... All good

 $ export DB_USER=redmine
 $ docker-compose up
... All good

thanks for checking!
I tried the same thing and works fine.
maybe my environment file something wrong...
i'll try another approach.
thanks a lot.


IGNITE-1635 Added reproduciable unit-test for the bug

https://issues.apache.org/jira/browse/IGNITE-1635
Added reproduciable unit-test for the bug.
Also added test for https://issues.apache.org/jira/browse/IGNITE-1616, but test do not reproduce the issue.

Merged.


filter by status on client runs searchbar

User Story
We already support filtering by status on the client runs nodes list by doing some button clicks above the table.
We've had a few customers mention they would like to have this search functionality in the searchbar as well, so that the values show up in the search url they send to people.
This should be a pretty easy change to make.
Definition of Done

client runs searchbar displays an option to filter by status, with possible options failed, successful, and missing
the status search selection shows up in the url

@vjeffrey The status selection already shows up in the URL. So, the user can share this selection with other users.
The only difficulty here is allowing the user to select multiple statuses from the search bar. Currently, we only allow one status to be selected in the UI and the backend.
I will look into adding this tomorrow since I have been updating the search bar in the last two PRs.

This task is on hold because of some questions of the UI changes.

i'm going to remove this card from the board until we figure this out


Only outputs 13 words if last word is abandon

monero_seed seed(std::time(nullptr), "monero");
std::cout << seed << std::endl;

Has a chance to generate a 13-word seed.
Examples:
cheap poet mountain clay december reason power smooth bike amateur wheel energy frequent
road poet mystery method female loud figure boost awkward angle sniff sing orphan
again poet mule want spawn enough dilemma next save gain pistol gloom hamster

Adding an erasure at the end will reveal that the last word in each case is abandon.
Debugging this further:
seed.message_.degree()

has a chance to return 12 instead of the usual 13.

Should be fixed now.


chore: add a user feedback in case of an error

This PR adds a toast promise to the generateAiDescription function in posthighlight.tsx. The toast promise displays a loading message wThis feedback would show the user a message if something went wrong while generating AI for post to highlight

This adds an error message feedback for user when they face an issue in the AI generation on the post to highight popup
What type of PR is this? (check all applicable)

[ ] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 🎨 Style
[x] 🧑💻 Code Refactor
[ ] 🔥 Performance Improvements
[ ] ✅ Test
[ ] 🤖 Build
[ ] 🔁 CI
[ ] 📦 Chore (Release)
[ ] ⏩ Revert

Description

This adds an error message feedback for user when they face an issue in the AI generation on the post to highight popup
Related Tickets & Documents

#168
Mobile & Desktop Screenshots/Recordings

While Generating:

Successful message:

Error Message:

Added tests?

[ ] 👍 yes
[ ] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

Added to documentation?

[ ] 📜 README.md
[ ] 📓 docs.opensauced.pizza
[ ] 🍕 dev.to/opensauced
[ ] 📕 storybook
[ ] 🙅 no documentation needed

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

@bdougie added.

where does "Configuration file is empty" come from? Doesn't seem like a helpful error.

@diivi from this line:
https://github.com/open-sauced/ai/blob/8ce37248bbd71cef152919d3e6585f5cf5c4bc8f/src/content-scripts/components/GenerateAIDescription/DescriptionGeneratorButton.ts#L73
I manually through it to get the error screenshot.

https://github.com/open-sauced/ai/blob/8ce37248bbd71cef152919d3e6585f5cf5c4bc8f/src/content-scripts/components/GenerateAIDescription/DescriptionGeneratorButton.ts#L73

Not so sure about "file", but it was there before too, so okay!

The copy might need an update but that's out of scope of this PR, you can check the code.
Sent from mobile device

From: Divyansh Singh @.>
Sent: Sunday, June 11, 2023 12:20:33 AM
To: open-sauced/ai @.>
Cc: Abdurrahman Rajab @.>; Mention @.>
Subject: Re: [open-sauced/ai] chore: add a user feedback in case of an error (PR #171)
https://github.com/open-sauced/ai/blob/8ce37248bbd71cef152919d3e6585f5cf5c4bc8f/src/content-scripts/components/GenerateAIDescription/DescriptionGeneratorButton.ts#L73
Not so sure about "file", but it was there before too, so okay!
—
Reply to this email directly, view it on GitHubhttps://github.com/open-sauced/ai/pull/171#issuecomment-1585818312, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AELNMKPSFSLDQVWBOVZFNL3XKTQKDANCNFSM6AAAAAAY4CYVNU.
You are receiving this because you were mentioned.Message ID: @.***>


Siad has exited unexpectedly. Please submit a bug report including the error log here.

Loading...
(0/6) Loading siad...
(1/6) Loading gateway...
(2/6) Loading consensus...
(3/6) Loading transaction pool...
(4/6) Loading wallet...
(5/6) Loading host...
(6/6) Loading renter...
Finished loading in 4.8779402 seconds

synchronizing 45.1%

siad not found. sia-ui couldn't locate siad.please navigate to siad

Please attach the Sia logs.  Otherwise this is insufficient information to troubleshoot your issue.
Recommendation to devs: Close issue (reopen if logs are attached)

Not being able to locate siad is an uncommon error. Try reinstalling Sia-UI.


metrics dosent have instance details

i have 3 kong instances running on 3 different servers. due to our network design the kong is not exposed prometheus directly.
i have written a shell script and it will scrape the metrics and push it to push gateway. But i am unable to filter the data by instance details , how to enable instance details in the metrics ?

+1 for this
The other use case that I can think is when Kong deployed as DBless mode on ECS Cluster, we need instance detail to distinct metrics from each instance.

This is not for kong to solve. Prometheus can add meta-data key-value pairs to metrics as they are scrapped.
Please refer to your orchestrator's configuration section:
https://prometheus.io/docs/prometheus/latest/configuration/configuration/

Closing this due to lack of activity. Please re-open if needed.


Providing type for chronological running median

Crate base module docs:

A library to keep track of a running median of a sequence of numbers.

The library helps me with that. It's better suited for a chronological running median than:

https://docs.rs/medianheap

Has maximum size, but doesn't remove chronologically. push() docs:
/// When `max_size` is set and the heap is full, this will remove
///   - the smallest item if the pushed item is greater than (`>`) the current median,
///   - the largest item, if the pushed item is less than (`<`) the current median, or
///   - both the smallest and the largest item, if the pushed item is equal (`==`) to the current median.

https://docs.rs/median-accumulator

Can't delete single values.

https://docs.rs/medians

Seems to do the work every time you need the median.

https://docs.rs/yata/latest/yata/methods/struct.SMM.html

Only allows floats as values and requires an initial value.

However, if one wants a chronological running median with your crate, one still has to do extra work. To achieve this, I use your crate like this:
vec_deque.push_back(newest_value);
median_heap.push(newest_value);

if vec_deque.len() > MAX_SAMPLES {
    median_heap.delete(&vec_deque.pop_front().unwrap());
}

This crate's MedianHeap isn't really running as per my definition of it - like in "running average" or (which is the same) "moving average", which to me implies that old values automatically fall away, based on a maximum number of values.
So, would it be possible to provide a ready-made type for a running median, even if just implemented with a VecDeque and a MedianHeap? Or is there an efficient algorithm that doesn't involve data duplication that you have in mind?

You are indeed right, my wording in the crates description might be wrong. I've been doing some tinkering with some things that came to mind but I can't seem to avoid data duplication. I've tried some stuff with BTrees. I'll do some more tests. I would love to implement a ready made type using the VecDeque you used, but first I'll see if there's any way to avoid data duplication.


Small fixes

This fixes some failing tests that were reliant on simulated data.

Codecov Report

Merging #167 into master will increase coverage by 0.02%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #167      +/-   ##
==========================================
+ Coverage   75.11%   75.13%   +0.02%
==========================================
  Files         110      110
  Lines       11317    11306      -11
==========================================
- Hits         8501     8495       -6
+ Misses       2816     2811       -5

Continue to review full report at Codecov.

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


Bring phone-number exercise in to compliance with canonical data

As discussed in #258 , our implementation of this exercise does not conform to the canonical data in x-common.
Bringing the Java track in line on this will involve both additions to the test suite and altering the input checking in the example.

Closed by #274!


Removing Redundant Code - 1

Trying to refactor __init__.py file
Added --source tag for coverage so that code coverage is only performed on electricpy directory
Remove methods from __init__.py which are written in another module
Added coveragerc file to customise our code coverage

i have made changes accordingly please review them and give your valuable feed back


Add support for ES6 modules

Use dynamic include instead of require() to include the command implementation.

Fixed on 2023-02-09.


bug:  submit changes url immediately upon submission

Submitting a normal <form> does not have this behavior. I'd expect the url to be unchanged until the action responds with a redirect or other response.

[ ] Docs
[X] Tests

Any updates? Using useFetch doesn't have this problem though.

@mcansh will this be fixed by the change in 6.4 described by Ryan here? https://github.com/remix-run/remix/pull/2110#issuecomment-1180806310 🤔

@zipme Unlike forms, fetchers are not navigations, so they will never change the URL.

If this is still an issue it should be fixed and tested in React Router. Mind checking that out and opening a new issue there if needed?


:sparkles: CSPO

What this PR does / why we need it:
This PR implements the initial working version of ClusterStack provider OpenStack controllers and related components.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes SovereignCloudStack/issues#506
Special notes for your reviewer:
Note that this PR should contain the working CSPO implementation, and you should be able to create a working Kubernetes workload cluster. Because of this, we created a highly experimental ClusterStacks that contains OpenStack manifests and should be used for PR testing.
Find the modified Quickstart Guide here.
This modified Quickstart Guide employs experimental Cluster Stacks and guides you to create a working K8s cluster utilizing CSPO implemented by this PR.
TODOs:
Certainly, there are some TODOs. Some of them are mentioned in the code, and the rest we list here:

include more detailed documentation of controllers, architecture diagrams, etc.  ,

e.g. https://github.com/SovereignCloudStack/cluster-stack-provider-openstack/issues/43

add unit tests
add e2e tests

Good work! I mainly have small cleanup stuff as well as comments about improving the reliability

Hi @janiskemper,
Thank you for all your valuable comments! All of them have been resolved. Could we go ahead and get your approval? Thx!


Draft: [DMS-79] fix doc for PersistentOrderedSet

rename rbSet to set or s
add import Debug into examples
fix typos

merged into #36


ORTEC - Job listed on peviitor does not appear on the company's site

ENVIROMENT: production
URL: https://peviitor.ro/
Browser: Chrome
Device: laptop
OS: Windows 11
STEPS TO REPRODUCE:
 1.  Open URL in browser
 2.  Type "Ortec" in the search bar
 3.  Click on the "Visual Designer" job title
 4.  Verify is the job is displayed on the company's site

EXPECTED RESULTS:
Job listed on the peviitor platform should  be accessible and consistent on the company's official website.
ACTUAL RESULT:
"Visual Designer" job does not appear on the company's official website. It appears that the page containing the job listings on the company's site may not be optimized or synchronized with the peviitor platform.

Job is no longer available

After retest the job “Visual Designer” is no longer available


Solves obscure numba bug with just replacing range -> zip

Solves an obscure numba bug (specifically in yasa.numba._corr) that was popping up for only some users/systems. See the madness in #107.
Note: I thought it would be best to add some new tests for this, but I looked and the current tests in test_numba.py do catch it. So it's really just specific to some systems that don't get run during the unittests.

Codecov Report
Base: 91.47% // Head: 91.47% // No change to project coverage :thumbsup:

Coverage data is based on head (4f18416) compared to base (806b08f).
Patch coverage: 0.00% of modified lines in pull request are covered.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #115   +/-   ##
=======================================
  Coverage   91.47%   91.47%
=======================================
  Files          22       22
  Lines        2674     2674
=======================================
  Hits         2446     2446
  Misses        228      228

Impacted Files
Coverage Δ

yasa/numba.py
21.66% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Awesome, thanks! Merging now.


Disable gui autosave

For larger files, it would be useful to not save the *_seg.npy file each time a mask is edited. This PR adds a File menu dropdown checkbox that allows the user to turn off autosaving.
Additionally, I removed the 'img' data saved to the .npy file to reduce time/space of writing that repeatedly.
Addresses:
#703

@carsen-stringer Ready for merge


Editor and Executable scale popups differently

Godot version:
3.1.1 stable
OS/device including version:
xUbuntu 18.08
Issue description:
In my project I have a popup that is opened upon button click. The popup along with other menu items are beneath a Node2D with scale Vector2(0.5, 0.5). In the editor, when made visible, the popup scales according to the Node2D parent. However when the project is executed and the popup is opened via PopupPanel.popup() it retains it original scaling and is thus twice as large.
Steps to reproduce:
Create a new 2D scene and a menu with a popuppanel in it that is opened via code. Then make the popuppanel visible in the editor and set the scale on the Node2D to something other than Vector2(1, 1). The size of the popup should not be different within the editor and the project when run.
Minimal reproduction project:
See https://gitlab.com/Pixdigit/sodoko/tree/godot_issue
I know it's not really minimal but it should be minimal enough. For the effect open the multiplayer lobby.

Can anyone still reproduce this bug in Godot 3.2.3 or any later release?
If yes, please ensure that an up-to-date Minimal Reproduction Project (MRP) is included in this report (a MRP is a zipped Godot project with the minimal elements necessary to reliably trigger the bug). You can upload ZIP files in an issue comment with a drag and drop.
(the provided project is not minimal enough)

No answer, so closing.


Fix simple typo: seperated -> separated

Description
Small typo in docstring for cms.utils.helpers.normalize_name
Related resources

Closes #6766

Checklist

[x] I have opened this pull request against develop
[x] I have updated the CHANGELOG.rst
[x] I have added or modified the tests when changing logic (No change)

Coverage remained the same at 78.215% when pulling 7284d4bd68da117926b7b26a78ed4a5bfa596938 on timgates42:bugfix/typo_separated into 857174db0d76cf3d441faa03f197a968e14c6a09 on divio:develop.

Thank you very much @timgates42 for the contribution!


Ellipse on ground has hole in it when camera is perfectly perpendicular to ground

Sandcastle. This flies to an entity by sampling the ground position there and flying to that lat/lon/height.
It produces a hole in the middle of this ellipse which goes away if the camera is tilted:

This appears to happen with polygons too. Instead of an inner circle it'll be a smaller polygon of the same shape.

I imagine this would happen with all GroundPrimitives

Once https://github.com/CesiumGS/cesium/pull/9108 is merged it will be possible to work around this bug by setting viewer.scene.logarithmicDepthBuffer = false;

This seems to only happen in CesiumJS 1.71. Could not reproduce in 1.70 and 1.69.

git bisect points to https://github.com/CesiumGS/cesium/commit/c72dfbba550fba1e98fdb4b8df97714e284f4970 from https://github.com/CesiumGS/cesium/pull/8850. First guess is that some geometry is getting cut off by the near or far plane. CC @IanLilleyT

viewer.entities.add({
    position: Cartesian3.fromDegrees(-75.1641667, 39.9522222, 0),
    label: {
      text: 'hello',
      heightReference: HeightReference.CLAMP_TO_GROUND,
    },
    ellipse: {
      semiMinorAxis: 250000.0,
      semiMajorAxis: 400000.0,
      material: Color.RED.withAlpha(0.5),
      height: undefined,
      outline: true,
      outlineWidth: 12,
      outlineColor: Color.ORANGE.withAlpha(1),
      classificationType: ClassificationType.TERRAIN,
      heightReference: HeightReference.CLAMP_TO_GROUND,
    },
  });

open this issues,set ellipse.height undefined is scuccessful,but outlines are unsupported on terrain.


Add trove classifiers to pyproject.toml

The framework classifiers should make anywidget discoverable within the JLab extension manager.
See classifiers.

Do you know the purpose of these classifiers are in general? I'm somewhat doubtful they do much (especially these generic ones), and don't love the idea of them also going out of date over time. Anywidget isn't really a JupyterLab extension also, since it's not meant to be installed in the UI but rather via pip.

They're pretty widely used in Python packages. Their main purpose is for searching and indexing on PyPI. The Framework classifiers are being used specifically by JupyterLab to discover extensions (via the PyPI API). Only minor-version-specific identifiers will go out of date as you deprecate support for older versions and support newer ones (which is why I didn't include any).


Faster styling

a morning sun rises over a mountain peak
From the keyboard of @twerth
cut to a tight closeup of the feet of a small child running
comes a coming-of-age story...
queue any song by Coldplay
of an unlikely styler...who dared to be...
stop music, fade to black, heartbeat sounds
faster.

free time + iMovie  =
https://www.youtube.com/watch?v=xI6l6ydnjGM

The movie is private.... lemme see lemme see!!!

Oops, fixed now?

For your outstanding commitment to bring my lame joke to the next level, I award you: the Internet Medal of Honour.
Well done stranger.  Well done.

⭐⭐⭐⭐⭐

Freaking awesome.

So strange, so awesome!

   @KCErb disappears back into a lamp that fades away in his hands.

Anything to procrastinate writing my first paper

:sigh: gradschool


Add Channels submenu that shows key channels information and quick links to pages within the Channels UI

Detailed Description
Add submenu for channels wallet menu item that shows a summary of key channel information and quick links to frequently accessed areas of the Channels UI.
Context
Wallet UI
Possible Implementation

Closed via https://github.com/LN-Zap/zap-desktop/pull/1950


compatible with vue 2.1.8?

Hello, i tried using the range slider in my project which is using vue 2.1.8 and i get this error
[Vue warn]: Error when rendering component <range-slider>:
and
ReferenceError: _h is not defined     at Proxy.render (eval at <anonymous> (app.js:846), <anonymous>:150:14)     at VueComponent.Vue._render (eval at <anonymous> (app.js:612), <anonymous>:3096:22)     at VueComponent.eval (eval at <anonymous> (app.js:612), <anonymous>:2464:21)     at Watcher.get (eval at <anonymous> (app.js:612), <anonymous>:1663:27)     at new Watcher (eval at <anonymous> (app.js:612), <anonymous>:1655:12)     at VueComponent.Vue._mount (eval at <anonymous> (app.js:612), <anonymous>:2463:19)     at VueComponent.Vue$3.$mount (eval at <anonymous> (app.js:612), <anonymous>:6104:15)     at VueComponent.Vue$3.$mount (eval at <anonymous> (app.js:612), <anonymous>:8494:16)     at init (eval at <anonymous> (app.js:612), <anonymous>:2777:11)     at createComponent (eval at <anonymous> (app.js:612), <anonymous>:4120:9)
Is this because it is not compatible with the latest version of vue?

Hello. Seems like faced the same problem:
[Vue warn]: Error when rendering component :
warn
localhost/:3105 Uncaught ReferenceError: _h is not defined
at Proxy.render (eval at  (app.js:1284), :150:14)
at VueComponent.Vue._render (eval at  (app.js:648), :3096:22)
at VueComponent.eval (eval at  (app.js:648), :2464:21)
at Watcher.get (eval at  (app.js:648), :1661:27)
at new Watcher (eval at  (app.js:648), :1653:12)
at VueComponent.Vue._mount (eval at  (app.js:648), :2463:19)
at VueComponent.Vue$3.$mount (eval at  (app.js:648), :6106:15)
at VueComponent.Vue$3.$mount (eval at  (app.js:648), :8496:16)
at init (eval at  (app.js:648), :2777:11)
at createComponent (eval at  (app.js:648), :4122:9)

Thank you for reporting this! I missed this issue, sorry.
It should be fixed on v0.2.4. :)


[Search] Searching in a chat that has messages and getting no results on the search results page when navigated there

Coming from here, there might be an issue when using the contextual search and the results shown in the Search results page.
https://github.com/user-attachments/assets/35909704-5a00-45d3-9e4e-2e6e1beefcb4

This has been labelled "Needs Reproduction". Follow the steps here: https://stackoverflowteams.com/c/expensify/questions/16989

Not a priority

Same

Let's get a BZ member to help out on this one.

@luacmartins it seems to be working for me?
https://github.com/user-attachments/assets/90a5d9b2-1383-4661-bff8-ce4779fc1b8f


fixing typos

Hi @4c74356b41, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no contribution license agreement is required at this point. Real humans will now evaluate your PR.

TTYL, AZPRBOT;

@4c74356b41 : Thanks for your contribution to the Azure documentation! The author, @coreyp-at-msft, has been notified to review your proposed change.

#sign-off

@4c74356b41, thanks for tidying up!


Push answers to external source

Maybe a db makes most sense actually as we might have issues with a google drive file if there are multiple read and write operations on the same file simultaneousely.
We are trying to get rid of this element asap so let's go with the easiest reliable solution.

I am working to get the indexer for our data up and running asap so that this will no longer be required. SubSquid team has been super helpful so let's see how long we need to get this done

I will get the indexer up shortly then this will no longer be required.


Improve the auto-TOC function

Right now, we have a function that automatically generates a TOC yaml file according to alphanumeric names of the ipynb/md files in the content folder. However, the output is a flat list of pages, not a nested set of chapters. It would be great to improve this function so that the YAML has children:  sections that point to the pages within a chapter, rather than outputting a flat list.

This is sort-of improved now in #273, and I think can be closed. The TOC now generates a section for each top-level folder it finds, which is much better than a totally flat list. It also wasn't a super trivial fix, so let's say this one is good and see if others want to improve it in the future


Modify clumit dropdown ui

Description
Apply the following UI adjustments to all dropdowns across the Clumit platform to align with the intended design. So far, these issues were observed in the Event and Report menus. However, there may be other instances across the platform, so a thorough review will be necessary to ensure consistency.
Screenshot

위와 같이 trigger가 걸려있으나 자동으로 이 이슈가 닫아지지 않았습니다. 수동으로 닫습니다.


Replace personal_id by id in the sub claim of JWT tokens

Currently we are returning the personal_id in the "sub" claim:
{
  "sub": "12345678Z",
  "iat":<PHONE_NUMBER>,
  "exp":<PHONE_NUMBER>
}

Where "12345678Z" is the personal_id.
The value of personal_id is PII (Personally Identifiable Information) so it is considered a security risk to make this information public.
Instead, we are going to use the internal id value to identify the user which is not considered PII.

Will be solved in this issue https://github.com/lucoenergia/conluz/issues/6


Redirect personal pages from business cards.

We also need pr|rl|gd|cp|ts|gn for other associates who should be getting business cards, namely:
Paul Rayner
Richard Lawrence
George Dinwiddie
Chris Parsons
Tom Stuart
Gaspar Nagy
Did I miss anyone?


Investigate loading animations from separate files

Useful for mixamo, which exports each animation to its own FBX file.
If possible, it would be nice to support something like this:
<a-entity gltf-model="base-model.gltf;"
          animation-mixer="clip: run;"
          fbx-animation__1="run.fbx"
          fbx-animation__2="jump.fbx"></a-entity>

Threads that could use answering:

https://community.mixamo.com/hc/en-us/community/posts/210029137-Mixamo-to-ThreeJS
https://groups.google.com/forum/#!topic/threejs/um0yq7mAOUA

Spent some time trying this. Was able to load the animation files from Mixamo individually, but loading the rigged mesh itself, coming from Mixamo, has been a headache. Depending on the export method the skeleton will be messed up, or the UVs are bad, or something else goes wrong.
Anyway this doesn't work yet, but the animation clips themselves do load correctly:
<a-entity gltf-model="src: url(../assets/mixamo/lowpoly/character.gltf);"
          animation-mixer="clip: walk;
                           crossFadeDuration: 1;
                           useSkinnedMeshRoot: true;"
          fbx-animation__1="name: walk;
                            src: url(../assets/mixamo/lowpoly/walking_inPlace.fbx);"
          fbx-animation__2="name: idle;
                            src: url(../assets/mixamo/lowpoly/idle.fbx);"
          fbx-animation__3="name: right_turn;
                            src: url(../assets/mixamo/lowpoly/right_turn_90.fbx);"
          fbx-animation__4="name: left_turn;
                            src: url(../assets/mixamo/lowpoly/left_turn_90.fbx);"
          scale="0.1 0.1 0.1">
</a-entity>

Some code checked in on feat-mixamo branch.

I made a video to explain how to merge all the Mixamo animations in one Three.JS-compatible file and use it in A-Frame:
https://www.youtube.com/watch?v=hheYLOworF4
Its a bit painful to do so a solution where you can import the animations from the different files (as your example) would be way easier!

Closing this issue — rather than trying to deal with FBX, which seems like it would be a never-ending thing, i'm hoping we can get somewhere on this with glTF... the blender exporter seems to handle animation reasonably well now, and should support multiple actions soon. Perhaps Sketchfab will add animation to their animation export as well.


fix Duplicate with no keys tables compaction coredump, fix…

Proposed changes
Issue Number: close #18621
Problem summary

Duplicate with no keys tables when compaction will coredump;
2.Vitical compaction will build heap table to do compaction, it will be no need for duplicate no keys tables.

Checklist(Required)

[ ] Does it affect the original behavior
[ ] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

run buildall

run buildall

run buildall

run buildall

run compile

run buildall

run buildall

run buildall


Update Skew Docs to Fix Compatible Issues between Controller Clients and the API-Server

This pull request addresses an issue reported by a user regarding the compatibility of the aggregated apiserver library with Kubernetes v1.28 clusters. After updating to version v1.29 of the aggregated apiserver library, the user encountered failures on the Kubernetes v1.28 clusters, accompanied by the following errors:
W0425 14:25:27.110980       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
E0425 14:25:27.111035       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.PriorityLevelConfiguration: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
W0425 14:25:34.571189       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.FlowSchema: the server could not find the requested resource
E0425 14:25:34.571265       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.FlowSchema: failed to list *v1.FlowSchema: the server could not find the requested resource
W0425 14:25:39.776616       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
E0425 14:25:39.776683       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.PriorityLevelConfiguration: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
W0425 14:25:58.606055       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.FlowSchema: the server could not find the requested resource
E0425 14:25:58.606080       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.FlowSchema: failed to list *v1.FlowSchema: the server could not find the requested resource
W0425 14:26:01.846754       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
E0425 14:26:01.846786       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.PriorityLevelConfiguration: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
W0425 14:25:27.211376       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
E0425 14:25:27.211394       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.PriorityLevelConfiguration: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
W0425 14:25:34.498183       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.FlowSchema: the server could not find the requested resource
E0425 14:25:34.498228       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.FlowSchema: failed to list *v1.FlowSchema: the server could not find the requested resource
W0425 14:25:35.545134       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
E0425 14:25:35.545287       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.PriorityLevelConfiguration: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
W0425 14:25:49.677632       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
E0425 14:25:49.677657       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.PriorityLevelConfiguration: failed to list *v1.PriorityLevelConfiguration: the server could not find the requested resource
W0425 14:25:51.325292       1 reflector.go:539] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: failed to list *v1.FlowSchema: the server could not find the requested resource
E0425 14:25:51.325325       1 reflector.go:147] pkg/mod/k8s.io/client-go@v0.29.4/tools/cache/reflector.go:229: Failed to watch *v1.FlowSchema: failed to list *v1.FlowSchema: the server could not find the requested resource

Changes Made

Updated the skew docs to instruct users not to have controller clients such as kubelet, kube-controller-manager, and kube-scheduler, as well as aggregated apiservers of a higher version than the kube-apiserver they interact with.

References
Kubernetes/kubernetes#124533
Kubernetes/kubernetes#124655

/assign @liggitt

I agree with @liggitt, this document isn't the right place to document this. I will be closing the PR.

I think we can mention in this doc that other components have their own skew requirements and their documentation should be consulted to determine what kube-apiserver versions they support and whether they should be upgraded before / after kube-apiserver.
Separately, the aggregated API servers in various sig projects (metrics-server? custom-metrics-server?) should document their supported kube-apiserver versions. It looks like https://github.com/kubernetes-sigs/metrics-server?tab=readme-ov-file#compatibility-matrix and https://github.com/kubernetes-sigs/custom-metrics-apiserver?tab=readme-ov-file#compatibility need updates.

Separately, the aggregated API servers in various sig projects (metrics-server? custom-metrics-server?) should document their supported kube-apiserver versions. It looks like https://github.com/kubernetes-sigs/metrics-server?tab=readme-ov-file#compatibility-matrix and https://github.com/kubernetes-sigs/custom-metrics-apiserver?tab=readme-ov-file#compatibility need updates.

Okay, Jordan.

I think we can mention in this doc that other components have their own skew requirements and their documentation should be consulted to determine what kube-apiserver versions they support and whether they should be upgraded before / after kube-apiserver.

The skew documentation contains kube-apiserver version requirements for each component. If there's another documentation, kindly let me know.

Mentioning in this doc that supported skew of other components should be considered might prompt admins to consider a category of compatibility that they are not considering today.

That's true, I will add it.

Separately, the places where kubernetes sigs are documenting compatibility of aggregated API servers they release should be updated to be explicit about the supported kube-apiserver skew. Issues tracking this request in each repo and referencing this discussion would be a good start. Examples:

https://github.com/kubernetes-sigs/metrics-server?tab=readme-ov-file#compatibility-matrix
https://github.com/kubernetes-sigs/custom-metrics-apiserver?tab=readme-ov-file#compatibility
Great.

Thanks.
/approve

I recommend cancelling approval until the hold from https://github.com/kubernetes/website/pull/46109#discussion_r1586655268 is addressed. Then we can LGTM and re-approve.

Thanks for the review, @sftim, the outcome was addressed here and here.

/remove-lifecycle stale


Pass props to components in route declaration

I think it would be useful to have a way to pass props to the component in the route declaration
Something like:
<Route path="/" component={App} componentProps={prop1: 'propValue'}>

https://github.com/rackt/react-router/blob/v1.0.1/CHANGES.md#routehandler

Oops - I mean to say that you can handle this yourself in createElement (should we rename this to render for consistency?).

Sorry, momentary confusion - I'm going to actually leave this open. Apologies for the spam.

If i understand correctly, i will have redundant instance for the active component?
And i'm not show how i should use it
Thanks!

cloneElement doesn't do that if that's what you're asking. createElement doesn't really give a good API for this, which is why I deleted that comment.

<Route component={Whatev} foo="bar"/>

// is available at
`this.props.route.foo`

D'oh!

Thanks for all of your help


docs does not show connection string

The user guide does not handle the connection string properly.
Via connection string definition: 'jdbc:sqlserver://:/';
You need to escape the bracket characters:
Via connection string definition with a backwards slash before each of the bracket characters (< and >): 'jdbc:sqlserver://<server name>:<port>/<database name>';
in order for it to display properly

Thanks for your report, I fixed it in #12


move pynvml install to setup.py

Only install pynvml on nvidia gpus; not all accelerators

@microsoft-github-policy-service agree company="AMD"

Hi @Rohan138 - we're not able to re-sync master with your branch, could you please do that, that way the tests will re-run with the new changes we have merged?  Thanks!


Add operator detecting for cpp

Add operator detecting for cpp. It matches almost every operators.
Fix FUNCTION_TITLE not matching defining operator.

struct test{
	int a,b;
	inline bool operator+(const node&kkk)const{return a+kkk.b;}
};

Changes

Defined OPERATOR constant and added it somewhere.
Modified FUNCTION_TITLE constant.

When you say symbol do you mean operator?  If so we'd do this by first putting all the operators (including multi-character ones like !=) into an array then using our own regex.either function to build the actual regex.

I cleaned up the PR a bit to better match our coding standards... but I think the reason this hasn't been done before if the issue with <... sometimes it's an operator, sometimes it's the start of a template... so that case would need to be properly handled.
Right now there are a ton of failing markup tests... you'll need to go thru them and see which are operator related (which will simply need to be updated) and which are template related.
There is a line (you can uncomment) in the test/markup test code that will just "replace" the test result files with whatever we generate - it can be helpful for updating result files but if you do this please proof all the changes by hand to guarantee they are as expected.

Nothing is matched according to the tests. Is regex.escape(x) working properly? I can't find its defination from the package downloaded here

So sorry I forgot to push the main file that does the linking... if pull and build it should work now.

ok I'll deal with those tests

Those tests are strong and I've found some bugs :)
Some of the failed tests are not related to cpp. I suppose they are related to the link of regex.escape. Do you think it's a good idea to separate these changes into two PRs?

I set its relevance to 0 to make aotodetect working.
Finally I've dealt with most of them

Is -> an operator?

I don't think it's a good idea to deal with these two cases in this PR. They are not related with operator.

:: and ->(and : in some special case, I found one in the tests) I think they should be detected as punctuation.
template <>. I think they should be detected as quotes or smth else.

Anyway let's finish this stage of my work. I'll deal with them in another two PRs.

@allejo Any thoughts on whether it might be OK to just accept that <> as part of templates are going to be highlighted as operators (because it's too hard to distinguish) - for the increased fidelity of getting operators highlighted in general?  I've long resisted this, but maybe in cases where it wouldn't break highlighting in general we should just embrace it?

I'll deal with them in another two PRs.

Let's see what allejo says.  My concern is the template stuff may be very hard or even impossible to fix - so to accept this PR (separately) we'd have to be willing to accept that risk.  So we need to decide we're open to that type of brokeness long-term or if we even want to still consider it broken.

I'm going to ask you what are we going to do next btw.

I'm planning to add punctuation detect for ; and ::.
I'm planning to add namespace :: and template <> to the defination of a type and a function. I hope it can work for a structure of a::A<b::B<c::C>>>.

Any suggestion?

You know, a powerful part of hljs is contains: ["self"]. However, a regex is not that powerful. I don't think we can recognize everything clearly like a complier now.


the era representation '令和' not included as an named entity labeled as 'Date'

I'm currently working on named entity recognition task using Ginza library, excellent NLP library.
I have a question.
When I try to locate and classify named entities in the text '令和1年12月1日から令和2年1月1日まで'  using Ginza library, I found that the recognized named entities don't include the era representation '令和' as following:
>>> import spacy
>>> spacy.__version__
'2.3.2'
>>> nlp = spacy.load('ja_ginza')
>>> text = '令和1年12月1日から令和2年1月1日まで'
>>> doc = nlp(text)
>>> [(ent.text, ent.label_) for ent in doc.ents]
[('1年12月1日', 'Date'), ('2年1月1日', 'Date')]

Could you tell me how to recognize the era representation '令和' as named entity in Ginza library. Any option or method?
I would really appreciate it if you could respond to my question.

Thank you for asking. @tomohikoabe-gvatech
We're using UD_Japanese-BCCWJ v2.6 and GSK2014-A as training corpus of GiNZA v4.
We need to add some sentences containing 令和 for training corpus because the texts in BCCWJ are a little old and do not contain 令和.
We'd like to start discussing about updating the datasets with UD community, but it may take few months.
Or, you can use spaCy's EntityRuler for the pipeline of GiNZA.
Please read the API document below.
https://spacy.io/usage/rule-based-matching#entityruler

Thank you very much for kindly answering my question, @hiroshi-matsuda-rit san !
I try to use spaCy's EntityRuler as you taught me in the following way:
>>> import spacy
>>> import itertools
>>> from spacy.pipeline import EntityRuler
>>> nlp = spacy.load('ja_ginza')
>>> ruler = EntityRuler(nlp)
>>> patterns = [{"label": "Date", "pattern": f"令和{y}年{m}月{d}日"} for y, m, d in itertools.product(range(1, 100), range(1, 13), range(1, 32))]
>>> ruler.add_patterns(patterns)
>>> nlp.add_pipe(ruler)
>>>
>>> text = '令和1年1月1日'
>>> doc = nlp(text)
>>> [(ent.label_, ent.text) for ent in doc.ents]
[('Date', '令和1年1月1日')]
>>>
>>> text = '令和1年4月1日'
>>> doc = nlp(text)
>>> [(ent.label_, ent.text) for ent in doc.ents]
[('Date', '1年4月1日')]

In '令和1年1月1日', Ginza can correctly recognize '令和', but in '令和1年4月1日' cannot.
I supose that It depends on the number of Year, Month, Day?  Or my patterns definition or usage of EntityRuler was wrong?
I would really appreciate it if you could respond to my question.

This behavior is coming from the the conflict of GiNZA's NER and EntityRuler.
If you want to apply EntityRuler over NER, you need to change the order of components in pipeline.
Please see spaCy's document for more details.
https://spacy.io/api/language#add_pipe

Thank you very much for answering my question !!


Translated Validation Api

This is not really related to this project but what kind of validation api do you use in both Android and iOS projects?
Is there any java lib you translate? Something like hibernate-validation lib?

As you pointed out this is unrelated to this project.  Please try another resource (Google, Stackoverflow, etc.).
I'm also not certain what exactly you are asking about.

The question is how do you do validation?

I don't use any validation api.  Whatever invariants I really care about enforcing are checked via preconditions and documented with comments.  I'd suggest asking this at https://forum.hibernate.org/

@advayDev1 This has nothing to do with hibernate. The question is how do you check if the user input is valid? Which lib do you use?

I just write the code...
Unless something super complicated is going on, I avoid adding dependencies on frameworks/libraries for what is (in my use case) pretty trivial logic.  Sometimes a few hundred lines of hand-written code is significantly easier to maintain in the long run than depending on libraries.   Java + Guava + Android/iOS SDK pretty much is all I need (minus some specialty graphics things).

thanks


Check for duplicates when running generator via rake task

I've just noticed that https://github.com/theodi/open-data-certificate/blob/staging/app/controllers/datasets_controller.rb#L244 gets run when creating a certificate via the API.
Now we're no longer using the API to run campaigns, we need similar functionality to avoid duplicates.
I'll do this on Friday.

This is now in #1178 - I tried to put the logic in the model, but it turned out to be less than trivial :confused:


Merge main into release-1.30 to keep in sync

PR to merge main into release-1.30 to keep in sync.
cc: @reylejano @salaxander @katcosgrove @drewhagen

/approve /lgtm


Missing information on schedule syntax

I read that you could use schedule triggers in the yaml file and since it's missing from this page I thought I should mention this.
(Or do you have a better page where the documentation should be?)
See release notes from last year https://docs.microsoft.com/en-us/azure/devops/release-notes/2019/sprint-153-update#use-cron-syntax-to-specify-schedules-in-a-yaml-file

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

ID: 8b846aea-82f7-a988-67d8-1b5e74b61ed2
Version Independent ID: 2d632729-bb33-c0a0-c996-e1d8e86c2e23
Content: Build Azure Repos Git repositories - Azure Pipelines
Content Source: docs/pipelines/repos/azure-repos-git.md
Product: devops
Technology: devops-cicd-repos
GitHub Login: @steved0x
Microsoft Alias: sdanie

@dhvik We have got a dedicated topic for scheduled triggers here:
https://docs.microsoft.com/en-us/azure/devops/pipelines/process/scheduled-triggers?view=azure-devops&tabs=yaml
Since scheduled triggers are the same across different repo types (vs CI and PR triggers which have some differences) the article for them is in a separate topic, which used to be in the same TOC node as the repos articles but it has moved and may not be as discoverable. However, I think we could add some info and links to the Azure Repos Git page (and the others) about the this, I will do so next week. Sorry that you ran into trouble and thank you for letting us know.