[BUG] Sometimes fluentd-configcheck POD is in Unknown status

Describe the bug

Rarely, in a newly installed cluster, following POD are in Unknown status.
NAMESPACE                   NAME                                                              READY   STATUS              RESTARTS   AGE
cattle-logging-system       rancher-logging-kube-audit-fluentd-configcheck-ac2d4553           0/1     Unknown             0          10m
cattle-logging-system       rancher-logging-root-fluentd-configcheck-ac2d4553                 0/1     Unknown             0          10m

When user creates ClusterFlow, ClusterOutput, it can be recovered.  When there are already existing ClusterFlow, ClusterOutput, rebooting the cluster, no such issue.
It seems to be related to: when there are no clusterflow/output, it may hit potential bug of fluentd.
It is first discovered in: https://github.com/harvester/harvester-installer/pull/333#issuecomment-1249560785.
To Reproduce
Steps to reproduce the behavior:

Install a Harvester cluster with feature #577 #578
Check POD status

Expected behavior

For newly installed system, PODs should be in normal status.
Support bundle

Environment

Harvester ISO version:  master-head 2022.09.20
Underlying Infrastructure (e.g. Baremetal with Dell PowerEdge R630): KVM based

Additional context
Add any other context about the problem here.

One suspect commit:
https://github.com/banzaicloud/logging-operator/commit/70adfef1878a39e46fad673641d71c0cadc4d5bb

Update:
With 10+ times of fresh installing a Harvester cluster, 10+ times of rebooting a newly installed cluster, the issue is not reproduced.
Additional information of the BUG when it happpened:
kubectl can NOT get pod or describe pod of those 2 Unknown PODs. fluentbit, fluend PODs are not deployed yet, due to configcheck POD is not finishied successfully.
harv31:~ # kk get pods -A
NAMESPACE                   NAME                                                              READY   STATUS              RESTARTS   AGE
cattle-logging-system       harvester-default-event-tailer-0                                  1/1     Running             0          10m

cattle-logging-system       rancher-logging-574448c578-t746l                                  1/1     Running             0          10m

cattle-logging-system       rancher-logging-kube-audit-fluentd-configcheck-ac2d4553           0/1     Unknown             0          10m

cattle-logging-system       rancher-logging-rke2-journald-aggregator-lb22b                    1/1     Running             0          10m

cattle-logging-system       rancher-logging-root-fluentd-configcheck-ac2d4553                 0/1     Unknown             0          10m

harv31:~ # kk describe pod -n cattle-logging-system rancher-logging-root-fluentd-configcheck-ac2d4553
Error from server (NotFound): pods "rancher-logging-root-fluentd-configcheck-ac2d4553" not found

harv31:~ # kk get pod -n cattle-logging-system rancher-logging-root-fluentd-configcheck-ac2d4553
Error from server (NotFound): pods "rancher-logging-root-fluentd-configcheck-ac2d4553" not found
harv31:~ #

Deploy a new ClusterFlow & ClusterOutput, the rancher-logging-root-fluentd* POD are recovered. The audit related PODs are still in Unknown status.
harv31:~ # kk get pods -A
NAMESPACE                   NAME                                                              READY   STATUS              RESTARTS   AGE
cattle-logging-system       harvester-default-event-tailer-0                                  1/1     Running             0          15m
cattle-logging-system       rancher-logging-574448c578-t746l                                  1/1     Running             0          16m
cattle-logging-system       rancher-logging-kube-audit-fluentd-configcheck-ac2d4553           0/1     Unknown             0          15m

cattle-logging-system       rancher-logging-rke2-journald-aggregator-lb22b                    1/1     Running             0          16m

cattle-logging-system       rancher-logging-root-fluentbit-tqfqf                              1/1     Running             0          96s
cattle-logging-system       rancher-logging-root-fluentd-0                                    2/2     Running             0          96s
cattle-logging-system       rancher-logging-root-fluentd-configcheck-b55a4e4c                 0/1     Completed           0          100s

For the v1.1.0 release, we may consider providing the manual workaround solution here if users encounter it, further investigation and solution can be done via the v1.1.1 release, thanks.

Close due to un-reproduce. Please reopen if see this again.


Add example programs to cargo for ease of building/running

This is quite a simple PR, but makes it a bit easier for newcomers to quickly try out the examples in this project. After this change, it's possible to simply run (for example):
cargo run --bin transcode-audio <input.mp3> <output.wav>

Cargo has builtin support for running examples:
cargo run --example <name of example>

Oops, my bad! I completely forgot that the examples directory was magic. My bad!


Regions

Simple question. what is the purpose of regions? I added a second CS instance to my setup, mgmt,compute and db. I followed the documentation to add my two CS environments as region to each other. I can see that region A has been added to region B and vice versa, but I dont see resources from region A on region B or from region B on region A. if I log into region A mgmt UI and try to create an instance, am I supposed to get an option to choose a zone from region B if I want to create an instance there?
I assumed it was similar to a public cloud like AWS where you can choose different datacenters from a single web UI. am I wrong?

This is largely an unsupported feature, right now it's serves as a bookmark to other mgmt server. Please ask questions or discuss them on the users ML list instead: http://cloudstack.apache.org/mailing-lists.html
Thanks.


2639: fix Linear Algebra links, and add Introduction to Proofs book

Resolves https://github.com/EbookFoundation/free-programming-books/issues/2639
Summary:

fix link for Linear Algebra
add Introduction to Proofs

Thank you @lightbringer1991  and @jimhefferon!


LoRA: Remove ORTTrainer support, embedding resize, eval_dataset_size, duplicate examples

Describe your changes
Data:

Rename label_cols to label_col and make its type string. We only use label_cols[0] which makes the name and list typing confusing

LoRA/QLoRA:

Remove smart_tokenizer_and_embedding_resize which was used to add a pad_token if not present. This was copied from the original qlora implementation, but it is unnecessary and not efficient. Most training scripts use the eos_token as pad_token. This is fine as long as the attention mask and labels are correctly masked.
Remove eval_dataset_size option which was used to split train data into train and eval. this is a specific use case which is supported using data configs that use slices of the train data. We want to remove as much of the data processing logic from the pass to make it generic
Data collator is kept for now since the trainer has its own batch size (which depends on batch size params as well as number of gpus). It is more generic now.
Remove support for ORTTrainer. This feature is not used and hasn't been validated for newer models or transformers version.
Remove phi and open_llama qlora examples since these are copies of the examples for llama, phi2 and phi3. Keep multiple copies of essentially the same workflow is hard to maintain when we make changes.
Other lora examples updated to remove redundant options.

Checklist before requesting a review

[ ] Add unit tests for this change.
[ ] Make sure all tests can pass.
[ ] Update documents if necessary.
[ ] Lint and apply fixes to your code by running lintrunner -a
[ ] Is this a user-facing change? If yes, give a description of this change to be included in the release notes.
[ ] Is this PR including examples changes? If yes, please remember to update example documentation in a follow-up PR.

(Optional) Issue link

/azp run

Will split into multiple PRs


github-pr-resource retroactively builds for PRs that have already been merged

Most likely I'm just misunderstanding how this specific resource works, or concourse resources work in general. But here's what I'm seeing:
I created a pipeline to run tests for PRs. I opened a PR, it ran the tests, I merged the PR. Then I added a new job to the pipeline - and Concourse ran that job on the "open" version of the PR, even though the PR had already been merged.
Also, when looking at the resource in the Concourse UI, I see all the previous versions, and they appear to be OPEN even though viewing the metadata shows the state as MERGED.
So my questions:

How do I ensure that if I add a job, it doesn't get run for old versions of a PR that have already been closed?
Is there  away to automatically clear out the PR versions once they've been merged? (is that necessary / useful?)

With year of experience, I can tell you for sure that this resource executes jobs on "open" PRs only. You might have misunderstood what you've seen in the Concourse UI.
Anyway, recent news is that the Cloud Foundry community is now maintaining a fork of this resource at cloudfoundry-community/github-pr-resource.
On our Concourse installation at Gstack, that one is working fine. You may be interested in giving a try!
(the new resource is a drop-in replacement; you only have to switch telia-ossto cfcommunity in in the resource_types: declaration, i.e. specify repository: cfcommunity/github-pr-resource)


Add kodadot v2 logo

Add it to main and main-nuxt
Replace old logo where needed
The best would be if we can have SVG, but this works for now! :)
Then we can update branding on Twitter &s
UI kit for v3 https://www.figma.com/file/XEiqGUitNgIFE0AIgA6XAx/KodaDot_Design-Kit?node-id=40%3A107

Oh, well, rather over delivery, than under-delivery, let's go with v3 then! 😄


Adjust syndicate message system to accommodate work flow management between transcribers, checkers, validators and coordinators

Transcribers inform their coordinator when the csv file is ready for proofreading. The coordinator assigns a proof reader to review the file.
The coordinator assigns a proof reader to review the file.
The proof reader informs the Coordinator that the file is ready for validation.
The coordinator assigns a validator (Often the Coordinator themselves or one of their
trusted helpers that the Coordinator has trained)
The validator inform the coordinator when they are satisfied with the file.
E0 U6 S8 C6: P20

@geoffj-FUG another one for you to consider - do we need anything?

