npm root -g should be the correct global node_module path?

Hi, I found that the result from npm root -g should be the correct path. However sometimes global-modules will find the wrong one when we use nvm to manage our node versions.
Do you have any ideas?

Hi @lcxfs1991, I'm also using nvm and I get the same path when I do npm root -g and console.log(require('global-modules')).
Do you have any code examples that show you are getting an error or different results? Also, if you could provide details about the OS, node version, and npm version, it'll help us determine if there is a bug or not.

Hello,
I have the same issue when using https://github.com/ekalinin/nodeenv on Windows 10.
> node --version
v8.9.4

> npm --version
5.6.0

> npm root -g
C:\test-project\.env\Scripts\node_modules

> where npm
C:\test-project\.env\Scripts\npm.cmd

> nodejs
> require('global-modules');
'C:\\Users\\<MYUSER>\\AppData\\Roaming\\npm\\node_modules'

@axnsan12 I don't know anything about nodeenv but this module uses global-prefix which will fall back to using which to find the npm path. which will use the environment variable $PATH to search for npm. If nodeenv isn't setting $PATH correctly, then which won't be able to find npm and global-prefix will fallback to the path you see.

@doowb which doesn't exist on Windows (without cygwin at least). You should be using where. I coincidentally also have cygwin installed, but you're right, nodeenv on Windows does not set the cygwin $PATH, only the windows %PATH.
Is there any reason you're not just running npm root -g?

@axnsan12 will you run the following:
> nodejs
> console.log(process.env.PATH);

Sure, here it is:
C:\test-project.env\Scripts;C:\Program Files\Far Manager\ConEmu\Scripts;C:\Program Files\Far Manager;C:\Program Files\Far Manager\ConEmu;C:\Program Files\Docker\Docker\Resources\bin;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\ProgramData\Oracle\Java\javapath;C:\Python36\Scripts;C:\Python36;C:\Python27\Scripts;C:\Python27;C:\bin\imagemagick;C:\Program Files\MongoDB\Server\3.4\bin;C:\cygwin64\bin;C:\Program Files (x86)\PuTTY;C:\Program Files\Git\cmd;C:\bin;C:\Android\sdk\platform-tools;C:\Android\sdk\tools;C:\Users\axnsan\Application Data\npm;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\ProgramData\chocolatey\bin;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\OpenVPN\bin;C:\Program Files\dotnet;C:\Program Files (x86)\IDA 6.8;C:\Program Files\Calibre2;C:\Windows\System32;C:\Program Files (x86)\Skype\Phone;C:\Go\bin;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\nodejs\;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Ruby24-x64\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Program Files\OpenVPN\bin;C:\Program Files (x86)\PuTTY;C:\Program Files\Git\cmd;C:\Python27\Scripts;C:\Python27;C:\bin;C:\Android\sdk\platform-tools;C:\Android\sdk\tools;C:\Program Files\nodejs\;C:\Users\axnsan\Application Data\npm;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Users\axnsan\AppData\Local\Microsoft\WindowsApps;C:\texlive\2016\bin\win32;C:\Program Files (x86)\Diffuse;C:\Users\axnsan\AppData\Roaming\npm;C:\Users\axnsan\AppData\Local\GitHubDesktop\bin

Thanks, I don't have access to an environment setup like yours and that's why I'm asking for this information.
I might have to look into this more, but the main logic is in global-prefix. The npm path is only used to check for builtin or global config files that may contain the prefix property. If that's not found, then it falls back to windows logic that looks to see if process.env.APPDATA is set and uses that (this must be the case in your situation). This was added in this PR to address when npm is installed using npm i -g npm.
Maybe the correct way is to check if the prefix exists after building the APPDATA version and using process.execPath if that path doesn't exist. I think this will still be faster than executing npm root -g (add still work when npm is in APPDATA).
If you could go to global-prefix and open an issue or do a PR with changes for handling this situation so we can discuss it more there, I'd appreciate it.

Seems like there is a similar issue for macOS users who follow these official instructions:
https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally#manually-change-npms-default-directory
Running npm root -g gives /Users/myUsername/.npm-global/lib/node_modules, which does not match the result of global-modules. Feels like the package needs fixing.

$ echo $PWD
/data/bs
$ npm root -g
/home/me/.npm-global/lib/node_modules
$ node
> require("global-modules")
/data/bs/~/.npm-global/lib/node_modules

Seriously?
It appends a path begining with ~ to the current directory?
How do you guys manage to not expand ~?


Could you provide more generalist performances of cogvlm on benmark datasets like GQA, SCI-QA and MMVet, etc?

Feature request  / 功能建议
Could you provide more generalist performances of cogvlm on benmark datasets like GQA, SCI-QA and MMVet, etc?
Motivation / 动机
No
Your contribution / 您的贡献
No

Hi, you can find the results in the paper and repo.


[scan] should_zip_build_products sets SCAN_ZIP_BUILD_PRODUCTS_PATH in lane context

Fixes #13108
Problem
The path generated by scan's should_zip_build_products was not nicely available for anybody to use.
Solution
Now it is available via SCAN_ZIP_BUILD_PRODUCTS_PATH in lane context

(I like your PR template)

@janpio Reworked this to use Scan.cache instead which felt a little bit better 🙃

Is this cache thing a pattern we use more often?


Document RosInertialUnit Axes Switch

Since it took me quite some time to find the answer to https://stackoverflow.com/questions/56074321/quaternion-calculation-in-rosinertialunit-cpp-of-webots-ros-default-controller I think it is good to document it.

test me

Build Passed :ok_hand:
You can safely merge 'enhancement-ros-inertial-unit' into 'revision'.

:+1:


docs: collapse package-related reference pages into a single one

Where did you see the issue in our documentation?
https://docs.kurtosis.com/concepts-reference/packages
Issue description
Right now, to learn about Kurtosis' powerful composability and packaging system, a user needs to read and understand the following docs:

https://docs.kurtosis.com/concepts-reference/packages
https://docs.kurtosis.com/concepts-reference/locators
https://docs.kurtosis.com/concepts-reference/kurtosis-yml

I'd like to have a single page that I can refer to to understand all the concepts AND how they are related and used to make Kurtosis packages composable and shareable. I totally get that these 3 topics are distinct/separate but for a user trying to
Potential solution (not comprehensive nor definitive):
We publish a Tutorial for users to learn how to make their packages composable and shareable.

Putting this in the front burner because this is important for new users who are picking up Kurtosis and learning how to use it and this feature is a major value proposition that we've been marketing


Specify signature algorithm where needed.

Depends on:

https://github.com/world-federation-of-advertisers/cross-media-measurement-api/pull/177
https://github.com/world-federation-of-advertisers/common-jvm/pull/218

This change is


it should be nice to have an UI, don't you think ?

sth like this

and as well the possibility to index documents, and input q and receive answers from those documents

Moved to discussion: https://github.com/abacaj/replit-3B-inference/discussions/12


