Observable updates aren't reflected in templates

This is a...

[ ] feature request
[x] bug report
[ ] usage question

What toolchain are you using for transpilation/bundling?

[x] @angular/cli
[ ] Custom @ngTools/webpack
[ ] Raw ngc
[ ] SystemJS
[ ] Rollup
[ ] Other

Environment
NodeJS Version: 12.13.1
Typescript Version: 3.7.5
Angular Version: 9.0.1
@angular-redux/store version: 10.0.0
@angular/cli version: (if applicable)
rxjs: 6.5.4
OS: Windows
Link to repo showing the issus
(optional, but helps a lot)
Expected Behaviour:
In below sample, redux observable updates are not displayed in the templates.
state.loader.counter is a number that is increased each second.
The console log well display the new value each second.
We only see the first value on the screen
import {Component, OnInit} from '@angular/core';
import {select} from '@angular-redux/store';
import {Observable} from 'rxjs';

@Component({
  selector: 'app-loader',
  template: `<div>Counter: {{ loaderCounter$ | async }}</div>`,
})
export class LoaderComponent implements OnInit {
  ngOnInit() {
    this.loaderCounter$.subscribe((counter) => {
      console.log('----counter', counter)
    })
  }

  @select((state) => {return state.loader.counter}) loaderCounter$: Observable<number>;
}

If I replace the select decorator with a classic selector in the ngOnInit, result is the same
If I put a classic Observable, rendering is working correctly
import {Component, OnInit} from '@angular/core';
import {select} from '@angular-redux/store';
import {Observable} from 'rxjs';

@Component({
  selector: 'app-loader',
  template: `<div>Counter: {{ classicObservable$ | async }}</div>`,
})
export class LoaderComponent implements OnInit {
  ngOnInit() {
  }

  classicObservable$ = new Observable<number>(observer => {
    let counter = 0;
    observer.next(counter);

    setInterval(() => {
      counter++;
      observer.next(counter);
    }, 1000);
  });
}

I'm using a library that provide an already created redux store
I attached it to my angular app through ngRedux.provideStore(myStore);
But this means there's 2 instances of Redux in my app:

1 provided in the lib I use
1 tracked by @angular-redux/store

Isn't it a conflict here ? I mean angular-redux listen on methods of the bad redux ?
How to support htis case ?

It start to be really crazy.
If I create 2 Observers:

1 from @select as in hte 1st example
1 manual, that subscribe from the select, log and update teh value

Even in this case the rendering is failed...
Noone already envounter this problem ?
import {Component, OnInit} from '@angular/core';
import {select} from '@angular-redux/store';
import {Observable} from 'rxjs';

@Component({
  selector: 'app-loader',
  template: `<div>Counter: {{ classicObservable$ | async }}</div>`,
})
export class LoaderComponent implements OnInit {
  ngOnInit() {
    this.loaderCounter$.subscribe((counter) => {
      console.log('----counter', counter)
    })
  }

  @select((state) => {return state.loader.counter}) loaderCounter$: Observable<number>;

  classicObservable$ = new Observable<number>(observer => {
    this.loaderCounter$.subscribe((counter) => {
      observer.next(counter);
    })
  });
}

OK after loooong search I found the problem, and it seems a pure angular issue
This code is working:
import {Component, OnInit} from '@angular/core';
import {select} from '@angular-redux/store';
import {Observable} from 'rxjs';

@Component({
  selector: 'app-loader',
  template: `<div>Counter: {{ loaderCounter$ | async }}</div>`,
})
export class LoaderComponent implements OnInit {
  ngOnInit() {
        setInterval(() => {
        }, 100)
  }

  @select((state) => {return state.loader.counter}) loaderCounter$: Observable<number>;
}

The reason is that the action origin is out of angular application.
I just create an empty interval method in my component, and the angular application will understand there an activity in the app, then will update corresponding rendering...
Really crazy.
Will open a defect in angular and close this one.

It seems the reason is I provide to angular-redux an externally created store.
In this case this store is not wrapped by zonejs.
How can we support it properly ?

@paztis That's quite the journey you had.  I think the bigger question is how to get more people managing this repository because it seems pretty dead at the moment.


Description for mediatype in response

Hi,
I got a RAML 0.8 file with the following:
responses:
  200:
    description: |
      Liste des immunisations réalisées dans le domaine (clinique).
    body:
      application/json:
        schema: !include ../json/schema_liste_immunisations.json
        example: !include ../json/liste_immunisations.json
      text/plain:
        description: |
          Éléments de données délimités par des barres verticales.

          Cette sortie peut normalement être chargées directement dans un chiffrier Excel.
        example: !include ../text/liste_immunisations.txt

When executing raml2html, I got the following error:
Error parsing: while validating body property: 'description' is invalid in a body in "kinexchangeapi.raml", line 277, column 15

As per the 0.8 RAML spec, it's supposed to be possible to specifiy a description for any response body like the following:
/media/{mediaid}/content:
  displayName: Content
  get:
    description: |
      Get a media file.
    responses:
      200:
        body:
          "*/*":
            description: |
                Returns the media file.

Is it a feature not yet developed for raml2html ?
Thank you

It seems that the problem is within the raml-js-parser.  Documented at Raml parser won't accept description in body.

Those errors are not generated by raml2html, it simply uses the official https://github.com/raml-org/raml-js-parser.


No data constructor for record types using another type constructor

This snippet should compile, as well as this one.

That is not currently supported, it is only based on aliasing a record directly.
In the future we may have a different mechanism for creating these constructors. Either way, this issue is a known "we should find a better way" thing and should be getting some attention in the future.

I just ran into that as well. Any issue/mailing list thread where this is discussed?


Icons being on the wrong slot

I'm having this issue where icons are in the wrong slot and on a diagonal row on each slot.

you probably have duplicate icons.

actually, how many icons are in config/hiimjustin000.more_icons/icon?

1,544 (im using my friends 3k icon mix)

but i can confirm they're not dupped icons

and when i checked the folder it shows that all icons are in order

forgot to mention that a hand full of icons from slot 1 get put at the end

You probably have many icons with the same textures. Click on the icons to see if they have different names.

i think i figured out my issue, so apparently the icons are getting put after 1_9 for example player_16 is put next to player_159

its kinda hard to explain but i think its putting icons to where it is via number (iic)

yeah it's ordered like that

yeah, but I don't think it's supposed to do that..

isn't this way of ordering a LOT better though?? if you're mixing icons from different packs it makes more sense that if you, for example, have:
techPlayer_01
techPlayer_05
techPlayer_06
& then
bunnymixPlayer_03
bunnymixPlayer_09
it's a lot better to have all icons with a similar filename (in this case, icons all from a same pack) all close to eachother in the icon selection screen, rather than have them all randomly placed with icons that aren't even related

Fixed in v1.1.1 (4d18bce)


Resolve also ROS2 paths when loading YAML files that contain the find…

…_ros_package filter
Signed-off-by: Musa Morena Marcusso Manhaes<EMAIL_ADDRESS>

#87


Implement ComponentDefinition.compile()

See title

A native Python version of this routine is now implemented here:
https://github.com/SynBioDex/libSBOL/blob/insert/wrapper/libsbol.i#L1245
although it still depends on some low-level helper methods  that remain implemented only in the SWIGged library.


Migrate Devfile OpenShift CI workloads to arm64

/kind epic
/area ci
/area registry
Epic Goal
We need to investigate running our OpenShift CI workloads on arm64 nodes. https://docs.google.com/document/d/1YCThhzRC2nXES-2wSax-N1L3bDcHfmDxPPAMqGaddpA/edit#heading=h.qx1mu14nccal contains a brief assessment on where we stand for running arm64 workloads.
The following devfile repositories currently have pull request or post merge jobs that run on OpenShift CI:

devfile/registry
devfile/registry-operator

We also run periodic nightly jobs for the following:

devfile/integration tests, ODC, OCP 4.10-4.12
devfile/integration tests, odo, OCP 4.10-4.12

Acceptance Criteria

[x] https://github.com/devfile/api/issues/1608
[ ] https://github.com/devfile/api/issues/1594
[ ] https://github.com/devfile/api/issues/1552

Added https://github.com/devfile/api/issues/1537 to acceptance criteria.

As part of investigation done during https://github.com/devfile/api/issues/1537 the following issues have been created and added to the acceptance criteria:

https://github.com/devfile/api/issues/1546
https://github.com/devfile/api/issues/1547
https://github.com/devfile/api/issues/1548
https://github.com/devfile/api/issues/1549
https://github.com/devfile/api/issues/1550
https://github.com/devfile/api/issues/1551
https://github.com/devfile/api/issues/1552