Rich
This is probably a file note on a To Do list. I see the date and it would have been well in the future when it was made.
We are working on it now. Please leave it Open.
Geoff
From: Rich Pomfret<EMAIL_ADDRESS>Sent: Tuesday, August 18, 2020 2:51 AM
To: FreeUKGen/FreeCENMigration<EMAIL_ADDRESS>Cc: geoffj-FUG<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [FreeUKGen/FreeCENMigration] Adjust syndicate message system to accommodate work flow management between transcribers, checkers, validators and coordinators (#813)
@geoffj-FUG https://github.com/geoffj-FUG  another one for you to consider - do we need anything?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/FreeUKGen/FreeCENMigration/issues/813#issuecomment-674992067 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKCPIFLWY5TEFODCVD6JLKTSBFNXPANCNFSM4KYW43KQ .  https://github.com/notifications/beacon/AKCPIFNPW6OVYX55GIXOCJ3SBFNXPA5CNFSM4KYW43K2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOFA5Y7QY.gif

Moving to in progress and removbing urgent flag as it is being worked on now.

@geoffj-FUG  is this story still appropriate? What, if anything, remains to be done?

Pat
This is the issue that I mentioned on the pre cutover FreeCEN site. At the moment the mailing list is restricted to specialized roles only.
On the test3 site I sent a message to the Somerset syndicate and received replies that it was working OK. So the test 3 version is more useful and will presumably migrate this week.
The facility is useful for sending out information. At the moment I have been using the message boards to send out info. But there are people out there who are not subscribed to the message boards. They are still in the dark.
So yes it is still needed. As to whether more work needs to be done is down to post cutover testing. If it works OK, and it seems to, it still needs the clunkiness taken out of it.
Geoff
From: PatReynolds<EMAIL_ADDRESS>Sent: Friday, November 27, 2020 7:18 PM
To: FreeUKGen/FreeCENMigration<EMAIL_ADDRESS>Cc: geoffj-FUG<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [FreeUKGen/FreeCENMigration] Adjust syndicate message system to accommodate work flow management between transcribers, checkers, validators and coordinators (#813)
@geoffj-FUG https://github.com/geoffj-FUG  is this story still appropriate? What, if anything, remains to be done?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/FreeUKGen/FreeCENMigration/issues/813#issuecomment-734732596 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AKCPIFJPKB2THK2GSG353ITSR5VD3ANCNFSM4KYW43KQ .  https://github.com/notifications/beacon/AKCPIFLL3RP3EA2EYAUANCTSR5VD3A5CNFSM4KYW43K2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOFPFSCNA.gif

Hi @geoffj-FUG is this still a live issue?

Whether this is a live issue is a policy question.
As previously said the system is clunky. It is OK for a Coordinator to contact a whole syndicate but too difficult to contact just one person.
Email is used by everyone, it is reasonably simple and everyone knows how to use it. More inportantly it works. That is what is used at the moment for communication between Coordinators and Volunteers.
I see it as very low priority and can be put on Ice. However if we do that it will sit for a long time. So back to my first comment - it depends on policy.
Geoff


[SourceKit] XML escape Swift declarations from Clang modules

When producing the SourceKit XML doc comment field as part of docInfo or cursorInfo for an imported decl, the Swift declaration is not XML-escaped.  This causes problems for downstream tools trying to parse the XML.
Simple change here to do the escaping.
@nkcsgexi could you take a look please?

@swift-ci please smoke test

@swift-ci Please clean test Linux platform

thanks!


Is this the bug in your code ？ I cannot find te block_size[0] in s_DeepAnat_trainGAN.py

gtrain_output_tag = np.ones((batch_size_train, block_size[0] * 3, 1)) * label_smoothing_factor
gtest_output_tag = np.ones((batch_size_test, block_size[0] * 3, 1)) * label_smoothing_factor

where does this block_size[0] come from??

Hi, we split the image volume into smaller blocks to comply with the GPU memory limit. In our study block_size = [64,64,64].


I Structured the format of run_bot and make some additions.

Refactored run_bot Function
This update enhances the run_bot function by improving its structure and robustness. Key changes include:
Clear Documentation: Added docstrings to outline the function's purpose, parameters, and return values.
Error Handling: Implemented exception handling to manage potential errors gracefully.
Logging: Introduced logging for better tracking of operations and error messages.

@Shalinis19137 , always follow the guidelines. Please create an issue and then have a PR linked to it.

Sorry sir .

Sorry sir .
@Shalinis19137
no worries, please work on task when you are assigned or you have suggested anything new in issue section , else your handwork will be in vain.
Could you please create issue and linked this PR??
Will test and approve it all good. Thanks.


It does not seem like the   storage: "indexeddb" worked

I have tried adding a worker to a single channel without calling start(). Expect to see some data in my indexedb inspector from chrome but there is nothing. Am I missing anything? Thanks

Hi @y25zhao
Just supports localstorage and inmemory storage types. Old information is left in documentation. You need custom driver for using indexxeddb storage. I will fix the docs.
See: Custom storage driver

You can use localforage to create a custom driver for indexeddb.

Just did that and it works like a charm. BTW, your work is very neat! 👍

Thanks @y25zhao


Bola 1984

About the PR

I hate bolas, literally why doesn't sec use bolas instead of stun batons  and disablers? What about the populace's stunprod? There is no use for the stunprod since bolas are just that much better. Throw two at someone and there you go, you've got a cuffed crew member. It's that easy!
Why / Balance

This probably most definitely needs discussion but idk why bolas do stamina damage, they're supposed to make you slow, though I can understand the idea of someone tripping on them. I'd love to see stunprods used instead, but everyone just resorts to throwing 2 bolas at you super fast. I was thinking of making them deal like 20 stamina damage instead, but I was also just thinking no stam damage might make sense. Honestly a better fix for this would be to put a cooldown on thrown items but idk how to do that :trollface:
Technical details

line change
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

local spessman entangled in a bajillion bolas

Breaking changes

Changelog

:cl: Skarlet

tweak: Bolas do not deal stamina damage anymore.

maybe because the three metal balls composing the bolas hit your leg at the same time numbing them near instantly?

Leaving this for discussion by people who know bolas better than I do, but I do wanna say that nobody uses stunprods because they're completely awful. They do 20 stamina damage (you need to hit someone 5 times) and only have 5 charges.

I don't have an issue with bolas dealing stamina damage (again I'd like to see discussion), what I have an issue with is this.
https://github.com/space-wizards/space-station-14/assets/122584947/761f91ec-447f-43d6-9c0b-fdf3522633dd

I don't have an issue with bolas dealing stamina damage (again I'd like to see discussion), what I have an issue with is this.

Pretty sure you can dk the exact same thing with a turned on stun baton. Obviously those are harder to get, but it does seem the underlying issue here is the ability to quickly throw items like that.

Pretty sure you can do the exact same thing with a turned on stun baton. Obviously those are harder to get, but it does seem the underlying issue here is the ability to quickly throw items like that.

Which I brought up in #17226, throwing need a cooldown regardless of the keybinding issue

you can do that without macros or "macros" just by pressing x to throw 2 in quick succession
bolas should purely be slowdown tho not stun either way

Comparatively, the stun baton was also already nerfed ( #20970 )because one could easily throw two of them et voila. It would make sense, even if just for parity, to increase the amount of hits you need to three.
Functionally, it would make sense that it deals some stamina damage (see the "tripping" effect), but the slowdown is the main reason I would personally use a bola, as the doafter to remove it is lengthy as well.
Balance-wise, I have nothing to bring to the table as I do not believe I have used bolas enough to bring a significant contribution.

Pretty sure you can do the exact same thing with a turned on stun baton. Obviously those are harder to get, but it does seem the underlying issue here is the ability to quickly throw items like that.

True, you can! But you can't craft batons.

Bola damage is le bad, but as of right now they only really work as a defensive tool. THROWING SUCKS.
If you plan to do any offensive use of the bola, might aswell reformat your harddrive because thats both more useful, and more interesting.
I think the bola rework is fine; but this kills any applicability of bolas in offensive scenarios, which SUCKS!!!

 It's CONVENIENT, it's an easy to get stun weapon because it's crafting recipe is so cheap. You just need 5 Lv and 6 steel, which is super easy to acquire.

What about the populace's stunprod?
There is no use for the stunprod since bolas are just that much better.
I'd love to see stunprods used instead
https://github.com/space-wizards/space-station-14/issues/21197#issuecomment-1776132041

bolas

Break
"Weigh" 20 per single bola
Require to be crafted individually using handcuffs and steel
Awful at chasing, per current throwing mechanics when the target is running from you

but

Good when being chased
Debilitating in maint choke points

I'm somewhat against this.
Only somewhat because this is just a bandaid.
Bola's take a lot of space in your bag, they take time & resources to create & they break & people can remove them while moving (intended).
Outside of the bag space maybe being a bit weird, these all are fine counter balances to Bola.
Now the real first fix is #21282
The second real fix is to make sure Bola's can't deal Stamina damage if there's already one attached.
The third real fix is to have an actual knockdown system that isn't reliant on stamina damage or hardstuns.
And the final fix is to have throwing cost a minimal amount of stamina (especially if Fix 1 isn't implemented)

Now the real first fix is https://github.com/space-wizards/space-station-14/pull/21282

People can just switch hands, this isn't really about people using hotkeys

The second real fix is to make sure Bola's can't deal Stamina damage if there's already one attached.

This would be awesome but I'm not well versed enough to implement this or any of the other fixes you suggested

grudge pr

ok

Require to be crafted individually using handcuffs and steel

As previously mentioned it's 5 lv cable and 6 steel

Having to land two (2) bolas to stun someone puts them at the position of the second-best stun of the game, only surpassed by the T3 tech tasers, this doesn't include chems or slippery objects.
As it stands throwing cooldowns, improvements, key remapping limitations or anything of the like will not solve the issue of bolas being a two hit stun that if you cannot land at medium-long range you can just toss them at the silly individual next to you and K.O. them alike a baton.

Removing something from your inventory should have a 1-2 second delay before being able to use it, just like swapping weaponry. Macros and hotkey double-binding has nothing to do with me being able to press C + Q three times in a row, click on handcuffs, then cuff someone.
Bolas should slow and not stun.

Removing something from your inventory should have a 1-2 second delay before being able to use it, just like swapping weaponry. Macros and hotkey double-binding has nothing to do with me being able to press C + Q three times in a row, click on handcuffs, then cuff someone.
Bolas should slow and not stun.

No, removing/putting into storage should not and will not have a do after.

Finally!

No, removing/putting into storage should not and will not have a do after.

delay not doafter

https://github.com/space-wizards/space-station-14/pull/21340 is pro so i'm closing this, discussion can prob move there


open problems for spyder

<!---   *** BEFORE SUBMITTING: PASTE CLIPBOARD HERE TO COMPLETE YOUR REPORT ***   ---!>

Closing because this is empty.


Insertion sort added with docs and interactive script

Hacktoberfest 🎃 🎉 #2

Thank you for contributing to Algorithms/python, we are happy to merge your pull request but first, it needs to fix:
Can you please:

move the algorithm directly into /sorting and remove a folder for it!
all docs for algorithms should be added to AllAlgorithms/algorithms (you should open a pull request there ;))

we are waiting for your changes

Make sure that you ⭐ the project 🤓, and continue helping us!

Done @abranhe!

This pull request will be closed since #7


Updating service image should also update container name prefix

As an example update service image from "mysql" to "postgres". The container names still have the "mysql" prefix.
docker service update --image=postgres mysql

core@ip-10-0-0-238 ~ $ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED              STATUS              PORTS               NAMES
a0276252cbe4        postgres:latest     "/docker-entrypoint.s"   50 seconds ago       Up 48 seconds       5432/tcp            mysql.9.cuhuwsp8ovcm04ogdp6lhrl33
2b453d0a23d8        postgres:latest     "/docker-entrypoint.s"   About a minute ago   Up About a minute   5432/tcp            mysql.5.ct1rhuev7x35q98mqnpf3wuw1
core@ip-10-0-0-238 ~ $

Keeping the container name prefix is fine as it is based on service name. May close issue.

@dvohra Glad you figured that out on your own!


Adding methods that will return ios driver and android driver

Currently, there is no way to access AndroidDriver and IOSDriver methods using Conductor. An example is this is AndroidDriver().currentActivity. This commit will add two methods one of each returning AndroidDriver and IOSDriver allowing access to those built in methods.

@swarnock89 Are these new methods still needed?


[Conductor UI]: Do while is not showing looped lambda task for each iteration in UI under task details but works fine

Scenario: I have looped an Http and Lambda task in Do While.
When: On executing do-while
Excepted Result: For every iteration, Conductor UI's task details tab should show Http and Lambda tasks.
Actual Result: For every iteration, Conductor UI's task details tab shows Http task only. It shows the Lambda task for first iteration only.
However, the working of the Lambda task is fine. The input of http task is dependent on Lambda task and for each iteration of http task, I can see a proper input.
Example

Hi @simarpal , This is being discussed in another thread. It looks like sequence number issue. That is the reason you are not able to see the tasks. You can check do_while task output there you will see all the output.

Hi @manan164, Thanks for the reply.
Yes, in do while output I can see the lambda task response.
Can you please tell me the issue number in which this is discussed and will there will be a fix for this.

@simarpal Thanks for reporting the issue. We will look into releasing a fix soon. In the meantime, please feel free to contribute a fix for this.


refactor(useQueries): export QueriesOptions type

export the QueriesOptions type
closes #3250

:tada: This PR is included in version 3.34.13 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 4.0.0-alpha.10 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[hosted] Add server related pages to checklinks-whitelist

So that CI accepts these missing "pages".
Note that the pages are actually there. What is missing is the headers
(as the content is replaced) but the chechlinks tool does not support
white listing only these atm.

Re-submitted at #1046


LayoutReader: why masking the tokens to predict?

Why using the pseudo inputs to mask the tokens to predict instead of using the target tokens directly?
I think this training setting is not mentioned in the paper.

Thank you for your interests in LayoutReader. Token masking is a popular way in LM pre-training to improve the model robustness. Similar to the mask language model in BERT, we also follow UNILM's pre-training settings which includes pseudo inputs. If you have further questions about the training settings, please refer to the paper https://arxiv.org/pdf/1905.03197.pdf


Bluetooth / WiFi not working properly on certain RockPi devices

We have a few RockPi units where Bluetooth and WiFi isn't being detected / drivers not loaded:
https://dashboard.balena-cloud.com/devices/963415259c442625fc5f5ac241f48578/summary
https://dashboard.balena-cloud.com/devices/abbd40dba563c6cef3ae9647a074f196/summary
And here are two devices with it working:
https://dashboard.balena-cloud.com/devices/decd291de4ca5e8189a6aa5a4668f50d/summary
https://dashboard.balena-cloud.com/devices/79966c99632cdf13cedb3831e8d83c53/summary
However it seems to be temperamental whether it works or not so I'm wondering whether it could be a power issue due to using power supplies that can't provide enough power to the device.

Related to: https://github.com/balena-os/balena-rockpi/issues/28
Related to: https://forum.radxa.com/t/rock-pi-4b-wifi-bt-not-working-properly/8017/4

Cc @vpetersson @posterzh

Some logs:
root@9634152:~# dmesg | grep blue
[    4.028548] of_get_named_gpiod_flags: parsed 'uart_rts_gpios' property of node '/wireless-bluetooth[0]' - status (0)
[    4.028552] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: uart_rts_gpios = 83.
[    4.030442] of_get_named_gpiod_flags: can't parse 'BT,power_gpio' property of node '/wireless-bluetooth[0]'
[    4.030455] of_get_named_gpiod_flags: parsed 'BT,reset_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    4.030458] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,reset_gpio = 9.
[    4.032282] of_get_named_gpiod_flags: parsed 'BT,wake_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    4.032285] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_gpio = 91.
[    4.034105] of_get_named_gpiod_flags: parsed 'BT,wake_host_irq' property of node '/wireless-bluetooth[0]' - status (0)
[    4.034109] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_host_irq = 4.

root@9634152:~# dmesg | grep bt
[    3.655234] usbcore: registered new interface driver usbtouchscreen
[    3.780812] rockchip-iodomain ff770000.syscon:io-domains: Looking up bt656-supply from device tree
[    3.809038] usbcore: registered new interface driver btusb
[    4.036479] [BT_RFKILL]: Request irq for bt wakeup host
[    4.039628] [BT_RFKILL]: bt_default device registered.
[    4.054872] BTRFS: selftest: Running btrfs free space cache tests
[    4.065078] BTRFS: selftest: Running btrfs_split_item tests
[    4.195729] BTRFS: selftest: Running btrfs_get_extent tests
[    4.197332] BTRFS: selftest: Running hole first btrfs_get_extent test
[   19.676047] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   19.843919] [BT_RFKILL]: bt turn on power
[   20.055529] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   20.230393] [BT_RFKILL]: bt turn on power

