--use-service-account-credentials flag does not appear to correctly populate kubeconfig

when starting the CCM with only the --use-service-account-credentials=true flag set for credentials it does not appear to accept the service account from the deployment for the kubeconfig.
for example, we are starting the CCM with this manifest:
kind: Deployment
apiVersion: apps/v1
metadata:
  labels:
    app: alibaba-cloud-controller-manager
  name: alibaba-cloud-controller-manager
  namespace: openshift-cloud-controller-manager
spec:
  replicas: 2
  selector:
    matchLabels:
      app: alibaba-cloud-controller-manager
  template:
    metadata:
      labels:
        app: alibaba-cloud-controller-manager
    spec:
      hostNetwork: true
      serviceAccountName: cloud-controller-manager
      priorityClassName: system-cluster-critical
      nodeSelector:
        node-role.kubernetes.io/master: ""
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            - topologyKey: "kubernetes.io/hostname"
              labelSelector:
                matchLabels:
                  app: alibaba-cloud-controller-manager
      tolerations:
        - effect: NoSchedule
          key: node-role.kubernetes.io/master
          operator: Exists
        - effect: NoExecute
          key: node.kubernetes.io/unreachable
          operator: Exists
          tolerationSeconds: 120
        - effect: NoExecute
          key: node.kubernetes.io/not-ready
          operator: Exists
          tolerationSeconds: 120
        - effect: NoSchedule
          key: node.cloudprovider.kubernetes.io/uninitialized
          operator: Exists
        - effect: NoSchedule
          key: node.kubernetes.io/not-ready
          operator: Exists
      containers:
        - command:
            - /bin/sh
            - -c
            - |
              #!/bin/sh
              set -o allexport
              if [[ -f /etc/kubernetes/apiserver-url.env ]]; then
                source /etc/kubernetes/apiserver-url.env
              fi
              exec /cloud-controller-manager \
              --address=<IP_ADDRESS> \
              --allow-untagged-cloud=true \
              --leader-elect=true \
              --leader-elect-lease-duration=137s \
              --leader-elect-renew-deadline=107s \
              --leader-elect-retry-period=26s \
              --leader-elect-resource-namespace=openshift-cloud-controller-manager \
              --cloud-provider=alicloud \
              --use-service-account-credentials=true \
              --cloud-config=/etc/kubernetes/config/cloud-config.conf \
              --feature-gates=ServiceNodeExclusion=true \
              --configure-cloud-routes=false \
              --allocate-node-cidrs=false
          image: quay.io/openshift/origin-alibaba-cloud-controller-manager
          livenessProbe:
            failureThreshold: 8
            httpGet:
              host: <IP_ADDRESS>
              path: /healthz
              port: 10258
              scheme: HTTP
            initialDelaySeconds: 15
            timeoutSeconds: 15
          name: cloud-controller-manager
          resources:
            requests:
              cpu: 200m
              memory: 50Mi
          volumeMounts:
            - mountPath: /etc/kubernetes/
              name: k8s
            - name: cloud-config
              mountPath: /etc/kubernetes/config
      volumes:
        - hostPath:
            path: /etc/kubernetes
          name: k8s
        - name: cloud-config
          configMap:
            name: cloud-conf
            items:
              - key: cloud.conf
                path: cloud-config.conf

of note are the following entries:
      serviceAccountName: cloud-controller-manager

and
             exec /cloud-controller-manager \
              --address=<IP_ADDRESS> \
              --allow-untagged-cloud=true \
              --leader-elect=true \
              --leader-elect-lease-duration=137s \
              --leader-elect-renew-deadline=107s \
              --leader-elect-retry-period=26s \
              --leader-elect-resource-namespace=openshift-cloud-controller-manager \
              --cloud-provider=alicloud \
              --use-service-account-credentials=true \
              --cloud-config=/etc/kubernetes/config/cloud-config.conf \
              --feature-gates=ServiceNodeExclusion=true \
              --configure-cloud-routes=false \
              --allocate-node-cidrs=false

the service account is setup using this manifest.
when we run the controller though, we see this in the output
E0916 19:34:13.733843       1 reflector.go:178] pkg/mod/k8s.io/client-go@v0.18.1/tools/cache/reflector.go:125: Failed to list *v1.Endpoints: endpoints is forbidden: User "system:serviceaccount:kube-system:shared-informers" cannot list resource "endpoints" in API group "" at the cluster scope
E0916 19:34:18.256934       1 reflector.go:178] pkg/mod/k8s.io/client-go@v0.18.1/tools/cache/reflector.go:125: Failed to list *v1.Node: nodes is forbidden: User "system:serviceaccount:kube-system:shared-informers" cannot list resource "nodes" in API group "" at the cluster scope

which appears to indicate that the system:serviceacount:kube-system:shared-informers is being used for the kubeconfig user, instead of the expected cloud-controller-manager.
i looked at the code around building a client, https://github.com/openshift/cloud-provider-alibaba-cloud/blob/master/cmd/cloudprovider/app/ccm.go#L120 and it appears that the client function is using clientcmd.BuildConfigFromFlags(ccm.Master, ccm.Kubeconfig) to build the kubeconfig, but does not fall back to check if the service account credentials will be used if there is no kubeconfig or master specified.
the BuildConfigFromFlags function is used slightly differently in the client-go code (see https://github.com/kubernetes/cloud-provider/blob/master/options/options.go#L177), and in specific has a check to detect is the service account credentials should be used (see https://github.com/kubernetes/cloud-provider/blob/master/options/options.go#L197).
i think this may indicate that the client function will need to also check this flag in cases where no kubeconfig or master is specified.

another option to solving this issue would be to refactor the CCM code to use more of the functionality from the upstream cloud-provider library.
for example, using the NewCloudControllerManagerCommand to initialize the client. you can see how this is done in the AWS CCM.
this would require some refactoring, but would make the alibaba CCM more resilient by using the common library methods for initialization.

The Alibaba CCM check the the service account credentials in https://github.com/kubernetes/cloud-provider-alibaba-cloud/blob/42eac35915d1b030a15727d9fc807f94dbfa3f3f/cmd/cloudprovider/app/ccm.go#L230. However, not all controllers use cloud-controller-manager service account which causes the error log. We will fix it so that all controllers will use the same service account.

https://github.com/kubernetes/cloud-provider-alibaba-cloud/pull/265/files

thanks!
cc @kwoodson @JoelSpeed

This has been resolved by pulling upstream code.


Support Juju's User Secrets for supplying confidential material

Describe the bug
Currently the way to provide things like passwords is via charm configuration. Juju 3.3 and beyond has implemented support for User Secrets, that allows you to supply content that you consider sensitive (passwords, private keys, etc)
To Reproduce
Configuring your httprequest-lego-k8s-operator currently expects you to pass a couple of things that might be considered sensitive as standard charm config. eg:
juju config httprequest-lego-k8s \
<EMAIL_ADDRESS>\
    httpreq_endpoint='https://lego-certs.example.com' \
    httpreq_password='${YOUR-PASSWORD}' \
    httpreq_propagation_timeout=600 \
    httpreq_username='${YOUR-USERNAME}'

While the visibility of that content is restricted to users and the application in question (other applications cannot ask for the config of an app that is not theirs), it is still content that would show up in juju config, and is stored in plain text inside juju.
With secrets, at least there is the option to store them in something like vault, and by default the content isn't shown unless you explicitly ask for the secret content, and it is only available to users with Write permission on a model (vs anyone with Read).
Expected behavior
It does complicate the workflow a bit, because you have to have a secret in order to grant and share it to an application, but you also have to have the application in order to have a target to grant.
So the steps become:
juju deploy httprequest-lego-k8s
SECRET_ID=`juju add-secret NAME_FOR_ME password=XXXX username=YYY`
juju grant-secret NAME_FOR_ME httprequest-lego-k8s
juju config httprequest-lego-k8s httpreq_secret=$SECRET_ID

You also need to add a config entry (httpreq_secret) with type "secret" to the charm, and then respond to the config-changed event that happens in step 4 above. You would also need to handle secret-changed events in the case that a user decides to juju update-secret NAME_FOR_ME.)

Thank you @jameinel for opening this. We will specify this and include it into our 24.10 roadmap.


Changelog dialog

Display a changelog dialog informing the user on what is new when a new version of the app is started for the first time.

Data could be pulled from github releases.

I did this for my own app a while ago.

Implemented, https://github.com/d4rken/reddit-android-appstore/pull/95


Greaseweazle missing features

Fluxengine's Greaseweazle documentation states that most features are available when using Greaseweazle hardware. Is there anything lacking in Greaseweazle firmware that would unblock missing features? Or would effort be better directed at fluxengine's Greaseweazle driver?
And a minor documentation nit: Greaseweazle, not GreaseWeazle.

AFAIK the only major missing feature is hard sector support. I don't have any hard sectored disks and so am unable to test this; FluxEngine's own firmware for this was contributed (replacing my own broken attempt to implement it!).
Re 'GreaseWeazle': muscle memory, I'm afraid. I thought I'd fixed most of these...

Yes I agree sync'ing with the sector marks on writes would be great. Oh well. There's so little HS media out there.

Not exactly a feature but more a bug, I still experience https://github.com/davidgiven/fluxengine/issues/512 frequently, I think fluxengine is missing an initialization or resync on connect, but I haven't gone and looked at the details of it yet myself.


How to use permissions as term store group manager?

Can you elaborate on how a user that has been assigned group manager permissions might use his permissions to manage the term group?
Of course the user is not a member of any other admin role. ;-)

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

ID: b5356ce0-3900-09a4-c9e7-5d9804302f71
Version Independent ID: 7136f8c3-11d7-1bec-9355-26e42787e0b2
Content: Assign roles and permissions to manage term sets - SharePoint in Microsoft 365
Content Source: SharePoint/SharePointOnline/assign-roles-and-permissions-to-manage-term-sets.md
Service: sharepoint-online
GitHub Login: @MikePlumleyMSFT
Microsoft Alias: mikeplum

The reason I'm asking for this information is, that I assigned some users as group managers and term store admins.
However, these users are unable to access the Term Store Management tool as they are no SharePoint Admins.
So maybe this is not a problem in the documentation, but a design flaw in the implementation since one has to be SharePoint Admin to access the Term Store Management tool.

Hello @taikuli Martin, how are you?
Please see here
Tested with a non-global admin user and group manager.
Hope this information helps you!


Some issues in view layer

https://github.com/anticafe/survey_app/blob/4c79d8fc64347199a6648c19d576425d2ab8b694/app/src/main/java/com/myapp/ui/main/SurveyAdapter.kt#L43 Use DiffUtil, notifyDataSetChanged is expensive in case we are appending items.
Naming convention: "mCallback" https://github.com/anticafe/survey_app/blob/4c79d8fc64347199a6648c19d576425d2ab8b694/app/src/main/java/com/myapp/ui/main/SurveyAdapter.kt#L17
newInstance for MainFragment?
This looks odd to me: https://github.com/anticafe/survey_app/blob/4c79d8fc64347199a6648c19d576425d2ab8b694/app/src/main/java/com/myapp/ui/detail/DetailFragment.kt#L47 actually he can just set it at Fragment's onViewCreated()
This can be an extended field
in the same entity class: https://github.com/anticafe/survey_app/blob/4c79d8fc64347199a6648c19d576425d2ab8b694/app/src/main/java/com/myapp/utils/TextExt.kt#L10

