x/tools/cmd/gopls: can't generate completion for go-libzfs

What version of Go are you using (go version)?

$ go version
go version go1.13 linux/amd64

Does this issue reproduce with the latest release?
Yes, gopls refreshed from latest release (v0.1.6)
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/didrocks/.cache/go-build"
GOENV="/home/didrocks/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/didrocks/.go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build855760674=/tmp/go-build -gno-record-gcc-switches"

What did you do?
I typed the follow go code, with go-libzfs at 0.2.2:
package main

import (
	zfs "github.com/bicomsystems/go-libzfs"
)

func main() {
	zfs.
}

when pressing "." after zfs, I receive garbage completion: "Global.mtx.{Lock;Unlock}". The gopls log outputs shows a lot of lines like:
[Error - 14:47:07] 2019/09/17 14:47:07 error generating completion item: no file for<EMAIL_ADDRESS>[Error - 14:47:07] 2019/09/17 14:47:07 error generating completion item: no file for<EMAIL_ADDRESS>[Error - 14:47:07] 2019/09/17 14:47:07 error generating completion item: no file for<EMAIL_ADDRESS>[Error - 14:47:07] 2019/09/17 14:47:07 error generating completion item: no file for<EMAIL_ADDRESS>[Error - 14:47:07] 2019/09/17 14:47:07 error generating completion item: no file for<EMAIL_ADDRESS>[Error - 14:47:07] 2019/09/17 14:47:07 error generating completion item: no file for<EMAIL_ADDRESS>[…]

Note that those files with that path exists on disk.
What did you expect to see?
I expect to see go-libzfs completion options.
What did you see instead?
I got unexpected completion proposals.
Go-pls information:
$  gopls version
golang.org/x/tools/gopls v0.1.6
<EMAIL_ADDRESS>h1:jXi39uPnkIKQKqLUsZqznHkHyLqTXqjMId0kTrakGMI=

vscode settings are the default from the wiki page.
gopls -rpc.trace -v check logs on that example file. Note the cgo linker failures (go-libzfs is using cgo against libzfs header libs). However, go build on the same machine works fine, using compatible system headers which are installed on the machine (/usr/lib, /usr/include).
Note the cflags/ldflags in common.go:
common.go:#cgo CFLAGS: -I /usr/include/libzfs -I /usr/include/libspl -DHAVE_IOCTL_IN_SYS_IOCTL_H -D_GNU_SOURCE
common.go:#cgo LDFLAGS: -lzfs -lzpool -lnvpair

2019/09/17 14:52:09 Info:2019/09/17 14:52:09 Build info
----------
golang.org/x/tools/gopls v0.1.6
<EMAIL_ADDRESS>h1:jXi39uPnkIKQKqLUsZqznHkHyLqTXqjMId0kTrakGMI=
<EMAIL_ADDRESS>h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=
<EMAIL_ADDRESS>h1:K9AD1n6qD+pzpEX+97w2rRrY26Xti5UWFyZNfmXDf3A=
<EMAIL_ADDRESS>h1:9zdDQZ7Thm29KFXgAX/+yaf3eVbP7djjWp/dXAppNCc=

Go info
-------
go version go1.13 linux/amd64

GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/didrocks/.cache/go-build"
GOENV="/home/didrocks/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/didrocks/.go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build798046758=/tmp/go-build -gno-record-gcc-switches"
2019/09/17 14:52:09 Info:2019/09/17 14:52:09 2.559809ms for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "list" "-m" "-json" "all", stderr: <<go list -m: not using modules
>>
2019/09/17 14:52:09 Info:2019/09/17 14:52:09 3.36455ms for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "list" "-e" "-json" "-compiled=true" "-test=true" "-export=false" "-deps=true" "-find=false" "--" "builtin", stderr: <<>>
2019/09/17 14:52:09 Info:2019/09/17 14:52:09 4.132051ms for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "env" "GOMOD", stderr: <<>>
2019/09/17 14:52:09 Info:2019/09/17 14:52:09 4.131733ms for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "env" "GOPATH", stderr: <<>>
2019/09/17 14:52:09 Info:2019/09/17 14:52:09 2.792277ms for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "list" "-m" "-json" "all", stderr: <<go list -m: not using modules
>>
2019/09/17 14:52:09 Info:2019/09/17 14:52:09 2.939044ms for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "env" "GOMOD", stderr: <<>>
2019/09/17 14:52:09 Info:2019/09/17 14:52:09 2.016652ms for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "env" "GOPATH", stderr: <<>>
2019/09/17 14:52:09 Info:2019/09/17 14:52:09 2.693774ms for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "list" "-e" "-json" "-compiled=true" "-test=true" "-export=false" "-deps=true" "-find=false" "--" "/home/didrocks/work/foo", stderr: <<>>
2019/09/17 14:52:12 Info:2019/09/17 14:52:12 3.087340008s for GOROOT= GOPATH=/home/didrocks/.go GO111MODULE= PWD=/home/didrocks go "list" "-e" "-json" "-compiled=true" "-test=true" "-export=false" "-deps=true" "-find=false" "--" "/home/didrocks/work/foo/zfs.go", stderr: <<# github.com/bicomsystems/go-libzfs
zpool.c:82:30: error: ‘ZPOOL_REWIND_POLICY’ undeclared here (not in a function); did you mean ‘sZPOOL_REWIND_POLICY’?
   82 | char *sZPOOL_REWIND_POLICY = ZPOOL_REWIND_POLICY;
      |                              ^~~~~~~~~~~~~~~~~~~
      |                              sZPOOL_REWIND_POLICY
zpool.c:83:31: error: ‘ZPOOL_REWIND_REQUEST’ undeclared here (not in a function); did you mean ‘sZPOOL_REWIND_REQUEST’?
   83 | char *sZPOOL_REWIND_REQUEST = ZPOOL_REWIND_REQUEST;
      |                               ^~~~~~~~~~~~~~~~~~~~
      |                               sZPOOL_REWIND_REQUEST
zpool.c:84:35: error: ‘ZPOOL_REWIND_REQUEST_TXG’ undeclared here (not in a function); did you mean ‘sZPOOL_REWIND_REQUEST_TXG’?
   84 | char *sZPOOL_REWIND_REQUEST_TXG = ZPOOL_REWIND_REQUEST_TXG;
      |                                   ^~~~~~~~~~~~~~~~~~~~~~~~
      |                                   sZPOOL_REWIND_REQUEST_TXG
zpool.c:85:35: error: ‘ZPOOL_REWIND_META_THRESH’ undeclared here (not in a function); did you mean ‘sZPOOL_REWIND_META_THRESH’?
   85 | char *sZPOOL_REWIND_META_THRESH = ZPOOL_REWIND_META_THRESH;
      |                                   ^~~~~~~~~~~~~~~~~~~~~~~~
      |                                   sZPOOL_REWIND_META_THRESH
zpool.c:86:35: error: ‘ZPOOL_REWIND_DATA_THRESH’ undeclared here (not in a function); did you mean ‘sZPOOL_REWIND_DATA_THRESH’?
   86 | char *sZPOOL_REWIND_DATA_THRESH = ZPOOL_REWIND_DATA_THRESH;
      |                                   ^~~~~~~~~~~~~~~~~~~~~~~~
      |                                   sZPOOL_REWIND_DATA_THRESH
zpool.c: In function ‘go_zpool_search_import’:
zpool.c:497:2: error: unknown type name ‘importargs_t’
  497 |  importargs_t idata;
      |  ^~~~~~~~~~~~
zpool.c:498:27: error: ‘importargs_t’ undeclared (first use in this function)
  498 |  memset(&idata, 0, sizeof(importargs_t));
      |                           ^~~~~~~~~~~~
zpool.c:498:27: note: each undeclared identifier is reported only once for each function it appears in
zpool.c:500:7: error: request for member ‘path’ in something not a structure or union
  500 |  idata.path = path;
      |       ^
zpool.c:501:7: error: request for member ‘paths’ in something not a structure or union
  501 |  idata.paths = paths;
      |       ^
zpool.c:504:2: warning: implicit declaration of function ‘thread_init’; did you mean ‘thread_exit’? [-Wimplicit-function-declaration]
  504 |  thread_init();
      |  ^~~~~~~~~~~
      |  thread_exit
zpool.c:505:10: warning: implicit declaration of function ‘zpool_search_import’; did you mean ‘go_zpool_search_import’? [-Wimplicit-function-declaration]
  505 |  pools = zpool_search_import(zfsh, &idata);
      |          ^~~~~~~~~~~~~~~~~~~
      |          go_zpool_search_import