root@9634152:~# dmesg | grep wifi
[    4.003636] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6256
[    4.005472] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control.
[    4.007344] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio.
[    4.011279] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found !
[   19.462173] [WLAN_RFKILL]: rockchip_wifi_get_oob_irq: Enter
[   19.480840] dhd_wifi_platform_load: Enter
[   19.499298] wifi_platform_set_power = 1
[   19.519130] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   19.523932] [WLAN_RFKILL]: wifi turn on power. -1
[   19.829743] wifi_platform_bus_enumerate device present 1
[   21.851997] wifi_platform_set_power = 0
[   21.856043] [WLAN_RFKILL]: rockchip_wifi_power: 0
[   21.858660] [WLAN_RFKILL]: wifi shut off power.
[   21.860620] wifi_platform_bus_enumerate device present 0
[   21.876370] wifi_platform_set_power = 1
[   21.878198] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   21.878202] [WLAN_RFKILL]: wifi turn on power. -1
[   22.181676] wifi_platform_bus_enumerate device present 1
[   24.205728] wifi_platform_set_power = 0
[   24.213138] [WLAN_RFKILL]: rockchip_wifi_power: 0
[   24.221626] [WLAN_RFKILL]: wifi shut off power.
[   24.225370] wifi_platform_bus_enumerate device present 0
[   24.277289] unregister wifi platform drivers
[   24.281247] wifi_platform_bus_enumerate device present 0

root@abbd40d:~# dmesg | grep wlan
[    4.023821] [WLAN_RFKILL]: Enter rfkill_wlan_init
[    4.025671] [WLAN_RFKILL]: Enter rfkill_wlan_probe
[    4.027348] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6256
[    4.029164] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control.
[    4.031030] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio.
[    4.032893] of_get_named_gpiod_flags: can't parse 'WIFI,poweren_gpio' property of node '/wireless-wlan[0]'
[    4.032897] of_get_named_gpiod_flags: can't parse 'WIFI,vbat_gpio' property of node '/wireless-wlan[0]'
[    4.032901] of_get_named_gpiod_flags: can't parse 'WIFI,reset_gpio' property of node '/wireless-wlan[0]'
[    4.032926] of_get_named_gpiod_flags: parsed 'WIFI,host_wake_irq' property of node '/wireless-wlan[0]' - status (0)
[    4.032930] [WLAN_RFKILL]: wlan_platdata_parse_dt: get property: WIFI,host_wake_irq = 3, flags = 0.
[    4.034935] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found !
[    4.047055] [WLAN_RFKILL]: rfkill_wlan_probe: init gpio
[    4.048683] [WLAN_RFKILL]: Exit rfkill_wlan_probe
[   21.545968] ======== dhd_wlan_init_plat_data ========
[   21.550616] dhd_wlan_init_gpio: GPIO(WL_REG_ON) = -1
[   21.555220] dhd_wlan_init_gpio: GPIO(WL_HOST_WAKE) = -1
[   21.564551] dhd_wlan_init_gpio: host_oob_irq: 66
[   21.569116] dhd_wlan_init_gpio: host_oob_irq_flags=0x414
[   26.469322] ======== dhd_wlan_deinit_plat_data ========

On working device:
root@79966c9:~# dmesg | grep bt
[    2.946091] usbcore: registered new interface driver usbtouchscreen
[    3.071780] rockchip-iodomain ff770000.syscon:io-domains: Looking up bt656-supply from device tree
[    3.100013] usbcore: registered new interface driver btusb
[    3.327635] [BT_RFKILL]: Request irq for bt wakeup host
[    3.330785] [BT_RFKILL]: bt_default device registered.
[    3.345554] BTRFS: selftest: Running btrfs free space cache tests
[    3.355804] BTRFS: selftest: Running btrfs_split_item tests
[    3.508239] BTRFS: selftest: Running btrfs_get_extent tests
[    3.510088] BTRFS: selftest: Running hole first btrfs_get_extent test
[   18.260458] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   18.482617] [BT_RFKILL]: bt turn on power
[   18.703080] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   18.871157] [BT_RFKILL]: bt turn on power
root@79966c9:~# dmesg | grep blue
[    3.319774] of_get_named_gpiod_flags: parsed 'uart_rts_gpios' property of node '/wireless-bluetooth[0]' - status (0)
[    3.319778] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: uart_rts_gpios = 83.
[    3.321665] of_get_named_gpiod_flags: can't parse 'BT,power_gpio' property of node '/wireless-bluetooth[0]'
[    3.321679] of_get_named_gpiod_flags: parsed 'BT,reset_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    3.321682] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,reset_gpio = 9.
[    3.323511] of_get_named_gpiod_flags: parsed 'BT,wake_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    3.323514] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_gpio = 91.
[    3.325339] of_get_named_gpiod_flags: parsed 'BT,wake_host_irq' property of node '/wireless-bluetooth[0]' - status (0)
[    3.325343] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_host_irq = 4.
root@79966c9:~# dmesg | grep wlan
[    3.289705] [WLAN_RFKILL]: Enter rfkill_wlan_init
[    3.291543] [WLAN_RFKILL]: Enter rfkill_wlan_probe
[    3.294831] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6256
[    3.296656] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control.
[    3.298524] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio.
[    3.300386] of_get_named_gpiod_flags: can't parse 'WIFI,poweren_gpio' property of node '/wireless-wlan[0]'
[    3.300391] of_get_named_gpiod_flags: can't parse 'WIFI,vbat_gpio' property of node '/wireless-wlan[0]'
[    3.300394] of_get_named_gpiod_flags: can't parse 'WIFI,reset_gpio' property of node '/wireless-wlan[0]'
[    3.300420] of_get_named_gpiod_flags: parsed 'WIFI,host_wake_irq' property of node '/wireless-wlan[0]' - status (0)
[    3.300423] [WLAN_RFKILL]: wlan_platdata_parse_dt: get property: WIFI,host_wake_irq = 3, flags = 0.
[    3.302461] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found !
[    3.304315] [WLAN_RFKILL]: rfkill_wlan_probe: init gpio
[    3.305973] [WLAN_RFKILL]: Exit rfkill_wlan_probe
[   17.937458] ======== dhd_wlan_init_plat_data ========
[   17.939933] dhd_wlan_init_gpio: GPIO(WL_REG_ON) = -1
[   17.942268] dhd_wlan_init_gpio: GPIO(WL_HOST_WAKE) = -1
[   17.946985] dhd_wlan_init_gpio: host_oob_irq: 66
[   17.949158] dhd_wlan_init_gpio: host_oob_irq_flags=0x414
[   18.541357] Register interface [wlan0]  MAC: b0:02:47:93:8a:ef
[   20.731774] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   23.372454] wlan0: set cur_etheraddr failed
root@79966c9:~# dmesg | grep wifi
[    3.294831] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6256
[    3.296656] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control.
[    3.298524] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio.
[    3.302461] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found !
[   17.944584] [WLAN_RFKILL]: rockchip_wifi_get_oob_irq: Enter
[   17.951443] dhd_wifi_platform_load: Enter
[   17.978833] wifi_platform_set_power = 1
[   17.983252] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   17.985444] [WLAN_RFKILL]: wifi turn on power. -1
[   18.289354] wifi_platform_bus_enumerate device present 1
[   18.544137] wifi_platform_set_power = 0
[   18.544143] [WLAN_RFKILL]: rockchip_wifi_power: 0
[   18.544166] [WLAN_RFKILL]: wifi shut off power.
[   20.738119] wl_android_wifi_on in 1
[   20.753239] wl_android_wifi_on in 2: g_wifi_on=0
[   20.754798] wifi_platform_set_power = 1
[   20.757763] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   20.759259] [WLAN_RFKILL]: wifi turn on power. -1
[   21.914364] dhd_get_memdump_info: File [/data/misc/wifi/.memdump.info] doesn't exist
[   22.049774] wl_android_wifi_on: Success
[   22.106345] wl_android_wifi_off in 1
[   22.109028] wl_android_wifi_off in 2: g_wifi_on=1, on_failure=1
[   22.148577] wifi_platform_set_power = 0
[   22.153096] [WLAN_RFKILL]: rockchip_wifi_power: 0
[   22.155624] [WLAN_RFKILL]: wifi shut off power.
[   22.157882] wl_android_wifi_off out
[   22.272991] wl_android_wifi_on in 1
[   22.275085] wl_android_wifi_on in 2: g_wifi_on=0
[   22.277232] wifi_platform_set_power = 1
[   22.281431] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   22.283488] [WLAN_RFKILL]: wifi turn on power. -1
[   23.228453] dhd_get_memdump_info: File [/data/misc/wifi/.memdump.info] doesn't exist
[   23.345950] wl_android_wifi_on: Success

