Can't connect remotely to a server

Hi
I have a client running on 'blackbeard' machine and a server running on 'wopr' machine.
The consul server is running on blackbeard and a consul agent is running on wopr.
This is the consul server
⟩ env GOMAXPROCS=4 consul agent -server -bootstrap-expect 1 -data-dir /tmp/consul
==> WARNING: BootstrapExpect Mode is specified as 1; this is the same as Bootstrap mode.
==> WARNING: Bootstrap mode enabled! Do not enable unless necessary
==> Starting raft data migration...
==> Starting Consul agent...
==> Starting Consul agent RPC...
==> Consul agent running!
         Node name: 'blackbeard'
        Datacenter: 'dc1'
            Server: true (bootstrap: true)
       Client Addr: <IP_ADDRESS> (HTTP: 8500, HTTPS: -1, DNS: 8600, RPC: 8400)
      Cluster Addr: <IP_ADDRESS> (LAN: 8301, WAN: 8302)
    Gossip encrypt: false, RPC-TLS: false, TLS-Incoming: false
             Atlas: <disabled>

==> Log data will now stream in as it occurs:

    2015/11/04 10:50:08 [INFO] raft: Node at <IP_ADDRESS>:8300 [Follower] entering Follower state
    2015/11/04 10:50:08 [INFO] serf: EventMemberJoin: blackbeard <IP_ADDRESS>
    2015/11/04 10:50:08 [INFO] consul: adding server blackbeard (Addr: <IP_ADDRESS>:8300) (DC: dc1)
    2015/11/04 10:50:08 [INFO] serf: EventMemberJoin: blackbeard.dc1 <IP_ADDRESS>
    2015/11/04 10:50:08 [INFO] consul: adding server blackbeard.dc1 (Addr: <IP_ADDRESS>:8300) (DC: dc1)
    2015/11/04 10:50:08 [ERR] agent: failed to sync remote state: No cluster leader
    2015/11/04 10:50:09 [WARN] raft: Heartbeat timeout reached, starting election
    2015/11/04 10:50:09 [INFO] raft: Node at <IP_ADDRESS>:8300 [Candidate] entering Candidate state
    2015/11/04 10:50:09 [INFO] raft: Election won. Tally: 1
    2015/11/04 10:50:09 [INFO] raft: Node at <IP_ADDRESS>:8300 [Leader] entering Leader state
    2015/11/04 10:50:09 [INFO] consul: cluster leadership acquired
    2015/11/04 10:50:09 [INFO] consul: New leader elected: blackbeard
    2015/11/04 10:50:09 [INFO] raft: Disabling EnableSingleNode (bootstrap)
    2015/11/04 10:54:47 [INFO] agent: Deregistered service 'io.jbrodriguez.mediagui.scanner-47b07d7d-827e-11e5-81dc-d05099660776'
    2015/11/04 10:56:59 [INFO] agent: Deregistered service 'io.jbrodriguez.mediagui.scanner-47b07d7d-827e-11e5-81dc-d05099660776'
    2015/11/04 11:02:29 [INFO] serf: EventMemberJoin: wopr <IP_ADDRESS>
    2015/11/04 11:02:29 [INFO] consul: member 'wopr' joined, marking health alive
    2015/11/04 11:12:30 [ERR] yamux: Failed to write header: use of closed network connection

This is the consult agent (client)
root@wopr:~# /boot/consul agent -data-dir /tmp/consul -join blackbeard.apertoire.org
==> WARNING: It is highly recommended to set GOMAXPROCS higher than 1
==> Starting Consul agent...
==> Starting Consul agent RPC...
==> Joining cluster...
    Join completed. Synced with 1 initial agents
==> Consul agent running!
         Node name: 'wopr'
        Datacenter: 'dc1'
            Server: false (bootstrap: false)
       Client Addr: <IP_ADDRESS> (HTTP: 8500, HTTPS: -1, DNS: 8600, RPC: 8400)
      Cluster Addr: <IP_ADDRESS> (LAN: 8301, WAN: 8302)
    Gossip encrypt: false, RPC-TLS: false, TLS-Incoming: false
             Atlas: <disabled>

==> Log data will now stream in as it occurs:

    2015/11/04 11:02:29 [INFO] serf: EventMemberJoin: wopr <IP_ADDRESS>
    2015/11/04 11:02:29 [INFO] agent: (LAN) joining: [blackbeard.apertoire.org]
    2015/11/04 11:02:29 [INFO] serf: EventMemberJoin: blackbeard <IP_ADDRESS>
    2015/11/04 11:02:29 [INFO] agent: (LAN) joined: 1 Err: <nil>
    2015/11/04 11:02:29 [ERR] agent: failed to sync remote state: No known Consul servers
    2015/11/04 11:02:29 [INFO] consul: adding server blackbeard (Addr: <IP_ADDRESS>:8300) (DC: dc1)

This is the server
root@wopr:~# /boot/scanner -logtostderr
I1104 11:05:08.097673   25766 scanner.go:18] after parse
I1104 11:05:08.097767   25766 server.go:96] Starting server io.jbrodriguez.mediagui.scanner id io.jbrodriguez.mediagui.scanner-d1b784a8-830d-11e5-a519-d05099660776
I1104 11:05:08.097850   25766 rpc_server.go:222] Listening on <IP_ADDRESS>:58719
I1104 11:05:08.097909   25766 http_broker.go:80] Broker Listening on <IP_ADDRESS>:57574
I1104 11:05:08.097968   25766 rpc_server.go:152] Registering node: io.jbrodriguez.mediagui.scanner-d1b784a8-830d-11e5-a519-d05099660776
I1104 11:10:09.004940   25766 handler.go:19] Received scanner.Scan request: %vfolders:"/mnt/user/films"
I1104 11:10:18.540523   25766 handler.go:19] Received scanner.Scan request: %vfolders:"/mnt/user/films"
I1104 11:10:31.820802   25766 handler.go:19] Received scanner.Scan request: %vfolders:"/mnt/user/films"

This is the output of http://localhost:8500/v1/catalog/service/io.jbrodriguez.mediagui.scanner, run on blackbeard
[
  {
    "Node": "io.jbrodriguez.mediagui.scanner-d1b784a8-830d-11e5-a519-d05099660776",
    "Address": "<IP_ADDRESS>",
    "ServiceID": "io.jbrodriguez.mediagui.scanner-d1b784a8-830d-11e5-a519-d05099660776",
    "ServiceName": "io.jbrodriguez.mediagui.scanner",
    "ServiceTags": [
      "e={\"Name\":\"Scanner.Scan\",\"Request\":{\"Name\":\"Request\",\"Type\":\"Request\",\"Values\":[{\"Name\":\"Folders\",\"Type\":\"\",\"Values\":null}]},\"Response\":{\"Name\":\"Response\",\"Type\":\"Response\",\"Values\":[{\"Name\":\"Filenames\",\"Type\":\"\",\"Values\":null}]},\"Metadata\":{\"stream\":\"false\"}}",
      "e={\"Name\":\"Debug.Health\",\"Request\":{\"Name\":\"Request\",\"Type\":\"Request\",\"Values\":null},\"Response\":{\"Name\":\"Response\",\"Type\":\"Response\",\"Values\":[{\"Name\":\"Status\",\"Type\":\"string\",\"Values\":null}]},\"Metadata\":{\"stream\":\"false\"}}"
    ],
    "ServiceAddress": "",
    "ServicePort": 58719
  }
]

But the client fails to connect to server
⟩ ./test -logtostderr
I1104 11:10:28.359626   25332 main.go:25] req=&{service:io.jbrodriguez.mediagui.scanner method:Scanner.Scan contentType:application/octet-stream request:0xc82000b160}
W1104 11:10:28.360803   25332 main.go:31] Unable to connect to scanning service: %s{"id":"go.micro.client","code":500,"detail":"Error sending request: dial tcp <IP_ADDRESS>:58719: getsockopt: connection refused","status":"Internal Server Error"}

If I run the client on wopr, it works

Thanks for raising the issue. The way in which a service registers, it blindly uses the server listener address provided rather than figuring out the appropriate IP of the machine or allow you to specify and advertising address. The quick fix is to set server.Address("<IP_ADDRESS>:8080") to the private ip of the host. I'll put together a more elegant solution that will either allow the separation of listen and advertise address much like consul does. Any thoughts or PRs welcome.

Thank you @asim , the quick fix worked !

I've committed a fix here https://github.com/myodc/go-micro/commit/0dbe14ad22fcab2a085a7ccbb50c40905f8eccb9. When <IP_ADDRESS> is specified as the bind address it will extract the private ip and use that for registration. Please close the issue if to satisfaction.

Not sure if this is the way to do it, but it's not working here
	server.Init(
		server.Name("io.jbrodriguez.mediagui.scanner."+host),
		server.Address("<IP_ADDRESS>:0"),
	)

root@wopr:~# /boot/scanner -logtostderr
I1104 17:03:34.004338    7537 scanner.go:55] Scanner started
I1104 17:03:34.004415    7537 server.go:96] Starting server io.jbrodriguez.mediagui.scanner.wopr id io.jbrodriguez.mediagui.scanner.wopr-e43c7501-833f-11e5-9483-d05099660776
I1104 17:03:34.004576    7537 rpc_server.go:222] Listening on <IP_ADDRESS>:39241
I1104 17:03:34.004666    7537 http_broker.go:80] Broker Listening on <IP_ADDRESS>:43409
I1104 17:03:34.004720    7537 rpc_server.go:152] Registering node: io.jbrodriguez.mediagui.scanner.wopr-e43c7501-833f-11e5-9483-d05099660776

[
  {
    "Node": "io.jbrodriguez.mediagui.scanner.wopr-e43c7501-833f-11e5-9483-d05099660776",
    "Address": "<IP_ADDRESS>",
    "ServiceID": "io.jbrodriguez.mediagui.scanner.wopr-e43c7501-833f-11e5-9483-d05099660776",
    "ServiceName": "io.jbrodriguez.mediagui.scanner.wopr",
    "ServiceTags": [
      "e={\"Name\":\"Scanner.Scan\",\"Request\":{\"Name\":\"Request\",\"Type\":\"Request\",\"Values\":[{\"Name\":\"Folders\",\"Type\":\"\",\"Values\":null}]},\"Response\":{\"Name\":\"Response\",\"Type\":\"Response\",\"Values\":[{\"Name\":\"Filenames\",\"Type\":\"\",\"Values\":null}]},\"Metadata\":{\"stream\":\"false\"}}",
      "e={\"Name\":\"Debug.Health\",\"Request\":{\"Name\":\"Request\",\"Type\":\"Request\",\"Values\":null},\"Response\":{\"Name\":\"Response\",\"Type\":\"Response\",\"Values\":[{\"Name\":\"Status\",\"Type\":\"string\",\"Values\":null}]},\"Metadata\":{\"stream\":\"false\"}}"
    ],
    "ServiceAddress": "",
    "ServicePort": 39241
  }
]

I think this line will never evaluate to true
https://github.com/myodc/go-micro/commit/0dbe14ad22fcab2a085a7ccbb50c40905f8eccb9#diff-83b1f985ddf5acc292d6df4ede4b6395R143

