Rpi5 Failed to start with OneInchEye camera attached

I also add the JLCPCB gerber 2D viewer. Maybe a polarity issue ?

Ok think I have found myself issue. The engraved on 22pins port are a mess.... Don't know why, like if Gerber files were corrupted.

I download the gerber straight from github and upload to jlcpcb and the render is perfect:

I don't know why you think the gerber is corrupted, literally zip it, upload it. Also I want to stress that if you are not familiar with PCB and or electrical engineer, please look else where.

There are multiple issues on your PCB board by the way

Hi Will, not saying that your PCB file is corrupted. It is by comparing my PCB file with yours that I found issues. So what I mean is my PCB files were modified in unexpected way by EasyEda. I have download Kicad files in EasyEda and generate gerber files with poor rendering. Really don't know why.

So if you find others issues in my PCB screenshot other than the wiring of the 22pins, please let me know.

Will, I know I am not a star with PCB. I do my best to learn, but if you can give me some advices to correct my mistakes on my previous PCB order, I will be really grateful. Maybe you will be happy to know that I plan to use the OneInchEye module for an astronomy project  which already use a IMX462 module but I want to upgrade to the IMX283. Thanks in advance for your time.

I confirm that importing the Kicad project in EasyEda generate erroneous wiring...
I'd rather state it for other users, than just saying like @will127534 that I should look elsewhere (useless reply).


HBASE-24974: Provide a flexibility to print only row key and filter for multiple tables in the WALPrettyPrinter

backport of https://github.com/apache/hbase/pull/2345

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  8s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
3m 58s
branch-2 passed

+1 :green_heart:
checkstyle
1m 17s
branch-2 passed

+1 :green_heart:
spotbugs
2m  8s
branch-2 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 35s
the patch passed

+1 :green_heart:
checkstyle
1m 14s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
12m 41s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1.

+1 :green_heart:
spotbugs
2m 15s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 13s
The patch does not generate ASF License warnings.

36m 11s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2388

JIRA Issue
HBASE-24974

Optional Tests
dupname asflicense spotbugs hadoopcheck hbaseanti checkstyle

uname
Linux a01a79752a71 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / a2979db27d

Max. process+thread count
84 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f) spotbugs=3.1.12

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m 34s
Docker mode activated.

-0 :warning:
yetus
0m  6s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
4m 18s
branch-2 passed

+1 :green_heart:
compile
0m 59s
branch-2 passed

+1 :green_heart:
shadedjars
6m 29s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 45s
branch-2 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 37s
the patch passed

+1 :green_heart:
compile
1m  2s
the patch passed

+1 :green_heart:
javac
1m  2s
the patch passed

+1 :green_heart:
shadedjars
6m 46s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 41s
the patch passed

_ Other Tests _

-1 :x:
unit
11m 25s
hbase-server in the patch failed.

39m  7s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2388

JIRA Issue
HBASE-24974

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux db6d2f67d3e6 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / a2979db27d

Default Java
1.8.0_232

unit
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/artifact/yetus-jdk8-hadoop2-check/output/patch-unit-hbase-server.txt

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/testReport/

Max. process+thread count
450 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 35s
Docker mode activated.

-0 :warning:
yetus
0m  7s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
4m 17s
branch-2 passed

+1 :green_heart:
compile
1m  5s
branch-2 passed

+1 :green_heart:
shadedjars
6m 40s
branch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 47s
hbase-server in branch-2 failed.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 53s
the patch passed

+1 :green_heart:
compile
1m  4s
the patch passed

+1 :green_heart:
javac
1m  4s
the patch passed

+1 :green_heart:
shadedjars
6m 38s
patch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 40s
hbase-server in the patch failed.

_ Other Tests _

+1 :green_heart:
unit
129m 53s
hbase-server in the patch passed.

157m 49s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2388

JIRA Issue
HBASE-24974

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 21ed56d24840 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / a2979db27d

Default Java
2020-01-14

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/testReport/

Max. process+thread count
4219 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/1/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 32s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
hbaseanti
0m  0s
Patch does not have any anti-patterns.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
3m 39s
branch-2 passed

+1 :green_heart:
checkstyle
1m  8s
branch-2 passed

+1 :green_heart:
spotbugs
1m 58s
branch-2 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 14s
the patch passed

+1 :green_heart:
checkstyle
1m  7s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
hadoopcheck
11m 28s
Patch does not cause any errors with Hadoop 3.1.2 3.2.1.

+1 :green_heart:
spotbugs
2m  7s
the patch passed

_ Other Tests _

+1 :green_heart:
asflicense
0m 16s
The patch does not generate ASF License warnings.

32m 50s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/artifact/yetus-general-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2388

Optional Tests
dupname asflicense spotbugs hadoopcheck hbaseanti checkstyle

uname
Linux b71d15f9e2a3 4.15.0-60-generic #67-Ubuntu SMP Thu Aug 22 16:55:30 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / a2979db27d

Max. process+thread count
94 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f) spotbugs=3.1.12

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
0m 33s
Docker mode activated.

-0 :warning:
yetus
0m  5s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
3m 52s
branch-2 passed

+1 :green_heart:
compile
1m  5s
branch-2 passed

+1 :green_heart:
shadedjars
6m 39s
branch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 40s
hbase-server in branch-2 failed.

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 57s
the patch passed

+1 :green_heart:
compile
1m  5s
the patch passed

+1 :green_heart:
javac
1m  5s
the patch passed

+1 :green_heart:
shadedjars
6m 45s
patch has no errors when building our shaded downstream artifacts.

-0 :warning:
javadoc
0m 40s
hbase-server in the patch failed.

_ Other Tests _

+1 :green_heart:
unit
129m 56s
hbase-server in the patch passed.

157m 23s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/artifact/yetus-jdk11-hadoop3-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2388

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux 28f448a048ae 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / a2979db27d

Default Java
2020-01-14

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/artifact/yetus-jdk11-hadoop3-check/output/branch-javadoc-hbase-server.txt

javadoc
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/artifact/yetus-jdk11-hadoop3-check/output/patch-javadoc-hbase-server.txt

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/testReport/

Max. process+thread count
3974 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m  9s
Docker mode activated.

-0 :warning:
yetus
0m  7s
Unprocessed flag(s): --brief-report-file --spotbugs-strict-precheck --whitespace-eol-ignore-list --whitespace-tabs-ignore-list --quick-hadoopcheck

_ Prechecks _

_ branch-2 Compile Tests _

+1 :green_heart:
mvninstall
4m  0s
branch-2 passed

+1 :green_heart:
compile
0m 58s
branch-2 passed

+1 :green_heart:
shadedjars
6m 27s
branch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 38s
branch-2 passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
3m 38s
the patch passed

+1 :green_heart:
compile
0m 58s
the patch passed

+1 :green_heart:
javac
0m 58s
the patch passed

+1 :green_heart:
shadedjars
6m 26s
patch has no errors when building our shaded downstream artifacts.

+1 :green_heart:
javadoc
0m 36s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
200m 45s
hbase-server in the patch passed.

227m 32s

Subsystem
Report/Notes

Docker
Client=19.03.12 Server=19.03.12 base: https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/artifact/yetus-jdk8-hadoop2-check/output/Dockerfile

GITHUB PR
https://github.com/apache/hbase/pull/2388

Optional Tests
javac javadoc unit shadedjars compile

uname
Linux d400491dc152 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/hbase-personality.sh

git revision
branch-2 / a2979db27d

Default Java
1.8.0_232

Test Results
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/testReport/

Max. process+thread count
2796 (vs. ulimit of 12500)

modules
C: hbase-server U: hbase-server

Console output
https://ci-hadoop.apache.org/job/HBase/job/HBase-PreCommit-GitHub-PR/job/PR-2388/2/console

versions
git=2.17.1 maven=(cecedd343002696d0abb50b32b541b8a6ba2883f)

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

@bharathv


Support Qwen type llm's

⚠ Please check that this feature request hasn't been suggested before.

[X] I searched previous Ideas in Discussions didn't find any similar feature requests.
[X] I searched previous Issues didn't find any similar feature requests.

🔖 Feature description
With the new qwen 14b model it would be very nice to have axolotl support.
✔ Solution
-Support finetuning of Qwen type llm's
❓ Alternatives
Normal finetuning but it's unoptimized
📝 Additional Context
No response
Acknowledgements

[X] My issue title is concise, descriptive, and in title casing.
[X] I have searched the existing issues to make sure this feature has not been requested yet.
[X] I have provided enough information for the maintainers to understand and evaluate this request.

Could you please try with trust_remote_code: true and using AutoModelCausalLM and AutoTokenizer? Is there an error?

I'd like to second this. trust_remote_code: true seems to work for full finetuning, but I get errors for qlora training. Is fully tested support for Qwen on the roadmap for this project? It would be really useful for CJK languages!

I get errors:  raise ValueError("Adding unknown special tokens is not supported")
ValueError: Adding unknown special tokens is not supported
trying to use qlora with qwen

I get errors: raise ValueError("Adding unknown special tokens is not supported") ValueError: Adding unknown special tokens is not supported trying to use qlora with qwen

@CheshireAI , Hm, this is an upstream problem. If you want this feature, you should ask at transformers.
@Peter-Devine @kostum123 , what's the error with running qlora?

Hello, I apologize for the long delay. This should be fixed here: https://github.com/OpenAccess-AI-Collective/axolotl/pull/894
Please let me know how it goes.

Thank you very much! Will try it out soon.


the progress never finish!

if a html contains of the operation for hash changed，the progress maybe never finish.

https://github.com/ninjinkun/NJKWebViewProgress/pull/81


Stop multiple plots copying over to the HDD at the same time.

Often when plots finish right after another and they are being copied over to the HDD the process slows to a halt. I think the plotman should do this one at a time to avoid issues with write speeds to the HDD.

Copying to the DST location slowed to a halt today for me too and I am guessing it was because too many copies were happening at once, but even when one finished, the others were all messed up and still transferred very slowly.

If you are only running 1 instance of plotman, you can set the dst to be the same as tmp and then setup the archive process and use rsync (even if you are staying on the same machine). Plotman currently only allows 1 archive process to run so you can use that to serialize copying from the completed plot out of tmp to the archive location.