Hi @luongvo
Thanks for your code review. I think some of above issues has been fixed before yesterday.

private var mCallback: MainFragment.OpenDetailCallback = callback

It's improved 2 days ago:
https://github.com/anticafe/survey_app/blob/bbb97216c6bd87bd29c9f7fe857811fa3d5e3859/app/src/main/java/com/myapp/ui/main/SurveyAdapter.kt#L16

Well I see. According to @luongvo 's comment, you take the revision based on submission date, thus this issue still there. However, now these below issues have been fixed:

private var mCallback: MainFragment.OpenDetailCallback = callback

Fixed in bbb9721
And for this one, fixed in bbb9721

requireActivity().onBackPressedDispatcher.addCallback(this, callback)
actually he can just set it at Fragment's onViewCreated()

Just a little comment about onBackPressed. Now I use NavComponent to handle that onBackPressed so that is ok. But before:

requireActivity().onBackPressedDispatcher.addCallback(this, callback)
actually he can just set it at Fragment's onViewCreated()

@luongvo, according to your comment, it should be in onViewCreated. However, at first I follow Android official document (Provide custom back navigation) and they let me know from onCreate is fine too.

This can be an extended field in the same entity class: 4c79d8f

Fixed in b47eb2c

About RecyclerView issue

Use DiffUtil, notifyDataSetChanged is expensive in case we are appending items. Commit 4c79d8f

Fixed in 8af0391

All issues has been fixed. Please help me to verify. Your comments are welcome 👍 .


Feedr: Unterminated string literal

So, I'm trying to upgrade to v3.0.1, and it seems to work everywhere but one place. In one instance, where we're using jquery-rss to fetch posts from a Wordpress blog, the script crashes with the following console message: "SyntaxError: unterminated string literal".
This is the request causing the error: http://www.feedrapp.info/?callback=jQuery110203348644026184171_1440446349851&q=http%3A%2F%2Fpennlibnews.wordpress.com%2Fcategory%2Fpenn-libraries%2Ffeed%2F&num=3&_=1440446349852
https://github.com/sdepold/jquery-rss/releases/tag/v3.0.1
(I have no idea if this link will expire; sorry if it does.)
Any idea why this is happening? I can't tell where the unterminated string is, or why it might be there.

You mean when you open that url you are receiving an error?

Can you also please provide the respective jquery-rss call?

Here, I'll make it temporarily live again so you can see the error:
http://www.library.upenn.edu/
(You can see the error in the console.)
We're using jquery-rss for two feeds on the page: news and events. The news feed, which is a feed of Wordpress posts, is breaking.
We've abstracted our site-wide jquery-rss settings into this file:
http://www.library.upenn.edu/scripts/feedreader/pennFeedReader.js
And the call for the news feed is here:
http://www.library.upenn.edu/scripts/feedreader/readNews.js

hm when I open the URL I'm not getting any error. Which browser are you using?

It happens to me in Chrome and Firefox.

ah ok I can see that error now in firefox

So inside your feed there is a invisible character which kills the string :o That is amazing! Guess I will filter that characters out

I think it works now. Can you check?

Yes, it works! Thank you so much! :smile:

Glad to hear that!
Ivan Goldsmith<EMAIL_ADDRESS>schrieb am Mi., 26. Aug. 2015 um
16:05:

Yes, it works! Thank you so much! [image: :smile:]
—
Reply to this email directly or view it on GitHub
https://github.com/sdepold/jquery-rss/issues/66#issuecomment-135032468.


bug: Error: Unknown XML element found: Unknown channel element: image

Thanks for this crate! I know it's new, but I'm having issues with this:
Error: Unknown XML element found: Unknown channel element: image

No pressure, just wanted to pass it along. This should be RSS 2.0
<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>GETS Open Tenders or Quotes</title>
    <link>https://www.gets.govt.nz//ExternalIndex.htm</link>
    <description>This feed list the current open tenders or requests for quote listed on the GETS.</description>
    <image>
      <title>Open tenders or Requests for Quote from GETS</title>
      <url>https://www.gets.govt.nz//ext/default/img/getsLogo.jpg</url>
      <link>https://www.gets.govt.nz//ExternalIndex.htm</link>
    </image>
...

Thanks @jguhlin I will look into it! Much appreciated


strconv: add HTML quoting for string returned by strconv.ParseInt error

We have a report of a potential XSS vulnerability due to code that does, effectively, this:
num, err := strconv.Atoi(r.URL.Query().Get("field"))
    if err != nil {
        http.Error(w, err.Error(), http.StatusBadRequest)
}

The issue is that strconv.Atoi and friends return the string they are trying to parse as part of the error value, and it is included in the err.Error string.  http.Error adds headers that are intended to ensure that returned page is not interpreted as HTML, but reportedly some HTML readers ignore these options.
Perhaps this kind of code should be more careful, or perhaps strconv.ParseInt should not return the input in the error message, or perhaps HTML readers should not be buggy.  But we are where we are.  We don't necessarily have to change anything in the Go library, but it occurs to me that there is one relatively simple way to help code vulnerable to this sort of attack: quote all non-ASCII characters in the error message, and also quote any angle brackets.  Since these characters can not reasonably appear in strings passed to strconv.Atoi and friends, this doesn't seem like a significant handicap, and should fit within the Go 1 compatibility guarantee.
I have a CL for this that I will send out.  I've opened this issue for discussion in case people think this change might be unwise or unwarranted.

It seems unfortunate for strconv to need to know about HTML escaping, and not all strconv errors will be output into an HTML relevant context (e.g., console/log output).  It also punishes users who do proper HTML escaping already, because their error messages will be double escaped.
Does the report specify which HTML readers are vulnerable?

http.Error adds headers that are intended to ensure that returned page is not interpreted as HTML, but reportedly some HTML readers ignore these options.

If I understood the issue correctly,  in this case, the client is broken and I don't think there's anything the server can reasonably do to fix that.
It's no different than if the server intentionally outputs
Content-Type: text/plain...
...
example code <script>alert('hello world')</script>

IMO, any code that dumps undefined internal state like error messages is broken and trying to be helpful is only going to mask the problem.
I also think that this would potentially make the error message useless because it would no longer report what it actually failed to parse (I input < and it complains about <)

I'm opposed to changing anything.

@mdempsky I agree that clearly strconv.ParseInt should not have to care about HTML quoting.  In retrospect I think it was probably a mistake for the error returned by ParseInt to include the input string.  That should have been left up to the caller, not made the default.
I am not worried about callers who do proper HTML quoting, because no normal input to ParseInt is going to include angle brackets anyhow.  In any case, with my proposed change the error message simply won't contain any angle brackets, so any extra quoting done by the caller will most likely have no effect.
The report was for people using flash and Adobe reader plugins to Internet Explorer.
@DisposaBoy Yes, of course the HTML reader is broken.  That is not in dispute here.  The error message is already quoted using strconv.Quote, so in my opinion adding some additional quoting will do little harm.

To clarify, by "HTML escaping" I thought you were proposing that < and > would be replaced by < and >, which I'd be opposed to.
I see that strconv already does Go-style string literal escaping in error messages (e.g., " -> \"), and I think applying that sort of escaping to < and > (like in your CL) is okay, though unfortunate.

There's no reason strconv is exceptional here. Unless we're going to change every Error method in the entire code base, surely the fix belongs somewhere else. I filed #13150.


ReadAsyncTest.invalidDatabase is flaky

Error:    ReadAsyncTest.invalidDatabase:196 » DatabaseNotFound NOT_FOUND: The session pool has been invalidated because a previous RPC returned 'Database not found': NOT_FOUND: com.google.api.gax.rpc.NotFoundException: io.grpc.StatusRuntimeException: NOT_FOUND: Database not found: Database with id invalid-database not found

Fixed in commit #9bbb402


go broken with binutils that generates STT_COMMON symbols

What version of Go are you using (go version)?
go version go1.7.1 linux/amd64

What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH=""
GORACE=""
GOROOT="/usr/x86_64-pc-linux-gnu/lib/go"
GOTOOLDIR="/usr/x86_64-pc-linux-gnu/lib/go/pkg/tool/linux_amd64"
CC="x86_64-pc-linux-gnu-cc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build450521412=/tmp/go-build -gno-record-gcc-switches"
CXX="x86_64-pc-linux-gnu-c++"
CGO_ENABLED="1"

What did you do?
We built binutils with --enable-elf-stt-common. This makes the gnu assembler/objcopy and ld default to generating common symbols with the STT_COMMON type.
What did you see?
This makes go break at runtime with:
..../go/pkg/linux_amd64/runtime/cgo.a(_all.o): malformed elf file: runtime/cgo(.text)#40: reloc of invalid sym #65 x_cgo_threadentry shndx=65522 type=5

If binutils was not configured this way, this should be reproducible by passing --elf-stt-common=yes and -z common to the assembler and linker respectively when builing go. I wasn't able to do this but that's probably due to my unfamiliarity with go's build system.
How to fix this?
go could pass --elf-stt-common=no and -z nocommon when building itself or anything else. However I don't think that's workable, as then it would not be able to link to objects that were created with those flags set.

Can you try Go master? (what will be Go 1.8)
Or wait a few days for the first beta if you don't want to run src/make.bash.

I can confirm that it happens on master and that https://golang.org/cl/33653 fixes it.


[TASK] Update Wallet Connect Modal Component for Prompt Texts/Buttons for Clarity

Description
Improve and polish Wallet Connect Modal component by removing redundancies, correcting branding spellings, and improving instructional copy.
Improvements

Implement New Copy: Update the text to "Connect your EVM or Substrate wallet to interact on the Tangle Network" which accurately reflect the usage of Tangle dApp. (bridging privately cross-chain is not applicable)
Remove Redundant Buttons: Eliminate the primary white 'Download xx wallet' button located below the red text to reduce duplication. (we currently have two download buttons)
Audit and Correct Spelling: Search for all instances of PolkaDot and replace with Polkadot{.js}, ensuring brand names are accurately represented. Example to reference: link
For select below list, sufficient to use the text Polkadot{.js} instead of PolkadotJS Extension for consistency.
Improve Download Wallet Prompts: Change the bottom text from 'Don't have a wallet' to 'Don't have a <insert wallet name> ?' link. Simplify the utility button text to just 'Download', removing the wallet name for simplicity.

Current Screenshots

@vutuanlinh2k2 I will assign this task to you since you have worked on the wallet component previously.


Access to shared resource requires and does not require mutable declaration at the same time

I need some help on understanding when to access shared resources in a let mut way and when a mere let (without the mut) is sufficient, please. Can someone explain to me why in below example in timer1, I'm required to declare bar as let mut bar = ctx.shared.bar while at the same time let bar = ctx.shared.bar is sufficient in timer2?
From how I read the example in the docs, the mut shouldn't be necessary in timer1, or am I getting things utterly wrong?
Thanks a lot! 🙏
Below example is based on the app template. Please find a self-contained, compileable setup here.
#![no_main]
#![no_std]
#![feature(type_alias_impl_trait)]

use test_app as _; // global logger + panicking-behavior + memory layout

#[rtic::app(
    device = nrf52840_hal::pac,
    dispatchers = [SWI0_EGU0]
)]
mod app {