FYI https://forum.radxa.com/t/rock-pi-4b-wifi-bt-not-working-properly/8017

Looks like this has been fixed upstream.
I upgraded the OS on my affected miner, and the diagnostics container appears to think that both Bluetooth and WiFi is now working:
{
  "AN": "[redacted]",
  "APPNAME": "ROCK Pi",
  "BA": "HELIUM-TESTNET-ROCKPI",
  "BCH": 1133733,
  "BN": "large-waterfall",
  "BSP": 100,
  "BT": true,
  "BUTTON": 154,
  "CELLULAR": false,
  "E0": "[redacted]",
  "ECC": true,
  "ECCOB": true,
  "FR": "868",
  "FRIENDLY": "Nebra ROCK Pi 4 Indoor",
  "FW": "2<IP_ADDRESS>",
  "ID": "[redacted]",
  "LOR": true,
  "LTE": false,
  "MAC": "eth0",
  "MC": true,
  "MD": true,
  "MH": 1133733,
  "MN": "symmetric",
  "MR": true,
  "MS": true,
  "OK": "[redacted]",
  "PF": true,
  "PK": "[redacted]",
  "RE": "EU868",
  "RESET": 149,
  "SPIBUS": "spidev32766.0",
  "STATUS": 156,
  "TYPE": "Full",
  "VA": "NEBHNT-HHRK4",
  "W0": "[redacted]",
  "last_updated": "13:33 UTC 10 Dec 2021",
  "serial_number": "[redacted]"
}

That said, I'm still unable to onboard the device:

@posterzh Do you have any ideas here?

@vpetersson I think that is because you don't have a proper antenna connected to it.
I managed to onboard mine over Bluetooth. Will try another one tomorrow that I have at the office

@vpetersson I am working on this issue and checking the reason of the error message.

I did have a similar issue on a pi 4 where it just shows disconnected when you try to connect. But I couldn't reproduce that on any of the RockPi units I have here

@vpetersson can you visually check the version of the RockPi that you have this running on?
And also can you check the part number etched onto the WiFi/BT chipset?

Mine is V1.72 (large-windfall on Balena).

Can you check the WiFi/BT chipset too @vpetersson just for reference?

@shawaj @vpetersson @posterzh unfortunately,  I'm getting inconsistent BT results on my newer ROCK Pi.

initFile.txt does not correctly detect BT

# curl localhost:5000/initFile.txt | base64 -d
{"diagnostics_passed": false, "errors": ["BN", "LOR", "PF"], "serial_number": "X", "ECC": true, "E0": "X", "eth_mac_address": "X", "W0": "X", "wifi_mac_address": "X", "BN": "Env var BALENA_DEVICE_NAME_AT_INIT not set", "BALENA_DEVICE_NAME_AT_INIT": "Env var BALENA_DEVICE_NAME_AT_INIT not set", "ID": "X", "BALENA_DEVICE_UUID": "X", "BA": "HELIUM-INDOOR-915-rockpi", "BALENA_APP_NAME": "HELIUM-INDOOR-915-rockpi", "FR": "915", "FREQ": "915", "FW": "2<IP_ADDRESS>", "FIRMWARE_VERSION": "2<IP_ADDRESS>", "VA": "NEBHNT-HHRK4", "VARIANT": "NEBHNT-HHRK4", "BT": false, "LTE": false, "LOR": false, "lora": false, "OK": "X", "onboarding_key": "X", "PK": "X", "public_key": "X", "PF": false, "legacy_pass_fail": false}

dmesg is same as failures from Aaron above

root@888852e:~# dmesg | grep blue
[    3.986523] of_get_named_gpiod_flags: parsed 'uart_rts_gpios' property of node '/wireless-bluetooth[0]' - status (0)
[    3.986528] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: uart_rts_gpios = 83.
[    3.990015] of_get_named_gpiod_flags: can't parse 'BT,power_gpio' property of node '/wireless-bluetooth[0]'
[    3.990053] of_get_named_gpiod_flags: parsed 'BT,reset_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    3.990056] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,reset_gpio = 9.
[    3.991931] of_get_named_gpiod_flags: parsed 'BT,wake_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    3.991935] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_gpio = 91.
[    3.993800] of_get_named_gpiod_flags: parsed 'BT,wake_host_irq' property of node '/wireless-bluetooth[0]' - status (0)
[    3.993804] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_host_irq = 4.
root@888852e:~# dmesg | grep bt
[    3.606924] usbcore: registered new interface driver usbtouchscreen
[    3.741867] rockchip-iodomain ff770000.syscon:io-domains: Looking up bt656-supply from device tree
[    3.771370] usbcore: registered new interface driver btusb
[    3.996957] [BT_RFKILL]: Request irq for bt wakeup host
[    4.000185] [BT_RFKILL]: bt_default device registered.
[    4.016399] BTRFS: selftest: Running btrfs free space cache tests
[    4.026906] BTRFS: selftest: Running btrfs_split_item tests
[    4.157630] BTRFS: selftest: Running btrfs_get_extent tests
[    4.159281] BTRFS: selftest: Running hole first btrfs_get_extent test
[   20.091007] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   20.254280] [BT_RFKILL]: bt turn on power
[   20.506750] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   20.659330] [BT_RFKILL]: bt turn on power

Helium app detects device, but get Error: Device [E0 MAC] was disconnected when trying to connect.

This error message explains us that BLE disconnects immediately after connection.

Device in the error message means the BLE device in react-native-ble-plx library.
https://github.com/helium/hotspot-app/blob/3898ba06e858f24bca5322b89cc7e6e55cda756c/src/utils/bluetooth/useBluetooth.tsx#L2-L8

import {
  Base64,
  BleManager,
  Characteristic,
  Device,
  LogLevel,
} from 'react-native-ble-plx'

This error messages is made from an exception raised while the Helium mobile app is attempting to connect the BLE of miner.
https://github.com/helium/hotspot-app/blob/3898ba06e858f24bca5322b89cc7e6e55cda756c/src/utils/bluetooth/useBluetooth.tsx#L41-L54

  const connect = async (
    hotspotDevice: Device,
  ): Promise<Device | undefined> => {
    Logger.breadcrumb('Connect hotspot requested')

    try {
      const device = await hotspotDevice.connect({ refreshGatt: 'OnConnected' })
      Logger.breadcrumb('Hotspot Connected')
      return device
    } catch (e) {
      Logger.error(e)
      throw e
    }
  }

The reason of BLE disconnection can be:

Hardware issues
Interference
Low Signal
Low Sensitivity or Output Power
Timing mismatch between the two devices

This is the device with broken BT:
https://dashboard.balena-cloud.com/devices/888852e7a88c23d2b7cd59679d42c40c/summary

That's the same device as I got. It's a 1.72. Can you compare it to mine above and see if it responds differently?

My current understanding is that wifi/bt is working correctly but that /initFile is not using the new detection logic and is incorrectly returning false. I am working on a PR now with a fix.
Related to: https://github.com/NebraLtd/Hotspot-Production-Tool/issues/28

That's the same device as I got. It's a 1.72. Can you compare it to mine above and see if it responds differently?

@vpetersson does yours have the same WiFi chipset? AP6212?
I think this is the same / similar issue I was having on Raspberry Pi with some timing issue. I still can't get the BT to work with this on a Pi4.
@marvinmarnold the number 3 you mentioned above...

Helium app detects device, but get Error: Device [E0 MAC] was disconnected when trying to connect.

How do you think this relates to initFile.txt?

Zhang helped me find this issue, which is exactly what I'm talking about. Its now a blocker for HPT.

@shawaj @posterzh @vpetersson the only issue I'm still aware of was solved by https://github.com/NebraLtd/hm-diag/pull/272. Are there any other known issues related to BT/wifi?
Bluetooth is working for both of my devices. Wifi is definitely working on one. The other appears to be working too but I'll do some final tests after I onboard it with an end-to-end test.

@marvinmarnold ah ok makes sense 👍

And yeah I'm not aware of any other issues currently

BT/Wifi is working for the Rockpi miners reported above.

https://dashboard.balena-cloud.com/devices/963415259c442625fc5f5ac241f48578/summary
https://dashboard.balena-cloud.com/devices/abbd40dba563c6cef3ae9647a074f196/summary
https://dashboard.balena-cloud.com/devices/888852e7a88c23d2b7cd59679d42c40c/summary

@marvinmarnold and me checked this issues is fixed. I am closing now.

Some logs from non working devices:
root@9634152:~# dmesg | grep blue
[    4.028548] of_get_named_gpiod_flags: parsed 'uart_rts_gpios' property of node '/wireless-bluetooth[0]' - status (0)
[    4.028552] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: uart_rts_gpios = 83.
[    4.030442] of_get_named_gpiod_flags: can't parse 'BT,power_gpio' property of node '/wireless-bluetooth[0]'
[    4.030455] of_get_named_gpiod_flags: parsed 'BT,reset_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    4.030458] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,reset_gpio = 9.
[    4.032282] of_get_named_gpiod_flags: parsed 'BT,wake_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    4.032285] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_gpio = 91.
[    4.034105] of_get_named_gpiod_flags: parsed 'BT,wake_host_irq' property of node '/wireless-bluetooth[0]' - status (0)
[    4.034109] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_host_irq = 4.

root@9634152:~# dmesg | grep bt
[    3.655234] usbcore: registered new interface driver usbtouchscreen
[    3.780812] rockchip-iodomain ff770000.syscon:io-domains: Looking up bt656-supply from device tree
[    3.809038] usbcore: registered new interface driver btusb
[    4.036479] [BT_RFKILL]: Request irq for bt wakeup host
[    4.039628] [BT_RFKILL]: bt_default device registered.
[    4.054872] BTRFS: selftest: Running btrfs free space cache tests
[    4.065078] BTRFS: selftest: Running btrfs_split_item tests
[    4.195729] BTRFS: selftest: Running btrfs_get_extent tests
[    4.197332] BTRFS: selftest: Running hole first btrfs_get_extent test
[   19.676047] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   19.843919] [BT_RFKILL]: bt turn on power
[   20.055529] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   20.230393] [BT_RFKILL]: bt turn on power

