Deadlock and neovim hangs forever when fzf command fails

We often experience a deadlock, neovim hanging forever when something goes wrong. This is mostly when the raw fzf shell command fails immediately.
How to reproduce
require("fzf-lua").fzf_exec({ }, { fzf_raw_args = "--wrong-arg" })

I know this is a tricky problem --- I now think this is actually a bug of neovim when coroutine and jobstart are used at the same time. But I open this thread to share what I have found so far and figure out solutions together.
Where does a deadlock happen?
fzf does not recognize the invalid raw args, so jobstart() immediately fails and here's the cause of the deadlock. I'm still trying to figure out what's the root cause.
So here's what happens:

core.fzf():

Create a floating window (it was not drawn yet)
Call fzf.raw_fzf():

jobstart() or termopen() fails due to the falsy shell command
::wait_for_fzf:: runs coroutine.yield()
Now the thread does some other jobs (unknown), and blocks

selected, exit_code <- fzf.raw_fzf() return value

Stacktrace when neovim hangs:

Additional Remarks

Some comments by @ibhagwan from fzf-lua/fzf.lua
I'm not sure why this happens (probably a neovim bug) but when pressing
<C-c> in quick successsion immediately after opening the window neovim
hangs the CPU at 100% at the last `coroutine.yield` before returning from
this function. At this point it seems that the fzf subprocess was started
and killed but `on_exit` is never called. In order to avoid calling `yield`
I tried checking the job/coroutine status in different ways:
  * coroutine.status(co): always returns 'running'
  * vim.fn.job_pid: always returns the corrent pid (even if it doesn't
    exist anymore)
  * vim.fn.jobwait({job_pid}, 0): always returns '-1' (even when looping
    with 'vim.defer_fn(fn, 100)')
  * uv.os_priority(job_pid): always returns '0'