    // Shared resources go here
    #[shared]
    struct Shared {
        foo: u8,
        bar: u8,
    }

    // Local resources go here
    #[local]
    struct Local {}

    #[init]
    fn init(_cx: init::Context) -> (Shared, Local) {
        (Shared { foo: 42, bar: 43 }, Local {})
    }

    // Optional idle, can be removed if not needed.
    #[idle]
    fn idle(_: idle::Context) -> ! {
        defmt::info!("idle");

        #[allow(clippy::empty_loop)]
        loop {}
    }

    #[task(binds = TIMER1, shared = [bar])]
    fn timer1(ctx: timer1::Context) {
        // Why do I need mut here?
        // let bar = ctx.shared.bar; // triggers a 'cannot borrow `bar` as mutable' below
        let mut bar = ctx.shared.bar;
        bar.lock(|_bar| {});

        // The same is true for
        // ctx.shared.bar.lock(|_bar| { });
    }

    #[task(binds = TIMER2, shared = [foo, bar])]
    fn timer2(ctx: timer2::Context) {
        #[allow(clippy::disallowed_names)]
        let foo = ctx.shared.foo;
        let bar = ctx.shared.bar;

        (bar, foo).lock(|_bar, _foo| {});
    }
}

Just in case it matters:
> rustc --version
rustc 1.73.0-nightly (33a2c2487 2023-07-12)

Hi,
This comes from the move of the foo and bar into the tuple (foo, bar).
As this move happens this tuple is "upgraded" to mutable as it is a temporary, and then the mutable requirement from lock is upheld.
Hope that helps!

Yep, that helps. Thank you very much, @korken89 ! I wasn't aware of the temporary being mutable in itself - good to know 😅
One more thing I noticed re-reading the docs (which I leave here just in case somebody else stumbles upon this): in the docs foo's context is declared mutable ( async fn foo(mut c: foo::Context)) whereas in the example I stated above the context is declared immutable (e.g. fn timer1(ctx: timer1::Context)). In consequence, the call c.shared.shared.lock() is possible in the docs but in above example a move to some mut variable (or a temporary as you pointed out) is required.


Files.associations setting overrides user choice

Testing #31448 on Ubuntu Linux 16.04

Create file.foo and open it
Using the status bar, change its mode to CSS
Without closing file.foo, open settings and add "files.associations": { "*.foo": "javascript" }
Switch back to file.foo

The mode will have been changed to JavaScript, although it should really be CSS since that's what I picked. IMO files.associations should only affect the choice of a mode when a file is about to open, not when it is already open, much less when I have explicitly chosen a mode.

@joaomoreno When you change the files.associations from the status bar, I am guessing it would have added the setting to your workspace settings file because, I also guess, you would have files.associations setting defined there. Hence any changes done in User settings are over written by the workspace settings.
Please confirm if it is true?

I didn't change files.associations from the status bar. I used the status bar to change the mode of file.foo only.

Yeah, implicitly this will update files.associations setting in

workspace settings, if it already configured here
otherwise in user settings

Interesting, I didn't know that.

@joaomoreno Do you mind closing this issue, or do you expect a different behaviour?
@bpasero FYI

It feels like an issue to me. 😕

Yeah in textFileEditorModel#onFilesAssociationChange() we update the mode based on config changes. We currently have no tracking of the user changing the mode. The change from the status bar actually goes right to the Alex model.

via https://github.com/microsoft/vscode/pull/73678


Deleting unused skillmap files and images

Deleting (instead of renaming) unused files and folders that cause confusion.
Will wait for approval before squashing this one.

I don't believe card or card2 are being used anywhere.  Just in case, I've update those files to use the /skillmap/ version.


edgeport

I followed the source code installation method and successfully installed it, but when starting edgeport, this error will be reported. What is the reason for this?
“Launcher.java unable to run edgeport: The Peer SIP Stack: gov.nist.javax.sip.SipStackImpl could not be instantiated. Ensure the Path Name has been set”

You probably missing the keyStore and Truststore in your edgeport.yaml.
I can think of two options to solve this:

Remove the securityContext from the edgeport.yaml while you are developing.
Check the installation steps in gitpod config  and try to replicate (that should give an environment)

nment ready to go)

Excuse me, how is Location Service associated with EdgePort or Dispatcher? I see that Dispatcher is configured in EdgePort configuration, but a certain processor is configured in Dispatcher configuration. Do you need to develop this processor yourself. How does Routr proxy freeswitch and configure it

Excuse me, how is Location Service associated with EdgePort or Dispatcher? I see that Dispatcher is configured in EdgePort configuration, but a certain processor is configured in Dispatcher configuration. Do you need to develop this processor yourself. How does Routr proxy freeswitch and configure it

I'm closing this as I believe it is not a bug; however, feel free to re-open if needed.


Adds support for Excel, Json and Yaml format.

Short description of what this resolves:
Refactor Json and Yaml data loader to common Rdbms place
Changes proposed in this pull request:

Refactor Json and Yaml data loader to common Rdbms place
Adds support for Excel, Json and Yaml format.

Fixes: #64

Upstream @363696e


[RFC] Tables v2 API Design

This issue will be used for the API Design of the Tables v2 work introduced in Carbon v8.
Any and all feedback is welcome! 😄

A stab at trying to see what a component might "look" like in JSX:

Given the following tabular data:
const data = [
  {
    name: 'Load Balancer 1',
    protocol: 'HTTP',
    something: 80,
    rule: 'Round Robin',
    attached_groups: 'Maureen\'s VM Groups',
    status: 'active',
  },
  {
    name: 'Load Balancer 2',
    protocol: 'HTTP',
    something: 80,
    rule: 'Round Robin',
    attached_groups: 'Maureen\'s VM Groups',
    status: 'active',
  },
  {
    name: 'Load Balancer 3',
    protocol: 'HTTP',
    something: 80,
    rule: 'Round Robin',
    attached_groups: 'Maureen\'s VM Groups',
    status: 'active',
  },
  {
    name: 'Load Balancer 4',
    protocol: 'HTTP',
    something: 80,
    rule: 'Round Robin',
    attached_groups: 'Maureen\'s VM Groups',
    status: 'active',
  },
  {
    name: 'Load Balancer 5',
    protocol: 'HTTP',
    something: 80,
    rule: 'Round Robin',
    attached_groups: 'Maureen\'s VM Groups',
    status: 'active',
  },
];

<DataTable>
  {({
    // Can be set in `DataTable` as props, also might contain state info
    getToolbarProps,
    // Mirrors `Pagination` component props, also might contain state info
    getPaginationProps,

    // Method that is given a table header
    sortBy,

    rows,
  }) => (
    <Toolbar {...getToolbarProps()} />
    <Table>
      <TableHead>
        {Object.keys(rows[0]).map(header => (
          <TableHeader key={header} sortable={true} onClick={sortBy(header)}>
            {header}
          </TableHeader>
        ))}
      </TableHead>
      <TableBody>
        {rows.map((row, i) => (
          <TableRow isSelected={row.isSelected} isExpanded={row.isExpanded}>
            {Object.values(row).map(cell => (
              <TableCell>
                {cell}
              </TableCell>
            ))}
          </TableRow>
        ))}
      </TableBody>
    </Table>
    <Pagination {...getPaginationProps()} />
  )}
</DataTable>

Trying to mirror some principles from Paypal's downshift library. Might be the internal way we organize these things, versus external, but figured I'd take a stab at this.

Trying to think of the cases in which someone would use this, let me know if I'm missing any obvious ones 😅

Developer wants to just pass in their data and be done
Developer wants fine-grained control over things like:

What is sortable
How are things sorted
Whether or not the ghost bar appears
What appears in a ghost bar
What appears in a toolbar and how do you react to interactions on specific nodess
How do I sort by multiple columns (might not be supported?)
How do I asynchronously load in each page of data

From an initial perspective, it seems like DataTable should be responsible for:
Coordination of Pagination

A prop representing the total number of pages
A prop for page size
A prop for handling changing page size?
A prop for fetching the next page and returning the new list, i.e.

onNextPage = ({ currentPage, nextPage, prevPage, items }) => items
onPrevPage = ({ currentPage, nextPage, prevPage, items }) => items
This prop + state of the component should change what rows are passed into the child method

Coordination of row state

Each row should be configured to be expandable, selectable, or both
Each row should be flagged as being expanded, selected, or both

Coordination of data actions
I would assume that we would need to support actions from the toolbar like:

Given a filter control, how can I manipulate the collection of items so that only those that match the filter are shown
CRUD actions around a specific item, namely:

Creating a row
Editing a row
Removing a row
Editing a cell in a row

@joshblack @marijohannessen What's the current status of the v2 Data Table implementation?

Hi @jzhang300! Data Tables v2 are on the dock for our current sprint, I think @marijohannessen is tackling getting initial visual parity and then we'll add in behavior piecewise.


fix: to avoid losing deployments, save deployment queue during nucleus shutdown

Issue #, if available:
Description of changes:
This PR does two things, primarily:

modify shutdown logic in KernelLifecycle so the config transaction log is not closed until after service shutdown

since the config transaction log is now available during shutdown, update DeploymentService so that the deployment queue is saved to the config during shutdown, and then loaded from the config during startup.

Why is this change necessary:
Without this change, it is possible to "lose" a deployment in the queue because of a kernel shutdown.
How was this change tested:

[ ] Updated or added new unit tests.
[ ] Updated or added new integration tests.
[ ] Updated or added new end-to-end tests.
[ ] If my code makes a remote network call, it was tested with a proxy.

Any additional information or context required to review the change:
Documentation Checklist:

[ ] Updated the README if applicable.

Compatibility Checklist:

[x] I confirm that the change is backwards compatible.
[ ] Any modification or deletion of public interfaces does not impact other plugin components.
[ ] For external library version updates, I have reviewed its change logs and Nucleus does not consume
any deprecated method or type.

Refer to Compatibility Guidelines for more information.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

We identified new issues on unchanged lines of code. Navigate to the Amazon CodeGuru Reviewer console to view the recommendations to fix them.

fix line length for checkstyle

fix mock config in unit test

Since the job and shadow subscribers get unfinished deployments after startup are there likely to be duplicate deployments getting added to deployment queue after this change?

Since the job and shadow subscribers get unfinished deployments after startup are there likely to be duplicate deployments getting added to deployment queue after this change?