Does your machine have private ips?

Yes, 192.168.23.x

The IPs are assigned on the machine and you can see them if you do ifconfig?

Yes, I have docker running but that's a different issue
root@wopr:~# ifconfig
docker0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
        ether 36:dd:68:31:e1:d2  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 558  bytes 72965 (71.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
        ether d0:50:99:66:07:76  txqueuelen 1000  (Ethernet)
        RX packets 438818  bytes 481549074 (459.2 MiB)
        RX errors 0  dropped 1817  overruns 0  frame 0
        TX packets 210916  bytes 107895564 (102.8 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xefd00000-efd20000

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 2925  bytes 35495980 (33.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2925  bytes 35495980 (33.8 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

I'm running your code inside the service handler and it works
	for _, b := range []string{"<IP_ADDRESS>/8", "<IP_ADDRESS>/12", "<IP_ADDRESS>/16"} {
		if _, block, err := net.ParseCIDR(b); err == nil {
			privateBlocks = append(privateBlocks, block)
		}
	}

	addrs, err := net.InterfaceAddrs()
	if err != nil {
		log.Info("Oops: " + err.Error() + "\n")
		os.Exit(1)
	}

	ip := "<IP_ADDRESS>"
	for _, a := range addrs {
		if ipnet, ok := a.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
			if ipnet.IP.To4() != nil {
				for _, priv := range privateBlocks {
					tip := net.ParseIP(ipnet.IP.String())
					if priv.Contains(tip) {
						log.Info("inside")
						ip = ipnet.IP.String()
					}
				}
				// if strings.Contains(ipnet.IP.String(), "<IP_ADDRESS>/16") {
				// 	ip = ipnet.IP.String()
			}
		}
	}

	log.Infof("Ip=%s", ip)

outputs
root@wopr:~# /boot/scanner -logtostderr
I1104 17:24:29.243671    3652 scanner.go:46] inside
I1104 17:24:29.243757    3652 scanner.go:46] inside
I1104 17:24:29.243780    3652 scanner.go:56] Ip=<IP_ADDRESS>
I1104 17:24:29.243826    3652 scanner.go:71] Scanner started
I1104 17:24:29.243847    3652 server.go:96] Starting server io.jbrodriguez.mediagui.scanner.wopr id io.jbrodriguez.mediagui.scanner.wopr-d06a9fb1-8342-11e5-b6a2-d05099660776
I1104 17:24:29.243953    3652 rpc_server.go:222] Listening on <IP_ADDRESS>:38084
I1104 17:24:29.244032    3652 http_broker.go:80] Broker Listening on <IP_ADDRESS>:47733
I1104 17:24:29.244103    3652 rpc_server.go:152] Registering node: io.jbrodriguez.mediagui.scanner.wopr-d06a9fb1-8342-11e5-b6a2-d05099660776
^CI1104 17:26:00.164628    3652 server.go:85] Received signal interrupt
I1104 17:26:00.164654    3652 rpc_server.go:196] Deregistering node: io.jbrodriguez.mediagui.scanner.wopr-d06a9fb1-8342-11e5-b6a2-d05099660776
I1104 17:26:00.166701    3652 server.go:101] Stopping server
root@wopr:~# /boot/scanner -logtostderr
I1104 17:26:14.362823    6063 scanner.go:46] inside
I1104 17:26:14.362917    6063 scanner.go:46] inside
I1104 17:26:14.362950    6063 scanner.go:56] Ip=<IP_ADDRESS>
I1104 17:26:14.363032    6063 scanner.go:71] Scanner started
I1104 17:26:14.363089    6063 server.go:96] Starting server io.jbrodriguez.mediagui.scanner.wopr id io.jbrodriguez.mediagui.scanner.wopr-0f129758-8343-11e5-b8a2-d05099660776
I1104 17:26:14.363253    6063 rpc_server.go:222] Listening on <IP_ADDRESS>:46509
I1104 17:26:14.363343    6063 http_broker.go:80] Broker Listening on <IP_ADDRESS>:48304
I1104 17:26:14.363398    6063 rpc_server.go:152] Registering node: io.jbrodriguez.mediagui.scanner.wopr-0f129758-8343-11e5-b8a2-d05099660776
^CI1104 17:26:22.837228    6063 server.go:85] Received signal interrupt
I1104 17:26:22.837351    6063 rpc_server.go:196] Deregistering node: io.jbrodriguez.mediagui.scanner.wopr-0f129758-8343-11e5-b8a2-d05099660776
I1104 17:26:22.840463    6063 server.go:101] Stopping server

Did you do go get -u? Perhaps the library was not rebuilt the first time. The behaviour suggests it wasn't updated.

That was it.
Thanks @asim !!


New Dialob composer does not open new forms

Expected behaviour: Upon creating a new form in the Admin view, the Composer should open an enable the user to start editing it.
Problem description: I created a new form this morning on 1 June, and the Composer can't seem to open it. The Composer is stuck in Loading.
Previously-existing forms open fine with no problems.
The form in question is here: https://demo.dialob.io/composer/jarvenpaa-feedback-form-jocelyn?tenantId=7c0161b5-2956-48c0-8aad-36b5763d560e

Resolved via #142


Update travis

Pull Request Test Coverage Report for Build 222

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 88.352%

Totals

Change from base Build 216:
0.0%

Covered Lines:
311

Relevant Lines:
352

💛  - Coveralls


feat: support pathname for redirect_uri

Just realized this won't quite work because the zod validation on that... Will look into a proper fix

Feel free to beat me to it. I have a feeling I'm missing some important pieces with this feature. I'm going to proceed without this feature for now.


EXPERIMENTAL: Update to elasticsearch-2.0.0-beta1-SNAPSHOT.tar.gz

WARNING!  Do not merge this; this is just to experiment with ES 2.0
bosh upload release https://logsearch-boshrelease.s3.amazonaws.com/boshrelease-logsearch-22%2Bdev.1.tgz

@dpb587 Could you try deploy this somewhere and see if it is going to cause us any problems.

https://www.elastic.co/blog/elasticsearch-2-0-0-beta1-released
http://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.0.0-beta1/elasticsearch-2.0.0-beta1.tar.gz

The following is currently being emitted when elasticsearch tries and fails to start...
==> /var/vcap/sys/log/elasticsearch/elasticsearch.stdout.log <==
ERROR: Parameter [-XX:HeapDumpPath=/var/vcap/sys/tmp/elasticsearch/heap-dump/]does not start with --

Hooray! Looking forward to trying this out

Suggest you wait til we have a chance to write good release notes.
On Wed, 13 Jan 2016 at 16:55, @dpb587<EMAIL_ADDRESS>wrote:

Hooray! Looking forward to trying this out
—
Reply to this email directly or view it on GitHub
https://github.com/logsearch/logsearch-boshrelease/pull/171#issuecomment-171362698
.


Retry cannot be cancelled

There is no way to cancel Retry FT handler.
Environment Details

Helidon Version: 2.4.0
Helidon SE or Helidon MP
JDK version: 15
OS: Linux
Docker version (if applicable):

Problem Description
The Single instance that comes from io.helidon.faulttolerance.Retry invoke method has a cancel() method. Calling this method should stop Retry handler, but it just cancels the internal CompletableFuture and keeps on with the retries.
Steps to reproduce

    public static ScheduledExecutorService EXECUTOR_SERVICE = Executors.newScheduledThreadPool(2);

    public static void main(String[] args) throws Exception{
        Single<Void> invoke = Retry.builder()
                .retryPolicy(Retry.JitterRetryPolicy.builder().calls(100).delay(Duration.ofSeconds(1))
                        .jitter(Duration.ZERO).build())
                .overallTimeout(Duration.ofSeconds(2000)).build().invoke(
                        () -> CompletableFuture.runAsync(() -> {
                            try {
                                System.out.println("Executing task");
                                Thread.sleep(1000);
                            } catch (Throwable e) {
                                e.printStackTrace();
                            }
                            throw new RuntimeException("Retry!");
                        }, EXECUTOR_SERVICE));
        invoke.exceptionallyAccept(Throwable::printStackTrace);
;
        Thread.sleep(2000);
        System.out.println("Calling cancel()");
        invoke.cancel();
    }

Also, shouldn't all FtHandler implementations actually cancel the provided CompletionStage (if it is a CompletableFuture)?
This is what SingleFromCompletionStage is currently doing for the "source" CompletionStage, however, none of the FtHandler implementations actually call it.
There are at least 2 groups:

FtHandlers that use DelayedTask, which actually uses its internal "resultFuture" CompletableFuture as a source for the SingleFromCompletionStage, which means the original CompletionStage will not be cancelled.
TimeoutImpl is actually using the provided CompletionStage as a source

    @Override
    public <T> Single<T> invoke(Supplier<? extends CompletionStage<T>> supplier) {
        if (!currentThread) {
            return Single.create(supplier.get(), true)
                    .timeout(timeoutMillis, TimeUnit.MILLISECONDS, executor.get());

so I would expect cancel() to be called on that stage in this case, but it is not.
So using FtHandler.invoke(() -> completionStage) works differently than simple Single.create(completionStage), including
Timeout.invoke(..) vs Single.create(...).timeout(...) - the former does not cancel the supplied stage while the latter does.
I've just stating my observations here as I'm not sure whether I understand the intended behaviour of the FtHandler.cancel(). The current behaviour is just confusing to me.

@martin-sladecek Let me start reproducible test, just to make sure I understand the intent here:

I'm assuming the overall timeout is just to make it bigger than 1 sec, and as such is not really part of the problem here. If so, I'll set it to a much larger number for my testing.

The example runs a task for 1 second, waits a second (delay) and then runs the first retry. From a quick run, the first retry is actually interrupted, but happens to print the message before entering the sleep. If there's another print after the try-catch, it is not shown. OTOH, I don't see the stack trace printed due to the interruption (hmmm).

@martin-sladecek I recall implementing SingleFromCompletionStage::cancel a while back for Fault Tolerance MP. I'll take a look, it may indeed be that we are not propagating calls to cancel the way we should in SE.

I'm assuming the overall timeout is just to make it bigger than 1 sec, and as such is not really part of the problem here. If so, I'll set it to a much larger number for my testing.
Right, overall timeout is there just so that other sleeps can be bigger.

The example runs a task for 1 second, waits a second (delay) and then runs the first retry. From a quick run, the first retry is actually interrupted, but happens to print the message before entering the sleep. If there's another print after the try-catch, it is not shown. OTOH, I don't see the stack trace printed due to the interruption (hmmm).
cancel() does not interrupt the processing, this is consistent with the CompletableFuture behaviour and is fine. What (I think) I saw was rather that after cancel, a second retry started immediately and I had tasks running in parallel, because the first one cannot be interrupted through CompletableFuture.

Is this the sort of use case that you have in mind?
Yes, exactly. SingleFromCompletionStage does this, but it seems like this code is not executed for FT handlers for some reason.

PR #3680
PR #3682


Support Http2.0

Support Http2.0

It seems it does partially support http2 when serving files BUT not when doing the restart.


Pause screen interaction is wonky on the web

You can pause with ESC, but that's also the button to regain pointer control on the web.
So essentially, you have to click ESC twice and it messes with your pointer.

Removed Wasm support


chore: drop Node < 10

BREAKING CHANGE: Drop Node < 10

A preview package of this pull request has been published with the tag node-10.
You can try it out by running the following command:
$ npm install @microstates/ember@node-10

or by updating your package.json to:
{
  "@microstates/ember": "node-10"
}

  Generated by :no_entry_sign: dangerJS against 15cee2604d5064420074e0ef69967e22e5aa5b40

A preview package of this pull request has been published with the tag node-10.
You can try it out by running the following command:
$ npm install @microstates/ember@node-10

or by updating your package.json to:
{
  "@microstates/ember": "node-10"
}

  Generated by :no_entry_sign: dangerJS against 15cee2604d5064420074e0ef69967e22e5aa5b40


rgw/admin: Add support for user bucket quota

Following APIs have been added to set and get bucket quotas for users.

SetBucketQuota
GetBucketQuota

Checklist

[x] Added tests for features and functional changes
[x] Public functions and types are documented
[x] Standard formatting is applied to Go code
[x] Is this a new API? Added a new file that begins with //go:build ceph_preview
[x] Ran make api-update to record new APIs

Credits: Pavel Boev

But if you want my approval at some point, just ping me.

@phlogistonjohn Now if you may.. 😐


[fix] Increase the timeout for restarting to 60s

Increasing the restart timeout to 60s.
When all workloads are restarted in the integration test, it takes more than 20s . (in local, it took around 25~30s)

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@ingwonsong: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
8dca7b2ebab5bdeaf6a0ef89f82d27ccd08805da
link
true
/test release-notes

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


[stdlib] Constraining AnySequence.init

... to only allow sequences where SubSequence.SubSequence == SubSequence. See swift-evolution proposal
for more details.

In fact, it was reviewed by @gribozavr in https://github.com/apple/swift/pull/220. Merging.


POAP claim button

Pending:

[x] List of POAPs
[x] Wait for round to finish
[x] set POAPS_LINKS in vercel pointing to the json with the poaps

Thanks, updated fixes.

I think we could remove the RESULTS on the top-right corner, since there's a button VIEW RESULTS on the homepage, meanwhile there originally is a RESULT tag on the navbar to lead to the /round/0/result page.
I suggest to display the RESULT on the original place, remove the top-right corner one, keep the button on the homepage.

I think we could remove the RESULTS on the top-right corner, since there's a button VIEW RESULTS on the homepage, meanwhile there originally is a RESULT tag on the navbar to lead to the /round/0/result page.
I suggest to display the RESULT on the original place, remove the top-right corner one, keep the button on the homepage.
Also it's confusing that the PROVE YOU VOTED WITH ZUPASS button is greyed out, for me it's not a clickable button.
And it's weird for me that after I clicked the PROVE YOU VOTED WITH ZUPASS does not work for me, I don't have a chance to enter my email

Makes sense about the button, The gray button for you was a bug, but should be fixed now.

Visit Preview

even I tried on the preview, it's purple for me at the beginning but greyed out after the website finish loading QQ

I found why my button is greyed out, since we remove the smartClient thing (Privy), so this line:
https://github.com/privacy-scaling-explorations/maci-platform/blob/d5ca930d178e1fb34c84c10a9547e6d4fb2c8dc7/packages/interface/src/contexts/Maci.tsx#L105
set the isLoading to true, however, since the signer is always undefined here:
https://github.com/privacy-scaling-explorations/maci-platform/blob/d5ca930d178e1fb34c84c10a9547e6d4fb2c8dc7/packages/interface/src/contexts/Maci.tsx#L67
the gatekeeperType would always be undefined, so the switch case would fall to default without setIsLoading(false), and the button PROVE YOU VOTED WITH ZUPASS would grey out if the isLoading is true.
So I would suggest to add a setIsLoading(false) here in the default switch case:
https://github.com/privacy-scaling-explorations/maci-platform/blob/d5ca930d178e1fb34c84c10a9547e6d4fb2c8dc7/packages/interface/src/contexts/Maci.tsx#L187

but still having this problem T_T

If you all didn't have this problem, then just ignore this part.


Softbodies do not work when run in headless mode.

Godot version:
Godot_v3.2.1-stable_x11.64
OS/device including version:
Linux (4.19.79-1-MANJARO)
Issue description:
Soft bodies do not work when Godot is run in headless mode.
Steps to reproduce:
(1) Set up a soft body in a new scene.
(2) Run the scene with rendering godot myscene.tscn and note the soft body falls from gravity. Print the first vertex position of the mesh and it will update accordingly.
(3) Run the scene without rendering godot --disable-render-loop myscene.tscn and soft bodies will not update (e.g. the vertex position of the mesh is constant). (Can also run the server/headless version of Godot and you will get the same result.)

This may be caused by this: https://github.com/godotengine/godot/blob/master/scene/3d/soft_body_3d.cpp#L461-L472
Can you please explain your use case and why you need to disable the render loop?

Ah cool, thanks for the pointer. I'll take a look and see what I can find from this.
My use case is for running Godot headlessly on a server. The core of the app I'm running measures the soft body dynamics in Godot and I can't have rendering in order to run this on the server.

If the problem is what I posted above, is probably enough emit that signal in the placeholder visual server (used when compiled in headless mode)

@levifussell Please upload a minimal reproduction project to make this easier to troubleshoot.


Rename id and license class properties

Problem Statement
id and license are built-in Python objects. PR #203 dismisses them but for clarity, they need to be renamed to something else. image_id and pkg_license` sounds like the most straightforward thing.
Describe the Proposal
Rename properties id and license in all classes. Then rename the references throughout the code.

Hi , is it still an open issue? i would like to work on it

@ManishaTripathy sure, go for it! Here's what you'll need to do:

Find within tern/classes all classes that have a property called id (I think Image is the only one that has it). Rename it to something that makes sense
Replace all places in the test for that class in tests. Run the tests and make sure they pass.
Replace all places in the code where that property occurs. Make sure you test out your changes with some docker images
Repeat for classes with license as the property (I think package is the only one that has that for now)

Feel free to submit 2 PRs - one for the id replacement and one for the license replacement.
Don't hesitate to ask any questions. Thanks for working on this!

I see id in docker_image.py and image.py. Do we need to replace both or just image_py?
After replacing, we need to run only the changed tests or all tests in general?

@ManishaTripathy good catch! Please replace id in both image.py and docker_image.py. Hold off on the tests. Let me see if they pass now.

@ManishaTripathy currently only test_class_image.py passes. test_class_docker_image.py needs some work still so no need to run that one. The Travis build should cover that case.

Resolved in #231 and #233


Clicking on the class of the method in the method coder should spawn the method when it exists

Clicking on the class of a method in a method coder (for example, in the debugger), should spawn the method when it exists.


Be more explicit about non-vectorized functions

Currently most osf_*() functions are not vectorized. That is, they cannot handle multiple inputs simultaneously. For example, you can only upload 1 file at a time.
When users provide arguments with a length > 1 we should warn them that inputs 2:n are ignored.

Fixed in #8


[Bug]: tap to focus while zoomed out causes crash

Version
2.5.2
Environment that reproduces the issue
Samsung Galaxy S22
RTMP/SRT/... Server
Not streaming
Audio configuration
N/A
Video configuration
N/A
Is it reproducible in the demos application?
Yes
Reproduction steps
zoom out (zoom ration < 1)
tap on a region outside of the natural zoom=1 rectangle
Expected result
to auto-focus on the point tapped on.
Actual result
Crash
Additional context
The proximate cause of the crash is that inside FocusMetering.startFocusAndMetering (CameraSettings.kt) the cropRegion returned from Zoom.getCropRegion() has an x,y that are negative (bc zoomRatio < 1) that gets passed to getMeteringRectangles, which then attempts to create a metering rectangle with negative boundaries. MeteringRectangle throws an exception: "rect.left must be nonnegative"
Relevant logs output
No response

Oh nice one.
Could you provide the full exception?
Now I wonder, what will be the best answer to this issue.
Should we clamp focus rectangle >= 0?
Or should we cancel focus when we detect the issue?
Or somehow synchronize everything?

The relevant exception stack trace:
"main@15148" prio=5 tid=0x2 nid=NA runnable
  java.lang.Thread.State: RUNNABLE
	  at com.android.internal.util.Preconditions.checkArgumentNonnegative(Preconditions.java:324)
	  at android.hardware.camera2.params.MeteringRectangle.<init>(MeteringRectangle.java:138)
	  at io.github.thibaultbee.streampack.utils.FocusMetering$Companion.getMeteringRect(CameraSettings.kt:982)
	  at io.github.thibaultbee.streampack.utils.FocusMetering$Companion.getMeteringRectangles(CameraSettings.kt:926)
	  at io.github.thibaultbee.streampack.utils.FocusMetering$Companion.access$getMeteringRectangles(CameraSettings.kt:848)
	  at io.github.thibaultbee.streampack.utils.FocusMetering.startFocusAndMetering(CameraSettings.kt:719)
	  at io.github.thibaultbee.streampack.utils.FocusMetering.onTap(CameraSettings.kt:816)
	  at io.github.thibaultbee.streampack.views.PreviewView.performClick(PreviewView.kt:144)
	  at io.github.thibaultbee.streampack.views.PreviewView.onTouchEvent(PreviewView.kt:129)
	  at android.view.View.dispatchTouchEvent(View.java:16212)

Great question, I guess in the best of all worlds it would "just work" but that seems difficult. And also, in my specific case on an S22, what's happening under the covers, I believe, is that the camera is automatically switching to the wide-angle lens, which, on my device, is a fixed-field lens and thus, no focusing is possible.
I don't really see a clear best option, but I am certainly no expert. On my device, simply canceling the focus would be fine, since the fixed lens can't focus anyway. In any case you could argue that this is both easy and reasonable. I guess the second choice would be clamping. If it were me, I would cancel and log a message that leads the developer to understand that if they want, they could clamp it themselves.

I tried to reproduce this issue in the demo but I could not.
Does it happen when you zoom in or is it just when you zoom out? Have you changed something in the code?
I didn't know it was possible to have zoom < 1.
Unfortunately I don't have a device to test this.
Could you add log in the FocusMetering class? Could you also log availableRatioRange and everything you find usefull?

Could you test https://github.com/ThibaultBee/StreamPack/pull/98?

It does not crash when I zoom out, and there is lots of
2024-02-06 14:19:03.044  6781-6781  ViewRootIm...nActivity] io....thibaultbee.streampack.sample  I  ViewPostIme pointer 1
2024-02-06 14:19:03.056  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  cropRegion: Rect(0, 0 - 4080, 3060)
2024-02-06 14:19:03.056  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  adjustedPoint: PointF(0.6418467, 0.423781)
2024-02-06 14:19:03.056  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  size: 0.16666667
2024-02-06 14:19:03.056  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  centerX: 2618 - centerY: 1296
2024-02-06 14:19:03.056  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  width: 680.0 - height: 510.0
2024-02-06 14:19:03.057  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  focusRect1: Rect(2278, 1041 - 2958, 1551)
2024-02-06 14:19:03.057  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  focusRect2: Rect(2278, 1041 - 2958, 1551)
2024-02-06 14:19:03.057  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  cropRegion: Rect(0, 0 - 4080, 3060)
2024-02-06 14:19:03.057  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  adjustedPoint: PointF(0.6418467, 0.423781)
2024-02-06 14:19:03.057  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  size: 0.25
2024-02-06 14:19:03.057  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  centerX: 2618 - centerY: 1296
2024-02-06 14:19:03.057  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  width: 1020.0 - height: 765.0
2024-02-06 14:19:03.058  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  focusRect1: Rect(2108, 913 - 3128, 1678)
2024-02-06 14:19:03.058  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  focusRect2: Rect(2108, 913 - 3128, 1678)
2024-02-06 14:19:03.206  6781-6781  GestureDetector         io....thibaultbee.streampack.sample  I  handleMessage TAP

When I tap outside of the 1x zoom rectangle, I see:
2024-02-06 14:21:13.480  6781-6781  ViewRootIm...nActivity] io....thibaultbee.streampack.sample  I  ViewPostIme pointer 1
2024-02-06 14:21:13.493  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  cropRegion: Rect(0, 0 - 4080, 3060)
2024-02-06 14:21:13.493  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  adjustedPoint: PointF(0.013833943, 0.6899047)
2024-02-06 14:21:13.493  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  size: 0.16666667
2024-02-06 14:21:13.493  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  centerX: 56 - centerY: 2111
2024-02-06 14:21:13.494  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  width: 680.0 - height: 510.0
2024-02-06 14:21:13.494  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  focusRect1: Rect(-284, 1856 - 396, 2366)
2024-02-06 14:21:13.494  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  focusRect2: Rect(0, 1856 - 396, 2366)
2024-02-06 14:21:13.494  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  cropRegion: Rect(0, 0 - 4080, 3060)
2024-02-06 14:21:13.495  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  adjustedPoint: PointF(0.013833943, 0.6899047)
2024-02-06 14:21:13.495  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  size: 0.25
2024-02-06 14:21:13.495  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  centerX: 56 - centerY: 2111
2024-02-06 14:21:13.495  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  width: 1020.0 - height: 765.0
2024-02-06 14:21:13.495  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  focusRect1: Rect(-454, 1728 - 566, 2493)
2024-02-06 14:21:13.495  6781-6781  >>TEST                  io....thibaultbee.streampack.sample  E  focusRect2: Rect(0, 1728 - 566, 2493)
2024-02-06 14:21:16.767  6781-6781  ViewRootIm...nActivity] io....thibaultbee.streampack.sample  I  onDisplayChanged oldDisplayState=2 newDisplayState=2