STEP1_CalcDLTparameters

Is this error occur because of the images are not detected by multidic?

These are the images used for stereo calibration object.
Can someone help me to solve the issue?

These are the images used for stereo calibration object.
Can someone help me to solve the issue?

It has nothing to do with the images, only with the image file names. This line in the code tries to extract the camera number from the file name. You have to make sure you name your image files according to the convention explained in the instruction manual. Can you share here how you named your image files?

It has nothing to do with the images, only with the image file names. This line in the code tries to extract the camera number from the file name. You have to make sure you name your image files according to the convention explained in the instruction manual. Can you share here how you named your image files?

Can you post here what does the variable imagePaths contain after you select the images?

Can you post here what does the variable imagePaths contain after you select the images?

I had solved this error by changing the file name.

I had solved this error by changing the file name.


Fix the error order of client retry

Fix the error order of client retry, and throw exception when not retrying.

Thanks for fixing this!


Fixes for container restarts (Linux kernel headers mounts + UID shifting)

Two fixes related to container restarts (docker stop + docker start):

Fix multiple UID shifts on special mounts when restarting a container (causes the source directory to eventually be assigned to the wrong owner)
Fix Linux header mounts when restarting a container

See the commit messages for more details. The first problem is quite easy to run into when using docker-compose since docker-compose up + CTRL-C + docker-compose up will restart a container.
All tests OK (make test-sysbox-shiftuid).

I've updated the PR with the suggestions, I have also split the naming/style changes into  a separate commit so it's easier to see the actual fix.

Merged, thanks Joan!


Replace nil with nixd for Nix LSP

https://discourse.nixos.org/t/nixd-nix-language-server/28910

[ ] Make sure the experience actually good rather than nil
[ ] Bump all dependencies in CI except ci-nix

I don't understand benefit of nixd for now


Add: django-content-settings

Project Information

Project Name: django-content-settings
Project URL: https://github.com/occipital/django-content-settings
Description: offering users the ability to easily create and manage editable variables directly from the Django admin panel. What sets this module apart is its ability to handle variables of any type without restricting their complexity. Thanks to an integrated caching system, these variables can be used efficiently in code, irrespective of their complexity.

Criteria
Please answer the following questions about the project you are submitting. This will help us evaluate if the project should be included in the Awesome Django list.

Is the project new?

[x] Yes
[ ] No

How long has the project been maintained?
for more than a year, but for a long time it was part of an internal project, and recently we decided to move it in open source as it becomes part of more and more projects

How many releases has it had if it's a library or package?
_ As an independent open source projects, it doesn't have many releases yet_

Are you the author or are you submitting the project on behalf of a company?

[x] I am the author
[x] I am submitting on behalf of a company
[ ] Other (please specify)

What makes it awesome?
the way you define settings, the flexibility you have to customize settings to your needs, admin panel for easy and flexible catalog (which includes changing custom changing history), massive changing settings in one transaction, advanced caching system, typing version, and the most important it is very simple

Additional Information
Please provide any additional information that you believe is relevant to the project or its evaluation for inclusion in the Awesome Django list. This might include information about the project's documentation, test coverage, community support, or any unique features that set it apart from other Django projects.
I think those questions have been answered in the fifth question. full documentation link you can find here https://django-content-settings.readthedocs.io/en/latest/. 89% test coverage

I add test coverage.

Thank you for the submission. We'll run this through the newsletter and see if it picks up some steam.

0.9 version released with a lot of improvements and also a "short" video with dive into
https://youtu.be/RNYmvv_G5zs?si=dz9f2RGtrldFNYKq

Thank you for your submission and patience. I approved it because I do think it could be really handy for a few niche cases. Well done!

@jefftriplett thanks again for approving that. I just want you guys to know I did some significant progress since the first submit.


Use query feeds with inoreader

Newsboat version (copy from newsboat -v): newsboat 2.10.2
Hello.
I tried to use query feeds with inoreader (that is, specifying a query feed based on a tag that exists in my inoreader subscription) but this does not seem to work. Note that the file "urls" is parsed and checked correctly.
So, if that's not too much work, could this feature be implemented?
Thank you very much.

Hi! Sorry about the delay. I can't tell offhand how hard this will be to implement, but I'll merge such a feature if someone is willing to implement it.


EVA-1076 Changes for generation of evidence strings for batch 18.02

Support for 'measureSet' nested under 'genotypeSet' during evidence string generation.
Logging added to report progress on the evidence string generation every 1000 records.

Coverage decreased (-0.4%) to 74.635% when pulling 6126f819f96b033831022a3d431191da0b9881a9 on feature/batch-18.02 into 99f3494115083c569ef7855637a59e6467561476 on master.


offset when using tab bar

Where can I customize toast position? this will be helpful when using tab bars, because toast shows over tab bar. Thanks

Of cource. You can see bottomOffsetPortrait and bottomOffsetLandscape from https://github.com/devxoul/Toaster#appearance

Oh, thanks, can't believe I didn't understand at first


Integrate intersection function for polys

I can
So as not to keep you waiting while I try to design something else, this sympy solve function should work fine, albeit a little slow. It should return two lists of solutions: one with rational values and another with decimal approximations.
n and m are the integers that identify the polynomials S_n and S_m

def Meets(n, m):
    if n < m:
        n, m = m, n
    p = Spread(n + m)*Spread(n - m)
    rational, approximate = [], []
    for solution in solve(p, Symbol('s')):
        if solution.is_rational: rational.append(solution)
        else: approximate.append(N(solution))
    return rational, approximate

Originally posted by @rfede in https://github.com/geometor/polynumbers/discussions/1#discussioncomment-3067004

Hi Phy! Just keep in mind that according to Wildberger's rational trigonometry, approximate values should be interpreted to mean that the curves can get very close but never touch in that particular place, despite the illusion of crossing each other. That's why most of the time, when evaluating the polynomials at those points, the results are not identical.

Hi @rfede ~
Glad you are seeing the issues I am posting. I would like to track our discussion on particular tasks here so this is a good start.
I think we can stick with the rational results for the first round. It should provide a lot of interesting results!

I asked a question on the original thread about the technique you are using for the meets:
p = Spread(n + m)*Spread(n - m)

Not even sure I understand it :)
Why do that over doing this:
p = Spread(n) - Spread(m)

?

@rfede

These points fall through the is_algebraic filter.
def meets(p1, p2):
    meet_pts = []
    p_sub = p1 - p2
    f = sp.lambdify(x, p1.expr)
    print('        sub: ', p_sub)
    for root in p_sub.all_roots():
        root_x = root.simplify()
        if root_x.is_algebraic:
            root_y = sp.simplify(f(root_x))
            print(f'        x: {root_x}')
            print(f'        y: {root_y}')
            print()
            pt = point(root_x, root_y)
            #  print(pt)
            pt = add_point(pt)
            meet_pts.append(pt)
        else:
            print(f'        x: {root_x}')
            print(f'        NOT ALGEBRAIC')
            print(f'        x: {float(root_x)}')
            print(f'        y: {f(float(root_x))}')
            print()
    return meet_pts


