Exception thrown when publishing an event using DaprClient from Java SDK of Dapr

In what area(s)?
I am using io.dapr.client.DaprClient -> publishEvent(String var1, Object var2):
com.fasterxml.jackson.databind.ObjectMapper om = ObjectMapper();
...
try {
            publisher.publishEvent(
                    "core.adapters.delete",
                    om.writeValueAsBytes(bc)).doOnError(
                        throwable -> LOG.error(throwable.getMessage(), throwable))
                        .subscribe(
                                value -> LOG.trace("Subscribed to published event: {}", value),
                                err -> LOG.error(err.getMessage(), err),
                                () -> LOG.trace("Publishing completed")
                        );
        } catch (JsonProcessingException e) {
            e.printStackTrace();
        }

I tried the code yesterday with a topic that already exists. Yesterday it was successful. Tried it today with a new topic, then the exception occurred. Then tried again the old topic, also in this case the exception occurs.
There comes no exception at startup. When I call the above code to publish an event, the exception occurrs.

/area runtime
Windows
Java JDK 12.0.2
No company proxy involved.
On local machine

What version of Dapr?
dapr java sdk 0.3.0
Expected Behavior
Events can be published without exception
Actual Behavior
When an event is published, I get following exception:
2020/03/25T16:03:55.697 core [http-nio-8081-exec-2] ERROR c.b.r.s.r.a.s.BundlesServiceImplementation.lambda$publishAdapterEvent$3(486) - io.grpc.StatusRuntimeException: UNAVAILABLE: io exception [161818, , Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36]
java.util.concurrent.ExecutionException: io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:552)
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:533)
at io.dapr.client.DaprClientGrpc.lambda$publishEvent$0(DaprClientGrpc.java:91)
at reactor.core.publisher.MonoCallable.subscribe(MonoCallable.java:56)
at reactor.core.publisher.Mono.subscribe(Mono.java:4087)
at reactor.core.publisher.Mono.subscribeWith(Mono.java:4193)
at reactor.core.publisher.Mono.subscribe(Mono.java:4059)
at reactor.core.publisher.Mono.subscribe(Mono.java:3995)
at com.bosch.riot.server.ServiceImpl.publishAdapterEvent(ServiceImpl.java:487)
at com.bosch.riot.server.Controller$$FastClassBySpringCGLIB$$de67ea92.invoke()
...
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:835)
Caused by: io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
at io.grpc.Status.asRuntimeException(Status.java:533)
at io.grpc.stub.ClientCalls$UnaryStreamToFuture.onClose(ClientCalls.java:495)
at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
at io.grpc.internal.CensusStatsModule$StatsClientInterceptor$1$1.onClose(CensusStatsModule.java:700)
at io.grpc.PartialForwardingClientCallListener.onClose(PartialForwardingClientCallListener.java:39)
at io.grpc.ForwardingClientCallListener.onClose(ForwardingClientCallListener.java:23)
at io.grpc.ForwardingClientCallListener$SimpleForwardingClientCallListener.onClose(ForwardingClientCallListener.java:40)
at io.grpc.internal.CensusTracingModule$TracingClientInterceptor$1$1.onClose(CensusTracingModule.java:399)
at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:510)
at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:66)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:630)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$700(ClientCallImpl.java:518)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:692)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:681)
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
... 1 common frames omitted
Caused by: io.grpc.netty.shaded.io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: /<IP_ADDRESS>:50051
Caused by: java.net.ConnectException: Connection refused: no further information
at java.base/sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at java.base/sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:779)
at io.grpc.netty.shaded.io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:327)
at io.grpc.netty.shaded.io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:334)
at io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:688)
at io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:635)
at io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:552)
at io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:514)
at io.grpc.netty.shaded.io.netty.util.concurrent.SingleThreadEventExecutor$6.run(SingleThreadEventExecutor.java:1044)
at io.grpc.netty.shaded.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:835)
Steps to Reproduce the Problem

local components folder contains a pubsub.yaml file with following config:

apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: messagebus
spec:
  type: pubsub.azure.servicebus
  metadata:
    - name: connectionString
      value: "Endpoint=sb://riot...-> from azure portal primary connection string"

Started first the normal java application (that has no subscription endpoints). Then the Dapr side car.  When I call then the exposed REST API from the java application an event should be published.
Yesterday with the known topic this worked. Today I had to use a new topic, then the exception occurred.

Hi @pagufler,
Since the SDK 0.3, Dapr client is communicating via Grpc and Http. Grpc is used for every API except actors. Actor APIs are over HTTP. When running your example, please make sure the env variable DAPR_GRPC_PORT is set to the same port that the Dapr sidecar is listening to.
Please, let me know if this helps.