Logs were unintentional.
I just removed there.

Released in 2.6.0


The response speed is getting slower and slower, whether I turn on the proxy or not

The response speed is getting slower and slower, regardless of whether I open the proxy or not, it was very fast at the beginning. This is the link I built https://chatbot-ui-chi-two.vercel.app/zh. May I ask how to solve this problem

Yeah, I noticed that the generation is way slower than standard API calls. It's not a huge problem, but it's still annoying. I hope someone will resolve it because the project is really good.

I have the same issue.


TP2000-1099 Add 'Move to top' and 'Move to bottom' transaction reordering actions

TP2000-1099 Add 'Move to top' and 'Move to bottom' transaction reordering actions
Why
To move a transaction to the top or bottom of a workbasket currently requires pressing 'Move up' or 'Move down'  buttons many times. The addition of 'Move to top' and 'Move to bottom' actions would make this easier for users to achieve.
What

Adds 'Move to top' and 'Move to bottom' actions to transactions listed in Transaction Order tab
Handles in the view setting the transaction order of the moved transaction to be either first or last in the workbasket, updating other transactions accordingly
Refactores transaction reordering form action unit tests into a single parametrised test

Codecov Report
Attention: 4 lines in your changes are missing coverage. Please review.

Comparison is base (798ae96) 92.80% compared to head (36c774c) 92.81%.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1087   +/-   ##
=======================================
  Coverage   92.80%   92.81%
=======================================
  Files         460      460
  Lines       34941    34968   +27
  Branches     2674     2677    +3
=======================================
+ Hits        32426    32454   +28
+ Misses       1992     1988    -4
- Partials      523      526    +3

Files
Coverage Δ

workbaskets/tests/test_views.py
96.77% <100.00%> (-0.02%)
:arrow_down:

workbaskets/views/ui.py
86.08% <87.87%> (+0.89%)
:arrow_up:

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


Directly returning Task

This isn't a bug, but a note to @lukemurray 🙂
I noticed in https://github.com/EntityGraphQL/EntityGraphQL/commit/61258c0c8c1f4d3a31d7dc4ea9a4502d5446662c#diff-45a6b5c201bf9694f68b83e3ce510c347857781e0fe570cc308f4ce8306634cbR22 that some of the code has been changed from something like this:
public async Task<object?> ExecuteMutationAsync<TContext>(...)
{
	try
	{
		return await MutationField.CallAsync(...);
	}
	catch (EntityQuerySchemaException e)
	{
           ...
        }
}

to this:
public Task<object?> ExecuteMutationAsync<TContext>(...)
{
	try
	{
		return MutationField.CallAsync(...);
	}
	catch (EntityQuerySchemaException e)
	{
           ...
        }
}

(That is, async has been removed from ExecuteMutationAsync())
With this change, the code will compile and run as expected, but there's a subtle difference: In the first example, if an exception is thrown inside of MutationField.CallAsync(), the stack trace in the exception will look like this:
MutationField::CallAsync()
GraphQLMutationField::ExecuteMutationAsync()
...
MyUserCode()

In the second example, where the async keyword has been removed, the stack trace will no longer include GraphQLMutationField::ExecuteMutationAsync() , and will look like this:
MutationField::CallAsync()
...
MyUserCode()

Essentially, removing async and directly returning the Task instead of awaiting it is results in slightly improved execution time but can make debugging more difficult, because some methods won't show up in the stack trace when an exception is thrown.
Just FYI! 🙂