[BUG] No way to tell which button in button map is "focused" when using KEYPAD indev

Right now you can navigate a button map (or for example, the keyboard object) with the KEYPAD input device. The problem is that you can't tell which button in the button map (or keyboard) is currently going to be sent when you send LV_GROUP_KEY_ENTER - that is, no focus is shown.
There should be something similar to lv_group_set_style_mod_cb for the button map object to show which button is currently focused.

Hi,
I tested it with the lv_test_group_1() When the keyboard is in focus you can go to the next button with LV_GROUP_KEY_LEFT/RIGHT. The selected key will go to pressed state.

Woops!
I was working with a modified mono theme and accidentally set the pressed and released state to the same style 😿
Sorry about that.

No problem :)


Improve Logging

The current implementation of logging is documented in this wiki page. We should review and improve that implementation. The following are the set of changes that we came up with:

[x] Cleanup the attributes that we are logging with each requests.
[x] Add a mechanism to figure out how users end up in a chaise page (the correct use of referral).

I am going to close this issue since the first set of changes that are described are done. We might want to turn the #1740 into an epic. That one includes more requested changes.


run make gen

Please provide a description of this PR:
Run make gen with latest image

@jacob-delgado: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

lint_istio
986dac24959ae21584be5521501730e83023770b
link
true
/test lint

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.


2.3.0正常，新版本会改变button的frame

给view添加badge 整个view不见了，打印图层frame全都被改变了

V3.1.0 has been released, this issue has been fixed, thanks for feedback


Build using CMake with dynamic linking and shared object file

I am working on a project where I would like to compile my Rust code into a C++ callable library with a few functions and shared types, structs, and enums. I am referencing this example here: https://github.com/XiangpengHao/cxx-cmake-example but I encountered some issues. Basically it printed something like symbol not found and gave me lots of unreadable object code.
I also checked out the cxx.rs website and it said that

Use your C++ linker. In this case, you first need to use rustc and/or cargo to generate a single Rust staticlib target and pass that into your foreign linker invocation.

In this case, I wonder is it possible to build link a dylib Rust target with my existing C++ code using cxx?

I have a similar use case, but something I'd like to report is that rust functions that are not called in C++ code seams to be generated into a namespace whose prefix is  cxxbridge. Only if a rust function is referenced by the C++ code the symbol appears to be correct (as you can verify with nm and c++filt.
Is that intended? Is there an option to disable this behaviour and expose all symbols?
Thanks!