Yes, but I observe that we have de-duplication logic for jobs & shadow deployments:
https://github.com/aws-greengrass/aws-greengrass-nucleus/blob/248ca457056db5d3a8b14a9e582c6ff3a4c75774/src/main/java/com/aws/greengrass/deployment/ShadowDeploymentListener.java#L438
https://github.com/aws-greengrass/aws-greengrass-nucleus/blob/248ca457056db5d3a8b14a9e582c6ff3a4c75774/src/main/java/com/aws/greengrass/deployment/IotJobsHelper.java#L659

Renaming saveDeploymentQueueToConfig() to persistDeploymentQueueToConfig().

Just thinking out loud here: currently we persist deployment document/metadata in /deployment/ongoing, which is not modified only until the end of DeploymentService::finishCurrentDeployment, so it should remain intact if deployment is interrupted by kernel shutdown.
When kernel launches, if it's in kernel activation or rollback stage, we reads from ongoing deployment directory to resume deployment
https://github.com/aws-greengrass/aws-greengrass-nucleus/blob/main/src/main/java/com/aws/greengrass/lifecyclemanager/Kernel.java#L222-L230.
An alternative solution from saving to kernel config: we could do something similar for default stage as well at kernel launch - read metadata and offer the deployment.

Added a finally clause to the try..catch in loadDeploymentQueueFromConfig() so that the config value is always cleared after loading.

Moved the invocation of persistDeploymentQueueToConfig() after receivedShutdown.set(true).

Just thinking out loud here: currently we persist deployment document/metadata in /deployment/ongoing, which is not modified only until the end of DeploymentService::finishCurrentDeployment, so it should remain intact if deployment is interrupted by kernel shutdown.
When kernel launches, if it's in kernel activation or rollback stage, we reads from ongoing deployment directory to resume deployment https://github.com/aws-greengrass/aws-greengrass-nucleus/blob/main/src/main/java/com/aws/greengrass/lifecyclemanager/Kernel.java#L222-L230.
An alternative solution from saving to kernel config: we could do something similar for default stage as well at kernel launch - read metadata and offer the deployment.

Wouldn't that solution fail if there were >= 2 deployments in queue?

Just thinking out loud here: currently we persist deployment document/metadata in /deployment/ongoing, which is not modified only until the end of DeploymentService::finishCurrentDeployment, so it should remain intact if deployment is interrupted by kernel shutdown.
When kernel launches, if it's in kernel activation or rollback stage, we reads from ongoing deployment directory to resume deployment https://github.com/aws-greengrass/aws-greengrass-nucleus/blob/main/src/main/java/com/aws/greengrass/lifecyclemanager/Kernel.java#L222-L230.
An alternative solution from saving to kernel config: we could do something similar for default stage as well at kernel launch - read metadata and offer the deployment.

Wouldn't that solution fail if there were >= 2 deployments in queue?

Thanks for explaining! Yea I think it there were >=2 deployments in queue, it would make sense to save all of them in config. A follow-up question would be, if there were >=2 deployments in queue, let's say {A, B}. If when executing deployment A, deployment requires a nucleus bootstrap, then after restart and kernel launch, would the queue become {A,B,A}? Since we first initializes from saved config and then reads from ongoing deployment directory. It may lead to A being executed twice when we add functionality of retry deployment.

Just thinking out loud here: currently we persist deployment document/metadata in /deployment/ongoing, which is not modified only until the end of DeploymentService::finishCurrentDeployment, so it should remain intact if deployment is interrupted by kernel shutdown.
When kernel launches, if it's in kernel activation or rollback stage, we reads from ongoing deployment directory to resume deployment https://github.com/aws-greengrass/aws-greengrass-nucleus/blob/main/src/main/java/com/aws/greengrass/lifecyclemanager/Kernel.java#L222-L230.
An alternative solution from saving to kernel config: we could do something similar for default stage as well at kernel launch - read metadata and offer the deployment.

Wouldn't that solution fail if there were >= 2 deployments in queue?

Thanks for explaining! Yea I think it there were >=2 deployments in queue, it would make sense to save all of them in config. A follow-up question would be, if there were >=2 deployments in queue, let's say {A, B}. If when executing deployment A, deployment requires a nucleus bootstrap, then after restart and kernel launch, would the queue become {A,B,A}? Since we first initializes from saved config and then reads from ongoing deployment directory. It may lead to A being executed twice when we add functionality of retry deployment.

As discussed offline, we need to arrange things so that any agent offering into the DeploymentQueue performs the necessary de-duplication (and in the case of bootstrap deployments, they need to replace matching OTA deployments in the queue).
I will look into consolidating our de-dupe/replacement logic into the DeploymentQueue class itself, which will allow us to delete a lot of our existing de-dupe logic (we currently have it implemented separately for IoT Jobs & Shadow deployments).

Re-implemented DeploymentQueue to handle de-duplication; added unit tests.

Shortened commit message

Need to look more closely at de-dupe for shadow deployments.
If multiple shadow deployments are in queue, then only the shadow deployment closest to the tail (most recently enqueued) should be actionable.  So, maybe after enqueue, if the enqueued is type==shadow, we then iterate through the queue and remove other shadow deployments.


[Host_v2] - E1 Enhancement Changes

This is an issue to track Design changes to host_v2 as a result of Enhancement 1. Changes listed below have corresponding changes in the Figma files.

While most of these changes were created in the Short Answer Flow, Many of them are applicable to multiple choice as well. After I handle the lobby designs I will create these screens for the Multiple Choice Flow.
General/Overarching Changes

Change Notes
Image

"Featured Mistakes" renamed to "Common Mistakes" across all mockups

"Responses" renamed to "Phase 1 Responses" across all mockups. This card of responses also appears in phase 2, and the name "responses" could be confusing, causing users to believe they are new responses, and not answers from the previous phase.

The letters A, B, and C in multiple choice and short answer phase 2 should change from the dark grey/black to the purple used for the correct answer step numbers. This makes these letters stand out more, especially in the Phase 2 review section.

Incorrect Answer boxes should all be independently labeled with "Incorrect Answer" consistently across both play and host

Short Answer Phase 1 Answering

Change Notes
Image

"Common Mistakes" cannot be selected during this time. This decision is based on UX team's discussion and conversations with Math Corps Philly Teachers. Instead, there is a live updating preview of common mistakes

Incorrect answers should not be listed in Host during Phase 1, because they have not been entered by students yet. The right-most column should be the question and the correct answer only

Short Answer Phase 1 Review

Change Notes
Image

The question card column has been moved to become the first column. This differentiates this host screen from the previous and puts the teachers focus on a screen similar to what the students are seeing during review time (especially if they are on a mobile device).

Phase 1 scoring is now integrated into the review screen on the play side

Short Answer Phase 2 Review

Change Notes
Image

The question card column has been moved to become the first column. This differentiates this host screen from the previous and puts the teachers focus on a screen similar to what the students are seeing during review time (especially if they are on a mobile device).

The column with answers and confidence from Phase 1 has been pushed to the third column because at this time teachers want to focus on the new incoming Phase 2 responses and player thinking.

In the question card column for Phase 2, the incorrect answers are placed above the correct answer, as they are the focus of the Phase 2 review. It is also important that the host sees the percentages here to help them facilitate the lesson/discussion. The order of these incorrect answers on host should reflect the order of the incorrect answers that appear to students.

This design is the UX Team's preferred Phase 2 Review design. The percentages beneath the incorrect answers can help students connect that number to the points they receive, while the graph brings the numbers together. The incorrect answers + explanations are on the left so students will see and focus on them first, especially if they are on a phone

Such a sick write up, @OliviaKnestaut! 🚀 Let's review this during our design review meeting tomorrow.

Hey @OliviaKnestaut , Drew and I just went over these changes and came up with some questions.

How does that new points animation work on the play facing side? For both phase 1 and phase 2.
Should the size of the header on the play facing side match that of the host facing side? Currently the play header spans the entire width of the screen and the host side does not.


Injected Express.Router is not the controller's router

Informations

Type
Version

Bug
4.5.3

Description
The controller documentation gives an example, to access the router's controller via the @ExpressRouter annotation. However, the router appears not to be the one, that has any of routes in the controller.  The injected route appears to be completely disconnected.
The following example is more or less taken from the documentation:
@Controller("/calendars")
export class CalendarCtrl {
    constructor(@ExpressRouter private router: ExpressRouter) {
        router.get('/method1', this.method1)
    }

    method1(req, res, next){ [...]}

    @Get("/method2")
    async method2() { [...] }
}

In this example, requests to "/calendars/method2" are perfectly dispatched to method2. Whereas there seems no route to method1 (neither "/calendars/method1" nor "/method1" are active routes).
When I use the debugger and set a breakpoint in the working method2, I can inspect this.router like this:
this.router.stack.forEach((r) => {
    console.log(Object.keys(r.route.methods) + " -> " + r.route.path);
});

and can see, that this router has only 1 route: get -> /method1. Going further up the stack. In other words, that cannot possibly be the controller's router.
Is it possible to get access to the controller's router? I would like to use the router to add  callback triggers for route parameters (via router.param(name, callback)) and add passport authentication handlers.
A related question seems #165, which shows a deprecated variant on the injection, that does not work either.

Hi @alexheim,
I think it's effectively a  bug. I've certainly introduce a regression with the latest version of this feature.
I'll fix that today and this example will work after that :)
See you,
Romain

This was an amazingly fast bug fix! I'm looking forward to get the next version via npm. In case I forgot to mention: ts-express-decorators is a great framework and the typescript-swagger-world would be a lot poorer, if ts-express-decorators didn't exist!

Thanks a lot @alexheim :D

new release is available.

Just for information, dynamic method added with ExpressRouter instance isn't registered in the Ts.ED endpoints registry :/
So the endpoint will not appear on the console and in the swagger documentation.

Sure - makes sense. In my case, access to the router is for authentication and param resolution. The swagger API is defined classically, as intended by the framework's design.


Add WarsawJS logo

Added WarsawJS logo
Added missing new lines

@voodootikigod happy new year!
When you find time to merge this PR?


Node won't restart

Error -
Aug 26 17:14:54 cflow-agoric-tn-01 ag-chain-cosmos[2233165]: Cannot initialize Controller ExitCode: v10:zoe exited: I/O error
See full logs -
https://hackmd.io/yjJrpQGfT1eoqmasn1I6kw?view

Thanks for the report; this Bad address error in the zoe vat looks like a duplicate of #33 .


Week 3 - Asakatsu Project -  Arya Learning Nihongo

The streak continues, Got into the Gold League.

Oh nice! now you can read hiragana and on the way to reading katakana too

Hai! Arigatou Avie Chan.


feat(gentoo-wiki): init

🎉 Theme for Gentoo Wiki 🎉

💬 Additional Comments 💬

🗒 Checklist 🗒

[X] I have read and followed Catppuccin's submission guidelines.
[X] I have made a new directory underneath /styles/<name-of-website> containing the contents of the /template directory.

[X] I have ensured that the new directory is in lower-kebab-case.
[X] I have followed the template and kept the preprocessor as LESS.