Hi @artursouza,
I tried what you suggested:
Java App started with following env variables regarding dapr:
DAPR_HTTP_PORT=3001;
DAPR_GRPC_PORT=5001
This is how I run the dapr sidecar
dapr run --app-id core --app-port 8081 --port 3001 --grpc-port 5001 -- cat
But still I get the error:
2020/03/25T22:02:47.400 core [http-nio-8081-exec-2] ERROR c.b.r.s.ServiceImpl.lambda$publishAdapterEvent$3(486) - io.grpc.StatusRuntimeException: UNAVAILABLE: io exception [161818, , Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36]
java.util.concurrent.ExecutionException: io.grpc.StatusRuntimeException: UNAVAILABLE: io exception
at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:552)
at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:533)
at io.dapr.client.DaprClientGrpc.lambda$publishEvent$0(DaprClientGrpc.java:91)
at reactor.core.publisher.MonoCallable.subscribe(MonoCallable.java:56)
at reactor.core.publisher.Mono.subscribe(Mono.java:4087)
at reactor.core.publisher.Mono.subscribeWith(Mono.java:4193)
at reactor.core.publisher.Mono.subscribe(Mono.java:4059)
at reactor.core.publisher.Mono.subscribe(Mono.java:3995)
at com.bosch.riot.server.restapi.ServiceImpl.publishAdapterEvent(ServiceImpl.java:487)

Hi @artursouza,
seams that yesterday my head was not really working...
Mistakenly took a connection string that was already taken by someone else. Then we get this error msg.
Would be good to have a hint, that a connection string is used twice.
This bug can therefore be closed

Here is one thing to identify if the problem is between Dapr SDK and Dapr runtime or between DaprRuntime and the component's endpoint:
=> Publish via dapr cli using instructions from https://github.com/dapr/samples/tree/master/4.pub-sub#use-the-cli-to-publish-messages-to-subscribers
If this works, it means the problem is in the SDK. If it does not work, the problem is between dapr sidecar and the PubSub component it is communicating with.
Also, can you share the logs from Dapr sidecar? If that is generic, we need to fix that first.

hi, the error occured again this morning. Exception is still the same as reported.
To analyze, we've executed
[root@xxx/]# curl -X POST http://localhost:3500/v1.0/publish/core.adapters.delete -H "Content-Type: application/json"  -d '{        "status": "completed"      }' [root@core-99fbbd855-qt66r /]#
successfully in the container on our AKS
related logs are provided
here -> sidecar-log_30032020.txt

Hi @javageek79 ,
Java SDK uses GRPC to invoke all APIs, except Actor-related. In the application side, echo the value of DAPR_GRPC_PORT env variable. Then, confirm this value is the same that the sidecar container is printing out. If the ports are different, then that is the problem.
Next, let's confirm if the SDK can talk to the sidecar via HTTP. At the start up of your application, before creating a DaprClient instance, switch the SDK to HTTP mode via System.getProperties().setProperty("dapr.grpc.enabled", "false"); If the problem persists, then there is a general connection issue between the app and the sidecar.
Just to clarify, we do have automated integration tests in the Java SDK to validate all features work with the sidecar. In these connectivity issues, we must understand the environment first.

Is this error occurring after the app has been up a while or is it near the time it starts up?

Hi,
we checked the env var DAPR_GRPC_PORT  in the application container and in the corresponding dapr side car. They are the same.
We disabled grpc when the application starts at the very beginning. Then the event was successfully published and the consumers got the event.
So it seams the problem lies with the GRPC.
We have now the disablement of grpc in place. let us know when the fix is available.
@LMWF  the error occured in our application when we wanted to publish an event (as this app is at the moment only a publisher, no subscriber and no actor).

Please update to 0.6.0 because there were GRPC changes in it and let us know if the issue still exists.

Can this issue be closed?

Closing this issue. Please, open a new one if issue persists.

Hello,
we still have this issue for our java service and we also have it for the node js applications and the node js sdk.
But let us focus on the Java app. The code is still the same as mentioned above. Here are our dapr logs and our error:
core_error.txt
core_dapr.log

Error from app:
io.grpc.netty.shaded.io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: Connection refused: /<IP_ADDRESS>:50051\nCaused by: java.net.ConnectException: finishConnect(..) failed: Connection refused\n\tat

Log entry from sidecar:
time="2020-04-22T06:44:09.271930095Z" level=info msg="API gRPC server is running on port 50001" app_id=core instance=core-6b86489796-tm98x scope=dapr.runtime type=log ver=0.6.0

Please, use environment variable DAPR_GRPC_PORT to set the correct port on app and use --grpc-port argument on dapr.exe to set the correct port on dev environment.

Error from app:
io.grpc.netty.shaded.io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: Connection refused: /<IP_ADDRESS>:50051\nCaused by: java.net.ConnectException: finishConnect(..) failed: Connection refused\n\tat

Log entry from sidecar:
time="2020-04-22T06:44:09.271930095Z" level=info msg="API gRPC server is running on port 50001" app_id=core instance=core-6b86489796-tm98x scope=dapr.runtime type=log ver=0.6.0

Please, use environment variable DAPR_GRPC_PORT to set the correct port on app and use --grpc-port argument on dapr.exe to set the correct port on dev environment.

java-sdk is using 50051 as default DAPR_GRPC_PORT in Properties.java is that correct? We think, that had caused the latest reported issue

Error from app:
io.grpc.netty.shaded.io.netty.channel.AbstractChannel$AnnotatedConnectException: finishConnect(..) failed: Connection refused: /<IP_ADDRESS>:50051\nCaused by: java.net.ConnectException: finishConnect(..) failed: Connection refused\n\tat

