C-c C-k trigger reload of all namespaces

Please note that I write this in a rather bad mood. I'll excuse in advance for unclarities etc.
The recent weasel SNAPSHOT reloads the whole world when I reload any single namespace in my project. This is really really problematic as it wreaks havoc with react for some reason, leading to all kinds of horrible untraceable errors.
Figwheel seem to handle the namespace-reloading much better, but fails spectacularly with other errors.
I'd really like to invest some time into this to finally settle this "api upgrade" we're suffering for weeks now. Please contact me in IRC or here if you have any pointers for me.

I'm curious as to whether Weasel respects the conditions outlined here?

@dnolen It does not at the moment - I've left #37 open for that.
I'm very sorry to hear that Weasel's slow upgrade to the new REPL APIs causes so much frustration. Recently I haven't had as much time to put into maintaining Weasel as I'd like. On the other hand, contributors (including you) have done a great job doing work in maintaining Weasel's compatibility with the impressive pace of changes in ClojureScript's compiler and APIs.
I suspect that Weasel is duplicating a lot of work that the compiler + new REPL support does, which causes these kind of horrific bugs. I'll see what I can figure out and I'll ping you when I have more information.

I added another namespace to the "weasel-example" project in tree to try to debug this. Here are the files I used:
;; example.cljs
(ns weasel-example.example
  (:require [weasel.repl :as repl]
            [weasel-example.foo :as foo]))

(when-not (repl/alive?)
  (repl/connect "ws://localhost:9001"))

(println "Loading example")

;; foo.cljs
(ns weasel-example.foo)

(println "Loading foo")

(def foo 1234)

Here's a log from *nrepl-messages*: https://gist.github.com/tomjakubowski/e4c890b68544bd53fe39
The steps I performed were:

lein cljsbuild auto in the project directory.
M-x cider-jack-in
Piggieback Weasel onto the nREPL session.
Open up a browser with the compiled JS output loaded, let the Weasel REPL client connect.
From the example.cljs buffer, run C-c C-k. That is at this point in the logs. Note that, as you reported, the weasel-example.foo namespace was also reloaded.
From the same buffer, run C-c C-k a few times. This time, however, only the weasel-example.example namespace was reloaded.
Switch to the foo.cljs buffer, and run C-c C-k. Only weasel-example.foo was reloaded.

Not logged, but I did steps 1-6 again, this time trying the initial reload from the foo namespace. Only foo was reloaded the first time, then when I switched to the example namespace, C-c C-k reloaded foo and then example the first time, but only example on subsequent reloads.

Note that prior to the addition of this logic https://github.com/tomjakubowski/weasel/blob/master/src/cljs/weasel/repl.cljs#L85 copied over from the standard Browser REPL, REPLs were not aware of what libraries were loaded on the client. I can see that Weasel is also still using the old way of tracking loaded libs server side, which again, never worked since it did not account for the libraries actually involved in the application, only a preloaded set. Now that we have a standard loaded libs tracking mechanism based on what the client actually has, it's important to confirm that the *loaded-libs* set on the client matches expectations, and if it doesn't determine why.

As a newcomer to the clojurescript ecosystem I find the ripple effect of lib versions in the tooling worrisome. I've been pulling my hairs out for days now trying to get browser repl working with boot.
Is this the achilles heal of the "small libraries" approach?

@the-kenny can you try again using either the latest SNAPSHOT I just deployed or a
I've removed quite a bit from Weasel (thanks to the new cljs.repl support), so please let me know as well if I've accidentally introduced new problems to your setup as well.
I should be on IRC the next several hours if you run into issues. If both tjakubo_ and tjakubow are online, ping tjakubo_.

After IRC discussion + a few days use, @the-kenny reports all is well with this issue.


Update btf and integrate into CI

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
We now support ARM for kernels not exposing the btf file. The generated
btf will be part of the CI runs as well.
Which issue(s) this PR fixes:

None
Does this PR have test?
None

Special notes for your reviewer:
None
Does this PR introduce a user-facing change?

None

/test pull-security-profiles-operator-test-e2e

Codecov Report

Merging #651 (1aea405) into master (c5b3463) will increase coverage by 1.14%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #651      +/-   ##
==========================================
+ Coverage   43.38%   44.53%   +1.14%
==========================================
  Files          31       31
  Lines        1920     1920
==========================================
+ Hits          833      855      +22
+ Misses       1040     1019      -21
+ Partials       47       46       -1

/lgtm

/test pull-security-profiles-operator-test-e2e

/retest

/test pull-security-profiles-operator-test-e2e

/retest

/test pull-security-profiles-operator-test-e2e

/retest


Update MD file on new branch 2017-12-14_09-42-42

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef1.md
:white_check_mark:Succeeded

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


Test summary links in grouped view

Hi,
I recommend improving the behavior of Test summary view when using custom tags to group instances. For instance, a custom tag for environment can be created (dev, test, prod) . When you select the production environment, the test summary will be displayed for instances assigned with the prod tag. Clicking any of the instance count links will display the corresponding instances from the selected group. When you click the View link, it will display the details of the selected test for each instance. However, clicking the link of the Test you're interested in will display its detailed results for all instances (root level). It would be more intuitive if selecting the Test link in grouped view would return detailed results of the selected group.
Version <IP_ADDRESS> (and issue was also present in earlier versions)
Best regards

Thanks for the suggestion - I agree the current behavior isn't ideal.  It navigates you up a level because there are no corresponding Checks, HA/DR, Storage nodes etc at the tag grouping level.  Duplicating these at the tag group level might be an option.  I'll consider improving this in a future release.
Thanks

Included in 3.1 🎉

Hi David,
after implementing new feature from this issue, I noticed that Group\Show Counts option counts all items in group, including both - instances and DBA Dash nodes / categories. For example, group with 4 instances shows count 9. It is also noticable when you search for single instance - DBA Dash will filter view to corresponding group and instance, but it will display that group contains 6 members.
Additionally, I was a bit confused when looking for jobs timeline, but finally realized that Job Stats and Timeline are available only at the instance level view and not at the group level or root level. If it is not too complicated maybe these two tabs from Jobs category can be removed from group level dispay, the same way as it is removed from the root level.
Finally, after upgrading to version 3.1 I was getting some errors and information messages when clicking the test links from the Test summary view at the group level. This was present for the first few application runs after ugrade and now everything works fine and I cannot reproduce this behaviour anymore. Unfortunately I haven't captured errors and messages.
Best regards.

Hi, I've fixed the counts and removed the timeline and job stats tabs at group level.  Thanks for reporting these bugs - the fixes will be in the next release.
If you get any more errors when clicking the test links, take a screenshot and log an issue - I will investigate.  Thanks.


GH-41810: [C++] Support cast kernel from (dense or sparse) union to (large) string

Rationale for this change
Support cast kernel from (dense or sparse) union to (large) string

What changes are included in this PR?

Support cast kernel

from dense union to (large) string
from sparse union to (large) string

Are these changes tested?
Yes. It is passed by existing test cases.

Are there any user-facing changes?
No.

GitHub Issue: #41810

I have been examining the code with the intention of using StringFormatter, as it seems like a reasonable choice. However, currently, StringFormatter mostly handles primitive types and takes time to support complex types such as Union, Struct, and List-Like types.
Not only did I review the code, but I also attempted to modify it. These modifications are related to the Legacy code such as CastImpl.
For reference, please see:
https://github.com/apache/arrow/blob/ff9921ffa89585be69ae85674bb365d03cb22ba4/cpp/src/arrow/scalar.cc#L1239-L1250
The reason I am addressing these issues is fundamentally to remove the legacy CastTo.
In the short term, there may be code that requires improvement, but I would like to approach this with the following steps:

Implement Cast Compute Kernel.

#41668
#41669
#41809
#41810

Remove Legacy Cast.

#39182

Extend StringFormatter to support additional types (e.g., Union, Struct, List-Like, etc.).

New Issues.

Enable the use of StringFormatter within the Cast Compute Kernel.

New Issues.

Even the existing implementation of CastTo (to string) does not utilize StringFormatter for complex types.
For reference, please see:
https://github.com/apache/arrow/blob/ff9921ffa89585be69ae85674bb365d03cb22ba4/cpp/src/arrow/scalar.cc#L1309-L1326
What do you think of this approach? I believe this is a way to address each issue and improve the code accordingly. Mentioning everyone who has reviewed the cast code.
cc @kou, @felipecrv, @ZhangHuiGui

I have created an issue to add support for nested types in StringFormatter. It seems like addressing this first would be beneficial.

#41864

I'm ok  to move these issues forward with this way.

@llama90 what is the motivation for working on these kernels? It's hard to define what would be a desired string representation of nested types (something for humans to read? JSON-like notation?) and it's quite a lot of work.
If you're looking for compute kernel work, may I interest you in making sure run-end encoded [1] types are handled everywhere? Scalar kernels can be fixed generically by applying the transformation to the values and keeping the same run-ends. There might be something like this for handling DICTIONARY automatically as well that you can use for inspiration.
[1] https://arrow.apache.org/docs/format/Columnar.html#run-end-encoded-layout

@felipecrv Thank you for your review.
The main reason for handling this issue is to address the following problem:

#35560

I have implemented Cast Kernels for the necessary types. And I wanted to tackle the next issue to finally remove the Scalar::CastTo function:

#39182