[X] I have made sure to update the
userstyles.yml
file with information about the new userstyle.
[X] I have included the following files:

catppuccin.user.css - all the CSS for the userstyle, based on the
template.
preview.webp - composite image of all four individual flavor screenshots stitched together,
generated via Catwalk.

Going to close this seeing as your banned from the discord for breaking server rules. We would prefer to not have banned members from the discord creating new ports or userstyles. Thanks for your understanding.


cannot set locale for specific website automatically

Hello, I'm having problems with this new version, with the old one, once set up locale switcher to work with a specific website and once set the first time the locale for that website, each time I open the browser the locale was automatically set to the last used. With this new version, each time I open the browser for that website I must set locale again. Is there a way to get it work as before?
Thank you for your support!

Hey there. Before it was global, we could add a feature that persists the language over localstorage and not the session, so it would stay persisent over the same domain

yes thank you it would be great!

Should be fixed by in 1.2.0


FreedomScientific.JAWS.2023 version 2023.2311.34

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.5 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Current manifest version 2023.2212.23.400 has 4 parameters, which is greater than this PR's version number 2023.2311.34's 3 parameters.


修复了README文件的链接

Description
Changed all the relative links to absolute links for PyPI doc compatibility. Fixed the link that redirect users to the correct contribute markdown file.
将所有相对链接更改为绝对链接以实现 PyPI 文档兼容性
Checklist
Please check the following items before code is ready to be reviewed.

[x]  Code has passed all tests
[]  Docstrings have been added/updated in Google Style
[x]  Documentation has been updated
[x]  Code is ready for review

Thanks for your contribution. We will update our markdown file in PyPI as soon as possible.


fix(*): fix the setting method of parameter example in API docs generation

What this PR does / why we need it:
ref: #451
Which issue(s) this PR is related to (optional, link to 3rd issue(s)):
Fixes #
Reference to #

Special notes for your reviewer:
/cc @xpofei

Release note:

NONE

/lgtm

/lgtm

/approve

/approve


Interpolation loses edge points

What happened?
I'm not sure if this is a bug, normal behaviour or a feature request but if it's expected behaviour, it should be better documented.
I want to interpolate a 2D dataset to a finer spatial grid. I've put together a reproducible example based on the tutorial here: https://docs.xarray.dev/en/stable/user-guide/interpolation.html
The result is this:

When I do this, the edge points are lost (as you can see on the west/north boundaries here).
What did you expect to happen?
I'd expect the interpolation to protect the boundary points and not lose them.
Minimal Complete Verifiable Example
ds = xr.tutorial.load_dataset("air_temperature")
subplot_kw = dict(projection=ccrs.PlateCarree())
new_lon = np.linspace(ds.lon[0], ds.lon[-1], ds.dims["lon"] * 4)
new_lat = np.linspace(ds.lat[0], ds.lat[-1], ds.dims["lat"] * 4)
dsi = ds.interp(lat=new_lat, lon=new_lon, method='nearest', kwargs={'fill_value':None})

fig, axes = plt.subplots(1, 2, figsize=(18, 12), subplot_kw=subplot_kw)
axes = np.ravel(axes)

ax = axes[1]
ds.air.isel(time=0).plot(x='lon', y='lat', ax=ax, add_colorbar=False)
ax.set_extent([ds.lon.min()-5., ds.lon.min()+20., ds.lat.max()-20, ds.lat.max()+5])
ax.coastlines()

ax = axes[0]
dsi.air.isel(time=0).plot(x='lon', y='lat', ax=ax, add_colorbar=False)
ax.set_extent([ds.lon.min()-5., ds.lon.min()+20., ds.lat.max()-20, ds.lat.max()+5])
ax.coastlines()

plt.show()

MVCE confirmation

[X] Minimal example — the example is as focused as reasonably possible to demonstrate the underlying issue in xarray.
[X] Complete example — the example is self-contained, including all data and the text of any traceback.
[X] Verifiable example — the example copy & pastes into an IPython prompt or Binder notebook, returning the result.
[X] New issue — a search of GitHub Issues suggests this is not a duplicate.

Relevant log output
No response
Anything else we need to know?
No response
Environment

INSTALLED VERSIONS
commit: None
python: 3.7.8 | packaged by conda-forge | (default, Jul 31 2020, 02:25:08)
[GCC 7.5.0]
python-bits: 64
OS: Linux
OS-release: 3.10.0-1160.90.1.el7.x86_64
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_GB.UTF-8
LOCALE: en_GB.UTF-8
libhdf5: 1.10.6
libnetcdf: 4.7.4
xarray: 0.16.1
pandas: 1.1.3
numpy: 1.19.2
scipy: 1.5.2
netCDF4: 1.5.4
pydap: None
h5netcdf: None
h5py: 2.10.0
Nio: None
zarr: None
cftime: 1.2.1
nc_time_axis: 1.2.0
PseudoNetCDF: None
rasterio: 1.1.8
cfgrib: None
iris: 2.4.0
bottleneck: None
dask: 2.30.0
distributed: 2.30.0
matplotlib: 3.3.2
cartopy: 0.18.0
seaborn: 0.11.0
numbagg: None
pint: None
setuptools: 49.6.0.post20201009
pip: 20.2.3
conda: None
pytest: None
IPython: 5.8.0
sphinx: None

@rjp23 Maybe you've already found a solution, but I'll anyway add some context here.
The issue is with the different resolution. If you increase resolution by a factor of four the lat/lon intervals will be reduced by four. As the data values are assumed as gridcell-center the size of the quadrilaterals is decreased, resulting in those differences in the two plots.
In your example the resolution is 2.5 for latitude and longitude. The centerpoint for the upper left quadrilateral is (lat: 75., lon: 200.). The upper left point of that quadrilateral is (lat: 75 + 2.5 / 2, lon: 200 - 2.5 / 2) -> (lat: 76.125, lon: 198.75). For the same plot using the factor of 4 in resolution this would be (lat: 75 + 0.625 / 2, lon: 200 - 0.625 / 2) -> (lat: 75.3125, lon: 199.6875).
If you want to create similar looking plots you would need to fix the interpolation to extend the ranges in both latitude and longitude.

I think there is nothing xarray can do about. It should be fixed in the users workflow. Please reopen if you think aotherwise.


Search data range

Hi Yajra,
You could help me with my problem? I use:
dataTable.DataTable().columns(0, '2015-09-24 ~ 2015-09-25 23:59:59');

to filter a date range, But I just get the dates 2015-09-24
I'm doing something wrong? I must do something before?
Thank you very much.

INFO: The zero column is a datetime

I think the proper syntax is something like below:
dataTable.DataTable().columns(0).search('2015-09-24 ~ 2015-09-25 23:59:59').draw();

Then on server side, just split the search value to get the date range and apply the necessary sql.

Hi,
Oh, I see... I thought which yajra Datatables does it automatically. Do you have a little example to do that? I don't know how to do with your package. :(
Regards,

The package automates search by using a wildcard like search. Date range and other specific queries should be written as appropriate. Try using filterColumn like on this demo: http://datatables.yajrabox.com/eloquent/post-column-search.
For the search keyword, you can use datatables request object to easily get the column search value like: $datatables->getRequest()->columnKeyword(0);

Thanks, I will try the filterColumn but I get an error... I created a new issue: https://github.com/yajra/laravel-datatables/issues/202


Reduce cloud texture dimensions

Fixes https://github.com/CesiumGS/cesium/issues/9785.
The context for this fix is that the 3D noise texture is represented an array of "slices," each of which is a 2D square texture. In main, slices are outputted from CloudNoiseFS as a single texture with dimensions sliceWidth * sliceWidth x sliceWidth (width x height). With a default sliceWidth of 128, the width of the noise texture is 16384 pixels (128 * 128), which exceeds the max WebGL texture size of some machines and browsers.
The fix in this PR uses the same 3D noise texture as before, but writes the 2D slices to four rows instead of one (i.e., with a slice width of 8, the first four slices would be on row 1 and the second four slices would be on row 2). With a slice width of 128, the dimensions of the noise texture become 4096 x 512 (the width is 128 * 128 / 4, the height is 128 * 4). According to MDN, 4096 is supported by "most systems." Maybe there should still be a check to disable clouds if the system doesn't support it? I am not sure how common this is.
Changes: -

CloudCollection now creates a texture with dimensions length * length / 4 x length * 4 instead of length * length x length.
The u_noiseTextureLength uniform was renamed to u_textureSliceWidth to avoid confusion between the individual slices and the one flattened 3D texture.
CloudNoiseVS and CloudNoiseFS now write the 3D noise texture to multiple rows instead of one row.
CloudCollectionFS has new sampling logic to transform 3D coordinates to UV space.. I'll add review comments about some ideas here.
A stray console.log was removed from CumulusCloud.

I recommend viewing the diff without whitespace changes.

Good catch there at the end, generally mods/floors are fast so it's not too big a concern.


Add atMost VerficiationMode

Hi again 👋
I've made some changes in failuire messages and here are some examples:
.atMost:

Call with identifier printCalled was recorded 4 times, but expected at most 3
.atLeast:
Call with identifier printCalled was recorded 2 times, but expected at least 3


Branch synchronization: mrtk_development --> feature/SU

Overview
Branch synchronization: mrtk_development --> feature/SU

/azp run

/azp run


#359 Make StateHandler lazy and only do get one key at a time

Change StateHandler implementation to the following:

do not fetch state in __init__();
fetch every key only once on demand and cache it.

Fixes #359

I think the "only fetch on demand" piece is probably going to add extra round trips for anything that does more than one request; is there a good reason to do that change?

@showell I guess we should discuss, since you were the one to suggest doing each key on demand.  My theory is that doing so could carry a significant perf cost, but I guess it depends on how actual bots structure their keys.

@showell Is the motivation for this related to having no guarantee that a bot stays alive between calls?

I think there a couple factors at play here:

we definitely don't want to fetch all keys at once (imagine a game bot that is around for a year and makes new keys for each game)
we want to be sure to handle bots dying and restarting
we should expect bots to do proper key management, like keep their data kind of coarse per key, since the value for a key could be arbitrarily deep

Also the code here LGTM so I would want to merge it my prior comments make sense.


[2.9] air gap RKE2 downstream cluster fails to pull images if the registry mirrors endpoint does not contain a schema

forward port of https://github.com/rancher/rancher/issues/46090

Closing this issue as the original one is to be used to track the issue in v2.9


Donot reserve memory for non-fixed type columns in decodeAndSquash

What problem does this PR solve?
Issue Number: close #7416
Problem Summary:
What is changed and how it works?
Check List
Tests

[x] Unit test
[ ] Integration test
[ ] Manual test (add detailed scripts or steps below)
[ ] No code

Side effects

[ ] Performance regression: Consumes more CPU
[ ] Performance regression: Consumes more Memory
[ ] Breaking backward compatibility

Documentation

[ ] Affects user behaviors
[ ] Contains syntax changes
[ ] Contains variable changes
[ ] Contains experimental features
[ ] Changes MySQL compatibility