Log entry from sidecar:
time="2020-04-22T06:44:09.271930095Z" level=info msg="API gRPC server is running on port 50001" app_id=core instance=core-6b86489796-tm98x scope=dapr.runtime type=log ver=0.6.0

Please, use environment variable DAPR_GRPC_PORT to set the correct port on app and use --grpc-port argument on dapr.exe to set the correct port on dev environment.

java-sdk is using 50051 as default DAPR_GRPC_PORT in Properties.java is that correct? We think, that had caused the latest reported issue

Needs to be 50001

/cc @artursouza

That explains it. We are fixing that today.


Don't support reverse List ?

If so, please let me know. Thanks.

any updates on this?

1.3.0,I used another way to implements pull down,so this problem has been fixed!


refactor(ui): Optimize Rollup Configuration for Improved Performance and Bundle Size

This PR addresses performance issues and memory constraints encountered during the build process. The changes made to the rollup.config file have significantly improved the bundle size and bundling speed.
Changes Made

Optimized rollup.config file for better performance and reduced bundle size
Improved bundling speed and memory efficiency

Testing
Basic testing has been performed on the client folder, and everything appears to be working as expected. However, more thorough testing is required before merging.
Related Discussion
This PR is related to the discussion in #412 , where the issue of slow performance and memory constraints was initially raised.
Screenshots
.

Thanks 👍.


Update create-release.yaml

Description
Changes proposed in this pull request:

remove branch creation step in GA release

Related issue(s)

/test pull-btp-manager-build


Adding Azure Virtual Desktop updated Visio Files

Added the full multi-region deployment architecture as well as an updated version of the baseline hub and spoke architecture.
These will be used for reference from https://github.com/MicrosoftDocs/cloud-adoption-framework-pr

Added my approval to check whether PMs have merge perms.


fetcher: Support the new bazel HTTP headers format

Bazel now sends qualifiers for each header in the form: http_header:<header>. We need to parse these out.
Further, bazel also supports sending per-URI headers in cases where multiple URIs are sent. We can support this too.
Fixes #48

Thanks for the patch!  Looks good to me, but golint is unhappy about the format of the comments on the constants for the qualifiers, and wants Http to become HTTP in their names.  Once that's fixed up I think this is good to merge.

Renamed consts.

Fixed comments. I have probably run golangci-lint first :(


Upgrade CDK pipeline to sections to use modern API

:rocket: Feature Request
General Information

[x] :wave: I may be able to implement this feature request

[ ] :warning: This feature might incur a breaking change

Description
Announcing CDK Pipelines GA, CI/CD for CDK Apps. With this launch CDK pipelines have support for modern API. We have updated the modern API to be easier to work with and customize, and will be the preferred API going forward.
Proposed Solution
Announcing CDK Pipelines GA, CI/CD for CDK Apps. With this launch CDK pipelines have support for modern API. We have updated the modern API to be easier to work with and customize, and will be the preferred API going forward.
Environment

CDK CLI Version:
Section:
Browser:
Language:

Other information

Thank you very much for your contributions! We'll take a look at these soon


Various navbar improvements

This still might not be the correct way to handle the "(no description)" case, but I'm hoping that at least the other commits are obvious improvements and good enough to keep.
Testing Plan:
GIFs or Screenshots:

I've seen the failing circle, I'll fix it.

I merged the first two commits.  The i18n approach in the third commit is wrong; see https://zulip.readthedocs.io/en/latest/translating/internationalization.html for details on how to correctly do strings with variables.
(Note also that passing a variable into i18n.t will not result in the string being tagged for translation; you have to pass the raw string in).  So get_formatted_sub_count needs to call i18n.t.

I added d4dfeb57fd316434cb96c6c8a1814cd760df7262 to make our linter complain about problematic i18n like what was present in the PR.  So thanks for the implicit reminder that we should do that :).

I'm still trying to figure out the right way to do the i18n here, but I'll ask on CZO after checking the docs once again.
I've flipped the order of the commits, the first commit might also be acceptable. (it is unrelated to the i18n change.)

closing this, the commits were moved over to #15393, #15286 (both merged).


Add matomo tracking

This looks like a good basis for that
https://github.com/Amsterdam/matomo-tracker/tree/master/packages/react

If I am right, we already included the pixel. At least I can see the statistics of GdK :)
Can this issue be closed @ff6347 ?


Fix duration of a block

Call Instant::now at the hook call, not in the timing thread which
might be lagging behind
Do not recompute hashes for the commit and root of the tree

Other than that it looks good, it is just that part that I am not sure about.


(CI) run Elixir FFI tests

Helps to address #530

@SanjoDeundiak I have the impression that we are currently running some tests involving the ffi in CI. Is that correct?

I think so


MathML mathjax fallback stumbles over links ( tags).

Issue Summary
I simplified the problem when I used solr to search for returned results and highlight them, my highlight tag is ;
Here is an error: "Unknown node type: span"
These use the tag  which seems to be what mathjax is having issues with.
Steps to Reproduce:
The problem can be seen by saving the code to an html file.
I found this solution https://github.com/mathjax/MathJax/issues/2860#issuecomment-1092044356, which works very well in v3.
I'm sorry to ask you this unpleasant question
How can this be done in V2? I have been trying for a long time to find a solution, so if you can help me with an answer, would be very grateful! Thanks in advance！
Technical details:
MathJax Version: 2.7.9
Client OS: (Mac OS X 13.1)
Browser: (Chrome 92.0.4541)
I am using the following code:

<math>
	<mi>Hello</mi>
	<mi>
		10
	</mi>
</math>

Supporting information:

The MathML specification provides for the option of allowing HTML embedded in MathML, and the HTML5 specification does include that option, but MathJax does not yet implement that (yet).  It will be part of the next release of v3, but it is not expected to be back-ported to v2.
It is possible to put HTML inside a <semantics> element and have it displayed, but it uses a legacy "loophole" that is not really valid MathML, and it can't be inside an <mi>.
Can you say more about what you are trying to accomplish?  It might help to know what you are really after.

Hi guys,
I would like to remove the span tag.
The V3 solution you implemented here  https://github.com/mathjax/MathJax/issues/2860#issuecomment-1092044356 , I see that you said some changes need to be made in v2.
I want to know how to do it in V2.

Here is a configuration that will do it:

Thank you  very very very very much.


Reorganizing the README and CHANGELOG for 5.2.3

README focused on Release Notes documenting changes in current ROCm release
CHANGELOG documenting changes in past ROCm releases

As this is a major change in the structure of release notes, feedback is appreciated. This release notes page is maintained manually but in the future will use scripting to scrape the changelogs of individual components. For example, the RCCL section in the logs came as a direct copy paste from https://github.com/ROCmSoftwarePlatform/rccl/blob/release/rocm-rel-5.2/CHANGELOG.md.


Bug in Clock Generator VVC

There is a minor bug in the Clock Generator VVC on line 52.
assert (GC_CLOCK_NAME'length <= 20) report "Clock name is too long (max 30 characters)" severity ERROR;
The assertion checks for length of max 20 characters, but the text states 30.

Hi,
Thank you, this will be fixed in the next release.
Best regards,
Marius


Add support for automatically loading Spring Boot, Wildfly Swarm and JPA files

Currently in APE 2.0.0 when using the programmatic way you need to set over and over again.
It will be great if you could use the information configured at application.properties (Spring Boot) , persistence.xml (JPA), project-defaults (Wildfly Swarm) to configure the connection.st.
https://issues.jboss.org/browse/ARQ-2148

https://github.com/arquillian/arquillian-extension-persistence/pull/95


Calculate max task lag after excluding on demands with instance limit

The on demands over their instance count are expected to be late, and should not contribute to this value

🚢


Wine Improvements

Use stretch-backports to get the latest wine.
Add 64bit Gecko.
Ensure wine default environment is 32bit.
This would resolve the closed #3

Thank you! That looks quite well.
I did a test build and checked my already installed windows/wine applications.
I have to admit: They all run with wine64 instead of wine32 ... I was wrong with my years-old assumption that the image used 32bit architecture for wine.
For backwards compatibility, can you remove the line ENV WINEARCH win32? Sorry.

Please correct me if I am wrong, but my understanding is that Wine 1.8 is 32bit or at least only supports 32bit Windows. 64bit support of Windows applications was only added in Wine 2.

wine 1.8 in debian provides wine32 and wine64, so it supported both of them. On the other hand, all installation howtos insist on installing multiarch to avoid issues. I remember that I had issues if only wine64 was installed.
Furthermore, wine 1.8 accepted 32bit-gecko. wine 3.01 from wineHQ does not.
But wine 3.01 from stretch-backports accepts 32bit-gecko, and adding 64bit-gecko to image would not be needed (just checked now).
Maybe its the best for completeness to provide both gecko versions although only one is needed.
I admit, I am confused.
If I start my Windows applications previously installed with wine 1.8 with new wine 3.0.1, it complains that my ~/.wine folder has a win64 prefix. Starting them with WINEARCH=win64 works.
Without setting ENV WINEARCH win32 wine 3.01 runs my old Windows applications. To provide backwards compatibility, its the best to leave the setting away.

While I was typing you provided a new commit. Thank you!

Much thanks for your contribution! It is a valuable improvement for the image.


Fix bug with long role names displaying incorrectly

Role names that were too long were displayed incorrectly. Fixed by adding a max-width.
Other attributes have been tested. Long Names, countries and tech stack should all be handled correctly if the string is too long.

@LucasOe  Good job  :)


devnet account got deleted and can't reactivate again

I deployed some VMs successful on Jan, 5 but today can't access it like the previous screenshot

closed in favor of https://github.com/threefoldtech/tfchain_portal/issues/27


Super basic support for Windows Python

Prefix. I have never written a line of Ruby before so please fix/improve where needed.
Super basic support, this doesn't clean up the errors from the Windows Python not liking the order of quote when being called. It wants " then '
This does allow windows users to get by.
I'm not very familiar with Bitbucket or Hg so I hope you don't mind my use of GitHub and Git.

I tested it on windows xp 32bit.
One problem, I installed python27 from MSI installer. It seems that the installer copy python27.dll to c:\windows\system32\python27.dll. I copied it to c:\python27\libs\python27.dll and get success to work it.
otherwise, It's working well.
thanks.