setup the archive process and use rsync

I would but it seems overly complicated to setup and run archive via rsync compared to simply mounting an SMB share to my TrueNAS instance.

If you are only running 1 instance of plotman, you can set the dst to be the same as tmp and then setup the archive process and use rsync (even if you are staying on the same machine). Plotman currently only allows 1 archive process to run so you can use that to serialize copying from the completed plot out of tmp to the archive location.

can we just add a function where the plotman looks for 2 plots on step 4 and sets one on suspend while the first one completes and then resumes? that way we don't have to mess with archiving?

If you are only running 1 instance of plotman, you can set the dst to be the same as tmp and then setup the archive process and use rsync (even if you are staying on the same machine). Plotman currently only allows 1 archive process to run so you can use that to serialize copying from the completed plot out of tmp to the archive location.

can we just add a function where the plotman looks for 2 plots on step 4 and sets one on suspend while the first one completes and then resumes? that way we don't have to mess with archiving?

Anything is possible. If someone authors and submits a pull request, at some point in the future, it might get integrated. The alternative I mentioned above, if the caveats apply, can be implemented immediately.

setup the archive process and use rsync

I would but it seems overly complicated to setup and run archive via rsync compared to simply mounting an SMB share to my TrueNAS instance.

I thought that as well. I am not familiar with TrueNAS, but I followed the directions with https://github.com/ericaltendorf/plotman/wiki/Archiving and it was quick to setup and get working. The only issue might be getting the SSH keys copied over if you are not used to that.

If you are only running 1 instance of plotman, you can set the dst to be the same as tmp and then setup the archive process and use rsync (even if you are staying on the same machine). Plotman currently only allows 1 archive process to run so you can use that to serialize copying from the completed plot out of tmp to the archive location.

can we just add a function where the plotman looks for 2 plots on step 4 and sets one on suspend while the first one completes and then resumes? that way we don't have to mess with archiving?

Anything is possible. If someone authors and submits a pull request, at some point in the future, it might get integrated. The alternative I mentioned above, if the caveats apply, can be implemented immediately.

I'm going to try it, i'm a bit confused though. So do I change the dst directory to my SSD paths instead of the HDD path and activate Archival to my remote farm? I already setup the rsync and archive but it's not clear how I remove the final dst to just leave them in the SSD until archival

Assuming you are running the main branch of plotman and you are using a single tmp (example here, it is mounted at /mnt/chia/tmp). This trick only works if you have a single tmp on the current main/release code.
directories:
        tmp:
                - /mnt/chia/tmp
        dst:
                - /mnt/chia/tmp

My understanding is that, when chia create moves it to the dst, since it is the same, the move will actually just result in a rename. You'll then have a finished .plot file sitting in your tmp folder.
The archive process will then come along, rsync it out of tmp and then delete it from tmp.
Note: There is work being done in development (not sure if it was yet merged) that all you had to do was not define a dst and that would cause plotman to leave it in tmp. That will help if you have multiple tmps.

ok thanks, i'm trying to find a python dev that can work on the solution i proposed. 3 of them already turned me down though.


Expose HttpConnecting future which is used by Connect impl

I'd like to have access to future since it is anyway exposed through associated type of Connect implementation.
Otherwise it makes it hard to avoid boxing

@seanmonstar ping? I wouldn't mind this future to be public unless you're planning to remove it :)

My hope is to eventually have this be an impl Future, once that stabilizes. I'd love to be able to rewrite a bunch of this ConnecingTcp stuff with async.

You think it is going to be soon?
Well I wouldn't mind to wait for it, so close it if you feel like that


[vue-calendar] how can i modify popup items?

i wanted to delete some items in create schedule popup,
so change both useCreationPopup and useDetailPopup to false.
but i don't know how to use tui.calendar popup template.(popup open & item modify)
how can i use creation popup/detail popup?
here is my recent code. (link)
check it out please.
thank you for your time

for creation popup
https://github.com/nhnent/tui.calendar/blob/415be4453e5a63150017d146175adf2401908322/src/js/view/template/popup/scheduleCreationPopup.hbs#L28-L32
for detail popup
https://github.com/nhnent/tui.calendar/blob/415be4453e5a63150017d146175adf2401908322/src/js/view/template/popup/scheduleDetailPopup.hbs#L10-L17
Originally posted by @dongsik-yoo in https://github.com/nhn/tui.calendar/issues/217#issuecomment-429177930

This is a question about the vue calendar, so end this issue

@charmjeh
This issue is closed.
I'll solve your issue here.


LoRA-layer-support

Support diy lora_target_modules layer.
For example, for LLaMA, you can use --lora_target_modules q_proj k_proj v_proj o_proj for more layers.

Can someone describe the implications of this and how one might use it?  Looks exciting!

Can someone describe the implications of this and how one might use it? Looks exciting!

By default, LoRA training only train some special layers, such as q_proj v_proj in LLaMA. You can change the parameter in
--lora_target_modules to choose the layers you are interested, such as q_proj k_proj v_proj o_proj. It is reported that q_proj k_proj v_proj o_proj performs better than q_proj v_proj in instruction tuning.


Moved IScheduler interface to separate file.

http://forum.unity3d.com/threads/unirx-reactive-extensions-for-unity.248535/page-2#post-2060732

Thank you, I've merged.
Please wait next release(soon)!


Update pyzule.py

Changed 7z to zip the file fast.

isnt this compression level 0? can be achieved without -z and instead -c 0

isnt this compression level 0? can be achieved without -z and instead -c 0

if you make the compression it -c 0 then the zip won't be the type which is supported by iOS it will be corrupted.

isnt this compression level 0? can be achieved without -z and instead -c 0

if you make the compression it -c 0 then the zip won't be the type which is supported by iOS it will be corrupted.

really? i just realized -c 0 isnt even supported, so i'll do further testing soon

isnt this compression level 0? can be achieved without -z and instead -c 0

if you make the compression it -c 0 then the zip won't be the type which is supported by iOS it will be corrupted.

really? i just realized -c 0 isnt even supported, so i'll do further testing soon

the current command is being used in my version of zsign which is way more faster than zip unzip, that goes for unzipping as well. 7z does it way faster.
Thank you


Which is the pocket volumes unit of measurement?

Is it Ångstroms^3 ?
Thank you

yes!

And the unit of pocket SASA is Ångstroms^2?

yes


Not all banned groups loaded in some missions

There's a weird bug with some missions where IC2 does not load all banned groups that are given in the mission JSON.
Example: The mission "The Source" has 16 banned groups in the JSON, but only 12 are shown when the mission is selected in IC2.
When the mission is loaded into the newest ICE version and saved, all banned groups appear as they should, so it's probably a file format issue.

When an "official" Mission is selected in Setup, the ignored groups are collected from the Mission preset JSON files, NOT from the Mission file itself.  If you look at the Mission preset (\Assets\Resources\MissionPresets\core.json) for the Core10 Mission you mentioned, the preset only lists 12 groups to ignore.  And this is what IC2 shows.  The actual Mission file for core10, on the other hand, has 16 groups in the "bannedGroups" array.  The Mission preset data for that Mission, and possibly others, is incorrect.
Custom Missions, on the other hand, DO gather their ignored groups from the Mission file itself, since they do not have a Mission preset to refer to.  When you re-save the core10 Mission in ICE and load it into IC2 as a custom Mission, it's "correctly" getting the full 16 groups to ignore right from the Mission file.
So this is a good thing because it means it's not a data format issue.  Rather, it's the data itself that is incorrect, which is much easier to fix.  So the question is, should all the Mission presets be re-evaluated?  Or should I just have IC2 get the ignored groups from the Mission file itself during Setup?  I'm leaning towards getting the data from the Mission file itself, and here's why:
Presets are a leftover from the original IC1 Classic mode, which has no Mission files to get ignored groups and other data from.  Presets contain initial groups, reserved groups, factions, and other data needed to run a Mission in IC1.  For Classic, the Mission preset is the "source of truth" for running a Mission.  As you know, this same data is also a part of every Mission file created in ICE.  Since presets are a relic from IC1, it makes sense to wean off this data as the "source of truth" and rely only on the Mission files themselves.  I mean, that's why ICE has properties for all that data in the first place.  The old presets are not needed for IC2 at all (*), except for Classic mode.
(*) - Not 100% true, I actually lookup some Mission data from presets in the Campaign screen, such as the Threat level.  I do this because it's quicker.  Otherwise I'd have to load, parse, and validate the entire Mission just to get the threat level and show it on the screen.

 I remember that we actually talked about this some time ago, and I just forgot it. Yes, there are differences between the two lists. In the Mission Presets, I was a bit more cautious about banning groups, because IC1 was much more built for being flexible. I reworked all those things for IC2.
I wholeheartedly agree with you that the mission presets are a leftover, and that it would be better to pull all the info from the mission file itself. The thing is, I think some of the information is not present in the mission JSON at all. You already mentioned the default threat level, and that is something that's not in the mission file anywhere, I think. So we still need that info somewhere.
I think at some point in the future, when we remove Classic altogether, it might make sense to scrub the mission presets off anything no longer needed, and possibly integrate anything that is still relevant into a different file. For now, pulling the banned groups from the mission JSON will be best.

Addendum: Of course, we have all the necessary threat levels in the campaign data. So I think we could remove the mission presets altogether: Threat level is set by the campaign manager, reserved / initial / banned groups my the mission JSON. No need to change or add anything. The only thing is that there would be no default threat level when starting a one-off Saga mission. But in that case, I think it's fine if the app just defaulted to a threat level of 2, and players could set their own threat level.
What do you think?

Yes, that's right, the threat is already in the campaign data!  I think this is a good idea!  For the next update I'll remove all dependencies on the old preset data.


Support plans without scheduling specs

Closes #363
Now that we're explicitly associating a scheduling goal with a plan, the SchedulingGoalForm was assuming that a plan always had a Scheduling Specification. This is true when a plan is created through the UI, but not necessarily true when created by an API. To support this possibility we're taking two approaches:

When the user loads a plan, if the plan does not already have a scheduling spec, we create one at page load.
If the user somehow still navigates to the goals page without creating a scheduling spec, we ensure the page doesn't break, and show a message in the dropdown that the plan can't be used for goals due to a "Missing Scheduling Specification".

Just realized we likely need to do this same check in the Scheduling Conditions form as well as Goals. Looking into this now ...

I added the same safety check to the Scheduling Conditions form and rebased. I think this should be all set now (assuming remaining checks pass)


Update README.md so it matches the Hackathon guidelines

Update README.md so it matches the Hackathon guidelines

#https://github.com/superstashed/medusa-stonkers/commit/e07cc0e45ed12b8911b52869c9a5428796faf039


Getting Errors on ddp, single node, 8 GPU only detecting device [0]

I had this code and getting some errors.
    trainer = pl.Trainer(
        gpus=8,
        max_epochs=500,
        precision=16,
        callbacks=[checkpoint_callback],
        logger=wandb_logger,
        log_every_n_steps=10,
        strategy='ddp'
    )

I am pretty sure that I have 8 devices online by checking device count and setting CUDA_AVAILABLE_DEVICES
import torch
torch.cuda.device_count()
>>> 8

I am getting this error
raceback (most recent call last):
  File "/home/user/yl/trainer.py", line 270, in <module>
    strategy='ddp'
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/trainer/connectors/env_vars_connector.py", line 38, in insert_env_defaults
    return fn(self, **kwargs)
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py", line 426, in __init__
    gpu_ids, tpu_cores = self._parse_devices(gpus, auto_select_gpus, tpu_cores)
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py", line 1538, in _parse_devices
    gpu_ids = device_parser.parse_gpu_ids(gpus)
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/utilities/device_parser.py", line 89, in parse_gpu_ids
    return _sanitize_gpu_ids(gpus)
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/utilities/device_parser.py", line 152, in _sanitize_gpu_ids
    f"You requested GPUs: {gpus}\n But your machine only has: {all_available_gpus}"
pytorch_lightning.utilities.exceptions.MisconfigurationException: You requested GPUs: [0, 1, 2, 3, 4, 5, 6, 7]
 But your machine only has: [0]
Fusing layers...
Model Summary: 290 layers, 21172173 parameters, 0 gradients
Traceback (most recent call last):
  File "/home/user/yl/trainer.py", line 270, in <module>
    strategy='ddp'
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/trainer/connectors/env_vars_connector.py", line 38, in insert_env_defaults
    return fn(self, **kwargs)
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py", line 426, in __init__
    gpu_ids, tpu_cores = self._parse_devices(gpus, auto_select_gpus, tpu_cores)
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/trainer/trainer.py", line 1538, in _parse_devices
    gpu_ids = device_parser.parse_gpu_ids(gpus)
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/utilities/device_parser.py", line 89, in parse_gpu_ids
    return _sanitize_gpu_ids(gpus)
  File "/home/user/anaconda3/envs/yl/lib/python3.7/site-packages/pytorch_lightning/utilities/device_parser.py", line 152, in _sanitize_gpu_ids
    f"You requested GPUs: {gpus}\n But your machine only has: {all_available_gpus}"
pytorch_lightning.utilities.exceptions.MisconfigurationException: You requested GPUs: [0, 1, 2, 3, 4, 5, 6, 7]
 But your machine only has: [0]

Environment
torch is 1.10.0+cu102
pytorch_lightning is 1.5.2
cc @justusschock @kaushikb11 @awaelchli @akihironitta @rohitgr7

Hey @sarmientoj24,
Are you doing CUDA_AVAILABLE_DEVICES='0' python script.py. This would hide the others GPUs.

@tchaton No i did not. as a matter of fact, i run the function of getting the list of all GPUs using device count before Trainer fit and I can get [0, 1, 2, 3, 4, 5, 6, 7]

Dear @sarmientoj24,
Would you mind using 1.5.2 and confirming you still get the error?

I am pretty sure that I have 8 devices online by checking device count and setting CUDA_AVAILABLE_DEVICES

Note, the correct variable would be CUDA_VISIBLE_DEVICES, not CUDA_AVAILABLE_DEVICES.
Check in bash that the variable is not set. Even if you don't prefix your command with it, it could still be set globally on your system (for whatever reason):
echo $CUDA_VISIBLE_DEVICES

should return nothing or a list of devices.

@tchaton should i also include strategy='ddp' in there?

Hey @sarmientoj24,
By default it would use ddp_spawn, but you can use ddp :)

@sarmientoj24 did you find anything new on your side?

Hi, this issue is annoying, and I wish I am reaching some clues here:
I print like this at main.py:
import os; print("===my0===",os.getenv('CUDA_VISIBLE_DEVICES'))
import pytorch_lightning as pl
print("===my1===",os.getenv('CUDA_VISIBLE_DEVICES'))
and I find that it give first 0,1,2,3,4,5,6,7 for two prints
and then give another two prints with only device 1 , (maybe somehow, the programme ran the main.py twice?)
the for the second running, the CUDA_VISIBLE_DEVICES is modified.
But I still can;t find out where it was changed.
Helpppp!

further info:
at main.py:
import os; print("===my0===",os.getenv('CUDA_VISIBLE_DEVICES'))
if os.getenv('CUDA_VISIBLE_DEVICES')=='1':
import ipdb;ipdb.set_trace()
import pytorch_lightning as pl
it shows first :
===my0=== 0,1,2,3,4,5,6,7
then:
===my0=== 1

/home/zeng_19/A4-ptForcastPrivate/IDEA-NET-Jrn/LitModelWrapper.py(7)()
6     import ipdb;ipdb.set_trace()
----> 7 import pytorch_lightning as pl
8

ipdb>

Maybe it is because of something like "looping import"??

maybe somehow, the programme ran the main.py twice

Yes, Lightning runs the script as many times as you selected devices in the Trainer.
Lightning does not set the CUDA_VISIBLE_DEVICES env variable. Make sure it does not get modified inside of your script. Make sure your script runs properly on a single device first.

single device is fine, when I ran for devices>=2, this issue shows up

I tried to hack like this:
import os;
os.environ["CUDA_VISIBLE_DEVICES"] = "0,1,2,3,4,5,6,7" #manual modification!
print("===my0===",os.getenv('CUDA_VISIBLE_DEVICES'))
if os.getenv('CUDA_VISIBLE_DEVICES')=='1':
import ipdb;ipdb.set_trace()
import pytorch_lightning as pl
it gives me new issue:
RuntimeError:
An attempt has been made to start a new process before the
current process has finished its bootstrapping phase.
    This probably means that you are not using fork to start your
    child processes and you have forgotten to use the proper idiom
    in the main module:

        if __name__ == '__main__':
            freeze_support()
            ...

    The "freeze_support()" line can be omitted if the program
    is not going to be frozen to produce an executable.

I think I have fixed it. It is (mainly) because of the multiprocessing issues. Add
set trainer devices are [3,4,5]
set trainer strategy is DDP
add this at the top of the main.py:
import os;
os.environ["CUDA_VISIBLE_DEVICES"] = "0,1,2,3,4,5,6,7" #manual modification! all you visible GPU!
add at the body of main.py
if __name__=='__main__': to wrap your pl.trainer / trainer.fit / trainer.test ...

I think I have fixed it. It is (mainly) because of the multiprocessing issues. Add
set trainer devices are [3,4,5] set trainer strategy is DDP
add this at the top of the main.py:
import os; os.environ["CUDA_VISIBLE_DEVICES"] = "0,1,2,3,4,5,6,7" #manual modification! all you visible GPU!
add at the body of main.py
if __name__=='__main__': to wrap your pl.trainer / trainer.fit / trainer.test ...

I will appreciate it if anybody can tell me why


[language][errors] insert space when appending error messages

Summary
Error messages in errors are messed up:
reference not allowedat index 10 while indexing locals signatureat index 9 while indexing function definition

This gets it fixed by inserting a space when appending if the original message is non-empty. The above now looks like this:
reference not allowed at index 10 while indexing locals signature at index 9 while indexing function definition

Test Plan
Manually print sth out. Place the following function in vm/src/errors.rs and run cargo test.
#[test]
fn append_err_test() {
    println!(
        "{}",
        append_err_info(
            VMStatus::new(StatusCode::INVALID_SIGNATURE_TOKEN),
            IndexKind::FieldDefinition,
            5
        )
    );

    println!(
        "{}",
        append_err_info(
            VMStatus::new(StatusCode::INVALID_SIGNATURE_TOKEN).with_message("".to_string()),
            IndexKind::FieldDefinition,
            5
        )
    );

    println!(
        "{}",
        append_err_info(
            verification_error(
                IndexKind::TypeSignature,
                10,
                StatusCode::INVALID_SIGNATURE_TOKEN
            ),
            IndexKind::FieldDefinition,
            9
        )
    );
    assert!(false);
}

@bors-libra r+

:pushpin: Commit fe95f0f has been approved by tzakian

:hourglass: Testing commit fe95f0f23dae1fb8a9e0bb7e1c67a825137f7dee with merge 6ea791fc476cd9c0c7d995308c5e100f69ef1072...

@bors-libra r-

:sunny: Test successful - checks-circle_commit_workflow
State: approved= try=False

@bors-libra r=tzakian

:pushpin: Commit 7857003 has been approved by tzakian

:hourglass: Testing commit 7857003dd2fcdd79ebaeb66ef43d77e1fb3acf12 with merge 6438d9381cf9aed4b786de3e329ee314367865b8...

:sunny: Test successful - checks-circle_commit_workflow
Approved by: tzakian
Pushing 6438d9381cf9aed4b786de3e329ee314367865b8 to master...


feat(docs-gen): compute the design docGroup from the folder path

PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/graycoreio/daffodil/blob/master/CONTRIBUTING.md#commit
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

What is the current behavior?
Previously, we were determining the document group of a file from its filename. This could lead to crisscrossed docs when file names are similar across examples.
Fixes: N/A
What is the new behavior?
We determine from the folder path instead, which is more likely to be safe.
Does this PR introduce a breaking change?
[x] Yes
[ ] No

Other information

I don't see why this change would make a difference. The way the directory structure is, the file name is always the same as the directory anyway, so this wouldn't give us any more safety