Thanks, I did understand that. I Was opting for slightly improved execution time (haven't measured it though) and having the compiler not generate extra unneeded async state machine code.
Happy to be convinced otherwise.
Does MS / Dotnet have a suggested way? I couldn't find anything.

I think that as long as you're aware of the implications, it's probably fine 🙂  Our team has gone back and forth on this. We're currently opting for just calling async everywhere, but that's partly because our code isn't really performance critical.
Here's a recommendation by David Fowler, which I suppose is sort of, kind of official, haha: https://github.com/davidfowl/AspNetCoreDiagnosticScenarios/blob/master/AsyncGuidance.md#prefer-asyncawait-over-directly-returning-task

By the way, a few other suggestions, in case they're helpful 🙂
I'd recommend adding <AnalysisMode>Recommended</AnalysisMode> to each .csproj file. Without this, only the "minimal" C# warnings are shown, for backwards compatibility reasons.
Adding <ImplicitUsings>enable</ImplicitUsings> to each project is also nice, as it cuts down on repetitive using statements a bit 🙂
Finally, some analyzers that you might be interested in:

https://www.nuget.org/packages/Microsoft.VisualStudio.Threading.Analyzers/
https://github.com/DotNetAnalyzers/IDisposableAnalyzers
https://github.com/semihokur/AsyncFixer

If you use the AsyncFixer analyzer, it has an AsyncFixer01 warning that's for exactly what we're discussing here: Whether or not to warn when async is used "unnecessarily". By default, it's turned on, but we turn it off via .editorconfig:
# AsyncFixer01: Unnecessary async/await usage
dotnet_diagnostic.AsyncFixer01.severity = none

thanks for these

Np! 🙂


Network (Do not merge yet)

Replacement for the existing WED implementation to support planar and non-planar networks.
Features:
Network Extraction
Digitized and Graph based representations
Contiguity based adjacency (W)
Access to PySAL ESDA functionality which requires a W (LISAs)
Point Snapping
Network constrained distance computations
Pairwise within a single pattern
Pairwise between a source and a destination pattern
Counts per Edge (Digitized or Graph)
F, G, and K Functions

Todo
Should (Must) Have
Documentation
Edge segmentation
Tests
Nice to have
Distance Band and Continuous W Generation

Jay, can you make a style change. Line 37 in network.py has the parameter "in_shp". In the rest of pysal (that I checked) uses "shapefile".

In the future the flow should probably have been:
fetch upstream master and branch -> merge upstream master into upstream branch -> PR -> edit local branch in fork -> PR into upstream branch
This was modify branch -> merge master (fixing conflicts) -> PR into upstream branch
The former should have all of the merge items in one commit and all of the new code / modifications in another commit.  Right now, these are mixed...

Going to close.  Going to merge in using the 1st method, above.


separation of users by roles.

Implement the service work with the database(mongodb)

https://github.com/smart-cloud/RocketJoe/commit/a02ef7d5ae53241423b647356f1fc7a003228129


Device list no longer appears on node-red

Hello,
I wanted to add a new device to my account and I just saw that on Node-red the list of devices in my account no longer appears. Previously created devices still work but I cannot select a new one.
Can you help me please?

I assume that the list still shows all the devices on the website?
What happens if you hit the refresh button next to the drop down?

On the website everything seems normal

If I press the refresh button it doesn't change anything.
On nodered there is nothing written in debug.
Thank you for your quick reply

No, not the debug sidebar, the actual console logs output from Node-RED.
It should log if it fails to pull down the list of devices
You can also try removing the comment from the start of line 327 of the alexa.js file to get a better error message.

Ok I found the logbut he does not move when I refresh the device list.
If I uncomment line 327, nodered does not start anymore.

How are you looking at the logs?
Also there must be an error if Node-RED fails to start with the // removed from that line (which REALLY shouldn't cause it not to start)

I got this error removing the // from line 327

Change line 327 to
console.log("err: ", err);

I have no more errors - nodered is launching now .
When I update the list of devices I have this error in the log:
err: Error: certificate has expired

What version of NodeJS and Node-RED are you running?

Actually it's in the log you sent 8.17.0 which is VERY VERY out of support. NodeJS has a built in set of root CA certificates and the CA cert required to verify the connection to my server is expired.
You will need to upgrade to a supported version of NodeJS (You should probably upgrade Node-RED as well)
You can try running with the following environment variable exported:
NODE_TLS_REJECT_UNAUTHORIZED=0

Which might work as a temp fix, but this is not something you should run in a "production" environment as it basically turns off all the protection TLS grants.
https://stackoverflow.com/questions/69400610/axios-fails-with-certificate-has-expired-when-certificate-has-not-expired

Ok thank for your help


Verification of npmjs repo

Hello... I was hoping to get some verification if https://www.npmjs.com/package/octicons is the official npmjs registry distribution of this project.
If so, it would also be appreciated to have this mentioned in the README.md. TIA

Hi @Martii,
That package was published by a user on our behalf without permission, but transferred it to me. Due to the confusion showing a non-GitHub publisher I've reached out to NPM to see if that can be changed. If it's possible to change it then, yes, that'll be the official distribution. If not, I may republish. I'll report back here once they get back to me.

Thanks. I didn't recognize the username from any contributor here which raised an eyebrow. If it helps any for intel I ran into this situation last year on another project at t0m/select2-bootstrap-css#51

Hi @cameronmcefee,
Do you have any update on this? I tried switching my Bower dependencies over to NPM today, and found that the NPM version for Octicons isn't up-to-date. I'd love to be able to eliminate Bower from my toolchain. Thanks!

Sorry, never published a npm package before. It looks like the issues around identity weren't any sort of ownership thing but rather just that I didn't personally publish it. I assumed the versioning was automatic based on the tags the way bower does it, but apparently I have to manually publish.
That is to say, I've published 2.4.1, which now has my name associated with it, so I think everything is cool.

Looks good, thanks!

@cameronmcefee
Last I tested on npmjs.com they keep all versions... so it won't allow you to replace one. e.g. strict semver increment with $ npm publish... although you can decrement to something that doesn't exist. Thanks for doing that... will be nice to have it all in one chunk there as git urls take longer to download.


Add methodology for Notional Finance

Notional Finance methodology

@fortysevenlabs let us know if you have questions or comments

👍  There are definitely some nuances in the way Notional Finance has implemented their markets/pools so I expect some discussion. Will reach out to you folks on discord for faster iteration when I run into the questions.
@SerenityFund can you DM me your discord handle? Or, let me know if you prefer other ways of comms.


Embed multiple views into parent

First of all: This is a really great example showing the "power" of cordova plugins. I really like the idea!
I was wondering if, some day, it could be possible to embed multiple (small) views within the parent webview?
Some potential use case: I am displaying external content within my app. Currently, this is done using an iframe.  But this method has some drawbacks: Imagine I want to use pinch-to-zoom gestures. As soon as I add user-scalable=no to my viewport meta tag (which is absolutely necessary in an app wanting to feel "native"), all iframes cannot be zoomed as well.
By embedding a second webview into the page, I could display external content just like it is done in every other native application. With all the benefits of having a native view instead of some iframe workaround.
Let's say I am building an email reader in PhoneGap. Have a look at how content is displayed in iOS: https://d31v04zdn5vmni.cloudfront.net/blog/wp-content/uploads/2014/09/email-aa-iphone6-plus.png
Users are able to scroll, zoom, ... this view smoothly. Being able to implement some similar function into my PhoneGap app would bring endless possibilities with native performance instead of some JS hacks :smiley:

This is what we would need in our application too. I was excited, when I saw this plugin was released. This plugin was supposed to fix our problems of not being able to use iframes.
We would need to be able to control the size of the 2nd web view. Also ability to close the 2nd web view from the primary web view is required.
We are trying to embed a web page, that doesn't allow iframes so 2nd web view is our only chance.

This project will not be updated.
I do like the ideas though...
If you still want these features please post them at https://github.com/purplecabbage/phonegap-plugin-multiview/issues


Radzen Controls not working on .Net Maui Blazor App Ios Device in Release Mode

Radzen controls are working fine on Web and Android both in Debug and Release Configurations but they are not working on ios device in release mode in .net 7 , app crashes in release mode with Radzen UI controls , i am using visual studio 2022 preview 17.5 version  targets framework  .net 7 .
it would be of great help if someone would come up with the solution to this issue ASAP.
thankyou

I have been able to get Radzen controls working by enabling the interpreter for Release builds.
<PropertyGroup>
  <UseInterpreter>true</UseInterpreter>
</PropertyGroup>

References
https://github.com/dotnet/maui/issues/13019

Closing as there doesn't seem to be anything we can do to address that.


MQ Messages result in Duplicate Kafka Messages

Kaiser has been running long-term volume tests with the IBM MQ Source Connector. Occasionally we'll see one MQ Message produce 2 Kafka Messages. When this happens we see this in the logs.
Rolling back in-flight transaction
That would indicate that the session was rolled back, and any uncommitted messages were placed back on the queue, where they could be re-read.  The code looks like this:
public void commit() {
    log.trace("[{}] Entry {}.commit", Thread.currentThread().getId(), this.getClass().getName());

    if (!connectInternal()) {
        return;
    }

    try {
        if (inflight) {
            inflight = false;

            if (inperil) {
                inperil = false;
                log.debug("Rolling back in-flight transaction");
                jmsCtxt.rollback();
            }
            else {
                jmsCtxt.commit();
            }
        }
    }
    catch (JMSRuntimeException jmse) {
        log.error("JMS exception {}", jmse);
        handleException(jmse);
    }

    log.trace("[{}]  Exit {}.commit", Thread.currentThread().getId(), this.getClass().getName());
}

The inPeril flag can be set here.
        if (m != null) {
            inflight = true;

            // We've received a message in a transacted session so we must only permit the transaction
            // to commit once we've passed it on to Kafka. Temporarily mark the transaction as "in-peril"
            // so that any exception thrown will result in the transaction rolling back instead of committing.
            inperil = true;

            sr = builder.toSourceRecord(jmsCtxt, topic, messageBodyJms, m);
            inperil = false;
        }

I checked the threads doing the work, and in our configuration it looks like multiple-threads can collide on the value of inperil? Our duplicates are caused by messages making it to Kafka, but then that batch being rolled back in MQ and re-read.
A fragment of our configuration looks like this. tasks.max > 1 would introduce additional threads?
{
"name": "MQConnector_DAKPXB30_QL.KP.AUDIT.LFS.KAFKA.EVN",
"config": {
"connector.class": "com.ibm.eventstreams.connect.mqsource.MQSourceConnector",
"tasks.max": "3",
"topic": "TP.MQ.TO.SPK.LFS.AUDIT",
"mq.connection.name.list": "szaqiexx.ssdc.kp.org(51446)",
"mq.queue.manager": "DAKPXB30",
"mq.channel.name": "EISDS.SVRCONN",
"mq.queue": "QL.KP.AUDIT.LFS.KAFKA.EVN",
"mq.record.builder": "com.ibm.mq.kafkaconnect.builders.DefaultRecordBuilder",
"mq.message.body.jms": "true"
}
}

I don't think it's related to the number of tasks, but I do think it's a threading problem. I can see what's happening and I'm thinking best how to fix it.


Allow scan public repos without PAT

Hello,
Awesome tool!
It would be great if scanning/monitoring for public repos will not require GITHUB_PAT.

Hi @benner ,
Thanks, GitHub only allows 60 requests per hour for unauthenticated API requests, The tool will be more unstable while scanning the larger organizations without the PAT. Let me know your thoughts

For my case it's enough. Maybe this can be extra flag for this...

@benner, this feature will be released in the attached PR.


Random Story Generator (Python program)

Describe the project you want to add with tech stack
It's a python mini-project where upon execution, it will generate a random story.
Expected behavior
It should generate a random story after the execution of the python program
Screenshots (optional)
None
Additional context (optional )
PR for HacktoberFest 2022

Hi @pranjay-poddar, kindly assign this issue to me.
Will be submitting a PR soon for this issue :), thanks


In mac, should be install docker first to have better terminal command support?

Hi, I installed kitematic only in my machine and now I can't access the docker commands through my normal terminal. So, is it ok if I install docker seperately first and then install kitematic? Will it use the system installed docker or install it's own version?

Hello @THPubs We recommend you install Docker for Mac:
https://www.docker.com/community-edition#/mac
Kitematic is a UI that doesn't install Docker but leverages the installed version.


Testing patterns

Comments in https://github.com/istio/istio/pull/2022 have raised the question of what our patterns and expectations are for Golang testing patterns, specifically around standardization within the Istio project.

I'd also like the chance to discuss the relative merits of different testing patterns.  We each have our own preferences, I'm sure.

cc @kyessenov @ZackButcher @geeknoid

So I don't have a strong opinion about which set of frameworks or patterns we use across the project; my one concern is that we pick a small subset and use them consistently everywhere. My overriding concern is that we not increase the maintenance burden on the project's maintainers by proliferating different patterns across the codebase.

I'm also fairly agnostic to the specific choice, I want consistency and
convergence.
Now, given different frameworks, I find the built-in go stuff pretty
rudimentary and lacking in features. But the table-driven test model we're
using in most places is reasonably concise and easy to understand and
extend. And the integration with GoLand is very nice.
Bottom line for me is that there is inertia in how we're done things. To
warrant spending resources on changing to a new test framework for the
project would need to demonstrate a substantial qualitative improvement
over the status quo.
On Fri, Dec 15, 2017 at 12:15 PM, Zack Butcher<EMAIL_ADDRESS>wrote:

So I don't have a strong opinion about which set of frameworks or patterns
we use across the project; my one concern is that we pick a small subset
and use them consistently everywhere. My overriding concern is that we not
increase the maintenance burden on the project's maintainers by
proliferating different patterns across the codebase.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/issues/2202#issuecomment-352101204, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AVucHYths8p7ynK2ew03ylbM95kKEe2lks5tAtNqgaJpZM4RD4eS
.


move away from 'success' and 'error' on notification.status and use an Enum instead

Overview

The goal of this issue is to improve the overall code quality. In the code snippets below, we can see that notification.status is assigned two values 'success' and 'error'.
https://github.com/telosnetwork/app-telos-native/blob/b05f258546044e983bdfccab32b768298ff4fc34/src/store/tokens/actions.js#L77
https://github.com/telosnetwork/app-telos-native/blob/b05f258546044e983bdfccab32b768298ff4fc34/src/store/tokens/actions.js#L80
To reduce the possibility of errors in the future, we would like to move these strings to an Enum that will map all the possible values for notification.status.
Acceptance criteria

Create an Enum for notification.status
The Enum must contain all possible values for notifications.status
notifications.status must use the Enum instead of the strings everywhere

Technical considerations

Tasks

This issue was originally created in the app-telos-native repo and later migrated to this repo. But the thing is that it does not apply here because the notification process is handled in a different way.
In app-telos-native we have a centralized solution for notification and it uses a status (which currently is a string and should be an Enum) to set the modal colors and icons.
https://github.com/telosnetwork/app-telos-native/blob/b05f258546044e983bdfccab32b768298ff4fc34/src/store/tokens/actions.js#L106-L110
https://github.com/telosnetwork/app-telos-native/blob/b05f258546044e983bdfccab32b768298ff4fc34/src/App.vue#L18
But the telos-wallet has a different approach. It has a single point to handle and show any error.
https://github.com/telosnetwork/telos-wallet/blob/master/src/boot/errorHandling.js#L4-L21
and is used like this
https://github.com/telosnetwork/telos-wallet/blob/master/src/components/LoginButton.vue#L279-L281
And the normal message is handled using the native quasar notify() service like this:
https://github.com/telosnetwork/telos-wallet/blob/master/src/pages/components/balance/Exchange.vue#L508-L511
This issue needs more grooming

