Update binding to use latest object store

@jpsim @TimOliver
Changes:

Session error callback no longer looks up its session, it gets the session directly (see https://github.com/realm/realm-object-store/pull/265)

Looks good to me, but I'll wait and see what @jpsim says! :)


feat(spacectl/stack): add get var command

@jpJuni0r - thanks a lot for the contribution! Overall it looks good, but I've got a few suggestions.
Naming
I know you and Marcin have had a discussion about naming. I'd like to suggest calling the new command list, for example spacectl stack environment list. That's then consistent with spacectl stack list.
I realise we've got a command called setvar, but that's because we support both environment variables and mounted files, and there's a separate mount command. So this way we'd have:

list - lists all the env vars and mounted files for a stack.
setvar - sets an environment variable.
mount - mounts a file.

Contexts
We support both stack-level environment variables, as well as those defined in a context and attached to a stack, so I think this command should handle both for consistency with the UI.
Here's the GraphQL query the frontend uses for reference:
query GetEnvironment($stackId: ID!) {
  stack(id: $stackId) {
    id

    # I actually don't think you need `attachedContexts` for this - I've just included it for reference in case I'm missing something
    attachedContexts {
      id
      contextName
      config {
        ...configElement
      }
    }

    # I think all the info we need is in the runtimeConfig property, including the context the config item came from
    runtimeConfig {
      context {
        contextId
        contextName
      }
      element {
        ...configElement
      }
    }
  }
}
fragment configElement on ConfigElement {
  createdAt
  id
  runtime
  type
  value
  writeOnly
  fileMode
}

Output
At the moment you're just displaying the name and value, but I think it would be useful to add some more info. Maybe something like this:

Name
Type
Value
File Mode
Context

MY_VAR
Variable
abc123

MY_SECRET_VAR
Variable
*****

/mnt/workspace/some-file
File

755

MY_CONTEXT_VAR
Variable
def321

My Context

AWS_ACCESS_KEY_ID
Variable
<computed>

Maybe if that becomes too messy we could separate env vars and mounted files into two separate tables?
In case this is useful, here's some related notes:

Computed comes from the runtime property. When true it means the var is computed at runtime.
type can either be FILE_MOUNT or ENVIRONMENT_VARIABLE.

Thanks again, and apologies for such a long response :sweat_smile:

Hey @adamconnelly,
thank you very much for the detailled feedback. I've now updated the PR according to your description and I hope, it's now to your satisfaction.
What I didn't implement was masking the secrets in the table output — I'm not sure, whether you have a convention here. Another thing I noticed is, that we denormalized the data by flattening the hierachy of the context and the configElement. Therefore, the output of the CLI doesn't strictly conform to the model used in the GraphQL API.


Add step for dependency tree submission

https://github.com/marketplace/actions/maven-dependency-tree-dependency-submission
https://github.com/github/dependency-submission-toolkit

Unfortunately, it looks like there are a couple issues that might make this not work yet.
I see a documented limitation:

Currently the action is limited to single module Maven projects, with a future update that will add support for multi-module based projects.

and I see this issue about Maven Wrapper support which we'd have to workaround, i think.

@pstackle Yep, this was merely an experiment. 😅
The missing support for Maven wrapper isn't that important. Dropwizard can be built with the preinstalled version of Maven in the GitHub runners.
The limitation on single module projects on the other hand is a deal breaker for now. 🤷


Access Denied despite correct policy being attatched

I have been experimenting with a cluster that has IAM Authentication, and I cannot seem to get it working.
-I have a security group in the cluster that allows in-bound traffic from the ec2 instance I am testing from. I can even do zookeeper interactions like list topics just fine.
-My ec2 instance has an IAM role with a policy that specifically allows for all kafka interactions on all resources
-I also tried an aws local profile that has the same attached policy.
-I am using the following command to attempt a consumer interaction
bin/kafka-console-consumer.sh --bootstrap-server b-1.examplename.kafka.us-east-1.amazonaws.com:9098 --topic exampleTopic --consumer.config config/consumer.properties
consumer.properties has the below properties
security.protocol=SASL_SSL
sasl.mechanism=AWS_MSK_IAM
sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required;
sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
Am I missing anything?
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. [2021-06-16 14:51:21,365] INFO AdminClientConfig values:          bootstrap.servers = [b-1.test-cluster.kafka.us-east-1.amazonaws.com:9098, b-3.test-cluster.kafka.us-east-1.amazonaws.com:9098, b-2.test-cluster.kafka.us-east-1.amazonaws.com:9098]         client.dns.lookup = default         client.id =          connections.max.idle.ms = 300000         default.api.timeout.ms = 60000         metadata.max.age.ms = 300000         metric.reporters = []         metrics.num.samples = 2         metrics.recording.level = INFO         metrics.sample.window.ms = 30000         receive.buffer.bytes = 65536         reconnect.backoff.max.ms = 1000         reconnect.backoff.ms = 50         request.timeout.ms = 30000         retries =<PHONE_NUMBER>         retry.backoff.ms = 100         sasl.client.callback.handler.class = class software.amazon.msk.auth.iam.IAMClientCallbackHandler         sasl.jaas.config = [hidden]         sasl.kerberos.kinit.cmd = /usr/bin/kinit         sasl.kerberos.min.time.before.relogin = 60000         sasl.kerberos.service.name = null         sasl.kerberos.ticket.renew.jitter = 0.05         sasl.kerberos.ticket.renew.window.factor = 0.8         sasl.login.callback.handler.class = null         sasl.login.class = null         sasl.login.refresh.buffer.seconds = 300         sasl.login.refresh.min.period.seconds = 60         sasl.login.refresh.window.factor = 0.8         sasl.login.refresh.window.jitter = 0.05         sasl.mechanism = AWS_MSK_IAM         security.protocol = SASL_SSL         security.providers = null         send.buffer.bytes = 131072         ssl.cipher.suites = null         ssl.enabled.protocols = [TLSv1.2]         ssl.endpoint.identification.algorithm = https         ssl.key.password = null         ssl.keymanager.algorithm = SunX509         ssl.keystore.location = null         ssl.keystore.password = null         ssl.keystore.type = JKS         ssl.protocol = TLSv1.2         ssl.provider = null         ssl.secure.random.implementation = null         ssl.trustmanager.algorithm = PKIX         ssl.truststore.location = null         ssl.truststore.password = null         ssl.truststore.type = JKS  (org.apache.kafka.clients.admin.AdminClientConfig) [2021-06-16 14:51:21,506] DEBUG [AdminClient clientId=adminclient-1] Setting bootstrap cluster metadata Cluster(id = null, nodes = [b-3.test-cluster.kafka.us-east-1.amazonaws.com:9098 (id: -2 rack: null), b-1.test-cluster.kafka.us-east-1.amazonaws.com:9098 (id: -1 rack: null), b-2.test-cluster.kafka.us-east-1.amazonaws.com:9098 (id: -3 rack: null)], partitions = [], controller = null). (org.apache.kafka.clients.admin.internals.AdminMetadataManager) [2021-06-16 14:51:23,321] INFO Successfully logged in. (org.apache.kafka.common.security.authenticator.AbstractLogin) [2021-06-16 14:51:24,609] DEBUG Created SSL context with keystore null, truststore null, provider SunJSSE. (org.apache.kafka.common.security.ssl.SslEngineBuilder) [2021-06-16 14:51:24,886] WARN The configuration 'sasl.jaas.config' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig) [2021-06-16 14:51:24,895] WARN The configuration 'sasl.client.callback.handler.class' was supplied but isn't a known config. (org.apache.kafka.clients.admin.AdminClientConfig) [2021-06-16 14:51:24,898] INFO Kafka version: 2.5.0 (org.apache.kafka.common.utils.AppInfoParser) [2021-06-16 14:51:24,898] INFO Kafka commitId: 66563e712b0b9f84 (org.apache.kafka.common.utils.AppInfoParser) [2021-06-16 14:51:24,898] INFO Kafka startTimeMs:<PHONE_NUMBER>895 (org.apache.kafka.common.utils.AppInfoParser) [2021-06-16 14:51:24,901] DEBUG [AdminClient clientId=adminclient-1] Kafka admin client initialized (org.apache.kafka.clients.admin.KafkaAdminClient) [2021-06-16 14:51:24,928] DEBUG [AdminClient clientId=adminclient-1] Queueing Call(callName=listTopics, deadlineMs=1623855144917) with a timeout 60000 ms from now. (org.apache.kafka.clients.admin.KafkaAdminClient) [2021-06-16 14:51:24,983] DEBUG [AdminClient clientId=adminclient-1] Initiating connection to node b-2.test-cluster.kafka.us-east-1.amazonaws.com:9098 (id: -3 rack: null) using address b-2.test-cluster.kafka.us-east-1.amazonaws.com/<IP_ADDRESS> (org.apache.kafka.clients.NetworkClient) [2021-06-16 14:51:25,302] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to SEND_APIVERSIONS_REQUEST (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:25,323] DEBUG [AdminClient clientId=adminclient-1] Creating SaslClient: client=null;service=kafka;serviceHostname=b-2.test-cluster.kafka.us-east-1.amazonaws.com;mechs=[AWS_MSK_IAM] (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:25,453] DEBUG [AdminClient clientId=adminclient-1] Created socket with SO_RCVBUF = 65536, SO_SNDBUF = 131072, SO_TIMEOUT = 0 to node -3 (org.apache.kafka.common.network.Selector) [2021-06-16 14:51:27,191] DEBUG [AdminClient clientId=adminclient-1] Completed connection to node -3. Fetching API versions. (org.apache.kafka.clients.NetworkClient) [2021-06-16 14:51:28,279] DEBUG [SslTransportLayer channelId=-3 key=sun.nio.ch.SelectionKeyImpl@2ed0f78a] SSL handshake completed successfully with peerHost 'b-2.test-cluster.kafka.us-east-1.amazonaws.com' peerPort 9098 peerPrincipal 'CN=*.test-cluster.kafka.us-east-1.amazonaws.com' cipherSuite 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384' (org.apache.kafka.common.network.SslTransportLayer) [2021-06-16 14:51:29,077] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to RECEIVE_APIVERSIONS_RESPONSE (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:29,122] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to SEND_HANDSHAKE_REQUEST (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:29,133] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to RECEIVE_HANDSHAKE_RESPONSE (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:29,136] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to INITIAL (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:29,155] DEBUG Unable to load credentials from EnvironmentVariableCredentialsProvider: Unable to load AWS credentials from environment variables (AWS_ACCESS_KEY_ID (or AWS_ACCESS_KEY) and AWS_SECRET_KEY (or AWS_SECRET_ACCESS_KEY)) (aws_msk_iam_auth_shadow.com.amazonaws.auth.AWSCredentialsProviderChain) [2021-06-16 14:51:29,156] DEBUG Unable to load credentials from SystemPropertiesCredentialsProvider: Unable to load AWS credentials from Java system properties (aws.accessKeyId and aws.secretKey) (aws_msk_iam_auth_shadow.com.amazonaws.auth.AWSCredentialsProviderChain) [2021-06-16 14:51:29,158] DEBUG Unable to load credentials from WebIdentityTokenCredentialsProvider: To use assume role profiles the aws-java-sdk-sts module must be on the class path. (aws_msk_iam_auth_shadow.com.amazonaws.auth.AWSCredentialsProviderChain) [2021-06-16 14:51:29,207] DEBUG Loading credentials from aws_msk_iam_auth_shadow.com.amazonaws.auth.profile.ProfileCredentialsProvider@5b3a7a7e (aws_msk_iam_auth_shadow.com.amazonaws.auth.AWSCredentialsProviderChain) [2021-06-16 14:51:29,217] DEBUG Loading credentials from aws_msk_iam_auth_shadow.com.amazonaws.auth.DefaultAWSCredentialsProviderChain@19e7618e (aws_msk_iam_auth_shadow.com.amazonaws.auth.AWSCredentialsProviderChain) [2021-06-16 14:51:30,378] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to INTERMEDIATE (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:30,913] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to FAILED (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:30,916] INFO [AdminClient clientId=adminclient-1] Failed authentication with b-2.test-cluster.kafka.us-east-1.amazonaws.com/<IP_ADDRESS> ([d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied) (org.apache.kafka.common.network.Selector) [2021-06-16 14:51:30,928] DEBUG [AdminClient clientId=adminclient-1] Node -3 disconnected. (org.apache.kafka.clients.NetworkClient) [2021-06-16 14:51:30,931] ERROR [AdminClient clientId=adminclient-1] Connection to node -3 (b-2.test-cluster.kafka.us-east-1.amazonaws.com/<IP_ADDRESS>:9098) failed authentication due to: [d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied (org.apache.kafka.clients.NetworkClient) [2021-06-16 14:51:30,944] WARN [AdminClient clientId=adminclient-1] Metadata update failed due to authentication error (org.apache.kafka.clients.admin.internals.AdminMetadataManager) org.apache.kafka.common.errors.SaslAuthenticationException: [d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied [2021-06-16 14:51:30,951] DEBUG [AdminClient clientId=adminclient-1] Requesting metadata update. (org.apache.kafka.clients.admin.internals.AdminMetadataManager) [2021-06-16 14:51:30,960] DEBUG [AdminClient clientId=adminclient-1] Metadata is not usable: failed to get metadata. (org.apache.kafka.clients.admin.internals.AdminMetadataManager) org.apache.kafka.common.errors.SaslAuthenticationException: [d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied [2021-06-16 14:51:30,962] DEBUG [AdminClient clientId=adminclient-1] Unable to choose node for Call(callName=listTopics, deadlineMs=1623855144917) (org.apache.kafka.clients.admin.KafkaAdminClient) org.apache.kafka.common.errors.SaslAuthenticationException: [d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied [2021-06-16 14:51:30,963] DEBUG [AdminClient clientId=adminclient-1] Call(callName=listTopics, deadlineMs=1623855144917) failed with non-retriable exception after 1 attempt(s) (org.apache.kafka.clients.admin.KafkaAdminClient) java.lang.Exception: SaslAuthenticationException: [d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied         at org.apache.kafka.clients.admin.KafkaAdminClient$Call.fail(KafkaAdminClient.java:735)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.maybeDrainPendingCall(KafkaAdminClient.java:997)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.maybeDrainPendingCalls(KafkaAdminClient.java:970)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.processRequests(KafkaAdminClient.java:1249)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.run(KafkaAdminClient.java:1203)         at java.lang.Thread.run(Thread.java:748) [2021-06-16 14:51:30,983] DEBUG [AdminClient clientId=adminclient-1] Initiating connection to node b-3.test-cluster.kafka.us-east-1.amazonaws.com:9098 (id: -2 rack: null) using address b-3.test-cluster.kafka.us-east-1.amazonaws.com/<IP_ADDRESS> (org.apache.kafka.clients.NetworkClient) [2021-06-16 14:51:30,996] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to SEND_APIVERSIONS_REQUEST (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) Error while executing topic command : org.apache.kafka.common.errors.SaslAuthenticationException: [d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied [2021-06-16 14:51:31,012] DEBUG [AdminClient clientId=adminclient-1] Creating SaslClient: client=null;service=kafka;serviceHostname=b-3.test-cluster.kafka.us-east-1.amazonaws.com;mechs=[AWS_MSK_IAM] (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:31,012] ERROR java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.SaslAuthenticationException: [d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied         at org.apache.kafka.common.internals.KafkaFutureImpl.wrapAndThrow(KafkaFutureImpl.java:45)         at org.apache.kafka.common.internals.KafkaFutureImpl.access$000(KafkaFutureImpl.java:32)         at org.apache.kafka.common.internals.KafkaFutureImpl$SingleWaiter.await(KafkaFutureImpl.java:89)         at org.apache.kafka.common.internals.KafkaFutureImpl.get(KafkaFutureImpl.java:260)         at kafka.admin.TopicCommand$AdminClientTopicService.getTopics(TopicCommand.scala:333)         at kafka.admin.TopicCommand$AdminClientTopicService.listTopics(TopicCommand.scala:252)         at kafka.admin.TopicCommand$.main(TopicCommand.scala:66)         at kafka.admin.TopicCommand.main(TopicCommand.scala) Caused by: org.apache.kafka.common.errors.SaslAuthenticationException: [d4c3dbd3-45c5-485c-b33f-2e962eb541ca]: Access denied  (kafka.admin.TopicCommand$) [2021-06-16 14:51:31,015] DEBUG [AdminClient clientId=adminclient-1] Initiating close operation. (org.apache.kafka.clients.admin.KafkaAdminClient) [2021-06-16 14:51:31,016] DEBUG [AdminClient clientId=adminclient-1] Waiting for the I/O thread to exit. Hard shutdown in<PHONE_NUMBER>9 ms. (org.apache.kafka.clients.admin.KafkaAdminClient) [2021-06-16 14:51:31,027] DEBUG [AdminClient clientId=adminclient-1] Initiating connection to node b-1.test-cluster.kafka.us-east-1.amazonaws.com:9098 (id: -1 rack: null) using address b-1.test-cluster.kafka.us-east-1.amazonaws.com/<IP_ADDRESS> (org.apache.kafka.clients.NetworkClient) [2021-06-16 14:51:31,028] DEBUG [AdminClient clientId=adminclient-1] Set SASL client state to SEND_APIVERSIONS_REQUEST (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:31,028] DEBUG [AdminClient clientId=adminclient-1] Creating SaslClient: client=null;service=kafka;serviceHostname=b-1.test-cluster.kafka.us-east-1.amazonaws.com;mechs=[AWS_MSK_IAM] (org.apache.kafka.common.security.authenticator.SaslClientAuthenticator) [2021-06-16 14:51:31,058] DEBUG [AdminClient clientId=adminclient-1] Created socket with SO_RCVBUF = 65536, SO_SNDBUF = 131072, SO_TIMEOUT = 0 to node -2 (org.apache.kafka.common.network.Selector) [2021-06-16 14:51:31,225] DEBUG [AdminClient clientId=adminclient-1] Created socket with SO_RCVBUF = 65536, SO_SNDBUF = 131072, SO_TIMEOUT = 0 to node -1 (org.apache.kafka.common.network.Selector) [2021-06-16 14:51:31,287] DEBUG [AdminClient clientId=adminclient-1] Completed connection to node -2. Fetching API versions. (org.apache.kafka.clients.NetworkClient) [2021-06-16 14:51:31,288] DEBUG [AdminClient clientId=adminclient-1] Completed connection to node -1. Fetching API versions. (org.apache.kafka.clients.NetworkClient) [2021-06-16 14:51:31,292] DEBUG [AdminClient clientId=adminclient-1] Call(callName=fetchMetadata, deadlineMs=1623855114918) timed out at<PHONE_NUMBER>854775807 after 1 attempt(s) (org.apache.kafka.clients.admin.KafkaAdminClient) java.lang.Exception: TimeoutException: Timed out waiting to send the call.         at org.apache.kafka.clients.admin.KafkaAdminClient$Call.failWithTimeout(KafkaAdminClient.java:755)         at org.apache.kafka.clients.admin.KafkaAdminClient$Call.fail(KafkaAdminClient.java:728)         at org.apache.kafka.clients.admin.KafkaAdminClient$TimeoutProcessor.handleTimeouts(KafkaAdminClient.java:850)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.timeoutCallsToSend(KafkaAdminClient.java:931)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.run(KafkaAdminClient.java:1214)         at java.lang.Thread.run(Thread.java:748) [2021-06-16 14:51:31,317] INFO [AdminClient clientId=adminclient-1] Metadata update failed (org.apache.kafka.clients.admin.internals.AdminMetadataManager) org.apache.kafka.common.errors.TimeoutException: Call(callName=fetchMetadata, deadlineMs=1623855114918) timed out at<PHONE_NUMBER>854775807 after 1 attempt(s) Caused by: org.apache.kafka.common.errors.TimeoutException: Timed out waiting to send the call. [2021-06-16 14:51:31,318] DEBUG [AdminClient clientId=adminclient-1] Call(callName=fetchMetadata, deadlineMs=1623855120960) timed out at<PHONE_NUMBER>854775807 after 1 attempt(s) (org.apache.kafka.clients.admin.KafkaAdminClient) java.lang.Exception: TimeoutException: Timed out waiting to send the call.         at org.apache.kafka.clients.admin.KafkaAdminClient$Call.failWithTimeout(KafkaAdminClient.java:755)         at org.apache.kafka.clients.admin.KafkaAdminClient$Call.fail(KafkaAdminClient.java:728)         at org.apache.kafka.clients.admin.KafkaAdminClient$TimeoutProcessor.handleTimeouts(KafkaAdminClient.java:850)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.timeoutCallsToSend(KafkaAdminClient.java:931)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.run(KafkaAdminClient.java:1214)         at java.lang.Thread.run(Thread.java:748) [2021-06-16 14:51:31,318] INFO [AdminClient clientId=adminclient-1] Metadata update failed (org.apache.kafka.clients.admin.internals.AdminMetadataManager) org.apache.kafka.common.errors.TimeoutException: Call(callName=fetchMetadata, deadlineMs=1623855120960) timed out at<PHONE_NUMBER>854775807 after 1 attempt(s) Caused by: org.apache.kafka.common.errors.TimeoutException: Timed out waiting to send the call. [2021-06-16 14:51:31,319] DEBUG [AdminClient clientId=adminclient-1] Timed out 2 call(s) with assigned nodes. (org.apache.kafka.clients.admin.KafkaAdminClient) [2021-06-16 14:51:31,319] DEBUG [AdminClient clientId=adminclient-1] Timed out 2 remaining operation(s). (org.apache.kafka.clients.admin.KafkaAdminClient) [2021-06-16 14:51:31,320] DEBUG [SslTransportLayer channelId=-1 key=sun.nio.ch.SelectionKeyImpl@2143c6fe] Failed to send SSL Close message (org.apache.kafka.common.network.SslTransportLayer) java.io.IOException: Unexpected status returned by SSLEngine.wrap, expected CLOSED, received OK. Will not send close message to peer.         at org.apache.kafka.common.network.SslTransportLayer.close(SslTransportLayer.java:192)         at org.apache.kafka.common.utils.Utils.closeAll(Utils.java:855)         at org.apache.kafka.common.network.KafkaChannel.close(KafkaChannel.java:155)         at org.apache.kafka.common.network.Selector.doClose(Selector.java:929)         at org.apache.kafka.common.network.Selector.close(Selector.java:913)         at org.apache.kafka.common.network.Selector.close(Selector.java:859)         at org.apache.kafka.common.network.Selector.close(Selector.java:368)         at org.apache.kafka.clients.NetworkClient.close(NetworkClient.java:641)         at org.apache.kafka.common.utils.Utils.closeQuietly(Utils.java:873)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.run(KafkaAdminClient.java:1220)         at java.lang.Thread.run(Thread.java:748) [2021-06-16 14:51:31,321] DEBUG [SslTransportLayer channelId=-2 key=sun.nio.ch.SelectionKeyImpl@168feda2] Failed to send SSL Close message (org.apache.kafka.common.network.SslTransportLayer) java.io.IOException: Unexpected status returned by SSLEngine.wrap, expected CLOSED, received OK. Will not send close message to peer.         at org.apache.kafka.common.network.SslTransportLayer.close(SslTransportLayer.java:192)         at org.apache.kafka.common.utils.Utils.closeAll(Utils.java:855)         at org.apache.kafka.common.network.KafkaChannel.close(KafkaChannel.java:155)         at org.apache.kafka.common.network.Selector.doClose(Selector.java:929)         at org.apache.kafka.common.network.Selector.close(Selector.java:913)         at org.apache.kafka.common.network.Selector.close(Selector.java:859)         at org.apache.kafka.common.network.Selector.close(Selector.java:368)         at org.apache.kafka.clients.NetworkClient.close(NetworkClient.java:641)         at org.apache.kafka.common.utils.Utils.closeQuietly(Utils.java:873)         at org.apache.kafka.clients.admin.KafkaAdminClient$AdminClientRunnable.run(KafkaAdminClient.java:1220)         at java.lang.Thread.run(Thread.java:748) [2021-06-16 14:51:31,385] DEBUG [AdminClient clientId=adminclient-1] Exiting AdminClientRunnable thread. (org.apache.kafka.clients.admin.KafkaAdminClient) [2021-06-16 14:51:31,403] DEBUG [AdminClient clientId=adminclient-1] Kafka admin client closed. (org.apache.kafka.clients.admin.KafkaAdminClient)

I am experiencing  the same issue. My workaround is generating temporary credentials and setting environment variables via the CLI but this only gets my application started, once the session expires the credentials are useless.

?Sadly the initial version of the library had a bug where it was missing a dependency on aws-java-sdk-sts . There are two workarounds:

The latest version of the library on GitHub has the fix. In fact as the README describes the latest version allows a role arn to be passed in with the jaas config parameter. We are working on publishing the latest version to maven.

The other workaround is to add the aws-java-sdk-sts module to the class path:
com.amazonaws
aws-java-sdk-sts

Apologies for the problems. We will update the  README to call this out.
On Jun 18, 2021, at 3:34 AM, Mahmoud Saleh @.***> wrote:
?
I am experiencing the same issue. My workaround is generating temporary credentials and setting environment variables via the CLI but this only gets my application started, once the session expires the credentials are useless.

You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/aws/aws-msk-iam-auth/issues/25#issuecomment-863592054, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIA3ZZR6XURRGTWJLDYUDD3TTJWLDANCNFSM46ZW7QYQ.

There was a bug in the original version where a dependency on aws-Java-sdk-sts module was missing. There are two work arounds:

The issue has been fixed in the repo though it has not been released to maven yet. We are working on releasing it. In fact the updated README describes another way of passing in the role arn through the jaas config parameter.

Add the aws-java-sdk-sts module to the classpath of the application.
com.amazonaws
aws-java-sdk-sts

On Jun 18, 2021, at 3:34 AM, Mahmoud Saleh @.***> wrote:

I am experiencing the same issue. My workaround is generating temporary credentials and setting environment variables via the CLI but this only gets my application started, once the session expires the credentials are useless.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/aws/aws-msk-iam-auth/issues/25#issuecomment-863592054, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIA3ZZR6XURRGTWJLDYUDD3TTJWLDANCNFSM46ZW7QYQ.

Sadly the initial version of the library had a bug where it was missing a dependency on aws-java-sdk-sts . There are two workarounds:

The latest version of the library on GitHub has the fix. In fact as the README describes the latest version allows a role arn to be passed in with the jaas config parameter. We are working on publishing the latest version to maven.

The other workaround is to add the aws-java-sdk-sts module to the class path:
com.amazonaws
aws-java-sdk-sts

Apologies for the problems. We will update the  README to call this out.
On Jun 18, 2021, at 3:34 AM, Mahmoud Saleh @.***> wrote:

I am experiencing the same issue. My workaround is generating temporary credentials and setting environment variables via the CLI but this only gets my application started, once the session expires the credentials are useless.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/aws/aws-msk-iam-auth/issues/25#issuecomment-863592054, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIA3ZZR6XURRGTWJLDYUDD3TTJWLDANCNFSM46ZW7QYQ.

Thanks @sayantacC.  My team and I got our application to work by rebuilding the jar with the latest code. We used the shadowJar configuration.

Thanks @sayantacC. My team and I got our application to work by rebuilding the jar with the latest code. We used the shadowJar configuration.

@msaleh-essextec @sayantacC  to access to MSK from pods deployed in EKS is it enough to add the missing dependency (aws-java-sdk-sts) or should we configure some specific Role? I've understood the use of the property awsProfileName accessing to MSK from an EC2, but it's not clear to me how to access from EKS

The EKS pods running the Kafka clients should have permission to assume the role that the Kafka clients need to use.
How are you providing IAM permissions to the pods ?
Are you using IAM Roles for service accounts in EKS ? https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html
Or are you using something like kiam?
Once the EKS pod has permissions to assume the role it might be easier to use the new awsRoleArn option:
https://github.com/aws/aws-msk-iam-auth#specifying-an-aws-iam-role-for-a-client
Sayantan
On Jun 18, 2021, at 7:03 PM, Fabio Formosa @.***> wrote:

Thanks @sayantacChttps://github.com/sayantacC. My team and I got our application to work by rebuilding the jar with the latest code. We used the shadowJar configuration.
@msaleh-essextechttps://github.com/msaleh-essextec @sayantacChttps://github.com/sayantacC to access to MSK from pods deployed in EKS is it enough to add the missing dependency (aws-java-sdk-sts) or should we configure some specific Role? I've understood the use of the property awsProfileName accessing to MSK from an EC2, but it's not clear to me how to access from EKS
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/aws/aws-msk-iam-auth/issues/25#issuecomment-864042695, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIA3ZZQVK4JTZE2JTVGRUS3TTNDJNANCNFSM46ZW7QYQ.

How are you providing IAM permissions to the pods ?

I've created the cluster using this terraform module, that creates also a new IAM Role for the EKS cluster https://registry.terraform.io/modules/terraform-aws-modules/eks/aws/latest?tab=outputs
So, I suppose I can use that role with the new awsRoleArn option. right?
Is the awsRoleArn available in the version 1.0.0? or I have to wait the new release you've mentioned.

The awsRoleArn option has not yet been published to maven. However, it is available in main in the github repo.
On Jun 19, 2021, at 12:56 AM, Fabio Formosa @.***> wrote:

How are you providing IAM permissions to the pods ?
I've created the cluster using this terraform module, that creates also a new IAM Role for the EKS cluster https://registry.terraform.io/modules/terraform-aws-modules/eks/aws/latest?tab=outputs
So, I suppose I can use that role with the new awsRoleArn option. right?
Is the awsRoleArn available in the version 1.0.0? or I have to wait the new release you've mentioned.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/aws/aws-msk-iam-auth/issues/25#issuecomment-864232757, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIA3ZZXDOGIB4MJRKQJJOPLTTOMUZANCNFSM46ZW7QYQ.

We plan to release the new version 1.1.0 over the next few days.

@rakrak98 can you confirm this addresses your request?

Yes, problem was solved. Had an internal AWS issue. Thanks

@gokul2411s @sayantacC
I am facing this issue. Above fixes seem to not work for me. I have a pod running EKS. The pod has serviceAccount through which AWS IAM is injected. I can see that AWS_WEB_IDENTITY_TOKEN_FILE and AWS_ROLE_ARN are populated correctly. Still getting Access Denied. Any steps to debug ?
The field awsDebugCreds=true does not help as well. I am also using the command bin/kafka-console-consumer.sh
Ensured that rhe jars are in the classpath. Anything else I should try ?

Hi !
@anandswaminathan @rakrak98 did you find a solution to this issue ?
Thanks for help

@mikamboo Yes.
Your role policy seems incorrect. You need to follow this as well - https://stackoverflow.com/questions/66405794/not-authorized-to-perform-stsassumerolewithwebidentity-403

@gokul2411s @sayantacC
I am facing this issue. Above fixes seem to not work for me. I have a pod running EKS. The pod has serviceAccount through which AWS IAM is injected. I can see that AWS_WEB_IDENTITY_TOKEN_FILE and AWS_ROLE_ARN are populated correctly. Still getting Access Denied. Any steps to debug ?
The field awsDebugCreds=true does not help as well. I am also using the command bin/kafka-console-consumer.sh
Ensured that rhe jars are in the classpath. Anything else I should try ?

This is resolved. Using the latest JARs and follow IAM for EKS docs did the trick.

@mikamboo Yes.
Your role policy seems incorrect. You need to follow this as well - https://stackoverflow.com/questions/66405794/not-authorized-to-perform-stsassumerolewithwebidentity-403
Also make sure to use the jar from latest release.

Hello, thanks for reply.  Could you tell me what's seems incorrect in the policy ?

@rakrak98 what was the issue?


Make "./liccheck.ini" the default ini file

I think this would be a great addition to the tool and bring it inline with popular tools such as mypy and tox which default to using config files named mypy.ini and tox.ini respectively

Codecov Report

Merging #52 into master will increase coverage by 0.16%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #52      +/-   ##
==========================================
+ Coverage   91.44%   91.60%   +0.16%
==========================================
  Files           8        8
  Lines         409      417       +8
  Branches       50       50
==========================================
+ Hits          374      382       +8
  Misses         26       26
  Partials        9        9

Impacted Files
Coverage Δ

liccheck/command_line.py
85.37% <100.00%> (+0.06%)
:arrow_up:

tests/test_cli.py
100.00% <100.00%> (ø)

tests/test_read_strategy.py
100.00% <100.00%> (ø)

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 ecfcc25...af87e19. Read the comment docs.

@ochedru Any chance of getting this reviewed and merged?

@eganjs sorry, merging right now. Thank you for your contribution!


Allow saving screenshots as JPG

Type

[x] Request modification of existing behavior or design

What is the problem that your feature request solves
I would like to save page screenshots as JPG to save space. PNG's of websites that are mostly images are using more disk space that I'd like them to. Allowing saving screenshot as JPG would solve that.
Describe the ideal specific solution you'd want, and whether it fits into any broader scope of
Ideally I should be able to select jpeg quality as well. Having default
How badly do you want this new feature?

[x] It's important to add it in the near-mid term future, mostly because it probably shouldn't be hard to implement with quality hardcoded/choose

[x] I'd contribute to development if I'd feel safe in Python, but I do not
[x] I like ArchiveBox so far / would recommend it to a friend

Unfortunately this is not supported by chrome, so it would have to be a separate program that runs after the screenshot process to convert the PNGs to JPGs.
As a quick fix in the meantime, might I suggest storing the entire archive dir on a compressed filesystem like ZFS?
apt install zfsutils-linux    # or brew cask install openzfs
zpool create -f \
    -o mountpoint=/mnt/archivebox \
    -o compression=lz4 \
    -o atime=off \
    -o sync=standard \
    -o aclinherit=passthrough \
    -o utf8only=on \
    -o normalization=formD \
    -o casesensitivity=sensitive \
    archivebox ~/archivebox.zfs
zpool mount archivebox

It would be more ideal to employ image base64 format and imbed them directly without populating the archive directory.

@LaserWires why it would be more ideal?
I disagree, because it's easier to do something with it if it's stored as a file instead of embedded into something else. Additionally encoding something into base64 makes it's around 37% bigger. Huge waste of space. I see no advantages.

@pirate thank you for your reply. I think I'm gonna do some post-processing then, to replace png with jpg
If you feel like implementing it with external tools someday - please leave this ticket open, if not - feel free to close.

I think I'm going to close this for now, and keep compressed filesystems as the recommended solution for disk space saving. Images are only a small potential source of bloat, and LZ4 compression on the whole folder will do a better overall job than any individual fix.


Find Equation Variables 3 tests

Created 3 tests for "Find Equation Variables.vi" that test the following scenarios:
A test that has 2 valid variables declared
A test that has duplicate variables
A test that has no variable

Delete Instrument Addon Unit Tests.lvclass--temp_VI_UnderTest.vi, it is an autogenerated test that we don't want to submit.

Make sure you sync from master and remove the testclass, setUp and tearDown VIs.

For every test case, add checks for all the outputs.

Whenever you use an array constant, size it so that an empty element is visible last. This aids in determining the array's size by someone reading the code.

Rename the VIs according to our naming convention: test_VI Under Test_tested behavior.vi


[2][Chore] Setup CI pipeline for unit test and static code linter

https://github.com/llleyelll/ic-surveys-ios/issues/2
What happened 👀

Add fastlane scan into Github Action workflow
Add SwiftLint into Github Action workflow

Insight 📝
Proof Of Work 📹

@llleyelll you may want to add this action the cancel previous runs 😁
    - name: Cancel Previous Runs
       uses<EMAIL_ADDRESS>       with:
         access_token: ${{ github.token }}


Notification icon color

I added a notification icon color for Android. If you want you can improve this feature to publish in your plugin. Thanks

Does this set the colour of the icon and text, or just the icon?

Just the icon. It show like this:

It requires an hexadecimal value of the colour but in the end Android supports some colours:


Why is it so slow in my 3090

SaveExporter('E:\xlzl\reg\1_zumi score__10\新建文件夹'): 142it [06:20,  4.19s/it]
LocalSource('E:\xlzl\reg\1_zumi score__10'): 140it [06:25,  1.57s/it]
Loading from 'E:\xlzl\reg\1_zumi score__10':  13%|██████████▍                                                                      | 440/3433 [06:25<26:08,  1.91it/s]
this‘s my code
from waifuc.action import ModeConvertAction
from waifuc.export import SaveExporter
from waifuc.source import LocalSource
from waifuc.action import NoMonochromeAction
from waifuc.action import ClassFilterAction
from waifuc.action import FaceCountAction
from waifuc.action import ThreeStageSplitAction, FilterSimilarAction
if name == 'main':
source = LocalSource(r'E:\xlzl\reg\1_zumi score__10')
source = source.attach(
ModeConvertAction(mode='RGB', force_background='white'),NoMonochromeAction(),ClassFilterAction(['illustration', 'bangumi', '3D']),FilterSimilarAction(),FaceCountAction(1),
ThreeStageSplitAction(),)
source.export(SaveExporter(r'E:\xlzl\reg\1_zumi score__10\新建文件夹'))

i dont know what u mean slow? i think it's quite okay to have 2it/s when u using so many ai models to clean your dataset. dont expect to have 1000it/s even when u are using auto pipeline.
btw, do NOT use 3D, it is 3d. they are different, i think as a python user u should know that. 😄


Fix layer rendering

This PR fixes rendering of layers with geoJSONSourceOptions. The problem was two-fold:

data has been overridden by default values, not the other way around (fixed test)
generated sourceId was the same as layer id which apparently prevented it from being rendered

I used convention of appending -source to generated layer but I'm open for suggestions.

fix is working


jsonld api structures

What is this
We need at least one structural sample of the json-ld respone expected (from and approved by our data specialised colleagues) for each of the following endpoints to enable (a) development and (b) metadata content population.
Required Samples

[x] /datasets done, see here  for example.
[x] datasets/{id}/editions done, see here for example:
[ ] /datasets/{id}/editions/{id}/versions
[ ] /topics
[ ] /topics/{id}/sub-topic
[ ] /publishers

Please note: this is just getting one "signed off" example structure. Once that's in place population of multiples of each will be handled elsewhere.
There are potentially others, but out of the gates these are the things that'll unblock a lot of "go build a thing" tasks.
The actual example can just be pr'd into a relevantly names files in this repo at /src/store/metadata/stub/content/<filename>.
There may be some convos on structuring to come when we dig into it and see how this all works together, but we need a starting point.

so in a resful-y type world you'd typically have endpoints of
/topics - return something like:
{
 "items": [topic1jsondoc, topic2jsondoc, topic3jsondoc],
 "offset": 0
 "count" 3
}

where "items" is just a list of topics in jsonld form (so all the same structure, just differently populated fields).
and /topics/{id} would just pluck the appropriate "topicXjsondoc" out of it using the "id" arg provided (whatever that may be, "id" is just an example).
So we just (for now at least) need a "topics.json", "sub-topics.json" and "versions.json" doc sort of structured like these:
datasets.json sample data
editions.json sample data.
But with those sub docs in "items" (of which each has 1 at the mo) replaced with an appropriate jsonld fields for the resouce in question. Does that make sense or is it more complex than that? (i.e do we need a convo?)
we'll have to figure out things like where context goes I know, but we're talking starting points here.

note, Martyn has said his folks can help out creating more once they've a structure and an example (i.e one "item" to work to). Up to you two on how that works.

agreed and done


Cu 2q9nqd1 add rebranding modal to the app and website

Task linked: CU-2q9nqd1 Add Rebranding modal to the app and website


Change openssl version in centos 7 - yum list

Good day,
Centos7
I installed openssl 3.0.7  version.
But when I installed it didn't change the version on "yum list" Is it possible to change it because when I'm installing the "pyenv install 3.11.0" I got this error.
Traceback (most recent call last): File "", line 1, in File "/home//.pyenv/versions/3.11.0/lib/python3.11/ssl.py", line 100, in import _ssl # if we can't import it, let the error propagate ^^^^^^^^^^^ ModuleNotFoundError: No module named '_ssl' ERROR: The Python ssl extension was not compiled. Missing the OpenSSL lib?
Please consult to the Wiki page to fix the problem. https://github.com/pyenv/pyenv/wiki/Common-build-problems
BUILD FAILED (CentOS Linux 7 using python-build 2.3.18)
Inspect or clean up the working tree at /tmp/python-build.20230601095845.30587 Results logged to /tmp/python-build.20230601095845.30587.log
Last 10 log lines: LD_LIBRARY_PATH=/tmp/python-build.20230601095845.30587/Python-3.11.0 ./python -E -m ensurepip
$ensurepip --root=/ ; \
Here's how I install
sudo yum install perl-IPC-Cmd perl-Test-Simple
cd /usr/src
wget https://www.openssl.org/source/openssl-3.0.7.tar.gz
tar -zxf openssl-3.0.7.tar.gz
rm openssl-3.0.7.tar.gz
cd /usr/src/openssl-3.0.7
./config
make
make test
make install
ln -s /usr/local/lib64/libssl.so.3 /usr/lib64/libssl.so.3
ln -s /usr/local/lib64/libcrypto.so.3 /usr/lib64/libcrypto.so.3
openssl version
OpenSSL 3.0.7 1 Nov 2022 (Library: OpenSSL 3.0.7 1 Nov 2022)
but when I type
yum info openssl
Installed Packages
Name        : openssl
Arch        : x86_64
Epoch       : 1
Version     : 1.0.2k
Release     : 26.el7_9
Size        : 814 k
Repo        : installed
From repo   : updates
Summary     : Utilities from the general purpose cryptography library with TLS implementation
URL         : http://www.openssl.org/
License     : OpenSSL
Description : The OpenSSL toolkit provides support for secure communications between
: machines. OpenSSL includes a certificate management tool and shared
: libraries which provide various cryptographic algorithms and
: protocols.
It didn't change.
Here's my current openssl after the installation
yum list installed openssl
penssl.x86_64                                                          1:1.0.2k-26.el7_9                                                          @updates

We do not provide rpm binary packages nor any other binary packages.
It is also practically impossible to replace the system openssl package (1.0.2) with one that is having completely different API/ABI (3.0).

Closing since this is marked as resolved.


SMC^2 State Inference

Thank you for developing such a helpful library!
I had a quick question on the implementation of the SMC^2 algorithm for state and parameter inference. In running the algorithm for my case study, I generate an SMC2 sampler object on the states and use it to run the SMC algorithm on the parameters, in general just using the standard options as described in the accompanying textbook.
The reports generated in the SMC run give me summaries on the inferred parameters, but I'm unable to find any information (particles, weights, moments, etc.) on the inferred states. Is there any way that I can recover this information?

Let's call smc2 your SMC2 object. If you inspect the object
smc2.X
that stores the N particles, you will see that it contains various attributes, including:
smc2.X.pfs
a list of N_theta SMC objects,  representing the N_theta local particle filters (run in the x-dimension). In particular:
smc2.X.pfs[m].X
will be a numpy array that represents the N_x particles X_T^n,m for a given m (T= final time).
You could for instance approximate the marginal expectation of X_T (given the full data) as follows:
import numpy as np

marginal_exp_xT = np.average([np.average(pf.X, weights=pf.W, axis=0) for pf in smc2.X.pfs], weigths=smc2.W)

In case you want to compute the marginal distribution of previous states, x_t, t<T, things get a bit more tricky. One way to do it is to apply a backward sampling step to each local particle filter. Now that you mention it, I should implement it in the library. But it's possible to do it manually, as follows:
import particles

Nth = 100  # number of theta particles
# define here fk_smc2
smc2 = particles.SMC(fk=fk_smc2, N=Nth, smc_options={'store_history':True})
smc2.run()

if dx == 1:  # dx = dimension of state X_t
    states = np.empty((Nth, T))
else:
    states = np.empty((Nth, dx, T))
for n, pf in enumerate(smc2.X.pfs):
    states[n, ...] = pf.history.extract_one_trajectory()

In short:

the first three lines run SMC2, with an option passed to each local filter, so that its stores the full history (the x-particles and their weights at each time). This is expensive, memory-wise.
the second part generates state variables from the posterior.

Note: I did not really test all this, so there might be typos, bugs, etc. Let me know if it works for you.

Let's call smc2 your SMC2 object. If you inspect the object
smc2.X
that stores the N particles, you will see that it contains various attributes, including:
smc2.X.pfs
a list of N_theta SMC objects,  representing the N_theta local particle filters (run in the x-dimension). In particular:
smc2.X.pfs[m].X
will be a numpy array that represents the N_x particles X_T^n,m for a given m (T= final time).
You could for instance approximate the marginal expectation of X_T (given the full data) as follows:
import numpy as np

marginal_exp_xT = np.average([np.average(pf.X, weights=pf.W, axis=0) for pf in smc2.X.pfs], weigths=smc2.W)

In case you want to compute the marginal distribution of previous states, x_t, t<T, things get a bit more tricky. One way to do it is to apply a backward sampling step to each local particle filter. Now that you mention it, I should implement it in the library. But it's possible to do it manually, as follows:
import particles

Nth = 100  # number of theta particles
# define here fk_smc2
smc2 = particles.SMC(fk=fk_smc2, N=Nth, smc_options={'store_history':True})
smc2.run()

if dx == 1:  # dx = dimension of state X_t
    states = np.empty((Nth, T))
else:
    states = np.empty((Nth, dx, T))
for n, pf in enumerate(smc2.X.pfs):
    states[n, ...] = pf.history.extract_one_trajectory()

In short:

the first three lines run SMC2, with an option passed to each local filter, so that its stores the full history (the x-particles and their weights at each time). This is expensive, memory-wise.
the second part generates state variables from the posterior.

Note: I did not really test all this, so there might be typos, bugs, etc. Let me know if it works for you.

Thanks for the advice!
I was able to get the first code segment to work, and I think I understand pretty well how it's extracting and manipulating the stored data at the last time step to find the marginal expectation of X_T.
I think this could easily be applied during run-time on the algorithm to give the marginal distribution on X_t given the data up to t. It would add a little computation time in each loop, but would definitely cut down on the memory requirements. For example:
for i in range(len(tau)):
    next(smc2 )
    meanStates[i] = np.average(np.array([np.average(pf.X, weights=pf.W, axis=0) for pf in smc2 .X.pfs]),
                 weights=smc2 .W, axis=0)
    varStates[i] = np.average(np.array([np.average(np.square(pf.X), weights=pf.W, axis=0) for pf in smc2 .X.pfs]),
                 weights=smc2 .W, axis=0) - np.square(meanStates[i])

I had more trouble with the second approach, extracting the marginal distribution of the previous states. I ended up modifying the code you suggested as shown below.
bwFKMod_smc2 = ssp.SMC2(ssm_cls=BoucWen, data=respAcc, prior=my_prior, init_Nx=10,
                   ar_to_increase_Nx=0.1, **smc_options={'store_history':True}**)

bwSMC2 = particles.SMC(fk=bwFKMod_smc2, N=50, resampling = 'systematic',
                    ESSrmin = 0.5, moments=True, store_history=True)

bwSMC2.run()

infStates = np.empty((50, 3, len(tau))
for n, pf in enumerate(bwSMC2.X.pfs):
    infStates[n,:,:] = np.array(pf.hist.extract_one_trajectory()).transpose()

I was a little confused at the purpose of extracting only a single trajectory from each local particle filter. It seems like this would give little information about the marginal distribution, as it would only be picking points from the local particle filters instead of representing the distribution itself. However, my understanding might be incorrect. Could you clarify?
Thanks again!

Thanks for the advice!
I was able to get the first code segment to work, and I think I understand pretty well how it's extracting and manipulating the stored data at the last time step to find the marginal expectation of X_T.
I think this could easily be applied during run-time on the algorithm to give the marginal distribution on X_t given the data up to t. It would add a little computation time in each loop, but would definitely cut down on the memory requirements. For example:
for i in range(len(tau)):
    next(smc2 )
    meanStates[i] = np.average(np.array([np.average(pf.X, weights=pf.W, axis=0) for pf in smc2 .X.pfs]),
                 weights=smc2 .W, axis=0)
    varStates[i] = np.average(np.array([np.average(np.square(pf.X), weights=pf.W, axis=0) for pf in smc2 .X.pfs]),
                 weights=smc2 .W, axis=0) - np.square(meanStates[i])

I had more trouble with the second approach, extracting the marginal distribution of the previous states. I ended up modifying the code you suggested as shown below.
bwFKMod_smc2 = ssp.SMC2(ssm_cls=BoucWen, data=respAcc, prior=my_prior, init_Nx=10,
                   ar_to_increase_Nx=0.1, **smc_options={'store_history':True}**)

bwSMC2 = particles.SMC(fk=bwFKMod_smc2, N=50, resampling = 'systematic',
                    ESSrmin = 0.5, moments=True, store_history=True)

bwSMC2.run()

infStates = np.empty((50, 3, len(tau))
for n, pf in enumerate(bwSMC2.X.pfs):
    infStates[n,:,:] = np.array(pf.hist.extract_one_trajectory()).transpose()

I was a little confused at the purpose of extracting only a single trajectory from each local particle filter. It seems like this would give little information about the marginal distribution, as it would only be picking points from the local particle filters instead of representing the distribution itself. However, my understanding might be incorrect. Could you clarify?
Thanks again!

Hi,
sorry, I was mixing up two different things, which was confusing.

If I understand correctly, you wish to approximate, at each time t, the marginal distribution of current state X_t, given the data up to time t? In particular, compute the mean and variance of these marginal distributions? In that case, your first block is the way to go, don't worry about the second part. You could simplify it a little by using helper function resampling.wmean_and_var in the resampling module, but that's anecdotal.
Do you think this should be implemented by default? i.e. these quantities should be computed and gathered in object smc2.summaries?

The thing about "extracting trajectories" is for the more general (and difficult) problem of approximating the distribution of theta and X_{0:t} (all the states up to time t) at a given time. This point is explained in Section 3.3 of the SMC2 paper:
https://rss.onlinelibrary.wiley.com/doi/full/10.1111/j.1467-9868.2012.01046.x
But, as you noted, if you would do this at every time t, this is likely to be quite expensive.

Hi,
sorry, I was mixing up two different things, which was confusing.

If I understand correctly, you wish to approximate, at each time t, the marginal distribution of current state X_t, given the data up to time t? In particular, compute the mean and variance of these marginal distributions? In that case, your first block is the way to go, don't worry about the second part. You could simplify it a little by using helper function resampling.wmean_and_var in the resampling module, but that's anecdotal.
Do you think this should be implemented by default? i.e. these quantities should be computed and gathered in object smc2.summaries?

The thing about "extracting trajectories" is for the more general (and difficult) problem of approximating the distribution of theta and X_{0:t} (all the states up to time t) at a given time. This point is explained in Section 3.3 of the SMC2 paper:
https://rss.onlinelibrary.wiley.com/doi/full/10.1111/j.1467-9868.2012.01046.x
But, as you noted, if you would do this at every time t, this is likely to be quite expensive.

No worries! The explanation of the trajectories in your most recent comment (and in the paper) makes a lot of sense.
With respect to (1) you are correct. For my case in particular, which is an application in civil engineering for structural health monitoring, having easy access to the marginal distributions on both the states and parameters is particularly helpful. I can also see this feature being useful for problems in control. So in answer to your question, I would say yes, it would be very useful for these marginals to be gathered in smc2.summaries. From a coding standpoint, I also think it would be a little more intuitive to have a summary of the progression of these marginals over time, as the method is designed to infer both the states and parameters.
Thank you again for your help!

No worries! The explanation of the trajectories in your most recent comment (and in the paper) makes a lot of sense.
With respect to (1) you are correct. For my case in particular, which is an application in civil engineering for structural health monitoring, having easy access to the marginal distributions on both the states and parameters is particularly helpful. I can also see this feature being useful for problems in control. So in answer to your question, I would say yes, it would be very useful for these marginals to be gathered in smc2.summaries. From a coding standpoint, I also think it would be a little more intuitive to have a summary of the progression of these marginals over time, as the method is designed to infer both the states and parameters.
Thank you again for your help!


HIVE-27584: Backport HIVE-21407: Parquet predicate pushdown is not working correctly for char column types

What changes were proposed in this pull request?
The patch is already part of master branch
Why are the changes needed?
To make the functionality work correctly
Does this PR introduce any user-facing change?
No
Is the change a dependency upgrade?
No
How was this patch tested?
Ran the UTs which are part of the patch locally.

In master branch, there are two commits which has been taken as is. We can avoid squash during merge to retain the commits as they are for better tracking.

LGTM +1


multi-content UPD

Games that have the updates and dlc combine with them show up as update when organizing with the updates and dlc folder active.
Example below is breath of the wild xci that has the updates and dlc added to it. So, it shows up as multi-content. But when organized it ends up in the updates folder which you can see in the file path. Despite the fact it's not an update. Also when using {TYPE} it will show up with a UDP added to it.

also seeing this, seems if you organise again it will rename back to v0 and remove the UPD tag, seems to flip between marking as base and marking as update each time you organise

Same with me on this too.

fix should be available in the latest beta build under the Actions tab here on GitHub

mostly working, still have a few files that get renamed as updates and move to subfolders ;) may be due to the fact that either they also have DLC or that they are "old updates" in the issues tab shows newer updates are in other nsp files so maybe the app doesnt know what to do with these

@benspray do you know what those multi-content contain? if its only dlcs and updates, the manager wont know what to do with the files

Hi, they include base,dlc and update the only difference I can see from working ones are that I have newer/duplicate updates in separate files (which are working ok)
I'll try deleting the newer/duplicate update files and see if that helps 👍

I think that sorts it, if you have a "duplicate" ie a multipart xci with updates and dlc and then an nsp with maybe a newer update, it will rename the xci as an update and move it to the subfolder. if you remove all of the other nsp files and rescan it will then see it as base and rename properly (but you have to manually move it back out of the updates folder).
As soon as you drop one of the other "duplicate" nsp files in it breaks the xci again by renaming and moving it as an update.
Not sure what the fix would be here?
Cheers

i tried with the following setup
base game + old update in a .xci file
new update in .nsp file
2 separate dlcs in .nsp files
i have no problem when trying to organizing these file and i have no scenario where the multi-content file is placed wrongly, do i understand your file setup wrong?

Hi, no that sounds exactly right, maybe just something odd about a few files, it only happens on 3 or 4 files, I may be best just to replace/redump the ones with issues 👍

fix is included in the 1.9.0 release

@trembon  is my issue #81 related to this issue?


dvi implementation

tf dvi still does not perform the same with DeepVisualInsight
torch dvi is slow and poorly performed

torch dvi fixed. Hyperparameter issue


Cannot compile in nopython mode for a "specialized" function

Hi,
I am working on a physics problem where I assemble a matrix using an analytic function which has parameters of two kinds:

ones available ahead of time (predef_param below)
ones that change during the assembling of the matrix (runtime_param below)

To make my assembling code more general, I have tried to separate both concerns (ahead of time vs. runtime) so that I can reuse it.
This results in the fact that I need to have a function simpler_func with less parameters calling the original complex_func.
I have code that looks approximately like this:
PARAM = 5.

def complex_func(runtime_param, predef_param):
    return np.cos(predef_param) ** runtime_param

@nb.jit(forceobj=True)
def simpler_func(runtime_param):
    return complex_func(runtime_param, PARAM)

@nb.njit
def assemble_matrix(N):
    mat = np.zeros((N, N))
    mapping = np.arange(N)
    for i in range(N):
        I = mapping[i]
        for j in range(N):
            J = mapping[j]
            mat[i, j] = simpler_func(I + J)
    return mat

def main():
    assemble_matrix(5)

Running the main function results in the following error with numba 0.49.1:
TypingError                               Traceback (most recent call last)
<ipython-input-25-263240bbee7e> in <module>
----> 1 main()

<ipython-input-24-22ddcf18b8e0> in main()
     20
     21 def main():
---> 22     assemble_matrix(5)

C:\Anaconda3\envs\pyrus_dev\lib\site-packages\numba\core\dispatcher.py in _compile_for_args(self, *args, **kws)
    399                 e.patch_message(msg)
    400
--> 401             error_rewrite(e, 'typing')
    402         except errors.UnsupportedError as e:
    403             # Something unsupported is present in the user code, add help info

C:\Anaconda3\envs\pyrus_dev\lib\site-packages\numba\core\dispatcher.py in error_rewrite(e, issue_type)
    342                 raise e
    343             else:
--> 344                 reraise(type(e), e, None)
    345
    346         argtypes = []

C:\Anaconda3\envs\pyrus_dev\lib\site-packages\numba\core\utils.py in reraise(tp, value, tb)
     78         value = tp()
     79     if value.__traceback__ is not tb:
---> 80         raise value.with_traceback(tb)
     81     raise value
     82

TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Invalid use of type(CPUDispatcher(<function simpler_func at 0x0000024D428E8EE8>)) with parameters (int64)
 * parameterized
[1] During: resolving callee type: type(CPUDispatcher(<function simpler_func at 0x0000024D428E8EE8>))
[2] During: typing of call at <ipython-input-24-22ddcf18b8e0> (18)

File "<ipython-input-24-22ddcf18b8e0>", line 18:
def assemble_matrix(N):
    <source elided>
            J = mapping[j]
            mat[i, j] = simpler_func(I + J)

Is there a way to make this work? What am I doing wrong? Does this have something to do with the fact that functions can't be passed around well?
Thank you in advance for your help.
Florian

I have also tried to rewrite the above in a closure style code (inspired by the docs example https://numba.pydata.org/numba-doc/latest/user/faq.html?highlight=function#can-i-pass-a-function-as-an-argument-to-a-jitted-function, but this fails too:
@nb.jit
def complex_func(runtime_param, predef_param):
    return np.cos(predef_param) ** runtime_param

def make_simpler_func(complex_func):
    PARAM = 5.

    @nb.jit(forceobj=True)
    def simpler_func(runtime_param):
        return complex_func(runtime_param, PARAM)

    return simpler_func

@nb.njit
def assemble_matrix(N, simpler_func):

    mat = np.zeros((N, N))
    mapping = np.arange(N)
    for i in range(N):
        I = mapping[i]
        for j in range(N):
            J = mapping[j]
            mat[i, j] = simpler_func(I + J)
    return mat

def main():
    simpler_func = make_simpler_func(complex_func)
    assemble_matrix(5, simpler_func)

Traceback:
---------------------------------------------------------------------------
TypingError                               Traceback (most recent call last)
<ipython-input-39-263240bbee7e> in <module>
----> 1 main()

<ipython-input-34-bfc00d884e85> in main()
     27 def main():
     28     simpler_func = make_simpler_func(complex_func)
---> 29     assemble_matrix(5, simpler_func)

C:\Anaconda3\envs\pyrus_dev\lib\site-packages\numba\core\dispatcher.py in _compile_for_args(self, *args, **kws)
    399                 e.patch_message(msg)
    400
--> 401             error_rewrite(e, 'typing')
    402         except errors.UnsupportedError as e:
    403             # Something unsupported is present in the user code, add help info

C:\Anaconda3\envs\pyrus_dev\lib\site-packages\numba\core\dispatcher.py in error_rewrite(e, issue_type)
    342                 raise e
    343             else:
--> 344                 reraise(type(e), e, None)
    345
    346         argtypes = []

C:\Anaconda3\envs\pyrus_dev\lib\site-packages\numba\core\utils.py in reraise(tp, value, tb)
     78         value = tp()
     79     if value.__traceback__ is not tb:
---> 80         raise value.with_traceback(tb)
     81     raise value
     82

TypingError: Failed in nopython mode pipeline (step: nopython frontend)
Invalid use of type(CPUDispatcher(<function make_simpler_func.<locals>.simpler_func at 0x00000278B1E25318>)) with parameters (int64)
 * parameterized
[1] During: resolving callee type: type(CPUDispatcher(<function make_simpler_func.<locals>.simpler_func at 0x00000278B1E25318>))
[2] During: typing of call at <ipython-input-34-bfc00d884e85> (24)

File "<ipython-input-34-bfc00d884e85>", line 24:
def assemble_matrix(N, simpler_func):
    <source elided>
            J = mapping[j]
            mat[i, j] = simpler_func(I + J)
            ^

Can you explain a bit about what prevents you from jitting complex_func, i.e. doing something like:
from numba import jit, njit, objmode
import numpy as np

PARAM = 5.

@njit
def complex_func(runtime_param, predef_param):
    return np.cos(predef_param) ** runtime_param

@njit
def simpler_func(runtime_param):
    return complex_func(runtime_param, PARAM)

@njit
def assemble_matrix(N):
    mat = np.zeros((N, N))
    mapping = np.arange(N)
    for i in range(N):
        I = mapping[i]
        for j in range(N):
            J = mapping[j]
            mat[i, j] = simpler_func(I + J)
    return mat

def main():
    assemble_matrix(5)

if __name__ == '__main__':
    main()

?

Not a solution, but a clarification as to what may be going wrong here:
You cannot call a function that was compiled in object mode (forceobj=True) from a function that was called in nopython mode, as is illustrated by this example:
from numba import jit, njit

@jit(forceobj=True)
def f(x):
    return x

@njit
def g(x):
    return f(x)

g(1)

Invalid use of type(CPUDispatcher(<function f at 0x7f7c5b4ae4d0>)) with parameters (int64)
 * parameterized
[1] During: resolving callee type: type(CPUDispatcher(<function f at 0x7f7c5b4ae4d0>))
[2] During: typing of call at njit_calls_jit.py (9)

File "njit_calls_jit.py", line 9:
def g(x):
    return f(x)
    ^

Maybe there would be a way to do this by explicitly using the object mode context manager but this may bring with it a hefty performance penalty.

Hi @gmarkall  and @HPLegion
Thank you very much for your replies, which are very helpful.
So it turns out that I had indeed a reason for using the forceobj=True flag: I was using a function from scipy:
from numba import jit, njit, objmode
from scipy.special import factorial2
import numpy as np

PARAM = 5.

@njit
def complex_func(runtime_param, predef_param):
    return np.cos(predef_param) ** runtime_param * factorial2(predef_param)

@njit
def simpler_func(runtime_param):
    return complex_func(runtime_param, PARAM)

@njit
def assemble_matrix(N):
    mat = np.zeros((N, N))
    mapping = np.arange(N)
    for i in range(N):
        I = mapping[i]
        for j in range(N):
            J = mapping[j]
            mat[i, j] = simpler_func(I + J)
    return mat

def main():
    return assemble_matrix(5)

if __name__ == '__main__':
    main()

On my machine this does not work, while @gmarkall's original example indeed works fine.
Based on your inputs, I think I can now reframe my question as: is it possible to have an njitted function call functions that cannot be njitted?
@HPLegion you said it might be possible through the object mode context manager. I'll try looking into it.
Thanks for your help!

@flothesof perhaps take a look at http://numba.pydata.org/numba-doc/latest/user/withobjmode.html#the-objmode-context-manager seem like it would fit your use case?

Indeed, this might actually allow me to do it "as is".
In the case I was working on when I submitted the issue, the blocker really was the scipy.special.factorial2 function. Reimplementing it with numba-accelerated python let me do what I wanted.
I will probably be confronted with some more elaborate cases in the near future, where I won't have the knowledge to reimplement the function in pure-python in which case I'll try to use obj mode.
Given that my problem is solved and a workaround provided for further cases, I'll close the issue now. Feel free to reopen if you feel it's a better choice.
Thanks to all for your help.
Regards
Florian


Please Start Versioning PowerShell.exe (So The latest version can be found by Get-Command)

Can't do the following from openssh installer to find the latest powershell core.
get-command "c:\program files\PowerShell*\PowerShell.exe"
So the weird thing is to do the same thing for any other default shell candidate from third parties - this would likely work - to, for instance, find the latest bash.exe
I can do a work around by using the versioned folder for now - but that only handles the default install location where the methodology of a versioned folder is followed by convention.  If someone drops it in another folder or I try get-command against the file unpathed - I won't find a version.
There are obviously a lot of other reasons this should be done - just giving light to a very practical and current scenario.

It seems dup #4836 - we can discuss there.

It is not really a duplicate - getting a version number to compile into the PE header should be a couple compiler settings.  Additionally, you could have an exe emit it's version without coding the PE header.
Both ways should be probably enabled, but importantly, the PE header can be examined without running the EXE.

#4836 is different.  I think I can take care of this one and the icon one at the same time.

The issue for Windows only. If we'll think about portability it is better to be based on SMA.dll to get a version by Get-Command.

@DarwinJS what @iSazonov has found is that SMA.dll has file version information already with PSCore6 even on non-Windows.  Since that is a core dll that will always be there with PowerShell, you can rely on it.

I appreciate the tip.  It would be great if it could be right in the EXEs like you all did with openssh.
For instance, I was working on the ability for the openssh package to probe for which exe to use for the DefaultShell.  By the time I got it done, I realized I would need to make sure they can only choose an EXE and should not be allowed to have any wildcards in the file name so that they are always going for a know file name and don't pickup unintention EXEs.
Just wanted to give light to a use case where having it actually in the exe is not only what is generally expected on Windows - in this case it avoids custom code to go find the version for an EXE by looking in a DLL.
Is it somehow more challenging to do it for powershell than it was for openssh?

@DarwinJS I have a PR opened for pwsh.exe on Windows, @iSazonov's comment is that checking the version of pwsh.exe only works on Windows while checking version of SMA.dll works on all platforms.

@SteveL-MSFT - thanks for clarifying!  I was thinking it was being offered as a permanent alternative.

I found SMA.dll idea in VS Code repo - they use that to enumerate PowerShells on all platforms.


403 error retrying with lower quality version

2048x2048 picture retrying with lower quality version

IG now gives an 'Access denied' 403 error when trying to download the original profile pictures ("2048x2048", typically 1080x1080 in reality) by just removing the url signature from the links to 150x150 or 320x320 pictures. You should still get the smaller images, so you don't really need to pay attention to the error message.


[Bug]: Datepicker resets with a date even when default date is empty

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Actual behaviour -
When I use a datepicker inside a form widget, and then remove the default date and click the reset button of the form, the datepicker's value changes to a date.
Expected behaviour -
What I expect is when I use a datepicker inside a form widget, and then remove the default date and click the reset button of the form, the datepicker's value should be empty.
Important to note -
This actual behaviour only happens while editing the app. The issue cannot be reproduced on the deployed app's page.
https://user-images.githubusercontent.com/22471214/187485446-9796128a-e321-45ab-87dd-2e5a31fa89a0.mp4
Steps To Reproduce

Drag and drop a Form Widget.
Drag and drop a datepicker inside it.
Remove the default date from the property pane. Make the default date empty.
Click on the reset button in the form widget.
Observe the date inside the datepicker.

Public Sample App
No response
Version
Appsmith v1.7.14-SNAPSHOT

Stats

Stat
Values

Reach
94

Effort (months)
0.5

This is a very old issue that is cropping up again, https://github.com/appsmithorg/appsmith/issues/4058
We need to check if this is a regression or working as expected!


Lots of games saying 404

Website URL
https://sodium-5h8.pages.dev/ https://www.aliheja.website/
UserAgent
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:125.0) Gecko/20100101 Firefox/125.0
Sodium Version
v2.0.0
Description of my Problem
Many of the default games including but not limited to Among Us, Baldi's Basics, SM64 and BItlife currently say "404: Not Found" when you try to use them.

what


Add youtube channel banner

Let me merge first, then I will build locally... and fix if needed

@anitagraser Not very pretty, do you think?

Weird ... and annoying. I paid extra attention to get it align nicely and with span3 everything looks wonky.

There's an extra div class row in the case where 3x span4 works:
https://github.com/qgis/QGIS-Website/blob/89d43074ce7a8346ea92a5bdc6853633fad89d03/themes/qgis-theme/index.html#L118-L124

Alternatively, I can rescale the logos, since I noticed none of them are shown in 100% anyway

The row div seems to work:


(refactor) added custom props to support loadingIndicator, background colours

#2
Custom Props Added

showLoading - Prop to show loading indicator when WebView loads hCaptcha content
backgroundColor - Background colour for the SafeAreaView and WebView backdrop so as to customise for apps having specific theme on the page
loadingIndicatorColor - Color for the ActivityLoadingIndicator of WebView renderLoading

@justinkx Thanks! Would you mind adding a test?

@justinkx appreciate it! Forked this to add a github action and merged as #3 .


Added Dockerized Version of Gotify

Added Dockerized Version of Gotify
Signed-off-by: Nathan Easton<EMAIL_ADDRESS>

Thanks for your PR. This would make sense to add to the Gotify repository rather than here.

I did make a pr there but there hasn't been activity on the repo in a couple of months.

There's not much I can do to help you there I'm afraid. If a successor repository appears we can change the listing, but it is not my place to point to unofficial builds of exporters.

Got in contact with the author of the bridge and got my dockerized version added to the readme.

Got in contact with the author of the bridge and got my dockerized version added to the readme.

Great!


HTTP response is not JSON, needs to be converted first

Daikin devices do not respond or accept JSON objects.
Will need to convert the strings returned in HTTP GET responses to be JSON formatted

Resolved in https://github.com/DirtyDevWork/homebridge-daikin/commit/8ad55e7d026b735530a12cb1d8862bdeeeb6a5f8


Provide initial domain flow injection points

This PR allows a third party to inject custom domain validation logic into the domain check and create flow.

After our conversation I've gone back and looked at 'RegistryExtraFlowLogicProxy'. This proxy assumes the 'RegistryExtraFlowLogic' is tied to a particular TLD. In our DPML implementation we need our logic to apply to all current and future TLD's. This means we would need to call [setOverride](https://github.com/google/nomulus/blob/master/java/google/registry/flows/domain/RegistryExtraFlowLogicProxy.java#L35) for each existing and newly created TLD. I believe this causes further complication as we would need to add this method call to the current TLD creation logic. The implementation of ExtraDomainValidation I've added applies across every TLD. We could add an interface to the proxy class so we could inject a proxy which applies logic on a per TLD or against all TLDs.
Hoping to get some direction from Google on how they would like to see this implemented. Also let me know if you would like this conversation moved into the Google groups.

Definitely don't use setOverride(). That's a somewhat hacky way to insert
extra logic into tests, and I don't think it would be good to use it in a
running system.
At the meeting yesterday, it sounded like the thought was that we would
just inject the same extra logic into every TLD, one by one. That's
laborious, but it could work. However, I agree that that is one reason I
originally thought that our extra logic support wouldn't be appropriate for
you.
One possible approach would be to modify the RegistryExtraFlowLogicProxy
class to include the concept of a global extra logic handler that would
always be invoked whether or not there was also TLD-specific logic. We'd
need to rethink how RegistryExtraFlowLogicProxy works, but we need to do
that anyway, because right now the choice of extra logic is just hard-coded
per TLD. Do you think that sort of thing would work for you?
On Thu, Oct 20, 2016 at 6:45 PM, Justin Graham<EMAIL_ADDRESS>wrote:

After our conversation I've gone back and looked at '
RegistryExtraFlowLogicProxy
https://github.com/google/nomulus/blob/master/java/google/registry/flows/domain/RegistryExtraFlowLogicProxy.java'.
This proxy assumes the 'RegistryExtraFlowLogic' is tied to a particular
TLD. In our DPML implementation we need our logic to apply to all
current and future TLD's. This means we would need to call [setOverride](
https://github.com/google/nomulus/blob/master/java/google/registry/
flows/domain/RegistryExtraFlowLogicProxy.java#L35) for each existing and
newly created TLD. I believe this causes further complication as we would
need to add this method call to the current TLD creation logic. The
implementation of ExtraDomainValidation I've added applies across every
TLD. We could add an interface to the proxy class so we could inject a
proxy which applies logic on a per TLD or against all TLDs.
Hoping to get some direction from Google on how they would like to see
this implemented. Also let me know if you would like this conversation
moved into the Google groups.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/google/nomulus/pull/37#issuecomment-255248785, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AJwSlvIlJ1i6NW2rV2NM6W30LxdOgu7Yks5q1-7wgaJpZM4KcT-j
.


AR file offline

Do you want to request a feature or report a bug?
Just a doubt

What is the current behavior?
I have an AR solution, but all the files on

Hi @willxvi , yes it is possible. You do not have to use script that are referring to remote AR.js repository, instead you have to take that file (aframe-ar.min.js for example, the one that is referred from the remote script), and place it in your local folder on the pc. Then you have still to refer with the script but using a local path.
For example, if you have a directory where your index.html is in a folder called 'project', you can place the aframe-ar.min.js (or aframe-ar.js, it is the same but bigger size) in the folder project and then use the script like this:
<script src="./aframe-ar.js"></script>
The same you have to do for all the other script (like aframe).
EDIT: I have already answered same question here
Also, if you find problem with camera_para.dat file using AR.js offline, check this out https://github.com/jeromeetienne/AR.js/issues/50: you may have to add this script <script>THREEx.ArToolkitContext.baseURL = './'</script> to tell AR.js to search for external files referring to your local folder.

If you'd like your users to be able to run it offline, you could make a progressive web app out of your site https://blog.heroku.com/how-to-make-progressive-web-app#create-code-offline-html-code-as-an-alias-to-code-index-html-code which is what I'm currently doing.

I successfully used this boilerplate in a project: https://github.com/digaverse/webxr-webpack-boilerplate


Add cargo-semver-checks to CI to ensure semver compliance

In the past we struggled with SemVer compliance (See #140, #169, #200, #246).
Today I read about cargo-semver-checks (also see the article on Predrags blog.)
Seems like it should be as simple as running the github action. We might want to run it on every tag, and tag all new versions according to the version in the Cargo.toml.
This doesn't entirely fix the problem, but should improve this going forward, especially as there are probably more SemVer-lints coming to the crate.
Might also want to enable http-registry in it once it lands.

I still want this. I would work on this if I find the time (if noone did it before, should be a really easy integration), so please leave this open for the time being.


Minor code improvements

What had been missed was corrected.
It remains to solve the problem with the types when working with requests.

What had been missed was corrected. It remains to solve the problem with the types when working with requests.

What kind of problem are you referring to? Do you mean that we don't know about the data structure of responses?


Update to Heroku Eco & Mini plans

Summary
Heroku Free planes are sunsetting on Nov 28, we should update the deployment script and instructions to use the new plans instead.
Suggested Solution

Update manual instructions
Update deploy script

Alternative Solutions
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Fixed by #904


Feat: Implementation of Smooth Scroll using lenis

for better user experience, adding of smooth scroll while scrolling up and down

assigned.


Update to use Kind v0.4.0 and remove a todo

What this PR does / why we need it:
Handle a todo item.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
https://github.com/kubernetes-sigs/kind/issues/111
Special notes for your reviewer:
/cc @font
Release note:

@xunpan kind on macos is a documented special-case


Add list of keys in keys reference page

Current Behavior
Currently, we are not showing all keys in keys reference page, however we now have all keys in csv file in permission directory
Desired Behavior
Show data from csv in keys reference page in form of table
Implementation
Use Hugo template
Acceptance Tests

Mockups

Contributor Guide

🎨 Wireframes and designs for Layer5 site in Figma (open invite)

@iArchitSharma  Are you working on this? If not, can I take up this?


Upgrade Cake to 0.17.0

Cake 0.18.0 will requires at least version 0.16.x to work.

Looking at upgrading one of our projects to 0.19 and I'm currently getting hit with the "need to reference at least Cake.Core version 0.16.0" error. Is there an eta on a release for this?

@aabenoja this is on my list to tackle, along with updating this repository to use Cake.Recipe.  It could be that @philo will have a chance to get to this first though.

@devlead thank you for making this change!

@aabenoja I have just pushed a new nuget package to NuGet.org for Cake.Webpack.
Can you please take it for a spin, and let me know if you run into any issues.
Thanks!


ffmpeg-qsv/transcode: Transcoding feature support

1. It supports transcoding of AVC, HEVC, MPEG2 and VC1 test streams
2. HWtoHW, HWtoSW and SWtoHW transcoding support added for ffmpeg-qsv

Signed-off-by: hbomminx<EMAIL_ADDRESS>

@uartie  @FocusLuo and @wangzj0601  could you please review this patch

LGTM


Media Player Update warnings

Make sure you are running the latest version of Home Assistant before reporting an issue.
You should only file an issue if you found a bug. Feature and enhancement requests should go in the Feature Requests section of our community forum:
Home Assistant release (hass --version):
0.48
Python release (python3 --version):
3.4.2
Component/platform:
Sonos Media Player
Description of problem:
This problem has been around for a while now.   I am seeing a lot of warnings in the logs for 'Update for media_player.tv_room is already in progress'.  This seems to occur when the given Sonos device is playing.
Expected:
Problem-relevant configuration.yaml entries and steps to reproduce:

Traceback (if applicable):
2017-07-02 07:53:23 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.living_room is already in progress
2017-07-02 07:53:24 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.kitchen is already in progress
2017-07-02 07:53:25 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.master_bedroom is already in progress
2017-07-02 07:53:25 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 07:56:31 WARNING (MainThread) [homeassistant.helpers.entity] Update for remote.great_room is already in progress
2017-07-02 07:56:59 WARNING (MainThread) [homeassistant.helpers.entity] Update for remote.great_room is already in progress
2017-07-02 07:58:40 WARNING (Thread-12) [netdisco.ssdp] Found malformed XML at http://<IP_ADDRESS>:9080: status=ok
2017-07-02 08:18:03 ERROR (MainThread) [homeassistant.core] Timer got out of sync. Resetting
2017-07-02 09:10:10 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 13:43:05 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 13:43:05 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 13:43:06 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 13:43:06 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 13:43:06 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 15:22:10 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 16:15:06 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 16:37:17 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.kitchen is already in progress
2017-07-02 16:37:17 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 17:12:11 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 19:32:30 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 19:52:51 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 20:43:20 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 20:43:20 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-02 20:43:21 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.tv_room is already in progress
2017-07-03 06:10:48 WARNING (MainThread) [homeassistant.helpers.entity] Update for media_player.master_bedroom is already in progress

Additional info:

Yeah sonos are slow. You can change the SCAN_INTERVAL to 15,20,25 sec until you fix the warning or ignore it...

Is SCAN_INTERVAL an optional parameter for the Sonos component?  I don't
see it on the component doc page.
On Mon, Jul 3, 2017 at 9:48 AM Pascal Vizeli<EMAIL_ADDRESS>wrote:

Yeah sonos are slow. You can change the SCAN_INTERVAL to 15,20,25 sec
until you fix the warning or ignore it...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/issues/8319#issuecomment-312650429,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AS1jhlOyYkvabHzy4NoPRHo8xMkEOpdtks5sKPFCgaJpZM4OMMWF
.

Not in the documentation , but a quick check seems to help it.  I will let this run for a while and see if it needs tweaking.
media_player:
  - platform: roku
  - platform: sonos
    SCAN_INTERVAL:  20

the scan_interval work on every polling platform :+1:

Not in the documentation...

Wrong, https://home-assistant.io/docs/configuration/platform_options/#scan-interval


problem

After dividing the pixels of the binary image by 255 and setting num_class to 2 for training, I encountered an error when loading the model for segmentation：Missing key(s) in state_dict: "image_encoder.pos_embed", "image_encoder.patch_embed.proj.weight", "image_encoder.patch_embed.proj.bias", "image_encoder.blocks.0.norm1.weight", "image_encoder.blocks.0.norm1.bias", "image_encoder.blocks.0.attn.rel_pos_h", "image_encoder.blocks.0.attn.rel_pos_w", "image_encoder.blocks.0.attn.qkv.weight", "image_encoder.blocks.0.attn.qkv.bias", "image_encoder.blocks.0.attn.proj.weight", "image_encoder.blocks.0.attn.proj.bias", "image_encoder.blocks.0.norm2.weight", "image_encoder.blocks.0.norm2.bias", "image_encoder.blocks.0.mlp.lin1.weight", "image_encoder.blocks.0.mlp.lin1.bias", "image_encoder.blocks.0.mlp.lin2.weight", "image_encoder.blocks.0.mlp.lin2.bias", "image_encoder.blocks.1.norm1.weight", "image_encoder.blocks.1.norm1.bias", "image_encoder.blocks.1.attn.rel_pos_h", "image_e............
Did I have a problem during my training？

After dividing the pixels of the binary image by 255 and setting num_class to 2 for training, I encountered an error when loading the model for segmentation：Missing key(s) in state_dict: "image_encoder.pos_embed", "image_encoder.patch_embed.proj.weight", "image_encoder.patch_embed.proj.bias", "image_encoder.blocks.0.norm1.weight", "image_encoder.blocks.0.norm1.bias", "image_encoder.blocks.0.attn.rel_pos_h", "image_encoder.blocks.0.attn.rel_pos_w", "image_encoder.blocks.0.attn.qkv.weight", "image_encoder.blocks.0.attn.qkv.bias", "image_encoder.blocks.0.attn.proj.weight", "image_encoder.blocks.0.attn.proj.bias", "image_encoder.blocks.0.norm2.weight", "image_encoder.blocks.0.norm2.bias", "image_encoder.blocks.0.mlp.lin1.weight", "image_encoder.blocks.0.mlp.lin1.bias", "image_encoder.blocks.0.mlp.lin2.weight", "image_encoder.blocks.0.mlp.lin2.bias", "image_encoder.blocks.1.norm1.weight", "image_encoder.blocks.1.norm1.bias", "image_encoder.blocks.1.attn.rel_pos_h", "image_e............ Did I have a problem during my training？

Did your checkpoint is downloaded from the site. Please make sure the checkpoint is correct.

yes im sure

yes im sure

When the checkpoint is not correct, then this wrong occurred. Could you provide the command and the whole log? Thank you very much.

python train_learnable_sam.py --image C:\Users\Duan\Desktop\LearnablePromptSAM-main\train\image_cut --mask_path C:\Users\Duan\Desktop\LearnablePromptSAM-main\train\gt_cut --model_name vit_b --checkpoint C:\Users\Duan\Desktop\LearnablePromptSAM-main\ckpts\sam_vit_b_01ec64.pth --save_path C:\Users\Duan\Desktop\LearnablePromptSAM-main\ckpts --lr 0.05 --mix_precision --optimizer sgd

python train_learnable_sam.py --image C:\Users\Duan\Desktop\LearnablePromptSAM-main\train\image_cut --mask_path C:\Users\Duan\Desktop\LearnablePromptSAM-main\train\gt_cut --model_name vit_b --checkpoint C:\Users\Duan\Desktop\LearnablePromptSAM-main\ckpts\sam_vit_b_01ec64.pth --save_path C:\Users\Duan\Desktop\LearnablePromptSAM-main\ckpts --lr 0.05 --mix_precision --optimizer sgd

Sorry, please provide the log of the training. You can try this way to check the checkpoint.
python -c "import torch; print(torch.load('C:\Users\Duan\Desktop\LearnablePromptSAM-main\ckpts\sam_vit_b_01ec64.pth ').keys())"

You maybe choice wrong modle.If you trained SAM modle ,Use PromptSAM besides PromptDiNo in the model for segmentation.


[Feature]: Add tooltip to table column header

Is there an existing issue for this?

[X] I have searched the existing issues

Summary
Add tooltip to table column

Why should this be worked on?
There are parts that are difficult to express with column names, so it would be nice if a tooltip was added.

We need a new property in the column to be used as display tooltip on header

Another user requested this feature.


"the browser app is not installed" and "no apps can open url" when chrome stable is not installed

i have firefox nightly and chrome dev installed, but tapping on browser links fails to open. this seems to happen with youtube links especially.
i have tried enabling and disabling "don't use custom tabs when opening links" and no difference. "prioritise google chome" is turned off.

maybe supported at 18c4245a31520ea1848330a530651ae6ef894ff0

confirmed fixed. thank you!


Current value error

INFO - Menu selector. (:dollar: Current value)
2021-06-07 01:38:08,513 - btb_manager_telegram_logger - INFO - Current value button pressed.
2021-06-07 01:38:08,519 - btb_manager_telegram_logger - ERROR - :x: Unable to fetch current coin information from database: unsupported operand type(s) for *: 'float' and 'NoneType'
Traceback (most recent call last):
  File "/home/angelo/Desktop/BTB-manager-telegram/btb_manager_telegram/buttons.py", line 111, in current_value
    (balance * btc_price - balance_7_day * btc_price_7_day)
TypeError: unsupported operand type(s) for *: 'float' and 'NoneType'

I guess this happens because, even if the tuple query_7_day is not None, it contains a None value.
I fixed changing line 108 of buttons.py to:
if query_7_day is not None and all(elem is not None for elem in query_7_day) and btc_price != 0:

We have reverted back as it was, @iluz0r.
So please upgrade you BTB manager telegram instance.
For now we close that issue.


Make sure assigning Panel.Children calls OnChildrenAdded/Removed correctly.

Add a unit test for this.

No longer needed as you can now subscribe to Children.CollectionChanged safely.


Tooling support for intersection/readonly types

Description:
$title.
Intersection types are supported with readonly at - T & readonly x
Record fields can also be marked readonly in the type-descriptor
type Foo record {
   readonly Bar b;
};

See https://github.com/ballerina-platform/ballerina-lang/pull/22519, https://github.com/ballerina-platform/ballerina-lang/pull/22965

Definition and the completion support has been added

Can we close this?

Closing the issue since completion and definition support is provided.


WEBSITE_CONTENTOVERVNET appears not to be only for Premium plans.

In regard to the following doc, WEBSITE_CONTENTOVERVNET is technically for all Windows virtual network-supported SKUs in the Dedicated (App Service) plan and for Windows Elastic Premium plans.
https://docs.microsoft.com/en-us/azure/azure-functions/configure-networking-how-to#restrict-your-storage-account-to-a-virtual-network

This feature currently works for all Windows virtual network-supported SKUs in the Dedicated (App Service) plan and for Windows Elastic Premium plans. Consumption and Linux Elastic Premium plans aren't supported.

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

ID: 18aa54fd-3aa1-37c5-925c-51a0195b1030
Version Independent ID: 60198016-1ea9-e7ae-b00b-2c665d5ad8ca
Content: App settings reference for Azure Functions
Content Source: articles/azure-functions/functions-app-settings.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

@YusukeTobo  Thank you for your feedback! We will review and update as appropriate.


rountrip executable infinite loop

With the latest changes in elab #3063, that executable goes into infinite loop

Any more information? Any specific test in focus or is that across the board for all tests??

The infinite loop is during elaboration process. ModPort -> Interface -> ModPort. Tnoc is one such test.

PR #3065 should stop the infinite loop (RoundTrip doesn't do an explicit elaboration anymore) but the issue with elaboration still persists.

See comment in PR if you need to re-enable elaboration in that executable.


Domain Register Bug

I accidentally deleted a domain that i still need to use. After that, I tried to register my domain again but it always output:

But there is no domain registered

Could you give us your username? Keep in mind this is case sensitive

Potentially related to #145

@duckopia We are still investigating this, in the meanwhile, we have deleted the domain from our system, and it is free to register.

Solved, tksm!


Monterey support

Looks like its not working with MacOS 12.0 Monterey

Hey folks, looks like @sindresorhus has forgot about us :D
I've created a library for focus mode management
https://github.com/arodik/macos-focus-mode