@lderrickable sorry, I wrote this incorrectly based upon a bug I saw completely unrelated to the content of this PR.


[BEAM-13413][Playground] add type of precompiled object

[BEAM-13413] Add type to precompiled object while storing to bucket

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @pabloem


Type: Map: Change iterators to not create new collection during iteration

Dependent on https://github.com/stellar/rs-stellar-contract-env/issues/180 and https://github.com/stellar/rs-stellar-contract-env/issues/183


feat: Added support for slices, added more tests, enhanced support fo…

…r mixed pointer/non pointer types, added support for omitempty, coerce is now optional and disabled by default, added functionality to coerce using the coerce string in the tag. Fixed a bug marshalling to non structs like maps.

:tada: This PR is included in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Generate the credits & privacy policy using configure-script.js

Or something similar.

Duplicate of https://github.com/krgamestudios/MERN-template/issues/14
How did I manage that?


create dynamic function with Generic Map per item is not identifying the return value and think it an error.

Bug Report
When implementing function like document.createElement which implementing signature like
createElement<K extends keyof HTMLElementTagNameMap>(tagName: K, options?: ElementCreationOptions): HTMLElementTagNameMap[K]; will bring an error for each return value, but when doing ts-ignore to all return values it will show the correct value when it interpater the return value while using the method.
example code below and can play here.
const enum ActionList {
    Move = "move",
    Jump = "jump",
    Sit = "sit",
}

interface Action {
    [ActionList.Move]:number;
    [ActionList.Jump]:string;
    [ActionList.Sit]:boolean;
}

function callAction<K extends keyof Action>(action:K):Action[K] {
    switch (action) {
        case ActionList.Move: return 100;     // Show error: Type 'number' is not assignable to type 'never'
        case ActionList.Jump: return "100"; // Show error: Type 'string' is not assignable to type 'never'
        case ActionList.Move: return true;    // Show error: Type 'boolean' is not assignable to type 'never'
    }
    return undefined;   // Show error: Type 'undefined' is not assignable to type 'never'
}

callAction(ActionList.Move);
callAction(ActionList.Jump);
callAction(ActionList.Sit);

As you can see in the link here the compiler think we have an error in the return types, it thinks the return type suppose to be number & string & boolean for each return value, but the functions call signature which using the callAction method show the correct value per type we pass inside.
for now, to fix it I did // @ts-ignore for each return value and the compiler leave it, but I think this is an error understanding the code.
I might do something wrong, so please tell me if I missed something here.
thank you.
🔎 Search Terms
search terms: createElement generic type, dynamic generic type  return map
I found some related things, but nothing I needed. found this issue which is not what I search for, but similar.
🕗 Version & Regression Information
Using TS 4.2.4
I tested it with TS 3.x, 4.x, 4.3 beta. it reproduces on all of them.
using the Playground link to try in multiple versions.
⏯ Playground Link
Playground link with relevant code
💻 Code

const enum ActionList {
    Move = "move",
    Jump = "jump",
    Sit = "sit",
}

interface Action {
    [ActionList.Move]:number;
    [ActionList.Jump]:string;
    [ActionList.Sit]:boolean;
}

function callAction<K extends keyof Action>(action:K):Action[K] {
    switch (action) {
        case ActionList.Move: return 100;     // Show error: Type 'number' is not assignable to type 'never'
        case ActionList.Jump: return "100"; // Show error: Type 'string' is not assignable to type 'never'
        case ActionList.Move: return true;    // Show error: Type 'boolean' is not assignable to type 'never'
    }
    return undefined;   // Show error: Type 'undefined' is not assignable to type 'never'
}

callAction(ActionList.Move);
callAction(ActionList.Jump);
callAction(ActionList.Sit);

🙁 Actual behavior
errors on return types which think each return value needs to be all types together.
🙂 Expected behavior
understand the implementation function return types.

Related: https://github.com/microsoft/TypeScript/issues/31904


openssl 1.0.2j

Fixes a null pointer exception with bad Certificate Revocation Lists.

Two releases in two weeks! r? @alexcrichton

Oh boy!


Adding a way to force without confirmation

https://github.com/MicrosoftDocs/office-docs-powershell/issues/5037

Docs Build status updates of commit 9ac0731:
:clock10: Full build: the average full build time is 12 min(s) 21 sec(s), this is based on the last 1000 build(s) for this repository.

Docs Build status updates of commit 9ac0731:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

sharepoint/sharepoint-ps/sharepoint-server/Remove-SPContentDatabase.md
:white_check_mark:Succeeded
View (sharepoint-ps)

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


feat(streaming): convert agg to dedup if append only

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?

Convert Agg to Dedup if its input is append-only and there are no AggCalls.
Nexmark q8 can benefit from this conversion.

Checklist For Contributors

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[x] I have demonstrated that backward compatibility is not broken by breaking changes and created issues to track deprecated features to be removed in the future. (Please refer to the issue)
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Checklist For Reviewers

[ ] I have requested macro/micro-benchmarks as this PR can affect performance substantially, and the results are shown.

Documentation

[ ] My PR DOES NOT contain user-facing changes.

Click here for Documentation
Types of user-facing changes
Please keep the types that apply to your changes, and remove the others.

Installation and deployment
Connector (sources & sinks)
SQL commands, functions, and operators
RisingWave cluster configuration changes
Other (please specify in the release note below)

Release note

How about just set a logical optimization rule to transform all LogicalAgg without aggCalls into LogicalDedup?

Two reasons why I think we should put it in the physical optimization phase:

Append-only is only available for streaming nodes right now, but only append-only input can benefit from the dedup operator, otherwise, agg is better.
If we convert a logical agg to a logical dedup at the beginning of the optimizer, we need to consider correlated subqueries optimization for it.


WIP: loose escaping, ban undefined, change char for objects

preparing next major release
fixes #10, fixes #12
cc @vjeux

will split in several commits for better history

runkit notebook to play with:
https://runkit.com/guria/5a09a6bcd653430011415441

Works for me :)

merged


Create type for standard metadata

Node metadata are by default untype (it is a map[string]interface{}).
This has several drawbacks:

the type can be overriden using the API
it's slow (no fast JSON encoding/decoding)
it's unclear what fields are available

Done


upgrade from v1.10 to v1.11

What type of PR is this?
/kind documentation

What this PR does / why we need it:
Release 1.11 is coming, with new documentation for upgrading from v1.10 to v1.11.
Which issue(s) this PR fixes:
Parts of # karmada-io/karmada#5466
Special notes for your reviewer:

No obvious error messages were found during local upgrade testing.
/hold Awaiting local e2e testing.

/hold cancel


RunManager -> Run, deeper Registry integration

Creating this WIP PR as I work through the last few tests. Before we merge, it probably makes more sense for me to create a squashed commit and open a PR for that.
Also, I'll write up the major things that this PR does.

Adds instantiate: bool optional element to component spec, which allows a user to specify that a component is a managed class (vs the default of it being a managed class instance).

This does not yet update the Django web app to work with the new registry abstraction

Tests are now green, but before we merge, we probably want to convert this to a squashed commit and open a new PR for that since many of my intermediate commits were simply checkpoints for myself and don't have any other historical use except to muddy the git history.

Ok @nickjalbert I've squashed all those silly "WIP" commits into one (very large) commit 2281a42 and tests are still passing so this is Ready for a review!!
I've also added a commit with the partial progress on porting the WebRegistry integration (which updates the Django webapp registry to support pushing and fetching repos and components to/from a WebRegistry).

This PR leaves .../sb3_agent> agentos publish-run broken. I didn't catch it because it doesn't have a test case yet. I created #229 to be sure we have sufficient testing coverage.


Bug in 'curl_option_' parsing

The usage of string.lstrip in tests.py is incorrect. The documentation for lstrip specify that the argument is "the set of characters to be removed" not a string prefix to be removed. The result is that if you specify, e.g., curl_option_timeout you get the following error message:
ValueError: Illegal curl option: MEOUT

after the 't' and 'i' in 'timeout' were stripped.

Good catch, thank you @jcelliott
I've added tests to cover this, plus a fix (and credit for discovering it in the changelog) with https://github.com/svanoort/pyresttest/commit/0d3c793892422c1f5e57f9bf2f25eee4054d53d4


Implement view: sending confirmation code

ZenHub Information
This information is updated automatically. To modify it, please use ZenHub.
Belonging to Epics:

[EPIC] #326 - View: Get Phone Number

Blocked By:

[BLOCKING: #340] [UNASSIGNED] #340 - Design View: sending confirmation code

@schowdhury8 is anyone currently working on this issue? please also check #98 as @jpmarques66 had already moved that to done. so this could be done as well.


Add Tuya mm-wave motion sensor _TZE204_qasjif9e variant

Added device Tuya "_TZE204_qasjif9e" "TS0601"
Proposed change

Additional information

Checklist

[X] The changes are tested and work correctly
[ ] pre-commit checks pass / the code has been formatted using Black
[] Tests have been added to verify that the new code works

Thanks for the PR!
I'll have to see how this compares to https://github.com/zigpy/zha-device-handlers/pull/2525 (which is a larger PR, but seemingly also includes that sensor variant)


ble_gattc.c crash dependent on client device

As detailed in this issue, I have an ESP32S3 running NimBLE using the esp-nimble-cpp interface. When subscribing to notifications on a characteristic using my laptop (M1 MacBook Pro), the connection works without issue. When subscribing to notifications via the same app (LightBlue) on the same characteristic, using an iPhone (iOS 16.1), the ESP32 device crashes.
I've traced the error to ble_gattc.c in this library, line 4169, where ble_att_svr_read_handle is called without a value for the connection handle.
When replacing BLE_HS_CONN_HANDLE_NONE  with conn_handle, the code works fine. However, this is an ad hoc solution, and I'd like to find a fix that doesn't involve editing an obscure file every time we update the library or install ESP-IDF on a new computer. Also, I can't guarantee that this doesn't cause problems somewhere down the line, but maybe the developers can confirm that this is safe?
Alternatively, perhaps this is an issue with the library that should be changed for everyone, as the author of esp-nimble-cpp suggested ("remove the assert in the BLE_GATT_ACCESS_OP_READ_CHR event handler and gracefully return instead" -h2zero).
Please see the issue linked above for specific context on the crash and how I traced the problem.

Hi @ArdenKolodner ,
I looked at your other issue, to debug this further, could you please answer these questions:

Are you calling ble_gatts_notify() after subscribe? (I'm not talking about ble_gatts_notify_custom())
In the access callback of the attribute that you are notifying on, have you put any asserts or if conditions on the conn_handle?

If you could also provide your application, it would be helpful in getting to the root of the issue.

Hi @SumeetSingh19, thank you for your response. Unfortunately I cannot share the application code, as it is proprietary. However, I will do my best to answer what I can.
We are using esp-nimble-cpp, which does not use ble_gattc_notify, it only uses ble_gattc_notify_custom.
While we don't put any asserts or if-statements on conn_handle, it looks like esp-nimble-cpp has something similar. The following code (NimBLECharacteristic.cpp line 277 and 314):
rc = ble_gap_conn_find(conn_handle, &desc);   assert(rc == 0);
runs inside its GAP event handler, whenever there is a read or write event on a characteristic. The assert isn't on conn_handle itself, but on the return value of ble_gap_conn_find, so if ble_gap_conn_find fails, the assert would fail. However, this assert doesn't ever seem to fail; the problem seems to occur in ble_gattc_notify_custom, when it calls ble_att_svr_read_handle(BLE_HS_CONN_HANDLE_NONE, [...]).

Hi @ArdenKolodner ,
The reason ble_att_svr_read_handle, as you mentioned, is called with BLE_HS_CONN_HANDLE_NONE, is because the server itself is performing a read operation on the attribute so that it can fill the notification value using the attribute value.
This happens when ble_gattc_notify_custom is called without a value (3rd argument is NULL).
So if the remote did not request the read operation, the server cannot use the remote's connection handle to read the attribute's value, and hence the server uses BLE_HS_CONN_HANDLE_NONE.
This also explains why in the event handler for the read operation, the assert is failing: Because the handler receives a read request with BLE_HS_CONN_HANDLE_NONE as the connection handle and when it tries to find the connection descriptor using BLE_HS_CONN_HANDLE_NONE, naturally it will not get one because the request did not come from the connection but from the server itself. Note that this read operation is not supposed to be ignored.
What you should do is check if you are notifying without specifying a value. If you need any help in checking that let me know.
If you did indeed notify without a value, let me know and I can help fix the problem.

Hi @SumeetSingh19, I apologize for the slow response but I have not had the chance to investigate for a while.
My code uses the esp-nimble-cpp library, and you can see its implementation of notifications here. Search for "void NimBLECharacteristic::notify(const uint8_t* value, size_t length, bool is_notification, uint16_t conn_handle) {" to see the implementation that I am calling. As I understand it, the value and length are copied into a memory buffer (os_mbuf), which is provided to the ble_gattc_notify_custom call, so there should be a value specified. But if you meant something different, then yes, please let me know how to check.

Hi, did you ever managed to fix this? i'm having a similar issue:
assert failed: static int NimBLECharacteristic::handleGapEvent(uint16_t, uint16_t, ble_gatt_access_ctxt*, void*) NimBLECharacteristic.cpp:277 (rc == 0)

Backtrace: 0x40083a11:0x3ffe21b0 0x400960cd:0x3ffe21d0 0x4009bf75:0x3ffe21f0 0x401ab53c:0x3ffe2320 0x401a1f89:0x3ffe23a0 0x401a201d:0x3ffe23d0 0x4019df13:0x3ffe2410 0x4019e1ae:0x3ffe2450 0x401a1859:0x3ffe2470 0x401ab431:0x3ffe2490 0x401adba1:0x3ffe2520 0x401880a5:0x3ffe2540

  #0  0x40083a11:0x3ffe21b0 in panic_abort at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/esp_system/panic.c:408
  #1  0x400960cd:0x3ffe21d0 in esp_system_abort at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/esp_system/esp_system.c:137
  #2  0x4009bf75:0x3ffe21f0 in __assert_func at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/newlib/assert.c:85
  #3  0x401ab53c:0x3ffe2320 in NimBLECharacteristic::handleGapEvent(unsigned short, unsigned short, ble_gatt_access_ctxt*, void*) at lib/NimBLE-Arduino/src/NimBLECharacteristic.cpp:315 (discriminator 1)
  #4  0x401a1f89:0x3ffe23a0 in ble_gatts_val_access at lib/NimBLE-Arduino/src/nimble/nimble/host/src/ble_gatts.c:378
      (inlined by) ble_gatts_val_access at lib/NimBLE-Arduino/src/nimble/nimble/host/src/ble_gatts.c:343
  #5  0x401a201d:0x3ffe23d0 in ble_gatts_chr_val_access at lib/NimBLE-Arduino/src/nimble/nimble/host/src/ble_gatts.c:424
  #6  0x4019df13:0x3ffe2410 in ble_att_svr_read at lib/NimBLE-Arduino/src/nimble/nimble/host/src/ble_att_svr.c:402
  #7  0x4019e1ae:0x3ffe2450 in ble_att_svr_read_handle at lib/NimBLE-Arduino/src/nimble/nimble/host/src/ble_att_svr.c:477
  #8  0x401a1859:0x3ffe2470 in ble_gattc_notify_custom at lib/NimBLE-Arduino/src/nimble/nimble/host/src/ble_gattc.c:4174
  #9  0x401ab431:0x3ffe2490 in NimBLECharacteristic::notify(unsigned char const*, unsigned int, bool) at lib/NimBLE-Arduino/src/NimBLECharacteristic.cpp:511
  #10 0x401adba1:0x3ffe2520 in NordicUARTService::send(char const*, bool) at lib/nimble_source/src/NuS.cpp:165 (discriminator 4)
  #11 0x401880a5:0x3ffe2540 in NimBLE_txTask(void*) at lib/nimble_nus/nimble_nus.cpp:299

ELF file SHA256: a06925091e97d397

Rebooting...
ets Jul 29 2019 12:21:46

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:1184
load:0x40078000,len:13232
load:0x40080400,len:3028
entry 0x400805e4

this is line 299
		if (NuPacket.send(packageData, false) == 0)
				{
					ESP_LOGW("NimBLE TX", "Failed to send package data or no peer connected");
				}

Diving deeper,

User

/**
 * @brief STATIC callback to handle events from the NimBLE stack.
 */
int NimBLECharacteristic::handleGapEvent(uint16_t conn_handle, uint16_t attr_handle,
                             struct ble_gatt_access_ctxt *ctxt,
                             void *arg)
{
    const ble_uuid_t *uuid;
    int rc;
    struct ble_gap_conn_desc desc;
    NimBLECharacteristic* pCharacteristic = (NimBLECharacteristic*)arg;

    NIMBLE_LOGD(LOG_TAG, "Characteristic %s %s event", pCharacteristic->getUUID().toString().c_str(),
                                    ctxt->op == BLE_GATT_ACCESS_OP_READ_CHR ? "Read" : "Write");

    uuid = ctxt->chr->uuid;
    if(ble_uuid_cmp(uuid, &pCharacteristic->getUUID().getNative()->u) == 0){
        switch(ctxt->op) {
            case BLE_GATT_ACCESS_OP_READ_CHR: {
                rc = ble_gap_conn_find(conn_handle, &desc);
                assert(rc == 0);

                 // If the packet header is only 8 bytes this is a follow up of a long read
                 // so we don't want to call the onRead() callback again.
                if(ctxt->om->om_pkthdr_len > 8 ||
                   pCharacteristic->m_value.size() <= (ble_att_mtu(desc.conn_handle) - 3)) {
                    pCharacteristic->m_pCallbacks->onRead(pCharacteristic);
                    pCharacteristic->m_pCallbacks->onRead(pCharacteristic, &desc);
                }

                ble_npl_hw_enter_critical();
                rc = os_mbuf_append(ctxt->om, pCharacteristic->m_value.data(), pCharacteristic->m_value.size());
                ble_npl_hw_exit_critical(0);
                return rc == 0 ? 0 : BLE_ATT_ERR_INSUFFICIENT_RES;
            }

            case BLE_GATT_ACCESS_OP_WRITE_CHR: {
                uint16_t att_max_len = pCharacteristic->m_value.max_size();

                if (ctxt->om->om_len > att_max_len) {
                    return BLE_ATT_ERR_INVALID_ATTR_VALUE_LEN;
                }

                uint8_t buf[att_max_len];
                size_t len = ctxt->om->om_len;
                memcpy(buf, ctxt->om->om_data,len);

                os_mbuf *next;
                next = SLIST_NEXT(ctxt->om, om_next);
                while(next != NULL){
                    if((len + next->om_len) > att_max_len) {
                        return BLE_ATT_ERR_INVALID_ATTR_VALUE_LEN;
                    }
                    memcpy(&buf[len], next->om_data, next->om_len);
                    len += next->om_len;
                    next = SLIST_NEXT(next, om_next);
                }
                rc = ble_gap_conn_find(conn_handle, &desc);
                assert(rc == 0);
                pCharacteristic->setValue(buf, len);
                pCharacteristic->m_pCallbacks->onWrite(pCharacteristic);
                pCharacteristic->m_pCallbacks->onWrite(pCharacteristic, &desc);
                return 0;
            }
            default:
                break;
        }
    }

    return BLE_ATT_ERR_UNLIKELY;
}

line 277 is                 assert(rc == 0);

Hi @ArdenKolodner and @italocjs , if you are using esp-nimble-cpp, inside NimBLECharacteristic.cpp on line 277 and 314, there is this line: rc = ble_gap_conn_find(conn_handle, &desc); assert(rc == 0);
This practice can be problematic, because NimBLECharacteristic::handleGapEvent may get events with connection handle equal to BLE_HS_CONN_HANDLE_NONE. Note that this is expected behaviour, it simply means that the server performed a read/write operation on itself.
A more robust way to write this code would be either: if(conn_handle != BLE_HS_CONN_HANDLE_NONE) {  rc = ble_gap_conn_find(conn_handle, &desc);  assert(rc == 0); } OR rc = ble_gap_conn_find(conn_handle, &desc); assert((conn_handle != BLE_HS_CONN_HANDLE_NONE) && (rc == 0));
Also, note that struct ble_gap_conn_desc desc; will stay garbage if BLE_HS_CONN_HANDLE_NONE is received. My suggestion is to replace it with NULL for that case.
If you want a patch for this, please give me the commit ID you are using, because I can see that the code has changed since last time we discussed this issue.

Thanks for the tip, i've implemented it here and seems to be working fine now!, i will test with more data and more times but already seems more stable, i'll make sure to report back here.
            case BLE_GATT_ACCESS_OP_READ_CHR: {

                if(conn_handle != BLE_HS_CONN_HANDLE_NONE)
                {
                rc = ble_gap_conn_find(conn_handle, &desc);
                assert(rc == 0);
                }
                // rc = ble_gap_conn_find(conn_handle, &desc);
                // assert(rc == 0);

                 // If the packet header is only 8 bytes this is a follow up of a long read
                 // so we don't want to call the onRead() callback again.
                if(ctxt->om->om_pkthdr_len > 8 ||
                   pCharacteristic->m_value.size() <= (ble_att_mtu(desc.conn_handle) - 3)) {
                    pCharacteristic->m_pCallbacks->onRead(pCharacteristic);
                    pCharacteristic->m_pCallbacks->onRead(pCharacteristic, &desc);
                }

                ble_npl_hw_enter_critical();
                rc = os_mbuf_append(ctxt->om, pCharacteristic->m_value.data(), pCharacteristic->m_value.size());
                ble_npl_hw_exit_critical(0);
                return rc == 0 ? 0 : BLE_ATT_ERR_INSUFFICIENT_RES;
            }

A curious thing, before this change i had to use a 10ms delay within my code to avoid crashing because of this assert (but did not stop it), now even without any delay in my code is not crashing. (for context, i have a task that read a large log file in sdcard, packetize it based on the max_mtu then send it over nimble/nus).

I can now confirm they've decided not to pursue it at this time. Thank you both once again!


RFC: Move project and docker images to dockbuild organization ?

Instead of maintainer the image on thewtex, what do you think of creating a GitHub organization named dockbuild  (similar to the existing dockcross one) ?
Cc: @thewtex

Or we could transfer and rename the project to https://github.com/dockcross/centos-build ?

Or we could transfer and rename the project to https://github.com/dockcross/centos-build ?

Seems reasonable to combine similar projects and avoid creation / management of another organization. I'll act on this...

All set!

Thanks @thewtex

Could you enable CircleCi build ?

@jcfr enabled. Also added you and @fedorov to repo admins.


how to see real/fake angle

this metod in pr dosent work for me, everyone have this code?

#1546 made thirdperson show cmd->viewangles

i dont know to paste this code, can you help me?

i dont know to paste this code, can you help me?

how about this one ?
#739

@dapaster only change offset and work?

i have problem with "reinterpret_cast" reason: "invalid type conversion"

reinterpret_cast<Vector>(reinterpret_cast<uintptr_t>(localPlayer.get()) + 0x31D8) = angle;
change localPlayer to localPlayer.get()

i have got this"thirdperson unable to match function definition to an existong declaration" and "syntax error: idefiter "Vector"", I don't know what's wrong

okey, this code work for me, thanks you

when i go to team crash csgo

 , okey work but that's not it, it doesn't show pitch and yaw doesn't change

set it to your viewangles

Sync your animations with server.

how to sync animations?

#1626 made a standalone pull now get to doing some c+p

work, ty guys


Bot not pulling complete watchlist data

Hi,
When running the bot, it appears that it isn't pulling in all stocks on my custom watchlists that I have within the Robinhood app. Furthermore, I do see some old tickers that get pulled, that I no longer have on my lists as being watched. I do see that the script pulls a "Default" list, from the API, and all subsequent lists look to be marked by a unique ID. Could those be the lists and if so is there any way to narrow down what the most 'up to date' set is?
Thank you in advance, for your time.

Robinhood has updated the way their watchlists work since the last time I touched this code. They often make these types of changes which is pretty annoying but what can you do. Somehow the old "Default" list doesn't show up on the app and is no longer updatable but is somehow still grabbable via the API. I just pushed a new commit that should get watchlists working again. You will have to update the robin-stocks module "pip install robin-stocks --upgrade" and get it to version 2.0.2.
Let me know if this works now!

On a side note, since you mentioned on your last issue that none of the stocks were triggering, if you want to see what's going on in the golden cross calculations you can get rid of the if statement from
if(cross) and plot:
        show_plot(price, sma1, sma2, dates, symbol=stockTicker, label1=str(n1)+" day SMA", label2=str(n2)+" day SMA")

and it will display a nice little chart for each stock on the watchlists with the indicators. Admittedly the 50 and 200 day golden cross is pretty hard to trigger in the current market environment. Feel free to experiment with your own values like 30 - 90 or perhaps look into using exponential moving averages instead.

Thanks for this! It did work, however I see a few tickers in there I've never added to a list before. Strange, but it does show all the others that I do have in a list. With that said, I seem to be getting a slightly different error now:
File "RobinhoodBot-master\robinhoodbot\main.py", line 140, in five_year_check
list_date = instrument[0].get("list_date")
IndexError: list index out of range
It's almost there, and I appreciate the help on this. This is a great tool you've done here, and a few tweaks I feel confident about its use. Once it works, I'll give the if statement removal a try. Thanks!

Hmm, this call
instrument = r.get_instruments_by_symbols(stockTicker)
usually returns something from Robinhood, but I've heard feedback that for certain stocks it doesn't. The five_year_check() is a bit of an arbitrary metric I threw in there anyway. I committed some code that will handle this specific case, so it should be working now.  I'm curious, could you pinpoint which stock caused this?

I wonder if it may have been a crypto ticker that threw it off, because the complete transcript shows a warning when tracking Ethererum Classic (ETC). Not sure if this helps at all, but I can dig in further, if need be. See the transcript below:
..RobinhoodBot-master\robinhoodbot\main.py:169: FutureWarning: Units 'M', 'Y' and 'y' do not represent unambiguous timedelta values and will be removed in a future version
if(direction == "above" and not five_year_check(stockTicker)):
Warning: "ETC" is not a valid stock ticker. It is being ignored
Traceback (most recent call last):
File "..\RobinhoodBot-master\robinhoodbot\main.py", line 276, in
scan_stocks()
File "..\RobinhoodBot-master\robinhoodbot\main.py", line 264, in scan_stocks
cross = golden_cross(symbol, n1=50, n2=200, days=10, direction="above")
File "..\RobinhoodBot-master\robinhoodbot\main.py", line 169, in golden_cross
if(direction == "above" and not five_year_check(stockTicker)):
File "..\RobinhoodBot-master\robinhoodbot\main.py", line 140, in five_year_check
list_date = instrument[0].get("list_date")
IndexError: list index out of range
I also tried the new code and the latest run is coming back with the following below. You'll notice the file says main_copy.py, but that was only because I made a copy to test the new run with:
..\RobinhoodBot-master\robinhoodbot\main_copy.py:162: FutureWarning: Units 'M', 'Y' and 'y' do not represent unambiguous timedelta values and will be removed in a future version
if(direction == "above" and not five_year_check(stockTicker)):
Warning: "ETC" is not a valid stock ticker. It is being ignored
404 Client Error: Not Found for url: https://api.robinhood.com/quotes/historicals/?symbols=ETC&interval=day&span=year&bounds=regular
Traceback (most recent call last):
File "..\RobinhoodBot-master\robinhoodbot\main_copy.py", line 264, in
scan_stocks()
File "..\RobinhoodBot-master\robinhoodbot\main_copy.py", line 252, in scan_stocks
cross = golden_cross(symbol, n1=50, n2=200, days=10, direction="above")
File "..\RobinhoodBot-master\robinhoodbot\main_copy.py", line 168, in golden_cross
closingPrices.append(float(item['close_price']))
TypeError: 'NoneType' object is not subscriptable

Alright, check out my latest commit. It turns out for cryptos you have to call r.get_crypto_historicals instead. I was able to add ETC to one of my watchlists and get it to run. You will still see this warning message:
Warning: "ETC" is not a valid stock ticker. It is being ignored 404 Client Error: Not Found for url: https://api.robinhood.com/quotes/historicals/?symbols=ETC&interval=day&span=year&bounds=regular
but that's because it tries to grab it as a stock first and then tries it as a crypto.

Ok it looks good now. I did get the warnings for all the crypto tickers, as expected. I also tried commenting out the if statement you mentioned earlier. It still didn't trigger anything at the 200-50day ratio, but I did get some charts for 100 days and even a 30:90 day ratio, so it does look like everything is working as expected. Really appreciate the time and effort in to this. Thanks again!


SIGN-114 | Auth with CAS Service

SIGN-114 | As an ASU Adobe Sign user, I need to sign in with my ASURITE ID before I can access certain agreements to prove my identity.

Add new CasService with authenticate and getAuthenticatedUserId methods
Add lambdaRedirect to lambda response-handler to allow redirecting to CAS and AdobeSign (SIGN-118)
Update agreements controller/service/tests to implement CasService functionality
Add Unauthorized error class

Documentation on bypassing auth when invoking locally to follow in a separate PR


Implement local-ref tags

Implement the local-ref tags part of the schema 2020-03.
This PR adds handling of local tags and also does a minor refactor of the parser and TS function handling to improve code and handling.

@JamesSmartCell two issues:

The email record for bitcoinwarrior1.eth no longer resolves
the renew button triggers the following error:

I/chromium: [INFO:CONSOLE(1)] "Uncaught ReferenceError: onConfirm is not defined", source: data:text/html; charset=utf-8;base64,PGhlYWQ+PG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwg%0AaW5pdGlhbC1zY2FsZT0xLCBtY....

Edit: number one was due to the TS, once fixed it resolves but it shows the old record rather than the new one: https://etherscan.io/tx/0xe76d1c55776ada393875765a1f41a60f70b9294812c579b6b2c3ae13a1abde39
The renew button is still stuck with the error above.


Add a new background experiences

I think it should be possible for new Laravel developers, who know the basics of Laravel, to join Onramp. Right now the only background experiences that relate somewhat to them are WordPress developers.
I feel like this isn't covering everyone that wants to use Onramp.

Hi @FoksVHox. Thank you for your suggestion!
Programmers who are new to Laravel could easily follow our "New to Programming" track and still get the full benefits of using Onramp to sharpen their Laravel skills by checking out some of the intermediate and advanced modules.
Still, we would love to hear if you have any suggestions for newer resources or modules that you think someone with this experience would be looking for.


New Feature: Keyboard shortcut for 'like' toggle

I'm trying to write a new keyboard shortcut into soundcleod and have got the functionality down - a keyboard shortcut now toggles 'like' of the current track - but I don't know how to get the track data to describe in a notification what track has been liked and if a like was added or removed by pressing the shortcut.
The only code I've had to write to make this happen so far with a generalized notification "Track Like Toggled" is the following in main.js:
 globalShortcut.register('Option+Shift+L', () => {
	soundcloud.likeUnlike()
 	let title = "Track Like Toggled"
 	mainWindow.webContents.send('notification', {title})
 })

I used similar notification code to the function soundcloud.on('play-new-track'), but I don't know how to implement a similar soundcloud.on('track-liked') and soundcloud.on('track-disliked'). Is this possible with the SoundCloud API included in soundcleod? Is there documentation on the API? I was unable to locate it myself.

@gamemasta0 the good news is, this shortcut already exists both in SoundCleod or on soundcloud.com. Just press the key 'L' to like/unlike the currently playing track.
You can learn more about SoundCloud's built-in shortcuts by pressing '?'.
I hope this helps.

@salomvary I understand that, but that’s not what I’m talking about. I made a shortcut that can be accessed when the app is not focused! The ‘L’ shortcut only works when in-app. I want to be able to like a song when I’m in another app, like how the media keys can be used anywhere. Also, my question wasn’t how to do that, I’ve already built that. I’m trying to make a notification to give feedback to the user that the shortcut worked and also that they ‘liked’ or ‘disliked’ the song. Right now, it just says that the keyboard shortcut toggled ‘like’, but doesn’t say whether or not the song was ‘liked’ or ‘disliked’. Does the API have access to the ‘like’ status of the current track?

@gamemasta0 Sorry, I missed the bit about a global shortcut.
The "API" to programmatically trigger like/unlike is here: https://github.com/salomvary/soundcleod/blob/b7a5658621e316814a0134a6d6c772aa28a1874e/app/soundcloud.js#L34-L36
This is for example how the main menu uses it: https://github.com/salomvary/soundcleod/blob/13bd4e9f467debc669539ee89511e5c982017188/app/main.js#L160-L164

Does the API have access to the ‘like’ status of the current track?

There is nothing implemented for reading like status right now, you can do something similar to how getTrackMetadata works:
https://github.com/salomvary/soundcleod/blob/b7a5658621e316814a0134a6d6c772aa28a1874e/app/preload.js#L12-L19
I imagine you will actually have to implement this in multiple steps:

Sent the keyboard shortcut to like/remove like
Listen to a "track was liked" event
If that event was received, get track metadata
Show a notification (with the like status and/or track metadata)

I hope this now actually helps. Catching that "track was liked" event from SoundCloud will be a tricky one, it might involve digging into some internals on soundcloud.com.

You might find some useful bits about getting the like status on this now abandoned pull request: #148.


[DCOS-53297] fix(ui-update): parse build version in data-layer

Updated the ui-update data-layer to parse the build version from string
provided instead of relying on semver.coerce. We currently use the
template of <branch>+<build_version>(+<build_hash>)? when branch is
master coercing the value gives use the build version, but if the
build is made from a release branch, 1.13 then 1.13 is returned from
semver.coerce instead of our desired build verions after the first +.
I added a parseVersion utility to the ui-update data-layer to handle
getting the build version from the string assuming the template is
followed. Unit tests for the utility and data-layer were added as well.

Closes DCOS-53297
Closes DCOS-53295

Testing

running locally update src/index.html line 34 from window.DCOS_UI_VERSION = "0.0.0-dev+semantic-release"; to window.DCOS_UI_VERSION = "1.13+v2.78.2";
navigate to UI-Setting page
Verify Installed Version is 2.78.2 and not 1.13

Trade-offs

Dependencies

Screenshots

Before:

After:

:tada: This PR is included in version 2.93.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Vault ClusterIssuer not working

Background:
Looking to use the integration between cert-manager and vault to automatically issue certificates to endpoints in a k8s cluster (ingress to start).  I am mostly following this guide but putting vault and cert-manager into their own namespaces instead of both into the default namespace.  The issue seems to be with how cert-manager is attempting to authenticate with Vault based on the error but I don't want to make any assumptions
Version details and error:
K8s: v1.24.8+k3s1
Vault: 1.12.1
Cert-Manager: v1.11.0
Error received on the ClusterIssuer:
Failed to initialize Vault client: error reading Kubernetes service account token from issuer-token: error calling Vault server: context deadline exceeded

Pertinent Vault configuration:
kubectl exec -n vault vault-0 -- vault auth enable kubernetes

kubectl exec -n vault vault-0 -- vault write auth/kubernetes/config \
kubernetes_host="https://$KUBERNETES_PORT_443_TCP_ADDR"

kubectl exec -n vault vault-0 -- vault write auth/kubernetes/role/issuer \
bound_service_account_names=issuer bound_service_account_namespaces=cert-manager \
policies=pki ttl=1h

From my understanding, the last line binds the issuer serviceaccount in the cert-manager namespace to the issuer role in Vault which I think means the that the serviceaccount will be able to request certificates from the previously defined pki endpoint.
Pertinent Cert-Manager configurations:
Install method: Helm via Flux
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
  name: cert-manager
  namespace: flux-system
spec:
  dependsOn:
    - name: vault
  chart:
    spec:
      chart: cert-manager
      reconcileStrategy: ChartVersion
      sourceRef:
        kind: HelmRepository
        name: cert-manager-helm-repo
        namespace: flux-system
      version: v1.11.0
  install:
    createNamespace: true
    remediation:
      retries: 3
  interval: 1h0m0s
  releaseName: cert-manager
  targetNamespace: cert-manager
  values:
  #   installCRDs: true <- CRDs ARE BEING INSTALLED AS A MANIFEST VIA FLUX
    clusterResourceNamespace: cert-manager

ClusterIssuer configuration:
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
  name: vault-issuer
spec:
  vault:
    server: https://vault.vault.svc.cluster.local
    path: pki/sign/wsp-dot-local
    caBundleSecretRef:
      name: ca-bundle
      key: ca-chain.cert.pem
    auth:
      kubernetes:
        mountPath: /v1/auth/kubernetes
        role: issuer
        secretRef:
          name: issuer-token
          key: token

Issue ServiceAccount configuration:
apiVersion: v1
kind: ServiceAccount
metadata:
  name: issuer
  namespace: cert-manager

In Kubernetes 1.24.x+, serviceaccount tokens are no longer created by default.  Trying to use a long-lived token here just to get something to work.  Here's the configuration to create the serviceaccount token for the issuer serviceaccount:
apiVersion: v1
kind: Secret
metadata:
  name: issuer-token
  namespace: cert-manager
  annotations:
    kubernetes.io/service-account.name: issuer
type: kubernetes.io/service-account-token

This issue led to including this RBAC to give the issuer serviceaccount access to the Kubernetes TokenReview API:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: role-tokenreview-binding
  namespace: cert-manager
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: system:auth-delegator
subjects:
  - kind: ServiceAccount
    name: issuer
    namespace: cert-manager

Please let me know if any further configuration details/output is required and thanks in advance for any assistance.  Been banging my head against this for longer than I would care to admit.

/cc @maelvls

Hi! The error message suggests that cert-manager fails while trying to contact Vault (although the message also mentions "reading Kubernetes service account from issuer-token", which is utterly confusing and I’ll need to double check in the cert-manager codebase why that is).
"Context deadline exceeded" is probably hiding some other error, probably a reachability issue.
Could you try running a netshoot container and try contacting Vault from there using curl?

The misleading error message is a known issue https://github.com/cert-manager/cert-manager/issues/4620#issuecomment-1218252163 - it's because we don't health check Vault because attempting to get the token.

@maelvls @irbekrm, thanks for the responses and additional info.  Crafting API calls from a netshoot container has provided more information proving the issue is on the Vault side, but curious to get your take.
Exported values corresponding to the service account token and the root token:
tshoot:/var/run/secrets/kubernetes.io/serviceaccount# export SA_TOKEN=$(cat token)
tshoot:/var/run/secrets/kubernetes.io/serviceaccount# export ROOT_TOKEN=################

Created a payload.json with a CN to pass in with the API call:
{
  "common_name": "example.wsp.local"
}

The call with the SA_TOKEN failed with a generic error:
tshoot:~# curl --cacert /root/ca-cert/ca-chain.cert.pem \
> --header "X-Vault-Token: $SA_TOKEN" \
> --request POST \
> --data /root/payload.json \
> https://vault.vault.svc.cluster.local:8200/v1/pki/sign/wsp-dot-local
{"errors":["1 error occurred:\n\t* internal error\n\n"]}
tshoot:~#

But the call with the ROOT_TOKEN threw an error that the csr was empty:
> tshoot:~# curl --cacert /root/ca-cert/ca-chain.cert.pem \
> --header "X-Vault-Token: $ROOT_TOKEN" \
> --request POST --data /root/payload.json \
> https://vault.vault.svc.cluster.local:8200/v1/pki/sign/wsp-dot-local
{"errors":["\"csr\" is empty"]}
tshoot:~#

I didn't think a CSR was for this call based on the Vault API Docs, does Cert-Manager pass one in?
I created an updated payload with a CSR and got a generic error back from Vault using both the SA_TOKEN and a head-scratcher of an error back using the ROOT_TOKEN:
tshoot:~# curl --cacert /root/ca-cert/ca-chain.cert.pem \
> --header "X-Vault-Token: $SA_TOKEN" \
> --request POST \
> --data /root/payload.json \
> https://vault.vault.svc.cluster.local:8200/v1/pki/sign/wsp-dot-local
{"errors":["1 error occurred:\n\t* internal error\n\n"]}

tshoot:~# curl --cacert /root/ca-cert/ca-chain.cert.pem \
> --header "X-Vault-Token: $ROOT_TOKEN" \
> --request POST \
> --data /root/payload.json
> https://vault.vault.svc.cluster.local:8200/v1/pki/sign/wsp-dot-local
{"errors":["\"csr\" is empty"]}
tshoot:~# cat payload.json
{
  "csr": "#######",
  "common_name": "example.wsp.local"
}
tshoot:~#

This leads me to believe that either Vault is misconfigured somehow or I used the wrong endpoints in my manual tests here.  Does this conclusion jive with your experience?
Does Cert-Manager craft its own CSRs in this integration with Vault?  I assume so given that the path provided in the ClusterIssuer is pki/sign/:role.

Thanks for investigating! The message context deadline exceeded makes me think there is some connection hanging at some point, either during the authentication with Vault or when Vault does the token review to the Kubernetes API server:
cert-manager     ---------->         vault      -------->     kube-apiserver
                authenticate                  token review
                     (1)                           (2)

Now that you have confirmed that any pod can connect to Vault (e.g., (1)), can you confirm that Vault is able to reach kube-apiserver?
Also, I see that you are using port 443 in the ClusterIssuer:
server: https://vault.vault.svc.cluster.local

but in your manual tests you seem to be using port 8200.

Doh!  That will do it. Thanks, @maelvls.  I found an additional issue where the intermediate imported into Vault was not allowing any additional intermediates to be cut.  I think this issue can safely be closed with PEBCAK as the cause.  Thanks for your support.


how to run it on Mac

I install the package.
but how do I run it?

Hi @alegolas79
Sorry for the late reply, looks like I had notifications turned off :(
Anyway, the package provides an entry point nemo_bldc, so you should just type that in a terminal (in the python virtual environment where you installed it). I haven't tested it on Mac but I expect it to work like on Linux once the install is successful.
Could you try running the nemo_blcd command and tell me how it goes ?

Closing due to inactivity, feel free to reopen if this is still an issue.


Add a contact form for contacting to admin

Use<EMAIL_ADDRESS>for form redirection.
website link: https://sharma-academy.netlify.app/

@KIET7UKE Can I work on this? I'm a full stack developer (HTML CSS Javascript + MERN Stack - MongoDB Express Js React Js Node Js)

Yes definitely, go for it @abhishekpatil4

@KIET7UKE  Completed the assigned work, please validate my PR

I want to work on this can you assign me this

Hey @abhishekpatil4 have you added the contact form ??

@KIET7UKE Yes 22 days ago, please check my PR


Environment level environment variables are mislabeled in the UI

There must have been a regression somewhere, as this used to be correct.

Corrected in https://github.com/uselagoon/lagoon-ui/pull/238


Useless

Useless as it does not explain properly how to fix the error, this page only shows the error, no help at all
[Enter feedback here]

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

ID: acaebf3a-9f03-a00d-d986-f79fa8998dd7
Version Independent ID: dbb3d460-3ab5-46c1-9ec2-daef79dbec5c
Content: Compiler Warning (level 1) C4273
Content Source: docs/error-messages/compiler-warnings/compiler-warning-level-1-c4273.md
Product: visual-cpp
Technology: cpp-diagnostics
GitHub Login: @corob-msft
Microsoft Alias: corob

@GuidoSE
To fix the issue, delete the declaration that caused the error. That's explained in the comments in the first sample. In some cases, you may want to delete the first declaration instead, but if the first declaration is in a header file, you almost always want to delete the declaration where the warning is reported.

Thank you for your reply however it does not help as the error is too generic. My issue is with a definition and declaration in C within a C++ DLL. If I delete the definition in the header, pointless as no code to write. If I delete the declaration then no code, nothing actually does anything.
The comments compile with /W1 /clr /c mean little but could be traced to actually compiler settings after searching but it does not even touch on the solution to the problem.

@GuidoSE
Warning C4273 occurs because the compiler found a symbol (a variable or function) that has two different, incompatible declarations. You can declare a symbol as often as you like, but the declarations all have to match. You can only define a symbol once, and the signature of the definition has to match the declaration, if there's a separate one. If you define the symbol inline in a header file, then including the header file is all you need to do to use the symbol; you don't have to declare it again. This should cover all the cases where warning C4273 can occur.

@GuidoSE
Reading your reply a little more closely, there are some rules regarding extern "C" or extern "C++" that can affect declarations in a way that could cause C4273. It's possible to call C++ functions with decorated names from C code, but you have to capture the decorated name. It's much easier to declare a C++ function as extern "C", wrapped in a preprocessor macro, if you want to call it from C code. The Export C functions for use in C or C++ language executables article has more details.

Published a fix for clarification.


Code error

The format of your path is wrong, i.e., 'data/vecfont_dataset\train\train_all.pkl'.

My experiments were running on Linux, so you need to do some modifications by changing '/' to '\' in the path names.


Options   --replication=  Service Replication   --replicas=  Service ReplicationDelete LICENSE-MIT

Hello,
What would be the purpose of this PR?


[Exclusivity] Relax closure enforcement on separate stored properties

Make the static enforcement of accesses in noescape closures stored-property
sensitive. This will relax the existing enforcement so that the following is
not diagnosed:
struct MyStruct {
var x = X()
var y = Y()
mutating
func foo() {
x.mutatesAndTakesClosure() {
_ = y.read() // no-warning
}
}
}
To do this, update the access summary analysis to summarize accesses to
subpaths of a capture.
rdar://problem/32987932

@swift-ci Please test Linux

@swift-ci Please test and merge


Add linux aarch64 support.

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

This PR is an attempt to add linux aarch64 support.  If it doesn't work out of the box, I'll leave it here for reference, but I don't plan on pushing into any deep architectural issues.

I tried with cross-compiling (which is fast) and it failed for some reason.  I then tried with emulation (which is slow but cheap) and it worked.  This is the preferred method on conda-forge (rather than native which may or may not be faster, but is definitely more expensive).  So I think this is ready, provided you want to support linux aarch64.

Thank you Eli!
I should poke at getting this feedstock up to date with the newest version of open orb (it doesn't autoupdate), but it's great to have it available like this.


Replace MtToEs stages Dataproc cluster usage with Hail Batch

There are several good reasons to reduce our reliance on Dataproc clusters, but some important reasons are that they are less transparent than Hail Batch jobs, they require dedicated "start cluster", "submit to cluster", and "stop cluster" jobs to run their workflows, and are generally more cumbersome and less user friendly.
Dataproc clusters have largely been eliminated from cpg workflows where possible, but one last holdout for them is in the MtToEs stage, as well as the MtToEsSv and MtToEsCnv stages.
In each of these cases, the dataproc_scripts/mt_to_es.py script is invoked in the same way, to transform an existing Hail MatrixTable mt into a seqr ready elasticsearch index.
script = (
     f'cpg_workflows/dataproc_scripts/mt_to_es.py '
     f'--mt-path {dataset_mt_path} '
     f'--es-index {index_name} '
     f'--done-flag-path {done_flag_path} '
     f'--es-password {es_password_string}'
)
...
j = dataproc.hail_dataproc_job(
      get_batch(),
      script,
      ...,
      depends_on=inputs.get_jobs(dataset)
)

We should look at improving this process by eliminating the Dataproc cluster. We should use Hail Batch to connect to the Elasticsearch cluster and write to it directly. The use of the plaintext es-password should also be removed.

Relevant: https://github.com/populationgenomics/hail/blob/eea6227f1c7b9b58971b21ab5cd199882bba8446/hail/python/hail/methods/impex.py#L3331-L3332
https://github.com/populationgenomics/hail/blob/eea6227f1c7b9b58971b21ab5cd199882bba8446/hail/src/main/scala/is/hail/io/ElasticsearchConnector.scala#L61

https://github.com/populationgenomics/production-pipelines/compare/MtToEs_outside_dataproc?expand=1
This is a first attempt at taking all the DataProc MT -> ES translation, and removing all the guff. It is theft for sure.
Instead of relying on the seqr-loading-pipelines code, this extracts only the parts we need:

We currently import and use the HailElasticSearch client (here)
That's a few levels of inheritance away from the ElasticSearchClient, which is just a thin class that calls some ES methods.
The HailElasticSearchClient we're importing from seqr-loading-pipelines contains a whole load of methods to use if the arguments have non-default values, but of the mostly null default arguments we only pass row_ht (table), index_name, num_shards, and write_null_values=True. The result is that almost the added code between the elastic search library and this HailElasticSearchClient is not used by us, so we can drop it.

The current process takes an ES password in plain text as an argument, then spends 16 lines working out if we can find the password again (here). This becomes "use config variables to find a password, quit if unsuccessful" here. Added bonus - no longer need to generate and pass a secret in advance, as we do here
starts a non-local hail batch (this only works in DataProc as the relevant data is pseudo-localised), so now we do this
the methods elasticsearch_row, _mt_num_shards, and _cleanup are copied
Instead of using the imported HailESClient and overriding some more methods, I've created a fresh class here. This contains all the methods that we used in the imported class, and none of the methods that would be triggered only if we overrode the default arguments - i.e. most of the logic here is not executed when we use the client, so we don't need the relevant methods in our client
We do use a number of methods to encode Hail Types as ES types, so I've copied in the relevant constants and the methods that use them

NGL, I don't really know how to test this without YOLO'ing all in, but if it works we can remove our dependency on the seqr-loading-pipelines submodule forever.
@illusional @EddieLF do we have a test ES instance for test-Seqr?

We don't @MattWellie, but it shouldn't really matter right? Just pick a matrix table, import it with some ES index name, and connect it in staging. @MattWellie, can you create a draft PR of those changes, make it easy to comment directly.

Solution looks great @MattWellie! Thanks for the rundown too.
We don't have a specific test ES instance for seqr-staging or seqr-reanalysis-dev. When we load ES Indices into these test projects, we have to give the seqr-staging / seqr-reanalysis-dev roles access to those specific indices via the ES kibana page.
In terms of writing to the ES cluster, I don't think there should be any issues even with a test account, so long as we provide the correct ES password and route