@Viterbo @donnyquixotic would make sure every error on web-wallet uses errorNotification be a more coherent acceptance criteria for this project?
https://github.com/telosnetwork/telos-wallet/blob/84b2a0e14342ed6f692e5fb98211e8cd5952f31e/src/boot/errorHandling.js#L4-L21
Then, this would either call errorNotification or another function would be created if the different treatment makes sense.
https://github.com/telosnetwork/telos-wallet/blob/84b2a0e14342ed6f692e5fb98211e8cd5952f31e/src/pages/components/balance/Exchange.vue#L508-L511


Cannot use RadzenComponent.Element in inheritance

Hi guys!
I'm trying to make my oun component inherited from RadzenComponent. Element property has "internal set". So using @ref="@Element" generates compile errors.

This issue does not follow any of the accepted templates as well as your other issues. Please address that.


tooltip_templates: Remove unused data-view-code attribute.

This attribute is only usable on clickable targets as per the existing click handler logic which these tooltips are not.

You missed one on inbox in the same file, fixed and merged.


Add 30 seconds of code

Description
Add 30 seconds of code
Checklist
[x] My change follows the Contributing Guidelines
[x] I have added only one new link to the list.
[x] I have sorted the link alphabetically under the related section.

Thanks for your contribution, kindly review the contributions guidelines


When the number of labels is more than 15, colors are difficult to distinguish

The UI of doccano is very beautiful!
I have a project of sequence labeling with many labels, about 20 labels. doccano use COLOR to distinguish labels, but it is difficult to distinguish labels when there are too many labels.
I know I can use shortcut to label them, but when I review the labeled sequences to correct them, it is very difficult to distinguish labels.

There may be one way to solve that:
Add label names around the sequences text, left or above it.

Just having the same problem! I was thinking about adding a tooltip under the annotations:

Thank you , clarus. I think this style may be better: https://prodi.gy/demo?view_id=pos_manual

Ah OK, I did not want to make too much change to the code and the presentation.


[Feature request] Add suport for select an array of database names for backup only

How I can do for only backup 1 database without adding new databases to ignoreDatabases array everytime I create a new database?.

This is a good idea! I intend to rewrite the entire class in the (hopefully) near future (pdo or mysqli) and will look at implementing this option.


Bump Dependencies #10304563477

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/10304563477

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


[WIP] Add script to get external assets for workloads

Note:
WA's HttpGetter class downloads assets to ~/.workload_automation/dependencies/__remote/<workload>, while workloads seem to check for dependencies in ~/.workload_automation/dependencies/<workload> or their own working directory.
Currently testing this against a workload with dependencies and will update the PR with the outcome.

WA's HttpGetter class downloads assets to ~/.workload_automation/dependencies/__remote/, while workloads seem to check for dependencies in ~/.workload_automation/dependencies/ or their own working directory.

Both locations are checked by different getters at different stages. The latter location takes priority over the former. This is done this way so that HttpGetter doesn't override assets that have been provided manually.

This should be implemented as a command rather than a script, as this concerns core WA functionality.

This should be implemented as a command rather than a script, as this concerns core WA functionality.

The reasoning behind having it as a script is so that someone (pip?) could run this as part of the initial setup to get all external workload assets and not need to do it on-demand. For example, if the WA installation will later be run on a device not connected to the internet.
Alternatively, it could also be automatically run as a post-install script, though I'm not familiar whether Python packaging tools (pip/setuptools) support that.

The fetching of all assets should not be done as part of installation, or at all in any kind of automatic way. WA will already automatically fetch assets on as-needed basis -- that is what HttpGetter is for. That way only the assets that that user needs will be fetched, transparently to the user.
There may be situations when when the user would want to fetch all or a subset of the assets in advance (e.g. when planning to be using WA without access to the Internet), so the ability to pre-fetch assets is usefully, but it needs to be an explicit decision taken by the user and not the default mode of operation.


[wip/demo/do not merge] dramatically improve error messages in many c…

…ases
two changes (should be landed as two pull requests i suppose):

Lexer::ReadIdent() now sets last_token_ before returning false, like
Lexer::ReadEvalString() does.  So all "expected identifiers" and
things that call ReadIdent (pool parser, rule parser, let parser,
code parsing the rule name after a : in a build line) now point
the "^ near here" at what was there instead of what we expected
instead of the previous token. (XXX: ...yeah?)
If last_token_ is a newline, the snippet would usually show an empty
line. In that case, show the previous line instead, which is the line
where the error would have been.

See the manifest_parser_test diff for what this changes.  Almost
everything is much better. Two things get slightly worse (the "expected
'command =' line for rules is now at the end of the rule line instead
of after it where it goes, and the same for the 'depth =' line for
pools). That's not ideal, but also not horrible.
One thing is completely busted for reasons I don't understand yet; I
need to fix that first before this can more ahead.

Landing the first part, which is 100% better, at #1415.


teamekGen cache and gregor cache busting

Cache latest teamEK generation for 5 minutes, but clear the cache if we get a gregor notification saying a new teamEK has been generated
depends on https://github.com/keybase/keybase/pull/2256
cc @mmaxim

cc @keybase/react-hackers small js change


Full website

I have worked on the full web branch where I have created three pages home, calculator and quote. I have used react-router to display all three pages as a SPA whereby I can navigate to the other pages without refreshing the whole browser. I have also used basic styling to implement styles in the components

Thank you so much
On Tue, 12 Jul 2022, 20:00 Temitope Ogunleye, @.***>
wrote:

@.**** approved this pull request.
STATUS: APPROVED ✔
Hi @tingamapuro04 https://github.com/tingamapuro04,
Your project is complete! Great job for nailing it right on the first
attempt 🥇. There is nothing else to say other than... it's time to merge
it 🍾🚢 [image: :shipit:] . Congratulations! 🎉💯🌟
[image: congratulations]
https://user-images.githubusercontent.com/52934128/163691476-087b4b9c-825b-40a3-85a1-d1bde44ffa53.gif
To highlight 🍾

All linters are passing ✔
Followed Github flow ✔
Professional README file. ✔

[Optional] suggestions:

From now on, I kindly suggest that you please make use of imperative
mood in the subject line for your commit messages.
❌ Wrong
[image: image]
https://user-images.githubusercontent.com/52934128/178550093-6417daec-8448-4d82-8918-2397cb73d64b.png

Good Commit Messages:

Add fix for dark mode toggle state
Update README file.
Add styles to h1.
Please refer to this article: please read it and apply it in your work
from now on: Professional repo - basic rules
https://github.com/microverseinc/curriculum-transversal-skills/blob/main/documentation/articles/professional_repo_rules.md
;
Every comment with the [OPTIONAL] prefix is not crucial enough to stop
the approval of this PR. However, I strongly recommend you to take them
into account as they can make your code better.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something
is not 100% clear.
As described in the Code reviews limits policy
https://microverse.zendesk.com/hc/en-us/articles/1500004088561 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 https://airtable.com/shrQAqnBwek5a0O0s.
—
Reply to this email directly, view it on GitHub
https://github.com/tingamapuro04/mathemagician/pull/5#pullrequestreview-1036173565,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATZCTJ26IBMUPXCYA2JJ5ZLVTWQCVANCNFSM53LV764Q
.
You are receiving this because you were mentioned.Message ID:
@.***>


Implement parameter for output directory

It should be possible to decide where the output of encryption/decryption should be placed.

Together with this I think about removing encrypt.sh and decrypt.sh and replace them with one or two config files. In this config file(s) you could set the options you want to use and then call pgpbackup-encrypt and pgpbackup-decrypt directly.
Console arguments should override configurations from the config file. Another path to the config file should be settable through an option (e.g. -c | --config).
If I use one config file, the encryption should encrypt the original config and remove all params for encryption from an unencrypted version.

https://gitlab.com/NicoVIII/PGP-Backup/issues/21


feat(ui): allow to toggle auto-scroll on debug window

Fixes #3931

Pull Request Test Coverage Report for Build<PHONE_NUMBER>9
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 21.021%

Totals

Change from base Build<PHONE_NUMBER>2:
0.0%

Covered Lines:
3925

Relevant Lines:
19852

💛  - Coveralls


import into gemini fails for some variants

I upgraded to bcbio-nextgen,0.8.8a0-b2fb8ba from 0.8.4. Now the import of variants into gemini sometimes fails. The variant is there (chr/start/end/ref/alt) but gene symbol, impact, ref transcript and perhaps other fields are empty (=None). Most of the imported variants seem ok, however.
I also noted an example where the genotype field was incorrect (ref = A, alt = AAAC but gt = AAAC|AAAC).
Kind regards,
Pär

Pär;
Sorry about the issues. What version of GEMINI are you running? The latest version (0.12.2) has a lot of fixes for ALT allele support, so it might be worth updating that as well by adding --tools and --data to your bcbio upgrade command. If you still have issues and could pass along some examples of small VCFs that fail I'd be happy to dig into it more. Sorry again about the problems.

Sorry for leaving this hanging, I've had too much to do lately. I'll take a closer look at this asap.

Closing this since probably new versions of gemini handles better this.
let us know if it happens again.
thanks


Is there a multi-language testing feature in mac2-driver? If so how to use it?

I wanted to test my Mac application for multi-language issues. As in if i change the language and locale of my system, there should not be any truncation or distortion in the UI.
Is there way to test such scenarios using Mac2-driver?

@mykola-mokhnach I see that there is this API "getAppStringMap",  but it is throwing an error for me.
Also could you help me, what do you have in your mind w.r.t apple script and localisation?


windows-2016 github runner will be removed

https://github.com/actions/virtual-environments/issues/4312
Our C++ jobs for msvc min version run on windows 2016 runners. These will be removed by march 2021. We need to upgrade min to a higher version or find a different solution. Ideally before the first brownout at december 1st, but at least before march.

around the same time as windows-2016 is disabled, windows-latest will be moved to windows 2022. maybe update at the same time.


Update ReadMe with new address

I also updated the logo link

Here is a Discord thread with context.


AndroidX incompatibilitiese

FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:processDebugResources'.

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
Android resource linking failed
C:\Users\samiu.gradle\caches\transforms-2\files-2.1\a3b8085db30285646632e9aaa0c95070\play-services-ads-lite-19.6.0\AndroidManifest.xml:27:5-38:15: AAPT: error: unexpected element  found in .

Try running flutter clean and running the app again

Try running flutter clean and running the app again

without  admob plugin app  run   but after add admob plugin  show this massage

without  admob plugin app  run   but after add admob plugin  show this massage

I had the same issue. I just upgraded the project gradle version to 3.5.4

I had the same issue. I just upgraded the project gradle version to 3.5.4

I am experiencing the same issue. Didn't work even after running flutter clean .

I am experiencing the same issue. Didn't work even after running flutter clean .

I opened another issue https://github.com/FirebaseExtended/flutterfire/issues/4669 following the issues reporting template.

I opened another issue https://github.com/FirebaseExtended/flutterfire/issues/4669 following the issues reporting template.