Hello @OscarTHZhang,
It might not be the most elegant approach (I'm sure someone could improve it), however if you need a working example to dissect I have a toy project here:
https://github.com/david-cattermole/cxx-demo-example
The approach has been applied to this non-toy project:
https://github.com/david-cattermole/OpenCompGraph
My examples compile the rust code as crate_type = ["staticlib"], and I then use CMake add_library(${target_lib} SHARED ${source_files}) to create the dynamic library using the native C++ compiler.
So far I have been able to call from Rust to C++ and Rust to C++, and sharing structs across the boundary with no unsafe code at all. I also link to many other C++ and C libraries and link all of them together with the native C++ compiler and linker.


Check more details of subscription state - active subscription with trial period

It would be nice to check if the subscription is "real" or in the "trial period"

Good to know. Thank you, i just suggested it because i saw it in another library. Maybe that used REST Api aswell. Feel free to close this and tyvm for your work!


The updater code for telegram bot

possibly It is the token for telegram bot that is required for the -wtb to work on
So what one can do is that either they can put the token already for the bot to work on
else the option is of cli
here the code for updater is showing deprecated
maybe one need to recode the whole code of update or part of the code can have some changes
It might be insecure for the user to insert the token number at run time

For Window user:
If someone want token to run that command then He/she can go to the link given below:
https://www.siteguarding.com/en/how-to-get-telegram-bot-api-token
By using the process given in the blog ,you can access your token But remember never share it with anyone. Otherwise It can be used by anyone to control your bot.

@shvamabps everyone has his/her own telegram-bot token. The idea of -wtb was to enter the token everytime whenever we run that command.

In that case the user has to always keep his token with himself. It may be annoying not at once but when done multiple time.

@shvamabps we can do that once user enter the token, it will update that token value and then whenever we run -wtb command the software will not need to enter token every time, but remember software should always ask for token because if a user want to enter a new token then that option will help.

@rpotter12  we can provide that option too
If the user want to change the token / add a new one.

@shvamabps how is it going?

Would you want some help on this one? @xandao6 @rpotter12
My approach will be to save the TOKEN once entered into a local pickle file and load from it the next time the user wants to access the bot. The user will be prompted each time on whether they want to use the existing token or reenter the TOKEN.

You can work on this @chttrjeankr


Resiliency: Action based on response HTTP status code for retry

Document the actions that can be performed on retries based on the HTTP response codes as per this proposal https://github.com/dapr/dapr/pull/7132

this was addressed in #4363


Quickstart Webpack Compile Error

Steps to reproduce
Follow the guide at https://stasson.github.io/vue-mdc-adapter/#/docs/getting-started
# Quick Start
## Vue CLI Webpack
npm install -g vue-cli

vue init stasson/vue-mdc-adapter-webpack my-project

cd my-project

npm install

npm run dev

Gets the following Error:
ERROR  Failed to compile with 1 errors
error  in ./src/theme.scss
Module build failed:
@include mdc-states(secondary);
^
No mixin named mdc-states
Backtrace:
node_modules/vue-mdc-adapter/dist/button/styles.scss:7
in /home/acorer/repos/vda-quickstart-webpack/node_modules/vue-mdc-adapter/dist/button/styles.scss (line 7, column 14)
@ ./src/theme.scss 4:14-191 13:3-17:5 14:22-199
@ ./src/main.js
@ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/main.js

Probable duplicate of #237

Looks like updating material-components-web to 0.29.0 solved the issue.
However shouldn't this be applied to the template package.json itself?
The quick start needs to be working.

Yup I agree. Actually 0.30 is the newest MDC web version

mmmh,  guess I need to find a way to properly get material-web-components installed

OS: Fedora 27
I just tried the reproduce steps listed above and it installs and compiles correctly.
Has this issue gone away with more recent versions of the stasson/vue-mdc-adapter-webpack template?


Best approach for creating a relationship with linked values

Hey,
So I've been doing som research regarding creating a model which has got a relationship with another model and I was trying to find a way in which I could link the values between these models.
For example if I have a model which is called Building and I now create a second model called Floor which has a contains relationship with Building and then create another model called Room which has got sensors like temperature, humidity, etc. and also has a contains relationship with Floor.
Is it possible for me to then record these temperature values in room and let's say for example the temeperature in the room is too high so I want to turn on the heating, is there anyway for me to send this data to floor as well and have it reflect the change but not have the change reflected in building. Meaning I want the temperature data for floor and room to be the same so it reflects the same changes but I do not want to see any change in the value of the building.
How would I be able to implement this example?

Thanks @jrdouceur for your help! I am using the Azure Digital Twins service so I was wondering if there was any possibility to do this on this service. I have been through the documentation and have not really found anything regarding this. Do you know if theres a possibility of establishing this?

I'm afraid I know very little about Azure Digital Twins; my expertise is in the DTDL language.  I looked around a bit and found this site, which might get you one step closer to an answer: https://azure.microsoft.com/en-us/support/

Thanks @jrdouceur for your help, I shall look into it and see what can be done


Is there a DNS-like service?

I've really enjoyed how the SDNs (at least the ones i've used) in kubernetes provide DNS services.
My understand based on reading the example where the test is pinging an IP (https://github.com/slackhq/nebula/tree/master/examples/quickstart-vagrant#testing-within-the-vagrant-env) that DNS is not provided.
Or am I mistaken and I can refer to a host by name (e.g. in the quick start, can i run ping lighthouse1 from the laptop box?

There is a built in DNS function that should work pretty well. It runs on the lighthouse and is enabled via the serve_dns: true setting within the configuration file. When this is enabled, you can query the lighthouse on :53 for nebula names, and it will return nebula IPs.
You can also send TXT queries referencing nebula IPs to the lighthouse and it will return the nebula certificate that lighthouse sees for a particular IP.


Data preprocessing

This PR update the Dataset definition, in the sense that labels are now called labels instead of classes, for a sake of clarity. In addition to this detail, the labels are now stored as a list of dictionaries (one element per labels), instead of a dictionary of dictionaries where the label IDs played the role of dictionary keys. So do the image representation.
This behavior actually fits those of Mapillary configuration file config.json, as well as those of config_aggregate.json.
Furthermore, sample data used in tests (stored in tests/data/) has been updated according to these changes.
From now, there is no reason to distinguish between datasets when creating data generators (some additional commits will certainly be necessary in addition to the PR #47 , not yet merged at this time).
Preprocessed versions of images should be generated again with these new modifications. :warning: In the case of aggregated datasets, the label IDs are not original IDs any more, but they are reindexed from 0 to N-1, with N being the number of aggregated labels.

Looks good for me.


chore: docker

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 2

See the complete overview on Codacy

Hi, @marciovsena is this issue still valid yet?


Add parcel to bundlers/loaders comparison table

#2312

I think it makes sense to add versions (major ones) of the software used at least for webpack because the resulsts there could be for webpack v3...?

@FadySamirSadek Friendly ping.


PALs

Are the https://fairdom.github.io/pals.html still in operation? It looks a bit dead.

Yes not active but needs to be there :)


Many-To-Many relationship tables are required to have one non-relational field

Describe the Bug
Many-To-Many relationship tables are required to have one non-relational field
To Reproduce
model Capability {
  id        Int    @id @default(autoincrement())
  name String
  ownerId   Int?   @unique
  owner           User?             @relation(fields: [ownerId], references: [id])
  CapabilityAdmin CapabilityAdmin[]
  @@map(name: "capabilities")
}

model CapabilityAdmin {
  capabilityId Int
  userId       Int
  comments     String? // THIS FIELD IS REQUIRED

  capability Capability @relation(fields: [capabilityId], references: [id], onDelete: Cascade)
  user       User       @relation(fields: [userId], references: [id], onDelete: Cascade)

  @@id([userId, capabilityId])
  @@map(name: "capability_admins")
}

model User {
  id          Int     @id @default(autoincrement())
  name        String  @db.VarChar(255)
  CapabilityAdmin     CapabilityAdmin[]
  @@map("users")
}

In this model the "Comments" field or some other equivalent field is required on the many-to-many relationship table. If not, when the API is run, an error message displays that at least one argument is needed for that type.
Expected Behavior
The generator works and the API can be run without the extraneous field
Environment (please complete the following information):

OS: Linux, Pop-OS 22.04 LTS
Node (e.g. 15.8.0): node v 18.17.1, yarn version 1.22
typegraphql-prisma version 0.27.0
Prisma version [e.g. 2.18.0] 4.16.2
TypeScript version (e.g. 4.2.2) 5.1.6

Additional Context
Add any other context about the problem here.

Duplicate of #19 🔒


Darwin stdenv tweaks

Motivation for this change
Also some miscellaneous tweaks.

Success on x86_64-linux (full log)
Attempted: libuv
The following builds were skipped because they don't evaluate on x86_64-linux: darwin.security_tool
Partial log (click to expand)
 /nix/store/l816bx8lgm0jwb7hzbc105h0fv097zry-coreutils-8.29/bin/install -c -m 644 include/uv/errno.h include/uv/threadpool.h include/uv/version.h include/uv/unix.h include/uv/linux.h '/nix/store/1vjis6fd0n2v6l03w6nc4lllqd1qwb6s-libuv-1.21.0/include/uv'
make[1]: Leaving directory '/build/source'
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/1vjis6fd0n2v6l03w6nc4lllqd1qwb6s-libuv-1.21.0
shrinking /nix/store/1vjis6fd0n2v6l03w6nc4lllqd1qwb6s-libuv-1.21.0/lib/libuv.so.1.0.0
strip is /nix/store/90vmpr41dzsx350k5argycaf693hnl1l-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/1vjis6fd0n2v6l03w6nc4lllqd1qwb6s-libuv-1.21.0/lib
patching script interpreter paths in /nix/store/1vjis6fd0n2v6l03w6nc4lllqd1qwb6s-libuv-1.21.0
checking for references to /build in /nix/store/1vjis6fd0n2v6l03w6nc4lllqd1qwb6s-libuv-1.21.0...
/nix/store/1vjis6fd0n2v6l03w6nc4lllqd1qwb6s-libuv-1.21.0

Failure on aarch64-linux (full log)
Attempted: libuv
The following builds were skipped because they don't evaluate on aarch64-linux: darwin.security_tool
Partial log (click to expand)
FAIL: test/run-tests
======================================================
1 of 1 test failed
Please report to https://github.com/libuv/libuv/issues
======================================================
make[1]: *** [Makefile:4847: check-TESTS] Error 1
make[1]: Leaving directory '/build/source'
make: *** [Makefile:5107: check-am] Error 2
builder for '/nix/store/v1b4kqsrx7zhsizd03ghshgry1zkcz8w-libuv-1.21.0.drv' failed with exit code 2
error: build of '/nix/store/v1b4kqsrx7zhsizd03ghshgry1zkcz8w-libuv-1.21.0.drv' failed

Failure on x86_64-darwin (full log)
Attempted: darwin.security_tool, libuv
Partial log (click to expand)
cannot build derivation '/nix/store/hhvr1x2ilm2i2j3q1pag88z3csm44v0z-libsecurity_mds-osx-10.7.5.drv': 16 dependencies couldn't be built
cannot build derivation '/nix/store/zyhyl20f67l3g062yb9xhkcypw7r2lkm-libsecurity_pkcs12-osx-10.7.5.drv': 13 dependencies couldn't be built
cannot build derivation '/nix/store/ar3pmrxf6i0xd7pr0x1j96i0f06a76dd-libsecurity_sd_cspdl-osx-10.7.5.drv': 15 dependencies couldn't be built
cannot build derivation '/nix/store/cgxcliwq2a7a4sa2cfis9d95fl692l17-libsecurity_keychain-osx-10.7.5.drv': 21 dependencies couldn't be built
cannot build derivation '/nix/store/zq2gag9xmz5vwd5jv7f4dirfhr56il2g-libsecurity_apple_cspdl-osx-10.7.5.drv': 16 dependencies couldn't be built
cannot build derivation '/nix/store/fv3ddr9zkkmwjq79b7s8w32ppjzjimg3-libsecurity_apple_file_dl-osx-10.7.5.drv': 17 dependencies couldn't be built
cannot build derivation '/nix/store/cbiciadgqn2xgiaa8jf54ldigar6ydcr-libsecurity_apple_x509_cl-osx-10.7.5.drv': 18 dependencies couldn't be built
cannot build derivation '/nix/store/pb2n09s9syvcn9b9cs4qkdgxw6j49826-libsecurity_apple_x509_tp-osx-10.7.5.drv': 19 dependencies couldn't be built
cannot build derivation '/nix/store/6a0kbf9xacm2m0cnhdpmvpv6dl978s8d-SecurityTool-55115.drv': 31 dependencies couldn't be built
error: build of '/nix/store/6a0kbf9xacm2m0cnhdpmvpv6dl978s8d-SecurityTool-55115.drv', '/nix/store/gwv6x24z9kz6g76gyrilv1cb05ml2pxm-libuv-1.21.0.drv' failed

@matthewbauer any number of this reduction to get an impression?

@periklis Sorry my title was a little misleading - these aren't reducing anything currently just preventing the SDK from getting in some places where it shouldn't be.

Success on x86_64-linux (full log)
Attempted: libuv
The following builds were skipped because they don't evaluate on x86_64-linux: darwin.security_tool
Partial log (click to expand)

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

these paths will be fetched (0.08 MiB download, 0.29 MiB unpacked):
  /nix/store/51dyby08yrm0kfbhw6lrlxzn35l3m3fa-libuv-1.21.0
copying path '/nix/store/51dyby08yrm0kfbhw6lrlxzn35l3m3fa-libuv-1.21.0' from 'https://cache.nixos.org'...
/nix/store/51dyby08yrm0kfbhw6lrlxzn35l3m3fa-libuv-1.21.0

Success on aarch64-linux (full log)
Attempted: libuv
The following builds were skipped because they don't evaluate on aarch64-linux: darwin.security_tool
Partial log (click to expand)
 /nix/store/lqnf05qdjshwijs9dr3klzk31y4qkj2g-coreutils-8.29/bin/install -c -m 644 include/uv/errno.h include/uv/threadpool.h include/uv/version.h include/uv/unix.h include/uv/linux.h '/nix/store/82piicdlx5lgxibhqs2djd2awv3iq7wy-libuv-1.21.0/include/uv'
make[1]: Leaving directory '/build/source'
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/82piicdlx5lgxibhqs2djd2awv3iq7wy-libuv-1.21.0
shrinking /nix/store/82piicdlx5lgxibhqs2djd2awv3iq7wy-libuv-1.21.0/lib/libuv.so.1.0.0
strip is /nix/store/7iyn7gn33i7xxjgmwf25k20246y6nd9d-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/82piicdlx5lgxibhqs2djd2awv3iq7wy-libuv-1.21.0/lib
patching script interpreter paths in /nix/store/82piicdlx5lgxibhqs2djd2awv3iq7wy-libuv-1.21.0
checking for references to /build in /nix/store/82piicdlx5lgxibhqs2djd2awv3iq7wy-libuv-1.21.0...
/nix/store/82piicdlx5lgxibhqs2djd2awv3iq7wy-libuv-1.21.0

Failure on x86_64-darwin (full log)
Attempted: darwin.security_tool, libuv
Partial log (click to expand)
cannot build derivation '/nix/store/c7n1fwjrpc7f173zq913kcn4z4q3njij-libsecurity_mds-osx-10.7.5.drv': 16 dependencies couldn't be built
cannot build derivation '/nix/store/q8yv10l39pfxiqchlmmir8q93hwivg8r-libsecurity_pkcs12-osx-10.7.5.drv': 13 dependencies couldn't be built
cannot build derivation '/nix/store/liqh1ic9i5prp70n6q8n9i9dsfjdi87l-libsecurity_sd_cspdl-osx-10.7.5.drv': 15 dependencies couldn't be built
cannot build derivation '/nix/store/cyrm315jn63ysij4gprlz1i8r3g8rsdx-libsecurity_keychain-osx-10.7.5.drv': 21 dependencies couldn't be built
cannot build derivation '/nix/store/3addwhbaqd87ywwc296jzyjbpm8d81dv-libsecurity_apple_cspdl-osx-10.7.5.drv': 16 dependencies couldn't be built
cannot build derivation '/nix/store/5lgljsfsk4gjfdmixfl4793ik0jp613f-libsecurity_apple_file_dl-osx-10.7.5.drv': 17 dependencies couldn't be built
cannot build derivation '/nix/store/f603mdaw1plr38gwdc09r092ny4sw3rc-libsecurity_apple_x509_cl-osx-10.7.5.drv': 18 dependencies couldn't be built
cannot build derivation '/nix/store/ll52lglqa7x7f03hfg6iscca1zckslnv-libsecurity_apple_x509_tp-osx-10.7.5.drv': 19 dependencies couldn't be built
cannot build derivation '/nix/store/7vpng93xm4w63wq9xr71is93q44mc1vz-SecurityTool-55115.drv': 31 dependencies couldn't be built
error: build of '/nix/store/7vpng93xm4w63wq9xr71is93q44mc1vz-SecurityTool-55115.drv', '/nix/store/chfpdisz4xj6glsqwzkk6fmnhhrj0ld1-libuv-1.21.0.drv' failed


Preselect current category, when creating new snippet

For example, if I am creating snippet from button category, button category should be selected in new snippet form.

Duplicate of #95


Improve menus some more

Properly handle changes to events.
While here, improve tests and order menu entries properly.

Pull Request Test Coverage Report for Build 176

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.008%) to 99.412%

Totals

Change from base Build 174:
0.008%

Covered Lines:
2462

Relevant Lines:
2473

💛  - Coveralls


Bring back deprecation fix

This was lost in extraction and is needed here as the assertions for
deprecations don't work with this version of Qunit.
Originally in: https://github.com/san650/ember-cli-page-object/pull/542

Thank you!


Use before validate instead of before create

In addition to having not null for column in database we could have rails validation for presence of column. However if position is assigned after validation,  then validation would not pass and record would not be saved.
Changed both code and spec, however additional changes may be required for older versions of rails, I am not sure about callback syntax for old rails versions, probably will need any conditional there.

Pulled! Thanks for contributing!

For those landing here, in the latest version the position column is set after validation so you shouldn't use a validates presence on position, as per the latest README:

The position column is set after validations are called, so you should not put a presence validation on the position column.


remove add and operator+ from SGVector and replace with linalg::add calls

remove add from SGVector
remove operator+ from SGVector
remove operator+= from SGVector
refactor code to call linalg::add method
#2747
#1139
#2582
Code compiles successfully
While running make test, a few unit tests failed but they were failing on the original code(before making these changes) as well.

LGTM

LGTM

So, are there any other changes I should make before this gets merged?

So, are there any other changes I should make before this gets merged?

Could you force push so that the CI is triggered again? It is working again.

Force pushed

It seems like some calls require the std::complex version of add. For add it should be pretty straighforward as Eigen has an implementation for that. You have to go to LinalgBackendBase.h and in the macro where add is implemented, write the specialisation for SGVector<complex128_t>.
// this is what you have
DEFINE_FOR_ALL_PTYPE(BACKEND_GENERIC_IN_PLACE_ADD, SGVector)
DEFINE_FOR_ALL_PTYPE(BACKEND_GENERIC_IN_PLACE_ADD, SGMatrix)
// this is what you add
BACKEND_GENERIC_IN_PLACE_ADD(std::complex128_t, SGVector);
BACKEND_GENERIC_IN_PLACE_ADD(std::complex128_t, SGMatrix);

And that should work. @karlnapf should probably have a more generic way of adding std::complex partial specialisation?

no that would be the way with the current system (tm)

@gf712 I understood what you are asking to be done.
However, in the file: LinalgMacros.h line 33, DEFINE_FOR_ALL_PTYPE has been defined and it does include the complex128_t instance.
LinalgMacros.h line 33:
#define DEFINE_FOR_ALL_PTYPE(METHODNAME, Container)                            \
	METHODNAME(bool, Container);                                               \
	METHODNAME(char, Container);                                               \
	METHODNAME(int8_t, Container);                                             \
	METHODNAME(uint8_t, Container);                                            \
	METHODNAME(int16_t, Container);                                            \
	METHODNAME(uint16_t, Container);                                           \
	METHODNAME(int32_t, Container);                                            \
	METHODNAME(uint32_t, Container);                                           \
	METHODNAME(int64_t, Container);                                            \
	METHODNAME(uint64_t, Container);                                           \
	METHODNAME(float32_t, Container);                                          \
	METHODNAME(float64_t, Container);                                          \
	METHODNAME(floatmax_t, Container);                                         \
	METHODNAME(complex128_t, Container);

Is the addition you asked for still necessary?

sorry i meant for LinalgBackendEigen.h

it has DEFINE_FOR_NUMERIC_PTYPE

Can we rather just replace DEFINE_FOR_NUMERIC_PTYPE with DEFINE_FOR_ALL_PTYPE

It seems like some calls require the std::complex version of add. For add it should be pretty straighforward as Eigen has an implementation for that. You have to go to LinalgBackendBase.h and in the macro where add is implemented, write the specialisation for SGVector<complex128_t>.
// this is what you have
DEFINE_FOR_ALL_PTYPE(BACKEND_GENERIC_IN_PLACE_ADD, SGVector)
DEFINE_FOR_ALL_PTYPE(BACKEND_GENERIC_IN_PLACE_ADD, SGMatrix)
// this is what you add
BACKEND_GENERIC_IN_PLACE_ADD(std::complex128_t, SGVector);
BACKEND_GENERIC_IN_PLACE_ADD(std::complex128_t, SGMatrix);

And that should work. @karlnapf should probably have a more generic way of adding std::complex partial specialisation?

Replacing this in LinalgBackendEigen.h is not compiling successfully.

what's the error?

It seems like some calls require the std::complex version of add. For add it should be pretty straighforward as Eigen has an implementation for that. You have to go to LinalgBackendBase.h and in the macro where add is implemented, write the specialisation for SGVector<complex128_t>.
// this is what you have
DEFINE_FOR_ALL_PTYPE(BACKEND_GENERIC_IN_PLACE_ADD, SGVector)
DEFINE_FOR_ALL_PTYPE(BACKEND_GENERIC_IN_PLACE_ADD, SGMatrix)
// this is what you add
BACKEND_GENERIC_IN_PLACE_ADD(std::complex128_t, SGVector);
BACKEND_GENERIC_IN_PLACE_ADD(std::complex128_t, SGMatrix);

And that should work. @karlnapf should probably have a more generic way of adding std::complex partial specialisation?
when I do this, I get the following error:

../../../src/shogun/libshogun.so.18.0: undefined reference to `shogun::LinalgBackendEigen::add(shogun::SGMatrix<std::complex<double> > const&, shogun::SGMatrix<std::complex<double> > const&, std::complex<double>, std::complex<double>, shogun::SGMatrix<std::complex<double> >&) const'
../../../src/shogun/libshogun.so.18.0: undefined reference to `shogun::LinalgBackendEigen::add(shogun::SGVector<std::complex<double> > const&, shogun::SGVector<std::complex<double> > const&, std::complex<double>, std::complex<double>, shogun::SGVector<std::complex<double> >&) const'
collect2: error: ld returned 1 exit status

Can we rather just replace DEFINE_FOR_NUMERIC_PTYPE with DEFINE_FOR_ALL_PTYPE
And when I do this, I get this error:

../../../src/shogun/libshogun.so.18.0: undefined reference to `vtable for shogun::LinalgBackendEigen'
collect2: error: ld returned 1 exit status

OK, can you just push what you have please?

Pushed.

Compiling successfully although a few tests are still failing

A few other changes needed to be done which have been done to allow for complex numbers to be tested

Is this fine?

Is this fine?

Not yet. I mean look at the output of the CI.. Could you run this locally until the test passes. You are modifying the wrong test case.

I rectified the tests. Now The SGVector unit test is successfully passing.
A few other tests are failing though( MeanSquaredError test and a few meta examples). Should that be my concern? Or should I push the code?

@gf712 I rectified the tests. Now The SGVector unit test is successfully passing.
A few other tests are failing though( MeanSquaredError test and a few meta examples). Should that be my concern? Or should I push the code?

Yup, push what you have then! Those errors are probably unrelated and build specific. I think the only way to get everything passing locally 100% of the time is to use the docker image. I think the only thing that was failing in your case was the SGVector test!

Thanks!


MAHOUT-1800: Pare down Classtag overuse

Currently, almost every operator requires an implicit parameter for the classtag context bound of drm rowset key type, even for things like drmA + drmB.
in reality though the DAG can already infer that similarly to e.g. it infers product geometry because classtags are already embedded in the logical plan.
for example, classtag(drmA+drmB) == classtag(drmA) == classtag(drmB).
Not only does the DAG already contain this information, but also it opens doors to a loss of inference, since the optimizer doesn't verify that the new context bound is actually valid by retracing the inference. So any operation may introduce an invalid row key type, and as a consequence, invalid optimization information, without any further checks.
This patch does the following:
(1) eliminates ClassTag[K] context bound in majority of operations
(2) add keyClassTag:ClassTag[K] property getter to the DrmLike[K] trait itself
(3) ensures lazy inference of returned key parameter classtag via DAG inference.

+1 to merge this, tests pass locally


'Enforced users' text shows up in wrong place in Configuration

I can see the text 'Enforced users' also as one of the options in Media | Thumbnails. It should be something relating to image compression I think, but I could not find what it once was.

Last commit should fix this.


UserInfoRequestValidator should send all claims to IsActiveAsync

Issue / Steps to reproduce the problem
We just upgraded from 2.0.1 to 2.2 and ran into this change from issue #1662.
Currently UserInfoRequestValidator is sending a filtered set of claims to ProfileService.IsActiveAsync. We use the SessionId claim to verify our users in ProfileService but the claim is being removed. I think it makes sense to send all available claims when checking IsActive and to apply the filter after.

You are correct that we are filtering claims in the userinfo endpoint.
But the real issue you are seeing is, that the access token that is used to access userinfo does not contain the session ID claim. Thus it is missing in IsActiveAsync.
OAuth access tokens don't have the concept of a session - if the sid claim is missing, you should probably ignore it in IsActive.

Will close this - feel free to re-open if you have further questions.


open-source React.js LLM agent on top of shadcn-ui

I made an open-source React.js LLM agent on top of shadcn-ui!
I've been working for a couple of months on an experiment, trying to make GPT-4 much more useful for web development / React, writing production code that is relevant to any repository without copy pasta from ChatGPT or having small snippets of auto-complete from Copilot that are not in your context.
The agent takes a user story text and generates and composes multiple react components to generate the relevant screens, with ShadcnUI, Typescript, TailwindCSS, and RadixUI.
It is still experimental but has very interesting results, I would like your feedback on it!
It is wholly open-sourced, and looking for contributors!
Github Repo
Demo Video
Output Code Example

This issue has been automatically closed because it received no activity for a while. If you think it was closed by accident, please leave a comment. Thank you.


Document how to use setup.cfg with find_packages and the src layout

When trying to create an MWE for #1436, I found it very hard to find the right syntax for using the src layout from setup.cfg. Here's what I landed on:
[options]
package_dir=
 =src
packages=find:
        where=src

It would be nice to see this in the documentation somewhere as it's a pretty common layout (and I daresay probably should be the preferred layout).

Hm, actually, I don't know why I thought that was working, it seems to be failing for me now, so this is actually now a two-step ticket:

figure out how to create a package with a layout like this:

$ tree .
.
├── setup.cfg
├── setup.py
└── src
    ├── mypkg.egg-info
    │   ├── dependency_links.txt
    │   ├── PKG-INFO
    │   ├── SOURCES.txt
    │   └── top_level.txt
    └── pkg
        └── __init__.py

and a setup.py like this:
from setuptools import setup

setup()

Document how to do it.

If it turns out to not be possible, we can turn this into a bugfix ticket.

I can't get pip/setuptools to install my package if I just use "find:". I have the minimal setup.py you pasted and this setup.cfg:
[metadata]
name=xxxyyy
version=0.0.1

[options]
package_dir=
    =src
packages=find:

Also an empty src/xxxyyy/__init__.py. Pip will install the package metadata fine, but not the actual xxxyyy/__init__.py 🤔 I'm using
pip        18.1
setuptools 40.5.0

Writing packages=xxxyyy in setup.cfg works and installs the actual package.

Got it, setup.cfg must look like this:
[metadata]
name=xxxyyy
version=0.0.1

[options]
package_dir=
    =src
packages=find:

[options.packages.find]
where=src

Thanks for digging into this @madig!


Remove usb0 references

Remove references to usb0 in switcher scripts & files as no longer required

I believe @wifinigel has already done this?

Yes, completed.


[QUESTION] The scheduling system sets a second task, causing the system to crash

*For better global communication, please give priority to using English description, thx! *
Describe the question
Our team member set a second task on DS system, then caused our system crashed
Which version of DolphinScheduler:
-1.1.0
Additional context
when we restart Ds system, and system still can not work normal
**Requirement or improvement

Please describe about your requirements or improvement suggestions.

Resolution:
Step1:
Stop DS Schedule System
Step2:
login your mysql system,and reset t_sche

Table

version 1.3.2 had solved


Appstudio update test-component-pac-imwz

Pipelines as Code configuration proposal
To start the PipelineRun, add a new comment with content /ok-to-test
For more detailed information about running a PipelineRun, please refer to Pipelines as Code documentation Running the PipelineRun
To customize the proposed PipelineRuns after merge, please refer to Build Pipeline customization

Pipelines as Code CI/test-component-pac-imwz-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
8 seconds
init

✅ Succeeded
22 seconds
clone-repository

✅ Succeeded
36 seconds
build-container

✅ Succeeded
22 seconds
deprecated-base-image-check

✅ Succeeded
22 seconds
inspect-image

✅ Succeeded
3 minutes
clair-scan

✅ Succeeded
51 seconds
clamav-scan

✅ Succeeded
22 seconds
sbom-json-check

✅ Succeeded
10 seconds
label-check

✅ Succeeded
7 seconds
show-sbom

✅ Succeeded
9 seconds
show-summary

Pipelines as Code CI/test-component-pac-imwz-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
6 seconds
init

✅ Succeeded
14 seconds
clone-repository

✅ Succeeded
28 seconds
build-container

✅ Succeeded
18 seconds
deprecated-base-image-check

✅ Succeeded
17 seconds
inspect-image

✅ Succeeded
11 seconds
clair-scan

✅ Succeeded
35 seconds
clamav-scan

✅ Succeeded
9 seconds
sbom-json-check

✅ Succeeded
16 seconds
label-check

✅ Succeeded
5 seconds
show-summary

✅ Succeeded
4 seconds
show-sbom


Improve Dockerfile and Binary build

Today the latest Docker image has 1 Critical and 5 High vulnerabilities

CVE-2024-5535
CVE-2024-6119
CVE-2024-34158
CVE-2024-34156
CVE-2024-24791
CVE-2022-30635
this PR improves Dockerfile to use scratch as base image to the final docker image.
The new docker image still have 1 medium and 1 low vulnerabilities:

these vulnerabilities can be mitigated by aws role/policies avoiding this process to use s3:write actions. for example.
Another addition to this PR is the go build command into the make file and docker image, the new arguments strips 60mb from the final binary by building it for release mode.

We should probably not do this, and switch to the Prometheus Community builds.

ok, after the community build is merged, I will check it back. Thanks.

Closing in favor of https://github.com/prometheus-community/yet-another-cloudwatch-exporter/pull/1569.


Don't use env vars to pass secrets

Passing the arbiter token and https certs via Env vars is not best practice.
Docker 1.13 has support for secrets management see, Manage sensitive data with Docker secrets but this only works in swarm mode (I'm not sure how this will effect Databox).
Another option could be to use something like keywhiz or sneaker or to roll our own into the arbiter.

Seems like we've finally reached that bridge! Dockerode wraps working with secrets through the Docker Remote API too. I think it might be worth investigating Docker swarm mode in general, especially since it might come in handy in other areas (previous discussions with @mor1 regarding https://docs.docker.com/engine/swarm/how-swarm-mode-works/pki/ and managing certs). Perhaps @avsm might have some insights regarding possible ways to use this in our context.

Could just run a databox as a swarm-of-one as well.

swarm-of-one implemented


Cannot set custom readinessProbe for the predictor

/kind bug
What steps did you take and what happened:
I tried to apply a custom readinessProbe config for a custom predictor that takes a little longer to boostrap:
spec:
  predictor:
    containers:
    - env:
      - name: MODEL_NAME
        value: falcon-7b-instruct-gpu
      - name: STORAGE_URI
        value: s3://wmf-ml-models/llm/falcon-7b-instruct/
      image: docker-registry.discovery.wmnet/wikimedia/machinelearning-liftwing-inference-services-llm:2023-06-09-090444-publish
      imagePullPolicy: IfNotPresent
      name: kserve-container
      readinessProbe:
        initialDelaySeconds: 120
        timeoutSeconds: 600
      resources:
        limits:
          amd.com/gpu: "1"
          cpu: "8"
          memory: 20Gi
        requests:
          amd.com/gpu: "1"
          cpu: "8"
          memory: 20Gi
    dnsConfig:
      options:
      - name: ndots
        value: "2"
    serviceAccountName: kserve

The readinessProbe settings are not passed to the pod, I checked with kubectl describe pod and I can only see:
Readiness:  http-get http://:15020/app-health/queue-proxy/readyz delay=0s timeout=1s period=10s #success=1 #failure=3

Moreover I noticed that when I applied the readinessProbe settings to the isvc, no new knative revision was created (hence nothing in the pod changed). Tried to delete the pod as extra verification step, nothing changed.
What did you expect to happen:
I expected the readiness probe to be configured with the new values set (longer timeouts/delays).
 Maybe there is some bit in the go code (on the kserve side) that needs to pass it the custom values?

The other weird thing is that even after I set the new readiness probe settings, I see:
  Warning  Unhealthy  4m44s (x3 over 4m45s)  kubelet            Readiness probe failed: Get "http://<IP_ADDRESS>:15021/healthz/ready": dial tcp <IP_ADDRESS>:15021: connect: connection refused

Is there another probe to set?

Of course, the istio-proxy probe needs to be set as well.. Tried with proxy.istio.io/config but didn't work :(

After checking the agent_injector's code I tried to delete the isvc resource, and after re-creating it I see the new readiness probe variable in the queue proxy's env vars. Maybe the go code needs to be tweaked to allow changing the readiness probe's settings when the isvc is already created? Or is there a reason not to do it?

Agent is only relevant when you are enabling batcher or logger, is that the case for you?

@yuzisun ah no sorry then I misunderstood the code, I thought it was related to the queue-proxy. Anyway, what I see is that if the queue-proxy is already there (namely, if the isvc is already instanciated) adding the readinessProbe doesn't trigger any new Knative revision, and hence no new setting is applied. If you remove the isvc and re-create it with the readinessProbe then the setting is applied.

I think you are probably setting some incorrect fields on the readiness probe which gets rejected by Knative, please check kubectl get events which may tell you what went wrong.

@elukey  I think you are probably setting some incorrect fields on the readiness probe which gets rejected by Knative, please check kubectl get events which may tell you what went wrong.

@yuzisun you are right the example is not right, i forgot to update it, but even with the correct settings I don't see the new knative revision being created, unless I delete the isvc first. Did you get it working?

@yuzisun you are right the example is not right, i forgot to update it, but even with the correct settings I don't see the new knative revision being created, unless I delete the isvc first. Did you get it working?

@elukey Have you check the events ? you can see the validation errors
4s          Warning   InternalError   inferenceservice/sklearn-iris                 fails to reconcile predictor: fails to update knative service: admission webhook "validation.webhook.serving.knative.dev" denied the request: validation failed: timeoutSeconds is disallowed when periodSeconds is zero: spec.template.spec.containers[0].readinessProbe.timeoutSeconds

Seems working now, I probably have missed some events when checking, thanks!


@tailwindcss npm org

With the advent of plugins, there will be an inevitable explosion of npm packages with "tailwind" or "tailwindcss" at the beginning of the name.
I recommend creating an npm org for tailwind and moving the existing repos to that org, so we can easily distinguish official packages (@tailwindcss/repo) from third party packages (tailwindcss-repo).

Already claimed that organization last October 👍 I plan to keep Tailwind itself as just tailwindcss but any official packages we put out will definitely be scoped under that organization.

@adamwathan You can add the package to the repo, but keep it in the global slope, as long as you don't set the '@tailwindcss' scope in the package name in package.json


Silent Mode Not Working in Terminal

Issue:
Silent mode doesn't seem to work in terminal. There are still lines with wandb: polluting terminal outputs. This is interfering with outputs of tqdm making my terminal logs unreadable.
Environment:

python: 3.8.5
wandb: 0.10.2
tqdm: 4.48.2

Reproduce:
import os
import wandb

os.environ["WANDB_SILENT"] = "true"
wandb.init()

Comments:
I noticed #457 mentioned that a fix was supposed to address this by August, did the fix not make it to production yet?

Hey @6etacat , thanks for flagging this. We're looking into it.

Hey @farizrahman4u would you like to look into this? I have noticed a recent PR of yours that was merged that dealt with the silent mode. An update here would be great. :smile:

@ariG23498 It has been fixed in master and will make it to the upcoming 0.10.3 release. Users can also pip install the current state of master with python -m pip install git+https://www.github.com/wandb/client.git@master if they wish to not wait for the release.

I am closing this issue as the solution is going to make an appearance in the next release
We can reopen it if there is a further persisting issue.

Hello!
Have you fixed interfering with tqdm output? I have 0.10.22 version and it still affects the width of tqdm progress bar in both silent and non-silent mode!
First pic, up - non-silent mode, down - silent mode. Look at how short is tqdm progress bar. Second pic - I entirely commented out wandb usage (no init, etc.) and progress bar returned to normal width. It seems that you somehow edit the environment width, and I don't think it's a really good behavior.

@pkuderov This is fixed in the fr_redir branch and will be merged to master soon.