However, I encountered a problem (such as in https://github.com/apache/arrow/pull/39192#discussion_r1477056138) where various languages binding C++ produced errors (e.g., Python, Ruby). Recently, I found a hint that implementing the ${TYPES} to String Cast Kernel could solve the issue while trying to fix the recent problems again.
As you mentioned, the long-term aspect of "something for humans to read? JSON-like notation?" is important, but the primary problem I wanted to solve was to remove the Scalar::CastTo function while maintaining compatibility with the existing code.
For example, the Scalar::ToString function used CastTo(utf8()) to handle ToString(), and I thought I could solve this by implementing the Cast Kernel for String Type. This is why I attempted to create these kernels.
https://github.com/apache/arrow/blob/54bece3d4cf28df3e7bd92ed27f62d705a5cac96/cpp/src/arrow/scalar.cc#L978-L996
Thank you again for the in-depth review. I feel a bit overwhelmed about how to proceed.
Solving new issues is important, but I also want to finish the PRs I have already submitted. It feels like I'm not making much progress. Anyway, I will think more about it based on your review.

Imagine converting an instance of list<list<struct<utf8, list<union<int64, utf8>>>>> to string. You need a tree of string formatters prepared before the loop and it has to follow the same shape of the DataType. Doing it value-by-value is just as hard, but slower.

I think I understand what you mean. Thank you for your response!
If you proceed with the work on the StringFormatter as mentioned, I will review it and continue with the process. Thank you once again.


Don't know how to go homepage

I open an sample demo, then stuck then, don't figure out how to go back homepage
Help

aah, kill app then open again.

sorry, I see text "To go back .... "

To go back, press two fingers anywhere for four seconds.


cannot access local variable

Thank you for reporting.
Do you have Voice Activity Detection Enabled or Disabled?
I would say it must be enabled as otherwise it would not try to access the vad_model.
But that would mean it was unable to load the model.
Can you provide the Log? You can find the Log under Advanced -> Logs
If it failed to load, it should show a line Error loading vad model.
and right below that, the actual error.

"Do you have Voice Activity Detection Enabled or Disabled?" yes
i just moved the folder to C drive. and everything now is working. thanks for your quick response.


What is the reason for this error when uploading the package to the service as shown in the figure?

E：The node is not up.You can add a monitor script to monitor it, there is written in the document.
C：节点没有起来。可以加一个monitor脚本, 监控一下, 文档里面有写。


sync in same device

Synching offer peer-to-peer file synchronization and directories across different devices on a local network or over the internet. It does not support cloud storage integration. Is it possible to add third party cloud storage integration such as Google Drive, One Drive, Drop Box etc. It will be helpful because in peer to peer synchronization, tow device need to connect a same network in same time, some time it not possible to do.
If cloud storage integration is not possible, then add sync data in the same device different directory. If I need to back up data on my external drive, suppose pen drive when I plug it to my machine it will automatically sync data to my pen drive. In this way, we can solve Cloud Storage hosting. It will help us proven loss data and make our work easier.

This is a Syncthing topic, not SyncTrayzor. https://forum.syncthing.net


[Bug]: Modified files after cloning main?!

Describe the bug
Cloning current autogen's main results in weird behavior...
E.g., create a new code space on autogen main and run git status without making any modifications:
The screenshot below is for code space, but it can happens on wsl and Mac as well.

Steps to reproduce
No response
Model Used
No response
Expected Behavior
No response
Screenshots and logs
No response
Additional Information
No response

I also see this weird behavior. The two files I see are "test/test_notebook.py" and "website/blog/authors.yml".

Also having this issue.
I think it might have to do with the line endings on these files not being correct / matching the prescribed ones in .gitattributes? Maybe VS Code updates the files automatically which is why it shows changes (but none visible in the diff view)

The problem is CRLF instead of LF file format, I created PR to fix it https://github.com/microsoft/autogen/pull/2915

This is what I saw this morning in a new codespace -- so the issue wasn't fully addressed:

@gagb I somehow missed those two files at the first attempt (still not sure how because I used a script for it). Anyhow, here is a new PR #2935

Btw, I found the change that caused this in PR #2566: https://github.com/microsoft/autogen/pull/2566/files#diff-618cd5b83d62060ba3d027e314a21ceaf75d36067ff820db126642944145393e

@gagb just checked, everything seems fine now


Fix item-on-item and github action issues

Codecov Report
Attention: Patch coverage is 40.00000% with 3 lines in your changes are missing coverage. Please review.

:exclamation: No coverage uploaded for pull request base (main@d79f5d0). Click here to learn what that means.

Files
Patch %
Lines

.../gregs/voidps/world/activity/skill/ItemOnItems.kts
50.00%
0 Missing and 2 partials :warning:

.../voidps/engine/data/config/ItemOnItemDefinition.kt
0.00%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #491   +/-   ##
=======================================
  Coverage        ?   26.33%
  Complexity      ?     3938
=======================================
  Files           ?     1219
  Lines           ?    38582
  Branches        ?     8163
=======================================
  Hits            ?    10162
  Misses          ?    25743
  Partials        ?     2677

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


Shortcode escapes closing HTML tags

Please re-open https://github.com/gohugoio/hugo/issues/6006
This is still a bug, and it still functions exactly as described in issue 6006.
It does not appear to be replicatable exclusively with go templates, indicating an issue with Hugo. In particular, it is not seen in partials or layouts outside of shortcodes.
https://go.dev/play/p/ctrTQqXDz_f

Additionally, the behavior is only exhibited if no text follows the template expression {{ .Inner }}.
For example, the following does not have an issue:

        {{ .Inner }} value

Without the text, the closing HTML tags are escaped and put into code blocks:

        {{ .Inner }}

How are you calling the shortcode from markdown?

This is how I am calling it:
{{% box %}}
Some test text.
{{% /box %}}

Interestingly, this problem disappears if I use the angle bracket syntax, not putting it through the markdown renderer:
{{< box >}}
Some test text.
{{< /box >}}

I am unable to reproduce the problem as described. I suspect you are indenting either the text, or the entire shortcode code call, by 4 or more spaces. Per the CommonMark specification, text indented by four or more spaces is an indented code block, which is why your output is wrapped in pre and code tags.
Please use the forum (https://discourse.gohugo.io/) for additional questions or troubleshooting. We prefer to use GitHub for verified bugs and vetted enhancements. Thanks.

Here the simplest steps I can come up with to reproduce it. It is unclear to me why you are unable to reproduce it, it seems incredibly easy to do so.
I am on Windows. Perhaps that is making a difference?
Anyway:
Create a new hugo project:
hugo new site demo-6006
cd demo-6006

Create the file layouts/shortcodes/box.html:

            {{ .Inner }}

Create the file layouts/index.html:
{{ define "main" }}
{{ end }}

Create the file layouts/_default/baseof.html:
<!DOCTYPE HTML>

        {{- block "main" . }}{{- end }}

Create the file layouts/_default/single.html:
{{ define "main" }}
  {{ .Content }}
{{ end }}

Create a new content file:
hugo new content tests/test.md

Edit the contents of the newly created content/tests/test.md and add the following:
{{% box %}}
Broken
{{% /box %}}

Start the server:
hugo server -D

Navigate to the test page:
http://localhost:1313/tests/test/

1) The setup you describe above, calling the shortcode with the {{% %}} notation, also requires this in your site configuration:
[markup.goldmark.renderer]
unsafe = true

2) You are not passing "Broken" to the shortcode. You are passing "\nBroken\n" (or "\r\nBroken\r\n" on Windows).
3) When using the {{% %}} notation, you are passing this block to the markdown renderer:

          Broken

4) The markdown renderer, adhering to the CommonMark specification, produces this:

      Broken

  </p>

Try it yourself. Hugo and the markdown renderer (GoldMark) are doing exactly what they should be doing. This is not a bug.
5) You can achieve the desired results by doing either of:

Reduce indentation within the shortcode. See the indented code blocks section in the CommonMark specification.
Pass .Inner through the chomp function. See the HTML blocks section in the CommonMark specification.

6) Signing up for a new Discourse account is pretty easy.


[Slider] Update TypeScript demo to cast types to values

[x ] I have followed (at least) the PR section of the contributing guide.

update the typescript demos for continuous and discrete sliders
Closes #16927

Thanks


disable scrap endpoints that require certificate when prometheus.security=false

When prometheus.secure is set to false, prometheus deployment will not mount from the istio.default secret. However, it will still try to scrap from the kubernetes-pods-istio-secure endpoint that requires the certificate mounted from istio.default secret, resulting in unnecessary error messages in prometheus pods. This disables the scrap endpoint when prometheus.security=false

I'm looking at prometheus-operator, and its behavior is a bit different from prometheus's helm chart. In prometheus, it uses a flag security.enabled to indicate if Citadel is enabled. When it is enabled, it creates a secret named istio.default, from which various certificate files can be generated. These are then used to scrap https endpoints. However, in prometheus-operator, there's no equivalent flag (I can certainly add one), but it uses a different secret called istio.prometheus. I'm checking with @douglas-reid to see what is the intention of a different name.

/hold

@costinm the changes that were made to prometheus's Helm chart to better handle the case where Citadel is disabled have been synchronized to prometheus-operator. AFAIK, no functionality is broken without this PR. Prometheus still does scraping as expected. It's just kind of annoying to see prometheus's log file getting filled with error messages about certificate files not being found every 15 seconds (default scrape interval)


Validation errors in minimised sections

During the June 2015 PCWG meeting it was observed that validation messages may appear in minimised sections which is not very obvious to the user.

We have now introduced tabs and the hidden sections no longer exists. I am therefore going to close this issue.


pythonPackages.b2sdk: 1.24.1 -> 1.29.0

Description of changes

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

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

10 packages built:

backblaze-b2
backblaze-b2.dist
deja-dup
duplicity
duplicity.dist
duply
python310Packages.b2sdk
python310Packages.b2sdk.dist
python311Packages.b2sdk
python311Packages.b2sdk.dist

23879b924170fd80e3fbc5da1e365617574c4d6c seems to have broken duplicity:
$ $(nix-build -A duplicity)/bin/duplicity /var/empty b2://foo
BackendException: Could not initialize backend: No module named 'b2sdk.download_dest'

I'm guessing this is due to duplicity being out of date, but I wanted to mention it here anyway.


add reservedips sync

这个 PR 实现什么功能/修复什么问题:
预留IP同步
是否需要 backport 到之前的 release 分支:

release/2.10.0

/cc @swordqiu @yousong

Codecov Report

Merging #1345 into master will increase coverage by <.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #1345      +/-   ##
=========================================
+ Coverage    7.85%   7.86%   +<.01%
=========================================
  Files         373     373
  Lines       58520   58576      +56
=========================================
+ Hits         4598    4607       +9
- Misses      53522   53571      +49
+ Partials      400     398       -2

Flag
Coverage Δ

#aFlag
7.86% <0%> (ø)
:arrow_up:

Impacted Files
Coverage Δ

pkg/util/ucloud/network.go
0% <ø> (ø)
:arrow_up:

pkg/util/aws/network.go
0% <ø> (ø)
:arrow_up:

pkg/compute/models/reservedips.go
8.18% <0%> (-4.15%)
:arrow_down:

pkg/compute/models/cloudsync.go
0% <0%> (ø)
:arrow_up:

pkg/compute/models/networks.go
0.97% <0%> (ø)
:arrow_up:

pkg/util/rbacutils/rbac.go
74.76% <0%> (+1.55%)
:arrow_up:

pkg/appsrv/response.go
69.23% <0%> (+3.07%)
:arrow_up:

pkg/util/seclib2/seclib.go
95.74% <0%> (+4.25%)
: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 92b90cd...b091e51. Read the comment docs.

/hold

/hold cancel


removes modifiedTime from persisted owners

Codecov Report

Merging #983 into master will decrease coverage by 0.01%.
The diff coverage is 80%.

@@            Coverage Diff             @@
##           master     #983      +/-   ##
==========================================
- Coverage   27.37%   27.36%   -0.02%
==========================================
  Files         170      170
  Lines        4624     4630       +6
  Branches     1209     1210       +1
==========================================
+ Hits         1266     1267       +1
- Misses       3358     3363       +5

Impacted Files
Coverage Δ

wherehows-web/app/utils/api/datasets/owners.ts
81.01% <80%> (-5.29%)
:arrow_down:

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 e3672d8...ea6273b. Read the comment docs.

Coverage remained the same at 27.651% when pulling ea6273b67c7592e455cc87fac03d0990f2730541 on theseyi:object-filter-owner into e3672d8837468af4b69cf93304f69758bf314de9 on linkedin:master.


Cookie AssertionError when loading cookie with a username with uppercase

Please follow the guide below

Issues submitted without this template format will be ignored.
You will be asked some questions and requested to provide some information, please read them carefully and answer completely.
Put an x into all the boxes [ ] relevant to your issue (like so [x]).
Use the Preview tab to see how your issue will actually look like.

Before submitting an issue, make sure you have:

[X ] Updated to the latest version
[X ] Read the README and docs
[X ] Searched the bugtracker for similar issues including closed ones

Purpose of your issue?

[X ] Bug report (encountered problems/errors)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections requests more details for particular types of issues, you can remove any section (the contents between the triple ---) not applicable to your issue.

For a bug report, you must include the Python version used, code that will reproduce the error, and the error log/traceback.
Paste the output of python -V here:
Code:
"""
    instabot example
    Workflow:
        Follow user's followers by username.
"""

import argparse
import os
import sys
import json

sys.path.append(os.path.join(sys.path[0], '../'))
from instabot import Bot

parser = argparse.ArgumentParser(add_help=True)
parser.add_argument('-u', type=str, help="username")
parser.add_argument('-p', type=str, help="password")
parser.add_argument('-proxy', type=str, help="proxy")
parser.add_argument('-usernameTarget', type=str, help='usernameTarget')
args = parser.parse_args()

bot = Bot()
bot.login(username=args.u, password=args.p,
          proxy=args.proxy, use_cookie=True)

result = bot.convert_to_user_id("Rayanox")
print("result = " + result);

exit(0)

Error/Debug Log:
PS C:\Users\rbenhmidane\Documents\Repositories\Instagram-follower-booster\Scripts> python .\test.py -u "Rayanox92" -p "*****" -usernameTarget "Rayanox92"
2019-09-03 11:37:44,748 - INFO - Instabot Started
cookie_username = rayanox92
self.username = Rayanox92
Traceback (most recent call last):
  File ".\test.py", line 28, in <module>
    proxy=args.proxy, use_cookie=True)
  File "C:\Users\rbenhmidane\AppData\Local\Programs\Python\Python37\lib\site-packages\instabot\bot\bot.py", line 369, in login
    if self.api.login(**args) is False:
  File "C:\Users\rbenhmidane\AppData\Local\Programs\Python\Python37\lib\site-packages\instabot\api\api.py", line 198, in login
    self.load_uuid_and_cookie(load_cookie=use_cookie, load_uuid=use_uuid)
  File "C:\Users\rbenhmidane\AppData\Local\Programs\Python\Python37\lib\site-packages\instabot\api\api.py", line 159, in load_uuid_and_cookie
    return load_uuid_and_cookie(self, load_uuid=load_uuid, load_cookie=load_cookie)
  File "C:\Users\rbenhmidane\AppData\Local\Programs\Python\Python37\lib\site-packages\instabot\api\api_login.py", line 202, in load_uuid_and_cookie
    assert cookie_username == self.username
AssertionError

I added two custom logs to show the value of 'cookie_username' and 'self.username' just  before the assertion.

Describe your issue
When using an account name that contains an "uppercase", the cookie loading fails and throws an assertion error (api_login.py:200). I have just investigate on this issue, using the last version of the scripts, and I found that the username cookie loaded is stored in lowercase, and when checking that it equals my username it fails because there is an uppercase in my  username. A simple fix is to force the username to be lower just for the comparison, it's not the best solution but it's still better than the existing code.

sooo, what do i need to do ?

Nothing. It has already been fixed -> https://github.com/instagrambot/instabot/pull/1029


Enable all distros for integration tests

Only jammy was configured to be able to run integration tests, other distros need to be updated in the same way.

This is complete with #48


Separate nuclear data from the concept of an Isotope