Release note

Fix the issue that the query might use much larger memories than actual needed when Join build side data is very large and contains many small-size string type columns.

/run-all-tests

/merge

/run-integration-test


Go through the assests for Inheritance Tool and add assests into it.

Feature Description
Please go through the file below, add missing assets, and also group them.
-Designs
https://xd.adobe.com/view/f1543c84-c25a-4ad6-81ca-1e0c540e956e-a407/screen/bfb7d0eb-d8e0-442c-bf32-b90a0e5fd2e9/

updated

Verified this issue on keeper app v 1.2.1(324)


Cache the scheme info somewhere?

Right now, we have to get the scheme every time we do anything and it turns out, xcodebuild -list is super slow. It'd be rad to cache this somewhere on disk so that we can get a kind of memoization thing going on.

Maybe even just saving this in the current vim session would be enough. Otherwise saving it in OBJROOT might be best.


feat: helm view

view for helm deployments

What does that mean? I usually don't use helm to deploy stuff (helm template outputs instead), doesn't the fallback view show those? or do we want custom actions on the helm stuff?

custom actions on helm stuff. just like on k9s
TBH, I don't use helm directly myself as well, I use ArgoCD but I guess some people could benefit from that.


Clean up / remove support for old NumPy versions

Removes some support / legacy code for old NumPy versions (and one instance where NumPy differs between Python 2 and 3).
The comments in np.interp support warn not to refactor it, but I think the reason for not refactoring is to avoid diverging from the NumPy source - however, because the Numba implementation supported multiple NumPy versions, and it now does not, after the refactor it is actually closer to the C source of the NumPy versions we do support, so I think this is an acceptable refactoring.

Hi and thanks for your continued maintenance support of numba 🙏🏻 .
Does numba follow NEP 29? I see this work is now linked to the Numba 0.57 release milestone which I read on another thread is estimated to be released in January 2023. As of today NEP 29 would indicate only supporting numpy 1.20+ and in January 2023 supporting numpy 1.21+. Should this PR go further in cleaning up/removing support of numpy <1.21 in preparation of the Numba 0.57 January 2023 release date?

On Dec 26, 2021 drop support for Python 3.7 (initially released on Jun 27, 2018)
On Jun 21, 2022 drop support for NumPy 1.19 (initially released on Jun 20, 2020)
On Jan 31, 2023 drop support for NumPy 1.20 (initially released on Jan 31, 2021)

https://numpy.org/neps/nep-0029-deprecation_policy.html#drop-schedule

Hi and thanks for your continued maintenance support of numba 🙏🏻 .

You're welcome :slightly_smiling_face: - thanks for looking over this PR and sharing your thoughts!

Does numba follow NEP 29? I see this work is now linked to the Numba 0.57 release milestone which I read on another thread is estimated to be released in January 2023. As of today NEP 29 would indicate only supporting numpy 1.20+ and in January 2023 only supporting numpy 1.21+.

We've used NEP 29 as a guide for dropping support for versions before, see e.g. https://github.com/numba/numba/wiki/Minutes_2021_12_07, https://github.com/numba/numba/wiki/Minutes_2021_04_27.

Should this PR go further in cleaning up/removing support of numpy <1.21 in preparation of the Numba 0.57 January 2023 release date?

This PR is only removing code that is dead because it handled situations in which Numba was being used in conjunction with NumPy versions that it has already dropped support for.
I do think it's possible (desirable, even?) to drop support for more versions, especially since we'll need to add 1.23 to the matrix soon, but that work should happen in a separate PR.

Also, I note CuPy is following NEP 29 for its 12.x plan, which is planned to release in February 2023: https://github.com/cupy/cupy/issues/6866


[PWRMGR|RST domains] ESC domain in the future chip

escalation modules are currently driven by LC rst/clk. However, we will need to keep ESC domain async from LC domain in the future if a tracking issue occurs as discussed in #13950. Fault status regs will also be moved to ESC domain accordingly.

The fault_status register needs to be cleared on reset though.

@jeoongp i don't think you need to move the fault registers to escalation domain.  The escalation domain only has to talk to the  escalation receiver right? So we can consider the escalation domain async from the lc domain.

@tjaychen thanks for suggestion. Yes, it's better to move only escalation receiver to ESC domain async from LC domain where the fault registers are.

@msfschaffner

Closed by https://github.com/lowRISC/opentitan/pull/15183


Docs: Adding try-with-resources to examples and demo. related #938

related #938.

added try-with-resources to examples (README, USAGE and demo/Sample.java)
changed exception handling to not ignore root causes
removed finally blocks (not needed anymore)

thanks a lot !


Exclude some folders when docker build

Issue #, if available:
None
Description of changes:
Exclude specific folders with exclude when creating a Docker image for reduce the cdk deploy time.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

LGTM!


feat: manage tokens

Its a big feature. Happy to break it up into smaller chunks.

Biggest issue was decoupling the AssetList from the balances. I Added a showBalance prop and separated stacks & Bitcoin Assets Loaders into their respective components.
Replaced the Sip10 Unsupported component with the TokenAccordion.
The tokens enabled/disabled state is persisted through the redux-store. They are grouped by account index and deleted from the store on sign out.
Added a toggle button recipe with panda css. The assets loaders take an optional renderRightElement, the toggle in this case, to render instead of the balance when showBalance is false.

potential improvements:

currently only stacks and bitcoin are enabled by default (& cant be disabled ). we can have a list of tokens that are enabled by default.
the filter in the bitcoin asset loader is 'enabled' | 'disabled'. Thought that was more apt than stacks' Sip10CryptoAssetFilter filter ('supported' | 'unsupported') . I think its best to update the sip10 filter in monorepo to be enabled | disabled & use that filter on the bitcoin asset loader for consistency but open to otherwise.

Summary by CodeRabbit

New Features

Introduced CryptoAssetItemToggleLayout component for managing token enablement.
Added NoTokensFound component to display a message when no tokens are found.
Added BitcoinStandardsList component for rendering various Bitcoin asset lists.

Enhancements

Updated various token loader components to include new filtering and sorting capabilities.
Improved Sip10TokenAssetItem and Sip10TokenAssetList components with additional props for better flexibility and efficient rendering.
Refined CryptoAssetItem components for enhanced layout and functionality.

Refactor

Renamed and restructured several components and props for consistency and clarity.

Tests

Added test cases for token filtering and sorting functions to ensure reliability.

Style

Updated layout and styling within various components for a more consistent user interface.

@fabric-8 @mica000 Mind reviewing and providing input on the UX generally?
See https://x.com/anononchain/status/1804308553982673022

sorry for being late here, I mostly just have free time on weekends. The fixes are done apart from these design questions :

I could not change the light/dark theme on the figma files (maybe lack access?). Could I get screenshots of the toggle in dark mode please?

silly question ... but I couldn't find the ">" icon in /@leather-wallet/ui/dist-all/src/icons the expand icon is the closest thing to it. Am i looking at the wrong icon folder? should I just use ">" ?

@kyranjamie @fabric-8

silly question ... but I couldn't find the ">" icon in /@leather-wallet/ui/dist-all/src/icons the expand icon is the closest thing to it. Am i looking at the wrong icon folder? should I just use ">" ?

Adding the icon you need here: https://github.com/leather-io/mono/pull/254 ...we will need to release the change for you to install here.

@cbadawi Besides the icon which should be available by now once you pull in the latest changes, I've added a dark mode variant as well — If you just use the color tokens as in the designs all of that will take care of itself :)

thanks @fbwoolf  @fabric-8 , just noticed the color tokens & applied the changes.
couple of minor issues though :

could not make the color tokens work on the border and had to hardcode the colors
the chevron right icon has 2 chevrons. ">>"

https://github.com/leather-io/extension/assets/55446273/6d32d57d-d99a-4c8c-81c9-d20337198a0d

thanks @fbwoolf @fabric-8 , just noticed the color tokens & applied the changes. couple of minor issues though :

could not make the color tokens work on the border and had to hardcode the colors. (works fine on backgroundColor property)
the chevron right icon has 2 chevrons. ">>"

Screen.Recording.2024-07-02.at.1.21.43.PM.mov

There are two chevron icons, one with one > and one with two >>

@pete-watters Regarding the chevron icons (which seems resolved by now?): There are 2 different icons, the names are just really close. One is chevrons, the other one singular 😁

@pete-watters Regarding the chevron icons (which seems resolved by now?): There are 2 different icons, the names are just really close. One is chevrons, the other one singular 😁

Yes that is what I was saying here- https://github.com/leather-io/extension/pull/5568#issuecomment-2202994922

@pete-watters thank you for your feedback. I applied the changes.

@pete-watters thank you for your feedback. I applied the changes.

Thanks @cbadawi , taking an in depth look now

Did a minor refactor. Removed the need for the showBalance, renderRightElement.

Previous implementation was meant to be flexible, any component can be added as a right element. But i see how that bloated the code especially in the CryptoAssetItemLayout component.
Current implementation has 2 right element variants to chose from balance & toggle. rightElementVariant defaults to balance and is responsible for choosing (in the [token]-asset-lists.tsx components) between the 2 components CryptoAssetItemBalanceLayout & CryptoAssetItemBalanceLayout (CryptoAssetItemBalanceLayout is equivalent to the now deleted CryptoAssetItemLayout).