I'm having the same problem. Let me know if anyone knows the solution. 😭
firebase_admob version: ^0.11.0+1
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Android resource linking failed
     /home/jay-flow/.gradle/caches/transforms-2/files-2.1/0dc4181583bc0660025808e34a9b6695/play-services-ads-lite-19.6.0/AndroidManifest.xml:27:5-38:15: AAPT: error: unexpected element <queries> found in <manifest>.

I'm having the same problem. Let me know if anyone knows the solution. 😭
firebase_admob version: ^0.11.0+1
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugResources'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
   > Android resource linking failed
     /home/jay-flow/.gradle/caches/transforms-2/files-2.1/0dc4181583bc0660025808e34a9b6695/play-services-ads-lite-19.6.0/AndroidManifest.xml:27:5-38:15: AAPT: error: unexpected element <queries> found in <manifest>.

I had the same issue. I just upgraded the project gradle version to 3.5.4

Thank you. It is work for me :)

I had the same issue. I just upgraded the project gradle version to 3.5.4

Thank you. It is work for me :)

I had the same issue. I just upgraded the project gradle version to 3.5.4

Yes I did the same.

I had the same issue. I just upgraded the project gradle version to 3.5.4

Yes I did the same.

Update  classpath 'com.android.tools.build:gradle:3.5.0'
to  classpath 'com.android.tools.build:gradle:3.5.4' in build.gradle

Update  classpath 'com.android.tools.build:gradle:3.5.0'
to  classpath 'com.android.tools.build:gradle:3.5.4' in build.gradle

I am using classpath 'com.android.tools.build:gradle:4.1.2' and not solved my problem

I am using classpath 'com.android.tools.build:gradle:4.1.2' and not solved my problem

Use 3.5.4 or 4.0.1


asdf interpreter cannot be selected

Type: Bug
Behaviour
Expected vs. Actual
Expect that the ~/.asdf/shims/python can be used within vscode as a valid python interpreter
Actually - it says "an invalid python interpreter is selected"
Steps to reproduce:

Install python 3.12.2 using asdf such that asdf list python returns *3.12.2
Install vscode, enable vscode-python
update the global "Python: Default Interpreter Path" setting to point to ~/.asdf/shims/python
4.close and open vscode again, try run the file, notice: "An Invalid Python interpreter is selected, please try ..."
select the defaultInterpreterPath from settings again - same message.
click show output:

2024-03-22 10:45:31.290 [info] Experiment 'pythonREPLSmartSend' is active
2024-03-22 10:45:31.290 [info] Experiment 'pythonSurveyNotificationcf' is active
2024-03-22 10:45:31.290 [info] Experiment 'pythonTerminalEnvVarActivation' is active
2024-03-22 10:45:31.290 [info] Experiment 'pythonTestAdapter' is active
2024-03-22 10:45:31.290 [info] Default formatter is set to null for workspace /Users/renewooller/software/vscode_test
2024-03-22 10:45:31.290 [info] Test server listening.
2024-03-22 10:45:31.435 [info] > ~/.asdf/shims/python -I ~/.vscode/extensions/ms-python.python-2024.2.1/pythonFiles/get_output_via_markers.py ~/.vscode/extensions/ms-python.python-2024.2.1/pythonFiles/interpreterInfo.py
2024-03-22 10:45:31.570 [error] [Error: Command failed: /Users/renewooller/.asdf/shims/python -I /Users/renewooller/.vscode/extensions/ms-python.python-2024.2.1/pythonFiles/get_output_via_markers.py /Users/renewooller/.vscode/extensions/ms-python.python-2024.2.1/pythonFiles/interpreterInfo.py
No preset version installed for command python
Please install a version by running one of the following:

asdf install python 3.10.5

or add one of the following versions in your config file at
python 3.12.2

Diagnostic data

Python version (& distribution if applicable, e.g. Anaconda):
3.12.2
Type of virtual environment used (e.g. conda, venv, virtualenv, etc.): none
Value of the python.languageServer setting: Default

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

XXX

User Settings

languageServer: "Pylance"

Extension version: 2024.2.1
VS Code version: Code 1.87.2 (863d2581ecda6849923a2118d93a088b0745d9d6, 2024-03-08T15:20:57.520Z)
OS version: Darwin arm64 23.3.0
Modes:

System Info

Item
Value

CPUs
Apple M1 Pro (10 x 24)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
3, 3, 3

Memory (System)
32.00GB (0.84GB free)

Process Argv
. --crash-reporter-id f9327938-e81f-45c1-a64a-7b0cdbe7416b

Screen Reader
no

VM
0%

A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256860
vscoreces:30445986
vscod805:30301674
binariesv615:30325510
vsaa593cf:30376535
py29gd2263:30899288
c4g48928:30535728
azure-dev_surveyone:30548225
2i9eh265:30646982
962ge761:30959799
pythongtdpath:30769146
welcomedialog:30910333
pythonidxpt:30866567
pythonnoceb:30805159
asynctok:30898717
pythontestfixt:30902429
pythonregdiag2:30936856
pyreplss1:30897532
pythonmypyd1:30879173
pythoncet0:30885854
pythontbext0:30879054
accentitlementst:30995554
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
cppperfnew:30979542
8082a590:30971561
fegfb526:30981948
bg6jg535:30979843
ccp2r6:30993542
dsvsc020:30976470
pythonait:30996668
dsvsc021:30996838

I've found a workaround which is to specify the versioned install path, eg in settings.json:
{"python.defaultInterpreterPath": "{env:HOME}/.asdf/installs/python/3.12.2/bin/python"}
rather than
{"python.defaultInterpreterPath": "{env:HOME}/.asdf/shims/python"}
this introduces another thing to manually update when changing version, so it's not ideal, hence leaving the issue open.

I think yours is a duplicate of https://github.com/microsoft/vscode-python/issues/20752. Closing in favor of that.


Fix Policheck hit: Lame

User Story https://dev.azure.com/mseng/TechnicalContent/_workitems/edit/2001296.
Summary
Replace offensive term "Lame". It's in a code comment, replaced with "Pathetic."
Fixes #Issue_Number (if available)
https://dev.azure.com/msft-skilling/Content/_workitems/edit/14631

#sign-off


Extend jhi-button to use it in file-upload-exercise

Checklist

[ ] I tested all changes and all related features with different users (student, tutor, instructor, admin) on the test server https://artemistest.ase.in.tum.de.
[ ] Server: I added multiple integration tests (Spring) related to the features
[ ] Server: I added @PreAuthorize and check the course groups for all new REST Calls (security)
[ ] Server: I implemented the changes with a good performance and prevented too many database calls
[ ] Server: I documented the Java code using JavaDoc style.
[ ] Client: I added multiple integration tests (Jest) related to the features
[ ] Client: I added authorities to all new routes and check the course groups for displaying navigation elements (links, buttons)
[ ] Client: I documented the TypeScript code using JSDoc style.
[ ] Client: I added multiple screenshots/screencasts of my UI changes
[ ] Client: I translated all the newly inserted strings into German and English

Motivation and Context

We want to use jhi-button in more places. This PR aims to extend jhi-button functionality and find a way to replace btn-group with flex styling to be able to use it, e.g. on Course Administration Page
Description

Steps for Testing

Log in to Artemis
Navigate to Course Administration
...

Screenshots

@maxr96 what is the status of this PR? Seems to be outdated and has a lot of conflicting files now. Should we close this for now and reopen it when more progress is made?

There is no progress since some time, so I close this. Feel free to reopen this PR when more progress is made...


Provide an updated OpenAPI Specification file (a/k/a "swagger file") with each release

What are you trying to do?
Development and debugging of applications that call APIs require the use of tools to call the APIs to simulate actions that the applications would take.  Some of these tools include Postman and (arguably the best one now) Bruno. Additionally, API security testing tools, such as OWASP OFFAT, need to be able to call the APIs and exercise all of their functions in order to detect security bugs/vulnerabilities.
There is a standard for the developers of APIs, such as the Ollama maintainers, to document their APIs in a machine-readable format that is understood by these tools.  Ollama needs to provide such a description of the Ollama API, updated each time it changes. The standard format is the OpenAPI Specification, maintained by the OpenAPI Initiative, under the Linux Foundation.  Details can be found at: https://www.openapis.org/
Note: This was originally developed by a company called "Swagger", and later donated to the OpenAPI Initiative. Hence, files containing an OpenAPI description are sometimes referred to as "Swagger files".
How should we solve this?
Fully document the ollama API in an OpenAPI format file, published and maintained as part of the ollama distribution in this repository.
What is the impact of not solving this?
It's necessary to either handcraft every request to the API, or build an OpenAPI format file to use with the tools. Some examples of these files crafted by people outside of the project exist, however, they at best represent the state of the API at the time that the file was made, and at worst, are both out of date, and inaccurate. It is the inaccuracy that is most concerning, since missing/incompletely described APIs inhibit the ability of security testing tools to test the entire attack surface presented by the API.
An examination of the help messages on Discord, and the issues posted here in Github, show that Ollama's popularity as the backend of applications used by multiple people, across networks or the Internet, underscores the importance of making security testing as friction-free as possible, and a complete, maintained OpenAPI file is a key part of that.
Anything else?
OpenAPI spec for OpenAI api -- https://github.com/openai/openai-openapi
OpenAPI Specification -- https://github.com/OAI/OpenAPI-Specification
A third party OpenAPI spec file for Ollama (last updated 2024-02-02; accuracy unknown) -- https://github.com/davidmigloz/langchain_dart/blob/main/packages/ollama_dart/oas/ollama-curated.yaml

It is necessary to maintain a copy of the OpenAPI specification for the various versions of the OLLAMA interface API, and the usage in the documentation is outdated and incompatible. It may be possible to create an OpenAPI specification folder that allows community users or developers to upload a specification file for a specific version of ollama which can be exported by Postman.

https://huma.rocks/features/bring-your-own-router/
So far Huma and humagin seem like suitable tools for this, but I don't have the Go experience to implement a PR (which might not be accepted anyway)


Add option to change timezone -- for both the adding events and the schedule view

I would like to have a select menu with the standard tz database time zones

I think it should just take the current timezone from the system or something (user timezone)

I think it should just take the current timezone from the system or something (user timezone)

Yeah by default, it should use the system timezone, but I would like to have a place somewhere to change the timezone if needed. This feature can be added a lot later. Def not a priority issue right now.

Yeah by default, it should use the system timezone, but I would like to have a place somewhere to change the timezone if needed. This feature can be added a lot later. Def not a priority issue right now.


IPv6 Zone Index is broken after processing an IPv4-mapped (transitional) address with zone index

IPv6 Zone Index is broken after processing an IPv4-mapped (transitional) address with zone index
var ipaddr = require('ipaddr.js');

cidr = ipaddr.parse('::ffff:c0a8:101%z')
// IPv6 { parts: [ 0, 0, 0, 0, 0, 65535, 49320, 257 ], zoneId: 'z' }

cidr = ipaddr.parse('::ff:ffff:c0a8:101%eth0')
// IPv6 { parts: [ 0, 0, 0, 0, 255, 65535, 49320, 257 ], zoneId: 'eth0' }

// Repeat the first
cidr = ipaddr.parse('::ffff:c0a8:101%z')
// IPv6 { parts: [ 0, 0, 0, 0, 0, 65535, 49320, 257 ], zoneId: 'z' }

cidr = ipaddr.parse('::ffff:<IP_ADDRESS>%map')
// IPv6 { parts: [ 0, 0, 0, 0, 0, 65535, 49320, 257 ], zoneId: 'map' }

// BROKEN!
cidr = ipaddr.parse('::ffff:c0a8:101%z')
// IPv6 { parts: [ 0, 0, 0, 0, 0, 65535, 49320, 257 ] }

// BROKEN!
cidr = ipaddr.parse('::ff:ffff:c0a8:101%eth0')
// IPv6 { parts: [ 0, 0, 0, 0, 255, 65535, 49320, 257 ] }

// BROKEN!
cidr = ipaddr.parse('::ffff:<IP_ADDRESS>%eth1')
// IPv6 { parts: [ 0, 0, 0, 0, 0, 65535, 49320, 257 ], zoneId: 'eth1' }

// So yeah, now the IPv4-mapped addresses are the ONLY ones that can manage to process zone indexes.
// Perhaps a sticky RegExp that needs its `.lastIndex` property cleared (or to be recreated every time)...?
cidr = ipaddr.parse('::ffff:<IP_ADDRESS>%z')
// IPv6 { parts: [ 0, 0, 0, 0, 0, 65535, 49320, 257 ], zoneId: 'z' }

// BROKEN!
cidr = ipaddr.parse('::ff:ffff:c0a8:101%eth0')
// IPv6 { parts: [ 0, 0, 0, 0, 255, 65535, 49320, 257 ] }

// Without zone index (fine)
cidr = ipaddr.parse('::ff:ffff:c0a8:101')
// IPv6 { parts: [ 0, 0, 0, 0, 255, 65535, 49320, 257 ] }

// BROKEN!
cidr = ipaddr.parse('::ff:ffff:c0a8:101%eth0')
// IPv6 { parts: [ 0, 0, 0, 0, 255, 65535, 49320, 257 ] }

cc: @silverwind

I can reproduce for the v4-mapped syntax ('::ffff:<IP_ADDRESS>%map'), but not your other cases. I'd be very surprised of multiple parse invocations can influence each other.

Sorry, looks like this may have been impacted by some local changes of mine. :man_facepalming:

Correct issue filed as https://github.com/whitequark/ipaddr.js/issues/79


OrientDB Core and Server relationship

Guys,
As I know, orientdb server is working above orientdb core. And core doesn't even know about presence of a server.
And there is a question: why if server can be started separatly from core, it (server) sending to shutdown core when server it's being shuteddown?
In other words: it would be quite natural if server can be run and down separatly from core: even several times on the same runnning core instance.
Do you see any problems in removing of Orient.instance().shutdown() from code of OServer.shutdown() method?

Seems reasonable, I propose to introduce flag during server start-up which will indicate whether server should automatically shutdown core.

:+1:


fuzzer start print

I think this makes the fuzzer as user friendly as it will ever have to be.

@Akuli As I said in the previous PR: Wouldn't it make sense to put the while loop in a function, and have the print in the beginning of the while loop? That way we know what the server is definitely running when the print runs

A function won't help: if the print is in the beginning of the loop, it will run every time, regardless of whether it's in a function or not. I also don't think we should make the script too perfect, just easy enough to use without reading the instructions.


Disable POI after enabling from debug menu

So there is no option to remove POI which was enabled and now the POI for quests which have been completed are showing

This tool doesn't create the menu, it just unhides it. Everything in there is from CDPR. YMMV once you enable and use it.


Document why UNIQUE indexes on non-partition columns are unsupported

Relevant support thread:
https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/citus-users/O3eDLxcsEfw/141NJea7BAAJ
Why are we implementing it? (sales eng)
People see an error but don't know why.
What are the typical use cases?
Communication goals (e.g. detailed howto vs orientation)
Document why its not supported. What are the technical reasons why it would not work well.
Good locations for content in docs structure
DDL/FAQ or both?
How does this work? (devs)
Example sql
Corner cases, gotchas
Are there relevant blog posts or outside documentation about the concept/feature?
Link to relevant commits and regression tests if applicable

The google group link doesn't behave quite right, but the relevant part of the discussion is:

I think the offending problem here is the UNIQUE index on URL:
CREATE UNIQUE INDEX "url_url" ON "url" ( "url" );
As a distributed system, for Citus can gaurantee uniqueness only if the unique index is on the partition column. That is because the shards are split so that each shard contains non-overlapping partition column values. The index on the worker node can then enforce the constraint.
In this example, if we were to enforce a unique index on URL, Citus would need to check every shard on every INSERT to validate uniqueness, which defeat the scalability goals. You could either distribute your table on URL (if you expect that to be unique, or include rec_id column in the unique index.


fix remove liquidity issues

Fixes #1236

Changes proposed in this PR:

reset slider after transaction
fix NaN error on max button
fix issue on remove button hover

I'm still experiencing this issue in the Pool tab. It's making my tests really hard 😅. I remember there's an issue opened about it. Do you know if it has been fixed?
https://user-images.githubusercontent.com/13741335/160136328-aa89c44b-d77d-468b-bb36-074b8944b08c.mp4

That issue is probably related to the timer in the pool data provider

Found and solved the issue about the share amount going to 0, but I'm still having some issues when fetching the new data (after the transaction). Basically, for some reason the data is not getting updated immediately, instead I get the new updated data after 30sec or 1min.
https://user-images.githubusercontent.com/13741335/160389025-45d5a468-a71d-4c33-9958-8bb4b3572c79.mp4

Yep, the fun timer


Localized file check-in by OneLocBuild Task: Build definition ID 13985: Build ID 37143438

closing since there's a new format now


when I can get this lib with AndroidX?

+1

duplicates #770

go to your build.gradle file
and add this         maven { url 'https://maven.google.com' } to your ``allprojects=>repositories before jcenter()
i had the same problem it worked for me.

go to your build.gradle file
and add this  maven { url 'https://maven.google.com' } to your ``allprojects=>repositories before jcenter()
i had the same problem it worked for me.

It works for me too! Thank you so much, you saved me=D


Heatmap size in transfusion_head.py

Hi Xuyang, thanks for your work on TransFusion firstly!
I am trying to train this model in the KITTI dataset. I noticed that when you calculated the loss of heatmap, the ground truth heatmap is obtained via
https://github.com/XuyangBai/TransFusion/blob/53370467c1b88f163cbe7b7300a1f588a6761e35/mmdet3d/models/dense_heads/transfusion_head.py#L1192
As you can see that the size of gt_heatmap a rotated version of the original feature map, could you please tell me why the rotation is used? Actually, when I train the model with KITTI dataset, if I set the point cloud range is set to [0, -40, -3.0, 70.0, 40, 1.0], the predicted heatmap will have a size of 1x1x200x176, but the gt_heatmap will be 1x1x176x200. It seems like the rotation will make them mismatched. In the case of nuScenes and waymo, the heatmap is a square so it's fine, but I can't understand the issue in KITTI cases and don't know how to solve it.
Could you please give me some advise? Thank you very much. I am currently stuck in this problem T-T and looking forward to your reply!

These two dimensions are permuted in
https://github.com/XuyangBai/TransFusion/blob/399bda09a3b6449313ccc302df40651f77ec78bf/mmdet3d/ops/voxel/voxelize.py#L95-L105


String configs/prefs can't contain emoji

Testing on Toolbox, I would expect 😁 to be a valid string value within a string/JSON config/preference. Instead it is replaced by ?.
Note we have a unicodeConfigTest config entry that successfully persists Δ. Why don't emoji work?
(Are emoji essential? Probably not, but IMO they serve as a useful test that we are doing "the right thing" when it comes to encoding.)

https://adamhooper.medium.com/in-mysql-never-use-utf8-use-utf8mb4-11761243e434
https://mathiasbynens.be/notes/mysql-utf8mb4#utf8-to-utf8mb4

Also note change to default of utf8mb4 with latest MySQL connector/J driver >= 8.0.26 - https://dev.mysql.com/doc/connector-j/8.0/en/connector-j-reference-charsets.html


Documenter snippet does not work since we use GtDocumener

Steps to reproduce:
Click on document in Playground:

Error:


Use absolute paths for include

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Allows to include examples from anywhere in the hierarchy of docs.
Also adds an icon next to the filename to indicate it's a link to a file.

Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?

And then, I rebased #1048.

I think it's ok not to rebase.

I think it's ok not to rebase.

OK.


ShallowCopyForSameType(true) not working with Mapster.Tool

I have type hierarchy
public class ProvinceInfo
{
	public string Code { get; set; }
	public string Title { get; set; }
}

class Address
{
	public ProvinceInfo Province { get; set; }
}

class AddressState
{
	public ProvinceInfo Province { get; set; }
}

and mapster config
...
config
	.NewConfig<ProvinceInfo, ProvinceInfo>()
	.ShallowCopyForSameType(true);

config
	.NewConfig<AddressState, Address>()
	.ShallowCopyForSameType(true)
...

when i generate mappers with Mapster.Tool i consistantly receive deep copy:
public AddressState MapTo(Address p1)
...
Province = new ProvinceInfo()
{
	Code = p1.Province.Code,
	Title = p1.Province.Title
},
...

i neen copy by reference here, but can't achive it.
By the way, please suggest mapster learning materials. Official docs seems useless.

my fault


Re-using x25519 Public Key with different peers

Hi, Since contributors here deal a lot with implementation of the cryptographic primitives, I was wondering if some of you also have an opinion on the question posted here.
To expand that link here:

In X25519 (ECDH over Curve25519) Peer A and B exchange their Public Keys PkA and PkB and then calculate a shared-secret SecAB using combinationOf(SkA, PkB) == combinationOf(SkB, PkA).
For forward secrecy, I think it's recommended for A and B to re-negotiate a new shared-secret regularly (thus advertise new Public Keys).
Leaving that aside is there any other disadvantage if A uses the same Public Key that they have with everyone to get corresponding shared-secret VS if they use new Public Key with each new peer ?
In other words:

Peer A gives PkA to all, B, C, D ..., and as usual calculates shared-secret using PkB, PkC, PkD as SecAB, SecAC, SecAD and so on and uses those to encrypt/decrypt messages to the corresponding peers.
Peer A gives new Public Keys to each. So PkAB to B, PkAC to C, PkAD to D and so on. Then, just like before, calculate the shared-secret after using Public Keys of the corresponding peers as SecAB, SecAC, SecAD and so on.

Is 1. above less secure in context of how X25519 (and its maths) works than 2. ? Or is it just wasteful to do 2. and 1. is equally good ?

Thanks !

Ah the question's answered there now. So it seems it's only from a forward-secrecy point of view that it's recommended to have ephemeral DH keys. Otherwise there's no other reason (like it becomes more susceptible to attack theoretically etc.) . That is all I was after. If anybody has anything more on this pls let me know else feel free to close this. I'll close this issue in a day or two if no one else closes.