Breaking apart this epic to accurately reflect work done during Q2 (https://github.com/devfile/api/issues/1608) as the remaining items in this EPIC are blocked by work outside of our teams control.

Moving epic to backlog for now until it is unblocked


vscode-linux-*-build-deb - permission bits match expected

fixes #11557

Hi @pauloppenheim, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;


Pack is ignored when Force Unicode Font = true

(I do not fully understand how Minecraft resource packs work.)
When Force Unicode Font is set to true, the pack is completely ignored, and the tofu block we all love would appear.

Enabling "Force Unicode Font" results in using the old deprecated font format which does not support the full Unicode range added with 1.16 and so not the emojis added in this pack. Do you have a reason to still use it?

Some people are used to the unicode font, as there were now fixed bugs where bold Chinese text would break without enabling Force Unicode Font.
Is there not a way to make it so that enabling Force Unicode Font does no effect?
Like forcing Minecraft not to use the unicode font with the pack installed?

As far as I can see, the old fonts system was not extended anymore, so it definitely does not support emojis, because the later Unicode tables are missing (and also adding them does nothing, because they are not recognized/processed by the program).
At the current state there also seems to be no way for a resource or data pack to enforce the player's setting on this. So sadly nothing me or you can do to enforce it server side. Requires at least a client side mod but then you can also just tell your players to disable it.
Since there is currently no way to solve this and you already agreed to, I'm closing this ticket. Thx for the report, will at least add this information to the documentation. 👍


Build error on Meteor <IP_ADDRESS>

Trying to run meteor on the new version <IP_ADDRESS> with<EMAIL_ADDRESS>results in the following:
=> Started proxy.
=> Started MongoDB.
=> Errors prevented startup:

   While processing files with cosmos:browserify (for target web.browser):
   packages/kadira:dochead/package.browserify.js: Arguments to path.resolve must be strings

   While processing files with cosmos:browserify (for target web.cordova):
   packages/kadira:dochead/package.browserify.js: Arguments to path.resolve must be strings

=> Your application has errors. Waiting for file change.

+1

+1

I believe this is a duplicate of #11.
I'm having the same issue which I resolved by editing my meteor/.versions file to move back to version 1.1.0.

I got this issue too and disappear somehow. Not sure why.
Anyway, I updated the browserify version and published a new version. (1.2.1)
If you got this again, may be you can remove .meteor/local directory and try again.
Hope all you guys are using Meteor 1.2

@arunoda sorry, removing .meteor/local does not fix it.
Still getting:
While processing files with cosmos:browserify (for target web.browser):
   packages/kadira:dochead/package.browserify.js: Arguments to path.resolve must be strings

Okay. Let me get some help from a help from an specialist.

@arunoda you guys are the best! :+1:

This error is, unfortunately, my fault. Please update to cosmos:browserify 0.8.0. Versions 0.7.1 through 0.7.4 are broken. They are attempts to make it work properly for all the variations there are, and, it fails to do so.
The new Build API of Meteor 1.2 is wreaking havoc on my plugin because it no longer provides actual directory location information, and, it builds the packages in more places. packages are now published in an unbuilt format and require building by a plugin from their location in ~/.meteor/packages, which also puts the npm modules into npm instead of .npm/package.
Essentially, this, fairly simple two steps, has become this, deep property inspection.
Any recommendations for improving it are appreciated.

meteor update cosmos:browserify and re-adding dochead does the trick!

Thanks @elidoran I'll update it.
Not sure any recommendations.

I published the new version. Hopefully it should fix this issue.

Seems good for me. Thanks!

Not fixed on Windows 7

While processing files with cosmos:browserify (for target web.browser): packages/kadira:dochead/package.browserify.js: Cannot find module 'load-script' from '\C\Users\bmanturner\AppData\Local.meteor\packages\kadira_dochead\1.2.2\npm'

Note: The directory of the application is located in C\Users\bmanturner\Documents, not AppData.

The kadira:dochead package is stored in AppData when you add it to an app via meteor add kadira:dochead.
I see a possible cause. It looks like I need to do Plugin.convertToOSPath() to convert the property from the *nix style path (used internally everywhere by Meteor) to the windows style path. I'll patch it later today.


Feature/filename in error msg

Create new optional input for defining the source of the JSON String being parsed, so that the filename/URL can be inserted into the error message.
Changes error message from simply:
Internal\serror
to:
Internal error in <Source Path or URL>

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

@nate-moehring I love adding file/url source information to error messages.  As I'm reviewing this, a question popped into my head about keeping related work together (cohesion) and I wondered if inserting the file path information at the same "level" as the file read would make sense.  What are your thoughts about this?
Related question:  As a user of the JSON Deserializer how will I know what this new input does and how/when I should use it? (Asking because I didn't see mention in the VI Description nor was it apparent from the control name since path/url isn't data needed for parsing the JSON).

As I'm reviewing this, a question popped into my head about keeping related work together (cohesion) and I wondered if inserting the file path information at the same "level" as the file read would make sense. What are your thoughts about this?
Natural question, and I even stated essentially the same thing in my original email to you about this PR.  (I thought it was in a comment field somewhere, but I guess not, my apologies.)  I agree this is kind of breaking some SOLID rules, however, I have two reasons that motivated the change as is:

My main reason for doing it is, as far as I can tell, Read Configuration.vi is not actually included in a package anywhere that I can find, and certainly not the palette.  Am I wrong?  As a result, users have been developing their own versions of reading JSON from config files.
Second, what about the scenario where the JSON blob actually came from a REST request, not a file.  It would still be nice to give some kind of indication where it came from even though a filename is no longer applicable.

Related question: _As a user of the JSON Deserializer how will I know what this new input does and how/when I should use it?
You're right, I should have said something about it in the VI Description of Unflatten From JSON String.vi, though I think I did put something in the Control's Description about it's use.

Alright, I've made the requested changes.  I also removed the wrapper tests VIs, because it seems like Caraya was not correctly auto-removing sub-tests from the list of discovered tests.  Each test was getting run several times.  The best code is no code, let the tool find the tests.

Did you see my email regarding a G Compiler?

Alright, I've made the requested changes. I also removed the wrapper tests VIs, because it seems like Caraya was not correctly auto-removing sub-tests from the list of discovered tests. Each test was getting run several times. The best code is no code, let the tool find the tests.
I guess the .vipb is stored in an internal JKI repo?

The .vipb is here: src/JSON Serialization.vipb
If you're willing to do a test build and see if it works well, that would be great!


Clickonce time stamping manifest XML

Hello, I am having trouble with time stamping license DOM when using clickonce functionality.  This is happening whether signedXml.CheckSignature(Key) returns true or false.  The actual line of code that returns an error value is this: var hr = Win32.CertTimestampAuthenticodeLicense(ref licenseBlob, timeStampUrl, ref timestampBlob);
Would it be possible to provide an alternative way of time stamping license DOM, or is there a way to better debug this type of issue please? I tried different formats of manifest XML and nothing seemed to work.
Thanks
Vlad

Resolved by calling the crypt32 timestamp method, where the original time stamp logic is used in the "catch" block, for a fallback.
Source: https://github.com/microsoft/msbuild/commit/0551aa0c27b7d1b371ada34c65f6fdb56ba2a9b8

Hi @vr333dev
I have the same issue with ClickOnce and a timestamp. But I did not get the msbuild merge running.
Can you please provide me your sample code?
Thanks in advance! :)


Error report documentation

The problem the component solves
The mailbagit error reports need additional user documentation. This should describe how --dry-run impacts the error reports, what the very common wkhtmltopdf cid warnings mean and other information about what's in the reports.
I would expect the outcome for this would be another page on the jekyll site under Using Mailbagit, similar to plugins and logging. That would just required another markdown file here in the docs directory. For docs, we've just been putting in pull requests to develop and merging them to main with the next release.
Relevant part of mailbag spec?
n/a
Type of component

[ ] Core
[ ] Input
[ ] Attachments
[ ] Derivatives conversion
[ ] Reporting/Exporting
[ ] GUI
[ ] Distribution

Expected contribution

[ ] Pull Request
[ ] Comment with proposed solution

(Additional .md page in the Jekyll site)
Major challenges or things to keep in mind

Addressed by #212


x/tools/gopls: lsp features not working in std lib package

On master (9882f1d1823da58283ff91ebbec3f7c0cc27cddc), after go-to-definitioning into a standard library package, code navigation features no longer work inside the standard library package. Attached is a log where I jumped to "fmt.Println" and then tried to jump to the definition of "newPrinter".
vscode.log

@heschik I think this was an unintended consequence of https://go-review.googlesource.com/c/tools/+/248380

I agree I broke this, but I don't know how to fix it.
There are good reasons we don't want to type check every package in full mode: it uses a ton of memory and CPU for code that the user is probably not working on. So our strategy of checking workspace packages in full mode, and others in export-only mode, is useful. But it puts us in a difficult position when dealing with non-workspace packages.
Let's consider Find References on fmt.Printf, as mentioned in the description of 248380. If we use the export-only version of the fmt package, we will successfully find references from the user's code to Println. We won't find references outside the workspace, and we won't even realize an unexported symbol exists. If we use the full version, we can deal with unexported identifiers, and we can find references internal to the package itself. Nothing else will be connected to it.
Fundamentally, we cannot fully support non-workspace packages without fully type checking them, and we can't afford to do that. So the question is what tradeoffs we want to make. Some options:

Very specifically for Go To Definition, add a fallback to or force full type checking. Since we're only interested in forward references, that will work fine.
Continue with the current state, where ~no features work outside of the workspace.
Attempt to work in both modes for all requests, merging the results. In the Printf example, this would allow you to find references in the fmt package and the user's workspace, but not the stdlib generally. I think that might be too confusing.

I think maybe I'm leaning toward a special case for Go To Definition? Possibly it can choose the type checking mode based on the exported-ness of the identifier.

In order of importance to me:

If I open a non-workspace file, gopls should type check a package it belongs to so go-to-definition works.
Find-references should work within that non-workspace package since that is useful when poking around.
Find-references from within the non-workspace package should find references in my workspace.

I think 1) correspond to your first option, and 3) corresponds to your third option.
We sort of already handle same-package-checked-multiple-times for find-references and find-implementations due to test variant packages. We seed the find-references search with all packages the starting file belongs to (e.g. "foo" and "foo [foo.test]" or w/e), and we dedupe results by token.Position. It should work to also throw full and partial versions into the mix.
In conclusion I would like at least 1) and to consider doing 3). I don't find the lack of references across non-workspace packages confusing because I already don't expect that to work. Others may have different expectations.

Test variants aren't totally comparable. The big problem is incoming references, where the type objects won't line up, and test variants don't have any of them.
I'll play around with it.


mkdocs-include-markdown-plugin: init at 6.0.4

Description of changes
Adds yet another mkdocs plugin.
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

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

4 packages built:

python310Packages.mkdocs-include-markdown-plugin
python310Packages.mkdocs-include-markdown-plugin.dist
python311Packages.mkdocs-include-markdown-plugin
python311Packages.mkdocs-include-markdown-plugin.dist

@WolfangAukang updated

gently ping :)

gently ping @WolfangAukang


MudStepper IconButtons shown even if param false on navigation back

If you set use icon buttons param to false, navigate forward a step and go then go back through the step(s), the buttons change to using the icons instead of the next/previous text?

Thats by design to gain more space, but after that design MobileView and IconActionButtons parameters added, so we can discuss about design.

It feels wrong for me to tell the component to not to use icons buttons but the component goes ahead and use them anyway? I'm not sure about the saving space design, it feels weird for the user to see text buttons saying previous/next and then see icons if they go back? At least from a consistency point of view for the user journey?

I can confirm the PR raised by @TeaBreakTom has resolved this issue :)

It's already released with 6.4.8 🙂