root@9634152:~# dmesg | grep wifi
[    4.003636] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6256
[    4.005472] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control.
[    4.007344] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio.
[    4.011279] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found !
[   19.462173] [WLAN_RFKILL]: rockchip_wifi_get_oob_irq: Enter
[   19.480840] dhd_wifi_platform_load: Enter
[   19.499298] wifi_platform_set_power = 1
[   19.519130] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   19.523932] [WLAN_RFKILL]: wifi turn on power. -1
[   19.829743] wifi_platform_bus_enumerate device present 1
[   21.851997] wifi_platform_set_power = 0
[   21.856043] [WLAN_RFKILL]: rockchip_wifi_power: 0
[   21.858660] [WLAN_RFKILL]: wifi shut off power.
[   21.860620] wifi_platform_bus_enumerate device present 0
[   21.876370] wifi_platform_set_power = 1
[   21.878198] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   21.878202] [WLAN_RFKILL]: wifi turn on power. -1
[   22.181676] wifi_platform_bus_enumerate device present 1
[   24.205728] wifi_platform_set_power = 0
[   24.213138] [WLAN_RFKILL]: rockchip_wifi_power: 0
[   24.221626] [WLAN_RFKILL]: wifi shut off power.
[   24.225370] wifi_platform_bus_enumerate device present 0
[   24.277289] unregister wifi platform drivers
[   24.281247] wifi_platform_bus_enumerate device present 0

root@abbd40d:~# dmesg | grep wlan
[    4.023821] [WLAN_RFKILL]: Enter rfkill_wlan_init
[    4.025671] [WLAN_RFKILL]: Enter rfkill_wlan_probe
[    4.027348] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6256
[    4.029164] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control.
[    4.031030] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio.
[    4.032893] of_get_named_gpiod_flags: can't parse 'WIFI,poweren_gpio' property of node '/wireless-wlan[0]'
[    4.032897] of_get_named_gpiod_flags: can't parse 'WIFI,vbat_gpio' property of node '/wireless-wlan[0]'
[    4.032901] of_get_named_gpiod_flags: can't parse 'WIFI,reset_gpio' property of node '/wireless-wlan[0]'
[    4.032926] of_get_named_gpiod_flags: parsed 'WIFI,host_wake_irq' property of node '/wireless-wlan[0]' - status (0)
[    4.032930] [WLAN_RFKILL]: wlan_platdata_parse_dt: get property: WIFI,host_wake_irq = 3, flags = 0.
[    4.034935] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found !
[    4.047055] [WLAN_RFKILL]: rfkill_wlan_probe: init gpio
[    4.048683] [WLAN_RFKILL]: Exit rfkill_wlan_probe
[   21.545968] ======== dhd_wlan_init_plat_data ========
[   21.550616] dhd_wlan_init_gpio: GPIO(WL_REG_ON) = -1
[   21.555220] dhd_wlan_init_gpio: GPIO(WL_HOST_WAKE) = -1
[   21.564551] dhd_wlan_init_gpio: host_oob_irq: 66
[   21.569116] dhd_wlan_init_gpio: host_oob_irq_flags=0x414
[   26.469322] ======== dhd_wlan_deinit_plat_data ========

root@abbd40d:~# dmesg | grep wifi
[    4.027348] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6256
[    4.029164] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control.
[    4.031030] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio.
[    4.034935] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found !
[   21.560060] [WLAN_RFKILL]: rockchip_wifi_get_oob_irq: Enter
[   21.573666] dhd_wifi_platform_load: Enter
[   21.595825] wifi_platform_set_power = 1
[   21.615013] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   21.619697] [WLAN_RFKILL]: wifi turn on power. -1
[   21.925666] wifi_platform_bus_enumerate device present 1
[   23.963071] wifi_platform_set_power = 0
[   23.973253] [WLAN_RFKILL]: rockchip_wifi_power: 0
[   23.989564] [WLAN_RFKILL]: wifi shut off power.
[   23.994423] wifi_platform_bus_enumerate device present 0
[   24.037128] wifi_platform_set_power = 1
[   24.046122] [WLAN_RFKILL]: rockchip_wifi_power: 1
[   24.046130] [WLAN_RFKILL]: wifi turn on power. -1
[   24.353596] wifi_platform_bus_enumerate device present 1
[   26.376370] wifi_platform_set_power = 0
[   26.383792] [WLAN_RFKILL]: rockchip_wifi_power: 0
[   26.397070] [WLAN_RFKILL]: wifi shut off power.
[   26.400753] wifi_platform_bus_enumerate device present 0
[   26.465587] unregister wifi platform drivers
[   26.469312] wifi_platform_bus_enumerate device present 0

root@abbd40d:~# dmesg | grep wlan
[    4.023821] [WLAN_RFKILL]: Enter rfkill_wlan_init
[    4.025671] [WLAN_RFKILL]: Enter rfkill_wlan_probe
[    4.027348] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi_chip_type = ap6256
[    4.029164] [WLAN_RFKILL]: wlan_platdata_parse_dt: enable wifi power control.
[    4.031030] [WLAN_RFKILL]: wlan_platdata_parse_dt: wifi power controled by gpio.
[    4.032893] of_get_named_gpiod_flags: can't parse 'WIFI,poweren_gpio' property of node '/wireless-wlan[0]'
[    4.032897] of_get_named_gpiod_flags: can't parse 'WIFI,vbat_gpio' property of node '/wireless-wlan[0]'
[    4.032901] of_get_named_gpiod_flags: can't parse 'WIFI,reset_gpio' property of node '/wireless-wlan[0]'
[    4.032926] of_get_named_gpiod_flags: parsed 'WIFI,host_wake_irq' property of node '/wireless-wlan[0]' - status (0)
[    4.032930] [WLAN_RFKILL]: wlan_platdata_parse_dt: get property: WIFI,host_wake_irq = 3, flags = 0.
[    4.034935] [WLAN_RFKILL]: wlan_platdata_parse_dt: The ref_wifi_clk not found !
[    4.047055] [WLAN_RFKILL]: rfkill_wlan_probe: init gpio
[    4.048683] [WLAN_RFKILL]: Exit rfkill_wlan_probe
[   21.545968] ======== dhd_wlan_init_plat_data ========
[   21.550616] dhd_wlan_init_gpio: GPIO(WL_REG_ON) = -1
[   21.555220] dhd_wlan_init_gpio: GPIO(WL_HOST_WAKE) = -1
[   21.564551] dhd_wlan_init_gpio: host_oob_irq: 66
[   21.569116] dhd_wlan_init_gpio: host_oob_irq_flags=0x414
[   26.469322] ======== dhd_wlan_deinit_plat_data ========

root@abbd40d:~# dmesg | grep bt
[    3.679070] usbcore: registered new interface driver usbtouchscreen
[    3.805119] rockchip-iodomain ff770000.syscon:io-domains: Looking up bt656-supply from device tree
[    3.833466] usbcore: registered new interface driver btusb
[    4.060376] [BT_RFKILL]: Request irq for bt wakeup host
[    4.063507] [BT_RFKILL]: bt_default device registered.
[    4.078204] BTRFS: selftest: Running btrfs free space cache tests
[    4.088408] BTRFS: selftest: Running btrfs_split_item tests
[    4.218558] BTRFS: selftest: Running btrfs_get_extent tests
[    4.220156] BTRFS: selftest: Running hole first btrfs_get_extent test
[   21.800670] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   21.956178] [BT_RFKILL]: bt turn on power
[   22.194724] [BT_RFKILL]: rfkill_rk_set_power: set bt wake_host pin output high!
[   22.347822] [BT_RFKILL]: bt turn on power

root@abbd40d:~# dmesg | grep blue
[    4.052194] of_get_named_gpiod_flags: parsed 'uart_rts_gpios' property of node '/wireless-bluetooth[0]' - status (0)
[    4.052199] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: uart_rts_gpios = 83.
[    4.054065] of_get_named_gpiod_flags: can't parse 'BT,power_gpio' property of node '/wireless-bluetooth[0]'
[    4.054077] of_get_named_gpiod_flags: parsed 'BT,reset_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    4.054080] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,reset_gpio = 9.
[    4.055901] of_get_named_gpiod_flags: parsed 'BT,wake_gpio' property of node '/wireless-bluetooth[0]' - status (0)
[    4.055904] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_gpio = 91.
[    4.057719] of_get_named_gpiod_flags: parsed 'BT,wake_host_irq' property of node '/wireless-bluetooth[0]' - status (0)
[    4.057722] [BT_RFKILL]: bluetooth_platdata_parse_dt: get property: BT,wake_host_irq = 4.
[   38.254410] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf6f64ef8
[   38.255139] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf6f64ef8
[   38.255847] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf6f666c8
[   38.256553] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf7005080
[   38.257257] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf7005098
[   38.258055] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf6f64ef8
[   38.258765] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf6f666c8
[   38.259472] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf6f64ef8
[   38.260177] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf6f666c8
[   38.260882] "bluetoothctl" (2422) uses deprecated CP15 Barrier instruction at 0xf6f64ef8
[   58.273809] "bluetoothctl" (3719) uses deprecated CP15 Barrier instruction at 0xf7514ef8
[   58.274578] "bluetoothctl" (3719) uses deprecated CP15 Barrier instruction at 0xf7514ef8
[   58.275298] "bluetoothctl" (3719) uses deprecated CP15 Barrier instruction at 0xf75166c8
[   58.276014] "bluetoothctl" (3719) uses deprecated CP15 Barrier instruction at 0xf75b5080
[   58.276728] "bluetoothctl" (3719) uses deprecated CP15 Barrier instruction at 0xf75b5098
[   58.277550] "bluetoothctl" (3719) uses deprecated CP15 Barrier instruction at 0xf7514ef8
[   58.278276] "bluetoothctl" (3719) uses deprecated CP15 Barrier instruction at 0xf75166c8

facing the same issue , how do u solved the issue

@manojams you just need to leave plugged in to Ethernet and it will pick up the latest update

This is actually closed. This is the follow up ticket: https://github.com/NebraLtd/hm-config/issues/195

@shawaj @posterzh @vpetersson the only issue I'm still aware of was solved by NebraLtd/hm-diag#272. Are there any other known issues related to BT/wifi?
Bluetooth is working for both of my devices. Wifi is definitely working on one. The other appears to be working too but I'll do some final tests after I onboard it with an end-to-end test.

I have an OrangePi3b with AP6256 ... wifi works with wl driver. But BT never works. lshw however detects BT

@shawaj Dear sir, please do spare some time to help me or share your firmware here. At least firmwares don't need any compiling... I need this SBC for process control where BT is essential


Logout bug

