backward compatibility V1-> v2

I don't understand why you haven't achieved backward compatibility between V1 and V2. So programs that worked perfectly in V1 no longer work in V2, it's incomprehensible. Why didn't you do what was necessary? For example, I used the blokcly talky extension in BLE which works fine in V1, and nothing works in V2. I admit that I do not understand because everything worked perfectly in V1 and there it is complicated. People have spent a lot of time creating extensions, with the switch to V2 nothing works anymore. For example the sampling of an analog voltage is badly sampled with non-constant time at start-up? In addition, the Android application does not work at all. I even have a V2 card which is totally crashed with the display of an icon followed by a number which is constantly displayed, even after flashing the V2 firmware. In short, very complicated to use your V2 which poses big concerns. Nothing to do with V1, which is very good. I don't understand why you didn't develop reliable firmware before it came to the market. Thank you for your quick help and for making V2 reliable. Why your V2 is still not compatible with the Mu IDE, while the V1 works perfectly with MU. When will you finally offer the standard BLE python commands now that you have to increase the memory. Personally, I do not see the interest of your V2 which brings nothing and even less than the V1. Thank you for your very precise answers and your quick help.

What issues are you having with Mu? Have you loaded the latest hex? https://github.com/microbit-foundation/micropython-microbit-v2/releases/tag/v2.0.0-beta.5  It works without issue for me using Mu 1.0.3 and 1.1.0 beta 2

I had put the microbit V2under miantenance mode, and drag and drop the file hex into V2. I had start Mu 1.1.0 alpha2. select microbit. But no repl, impossible to flash. Do you have the right procedure please.
But in general, there is to many issues with V2, nothing has been test correctly. So V1 is much better.
I thought that with the new card and its new hardware and its larger memory, that this would bring us real progress. It's quite the opposite. The developed firmware does nothing. We spend too much time debugging the system. Whereas when V1 was released, everything worked the first time. There it is a real disaster. Nothing with BLE, sampling analog signals is a concern, no fft for sound analysis. In short, the V2 only provides a simple microphone and very basic speaker with which you can hardly do anything. More V1-> V2 compatibility. Shame. And to think that we will soon find no more V1 and only V2. Really too bad. This V2 card was released in Nov 2020, and since then, nothing new, nothing has progressed.
On the official next page nothing about the Mu IDE, only the microbit python IDE which is not suitable at all, no autocompletion, no REPL, nothing to do with MU. Why Microbit does not comminute on MU which is really much better without comparison with the proprietary tool of Microbit.
https://microbit.org/fr/get-started/first-steps/set-up/
Why is there no explanation for using Mu on the official page for using the Mu IDE?
In short, everything is very complicated with V2
There is plubicity with the application on Android, but nothing works. Why all the publicity when nothing is working?
I admit I am extremely disappointed with this V2, while I am very reliant on the V1.

Maintaining software compatibility between all micro:bit revisions is of great importance and you should be able to use the latest V2 micro:bit in the same way you would the original.  If you have an issue with a particular program, you may need to update the .hex file in the editor to use it with all micro:bits.
If you see any errors, this knowledgebase article describes the errors and what you need to do to resolve them.
The Python Editor at https://python.microbit.org supports all micro:bit revisions and as of this week, so does the latest release of the Mu editor. 🎉
You can read about the Mu release to support V2 and download it from the Mu website https://codewith.mu/en/download
Features such as the REPL are available in the current editor, providing that the browser you are using supports WebUSB.
The Python Editor beta https://python.microbit.org/v/beta also contains the autocomplete feature.
The micro:bit Android app is also open source and you will see Android app issues  that the developers are aware of in the repository. You can find support for the pairing and flashing process in the knowledgebase and you can also sign up to test the android beta via the play store.
I hope that resolves the concerns raised here.

Connect a simple Grove kit button sensor from the BitGadget kit and load this Python on V2 microbit:
from microbit import *
while True:
reading = pin0.read_analog()
print(reading)
sleep(500)
The BitMaker board has a power switch that supplies either 5V or 3.3V to attached sensors.
SIMPLE BUTTON SWITCH pressed on
Using a V2 microbit:
When the button is ON the reading is 1020 with BitMaker board is set to 3.3V (CORRECT)
and 789 when it is set to 5V. (VERY INCORRECT)
Using a V1 microbit:
When the button sensor is on the reading is 1020 with BitMaker board set to 3.3V  (CORRECT!)
and 1023 when it is set to 5V.(CORRECT!)
SOUND SENSOR testing max sound input
Using a V2 microbit:
Sound sensor max reading is 900 with BitMaker board set to 3.3V (INCORRECT)
and 1023 when it is set to 5V. (CORRECT)
Using a V1 microbit:
Sound sensor max reading is 1023 with BitMaker board set to 3.3V  (CORRECT!)
and 1023 when it is set to 5V.(CORRECT!)
In other words, the V1 microbit seems to handle both 5V and 3.3V sensors perfectly, whereas V2 does not.
Any ideas?

@indigo51 I am not familiar with the BitGadget kit, and I failed to find good documentation online, but note that connecting 5V to the micro:bit edge connector of V1 or V2 may damage micro:bit. I suspect the 5V option is intended for use with particular sensors or devices. I'm pretty sure this isn't a Python issue. If you need more information, feel free to create a support ticket at https://support.microbit.org/support/home.


resources not found under /api/ endpoint

Hello author:
When I use feroxbuster, for example: http://xxx.com/a/api/, my idea is to scan the /api/ directory, but I look at the results of feroxbuster, it will scan the directory under xxx.com/, But it will not scan the directory under /a/api/. In fact, there are results in the /api/ directory. I have seen it under ffuf. Does feroxbuster have this parameter?

good morning!
take a look at the link below, follow some of its suggestions, and see how it goes:
https://epi052.github.io/feroxbuster-docs/docs/examples/force_recursion/
typically with an api endpoint, a little more manual investigation is needed to get the results back out.

早上好！
看看下面的链接，遵循它的一些建议，看看它是如何进行的：
https://epi052.github.io/feroxbuster-docs/docs/examples/force_recursion/
通常对于 api 端点，需要更多的手动调查才能返回结果。
如果您认为存在实际错误，那么拥有一个端点可以展示您所看到的行为并知道您期望发生什么，这将很有帮助。谢谢！

This is not the effect I want. I mean scanning xxx.com/a/api/, which means that the api directory does not scan other directories.

早上好！
看看下面的链接，遵循它的一些建议，看看它是如何进行的：
https://epi052.github.io/feroxbuster-docs/docs/examples/force_recursion/
通常对于 api 端点，需要更多的手动调查才能返回结果。
如果您认为存在实际错误，那么拥有一个端点可以展示您所看到的行为并知道您期望发生什么，这将很有帮助。谢谢！

This is not the effect I want. What I mean is to scan xxx.com/a/api/, that is, to scan the api directory and not to scan other directories

maybe you're looking for --no-recursion ?

maybe you're looking for --no-recursion ?

With the -n parameter, it will only scan the root directory of the website, and will not scan the contents of the specified /a/api/ directory

Hmm, if that's true, that might be a bug. I'll look into it here shortly

I'm not seeing the behavior you're describing

Please see, I want to scan the /dist/ directory, but feroxbuster is scanning the contents of the root directory. The command I use is: -A -k -n -w -u

can you screenshot your banner (like what i showed in my screenshot), so i can see exactly what settings are turned on/off?

你能截屏你的横幅吗（就像我在屏幕截图中显示的那样），这样我就可以确切地看到打开/关闭了哪些设置？

interesting;
can you run the same command, and add the options shown below, then upload the resulting debug file?
--debug-log debug-log.txt -vvv
You don't need to do a full scan, just a few seconds of scanning should be ok for now.

有趣的;
您可以运行相同的命令，并添加如下所示的选项，然后上传生成的调试文件吗？
--debug-log debug-log.txt -vvv
您不需要进行全面扫描，目前只需扫描几秒钟就可以了。
debug-log.txt

有趣的;
您可以运行相同的命令，并添加如下所示的选项，然后上生成的调试文件吗？
--debug-log debug-log.txt -vvv
您不需要进行全面扫描，目前只需扫描几秒钟就可以了。

Is this a bug?

not sure yet, can you upload your wordlist as well?

w.txt

Hi
I have same problem, i think it come from wordlist element starting with /
in that case, the base url is taken without any additionnal path .
Sample better than word

here is the corresponding wordlist.
test/1
test/2
test/3
/test2/1
/test2/2
/test3
/test4/

您好 我有同样的问题，我认为它来自以 / 开头的 wordlist 元素， 在这种情况下，基本 url 是在没有任何附加路径的情况下获取的。 样例胜于文字

这是相应的单词列表。
测试/1 测试/2 测试/3 /test2/1 /test2/2 /test3 /test4/

Can this problem be solved?

yea, the leading forward slashes are treated as a fully-formed url path, and overwrite the existing path instead of appending to it.
I'm not inclined to call this a bug, as you're providing a list of paths (not a wordlist).
As a workaround, you can simply adjust your wordlist
sed 's#^/\{1,\}##g' w.txt > no-forward-slash-w.txt

Can you improve this function in the program? Because it is true that some websites have weird paths.

At least improve, or better highlights the behavior during engagement.
Something like "WARNING , wordlist url start with / , existing path has been overwritten !!"

@duokebei @roumy yea, we can add a warning when reading in the wordlist, but that's really as far as i care to take this.
passing full paths like this in the wordlist is effectively working against the tool. Consider the list above

if you, instead, split the wordlist into
api
others
1
2
test
test2
test3
test4

through recursion, you'd find all of those resources.
I'm fine with emitting a warning, so folks don't have to come to github to search issues to figure out what's going on :joy:, but my overall recommendation here is to process your wordlist into something that allows ferox to do its best work.

@duokebei @roumy是的，我们可以在阅读单词表时添加警告，但就我而言，这是真的。
在单词列表中传递像这样的完整路径有效地对抗了该工具。考虑上面的列表

相反，如果您将单词表拆分为
api
others
1
2
test
test2
test3
test4

通过递归，你会找到所有这些资源。
我可以发出警告，这样人们就不必到 github 上搜索问题来弄清楚发生了什么😂，但我在这里的总体建议是将您的单词表处理成可以让 ferox 发挥最佳作用的东西。

Can the dear author make an adjustment for this situation in the program source code? Only append the path after the specified url, specify the recursion level, and recurse the level after the specified url, without generating redundant actions. thanks

I have no problem by editing the wordlist,
Just i spend hours to understand why i missed some findings with feroxbuster whereas other (an older) tools found them.
A tips that indicates my mistake would gain lots of time.
I think this tool really rocks !!  would be a shame to switch to other ones due to a lack of confidence in it.

Another request to the author for this feature change.


Add sendMessage() mutation