`sudo strace -s 99 -ffp <pid> when neovim is stuck:
  [pid 27433] <... epoll_wait resumed>[{events=EPOLLIN, data={u32=18, u64=18}}], 1024, -1) = 1
  [pid 27432] <... write resumed>)        = 8
  [pid 27433] read(18, "\1\0\0\0\0\0\0\0", 1024) = 8
  [pid 27432] epoll_wait(9,  <unfinished ...>
  [pid 27433] epoll_wait(15,  <unfinished ...>
  [pid 27432] <... epoll_wait resumed>[], 1024, 0) = 0
  [pid 27432] epoll_wait(9, [], 1024, 0)  = 0
  [pid 27432] epoll_wait(9, [], 1024, 0)  = 0
  [pid 27432] epoll_wait(9, [], 1024, 0)  = 0
  [pid 27432] write(32, "\3", 1)          = 1
  [pid 27432] write(18, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>
  [pid 27433] <... epoll_wait resumed>[{events=EPOLLIN, data={u32=18, u64=18}}], 1024, -1) = 1
  [pid 27432] <... write resumed>)        = 8
  [pid 27433] read(18, "\1\0\0\0\0\0\0\0", 1024) = 8
  [pid 27432] epoll_wait(9,  <unfinished ...>
  [pid 27433] epoll_wait(15,  <unfinished ...>
  [pid 27432] <... epoll_wait resumed>[], 1024, 0) = 0
  [pid 27432] epoll_wait(9, [], 1024, 0)  = 0
  [pid 27432] epoll_wait(9, [], 1024, 0)  = 0
  [pid 27432] epoll_wait(9, [], 1024, 0)  = 0
  [pid 27432] write(32, "\3", 1)          = 1
  [pid 27432] write(18, "\1\0\0\0\0\0\0\0", 8 <unfinished ...>

As a workaround we map buffer <C-c> to <Esc> for the fzf buffer
`vim.keymap.set` to avoid breaking compatibility with older neovim versions

Removed as an experiment since the removal of the `save_query` code
that was running on WinLeave which seems to make the `<C-c>` issue
better or even non-existent? RESTORED AGAIN

@wookayin, you’re mixing two different issues here, the one you’re describing from my comments relates to a neovim bug with terminating lua procedures, see https://github.com/neovim/neovim/issues/20726 for more info.
I might be mistake but I never had a hang due to wrong fzf args, what I did experience was specifying some complex arg value with wrong shell escaping causing the shell to hang - this rarely happens, only with advanced customization so the user usually knows which command causes the hang and where they went wrong.
If my analysis is accurate this would be a low priority issue.

Your comment and neovim/neovim#20726 are tangential to this but I think it's relevant, possibly the same reason.
Anyway the reproduction is just an easy way to reproduce the bug and I've seen many cases where the neovim randomly hangs on a normal use without advanced customization, just using the built-in providers. I think fzf mat still crash often, actually it happens almost everyday for me, and I was just trying to find the root cause which seems to be a deadlock.

But NO for "a low priority issue" -- anyway the reproduction here is just an easy way to reproduce the bug and I've seen many cases where the neovim randomly hangs on a normal use without advanced customization, just using the built-in providers. I think fzf may still crash often, even after it's launched, actually it happens almost everyday for me, and I was just trying to find the root cause which seems to be a deadlock.

Everyday hangs aren’t low priority at all but you described in the OP are hangs only when using wrong args which are obviously very easy to avoid.
If you’re having everyday hangs that’s a new very high priority issue.
Are you closing the interface with ctrl-c when that happens or is it totally random?

Also, what is your shell/fzf version/environment?
There are at thousands of users for this plugin; this is the first I’m hearing of random hangs (unrelated to ctrl-c), if that were the case it would’ve been reported by now, if such an issue was more prominent it would be a serious UX issue and nobody would have used this plugin.
Is it possible this is related to your customization (nested coroutines for ui.input or other creative ideas)?

@wookayin, so I did some testing and to my surprise the below hangs 100% of the time:
require("fzf-lua").fzf_exec({ }, { fzf_raw_args = "--wrong-arg" })

I tested this many times in the past and it didn't used to hang like this and would provide a proper error message, I just tested with with skim and it works as expected:
:lua require("fzf-lua").fzf_exec({ }, { fzf_raw_args = "--wrong-arg", fzf_bin="sk" })

Which fails properly with:

I suspect this has something to do with fzf's version as this worked perfectly fine in the past, I'll do some more testing.

Ok, some progress, first this only happens when the contents argument  is of type table (which isn't used as much in the code, most contents arguments are strings), for example, the below won't fail:
:lua require("fzf-lua").fzf_exec("ls", { fzf_raw_args = "--wrong-arg" })

As I mentioned a few times in the past in our discussions, you would never know how a seemingly small change would potentially come to bite you in the future, here's the commit that broke it https://github.com/ibhagwan/fzf-lua/commit/a294a8330e9b0622acc3de4e0b9ab4e853b53fa2 which was part of #633.

https://github.com/ibhagwan/fzf-lua/commit/501d7524eae7e881f1406615f1a44cd43b52cf49
@wookayin, the above commit fixes it for everything but fish shells, I'm still unclear why this happens or the reasoning behind #633 which required this change, in any event unless you're using fish it shouldn't hang any longer when providing wrong args.

Awesome @ibhagwan, congratulations and kudos you figured it out. Thanks so much again for your time and help on this.

Also, what is your shell/fzf version/environment?
Is it possible this is related to your customization (nested coroutines for ui.input or other creative ideas)?

I am using zsh and fzf 0.39.0 (2023040), on macOS. Glad to hear that you already managed to reproduce, and it's not only me hit by this strange bug.
It's quite hard to reproduce the bug consistently -- and this issue #886 was my best effort to abstract the bug and narrow down the suspected reason as much as possible. But I remember I was just using built-in commands (like GitFiles, Grep) with some reasonable options (see my config just FYI). Probably some of them were related to <C-c> but I wasn't 100% sure. If I could manage to reproduce it again, I will take a deeper look next time.

first this only happens when the contents argument is of type table

This sounds strange! So I guess it might have something to do with "empty" stdin? (the piped file doesn't write anything) I still don't get why this works and the logic like a294a83 (#633) makes the bug... what a mystery. So it's probably more like a "blocking" file I/O deadlock issue rather than a coroutine..?
I can see that 501d752 fixes the problem, working well in both of my fish and zsh environments.

Ty for the update @wookayin!

working well in both of my fish and zsh environments.

The workaround was only applies to non fish shells, I tried to reproduce and fish was still causing the issue, I’m confused how it’s working for you on fish shell as the old code logic remained.

@wookayin, in regards to https://github.com/neovim/neovim/issues/20726, take a look at #1091, I'm attempting to solve this with a workaround, if you're still interested in using <C-c> and experience the occasional hang, can you try the trace branch , add the below to your setup:
require("fzf-lua").setup({
  -- 0: silent mode, no messages will be displayed
  -- 1: display the message only if process kill workaround is applied
  -- 2|true, display all `ctrl-c` keypresses (on normal fzf-lua UI close)
  -- I'm using `1` for testing so I can see the message only if proccess was required to be killed
  nvim_freeze_workaround = 1,
})

And monitor :messages for something like this:


PHP 7.1: mcrypt_create_iv() is deprecated

Error arises at line 27 of MCryptAES256Implementation.php
Online solutions suggest random_bytes()...

Yes. I think this project is dead though. The files has not been updated since 2015.


Permalink for search results

After performing a search, the search results are displayed.
Please also update the URL to a permalink. Then if I share that permalink other people will see the same search results.

That's a great suggestion, and shouldn't be too difficult to implement. Will look into this.

This has been added in the new version!

Confirmed working, looks great, thank you!


Temporarily remove publish symbols due to failing tests

@arunkm CI is busted. Temporarily removing this task so I can get a clean build to create the release branch.


[XamarinInspector-MAC]: Usability: VoiceOver: Once user is expanding or collapsing the UI tree from left pane of the Xamarin Inspector, the VoiceOver announces the same restults for infinitly  many times, as shown in the attachments.

Steps to Reproduce
Pre-requisites:
Launch the Visual Studio for Mac and Sign-in with Enterprise account.
Create projects:

Go to Visual Studio-> File-> New Solution. -> Multiplatform-> App-> Xamarin.Forms-> Blank Forms App.
Hit on Next button to create the project.
Hit on Debug(Play)/Build button to build/deploy the solution/project.
As per the choice/requirements, Change the Device platform like iOS/ Android and iPhone X iOS 11.3 etc.
Hit on Inspector icon button (i.e., in the top toolbar buttons of the VS) to inspect the project.
On hitting on inspector button, Xamarin Inspector is Launched.

Repro-Steps:

Follow the Pre-requisites to Launch the Xamarin Inspector from Visual Studio, Turn On the VoiceOver.
Navigate to Left pane (Tree View pane) of the inspector window.
Navigate through these tree items and expand/collapse  these UI trees using VO keys (the Control and Option keys) + space bar.
Observe the VoiceOver behavior once UI trees are being collapsed.

Expected Behavior
The VoiceOver should announce only collapsed/Expanded UI tree, on which VoiceOver focus is present.
It should not announce all the trees which are expanded/collapsed in the below level.
Actual Behavior
Once user is expanding or collapsing the UI tree from left pane of the Xamarin Inspector, the VoiceOver announces the same restults for infinitly  many times, as shown in the attachments.
User Impact
Announcing the same results for the infinitly many time, it becomes very annoying for the screen-reader user.
VO3 Repeatitive announcement.zip
Environment
Visual Studio for Mac Enterprise [Version: 7.5 Preview (7.5 build 1222)]
Xamarin Inspector [Version: 1.4 (master/b3f92f9)]
Log File

Please add the following labels to the bug:
Accessibility
A11yUsable
Xamarin-Inspector-MAC
Wipro

Exemption Approved - 1830


Node Taints such as "NoSchedule" causes the debug daemonset to not be deployed

For OpenShift clusters - where node taints are required for some other applications running on the OpenShift cluster, where the CNF testing is planned - test execution would stop because of the taints.
We need to have another workaround where node taints cannot be removed, so that test execution would not stop.

Hi,
I wanted to check if we have a workaround for this - I am working with a partner who cannot remove taints on two of their nodes

Hello, looking back at the v1.4 Requirements Document:
VCP CNF Requirement: CNFS MUST NOT apply tolerations for NoExecute, PreferNoSchedule, and NoSchedule.

In my opinion, the partner would be in violation of this requirement by manually cordoning their nodes.  I don't think a workaround will be available for this.

the best practice guide specifically has a test case for this, but we can provide an exception upon review of test results

But the taints are applied at the cluster level - not related to CNF. They mentioned that they are sharing the cluster and cannot remove taints. AFAIR, v4.1.2 test suite stopped execution due to the taints.
Can v4.1.3 run along side the taints and report it as a failure?

will investigate perhaps an option to support "shared cluster" type deployment execution, by skipping some tests which require test daemonset deployment


Replace the OutputParser by a StructuredOutputConverter API

 - Old OutputParser, BeanOutputParser, ListOutputParser and MapOutputParser classes are depredated
   in favour of the new StructuredOutputConverter, BeanOutputConverter, ListOutputConverter and
   MapOutputConverter implementations.
   Later are drop-in replacements for the former ones, and provide the same functionality.
 - Keep the existing parser package and classes for backward compatibility.
 - Adjust the PromptTemplate for backward compatibility
 - Update all existing tests to use the new Structured Output API.
 - Improve the Adoc structured output documentation.

edited the docs.  Changed the setter in PromptTemplate to be set/getOutputConverter.
Merged in a49a2d213f1d8de2429101b43f047a776b223b00


Update Post “scotts-test”

Automatically generated by Netlify CMS

👷 Deploy Preview for transcendent-cannoli-330a87 processing.

Name
Link

🔨 Latest commit
5ddd55e255ff71e24361c661c3f5698e8ef45a8d

🔍 Latest deploy log
https://app.netlify.com/sites/transcendent-cannoli-330a87/deploys/63f523228bc6450008e9226f


Compile with Proc Macro

I notice that in the getting started guide, it says you must use the same rustc version that it is expecting. Could we have a proc macro that takes a path to a rust file, and then compiles it using the correct rustc version, and then returns the compiled stuff? (Sorry for sounding so vague, I just started reading the getting started guide, so I don't really know what I'm talking about, lol.) This seems like it should be simple by using Command::new("rustc") in some way.

Not really. spirv-builder invokes cargo with rustc_codegen_spirv as the backend for rustc. rustc_codegen_spirv links directly to rustc internals, and these are very unstable, so this needs to be the exact same toolchain, not just a nightly.
So in theory spirv-builder itself could use an arbitrary toolchain, stable even, but rustc_codegen_spirv must be used with the same nightly it was compiled with.
Proc macros are more or less supposed to consume and produce tokens, though some do read from files or even compile source code.

Surely there would be some way to check what toolchain it needs, and then check if it installed, and if not install it, then compile with that toolchain. It might be janky, but I reckon it would be possible. I'll close for now, but I'll mess around with it and see if I can get a basic implementation working.


Add spotless rules for markdown files

Description
Check markdown files for space violations
Motivation and Context
Keep usage of whitespace consistent
How Has This Been Tested?
Should be tested, when build on this PR fails.
Screenshots (if appropriate):
Types of changes

New feature (non-breaking change which adds functionality)
Check for whitespace rules in markdown files.

Checklist:

[x] My code follows the code style of this project.
[ ] I have updated the documentation accordingly.

Codecov Report

Merging #523 into master will increase coverage by <.01%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master     #523      +/-   ##
============================================
+ Coverage     55.96%   55.96%   +<.01%
- Complexity     9960     9961       +1
============================================
  Files          1018     1018
  Lines         62738    62738
  Branches       7059     7059
============================================
+ Hits          35112    35113       +1
+ Misses        25161    25160       -1
  Partials       2465     2465

Impacted Files
Coverage Δ
Complexity Δ

...n/java/org/apache/jmeter/reporters/Summariser.java
86.25% <0%> (+0.76%)
19% <0%> (+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 0565293...6e2e555. Read the comment docs.

Ah. It turns out Spotless treats target("**/*.md") recursively, and it descends to src/...
I would prefer if it worked as "per-module" configuration: https://github.com/diffplug/spotless/issues/468
So it means we need to configure .md, .xml and others at the root project level only.

🎉


Reuse existing DHall configuration

As mentioned here - https://github.com/input-output-hk/cardano-shell/issues/1#issuecomment-433957215, we can reuse most of the configuration from the already existing DHall configuration files in Daedalus - https://github.com/input-output-hk/daedalus/tree/develop/installers/dhall
This issue is covering the migration of the configuration files and their respective parsers to the cardano-shell project where we can reuse most of the existing work.
Of course, we are not interested in Daedalus configuration options for now, but we can copy most all of them to see to what extent can they be transferred to the cardno-shell repo.
In translation - copy as much configuration as possible that is related to the node, for now, leave out Daedalus configuration options out.

Here's the PR:
https://github.com/input-output-hk/cardano-shell/pull/11

Here's the PR!
https://github.com/input-output-hk/cardano-shell/pull/18


Add hotkey (chat command) to open pet window

A nice feature would be if there is a option to auto open the ranger pet window when entering an explorable.

So theres a gw hotkey for this already, but toolbox won't auto trigger the hotkey because the pet commander ui frame (that responds to the key) isn't loaded yet. Might revisit the larger issue of UI not being ready for toolbox hotkeys on map load, but not for this specific feature


Adding Service Pack 2 for Microsoft SQL Server 2016

Adding Service Pack 2 for Microsoft SQL Server 2016.

@dansimp The PR that introduces a minor addition to a table in MBAM 25 Ssupported Cconfigurations page is available for a quick review. Thanks.

The default branch for this repository has changed. Commenting to remember to merge this to the new default, if this PR gets merged.

@deepaksr06
The default branch for this repository has changed from master to public. Please edit your pull request to change the merge target to public via the Edit button at the top right corner. Thanks.

As mentioned I have set it to public edited the pull request.
Thankyou

Looks like you pressed the wrong button, closing this PR instead of just posting your comment.
Please reopen this, unless you intend to recreate your repository and rebuild the PR.


ResourceWarning: Enable tracemalloc to get the object allocation traceback

ResourceWarning: Enable tracemalloc to get the object allocation traceback
xee/ext.py:432: ResourceWarning: unclosed <ssl.SSLSocket fd=11, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=6, laddr=('<IP_ADDRESS>', 54608), raddr=('<IP_ADDRESS>', 443)>

This is caused by #9.

#9 has been closed. Is this bug still reproducible?


[BUG] AccessDenied while trying to install analysis-icu-2.9.0 for x86_64

Describe the bug
I installed opensearch-2.9.0 using from an apt repository using the instructions found here:
https://opensearch.org/docs/latest/install-and-configure/install-opensearch/debian/#install-opensearch-from-an-apt-repository and I'm trying to install analysis-icu. This fails on a Debian 12 x86_64 machine.
This machine may try to connect to artifacts.opensearch.org using ipv6. Internet connectivity is not an issue: I was able to run apt-get update without any errors
To Reproduce

Login to the machine
Run sudo -- /usr/share/opensearch/bin/opensearch-plugin install analysis-icu -v

-> Installing analysis-icu
Checking if url exists: https://artifacts.opensearch.org/releases/plugins/analysis-icu/2.9.0/analysis-icu-linux-x64-2.9.0.zip
-> Failed installing analysis-icu
-> Rolling back analysis-icu
-> Rolled back analysis-icu
Exception in thread "main" java.net.SocketException: Network is unreachable
        at java.base/sun.nio.ch.Net.connect0(Native Method)
        at java.base/sun.nio.ch.Net.connect(Net.java:579)
        at java.base/sun.nio.ch.Net.connect(Net.java:568)
        at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:588)
        at java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327)
        at java.base/java.net.Socket.connect(Socket.java:633)
        at java.base/sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:304)
        at java.base/sun.security.ssl.BaseSSLSocketImpl.connect(BaseSSLSocketImpl.java:174)
        at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:183)
        at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:531)
        at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:636)
        at java.base/sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:266)
        at java.base/sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:380)
        at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:193)
        at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1242)
        at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1128)
        at java.base/sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:179)
        at java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:142)
        at org.opensearch.plugins.InstallPluginCommand.urlExists(InstallPluginCommand.java:426)
        at org.opensearch.plugins.InstallPluginCommand.getOpenSearchUrl(InstallPluginCommand.java:393)
        at org.opensearch.plugins.InstallPluginCommand.download(InstallPluginCommand.java:310)
        at org.opensearch.plugins.InstallPluginCommand.execute(InstallPluginCommand.java:273)
        at org.opensearch.plugins.InstallPluginCommand.execute(InstallPluginCommand.java:250)
        at org.opensearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:104)
        at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138)
        at org.opensearch.cli.MultiCommand.execute(MultiCommand.java:104)
        at org.opensearch.cli.Command.mainWithoutErrorHandling(Command.java:138)
        at org.opensearch.cli.Command.main(Command.java:101)
        at org.opensearch.plugins.PluginCli.main(PluginCli.java:60)

Opening https://artifacts.opensearch.org/releases/plugins/analysis-icu/2.9.0/analysis-icu-linux-x64-2.9.0.zip using Firefox on my machine returns an xml page containing an error:
<Error>
AccessDenied
<Message>Access Denied</Message>
<RequestId>SDS2R14GM0M5X6HH</RequestId>
<HostId>
bv4bf6JaBCItyDFl8r1UOayCSR/hPlBEB+XK3XQ0KePFDhlZIZq6U/Oa8tQIcSHvv074OJbTRZS4jeSyyxBDbEVDsrCWTuQt3ws82q+EAZI=
</HostId>
</Error>

Trying to open the parent directory or any parent directory fails with a similar message.
Expected behavior
I expect the program to install analysis-icu
Plugins
[opensearch-security, opensearch-neural-search, opensearch-knn, opensearch-cross-cluster-replication, opensearch-anomaly-detection, opensearch-reports-scheduler, opensearch-job-scheduler, opensearch-alerting, opensearch-index-management, opensearch-ml, opensearch-performance-analyzer, opensearch-geospatial, opensearch-notifications-core, opensearch-security-analytics, opensearch-asynchronous-search, opensearch-observability, opensearch-notifications, opensearch-sql]
Host/Environment (please complete the following information):

OS: Debian
Version 12.1
uname: Linux opensearch-01 6.1.0-11-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.38-4 (2023-08-08) x86_64 GNU/Linux

Additional context
Add any other context about the problem here.

Looks like it has something to do with the filename being requested, since I was able to work around the issue.
Here's what I did:

Download the plugin to a local directory via curl  https://artifacts.opensearch.org/releases/plugins/analysis-icu/2.9.0/analysis-icu-2.9.0.zip --output /tmp/analysis-icu-2.9.0.zip
Install from that local copy using sudo -- /usr/share/opensearch/bin/opensearch-plugin install file:///tmp/analysis-icu-2.9.0.zip

Inspired by the issue documented here: https://forum.opensearch.org/t/analysis-icu-plugin-vs-analysis-icu-client-plugin/10490

This is expected behavior the first URL used to install the plugin was missing a part the platform and architecture: https://artifacts.opensearch.org/releases/plugins/analysis-icu/2.9.0/analysis-icu-linux-x64-2.9.0.zip
If there is a specific place that provided a bad url or how to lookup a url could you create an issue to address that?  Thanks


Fix path to MainDiscoveryProviderFactory in the *_discovery.yaml files.

LGTM if tests pass

gradlew check passes
Though it didn't catch this error before. We need to follow up with a test.


future cooperation

Hello! I'm now starting to write a program to select your favorite music. Now I'm studying your achievements. They will help me a lot in understanding the work with audio files. The idea of how I implement this already exists, and it is good. I have a desire to contact you when the draft version of the program is ready, so that specifically you look at whether I understand the work of your program accurately.
P.S. At the moment, not one service for selecting music according to preferences does not know how to select music normally for those records that are nryatsya. He does not know how to analyze music. I know how to do this. How to make an analysis of audio recordings for further selection of other musical compositions from this analysis.

I'm not sure I fully understand your question. NAudio will allow you to access the raw sample data for many common audio files. From that you can perform any analysis you want, but you would need to write the signal processing code to do that yourself.

Yes everything is correct. The signal handler is developed by me, I know how it will work. It remains for me to understand your code. Understand the work of the program. This proposal on cooperation, how it will work, I will write to you here.


Invalid metric type error for Prometheus 2.4.x

palo's metrics output is like:
# TYPE palo_fe_job GAUGE
palo_fe_job{job="load", type="HADOOP", state="PENDING"} 0

this is not allowed in Prometheus 2.4.x
See: https://github.com/prometheus/prometheus/issues/4602

Yes it is.
We already fixed it, and will pull it later.
prometheus 2.3.1 works for now, you can download it here:
http://bj-test-cmy.bj.bcebos.com/prometheus-2.3.1.linux-amd64.tar.gz?authorization=bce-auth-v1/069fc2786e464e63a5f1183824ddb522/2018-10-18T07:31:32Z/-1/host/6e2c3ad9e60256258b0f68c9bc51413ff73ed8a4b07959088f2dd79f54a3ac0e

Thanks


VSCode previous open workspaces not in sync with right click menu on taskbar

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.64 - insiders
OS Version: Windows 11

Steps to Reproduce:

Remove a recent folder from the right click menu from the taskbar

does not update the Backups/workspaces.json

Some context:

previously Powertoys Run plugin VSCode Workspaces used AppData/Roaming/Code - Insiders/settings.json to get all the previous opened workspaces for vscode insiders in this case
because of a recent change in code insiders i was trying to use AppData/Roaming/Code - Insiders/Backups/workspaces.json instead, but vscode insiders sometimes cleans all the folderWorkspaceInfos from that json

We don't the best way of getting the previously open workspaces in sync with what is showed in right click menu showed above.
Can anyone take a look at this?

With https://github.com/microsoft/vscode/issues/138072, the list of opened workspaces moved into our SQLite DB and out of that JSON file. This is intentional.


Bug

z.coerce.boolean();  always returns true

Please refer documentation.

It would be good if you could attach a code to reproduce the error you are getting.


incrementEach and decrementEach dont respect where query when used for eloquent model

Laravel Version
9.52.15
PHP Version
8.1.19
Database Driver & Version
MySQL 8.0.33 for macOS 13.4.1 on arm64 (Homebrew)
Description
incrementEach() and decrementEach() dont respect where condition when used for eloquent model.
$user = User::where('shop_id', 1)->first();
$user->decrementEach(['counter' => 1, 'balance' => 100]);

All users in the table are decremented whatever 'shop_id' they have.
Please note that the problem is only if executed via eloquent model , but works correctly if executed via direct query as below
User::where('shop_id', 1)->decrementEach(['counter' => 1, 'balance' => 100]); // works correctly

Steps To Reproduce
incrementEach() and decrementEach() dont respect where condition when used for eloquent model.
$user = User::where('shop_id', 1)->first();
$user->decrementEach(['counter' => 1, 'balance' => 100]);

All users in the table are decremented whatever 'shop_id' they have.
Please note that the problem is only if executed via eloquent model , but works correctly if executed via direct query as below
User::where('shop_id', 1)->decrementEach(['counter' => 1, 'balance' => 100]); // works correctly

Hey there,
Unfortunately we don't support this version of the library anymore. Please check out our support policy on which versions we are currently supporting. Can you please try to upgrade to the latest version and see if your problem persists? If so, please open up a new issue and we'll help you out.
Thanks!


Handle a missing CountDetails node in the returned responses for GetRuntimeProperties

Return an error for a missing CountDetails node in the returned responses for GetRuntimeProperties. This doesn't fix the issue in #17868 but it'll stop the panic, which is infinitely worse.

/azp run go - azservicebus


[DO NOT MERGE] Republish HtmlAttachments

Republishes all HtmlAttachments via their parent document. This will be used to switch the rendering app of all HtmlAttachments as part of the  format migration.

:1st_place_medal:


Create plugin icon

spec:
https://www.jetbrains.org/intellij/sdk/docs/basics/plugin_structure/plugin_icon_file.html

@simonharrer san, Can you help me create plugin icon?
I has one (cheap!) Idea, to make a circle with mob logo?
Like this:

@Ebano created the logo for the cli tool 'mob'. @Ebano do you think you could (and want) to help here?

We could use the icon for both, the intellij plugin and the cli tool when a square icon is necessary.

I do :) will try something this week.

Thanks!!

How about this:

If you like it, I can push the svg.

(which is actually square)

Thanks! I like the atmosphere.
What about the idea of making the purple arrow more circular?
I think it's can express cyclical typists of mob programming.
But, I don't understand what the original logo arrow means.
If it has a different meaning, I think it's better to keep it.

the arrow means 'mob next'. Focus on the next, not the cycling through everybody (experts typically dont become typists). I like the logo.

Thanks @simonharrer san, I understood means to arrow.
Let me use this logo!
@Ebano san, please put src/main/resources/META-INF/pluginIcon.svg to PR?

merged #7 , Thanks!


[iOS][Android] AppBarButton breaks NavigationBar if Icon specified

Current behavior
Navigation Bar does not render (at all) on Mobile, if an Icon is used
error in Output - System.InvalidOperationException: The Dependency Property [UriSource] is owned by [Microsoft.UI.Xaml.Controls.BitmapIcon] and cannot be used on [Microsoft.UI.Xaml.Controls.SymbolIcon]
Expected behavior
Navigation Bar renders, and the button has the desired icon, like on Windows

How to reproduce it (as minimally and precisely as possible)
<utu:NavigationBar Content="Macclesfield Hedgehogs">
	<utu:NavigationBar.PrimaryCommands>
		<AppBarButton Label="Refresh" Icon="Refresh" />
	</utu:NavigationBar.PrimaryCommands>
</utu:NavigationBar>
Affected platform(s):

[X] Android
[X] iOS

Thanks for the report @mikeirvingweb!
Unfortunately only BitmapIcons can be supported by the NavigationBar for Mobile targets at this time as the underlying native components do no support Font/Path/Symbol Icons. See here
Some investigation still needs to be done to see if this would be possible in the future but for right now we only have support for BitmapIcon.

Yeah. A pain though. It's nice to be able to use Symbol Icons elsewhere, but painful to have to make bitmaps, or use just text, here.
Yes, I feel it should not break the navbar altogether, and if the error made the cause obvious it would save devs a lot of time

By 'not breaking' the nav bar, it should just default to the Label, if one has been provided.


Phone number accepts numbers that are only 3 numbers long

phone number in Singapore should be at least 8 numbers long

Fixed in #181


More Example

Hello,
I'd like to ask you for a complete example for Laravel/Nuxt because I'm not sure that we all use Laravel with Breeze and Sanctum packages.

Hey @TartanLeGrand, this package was created specifically for Sanctum authentication, it was not in my plan to support any other packages or authentication methods like token-based, there are already some Nuxt libraries that provide sufficient functionality. What kind of example do you suggest to put in this repo?
Btw, there is another repo with my initial experiment with complete Laravel and Nuxt setup (even before I created this package) - Laravel & Nuxt.

@manchenkoff for me its interesting how to implement .net api auth  (.net 8 new api identity auth) with Nuxt.

Hey @gitekDev! As far as I know, there are no other packages with cookie-based authentication support for Nuxt 3 yet, but for .NET specifically, you can use a similar approach as I used in the article shared above for PHP.
On the backend side everything should be possible by using the default authentication layer - ASP.NET Core Docs, and here is also an example of the project with a configured cookie-based session.
On the Nuxt side, you just need to adjust endpoints and cookie/header names according to your API (right now I am not sure which keys are used by .NET).
P.S. Actually, it might be a good candidate for a framework-agnostic open-source project and if you wish, we can collaborate on implementation 😎 I believe it might be handy for any other languages as well like Python, Go, etc

I'm closing this one due to inactivity, in case of any ideas about new projects - feel free to reach out to me on any social media! 👌


Added history feature and fixed dev env to start develop new feature

In this PR you can find like a new Terminal the history of the commands.
Also, some fixing with the dev env to work on the dev env.

I'm here for every question or editing.
Thanks man!

Is it ok now ? 🙂
Thanks 🌮

Just give me some time. I will review the code later because I'm working on a new feature. Don't worry I will merge this and thanks for the PR 😃

Also I posted this on Reddit and some comments are so depressing.

@nitin42 depressing ? for what ?

Nothing they just anticipated much more. I've just started working and I've a ton of ideas to improve this component further.

Btwn thanks for being patient 😃

Yeah I usually wait a bit to post to reddit

Next time I'll take care of this !

I really want this working on command updates has been a pain with out it

Hey @CVarisco can you do a git pull and commit your changes again (for adding history feature) ? I've merged 139ea95 btwn.
History feature looks really great and I'm excited. Thank you!

@CVarisco you will need to do a new pr with these changes because a lot has changed

I created a new PR here with the feature in the new terminal structure.
I hope that is ok now 👍


Add optional ability to define custom rules for Prometheus JMX Exporter

What changes were proposed in this pull request?
Adds a new configuration, prometheus.jmx.customRules, that allows users to define custom rules for the Prometheus JMX exporter. This was added to all charts. Defaults to an empty array.
Limitations: toYaml removes all quotes from strings, so patterns, descriptions, etc. should not contain any reserved characters that are not allowed in plain scalars in YAML, for example ": ". I considered a workaround, but toYaml felt simpler to use and understand (and is used in other places in the codebase). For our use case we are not particularly worried about reserved character combinations. If this does not work I am happy to reexamine.
How was this patch tested?
Ran helm install --dry-run on GKE with some custom metrics to confirm that they were included. Ran helm upgrade on a GKE cluster to add custom metrics for an existing cluster. Also ran a dry run without any custom metrics defined to confirm that the output configmap looked as expected.

I prefer not to expose this since it's making the values.yaml too long... in fact if there're any rules missing please feel free to make a PR directly to configmaps, we'd love to see all rules consolidated in so there's no need to add any custom rules.
For users who really want to have custom rules, I'd recommend clone this repo and modify the rules in configmap directly...

Hey @qshao-pivotal! I have already forked the repo and made the changes myself for my own use. I had a discussion with @gAmUssA and another person on Confluent Slack who also wanted this feature, and @gAmUssA mentioned he would like to see the PR. However, it doesn't make a difference to me as I'm already using my own separate fork so if it makes the yaml too long feel free to close.

And as always, thank you for taking the time to review!

What's the benefit of having extra in yaml file instead of putting all in ConfigMap? It looks harder to maintain to me since you have 2 places declaring rules.
Since the goal is:

rules should be modified/updated easily
one place to have all rules
Not blow up values.yaml with rules
Maybe we should leverage Files in helm.


"Fântânele", "Bozieni", villages are listed in the drop-down menu.

The villages are listed in the drop-down menu alongside its corresponding county and commune, according to the law
Preconditions : the website (https://peviitor-ro.github.io/ui.orase/) is up and runing. After every step delete the text you typed from the search bar.

Step 1
Type "Fântânele" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Fântânele, PRAHOVA (Fântânele)".

Step 2
Type "Bozieni" in the search bar.

Expected results
The location is listed in the drop-down menu as "Sat Bozieni, PRAHOVA (Fântânele)".


Clarify reconnecting delay

Without clarification delay can mean two things: time to the next attempt (wrong) or time passed from the previous attempt (correct). The wrong interpretation is tempting because it makes easy to print "Trying to reconnect in {delay} ms."
Pull Request check-list
Please make sure to review and check all of these items:

[ ] Does npm test pass with this change (including linting)?
[ ] Is the new or changed code fully tested?
[ ] Is a documentation update included (if this change modifies existing APIs, or introduces new ones)?

NOTE: these things are not required to open a PR and can be done
afterwards / while the PR is open.
Description of change
Only a minor change in main documentation.

LGTM. Thanks!


Version support for requirements.txt

Discussed in https://github.com/microsoft/vscode-python/discussions/15585

Originally posted by kumaraditya303 March  6, 2021
When requirements.txt file is opened, it is detected as pip requirements file, it would be awesome if there was a dropdown of versions available for the package like the support in maven in vscode

Thank you for submitting your feature request and everyone who considered it! Unfortunately this issue did not receive enough votes over the allotted time, and so we are closing the issue.


tools/openbsd: switch to 6.5 now that it's in -beta

Codecov Report

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

@@           Coverage Diff           @@
##           master    #1029   +/-   ##
=======================================
  Coverage   67.53%   67.53%
=======================================
  Files         114      114
  Lines       20425    20425
=======================================
  Hits        13794    13794
  Misses       5985     5985
  Partials      646      646

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 68d9e49...906e474. Read the comment docs.


Spec: Specify Feature BP (Block Pipelines)

See #1.

See tc39/proposal-do-expressions#24. Might be simplest to forbid break.

Also see also https://github.com/babel/babel/issues/3780#issuecomment-374320206. The semantics of the spec probably should match the semantics of the Babel transformation. This means that #11 might block this, since how pipelines in general are most elegantly transformed using the statement-hoisting described in https://github.com/babel/babel/issues/3780#issuecomment-374320206 might affect how it also works with block pipelines.


[IOTDB-1526] New Template Constraint

Description
Implement in Metadata Module
The new constraint is that one path only allow one template set on some node. It means once a template is set to a node, it will be forbidden to set any template to the node's ancestors or descendants.
A template check method has been added to MTree and will be invoked by MManager's setSchemaTemplate method.
Update Data-model User Guide doc
The new constraint is added to the data-model doc. The content in data-model doc is reorganized for better guidance.
Remark
Currently, template could only be used via session and only set template is implemented. This should be implemented in concerning modules like JDBC, and further functions like unmount template should be implemented as well in future work.

This PR has:

[ ] been self-reviewed.

[ ] concurrent read
[ ] concurrent write
[ ] concurrent read and write

[ ] added documentation for new or modified features or behaviors.
[ ] added Javadocs for most classes and all non-trivial methods.
[ ] added or updated version, license, or notice information
[ ] added comments explaining the "why" and the intent of the code wherever would not be obvious
for an unfamiliar reader.
[ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold
for code coverage.
[ ] added integration tests.
[ ] been tested in a test IoTDB cluster.

Key changed/added classes (or packages if there are too many classes) in this PR

Coverage increased (+0.007%) to 68.283% when pulling 9154268d58526b35ed9de3f212552508fbd5b77c on zyk990424:jira_1526 into b484f2e9a1f0e6471d93281d491343115d985137 on apache:master.


Storage::writer() provides no way to see metadata after writing.

Here's an example of using the Storage::writer method to write a blob from the documentation:
BlobInfo blobInfo = BlobInfo.newBuilder(blobId).setContentType("text/plain").build();
try (WriteChannel writer = storage.writer(blobInfo)) {
   try {
      writer.write(ByteBuffer.wrap(content, 0, content.length));
   } catch (Exception ex) {
     // handle exception
   }
}

This works well and makes it easy to write data to a GCS object with a WriteChannel. However, when the operation finishes, GCS returns the metadata of the new object, most importantly including the generation number of the newly-created object. The writer() method provides no way of accessing this metadata.
We need a way of accessing the metadata of the new object upon success. Perhaps a Blob accessor could be added to the WriteChannel, or some assignable reference could be passed to the writer() method, or some other mechanism.

cc/ @garrettjonesgoogle


 Is this normal?

Hi, that's ok. The image contains pixels in the range [0, 5], so the mask looks pure black.

ok，三克油，感谢热心的回复。


[Enhancement] Add broker load error in retrying

What type of PR is this：

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

The broker load job would retry for 3 times if the plan stage get any problem, but the error message would not be shown until until the job is canceled.
To make it simpler to find out the problem, This PR adds the error message in the process of retrying to the result of show load.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)
[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto backported to target branch

[x] 3.0
[x] 2.5
[ ] 2.4
[ ] 2.3

[FE PR Coverage Check]
:disappointed: fail : 0 / 6 (00.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/load/loadv2/LoadJob.java
0
2
00.00%
[731, 732]

:large_blue_circle:
com/starrocks/common/util/BrokerUtil.java
0
2
00.00%
[123, 124]

:large_blue_circle:
com/starrocks/load/loadv2/BulkLoadJob.java
0
2
00.00%
[248, 249]

@megrifyio rebase

@mergifyio rebase

[FE PR Coverage Check]
:disappointed: fail : 0 / 6 (00.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/load/loadv2/LoadJob.java
0
2
00.00%
[706, 707]

:large_blue_circle:
com/starrocks/common/util/BrokerUtil.java
0
2
00.00%
[123, 124]

:large_blue_circle:
com/starrocks/load/loadv2/BulkLoadJob.java
0
2
00.00%
[255, 256]

@Mergifyio backport branch-3.0

@Mergifyio backport branch-2.5


License

What kind of license does this project have? Can you please add a license file to this repository?

I added license. It's absolutely free.


[BUG]

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.

What problem did you encounter?
System.IO.FileNotFoundException: Could not find file 'C:\Users\Admin\Downloads\Bloxstrap-v2.5.4.exe'.

If this is still happening, send the log file please

Issue has been awaiting clarification for over a month, closing as stale. If you have anything further to add, just respond and I'll reopen.


tokenURI for FT

Currently as you are probably aware your tokenURI implementation is specific to your game and cannot be used by other since it returns a specific URI linking to your domain name.
Interestingly though, you check the call by calling exists but since this function check for the owner, this forbid your FTs to have tokenURI.
This is probably not as intended.
I suggest adding the contract address as owner to FT, this way the, the function exists remain valid for both FT and NFT.
As for the bug mentioned in https://github.com/loomnetwork/erc721x/issues/4 you could simply add a call to exists in the _mint function too

Fixed in #7, thanks for the find!

I would also suggest to move the current tokenURI implementation into the Card contract so the ERC721x remains independent of loom

@wighawag good idea I'll move the tokenURI to be abstract


mouse wheel scrolling and zoom in/out functionality in highchart and highstock chart

Bug or Feature Request?
I need mouse wheel zoom In/Out and scrolling in this stock chart. and I found this highchart zoom in/out code. I tried myself with import MapNavigation from react-jsx-highstock but this error showing
Attempted import error: 'MapNavigation' is not exported from 'react-jsx-highstock'.

why Date Picker is not working here?

Was it solved or added? I am trying to get a similar zoom-in and out feature on the mouse wheel scroll.


Did you remove the RefCOCO test images from the COCO training set?

Hi,
thx for releasing this, this is really great work!
I recently discovered that the RefCOCO annotations, even validation and test, are all done on the training set of the original COCO dataset, which I think was done quite badly for the annotations, but now we have to live with that.
This means, that the COCO training set overlaps with the RefCOCO test set.
Did you filter out those overlapping images from the training set? If not, then the scores for RefCOCO (also + and g) would be too optimistic, because the instances that are refferred to have already been seen during instance segmentation training.
For a fair comparison to previous work, it would be necessary to re-train with those images removed (if you didn't remove those images).

Grounding DINO mentioned this data leak issue in Table 5.
I have an additional question: What's the data split used for RefCOCO? 'unc', 'google', or 'umd' as mentioned here?


Save to / recall from EEPROM functionality

Resolves #127. This PR (also) includes commits present in PR #150.

Any thoughts on this PR @RobTillaart

Ooow, that PR is quite some time ago. I will look into it this week (probably tomorrow)


New compiler option to disallow for...in/in for types that do not have any properties

The idea is to introduce a new compiler option, e.g. strictInOperator which when enabled would flag for example the following for loop as a type error:
const numbers = [1, 2, 3].entries();

for (const x in numbers) {
    // ..
}

because Array.prototype.entries returns an IterableIterator that does not have any properties so the above for loop would never iterate (you'd have to use of instead of if), which is a very easy mistake to make especially when you're used to other programming languages such as Python or Rust.
Even if this new compiler option would only check for IterableIterator this would already solve this big pitfall in the type safety of TypeScript (the keys, values and entries methods of Array.prototype, Map.prototype and Set.prototype all return IterableIterator that doesn't work with in).
Likewise just const contained = 1 in numbers; would also result in a type error if the compiler option was enabled. The new feature would be entirely backwards compatible since it would be opt-in.

Are you talking about the in operator as in p in e, the for/in construct shown in the example, or just treating them as roughyl equivalent for the purposes of the suggestion?

I feel like this is more in linter's land. There's also https://github.com/typescript-eslint/typescript-eslint/issues/5677. If you want to propose a rule like no-for-in-iterable, feel free to, although you should really be banning for...in loops altogether (as the airbnb preset does).

@RyanCavanaugh I am treating them as roughly equivalent.

I feel like this is more in linter's land.

I did also consider that ... however this is a type checking issue and typescript linters afaik do not check types, so I think this does belong here.

although you should really be banning for...in loops altogether

It's not just about for...in loops but also about the in operator and that operator indeed does have its purpose in idiomatic code.
Sidenote: There also is the guard-for-in eslint lint ... however it is very lax since it checks for the presence of any if block (so e.g. if (x > 3) also satisfies the lint) but more importantly it also doesn't handle the in operator in binary expressions.

typescript linters afaik do not check types

typescript-eslint does. You could find other type-aware rules here by clicking "requires type information". https://github.com/typescript-eslint/typescript-eslint/issues/5677 that I shared above exactly uses type information to check the RHS's validity.
Also, do note that the in in for...in is not an in operator—it's just part of the syntax.

Thanks for pointing that out! I just found the more thorough explanation at Linting with Type Information.
I guess the bigger question is whether or not more strict type checking should be part of the TypeScript compiler vs a separate linter plugin. TypeScript already has 18 specific such rules:
allowUnreachableCode, allowUnusedLabels, alwaysStrict, exactOptionalPropertyTypes, noFallthroughCasesInSwitch, noImplicitAny, noImplicitOverride, noImplicitReturns, noImplicitThis, noPropertyAccessFromIndexSignature, noUncheckedIndexedAccess, noUnusedLocals, noUnusedParameters, strictBindCallApply, strictFunctionTypes, strictNullChecks, strictPropertyInitialization and useUnknownInCatchVariables
Looking at the typescript eslint rules that require type information I think e.g. no-unsafe-call or no-misused-promises would also fit quite well into the builtin settings (as would the setting I propose here in my opinion), because such strict checks help achieve the first design goal of TypeScript:

Statically identify constructs that are likely to be errors.

exactOptionalPropertyTypes, noUncheckedIndexedAccess , strictFunctionTypes, strictNullChecks, useUnknownInCatchVariables et al. actually change the perceived type of an expression, or type relationships. Because TS-ESLint piggy-backs the TS compiler, it means the linter will see different results as well, which is why they are necessary for the linter to function as intended at all. However, as you've realized, some other TS options are very linter-y (especially noFallthroughCasesInSwitch), so it's easily imaginable that in an alternative world they would become a linter rule, had it not been implemented in tsc so early. In fact, noFallthroughCasesInSwitch was considered for deprecation because it "feels linty". In general, if a feature is not new (e.g. noImplicitOverride was added alongside override) and can be done in linters, it probably should.

Personally I would like TypeScript to provide strict type safety by default. I think there is a clear difference between opinionated lints and type checking (that is flagging types that are used in a way they're not supposed to be used).
I also think that providing such strict type checking built into TypeScript would result in a better developer experience since it would mean one less tool to achieve the primary goal of TypeScript (which I'd argue is identifying type errors).
However since this is a bigger question about the general scope of TypeScript, I am closing this much more specific issue since as you rightfully pointed out this can already be implemented in typescript-eslint. Thanks for pointing this out and being so responsive!

I don't consider using for..in or "foo" in obj on a {} to be a type error, though.  The reason why falls into the same reasoning that Object.keys() returns string[] instead of keyof T; it's a deliberate part of the type system that objects can have more properties than are listed in their type.  Thus {} is the supertype of all objects.  So it's not actually provable from types alone that a given object has no properties at runtime.
That said, "foo" in obj where x: {} is almost certainly a code smell--which is squarely in the domain of a linter, not the type system proper.

@fatcerberus The request forbids them on iterables, because the idea is that they are usually ordered collections rather than keyed collections.

@Josh-Cena I was going by the issue title which says “…for types that do not have any properties”.

I feel like as far as rules go, saying that for (let x in iterable) is an error would be pretty defensible and you should have to write for (let x in iterable as object); that's the same sort of check we have as if (functionWithoutParens) {. That said... unless iterable is of a very specific type, you're going to get an error in the loop body when x isn't the expected type.
The standalone in operator (which really should not be conflated here) is IMO totally different and doesn't merit much additional consideration in terms of its behavior. There's very rarely confusion about what's happening with that one.


Cuckoo support for objective c

I want to avoid writing my own mocks for objective c classes. FYI my project contains both objective c and swift implementations.
Does cuckoo support objective c class mocks?

Hi, it does not support ObjC as of now, but we would like to add support for dynamic mocks that will not be precompiled, but created as a proxy of an ObjC class.

@TadeasKriz Any ETA on when would you start supporting this?

It's on our task list right after Swift 3.0 support. Unfortunately I cannot give you any ETA as it all depends on how much free time we'll get on our hands and how difficult will the implementation be.

@TadeasKriz Thats great news ! Thanks

I would also like this functionality if it's still not yet supported - we have many occasions to want to mock things from a third party libraries that are still legacy Obj-C.

Hey there, along with @TadeasKriz we added an experimental ObjC mocking functionality that utilizes OCMock using a neat API along with all the safety that Swift can offer.
This should allow for mocking all objects from ObjC, along with the system libraries. Feel free to try the experimental/objectiveC branch and post any issues or proposals to PR #290. Thanks in advance!


Consumer is not realtime !

I installed kafka stable version (kafka_2.11-<IP_ADDRESS>) from its official website. I have no problem with  its command line interface and it works well i.e I ran a producer in one terminal and a consumer in another terminal. While I am producing the consumer consume it in real time! No problem with it.
My scenario
Steps I took:

I installed kafka-node with npm.
I ran zookeeper and kafka server on my local host.
I ran bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic1 --from-beginning
I ran node producer.js
Every time I run the setp 4 I can see the result in the consumer terminal in real time.

But when I ran the node consumer.js instead of step 3. I just get the list of previous messages. Every time I ran the producer I will not get any changes in the consumer terminal. But when I re-ran it I will. So it is offline instead of online. I read some other issues but they were not usefull. Any help will be useful. Thank you.

I am too facing the same issue. While the consumer is running and producer is run, unlike the console consumer which shows the message produced by producer in realtime, the node-consumer doesn't show the message in realtime, it needs to be re-run again to show the messages.

I've fixed it with this changes .


Move files out of archive root to the root of the Pod.

When archiving the zip files will be under Bluepill-v#{s.version}. Moving all the files to the Pod root for easier and consistent access


Fixed some spelling and grammar (issue #29)

Could you please add the hacktoberfest label to this pull request?

Sorry for those, I have fixed these problems.

I disagree with the changes in this PR.

Notify when tasks are complete

was correct, every bullet point starts with a verb and changing "notify" to "notifications" changes this context from a feature.
Missed:
There is a mismatch in tense here:

Monitors changes in the files and reload browser with BrowserSync

All of the other bullet points are the base form of the verbs you use, where Monitors implies a subject.
I also recommend changing:

Javascript tests with Jasmine and Karma

to "Test javascript with Jasmine & Karma"


Deprecation warning

I am getting following warning after upgrading zend-mvc:
ServiceLocatorAwareInterface is deprecated and will be removed in version 3.0, along with the ServiceLocatorAwareInitializer. Please update your class My\Controller\MyController to remove the implementation, and start injecting your dependencies via factory instead.
I have read the CHANGELOG and I understand why this warning is coming. But none of the controller classes is implementing ServiceLocatorAwareInterface in my application. I think due to extending AbstractController class which has setServiceLocator() method I am getting this warning. I know if I need I can inject it through factory. I would prefer to see this warning only if any classes is implementing ServiceLocatorAwareInterface, not for merely defining a method setServiceLocator() which can be there even if we inject it using setters in factory instead of constructor injection.

But none of the controller classes is implementing ServiceLocatorAwareInterface in my application.

Before version 2.7 all controllers, which extends Zend\Mvc\Controller\AbstractController, implements ServiceLocatorAwareInterface.

That's my concern. Now there is no implementation of ServiceLocatorAwareInterface so why this warning?

@metanav
I updated my previous comment.

I think, the warning is good, but message wrong.

I agree with you regarding the message. But could you please explain the logic behind triggering this warning when  you have a method  setServiceLocator in your controller?   Suppose I have controller and factory like this:
(Note: Neither I am extending AbstractController class or implementing ServiceLocatorAwareInterface)
class MyControllerFactory
 {
    public function __invoke($serviceLocator)
    {
        $myController = new MyController();
        $myController->setServiceLocator($serviceLocator);
    }
}

class MyController
{
    public function __constructor() {}
    public function setServiceLocator($serviceLocator)
    {
         $this->serviceLocator = $serviceLocator;
    }
}

But could you please explain the logic behind triggering this warning when you have a method setServiceLocator in your controller?

With a factory you do not need the Service Locator in your controller.

Hi, we also encounter this problem, sorry to complain again but this is the third problem we have in one week with the ZF 2 updates :(
Could this be fixed quickly ?

In all my controllers appear as message: " Deprecated: ServiceLocatorAwareInterface is deprecated and will be removed in version 3.0 [...]"
see my config;
`
namespace Retailer;
use Zend\Mvc\Controller\ControllerManager;
use Retailer\Controller;
return [
"factories" => [
"RetailerControllerCheckout" => function (ControllerManager $controllerManager) {
$serviceManager = $controllerManager->getServiceLocator();
return new Controller\CheckoutController(
$serviceManager
);
},
]
];
`

same here - i recognized multiple changes in the past weeks, which will break here or there some things (example: https://github.com/bjyoungblood/BjyAuthorize/issues/304).
its like, working with an apple nowadays..
please provide some informations what to do, to clear the deprecated issue

" Deprecated: ServiceLocatorAwareInterface is deprecated and will be removed in version 3.0, along with the ServiceLocatorAwareInitializer. " I am getting this error all over my application controller. Can anyone help?

The message is good and important for all developers!
For you production system you can use a different error_reporting level.

Sorry, but this is, at least for me, inacceptable.
As i develop in my production to see all errors, this deprectaed message is breaking my layout.
For sure i could supress by set another error_reporting, but i want to see all errors on development.
I dont use the "setServiceLocator" method in any class, and as "metanav" already wrote, its a default extend which have to be defined for every controller.
Please, modify the check, so that if the method is not used in our classes, dont let this deprecated message appear.
I will go to 2.6.3 back until there is a fix.

Still the issue exists. I had given error_reporting(0); in my controller function. But it is not working as i expected. Is it possible for me to change the version of Zend service Manager to Previous?

@someother1

…but i want to see all errors on development.

This is correct. Therefore I wrote:

For you production system you should use a different…

@rajitha081189

I had given error_reporting(0); in my controller function.

This is too late! error_reporting is configuration option so use the config files of your application or the PHP configuration.

@froschdesign

The message is good and important for all developers!

IMO doing this triggers the warning.
class MyController extends AbstractActionController {}

So here using the API normally (i.e as explained in the ZF 2 docs) triggers a Warning.
So I do not agree with you because a warning should be displayed if an API is used with abnormal calls and manipulations (which is definitly not the case here).

Ok thanks. Its work for me right now. When I put it on the global.php file in Config folder. But need a better solution.

@bgaillard

So I do not agree with you because a warning should be displayed if an API is used with abnormal calls and manipulations (which is definitly not the case here).

This is only a warning for deprecation. Nothing more or less.
Trigger a E_USER_DEPRECATED message is the normal and right way.

@rajitha081189

But need a better solution.

This is the normal way for E_USER_DEPRECATED. (On your production system you should use the PHP configuration.)

@froschdesign I understand what you mean and I don't have any issue with E_USER_DEPRECATED or any such kind of error reporting messages, they are really helpful. But they are useful only when they are meaningful and in appropriate places. The first case when a developer implement 'ServiceLocatorAwareInterface' it MUST be  triggered but not for the  other case when only setServiceLocator is defined in the class or any parent class.

@metanav

The first case when a developer implement 'ServiceLocatorAwareInterface' it MUST be triggered

Right!

but not for the other case when only setServiceLocator is defined in the class or any parent class.

The error message is wrong, but the hint for this "old" standard method is correct. In version 3.0 this messages will removed. It's only a small migration step in 2.7 to 3.0.

Do you mean we should never inject  a service locator or have a setServiceLocator method in a controller class because it is an anti-pattern? If yes, I think this is fine and only thing is the message should be changed for the other case.

…we should never inject a service locator or have a setServiceLocator method in a controller class because it is an anti-pattern?

You get it! :+1:

Ok, but Zend\Mvc\Controller\AbstractController by default have still setServiceLocator method. It's any way to disable this warning? Maybe should we remove setServiceLocator method and implement it by __call?

@snapshotpl

It's any way to disable this warning?

See error_reporting.

@froschdesign I know about it. But I think that should be other way to do that (refactor something). zend-mvc shouldn't trigger warnings by default, only my bad usage. __call will be good replacement

I think @snapshotpl has good point. This way we can get rid of setServiceLocator() method and also it will be BC/FC.

Or add option to disable injectServiceLocator method

If $serviceLocator property in AbstractController was private then getServiceLocator usage would trigger warning. Any other ideas?

@froschdesign Why is it necessary to throw an error when the method setServiceLocator exists? I know we should use a factory to inject dependencies, but what if I want to use that method name for something else?

@dymen1
It's only for migration from version 2 to 3. In future versions you can use setServiceLocator without deprecation warnings. (It prepares the migration to version 3.)

@snapshotpl
ServiceLocatorAwareInterface is deprecated and also the included method setServiceLocator. Trigger a error with E_USER_DEPRECATED is the right way, because this code will not work in future versions.
It's a good practice to prepare the migration to a newer version with BC breaks.

@froschdesign I understand that it's for easier migration, the only issue right now is that \Zend\Mvc\Controller\AbstractController has a setServiceLocator method. This results in most Controller classes throwing the deprecation error.

@dymen1

This results in most Controller classes throwing the deprecation error.

Right! But:

This should be not a problem in a production environment. (error_reporting)
A deprecation warning in version 3 is too late. So it can be only the previous version.

@froschdesign It is not a matter of right or wrong. By throwing a warning across the system, you are seriously interfering day to day operation of many developers. In real life I have to explain to other developers why we should use Zend Framework, and my best argument so far was enterprise friendly mature framework. The recent hiatus in Zend Development made me seriously doubt about that assessment.
Developers are seeing this warning NOT in the production system, but in their development system where they turned on all warnings. It is good to let developers know about coming changes, but it should not be by intentionally break develop apps. It is very bad idea to turn off any of warnings in develop machines, including deprecation warning. So your warning is doing much more harm than any good.
Please publish a fix as soon as possible.

@axelcho

It is very bad idea to turn off any of warnings in develop machines, including deprecation warning.

If you want to use the latest version in your development, than you can turn of only the E_USER_DEPRECATED warnings or you need to think about porting your code. This is a harsh solution, but easier if there is no warning for deprecation and with version 3 nothing works anymore.

The recent hiatus in Zend Development made me seriously doubt about that assessment.

If you follow ZF on Github or Twitter you can jump in before these changes we merged into the master branch: https://twitter.com/zfdevteam/status/704448443519873024
Yes, help is needed!

@ all
Thanks for the feedback. We will wait for @weierophinney the project maintainer.

I'm just waking up now and seeing this. I have a few ideas on how to proceed, and will be implementing then as soon as I have a chance. In the meantime, I'll be locking the thread; we have more than enough information to proceed with at this time.

A patch is ready in #88; I'm waiting for Travis to run before merging and tagging. If anybody wants to test, add the following to your composer.json:
"repositories": [
    {"type": "vcs", "url": "https://github.com/weierophinney/zend-mvc.git"}
],

and add a requirement for zend-mvc as follows:
"zendframework/zend-mvc": "dev-hotfix/deprecations as 2.7.1"

and then run composer update.

Fixed with #88 and released as 2.7.1


[UI][Projects] Can't tab to Choose an Owner list in Add Project

Steps:

Click on Add a Project
Tab to each field

Results:
Choose an Owner is not in list
Expected:
Should be able to get to list from Keyboard

No longer applies with new projects interface..

v0.17.0
Verified Fixed


Inline node selection bugs

The latest updates work great. However if I expand my selection from left to right... an isolated node blocks the expansion. From right to left it works.
Also, if two inline nodes follow without any character in between, you can across the first.

Will pursue this in a dedicated iteration in beta 5.

Shift-right is not working before inline-nodes.

This has changed a bit. But still there are glitches.


[Feature] Multiple regexes

Allows to supply a list of regexes in errorMatch. See discussion in #131.

Wow, you're fast :+1:  I will take a look at this as soon as possible!

Sorry for taking so long to get around to this. I've been away for some time during the summer.
I've added some comments.
Also, it would be really neat with some specs for this, and note in the README.md file..

I fixed the test error and merged this. Thanks you for this contribution!


RFC: making parameters subtypes of their originals

The AbstractParameters supertype does not seem to be used and there has not been a need for it in my experience.
What if we made the parameters subtypes of their originals, e.g. what if positive(1.0) isa Real or positive_definite(A) isa AbstractMatrix{eltype{A}}? Overloading methods to arithmetic would make it so we can stick those parameters almost everywhere and be unpacked automatically.

I agree with getting rid of the supertyping -- it feels redundant in that I think we really just want a trait-based system.
However, I'm not of the opinion that we should start making our types subtype things like Real and AbstractMatrix{<:Real} or whatever, as I really like having the clean separation of the "parameter" representation, and the "exactly the types you expect with no parameter stuff" representation. The advantage of this approach is that you know for sure that you can write your model code without think about ParameterHandling.jl stuff, and use value_unflatten to be confident that you've got things of exactly the correct type.

Hmm I'm not sure I see the downside yet. Wouldn't it just be nice if we could just do positive(2.0) * SEKernel() and nobody would bat an eye?
The idea being that something like EasyGPs could reuse those constraints if present.
It of course does not need to be implemented in this package, it could work as another package.

Hmm I'm not sure I see the downside yet. Wouldn't it just be nice if we could just do positive(2.0) * SEKernel() and nobody would bat an eye?

This is a good point. I'd definitely be interested to see what this would look like in practice.
I gues in situations where you don't need parameter tying, this approach works well. It's just that have to be a little bit careful with parameter tying with this kind of approach. e.g. if you want something like
kernel(l) = with_lengthscale(SEKernel(), l) + with_lengthscale(Matern12Kernel(), l)

it's not clear to me that you can get away with writing it as
l = positive(1.0)
k= with_lengthscale(SEKernel(), l) + with_lengthscale(Matern12Kernel(), l)

and then trying to extract the fact that you want to tie the lengthscales from k.

No, I don't think the latter will work like that. But you could apply the lengthscale to the sum, right?

Good point. There are definitely presumably more complicated parameter tying settings that you might consider though. e.g. I don't know why you would want this, but something like
kernel(a) = a * with_lengthscale(SEKernel(), a)

Oooo I like this ParametrizedKernel idea -- feels like it would be very straightforward to implement, and potentially really quite clear to the user.


Python(parser-16) error for use of if condition in fstring

Environment Data
VS Code Version: 1.41.1
OS: Linux x64 5.4.7-arch1-1
Python Extension version: 2019.11.50794
Visual Studio IntelliCode version: 1.2.2
Python version: 3.8.1

Description of the Problem
The following line of code produces two errors:
f'{x if x == 1.0 else 0}'

unexpected token '=' Python(parser-16)
f-string: expecting '}' but found '1' Python(parser-16)

The use of fstrings as shown above is completely correct (syntax wise).
When using the default linting of the vscode python extension with the 'jedi' engine, there is now error linted for the exact same line of code.
Remarks
Sorry for the edit. I hit enter unintentionally and the issue got posted before I finished writing.

This appears to be an issue with the Python language service rather than with IntelliCode.
Please can you file it at https://github.com/Microsoft/python-language-server/issues as this repo is for IntelliCode issues.
Thanks!

Filed the same issue at IntelliCode issues
Thanks for the reply.

Thanks. Closing this here as it's now tracked elsewhere.
Thanks for using IntelliCode!


Document Network Prometheus exporter

Followup of https://github.com/grafana/beyla/pull/708

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 76.14%. Comparing base (8c7df94) to head (576ee89).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #712      +/-   ##
==========================================
- Coverage   76.18%   76.14%   -0.04%
==========================================
  Files         103      103
  Lines        8221     8221
==========================================
- Hits         6263     6260       -3
- Misses       1615     1617       +2
- Partials      343      344       +1

Flag
Coverage Δ

integration-test
67.83% <ø> (-0.05%)
:arrow_down:

unittests
37.75% <ø> (+0.06%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Security aspect of info/sha256.txt

At first this seems like a great idea, but I have some concerns.
Isn't the info/sha256.txt file also protected by SHA-1? So an attacker could provide a different info/sha256.txt file, indicating hashes for the other changed files.
I wonder if it's a harder attack, because the SHA-1 of a hash file has to match, and the SHA-1 of the file has to match.
What do you think? I feel like someone more knowledgeable than myself should chime in.

Isn't the info/sha256.txt file also protected by SHA-1?

yes, it is protected by the sha1 of bittorrentv1

So an attacker could provide a different info/sha256.txt file

because "sha1 is broken"? no, its not that easy

This attack required over 9,223,372,036,854,775,808 SHA1 computations.
This took the equivalent processing power as 6,500 years of single-CPU computations
and 110 years of single-GPU computations.

producing actual sha1 collisions is still expensive
and usually requires modifying the file size
which would be noticable when a torrent has 100 files
but info/sha256.txt has hashes for 1000 files
git reduced this problem by using a hardened sha1 function
Git Transitioning Away from the Aging SHA-1 Hash

Git plans on migrating from SHA-1 to SHA-265. This will happen across all repositories and apparently will be done in stages. According to the migration document, “Git v2.13.0 and later subsequently moved to a hardened SHA-1 implementation by default, which isn’t vulnerable to the SHAttered attack.” Of course, that wasn’t enough to ensure the security of objects stored on Git. Hence the migration to the new algorithm.

also, every piece of a torrent is frozen by a sha1 hash
and the piece size is immutable
so modifying the file size is not possible
so bittorrent is resistant to the length extension attack

This attack required over 9,223,372,036,854,775,808 SHA1 computations.

its easier to create garbage torrents with garbage data for certain file hashes
but bittorrent clients should never trust the info/sha256.txt files
and merely use them as a part of the file-deduplication process


fast-forward cookiecutter

Pull Request Checklist:

[x] This PR addresses an already opened issue (for bug fixes / features)

This PR fixes #1

[x] (If applicable) Documentation has been added / updated (for bug fixes / features).
[x] (If applicable) Tests have been added.
[x] CHANGELOG.rst has been updated (with summary of main changes).

[x] Link to issue (:issue:number) and pull request (:pull:number) has been added.

What kind of change does this PR introduce?

Updates the versions of actions and linting tools via the cookiecutter
Fixed some action permissions and targets
Added authors to AUTHORS.rst and .zenodo.json

Does this PR introduce a breaking change?
No.
Discussion
I still need to set token permissions for the repository before most actions will work properly. Moving onto this now.

@RondeauG There are two more things I want to modify before going forward. Should be ready very soon.


[REFACTOR] Unify the async query request metadata model

Is your feature request related to a problem?
Currently in async-query-core, we have three models which store the async query request and status: AsyncQueryJobMetadata, StatementModel, and IndexDMLResult. And those are stored in the same request index (.query_request_index_{datasourceName}) with different documentId (qid{requestId}, {requestId}, index{requestId}).
These three models overwraps each other and redundant. It also causes confusion.
What solution would you like?
Unify them to single model, and store single record in request index.
I propose following unified model to be used:
AsyncQueryMetadata

queryId (PK)
query // from StatementModel
langType // from StatementModel
datasourceName
accountId
jobType
submitTime
sessionId
indexName
state // from StatementModel/IndexDMLResult
error // from StatementModel/IndexDMLResult
queryRunTime
applicationId
jobId
version (= "2.0")
resultIndex
statementId (= queryId) // from StatementModel

How to make it backward compatible?
In new version, we will use single interface to query/save the query metadata.
The documentId will be queryId (without prefix).
Since current StatementModel uses queryId as a key, use case for StatementModel would be fine (whether it hits older record or newer record, it contains required fields for statement use case).
For the use case for AsyncQueryMetadata (It is only when GetAsyncQueryResults API is called), we can first query with queryId (without prefix), and if the version field is not "2.0", fallback to query with "qid" prefix, which would retrieve AsyncQueryJobMetadata(older) record.
IndexDMLResult does not have read use case. (does not have concern on backward compatibility)
What alternatives have you considered?
A clear and concise description of any alternative solutions or features you've considered.
Do you have any additional context?
Add any other context or screenshots about the feature request here.

most of the fields here already defined in https://github.com/opensearch-project/sql/blob/main/async-query-core/src/main/java/org/opensearch/sql/spark/execution/statement/StatementModel.java#L22-L35
for spark side, can we just reuse https://github.com/opensearch-project/opensearch-spark/blob/main/flint-commons/src/main/scala/org/opensearch/flint/common/model/FlintStatement.scala

most of the fields here already defined in https://github.com/opensearch-project/sql/blob/main/async-query-core/src/main/java/org/opensearch/sql/spark/execution/statement/StatementModel.java#L22-L35
for spark side, can we just reuse https://github.com/opensearch-project/opensearch-spark/blob/main/flint-commons/src/main/scala/org/opensearch/flint/common/model/FlintStatement.scala

Yes, I think we can reuse, but we might want to align the model name to reduce confusion.


Docs for zoomDelta

Add documentation for zoomDelta.

Some documentation on zoomDelta and how it works would be terrific. I am attempting to use d3-tile now and having to go via trial and error since I am not finding other docs or examples that make use of this version.

Researching this a bit, and here's what I found:
Demos related to zoomDelta:

https://observablehq.com/@mbostock/a-map-of-every-building
http://bl.ocks.org/mbostock/4150951

From #2:

It’s for showing tiles at different resolution than the screen. For example, if you have a HiDPI screen, you might take 256×256 tiles and display them in a 128×128 space.

I put this together for the documentation:

https://observablehq.com/d/6acb6597d1d35e6d
It would be cool to put them next to each other programmatically, but I haven't figured out the Observable syntax/API for having multiple SVG elements in a div.

Your notebook is private; can you click the notebook menu (the three horizontal dots in the header) and click on “Enable link sharing” so I can see it?

Oops! Should be visible now https://observablehq.com/d/6acb6597d1d35e6d

Ah, looks nearly identical to my approach, although I used a function to avoid duplicating the code. Great minds think alike? :wink:
https://observablehq.com/@d3/tile-zoomdelta


Update modern-root-site.md

We have blocked the deletion of root sites from all entry points, so would like to adjust the warning a bit here.

@JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@kaarins PR has been copyedited and is ready for final review, could you please check and merge? Thanks!


The default config treats any string with ci characters in it as a ci:  commit message

Describe the bug
The default cliff.toml contains the following line:
  { message = "^chore|ci", group = "<!-- 7 -->⚙ Miscellaneous Tasks" },

The message regex matches either a string starting with "chore" or any string with "ci" in it since | has the lowest precedence.
To reproduce
Steps to reproduce the behavior:

git cliff --init
git init ; git add cliff.toml
git commit -m "acidic: what?"
git cliff

Expected behavior
The non-standard commit message is not matched by the "Miscellaneous Tasks" group.
Screenshots / Logs
Changelog
All notable changes to this project will be documented in this file.
[unreleased]
⚙  Miscellaneous Tasks

What?

Software information

Project version: 2.0.4

Extra thoughts
It's just my personal preference, but I think ci: blah blah ... messages should go into their own group.

Hey, this should be fixed in 110b9b8d2676800ebe169287fa5d2a93c9f6b55f - thanks a lot for reporting! 🐻


your code is broken.

Describe the bug
Your updated code does not allow for chats and you now have some crazy requirements an API string.  After banging my head over and over again to get your stuff to work I gave up.
But I decided to write an API of my own and share it.
Cheers,
Robert Clancy
//
//  ViewController.swift
//  Open AI API
//
//  Created by Robert Clancy on 30.07.2023.
//
import Cocoa
import WebKit
import Foundation
var lastResponse = ""
class ViewController: NSViewController {
override func viewDidLoad() {
    super.viewDidLoad()
    var results = ""
    var openAICommand = ""
    Task {
        do {
            try await postMessage(apiKey: "your key", content: openAICommand, role: "user", model: "gpt-3.5-turbo")
        } catch {
            print("An error occurred: \(error)")
        }
    }

}

@IBOutlet weak var webViewMain: WKWebView!

override var representedObject: Any? {
    didSet {
        // Update the view, if already loaded.
    }
}

struct OpenAIResponse: Codable {
    let id: String
    let object: String
    let created: Int
    let model: String
    let usage: Usage
    let choices: [Choice]
}

struct Usage: Codable {
    let prompt_tokens: Int
    let completion_tokens: Int
    let total_tokens: Int
}

struct Choice: Codable {
    let message: Message
    let finish_reason: String
}

struct Message: Codable {
    let role: String
    let content: String
}

struct CompletionRequest: Codable {
    let model: String
    let max_tokens: Int
    let messages: [Message]
    let temperature: Double
    let stream: Bool
}

func postMessage(apiKey: String, content: String, role: String, model: String,  temperature: Double = 0.7) async throws {
    let url = URL(string: "https://api.openai.com/v1/chat/completions")!

    var request = URLRequest(url: url)
    request.httpMethod = "POST"
    request.addValue("application/json", forHTTPHeaderField: "Content-Type")
    request.addValue("Bearer \(apiKey)", forHTTPHeaderField: "Authorization")

    let message = Message(role: role, content: content)
    let requestObject = CompletionRequest(model: model, max_tokens: 4000, messages: [message], temperature: temperature, stream: false)
    let requestData = try JSONEncoder().encode(requestObject)
    request.httpBody = requestData

    do {
        let (data, _) = try await URLSession.shared.data(for: request)
        if let jsonString = String(data: data, encoding: .utf8) {
            print(jsonString)  // This prints the raw JSON response
        }
        let responseObject = try JSONDecoder().decode(OpenAIResponse.self, from: data)
        print(responseObject.choices[0].message.content) // Handle the response as needed
        lastResponse = responseObject.choices[0].message.content
    } catch {
        print("Error: \(error)")
    }
}

}

You just made me question myself why am I even try to use a third party package for API request 🐦

Your welcome!


chore: use prepare.sh instead of wercker.yml scripts

Signed-off-by: lowzj<EMAIL_ADDRESS>
Ⅰ. Describe what this PR did
Move scripts of werchker.yml to docs/.build/prepare.sh in order to make it convenient to build hugo locally.

Codecov Report

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

@@           Coverage Diff           @@
##           master     #200   +/-   ##
=======================================
  Coverage   81.43%   81.43%
=======================================
  Files          28       28
  Lines        1282     1282
=======================================
  Hits         1044     1044
  Misses        207      207
  Partials       31       31

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 7b449c3...24d0a38. Read the comment docs.


Use object factories instead of classes to create internal nodes

Benchmarks seem to suggest that using an object factory vs a class is faster for small objects: http://jsperf.com/ctor-prototype-vs-literal

I'm wondering if the following provide any further micro-optimization, especially memory-wise:
var o = Object.create(null, { p: { value: 42 } });
console.log(o.p); // => 42

Probably not worth it if Object.create needs a polyfill; or is slower than {} idiom.

Here's the benchmark for that: http://jsperf.com/ctor-prototype-vs-literal/2
It's a lot slower because of the extra function call and additional overhead of Object.create.


MongoDB support for referentialActions

Bug description
Does Prisma support referential actions on MongoDB? Can't seem to work
How to reproduce
I have a schema as below, deleting a user leaves authorId in posts collection
Expected behavior
Deleting a user should remove authorId from related post in posts collection
Prisma information
model User {
    id         String        @id @default(dbgenerated()) @map("_id") @db.ObjectId
    name       String
    posts      Post []
}
model Post {
    id         String        @id @default(dbgenerated()) @map("_id") @db.ObjectId
    author     User          @relation(fields: [authorId], references: [id], onDelete: SetNull)
    authorId   String        @db.ObjectId
}

Environment & setup
Ubuntu 20.04
Node.js v14.7.0
Prisma Version
v2.30.0

Thanks for raising this. We're currently tracking this in https://github.com/prisma/prisma-engines/issues/2062.
We plan to implement it before we going into General Availability: https://github.com/prisma/prisma/issues/8788


--new-window not working

Prerequisites

[x] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
--new-window doesn't work at all
Steps to Reproduce

atom . --new-window
atom ../another-dir --new-window

Expected behavior: [What you expect to happen]
Both to open in new WINDOWS
Actual behavior: [What actually happens]
Both open in the same window but different panes/tabs
Reproduces how often: [What percentage of the time does it reproduce?]
100% of the time.
Versions
Atom: 1.12.7
Electron: 1.3.13
Chrome: 52.0.2743.82
Node: 6.5.0
apm: 1.12.9
npm: 3.10.5
node: 4.4.5
python: 2.7.13
git: 2.11.0
OS: Mac 10.12.1 (16B2659)

Additional Information
I noticed before running atom --clear-window-state it was doing the same where it'd open in the same window but different pane but was also causing that window to go from Mac's full screen mode into normal windowed mode as if it was opening a new window.

I can't reproduce this on Windows 10 x64, Atom 1.14.0-dev-3e33aa1.

I can't reproduce this on Windows 10 x64, Atom 1.14.0-dev-3e33aa1.

Not able to reproduce it with :
Atom: 1.12.7
Electron: 1.3.13
Chrome: 52.0.2743.82
Node: 6.5.0
OS : Mac 10.11.6

Video showing without safe mode. https://vid.me/l3VT
Video showing with safe mode. https://vid.me/DPaR
From some more tests it seems to mainly do it once the first window is in OSX's full screen mode.

@50Wliu is there anything else I can provide?

@OmgImAlexis does this work when you aren't in full screen mode?

@OmgImAlexis looking at your videos, looks like it works in safe mode but doesn't without.  It could be related to a package you have installed.  Could be related to personal/community package you have installed.
Can you provide a list of packages you have installed? (you can find this by running apm list and looking under the section that says Community Packages)

Actually it shows the bug with both safe mode and not but only if you're in OSX's full screen mode. I did more tests and that seems to be the trigger. This was happening after a clean install of OSX before I installed any Atom plugins.
Community Packages (13) /Users/xo/.atom/packages
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>
└── (empty)

When not in fullscreen mode it seems to behave correctly.

I'm also having the same issue on MacOS 10.12.2. When I have an atom window already in full screen mode, attempting to open another from the command line with atom -n just open into the existing window. Out of full screen mode, the command works as expected.

Still cannot reproduce on Windows, assuming macOS-only.

A few quick updates, you get exactly the same issue if you just have a window already full screen, and then go to the menubar to do File -> New Window.
Also what it does is add a new tab into the existing window (rather than creating a whole new window), but it's not an editor style tab (it's decorated like a standard MacOS tab). I've attached a screenshot taken in safe mode.

If @jrs65's screenshot is what ends up happening, this is the expected behavior on the newest versions of macOS. While these are visualized as "tabs", they're OS-level window tabs, not Atom tabs. This only happens in full screen mode and is the expected behavior in full screen mode. Since this is the expected behavior of macOS, I'm going to close this.
If I'm misunderstanding things, please let me know and I'll be happy to reopen the Issue.

@lee-dohm this may be the expected behaviour of the OS but isn't the expected behaviour of the program and there's still the issue of it also causing the OSX full screen window to minimise down to a normal window at times.
-n should open a new window and in all OSs this works the same apart from macOS. I don't see how that's invalid since most of people would expect it to be the exact same as other OSs.

I'm pretty sure this is because macOS "helpfully" intercepts the new window command and creates an OS tab for it instead.  This looks like #12690, which is blocked on electron/electron#6124.

@50Wliu would you be willing to reopen this on the condition it's closed once the other issues are addressed?

@OmgImAlexis No, this is a duplicate of #12690, there's no point in having two issues open for the same thing.


Add a limit to the number of jobs a user can have open at once

We will need to modify the HTML and/or backend to limit the amount of "Active" jobs a user can have created at 1 given time

The limit has been set to six jobs, however we will need to determine the final amount later


(maint) Improvements to BoltSpec::Plans

Adds support for the _run_as parameter, run_command, run_script, and upload_file when spec testing plans. Also adds tests for the BoltSpec::Plans module.

CLA signed by all contributors.

This could use a MockApplicator.

Can you file a ticket for this so we can include it in release announcements

Updated.


Error in draw_weather

Using Paris, France as location.
It doesn't happen all the time, most of the time it works.
INFO:root:Retrieving weather forecast
INFO:root:Prepare the weather data for drawing
Traceback (most recent call last):
  File "/usr/app/update-display.py", line 274, in <module>
    img = draw_weather(weather, img, SCALE)
  File "/usr/app/update-display.py", line 107, in draw_weather
    time_of_day = 'd' if weather['symbol'].split('_')[1] == 'day' else 'n'
IndexError: list index out of range

Thanks for the report Alexis. I saw this error today as well. I think I know the issue. I'll open a PR to fix it.


Webhook handler honors :icon_url attribute

:icon_url is intended to take precedence over :icon_emoji, however, :icon_url is not being considered in the webhook handler.

Thank you for the contribution!


scala_maven_import_external and scala_version

Thanks to @jhnj's work the scala version story is starting to unfold.
This caused me to think that maybe we want to have scala_maven_import_external allow to specify the scala_version in a different field with semantic meaning.
What I'd really like is to have the macro take the scala_version by itself from someplace. This can't be a label since the macro is used for repository rules but maybe we can do a trick with a file that contains the version somehow.
cc @natansil @anchlovi @or-shachar

maybe it can get it from a toolchain somehow


Split Button Creating Blank Lines - Native Notebook Editor

Good catch.
Verifiers, please test two following cases:
First, create a code cell with two lines
a
b

put the cursor after a, split. The first cell should then contains a\n, and the second cell should be b
Second: insert a cell with three lines
a

b

Put the cursor at line 2, split. The first cell should then contains a\n, and the second cell should be \nb