Awesome I'm glad I was able to contribute.
On Fri, Oct 21, 2011 at 7:53 AM, mattn <
<EMAIL_ADDRESS>
I tested it on windows xp 32bit.
One problem, I installed python27 from MSI installer. It seems that the
installer copy python27.dll to c:\windows\system32\python27.dll. I copied
it to c:\python27\libs\python27.dll and get success to work it.
otherwise, It's working well.
thanks.
--
Reply to this email directly or view it on GitHub:
https://github.com/halostatue/rubypython/pull/1#issuecomment-2480380

Hi, guys. I'm getting ready to push a (slightly) modified version of something that Zach pushed to his bitbucket version that should do what you're after with this in a more consistent/safe manner.

Closing this request as I've pushed the relevant fixes to GitHub.

Thanks, I'll try it in next week.

http://code.activestate.com/lists/python-win32/10743/
Python is installing itself to the wrong place for some reason. This probably needs to be told to the python maintainers.
I copied the DLL to the SysWOW64 directory and now I get a load error from FFI:
c:/Ruby193/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/lib/ffi/library.rb:121:in block in ffi_lib': Could not open library 'C:/Windows/system32/python27.dll': ∞ (LoadError)         from c:/Ruby193/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/lib/ffi/library.rb:88:in map'
from c:/Ruby193/lib/ruby/gems/1.9.1/gems/ffi-1.0.11/lib/ffi/library.rb:88:in ffi_lib'         from c:/Ruby193/lib/ruby/gems/1.9.1/gems/rubypython-0.5.3/lib/rubypython/python.rb:29:in module:Python'
from c:/Ruby193/lib/ruby/gems/1.9.1/gems/rubypython-0.5.3/lib/rubypython/python.rb:21:in <top (required)>'         from c:/Ruby193/lib/ruby/gems/1.9.1/gems/rubypython-0.5.3/lib/rubypython.rb:261:in load'
from c:/Ruby193/lib/ruby/gems/1.9.1/gems/rubypython-0.5.3/lib/rubypython.rb:261:in reload_library'         from c:/Ruby193/lib/ruby/gems/1.9.1/gems/rubypython-0.5.3/lib/rubypython.rb:104:in start'
from c:/Ruby193/lib/ruby/gems/1.9.1/gems/pygments.rb-0.2.4/lib/pygments/ffi.rb:8:in start'         from c:/Ruby193/lib/ruby/gems/1.9.1/gems/pygments.rb-0.2.4/lib/pygments/ffi.rb:82:in highlight'
from test.rb:3:in `'

@heygrady: Can you please open this as an issue on RubyPython's bitbucket (link in the description of the project)? I won't be able to fix it for another couple of weeks (I have a vacation starting on Sunday and am super busy until then), but the primary bug tracking is on bitbucket and I don't want to have bug tracking in two places.
Thanks

Can you try this with the latest version in hg? This should be resolved with the upcoming release of RubyPython, but it'd be nice to get some verification.

Assuming resolved with RubyPython 0.5+.


Branch UI

Multiple Update
Moved members file into correct location.
Added Command list to Help menu
Edited FXML of Help
Merged with zhou's addCommand batch Processing

There are some test not covered in Helpwindow.java class. Will do it in the future.


Feature request: support for HiFiBerry Os

It would be nice if there was support for HiFiBerry DACs with hifiberryos for hight quality music. https://github.com/hifiberry/hifiberry-os
https://www.hifiberry.com/

There already is! I have recently contributed the "slimproto" integration to HA core.

Enable squeezelite on HifiBerry OS
Add "slimproto" (squeezebox players) integration to Home Assistant.
Your HIFIBerry will be automatically added to Home Assistant as mediaplayer
Add that mediaplayer to Music Assistant
voila, Hi res lossless audio streaming without any additional media servers


"Go to line shortcut" is nonstandard on macOS

macOS apps generally use cmd+L to open the 'jump to line' prompt. Decomp.me currently uses ctrl+G

This was in imitation of vscode if I'm not mistaken


hydrus: 520 -> 537

Description of changes
After a lot of back and forth with the upstream and testing, this feels stable enough for an update again.
Also upgrades python3Packages.mpv This has languished for so long that this got done by someone else in the meantime

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Resolved merge conflicts

The latest force push squashes all the version bumps in an attempt to seem easier to merge...

There is a bunch of executable files in lib/python3.10/site-packages/static/

[x] package path fits guidelines
[x] package name fits guidelines
[x] package version fits guidelines
[x] package build on x86_64-linux
[x] executables tested on x86_64-linux
[x] meta.description is set and fits guidelines
[x] meta.license fits upstream license
[x] meta.maintainers is set
[x] build time only dependencies are declared in nativeBuildInputs
[x] source is fetched using the appropriate function
[x] the list of phases is not overridden
[x] when a phase (like installPhase) is overridden it starts with runHook preInstall and ends with runHook postInstall.
[x] patches have a comment describing either the upstream URL or a reason why the patch wasn't upstreamed
[x] patches that are remotely available are fetched rather than vendored

Result of nixpkgs-review pr 243364 run on x86_64-linux 1

6 packages built:

hydrus
hydrus.doc
python310Packages.pillow-heif
python310Packages.pillow-heif.dist
python311Packages.pillow-heif
python311Packages.pillow-heif.dist


ST-443 Additional comments page

Change description
Additional comments page
JIRA link (if applicable)
https://tools.hmcts.net/jira/browse/ST-443
Before merging a pull request make sure that:

[x] tests have been updated / new tests has been added (if needed)
[x] README and other documentation has been updated / added (if needed)

If this ticket will have any visible impact on users and is not behind a feature toggle, make sure that:

[ ] this ticket been reviewed by QA
[ ] the user story been signed off by the PO

Note that bug fixes, dependency updates and technical tasks do not directly impact the user experience and can be merged without QA and PO review.
If this user story cannot be immediately merged find a way to put it behind a feature toggle and get it merged.

It is not targeting release one, I will keep it until it is tested on preview then merge it manually to release 2 branch

Ok so probably best to change target branch for this PR to release 2 in case someone merges this after approval.


Disable renovate for nodejs and use updatecli to retrieve last version from packer-images repository

What feature do you want to see added?
We should disable renovabot for nodejs (ex of PR: https://github.com/jenkins-infra/contributor-spotlight/pull/117) and add an updatecli manifest to retrieve the last nodejs defined in https://github.com/jenkins-infra/packer-images/blob/caa9c16a22aae3540d032e7515ca423b494723bd/provisioning/tools-versions.yml#L36 to avoid discrepency between the version defined here and the version available on the agents.
Upstream changes
No response

No more node dependency detected in Renovate dashboard (#20) since #146 has been merged: ✅

Updatecli opened a PR with the nodejs version deployed on ci.jenkins.io agents: ✅
https://github.com/jenkins-infra/contributor-spotlight/pull/147


Cursor insertion

Move cursor to the head of the form, Add a space, and put editor into Insert mode.

( + 1 1) (Cursor anywhere within expression)
Cursor insert
(| + 1 1)(Cursor moved to beginning of form and in insert mode)

This can be thought of as two things:

Form-wise motions
Automatic enter-insert

I think form-wise motions should definitely be added as a companion to the element-wise motions that already exist, but I'm not so sure about the automatic enter-insert behaviour.
My thinking is that if we add the form-wise motions and a user wants the enter-insert then it should be quite straight forward to setup a keybinding in userspace config which calls nvim-paredits form-wise motion API followed by a mode change.

Implemented in #14 (see recipes section in the readme)


Discussion: ingest! and update!

Comment of @jeremiedb, copied from #10:
I think I remain a little confused to the extent to which these term can translate unambiguously to the variety of algos and their implementations.
For a GBT / EvoTree:
fit: preprocess X / Y, creates a cache, then apply a grow_evotree! for some iterations
update!: essentially grow_evotree!, that is, add a tree to the model, assuming no change to data (uses cache), though the hyper-params may have changed (learning rate, regularization...) but not all (nbins couldn't as it would require an expensive re-creation of cache)
ingest!: continue training using new data. This is not a functionnality that isn't supported in current implementation. Is there an actual use case for which it would be expeted to be supported for GBT?
Is the intent of ingest! to act as a support for online learning? As I unnderstand it, the intent of ingest! is that the intended effect of fit(x1, y1, m); update!(x2, y2, m) is to be equivalent to fit(x3, y3) where x3 is the concatenation of x1 & x2. If such is the case, then I guess that some extra information needs to be captures during fit, for as linear model for example to exhibit such behavior where the fit + ingest = fit on concatenated data.
Is it assumed that for ingest!, the new data keeps the same features, or it could be a subset / overset? The later could be relevant in situations where uses initial model as offset models, over which training could be performed potentially on additional features, though I don't think such mechanism would be the appropriate approach to achieve this rather than an explicit model stacking.
For neural nets, where a model is fed data through a DataLoader, I'm not too clear which of the update! and ingest! best applies. Is each of of the batch of an epoch be considered like new data? Or would ingest! only be used is a new DataLoader is built or new data?
I think a reason why I find the update / ingest distinction not so clear is that it may be that the underlying reason for a difference in implications from the 2 verbs have more to do about algorithm implementations and whether they involve preprocessing / caching, than actual distinct verbs generally applicable.
For example, if using a GBT with exact method (one which does not require data preprocessing), then such tree construction algo could be implemented using a stream / online approach. Each iteration could be fed with either entirely new data (having the same features) or just another subsampling of the original data. This is a similar situation for neural nets where I don't see fundamental distinction between a batch from a fixed dataset or a batch coming from an entirely new one. And in all cases, I think there are some parms that can changed through both update / ingest like learning rates and regularization, and others that can't like number of features, or size of hidden layers.
Perhaps this has already been done, but I'm wondering if a clarification of the scope of what algos / use cases are supported by the framework. By that I mean to explicit what are the implications (is there any overhead, in what circumstances) for a variety of algo families, notably:
Linear models
Neural Nets
Gradient boosted trees
Algos requiring cache / initialization vs those that doesn't
Given the broadly different cowds that may feel concerned by the framework, it also comes with very different perspectives of what are the "natural" way of doing things and what appear like reasonablw compromise (for instance performance overhead is a big deal in my prod oriented usage, but isn't for many research / educational ones).

Related discussion: https://github.com/alan-turing-institute/MLJ.jl/issues/60

Thanks @jeremiedb for the thoughtful commentary.
I suppose that in any kind of "update", we provide one or more of the following:

Changes to hyper-parameters (e.g., an increase in the iteration parameter)
New training observations
New training features

Any model can support 1, by simply retraining on the original data.
I cannot conceive of a need for any model to support 2 and 3 in the same update step.
Support for the remaining possibilities (2 only, 3 only,  1 + 2 or 1 +3) must evidently be optional.
Yes, increasing an iteration parameter (case of 1) may be equivalent to providing previous  observations as "new" ones (case of 2). However, this fact does not  render the distinction between 1 and 2 useless more generally.
My main use case for 2 is online learning. My main use case for 3 is linear models (see this comment).
I think the important issue you raise is what promises of behaviour should we make for the different update cases, where implemented. How about:

1 only: update should be equivalent to training from scratch with the modified hyperparameters

2 only or 3 only: update should be equivalent to retraining with the original data concatenated with new data

Beyond this, I can't really think of a well-defined generic requirement, and so would leave that up to the implementation.
@jeremiedb What say you?

Aside
In terms of syntax, I'm leaning towards something along the lines of
model = fit(algorithm, data)
updated_model = fit(model, NewObservations(new_data), NewParams(nrounds => 200, learning_rate=0.001))

Okay, 1 as above doesn't allow for adding iterations with a new learning rate for the new iterations. Perhaps:
1 only: For a single (or no) hyperparameter replacement, the update should be equivalent to training from scratch (on the original data) with the updated hyperparameter.


trying to fix offset bug and may need to be ready for NaN

trying to solve value offset bug
RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 9. Received 102
at boundsError (internal/buffer.js:58:9)
at Buffer.readUInt16LE (internal/buffer.js:139:5)
at check_async (/home/pi/narc-drone/production/production/udp-test-server.js:56:22)
at /home/pi/narc-drone/production/production/udp-test-server.js:82:27
RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 11. Received 38
at boundsError (internal/buffer.js:58:9)
at Buffer.readUInt16LE (internal/buffer.js:139:5)
at check_async (/home/pi/narc-drone/production/production/udp-test-server.js:56:22)
at /home/pi/narc-drone/production/production/udp-test-server.js:82:27
RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 58. Received 201
at boundsError (internal/buffer.js:58:9)
at Buffer.readUInt16LE (internal/buffer.js:139:5)
at check_async (/home/pi/narc-drone/production/production/udp-test-server.js:56:22)
at /home/pi/narc-drone/production/production/udp-test-server.js:82:27
<Buffer 27 00 50 40 80 08 00 40>
RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be an integer. Received NaN
at boundsError (internal/buffer.js:52:11)
at Buffer.readUInt16LE (internal/buffer.js:139:5)
at check_async (/home/pi/narc-drone/production/production/udp-test-server.js:56:22)
at /home/pi/narc-drone/production/production/udp-test-server.js:82:27
<Buffer 02 40 00 26 40 cb 60 e1 b1 37 2b 56 a1 21 a0 a0 8c dc cc 7c 00 c8 00 02 e0 cb c0 81 20 da 8e 08 ed ef 00 00 40 d8 2e 40 e8 00 00 60 5c 1d 98 a1 70 23 ... 22 more bytes>
RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 7. Received 102
at boundsError (internal/buffer.js:58:9)
at Buffer.readUInt16LE (internal/buffer.js:139:5)
at check_async (/home/pi/narc-drone/production/production/udp-test-server.js:56:22)
at /home/pi/narc-drone/production/production/udp-test-server.js:82:27
<Buffer 27 00 60 40 80 08 00 40>
RangeError [ERR_OUT_OF_RANGE]: The value of "offset" is out of range. It must be >= 0 and <= 92. Received 102
at boundsError (internal/buffer.js:58:9)
at Buffer.readUInt16LE (internal/buffer.js:139:5)
at check_async (/home/pi/narc-drone/production/production/udp-test-server.js:56:22)
at /home/pi/narc-drone/production/production/udp-test-s

merged


[BUG]1.16.5 with enigmaticlegacy:cursed_ring

Loot_table:

Before:

After:

The reward will be changed to the trophy itself.
Happens on any trophy with a 'lootTable' set.

I'm assuming the cursed ring is an item that gives you silk touch or affects block drops in some way? Looks like a loot modifier thinks the block is being broken when it's not. I'll look into this when I have a bit more time.

Hmm, that's odd, I'm not sure why it would be causing an issue like this. Does this happen with any other curios from Enigmatic Legacy?
You might want to report this issue on Enigmatic Legacy's issue tracker as well if you haven't already.

I'm not entirely sure what Enigmatic Legacy might be doing on their end to cause something like this, but I've uploaded a new version with a workaround that seems to fix the issue.


Square box is not displaying to check(tick) in checkbox field element

Square box is not displaying to check after exporting on UI

In the fragment design it is visible

.

@sushama20, I tried a couple of different layouts but I can't replicate this. It always exports correctly and looks as expected on codesandbox.
What are the steps to reproduce this?

Issue was occurring since we did not import the modules properly.
It is fixed now.
Thank you !!


How to test other datasets

Hi，how to test other datasets? change the datasets/pretrained/metadata.json?

At present, I only provide models for two datasets. More models will be provided later.
I do not quite understand what you mean.
Do you want to train on other datasets?

I want test some other image on your model. But I dont konw how to do it.
If I have image sequence with pose data，how to test？

I want test some other image on your model. But I dont konw how to do it. If I have image sequence with pose data，how to test？

Align the images in the way of StyleGAN. You can refer to this script align_images.py.
Project the aligned images into the W space, also known as GAN inversion.  Different from the common 2D inversion, you'd better set an appropriate yaw/pitch/fov for the CIPS-3D generator to make the initial pose of G(w) and the image to be inverted consistent.
After you get the w of the image, you can reconstruct images of different styles using G'(w). G' can be obtained by interpolating generators of different domains.

Hope this helps.


"Schemify" Operator

Problem 1:
Oftentimes when designing with typescript, it's desirable to also do some extra type checking at runtime if:

Anticipating catastrophic misuse in downstream javascript
Asserting expectations while working with JSON from an external API
Differentiating program behavior based on the shape of some input which cannot be known until run-time

Problem 2:
When writing typescript I often find myself repeating type information in multiple paradigms if I'm working, for example, with Models in sequelize or if I want to include PropTypes in a React project (so that downstream JavaScript users can be typesafe).
Proposal
If there was an irreversible operation for producing a standardized schema object from a type at compile time, common solutions could be constructed for both of these problems.
Syntax
I'm imagining something like
type user = {id: number, userName: string, password: string};
const userSchema: TypeSchema<user> = &user;

// Integrate with other type systems
const sequelizeModelFromTypeSchema = <T>(schema: TypeSchema<T>): Sequelize.Model<Instance<T>, T>  => {
    ...
};

let userModel = sequelizeModelFromTypeSchema(userSchema);

// Run time type checking
collectionWhichContainsSomeUsersAndOtherStuff.forEach((maybeUser: any) => {
  if (thirdPartyTypeCheck(userSchema, maybeUser)) {
    let definitelyUser: user = maybeUser;
    ...
  }
};
...

Which would be compiled to:
const _schema_user = {
  id: {type: 'number', required: true},
  userName: {type: 'string', required: true},
  password: {type: 'string', required: true}
}
const userSchema = _schema_user;

const sequelizeModelFromTypeSchema = (schema) => { ... };

let userModel = sequelizeModelFromTypeSchema(userSchema);

collectionWhichContainsSomeUsersAndOtherStuff.forEach((maybeUser) => {
  if (thirdPartyTypeCheck(userSchema, maybeUser)) {
    let definitelyUser = maybeUser;
    ...
  }
};
...

Consistency and Nesting
Any time that a type contains a reference to another type, schemas for the parent and child would need to be created. They would be given some predictable, prefixed name (such as _schema_{typeName} used above) at the top of the compiled JS file.
i.e. with user defined as above...
type account = {id:number, owner: user};
console.log(&account);

is compiled to
const _schema_user = {
  id: {type: 'number', required: true},
  userName: {type: 'string', required: true},
  password: {type: 'string', required: true}
};

const _schema_account = {
  id: {type: 'number', required: true}
  owner: {type: _schema_user, required: true}
};

console.log(_schema_account);

Semantic
Obviously, this is a one-way operation. No setting the schema, i.e. &user = {id: 'string'}
It's hard to say how this operation would best handle recursively defined types or generics. I would think the easiest approach would be to restrict to a very specific subcategory of easy-to-schemify types and throw compile-time errors if users try to schemify something ridiculous. Even if its use was restricted, this operation would still handle the most common and useful cases gracefully. Besides, if someone has a generic or recursive, they should probably specify it by hand in both type systems and write custom typecheckers.
The other approach would be to expose as much information from the type-system as possible and allow downstream library developers to use that information creatively.
Conclusion
I think it's clear that passing type information into a runtime container would lead to useful applications. I don't think this interferes with any of typescripts design goals; all extra generated code will be explicitly requested, inserting the type definition at the top of a file would be a constant time operation, developers would only be using this under circumstances where they need to write the same code by hand otherwise.
I think we could expect to expand developers capacity to express intention to downstream JavaScript users. Such an operator would likely facilitate the development of libraries for DRYer typescript development on top of JS frameworks which have their own type systems.

@pixelpax You may want to check out https://github.com/gcanti/io-ts.

Another option is https://github.com/pelotom/runtypes

Providing a runtime type system is not withing the scope of the TS project. it is, and has been, one of our explicit non-goals.


New header for home page

I created an extends for the nav bar and header so it can all fit as one element in the home page, but it can also just be a nav element on all other pages.
I created a hero section for the header on the home page and added links.

👷 Deploy Preview for benevolent-sprinkles-4567d6 processing.

Name
Link

🔨 Latest commit
ce778e32d9e0f1cf81f43b1b58ff7415055d69c8

🔍 Latest deploy log
https://app.netlify.com/sites/benevolent-sprinkles-4567d6/deploys/65bfd449bd1b610008420357