Handle exabyte and more

hey
@omar @jetersen
Can you provide exabyte and more?
EB | exabyte
ZB | zettabyte
YB | yottabyte

PS: really good lib
Thanks

@clintnetwork I am only a contributor.
I suggest you open a pull request to add exabyte

If I do pull request it will be merged enough fastly?
@omar

@clintnetwork yes, I should have time to dedicate to the code review over the coming weeks.

Okey because exabyte support would be great and there a bug with big int too


Implement canSee method to Layout like in Field Class

Is your feature request related to a problem? Please describe.
Implementation of the method "canSee" on Layout class is not correct and therefore forces me to assign Layout to array manually. This works for Field meanwhile always returns true on Layout class.
https://github.com/orchidsoftware/platform/blob/9.x/src/Screen/Layout.php#L93
Describe the solution you'd like
Maybe Layout can use CanSee trait like Field.
https://github.com/orchidsoftware/platform/blob/9.x/src/Screen/Field.php#L35
https://github.com/orchidsoftware/platform/blob/9.x/src/Screen/CanSee.php
Describe alternatives you've considered
null
Additional context
null

Hi @fozbek. This change may break the already written code.
Therefore, we will release this only for the next major version. https://github.com/orchidsoftware/platform/issues/1559#issuecomment-775179447

Hi @tabuna. Thank you.
Duplicate of https://github.com/orchidsoftware/platform/issues/1559#issuecomment-775179447


FileSystemException: Creation failed

Question
Hi, I wanted to try out Hive in my app, but unfortunately I came across an error when opening a box. The folder "hive" already exists and I use the iOS Simulator.
FileSystemException (FileSystemException: Creation failed, path = 'assets' (OS Error: Permission denied, errno = 13))
Code sample
Hive.init("assets/data/hive/");
await Hive.openBox("game");
var gameBox = Hive.box("game");
Version

Platform: iOS
Flutter version: 1.7.8
Hive version: 0.5.1

I don't think this is a valid path. Since the asset files are read only, Hive cannot create a box there.
Please use the path_provider package to get a valid path. Take a look at the example apps in the Hive repository.

Thanks for the answer, I implemented it like in your "Todo App" example and got to know path_provider as well. The problem was still there, but "chmod 777" probably solved it.

For me just work with: getApplicationDocumentsDirectory()


[BUG] UI on count for multiple VMs can enter into negative integers

Describe the bug
count for vms on multiple vm create screen can enter into the negative integers
To Reproduce
Steps to reproduce the behavior:

Go to create multiple vms
Click the down arrow on the count
Count will start to count into the negative integers

Expected behavior
count for vm creation of multiple vms to not allow for negative integers
Environment

Harvester ISO Version: master-2ba017d4-head
Underlying Infrastructure: bare metal two node hp proliant

Additional context

Thanks for the fix @DaiYuzeng :smile: :+1:
I tested on Harvester Version: master-b49e264e-head
And it looks great!
I'll go ahead and close this out


[BUG] Backup RWX volume caused pod to restart and cannot reattach to the restarted pod

Describe the bug
A clear and concise description of what the bug is.
Don't know the exact order or cause:
RWX volume is detaching causing attached pod to restart, restarted pod is unable to re-attach to volume
RWX volume is rebuilding
After rebuild pod can reattach, this can take up to 30 minutes to resolve.
Volume is for log files. Many jobs, small to large logs per job. Currently volume is 620Gi. Appears to be occurring during backup of volume. ShareManager on node will show high-memory usage (are there memory limits?). Often we'll see a NodeOOM event, but not always.
To Reproduce
Steps to reproduce the behavior:
We have not been able to reproduce the behavior in our dev environment, dev is smaller and not as active. We have not attempted to reproduce on our production environment.
Expected behavior
Volume should not detach. If it does, then Pod should be able to reattach to a replica. Pod restarts are okay, just can't be long outage. Backups should not disrupt volume usage.
Log
If applicable, add the Longhorn managers' log when the issue happens.
You can also attach a Support Bundle here. You can generate a Support Bundle using the link at the footer of the Longhorn UI.
Environment:

Longhorn version: 1.1.2
Installation method (e.g. Rancher Catalog App/Helm/Kubectl): kubectl
Kubernetes distro (e.g. RKE/K3s/EKS/OpenShift) and version: K3S 1.20.7

Number of management node in the cluster: 3
Number of worker node in the cluster: 0

Node config

OS type and version: Ubuntu 20.04
CPU per node: 4
Memory per node: 32
Disk type(e.g. SSD/NVMe): SSD
Network bandwidth between the nodes:

Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal): VWWare
Number of Longhorn volumes in the cluster: 3

Additional context
Add any other context about the problem here.
longhorn-support-bundle_1dff9511-ad74-4779-b0af-73d387c387ef_2021-09-02T13-17-36Z.zip

@eckra is your network stable? What is your network bandwidth between the nodes?

iperf3 shows 4-6Gbits/sec and 0-.04 ms jitter between nodes

iperf3 shows 4-6Gbits/sec and 0-.04 ms jitter between nodes

Network looks good

I would say monitoring the health of the pod share-manager-dm-rundeck-logs . It looks like that pod is constantly crashing. Maybe CPU and Memory pressure on the node ldi-mech-prod3?
2021-09-02T09:07:27.031034649Z time="2021-09-02T09:07:27Z" level=debug msg="Share Manager pod requires cleanup with remount" controller=longhorn-share-manager node=ldi-mech-prod3 owner=ldi-mech-prod3 shareManager=dm-rundeck-logs state=starting volume=dm-rundeck-logs


Don't enhance test:prepare unless it exists

Fixes #10.

Might have to add some documentation about this too? Because if test:prepare isn’t there, builds won’t happen automatically, and you will need to set up another way to have them run. Otherwise CI etc will fail.

Added a note to the README, let me know if you'd like something a little more detailed. I'll mirror whatever we go with in the related PR on cssbundling once this one is cleared.

Perfect 👍


Disappearing connected arrow on drag

When connecting an arrow to two shapes and then dragging the target shape, the arrow mysteriously disappears:
https://user-images.githubusercontent.com/1093738/118711189-4bb1ae80-b7ed-11eb-8ebd-7a4ddf653215.mp4

Hey David, if you still have the scene, can you just select the applicable elements, cmd-c and cmd-v here?

{"type":"excalidraw/clipboard","elements":[{"type":"ellipse","version":334,"versionNonce":1214628250,"isDeleted":false,"id":"HWq4t_b26UP0V8z2V5rdv","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":1,"opacity":100,"angle":0,"x":2899.6738281250023,"y":-881.3515625000013,"strokeColor":"#1864ab","backgroundColor":"transparent","width":62.68415178571422,"height":62.68415178571422,"seed":1749425021,"groupIds":[],"strokeSharpness":"sharp","boundElementIds":["eUOmVSWk0qBxWXRCpv-1S","8TzTlzb-g0VY-jDRUSASY","c1PdMFmyp3xt7wONNKKEr","akbqg5m5PtR1VUrwMq5M8","Q2eb1ueuanbEILTfXE9jY","abY72YmrSNSQhRkl9a_Qk"]},{"type":"ellipse","version":182,"versionNonce":965736538,"isDeleted":false,"id":"2rsTXhJbntt9TOk719tpU","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":1,"opacity":100,"angle":0,"x":2880.4048549107165,"y":-1072.0825892857151,"strokeColor":"#d9480f","backgroundColor":"transparent","width":98.88392857142844,"height":113.56584821428578,"seed":1827181491,"groupIds":[],"strokeSharpness":"sharp","boundElementIds":["c1PdMFmyp3xt7wONNKKEr","akbqg5m5PtR1VUrwMq5M8","Q2eb1ueuanbEILTfXE9jY","abY72YmrSNSQhRkl9a_Qk"]},{"id":"abY72YmrSNSQhRkl9a_Qk","type":"arrow","x":2927.9690290178573,"y":-945.8619847751567,"width":0.27282955753207716,"height":56.456810492763566,"angle":0,"strokeColor":"#000000","backgroundColor":"transparent","fillStyle":"solid","strokeWidth":2,"strokeStyle":"solid","roughness":1,"opacity":100,"groupIds":[],"strokeSharpness":"round","seed":1745708698,"version":68,"versionNonce":1387472026,"isDeleted":false,"boundElementIds":null,"points":[[0,0],[-0.27282955753207716,56.456810492763566]],"lastCommittedPoint":null,"startBinding":{"elementId":"2rsTXhJbntt9TOk719tpU","focus":0.03797968397295142,"gap":12.686494025838485},"endBinding":{"elementId":"HWq4t_b26UP0V8z2V5rdv","focus":-0.11199145375240123,"gap":8.19323295575413},"startArrowhead":null,"endArrowhead":"arrow"}]}

Thanks. It works for me on the elements you've suppled: can you still reproduce the bug on them on your end?
I dimly recall this happening before but can't remeber if it was fixed or not. /cc @xixixao

Which browser and OS are you using?

Chrome, latest, MacOS

@davidkpiano Can you consistently reproduce this? Can you reproduce this from a blank scene?
If we can't repro we can't fix it.

@davidkpiano Can you consistently reproduce this? Can you reproduce this from a blank scene?
If we can't repro we can't fix it.

I cannot; must have been a Heisenbug. Feel free to close.


RTMP Authentication not working

Describe the bug
When streaming using RTMP I call RtspCamera2.getStreamClient().setAuthorization("my_username", "my_password") but when I start to stream, no username or password is sent. I am streaming to MediaMTX
To Reproduce
Steps to reproduce the behavior:

Install OpenTAK ICU
In the stream settings select RTMP or RTMPS, and set your server's address, port, username, and password
Start streaming and see that no username or password is sent

Expected behavior
A username and password should be sent
Screenshots
N/A
Smartphone (please complete the following information):

Library version: 2.3.5
Device: Pixel 4a and Pixel 6 Pro
OS: Android 144
Media server: MediaMTX 1.6.0
Class used RtmpCamer2

Additional context
You can also see the code here

Hello,
I think this is not an error in the library. I'm not sure the way mediamtx is using RTMP auth (normally should use adobe auth) but it is not working even with ffmpeg. Only RTSP auth is working with mediamtx.
I tested RTMP using a wowza trial (wowza use adobe auth) and it is working fine. We should ask to mediamtx about it.