zpool.c:505:8: warning: assignment to ‘nvlist_ptr’ {aka ‘struct nvlist *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
  505 |  pools = zpool_search_import(zfsh, &idata);
      |        ^
zpool.c:506:2: warning: implicit declaration of function ‘thread_fini’; did you mean ‘thread_join’? [-Wimplicit-function-declaration]
  506 |  thread_fini();
      |  ^~~~~~~~~~~
      |  thread_join
>>
2019/09/17 14:52:12 Info:2019/09/17 14:52:12 go/packages.Load
	packages = 1
2019/09/17 14:52:12 Info:2019/09/17 14:52:12 go/packages.Load
	package = command-line-arguments
	files = [/home/didrocks/work/foo/zfs.go]
/home/didrocks/work/foo/zfs.go:9: expected selector or type assertion, found '}'

This is probably a cgo related issue, in which case the tracking bug for that is #32898

Closing this as a dup of newly-created #35720. I'm working on it now.


Make FloorScale's type match floorScale's type

Overview
Changes the return type from Vector3 -> Vector2. We were only using x and y in the manager anyway.
Changes

Fixes: #2706

thank you, Kurtis!


Added new SonarCloud lab

This new lab does not require any Azure resources and does not use the VSTSDemoGenerator (the sample source is imported from a GitHub repo).
This PR does not change any existing files, just adds a new readme and the support images.

 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.:x: duncanp-sonar sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


SCBL plugin crash

Description of Issue
SCBL plugin causes crashes.
Errors or Screenshots of Issue
file:///C:/Users/Administrator/Desktop/Servers/Spaghetti-Bot/squad-server/plugins/scbl-info.js:95
if (data.steamUser.reputationPoints < this.options.threshold)
^
TypeError: Cannot read property 'reputationPoints' of null
at SCBLInfo.onPlayerConnected (file:///C:/Users/Administrator/Desktop/Servers/Spaghetti-Bot/squad-server/plugins/scbl-info.js:95:24)
at processTicksAndRejections (node:internal/process/task_queues:93:5)
Squad Information

Plugins in Use:
SquadJS Version: current beta branch
Squad Version: 1.0

System Information

Operating System: server 2016
NodeJS Version: current
Yarn Version: currnet

As a note to anyone that has this issue, you can use node.js v12.19.1 as a workaround.

As a note to anyone that has this issue, you can use node.js v12.19.1 as a workaround.

Fixed in https://github.com/Thomas-Smyth/SquadJS/commit/f2717e0f629f2366d72b347e11ae364a1c1a32a3.

Fixed in https://github.com/Thomas-Smyth/SquadJS/commit/f2717e0f629f2366d72b347e11ae364a1c1a32a3.


How do prevent automatic re-login in Google Auth

Hello Folks and creator!
I'm trying to run this app on localhost, and everything's working fine. But when I try to re-login, Google auth doesn't ask me to choose an account, it just logs me straight in. Any ideas on how to prevent this? Thanks.

you might have to delete the connected account from your google settings

Yes, you're right. But I'm looking for a way to prevent it.


[Enhancement]: Attribute for RegisterTypeInIl2CppWithInterfaces

Describe the new feature or enhancement
Similar to how the Unhollower RegisterTypeInIl2Cpp methods have an attribute for automatically registering, this feature would be an equivalent attribute but for the RegisterTypeInIl2CppWithInterfaces methods.
Example:
using System;
using System.ComponentModel;
using MelonLoader;
using UnityEngine;

[RegisterTypeInIl2CppWithInterfaces]
public class MyBehaviourWithInterfaces : MonoBehaviour, INotifyPropertyChanged
{
    public MyBehaviourWithInterfaces(IntPtr ptr) : base(ptr)
    {
    }
    ...
}

[RegisterTypeInIl2CppWithInterfaces(logSuccess: true)]
public class MyOtherBehaviourWithInterfaces : MonoBehaviour, INotifyPropertyChanged
{
    public MyOtherBehaviourWithInterfaces(IntPtr ptr) : base(ptr)
    {
    }
    ...
}

Should be implemented as of https://github.com/LavaGang/MelonLoader/commit/1a33c452322f9d8fcbdd2e3be7235acde6d76422


feat(create-mud): use pnpm in templates, move to root so they can be installed/run

Some notes:

Initially wanted to put templates in the same workspace as the rest of the packages (i.e. add templates/* to root pnpm-workspace.yaml), but I felt like the hoisting of certain dependencies made it a little hard to ensure these templates would run the same way once "cloned" with create-mud. I also wasn't sure about a "workspace in a workspace" (each template is also a pnpm workspace).
I started by checking in pnpm-lock.yaml for each template then .gitignore'd it for a smaller diff. I think we might be better off leaving this out, so that dependencies can bump patch versions for security needs. CI should catch any changes for us. But curious if you feel strongly in another direction.
Since each template is a monorepo, and pnpm is (IMO) the best package manager for a monorepo, I think it makes sense to be opinionated and just use pnpm for the templates, rather than trying to create some normalizing layer between package managers and how they define/manage monorepos/workspaces.

Initially wanted to put templates in the same workspace as the rest of the packages (i.e. add templates/* to root pnpm-workspace.yaml), but I felt like the hoisting of certain dependencies made it a little hard to ensure these templates would run the same way once "cloned" with create-mud. I also wasn't sure about a "workspace in a workspace" (each template is also a pnpm workspace).

One of the big benifits of pnpm is this isn't much of a concern.  The store can be in node modules, somewhere globally on your system ect. and it will always work the same.  So I wouldn't worry too much

One of the big benifits of pnpm is this isn't much of a concern. The store can be in node modules, somewhere globally on your system ect. and it will always work the same. So I wouldn't worry too much

are you suggesting we should get this to live within the same workspace? how does pnpm handle workspaces-within-workspaces? how do we protect against implicit dependencies (a template workspace not accidentally using a root workspace dep)


java.lang.OutOfMemoryError when fetching mails

Since a few days, k9mail has issues with retrieving / updating my inbox (both in background operation and when the Inbox is open).
Here is the corresponding log:
09-22 21:35:39.633 E/AndroidRuntime(32481): FATAL EXCEPTION: MessagingController
09-22 21:35:39.633 E/AndroidRuntime(32481): Process: com.fsck.k9, PID: 32481
09-22 21:35:39.633 E/AndroidRuntime(32481): java.lang.OutOfMemoryError: Failed to allocate a 32547414 byte allocation with 16777216 free bytes and 21MB until OOM
09-22 21:35:39.633 E/AndroidRuntime(32481):     at java.lang.AbstractStringBuilder.enlargeBuffer(AbstractStringBuilder.java:95)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:163)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at java.lang.StringBuilder.append(StringBuilder.java:288)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.mail.internet.MimeUtility.extractTextAndAttachments(MimeUtility.java:1445)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.mail.store.LocalStore$LocalFolder$15.doDbWork(LocalStore.java:2576)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.mail.store.LocalStore$LocalFolder$15.doDbWork(LocalStore.java:2507)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.mail.store.LockableDatabase.execute(LockableDatabase.java:283)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.mail.store.LocalStore$LocalFolder.appendMessages(LocalStore.java:2507)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.mail.store.LocalStore$LocalFolder.appendMessages(LocalStore.java:2437)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.controller.MessagingController.downloadLargeMessages(MessagingController.java:1773)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.controller.MessagingController.downloadMessages(MessagingController.java:1372)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.controller.MessagingController.synchronizeMailboxSynchronous(MessagingController.java:1141)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.controller.MessagingController.access$400(MessagingController.java:111)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.controller.MessagingController$8.run(MessagingController.java:934)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at com.fsck.k9.controller.MessagingController.run(MessagingController.java:435)
09-22 21:35:39.633 E/AndroidRuntime(32481):     at java.lang.Thread.run(Thread.java:818)

Seems like this was caused by an e-mail that contained 23 MB of data (plain text of a former e-mail that contained a PDF file...)

This behaviour has changed (in master). The log above shows an OOM while downloading a large message and extracting the attachments in the background.
Now however, we only call the modern version of MimeUtility.extractTextAndAttachments - LocalMessageExtractor.extractTextAndAttachments when displaying an actual message.
When downloading a message, we call LocalFolder.saveMessage() which doesn't seem to do the same appending routine.
We may still crash when either displaying a huge message or saving a whole bunch of larger ones, but I think would need to see the new use case and new stack trace to work out exactly how it was occurring now.

See also #1241

Please create a new issue if this still happening.


Please consider fixing issues detected by repository checker

Notification from ioBroker Check and Service Bot
Dear adapter developer,
I'm the ioBroker Check and Service Bot. I'm an automated tool processing routine tasks for the ioBroker infrastructure. I have recently checked the repository for your adapter cleveron for common errors and appropiate suggestions to keep this adapter up to date.
This check is based the current head revisions (master / main  branch) of the adapter repository
Please see the result of the check below.
ioBroker.cleveron
   -
:thumbsup: No errors found
WARNINGS:

[ ] :eyes: [W040] "keywords" within package.json should contain "ioBroker"
[ ] :eyes: [W156] js-controller 5.0.0 listed as dependency but 5.0.19 is recommended. Please consider updating dependency at io-package.json.
[ ] :eyes: [W184] "common.materialize" is deprecated for admin >= 5 at io-package.json. Please use property "adminUI".
[ ] :eyes: [W951] .npmignore found but "files" is used at package.json. Please remove .npmignore.

:thumbsup: No suggestions found
Please review issues reported and consider fixing them as soon as appropiate.
Warnings reported by repository checker should be reviewed. While some warnings can be ignored due to good reasons or a dedicated decision of the developer, most warnings should be fixed as soon as appropiate.
You may start a new check or force the creation of a new issue at any time by adding the following comment to this issue:
@iobroker-bot recheck
@iobroker-bot recreate
Please note that I (and the server at GitHub) have always plenty of work to do. So it may last up to 30 minutes until you see a reaction. I will drop a comment here as soon as I start processing.
Feel free to contact me (@iobroker-bot) if you have any questions or feel that an issue is incorrectly flagged.
And THANKS A LOT for maintaining this adapter from me and all users.
Let's work together for the best user experience.
your
ioBroker Check and Service Bot
@mcm1957 for evidence
Last update at Fri, 13 Sep 2024 10:08:35 GMT based on commit dc7910e3a6e3d356f8b0fcfa32be8ca225b57d94
ioBroker.repochecker 3.0.5

This issue has been updated by ioBroker Check and Service Bot
The following issues have been fixed
[E951] .npmignore found but "files" is used at package.json. Please remove .npmignore.
:thumbsup:Thanks for fixing the issues.
The following issues are new and have been added
[W951] .npmignore found but "files" is used at package.json. Please remove .npmignore.


Protocol support for interfaces

Interfaces planning
We want to be able to support a wide variety of interfaces to Penumbra.
While it's important that there be at least one first-class wallet experience at launch, Penumbra's capabilities are multifaceted, and users will probably be best served by specialized interfaces: e.g., one for basic transfers or swaps, one for governance, one for power users to manage liquidity or examine the liquidity graph, etc.
Supporting a wide variety of interfaces is also important for decentralization: no one entity should "own" the Penumbra userbase via control of a single frontend, or be at risk of becoming a chokepoint for control of those users. This also means that it should be possible to build frontend interfaces to Penumbra that do not require custom backend infrastructure beyond an ordinary pd full node.
We want those interfaces to be as easy to build as interfaces to transparent chains.
Historically, interfaces to shielded chains have been more difficult to build than interfaces to transparent chains, because they require the application developer to manage synchronization of users' private state, unlike a transparent chain, where user state is accessible via RPC. Penumbra is about privacy without compromise, so we want to make it as easy to build those interfaces for Penumbra as it is for a shielded chain.
We want our users to have security when interacting with those interfaces.
In order for users to benefit from the availability of a wide variety of third-party interfaces, users need to be confident they can use them without risk of losing funds or being hacked. We need to ensure that only the user can authorize a transaction, and be able to understand exactly what actions they're authorizing when they do so.
How do we accomplish these goals?
We can do this by building a local state storage solution downstream of our syncing and decryption logic that contains data within the "decryption horizon" of the available keys (as defined by the available keys). What is visible to the keys available can be treated as if it is a fragment of a transparent chain, and the rest of the data which is opaque is irrelevant. This provides a "transparent chain experience" on a shielded chain.
Current Architecture
We've already been prototyping a modular client architecture in pcli since April, so we have a good idea of how a Penumbra client decomposes into components with different levels of capability, and how those components interact with each other and with the network:
          ╭     ┌───────┐   custody
  spending│     │custody│   protocol
capability│     │service│◀─────────────────┐
          ╰     └───────┘                  │
                                           │
                                           │
                                           ▼
          ╭     ┌───────┐   view       ┌───────┐
   viewing│     │view   │   protocol   │wallet │
capability│     │service│◀────────────▶│ logic │
          ╰     └───────┘              └───────┘
                  ▲                      ▲ │
                  │                      │ │
                  ├──────────────────────┘ │
                  │client protocol         │tx
                  │(oblivious/specific)    │broadcast
                  │                        │                         .───.
                  │┌───────────────────────┘                       ,'     `.
          ╭   ┌───┼┼──────────────────────────────┐           .───;         :
    public│   │   ││             Penumbra Fullnode│          ;              │
     chain│   │   ││grpc/grpc-web                 │        .─┤              ├──.
      data│   │   ▼▼                              │      ,'                     `.
          │   │ ┌────┐ tm rpc proxy ┌──────────┐  │     ;               Penumbra  :
          │   │ │    │◀────────────▶│          │  │     :  ┌──────────▶ Network   ;
          │   │ │ pd │◀────────────▶│tendermint│◀─┼────────┘                     ╱
          │   │ └────┘   abci app   └──────────┘  │       `.     `.     `.     ,'
          ╰   └───────────────────────────────────┘         `───'  `───'  `───'

The client decomposes into three components: the custody service, which holds spending keys and is responsible for transaction authorization, the view service, which holds viewing keys and is responsible for syncing the private chain state, and the wallet logic itself, which queries:

the view service (using the gRPC view protocol) to learn about state like account balances;
the custody service (using the gRPC custody protocol) with requests to authorize a planned transaction;
a pd full node (using the oblivious or specific gRPC protocols) for public chain state, and using a grpc proxy to tendermint for transaction submission;

Separating Viewing Capability
Penumbra view keys are long-term key material, giving the capability to view all activity on an account, for all time, and cannot be revoked or rotated without changing addresses.  This means that we cannot expose viewing keys to third-party interfaces and meet our goal of ensuring users have security when interacting with those interfaces. A compromised frontend should only be able to exfiltrate current activity, not all future activity.
Towards this goal, we've built the TransactionView/TransactionPerspective data modeling, giving a way to view cleartext contents of specific transactions, without having access to view keys. Clients can request a TransactionPerspective, a per-transaction bundle of key material and commitment openings that determines a TransactionView.  Different users may have different perspectives, and hence different views, of the same transaction. For instance, the sender can view all of the transaction's actions, while the receiver views only the outputs addressed to them. The resulting architecture is as follows:
              ╭     ┌───────┐   custody
     spending │     │custody│   protocol
   capability │     │service│◀──────────────────┐
              ╰     └───────┘                   │
                                                │
                                                │
                                                │
              ╭     ┌───────┐   view            │
 full viewing │     │view   │   protocol        │
   capability │     │service│◀───────┐          │
              ╰     └───────┘        │          │
                      ▲              │          │
                      │              │          │
                      │              │          ▼
              ╭       │              │        ┌───────┐
  transaction │       │              └───────▶│wallet │
 perspectives │       │                       │ logic │
              ╰       │                       └───────┘
                      │                         ▲ │
                      │ specific/oblivious      │ │
                      │ client protocols        │ │
                      ├─────────────────────────┘ │ tx
                      │┌──────────────────────────┘ broadcast                     .───.
                      ││                                                        ,'     `.
              ╭   ┌───┼┼─────────────────────────────────────┐             .───;         :
       public │   │   ││                    Penumbra Fullnode│            ;              │
        chain │   │   ││ grpc/grpc-web                       │          .─┤              ├──.
         data │   │   ▼▼                                     │        ,'                     `.
              │   │ ┌────┐     tm rpc proxy     ┌──────────┐ │       ;               Penumbra  :
              │   │ │    │◀────────────────────▶│          │ │       : ┌───────────▶ Network   ;
              │   │ │ pd │◀────────────────────▶│tendermint│◀┼─────────┘                      ╱
              │   │ └────┘       abci app       └──────────┘ │         `.     `.     `.     ,'
              ╰   └──────────────────────────────────────────┘           `───'  `───'  `───'

Web Architecture
How does this revised architecture map to the web context?
We need to isolate the spending keys, and thus the custody service, from any web content. This is important for two reasons: first, compromised or malicious web content should not be able to access spending keys, and second, the signing interface needs to display details on a secure path, so that compromised or malicious web content cannot phish users by pretending to sign one transaction while actually signing a different one.  We would also like to isolate the long-term viewing keys from any web content, and allow access only through TransactionPerspectives.
The scanning and synchronization performed by the view service should ideally be done once per device, rather than being duplicated across every interface.  This provides a better user experience when using multiple interfaces, and protects privacy by reducing network traffic.
The first goal, key isolation, requires that the custody service be implemented in a browser extension. Then spending keys would stay inside the extension, and the extension could display its own UI to the user to authorize signing, showing the details of the TransactionPlan. To isolate viewing keys from web content, we would also need the extension to provide the view service.  This also solves the second goal, sharing synchronization work, because the extension could do scanning and synchronization once, save the resulting data, and allow web content to query it.
The resulting architecture looks like this:
                  ┌───────────┐
                  │ Extension │
              ╭   │ ┌───────┐ │ custody
     spending │   │ │custody│ │ protocol
   capability │   │ │service│◀┼─────────────────┐
              ╰   │ └───────┘ │                 │
                  │           │                 │
                  │           │                 │
                  │           │                 │
              ╭   │ ┌───────┐ │ view            │
 full viewing │   │ │view   │ │ protocol        │
   capability │   │ │service│◀┼──────┐          │
              ╰   │ └───────┘ │      │          │
                  │   ▲       │      │      ┌───┼────────────┐
                  └───┼───────┘      │      │   │ Web Content│
                      │              │      │   ▼            │
              ╭       │              │      │ ┌───────┐      │
  transaction │       │              └──────┼▶│wallet │      │
 perspectives │       │                     │ │ logic │      │
              ╰       │                     │ └───────┘      │
                      │                     │   ▲ │          │
                      │ specific/oblivious  └───┼─┼──────────┘
                      │ client protocols        │ │
                      ├─────────────────────────┘ │ tx
                      │┌──────────────────────────┘ broadcast                     .───.
                      ││                                                        ,'     `.
              ╭   ┌───┼┼─────────────────────────────────────┐             .───;         :
       public │   │   ││                    Penumbra Fullnode│            ;              │
        chain │   │   ││ grpc/grpc-web                       │          .─┤              ├──.
         data │   │   ▼▼                                     │        ,'                     `.
              │   │ ┌────┐     tm rpc proxy     ┌──────────┐ │       ;               Penumbra  :
              │   │ │    │◀────────────────────▶│          │ │       : ┌───────────▶ Network   ;
              │   │ │ pd │◀────────────────────▶│tendermint│◀┼─────────┘                      ╱
              │   │ └────┘       abci app       └──────────┘ │         `.     `.     `.     ,'
              ╰   └──────────────────────────────────────────┘           `───'  `───'  `───'

In the web context, the web content can communicate directly with the extension, so rather than using literal grpc transport, we'll have the web content pass the request types for the view and custody protocols' grpc messages.
Plan to get there
Our current client code in pcli does not make this segmentation, and so our existing client implementation does not work as an example of how a Penumbra client could work without having direct access to view keys.

[x] #1782

The Planner takes view keys, but they are only needed at the very end, where used in the following ways:

For proposal methods we're planning to delete (so we disregard this use)
To construct the account ID when querying the view service.

[x] #1784

To construct the change address.

[x] #1785

[x] #1786

Other improvements:

[x] #1787
[x] #1788
[x] #1862

Zpoken Links

Published to Chrome web store: https://chrome.google.com/webstore/detail/penumbra-wallet/lkpmkhpnhknhmibgnmmhdhgdilepfghe/related
Dapp link - https://penumbradapp.zpoken.io/
Dapp repo: https://github.com/zpoken/penumbra_dapp/releases/tag/v0.1.1
Extension repo: https://github.com/penumbra-zone/wallet/releases/tag/v0.0.4
Explorer: https://penumbra.zpoken.io/
Explorer repo: https://github.com/zpoken/juno/releases/tag/038-kalyke

Closing as all the points on the original tracking issue are completed.


Activate Open Collective

Fill https://opencollective.com/poliastro with description, goals, and everything needed to make it attractive and beautiful
Promote it in the README and the documentation
Declare it official!

(Continuation of gh-489)

Ideas we discussed in our community call:

Visible name in main documentation page
Mention in release notes
"Thank you!" email
Fast-track support chat
poliastro stickers with a physical "Thank you!" note

We need to make clear that "fast support" doesn't mean "feature development".

While we figure out this properly, a simple thing we can do is to just have a "one-time donation" button and that's it. This way we don't block the activation.


about the shadow

how can i get the shadow?

May be start here?

May be start here?

thank you. I found it


Make dependency of vissl optional

What does this PR do?
This PR is motivated to achieve the second change in this comment. And this PR contains the following modifications.

Make training_strategy, head, pretraining_transform in the arguments of __init__ of ImageEmbedder optional
Add DefaultAdapter to the Embedding task which is inspired by the Image Classification task's one.
Fix a test about integration with Fiftyone to work correctly
Add test cases for only embedding without VISSL

Part of https://github.com/PyTorchLightning/lightning-flash/issues/1031
This PR is based on #1271. Because its target branch was wrong.
I'm sorry for my wrong operations. I misunderstood that it would be okay to change its target branch.
Before submitting

[x] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes?
[x] Did you write any new necessary tests? [not needed for typos/docs]
[x] Did you verify new and existing tests pass locally with your changes?
[x] If you made a notable change (that affects users), did you update the CHANGELOG?

PR review

[x] Is this pull request ready for review? (if not, please submit in draft mode)

Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

This PR is ready for review. Please review it.
I have one question about dealing with DeepSource. Could I ignore its failure as same as other PRs?
I'm sorry for making a messy commit log. I struggled to solve CI issues.

@ethanwharris
Thanks for your review. I'm so glad to make this PR accepted. I'm looking forward to this PR being merged.

@ar90n No wories, thanks for your work on this!! Very glad to see it all working smoothly 😃


Can resvg support pdf file export?

In my work, the function svg convert to png and pdf is required. In the past, I used rsvg-convert to finished my work. Recently, I find rsvg-convert has some problems in convert svg to png and pdf, resvg can do this work very well. I plan use resvg replace rsvg-convert. But I find resvg can't convert to pdf directly. So,Can resvg support pdf file export?
I also has a propose:
resvg command args worked such as: "resvg in.svg out.png", In my case, I call resvg command use Java Process Object. When I use resvg tool, I must create two temp files 'in.svg out.png' for resvg, and delete when process end. can resvg support in/out stream for calling. Thanks!

So,Can resvg support pdf file export?

Not possible and not planned. Really hard.

can resvg support in/out stream for calling. Thanks!

It does support in steam, but not out. It's easy to implement. I didn't thought it would have any use case. Please open a separate issue for that.

It does support in steam, but not out. It's easy to implement. I didn't thought it would have any use case. Please open a separate issue for that.

I try implement it by myself first.


pull-request looks for PULL_REQUEST_TEMPLATE.md in $PWD

hub pull-request looks for PULL_REQUEST_TEMPLATE.md in the current working directory and fails to find it when run in a subdirectory. hub should instead look in the project root directory, which can be found usinggit rev-parse --show-toplevel.

This was fixed in 1a3a934714a37fa05f9920daf9b7a00186321502! It will be in the next (pre)release.

Thanks, Mislav. I'm keenly looking forward to the next stable release of hub. So many new useful features.


Remove injected glue

Can we merge this? It's blocking the winit port. I stripped out the rest of the glue code, if someone want's to continue using it instead of android-ndk-rs they can use a previous release.
It also fixes a bug where a minimal binary won't link to libandroid.so unless use glue is added to the file.

Also r? @philip-alldredge (github won't let me select you for some reason)

@goddessfreya you likely can't select me because I don't have any permissions on the repo.
I don't mind taking a look but it may be a few days before I have a chance to test.

What is the state of android-ndk-rs? I noticed that some of the examples are being switched to use a branch on dvc94ch's fork.

There are some bugs and missing features in android-ndk-rs. I opened a PR https://github.com/mb64/android-ndk-rs/pull/1, but no comments yet. Maybe we should move it to the rust-windowing org so that there are more people with write access?

I'm not sure where it should be hosted but I agree it would be beneficial for the android-ndk* crates to be hosted somewhere that there are multiple people with write access. Honestly, I'm not using cargo-apk at the moment but I would like to see a more vibrant android/rust echo system.

I'm not using cargo-apk at the moment

Why not? Just curious. To add an external so I had to add a hack to get it inside the apk, but seems pretty neat otherwise.

I would like to see a more vibrant android/rust echo system.

I'm completely new to developing for android and encountered some problems I haven't figured out yet, maybe you have some thoughts on them...

What's the correct way of handling orientation changes reliably
Unpacking assets from the apk to the file system on startup takes about 30s, can I do it at install time?

@philip-alldredge What alternatives to cargo apk currently exists for apps entirely in rust?
I only know cargo ndk and rust-android-gradle plugin from Mozilla team.

@dvc94ch @katyo sorry for the confusion. Nothing against cargo-apk. I think it's neat software and I would definitely use it if working on an android project with Rust. It's just at the moment, that's not something I"m doing at this time because it's just a hobby for me. I mostly started working submitting pull requests for cargo-apk when I tried to use it and it wasn't compatible with newer versions of the NDK.
Unfortunately, I don't know an answer to your other questions. Depending on what exactly you are doing, using raw resources may help. Just an idea as an alternative to assets.

@dvc94ch Added another comment. On the same note, this pull request doesn't include the legacy glue flag. Personally, I think this is the best approach to avoid carrying around legacy code.  However @mb64 or others may have other thoughts.
The cargo-apk on crates.io is quite old as discussed in other issues. It would be nice to have an up to date cargo-apk and android-ndk crates to be available there when winit is updated to support it.

@goddessfreya can you create an android-ndk-rs repo in the winit org? Once we get that sorted, we can merge

https://github.com/rust-windowing/android-ndk-rs

@goddessfreya turned green :)

Merging. Cheers!


GWT module

You shouldn't force your users to include your sources in their GWT definition files like this:
<source path="de/tomgrill/gdxfacebook/core" />
<source path="de/tomgrill/gdxfacebook/html" />

Instead, you can create a GWT module that your users can simply inherit, similarly to how LibGDX libraries themselves are used:
<inherits name="com.badlogic.gdx.backends.gdx_backends_gwt" />

This way you have complete control over how your sources are included in GWT projects and you can exclude some problematic classes in the future without breaking existing applications, for example.

thanks will be fixed soon.

Ok, tried 1.5 hours to get this done. This GWT stuff I just don't get.
Need help/advice how to do this in detail.

Add something like this in de.tomgrill.gdxfacebook.core package (name it GdxFacebookCore.gwt.xml):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit trunk//EN" "http://google-web-toolkit.googlecode.com/svn/trunk/distro-source/core/src/gwt-module.dtd">
<module>
	<source path="" />
</module>

Then add this to de.tomgrill.gdxfacebook.html package:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit trunk//EN" "http://google-web-toolkit.googlecode.com/svn/trunk/distro-source/core/src/gwt-module.dtd">
<module>
	<source path="" />
	<inherits name="de.tomgrill.gdxfacebook.core.GdxFacebookCore" />
</module>

Users of your library will be able to use your module by inheriting de.tomgrill.gdxfacebook.html.WhateverYouNameTheSecondFile.

Thank you very much. Works great.


v3.12.0

NFT1 SLP updates

Pull Request Test Coverage Report for Build 2526

0 of 0   changed or added relevant lines in 0 files are covered.
124 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.02%) to 70.734%

Files with Coverage Reduction
New Missed Lines
%

dist/routes/v2/slp.js
124
50.17%

Totals

Change from base Build 2517:
-0.02%

Covered Lines:
2230

Relevant Lines:
2948

💛  - Coveralls


[otbn] Fix a glitch in locking signal and then a couple of bogus assertions

These are all fall-out from the "simple", "obviously correct" timing rejig that I did in 48e4bb6. Aargh!

Hmm. One test in CI(private) is timing out. Annoyingly, I can't tell which one because we apply the timeout by just killing the container! I think I might be able to reproduce this locally, and I'm going to try to debug what's going on today. If no luck, I'll add some prints to dvsim to print out what it's running at any given time.

I noticed a lockup issue when I rebased another PR on this (so I could test it without all of the regression failures this fixes). I had a bunch of tests that never seemed to finish executing (killed them after ~30 minutes), I presume it's the same issue you're looking at now.
I don't think we've got a timeout as part of the OTBN testbench? We should add one.

I don't think we've got a timeout as part of the OTBN testbench? We should add one.

There's a default that's set in dv_base_test.sv (to 200ms). I suppose that's rather a long time (20,000,000 cycles at 100MHz) so maybe we should cut it down. But it's not super-easy to know what it should be cut down to...

Cool. I've got a local set of patches doing that, but they add a bit of functionality (an error if the req/ack interface gets perturbed). I'm going to merge this now, but follow up with that change.


Change the architecture for cpuhog/deadweight management

Currently:

Simple scripts (cpuhog.sh, deadweight.sh) run fairly often (hourly) to run sonalyze queries to look for jobs that are cpu hogs (abuse the resource rules) or dead weight (defunct).  The output from the queries is appended to new log files in the log file tree under today's date: cpuhog.csv and deadweight.csv.  Those files have some redundancy because two back-to-back queries may find the same jobs in violation, this is normal.  The scripts have to run "fairly often" in order to ensure that job IDs are not reused between consecutive runs.
Naicreport is run occasionally (every 12 hours) to consolidate the data from all those new log files into a database it maintains, the operations are naicreport ml-cpuhog and naicreport ml-deadweight.  It will report any new activity, and since it has a database it can know what is new and what is not.

The current architecture works but the additional log files in the log file tree are annoying (#120) and there is one more level of indirection in this pipeline than in other operations, in which naicreport runs sonalyze directly.
I think a better architecture would be for naicreport to own this process.  When we invoke naicreport it would perform a sonalyze query and integrate the resulting data into its database.  This query could be run with a 1h cadence.  Then in a separate step we would invoke naicreport again to generate reports of new incidents.  Reporting could still be with a 12h cadence.
This is a fairly simple change but it gets rid of the new log files and the shell scripts that run sonalyze in a special way, and centralizes more "consumer" work with naicreport.

The current architecture works but the additional log files in the log file tree are annoying (#120) and there is one more level of indirection in this pipeline than in other operations, in which naicreport runs sonalyze directly.

In addition to being annoying, there is the questionable assumption that the uid that runs the analysis has write access to the data directory!  On Fox (at the moment) it just ain't so, because the sample logs are being created by the sonar system user but the analysis is being run under my own uid.

This has to be done carefully, or we'll have multiple concurrent processes writing to the same file and we'll need locking, and I don't want that right now.
The best short-term solution is to simply decouple all data storage for the cpuhog/deadweight analysis from the log tree; all the state files - intermediate reports and databases alike - go into a separate tree.  This fixes #120 as a side effect and means that we no longer assume that the log tree is writable by the analysis job.  For this, we keep the intermediate scripts, so the present bug will not be fixed, but it will be less important.  I'm going to repurpose #120 for this work.
Longer term I still want to get rid of the intermediate scripts and roll everything into naicreport, so that there is a naicreport deadweight-analyze verb and a naicreport deadweight-report verb, but by then the database structure might be something else.  I'll lower the priority of this bug.


lang/EXPR/expr705 should not be in the jdk-18 tck tests list

lang/EXPR/expr705 does not exist in jck-18
Signed-off-by: Andrew Leonard<EMAIL_ADDRESS>

FYI @JasonFengJ9


Video calls open again on Electron window isn't working for server version 4.8.3

Search before asking

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

Operating System

[X] macOS
[X] Windows
[ ] Linux

Operating System Version
Windows 10, macOS 12.6
It happens on the web browser too?
No, it just happens on the Desktop app
Rocket.Chat Desktop App Version
3.8.10
Rocket.Chat Server Version
4.8.3
Describe the bug
The web browser window is starting instead of the Electron window in a video call.
How to Reproduce
Start a new video call and the browser window is opening.
Describe your Expected behavior
An extra Electron window should open (like in older versions).
Anything else
No response
Are you willing to submit a code contribution?

[ ] Yes, I am willing to submit a Pull Request!

@moell9 already found the issue and fixed. Will be released today yet. Thanks!


Compute Normal Form not working with Agda 2.5.2

Normal form does not work in Atom for me. No matter what I type, it always results in "Compute Normal Form". This worked before I updated to 2.5 from 2.4.

This looks suspiciously similar to that of #41!
Thanks for reporting this, I'll patch it as soon as I got out of the barrack XD


src/setup_payload/python/generate_setup_payload.py

Documentation issues
spec  v1.0 Chapter <IP_ADDRESS>. I see payload format that is "Version"、"VendorID"、"ProductID"...
in generate_setup_payload.py,The first is "Padding". Could somebody tell me why?
Platform
No response
Anything else?
No response

@KuanHug If you see here https://github.com/project-chip/connectedhomeip/blob/e75e729eb9ce78abf439c8bb332af01ba560d542/src/setup_payload/python/generate_setup_payload.py#L110-L118 and compare it with spec the order is reversed. Thats why padding is at the very top in code and at the bottom in spec.

@shubhamdp Oh okay , I understand thanks.
Another problem, I don't understand this function to do qrcode string.
https://github.com/project-chip/connectedhomeip/blob/bfa05804ac3c224c9e70921a857ffcac32ccc7f4/src/setup_payload/python/Base38.py#L44-L47
for example,

But the result is "base38[W,2,7,K,2]" with the base32.py function ,is not match. So I don't know why.


Spanish content on the English docs

What article on docs.github.com is affected?
https://docs.github.com/en/developers/webhooks-and-events/webhook-events-and-payloads
What part(s) of the article would you like to see updated?
The callout underneath the heading contains Spanish content.
Additional information
This change was deployed sometime between February 25 2021, 11:34 am EST and February 26 2021, 1:16pm EST
You can view the diff of these changes here: https://github.com/octokit/webhooks/compare/df46101f1c4dae303fdc4f20d2a229b6d89be823...webhooks-update
Ref: https://github.com/octokit/webhooks/pull/387

The relevant files that should have the content are: data/reusables/gated-features/enterprise_account_webhooks.md and data/reusables/gated-features/enterprise-accounts.md yet they haven't been touched in this repository lately

seems to be fixed now


How to: Access time variable

This seems simple enough but can't get the polling example to work with my timer.
All I want is to be able to access the millisecond value of the timer in my controller/directive as a variable.
my html:
<button class="button button-icon ion-pause pull-left" ng-click="stopTimer()"></button>
<button class="button button-icon ion-play" ng-click="play()"></button>
<timer autostart="false" class="time pull-right" interval="1">{{hhours}} : {{mminutes}} : {{sseconds}}</timer>

my js:
  link: function(scope, el, attrs, ctrl) {

                    scope.timerRunning = false;
                    scope.timerStarted = false;
                    scope.timerType = 'Polling Server';

                    scope.play = function () {
                        if(scope.timerStarted){
                            scope.resumeTimer('poll-server');
                        } else scope.startTimer('poll-server');
                    };

                    scope.startTimer = function (){
                        scope.$broadcast('timer-start');
                        scope.timerRunning = true;
                        scope.timerStarted = true;
                    };

                    scope.stopTimer = function (){
                        scope.$broadcast('timer-stop');
                        scope.timerRunning = false;
                    };

                    scope.resumeTimer = function () {
                        scope.$broadcast('timer-resume');
                        scope.timerRunning = true;
                    };

                    scope.$on('timer-tick', function (event, args) {
                        scope.timerConsole += scope.timerType  + ' - event.name = '+ event.name + ', timeoutId = ' + args.timeoutId + ', millis = ' + args.millis +'\n';
                    });
}

note: the timer works, the play, pause, resume code works, but the timer-tick event doesnt fire.
you use:
ng-init="timerType = 'Polling Server'" in your demo, I've just put this in my directive link function.
you pass in this 'poll-server' to the start and stop functions but the argument isnt used.
what am I missing?

think I had a $scope instead of a scope.
removing the long scope.timeConsole += line and just using:
 scope.$on('timer-tick', function (event, data) {
                        console.log(event, data);
                    });

works.


Add media change support v2

Patches to add media change support based on @bgly's PR
https://github.com/open-iscsi/tcmu-runner/pull/411

Any ETA on this @mikechristie

Ah sorry. I didn't see you update the targetcli patch. I will test it all again today.

sounds good, thanks mike!

Just a FYI, I am still working on this. It will get done this week.

Did you ever send the kernel patch to update the uio name when writing to the dev_control control file? If not, I attached a patch here:
tcmu-update-dev-cfg-via-control.txt

Repushed branch. It should work with the targecli patch attached to your PR and to the kernel patch above.
It is pretty much the same as before, but with the media -> medium rename, some error handler fixes so nicer strings are returned on failure, and I added a check so only handlers that report they support the op get called.

Looks good to me @mikechristie

bump?


invidious: 0.20.1-unstable-2024-03-08 -> 0.20.1-unstable-2024-03-31

Description of changes
Fixes #300537
cc @sbruder @infinisil @999eagle
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

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

1 package built:

invidious

Result of nixpkgs-review pr 300643 run on aarch64-linux 1

1 package built:

invidious


[Sedona-28] shape&wkb ser de

Is this PR related to a proposed Issue?
SEDONA-28
What changes were proposed in this PR?
Added WKB serializer as an optional serializer and use the old Serde as the default SerDe for both Core and SQL. The user should only use it if they use geometries that are currently not supported by the old Serde.
The user should be able to choose the serializer as follows
.config("spark.serializer", classOf[KryoSerializer].getName) // org.apache.spark.serializer.KryoSerializer
.config("spark.kryo.registrator", classOf[SedonaKryoRegistrator].getName)
.config("spark.serializer", classOf[KryoSerializer].getName) // org.apache.spark.serializer.KryoSerializer
.config("spark.kryo.registrator", classOf[SedonaWKBKryoRegistrator].getName)

How was this patch tested?
Using the existing tests. I Will add more tests soon
Did this PR include necessary documentation updates?
Not yet. Will be added soon.

@jiayuasu , I will be adding more commits soon to eliminate the code repetition of the ShapeGeometrySerde and the WKBGeometrySerde.
You can start reviewing the other code if you want to.

Awesome. Once you finish the alternative WKB writer, we can publish the Sedona 1.0.1 release. There are a few relatively critical patches to be released in 1.0.1.

@netanel246 Hi Netanel, any update on this PR? If you don't have time to finish this in 1.0.1, we can put in in 1.1.0 and I will then work on 1.0.1 release because we have a few important patches to release.

@jiayuasu Hi Jia,
Unfortunately, I don't have much free time now, since there are more things to do here than I originally thought.
This can probably be pushed to 1.1.0, and I'll try to work on it for that release.

@jiayuasu ,
Did you encounter that exception using the Github Action? Full error message
2021-04-14 14:20:33,533 WARN  [main] util.Utils (Logging.scala:logWarning(66)) - Service 'sparkDriver' could not bind on a random free port. You may check whether configuring an appropriate binding address. 2021-04-14 14:20:33,539 ERROR [main] spark.SparkContext (Logging.scala:logError(91)) - Error initializing SparkContext. java.net.BindException: Cannot assign requested address: Service 'sparkDriver' failed after 16 retries (on a random free port)! Consider explicitly setting the appropriate binding address for the service 'sparkDriver' (for example spark.driver.bindAddress for SparkDriver) to the correct binding address.
In my env, all the tests are passing. Only on the CI, I've got this exception which means that spark context cannot be created using this binding address.
I saw here that to solve that we need to add this ENV: SPARK_LOCAL_IP="<IP_ADDRESS>"
Any idea will be appreciated.
Thanks.

@netanel246 This is because you have multiple test cases create SparkSession which all try to take over the port (4040, I guess). To fix that, I suggest you use the initialize function in TestBase. Here is an example: https://github.com/apache/incubator-sedona/blob/master/core/src/test/java/org/apache/sedona/core/formatMapper/TestReadInvalidSyntaxGeometriesTest.java#L42
Let's see how it goes.

@netanel246 What surprised me is that my last commit which only changed a comma in the doc also leads to the Spark driver cannot find port issue. But the master brach was built successfully two weeks ago. I guess probably the network setting in GitHub Action got changed from GitHub side. Let me explore it a bit.

@netanel246 The issue was due to an issue of the latest GitHub Action Ubuntu image update. It looks like their update leads to the failure of lots of Spark-based CI tests. Their update affects both Ubuntu 20.04 and Ubuntu 18.04 which is the one we used in our Github Action.
https://github.com/actions/virtual-environments/issues/3185

@jiayuasu , Hi Jia,
I've finished the core implementations. (except for the IndexSerde which I don't know if we want to provide a WKB serde for that also)
Now, I will try to implement it for the SQL module.
If you have time, I will be more than happy that you start to review my code for that part.
P.S.
As you can see I am still using the CI, because I fixed the problem(Java and Scala build) with the workaround of SPARK_LOCAL_IP: "<IP_ADDRESS>".

@netanel246 The current implementation looks good to me! Sedona has its own index serializer. So both WKB serializer and Shape Serializer will re-use the same index serializer.
Looking forward to the SQL part!

@netanel246 Any update on the SQL part?

Hi @jiayuasu ,
Unfortunately, I didn't have time for this till now.
There is a way to find which kryo serializer is used in runtime (without using the spark conf which isn't available for the scopes that I need)? I tried to search for that on the kryo docs but didn't find anything useful.

.config("spark.kryo.registrator", classOf[SedonaKryoRegistrator].getName)
.config("spark.kryo.registrator", classOf[SedonaWKBKryoRegistrator].getName)

otherwise, I won't know which to use for the SQL module.
I think that I need to find which is used and apply the SQL serializer according to this value.
What do you think about that?

Hi @jiayuasu ,
I think I've found a solution. I will use the SedonaConf to get the type of Serializer in runtime.

Hi @jiayuasu ,
I think I've found a solution. I will use the SedonaConf to get the type of Serializer in runtime.

This is great. I wonder if this will lead to any performance downgrade since we need to fetch the conf for every ser/deser?

This is great. I wonder if this will lead to any performance downgrade since we need to fetch the conf for every ser/deser?

I was thinking to fetch the conf once only in the package level using the scala package object feature:
package-objects
But I have two issues now:

I need a SparkConf object which I don't have access to it at the package level.
I don't have access to spark session from the Spark SQL functions, e.g: Constructors.scala

I would appreciate any thoughts you have.

@netanel246 How about something like:  System.setProperty("sedona.global.charset", "utf8")? Note that: this system property needs to be set in all executors (probably could be done together in a udf or map).
If this is not the best practice, I think we would rather resort to the old GeometrySer for Sedona SQL. What do you think?

@jiayuasu , I've found a solution using the scala package object feature.
I need to fix 3 tests for scala and java and fix some of the python tests.
After that, I will add more tests and docs to the code.
Please let me know what do you think.

Hi @jiayuasu ,
I'm trying to pass this test,  but I encountered a problem because I have two SparkSessions which always the first one (from TestBaseScala.scala) loads first, and failed the test.
It failed because the default serde is SHAPE, and this test will be pass only if the serde is WKB.
Do you have any ideas on how to make it work? I tried to stop the SparkSession before I started, but it's not working.

Hi @jiayuasu ,
I'm trying to pass this test, but I encountered a problem because I have two SparkSessions which always the first one (from TestBaseScala.scala) loads first, and failed the test.
It failed because the default serde is SHAPE, and this test will be pass only if the serde is WKB.
I need to find a way to change the spark.kryo.registrator and the sedona.serializer.type to use the WKB serde.
Do you have any ideas on how to make it work?
I tried to:

Stop the SparkSession before I started to run the test (using beforeEach)
Getting the current sparkSession and stop it (using SparkSession.getActiveSession.get)

I don't have any solution for now. Let me explore it a bit and see what I can do.

@jiayuasu,
Strangely, if the test runs alone, it succeeds. Only when I run it with another test that uses TestBasicScala does the problem occur.
It doesn't help to stop the SparkSession of TestBasicScala. It somehow still exists in my test context. Thus, the test failed because it loads the session with Shape Serde

@netanel246 I actually got an idea. Remember in Sedona SQL, we have both Scala and Java test. Why not put WKB SQL serializer test in Java test only? This way, I believe you can bypass this issue

@jiayuasu, Thank you.
Strangely, if the test runs alone, it succeeds. Only when I run it with another test that uses TestBasicScala does the problem occur.
It doesn't help to stop the SparkSession of TestBasicScala. It somehow still exists in my test context. Thus, the test failed because it loads the session with Shape Serde

This is a very common issue when you didn't close the session between tests. Could you just add one override aftereach function which call sparksession get active session close? Better also move the sparksession create part into beforeeach function.

@jiayuasu, Thank you.
Strangely, if the test runs alone, it succeeds. Only when I run it with another test that uses TestBasicScala does the problem occur.
It doesn't help to stop the SparkSession of TestBasicScala. It somehow still exists in my test context. Thus, the test failed because it loads the session with Shape Serde

This is a very common issue when you didn't close the session between tests. Could you just add one override aftereach function which call sparksession get active session close? Better also move the sparksession create part into beforeeach function.

Thank you for your response.
I've tried that and still, I have two spark sessions.
@jiayuasu ,
I also tried the java test and that works. I will commit that soon.
Thank you :)

@netanel246 Yes, I think you should use WKBserializer in all Java SQL tests including Adapter test. I believe this way you can bypass this issue.

@netanel246 Yes, I think you should use WKBserializer in all Java SQL tests including Adapter test. I believe this way you can bypass this issue.

That seems to work.
But it implies that the java tests on Spark SQL are using ONLY the WKB serde.
Thank you :)

@netanel246 That's true. But I think this is the only solution we have. And I believe WKB serializer is more robust than GeomSerde except its performance. So we can do it this way.

@jiayuasu, Thank you.

Strangely, if the test runs alone, it succeeds. Only when I run it with another test that uses TestBasicScala does the problem occur.

It doesn't help to stop the SparkSession of TestBasicScala. It somehow still exists in my test context. Thus, the test failed because it loads the session with Shape Serde

This is a very common issue when you didn't close the session between tests. Could you just add one override aftereach function which call sparksession get active session close? Better also move the sparksession create part into beforeeach function.

Thank you for your response.
I've tried that and still, I have two spark sessions. Furthermore, the other tests that run after that test keep failing with an error of stopped spark session.
I've also tried to update the TestBaseClass to use BeforeAndAfterEach, the tests that run after WKBGeometrySerializerTest failed with Cannot call methods on a stopped SparkContext.  which I do not understand because the beforeEach contains the creation of a spark session.
@jiayuasu ,
I tried to use the java test but it behaves the same.
The test runs alone, but with the adapterTestJava it fails.

I don't think writing in Java could bring any differences. Instead, try just sparksession.close() in after each might help.

@netanel246 Hi Netanel, any updates on this one?

@jiayuasu,
We need to fix the python tests that are failing.
I tried to look at that, but I am not sure if I could fix them (I am still trying to run the python tests on my local machine)
If I see that I am not able to fix them, I will ask @Imbruced to help me.

@netanel246 @jiayuasu I will look at that today evening.

@netanel246 I was able to quick fix the Python exceptions which occur after changes within this PR.

Fast solution require to force user to use "wkb" serializer. I can create PR with that but that cause one issue, Python API will have only one serialization method available (wkb). Selecting "shape" method breaks the API.
Second solution is to implement also shape serializer in Python API but... It is ugly solution in my opinion. Why ? The only way how I can get information about serialization methodology is using SedonaRegistrator and store that information after registering additional functions and after that dynamically chose which serializer should be used. Also I can try to get spark session and current arguments, but still this causes code smell. I do not like that solution.

class GeometrySerializer:

    def serialize(self, obj):
        raise NotImplementedError("Geometry serializer should implement serialize method")

    def deserialize(self, datum) -> BaseGeometry:
        raise NotImplementedError("Geometry serializer should implement deserialize method")

class WKBSerializer(GeometrySerializer):

    def serialize(self, obj):
        return dumps(obj)

    def deserialize(self, datum) -> BaseGeometry:
        bytes_data = b''.join([struct.pack('b', el) for el in datum])
        geom = loads(bytes_data)
        return geom

class ShapeSerializer(GeometrySerializer):

    def serialize(self, obj):
        pass

    def deserialize(self, datum) -> BaseGeometry:
        pass

serializers = {
    "wkb": WKBSerializer(),
    "shape": ShapeSerializer()
}

class GeometryType(UserDefinedType):

    @classmethod
    def sqlType(cls):
        return ArrayType(ByteType(), containsNull=False)

    def fromInternal(self, obj):
        return self.deserialize(obj)

    def toInternal(self, obj):
        return [el - 256 if el >= 128 else el for el in self.serialize(obj)]

    def serialize(self, obj):
        from sedona.register import SedonaRegistrator
        serializer = serializers[SedonaRegistrator.serializer]
        return serializer.serialize(obj)

    def deserialize(self, datum):
        from sedona.register import SedonaRegistrator
        deserializer = serializers[SedonaRegistrator.serializer]
        return deserializer.deserialize(datum)

    @classmethod
    def module(cls):
        return "sedona.sql.types"

    def needConversion(self):
        return True

    @classmethod
    def scalaUDT(cls):
        return "org.apache.spark.sql.sedona_sql.UDT.GeometryUDT"

Third, require some minimal code changes on jvm side, can you bring information which serialization method you use as first 4 bytes saved as integer ? Example 1 means wkb, 2 means shape and other numbers for next possible serializers ? What do you think ? I think this is much safer than the previous ones.

@Imbruced , I think the third option is the best.
I will put a PR soon.

@Imbruced , any updates on this?

@Imbruced , any updates on this?

I am working on that branch (https://github.com/Imbruced/incubator-sedona/tree/shape-wk-serde-python-dev), major work is done, need to fix 2 tests with shape serde and ~6 with wkb serde. Hope tomorrow is landing day.

@netanel246 its ready, give me some time to make sure it is 100% correct.

Great news! All test cases have passed.
Now let's finalize the docs.
@netanel246 Would you please add some steps to explain how to switch between two SerDe in

https://sedona.apache.org/tutorial/rdd/
https://sedona.apache.org/tutorial/sql/

@Imbruced Can you add some step to explain how to switch between two SerDe in

https://sedona.apache.org/tutorial/core-python/
https://sedona.apache.org/tutorial/sql-python/

Once we have the docs in place, we will ask Yitao, Sedona R maintainer, to take a look at the R part.


Cache ctx.User in retrieveFeeds

Add the already-loaded ctx.User to userCache

Trusted LGTM
(I hope someday Xorm will support preloading, so we don't need to query each user separetely).

LGTM


Switching event from a non-default calendar does not create a page with the proper metadata

This is a recurring problem, if I add an event to the non-default/first calendar first and then change it to some other calendar. The page is created but with no metadata and the event does not get added to the calendar. Please fix this issue. Thanks.
P.S Can we add partitions and events that span horizontally not vertically?

Thanks for submitting this bug report!
A few questions:

Do you fully create the event before trying to switch it to another calendar?
Are both calendars local calendars? Do you have any ICS or CalDAV calendars?

Please submit a separate feature request issue with your other request.

Closing this bug since I never got enough information to reproduce it.


Adding config parameters like url, interval and frequency

:nut_and_bolt: Description: What code changed, and why?
Add the license audit scheduler parameter in config.

:chains: Related Resources
https://chefio.atlassian.net/browse/CHEF-5804
:+1: Definition of Done
Now the schedule can be changed for testing purpose from the config itself.
:athletic_shoe: How to Build and Test the Change
The steps are mentioned in the demo video
components/license-control-service/

cd /hab/pkgs/<origin>/license-control-service/<pkg-path>/
add change in default.toml

:white_check_mark: Checklist
All PRs must tick these:

[X] I have read the CONTRIBUTING document.
[X] All commits signed-off for the Developer Certification of Origin.

With occasional exceptions, all PRs from Progress employees must tick these:

[X] Is the code clear? (complicated code or lots of comments--subdivide and use well-named methods, meaningful variable names, etc.)
[X] Consistency checked? (user notifications, user prompts, visual patterns, code patterns, variable names)
[X] Repeated code blocks eliminated? (adapt and reuse existing components, blocks, functions, etc.)
[X] Spelling, grammar, typos checked? (at a minimum use make spell in any component directory)
[X] Code well-formatted? (indents, line breaks, etc. improve rather than hinder readability)

All PRs from Progress employees should tick these if appropriate:

[X] Tests added/updated? (all new code needs new tests)
[X] Docs added/updated? (all customer-facing changes)

Please add a note next to any checkbox above if you are NOT ticking it.
:camera: Screenshots, if applicable
https://progresssoftware.sharepoint.com/:v:/s/ChefCoreC/EUqlG7DK50RDm4UinQ1oNEEBN_HnMvfESD7tu4blm9xINQ?e=q9jX3N
After hour support:-

Hi @YashviJain01, Since you are adding config parameters, it would be good if you could also provide the demo of patching those parameters. Please make to include these things in the demo next time onwards. Approving for now.


It translation improvement

Task/Issue URL: https://github.com/duckduckgo/Android/issues/559
Description
Fixed/improved some it strings
Steps to test this PR
Should not need tests

Hi guys, can I have an update on this? Let me know if there is something to change

Thanks @Zoo-M0
As per our [translations guidelines](https://github.com/duckduckgo/Android/blob/de velop/TRANSLATIONS.md#improve-language-translations): "We only accept translations tweaks that fix actual issues (typos, grammatical errors) and won't accept minor changes that are only focused on tweaking the wording"
Could you briefly explain if that's the case for this PR?

Sure, from my point of view there are some grammatical issues with word genres and single/plural forms, maybe the commit on emailSignOutDialogTitle could be considered a wording tweaking, but personally I consider it a grammatical issue.

@cmonfortep do you have time to look at this or do you want to assign a new reviewer?

@cmonfortep any news on that? If it needs some more work I could look into it

@Zoo-M0 I will take a look soon. Thanks.

Thanks @Zoo-M0. PR is still on draft, is this ready for review? Otherwise, I took a look and I'm ok with the changes.

@cmonfortep sorry for leaving this in draft, I have updated the title but it appears to me still in draft, if it's ok to you merge it. I'm done.
I will search for issues where I can be helpful :)


Bringing the master branch in line with Godot master

Bringing the master branch in line with Godot master as at the 2nd of June 2020
IMPORTANT This will bring the master branch in line with Godot master which is now our Godot 4.0 Vulkan implementation. This is needed so we can start preparing our modules for Godot 4.0 as there are serious breaking changes in renamed nodes, renamed functions and such.
When developing modules for Godot 3.2 (or earlier) make sure you use the correct branch of this repo!

I'll wait with merging this until the end of the week to give people to become aware of this change.

@karroffel , @akien-mga, toasteater makes valid points here. Due to the breaking changes in Godot the structs are no longer backwards compatible as originally designed to be. That they still hold the same version number makes it impossible for a plugin to detect that the API isn't compatible with what it is compiled against.
I personally vote for changing the major version number in the APIs so it is in sync with the version number of Godot. I don't think a gdnative plugin written for Godot 3 will work when used with Godot 4 at all anyway, we really should have a protection against that.
This is something that needs to be changed upstream in Godot itself, I wanted your thoughts first before I make a PR for this.

@BastiaanOlij @toasteater  PR https://github.com/godotengine/godot/pull/39183 should fix this behavior by providing a api 2.0 that merge all the 1.0 + 1.1 + 1.2 + breaking changes ;-)

@godotengine/gdnative sorry for the late response, just left an approval on that PR. Looks good. I'll update this once that is merged so we don't have to go through this again.
I am going to merge the 3.2 branch changes in a minute (unless there were reactions there I haven't read yet).
@akien-mga should we move this repo to the main godot github page aswell?

This repo has been moved, any update on this PR and the others like it?

Are there any plans on merging this soon?

I intend to do this soon (there are still some pending PRs that should be included, so I'm waiting for those to be merged). So I'm not sure if you want to update this PR or close it.

This now changes loads with GDExtensions so closing this PR, we'll open a new one soon.


OpenIdConnectProtocolValidator should have 'RequireSub' true by default.

see: http://openid.net/specs/openid-connect-core-1_0.html#IDToken
sub claim is required.

#538


Options has an unknown property 'before'

Seems overlay doesn't work with latest webpack-dev-server v4.1.0.
Error:
 - options has an unknown property 'before'. These properties are valid:
   object { allowedHosts?, bonjour?, client?, compress?, devMiddleware?, headers?, historyApiFallback?, host?, hot?, http2?, https?, ipc?, liveReload?, magicHtml?, onAfterSetupMiddleware?, onBeforeSetupMiddleware?, onListening?, open?, port?, proxy?, setupExitSignals?, static?, watchFiles?, webSocketServer? }

this line is broken: https://github.com/gregberge/error-overlay-webpack-plugin/blob/6e627654d3f824e46710b31b1b3bbc361bbd441e/src/index.js#L27

I can confirm I ran into the same issue today.

Confirming this bug as well when trying to upgrade on RedwoodJS, which is using Webpack v5 and Webpack-dev-server v4 (compatible with v5).
There were many breaking changes in devServer v4:

https://github.com/webpack/webpack-dev-server/blob/master/migration-v4.md

Looks like this change here:

The before option was renamed to onBeforeSetupMiddleware and changed arguments.

...is potentially causing an issue here:
https://github.com/gregberge/error-overlay-webpack-plugin/blob/fe2cd085c90c87d10da9e0fcee82ac6b930660dd/src/index.js#L27
Additionally, it seems the following "sock*" changes will also cause problems:

public, sockHost, sockPath, and sockPort options were removed in favor client.webSocketURL option:

...over here:
https://github.com/gregberge/error-overlay-webpack-plugin/blob/fe2cd085c90c87d10da9e0fcee82ac6b930660dd/src/index.js#L15-L17

Hi, could someone work on a PR to fix it?

If someone can lead on the PR, I am available to help with questions and diagnosing issues. Just loop me in if/as needed.

Guys, please make a merge.


typescript: document gateways with wireguard backends

worked on grid_client example today, will write this docs tmw.


docs: react-query docs for QueryClientProvider

Adds information about initializing the QueryClientProvider for react-query (described in #452).
closes #452

you're the best! thank you!

Thank you @ihusemann and @michaelangeloio 🙌


Update to work with new ChemistryFeaturization API

NB I know that the SGCNN syntax is still wrong but I'm fixing that in another PR that actually adds tests for it; branch will be pushed to a draft PR soon...

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@ec8cdca). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Current head eb8c005 differs from pull request most recent head f727350. Consider uploading reports for the commit f727350 to get more accurate results

@@           Coverage Diff           @@
##             main      #77   +/-   ##
=======================================
  Coverage        ?   65.21%
=======================================
  Files           ?        2
  Lines           ?       69
  Branches        ?        0
=======================================
  Hits            ?       45
  Misses          ?       24
  Partials        ?        0

Continue to review full report at Codecov.

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

hahaha so somehow LGTM, despite me having seen it a number of times, is not in my instantaneously recognizable acronym lexicon and so my first thought of what it was was "let's get this merged" lol...also works, I suppose


CAMEL-14215: Rename to camel-core-osgi-activator.  Add docs.

https://issues.apache.org/jira/browse/CAMEL-14215
Refactor requests from: https://github.com/apache/camel/pull/3378#issuecomment-561117858

cc @oscerd @jbonofre

Thanks for keep working on this.
Thanks so what I think is really taking people with some surprise is that it registers Camel routes into the same single camel context from any bundles. The point of Apache Karaf was to be like an app server where each bundle is isolated. So this goes against this practice. This should be documented much much more clearly. And also it lacks features with the ease of use how to configure camel context itself (you end up with its defaults) and how would people do dependency injections for beans etc.
Also it should be renamed to camel-osgi-activator, and moved to components (as its not a core piece, eg not used by other osgi like osgi blueprint which is the main osgi support in Camel).

Thanks again for the feedback @davsclaus .  I'm going to bring your points back to the original thread on the dev list to discuss.


Change curl examples

Motivation
This is part of onboarding into PE Calibra team at FB.
Have you read the Contributing Guidelines on pull requests?
Yes
Test Plan
N/A
Related PRs
N/A

It seems that one of the other comments (something regarding tab) magically vanished! Can you pls comment it again - so I can change that

@bors-libra r+

:pushpin: Commit 873916c has been approved by thefallentree

:hourglass: Testing commit 873916c554a12c95ed179897bac7653d9a721ffc with merge 4b25e0fd9913bfdf74324f57c994b82116a49490...

:broken_heart: Test failed - checks-circle_commit_workflow

@bors-libra retry

:hourglass: Testing commit 873916c554a12c95ed179897bac7653d9a721ffc with merge d92be2f2b530882f6f06f5995c2b7c1ee525a14f...

:sunny: Test successful - checks-actions_land_blocking_test, checks-circle_commit_workflow
Approved by: thefallentree
Pushing d92be2f2b530882f6f06f5995c2b7c1ee525a14f to master...


[VSCode] Merge main into feature branch + make assets non-private

Summary of the changes

The only relevant commits are the last two.
The second-to-last commit is messy because it's a merge, so I wouldn't recommend going through it, but to summarize: It addresses merge conflicts, including the fact that we don't delegate DocumentColor and ColorPresentation requests correctly: https://github.com/dotnet/razor-tooling/commit/b6ece3727c11d1aa94bf5a4125193e8558498381#diff-4e2439acffac9995475dbb89cf4efc4693ef65fe3c5c7f75039c65ef4ebb19a8. Also added a new DelegatedColorPresentation type: DelegatedColorPresentationParams.cs
The last commit makes several logging-associated packages non-private in order to make them discoverable by O#. Currently O# cannot discover these packages and is throwing errors.

For the sake of getting updated VSCode bits off the feature branch I'm going to merge this, but if anyone has any concerns lmk and I'll address in a follow up PR.


Speed up requirements installation by skipping noDeploy

Instead of filtering later, just don't install them

I haven't seen the change, but I would assume it happened because requirements.txt might contain a package that depends on boto3 which will then be installed and deployed regardless of noDeploy. I haven't removed the code that handles that issue. I think it's best to exclude it on both sides.

Yeah, that makes sense.


Async reusable validators

Hello,
I looking for idea how to create reusable async validation?
I took a look on example app and in my case i don't have any point where i can trigger async validation. In my opinion async validation should automaticly dispatch event when field is valid locally and any async validator is assigned.
Now it doesn't work very well IMO.

Hmm, providing ideas for re-usable async validation is tricky since there are so many different patterns on how people perform asynchronous actions. In the example application I am using effects, and therefore it may be possible to provide an observable transformation function that dispatches the correct action, something like this:
import { required } from 'ngrx-forms/validation';

function validateRequiredAsync(input: Observable<any>, controlId: string): Observable<Action> {
  return input.pipe(
    map(required),
    map(errors => new SetAsyncErrorAction(controlId, 'required', errors)),
    startWith(new StartAsyncValidationAction(controlId, 'required')),
  );
}

In case you are using services you could do something similar, just dispatch the actions instead of returning them in the observable, i.e.:
import { required } from 'ngrx-forms/validation';

// input is the observable from the service call
function validateRequiredAsync<T>(input: Observable<T>, controlId: string, actionsSubject: ActionsSubject): Observable<T> {
  return Observable.create(observer => {
    actionsSubject.next(new StartAsyncValidationAction(controlId, 'required'));
    return input.pipe(
      tap(value => actionsSubject.next(new SetAsyncErrorAction(controlId, 'required', required(value)))),
    );
  });
}

Okay, maybe the answer to this question will be more helpful. How can I solve such problem. I do not have a specific place in the store for the form (the reducer is generic and can be used everywhere) and now I want to call asynchronous validation only if normal validators say that the value is correct.

I apologize for not responding sooner. I hope my answer can still provide some help. If you have already solved this please close the issue.
Regardless of where you trigger the async validation you will need to know the form control ID of the control you are trying to validate. This ID should be globally unique even if the reducer is used in multiple places. If you only want to trigger async validation if the sync validation is successful I would recommend doing this inside the component that contains the form. Inside of that component you have access to the form state and therefore its ID. You can then either subscribe to the store and set up a subscription to value and validity changes of the form (if using a smart component) or react to value and validity changes through ngOnChanges or by using a setter on the form state input binding. Regardless of how you do this you can then simply check whether the value changed and the sync validation was successful and dispatch the proper actions for triggering the async validation. I hope this helps.

Closed due to inactivity.


replace is_real with is_floating, remove is_real

@martinwicke
Haven't tested (because of https://github.com/tensorflow/tensorflow/issues/6911 testing time goes 1 min -> 20 mins every time you switch branch)

Can one of the admins verify this patch?

Jenkins, test this please!

Thank you!

@caisq, this will fix the API modification in the pull.

Thanks, @yaroslavvb


KAFKA-18022: fetchOffsetMetadata handling for minBytes estimation in both common/uncommon cases of share fetch

About
In reference to comments https://github.com/apache/kafka/pull/17539#discussion_r1832921605 and https://github.com/apache/kafka/pull/17739#discussion_r1842631506, I have updated the way we handle fetchOffsetMetadata update and get so that minBytes estimation is consistent for both common and uncommon cases of share fetch.
Testing
Testing has been done with the help of new/already present unit tests and already present integration tests.

Hi @junrao , I have pushed the suggested change. Please review this PR when you get a chance. Thanks!


Make babel configuration more flexible

Is your feature request related to a problem? Please describe.
In the root of my repo, I have both a .storybook folder and a config folder. My babel config lives in config/babel.config.js. No matter what I do, I can't make storybook see that babel configuration. I don't see any sort of storybook configuration option for this scenario -- it always wants either ./.storybook/.babelrc or ./.babelrc. I still want to keep storybook configuration in a separate directory since it has inflexible notions of config file names. For example, storybook only accepts webpack.config.js, but today I already have 4 webpack config files and should realistically have something closer to 8 files (project settings / common config / server common config, server dev, server prod / browser common config, browser dev, browser prod).
Describe the solution you'd like
Give me a storybook option that says "my babel configuration is in this file over here". Also, support both JSON5 and JS file formats. Storybook could still have the out of the box limitations of only looking at the configDir's babel configuration and still not reading babel configs from package.json; this solution would allow storybook configurations to co-exist with other, more complex configs (such as webpack SSR via serverless).
Describe alternatives you've considered
Two other options exist:

Duplicate my JS-based babel config into .storybook/.babelrc. This is error prone and not a very workable solution; this definitely doesn't work if you're using any sort of JS code/logic to construct your babel config.
Leverage PR #6634 so I can read JS file formats. Then, create a .storybook/babel.config.js file whose sole purpose is to import and then re-export my custom configuration. This seems silly, but would at least work. However, most other tools (such as webpack-babel-loader) offer configuration options that allow you to point to a random babel config. It seems like storybook should do the same.

Are you able to assist bring the feature to reality?
no
Additional context
Babel 7.x introduced more and better configuration options, allowing differences between file-relative and project-wide configs. Storybook seems to be stuck on the 6.x notions of configuration, which are outdated. Babel docs: https://babeljs.io/docs/en/config-files

Funnily enough your issue is fixed on the just released 5.1.0 rc.
I can verify as I have just upgraded for exactly the same reason.

But how do you consume the babel config from a directory other than .storybook or the root of the repo? I didn't see that in the mentioned PR.

You could symlink it?
On Wed, 22 May 2019, 20:51 Zebra Flesh<EMAIL_ADDRESS>wrote:

But how do you consume the babel config from a directory other than
.storybook or the root of the repo? I didn't see that in the mentioned PR.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/storybooks/storybook/issues/6860?email_source=notifications&email_token=AAFM42C6ZDOPHZ3FRVWMNDLPWWP2XA5CNFSM4HOVA7R2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODWAECXA#issuecomment-494944604,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAFM42AXRIBYKG6HJ73EQ6DPWWP2XANCNFSM4HOVA7RQ
.

You could symlink it?

Windows environment, so nope.

I am just cross link to an old issue #4169 here.

This feature could be considered part of that larger request. However, this one could be delivered independently and provide plenty of value while also being smaller in scope (IMO).

related #6633


Add feedback that a page is in a submitted state.

Just fixed the jazzed-up spacing in the html file.


Support release note

Support assign release note file path

This feature was added in db2ed13b03e671bfdf4d9430537110ad76413b8a with the action swaglive/action-generate-release-notes@v1


Allow customization of gce-setup.sh and fix dind-cluster.sh bug

It looks like e2e.go has changed the -check_version_skew argument to
-check-version-skew. Changed the dind-cluster-v1.7.sh too.
Allowing user to override VM name, so that gce-setup.sh could be used
from multiple machines at once.  Allowing zone to be overridden by
user,a nd if not, will use gcloud config to set zone. This supports
developers running from different locations.

 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.vagrant seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

/retest

Hmm, I have problems reproducing the CI issue outside Travis env... Perhaps it has to deal with Docker version. Will try a bit more

@ivan4th Des the Travis-ci run the test.sh script found in the repo?
BTW, I'm using native Mac (but have used Ubuntu 16.04 in a VM too). Both are using 17.06.0-ce for docker. Using Go 1.8.3.
I tried running test.sh in the Ubuntu 16.04 VM. The 1.6 test passed. The src-1.7 had a timeout on a request related to node 2 start. The src-master hung waiting for DNS and dashboard to respond.
I think these errors are unrelated to the changeset, which sets region for GCE and sets the check-version-skew flag, which, if wrong, would have failed with an arg error and not exhibit the issue seen. Advice?

I ran the test.sh script under native Mac. It looks like all the tests passed, except "test-case-src-master". Looks like a bug in the test script. In "test-case-src-1.7" it calls "test-cluster-src", which clones the kubernetes repo. Later, "test-case-src-master" runs and also calls "test-cluster-src" and fails, because the directory already exists.  I'll fix this (surprised it hasn't been seen), and push as part of this commit.

@ivan4th Could use some help on figuring out what is going on here. With this change set, I'm making GCE changes (which are not part of the test.sh run), fixing check-version-skew arg syntax (which would hard fail, if not correct), and recently, changing to allow testing to continue, when kubernetes repo has been already pulled from a previous test (again, would hard fail).
Running locally, I've been able to get every test to pass, except test-master, which fails to get a good health check on either DNS or dashboard containers.
In the latest CI run, I see that test src-1.7 failed. There, it looks like health check failing, on configmap(?), and the test times out.
Test src-master also failed, in this case, starting kubemaster it timed out waiting for control plane. However, I do see that the control plane DID get ready in 45 secs. Seems like maybe a test timing issue? On my local testbed, the control plane came up in 40 seconds.
On a curious note, the test.sh script checks several plugins for 1.5, 1.6, and 1.7 (along with two source checks). Do we need to support 1.5? Just wondering, as it takes really long to run the tests.
Lastly, do you know if the tests pass on the latest source versions w/o any changes to the DinD infrastructure? I'm concerned that there is a problem with the baseline testing with sources.
I've got another change to DinD that I want to push up for review, but am hoping we have a stable base to work with.

@ivan4th @mattymo I see that the check_version_skew option was removed from the code recently. Should I pull that part from this commit and resubmit?

I rebased w/o the fix to check-version-skew, since there was a commit to address that.

 As of TEST_CASE=src-master and Travis failures on src-* tests -- looking into that.
(the changes above are about using newer ubuntu image and working around docker-machine problem on mac docker + not starting the cluster before running test.sh)

@ivan4th Thanks about the point of gce-setup.sh being an example. We're thinking that it could be useful, when using DInD under a CI suite to test IPv6 with Kubernetes. It would be nice, if we can have some options to make it more flexible for people and to fix into CI use.
Since the source tests have been disabled, I'm not so worried (as this change doesn't really affect DinD operation, is just a wrapper), so if we can proceed with this that would be great.
In general though, I find the source test mode useful, especially with the PR option and working with master.  It might be nice to have an option on the test.sh script that would bring everything up and stop, allowing people to use the system as-is, and then manually shutting down the cluster.

Well, re-checked -- this PR also worked for me as-is, so merging. Concerning enabling src tests on Travis: I need to debug this elusive Travis issue, I've requested debug mode for Travis builds of k-d-c and now that I have it granted I can try ssh into the VMs and see what's wrong. As of adding an option for test.sh to just set up the env -- I'll do this.

@ivan4th Awesome! Thanks for the review and looking forward to the upcoming changes.