Thank you both for your feedback.
@kyranjamie, @pete-watters apart from the spacing i couldnt find tokens for (mentioned above), i think the code is in pretty good shape. but feel free to give it the last nudge where needed. (especially that i'm just free on weekends)

@314159265359879 to review a build after latest round of code review

Did a minor refactor. Removed the need for the showBalance, renderRightElement.

Previous implementation was meant to be flexible, any component can be added in the future as a right element simply, not just a toggle or a balance. But i see how that bloated the code especially in the CryptoAssetItemLayout component.
Current implementation is much less flexible but cleaner. We have only 2 right element variants to chose from : balance & toggle. rightElementVariant prop passed to the bitcoin & stacks lists defaults to balance and is responsible for choosing (in the [token]-asset-lists.tsx components) between the 2 components CryptoAssetItemToggleLayout & CryptoAssetItemBalanceLayout (CryptoAssetItemBalanceLayout is equivalent to the now deleted CryptoAssetItemLayout).

Thank you both for your feedback. @kyranjamie, @pete-watters apart from the spacing i couldnt find tokens for (mentioned above), i think the code is in pretty good shape. but feel free to give it the last nudge where needed. (especially that i'm just free on weekends)

Thanks @cbadawi . I re-reviewed and it's a lot better and pretty close now. I added a few suggestions, mostly small - a typo and some extra code.
The AI bot did find this issue to fix though, a double tokens.length check
- if (!tokens.length) return null;
Other than that it's looking good and I tested it and it's working, great stuff

tested and src-20 token toggle is not working.
also imo button text should be Close and not Done. or should be removed at all. as it just closes modal and doesn't have any other logic behind

tested and src-20 token toggle is not working.
also imo button text should be Close and not Done. or should be removed at all. as it just closes modal and doesn't have any other logic behind

Good find with the SRC-20 token 👍 Maybe we don't even need any button there as we can just close the modal with the X

@pete-watters  @alter-eggo  done
https://github.com/leather-io/extension/assets/55446273/885b1e33-26c6-443a-bed9-1153a99adc6b

Good change with removing the "done" button, that was something that crossed my mind earlier today as well as not being necessary.
The toggle looked funky / square the other day when I checked, but looks like that's also fixed already?

@fabric-8 yep all fixed

any news here? @pete-watters feel free to take over / rebase / close this

any news here? @pete-watters feel free to take over / rebase / close this

Hey 👋 ,
It's on the teams list to help close it out but I have had to work on other things right now. It is on our radar and we want to help finish it so we will tackle it as soon as we can. Thanks again for all the hard work

I got some feedback from a user I thought was interesting and relates to this PR.
They noticed that with the increased number of tokens that gets airdropped it also takes more time to load everything in their wallet. They'd like to see that after loading balances the selection of tokens to display prevents loading any additional data for tokens that are hidden. Basically do not load any metadata for tokens the user doesn't want to see anyway.
Is that already how this is build? if not could that be scoped in?

Basically do not load any metadata for tokens the user doesn't want to see anyway.

This is a good idea. We can look at this when one of our dev turns their attention back to finalizing the PR. I've slated it for consideration during next week's sprint.


[WIP]  Port support for cluster delete-after annotation.

/test unit

Looks good but does appear to be a legit test failure in there.

/lgtm


When opening a Model or ImageViewer to view a larger image. When the browser rolls back to the previous page, these layers do not close.

Describe the bug
When opening a Modal or ImageViewer to view a larger image. When the browser rolls back to the previous page, these layers do not close.
To Reproduce

How can this problem be solved
请问如果想在返回时关闭这个弹层应该怎么做呢？英语不好请见谅
Exceptions (if any)

Further technical details

BootstrapBlazor version
Include the output of dotnet --info
The IDE (VS / VS Code/ VS4Mac) you're running on, and its version

@tpnest 已修复晚点发布新版本

@tpnest 已修复 v7.0.0


Remove source maps after build

Issue description or question
Is it possible to remove the source maps after run the build? I tried this to remove all the source maps inside the dist folder:
Webpack Config
{
  mode: 'production',
  devtool: 'hidden-source-map',
  entry: './src/index.js',
  output: {
    filename: 'main.js',
    path: path.resolve(__dirname, 'dist'),
    publicPath: '/dist/'
  },
  plugins: [
    new CleanWebpackPlugin({
      cleanAfterEveryBuildPatterns: ['dist/*.map']
    })
  ]
}

But its not working.
Environment
System:
OS: Windows 10 10.0.18363
CPU: (12) x64 Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
Memory: 6.13 GB / 15.93 GB
Binaries:
Node: 13.12.0 - C:\Program Files\nodejs\node.EXE
npm: 6.14.4 - C:\Program Files\nodejs\npm.CMD
npmPackages:
clean-webpack-plugin: ^3.0.0 => 3.0.0
webpack: ^4.41.5 => 4.41.5

You should just tell webpack not to generate sourcemaps via devtool: false or devtool: 'none'. See https://webpack.js.org/configuration/devtool/
But to solve your issue, cleanAfterEveryBuildPatterns are relative to the build directory. Try cleanAfterEveryBuildPatterns: ['**/*.map'].
{
  mode: 'production',
  devtool: 'hidden-source-map',
  entry: './src/index.js',
  output: {
    filename: 'main.js',
    path: path.resolve(__dirname, 'dist'),
    publicPath: '/dist/'
  },
  plugins: [
    new CleanWebpackPlugin({
      cleanAfterEveryBuildPatterns: ['**/*.map']
    })
  ]
}

I'm using a plugin that uploads the source maps to a server. I want to remove them after that.
No, it still does not work. 😕

I forgot protectWebpackAssets: false.
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
const path = require('path');

module.exports = {
	mode: 'production',
	devtool: 'hidden-source-map',
	entry: './src/index.js',
	output: {
		filename: 'main.js',
		path: path.resolve(__dirname, 'dist'),
		publicPath: '/dist/',
	},
	plugins: [
		new CleanWebpackPlugin({
			cleanAfterEveryBuildPatterns: ['**/*.map'],
			protectWebpackAssets: false,
		}),
	],
};

It works! Thank you. 😁
This is something I've been searching for and I noticed that many people do too, and I wanted to avoid doing the script "webpack --config webpack.prod.js && rm ./dist/*.js.map". I like this solution more.

protectWebpackAssets: false,

good job，because i want use sentry to record web error，first, i will upload source map to sentry.So , i need to remove them,after builded


Added four new spinners , Disk, DualBall , PivotBall and CubeGrid

Added two new spinner components, DualBall spinner and Disk spinner .

These components accept two color parameters and one size parameter.

Thank you.

Created two more spinners- PivotBall and CubeGrid

@ayodejii Any updates? Should i do any changes or is this okay to merge?

hi Paul, I 've been busy. Push all the new updates you have in this branch. I will test and merge when I'm free today.
Thank you.


Write a PHP program to convert miles to kilometers

Description
Write a PHP program to convert miles to kilometers
1 mile = 1.609 kilometers
Input  : 5
Output : 8.04672

How to contribute

Save the solution in convert_miles_to_kilometers.php file
Add convert_miles_to_kilometers.php file in convert-miles-to-kilometers folder

!assign


Fields declared as [String]! are typed as List[str] instead of List[Optional[str]]

hey! Just thought I'd share this bug I stumbled across where non-optional lists of optional scalars (i.e. [<scalar>]!) are incorrectly typed as List[<scalar>] in the generated pydantic model, instead of List[Optional[<scalar>]]
Should be reproducable with the code below:
schema.graphql
type Query {
  testField: [String]!
}

queries.graphql
query testQuery {
  testField
}

generated graphql_client/test_query.py
# Generated by ariadne-codegen on 2023-03-18 10:22
# Source: queries.graphql

from typing import List

from pydantic import Field

from .base_model import BaseModel

class TestQuery(BaseModel):
    test_field: List[str] = Field(alias="testField")

TestQuery.update_forward_refs()

Hey! Thank you for creating this issue, it looks like a bug occurs, not only for scalars but for any subtypes.


build error when running make

g++ -O3 -fno-omit-frame-pointer -fvisibility=hidden -Wl,-z,defs -Wl,-z,nodelete -fwhole-program -momit-leaf-frame-pointer -DPROFILER_VERSION="2.7" -I/data/home/scottxiao/wn-dep/java/j2sdk-image/include -I/data/home/scottxiao/wn-dep/java/j2sdk-image/include/linux -fPIC -shared -o build/libasyncProfiler.so -xc++ - -ldl -lpthread -lrt
In file included from :32:0:
src/perfEvents_linux.cpp:566:2: warning: #warning "Compiling without LBR support. Kernel headers 4.1+ required" [-Wcpp]
#warning "Compiling without LBR support. Kernel headers 4.1+ required"
^

This is not an error, this is a warning.
It says that async-profiler is compiled without support for LBR (Last Branch Record). If you don't need this feature, you may ignore the warning. Otherwise, install Linux Kernel Headers package with the version 4.1 or newer.


Set the max_points to 4

Hi,
I am trying to break down all my polygons to 4-point- or 3-point-polygons. This is required to prepare a input file corresponding to my gds design in Fastercap. However, GDSpy require max_points to be more than 4 to fracture the polygon. Is there anyway to allow the max_points to be set to 4?
Thanks,
Junling

Hi @JunlingLong,
Unfortunately that is not possible because we slice polygons along vertical and horizontal lines only (which requires more than 4 vertices for a general solution). What you need is a polygon triagulation/tesselation tool—something the generates a triangular or quadrangular mesh based on your polygon. There should be python libraries out there that can perform this operation. For triagulations, take a look into Scipy's Delaunay triagulation. It might be enough for you use case.
Once you mesh all your polygons than you can create gdspy.Polygon or gdspy.PolygonSet from them.


A Question about Dim

When I repeatedly trigger the Dimlight set level，it will  “Retrying set request: LightDimmer-1-Level“ until I send a Event message to homebridge.

I will try to reproduce and fix. I know I've got to fix the retry logic because right now it can stay retrying forever.

you can test async fun，it will be better。


Installing dependencies

Downloaded emu deck for rog ally 2.1.21 and it wont even start downloading GIT or 7Zip ive reinstalled tried older versions same thing

@Examsxx
Did you install EmuDeck using the .bat?


Removed -fs from troubleshooting command

Closes #1184
I tested the current docs command locally to verify that -fs silences errors. It's legit:
$ curl -fs -X PUT "http://${host}:${port}/v2/keys/_test"
$

After removing the -fs switch:
$ curl -X PUT "http://${host}:${port}/v2/keys/_test"

<title>400 Bad Request</title>

400 Bad Request

nginx/1.12.0

This change is

Formerly #4159, reopened as a new PR for cleaner commit history.

Ok, I checked this. /lgtm


Need Documentation

i want to use this plugin in my flutter desktop project for playing online video. but i don't find any documentation please help me to implement this.

initVideoPlayerDartVlcIfNeeded();
Add this to the main of your app
void main(){
initVideoPlayerDartVlcIfNeeded();
//Run app should be here
}

This will make the flutter video player package work on windows and Linux also

You can use this package which is much more documented
https://pub.dev/packages/flutter_meedu_videoplayer
And uses this package


Add gpdb-commits mailing list to website

Update website to add the commit mailing list

LGTM! Push it

@rvs don't think i am a committer to the website, can you add me as a committer, and also give me access to change settings if needed?

@rvs i don't think i have access, can you merge this?


Substitute package variables in pkg_zip#package_dir.

This change adds logic and tests for substituting values from pkg_zip#package_variables into pkg_zip#package_dir. This behavior largely matches pkg_tar (pkg_zip does not have an equivalent to pkg_tar#package_dir_file, but they are otherwise the same).

I would have liked to see an issue for this first, but it seems on the right track. I can look next week.

Sure, filed #578.


Remove empty asset catalogs so that they don't show up in Open Quickly.

New Pull Request Checklist

[x] I have read and understood the CONTRIBUTING guide

[x] I have read the Documentation

[x] I have searched for a similar pull request in the project and found none

[x] I have updated this branch with the latest master to avoid conflicts (via merge from master or rebase)

[ ] I have added the required tests to prove the fix/feature I am adding

[ ] I have updated the documentation (if necesarry)

[ ] I have run the tests and they pass

[ ] I have run the lint and it passes (pod lib lint)

Pull Request Description
I removed the empty asset catalogs from all of the test targets so that they don't show up in Open Quickly when CocoaLumberjack is a child project. All of the test targets still build even without the asset catalogs.

Codecov Report

Merging #877 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #877   +/-   ##
=======================================
  Coverage   22.88%   22.88%
=======================================
  Files          18       18
  Lines        3338     3338
  Branches      282      282
=======================================
  Hits          764      764
  Misses       2572     2572
  Partials        2        2

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 cb1a248...dc0d57d. Read the comment docs.


cti-taxii-client error requests.exceptions.HTTPError: 400 Client Error: Bad Request for url:

Hello everyone,
I'm trying to run this snippet: from taxii2client.v21 import Server server = Server('http://hailataxii.com/taxii-discovery-service', user='guest', password='guest') print(server.title)
but I receive error: requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: http://hailataxii.com/taxii-discovery-service/
What am I missing? Do I need to set something up first?
Thanks in advance!

Looks like that's a TAXII 1.x service.  This library only supports TAXII 2.x.  You might try the older libtaxii library.

Closing due to inactivity. If this answer didn't help, please feel free to reopen.


IGAPP-328: Foreground push notifications

This pull request belongs to an issue on our bugtracker.
You can find it there by looking for an issue with the key which is mentioned in the title of this pull request.
It starts with the keyword IGAPP.

Only implemented the logic part, the design part should be done in https://issues.tuerantuer.org/browse/IGAPP-1204.
To test this, uncomment the corresponding showSnackbar block in useForegroundPushNotificationListener in PushNotificationManager (look for the TODO).

Works fine :) I just thought that we could increase maybe the SHOW_DURATION i think if you are using the app and immediately the foreground notification come up you can be too slow. Maybe we can keep 5000 as default and pass a optional value to override it #859 is just a proposal

Agreed, see my comment in your PR. I will create a separate proposal and merge this one already since it won't be enabled on production anyway so far.

Works fine :) I just thought that we could increase maybe the SHOW_DURATION i think if you are using the app and immediately the foreground notification come up you can be too slow. Maybe we can keep 5000 as default and pass a optional value to override it #859 is just a proposal