Add a GraphQL mutation that will be used on the Contact Us page and Send Feedback modal dialog. For example:
mutation {
  sendMessage(type: FEEDBACK, message: "Hello world!", email<EMAIL_ADDRESS>}

See

src/mutations/SendMessage.js
src/server/mutations/contact.js

Bonus points for making it work with Firebase reCaptcha.

@koistya is this issue still open ? if it is i would be happy to contribute.

@Yahyakiani yep, that would ge great!


Drop glyphicons code from source and dist files

Great 👍🏼

Great theme, buddy! :+1:

Thanks :smiley:


'Macro_InvokeRules_MatchPattern - No arm matched' error in mrustc

Code
$ cat 2.rs
code:
macro_rules! cbor_map {
    ($key:expr) => {
        $key.signum();
    };
}

fn main() {
    cbor_map! {
        #[cfg(test)]
        8
    };
}

It seems that the macro expansion failed to match any arms in the cbor_map! macro definition.
Command
mrustc -L output-1.54.0 2.rs
Output
Setup: V V V
(0.00 s) Setup: DONE
Target Load: V V V
(0.00 s) Target Load: DONE
Parse: V V V
(0.00 s) Parse: DONE
LoadCrates: V V V
(0.39 s) LoadCrates: DONE
Expand: V V V
/home/interesting/mrustc/2.rs:11:7 BUG:src/macro_rules/eval.cpp:1920: TODO: Macro_InvokeRules_MatchPattern - No arm matched - (0, 21)
Aborted (core dumped)

Version
I build the mrustc by using build-1.54.0.sh
mrustc --version
rustc 1.29.100 (mrustc v0.10.0 master:4c7e8171)
release: 1.29.100
- Build time: Tue, 26 Sep 2023 07:36:21 +0000
- Commit: 4c7e81716493678df9fe9cac86ea9beedc57db44

If rustc accepts that code, then it's a mrustc bug and will be addressed next time I do a push to clean up tickets.

Invalid: Rustc does not accept that code
tpg@gaige$ rustc samples/test/issue-mrustc-321.rs
error: removing an expression is not supported in this position
 --> samples/test/issue-mrustc-321.rs:9:9
  |
9 |         #[cfg(test)]
  |         ^^^^^^^^^^^^

error: aborting due to 1 previous error

Current mrustc provides a slghtly better error:
MACRO<::""::cbor_map> error:0:#[cfg] not allowed in this position
samples/test/issue-mrustc-321.rs:11:7: note: From here


Standardize logging

Non-urgent, but I think it'd be helpful at some point to briefly talk about what/how we should be logging across normalizers and sources and make it uniform.

Pending further discussion on logging in metakb, I took some notes on what we're doing/could do in the normalizers here: https://docs.google.com/spreadsheets/d/1rG6ec8t0SXwKHdIoC31R2TqUuvx3NxBLgDZ0H5fAxBA/edit?usp=sharing

Pending further discussion on logging in metakb, I took some notes on what we're doing/could do in the normalizers here: https://docs.google.com/spreadsheets/d/1rG6ec8t0SXwKHdIoC31R2TqUuvx3NxBLgDZ0H5fAxBA/edit?usp=sharing

some more todo's

[ ]     Get app logs to show in EB
[ ]     Hide unneeded debug logging
[ ]     Standardize logging across modules

@jsstevenson Elastic Beanstalk is no longer needed


Campaigns created by the user is not displayed in the home page

Description

Even through user has created the campaigns, the campaigns are not displayed in the Dashboard Tab.
Created Campaigns should also be listed in All Campaigns Tab.

Screenshots

Additional information
No response

Please assign this issue under Gssoc'23

Assigned you!


2.12.x regression: play2-core failing

a big 2.12 support commit (of @wsargent's) dropped recently, so maybe it has something to do with that.
there's an off chance there's a Scala regression here that's a concern for the 2.12.1 release

at e.g. https://scala-ci.typesafe.com/job/scala-2.12.x-integrate-community-build/1010/consoleFull we see:
[play2-core] [info] Compiling 5 Scala sources and 7 Java sources to /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.7-RC1/project-builds/play2-core-633ae55f7795a692763d273744261730c41cb13f/framework/src/play-test/target/scala-2.12.1-50d46c1-nightly/classes...
[play2-core] [error] /home/jenkins/workspace/scala-2.12.x-integrate-community-build/target-0.9.7-RC1/project-builds/play2-core-633ae55f7795a692763d273744261730c41cb13f/framework/src/play-test/src/main/scala/play/api/test/Helpers.scala:468: object creation impossible, since method materialize in class Materializer of type [Mat](runnable: akka.stream.Graph[akka.stream.ClosedShape,Mat], initialAttributes: akka.stream.Attributes)Mat is not defined
[play2-core] [error] private[play] object NoMaterializer extends Materializer {
[play2-core] [error]                      ^
[play2-core] [error] one error found
[play2-core] [error] (Play-Test/compile:compileIncremental) Compilation failed
[play2-core:error]

maybe an Akka version mismatch?

maybe freezing Akka at the v2.4.12 tag will fix it; that's the version of the binary dependency Play currently has. test run: https://scala-ci.typesafe.com/job/scala-2.12.x-integrate-community-build/1015/consoleFull

in #417 I froze Akka at 2.4.12 to make the problem go away. but that's not a good long-term solution. @wsargent @patriknw @ktoso? did Akka inadvertently make a source-incompatible change here?

Oh, extending materializer is not covered by compat guarantees – Play should fix their NoMaterializer I can send in a PR for that.

And done: https://github.com/playframework/playframework/pull/6767

the particular issue here is now fixed, and the broader issue is https://github.com/scala/community-builds/issues/421


[Skip CI] add api testing suite for ldap scenario: no user creation and user de…

…leting cases comparing to the general scenario

Coverage decreased (-0.03%) to 57.47% when pulling d7f99d5604d43bd63d2d12d372d10fe857bfe12a on add_test_suite_for_ldap into 7946b07fcec78ab621fc79bfcad7140bc972aa79 on master.

Coverage decreased (-0.03%) to 57.47% when pulling bdb26139d73afe6091275f42094fc275e47b2e63 on add_test_suite_for_ldap into 7946b07fcec78ab621fc79bfcad7140bc972aa79 on master.


Empty pages cause empty GUI

When no pages are available the GUI gets empty (just the background)
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.196 - skills - ovos_core.intent_services.commonqa_service:handle_question:155 - INFO - Searching for who is Steve Job
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.221 - skill-ovos-wolfie.openvoiceos - DEBUG - WolframAlpha query: who is Steve Job
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.226 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:200 - DEBUG - skill-ovos-ddg.openvoiceos is searching
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.236 - skill-ovos-ddg.openvoiceos - DEBUG - skipping auto translation for DuckDuckGo, en-us is supported
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.237 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:200 - DEBUG - skill-ovos-wolfie.openvoiceos is searching
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.243 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:200 - DEBUG - skill-ovos-wikipedia.openvoiceos is searching
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.325 - skill-ovos-wolfie.openvoiceos - DEBUG - skipping auto translation for wolfram alpha, en-us is supported
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.375 - skills - padacioso:calc_intent:255 - DEBUG - {'entities': {'keyword': 'Steve Job'}, 'conf': 0.96, 'name': 'question'}
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.378 - skills - skill_ovos_wikipedia:extract_keyword:61 - DEBUG - Wikipedia Keyword: Steve Job - Confidence: 0.96
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.382 - skills - skill_ovos_wikipedia:get_data:74 - DEBUG - WikiSolver query: Steve Job
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.791 - skills - padacioso:calc_intent:255 - DEBUG - {'entities': {'keyword': 'Steve Job'}, 'conf': 0.96, 'name': 'question'}
Aug 05 16:21:13 mark2 ovos-core[47058]: 2024-08-05 16:21:13.795 - skills - skill_ovos_ddg:match_infobox_intent:116 - DEBUG - DDG Intent: question Keyword: Steve Job - Confidence: 0.96
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.010 - skills - skill_ovos_wikipedia:get_data:97 - DEBUG - Found image: https://upload.wikimedia.org/wikipedia/commons/d/dc/Steve_Jobs_Headshot_2010-CROP_%28cropped_2%29.jpg
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.012 - skill-ovos-wikipedia.openvoiceos - INFO - Wikipedia answer: Steven Paul Jobs was an American businessman, inventor, and investor best known for co-founding the technology company Apple Inc.
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.024 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:209 - INFO - Answer from skill-ovos-wikipedia.openvoiceos
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.027 - skill-ovos-wolfie.openvoiceos - DEBUG - WolframAlpha response: Steven Paul Jobs (February 24, 1955 – October 5, 2011) was an American businessman, inventor, and investor best known for co–founding the technology giant Apple Inc.
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.030 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:216 - DEBUG - Done waiting for skill-ovos-wikipedia.openvoiceos
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.033 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:226 - DEBUG - Waiting up to 2.214053153991699s for other skills
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.044 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:209 - INFO - Answer from skill-ovos-wolfie.openvoiceos
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.047 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:216 - DEBUG - Done waiting for skill-ovos-wolfie.openvoiceos
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.049 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:226 - DEBUG - Waiting up to 2.1977813243865967s for other skills
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.185 - skill-ovos-ddg.openvoiceos - INFO - DDG answer: Steven Paul Jobs was an American businessman, inventor, and investor best known for co-founding the technology company Apple Inc.
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.200 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:209 - INFO - Answer from skill-ovos-ddg.openvoiceos
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.202 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:216 - DEBUG - Done waiting for skill-ovos-ddg.openvoiceos
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.203 - skills - ovos_core.intent_services.commonqa_service:handle_query_response:221 - DEBUG - All skills answered
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.207 - skills - ovos_core.intent_services.commonqa_service:_query_timeout:244 - INFO - Check responses with 3 replies
Aug 05 16:21:14 mark2 ovos-core[47058]: 2024-08-05 16:21:14.219 - skills - ovos_core.intent_services.commonqa_service:_query_timeout:271 - DEBUG - Tied skills: ['skill-ovos-wikipedia.openvoiceos', 'skill-ovos-wolfie.openvoiceos', 'skill-ovos-ddg.openvoiceos']
Aug 05 16:21:17 mark2 ovos-core[47058]: 2024-08-05 16:21:17.278 - skills - ovos_core.intent_services.commonqa_service:_query_timeout:282 - INFO - ReRanked score: 0.0001580840180395171 - {'phrase': 'who is Steve Job', 'skill_id': 'skill-ovos-wolfie.openvoiceos', 'answer': 'Steven Paul Jobs (February 24, 1955 – October 5, 2011) was an American businessman, inventor, and investor best known for co–founding the technology giant Apple Inc.', 'handles_speech': True, 'callback_data': {'query': 'who is Steve Job', 'answer': 'Steven Paul Jobs (February 24, 1955 – October 5, 2011) was an American businessman, inventor, and investor best known for co–founding the technology giant Apple Inc.'}, 'conf': 1.72}
Aug 05 16:21:17 mark2 ovos-core[47058]: 2024-08-05 16:21:17.284 - skills - ovos_core.intent_services.commonqa_service:_query_timeout:282 - INFO - ReRanked score: 0.00012666151451412588 - {'phrase': 'who is Steve Job', 'skill_id': 'skill-ovos-ddg.openvoiceos', 'answer': 'Steven Paul Jobs was an American businessman, inventor, and investor best known for co-founding the technology company Apple Inc.', 'handles_speech': True, 'callback_data': {'query': 'who is Steve Job', 'answer': 'Steven Paul Jobs was an American businessman, inventor, and investor best known for co-founding the technology company Apple Inc.'}, 'conf': 1.2799999999999998}
Aug 05 16:21:17 mark2 ovos-core[47058]: 2024-08-05 16:21:17.287 - skills - ovos_core.intent_services.commonqa_service:_query_timeout:287 - INFO - Handling with: skill-ovos-wolfie.openvoiceos
Aug 05 16:21:17 mark2 ovos-core[47058]: 2024-08-05 16:21:17.313 - skills - ovos_core.intent_services.commonqa_service:handle_question:178 - DEBUG - answered=True|remaining active_queries=0
Aug 05 16:21:17 mark2 ovos-core[47058]: 2024-08-05 16:21:17.320 - skills - ovos_core.intent_services:handle_utterance:370 - INFO - common_qa match: IntentMatch(intent_service='CommonQuery', intent_type=True, intent_data={}, skill_id='skill-ovos-wolfie.openvoiceos', utterance='who is Steve Job')
Aug 05 16:21:17 mark2 ovos-core[47058]: 2024-08-05 16:21:17.345 - skills - ovos_core.intent_services:handle_utterance:388 - DEBUG - intent matching took: 4.7890098094940186
Aug 05 16:21:17 mark2 ovos-core[47058]: 2024-08-05 16:21:17.423 - skills - ovos_bus_client.client.client:on_default_session_update:166 - DEBUG - synced default_session
Aug 05 16:21:17 mark2 ovos-core[47058]: 2024-08-05 16:21:17.425 - skills - ovos_bus_client.client.client:on_default_session_update:166 - DEBUG - synced default_session
Aug 05 16:21:20 mark2 ovos-core[47058]: 2024-08-05 16:21:20.265 - skills - ovos_bus_client.util.scheduler:check_state:186 - DEBUG - Call scheduled event: skill-ovos-homescreen.openvoiceos:skill-ovos-homescreen.openvoiceosupdate_dt
Aug 05 16:21:21 mark2 ovos-core[47058]: 2024-08-05 16:21:21.386 - skills - ovos_bus_client.apis.gui:_pages2uri:375 - DEBUG - Requested page not resolved to a file: None
Aug 05 16:21:21 mark2 ovos-core[47058]: 2024-08-05 16:21:21.389 - skills - ovos_bus_client.apis.gui:_pages2uri:376 - DEBUG - Resolved pages: []
Aug 05 16:21:21 mark2 ovos-core[47058]: 2024-08-05 16:21:21.391 - skills - ovos_bus_client.apis.gui:show_pages:448 - DEBUG - Updating gui data: {'wolfram_image': '/tmp/who_is_Steve_Job.gif', '__from': 'skill-ovos-wolfie.openvoiceos'}

this is expected, what isnt expected is getting a empty page to begin with....
i guess this issue may be skill specific or belong in other repo (workshop?)


use gzipped result document

and bump to version 7.0.1, supersedes #244

merge just before https://github.com/mandiant/capa/pull/2208


'exit' Command Not Saving Before Exit

The exit command no longer saves the world before exiting.

Whoops. Fixed in 554dc102bba84585381c239f1a99862b75247f6b.

resolved


Web scraping not working on windows

with chrome.
also tried running chrome --headless
I've no idea.
Scraping url https://github.com/topics/frame-interpolation?l=python&o=desc&s=updated with question recent frame interpolation projects python github
An error occurred while processing the url https://github.com/topics/frame-interpolation: Message: unknown error: Chrome failed to start: was killed.
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location C:\Program Files\Google\Chrome\Application\chrome.exe is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
Stacktrace:
Backtrace:
GetHandleVerifier [0x0068A813+48355]
(No symbol) [0x0061C4B1]
(No symbol) [0x00525358]
(No symbol) [0x00543621]
(No symbol) [0x00540579]
(No symbol) [0x00570C55]
(No symbol) [0x0057093C]
(No symbol) [0x0056A536]
(No symbol) [0x005482DC]
(No symbol) [0x005493DD]
GetHandleVerifier [0x008EAABD+2539405]
GetHandleVerifier [0x0092A78F+2800735]
GetHandleVerifier [0x0092456C+2775612]
GetHandleVerifier [0x007151E0+616112]
(No symbol) [0x00625F8C]
(No symbol) [0x00622328]
(No symbol) [0x0062240B]
(No symbol) [0x00614FF7]
BaseThreadInitThunk [0x758000C9+25]
RtlGetAppContainerNamedObjectPath [0x770F7B4E+286]
RtlGetAppContainerNamedObjectPath [0x770F7B1E+238]

Had the same issue, had to downgrade the chrome version installed on my pc(since it was the latest and it doesn't have a chromedriver yet) and download the matching chromedriver.exe to the downgraded version.
What happens when:
        service = Service(executable_path=ChromeDriverManager().install())

runs is that it will download the most recent stable release of ChromeDriver that matches your version of Chrome by default.
The problem is if you're using the latest chrome browser version there's no chromedriver for it yet.
Easiest way to downgrade is uninstalling chrome from "Add or remove programs"
and then downloading a chrome browser version that has a matching chrome driver from:
https://www.slimjet.com/chrome/google-chrome-old-version.php
(not an official website, you can look for other sources too)
to check what chromedrivers are available you can visit the chromium website, here:
https://chromedriver.chromium.org/downloads

hi @TashaSkyUp  were you able to solve it?

Thank you so very much I have not had the chance to try this yet. Maybe this weekend I'll update then.

exact same errors.

hi @TashaSkyUp were you able to solve it?

after installing chrome  103.0.5060.53 version. https://www.slimjet.com/chrome/google-chrome-old-version.php
it is resolved. and i am just wondering if it is error below.
 Be sure to precompile your scripts for production - https://babeljs.io/docs/setup/", source<EMAIL_ADDRESS>(61666)
[0719/225334.669:INFO:CONSOLE(1)] "Request for the Private Access Token challenge.", source: https://challenges.cloudflare.com/cdn-cgi/challenge-platform/h/b/orchestrate/chl_api/v1?ray=7e937382ed22c094 (1)
[0719/225334.669:INFO:CONSOLE(1)] "The next request for the Private Access Token challenge may return a 401 and show a warning in console.", source: https://challenges.cloudflare.com/cdn-cgi/challenge-platform/h/b/orchestrate/chl_api/v1?ray=7e937382ed22c094 (1)
[0719/225334.722:INFO:CONSOLE(1)] "console.groupEnd", source: https://challenges.cloudflare.com/cdn-cgi/challenge-platform/h/b/orchestrate/chl_api/v1?ray=7e937382ed22c094 (1)
[0719/225334.777:INFO:CONSOLE(10)] "[GPT] Using deprecated googletag.encryptedSignalProviders. Please use googletag.secureSignalProviders instead.", source: https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202307120101/pubads_impl.js?cb=31076101 (10)
[0719/225334.918:INFO:CONSOLE(1)] "33Across Lexicon ID Mappings Provider: PID not found", source: https://www.datadoghq-browser-agent.com/datadog-rum-v4.js (1)
[0719/225334.970:INFO:CONSOLE(10)] "[GPT] Using deprecated googletag.encryptedSignalProviders. Please use googletag.secureSignalProviders instead.", source: https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202307120101/pubads_impl.js?cb=31076101 (10)
[0719/225335.135:INFO:CONSOLE(7)] "AT: [page-init] View delivery error Adobe Target is not opted in", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (7)
[0719/225335.256:INFO:CONSOLE(10)] "[GPT] Using deprecated googletag.encryptedSignalProviders. Please use googletag.secureSignalProviders instead.", source: https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202307120101/pubads_impl.js?cb=31076101 (10)
[0719/225335.307:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:35+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/square-brackets/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225335.309:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:35+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/square-brackets/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225335.310:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:35+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/square-brackets/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225335.358:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225335.435:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225335.632:INFO:CONSOLE(10)] "[GPT] Attempted to load GPT multiple times.", source: https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202307120101/pubads_impl.js?cb=31076101 (10)
[0719/225335.815:INFO:CONSOLE(2)] "Uncaught TypeError: Cannot use 'in' operator to search for 'serviceProvider' in undefined", source: https://static.criteo.net/js/ld/publishertag.prebid.123.js (2)
[0719/225335.960:INFO:CONSOLE(10)] "[GPT] Using deprecated googletag.encryptedSignalProviders. Please use googletag.secureSignalProviders instead.", source: https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202307120101/pubads_impl.js (10)
[0719/225336.037:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225336.070:INFO:CONSOLE(61666)] "You are using the in-browser Babel transformer. Be sure to precompile your scripts for production - https://babeljs.io/docs/setup/", source<EMAIL_ADDRESS>(61666)
[0719/225336.224:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:35+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/square-brackets/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225336.226:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:35+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/square-brackets/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225336.227:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:35+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/square-brackets/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225336.367:INFO:CONSOLE(10)] "[GPT] Using deprecated googletag.encryptedSignalProviders. Please use googletag.secureSignalProviders instead.", source: https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202307120101/pubads_impl.js (10)
[0719/225336.378:INFO:CONSOLE(1)] "33Across Lexicon ID Mappings Provider: PID not found", source: https://www.datadoghq-browser-agent.com/datadog-rum-v4.js (1)
[0719/225336.427:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225336.544:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225336.613:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225336.637:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225336.642:INFO:CONSOLE(10)] "[GPT] Using deprecated googletag.encryptedSignalProviders. Please use googletag.secureSignalProviders instead.", source: https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202307120101/pubads_impl.js (10)
[0719/225336.867:INFO:CONSOLE(10)] "[GPT] Attempted to load GPT multiple times.", source: https://securepubads.g.doubleclick.net/pagead/managed/js/gpt/m202307120101/pubads_impl.js (10)
[0719/225336.973:INFO:CONSOLE(2)] "Uncaught TypeError: Cannot use 'in' operator to search for 'serviceProvider' in undefined", source: https://static.criteo.net/js/ld/publishertag.prebid.123.js (2)
[0719/225337.088:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:36+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/parentheses/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225337.090:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:36+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/parentheses/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225337.091:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:36+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/parentheses/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225337.128:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225337.790:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225337.885:INFO:CONSOLE(96)] "received a request for uspapi", source: https://cdn.cookielaw.org/opt-out/otCCPAiab.js (96)
[0719/225338.090:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:36+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/parentheses/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225338.092:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:36+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/parentheses/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)
[0719/225338.093:INFO:CONSOLE(2)] "Consent state for Adobe Launch retrieved from cookie:  isGpcEnabled=0&datestamp=Wed+Jul+19+2023+22:53:36+GMT+0900+(?쒓뎅+?쒖???&version=6.36.0&isIABGlobal=false&hosts=&landingPath=https://www.thesaurus.com/e/grammar/parentheses/&groups=C0002:1,C0001:1,C0003:1,C0004:1", source: https://assets.adobedtm.com/d14cd3d8edd3/14b6230c7d29/launch-c9de4f1040cd.min.js?ver=5.7.6 (2)
(2)


sync: inconsistent mutex state

My code face "sync: inconsistent mutex state" panic, and I'm trying to fix it.
https://github.com/golang/go/blob/d54a9a9c42e751a020308cae296add426b56d0f0/src/sync/mutex.go#L147
I wonder should this line be old = atomic.LoadInt32(&m.state)?
https://github.com/golang/go/blob/d54a9a9c42e751a020308cae296add426b56d0f0/src/sync/mutex.go#L140
It seems like there will be concurrent write in line: 212, and this line cannot guarantee old value is correct.
I found https://groups.google.com/g/golang-nuts/c/Eq4CWTB6LhM/m/F0Lbgnfq4hQJ this post said it's a bug,
but 7 years past, it's still there, any purpose? Or is it safe to read int value from a pointer's field?

sorry for my poor english

This looks like memory corruption. Have you tried running your program under the race detector? See https://blog.golang.org/race-detector .

This looks like memory corruption. Have you tried running your program under the race detector? See https://blog.golang.org/race-detector .

unfortunately my code running in produce environment that I have no fully control, and It cannot be reappeared in dev environment. I wrote a little test case but no race found.

Can you please provide the full panic message. Thank you

`fatal error: sync: inconsistent mutex state
goroutine 3571787 [running]:
runtime.throw(0x4e6ccbc, 0x1e)
/usr/local/go/src/runtime/panic.go:1116 +0x72 fp=0xc0021dd378 sp=0xc0021dd348 pc=0x439512
sync.throw(0x4e6ccbc, 0x1e)
/usr/local/go/src/runtime/panic.go:1102 +0x35 fp=0xc0021dd398 sp=0xc0021dd378 pc=0x46cbb5
sync.(*Mutex).lockSlow(0x8313a38)
/usr/local/go/src/sync/mutex.go:147 +0x165 fp=0xc0021dd3e0 sp=0xc0021dd398 pc=0x47d2a5
sync.(*Mutex).Lock(...)
/usr/local/go/src/sync/mutex.go:81
sync.(*Pool).pinSlow(0xc00007ec68, 0x0, 0x0)
/usr/local/go/src/sync/pool.go:213 +0x271 fp=0xc0021dd460 sp=0xc0021dd3e0 pc=0x47de31
sync.(*Pool).pin(0xc00007ec68, 0xc00bb1fab2, 0x4)
/usr/local/go/src/sync/pool.go:206 +0x65 fp=0xc0021dd488 sp=0xc0021dd460 pc=0x47db85
sync.(*Pool).Get(0xc00007ec68, 0x113, 0x1)
/usr/local/go/src/sync/pool.go:128 +0x2f fp=0xc0021dd4d0 sp=0xc0021dd488 pc=0x47d82f`
then will be business logic, take something from pool.

what's the final solution? I catch this bug again.
go version go1.16.5 linux/amd64
fatal error: sync: inconsistent mutex state

goroutine 3295163 [running]:
runtime.throw(0xa5268d, 0x1e)
	/home/ubuntu/go/src/runtime/panic.go:1117 +0x72 fp=0xc000623ec8 sp=0xc000623e98 pc=0x436292
sync.throw(0xa5268d, 0x1e)
	/home/ubuntu/go/src/runtime/panic.go:1103 +0x35 fp=0xc000623ee8 sp=0xc000623ec8 pc=0x467575
sync.(*Mutex).lockSlow(0x1582030)
	/home/ubuntu/go/src/sync/mutex.go:125 +0x1fb fp=0xc000623f38 sp=0xc000623ee8 pc=0x483f5b
sync.(*Mutex).Lock(...)
	/home/ubuntu/go/src/sync/mutex.go:81
sync.(*RWMutex).Lock(0x1582030)
	/home/ubuntu/go/src/sync/rwmutex.go:111 +0x90 fp=0xc000623f60 sp=0xc000623f38 pc=0x485570
github.com/hftquanter/hftquant/dump.Update(0x405ea91d9571ecac, 0x0, 0x3fb70a3d70a3d70a, 0xc014000000000000, 0x4032a872b020c49c, 0x0, 0x40329d4fdf3b645a, 0x0)
	/home/ubuntu/gopath/src/github.com/hftquanter/hftquant/dump/dump.go:27 +0x3e fp=0xc000623fa0 sp=0xc000623f60 pc=0x7e385e
runtime.goexit()
	/home/ubuntu/go/src/runtime/asm_amd64.s:1371 +0x1 fp=0xc000623fa8 sp=0xc000623fa0 pc=0x46bfa1

@beaquant can you provide a complete program that demonstrates the problem?
cc @ianlancetaylor

It's very unlikely that we will be able to fix this issue if we can't reproduce it.
I strongly encourage you to find a way to run the program under the race detector, as that is the most likely cause of the problem.  Nobody else is reporting this problem, so the odds are against it being a bug in the standard library.  In any case, if it is a bug in the standard library, we will need a way to reproduce the problem so that we can analyze it.
The lines old = m.state in sync/mutex.go are fine.  The old value is only used as an input to atomic.CompareAndSwapInt32.

gopherbot, please don't do that.

for
"
The lines old = m.state in sync/mutex.go are fine. The old value is only used as an input to atomic.CompareAndSwapInt32.
"

It's very unlikely that we will be able to fix this issue if we can't reproduce it.
I strongly encourage you to find a way to run the program under the race detector, as that is the most likely cause of the problem. Nobody else is reporting this problem, so the odds are against it being a bug in the standard library. In any case, if it is a bug in the standard library, we will need a way to reproduce the problem so that we can analyze it.
The lines old = m.state in sync/mutex.go are fine. The old value is only used as an input to atomic.CompareAndSwapInt32.

this said The old value is only used as an input to atomic.CompareAndSwapInt32.
it may ignore line 97
"
if old&(mutexLocked|mutexStarving) == mutexLocked && runtime_canSpin(iter) {
// Active spinning makes sense.
// Try to set mutexWoken flag to inform Unlock
// to not wake other blocked goroutines.
if !awoke && old&mutexWoken == 0 && old>>mutexWaiterShift != 0 &&
atomic.CompareAndSwapInt32(&m.state, old, old|mutexWoken) {
awoke = true
}
runtime_doSpin()
iter++
old = m.state
continue
}
"
old>>mutexWaiterShift != 0
here also use old value.
I think direct old = m.state is not safe in a concurrent scenario，why not old = atomic.LoadInt32(&m.state)?
This makes me quite confused.

The expression old>>mutexWaiterShift != 0 may use an older value of old.  That is true.  But it doesn't matter because the same condition also calls atomic.CompareAndSwapInt32(&m.state, old, old|mutexWoken).  If the value of old is out of date, the call to atomic.CompareAndSwapInt32 will fail and the code will continue executing.

and the old of state may also change when awakened.
and the number of waiter will also change.

I'm sorry, I don't understand how this could happen.  The lockSlow method only sleeps at one point, at the call to runtime_SemacquireMutex.  It immediately reloads old after it wakes up.  And while it may possibly pick up an out-of-date value of m.state, it still doesn't matter.
I want to repeat that we are not seeing any bug reports about mutexes other than this one.  Perhaps there is something wrong with this code, but it is not showing up as problems that people are reporting.  If there is a real problem here, it should be possible to write a program that reproduces the problem.

The expression old>>mutexWaiterShift != 0 may use an older value of old. That is true. But it doesn't matter because the same condition also calls atomic.CompareAndSwapInt32(&m.state, old, old|mutexWoken). If the value of old is out of date, the call to atomic.CompareAndSwapInt32 will fail and the code will continue executing.

and the old of state may also change when awakened.
and the number of waiter will also change.

I'm sorry, I don't understand how this could happen. The lockSlow method only sleeps at one point, at the call to runtime_SemacquireMutex. It immediately reloads old after it wakes up. And while it may possibly pick up an out-of-date value of m.state, it still doesn't matter.
I want to repeat that we are not seeing any bug reports about mutexes other than this one. Perhaps there is something wrong with this code, but it is not showing up as problems that people are reporting. If there is a real problem here, it should be possible to write a program that reproduces the problem.

After all, using a variable is for reading and writing.
“
If there is a real problem here, it should be possible to write a program that reproduces the problem.
”
The point of attention in the sentence you said above is completely written in this respect.
I think the starting point here is correct.
But you have a lot of reading judgments that depend on this variable，
for example:
            // Don't try to acquire starving mutex, new arriving goroutines must queue.
	if old&mutexStarving == 0 {
		new |= mutexLocked
	}
	if old&(mutexLocked|mutexStarving) != 0 {
		new += 1 << mutexWaiterShift
	}
	// The current goroutine switches mutex to starvation mode.
	// But if the mutex is currently unlocked, don't do the switch.
	// Unlock expects that starving mutex has waiters, which will not
	// be true in this case.
	if starving && old&mutexLocked != 0 {
		new |= mutexStarving
	}

If there are even more cases, this is an expired value，is this judgment meaningful？（Does this fit the contextual business semantics?）
And, will a goroutine(suppose it can no longer spin) always fail to meet the conditions of line 129 ‘atomic.CompareAndSwapInt32(&m.state, old, new)’?
Will it be in a for loop instead of waiting in runtime_SemacquireMutex?
so I still think it is dangerous to read without synchronization 'old = m.state'.
I think the reason why bugs do not often appear is because of the previous spin, and the other is that the goroutine is scheduled once every 10ms.
Thank you！

Changing the variable new does nothing by itself.  The only way that new affects anything is if the atomic.CompareAndSwapInt32 succeeds.  And that will only succeed if m.state still holds the value old, the value that caused the changes to new to occur.

I don’t think about a channel. If the atomic.CompareAndSwapInt32  is successful, the state will become the new value. This means that the new value also becomes the old value. We need to loop and think again, and go back to what I said above.
Thanks.

hello, has this been resolved?

I also had this issue by using sync.pool

I also had this issue by using sync.pool

I don't think that will help any. Note comment above:

I want to repeat that we are not seeing any bug reports about mutexes other than this one. Perhaps there is something wrong with this code, but it is not showing up as problems that people are reporting. If there is a real problem here, it should be possible to write a program that reproduces the problem.

I changed 'throw("sync: inconsistent mutex state")' to 'throw("sync: inconsistent mutex state, new="+strconv.FormatInt(new,10))' and it printed a huge number such as<PHONE_NUMBER>, does that mean there is hundred millions of goroutines using the mutex?

Either that, or there is some corruption happening that is overwriting the mutex. I would bet on the latter.

It is possible to cause the state to keep increasing:

just my guess.........need more evidence.

I don't think we're getting to the same point. If the atomic.CompareAndSwapInt32 is successful, the state will become the new value. This means that the new value also becomes the old value. We need to loop and think again, and go back to what I said above.
Thanks.

have you solve this problem?

I solved by removing some concurrent function call which may cause data race. But I don't know how this affected sync.mutex?
func GetCostTreeFromCtx(ctx context.Context) *CostTree { 	switch c := ctx.(type) { 	case *blademaster.Context: 		i, e := c.Get(_ctxTag) 		if e { 			ct := i.(*CostTree) 			ct.CheckPoint = time.Now()  // this line may cause data race 			return ct 		} 	} 	return NewCostTree() }

seems to have been user issues.


DDoS simulation link is wrong.

[Enter feedback here]
The link of breakingpoint cloud is wrong, you point it to "https://www.keysight.com/sg/en/products/network-security/breakingpoint-cloud.html". It should be pointed to the following link directly.
https://breakingpoint.cloud/

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

ID: ad68687a-d309-25e2-dc73-3f25961dd666
Version Independent ID: 0322ed0a-5fe4-7d28-5104-eff892b8c159
Content: Azure DDoS Protection simulation testing
Content Source: articles/ddos-protection/test-through-simulations.md
Service: ddos-protection
GitHub Login: @aletheatoh
Microsoft Alias: yitoh

Hey @db422 and @PRMerger4 Can I do this please?

@db422 Thanks for the feedback! I have assigned the issue to the content author to investigate further and update the document as appropriate.

#reassign: @AbdullahBell

#please-close


Added Tutorial's on Unity under C#

These tutorials teach game development in the Unity game engine and C#.

Description
Added 'Unity' tutorial's under C#. These tutorials teach how to make a basic game in Unity. They teach a lot of the fundamentals of Unity with C#.
Motivation and Context
Issue #350
These tutorials can help you learn basics of Game Development.
How Has This Been Tested?
All the links have been tested.
I have tried a lot of these tutorials, when I started learning unity.
These tutorials are a bit old so it is a old version of unity which may cause minor problems, but they are one of the most popular Unity tutorials on Youtube.
Types of changes

[ ] Content Update (change which fixes an issue or updates an already existing submission)
[x] New Article (change which adds functionality)
[ ] Documentation change

Checklist:

[x] My code follows the code style of this project.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have made checks to ensure URLs and other resources are valid

Closing. Reason https://github.com/practical-tutorials/project-based-learning/issues/350


Copy to clipboard function not working properly

Description:
After executing, the option Copy to Clipboard only shows randomly (and not often).
Steps to Reproduce:

Versions:
Windows 7, Atom 1.21.2

The icon will not appear if there isn't any text to copy. For example, if the output is an image.

The icon appears randomly.
If there is text output, sometimes it appears but 90% of the times does not.
Tested executing the same command that produces a line of text several times.
Can it be that Hydrogen interprets this output not as text but as something else on certain occasions?
Thanks,

@illpack are you still experiencing this issue on the latest version of Hydrogen? If so, can you post a code example so I can try to reproduce?

Closing since I believe this was fixed. Let us know if you have questions.


REST vs BINARY protocol

Hi,
I'm using OrientDB 2.0 + oriento 1.0.0.
I've different results between the REST and the Binary protocol.
Example :
User (vertex) ---- WROTES (edge) ----> Post (vertex)
In a single query, I want to retrieve the name + the Posts vertices, order by creation date descending.
Assuming #12:0 is the User.@rid, I do :
SELECT
	name,
	$DescendingPosts
FROM
	#12:0
LET
	$DescendingPosts = (
      						SELECT
      							@rid AS Rid,
      							message,
      							creation_date
      						FROM
      						(
                              	SELECT
                              		expand(out('WROTES'))
                              	FROM
                              		$parent.$current
                            )
      						ORDER BY
      							creation_date DESC
    					)

In Studio (REST), here's the result :
{
    "result": [
        {
            "@type": "d",
            "@rid": "#-2:4",
            "@version": 0,
            "name": "Monica Belluci",
            "$DescendingPosts": [
                {
                    "@type": "d",
                    "@rid": "#-2:3",
                    "@version": 0,
                    "Rid": "#15:1",
                    "message": "2nd Post",
                    "creation_date": "2015-01-07 01:00:00",
                    "@fieldTypes": "Rid=x,creation_date=t"
                },
                {
                    "@type": "d",
                    "@rid": "#-2:2",
                    "@version": 0,
                    "Rid": "#15:0",
                    "message": "1st Post",
                    "creation_date": "2015-01-06 01:00:00",
                    "@fieldTypes": "Rid=x,creation_date=t"
                }
            ],
            "@fieldTypes": "$DescendingPosts=z"
        }
    ],
    "notification": "Query executed in 0.012 sec. Returned 1 record(s)"
}

Now, using oriento (BINARY), here's the result :
[
          {
                    "@type": "d",
                    "name": "Monica Belluci",
                    "$DescendingPosts": [
                              "#-2:3",
                              "#-2:2"
                    ],
                    "@rid": "#-2:4"
          }
]

I've read this Issue from @phpnode:
https://github.com/orientechnologies/orientdb/issues/3432
I try to use the FETCHPLAN like he does, but no change...
Sorry to be insistent about that, but I'm really in the s**t :) when I try to write a little complex query.
Thanks for your answer, guys !!!

I've commented #3432. In this case it's oriento that could work on the returning fetch plan to provide the same behavior as HTTP.


[Bug]: Segment error when running operator "image_captioning.blip"

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior
Segment error when running operator "image_captioning.blip"
>>> import towhee
>>> towhee.glob('/home/super/binbin/bear.jpg') \
...       .image_decode() \
...       .image_captioning.blip(model_name='blip_base') \
...       .show()
reshape position embedding from 196 to 576
load checkpoint from https://storage.googleapis.com/sfr-vision-language-research/BLIP/models/model_base_capfilt_large.pth
段错误 (核心已转储)

Expected Behavior
No error
Steps To Reproduce
https://towhee.io/image-captioning/blip

Environment
- Towhee version(e.g. v0.1.3 or 8b23a93):towhee/models dev latest
- OS(Ubuntu or CentOS): Ubuntu, GPU
- CPU/Memory:
- GPU:
- Others:

Anything else?
No response

As discussed with dev, this is caused by the module conflict( env problem), when I changed the env, it is good now.
But the behavior when env has problem is not user friendly, so needs to improve here.

Considering this is not a block issue, so defer it to next release.

Keep opening.


cupsctl --remote-any and --remote-admin toggles the other before it is set

cupsctl has strange behavior at least while setting --remote* options:
# cupsctl | grep remote
_remote_admin=0
_remote_any=0
# cupsctl --remote-any
# cupsctl | grep remote
_remote_admin=0
_remote_any=1
# cupsctl --remote-admin
# cupsctl | grep remote
_remote_admin=1
_remote_any=0

As you can see it disables the other remote options before it set the requested one. The only way how to get enabled both of them is to run
# cupsctl --remote-any --remote-admin
while they are both switched off.
This is because in the first stage of cupsAdminSetServerSettings() (cups/adminutil.c) remote_admin and remote_any variables get set to either 0/1 if they are changing or to -1 if untouched.
573    if ((val = cupsGetOption(CUPS_SERVER_REMOTE_ANY, num_settings, settings)) != NULL)
574    {
575      remote_any = atoi(val);
576
577      if (remote_any == old_remote_any)
578      {
579       /*
580        * No change to this setting...
581        */
582
583        remote_any = -1;
584      }
585    }
586    else
587      remote_any = -1;
588
589    DEBUG_printf(("1cupsAdminSetServerSettings: remote_any=%d", remote_any));

But later the value is treated just if it has the values either 0 or 1.
847  	if (remote_admin)
848  	  cupsFilePrintf(temp, "  Allow %s\n",
849  	                 remote_any > 0 ? "all" : "@LOCAL");

remote_any is -1 (though it is set) if we select --remote-admin.
The wrong logic is in the whole function. I doubt it was an intention. If so it is very confusing.

@l1gi Can you attach a copy of your cupsd.conf file?

Sure. Untouched:
cupsd-before.txt
After --remote-any:
cupsd-after-any.txt
After --remote-admin:
cupsd-after-admin.txt

Hi Michael, any news on this, please? Do you plan to fix it should I implement some temporary workaround? Thank you.

@l1gi Sorry, I've been working on the OAuth support but will be getting back to this soon.

Sorry for the long delay:
[master 3698e1ff9] Fix an interaction between --remote-admin and --remote-any (Issue #158)

Thank you, Michael!


Album Suggestion App Idea

I have an idea for an album/artist/song recommendation app. I feel like this package or some other algorithm based on TIDAL API album recommendations would be the best to use. I havent thought much about design, wondering if maybe TIDAL would like to provide input as to how it could be built & be used?

have you checked our api docs we are exposing the "similar to" functionality like explained in this blog
maybe you can also share what type of functionalities you're looking for, and we can help point them out!


Fix following icon

Fix all following status icons being overridden when a new player joins the game. This happens because the following status of a new player is sent in the same format as the initial data. Thus, the script incorrectly attempts to set all existing players' icons to nil because no data is sent for already existing players.

@jmargh maybe you should take a look?


Global tool

This PR adds the possibility to use Coverlet as a standalone global tool and removes the need to include it in your msbuild pipeline.
Example usage:
coverlet /path/to/test-assembly --target "dotnet" --targetargs "test /path/to/test-project --no-build"

coverlet /path/to/test-assembly --target "dotnet" --targetargs "test /path/to/test-project --no-build" --threshold 90

coverlet /path/to/test-assembly --target "dotnet" --targetargs "test /path/to/test-project --no-build" --format lcov --format opencover

coverlet /path/to/test-assembly --target "dotnet" --targetargs "test /path/to/test-project --no-build" -o ./output/

Hi @tonerdo, just wondering did you release this as NuGet package yet? Thanks.

Hi @tarekgh, this is going out on Friday

@tarekgh find the first release here: https://www.nuget.org/packages/coverlet.console/. Documentation is this repo's README

very cool. Thanks @tonerdo
CC @pjanotti


Build failure 6.1.13-200.fc37.x86_64

Linux distribution and its version Fedora 37 Workstation
Linux kernel version 6.1.13-200.fc37.x86_64
Xorg version (if used) Wayland
Desktop environment in use Gnome

Hi, Everything worked fine the first time I installed Displaylink on my fedora 37.
Since kernel upgrade, I got build failure on evdi every time.
[root@pc-4 ~]# dkms build -m evdi -v 1.12.0 --force
Sign command: /lib/modules/6.1.13-200.fc37.x86_64/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module:
Cleaning build area...
make -j4 KERNELRELEASE=6.1.13-200.fc37.x86_64 all INCLUDEDIR=/lib/modules/6.1.13-200.fc37.x86_64/build/include KVERSION=6.1.13-200.fc37.x86_64 DKMS_BUILD=1...(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.1.13-200.fc37.x86_64 (x86_64)
Consult /var/lib/dkms/evdi/1.12.0/build/make.log for more information.

Here is /var/lib/dkms/evdi/1.12.0/build/make.log
Did someone alreday got that behavior ?
Fred

Are your kernel version and headers same? I'm guessing you have newer headers than your kernel

6.1 and 6.2 build is broken right now. There is a patch on #401 but honestly, this should be upstreamed to avoid this issue entirely as suggested in #25.

Closing. Please raise new issue when this still happens with latest evdi driver.


Support AZURE_AUTH_LOCATION

This change adds support to EnvironmentCredential so that it can
consider AZURE_AUTH_LOCATION as a location to get credentials. This
file can be generated with the Azure CLI.
The invasive part of the change here is refactoring things such that
instead of constructing the inner credential object eagerly when
EnvironmentCredential is constructed we build it on the first call to
GetToken or GetTokenAsync. This is done so that we do not have do
preform IO when constructing the credential object.
Contributes to #9309

I'm not 100% sure on the design here, @schaabs, but I think this is good enough to land. I could image creating an actual SdkAuthCredential type that would be constructed with a file path, and EnvironmentCredential could create that. We could consider exposing that type as way to allow folks to use these files without setting environment variables.
The reason I didn't take that approach at first is that I believe that this new token would need to be an IExtendedTokenCredential and we would have to change EnvironmentCredential to handle calling the IExtendedTokenCredential when delegating to an underlying credential if they exist, in order to not end up double wrapping errors in some cases. It started to feel like a bunch of machinery and it wasn't clear it was worthwhile. I also know that you were already a little worried regarding the number of credentials types we had and throwing more public ones into the picture didn't seem so great.
Note that this does yet support a SDK Auth file that uses clientCertificate instead of clientSecret. When we end up supporting that (I assume the major blocker is going to be parsing the .pem file into an X509Certificate2) it will be easy to plug that same support in here.

@schaabs I made the changes you and I discussed in person, could you please take another look?  Note that at this time I have SdkClientAuthCredential as public.  Do we need to do some surface area review?


[resolvers/webpack] Replace node-libs-browser with is-core-module

This significantly shrinks our dependency tree.  Fixes #631.

Coverage decreased (-2.08%) to 95.826% when pulling ff50964df1234515bc6f7969b90d87ada1982008 on andersk:is-core-module into 18f9bd31fb613d9062dd6fe8057b0e1f519e4154 on benmosher:master.


peft/utils/save_and_load.py try to connect to the hub even when HF_HUB_OFFLINE=1

System Info
peft 0.8.2
axolotl v0.4.0
export HF_DATASETS_OFFLINE=1
export TRANSFORMERS_OFFLINE=1
export HF_HUB_OFFLINE=1
Who can help?
No response
Information

[X] The official example scripts
[ ] My own modified scripts

Tasks

[ ] An officially supported task in the examples folder
[X] My own task or dataset (give details below)

Reproduction
When I am FT my models on a GPU offline using lora and peft with axolotl library, I get an error from peft/utils/save_and_load.py", line 146, in get_peft_model_state_dict
has_remote_config = file_exists(model_id, "config.json")
The function try to connect to the HUB before saving the checkpoint locally, which make crash the run and lose the FT model.
Here is the full error message:
Traceback (most recent call last):   File "/gpfslocalsup/pub/anaconda-py3/2021.05/envs/python-3.9.12/lib/python3.9/runpy.py", line 197, in _run_module_as_main     return _run_code(code, main_globals, None,   File "/gpfslocalsup/pub/anaconda-py3/2021.05/envs/python-3.9.12/lib/python3.9/runpy.py", line 87, in _run_code     exec(code, run_globals)   File "/gpfsdswork/projects/rech/vqt/ule33dt/axolotl/src/axolotl/cli/train.py", line 59, in <module>     fire.Fire(do_cli)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/fire/core.py", line 141, in Fire     component_trace = _Fire(component, args, parsed_flag_args, context, name)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/fire/core.py", line 475, in _Fire     component, remaining_args = _CallAndUpdateTrace(   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/fire/core.py", line 691, in _CallAndUpdateTrace     component = fn(*varargs, **kwargs)   File "/gpfsdswork/projects/rech/vqt/ule33dt/axolotl/src/axolotl/cli/train.py", line 35, in do_cli     return do_train(parsed_cfg, parsed_cli_args)   File "/gpfsdswork/projects/rech/vqt/ule33dt/axolotl/src/axolotl/cli/train.py", line 55, in do_train     return train(cfg=cfg, cli_args=cli_args, dataset_meta=dataset_meta)   File "/gpfsdswork/projects/rech/vqt/ule33dt/axolotl/src/axolotl/train.py", line 163, in train     trainer.train(resume_from_checkpoint=resume_from_checkpoint)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/transformers/trainer.py", line 1561, in train     return inner_training_loop(   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/transformers/trainer.py", line 1968, in _inner_training_loop     self._maybe_log_save_evaluate(tr_loss, model, trial, epoch, ignore_keys_for_eval)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/transformers/trainer.py", line 2340, in _maybe_log_save_evaluate     self._save_checkpoint(model, trial, metrics=metrics)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/transformers/trainer.py", line 2416, in _save_checkpoint     self.save_model(staging_output_dir, _internal_call=True)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/transformers/trainer.py", line 2927, in save_model     self._save(output_dir)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/transformers/trainer.py", line 2999, in _save     self.model.save_pretrained(   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/peft/peft_model.py", line 216, in save_pretrained     output_state_dict = get_peft_model_state_dict(   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/peft/utils/save_and_load.py", line 146, in get_peft_model_state_dict     has_remote_config = file_exists(model_id, "config.json")   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/huggingface_hub/utils/_validators.py", line 118, in _inner_fn     return fn(*args, **kwargs)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/huggingface_hub/hf_api.py", line 2386, in file_exists     get_hf_file_metadata(url, token=token)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/huggingface_hub/utils/_validators.py", line 118, in _inner_fn     return fn(*args, **kwargs)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/huggingface_hub/file_download.py", line 1631, in get_hf_file_metadata     r = _request_wrapper(   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/huggingface_hub/file_download.py", line 385, in _request_wrapper     response = _request_wrapper(   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/huggingface_hub/file_download.py", line 408, in _request_wrapper     response = get_session().request(method=method, url=url, **params)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/requests/sessions.py", line 589, in request     resp = self.send(prep, **send_kwargs)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/requests/sessions.py", line 703, in send     r = adapter.send(request, **kwargs)   File "/linkhome/rech/genrqo01/ule33dt/.local/lib/python3.9/site-packages/huggingface_hub/utils/_http.py", line 78, in send     raise OfflineModeIsEnabled( huggingface_hub.utils._http.OfflineModeIsEnabled: Cannot reach https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.1/resolve/main/config.json: offline mode is enabled. To disable it, please unset the HF_HUB_OFFLINE environment variable.
I manage to fix the bug by commenting those lines in save_and_load.py:
if model_id is not None:             try:                 has_remote_config = file_exists(model_id, "config.json")             except (HFValidationError, EntryNotFoundError):                 warnings.warn(                     f"Could not find a config file in {model_id} - will assume that the vocabulary was not modified."                 )                 has_remote_config = False
Expected behavior
It seems that file_exists(model_id, "config.json") should not call the hub when the variable 'export HF_HUB_OFFLINE=1 is set

Even excluding HF_HUB_OFFLINE=1, I'm surprised that peft is calling out to the hub for a config.json in the middle of training runs—this is crashing my training jobs with a coinflip at each eval step currently. Shouldn't all the model config info be available locally in the middle of the training loop?


Update proxy to handle uploads and forward the rest of requests

Since v1.106.1 Immich uses a POST on /api/assets to upload files, but also a PUT to update them and a DELETE to delete them. So for example right now if you try to delete an image you get a 400 Bad Request. That's mainly because this upload proxy procces everything on the listen path so it now breaks some features of the Immich website.
I've already played a little bit with the tunnel configuration but it's quite imposible to solve with actual code, as it does not distinguish a POST from a PUT or a DELETE so everything gets treated the same way and for example the DELETE fails when the code tries to get a field from a request that does not have it.
Almost all code changes have a comment so you can understand why I did hardcode some variables. You can test this image if you pull from --> ghcr.io/hamzab70/multipart-upload-proxy:main
That's why with this changes and configuring the cloudflare tunnel as the attached image you should be able to make it work again 😄.

Thanks a lot for your PR and input, highly appreciated! Sorry if jumping straight into the review was a bit too straight-forward 👍

Hey @hamzab70 I hope you don't mind that I modified it to match it how I had it in mind - this maybe is easier for both of us :)

Heey James,
Thank you for wrapping up the PR and fixing the issues. I had a field trip this week and couldn't do any progress.

I only now noticed why your part was working with Immich but mine didn't: Cloudflare tunnels "path" is only for the start, not for an exact match. A lot of other endpoints were moved by Immich to paths below /api/assets, which were incorrectly proxied as well.
I've made a version now with an additional fallback, where it will also inject and proxy any request to the server - in this case, it will then copy the path over.


Add default kwargs logic into Anthropic provider, which is superseded by user entered kwargs

A DEFAULT_KWARGS dictionary added to Anthropic provider class. Default max_tokens is inside of it. In the future, new default arguments can be added.
Before sending kwargs to the client, the default and user inputted kwargs are merged by the following pattern:
**{**self.DEFAULT_KWARGS, **kwargs}

Summary by CodeRabbit

New Features

Introduced a new constant, DEFAULT_KWARGS, to streamline handling of default arguments in key methods.

Improvements

Enhanced flexibility of method signatures by merging default parameters with additional arguments in send_conversation, structured_response, and generate_text methods.

✨🍰✨

oh i merged too quickly

Sorry, does it break something?
Do you think it would be a good idea to implement the similar default_kwargs logic to other providers as well? I can do that at another PR

yes i do.

I'm doing it


Just updated to ActiveMQ Classic 6.0.0, tested the variables that are used in file entrypoint.sh and verify if they work.

It's need to fix the file entrypoint.sh too because the file "conf/jetty-realm.properties" doesn't exists on this version of ActiveMQ.

Without this fix, when only change to version 6.0.0, the security doesn't works and the follow message is shown:
Allowing WebConsole listen to <IP_ADDRESS>
Setting activemq username to system
Setting activemq password
Setting activemq WebConsole username  and password
sed: conf/jetty-realm.properties: No such file or directory
Enabling the scheduler
INFO: Loading '/opt/activemq/bin/setenv'

With a highlight to this line:
sed: conf/jetty-realm.properties: No such file or directory

@netinhoteixeira Does this fix #20, have you tested that?


Init telemetry before get auth

Init telemetry before get auth

Codecov Report

Merging #842 into develop will increase coverage by 0.02%.
The diff coverage is 88.88%.

@@              Coverage Diff              @@
##             develop     #842      +/-   ##
=============================================
+ Coverage      45.06%   45.08%   +0.02%
- Complexity       767      768       +1
=============================================
  Files            133      133
  Lines           5117     5119       +2
  Branches         729      729
=============================================
+ Hits            2306     2308       +2
  Misses          2640     2640
  Partials         171      171

Impacted Files
Coverage Δ
Complexity Δ

...crosoft/azure/maven/spring/AbstractSpringMojo.java
46.07% <88.88%> (+1.07%)
14 <2> (+1)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 41ed7a9...91fecca. Read the comment docs.


initial code

Purpose
Initial library code

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


Update futures vendor dep

Dependabot request to update futures to 0.3.21
Signed-off-by: Brent Baude<EMAIL_ADDRESS>

This is already being bumped here , we just forgot to remove hold. https://github.com/containers/aardvark-dns/pull/66,
Is this PR redundant ? Could you please rebase with main to verify this.

/hold


Status

I am really interested on this project and also like the music player, any chance we can get in touch to discuss it? Prease, let me know.
Thanks

Fireside has been placed on hold till the development of the actual Fireside forums is finished, afterwards I'll be working more on this module, as for the music player, I am not the original owner of this module but will try updating as much as I can.
Green Volume team


[Tree unique] IR enums and purity analysis

This PR is ready for review! It's just a draft because it should be merged after its base.
We add enums describing the IR (BRIL_OPS, but all the way), and use them to concisely generate purity analysis rules.
The main goal of these enums is not to save LOC, but rather:

Make us nimble over changes in the IR
Reduce bugs caused by egglog typos
Get better at egglog metaprogramming

Purity analysis rules populate the following relations:
(relation ExprIsPure (Expr))
(relation ListExprIsPure (ListExpr))

Stack

https://github.com/egraphs-good/eggcc/pull/206
https://github.com/egraphs-good/eggcc/pull/212
https://github.com/egraphs-good/eggcc/pull/213
https://github.com/egraphs-good/eggcc/pull/214

@oflatt Thanks for the review!

Hmm, maybe we should raise an error if you don't provide a ruleset? That might fix our common bug that we run into all the time.
This would be a bit of work to enforce statically without building some rule struct directly (rather than strings). I think it's not much of a problem, since with ir.rs, we only need to write rule/rewrite a few times per optimization, so it's a lot easier to manually check. Also, we no longer have (run) in the schedule, so tests will be more robust to catching this.


fix(XpcConnect.cpp): Renaming all instances of XpcConnection to XpcConnect

By renaming all instances of XpcConnection to XpcConnect we will be able to discern more quickly if
bug reports are actually stemming from XpcConnect or the deprecated library

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Download again on better match

Hi,
I'm not sure if this might already been handled in any way but I can't find any information about it. I'd like to have subliminal download the best matching subtitle in a first step and have it look for a even better match later. Sometimes when I watch an episode there will be a sub available but not for the exact release. So I will have to adjust the timing and so on. If I watch the episode a day later there might be a better matching sub available but I will already have downloaded the interior the day before. So... Is there any way to tell subliminal to go have a second look for a better match and download that over the previous one?
Thanks!

No, there's currently no way to do that because subliminal doesn't store subtitles metadata. .srt cannot be used to store metadata as there are no comment inside. One way to do it would be to have an sqlite database to store this kind of stuff.

In my case I guess it would be sufficient to just force the new search and download whatever match it gets then. I don't have that many new episodes and my age filter is set to 7 days. I understand there is this -force option for downloading the sub again. But as I understand from some info from the plex subliminal plugin subliminal is not gonna search again in that case but will just download the same release again.

It depends on how it is implemented by the Plex developer but as a library force means that a new search will be triggered.

Ok, thanks for that info! I'll try it with -force then for the time being. And thanks for your hard work on this software. Working great here.


Add contract function hints to the MockContract.mock object

This change is backwards compatible as it uses an optional generic, that is by default set to BaseContract, which contains a mapped object functions: { [ name: string ]: ... }; that provides the same namespace.
I've been using this already with this ambient type declaration
declare type BaseContract = import('ethers').BaseContract
declare type _MockContract = import('ethereum-waffle').MockContract
declare type Stub = import('ethereum-waffle').Stub
interface MockContract<T extends BaseContract = BaseContract> extends _MockContract {
  mock: {
    [key in keyof T['functions']]: Stub
  }
}

Dang, I put that commit message there by mistake. I thought it was the PR text. You can amend my commit and remove it if you want.

@ackvf We have some build errors, did you take a look at those?

@rzadp I didn't see this before. I will look at it.


Secrets in reverse-proxy deployments

Web deployment docker-compose.yml uses the default secret files (but obviously not the default secrets) in docker/mongodb - this is not ideal for continuous deployment - changing this to a root level .secrets folder which is in the .gitignore.
Local deployment (docker-compose.yml) is not sensitive around security like the web-application (unless specified by user) and it should be fine to just use the default secret files in the repository.
Local deployment via reverse-proxy to http://brick.localhost in docker-compose.localhost.yml will also change to the .secrets folder. I assume users that use this configuration are capable of changing the location of the files.
Also adding a strip line ending to the secrets validators since it has tripped me up a couple of times now.

Tested on the localhost stack


query.py: Allow broadcast queries and wait for all replies

This series of commits gives query.py the ability to list all servers on a LAN on the default port. Use an address of <IP_ADDRESS> for all IPv4 servers, or ff02::1 for all IPv6 servers.
This is a proof of concept for how one would be able to implement part of issue #349 . While the focus of that issue is probably online play, being able to quickly join a game from a LAN would also be useful and would not need a master server.

That script is just an example of how the queries work, so I didn't put much thought into it.


Breaking SemVer

Hello,
I'm helping out on someone's React 15 project, and updating this module from 1.1.0 to 1.1.1 broke the component. A point release should indicate a backwards compatible bug fix change only but that doesn't seem to be the case. Reverting to 1.1.0 fixes the issue.
You may want to check out NPM's SemVer guide and I'm not an NPM expert but I believe that the dependencies section in your package.json file should be a peer dependencies section instead e.g:
  "peerDependencies": {
    "prop-types": "^15.5.10",
    "react": "^16.2.0",
    "react-dom": "^16.2.0"
  }

Probably prop-types could be a dependency, but react and react-dom should be peers.
If I understand correctly, by having React in your dependencies section I get a copy of React 16 installed by your component in addition to my own copy of React (v15). See https://blog.angularindepth.com/npm-peer-dependencies-f843f3ac4e7f

Yes, you're totally right. Feel free to submit a PR on this if you're keen. Otherwise I'll update it in the next couple of days.


Nav to drawer does not work in the Explore tab on Apple TV

Steps to reproduce:

Follow README steps to install and run the app on TV simulator
Navigate to "Explore" tab
Swipe or tap left to open the drawer

Expected behavior:

Drawer should open

Actual behavior:

Drawer does not open
If you swipe or tap right, and THEN swipe or tap left, the drawer does open

Not sure if this is an issue with the state management of the drawer in the app, or an issue in react-tv-space-navigation.
If you add a call to useTVEventHandler that calls onDirectionHandledWithoutMovement() when eventType=left, the issue is fixed.

thank you for reporting. I've found the state of the drawer was not correctly set up when navigating in the screen.
I've merged a fix.

Thanks @giolaq 😃


Naming of sequenceArrVec

Minor issue.
I think sequenceArrVec doesn't quite have the right name. sequenceArrVec changes the input type of the arrow. It's different from sequenceArr :: (Traversable t, Arrow a1) => t (a1 b a2) -> a1 b (t a2).
Maybe it's helpful to think about what would happen to a Kleisli arrow. If our arrow is secretly of type a -> m b for some monad m, then sequenceArrVec has the type Vec n (a -> m b) -> Vec n a -> m (Vec n b). But I couldn't find any function on Hoogle with that signature. Maybe something like zipSequenceArrVec, I'm not sure.

I also thought that it wasn't the correct name but couldn't think of any good one. Lets keep thinking of a better name. Its essentially "gluing" side by side a list of arrows. It's similiar to *** in a way, but instead of combining two arrows combines any number of arrows and the types are the same for input and output. That function doesn't have a name we can use though.

I think sequenceArr is in a way a generalization of &&& and sequenceArrVec and  sequenceArrList are a generalization of ***. The description of *** is " Split the input between the two argument arrows and combine their output". Perhaps something like "splitCombineVec" for sequenceArrVec and "splitCombinteList"  for sequenceArrList ?

@turion Do you have any opinion on the name of these functions ? Should we leave them as they are ?
I think we can publish an initial version of the library to hackage. I tried enrolling in hackage but never got an email back... have to check how to deal with that.

I think sequenceArr is in a way a generalization of &&& and sequenceArrVec and sequenceArrList are a generalization of ***.

Yes, that's a good observation.

The description of *** is " Split the input between the two argument arrows and combine their output". Perhaps something like "splitCombineVec" for sequenceArrVec and "splitCombineList" for sequenceArrList ?

Sounds like a good description of what's happening, but I find it quite clunky. I find zipSequenceArrVec ok as well, but I think it's your decision :)

Renamed to zipSequenceArrVec. Thanks for the input on this.


Render route without changing url or making a route "alias" or set "hidden" param ?

I have a route /social/:user_id and which renders a Blaze template which depends on FlowRouter.getParam('user_id').
I'm now on the process of making an alias to this route by using /:username instead of /social/:user_id

The problem here is that when I receive the username via URL, for instance mysite.com/britneyspears i have to do an _id lookup to find the user_id based on username
Once i fetch the user_id i would like to render my old route, /social/:user_id by doing something similar to:
FlowRouter.withReplaceState( => { FlowRouter.go( '/social/' + _id ) } )

But without changing the URL, this way the username only works as a "mask" to the end-user but the rest of my application can rely on
FlowRouter.getParam('user_id')

so it's actually the username "mask" is transparent for the client and for the backend side.
Other option would be to accept "username" instead of user_id in most places, but that would require the whole application to have some sort of "findIdByUsername" in a lot of places which would increase the number of queries my application do.
Another solution i tried was to set user_id param
Router.route( '/:username/', { action: =>
  Meteor.call( "find_id_by_username", username, ( error, _id ) =>
    FlowRouter.setParam( {user_id: _id })
    BlazeLayout.render 'layout', 'private' : 'social_user_id'
  )
})

But this won't work, because user_id param doesn't exist on the route FlowRouter doesn't allow me to set it! One solution would be to do something like:
...
    FlowRouter.set__Hidden__Param( {user_id: _id })
...

and then render, my template wouldn't even know what's happening!
    BlazeLayout.render 'layout', 'private' : 'social_user_id'

And if i add the 'user_id' to the route, for instance:
Router.route( '/:username/:user_id?', { action: =>
  Meteor.call( "find_id_by_username", username, ( error, _id ) =>
    FlowRouter.setParam( {user_id: my_user_id })
    BlazeLayout.render 'layout', 'private' : 'social_user_id'
  )
})

The route will change to /username/mongo_db_id which is very unfriendly to the user and won't allow me to do user-friendly routes like /:username/followers and so on.
What am I doing wrong? Would be much simpler for my application if I could just make the user_id work transparently so I won't have to deal with username everywhere.

One solution I found was to render BlazeLayout and sending user_id through the data parameter and then getting it on the layout through @data.user_id


Remove rust 1.31 pipeline as it's unsupported

This build makes every single pipeline fail as we use features that are only stable in newer versions of rust.

Sorry for the slow response (was on vacation), is it possible to just update the number to oldest version that does work?

It seems as though this has already been fixed another commit.


Standalone type parsers

It'd be useful to have standalone type parsers so that one can define such parser wherever they want to parse an object of a given GraphQL type. I took a very simple approach of generating a parser for a type name in #14 . It was promising however it yielded huge objects which took forever to compile.
Later I thought about using type names for simple types and inline fragments for objects. It's not ideal since we might want to generate a recursive parser however I think it's good enough for most use cases. Generating such parsers should not be too challenging. For simple types one could take the approach from #14 and for Objects it's possible to parse the fragment using Document.inline_fragment and then call directly to unify_selection_set. The second case involves some internal refactorings but should be pretty straightforward.

@wokalski What would be the case of such parsers for other case than scalars? Can you provide some use case?
For me, it would be useful to be able to provide parsers for custom scalar types like Long used by Sangria server. I had a few cases when Js.Json.t was handled incorrectly producing runtime errors. One place to define such would be much better.

@baransu to be honest I don't remember what was the use case I had when I experimented with it. The premise was to be able to take an existing GraphQL type from the schema, say SomeType and do something along these lines:
let parser = [%graphql.parser "[SomeType!]!"]
let listOfSomeTypeObjects = parser(somejson)


Nuget reference to xunit prevents from using it with xunit.assert.source

Note: New issues raised, where it is clear the submitter has not read the issue template, are likely to be closed with "please read the issue template". Please don't take offense at this. It is simply a time management decision. If someone raises an issue, and can't be bothered to spend the time to read the issue template, then the project maintainers should not be expected to spend the time to read the submitted issue. Often too much time is spent going back and forth in issue comments asking for information that is outlined in the issue template.
Preamble
General questions may be better placed StackOveflow.
Where relevant, ensure you are using the current stable versions on your development stack. For example:

Visual Studio
.NET SDK or .NET Core SDK
Any related NuGet packages

Any code or stack traces must be properly formatted with GitHub markdown.
Describe the bug
Hello there!
When I combine Verify.Xunit with xunit.assert.source package, the Assert class results in a conflict.
If you don't know, this packages allows you to define custom assert which is needed by our project.
This problem is in many repositories and there is an easy fix normally by simply reducing the nuget references.
Is it possible that the xunit.assert reference could be removed?
If not, would it be possible to use the xunit.assert.source package instead?
Minimal Repro
Simply install xunit.assert.source and Verify.Xunit package in one project
Submit a PR that fixes the bug
Submit a Pull Request (PR) that fixes the bug. Include in this PR a test that verifies the fix. If you were not able to fix the bug, a PR that illustrates your partial progress will suffice.

can u push up a repro of this to a github repository

Its not that difficult, simply make a solution with XUnit Test and add the xunit.assert.source package

can u try 18.0.0-beta.18

Aww nice one!!!!
Really cool many thanks

That works great, even with older Verify versions, you just have to suppress CS0436:
[*.cs]
# CS0436: Type conflicts with imported type
dotnet_diagnostic.CS0436.severity = none

So no need to break other projects


Navigation bar items are not dynamic

Titles, back buttons, etc in navigation bars do not resize based on accessibility font.

Report this to apple


CAN ISO-TP updates to allow padding and fixed addressing

This PR fixes some small issues and adds two new features to the ISO-TP implementation:
Allow Padding in SF, FF and last CF
Some protocols including OBD require that CAN messages always have a length of 8 bytes, which requires padding in the ISO-TP implementation.
Similar to AUTOSAR requirements, I added two build-time configuration flags that allow to activate padding in received and sent frames. If padding is activated for RX, a frame with length < 8 leads to an error, as specified in AUTOSAR. Otherwise, both types of frames are now accepted (default setting).
Padding is mandatory for CAN-FD, as the frame length cannot be adjusted to perfectly match the actual data. However, proper CAN-FD support will require some further modifications which are not part of this PR.
Add support for fixed addressing
ISO 15765-2 specifies how to use ISO-TP for CAN ID layouts according to SAE J1939 and NMEA-2000, where a source (N_SA) and target address (N_TA) is encoded inside the ID (called "fixed addressing"):
 Format of 29-bit CAN identifier:
 ------------------------------------------------------
 | 28 .. 26 | 25  | 24 | 23 .. 16 | 15 .. 8  | 7 .. 0 |
 ------------------------------------------------------
 | Priority | EDP | DP | N_TAtype |   N_TA   |  N_SA  |
 ------------------------------------------------------

In order to support this message type, a CAN filter mask that ignores the source address and the priority during reception was added. In addition to that, FC frames are sent back to the correct source address with the same priority, which requires an automatic modification of the TX CAN ID.

Thanks for the fix and extension!

Thanks for the fix and extension!

Can you add a test for the fixed addressing feature?

Can you add a test for the fixed addressing feature?

Can you add a test for the fixed addressing feature?

Yep, can do that.
Just identified a length calculation error in the padding implementation in process_ff_sf while doing further tests with Linux can-utils, so I will also provide a small update for that.

Can you add a test for the fixed addressing feature?

Yep, can do that.
Just identified a length calculation error in the padding implementation in process_ff_sf while doing further tests with Linux can-utils, so I will also provide a small update for that.

Would it make sense to add a fag to the address struct for padding instead of compile time setting?

Would it make sense to add a fag to the address struct for padding instead of compile time setting?

Would it make sense to add a fag to the address struct for padding instead of compile time setting?

AUTOSAR spec chapter 7.3.8 suggests to select it at compile-time. Also this library which I use in an ESP32 has a compile-time flag (with padding enabled by default, though). I think it's fine to select it at compile-time depending on the higher-level protocol in use and save some memory if we don't need the checks and can accept padded and non-padded frames.

Would it make sense to add a fag to the address struct for padding instead of compile time setting?

AUTOSAR spec chapter 7.3.8 suggests to select it at compile-time. Also this library which I use in an ESP32 has a compile-time flag (with padding enabled by default, though). I think it's fine to select it at compile-time depending on the higher-level protocol in use and save some memory if we don't need the checks and can accept padded and non-padded frames.

Added new unit-tests for the fixed addressing feature and updated existing tests to work with and without padding enabled.
tests/subsys/canbus/isotp/conformance passes on my STM32G431-based custom board (with the new CAN-FD driver PR already applied). However, tests/subsys/canbus/isotp/implementation fails even without the commits added by this PR. @alexanderwachter can you please double check in your test setup to see if it is related to my hardware?

Added new unit-tests for the fixed addressing feature and updated existing tests to work with and without padding enabled.
tests/subsys/canbus/isotp/conformance passes on my STM32G431-based custom board (with the new CAN-FD driver PR already applied). However, tests/subsys/canbus/isotp/implementation fails even without the commits added by this PR. @alexanderwachter can you please double check in your test setup to see if it is related to my hardware?

Beside my comment, LGTM.

Beside my comment, LGTM.

Beside my comment, LGTM.

Cool. Which comment do you mean? I think I have addressed both of your comments. The tests have been added and I stated why I suggest to keep the padding switch as a compile-time option.
The unit test which fails on some platforms is not related to this patch and seems to be a more generic issue, see also #31149 and #31150.

Beside my comment, LGTM.

Cool. Which comment do you mean? I think I have addressed both of your comments. The tests have been added and I stated why I suggest to keep the padding switch as a compile-time option.
The unit test which fails on some platforms is not related to this patch and seems to be a more generic issue, see also #31149 and #31150.

Sry, forgot to submit them (it was in pending sine two weeks) 🤦♂

Sry, forgot to submit them (it was in pending sine two weeks) 🤦♂

@carlescufi and @galak: Unfortunately we don't find additional reviewers for this PR as it covers a very specific topic. We've asked for additional reviews on slack multiple times already.
@legoabram has worked with ISO-TP and is already working on a PR to port it to CAN-FD. Can we accept his review as a second approval even though he is not (yet) an official collaborator?


Document minimum toolchain versions for various languages (typescript, dotnet, java)

Related to #682.

I've added Java and TypeScript. Assigning to Matthew for C#/.NET. Please pass it on to the next language developer (Donald for Python?); when the last language dev is done, re-assign it back to me to resolve.


Fix usage of IsDeleting predicate for extension resources

How to categorize this PR?
/area control-plane
/kind bug
What this PR does / why we need it:
Fixes the usage of IsDeleting predicate for extension resources to ensure that the resource not reconciled on every event (including status changes) when the deletion timestamp is non-nil, but only on events that change the generation (such as the actual deletion) and on create (to make sure resources with a deletion timestamp are reconciled when an extension is restarted).
Without this fix, it's for example impossible to use the RequeueAfterError mechanism in the Delete methods of an actuator, the resource is always requeued immediately because a status update happens before that and the IsDeleting predicate is true, see e.g. https://github.com/gardener/gardener-extension-provider-azure/pull/410#issuecomment-988609540.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Release note:
NONE

/invite @plkokanov @rfranzke