code
class LogoutView(APIView):
    """
    Calls Django logout method and delete the Token object
    assigned to the current User object.

    Accepts/Returns nothing.
    """
    permission_classes = (AllowAny,)

    def get(self, request, *args, **kwargs):
        if getattr(settings, 'ACCOUNT_LOGOUT_ON_GET', False):
            response = self.logout(request)
        else:
            response = self.http_method_not_allowed(request, *args, **kwargs)

        return self.finalize_response(request, response, *args, **kwargs)

    def post(self, request, *args, **kwargs):
        return self.logout(request)

    def logout(self, request):
        try:
            request.user.auth_token.delete()
        except (AttributeError, ObjectDoesNotExist):
            pass

        django_logout(request)

        return Response({"detail": _("Successfully logged out.")},
                        status=status.HTTP_200_OK)`

Details
Hello, the logout function does not work since it always gives that if I close session but it is not really capturing the data because the user that takes the request is always anonymous.
this part everithin is error
           try:                 request.user.auth_token.delete()             except (AttributeError, ObjectDoesNotExist):                 pass

I don't disagree that logout is bugged. I am having an issue with the logout as well. However, to not be anonymous on logout, you need to logout with your authentication method so logout knows which user you are to log you out.
In my case I am using:
 REST_FRAMEWORK = {
      'DEFAULT_AUTHENTICATION_CLASSES': (
         'rest_framework.authentication.SessionAuthentication',
      ),
     'DEFAULT_PERMISSION_CLASSES': (
         'rest_framework.permissions.IsAuthenticated',
        ),
}

To login (with curl) I use:
curl --request POST \
   --cookie "cookies.txt" \
   --cookie-jar "cookies.txt" \
   --url "http://localhost:8000/rest-auth/login/" \
   --header 'content-type: application/json' \
   --data "{\"username\":\"<username>\", \"password\":\"<password>\"}" -vvv

And I get a {"key": "<key>"} (with some user info within the payload as well that are not relevant for this topic).
 I would also go as far as saying that the login should probably delete the token before creating it but maybe this should be custom. At the very least logout on Session-enable setup should work out of the box.
I would love to offer a pull request for this issue but I'm not that far into this issue at this stage.
In other words, your problem is you should logout with an authenticated user and you don't hence logging out as an anonymous user which has no effect (maybe it's a bug too and it should issue 401 unauthorized? There is no way it could make sense to logout and anonymous user...)

Ok I got it now!
Using the same workflow as my previous comment, while using a cookie, you can find the csrf token in the cookie and now to properly logout you need to add:
curl --request POST \
   --cookie "cookies.txt" \
   --cookie-jar "cookies.txt" \
   --url "http://localhost:8000/rest-auth/logout/" \
   --header 'content-type: application/json' \
   --header 'X-CSRFToken: <csrf token>' \
   --header "Authorization: "Bearer <key>" -vvv

And it logs out successfully. However, in case the cookie is lost, you would keep the same old token so deleting tokens on login might be a good feature to have. Which maybe should be optionnal from the rest-auth library's perspective.


QB under the hood.

Excuse the off-topic, but the Intuit forum portal gives me an error on posting question. So maybe someone can point me in the right direction / to someone who could help me out.
I'm trying to get an understanding of both bookkeeping concepts, and the underlying mechanics of bookkeeping software, specifically QuickBooks. Would really appreciate thoughts on my logic:
Take for example Accrued Revenues:
Say you've done web-dev services, you approximate that you will invoice your customer for this in the future $500. So based on GAAP+Accrual you have earned revenue, and based on the fact that you're at this point just estimating - you have accrued revenue, which would be of future economic benefit, i.e. an asset (since you haven't invoiced, or received payment for it - it's in the future) .
Double Entry 1:
Dr Accrued Revenues (Asset) $500, Cr Revenue (Revenue) $500
A month later you will be issuing an invoice. You don't have to make 'extra entries' AFTER the invoice, you can use the invoice itself, to avoid over-statements. I.e. because the value now escapes Accrued Revenue (asset), and moves into Accounts Payable (asset). This is backed up by the Invoice. The only change is the fact that you now have an Invoice to backup this ... value(?). This is the point where I'm wondering... what could be done via programming, to somehow associate the whole ... underlying value.../thing(?) with these transactions? What is this underlying thing that remains the same... the thing-of-value variable, and gets assigned different states, based on different logic. e.g. "It" can move from the classification of being accrued (i.e. not being backed up by an invoice) - into a state of being backed up by an Invoice, which triggers it's behavior of "going" into Accounts Receivable. After it gets paid off by the buyer - it gets to be backed up by the cash, and now it can no longer be backed up by the invoice - since the invoice has been voided. The invoice has been programmatically, based on some specified rules - knocked out by the reception of cash for this "underlying constant thing", from a programmatically acceptable source - a specific customer.
To paraphrase: imagine the value of the service I provided gets assigned an ID. Now this ID can have several states - it can be a state of uninvoiced, unpaid, accrued. Or it could be invoiced, and unpaid. But the presence of some states, can knock out, and invalidate the other states, based on some agreed interactivity rules of who can come in, and provide what, to knock what out. I.e./e.g. customer is allowed to come in with cash, and knock out invoice. Now based on these states - behavior gets triggered, e.g. specific double entries.
Again, would appreciate comments on my logic.

I personally think you’re overthinking it. What you’d usually do in QuickBooks is to create a reverse journal entry in the month the invoice is created. So credit Accrued Revenues and debit Revenue. Then create the invoice as you normally would putting that amount into Accounts Payable and once again crediting Revenue.


Include rancher/system-upgrade-controller v0.12.0 in future Rancher release

Very keen to use the latest version :slightly_smiling_face:
Right now, the Rancher releases page includes these versions:
$ grep -F system-upgrade-controller rancher-images.txt
rancher/system-upgrade-controller:v0.10.0
rancher/system-upgrade-controller:v0.11.0

Still relevant.


Games crashes after replacing original .npk with repacked .npk (Totono)

Hello! I know this issues has already been reported here (#1) but to be honest it didn't help me at all. I tried several times to repack the script.npk file, but nothing changes ; the game crashes when the "Life is like a staircase." text is about to appear. Any idea on what I should do you solve the problem?

Try #30

Got the same error. I tried following #30 but with the script.npk file, but it crashed anyways. From what I understood, you need to repack using the -MS parameter with the value from one of those field. Is that right ?

'cause that's what I did (I removed the h at the end btw) but after changing the script.npk file, it still crashes no matter which of those value I use

test enable/disable those options (one per time)
-MV [1/2]         Set the NPK repack minor version
-SG [1/0]          Enable/Disable NPK Segmentation (Auto)
-FG [1/0]          Enable/Disable NPK Segmentation (Forced)
-CP [1/0]          Enable/Disable NPK Compression

totono is a game that I used to create this tool so it should be working.

Thanks for the quick answer! I tried all of that, without the -ms parameter, with the -ms with alignedsize and -ms with decompressedsize, but no matter what, the game keeps crashing

send me the original script.npk, the modified script.npk and the encryption key if you used a unsupported game, I'm not in home now but I will try check what might be wrong later.

Here are both the scripts files. The game is supported, it's "You and Me and Her (Steam)". Thanks a lot for your time
Scripts.zip
Thanks a lot for your time

check if the game crash with this one
script.zip

Yes it works! How did you do?

It works when I don't modify any file, but if I try to change the text in any file in the "script.npk~\media\script\lang\en" folder (like for exemple a0001.nut) which seems to be the files containing the script, the game crashes when file's content is about to show. Are those not the files I should modify ?

try extract again, if the repacked files can be extracted then it may be a problem of the nut editor tool

Is the nut editor supposed to work on its own? Because there's only a class that isn't used by any project. Or am I supposed to create a .net project that will use the NutEditor DLL to edit the files?

https://github.com/marcussacana/SacanaWrapper


Speed up unit tests

The unit tests currently take almost 8 minutes on Travis CI (see e.g. here). The test_YToD0D0barPi0Pi0.py test takes super long in particular: around 5 minutes.

As for tensorwaves and pycompwa, this issue will be addressed by https://github.com/ComPWA/tensorwaves/issues/57


Select quote() returns null

I have the following SQLite call in my code in which Summary is returned as null.
String query = "SELECT quote(Summary), Description, DateCollected, Location, HowCollected, Picture FROM Pennies" + orderbyclause[(int)order].ToString();

Task<IEnumerable<Item>> myItems;
myItems = Task.Run(() => database.QueryAsync<Item>(query).Result.AsEnumerable());

If I remove the call to quote, it returns the proper data string (in this case "My first penny".)
String query = "SELECT Summary, Description, DateCollected, Location, HowCollected, Picture FROM Pennies" + orderbyclause[(int)order].ToString();
Should the previous call work or am I misunderstanding what quote() does?

What is quote()? You appear to be using it as if it were a SQLite function, but looking at sqlite.org, I don't see any such function listed. What is it supposed to do?

https://www.w3resource.com/sqlite/core-functions-quote.php
Description
The quote(X) function returns a string which is the value of its argument suitable for inclusion into another SQL statement. Strings are surrounded by single-quotes with escapes on interior quotes as needed.


Agent Adminrouter + 3DT Proxied

@malnick Still not green:-)

Tests need to be updated in conjunction with the new port change.

We need to merge https://github.com/dcos/adminrouter/pull/9 and point this back to dcos/adminrouter master.

@spahl Can we get a ship stamp on this to formally say review is complete?

No, when I'm ready to merge it all.

@malnick please update to the latest adminrouter

@spahl Updated and cleaned up commit history.


youtube_clone(using react and rapid api)

This is awesome project of YouTube clone .
Made using react, rapid api and MaterialUI use.

i have made another branch with naming convention as mentioned.
so , please accept it.


Reference and Geo data types

The Firestore docs mention Reference and Geographical Point data types.  Would it be possible to extend CodableFirebase to support these?  I use CodableFirebase for simple Struct types - but I've no idea how to start using the other data types.
I believe the Geo point comes down as a FirGeopoint . Which isn't Codable.  And the reference as a DocumentReference.

Thank you @alickbass !


Request: option for periodic push of current states

I update and reboot every Monday morning and HA loses / forgets the state of majority of the sensors from ST until the device updates and sends to Mqtt. Would be nice to be able to set a periodic push from ST of all current states

I'm all for the periodic pushing.  You can also turn on the retain flag in MQTT so that it always keeps the last value.
I'll take a look at the PR, sorry for the delay.


Can I mirror this on my server?

This looks awesome! I played it 3 times already in the past 30 minutes.
Any way I can mirror it on QuakeWiki.net? And am I allowed to do it?

Yes, you can do that. The code is under the MIT License, which allows even for commercial use. You just have to maintain the copyright notice.
I see you already have a page on the wiki for the game, with all the info. So you can just embed the code there if you want.

I have just added an article about this - https://www.quakewiki.net/q1k3-a-javascript-homage-to-quake-in-just-13kb/ - with links to the project.
How would I go about mirrorring it? I have added the game page, but I am getting some console errors - https://www.quakewiki.net/q1k3/

You're missing the two data files:

l with the compiled level data: https://phoboslab.org/q1k3/l
m with the model data: https://phoboslab.org/q1k3/m

Got it, I'll investigate.
Thanks!


Update Example03_FindElements.ahk

Could you explain why this pull request is necessary? if VerCompare(A_OSVersion, "10.0.22000") < 0 should be equivalent to if VerCompare(A_OSVersion, ">=10.0.22000")

Um, I'm sorry, I made a mistake. My system is Windows 11 and when I run to this line, I will get an error. I thought it was a syntax issue, but it turned out to be a logic problem. 🤣


Is there a way to disable the interceptor for attaching the token to the request?

Since I have an own implementation of the above interceptor (which is code generated), I would like to disable the interceptor.
Is this possible?
Thanks a lot.
-paul.

Not working for me, I think it's because it doesn't have a setter method like:
httpInterceptor : {
set: function(value) { config.httpInterceptor = value; },
get: function() { return config.httpInterceptor; }
},

Fixed in #256.


External Memcached server support + various enhancement

Hello,
I made some modification to use external Memcached instance

Support for an external Memcached server

Added /entrypoint.sh to save docker environment variable into a file to be loaded by systemd services via EnvironmentFile parameter as it does not do it
Modified appliance-initialize.sh script to allow support for Dockerfile (PR to come)

Various fix in MIQ dockerfile

remove packages installation for postgresql server part (not needed i guess) : rh-postgresql95-postgresql-server rh-postgresql95-postgresql-pglogical-output rh-postgresql95-postgresql-pglogical
add package installation : rh-postgresql95-libs
remove VOLUME declaration (for postgresql)

Let me know your thought on this

@fvillain will take a look soon and post feedback.. thanks!

@fvillain Could you check yaml syntax on template, it looks like there some extra action going around line 183 :
[root@franco-ose-eval templates (master)]# oc create -f miq-template.yaml
yaml: line 183: did not find expected key
...
184:9     error    syntax error: expected , but found ''
...
Also, the volume declaration on memcached DeploymentConfig is not necessary.

@fvillain There are a few issues with the upstream memcached image we discussed internally, since this solution will eventually merged upstream and potentially drip downstream, we prefer to go with a Centos7 based memcached image (same as appliance), this is also the same path taken with the Postgres 9.5 image, this will yield good consistency on the base images, unfortunately the current official DH memcached is Debian based.
Secondly, it looks like the latest DH memcached images were built with Docker-1.10 and OSE3.2 does not support v2 image metadata, we are forced to rebuild on docker-1.9, I will get started with the new miq-memcached image soon for testing, it should only take minimal changes on the template once this is done.

@fbladilo
I removed the syntax issue plus pvc for memcached that indeed was useless.
I haven't access to an openshift cluster at the moment, so I cannot test it though
On memcached image : let me know if you need help on that part, or I can work on it on my own and push it here too.

@fbladilo also maybe we can re-use this image : https://hub.docker.com/r/ausnimbus/memcached-14-centos7/~/dockerfile/ ?
Seems to do what we want and is based on an official openshift/centos7 image, what do you think ?

@fvillain Thanks, I'll be re-importing the template and testing again tomorrow morning. Probably more comments to come but looks good on paper.
On memcached : Good catch! :smiley:  , I took the image and simplified a few things, I re-built it and looks good, does everything we need at the moment.

@fbladilo made the modification you asked for
we still have to see what to do about the env variables check in appliance-initialize.sh

@fbladilo we souhld be all good now

@fvillain One more, remove the lifecycle hook on miq-template calling ose-dump and we should be good to test again!

@fbladilo didn't see that one , my bad

@fvillain :+1: will go to test shortly...

@fvillain I made some minor image adjustments but it came up successfully, good enough to merge. I will send another cleanup commit afterwards for those.


PlainEditor: cursor disappears when all text is deleted

I can reproduce this in both vello_editor and in a Xilem single-line textbox after xilem#616. Based on the fact that in the latter case, the textbox shrinks, it appears that the layout also doesn't have a single line or run when there's no text. This also breaks accessibility. When there's no text, there should always be a single line with a single run, so there's somewhere for the cursor to be located.

I believe #170 fixes this.

It doesn't. In vello_editor running on the latest commit in #170, if I press Ctrl+A followed by Delete, the cursor still disappears.

Oops, this was working but I pushed a change that broke it: https://github.com/linebender/parley/blob/7cae4511a9ca7b3670d5d81e2b3fe4d2fc4aae91/parley/src/shape.rs#L46
The condition for inline boxes is inverted.

I believe that this has been fixed now:


Implement Resource Owner Password Credentials Grant

This is described in Section 4.3 of the OAuth spec.
We want the authentication of the resource owner credentials to be pluggable, so we introduce a new Spring bean for that purpose.  We also supply 2 initial implementations:

A no-op version that authenticates any username/password given (except for a well known "bad" user).

An implementation that stores the known resource owners and their credentials in the authorization server's database.

Cleaned up the confirmation of the client credentials a bit since we only seemed to really be doing that fully for the client credentials grant (and we should anytime they are provided).
Added tests for the new code (though more testing could easily be done, I tried to match the level of the existing code).
Addresses issue #21

Hi !! I'm quite new to OAuth-apis, and I need to use the "Resource Owner Password Credentials Grant"... I tried just to reach the autorization server (with curl) to see if it could work, but I'm always ending with a 500 error "Error 500 user lacks privilege or object not found: RESOURCEOWNER {SELECT t0.id, t0.creationDate, t0.modificationDate, t0.password, t0.username FROM resourceowner t0 WHERE (t0.username = ?)}"
So is the ROPCG working, or their still may be some issue ? thanks

@FredFrancisIT hi.  Unfortunately it has been over a year since I've done anything with this code base so it would take me some time to come back up to speed.  It does appear that this branch was merged, so the code should be there.  As I recall the trick with this was getting everything configured properly.  The error message above suggests that it is trying to find the RO in the database and the query is either failing outright or not returning a record.  Does your DB have the expected table and is there a record for the resource owner in that table?  If so then the place to start would seem to be the code that does the query (to see if the username is what you expect, etc...).  Sorry I can't be more help.


Once an episode is paused the UI is inaccessible unless playback is started again

With the subscription overlay active, once the audio is started and then paused, it becomes impossible to interact with nearly all of the UI while the audio is paused. That's somewhat frustrating. Potentially the overlay could be dismissed independent of audio playback state.

the new design from kyle has the overlay instead as a space at the bottom, which preserves the controls, we should retest with those changes, and see if this still applies


debug.cpp fails to compile under MinGW

Hey. While trying to get one of my projects to compile on Windows, I ran into a problem. Essentially, MinGW doesn't support localtime_r.
I can fix this by editing this line:
https://github.com/Genivia/RE-flex/blob/0b3a81b86e73268fdc0bba3b33fbdb511e4a7687/lib/debug.cpp#L46
and removing this part
&& !defined(__MINGW32__) && !defined(__MINGW64__)
MINGW does support the Windows API.
Should I PR this or is there some concern?

No concerns here with the change.


Need example on consuming variables in lifecycle hooks

[Enter feedback here]

Following the advice here, only examples are provided where there output variable is set as part of a deployment job.
There needs an example of how to consume output variables from jobs (in the same stage), and pass them into a deployment job

Why?

I'm currently getting null values passed through (from a job output var, to a deployment input var) and have no concrete examples to see if their are any syntax issues with my YAML, or if there is a bug, or if this feature is unsupported.

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

ID: 5aeeaace-1c5b-a51b-e41f-f25b806155b8
Version Independent ID: fd7ff690-b2e4-41c7-a342-e528b911c6e1
Content: Deployment jobs - Azure Pipelines
Content Source: docs/pipelines/process/deployment-jobs.md
Service: azure-devops-pipelines
Sub-service: azure-devops-pipelines-process
GitHub Login: @juliakm
Microsoft Alias: jukullam

@adriantorrie -- Adrian, thank you for your feedback.  Please consider these resources:

Azure DevOps Services
Azure DevOps on Stack Overflow

@juliakm -- Julia, please look into this issue.

@adriantorrie Could you please provide a sanitized example of your YAML pipeline?

Closing due to lack of response.

@adriantorrie Here's a YAML that it's working. The trick for me was to add dependsOn.
trigger:
- '*'

jobs:
- job: A
  pool:
    vmImage: 'ubuntu-latest'
  steps:
  - script: echo "##vso[task.setvariable variable=myOutputVar;isoutput=true]this is from job A"
    name: passOutput

- deployment: B
  pool:
    vmImage: 'ubuntu-latest'
  variables:
    myVarFromJobA: $[ dependencies.A.outputs['passOutput.myOutputVar'] ]
  environment: staging
  dependsOn: A
  strategy:
    runOnce:
      deploy:
        steps:
        - bash: echo $(myVarFromJobA) #does render after adding dependsOn:A


tests: run all existing tests with shaman repos

If you use the 'dev' factor, the testing scenario will
use repos from shaman.ceph.com. You can define CEPH_DEV_BRANCH
and CEPH_DEV_SHA1 to specify which repo you'd like to test.
Signed-off-by: Andrew Schoen<EMAIL_ADDRESS>

jenkins test this please

jenkins test jewel-ansible2.2-docker_cluster

jenkins test jewel-ansible2.2-update_docker_cluster

jenkins test luminous-ansible2.2-centos7_cluster

jenkins test jewel-ansible2.2-update_docker_cluster

jenkins test jewel-ansible2.2-update_docker_cluster

jenkins test jewel-ansible2.2-purge_cluster

jenkins test jewel-ansible2.2-purge_cluster


drop resource limits and set requests for marker

Setting hard limits is dangerous. It can lead to OOM and in some cases is causes
obscure bugs.
Also, having no minimal requirements can be dangerous too.
This patch resolves both issues.
Signed-off-by: Petr Horacek<EMAIL_ADDRESS>

/release-note-none


Fix for failed to destroy cartographic polygon at runtime

Missing calling Super::BeginPlay() in ACartographicPolygon::BeginPlay() causes we cannot destroy an ACartographicPolygon actor at runtime. Because before destroy the actor, we will check the actor AActor::ActorHasBegunPlay state. If the value is EActorBeginPlayState::HasBegunPlay, the actor will be mark pending killing. But AActor::ActorHasBegunPlay will be set to EActorBeginPlayState::HasBegunPlay in AActor::BeginPlay().

I have signed the CLA.

Good catch @YuchebHu, and thanks for the PR!


Web UI does not support search for a specific Trial

I ran an experiment, and it failed with an "Error" status. After check the log, I got info about few trial did not successfully got the status. I got the trial id, but the trial table does not support search.

@yhung119 - Thank you for the attention to our project and glad you are interested in contributing to it.
To start contributing, you can follow up with our contribution guideline: https://github.com/Microsoft/nni/wiki/How-To-Contribute.
For this individual item, @lvybriage had just implemented the support for search trial by NO. the corresponding codes are at
https://github.com/Microsoft/nni/blob/v0.4/src/webui/src/components/TrialsDetail.tsx#L204
line 204-229 & line 287-299
Please add the support for "trial id" and submit your PR. Looking forward for your codes and inputs.
Best Regards,
Scarlett

Resolved. Close.


NULL instead of DEFAULT value in migration

Hi, I have a table in MySQL with:
`last_update` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',

but when the default value is used in MySQL, pg_chameleon rewrite it as Null, so get an error:

2018-05-14 14:07:45 MainProcess ERROR pg_lib.py (3406): SQLCODE: 23502 SQLERROR: ERROR:  null value in column "last_update" violates not-null constraint
DETAIL:  Failing row contains (306238, http://example.com, 0, example, 3093, 3, PHY, 1, Test text<EMAIL_ADDRESS>, null, , null, 2002-01-17 18:47:39, 2002-01-17 18:47:39, null, null, 0, , , , 0, 1, 0, 0, 1, 0, null, 0, null, null).

The real data:
mysql> SELECT * FROM account WHERE id='306238'\G
*************************** 1. row ***************************
               id: 306238
              url: http://example.com
        parent_id: 0
           passwd: example
            flags: 3093
              gif: 3
          orgtype: PHY
              grp: 1
             name: Test text
             addr<EMAIL_ADDRESS>        alt_title:
     announce_url: NULL
   announce_title:
         add_year: NULL
       start_time: 2002-01-17 18:47:39
       reset_time: 2002-01-17 18:47:39
      rateon_time: NULL
     rateoff_time: NULL
      start_count: 0
         keywords:
            owner:
          creator:
            alive: 0
     user_deleted: 1
          in_rate: 0
              rss: 0
          quality: 1
     announce_rss: 0
          favicon: NULL
     days_wo_stat: 0
dismiss_reason_id: NULL
      last_update: 0000-00-00 00:00:00
1 row in set (0.00 sec)

Can you help me with that? If there a way to fix an error?

Hi, is this happening during the init replica or during the replication process?

It is init step

I had a similar issue fixed in a previous issue, the #16 .
unfortunately the replica library nullifies this specific date format and therefore I followed the same rule during the init replica. I'll try to find a way to skip the NOT NULL creation for specific tables/fields. But probably this enhancement will come out with the version 2.0.8 by the middle of June, hopefully.

the row with error should be skipped. if it doesn't, it is a bug :)

Once more, I've found that pg_chameleon in connection to the source DB and making SELECT queries like:
| 1577366 | pgrep          | <IP_ADDRESS>:39718               | NULL   | Query   |       0 | Opening tables                   | SELECT
						column_name,
						data_type
					FROM
						information_schema.COLUMNS
					WHERE
							table_schema='test100'
						AND table_name='res_formats_positions_v2_2018022201'
					ORDER BY
						ordinal_position |

Can you explain me the reason for these selects? I've placed all tables expect 1 in skip_tables in configuration file, also table 'res_formats_positions_v2_2018022201' is in skip_tables.
P.S. Newbie in Github issues. If my questions are off-topic, let me pls know where can I find an answer on my question, all how can I write you in email/telegram/etc.

mmm interesting. is this happening at init_replica or during the replica?
In theory the having tables in skip tables should not generate any query.

It is going on during the replica_start running.
I've marked all my tables expect 1 in skip field, but pg making selects anyway in my case.

I will have a look, thanks.

Hi, can you open a new ticket for the information_schema issue?
Can you please add your configuration file (please remove any  password)?
Thanks

never mind the ticked.
The method  mysql_engine.get_table_type map executes a query on all tables present in the replicated schemas ignoring the skip_tables. This happens every time the replica stream is initiated and is required for mapping the binary data which need to be hexified.
I agree that skip tables should be used and I can work on a fix if this is source of concern.

I'm closing the ticket for now. I'll look after the problem when the PR will be merged in the mysql replica library.

@the4thdoctor Hi, can I initiate the reopening of this issue?
I am currently setting up MySQL → PostgreSQL replication and there are a lot of date type fields in the source database with the default value 0000-00-00 00:00:00 and, accordingly, a lot of records with this value. When initializing a replica, I get a lot of errors like those listed in the first post. Is it possible to fix it?

I'm reopening the issue and I'll have a look asap.


Add Confluent Schema Registry compatible API to enable migration

Many users of Kafka with Avro will be using Confluent Schema Registry, to enable an easier migration path, as not all consumer, producers will be able to be changed and released at the same time.
Registry could expose compatible rest api for apps either producing or consuming still on confluent serdes.
Like wise to add also an option to run with a compatible byte wire protocol, so that apps with the new registry serdes able to talk/understand the confluent protocol.
e.g. schema meta info and version could be referencable by a unique single id, which then this id is sent in the byte[], with the same leading magic / protocol byte

VersionedStorable adding a unique id to this in the tables/storage would then be able from a single unique id, retrieve a vesionedstorable , which then can use the root entity to get back the schemametadata

On checking it seems there already is a unique id named "id" for SchemaVersionStorable :), could just use this.

id = globally unique id for a schema aka this could be SchemaVersionStorable id.
methods/apis needed to implement that Confluent Avro Serializer/Deserilizer invokes.
Serializer:
int register(String var1, Schema var2)
POST /subjects/{subject}/versions
body:
{"schema": "{\"type\": \"string\"}"}

Deserializer:
Schema getBySubjectAndID(subject, id)
GET /schemas/ids/{id}

int getVersion(subject, schema)
POST /subjects/{subject}
body:
{"schema": "{\"type\": \"string\"}"}

@satishd We have this now implemented with tests locally ready to share/raise PR for, it builds on some of the other PR's we have open though, to avoid nasty merge conflict issues, any possibility having merged our current PR's

@michaelandrepearce I am fine with having confluent schema registry compatible API but I would like to know your plans on migration path.
We would expect users would need to eventually change ser/des on their existing applications. New application can start this registry ser/des and respective APIs.

@satishd with having this will mean we can use confluent serdes, so on day one its just a service switch out, as in we can re-route via networking or quick runtime property change,  no need for code deploys, which in a large environment would be almost impossible.
We will have for a long time the need to run with confluent protocol on some flows, (0x0 + int id + serialised data), thus my suggestion (issue raised) we adopt this also at client level for produce/consume, so we can migrate clients serdes easier as it also would be compatible, reason why is there is a large eco-system already supporting this. If not any such any flow still not able to migrate will have to remain on the confluent serdes until support is added. Which would hinder adoption.
Areas that would cause this for us as current are:

Language Support
** C++ clients
** Python clients

ThirdParty Tools/Systems e.g.
** Vertica
** StreamSets

@michaelandrepearce That makes sense. It would be great if you can write a doc or wiki about the migration path that you are following, it will be useful to other users.

@satishd will do, and happy to contribute this, could you possibly suggest a sensible location for us to make this wiki page.

@michaelandrepearce You can add as a new wiki page here for now.

@michaelandrepearce @satishd it would be good to have this in docs here https://github.com/hortonworks/registry/tree/master/docs and they will be published once we merge here http://registry-project.readthedocs.io
But whichever makes it easy to get this in, if wiki is easier lets do that. This is been most asked question so far.

Thanks @harshach @satishd , i have raised a PR https://github.com/hortonworks/registry/pull/164 for initial review, its not 100% so not quite ready for merge (e.g. need to adjust commit messages etc), but if you could read over, cheers.

@michaelandrepearce ConfluentSchemaRegistryCompatibleResource and confluent protocol ser/des addresses compatible required for migration from confluent SR. Do we have anything remaining for migration w.r.t compatible API? If not, we can close this issue.

@satishd i think so, anything else can just be an issue. Ill close it now.


KAFKA-3787: Preserve the message timestamp in mirror maker

The timestamp of messages consumed by mirror maker is not preserved after sending to target cluster. The correct behavior is to keep create timestamp the same in both source and target clusters.

cc @becketqin

Yes, that makes sense. We should include this in the 0.10.0 branch.

@xiaotao183, are you willing to add a test to cover the fix?

@ijuma Sure, will do

@ijuma test case added

@ijuma please review again

@ijuma done

@xiaotao183 Thanks! LGTM, merging to 0.10.0 and trunk.

Sorry, I just realised that the test is in core/src/test/scala/kafka/tools/MirrorMakerTest.scala, but it should be under core/src/test/scala/unit/kafka/tools/MirrorMakerTest.scala. The package should still be kafka.tools. Can you please fix that?

@ijuma done

Thanks, tests passed locally. Merged to trunk and 0.10.0 branches.


"Missing argument" message uses arg name, not metavar

If one defines the metavar different from the argument name, like in:
@adapter_group.command('list')
@click.argument('CPC-NAME', type=str, metavar='CPC')
@click.pass_obj
def adapter_list(cmd_obj, cpc_name):

the usage line in the help text correctly uses the metavar:
Usage: zhmc adapter list [OPTIONS] CPC

but the error message when invoked without arguments incorrectly uses the argument name:
Error: Missing argument "CPC-NAME".

I suggest that the metavar is used consistently in all display to the user.

This is generated by a bit of a head scratcher, in the formatting code for a MissingParameter error.
If I'm reading this right, it's trying to be generic in its handling of Options and Arguments, so it takes param.opts as a relevant "name" for the parameter, and slash delimits all of the available names.
That gets nice help like Missing option "-f/--foo", and explains the issue here.
Argument.get_usage_pieces looks at the metavar correctly. Without tracing this out thoroughly, it seems like this is the key difference.

Opinion Zone:
The real thing that's wrong here is that Argument has a non-empty opts value. I've seen this elsewhere in the code and it seems wrong -- the name doesn't help either, as it implies that it's a good detector of Option vs. Argument.
Fixing that would be a breaking change as completion and other advanced usage may depend upon this value.

Probably the least invasive is to make MissingParameter formatting read param.get_usage_pieces and see if there's anything there. However, there's so much layering going on here, I don't really want to act without some kind of input from the maintainers.
Plus, although pragmatic, that fix is icky and may be abusing the meaning of get_usage_pieces.
Something that is common throughout is that a lot of the code handles Options and Argument equivalently. I'm not sure how much people are defining their own param types, and adding an attribute "option-style" vs. "argument-style" would probably resolve a lot of this confusion.

Oh, idea which is not icky or messy and resolves a DRY violation: add a get_error_hint() method to Parameters, and fix MissingParameter and BadParameter to use it.
I'll do that and open a PR now.

@sirosen Thanks for solving this!!

Until this is merged you can do something like:
raise click.MissingParameter(param=click.get_current_context().command.params[X])
Where X is the positional number of the parameter for this command (0 for first possible param, 1 for the next, and so on)


Bug: the plugin does nothing

Make sure you have done the following

[X] I have updated to the latest version of the plugin.
[X] I have read the README.
[X] All Treesitter parsers for the filetypes used by nvim-puppeteer are installed,  and I updated all my Treesitter parsers via :TSUpdate.

Bug Description
Hi, this is basically a "duplicate" of https://github.com/chrisgrieser/nvim-puppeteer/issues/18, pretty much the same issue.
I can't get nvim-puppeteer to work even with the recommended minimal.lua there.
Relevant Screenshot

To Reproduce
minimal.lua:
-- save as `minimal.lua`
local plugins = {
	{
		"nvim-treesitter/nvim-treesitter",
		build = ":TSUpdate",
		main = "nvim-treesitter.configs",
		opts = {
			ensure_installed = { "javascript" },
			highlight = { enable = true },
		},
	},
	{ "chrisgrieser/nvim-puppeteer" },
}
--------------------------------------------------------------------------------
for _, name in ipairs { "config", "data", "state", "cache" } do
	vim.env[("XDG_%s_HOME"):format(name:upper())] = "/tmp/nvim-debug/" .. name
end
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
	local lazyrepo = "https://github.com/folke/lazy.nvim"
	vim.fn.system { "git", "clone", "--filter=blob:none", lazyrepo, "--branch=stable", lazypath }
end
vim.opt.runtimepath:prepend(lazypath)
require("lazy").setup(plugins)

Then run nvim -u minimal.lua test.py and type in insert mode the text from the screenshot. When exiting the insert mode, nothing happens.
neovim version
NVIM v0.10.2
Build type: Release
LuaJIT 2.1.1727870382

yeah, that's a completely different issue. Simply a typo I made a few commits ago 🙈
fixed now


feat: add apply command to README [PHX-2900]

Add known limitations
Add the description of apply command

rendered readme

@mayakarabula can we make it a chore to not trigger a release?