Agreed, see my comment in your PR. I will create a separate proposal and merge this one already since it won't be enabled on production anyway so far.

Works fine, tested on android. I'm fine with merging this pr


Remove old overlay documentation in favor of on-imagebuilder readme

@bossidy @christineday @heckj I'm not sure this is the best approach. Perhaps we should transfer the on-imagebuilder README into this repository as rst and change the link in that file instead?
Don't merge until we resolve my above question please.

Closing this. I'm going to switch this around. Convert the readme to rst and link to it from the on-imagebuilder git repo.


Unit tests

Description
I added unit tests for:
1_ user
2_  inventory
3_ inventory_food
4_ food

PR Aproved


jsmn_parse eventually returns JSMN_ERROR_PART

After a couple of hours jsmn_parse seems to fail with JSMN_ERROR_PART.

The string is not a full JSON packet, more bytes expected

Seems to be related to modem and/or lte_lc lib running out of heap memory.

Memory leak fixed by in<PHONE_NUMBER>75

Occasionally we don't get the full JSON string. Either a socket error on our side or an error on the server side.


Resolve backup provisioner cert issues since postgres on alpine 3.12.

Since the latest postgres:12-alpine docker image release we get a certificate error from the backup-restore-sidecar (when the GCP provisioner tries to connect to the bucket store).
Somehow, in a prior version of postgres:12-alpine, we can find ca certificates in /etc/ssl/cert.pem:
docker run --rm -it --entrypoint sh postgres@sha256:9ea72265275674225b1eaa2ae897dd244028af4ee7ef6e4e89fe474938e0992e
...
/ # cat /etc/ssl/cert.pem
-----BEGIN CERTIFICATE-----
MIIH0zCCBbugAwIBAgIIXsO3pkN/pOAwDQYJKoZIhvcNAQEFBQAwQjESMBAGA1UE
...
/ # cat /etc/os-release
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.11.6
PRETTY_NAME="Alpine Linux v3.11"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://bugs.alpinelinux.org/"

In the latest postgres:12-alpine, this file is a dead symlink and we have alpine 3.12:
/ # ls -l /etc/ssl/cert.pem
lrwxrwxrwx    1 root     root            25 May 29 14:20 /etc/ssl/cert.pem -> certs/ca-certificates.crt
/ # cat /etc/os-release
NAME="Alpine Linux"
ID=alpine
VERSION_ID=3.12.0
PRETTY_NAME="Alpine Linux v3.12"
HOME_URL="https://alpinelinux.org/"
BUG_REPORT_URL="https://bugs.alpinelinux.org/"

Installing ca-certificates in postgres:12-alpine will make everything work again as before.
In order to resolve this issue, I added a pkg-provision volume and download the .apk file during build time. The package will then be installed dynamically on start in the entrypoint script into the postgres:12-alpine image. Note that the backup restore sidecar runs within the target database container and an init container only injects stuff in order to keep maintenance overhead as small as possible.
I know, it's not the nicest way of doing things, but to me it seems more comfortable than starting to maintain own images of postgres:alpine or installing database clients for every database we support into the backup-restore-sidecar at build time. This way, we are still relatively flexible for introducing other databases without too much download and maintenance complexity.

For me this is a regression in the postgres alpine container, i think we should at least raise this as a issue in https://github.com/docker-library/postgres/blob/master/12/alpine/Dockerfile, i guess this is related to the update of the base image from 3.11 -> 3.12, but not verified.

closing this ?

Alright. Thanks for helping out with this tedious issue! It was good to wait for it being fixed upstream.
Here are the Makefile improvements: https://github.com/metal-stack/backup-restore-sidecar/pull/12


wtap needs improvement

wtap is actually running and hitting. how does it work? when u hit someone it reset ur sprint.
simplification
if u hit someone, it stops your movement a little bit and continue sprinting and hitting again and cycle goes

let me know your opinion on the changed one in v1.4.1!


Error while running

I have performed the setup and given input image and question but when I click on generate answer it displays this error.
Default MaxPoolingOp only supports NHWC on device type CPU [[node vgg19/block1_pool/MaxPool (defined at /home/shivam/Desktop/VQA-Flask-App/utils/helper_functions.py:30) ]] [Op:__inference_distributed_function_2303] Function call stack: distributed_function

Hi @shivam1423 The meaning of NHWC is:

N: number of images in the batch
H: height of the image
W: width of the image
C: number of channels of the image
Please make sure your input is present in the above format.

There is a chance that your input is present as NCHW. Convert your input from the format NCHW to NHWC.
Let me know if that solves your problem.

Hello @arya46 so what exactly I have to change in the code?

@shivam1423 Try changing K.set_image_data_format('channels_first') to K.set_image_data_format('channels_last') in utils/helper_fucntions.py
If that still doesn't solve the problem, the reason could be a compatibility issue with Tensorflow.
Try to run the app with TF 2.1.0

@arya46 When I tried with K.set_image_data_format('channels_last') .
The main.py file gave an error ValueError: Negative dimension size caused by subtracting 2 from 1 for 'block2_pool/MaxPool' (op: 'MaxPool') with input shapes: [?,1,112,128].

@shivam1423 as expected, changing the K.set_image_data_format() breaks the codes in other parts.
Did you try with TF 2.1.0? The model was trained with version 2.1.0. It is quite common to face unwanted technical issues when you try to run the same with other TF versions.
I have not tried to run it with other versions.

Previously I was using TF 2.1.2. Now as you said to shift TF 2.1.0. Now the main.py file is giving an error.
Traceback (most recent call last):
File "main.py", line 43, in
model = tf.keras.models.load_model(MODEL_PATH, custom_objects=custom_objects, compile=False)
File "/home/shivam/Desktop/VQA-Flask-App/virtualenvironment/VQA/lib/python3.6/site-packages/tensorflow_core/python/keras/saving/save.py", line 146, in load_model
return hdf5_format.load_model_from_hdf5(filepath, custom_objects, compile)
File "/home/shivam/Desktop/VQA-Flask-App/virtualenvironment/VQA/lib/python3.6/site-packages/tensorflow_core/python/keras/saving/hdf5_format.py", line 166, in load_model_from_hdf5
model_config = json.loads(model_config.decode('utf-8'))
AttributeError: 'str' object has no attribute 'decode'
Now what should I do?

@shivam1423 Above error suggests that model_config is a str datatype. Did you modify the code and declared model_config somewhere else?
If no, please refer to the training notebooks here and train the model from scratch.
I am not sure why you're facing the issue. Someone else used the same code somewhere around last month. It worked perfectly for him.
I would really appreciate it if you could figure out the issue and create a pull request. Thank you

Thanks for sharing the scratch code. Can you just share me these 2 json file(vqa_raw_train2014.json vqa_raw_val2014.json) that is used in the VQA 3.ipynb file.

Those files are generated by running the process_question_annotation() function. Execute the codes cell by cell. Everything that you need will be generated on the go.

@arya46 Thanks, I have trained the model succesfully for 60 epochs and generated 3 weight file(ckpt-12.data-00000-of-00002, ckpt-12.data-00001-of-00002, ckpt-12.index) in the training checkpoint folder. How do I get complete_model.h5 file? Also where have you used those weights?

Previously I was using TF 2.1.2. Now as you said to shift TF 2.1.0. Now the main.py file is giving an error.
Traceback (most recent call last):
File "main.py", line 43, in
model = tf.keras.models.load_model(MODEL_PATH, custom_objects=custom_objects, compile=False)
File "/home/shivam/Desktop/VQA-Flask-App/virtualenvironment/VQA/lib/python3.6/site-packages/tensorflow_core/python/keras/saving/save.py", line 146, in load_model
return hdf5_format.load_model_from_hdf5(filepath, custom_objects, compile)
File "/home/shivam/Desktop/VQA-Flask-App/virtualenvironment/VQA/lib/python3.6/site-packages/tensorflow_core/python/keras/saving/hdf5_format.py", line 166, in load_model_from_hdf5
model_config = json.loads(model_config.decode('utf-8'))
AttributeError: 'str' object has no attribute 'decode'
Now what should I do?

I was able to solve this issue by installing h5py version 2.10.0

Previously I was using TF 2.1.2. Now as you said to shift TF 2.1.0. Now the main.py file is giving an error.
Traceback (most recent call last):
File "main.py", line 43, in
model = tf.keras.models.load_model(MODEL_PATH, custom_objects=custom_objects, compile=False)
File "/home/shivam/Desktop/VQA-Flask-App/virtualenvironment/VQA/lib/python3.6/site-packages/tensorflow_core/python/keras/saving/save.py", line 146, in load_model
return hdf5_format.load_model_from_hdf5(filepath, custom_objects, compile)
File "/home/shivam/Desktop/VQA-Flask-App/virtualenvironment/VQA/lib/python3.6/site-packages/tensorflow_core/python/keras/saving/hdf5_format.py", line 166, in load_model_from_hdf5
model_config = json.loads(model_config.decode('utf-8'))
AttributeError: 'str' object has no attribute 'decode'
Now what should I do?

I was able to solve this issue by installing h5py version 2.10.0

@akashrajum7 Thank you for the update. I will update the h5py version in requirements.txt file.

@akashrajum7 Thank you for the update. I will update the h5py version in requirements.txt file.