I just found in MediaMTX's README that for RTMP the username should be appended to the end of the stream URL like this ?user=my_username&pass=my_pass. When I did that, authentication worked as expected.

I just found in MediaMTX's README that for RTMP the username should be appended to the end of the stream URL like this ?user=my_username&pass=my_pass. When I did that, authentication worked as expected.

Thank you for the info. This is a custom way to do it so remember that you only should do it using mediamtx.
This library support adobe auth and llnw auth for RTMP that are all RTMP auth supported in ffmpeg


v2 & Let's Encrypt in an HA setup

Do you want to request a feature or report a bug?
Feature
What did you expect to see?
By design, Traefik 2.0 is stateless and HA: Users can deploy multiple instances to ensure that at least one Traefik instance can route requests at any time.
Though, when using Let's Encrypt for automatic certificate generation, the certificate negotiation cannot be consistently achieved because there is no guarantee that the initiator of the negotiation gets the subsequent calls.
Traefik 1.X used to leverage K/V stores & elect leaders that would be responsible for the certificate negotiations. Still, many issues were left unsolved ( #4851 #3487 #5047 #3833) because of a flawed design. In 2.0, we chose to remove the feature to keep Traefik a simple and elegant data plane (#5426).
Thanks to third-party software (like CertManager), using Let's Encrypt in an HA setup is still possible, and we need to document how.

If it can help, I quickly wrote a blog post here: https://www.cerenit.fr/blog/kubernetes-ovh-traefik2-cert-manager-secrets/
I can provide a translation if you're interested.

https://github.com/mmatur/traefik-cert-manager

Closed by #5902.

Closed by #5902.

IMO this issue shouldn't be closed. The referenced PR only addresses how to setup Let's encrypt in a kubernetes HA setup. Unfortunately this doesn't help us people that do not use k8s for orchestration. Ideally, the proposed solution should be agnostic to the used orchestration tool.


Disable HUSD Redemption / Claiming

Summary
Disable the claim button when deferral is not set to 100%.
Acceptance Criteria

[ ]  For assignments AND contributions
[ ]  Disable "Create Contribution" in Frontend
[ ]  If you claim 100% HYPHA (100% deferred) your pay goes through
[ ]  If you claim < 100% HYPHA "Your claim button is temporarily disabled" (tooltip)

Once funding restarts, old and new payments can be reclaimed
In other words, we are blocking claims if you claim HUSD. This will apply to both assignments AND contributions. If you change your pay to 100% deferred (via the slider), it will go through.

Hi @leonieherma1 could you confirm if works for you please?

@jmgayosso yes working for me on prod


Add connection naming example for Oracle Database

Oracle supports dbms_application_info.
This can assign client_info to a session.
See:

Oracle dbms_application_info tips
DBMS_APPLICATION_INFO : For Code Instrumentation
14 DBMS_APPLICATION_INFO

Go client libraries:

https://github.com/godror/godror
https://github.com/sijms/go-ora

See also https://franckpachot.medium.com/you-should-set-ocsid-clientid-e00cb81ed7e2

From quick research, there is no public oracle image available. A license is required.

Hey @andygrunwald, I was just about to leave you a comment about the same here.
GODROR offers a wrapper around DBMS_APPLICATION_INFO with the TraceTag struct, see: https://godror.github.io/godror/doc/logging.html#-tracing
In comparison, the Python driver (cx_Oracle) makes it even simpler by just exposing these as attributes to a connection, e.g: https://cx-oracle.readthedocs.io/en/latest/api_manual/connection.html#Connection.client_identifier.
You will find that there are even a couple of more attributes that Oracle Database offers, such as module info and action.
This allows users to specify more than just "App X", for example, an application could use the module information to share information whereabouts in the app the call comes from, say a specific class or logical part of the app.
The action field could be set for individual tasks even, such as "storing customer information".
That way an application could leverage the built-in tracing capabilities from Oracle to help diagnose, e.g., even where in the app slow running SQL statement comes from.

From quick research, there is no public oracle image available. A license is required.

That is not true, you can use Oracle XE entirely free of charge.
You can also pull the official Oracle XE image via docker pull container-registry.oracle.com/database/express:latest.
Likewise, you can pull my XE image via docker pull gvenzl/oracle-xe:18-slim.

@gvenzl Thanks a lot. That information is really useful for me.

Likewise, you can pull my XE image via docker pull gvenzl/oracle-xe:18-slim.

Whats the difference between your image and container-registry.oracle.com/database/express:latest?
PS: Thanks for pointing me to the docker express imagee.

Smaller and faster to startup, mostly. I put a couple of more parameters into mine as well, it's the one I'm planning to use for csv2db GitHub Actions. But, for example, gvenzl/oracle-xe:18-full is practically the same as the one on container-registry.oracle.com (besides the additional parameters).

Thanks for the context.

Hey @gvenzl,
thanks for your input. I added an Oracle example for Go and Python in https://github.com/andygrunwald/your-connection-deserves-a-name/pull/7


[docs] Ctrl + K overrides the default browser shortcut

Describe the bug
Pressing ctrl+k in the vite documentation opens a vite-specific search. However, the default behavior in both Firefox and Chrome when pressing ctrl+k (on Linux/Windows) is to initiate a full web search, not a search restricted to the currently-viewed page.
It is generally polite not to override global browser default keyboard shortcuts in a webpage. Could the vite documentation switch to a non-clashing keyboard shortcut for site-specific search?
Reproduction
https://vitejs.dev/
Steps to reproduce
No response
System Info
N/A

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

This is hard coded in docsearch that we use through vitepress.
https://github.com/facebook/docusaurus/discussions/4952#discussioncomment-869733
We can change it if an option is added to both docsearch and vitepress. But I'm not sure if it's better to differ from other sites that uses docsearch.

Yeah I don't think it's worth changing too, switch to another will only clash with another shortcut and there's no way to avoid it. Closing as wontfix.


Use symbols in polymorphic urls

We had to lock rails at <IP_ADDRESS> due to CVE-2021-22885, addressed in https://github.com/rails/rails/releases/tag/v<IP_ADDRESS>.
It would be good to fix it upsteam.
This is a follow-up to https://github.com/pulibrary/dpul/pull/918 and https://github.com/pulibrary/dpul/issues/916#issuecomment-847290528

Looks like this has been fixed upstream
See:
https://github.com/projectblacklight/spotlight/releases/tag/v3.1.0
https://github.com/projectblacklight/spotlight/pull/2754


BUG: renderer.lua:1082: Key not found: neo_tree_position

Did you check docs and existing issues?

[X] I have read all the docs.
[X] I have searched the existing issues.
[X] I have searched the existing discussions.

Neovim Version (nvim -v)
NVIM v0.10.0-dev-445+g700cab0068
Operating System / Version
macos ventura
Describe the Bug
Getting this weird thing sometimes, mostly when I recently opened vim and I jump to some file through telescope. Not sure how to replicate. It get it more often when I start neovim as neovim .
[Neo-tree ERROR] debounce  neo-tree-follow  error:  ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1082: Key not found:
 neo_tree_position
[Neo-tree ERROR] debounce  document_symbols_refresh  error:  ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1082: Key n
ot found: neo_tree_position
[Neo-tree ERROR] Error in event handler for event vim_buffer_added[filesystem.vim_buffer_added]: ...are/nvim/lazy/neo-tree.nvim/lua/
neo-tree/ui/renderer.lua:1082: Key not found: neo_tree_position
[Neo-tree ERROR] Error in event handler for event vim_buffer_deleted[filesystem.vim_buffer_deleted]: ...are/nvim/lazy/neo-tree.nvim/
lua/neo-tree/ui/renderer.lua:1082: Key not found: neo_tree_position
[Neo-tree ERROR] Error in event handler for event vim_buffer_modified_set[filesystem.vim_buffer_modified_set]: ...are/nvim/lazy/neo-
tree.nvim/lua/neo-tree/ui/renderer.lua:1082: Key not found: neo_tree_position
[Neo-tree ERROR] debounce  document_symbols_refresh  error:  ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1082: Key n
ot found: neo_tree_position
E5108: Error executing lua: ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1082: Key not found: neo_tree_position
stack traceback:
        [C]: in function 'nvim_buf_get_var'
        ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1082: in function 'window_exists'
        ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:120: in function 'close'
        ...re/nvim/lazy/neo-tree.nvim/lua/neo-tree/command/init.lua:85: in function 'execute'
        ...l/share/nvim/lazy/LazyVim/lua/lazyvim/plugins/editor.lua:13: in function <...l/share/nvim/lazy/LazyVim/lua/lazyvim/plugin
s/editor.lua:12>

Your Configuration
the one that ships with lazyvim.org https://www.lazyvim.org/plugins/editor#neo-treenvim

Specifically I see this issue every time I open neovim . and then use telekasten plugin "goto_today" to create a new file.

I got this same error when switch session via telescope.nvim with https://github.com/olimorris/persisted.nvim
Error executing vim.schedule lua callback: ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: Key not found: neo_tree_position
stack traceback:
	[C]: in function 'nvim_buf_get_var'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: in function 'window_exists'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1145: in function 'draw'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1285: in function 'show_nodes'
	...ree.nvim/lua/neo-tree/sources/filesystem/lib/fs_scan.lua:95: in function 'render_context'
	...ree.nvim/lua/neo-tree/sources/filesystem/lib/fs_scan.lua:143: in function <...ree.nvim/lua/neo-tree/sources/filesystem/lib/fs_scan.lua:142>
Error executing vim.schedule lua callback: ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: Key not found: neo_tree_position
stack traceback:
	[C]: in function 'nvim_buf_get_var'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: in function 'window_exists'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1145: in function 'draw'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1285: in function 'show_nodes'
	...ree.nvim/lua/neo-tree/sources/filesystem/lib/fs_scan.lua:95: in function 'render_context'
	...ree.nvim/lua/neo-tree/sources/filesystem/lib/fs_scan.lua:143: in function <...ree.nvim/lua/neo-tree/sources/filesystem/lib/fs_scan.lua:142>
Error executing vim.schedule lua callback: ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: Key not found: neo_tree_position
stack traceback:
	[C]: in function 'nvim_buf_get_var'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: in function 'window_exists'
	...re/nvim/lazy/neo-tree.nvim/lua/neo-tree/command/init.lua:147: in function 'do_show_or_focus'
	...re/nvim/lazy/neo-tree.nvim/lua/neo-tree/command/init.lua:202: in function 'callback'
	...share/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/inputs.lua:82: in function 'on_submit'
	...c/.local/share/nvim/lazy/nui.nvim/lua/nui/input/init.lua:152: in function <...c/.local/share/nvim/lazy/nui.nvim/lua/nui/input/init.lua:139>
Error executing vim.schedule lua callback: ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: Key not found: neo_tree_position
stack traceback:
	[C]: in function 'nvim_buf_get_var'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: in function 'window_exists'
	...re/nvim/lazy/neo-tree.nvim/lua/neo-tree/command/init.lua:147: in function 'do_show_or_focus'
	...re/nvim/lazy/neo-tree.nvim/lua/neo-tree/command/init.lua:202: in function 'callback'
	...share/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/inputs.lua:82: in function 'on_submit'
	...c/.local/share/nvim/lazy/nui.nvim/lua/nui/input/init.lua:152: in function <...c/.local/share/nvim/lazy/nui.nvim/lua/nui/input/init.lua:139>
/home/user/path/to/a/folder
Error executing vim.schedule lua callback: ...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: Key not found: neo_tree_position
stack traceback:
	[C]: in function 'nvim_buf_get_var'
	...are/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1076: in function 'window_exists'
	...re/nvim/lazy/neo-tree.nvim/lua/neo-tree/command/init.lua:147: in function 'do_show_or_focus'
	...re/nvim/lazy/neo-tree.nvim/lua/neo-tree/command/init.lua:202: in function 'callback'
	...share/nvim/lazy/neo-tree.nvim/lua/neo-tree/ui/inputs.lua:82: in function 'on_submit'
	...c/.local/share/nvim/lazy/nui.nvim/lua/nui/input/init.lua:152: in function <...c/.local/share/nvim/lazy/nui.nvim/lua/nui/input/init.lua:139>

steps:

vi /path/to/file
switch session via telescope
error above

I have persisted.nvim setup that close/re-open neo-tree window when save/restore session.
it works normally except if i do step 1 above then switch
normal work mean, if i just issue nvim command and then do switching sessions with telescope (not vi /path/to/file)

I get the
Key not found: neo_tree_position

message whenever I navigate to a new path with the :e go/to/this/file/path command. Afterwards Neotree stops working correctly. For instance I have :Neotree toggle set to <C-n> - running this command after the :e command produces error messages.

Wrapped the vim.api.nvim_buf_get_var on line 1096 in a pcall as a temporary workaround. Don't know where that buffer variable gets lost.

@cseickel when can we expect this fix on 2.x or 3.x?

@Tacsiazuma this has just been released in v3.6.
It won't be backported to 2.x.


Added feature/SASS

Simple SASS version

Issue #25

@vmmartinezlona I really sorry that I probably confused you. I wasn't against the main colours and I think we should keep the code as much modular as we possibly can. I was just saying about the naming for button colours which should be changed.
$primary-color: #333;
$border-color: #ccc;
$white-color: #fff;

@vmmartinezlona Well done with your first PR! 👍 💯


Scatter plot: Reduce number of digits after comma in hover tooltip

Environment

Release number or git hash: v11.4.2
Browser: Chrome 127
Deployed / Local: Both

Steps to reproduce the bug
Open a scatter plot and hover over the points.
Observed Behavior
Some times the numeric values in the tooltip have very high number of digits after the comma.

Expected Behavior
Show only 3 digits after the comma.

Resolved in https://github.com/datavisyn/visyn_core/pull/530


SONOFF ZigBEE 3.0 USB Dongle Plus Router Firmware

Hello everyone.
I tried to flip the router firmware on the SONOFF ZigBEE 3.0 USB dongle Plus which I didn't succeed.
Whenever I plug in the dongle, I press the Boot button on the dongle.
The process is always canceled with the error.

Initiate access to target: COM8 using 2-pin cJTAG.
No response from device. Device may not be in bootloader mode. Reset device and try again.
If problem persists, check connection and baud rate.
Connecting over serial bootloader failed: No response from device. Device may not be in bootloader mode. Reset device and try again.
If problem persists, check connection and baud rate.
Failed to create device object.

Maybe one of you can help me.

I wish we had firmware with hardware flow control active.

@tteck Probably best if post a new issue to request hardware flow control https://github.com/Koenkk/Z-Stack-firmware/issues
FYI, posted a separate request for a firmware with hardware flow control actived -> https://github.com/Koenkk/Z-Stack-firmware/issues/324 (if @tteck and others are interested).

I've tried the script again. https://github.com/JelmerT/cc2538-bsl The stick does not respond to the same problem.
C:\Users\Privat\cc2538-bsl-master\cc2538-bsl-master>py ./cc2538-bsl.py -p "com8" -evw "CC1352P2_CC2652P_launchpad_coordinator_20210708.hex" Opening port com8, baud 500000 Reading data from CC1352P2_CC2652P_launchpad_coordinator_20210708.hex Your firmware looks like an Intel Hex file Connecting to target... ERROR: Timeout waiting for ACK/NACK after 'Synch (0x55 0x55)'

I was getting this exact error from within a docker container, but when I did it from the (linux) host it worked.

I was getting this exact error from within a docker container, but when I did it from the (linux) host it worked.

If use Docker then need to forward/map your device from host machine to Docker instance, preferably via docker-compose:
https://www.zigbee2mqtt.io/guide/installation/02_docker.html#creating-the-initial-configuration
https://www.zigbee2mqtt.io/guide/installation/02_docker.html#docker-compose
Also see example:
https://www.home-assistant.io/integrations/zha/#cant-connect-to-usb-device-and-using-docker

Yeah I have it mapped. I can access it from HA->zha and zygpy-znp but that firmware update failed every time and after I updated firmware I still can't find any other devices. Thanks for the link I'll double check my syntax to pass it through.

Yeah I have it mapped. I can access it from HA->zha and zygpy-znp but that firmware update failed every time

Then also make sure that you stop HA/ZHA app before upgrading as serial devices can only have one connection established.

Even with zha deleted I was getting it. I ultimately gave up and went back to conbee2 and everything if stable.

same here

It's still not working. Seems like flashing firmware locked bootloader completely, and device not working at all (super small power consumption).
Auto-BSL just showing the timeout error Timeout waiting for ACK/NACK after 'Synch (0x55 0x55)'
Do you know, where I (we) can buy jtag module for re-flashing this?

Do you know, where I (we) can buy jtag module for re-flashing this?

https://electrolama.com/radio-docs/advanced/flash-jtag/
"The cheapest option for an officially supported debugger is the CC-DEVPACK-DEBUG, available from most common electronics distributors"
https://www.ti.com/tool/CC-DEVPACK-DEBUG
Guess should be able to use most debuggers compatible with cJTAG (IEEE 1149.7 "Compact JTAG") via exposed TMS and TCK

FYI, several Home Assistant community members have tested Sonoff provided uartLog.py script which seems to confirm "Auto BSL" is working(?), so maybe possible to enter bootloader without need to open enclosure to manually press BTL button:
https://community.home-assistant.io/t/itead-sonoff-zigbee-3-0-usb-dongle-plus-adapter-based-on-texas-instruments-cc2652p/340705/45
https://community.home-assistant.io/t/itead-sonoff-zigbee-3-0-usb-dongle-plus-adapter-based-on-texas-instruments-cc2652p/340705/96
See uartlog.zig attached inside this docx which if unpacked contains uartLog.py
https://sonoff.tech/wp-content/uploads/2021/09/Zigbee-3.0-USB-dongle-plus-firmware-flashing-1-1.docx
cc2538-bsl.py also supports "Auto-BSL"
https://github.com/JelmerT/cc2538-bsl
See more information on what "Auto-BSL" does here:
https://electrolama.com/radio-docs/bsl/#auto-bsl
If can get that to work then can skip the BSL pushbutton press step to get the device into BSL mode in order for flashing it.

I have confirmed that running this script does indeed make ITead's Sonoff Zigbee 3.0 Plus adapter enter bootloader mode and after that I could flash it directly with  llama-bsl.py -p COM5 -b 115200 -evw CC1352P2_CC2652P_launchpad_coordinator_20210708.hex without having open its enclosure and pressing the BRL button which I think is very convenient. The script also lists all active COM ports on MS Windows (tested on Windows 10) and have you enter the number of the COM port, but note that the script is hardcoded for Windows COM ports.

Is it possible to flash without c/jTag? With Raspberry only?

Is it possible to flash without c/jTag? With Raspberry only?

Maybe check out this -> https://gist.github.com/hwhw/fc43892785aa84913d03495c97b0f25a
That is written for CC2538 but could be maybe be similar if it works without TDI and TDO. As what I needed is a cJTAG programming mode because CC2652 uses that by default. cJTAG mode only uses RESET, TCK and TMS pins, as CC2652 doesn't have TDI and TDO. You of course also need POWER (VCC) and GROUND.

After router firmware update device is dead.
R.I.P. my sonoff device :(

After router firmware update device is dead. R.I.P. my sonoff device :(

Even if can no longer get into the bootloader you should still be able to unbrick the hardware if flash using cJTAG via TCK and TMS.
https://electrolama.com/radio-docs/advanced/flash-jtag/
https://www.ti.com/tool/CC-DEVPACK-DEBUG

I have the same problem. What is the reset button for? How can I revert to coordinator software?

How can I revert to coordinator software?

To revert you just need to flash a coordinator firmware again:
https://github.com/Koenkk/Z-Stack-firmware/tree/master/coordinator/Z-Stack_3.x.0/bin
https://github.com/Koenkk/Z-Stack-firmware/tree/develop/coordinator/Z-Stack_3.x.0/bin
To flash suggest you test this -> https://github.com/JelmerT/cc2538-bsl/pull/114 and report flashing success or not there.

How can I revert to coordinator software?

To revert you just need to flash a coordinator firmware again (CC1352P2_CC2652P_launchpad_*.zip):
https://github.com/Koenkk/Z-Stack-firmware/tree/master/coordinator/Z-Stack_3.x.0/bin
https://github.com/Koenkk/Z-Stack-firmware/tree/develop/coordinator/Z-Stack_3.x.0/bin
To flash suggest you test this -> JelmerT/cc2538-bsl#114 (and report flashing success or not there).

The problem is the it doesn't go into bootloader mode.... I hold boot button when plugging it in.

The problem is the it doesn't go into bootloader mode.... I hold boot button when plugging it in.

With this patch you should not need to press any buttons at all as it will enter BSL via software -> https://github.com/JelmerT/cc2538-bsl/pull/114

Hi xxsirosxx would you mind sharing a download link for the SmartRF Flash Programmer tool?
From the TI website it is impossible to download it and I can't find it anywhere to download.

Hallo xxsirosxx, würde es Ihnen etwas ausmachen, einen Download-Link für das SmartRF Flash Programmer-Tool zu teilen?
Von der TI-Website ist es unmöglich, es herunterzuladen, und ich kann es nirgendwo zum Herunterladen finden.

Hi I would rather recommend ZigStar. https://github.com/xyzroe/ZigStarGW-MT

Hi I would rather recommend ZigStar. https://github.com/xyzroe/ZigStarGW-MT

Hi I would rather recommend ZigStar. https://github.com/xyzroe/ZigStarGW-MT

FYI, ZigStar GW Multi tool doesn't yet support flashing USB adapters using Silabs CP2102N like ITead's Sonoff USB Plus Dongle, see:
https://github.com/xyzroe/ZigStarGW-MT/issues/2

Is it possible to flash without c/jTag? With Raspberry only?

These are my steps in an raspberry-pi:
export BASEDIR=`~/sonoff_dongle/`
mkdir -p $BASEDIR
cd $BASEDIR
git clone https://github.com/JelmerT/cc2538-bsl.git
git clone https://github.com/Koenkk/Z-Stack-firmware.git
unzip Z-Stack-firmware/coordinator/Z-Stack_3.x.0/bin/CC1352P2_CC2652P_launchpad_*.zip
sudo service zigbee2mqtt stop
pip3 install pyserial intelhex python-magic

Remove bolts and extract usb from metallic enclosure
Press and hols button BOOT
Insert usb in usb port holding BOOT
Releade BOOT after 3 seconds

python3 $BASEDIR/cc2538-bsl/cc2538-bsl.py -p /dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus* -evw  $BASEDIR/CC1352P2_CC2652P_launchpad_coordinator_*.hex

@davrodfer But that will not work if you first accidentally flashed it with the wrong firmware image and messed up the bootloader.
So if you "bricked it" then you will need to "unbrick it" by flashing it via a c/JTAG debug probe instead of flashing it via USB.
That is, if you do not have a working bootloader then think it will need to support 2-pin cJTAG (a.k.a C-JTAG or c/JTAG) and not just common JTAG SWD as TI CC2652 debug do not use SWD and SWDCLK, etc. but instead only TMS and TCK (cJTAG is not SWD/SWDCLK). See details at → Flash Firmware using c/JTAG - Electrolama
Looking at pictures on ITead’s product page for the Sonoff CC2552P board you see that no SWD and SWDCLK pads are exposed, but it does expose TMS and TCK pads so those is what you need to use.
So will probably need cJTAG debug probe with TMS and TCK, and thus you will need to use a cJTAG compatible debugger probe adapter like Texas Instruments XDS110 or a clone of TI’s XDS110.

Again, the official Texas Instruments TMDSEMU110-U XDS110 JTAG Debug Probe is a bit expensive and currently looks to be out-of-stock, but cheap clones of XDS110 JTAG debug probe should work, see example:
https://aliexpress.com/item/4000751867419.html
https://www.ti.com/tool/TMDSEMU110-U

Sorry for off topic and stupid question, but if I will flash dongle with router firmware, did it start working like zigbee network extender? No need to be connected directly to "computer"? Just simple 5VDC power supply  like phone charger will be enough?

@andreytse Yes, it works as an extender. You need 5V only.

@davrodfer But will that work if first have accidentally flashed it with the wrong firmware image and messed up the bootloader?

Maybe check out this: https://gist.github.com/hwhw/fc43892785aa84913d03495c97b0f25a
That is written for CC2538 but could be maybe be similar if it works without TDI and TDO. As what you needed is a cJTAG programming mode because CC2652 uses that by default. cJTAG mode only uses RESET, TCK and TMS pins, as CC2652 doesn't have TDI and TDO. You of course also need POWER (VCC) and GROUND.

So if you "bricked it" then you will need to "unbrick it" by flashing firmware via a c/JTAG debug probe instead of flashing it via USB.
That is, if you do not have a working bootloader then think it will need to flash via the 2-pin cJTAG (a.k.a C-JTAG or c/JTAG) and not just common JTAG SWD as TI CC2652 debug do not use SWD and SWDCLK, etc. but instead only TMS and TCK (cJTAG is not SWD/SWDCLK). See details at → Flash Firmware using c/JTAG - Electrolama
https://electrolama.com/radio-docs/advanced/flash-jtag/
Looking at pictures on ITead’s product page for the Sonoff CC2552P board you see that no SWD and SWDCLK pads are exposed, but it does expose TMS and TCK pads so those is what you need to use.
So will probably need cJTAG debug probe (e.i. external debugger adapter) with TMS and TCK, and thus you will need to use a cJTAG compatible debugger probe adapter like Texas Instruments XDS110 or a clone of TI’s XDS110.

Again, the official Texas Instruments TMDSEMU110-U XDS110 JTAG Debug Probe is a bit expensive and currently looks to be out-of-stock, but cheap clones of XDS110 JTAG debug probe should work, see example:
https://aliexpress.com/item/4000751867419.html
https://www.ti.com/tool/TMDSEMU110-U

As the TI Launchpad devkits has onboard XDS110, I guess those can be used for flashing also. Way cheaper than an official standalone debugger and as a bonus you can use it as coordinator/router too :).

As the TI Launchpad devkits has onboard XDS110, I guess those can be used for flashing also. Way cheaper than an official standalone XDS110 and as a bonus you can use it as coordinator/router too :).

Yes the TI LAUNCHXL-CC26xR1 and the TI LAUNCHXL-CC1352P does have integrated XDS110 debugger, but the cheapest standa-alone option today for an officially supported debugger adapter is the Texas Instruments CC-DEVPACK-DEBUG:
https://www.ti.com/tool/CC-DEVPACK-DEBUG
However, the official TMDSEMU110-U XDS110 JTAG Debug Probe is still a better option for developers as offer more options:
https://www.ti.com/tool/TMDSEMU110-U
The original Texas Instruments XDS110 JTAG debug probe is a bit expensive but cheap clones of it should also work, examples:
https://aliexpress.com/item/4000751867419.html
https://aliexpress.com/item/32976279419.html
Also, note that original Segger J-Link V9 (legacy) debug probes does not support cJTAG, so need at least Segger J-Link V10 series:
https://wiki.segger.com/J-Link_Model_Overview

In the path you need to remove the spaces. I noticed that you have spaces in path: "...ee Stick/CC1352P2..."
Try to put the hex file in C:\
E.g.: C:\CC1352P2_CC2652P_launchpad_coordinator_20211217.hex

Hello,
i tried to flash firmware using official docx and app Flashprogrammer crashed during the process...
So i opened device, pressed button to get booaloader etc... and reflashed

Initiate access to target: COM5 using 2-pin cJTAG.
Reading file: C:/Users/xxx/Downloads/cc2538-bsl-master/CC1352P2_CC2652P_launchpad_router_20220125.hex.
Start flash erase ...
Erase finished successfully.
Start flash programming ...
Programming finished successfully.
Start flash verify ...
Skip verification of unassigned page: 23.
Skip verification of unassigned page: 24.
Skip verification of unassigned page: 25.
Skip verification of unassigned page: 26.
Skip verification of unassigned page: 27.
Skip verification of unassigned page: 28.
Skip verification of unassigned page: 29.
Skip verification of unassigned page: 30.
Skip verification of unassigned page: 31.
Skip verification of unassigned page: 32.
Skip verification of unassigned page: 33.
Skip verification of unassigned page: 34.
Skip verification of unassigned page: 35.
Skip verification of unassigned page: 36.
Skip verification of unassigned page: 37.
Skip verification of unassigned page: 38.
Skip verification of unassigned page: 39.
Skip verification of unassigned page: 40.
Skip verification of unassigned page: 41.
Skip verification of unassigned page: 42.
Page: 0 verified OK.
Page: 1 verified OK.
Page: 2 verified OK.
Page: 3 verified OK.
Page: 4 verified OK.
Page: 5 verified OK.
Page: 6 verified OK.
Page: 7 verified OK.
Page: 8 verified OK.
Page: 9 verified OK.
Page: 10 verified OK.
Page: 11 verified OK.
Page: 12 verified OK.
Page: 13 verified OK.
Page: 14 verified OK.
Page: 15 verified OK.
Page: 16 verified OK.
Page: 17 verified OK.
Page: 18 verified OK.
Page: 19 verified OK.
Page: 20 verified OK.
Page: 21 verified OK.
Page: 22 verified OK.
Page: 43 verified OK.
Verification finished successfully.
Reset target ...
Reset of target successful.

Even reflashed it doesnt work at all... is it possible that Crash - bricked it?
In case it was bricked is it possible to unbrick?
thanks!

I have the exact same problem; ordered a 2-pack of these dongles to replace by broken old zigbee stick based on the older (unstable) chips.. but I can't get them to start in bootloader/flashing-prepared mode either, no matter how long I keep the button pressed after inserting the device into an USB slot. I'm going to try and see if the https://github.com/JelmerT/cc2538-bsl/pull/114 thing works, otherwise I just spent 32 euro's on 2 underweight paperweights..

I got it to work after I installed the CP210x Universal driver @ https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers.
Then when I ran this command in Windows Powershell (after installing Python and running pip install pyserial intelhex):
$comports = Get-WMIObject Win32_SerialPort; $comports |Get-PnpDeviceProperty -InstanceId {$_.pnpdeviceid} -Keyname DEVPKEY_Device_BusReportedDeviceDesc |ForEach-Object { foreach($comport in $comports) {if ($comport.pnpdeviceid -eq $_.instanceid) { new-object psobject -property @{COMPORT = $comport.deviceid; 'Device-Name' = $_.data} } } }
It then showed the device plugged into the COM3 port:
> $comports = Get-WMIObject Win32_SerialPort; $comports |Get-PnpDeviceProperty -InstanceId {$_.pnpdeviceid} -Keyname DEVPKEY_Device_BusReportedDeviceDesc |ForEach-Object { foreach($comport in $comports) {if ($comport.pnpdeviceid -eq $_.instanceid) { new-object psobject -property @{COMPORT = $comport.deviceid; 'Device-Name' = $_.data} } } }

COMPORT Device-Name
------- -----------
COM3    Sonoff Zigbee 3.0 USB Dongle Plus

After that I could run the command to flash the device into coordinator mode by running python cc2538-bsl.py -p COM3 -evw --bootloader-sonoff-usb .\coordinator.hex.

I got it to work after I installed the CP210x Universal driver @ https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers.
Then when I ran this command in Windows Powershell (after installing Python and running pip install pyserial intelhex):
$comports = Get-WMIObject Win32_SerialPort; $comports |Get-PnpDeviceProperty -InstanceId {$_.pnpdeviceid} -Keyname DEVPKEY_Device_BusReportedDeviceDesc |ForEach-Object { foreach($comport in $comports) {if ($comport.pnpdeviceid -eq $_.instanceid) { new-object psobject -property @{COMPORT = $comport.deviceid; 'Device-Name' = $_.data} } } }
It then showed the device plugged into the COM3 port:
> $comports = Get-WMIObject Win32_SerialPort; $comports |Get-PnpDeviceProperty -InstanceId {$_.pnpdeviceid} -Keyname DEVPKEY_Device_BusReportedDeviceDesc |ForEach-Object { foreach($comport in $comports) {if ($comport.pnpdeviceid -eq $_.instanceid) { new-object psobject -property @{COMPORT = $comport.deviceid; 'Device-Name' = $_.data} } } }

COMPORT Device-Name
------- -----------
COM3    Sonoff Zigbee 3.0 USB Dongle Plus

After that I could run the command to flash the device into coordinator mode by running python cc2538-bsl.py -p COM3 -evw --bootloader-sonoff-usb .\coordinator.hex. (after copying the coordinator firmware to coordinator.hex in the directory of the perl script, obviously)

The CP210x Universal driver solved the problem for me. If your on Windows check if the driver are correly installed for the com port. Thank you @hvanmegen for you solution.

Have any Windows users tried this docker path?
https://github.com/JelmerT/cc2538-bsl/issues/120

I got it to work after I installed the CP210x Universal driver @ https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers.
Then when I ran this command in Windows Powershell (after installing Python and running pip install pyserial intelhex):
$comports = Get-WMIObject Win32_SerialPort; $comports |Get-PnpDeviceProperty -InstanceId {$_.pnpdeviceid} -Keyname DEVPKEY_Device_BusReportedDeviceDesc |ForEach-Object { foreach($comport in $comports) {if ($comport.pnpdeviceid -eq $_.instanceid) { new-object psobject -property @{COMPORT = $comport.deviceid; 'Device-Name' = $_.data} } } }
It then showed the device plugged into the COM3 port:
> $comports = Get-WMIObject Win32_SerialPort; $comports |Get-PnpDeviceProperty -InstanceId {$_.pnpdeviceid} -Keyname DEVPKEY_Device_BusReportedDeviceDesc |ForEach-Object { foreach($comport in $comports) {if ($comport.pnpdeviceid -eq $_.instanceid) { new-object psobject -property @{COMPORT = $comport.deviceid; 'Device-Name' = $_.data} } } }

COMPORT Device-Name
------- -----------
COM3    Sonoff Zigbee 3.0 USB Dongle Plus

After that I could run the command to flash the device into coordinator mode by running python cc2538-bsl.py -p COM3 -evw --bootloader-sonoff-usb .\coordinator.hex. (after copying the coordinator firmware to coordinator.hex in the directory of the python script, obviously)

It works ! Also after installa Universal Drivers Sonof Dongle appeared in Flash Programmer 2

Very glad to see that me posting my solution here helped at least 2 other people.. We are The Community, my friends.. stay awesome!

I still have "ERROR: Timeout waiting for ACK/NACK after 'Synch (0x55 0x55)" :(.

I still have "ERROR: Timeout waiting for ACK/NACK after 'Synch (0x55 0x55)" :(.

Manually enable bootloader mode via boot button or use correct parameters for Sonoff with https://github.com/JelmerT/cc2538-bsl


chore(fsweb): upgrade ts-loader to 5.3.3

duplicates https://github.com/brandingbrand/flagship/pull/561


Sparse data with mannwhitneyu

Is your feature request related to a problem? Please describe.
I have very sparse data for what I am testing. The current implementation does not take sparse data as it calls len of the sparse array.
Describe the solution you'd like
I dont know yet how to solve this, but I am guessing we could make a change to change the methods called when a sparse array is passed to the method.
Describe alternatives you've considered
Currently, I have a way to auto convert to dense the array, but this end up taking a lot of memory.
Additional context (e.g. screenshots)
I have not made any contribution on this project, but if I have enough guidelines, I'd love to send a PR with a potential solution.

In general, scipy.stats functions aren't designed with sparse matrix support in mind. For the specific case of mannwhitneyu, the problem arises here:
https://github.com/scipy/scipy/blob/a6bd0456cdf83c5804fea94144b3b7afac78c3d0/scipy/stats/mstats_basic.py#L1144
It's also worth noting that numpy masked arrays don't play well with scipy.sparse matrices.
I would start by trying to write a version of mannwhitneyu that explicitly takes sparse matrix inputs, and make sure that you can get something workable first. It may be the case that the algorithm can't take advantage of sparsity, in which case it's not worth the effort, but I'm not a stats expert so I won't speculate.

@CooperData please have a look at open issues and PRs for mannwhitneyu before you try this. The current implementation is pretty badly broken and needs a complete rewrite I'm afraid. There's one PR that was pretty far along but stalled, gh-4933.
If you'd be interested in tackling this, that would be awesome.

Thanks @perimosocordiae and @rgommers - I will take a look at the current thread. My concern would be that it might not be a really good issue for a first time contributor given the history on that method. But I will give it a try. I am particularly interested as I am actually using that in prod code where I work.

It might be a decent first issue actually - it's not small, but it's pure Python and there's already a lot of test cases (both in the PR, and in issues other people opened).
Thanks for trying, let us know if you need help!

@CooperData I've been working on gh-4933. Just to be sure I understand, do you want mannwhitneyu to work on sparse arrays and produce the same output as if the sparse arrays had first been converted to dense arrays and then passed into mannwhitneyu? Or did you want mannwhitneyu to ignore the implicit zeros?

Thanks Matt, I believe zeros should be considered as part of the data and
not be removed.
Cesar H.
On Tue, Dec 29, 2020 at 3:44 AM Matt Haberland<EMAIL_ADDRESS>wrote:

@CooperData https://github.com/CooperData I've been working on gh-4933
https://github.com/scipy/scipy/pull/4933. Just to be sure I understand,
do you want mannwhitneyu to work on sparse arrays and produce the same
output as if the sparse arrays had first been converted to dense arrays and
then passed into mannwhitneyu? Or did you want mannwhitneyu to ignore the
implicit zeros?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scipy/scipy/issues/11035#issuecomment-751997978, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AALS2PCXZDLL7XVOE2TYDBLSXGJFLANCNFSM4JLJC6MQ
.

@CooperData OK. It seems to me that MWU could pretty easily take advantage of the sparsity, since the statistic is just based on the sum of the ranks. You would start by figuring out the ranks of the elements counting all the zeros as just one zero, then figure out how to adjust all the ranks. If the number of zeros is n0 and the rank associated with a single zero is r0, then the adjustment is something like:

all of the ranks greater than r0 get increased by n-1
the adjusted rank assigned to zero is r0 + (n-1)/2

Then you sum the adjusted ranks of the nonzero elements and n times the adjusted rank assigned to zero. The rest of the calculation doesn't care that you started with a sparse matrix.
When gh-4933 is merged, I'd be happy to help you create a PR with this change if other stats people think it's OK to do so.

@CooperData are you still interested in this? gh-4933 merged.

@CooperData I'm going to go ahead and close this one until we see some more demand for it. mannwhitenyu and other stats functions are being wrapped in a decorator to make their interfaces more consistent (e.g. nan_policy, vectorization, support for masked arrays, axis tuples, keepdims). We could begin to support sparse arrays in stats functions, but we should think about how this fits into the big picture and not just the one function.


Set terminal executable on linux

It seems to me that leaving the choice of only two terminals (gnome & tilix) is wrong.
Please, add option "open-in-vim.terminalExecutable".

I think the difficulty with this is that most terminals have different ways accepting a "run this command" argument. Here's how to launch plain vim in a couple different terminals that I know of:
tilix --command=vim
gnome-terminal --command=vim
alacritty --command=vim ( OR ) alacritty -e vim
xterm -e vim
kitty vim

There isn't much uniformity. When this extension launches a terminal, it has to know how pass the "run this command" argument to open vim to the right file and line number. And sadly, that varies across terminals.

It means that user should specify the path to the terminal and arguments transferred for it.

I do think we are beyond the scope of this extension, because we're launching an arbitrary program with arbitrary arguments.
It might be possible to put together a DIY solution for a given terminal using something like External Tools. As an example, I've gotten vscode to open the current file in gvim using the following settings.json config:
    "vs-external-tools.externalCommand1.command": "gvim",
    "vs-external-tools.externalCommand1.cwd": "$(ProjectDir)",
    "vs-external-tools.externalCommand1.args": ["$(ItemPath)", "+call cursor($(CurLine), $(CurCol))"]

To open current file and line number in alacritty:
    "vs-external-tools.externalCommand2.command": "alacritty",
    "vs-external-tools.externalCommand2.cwd": "$(ProjectDir)",
    "vs-external-tools.externalCommand2.args": ["-e", "vim", "$(ItemPath)", "+call cursor($(CurLine), $(CurCol))"]

This would also work for xterm and kitty.

Yes, thanks, this is exactly what I was looking for

(Also, FWIW, if you want vscode to jump to the position you were in vim when you exited vim, this is another argument you can add):
"+autocmd VimLeavePre * execute '!code --goto ' . expand('%') . ':' . line('.') . ':' . col('.')"

Wow, thanks!


docs: data injection

Description
Data Injections have a very hidden functionality in that they only work if the ###ZARF_DATA_INJECTION_MARKER### variable is in the pod spec. This documents that functionality.

Relates to #2422

@AustinAbro321 looks like you will need to force push a signed commit. Merging is blocked because this commit is not signed/verified


help!

Sorry, because i am not familiar with the chainer framework, i dont understand your code very well, this trick does EMA operation on network parameters, i find that you somelikes create three generators, and just only updata one generator (like gen), and other generators like (gen_ema and gen_ma) just (soft)copy and EMA the parameters. In the test phase, you just use  gen_ema or gen_ma to generate the fake image. Is that right? could you help me? thanks!

Hi @osakaka . Yes, you got it right. There are three generators. "gen" is the usual generator in GANs which takes feedback from the discriminator. While, "gen_ema" and "gen_ma" does not directly take feedback from the generator. They are updated by keeping a type of averaging of "gen". In the test phase, I use "gen_ema" and "gen_ma" to visualize and evaluate the model.

thanks, i will try it!

Hi @yasinyazici , does it mean that you do not actually train the other 2 generators with name "g_ema" and "g_ma", what you actually do is that you train the basic generator and update the parameters of the other 2 networks according to the trained parameters from the basic generator by using Adma optimizer? Could you please verify the statement shown above. Thank you.

Hi @Crane-YU . Yes, you update the generator as usual (with gradient optimizers), while g_ma  and g_emaare updated w.r.t. Eq.1 and Eq.2 (check the paper), respectively. So, we do not "train" g_ma  and g_ema with gradient optimizers (SGD, ADAM etc.), but with averaging techniques.

Thank you so much.


AlreadyExistsError() when a Sweep run throws OOM error

I am using Kubernetes. In the container I call my python script. The following excerpts are the parts where the sweep starts:
def train():
 hyperparameter_defaults = {
     'num_conv1':24, #conv should be multiple of 8
     'num_conv2':32,
     'num_conv3':64,
     'num_conv4':128,
     'dropout1':0.1,
     'dropout2':0.1,
     'dropout3':0.1,
     'dropout4':0.1,
     'win_length': 512,
     'n_fft':2048,
     'n_mels':60,
     'frame_length':41,
     'hop_length':64,
     'dropout5':0.5,
     'num_dense':512, #dense should be multiple of 8
     'epochs':300
  }
  wandb.init(reinit=True, config=hyperparameter_defaults) #create some configs for the hyperparams
  config = wandb.config
...

and later in the script
if __name__ == "__main__":
...
  sweep_config = get_sweep_config()
  sweep_id = wandb.sweep(sweep_config, project='test')
  wandb.agent(sweep_id, function=train, project='test')

When the first sweep run -- due to hyperparameter settings that exceed the boundaries -- throws an OOM error, the further ones are throwing these errors:
...
Run k7jsol3b errored: AlreadyExistsError()
wandb: ERROR Run k7jsol3b errored: AlreadyExistsError()
...
Run uu1xyrmp errored: AlreadyExistsError()
wandb: ERROR Run uu1xyrmp errored: AlreadyExistsError()
...
Run 574frvcl errored: AlreadyExistsError()
wandb: ERROR Run 574frvcl errored: AlreadyExistsError()
Detected 5 failed runs in a row at start, killing sweep.
wandb: ERROR Detected 5 failed runs in a row at start, killing sweep.
wandb: To change this value set WANDB_AGENT_MAX_INITIAL_FAILURES=val
Any suggestions to alleviate this errors?

Hey @Yannik1337, can you try removing the reinit=True argument?  You will also likely want to call wandb.finish() at the end of the train() function, although I think we'll automatically finish the run for you in this mode.

@Yannik1337 I was unable to reproduce the error. This is the code I used:
import wandb

def get_sweep_config():
    return {
        'method': 'bayes',
        'metric':{
            'name': 'acc'
        },
        'parameters':{
            'a':{'min': 0, 'max': 10},
            'b':{'min': 0, 'max': 10},
            'c':{'min': 0, 'max': 10}
        }
    }

first = True
def train():
    hyperparameter_defaults = {
        'a': 1,
        'b': 2,
        'c': 3
    }
    wandb.init(reinit=True, config=hyperparameter_defaults)
    config = wandb.config
    print(config)
    global first
    if first:
        first = False
        raise Exception("OOM")

if __name__ == "__main__":
    sweep_config = get_sweep_config()
    sweep_id = wandb.sweep(sweep_config, project='test')
    wandb.agent(sweep_id, function=train, project='test')

Are there any key differences between this and your setup?

I think I traced back the problem to sigh TensorFlow. Clearing GPU memory is sadly a struggle with it so far.
Different to the above setup, I instantiate my TF/Keras model in the train() method and thus block VRAM. This means each time a new model is created - which is correct, since the model's architecture might drastically change (e.g. more convolutions, more dense layers,..).
One solution I thought of:
Since I use Kubernetes, I run my scripts from a .yaml file. Wandb is not installed on the Linux host, but within a Docker image. Is there any recommended procedure to run one yaml Docker file, that then calls my training script n times? This would remove the need for clearing VRAM since each script takes only one architecture search (and not k, which is the case now).
I suggest you stalling or halting this issue; I plan to do further research into this. I'll update with any further findings.

Hey @Yannik1337, one approach is to start the sweep agent on a machine that has access to kubectl and can talk to your kubernetes cluster.  Then the script that the agent executes could launch a pod into the cluster with the appropriate hyper-parameters in an environment variable or mounted into the container.
Another potentially simpler approach is to you run 2 process in your pod.  The main process starts the agent and then instead of running the code directly in a function it could spawn another process that actually does the training.

Hey @vanpelt , thank you for your help. The sweep is now running- I have used your web GUI to create a sweep and then run an agent from my .yaml file.
As a sidenote, I log a metric with wandb.log({"A metric":123}). Note the spaces: They result in an GraphQL 500 error:
500 response executing GraphQL.
{"errors":[{"message":"anaconda 400 error: {"code":400,"message":"ValueError: nan is not in list"}\n","path":["agentHeartbeat"]}],"data":{"agentHeartbeat":null}}
wandb: ERROR Error while calling W&B API: anaconda 400 error: {"code":400,"message":"ValueError: nan is not in list"}
wandb: ERROR  (<Response [500]>)
When I then log the metric without spaces and update my sweep_config.yaml
metric:
goal: minimize
name: A_metric
everything works. TL;DR: spaces in the metric the sweep depends on leads to breaking the sweep.


Donations App

NOTE: Until this notice is removed, this pull request should not be merged. This is an incomplete branch.

Alright, closing out this pull request and start a new one based of the 'merchant' branch that uses the django-merchant backend which works for multiple gateways.


GEODE-10130: Check containsKey under synchronization.

containsKey in HashMap can return false even though the key exists in
the map possibly due to map resizes as other concurrent operations
occur. Now it will be checked under synchronized lock.

For all changes:

[ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[ ] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[ ] Is your initial contribution a single, squashed commit?

[ ] Does gradlew build run cleanly?

[ ] Have you written or updated unit tests to verify your changes?

[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

Originally I was trying to see if the test written can fail repeatably, so same random seed can make the test more likely to fail repeatedly. Once fix is there, I think random seed may be removed. But it should not matter in my opinion.


Added functionality to get lat/long from terminated but valid postcodes

I found some functionality that I needed that was missing, so I added it!

@emielv-stu
We can't return terminated_postcodes method result when when user is requesting valid postcodes as their result formats are not same.  Terminated postcode method returns only limited info.
we already have a method that returns boolean value if postcode is terminated but what we could do is add another separate method that returns the terminated_postcode result as it is from https://postcodes.io


Upgrade 4.19 kernel to latest and mark it as default kernel

Nit: s/not/now

fixed

I think we broke rpi1 withe mesa-gl somehow.

On a retrigger it failed on rpi2 as well. Current master seems to build fine.

Erase above - it fails in master as well.

I think the build failure is unrelated. but I don't use userland graphics by default so this slipped under my nose. I wonder although if its related to kernel at all. I will try to reproduce it and see whats going on.

@kraj found the issue
with_dri = _drivers.length() != 0 and _drivers != ['']
This is because poky switched to meson which does the above to detect dri. In our case, we configure no drivers so no DRI support is added which breaks GBM.

cherry-pick  https://patchwork.openembedded.org/patch/161520/ to poky and then this pull will test and work.

I have done a dummy change to commit msg to refresh the pull branch so that autobuilder can be retriggered. The relevant patch for mesa-gl has been merged in oe-core see
https://git.openembedded.org/openembedded-core/commit/?id=0c670a0fad379c3dc2a69ac5abfeaceda98a2f9c

We fixed something and we broke something else:

ERROR: No recipes available for:
  /var/lib/jenkins/workspace/meta-raspberrypi-generic/poky/../meta-raspberrypi/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.14%.bbappend

Testing a build now with 1.16.x and will push PR.

Merged to master, @kraj . Thanks.


Document DNS Firewall Rate Limiting via API

Which Cloudflare product does this pertain to?
DNS
Existing documentation URL(s)
https://developers.cloudflare.com/dns/dns-firewall/setup/
Section that requires update
There's no section indicating that Rate Limiting can be done, via the API only.
What needs to change?
Mention Rate Limiting in the setup, as an optional step.
How should it change?
Point the API: https://developers.cloudflare.com/api/operations/dns-firewall-update-dns-firewall-cluster as a way to configure DNS Firewall rate limiting.
Additional information
No response

Thanks for raising this. Should be updating soon. PCX-6664


fix: looks like a typo - network interfaces with attached elb wont lo…

fix: looks like a typo - network interfaces with attached elb wont load into neo4j because they are tuple instead of string

Your Signature
Current version of the CLA: 1.0
Username
petersutter5
CLA Version
Signed and current (1.0)