Right now the Isotope object both represents an isotope, but also a specific set of nuclear data representing that isotope (e.g., the 1001.80c ACE data). This is complicating things and muddying the water. Isotopes need to be sovereign and independent of the nuclear data (but probably really should represent an isomer). Then a nuclear data object (name TBD) can wrap that isotope inside a specific nuclear data library at a specific temperature.
This complicated my life because when adding metastable isomers to the Isotope object (#70) I wanted to add a function: def get_base_isotope(self): -> Isotope however with the nuclear data library information this function can have weird consequences and therefore has been tabled for the time being.

Should this also be separated from the concept of an isomer (#486)?

I'm not sure. With the branch mat_redesign this might be a null concern.


[Roadmap] When will android be upgraded from the legacy implementation?

I tried to look if there was a roadmap somewhere, and I couldn't find one it seems that android development has halted and I would like to know if it's one of those "yeah we'll upgrade eventually..." or if it's something that is actively being worked on?

The android app is actively working on, we are migrating from eclair to lightning-kmp which takes some time.


Adldap v9 Compatibility

This is the minimum number of changes to get Adldap2-Laravel to working for me with Adldap2 v9.
Probably a breaking change that requires a major version bump?

Awesome, thanks @yakatz! Much appreciated. I'll merge this in now and prepare for the new major release (v5.0.0).


To make the game more interesting spawn new units from Light Factory?

as first concept spawn units from light factory after x amount of time. When light factory cannot deploy unit, do nothing.

for now it does not matter which structure, so lets spawn from const yard?

instead I now spawn a whole lot of units and added a crude way of CPU/AI in the unit to make it attack all kinds of things.


Firefox installation instructions are not clear

https://github.com/puppeteer/puppeteer#default-runtime-settings explains how to use firefox and points to https://github.com/puppeteer/puppeteer/blob/v5.1.0/docs/api.md#puppeteerlaunchoptions for more information.
However neither mention the requirement to set an environment variable during installation. This is explained here in the FAQ: https://github.com/puppeteer/puppeteer#q-which-firefox-version-does-puppeteer-use
I think this is confusing to people, at least it was to me. A single section explaining how to use firefox with puppeteer would be great.

@LarsDenBakker I created a PR trying to address your concerns. Can you review it to see if that would have improved your experience?

Yeah, that looks good to me 👍

Thanks @christian-bromann ! I'll close this and it'll be out in the next patch release of Puppeteer (which should be in the next few days).

Can you please add that for a Windows install it needs to be  (PowerShell):
$env:PUPPETEER_PRODUCT = 'firefox'
npm i puppeteer

and to succeed to run it need an arg "-wait-for-borwser":
const browser = await puppeteer.launch({ product:'firefox',  headless: false, args: ['-wait-for-browser']});

Thank you.


feat(clerk-js): Handle user_locked error during oauth flow with redir…

…ect to /sign-up or /sign-in
Description
When an oauth flow is started while a user is locked, we will get a user_locked error.
The user will be identified, but after discussing with @desiprisg, we decided to redirect to /sign-up or /sign-in so that the SignUp or SignIn are reset.
We currently cannot offer the best UX from /sign-in/factor-one because the oauth identification does not display nicely in the <IdentityPreview /> component (the identifier is null).
Thus for now we opted to restart the flow at step 1.
Checklist

[x] npm test runs as expected.
[x] npm run build runs as expected.
[ ] (If applicable) JSDoc comments have been added or updated for any package exports
[ ] (If applicable) Documentation has been updated

Type of change

[ ] 🐛 Bug fix
[x] 🌟 New feature
[ ] 🔨 Breaking change
[ ] 📖 Refactoring / dependency upgrade / documentation
[ ] other:

Packages affected

[ ] @clerk/backend
[ ] @clerk/chrome-extension
[x] @clerk/clerk-js
[ ] @clerk/clerk-expo
[ ] @clerk/fastify
[ ] gatsby-plugin-clerk
[ ] @clerk/localizations
[ ] @clerk/nextjs
[ ] @clerk/clerk-react
[ ] @clerk/remix
[ ] @clerk/clerk-sdk-node
[ ] @clerk/shared
[ ] @clerk/themes
[ ] @clerk/types
[ ] build/tooling/chore

@yourtallness is this something we need to backport to v4 ?

@yourtallness is this something we need to backport to v4 ?

@SokratisVidros @nikosdouvlis WDYT?


vim airline loses color and disappears when not focusing on file

environment

vim: Airline disappears
vim-airline: 0.11
OS: Archlinux
Have you reproduced with a minimal vimrc: ???
What is your airline configuration:

   "Airline and Airline theme

  " enable tabline
		let g:airline#extensions#tabline#enabled = 1
		let g:airline#extensions#tabline#left_sep = ''
		let g:airline#extensions#tabline#left_alt_sep = ''
		let g:airline#extensions#tabline#right_sep = ''
		let g:airline#extensions#tabline#right_alt_sep = ''

  " enable powerline fonts
		let g:airline_powerline_fonts = 1
		let g:airline_left_sep = ''
		let g:airline_right_sep = ''

  " Switch to your current theme
		let g:airline_theme = 'onedark'

  " Always show tabs
		set showtabline=2

  " We don't need to see things like -- INSERT -- anymore
		set noshowmode

if you are using terminal:

terminal: kitty
$TERM variable: xterm-kitty
color configuration (:set t_Co?):
if you are using Neovim:
does it happen in Vim: ???

actual behavior
????
expected behavior
????
screen shot (if possible)
Nvim
=========

=========

when i go to another window then back it comes back again and if i move between files it disappears again

try to disable focuslost autocommands:
https://github.com/vim-airline/vim-airline/blob/master/doc/airline.txt#L283-L285
https://github.com/vim-airline/vim-airline/blob/master/doc/airline.txt#L2083-L2086

i tried but it's still the same, it became like that because i just updated the plug

can you please show with a minimal vimrc that shows the problem?

i tried on vim and its normal i think the problem comes from my nvim. I will close the issue here. Thank you for helping me

I fixed the error it seems to be broken in ~/.local/share/nvim or ~/.cache/nvim
I deleted them and it works fine again

rm -rf ~/.local/share/nvim
rm -rf ~/.cache/nvim


Deploying to Railway

Hi,
I am having trouble understanding what I'd need to do in order to deploy the nextjs application to Railway.
Thank you

These options seems to do the work for me, you can probably optimize it to don't install a bunch of expo stuff / redeploy when only apps/expo changes too


Remove semicolons

Just because everyone seems to hate them!
{
  "requireSemicolons": false,
  "disallowSemicolons": true
}

in jscs config

Not really needed, very opinionated


authenication?

I didn't see anything about to authenticate a connection to the database.  Did I miss it?  I don't run databases without auth for even a modest production system.

I don't think you missed anything, I haven't put much time into auth at all. There's a big update coming soon (1.15.x) which includes a major rewrite of a lot of stuff, and I'll try to fit auth into there before it merges in. This may be sometime in the next week or two.
Thanks for bringing this up!

Apparently the driver had working auth for a while, and I just don't remember building it (and stupidly never documented it).
(r:connect "<IP_ADDRESS>" 28015 :auth "mykey123")

Updating docs now...


[Feature Request] Seeking solution for serverless pod scaling (0->1) with VIP monitoring in custom VPC environment.

Kube-OVN Version
v1.12.19
Kubernetes Version
Client Version: v1.30.2+k3s1
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.30.2+k3s1
Description
Dear Community
I'm working on building a serverless system that can scale pods from zero to one within a custom VPC.
While Knative and KEDA are popular solutions for serverless scaling, I'm concerned that they may not work well in my custom VPC setup since they rely on Kubernetes Service.
I'm looking into Kube-OVN's VIP functionality as an alternative. What I'd like to do is:

Monitor HTTP traffic to these VIPs (like Cilium/Hubble?)
Generate notifications when HTTP traffic is detected
Use this to trigger pod scaling

Does Kube-OVN have any features for monitoring VIPs in this way? Alternatively, are there any solutions to make KEDA work within a custom VPC?
For context, I'm using OVN-style EIP and FIP configurations.
Any guidance on this would be appreciated!

Who will benefit from this feature?
No response
Anything else?
No response

It seems the ovn eip and its vip is settled first, using Cilium/Hubble to monitor the eip (HTTP) traffic on the vpc lrp located chassis node, once the traffic is detected, trigger the pod creation.

If you use vpc-nat-gateway, there is a pod to serve the eip and fip so you can add some detect program in the pod. This way might be much easier.

It seems the ovn eip and its vip is set first, using Cilium/Hubble to monitor the eip (HTTP) traffic on the vpc lrp located chassis node, once the traffic is detected, trigger the pod creation.

@bobz965
Thank you for your response. I performed monitoring in Hubble as follows:
root@mni-test:/home/mune# kubectl get vip
NAME           V4IP       V6IP   MAC                 PMAC   SUBNET         READY   TYPE
test-fip-vip   <IP_ADDRESS>          7a:7c:76:5d:32:2e          vpc1-subnet1   true
root@mni-test:/home/mune#
root@mni-test:/home/mune# kubectl get ofip
NAME          VPC    V4EIP          V4IP       READY   IPTYPE   IPNAME
eip-for-vip   vpc1   <IP_ADDRESS>   <IP_ADDRESS>   true    vip      test-fip-vip
eip-static    vpc1   <IP_ADDRESS>   <IP_ADDRESS>   true             vpc1-pod.vpc1
root@mni-test:/home/mune#
root@mni-test:/home/mune# curl <IP_ADDRESS> #Sending HTTP request from node
^C
root@mni-test:/home/mune#
root@mni-test:/home/mune# kubectl exec -it -n vpc1 vpc1-pod -- sh
/ # curl <IP_ADDRESS> #Sending HTTP request from inside a VPC Pod (vpc1-pod)

As a result, hubble observe was only able to monitor HTTP requests sent from vpc1-pod (Egress Traffic). (The log below only shows Egress from vpc1-pod)
root@mni-test:/home/mune/test-vm# hubble observe --all -f --not --pod kube-system/kube-ovn-pinger-b8dbz --not --pod kube-system/coredns-576bfc4dc7-qg58r --not --pod kube-system/metrics-server-557ff575fb-h5sdk --not --pod kube-system/hubble-ui-59bb4cb67b-d428k --not --pod kube-system/hubble-relay-86cd879b55-2smpv --not --pod kube-system/local-path-provisioner-86f46b7bf7-zthdz
Nov 14 00:54:51.218: vpc1/vpc1-pod:56354 (ID:20160) -> <IP_ADDRESS>:80 (world) to-stack FORWARDED (TCP Flags: SYN)
Nov 14 00:54:58.276: vpc1/vpc1-pod:56354 (ID:20160) -> <IP_ADDRESS>:80 (world) to-stack FORWARDED (TCP Flags: SYN)
Nov 14 00:55:06.468: vpc1/vpc1-pod:56354 (ID:20160) -> <IP_ADDRESS>:80 (world) to-stack FORWARDED (TCP Flags: SYN)

In actual operations, we expect access from multiple unspecified sources, so monitoring Ingress traffic will be necessary. Is it possible to monitor Ingress traffic?

If you use vpc-nat-gateway, there is a pod to serve the eip and fip so you can add some detect program in the pod. This way might be much easier.

@oilbeater
Thank you for your response. Indeed, I agree that vpc-nat-gateway could meet these requirements.
However, we are particularly interested in the OVN-based EIP approach. We want to provide IaaS to customers on a namespace basis, and we anticipate this to be at a large scale. In this case, we believe the OVN-based approach would be more optimal than the iptables-based method.
If possible, we would like to meet these requirements using the OVN-based approach. (If this proves impossible, we will reconsider the iptables-based method.)

I suggest you config an ip in the br-provider， then you can ping the pod ofip from the br-provider， i think you can see the packet into the ofip pod.

I suggest you config an ip in the br-provider， then you can ping the pod ofip from the br-provider， i think you can see the packet into the ofip pod.

Thank you.
Is br-provider the Bridge interface that is created when setting up the Underlay network? In that case, it exists(br-external) as shown below and is assigned as the Node's IP address.
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master ovs-system state UP group default qlen 1000
    link/ether 00:15:5d:00:7d:02 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::215:5dff:fe00:7d02/64 scope link
       valid_lft forever preferred_lft forever
3: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether ea:94:ed:bc:18:dc brd ff:ff:ff:ff:ff:ff
4: mirror0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ether ba:c0:83:63:c0:cb brd ff:ff:ff:ff:ff:ff
    inet6 fe80::b8c0:83ff:fe63:c0cb/64 scope link
       valid_lft forever preferred_lft forever
5: ovn0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ether aa:7e:1b:de:c6:e9 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/16 brd <IP_ADDRESS> scope global ovn0
       valid_lft forever preferred_lft forever
    inet6 fe80::a87e:1bff:fede:c6e9/64 scope link
       valid_lft forever preferred_lft forever
6: br-int: <BROADCAST,MULTICAST> mtu 1400 qdisc noop state DOWN group default qlen 1000
    link/ether 66:ff:5b:5a:7e:fa brd ff:ff:ff:ff:ff:ff
7: br-external: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ether 00:15:5d:00:7d:02 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global br-external
       valid_lft forever preferred_lft forever
    inet6 2001:f70:1f20:2b00:215:5dff:fe00:7d02/64 scope global mngtmpaddr noprefixroute
       valid_lft forever preferred_lft forever
    inet6 fe80::215:5dff:fe00:7d02/64 scope link
       valid_lft forever preferred_lft forever

＜details＞
＜summary＞ProviderNetwork Setting's yaml＜/summary＞
apiVersion: kubeovn.io/v1
kind: ProviderNetwork
metadata:
  name: external
  namespace: vpc1
spec:
  defaultInterface: eth0
---
apiVersion: kubeovn.io/v1
kind: Vlan
metadata:
  name: vlan0
spec:
  id: 0
  provider: external
---
apiVersion: kubeovn.io/v1
kind: Subnet
metadata:
  name: external
spec:
  protocol: IPv4
  cidrBlock: <IP_ADDRESS>/24
  gateway: <IP_ADDRESS>
  vlan: vlan0
  excludeIps:
  - <IP_ADDRESS>..<IP_ADDRESS>
  - <IP_ADDRESS>..<IP_ADDRESS>

＜/details＞
Additionally, when sending ICMP and HTTP requests from the node to the nginx pod (vpc1-pod) via oeip, monitoring is possible using hubble observe.
root@mni-test:/home/mune# ping 192.168.53
PING 192.168.53 (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from <IP_ADDRESS>: icmp_seq=1 ttl=63 time=2.17 ms
64 bytes from <IP_ADDRESS>: icmp_seq=2 ttl=63 time=1.34 ms
64 bytes from <IP_ADDRESS>: icmp_seq=3 ttl=63 time=0.123 ms
64 bytes from <IP_ADDRESS>: icmp_seq=4 ttl=63 time=0.086 ms
64 bytes from <IP_ADDRESS>: icmp_seq=5 ttl=63 time=0.102 ms
64 bytes from <IP_ADDRESS>: icmp_seq=6 ttl=63 time=0.068 ms
^C
--- 192.168.53 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5054ms
rtt min/avg/max/mdev = 0.068/0.649/2.174/0.820 ms
root@mni-test:/home/mune#
root@mni-test:/home/mune#
root@mni-test:/home/mune#
root@mni-test:/home/mune# curl <IP_ADDRESS>
<!DOCTYPE html>

<title>Welcome to nginx!</title>

Welcome to nginx!

If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.

For online documentation and support please refer to
nginx.org.

Commercial support is available at
nginx.com.

Thank you for using nginx.

root@mni-test:/home/mune#

root@mni-test:/home/mune/test-vm# hubble observe --all -f --not --pod kube-system/kube-ovn-pinger-b8dbz --not --pod kube-system/coredns-576bfc4dc7-qg58r --not --pod kube-system/metrics-server-557ff575fb-h5sdk --not --pod kube-system/hubble-ui-59bb4cb67b-d428k --not --pod kube-system/hubble-relay-86cd879b55-2smpv --not --pod kube-system/local-path-provisioner-86f46b7bf7-zthdz
Nov 14 02:32:48.870: <IP_ADDRESS> (host) -> vpc1/vpc1-pod (ID:20160) to-endpoint FORWARDED (ICMPv4 EchoRequest)
Nov 14 02:32:48.870: <IP_ADDRESS> (host) <- vpc1/vpc1-pod (ID:20160) to-stack FORWARDED (ICMPv4 EchoReply)
Nov 14 02:32:59.379: <IP_ADDRESS>:39480 (host) -> vpc1/vpc1-pod:80 (ID:20160) to-endpoint FORWARDED (TCP Flags: SYN)
Nov 14 02:32:59.379: <IP_ADDRESS>:39480 (host) <- vpc1/vpc1-pod:80 (ID:20160) to-stack FORWARDED (TCP Flags: SYN, ACK)
Nov 14 02:32:59.380: <IP_ADDRESS>:39480 (host) -> vpc1/vpc1-pod:80 (ID:20160) to-endpoint FORWARDED (TCP Flags: ACK, PSH)
Nov 14 02:32:59.380: <IP_ADDRESS>:39480 (host) <- vpc1/vpc1-pod:80 (ID:20160) to-stack FORWARDED (TCP Flags: ACK, PSH)
Nov 14 02:32:59.380: <IP_ADDRESS>:39480 (host) -> vpc1/vpc1-pod:80 (ID:20160) to-endpoint FORWARDED (TCP Flags: ACK, FIN)
Nov 14 02:32:59.380: <IP_ADDRESS>:39480 (host) <- vpc1/vpc1-pod:80 (ID:20160) to-stack FORWARDED (TCP Flags: ACK, FIN)
Nov 14 02:32:59.380: <IP_ADDRESS>:39480 (host) -> vpc1/vpc1-pod:80 (ID:20160) to-endpoint FORWARDED (TCP Flags: ACK)

However, when attempting the same with a VIP's oeip that isn't assigned to any Pod, monitoring is not possible.
root@mni-test:/home/mune# ping <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.
^C
--- <IP_ADDRESS> ping statistics ---
17 packets transmitted, 0 received, 100% packet loss, time 16387ms

root@mni-test:/home/mune#
root@mni-test:/home/mune# curl <IP_ADDRESS>
curl: (28) Failed to connect to <IP_ADDRESS> port 80 after 129631 ms: Connection timed out
root@mni-test:/home/mune#

root@mni-test:/home/mune/test-vm# hubble observe --all -f --not --pod kube-system/kube-ovn-pinger-b8dbz --not --pod kube-system/coredns-576bfc4dc7-qg58r --not --pod kube-system/metrics-server-557ff575fb-h5sdk --not --pod kube-system/hubble-ui-59bb4cb67b-d428k --not --pod kube-system/hubble-relay-86cd879b55-2smpv --not --pod kube-system/local-path-provisioner-86f46b7bf7-zthdz

# Nothing is displayed.

Does this mean that Hubble can only monitor traffic that passes through Pods?
Is there a way to resolve this issue?

yeah, br-provider is your br-external.
we tested: if you set the VIP to a real pod, you will see the TCP HTTP packets.
if the VIP is not set to a real pod, can you see the ARP packets in the VPC LRP located node?   can you use the ARP packets?

if the VIP is not set to a real pod, can you see the ARP packets in the VPC LRP located node? can you use the ARP packets?

I am conducting verification on a single node using k3s. I am running this on the node where the vpc lrp is located.

Node Detail
root@mni-test:/home/mune# hostname
mni-test
root@mni-test:/home/mune# kubectl-ko sbctl show
Chassis "bce2439e-04c6-492d-8c8e-26b688761c33"
    hostname: mni-test
    Encap geneve
        ip: "<IP_ADDRESS>"
        options: {csum="true"}
    Port_Binding vpc1-pod.vpc1
    Port_Binding hubble-ui-59bb4cb67b-d428k.kube-system
    Port_Binding coredns-576bfc4dc7-qg58r.kube-system
    Port_Binding cr-ovn-cluster-external
    Port_Binding nginx-deployment-576c6b7b6-pxdzm.vpc1
    Port_Binding metrics-server-557ff575fb-h5sdk.kube-system
    Port_Binding local-path-provisioner-86f46b7bf7-zthdz.kube-system
    Port_Binding hubble-relay-86cd879b55-2smpv.kube-system
    Port_Binding cr-vpc1-external
    Port_Binding node-mni-test
    Port_Binding kube-ovn-pinger-b8dbz.kube-system
root@mni-test:/home/mune# kubectl-ko nbctl show vpc1
router 4cc13f01-d4f2-4688-9648-94cf3c947fbf (vpc1)
    port vpc1-vpc1-subnet1
        mac: "22:a3:79:b2:08:73"
        networks: ["<IP_ADDRESS>/24"]
    port vpc1-external
        mac: "8a:85:b0:3a:a0:ef"
        networks: ["<IP_ADDRESS>/24"]
        gateway chassis: [bce2439e-04c6-492d-8c8e-26b688761c33]
    nat 19722980-d735-41fe-beae-e007a0456530
        external ip: "<IP_ADDRESS>"
        logical ip: "<IP_ADDRESS>"
        type: "dnat_and_snat"
    nat de279e0b-8b5b-4798-b2ed-7f2717a15ac6
        external ip: "<IP_ADDRESS>"
        logical ip: "<IP_ADDRESS>"
        type: "dnat_and_snat"
root@mni-test:/home/mune#

The results of arping are as follows:
root@mni-test:/home/mune# arping -c 3 <IP_ADDRESS>
ARPING <IP_ADDRESS>
58 bytes from 8a:85:b0:3a:a0:ef (<IP_ADDRESS>): index=0 time=262.807 usec
58 bytes from 8a:85:b0:3a:a0:ef (<IP_ADDRESS>): index=1 time=221.678 usec
58 bytes from 8a:85:b0:3a:a0:ef (<IP_ADDRESS>): index=2 time=287.006 usec

--- <IP_ADDRESS> statistics ---
3 packets transmitted, 3 packets received,   0% unanswered (0 extra)
rtt min/avg/max/std-dev = 0.222/0.257/0.287/0.027 ms
root@mni-test:/home/mune#

And the tcpdump results on the node are as follows:
root@mni-test:/home/mune/test-vm# tcpdump -i any -v arp
tcpdump: data link type LINUX_SLL2
tcpdump: listening on any, link-type LINUX_SLL2 (Linux cooked v2), snapshot length 262144 bytes
03:13:21.892008 6c11f29eaa4c_h P   ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell <IP_ADDRESS>, length 28
03:13:21.892472 6c11f29eaa4c_h Out ARP, Ethernet (len 6), IPv4 (len 4), Reply <IP_ADDRESS> is-at 3a:c8:e0:fd:a2:f0 (oui Unknown), length 28
03:13:21.965723 br-external Out ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell mni-test, length 44
03:13:21.965869 br-external In  ARP, Ethernet (len 6), IPv4 (len 4), Reply <IP_ADDRESS> is-at 8a:85:b0:3a:a0:ef (oui Unknown), length 44
03:13:21.965889 eth0  Out ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell mni-test, length 44
03:13:22.323691 eth0  B   ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell <IP_ADDRESS>, length 46
03:13:22.323705 br-external B   ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell <IP_ADDRESS>, length 46
03:13:22.404387 74314ac0a2ca_h Out ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell <IP_ADDRESS>, length 28
03:13:22.404398 cd8ff815d8fb_h Out ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell <IP_ADDRESS>, length 28
03:13:22.966421 br-external Out ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell mni-test, length 44
03:13:22.966559 br-external In  ARP, Ethernet (len 6), IPv4 (len 4), Reply <IP_ADDRESS> is-at 8a:85:b0:3a:a0:ef (oui Unknown), length 44
03:13:22.966579 eth0  Out ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell mni-test, length 44
03:13:23.428569 74314ac0a2ca_h Out ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell <IP_ADDRESS>, length 28
03:13:23.428585 cd8ff815d8fb_h Out ARP, Ethernet (len 6), IPv4 (len 4), Request who-has <IP_ADDRESS> tell <IP_ADDRESS>, length 28

The ARP packets are visible on tcpdump, but they are not visible in hubble observe.

maybe you can extend the function ARP detection into the hubble

So, in the case of VIP not set to the real pod, only the ARP packet can be seen from the VPC LRP.
arp is answered by ovs. and just ARP.
if you want 0-x, not 1-x, maybe ARP detection is just the key to trigger 0->1.

maybe you can extend the function ARP detection into the bubble , or something else which already has the ARP detection

Thank you for your detailed explanation.
I understand that Hubble by default can only monitor L3 and above, and cannot monitor ARP Packets which are L2.
For this reason, I will look into the iptables approach and explore other alternatives.
Finally, in a scenario where customer tenants are provisioned per Kubernetes namespace, which do you think is superior between the iptables method and OVN method for eip/fip? Also, it would be helpful if you could tell me which has more future potential. I would like to incorporate this into our design approach.

for your case, iptables eip set up a pod at first, and map the eip and VIP in the pod.  I think it is the case of 1-x.
and also, if the VIP not set to the real pod, I think you still can not monitor any packets.
so the block point is just the same (iptables eip vs ovn eip).
the key is the packets send to the VIP can not be seen until the VIP set to a real pod.
if hubble only monitor L3, maybe you can use bpf to make a tool to detect lrp and trigger a event for the case 0-1.

for your case, iptables eip set up a pod at first, and map the eip and VIP in the pod. I think it is the case of 1-x.
and also, if the VIP not set to the real pod, I think you still can not monitor any packets.
so the block point is just the same (iptables eip vs ovn eip).
the key is the packets send to the VIP can not be seen until the VIP set to a real pod.
if hubble only monitor L3, maybe you can use bpf to make a tool to detect lrp and trigger a event for the case 0-1.

You're right, I also confirmed that it cannot be done with the Iptables method.
It seems that svc lb can meet my requirements, so I will proceed with the design using that approach.
Thank you for your help.


Conversion to NMEA0183

The current NMEA0183 over tcp support in the Signal K Node Server is on by default and available on port 10110 (the port registered for NMEA0183 over tcp).
The implementation is currently really naive and doesn't convert anything yet, it just makes any NMEA0183 input processed with providers/nmea0183-signalk available over tcp in addition to converting it to SK.
However the ability to convert other inputs to NMEA0183 would be useful. In my own case I have most instruments on N2K but my Simrad TP32 only accepts NMEA0183.

The conversion can be implemented by converting directly from canboat json pgns or from Signal K to NMEA0183.
Where 1-to-1 mapping exists from PGN to sentence the former would skip needless conversion to SK and SI Units.
The latter would be more generic and allow processing of non-nmea sensor inputs as well as SK from network sources.

There is a proof of concept with MWV generation at https://github.com/SignalK/signalk-server-node/blob/e13082bbf958f2015c49ba51f1a606e23f482fc9/lib/interfaces/toNmea.js#L52-L67.
I will probably keep hammering that to shape to meet my own needs and then make it more fit for publishing afterwards. I am working on a single branch that contains both SK=>NMEA0183 and SK=>N2K conversions to get my own system working.
The conversion is really naive and handles values in a delta on the fly. One could add zipping (output only when there is updated data for all the inputs) or trigger the possible output only when all the data for a delta has been processed.
The level I am aiming at is also simplistic in terms of what variants of values it supports: magnetic/true, greatcircle/rhumbline. Making the solution general to support all the cases takes naturally more effort than just a single combination, but currently my aim is to get it working just for my own boat.
Helping with this effort is pretty easy: add more sentence mappings. NMEA0183 documentation is easy to come by and the conversion is pretty straightforward.

Implemented in https://github.com/SignalK/signalk-to-nmea0183 as a plugin.


Artifact hemoglobin trigger now accepts all sentient blood types

About the PR
I changed the "Reaction with Hemoglobin" artifact trigger to trigger with all types of sentient blood, and changed the hint to "Reaction with hematological fluid"
Why / Balance
Being a moth/slime/arachnid scientist sucks when you get this node. It's better-balanced across species now.
Technical details
Just changed a couple .YMLs, nothing fancy.
Media

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

Breaking changes
None.
Changelog
Changed artifact hemoglobin trigger to accept all sentient blood types

Should we remove the slime? Playing as a slime person, it was fun enough to catch a discouraged human and ask for his blood in the name of science.

do slime and other bloods even contain hemoglobin?

just rename the trigger

Should we remove the slime? Playing as a slime person, it was fun enough to catch a discouraged human and ask for his blood in the name of science.

You can ask for people's blood anywhere, anytime, for any reason. They don't gotta know you're lying


Video-Gallery points to tmp-folder

From Vlad1111
ValueError: File cannot be fetched: C:/Users/ME/AppData/Local/Temp/58e814e546d2366335af49716872cea2e9c0407c/infinite_zoom_1682344331.mp4. All files must
contained within the Gradio python app working directory, or be a temp file created by the Gradio python app.
Current element
<video src="http://localhost:7860/file=C:\Users\ME\AppData\Local\Temp\58e814e546d2366335af49716872cea2e9c0407c\infinite_zoom_1682344331.mp4" preload="auto" class="svelte-1vnmhm4" style="opacity: 1; transition: all 0.2s ease 0s; position: relative;"><track kind="captions"><iframe style="display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;" aria-hidden="true" tabindex="-1" src="about:blank"></iframe></video>
Solution:
a) add the path to video srs
b) use data url (I know firefox has problems reading such)

cant really fit, because the Path is returnas OUTPUT to gradio element video. it cannot contain here "file=" or http. So , gradio-vieo will open some relative path, and convert it to a temp app file.
so, by design not fixable without js-workaround.s
closing, untouched


fix: clone() cloning prototype's custom methods for 2.x

Hi @indexzero
I created this pull request for the version 2.x references to my old pull request #1078
fix: clone method in common.js should not clone the prototype custom methods for 2.x version
var a = [1,2];
Array.prototype.try = function() {return true;};
winston.info(a);  // info:  0=1, 1=2, try=function () {return true;}

Seems reasonable. Could you also open this PR against winston-compat?

Sure @indexzero, this is the link of the PR: winston-compat/1


Check for script version to update

Signed-off-by: Yussuf Shaikh<EMAIL_ADDRESS>

/cc @Prajyot-Parab

/cc @aishwaryabk @sajauddin


[BUG] fix FeatureUnion test failure mk4

Another attempted fix for #1662 which PR #1665, #1701 did not fix. Hopefully the definitive fix now.
This fix completely rewrites the FeatureUnion instead of inheriting from the sklearn one.
With the new transformers refactor, we can simply use pandas functionality to merge/concatenate data frames internally, while the framework does the rest.
Minor complication:
With the transformer refactor, the "row-wise transformer" have become obsolete, since vectorization (to panel) is performed automatically whenever such a data container is encountered.
Some tests not directly related to the FeatureUnion but also using FeatureUnion were still using them, so I xfailed them for the time being, until the RowTransformers are entirely removed, see issue #2179.

@chrisholder, thanks for reviewing #1701!
I noticed that I hadn't pushed the most recent and hopefully final attempt to fix this.
Pinging you since you recently looked at the bugfix.
Also FYI @lmmentel, as we've discussed earlier on slack, this is the branch now as PR.

It seems that quite a few tests on linux are still failing:
FAILED classification/compose/tests/test_TimeSeriesForestClassifier.py::test_equivalent_model_specifications[1-1]
FAILED classification/compose/tests/test_TimeSeriesForestClassifier.py::test_equivalent_model_specifications[3-1]
FAILED tests/test_all_estimators.py::test_fit_idempotent[FeatureUnion] - Valu...
FAILED tests/test_all_estimators.py::test_methods_do_not_change_state[FeatureUnion]
FAILED tests/test_all_estimators.py::test_methods_have_no_side_effects[FeatureUnion]
FAILED tests/test_all_estimators.py::test_persistence_via_pickle[FeatureUnion]
FAILED tests/test_all_estimators.py::test_multiprocessing_idempotent[FeatureUnion]
FAILED transformations/panel/summarize/tests/test_RandomIntervalFeatureExtractor.py::test_different_pipelines

But not the test related to hyper params :slightly_smiling_face:

Yes, this will probably require #1795 to work.

@chrisholder, @lmmentel, after the transformers refactor, the featureunion fix works with some minor changes, kindly have a look.

comments addressed, no activity for >14 days, merging


Can't launch leafpad in cage, unable to obtain debug info.

Objective
I want to launch leafpad in cage on Alpine.
I have installed and started elogind.
When I run cage leafpad in an ssh session, I get the following output (this is fine):
2020-03-02 15:13:08 - [backend/session/direct.c:176] Could not get current tty number: Not a tty
2020-03-02 15:13:08 - [backend/session/session.c:96] Failed to load session backend
2020-03-02 15:13:08 - [backend/backend.c:286] Failed to start a DRM session
2020-03-02 15:13:08 - [../cage-0.1.1/cage.c:201] Unable to create the wlroots backend

When I run the same command in a tty, basically after I hit enter, the display does not update.
When I pgrep and kill over ssh, there is no output from the command.
How can I obtain any diagnostic info, and what am I doing wrong?
Packages

Alpine 3.11.3
cage-0.1.1-r3
leafpad-<IP_ADDRESS>-r0

Env
USER=root
SHLVL=1
HOME=/root
PAGER=less
PS1=\h:\w\$
LOGNAME=root
TERM=xterm-256color
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SHELL=/bin/ash
PWD=/root```

You can't run Cage as root, see https://github.com/Hjdskes/cage/wiki/Troubleshooting#cage-is-unable-to-drop-root
Also, did you read https://github.com/Hjdskes/cage/wiki/Running-Cage-without-systemd#elogind?

Closing due to inactivity.


Why no brfft! or irfft!?

It seems like these functions would be a bit cleaner than brfft and irfft because the length of the output can be determined from the destination parameter.  Are these variations not commonly supported by FFT implementations or is it just that nobody has asked for them before?

Nvm.  I now realize that the ! functions of AbstractFFTs are intended for in-place transforms, not transforms that output to a pre-allocated Array. Sorry for the distraction.


Update Ui.png for Landing and README

This GUI picture update will be rendered obsolete as new GUI changes are inbound.


Unknown Magic byte

Hi
I have below setup
Event Streams(Apache kafka platform)
Apicurio schema registry
Java spring custom app that produce avro serialized events using Apicurio SerDes library
Aiven S3 sink connector configure to that topic.
With this implementation I am getting error as SerializationException: Unknown Magic byte when the connector tries to store the events in S3.
With Java custom consumer app I am able to deserialize(Apicurio Serdes library) those events successfully but only via this connector getting issue.
Does this connector work with Apicurio schema registry or only with Confluent scheme registry ?
Also events serialized by Apicurio SerDes library can be converted by Confluent AvroConverter ?
Value.converter.schema.registry.url :  'My apicurio schema registry url'
value.converter: io.confluent.connect.avro.AvroConverter
value.converter.use.latest.version: true
value.converter.schema.enable: true
value.converter.specific.avro.reader:true
value.converter.enhanced.avro.schema.support: true
topic : topic name
Key.converter: ....Storage.StringConverter
Connector.Class:...... AivenKafkaConnectS3SinkConnector
Apart from this I  have given default S3 bucket, access details and broker URL.
Thanks

@ram-venket36
I notice Apicurio schema registry is compatible with Confluent Schema registry mentioned here https://www.apicur.io/registry/docs/apicurio-registry/2.6.x/getting-started/assembly-intro-to-the-registry.html.
So I assume this connector should also work for Apicurio.
If you are facing any issues, pls post the error here, we can take a look.

@muralibasani
Instead of Confluent AvroConverter Jar, I updated connector package with Apicurio Avro Converter jar(apicurio-registry-utils-converter) and referred that class in S3 config which worked.
To my understanding Confluent AvroConverter is looking for Magic Byte in specific format (0 * 0) and since the events are serialized by ApicurioSerializer from producer side magic number in different format which was causing issue.

@ram-venket36 as long as you have same Apicurio SerDes on producer and consumer side, that should work fine. So I assume that's not the case here, and hence you are getting this issue., and this is expected behaviour I believe.


Add Docker support

This PR:

Adds support for building the el7 RPMs using Docker
Adds the ability to create an el7 Docker image containing the gibs-gdal RPMs

This is great @yjpa7145! Thanks for putting this together.


[$1000] Sigin - Console error when opening a chat

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open any chat

Expected Result:
No console error when opening a chat
Actual Result:
Console error when opening a chat
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android / native
[ ] Android / Chrome
[x] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: n/a
Reproducible in production?: n/a
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

Expensify/Expensify Issue URL:
Issue reported by: bernhardoj
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1686028265538889
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~0152de705a953964b4
Upwork Job ID:<PHONE_NUMBER>988036608
Last Price Increase: 2023-06-13

I think @spcheema working on it as it occurs after their PR.

Also there's another console error with cursorPointer key. It has the same root cause and should be fixed here.

I'm not able to reproduce as I don't have a mobile dev environment with access to the console. @sobitneupane or @robertjchen are either of you able to reproduce the bug?

@tjferriss It's not reproducible on prod. It's console warning which block the build. https://github.com/Expensify/App/pull/20462 to fix some other warnings. Lemme know if there is a need to fix this one as well.

textUnderlinePosition, textDecorationSkipInk console errors are gone but cursor error still remaining. It happens on ReportPreview component.
Reproducible step: request money on any chat

Thanks for the proposal @situchan. Removing cursorPointer solves one warning but following warning still remains.

Proposed solution
Please re-state the problem that we are trying to solve in this issue.
Getting console error Failed prop type: Invalid prop stylesof typeobjectsupplied toPressableWithoutFocus, expected an array
What is the root cause of that problem?
Style property of PressableWithoutFocus component expect array but an object is .
Following code in 3 files
      <PressableWithoutFocus
                                                style={styles.noOutline}
                                                onPress={show}
                                            >

Files are

src/components/HTMLEngineProvider/HTMLRenderers/ImageRenderer.js
src/pages/DetailsPage.js
src/pages/ProfilePage.js

What changes do you think we should make in order to solve the problem?
Update code as below

  <PressableWithoutFocus
        style={[styles.noOutline]}
        onPress={show}
    >

What alternative solutions did you explore? (Optional)
NA

@sobitneupane There was another issue created to fix cursor pointer issue. This solution is only for PressableWithoutFocus component. Happy to consider cursor issue as well if it's still there.

Thanks for the proposal @situchan. Removing cursorPointer solves one warning but following warning still remains.

This is already known and being fixed somewhere - https://github.com/Expensify/App/pull/19545#discussion_r1225052172

Yup @situchan.PressableWithoutFocus warning is already being fixed in https://github.com/Expensify/App/pull/20202.
The warning in cursor can be fixed by @situchan's proposal.

There was another issue created to fix cursor pointer issue.

@spcheema Can you please link the issue?

@situchan Is the issue still reproducible?

@situchan Is the issue still reproducible?

yes still

Proposal from @situchan looks good to me.
🎀 👀 🎀 C+ reviewed
cc: @robertjchen

@spcheema can you please link that PR? This is still reproducible on main

Following console warning on opening chat.

@parasharrajat Can you please link the issue and PR which fixed it?

Oops Sorry @situchan. The solution is already implemented. Thanks for the proposal though.

@tjferriss We should be good to close this issue.


Upgrade Play! version from 2.6.0 to 2.6.1

Upgrade:

play version from 2.6.0 to 2.6.1

Upgrade in documentation and test projects:

scalatestplus-play version from 3.0.0 to 3.1.0

1.0.0-rc2-SNAPSHOT snapshot deployed.

BTW
The Twirl hack/workaround introduced in previous (1.0.0-rc1) version of 2.6.x provider (described here) was removed.

WARNING:
Don't release 1.0.0-rc2 version yet. There are serious issues with Play! Framework 2.6.1:

https://github.com/playframework/playframework/issues/7614
https://github.com/playframework/playframework/issues/7622


Lifx Z not detected as color

I am having trouble getting color to work with a lifx z strip.  I know it has native homekit support but it doesn't really work and isn't accessible off my network.  The light strip works great with the white light temperatures, but color isn't accessible.  I downloaded Hesperus and attempted to add the Hue and Saturation Characteristics, but it isn't an option.
Any advice or fixes?

I've recently begun encountering this on one of my four LIFX Z strips. Coincidentally, it also happens to be the only strip I have with HomeKit compatibility. Looking a bit further into it, it looks like it's adopted by the LIFX plugin as an unknown model, and therefore causes HomeKit to believe that it is only a White LED strip, hence presenting the white color picker as posted in issue #31.
I've tried multiple times to delete and readopt this strip, but Homebridge cannot seem to get the correct model type for this strip, despite it appearing to be fully adopted in the LIFX app.
Any help here would be appreciated.


looks like learning.ionicframework.com is hosed

looks like learning.ionicframework.com is hosed:
If I try to goto a specific link:  http://learn.ionicframework.com/formulas/data-the-right-way/
the page loads then immediately reverts to http://ionicframework.com/
This also happens even if I try to navigate to http://learn.ionicframework.com/
This looks very recent!

Hi there! Yes, the learn site has long been out of date so we decided to shut the site down. But we've kept the git repo around as a point of reference.
https://github.com/driftyco/ionic-learn

Mike -
I totally understand but:
The learning site is briefly displayed then it reverts back to the
ionicframework.com main page.  Looks broken, even if it is working as
planned.  I would suggest not showing the learning pages then reverting.
Thanks!
Mike

Mike Kobar
RKO Security
http://www.RKOSecurity.com http://www.rkosecurity.com/
617 701-6019
On Sun, Apr 10, 2016 at 11:36 AM, Mike Hartington<EMAIL_ADDRESS>wrote:

Hi there! Yes, the learn site has long been out of date so we decided to
shut the site down. But we've kept the git repo around as a point of
reference.
https://github.com/driftyco/ionic-learn
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/driftyco/ionic-site/issues/536#issuecomment-208003952

@perrygovier is working on this

Thanks for the good news.
Keep rocking it!

Mike Kobar
RKO Security
http://www.RKOSecurity.com http://www.rkosecurity.com/
617 701-6019
On Sun, Apr 10, 2016 at 2:40 PM, Max Lynch<EMAIL_ADDRESS>wrote:

@perrygovier https://github.com/perrygovier is working on this
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/driftyco/ionic-site/issues/536#issuecomment-208041976


Harden asn1 oid loader to invalid inputs

In the event that a config file contains this sequence: =======
openssl_conf = openssl_init
config_diagnostics = 1
[openssl_init]
oid_section = oids
[oids]
testoid1 = <IP_ADDRESS>.1
testoid2 = A Very Long OID Name, <IP_ADDRESS>.2
testoid3 = ,<IP_ADDRESS>.3
The leading comma in testoid3 can cause a heap buffer overflow, as the parsing code will move the string pointer back 1 character, thereby pointing to an invalid memory space
correct the parser to detect this condition and handle it by treating it as if the comma doesn't exist (i.e. an empty long oid name)
Reviewed-by: Hugo Landau<EMAIL_ADDRESS>Reviewed-by: Tomas Mraz<EMAIL_ADDRESS>(Merged from https://github.com/openssl/openssl/pull/22957)
(cherry picked from commit a552c23c6502592c1b3c67d93dd7e5ffbe958aa4)
Checklist

[ x] tests are added or updated

@nhorman I've already cherry-picked this to 3.2 branch https://github.com/openssl/openssl/commit/00a3833a291cf281e70f92c1eab82e364640e0da
Closing as unneeded.


Looks like duckdb only works on single-threaded operations

dbt-core version: dbt-core 1.0.8
adapter version: dbt-duckdb 1.1.1
# my config on a single thread that works
jaffle_shop:

  target: dev
  outputs:
    dev:
      type: duckdb
      path: 'jaffle_shop.duckdb'

 ~/De/jaffle_shop_duckdb │ on duckdb !1  dbt build     ✔ │ took 5s │ jaffle_shop_duckdb Py │ system Node
02:25:56  Running with dbt=1.0.8
02:25:56  Unable to do partial parsing because profile has changed
02:25:57  Found 5 models, 20 tests, 0 snapshots, 0 analyses, 165 macros, 0 operations, 3 seed files, 0 sources, 0 exposures, 0 metrics
02:25:57
02:25:57  Concurrency: 1 threads (target='dev')
02:25:57
02:25:57  1 of 28 START seed file main.raw_customers...................................... [RUN]
02:25:57  1 of 28 OK loaded seed file main.raw_customers.................................. [INSERT 100 in 0.13s]
02:25:57  2 of 28 START seed file main.raw_orders......................................... [RUN]
02:25:57  2 of 28 OK loaded seed file main.raw_orders..................................... [INSERT 99 in 0.08s]
02:25:57  3 of 28 START seed file main.raw_payments....................................... [RUN]
02:25:57  3 of 28 OK loaded seed file main.raw_payments................................... [INSERT 113 in 0.08s]
02:25:57  4 of 28 START view model main.stg_customers..................................... [RUN]
02:25:57  4 of 28 OK created view model main.stg_customers................................ [OK in 0.14s]
02:25:57  5 of 28 START view model main.stg_orders........................................ [RUN]
02:25:57  5 of 28 OK created view model main.stg_orders................................... [OK in 0.07s]
02:25:57  6 of 28 START view model main.stg_payments...................................... [RUN]
02:25:58  6 of 28 OK created view model main.stg_payments................................. [OK in 0.07s]
02:25:58  7 of 28 START test not_null_stg_customers_customer_id........................... [RUN]
02:25:58  7 of 28 PASS not_null_stg_customers_customer_id................................. [PASS in 0.09s]
02:25:58  8 of 28 START test unique_stg_customers_customer_id............................. [RUN]
02:25:58  8 of 28 PASS unique_stg_customers_customer_id................................... [PASS in 0.07s]
02:25:58  9 of 28 START test accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned [RUN]
02:25:58  9 of 28 PASS accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned [PASS in 0.07s]
02:25:58  10 of 28 START test not_null_stg_orders_order_id................................ [RUN]
02:25:58  10 of 28 PASS not_null_stg_orders_order_id...................................... [PASS in 0.07s]
02:25:58  11 of 28 START test unique_stg_orders_order_id.................................. [RUN]
02:25:58  11 of 28 PASS unique_stg_orders_order_id........................................ [PASS in 0.07s]
02:25:58  12 of 28 START test accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card [RUN]
02:25:58  12 of 28 PASS accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card [PASS in 0.07s]
02:25:58  13 of 28 START test not_null_stg_payments_payment_id............................ [RUN]
02:25:58  13 of 28 PASS not_null_stg_payments_payment_id.................................. [PASS in 0.07s]
02:25:58  14 of 28 START test unique_stg_payments_payment_id.............................. [RUN]
02:25:58  14 of 28 PASS unique_stg_payments_payment_id.................................... [PASS in 0.07s]
02:25:58  15 of 28 START table model main.customers....................................... [RUN]
02:25:58  15 of 28 OK created table model main.customers.................................. [OK in 0.09s]
02:25:58  16 of 28 START table model main.orders.......................................... [RUN]
02:25:58  16 of 28 OK created table model main.orders..................................... [OK in 0.08s]
02:25:58  17 of 28 START test not_null_customers_customer_id.............................. [RUN]
02:25:58  17 of 28 PASS not_null_customers_customer_id.................................... [PASS in 0.07s]
02:25:58  18 of 28 START test unique_customers_customer_id................................ [RUN]
02:25:58  18 of 28 PASS unique_customers_customer_id...................................... [PASS in 0.07s]
02:25:58  19 of 28 START test accepted_values_orders_status__placed__shipped__completed__return_pending__returned [RUN]
02:25:59  19 of 28 PASS accepted_values_orders_status__placed__shipped__completed__return_pending__returned [PASS in 0.07s]
02:25:59  20 of 28 START test not_null_orders_amount...................................... [RUN]
02:25:59  20 of 28 PASS not_null_orders_amount............................................ [PASS in 0.07s]
02:25:59  21 of 28 START test not_null_orders_bank_transfer_amount........................ [RUN]
02:25:59  21 of 28 PASS not_null_orders_bank_transfer_amount.............................. [PASS in 0.07s]
02:25:59  22 of 28 START test not_null_orders_coupon_amount............................... [RUN]
02:25:59  22 of 28 PASS not_null_orders_coupon_amount..................................... [PASS in 0.07s]
02:25:59  23 of 28 START test not_null_orders_credit_card_amount.......................... [RUN]
02:25:59  23 of 28 PASS not_null_orders_credit_card_amount................................ [PASS in 0.07s]
02:25:59  24 of 28 START test not_null_orders_customer_id................................. [RUN]
02:25:59  24 of 28 PASS not_null_orders_customer_id....................................... [PASS in 0.07s]
02:25:59  25 of 28 START test not_null_orders_gift_card_amount............................ [RUN]
02:25:59  25 of 28 PASS not_null_orders_gift_card_amount.................................. [PASS in 0.07s]
02:25:59  26 of 28 START test not_null_orders_order_id.................................... [RUN]
02:25:59  26 of 28 PASS not_null_orders_order_id.......................................... [PASS in 0.07s]
02:25:59  27 of 28 START test relationships_orders_customer_id__customer_id__ref_customers_ [RUN]
02:25:59  27 of 28 PASS relationships_orders_customer_id__customer_id__ref_customers_..... [PASS in 0.07s]
02:25:59  28 of 28 START test unique_orders_order_id...................................... [RUN]
02:25:59  28 of 28 PASS unique_orders_order_id............................................ [PASS in 0.07s]
02:25:59
02:25:59  Finished running 3 seeds, 3 view models, 20 tests, 2 table models in 2.49s.
02:25:59
02:25:59  Completed successfully
02:25:59
02:25:59  Done. PASS=28 WARN=0 ERROR=0 SKIP=0 TOTAL=28

My gut tells me there are weird race conditions going on there across the threads. I haven't dug in deep yet, but wanted to point this out. This command sometimes works if I'm lucky on multiple threads.
# my config on 16 threads that does NOT work
jaffle_shop:

  target: dev
  outputs:
    dev:
      type: duckdb
      path: 'jaffle_shop.duckdb'
      threads: 16

 ~/De/jaffle_shop_duckdb │ on duckdb !1  dbt build --full-refresh                                        ✔ │ jaffle_shop_duckdb Py │ system Node
02:30:25  Running with dbt=1.0.8
02:30:25  Found 5 models, 20 tests, 0 snapshots, 0 analyses, 165 macros, 0 operations, 3 seed files, 0 sources, 0 exposures, 0 metrics
02:30:25
02:30:26  Concurrency: 16 threads (target='dev')
02:30:26
02:30:26  1 of 28 START seed file main.raw_customers...................................... [RUN]
02:30:26  2 of 28 START seed file main.raw_orders......................................... [RUN]
02:30:26  3 of 28 START seed file main.raw_payments....................................... [RUN]
02:30:26  3 of 28 OK loaded seed file main.raw_payments................................... [CREATE 113 in 0.20s]
02:30:26  1 of 28 OK loaded seed file main.raw_customers.................................. [CREATE 100 in 0.25s]
02:30:26  2 of 28 OK loaded seed file main.raw_orders..................................... [CREATE 99 in 0.30s]
02:30:26  4 of 28 START view model main.stg_payments...................................... [RUN]
02:30:26  5 of 28 START view model main.stg_customers..................................... [RUN]
02:30:26  6 of 28 START view model main.stg_orders........................................ [RUN]
02:30:26  5 of 28 ERROR creating view model main.stg_customers............................ [ERROR in 0.17s]
02:30:26  6 of 28 ERROR creating view model main.stg_orders............................... [ERROR in 0.17s]
02:30:26  7 of 28 SKIP test not_null_stg_customers_customer_id............................ [SKIP]
02:30:26  8 of 28 SKIP test unique_stg_customers_customer_id.............................. [SKIP]
02:30:26  9 of 28 SKIP test accepted_values_stg_orders_status__placed__shipped__completed__return_pending__returned [SKIP]
02:30:26  10 of 28 SKIP test not_null_stg_orders_order_id................................. [SKIP]
02:30:26  11 of 28 SKIP test unique_stg_orders_order_id................................... [SKIP]
02:30:26  4 of 28 OK created view model main.stg_payments................................. [OK in 0.22s]
02:30:26  12 of 28 START test accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card [RUN]
02:30:26  13 of 28 START test not_null_stg_payments_payment_id............................ [RUN]
02:30:26  14 of 28 START test unique_stg_payments_payment_id.............................. [RUN]
02:30:26  13 of 28 PASS not_null_stg_payments_payment_id.................................. [PASS in 0.16s]
02:30:26  12 of 28 PASS accepted_values_stg_payments_payment_method__credit_card__coupon__bank_transfer__gift_card [PASS in 0.22s]
02:30:26  14 of 28 PASS unique_stg_payments_payment_id.................................... [PASS in 0.27s]
02:30:26  15 of 28 SKIP relation main.customers........................................... [SKIP]
02:30:26  16 of 28 SKIP relation main.orders.............................................. [SKIP]
02:30:26  17 of 28 SKIP test not_null_customers_customer_id............................... [SKIP]
02:30:26  18 of 28 SKIP test unique_customers_customer_id................................. [SKIP]
02:30:26  22 of 28 SKIP test not_null_orders_coupon_amount................................ [SKIP]
02:30:26  19 of 28 SKIP test accepted_values_orders_status__placed__shipped__completed__return_pending__returned [SKIP]
02:30:26  20 of 28 SKIP test not_null_orders_amount....................................... [SKIP]
02:30:26  21 of 28 SKIP test not_null_orders_bank_transfer_amount......................... [SKIP]
02:30:26  23 of 28 SKIP test not_null_orders_credit_card_amount........................... [SKIP]
02:30:26  24 of 28 SKIP test not_null_orders_customer_id.................................. [SKIP]
02:30:26  26 of 28 SKIP test not_null_orders_order_id..................................... [SKIP]
02:30:26  27 of 28 SKIP test relationships_orders_customer_id__customer_id__ref_customers_ [SKIP]
02:30:26  28 of 28 SKIP test unique_orders_order_id....................................... [SKIP]
02:30:26  25 of 28 SKIP test not_null_orders_gift_card_amount............................. [SKIP]
02:30:27
02:30:27  Finished running 3 seeds, 3 view models, 20 tests, 2 table models in 1.08s.
02:30:27
02:30:27  Completed with 2 errors and 0 warnings:
02:30:27
02:30:27  Runtime Error in model stg_customers (models/staging/stg_customers.sql)
02:30:27    Catalog Error: Table with name raw_customers does not exist!
02:30:27    Did you mean "stg_customers"?
02:30:27
02:30:27  Runtime Error in model stg_orders (models/staging/stg_orders.sql)
02:30:27    Catalog Error: Table with name raw_orders does not exist!
02:30:27    Did you mean "stg_orders"?
02:30:27
02:30:27  Done. PASS=7 WARN=0 ERROR=2 SKIP=19 TOTAL=28

@jwills thanks for the quick update! I honestly don't know enough about the adapters being able to prevent race conditions.
@dataders may know a pro-tip!
Given this is being addressed at the duckdb level, that's enough for me to know!

Took a pass at what enforcing this would look like here: https://github.com/jwills/dbt-duckdb/compare/master...jwills_require_single_threaded and confirmed that it fails as expected if threads > 1; the error message formatting isn't the prettiest though, there might be a better exception to raise?

@dataders it's a straight-up bug in the Python driver; the CLI version of DuckDB does not have this issue.

@dataders it's a straight-up bug in the Python driver; the CLI version of DuckDB does not have this issue.

phew, that's a relief!

I just pushed dbt-duckdb version 1.1.4 which will throw a runtime exception if you're trying to use multiple threads with the adapter, and it sounds like the DuckDB folks are working on a patch that will fix the underlying issue. Once a version with that patch is released, I will update the adapter to be version-aware and only require the single-threadedness if you are using a version of DuckDB <= 0.4.0.


[FEAT]: Avoid writing to stdout in DeviceManager when verbose is False

Description
Methods of the class DeviceManager in the file device_manager.py use the function print_with_timestamp to print to stdout even though the bool verbose in DeviceManager.__init__ is set to False.
Here is an example output to stdout:
python test.py
2024-10-04 09:52:04.528046+02 - Opening DeviceManager
2024-10-04 09:52:04.528153+02 - Creating Connection to SMU 1
[...]
2024-10-04 10:08:33.820904+02 - Closing Connections to Devices
2024-10-04 10:08:33.821155+02 - Closing Connection to SMU 1
2024-10-04 10:08:33.822089+02 - DeviceManager Closed

Output to stdout is annoying, if your scripts are intended to be directly piped into a text file (as common on Linux) or if you need control over your terminal (e.g., you want to show progress bars).
From my point of view, the best option would be to use the logging module of Python and let the user of the library configure how and if she/he wants debugging output. Another option would be to at least don't call print_with_timestamp if verbose was set to False.
Additional Information
No response

Related to #316

The plan is to switch over to the logging module and let users specify what level of logs they want for both stdout and the saved log file.


Accessing current user roles

Is your feature request related to a problem? Please describe.
The developer of a plugin would like to show/hide parts of the plugin based on the current user's roles. This is not possible at the moment as we are not passing the user information to the field plugin.
Describe the solution you'd like
useFieldPlugin() could expose the current user's roles and id. However we need to check if this can be exploited in any way.
Additional context
This request originates from a Discord thread.

We are building and maintaining bunch of plugins for our in house development "site builder" build with Storyblok.
Our plugins become more and more complex, so we need to somehow be able to use the roles/permissions systems, to hide, block elements in our plugins for specific users.
For example lets say we have a plugin that will show different options to select based on the user roles. For that to work, we need to somehow know what role or single permissions he had assigned in storyblok. (for example if he can publish stories, we show different options to select in our plugin.

Resend your request internally, so we can consider this for development sooner. cc @demetriusfeijoo

In the latest package release, the userId was added back:

Release - storyblok/field-plugin - 1.4.2

cc @marckraw. Should we keep it open for the roles, or can you make the proper request with the user ID to grab that information?

@Dawntraoz amaaaaaazing! will test it right away today 🥇

Thanks for checking you are the best! 🎉
Good news from our side also @marckraw, in the plugin we are building now we will need to get the roles too, so we will take the time to make it available for the SDK 🙏 It's coming 💃🏻

@Dawntraoz that is amazing! Looking forward to it :)
what information from the overall roles situation in storyblok you would like to expose there ? the role name, or all the information about permissions, field_permissions ?
Was working on getting the roles for the user with management api, but it involved more back and forth than I expected :P

Right now, having a userId I know who is seeing the plugin, but to get his roles i have to do a request for the space and space roles
then I need to check if he is the owner of the space or collaborator (as i checked out, owner of the space is not on the collaborators list so i have to look for his roles information in different place)
if the user is the collaborator, i have to check if he has multi role or single and then merge fields from both roles, from space_roles endpoint.

Here is more or less what I do in the plugin to get all this info:
const determinePermission = async (args: DeterminePermissionArgs): Promise<Permission | Permission[]> => {
        const {plugin, store} = args;

        if (store.apis?.managementApi) {
            const currentSpaceDetails = await store.apis.managementApi.get(`/spaces/317084/`)
            const spaceRoles = currentSpaceDetails.data.space.space_roles

            // 1. check if the user is the owner of the space - which mean he has admin permissions
            const isOwner = currentSpaceDetails.data.space.owner.id === plugin?.data?.userId
            if(isOwner) {
                // If its owner, we return the role of the space, which is the role of the owner I think..
                return {
                    role: currentSpaceDetails.data.space.role,
                    permissions: null,
                    field_permissions: null,
                    space_role_ids: null,
                    space_roles: null
                }
            }

            // If it's not owner, we check the collaborators
            const userRole = currentSpaceDetails
                .data
                .space
                .collaborators
                .find((collaborator: any) => collaborator.user.id === plugin?.data?.userId)

            if(userRole) {
                // We found the user in the collaborators
                // Now we need to check what exact role he has
                // if its multi or single or what
                if(userRole.role === "multi") {
                    const userSpaceRoles = spaceRoles.filter((spaceRole: any) => userRole.space_role_ids.includes(spaceRole.id))

                    const mergePermissions = userSpaceRoles.reduce((acc: string[], role: any) => [...acc, ...role.permissions], [])
                    const mergeFieldPermissions = userSpaceRoles.reduce((acc: string[], role: any) => [...acc, ...role.field_permissions], [])
                    return {
                        role: "multi",
                        space_roles: userSpaceRoles,
                        permissions: mergePermissions,
                        field_permissions: mergeFieldPermissions,
                        space_role_ids: userRole.space_role_ids
                    }
                } else {
                    if(userRole.space_role_id) {
                        const userSpaceRole = spaceRoles.find((spaceRole: any) => userRole.space_role_id === spaceRole.id)
return {
                        role: userRole.role,
                            permissions: userSpaceRole.permissions,
                            field_permissions: userSpaceRole.field_permissions,
                            space_role_ids: [userRole.space_role_id],
                            space_roles: userSpaceRole
                        }
                    } else {
                        return {
                            role: userRole.role,
                            permissions: null,
                            field_permissions: null,
                            space_role_ids: null,
                            space_roles: null
                        }
                    }
                }
            } else {
                return {
                    role: null,
                    permissions: null,
                    field_permissions: null,
                    space_role_ids: null,
                    space_roles: null
                }
            }
          }
          return {
            role: null,
            permissions: null,
            field_permissions: null,
            space_role_ids: null,
            space_roles: null
        }
    }

At least that was my flow, but for sure i'm missing something :D
Anyway, would be nice to know, what is your idea of what will you exposed, so we can prepare ourselves accordingly :)


[Task]: Update Omnibar

Is there an existing issue for this?

[X] I have searched the existing issues

SubTasks
Omnibar uses Gitbook API to trigger the search. Once the documentation is moved to Docusaurus, the API integration should point to the new hosting platform. Please refer to the slack discussion for more details.

@mohanarpit - I've assigned it to you for now.

[ ] Navigate to this location Displaying Data (Read) > Transforming Data > click on any link under the transforming section
page not found error is displaying is this expected?

@Richarex - The links are working. Could you please record a loom video and share it?

@Richarex - The links are working. Could you please record a loom video and share it?

@jnikhila it started working yesterday they were not working.

@Richarex - If you face the same issue again, please record a loom video and share.

@akash-codemonk what are your insights on this

[x]  Navigate to this location Displaying Data (Read) > Transforming Data > click on any link under the transforming section
page not found error is displaying is this expected?

Have fixed the link

[ ]  Under Troubleshooting section the 5th link Hint Messages when we click on the link it takes the user to the github link is it appropriate to show the end user the github link?

Not a bug in the omnibar as the link works the same on docs site https://docs.appsmith.com/help-and-support/troubleshooting-guide/
@Richarex

This is working fine on release.