Error Installing

Fresh Install, running Ubuntu 16.04
2018-03-06T04_19_11_263Z-debug.log

Could you try running
sudo apt-get install build-essential g++

Then retry npm install?

Both were already installed and updated

can you try
npm i -g<EMAIL_ADDRESS>--verbose

Same error with sharp

I installed a completely fresh version of Ubuntu , now when running sudo compactd --configure I get this error
`root@music:~# sudo compactd --configure
/usr/lib/node_modules/compactd/node_modules/bindings/bindings.js:96
throw err
^
Error: Could not locate the bindings file. Tried:
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/build/leveldown.node
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/build/Debug/leveldown.node
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/build/Release/leveldown.node
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/out/Debug/leveldown.node
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/Debug/leveldown.node
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/out/Release/leveldown.node
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/Release/leveldown.node
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/build/default/leveldown.node
→ /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/compiled/8.10.0/linux/x64/leveldown.node
at bindings (/usr/lib/node_modules/compactd/node_modules/bindings/bindings.js:93:9)
at Object. (/usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/leveldown.js:4:46)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
at Object. (/usr/lib/node_modules/compactd/node_modules/level/level.js:1:106)
`

Did you get any issue with npm install ? looks like binaries weren't properly built

No errors from that, just warnings about certain things be deprecated

Looks like you have an old version of npm. Are you using node and npm binaries from apt repository?

Installed from official NodeJS site, version 8 node and version 5 npm

Did you first tried using nvm and then from NodeJS site?
Can you run
node -v
which node
npm -v
which npm

And write here the results?

node -v
v8.10.0
npm -v
5.6.0

You forget the which, anyway can you cd into compactd installation
cd $(dirname $(readlink -f $(which compactd)))
npm rebuild sharp leveldown

And don't run compactd as sudo btw, should add a sudo-block

`root@music:~# cd $(dirname $(readlink -f $(which compactd)))
root@music:/usr/lib/node_modules/compactd# npm rebuild sharp leveldown

<EMAIL_ADDRESS>install /usr/lib/node_modules/compactd/node_modules/leveldown
prebuild-install || node-gyp rebuild

prebuild-install info begin Prebuild-install version 2.5.1
prebuild-install info looking for local prebuild @ prebuilds/leveldown-v1.9.0-node-v57-linux-x64.tar.gz
prebuild-install info looking for cached prebuild @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v1.9.0-leveldown-v1.9.0-node-v57-linux-x64.tar.gz
prebuild-install http request GET https://github.com/level/leveldown/releases/download/v1.9.0/leveldown-v1.9.0-node-v57-linux-x64.tar.gz
prebuild-install http 200 https://github.com/level/leveldown/releases/download/v1.9.0/leveldown-v1.9.0-node-v57-linux-x64.tar.gz
prebuild-install info downloading to @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v1.9.0-leveldown-v1.9.0-node-v57-linux-x64.tar.gz.11775-3d4437790b43a.tmp
prebuild-install info renaming to @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v1.9.0-leveldown-v1.9.0-node-v57-linux-x64.tar.gz
prebuild-install info unpacking @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v1.9.0-leveldown-v1.9.0-node-v57-linux-x64.tar.gz
prebuild-install info unpack resolved to /usr/lib/node_modules/compactd/node_modules/leveldown/build/Release/leveldown.node
prebuild-install info unpack required /usr/lib/node_modules/compactd/node_modules/leveldown/build/Release/leveldown.node successfully
prebuild-install info install Successfully installed prebuilt binary!

<EMAIL_ADDRESS>install /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown
prebuild-install || node-gyp rebuild

prebuild-install info begin Prebuild-install version 2.5.1
prebuild-install info looking for local prebuild @ prebuilds/leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install info looking for cached prebuild @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v2.1.1-leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install http request GET https://github.com/level/leveldown/releases/download/v2.1.1/leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install http 200 https://github.com/level/leveldown/releases/download/v2.1.1/leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install info downloading to @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v2.1.1-leveldown-v2.1.1-node-v57-linux-x64.tar.gz.11787-a0c2a40365ba.tmp
prebuild-install info renaming to @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v2.1.1-leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install info unpacking @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v2.1.1-leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install info unpack resolved to /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/build/Release/leveldown.node
prebuild-install info unpack required /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/build/Release/leveldown.node successfully
prebuild-install info install Successfully installed prebuilt binary!

<EMAIL_ADDRESS>install /usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/leveldown
prebuild-install || node-gyp rebuild

prebuild-install info begin Prebuild-install version 2.5.1
prebuild-install info looking for local prebuild @ prebuilds/leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install info looking for cached prebuild @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v2.1.1-leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install info found cached prebuild
prebuild-install info unpacking @ /root/.npm/_prebuilds/https-github.com-level-leveldown-releases-download-v2.1.1-leveldown-v2.1.1-node-v57-linux-x64.tar.gz
prebuild-install info unpack resolved to /usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/leveldown/build/Release/leveldown.node
prebuild-install info unpack required /usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/leveldown/build/Release/leveldown.node successfully
prebuild-install info install Successfully installed prebuilt binary!

<EMAIL_ADDRESS>install /usr/lib/node_modules/compactd/node_modules/sharp
node-gyp rebuild

Traceback (most recent call last):
File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py", line 13, in
import gyp
File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/init.py", line 8, in
import gyp.input
File "/usr/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py", line 5, in
from compiler.ast import Const
ImportError: No module named compiler.ast
gyp ERR! configure error
gyp ERR! stack Error: gyp failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:336:16)
gyp ERR! stack     at emitTwo (events.js:126:13)
gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
gyp ERR! System Linux 4.4.0-116-generic
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/lib/node_modules/compactd/node_modules/sharp
gyp ERR! node -v v8.10.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2018-03-08T14_28_47_574Z-debug.log
root@music:/usr/lib/node_modules/compactd# cat /root/.npm/_logs/2018-03-08T14_28_47_574Z-debug.log
0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node',
1 verbose cli   '/usr/bin/npm',
1 verbose cli   'rebuild',
1 verbose cli   'sharp',
1 verbose cli   'leveldown' ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 info readInstalled object
5 verbose rebuild path, id [ '/usr/lib/node_modules/compactd/node_modules/leveldown',
5 verbose rebuild<EMAIL_ADDRESS>]
6 verbose rebuild path, id [ '/usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown',
6 verbose rebuild<EMAIL_ADDRESS>]
7 verbose rebuild path, id [ '/usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/leveldown',
7 verbose rebuild<EMAIL_ADDRESS>]
8 verbose rebuild path, id [ '/usr/lib/node_modules/compactd/node_modules/sharp',
8 verbose rebuild<EMAIL_ADDRESS>]
9 verbose rebuild path, id [ '/usr/lib/node_modules/compactd/node_modules/smartcrop-sharp/node_modules/sharp',
9 verbose rebuild<EMAIL_ADDRESS>]
10 silly rebuild set [ '/usr/lib/node_modules/compactd/node_modules/leveldown',
10 silly rebuild set   '/usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown',
10 silly rebuild set   '/usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/leveldown',
10 silly rebuild set   '/usr/lib/node_modules/compactd/node_modules/sharp',
10 silly rebuild set   '/usr/lib/node_modules/compactd/node_modules/smartcrop-sharp/node_modules/sharp' ]
11 info build /usr/lib/node_modules/compactd/node_modules/leveldown
12 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>13 info linkStuff<EMAIL_ADDRESS>14 silly linkStuff<EMAIL_ADDRESS>has /usr/lib/node_modules/compactd/node_modules as its parent node_modules
15 verbose linkBins<EMAIL_ADDRESS>16 verbose linkMans<EMAIL_ADDRESS>17 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>18 verbose lifecycle<EMAIL_ADDRESS>unsafe-perm in lifecycle false
19 verbose lifecycle<EMAIL_ADDRESS>PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/usr/lib/node_modules/compactd/node_modules/leveldown/node_modules/.bin:/usr/lib/node_modules/compactd/node_modules/.bin:/usr/lib/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
20 verbose lifecycle<EMAIL_ADDRESS>CWD: /usr/lib/node_modules/compactd/node_modules/leveldown
21 silly lifecycle<EMAIL_ADDRESS>Args: [ '-c', 'prebuild-install || node-gyp rebuild' ]
22 silly lifecycle<EMAIL_ADDRESS>Returned: code: 0  signal: null
23 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>24 info build /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown
25 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>26 info linkStuff<EMAIL_ADDRESS>27 silly linkStuff<EMAIL_ADDRESS>has /usr/lib/node_modules/compactd/node_modules/level/node_modules as its parent node_modules
28 verbose linkBins<EMAIL_ADDRESS>29 verbose linkMans<EMAIL_ADDRESS>30 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>31 verbose lifecycle<EMAIL_ADDRESS>unsafe-perm in lifecycle false
32 verbose lifecycle<EMAIL_ADDRESS>PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown/node_modules/.bin:/usr/lib/node_modules/compactd/node_modules/level/node_modules/.bin:/usr/lib/node_modules/compactd/node_modules/.bin:/usr/lib/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
33 verbose lifecycle<EMAIL_ADDRESS>CWD: /usr/lib/node_modules/compactd/node_modules/level/node_modules/leveldown
34 silly lifecycle<EMAIL_ADDRESS>Args: [ '-c', 'prebuild-install || node-gyp rebuild' ]
35 silly lifecycle<EMAIL_ADDRESS>Returned: code: 0  signal: null
36 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>37 info build /usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/leveldown
38 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>39 info linkStuff<EMAIL_ADDRESS>40 silly linkStuff<EMAIL_ADDRESS>has /usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules as its parent node_modules
41 verbose linkBins<EMAIL_ADDRESS>42 verbose linkMans<EMAIL_ADDRESS>43 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>44 verbose lifecycle<EMAIL_ADDRESS>unsafe-perm in lifecycle false
45 verbose lifecycle<EMAIL_ADDRESS>PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/leveldown/node_modules/.bin:/usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/.bin:/usr/lib/node_modules/compactd/node_modules/.bin:/usr/lib/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
46 verbose lifecycle<EMAIL_ADDRESS>CWD: /usr/lib/node_modules/compactd/node_modules/pouchdb/node_modules/leveldown
47 silly lifecycle<EMAIL_ADDRESS>Args: [ '-c', 'prebuild-install || node-gyp rebuild' ]
48 silly lifecycle<EMAIL_ADDRESS>Returned: code: 0  signal: null
49 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>50 info build /usr/lib/node_modules/compactd/node_modules/sharp
51 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>52 info linkStuff<EMAIL_ADDRESS>53 silly linkStuff<EMAIL_ADDRESS>has /usr/lib/node_modules/compactd/node_modules as its parent node_modules
54 verbose linkBins<EMAIL_ADDRESS>55 verbose linkMans<EMAIL_ADDRESS>56 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>57 verbose lifecycle<EMAIL_ADDRESS>unsafe-perm in lifecycle false
58 verbose lifecycle<EMAIL_ADDRESS>PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/usr/lib/node_modules/compactd/node_modules/sharp/node_modules/.bin:/usr/lib/node_modules/compactd/node_modules/.bin:/usr/lib/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
59 verbose lifecycle<EMAIL_ADDRESS>CWD: /usr/lib/node_modules/compactd/node_modules/sharp
60 silly lifecycle<EMAIL_ADDRESS>Args: [ '-c', 'node-gyp rebuild' ]
61 silly lifecycle<EMAIL_ADDRESS>Returned: code: 1  signal: null
62 info lifecycle<EMAIL_ADDRESS>Failed to exec install script
63 verbose stack Error<EMAIL_ADDRESS>install: node-gyp rebuild
63 verbose stack Exit status 1
63 verbose stack     at EventEmitter. (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:285:16)
63 verbose stack     at emitTwo (events.js:126:13)
63 verbose stack     at EventEmitter.emit (events.js:214:7)
63 verbose stack     at ChildProcess. (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
63 verbose stack     at emitTwo (events.js:126:13)
63 verbose stack     at ChildProcess.emit (events.js:214:7)
63 verbose stack     at maybeClose (internal/child_process.js:925:16)
63 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:209:5)
64 verbose pkgid<EMAIL_ADDRESS>65 verbose cwd /usr/lib/node_modules/compactd
66 verbose Linux 4.4.0-116-generic
67 verbose argv "/usr/bin/node" "/usr/bin/npm" "rebuild" "sharp" "leveldown"
68 verbose node v8.10.0
69 verbose npm  v5.6.0
70 error code ELIFECYCLE
71 error errno 1
72 error<EMAIL_ADDRESS>install: node-gyp rebuild
72 error Exit status 1
73 error Failed at the<EMAIL_ADDRESS>install script.
73 error This is probably not a problem with npm. There is likely additional logging output above.
74 verbose exit [ 1, true ]
`
Same errors I believe.

Which node
/usr/bin/node
Which npm
/usr/bin/npm

Try
sudo apt-get install python-dev

Reinstalled and it successfully installed, now I'm getting an error with serving the app nginx: [emerg] open() "/etc/nginx/snippets/ssl-compactd.io.conf" failed (2: No such file or directory)

SSL is setup, now I'm just receiving an 502 Bad Gateway
2018/03/09 22:44:11 [error] 2706#2706: *1 connect() failed (111: Connection refused) while connecting to upstream, client: <IP_ADDRESS>, server: music.DOMAIN.org, request: "GET / HTTP/1.1", upstream: "http://<IP_ADDRESS>:9000/", host: "music.DOMAIN.org"

Nginx Config
`server {
listen 80;
server_name music.DOMAIN.org;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name music.DOMAIN.org;

# SSL Configuration
ssl_certificate /etc/letsencrypt/live/music.DOMAIN.org/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/music.DOMAIN.org/privkey.pem;
ssl_session_cache shared:SSL:10m;
ssl_protocols TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
ssl_prefer_server_ciphers on;

add_header Strict-Transport-Security "max-age=15768000; preload;";
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header Content-Security-Policy "frame-ancestors 'self'";
add_header X-Frame-Options DENY;

access_log            /var/log/nginx/access.log;

location /engine.io/ {
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection "upgrade";
  proxy_http_version 1.1;
  proxy_set_header        Host $host;
  proxy_set_header        X-Real-IP $remote_addr;
  proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header        X-Forwarded-Proto $scheme;

  proxy_pass          http://<IP_ADDRESS>:9001;
}

location / {
  proxy_set_header        Host $host;
  proxy_set_header        X-Real-IP $remote_addr;
  proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header        X-Forwarded-Proto $scheme;

  # Fix the âIt appears that your reverse proxy set up is broken" error.
  proxy_pass          http://<IP_ADDRESS>:9000;
  proxy_read_timeout  90;

  proxy_redirect      http://<IP_ADDRESS>:9000 https://music.DOMAIN.org;
}

}`

You are almost setup, you just need to run
pm2 start compactd-www

If it says pm2 cannot be found just install it
npm install --global pm2

Last error hopefully, An error happened during database sync for artworks: undefined after logging in

Can you open DevTools (right click on the page) then in the console tab copy and paste the content (removing any personnal informations) ?

Firefox can’t establish a connection to the server at wss://music.DOMAIN.org/socket.io/?EIO=3&transport=websocket&sid=S8wzbfHDTnsgF1MbAAAG. application.js:78:28133 The above 404 is totally normal. PouchDB is just detecting if the remote exists. application.js:24:46105 Object { error: "unauthorized", reason: "You are not a server admin.", status: 401, name: "unauthorized", message: "You are not a server admin.", result: {…}, stack: "" }   t/</</<@https://music.DOMAIN.org/application.js?455225a5e8e691261539:24:375005 i.prototype.emit@https://music.DOMAIN.org/application.js?455225a5e8e691261539:78:33034 _@https://music.DOMAIN.org/application.js?455225a5e8e691261539:24:125819 s@https://music.DOMAIN.org/application.js?455225a5e8e691261539:24:125620 f/<@https://music.DOMAIN.org/application.js?455225a5e8e691261539:24:127649 application.js:24:374982 An error happened during database sync for artworks: undefined application.js:24:166268

In ~/.compactd/config.json  you can find the couchPassword which is the admin password set up to secure couchdb. Can you run:
curl -v http://admin:<couchdb password value>@localhost:5984/artworks

Normally you should get a 200, if not
curl -v -X PUT http://admin:<couchdb password value>@localhost:5984/artworks

should "fix" it, but none of your music will have artworks for the moment. I should add an option to trigger artwork fetching.
Btw, use ``` to wrap your multiline code like this
```
I'm multiline code,
Makes it more readable than just a `
```

That fixed it, artwork isn't a big issue at all. Appreciate all the help and being patient with me!
And thanks for the tip about multi-line code
Helps a lot ;)

Err I don't believe so.. I don't have that part still open sadly. Quick question, do songs only with meta data like Artist names and such work? I have a few .mp3's uploaded in my music folder that aren't detected. Also I cannot add a new library from the settings page.

Looks like I answered my own question with the meta data part, besides that the artworks do work by the way.


CI to RELEASE on merge to main

The objective is to quickly ship updates with different version numbers to the GitHub Marketplace.
One idea without research could be to use CI to run npm patch automatically on merge to main.

may I take this one?
this is a good start to prepare "architecture docs" as discussed with 0xcodercrane

may I take this one?
this is a good start to prepare "architecture docs" as discussed with 0xcodercrane

@rndquu In my opinion yes.
@pavlovcik would you mind?

@rndquu The time limit for this bounty is on 1/14/2023

lol savage. You can get a week!
@0xcodercrane I think we should make the minimum time 1 week because there could be situations where, for example, a bounty master working on the weekend assigns a one day bounty to a hunter and they don't check GitHub til the week starts.

may I take this one?
this is a good start to prepare "architecture docs" as discussed with 0xcodercrane

I agree

ok. we also need to update weight value then.

oh sorry @rndquu.

Oh lol. local bot and production bot works together.

Co-op campaign

This issue will be tracked in https://github.com/ubiquity/bounty-bot/pull/88

This issue will be tracked in #88

I'm working on this issue right now. Should I continue working on it?

This issue will be tracked in #88

I'm working on this issue right now. Should I continue working on it?

You ran out of time lol
I finished it
https://github.com/ubiquity/bounty-bot/pull/84

oh I just thought the active PR is just @pavlovcik was working on. but I guess it doesn't also include automatic release action to github marketplace.

oh I just thought the active PR is just @pavlovcik was working on. but I guess it doesn't also include automatic release action to github marketplace.

Actually you're correct. My PR doesn't do anything marketplace related!

hehe

I can send the cash if you put your address here!

I can send the cash if you put your address here!

0x00868BB3BA2B36316c2fc42E4aFB6D4246b77E46

Hey sorry I wasn't paying close attention to this issue but from what I understand this does not currently publish to the marketplace which means that this issue is not complete.
I asked ChatGPT and it says:

In this example, the workflow is triggered when changes are pushed to the main branch. The workflow then checks out the code, sets up Node.js, installs the dependencies, and runs a publish-to-marketplace script. The publish-to-marketplace script should be customized to publish your GitHub Marketplace listing, and should make use of the GITHUB_TOKEN environment variable provided by GitHub Actions to authenticate with the GitHub API.

name: Publish to GitHub Marketplace

on:
  push:
    branches:
      - main

jobs:
  publish:
    runs-on: ubuntu-latest

    steps:
    - name: Checkout code
      uses: actions/checkout@v2

    - name: Set up Node.js
      uses: actions/setup-node@v2
      with:
        node-version: 14

    - name: Install dependencies
      run: npm ci

    - name: Publish to GitHub Marketplace
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      run: |
        yarn deploy:marketplace

I did a quick Google search and the last update I saw on this issue is from 2020 https://github.com/orgs/community/discussions/26410
Please continue research on this you can get paid for it now.

I can send the cash if you put your address here!

0x00868BB3BA2B36316c2fc42E4aFB6D4246b77E46

https://etherscan.io/tx/0xcbc9ac9a3559ab7e2b5c69ecd85053c5a4cd8ee4a9c75f409fd8d593ef13c6ff

yeap! that feature is still in the backlog. but will keep researching on it

https://github.com/ncipollo/release-action

Releasing the bounty back to dev pool because the allocated duration already ended!

@0xcodercrane seems like it doesn't loop through every issue to check this after every event. Instead, it seems to only work if there is activity on the same issue which isn't quite correct.

Releasing the bounty back to dev pool because the allocated duration already ended!

Very cool to see this working, mostly!
@0xcodercrane seems like it doesn't loop through every issue to check this after every event. Instead, it seems to only work if there is activity on the same issue which isn't quite correct.

We could reopen https://github.com/ubiquity/bounty-bot/issues/41
It seems to be a bug, the bot shouldn't unassign ubiquity-bounties automatically

It seems to be a bug, the bot shouldn't unassign ubiquity-bounties automatically

Lets see this happen consistently before marking it as a bug. I've noticed when I am manually assigning or changing labels, sometimes GitHub renders it the same way (e.g. pavlovcik assigned ubiquity-bounties and unassigned ubiquity-bounties)

may I take this one?
this is a good start to prepare "architecture docs" as discussed with 0xcodercrane

This issue got messy with bot comments but I just want to verify if you completed this or not? @rndquu

may I take this one?
this is a good start to prepare "architecture docs" as discussed with 0xcodercrane

This issue got messy with bot comments but I just want to verify if you completed this or not? @rndquu

No, I didn't. As far as I understand this issue has already been completed by @0xcodercrane

I know that we have the capability to mark a "release" on GitHub via CI but I don't believe we have it working for automatic release to the GitHub marketplace.

It doesn't have a feature for automatic release to the GitHub marketplace right

I'm pretty sure I linked an Action .yml file with this capability in the past. Regardless, it should be pretty straightforward to setup with a quick bit of research first.


is the comment accurate?

Please see: https://github.com/operator-framework/operator-sdk-samples/blob/66156b18ed3dbda304de7db28f0071bd7c9e9e60/go/memcached-operator/pkg/controller/memcached/memcached_controller.go#L124
The comment indicates that the request is being re-queued in order to "to ensure the deployment size is the same as the spec" -- but is that really why the request is being re-queued? Referring to:
https://groups.google.com/forum/#!topic/operator-framework/zxlvESoMSh8
A more reasonable explanation seems to be that the request is being re-queued in order to update the status. If that's correct, then the comment should be modified to agree with the actual intent of the code.

Hi @aceeric,
The reconcile function is responsible for synchronizing the resources and their specifications according to the business logic implemented on them. In this way, it works like a loop, and it does not stop until all conditionals match its implementation. The following is pseudo-code with an example that clarifies it.
reconcile App {

   // Check if a Deployment for the app exists, if not create one
   // If has an error, then go to the beginning of the reconcile
   if err != nil {
       return reconcile.Result{}, err
   }

   // Check if a Service for the app exists, if not create one
   // If has an error, then go to the beginning of the reconcile
   if err != nil {
       return reconcile.Result{}, err
   }

   // Looking for Database CR/CRD
   // Check the Database Deployments Replicas size
   // If deployment.replicas size != cr.size, then update it
   // Then, go to the beginning of the reconcile
   if err != nil {
       return reconcile.Result{Requeue: true}, nil
   }
   ...

   // If it is at the end of the loop, then:
   // All was done successfully and the reconcile can stop
   return reconcile.Result{}, nil

}

From : https://developers.redhat.com/blog/2019/10/04/getting-started-with-golang-operators-by-using-operator-sdk/
in this way, see that:
// NOTE: that the requeue is made with the purpose to provide the deployment object for the next step to ensure the deployment size is the same as the spec.
// Also, you could GET the deployment object again instead of requeue if you wish. See more over it here: https://godoc.org/sigs.k8s.io/controller-runtime/pkg/reconcile#Reconciler

We are in the example doing the re-queue for we are able to GET the Deployment that was just created and then, otherwise we are unable to check its size. Another way to achieve the same, as described in the comment, would be by using the client-go to GET the deployment before we do the check:
// Ensure the deployment size is the same as the spec
	size := memcached.Spec.Size
	if *deployment.Spec.Replicas != size {
		deployment.Spec.Replicas = &size
		err = r.client.Update(context.TODO(), deployment)
		if err != nil {
			reqLogger.Error(err, "Failed to update Deployment.", "Deployment.Namespace", deployment.Namespace, "Deployment.Name", deployment.Name)
			return reconcile.Result{}, err
		}
	}

We need to get its latest state from the cluster before check its size which will be made in the next round of the loop. See:
// Check if the Deployment already exists, if not create a new one
	deployment := &appsv1.Deployment{}
	err = r.client.Get(context.TODO(), types.NamespacedName{Name: memcached.Name, Namespace: memcached.Namespace}, deployment)

In this way, I am closing this one since I believe that the above information clarifies the example. However, feel free to ping us if you think that it should be re-opened for any reason.


Add health check for web sites

Description
Describe the changes in this PR.
Related issues
Addresses [issue #].
Testing
Describe how this change was tested.
FHIR Team Checklist

[ ] Update the title of the PR to be succinct and less than 50 characters
[ ] Add a milestone to the PR for the sprint that it is merged (i.e. add S47)
[ ] Tag the PR with the type of update: Bug, Dependencies, Enhancement, or New-Feature
[ ] Tag the PR with Azure API for FHIR if this will release to the managed service
Review squash-merge requirements

Semver Change (docs)
Patch|Skip|Feature|Breaking (reason)

docker version of template tells me what health check is not configured:

but if I click on it:

I guess I'll merge PR and we will see if sql tests continue to fail.


docs: explain where let operator went in lettable-operators.md

Description:
Tell folks migrating to 5.5 that the  let operator is now pipe.
Also tell them about:

Observable.toPromise (no more toPromise operator
Observable.throw is on the prototype and import { throw } from 'rxjs/observable/throw' won't work (for obvious reasons).

Related issue (if exists):

Coverage remained the same at 97.372% when pulling 73c8b355aea8eb384a22188fa4b1d3c627ca69b7 on wardbell:docs-where-is-let into 040d951f327ca173d2be6bb82a200884c21f0718 on ReactiveX:master.

Coverage remained the same at 97.372% when pulling 8b209bff6e122cc79bde19436893e963b3ab9aea on wardbell:docs-where-is-let into 040d951f327ca173d2be6bb82a200884c21f0718 on ReactiveX:master.

Coverage remained the same at 97.372% when pulling 3727eea9cfaaba497966886becdb1e6691515d7c on wardbell:docs-where-is-let into 040d951f327ca173d2be6bb82a200884c21f0718 on ReactiveX:master.

Coverage remained the same at 97.372% when pulling 8620aefd3660343b7b122577496365b43abaf332 on wardbell:docs-where-is-let into 040d951f327ca173d2be6bb82a200884c21f0718 on ReactiveX:master.


Search box auto select

Really love this component - Is it possible to pass through the current input value as opposed to the selected suggestion?
The idea is for the users string to get searched by default but the suggestions are there if the user manually selects them (similar to how google works). Is this possible?

Hey, thanks for the feedback! I'll add a new flag default_use_searchterm to return the current searchterm when a user is typing in the next version 👍  You could also track this by adding the searchterm to your search function, e.g.
def search(searchterm: str): ...
   st.session_state["current_search"] = searchterm
   ...

result = streamlit_seachbox(...)

if result is None and st.session_state.get("current_searchterm", None):
   # do sth with the current seach

Might have the benefit that you'd still know if it's a selected result by the user or not (if you don't use the new flag).


play2.5 makes play quicker and more stable. but what a pity this importent search module stop update for so long.

This project appears to be abandoned


Update and rename en.json to de.json

Edited on GitHub. Ignore the delete, just pull in the commit to add the new file.

Awesome, thank you Jörn.

Merged into #481


posts in /blogs subdirectory

Hi,
sorry for this beginner question ... I'm struggling having all my blog posts inside a content/blog directory and reserve content/foo for menu-navigation in the topnav, like this:
after_dark_menu = [
  {url = "$BASE_URL/", name = "Home"},
  {url = "$BASE_URL/download", name = "Download"},
  {url = "$BASE_URL/support", name = "Support"},
  {url = "$BASE_URL/company", name = "Company"},
  {url = "$BASE_URL/blog", name = "Blog"},
]

currently it looks like:
content/
├── blog
│   ├── hello-world.md
│   └── _index.md
├── company
│   └── index.md
├── download
│   └── index.md
├── home.md
├── _index.md
└── support
    └── index.md

The documentation explicitly says that all blogs must go into content/ and content/_index.md should set paginate_by = 5.
How can I set have my root / correctly rendered to a static fixed page that always has the same content? It seems this is impossible according to the docs?
thanks

If you want to deviate from the theme, I would recommend just copying the templates/static/sass from the theme into their respective root folders and modify them directly.


v1.1.0 JSON schema $id attribute is referencing old version

schema.json $id attribute references version 1.0.0 while the URI is for version 1.1.0.
This issue is presented itself when using  PyStac's validate_dict method by first validating a STAC item which specifies the 1.1.0 URI and immediately validating a STAC item that specifies the 1.0.0 URI. The latter fails the JSON schema validation.

Should be fixed now, thanks for reporting it.


Increased file size limit request for opendrift_landmask_data

Opendrift landmask data is optimized landmasks from the GSHHS dataset (LGPL) used in opendrift (https://github.com/OpenDrift/opendrift) which is a simulation software for tracetories in the ocean (oil spills, leeway, etc). Both packages are opensource. The current compressed packages are about 80MB, but we would like to also add an R-tree index in the coming versions which might increase the total size to about 150MB. Is it possible to increase the limit for opendrift_landmask_data to 150MB?
Regards, Gaute

I think we will manage within the default limit after all!


Browser freezes and goes into not responding state for IE 11

What is your Test Scenario?

I have simple login form which is a aws amplify screen.
What is the Current behavior?

When the tests run for login, the browser actually freezes for chrome, firefox and IE11 but it recovers for chrome and firefox after sometime but IE 11 never recovers and goes into not responding state.
What is the Expected behavior?

Login should work normally without freezing browser.
What is your web application and your TestCafe test code?

Link to the app

You can even give incorrect credentials.
Your website URL (or attach your complete example):

Your complete test code (or attach your test files):

 import { Role, Selector } from 'testcafe'

import { config } from './config'

export const admin = Role(`${config.baseUrl}`, async (t) => {
  await t
    .typeText(
      '[name="username"][data-test="username-input"]',
      config.appAdminUserName(),
    )
    .pressKey('tab')
    .typeText('[type="password"]', config.appAdminPassword())
    .pressKey('enter')
    .click('button[type=submit]')
    .expect(Selector('[data-testid="signout"]').exists)
    .ok()
})

[screen capture](https://user-images.githubusercontent.com/1705639/85275519-bc870400-b480-11ea-8812-dd9d72e87ec4.gif)
You can see in the gif attached, the first part of the video where I try to login manually which works fine, when I switch tab and running a remote test and performing same scenario the browser freezes for firefox but recovers after somepoint but never recovers for IE 11. Added breakpoints to show where the delay is in executing javascript.

Execute this command...
See the error...

Your Environment details:

testcafe version:                  1.86

node.js version:                    12

command-line arguments:

browser name and version:

platform and version:

other:

Sent details of the application over support email.

@saibs
Hello,
I confirm there are some differences in native/TestCafe behavior when the submit button is clicked. We need some time to examine it.
For the team.

Click the submit button without login/password:
Chrome 83 / Windows 10 - failed
IE 11 / Windows 10 - passed
Firefox 77 / Windows 10 - passed

import { Role, Selector } from 'testcafe';

const pageURL = 'PAGE_URL';

const admin = Role(pageURL, async t => {
    await t
        .click(Selector('button[type=submit]'))
        .expect(Selector('span').withText('Benutzername darf nicht leer sein').exists).ok('', { timeout: 25000 });
});

fixture `Fixture`;

test
    .page(pageURL)
    ('test', async t => {
    await t
        .useRole(admin);
});

Click the submit button with incorrect login/password:
IE 11 / Windows 10 - no result
Chrome 83 / Windows 10 - cannot type password
Firefox 77 / Windows 10 - passed

import { Role, Selector } from 'testcafe';

const pageURL = 'PAGE_URL';

const admin = Role(pageURL, async t => {
    await t
        .typeText(
            Selector('[name="username"][data-test="username-input"]'),
            'username',
        )
        .typeText(Selector('[type="password"]'), 'password')
        // .wait(3000)
        // .pressKey('enter')
        .click(Selector('button[type=submit]'));

    await t
        .expect(Selector('span').withText('Benutzer existiert nicht').exists).ok('', { timeout: 25000 });
});

fixture `Fixture`;

test
    .page(pageURL)
    ('test', async t => {
    await t
        .useRole(admin);
});

The page has css zoom settings, hence you cannot type in password, if opened with default resolution. I generally test with remote urls or resize window before running the tests to 1600x1200

Further investigation hope it helps, browser freezes in testcafe when this particular computation is run
AuthenticationHelper AWS amplify.
I believe it's a longer computation to encrypt password, and ie11 never recovers moving into non-responding mode.

Hello @saibs ,
Thank you for the update. We will take this info into account.


Can't Bind Mount Host Folder Using docker-outside-of-docker

Hi, I created a container from inside a dev container using the docker-outside-of-docker feature. I mapped an bind mount to the host repo folder. However, the files don't appear in the bound folder inside the container.
Minimum configuration to reproduce:
.devcontainer/devcontainer.json
{
	"image": "mcr.microsoft.com/devcontainers/base:bullseye",
	"features": {
		"ghcr.io/devcontainers/features/docker-outside-of-docker:1": {}
	},
	"remoteEnv": {
		"LOCAL_WORKSPACE_FOLDER": "${localWorkspaceFolder}"
	}
}

STEPS:

Build and connect to the dev container.
Run the command: docker run -it --rm -v ${LOCAL_WORKSPACE_FOLDER}:/workspace debian bash

BEHAVIOR:

Can't see any files inside container folder /workspace

EXPECTED BEHAVIOR:

See files from local workspace folder inside container at /workspace

ADDITIONAL INFO:

Host: Windows 11 with Docker powered by WSL 2 with Ubuntu 22.
Docker version: 25.0.3

I am having this problem as well.

This just started happening to us as well.  It seems the dev container has lost a mapping somewhere and host paths are no longer valid. If I hard code the volume path that was in the env var then it won't work in the dev container but will work on the wsl host

This just started happening to us as well.  It seems the dev container has lost a mapping somewhere and host paths are no longer valid. If I hard code the volume path that was in the env var then it won't work in the dev container but will work on the wsl host.
The only difference I'm seeing is that we get an error that the bind path cannot be found rather than an empty folder
${LOCAL_WORKSPACE_FOLDER}/app - fails in dev container, fails in wsl because the env var doesn't exist
/home/user/dev/app - fails in dev container - works in wsl
\\\\wsl.localhost\\Ubuntu-20.04\\home/user/dev/app -works in both
As a workaround i changed the devcontainer.json
{
    ...
    "containerEnv": {
        "LOCAL_WORKSPACE_FOLDER": "\\\\wsl.localhost\\${localEnv:WSL_DISTRO_NAME}\\${localWorkspaceFolder}"
    }
}

It worked for me has an workaround. thanks!

Thanks for the details. @gauravsaini04 Can you help investigate this issue? Thanks!

@chrmarti Any thoughts on this issue?
From https://github.com/microsoft/vscode-remote-release/issues/3588#issuecomment-724131373 it seemed like it wasn't possible before. However, https://github.com/moby/moby/issues/32582 seems to have merged-in recently.
Do we need any changes on our end?

This works for me with Docker Desktop 4.30 (Docker Engine 26.1.1). Variations I have tried (all worked):

Local workspace folder on Windows filesystem.
Local workspace folder on WSL filesystem.
Local workspace folder on Windows filesystem and Dev Containers: Execute in WSL enabled in settings.


feat: better LLM response format

Improve LLM responses (openAI compatible format for non-streaming responses)
Use uuid for vLLM request generation

I don't know why exactly but I keep running into differently generated bindings than you guys. Might be a versioning thing.

Reviewed the updates, some comments below:

stream_generator needs to be updated to process the LLMResponse returned now. Below is how I did it to test end to end. You may want to do differently, just wanted to provide head start.

 async def stream_generator(generator):
     try:
         async for chunk in generator:
-            if isinstance(chunk, dict):
-                if "choices" in chunk:
+            if isinstance(chunk, LLMResponse):
+                if len(chunk.choices) > 0:
                     # Regular streaming chunk or final chunk
-                    yield f"data: {json.dumps(chunk)}\n\n"
-                    if chunk["choices"][0].get("finish_reason") == "stop":
+                    yield f"data: {chunk.model_dump_json()}\n\n"
+                    if chunk.choices[0].finish_reason == "stop":
                         break

The defer cancel() in LLM function of worker.go needs to be removed, it returns the container immediately for streamed responses.  Was not able to test this until testing through go-livepeer managed containers.

+++ b/worker/worker.go
@@ -397,7 +397,7 @@ func (w *Worker) AudioToText(ctx context.Context, req GenAudioToTextMultipartReq
 func (w *Worker) LLM(ctx context.Context, req GenLLMJSONRequestBody) (interface{}, error) {
        isStreaming := req.Stream != nil && *req.Stream
        ctx, cancel := context.WithCancel(ctx)
-       defer cancel()
+
        c, err := w.borrowContainer(ctx, "llm", *req.Model)
        if err != nil {
                return nil, err

The total_tokens seem to be double counted, maybe because the tokenizer is counting the space as a token? Is this expected behavior? note: this was not changed on this one and does not cause payment issues but wanted to confirm.

Do you still want to use LlmStreamChunk to send the response through go-livepeer?  If want to change it to the LLMResponse will need to update go-livepeer but should be quick update. Example response chunk from streaming:

data: {"chunk":"{\"choices\":[{\"delta\":{\"role\":\"assistant\",\"content\":\"\"},\"index\":0,\"finish_reason\":\"stop\"}],\"tokens_used\":552,\"id\":\"chatcmpl-d2dd5298-8330-48db-8370-901dea8e5a12\",\"model\":\"meta-llama/Meta-Llama-3.1-8B-Instruct\",\"created\":1735437990}","tokens_used":552}


Incorrect usage of the <small> element

In several templates the <small> element is used to make everything in that block smaller. However, this element is not a block-level element, and should not be used this way.
The Bootstrap Toolkit has the .small class that can be used to make things smaller.
For reference:

I'm going to hold off on this until we upgrade to Django 5. In starting to correct this, I discovered that most places we use this element are in forms, and that we do form fields inconsistently. Django 5 looks like it contains changes to form templating that would simplify templating form fields (in the process of this we could handle many instances of this issue).


Applied rateLimit doesn't work well for file policies (e.g., security_file_permission)

What happened?
Applied rateLimit according to the documentation. Here is the whole tracing policy:
spec:
  kprobes:
  - args:
    - index: 0
      type: file
    - index: 1
      type: int
    call: security_file_permission
    return: true
    returnArg:
      index: 0
      maxData: false
      returnCopy: false
      type: int
    selectors:
    - matchActions:
      - action: Post
        rateLimit: 1m
      matchArgs:
      - index: 0
        operator: Prefix
        values:
        - /etc/passwd
      - index: 1
        operator: Equal
        values:
        - "4"
    syscall: false

As far as I understood from the documentation this may significantly decrease count of repetitive events, however this didn't have any noticeable effect.
During the experiment I generated events with while true; do cat /etc/passwd > /dev/null; done.
Are there any constraints using rate limiting, or probably I misunderstood the concept?
Tetragon Version
1.0.1
Kernel Version
5.15
Kubernetes Version
1.24
Bugtool
No response
Relevant log output
No response
Anything else?
No response

Hello
Rate limiting is per thread and your test involves starting numerous 'cat' processes one after the other, each with a different thread ID. As such, no rate limiting occurs. The idea is to limit a single thread's repeated events, not repeated events generally.
I turned the rateLimit value in the policy down to 3s for testing, and used the following C program to generate tests:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

int main(int argc, char *argv[])
{
        int fd;
        int count = 1;
        char buf[65536];
        struct stat st;

        while (1) {
                fd = open("/etc/passwd", O_RDONLY);
                if (fd < 0) {
                        printf("open failed: %s\n", strerror(errno));
                        exit(1);
                }
                if (fstat(fd, &st) < 0) {
                        printf("fstat failed: %s\n", strerror(errno));
                        exit(1);
                }
                if (read(fd, buf, st.st_size) <= 0) {
                        printf("read failed: %s\n", strerror(errno));
                        exit(1);
                }
                printf("Opened /etc/passwd: %7d\n", count);
                count++;
                close(fd);
                sleep(1);
        }
        return 0;
}

It wouldn't be difficult to add a switch to the rate limiting function to make it apply to all threads. Let me know if that would be helpful.

I've updated the docs in this PR. https://github.com/cilium/tetragon/pull/1961

Also, I made this PR that lets you change the scope of the rate limiting from thread to "process" or "global". LMK if it helps in your case. Thanks!
https://github.com/cilium/tetragon/pull/1962

These have been merged. They will be available in the next release. Otherwise, take a ci:latest tag if you want to try them out.

Hello and thank you, it should be very helpful as in our case. I'm going to test it with the ci tag.

I've tested it with the same configuration, just adding rateLimitScope: "global" and rateLimit: "10s"
Rate limiting itself works as excpected! Though, there are a few question that I would like to ask.

I've noticed a different CPU and RAM usage profile for the tetragon pod. With rate limiting enabled I noticed ~30% increase in RAM usage and spikes on the CPU, up to 60% of one core, which is very unusual. Is this expected?
It's written in the doc that only 40 first bytes of each argument are used in matching. Doest it mean that in this case, if I have multiple independent events under some long filepath, some of them may be lost due to this limitation? Is it possible to increase this limitation?

The test that I did was the same, I run
while true; do cat /etc/passwd > /dev/null; done
and
while true; do cat /etc/passwd > /dev/null; sleep 1; done
With and without rateLimit with the policy from the topic.
I understand that this test doesn't reflect the real workloads' behavior, and I would like to test it on some real cluster to be sure there is an issue.
Regarding the lengh limit, I don't really think that this is a big issue as I agree with you. While testing this I understood that this functionality is not the best fit to filesystem events, as it was initially developed for fix-sized arguments as IP addresses or so, hence the best fit are socket events.
In our environment, however, the most volume of events is generated by security_file_permission, and we have an intention to lower the volume, but I see that it's better to think about some other approach.

@vladimirkus based on the discussion, I've modified the title and the labels of the issue to be an enhancement rather than a bug. We could also create a new summary if that's better.

I've noticed a different CPU and RAM usage profile for the tetragon pod. With rate limiting enabled I noticed ~30% increase in RAM usage and spikes on the CPU, up to 60% of one core, which is very unusual. Is this expected?

@vladimirkus I finally found time to do some tests. On this test system (kernel 5.15, 8G RAM, x64 Kernel VM), I found the memory usage was pretty consistent between the rateLimit and no-rateLimit scenarios (~14.5% for the first test for both, and ~1.3% for the second test for both); and I found the CPU spikes in both rateLimit and non-rateLimit scenarios for the first test (24% CPU -> 66% for rateLimit and 40% -> 92% for non-rateLimit) but no CPU spikes for the second test.
I like that the rateLimit scenario had a lower overall CPU profile (as predicted) and assume that the CPU spikes are related to Tetragon threads waking up and handling events.
If you're happy, I think we could close this issue.

@kevsecurity
Hello and sorry for the long pause. I had a chance to test it more on our production clusters using v1.1.0 and I can confirm the memory and cpu usage are pretty consistent this time, probably with a small overhead.  And functionality works  as expected. I agree that the issue should be closed, thank you for your help!


Action invokation builds unrelated tasks

In plutus the ci action is causing the benchmark task to be built
This is shown here:

https://cicero.ci.iog.io/invocation/59990d47-c5c8-4b31-a1a7-3e68ce0206b3, errored out on benchmark image failing to build in the ci action
https://cicero.ci.iog.io/invocation/ec6efe0f-e9cc-4508-92cb-37cb7dd7062c, eval error on benchmark task because the benchmark input's fact doesn't exist.

It doesn't make sense that these tasks are being built the ci action. I don't know if there is some config error in plutus thats causing this or cicero is over eagerly building tasks.
Also might be related, we use IFD in the benchmark task to get the current PR revision.

This is a tullia issue because the problem is entirely within tullia's code. It should evaluate tasks lazily and independently of each other instead of evaluating them all eagerly, which was never intended.


Nonfunctional Urban dictionary search

I tried ~ud apple
It said "typing" but did not send anything

~ud is working. You need to add mashape api key in order for it to work.


Make sure that the addon agent image is same with hub image and change the addon name to submariner

Signed-off-by: liuwei<EMAIL_ADDRESS>

/assign @qiujian16

/retest

/retest

/retest

refer to https://github.com/open-cluster-management/backlog/issues/6440


get rid of extra pointless 0s

also it would be cool if instead of just a number, the background also changed to a different color left to right depending on the value.

Fixed width fixed font is on purpose in the formatters, so gonna leave this one as is thanks,

Fixed width fixed font is on purpose in the formatters, so gonna leave this one as is thanks,

no i mean, it's the extra 0s. 0.4500

there are only two needed decimal places after the .

yeah i know what you meant. it's on purpose.


Variables with 0 value considered as empty

IF you set a variable with a value of 0, it is considered as empty.
You can verify it by creating a new variable in a service, set the variable as required with a value and 0 and the panel will throw you an error saying the variable should'nt be empty.
https://gyazo.com/762709e4df107a937c95620b7790ca5b

I'm not able to reproduce this when adding a new variable. I was able to successfully create a variable with a default value of 0.

Oh, actually I see. The error occurs when adding a new server.


PhantomJS has crashed : Too many open files

Hello,
I'm using PhantomJS to test the scalability of a web site, simulating 200 users. Trying to simulate more, I get such messages at arround 230 spawn phantomjs from a master phantomjs thread :
ExceptionHandler::GenerateDump                                        sys_pipe failed:Trop de fichiers ouverts (Too many open files)
ExceptionHandler::SendContinueSignalToChild                                sys_write failed:Mauvais descripteur de fichier (Bad file descriptor)
ExceptionHandler::WaitForContinueSignal                                sys_read failed:Mauvais descripteur de fichier (Bad file descriptor)
PhantomJS has crashed. Please read the crash reporting guide at https://github.com/ariya/phantomjs/wiki/Crash-Reporting and file a bug report at https://github.com/ariya/phantomjs/issues/new with the crash dump file attached: /tmp/7da0bcb0-5337-a83a-1c48c10f-6ca94666.dmp
(Translations between parenthesis are mine)
Unfortunately, I have nothing new in my /tmp file after that, while many giga bytes are available on the disk.
All in all, I would be happy to be able to launch 1024 sub-phantomjs-threads  for instance.

+1 Same problem here!

This message was created automatically by mail delivery software.
A message that you sent could not be delivered to one or more of its
recipients. This is a temporary error. The following address(es) deferred:
<EMAIL_ADDRESS>Domain castonguay.org has exceeded the max emails per hour (206/200 (103%)) allowed.  Message will be reattempted later
------- This is a copy of the message, including all the headers. ------
Received: from github-smtp2-ext3.iad.github.net ([<IP_ADDRESS>]:43075 helo=github-smtp2b-ext-cp1-prd.iad.github.net)
by server191.web-hosting.com with esmtps (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256)
(Exim 4.86_1)
(envelope-from<EMAIL_ADDRESS>id 1apkNm-003Icb-Qs
for<EMAIL_ADDRESS>Mon, 11 Apr 2016 18:32:35 -0400
Date: Mon, 11 Apr 2016 15:31:54 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com;
s=pf2014; t=1460413914;
bh=0ZALVdErvXj5SiC/i8fTlJfzAji+RNv2D+qdQ7vdwsM=;
h=From:Reply-To:To:In-Reply-To:References:Subject:List-ID:
List-Archive:List-Post:List-Unsubscribe:From;
b=1yzRG1irxMmsxoc2Q19u5hYcKT2h6C6lYXNdBmcWchyPg6lqwRHzsIt4I9/U2EVjS
/KtWiF1FMao67HSCqto7IblqvFOCp+I/ie3PyJUyOgp2dx5Bk6/FL/Pg4AoWn0LppS
HUej2Gg/gD4nkw6kO+eeOV3ZggPPJZZzfShDvGqg=
From: Vitaly Slobodin<EMAIL_ADDRESS>Reply-To: ariya/phantomjs<EMAIL_ADDRESS>To: ariya/phantomjs<EMAIL_ADDRESS>Message-ID<EMAIL_ADDRESS>In-Reply-To<EMAIL_ADDRESS>References<EMAIL_ADDRESS>Subject: Re: [ariya/phantomjs] PhantomJS has crashed : Too many open files
(#12037)
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="--==_mimepart_570c25da7a10b_7793f9e925a12a01192e4";
charset=UTF-8
Content-Transfer-Encoding: 7bit
Precedence: list
X-GitHub-Sender: Vitallium
X-GitHub-Recipient: dREc
List-ID: ariya/phantomjs <phantomjs.ariya.github.com>
List-Archive: https://github.com/ariya/phantomjs
List-Post<EMAIL_ADDRESS>List-Unsubscribe<EMAIL_ADDRESS>https://github.com/notifications/unsubscribe/AAF3ukX-KdOQJ3mGorONMNqecob8tvyVks5p2svagaJpZM4BnU5d
X-Auto-Response-Suppress: All
X-GitHub-Recipient-Address<EMAIL_ADDRESS>X-Spam-Status: No, score=-3.5
X-Spam-Score: -34
X-Spam-Bar: ---
X-Ham-Report: Spam detection software, running on the system "server191.web-hosting.com",
has NOT identified this incoming email as spam.  The original
message has been attached to this so you can view it or label
similar future email.  If you have any questions, see
root@localhost for details.
Content preview:  Closed #12037. --- You are receiving this because you are
subscribed to this thread. Reply to this email directly or view it on GitHub:
https://github.com/ariya/phantomjs/issues/12037#event-623250357 [...]
Content analysis details:   (-3.5 points, 5.0 required)
pts rule name              description

0.0 URIBL_BLOCKED          ADMINISTRATOR NOTICE: The query to URIBL was blocked.
See
http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block
for more information.
[URIs: github.com]
-5.0 RCVD_IN_DNSWL_HI       RBL: Sender listed at http://www.dnswl.org/, high
trust
[<IP_ADDRESS> listed in list.dnswl.org]
-0.0 RCVD_IN_MSPIKE_H3      RBL: Good reputation (+3)
[<IP_ADDRESS> listed in wl.mailspike.net]
1.6 HTML_IMAGE_ONLY_12     BODY: HTML: images with 800-1200 bytes of words
0.0 HTML_MESSAGE           BODY: HTML included in message
-0.1 DKIM_VALID_AU          Message has a valid DKIM or DK signature from author's
domain
0.1 DKIM_SIGNED            Message has a DKIM or DK signature, not necessarily valid
-0.1 DKIM_VALID             Message has at least one valid DKIM or DK signature
-0.0 RCVD_IN_MSPIKE_WL      Mailspike good senders
X-Spam-Flag: NO
----==_mimepart_570c25da7a10b_7793f9e925a12a01192e4
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Closed #12037.

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/ariya/phantomjs/issues/12037#event-623250357
----==_mimepart_570c25da7a10b_7793f9e925a12a01192e4
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Closed #12037.
—You are receiving this because you are subscribed to this thread.Reply to this email directly or view it on GitHub

----==_mimepart_570c25da7a10b_7793f9e925a12a01192e4--

why closed?

just a guess, but it could be also dependent on the "open file limit" set for your main thread / sub threads? see http://stackoverflow.com/questions/15005830/phantomjs-using-too-many-threads


Populate sba ref data

resolves #89

NOTE: I could not find a db.populate_reference_data or db.load_reference_data script so i ultimately ran db.init

There is a task: https://github.com/nsidc/usaon-vta-survey/blob/main/tasks/db.py#L29-L43
I don't have any ideas about why it may not be showing up for you at the moment :(


Address minor issues in http

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


Manually mark range as URL

Is there a way to mark some part of text as URL? For example, in You can turn it on in Settings I want Settings to be a URL.

+1


Automated cherry pick of #5554: Fix NetworkPolicy span calculation

Cherry pick of #5554 on release-1.13.
#5554: Fix NetworkPolicy span calculation
For details on the cherry pick process, see the cherry pick requests page.

/skip-all


Add support for custom template files

This PR allows users to define a list of paths using the new templateFiles parameter in the repository settings. Using the existing file comparison of the action "CheckForUpdates", any files matched will be compared with their template counterpart and updated, if possible.
This PR also updates the settings.md file and JSON schema to include the new parameter, as well as a new test case to test whether given paths are being properly interpreted.

Thanks - we wíll have a look at this and discuss the overall approach to custom templates (see also https://github.com/microsoft/AL-Go/pull/853) to see what the right approach is.

@cegekaJG - Am I right in assuming that you are using your own fork of AL-Go for GitHub?
And then you want to sync additional files from that repo to your repositories?
Is this correct? is this what you are trying to achieve?
Problem with the approach to have this in the repo settings is that you have to have this in all repositories (or in variables) - it should really be part of the template.
I think it is a good idea to have a list of additional folders and files (when having f.ex. indirect templates), but I think this should be part of the template repo - I will include this requirement in the indirect template PR, which I will complete after the summer vacation.

I agree, but this was the easiest way I could think of without affecting old repositories. Additionally, it's important to differentiate between files you want to copy from the template at the start, and files you always want to sync with the template.
If I am using custom deploy scripts, I'd want all repos to use the master version, but the workspace config file obviously needs to differ from the template.

Have added a link to this PR in the other PR comments - will take the scenario into account there


PTEUDO-1422: Publish status events for state changes in database

Summary of changes

Expand the DatabaseClaimStatus condition list by adding more conditions.
Refactor the claim status logic and implement corresponding unit tests.
Create unit tests for the mode selector.

Demo
DB claim
---
apiVersion: persistance.atlas.infoblox.com/v1
kind: DatabaseClaim
metadata:
  name: fbottega-sample-database
  namespace: fbottega
spec:
  class: fbottega
  appId: some-app
  secretName: sample-secret-name
  type: postgres
  userName: sample-user
  databaseName:  sample-db
  dsnName: dsn.txt
  dbVersion: "15.3"
  minStorageGB: 20

$ make build-images push-images deploy
...

$ k get databaseclaim fbottega-sample-database -o yaml
...
  conditions:
  - lastTransitionTime: "2024-12-11T22:01:04Z"
    message: Database provisioning is in progress.
    observedGeneration: 4
    reason: Creating
    status: "False"
    type: Provisioning
  - lastTransitionTime: "2024-12-12T11:06:25Z"
    message: Database successfully synchronized. The current state fully matches the
      specified configuration and is ready for use.
    observedGeneration: 4
    reason: Available
    status: "True"
    type: Synced
  - lastTransitionTime: "2024-12-12T11:06:25Z"
    message: Database credentials are being securely rotated.
    observedGeneration: 4
    reason: Available
    status: "True"
    type: PasswordRotation

...

I think you could move claimstatus out of the pkg/databaseclaim package.


feature: allow delete none-default quota

fix: cannot set a quota to zero
这个 PR 实现什么功能/修复什么问题:
改进：允许删除非default 配额
修正：无法将一个配额设置为0
是否需要 backport 到之前的 release 分支:

release/2.13

/cc @yousong @zexi
/area region

Codecov Report

Merging #4167 into master will decrease coverage by <.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master   #4167      +/-   ##
=========================================
- Coverage    6.87%   6.87%   -0.01%
=========================================
  Files         519     519
  Lines       87559   87592      +33
=========================================
+ Hits         6019    6021       +2
- Misses      81041   81073      +32
+ Partials      499     498       -1

Flag
Coverage Δ

#aFlag
6.87% <0%> (-0.01%)
:arrow_down:

Impacted Files
Coverage Δ

pkg/compute/models/projectquota.go
26.74% <ø> (ø)
:arrow_up:

pkg/compute/models/quotas.go
7.82% <ø> (ø)
:arrow_up:

pkg/compute/models/regionquota.go
9.46% <ø> (ø)
:arrow_up:

pkg/compute/models/zonequota.go
20.35% <ø> (ø)
:arrow_up:

pkg/cloudcommon/db/quotas/quotas.go
0% <0%> (ø)
:arrow_up:

pkg/cloudcommon/db/quotas/models.go
0% <0%> (ø)
:arrow_up:

pkg/cloudcommon/db/quotas/handler.go
0% <0%> (ø)
:arrow_up:

pkg/appsrv/response.go
69.23% <0%> (+3.07%)
: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 f220d0c...dc34a66. Read the comment docs.

/lgtm
/approve


Node.js 10: Module parse failed: Unexpected token

ERROR in ./node_modules/_twig<EMAIL_ADDRESS>Module parse failed: Unexpected token (1427:12)
You may need an appropriate loader to handle this file type.
|
|         blocks = {
|             ...blocks,
|             // Override with any blocks defined within the associated template
|             ...this.template.getBlocks(),
 @ ./src/twig.js 3:17-32
 @ multi @/twig

Which version of Node.js are you using? We've added babel into the build, so it should resolve that.

node version is v10.16.0, I have exclude /node_modules/
module: {
    strictExportPresence: true,
    rules: [
    {
        test: /\.(js|jsx)$/,
        loader: createdBabelLoader,
        exclude: [/(node_modules|bower_components)/, paths.buildPath],
        include: paths.userSrcPath,
        options: otherOptions.babelOptions,
    },

I am also seeing this error with node 12.15

Could you pull from master or try this out with Twig 1.15.0?

Working well now, much appreciated!


New package: Thrase v0.1.0

Registering package: Thrase
Repository: https://github.com/Thrase/Thrase.jl
Created by: @brittany-erickson
Version: v0.1.0
Commit: d3bdaada7d09508359547de3b3d702f1be331b37
Git reference: HEAD

Hello there, I would like to keep the package name Thrase.jl as Thrase is the name of the code that I have published in many scientific journal articles.


Automatic updates of Firebase rules

Background: Data must be indexed to be queriable or sortable. If you try to query a yet unindexed dataset, the Firebase REST API will return an error. With this feature, the SDK could execute an error, and if an error occurs, update the Firebase Rules as needed and retry.

Not doing this: creating an index on a node is a one time task, which should be done manually while designing the database and not automatically to avoid unknown side effects.


added getbonefromstring

this can be used for an aimbone option on silent aim and soft aim (there are probably better ways to do this but it works fine)

actually something that I needed for the next update, thank you


Help - what to put in "Map Sources" for Google Maps

Hi!
I actually wanted to create a "discussion" but I am not very familiar with GitHub and could not find the "discussions" button in this project - sorry.
I have created a Google Maps API and want to enter the respective "generic" (?) URL in "Map Sources" in the Map View options page. I have tried a couple of URLs that I had thought would work - but none did. I think I have to find something that has the "generic" "x" and "y" items, but I am honestly not really sure what I am looking for.
Also, which map style ("view", "place", ...) for Google Maps is the one I would use to have a view that is similar to the default OpenStreetMap view?
Can anyone help me? Thanks a lot!

you mean add google map in New Map Sources?
Here is my config, the map url is
https://mts1.google.com/vt/lyrs=m@186112443&hl=x-local&src=app&x={x}&y={y}&z={z}&s=Galile
some info about google map url param
Google Maps Tile URL for HYBRID mapType tiles? - Stack Overflow


Retrieve user's custom_field, having user ID

Hi! and again: THANKS A LOT!
I have a custom field for USERS (ie.: Office). [cfs20]
Also I have custom fields in a Project (ie.: Person in Charge) which value it's a redmine user selected manually during issue creation.
So what I want it's to show (in issues list) the Office where the Person In Charge work's at.
I achieved to retrieve the ID of this "Person in Charge" (since it's a Redmine user) by using
cfs[xx].try(:id)
Which brings back '365' which it's in fact the user's ID
What I can't figure out it's how to call the Custom Field value associated to the User ID (in this case, the Office where the user with ID 365 works at.
I already checked the 96 but that one i based on core User field, but not in case the "user" it's another custom field.
Thanks in advance for any hint.
Jonathan Martins T.

Solved with this:
user = User.find_by_id custom_field_value(18)
user.custom_field_value(6) if user.present?
Thanks anyway for such a a great plugin!


Add CA certificates to collector/query images

Resolves #485
When connecting query/collector to storage backends that use TLS with certificates signed by public root CAs, it's useful to have those CA certificates in the Docker image.
On the other hand, the certificates can always be mounted from the host filesystem, which is necessary anyway when connecting to servers using self-signed certificates.
I think this is a nice to have so that people don't have to do extra work. For collector it increases the image size from 24.6MB to 25.3MB.

Coverage remained the same at 100.0% when pulling 1441bed692a93e6af15c695914ece4eff844a82d on ca-certs into 6baabace8baec24a63858f3687ad7b975c0074fe on master.

@pavolloffay wdyt?

Coverage remained the same at 100.0% when pulling ca3da793da03e6bb9c7bcc29d23d6cd94009988c on ca-certs into 0e117e0f70e24aee1721494b5d63589868aa5557 on master.

Coverage remained the same at 100.0% when pulling 10960dac0438adfb956df096d25a57db0c14a6b4 on ca-certs into 0e117e0f70e24aee1721494b5d63589868aa5557 on master.


TP communication overlap with userbuffers

~- [ ] Documentation and python side API review~

[x] Build support in non-MPI environments
[x] E2E testing

FTR; On the granular APIs, the arguments have been added in a non-general manner; For e.g. the Linear API does not have support for bulk overlap since it is assumed to be called only in a Row-Parallel setting from TransformerLayer.

/te-ci

Follow-ups TODO: @ksivaman @erhoo82 @vasunvidia

Refactors classes and macros to prepend NVTE_UB.
Add unit tests for userbuffer implementation (if possible; distributed).
Generalize arguments to the granular APIs.
Documentation.

/te-ci

Pipeline 8010727


multiple uses of a controller

I'm not sure if I'm doing something wrong or if this is a bug?
I have a controller that gets used rendered multiple times on a page.
For example:
// (Emblem js syntax)
each question.comments itemController="CommentsComment"
        partial "comments/comment"

When I extend the CommentsComment controller with EmberPusher.Bindings, subscribe to a channel and push an event, my action / event gets called every time the controller is called in the template. So if my question has 5 comments, my action gets called 5 times.
Am I doing something wrong? Thanks in advance for the help.

Each creates a temporary item controller for item in the array, so it makes sense that the action fires for each item controller. Maybe you mean to put the bindings on an array controller?


Update Quarter

Perhaps hardcoding the current quarter is not a good idea?
https://github.com/ucsdscheduleplanner/UCSD-Schedule-Planner/blob/b54a22f4caf96308a0e335cc2b7e33b4b37ef3cc/backend/settings.py#L47

Will update the backend API and make other necessary changes to fully support multiple quarter feature.

We now have 2 config files concerning quarter for backend and scraper.
4cc3bb1048d4ca4d6aab8e4123ca55d79c49c140
This makes sense since

Backend does not need to know what quarters to scrape.
Scraper does not need to know which quarter is the default answer for queries.


[Query] Can you add VOIP Calling sample

Hi @AndreiMisiukevich  I need to implement VOIP calling functionality only.No t able to figure out how to achieve using this library.
I can hide publisher and subscriber view but still this will be not voice call right
Can you give me some hints

Hi @WiproSarthak
CrossVonage.Current.IsVideoPublishingEnabled = false;
CrossVonage.Current.IsVideoSubscriptionEnabled = false;
CrossVonage.Current.Permissions = VonagePermission.RecordAudio;

Try this


feat: custom elements for formatting docs

[x] Do

<booster-do>

Arrange primary actions on the left, followed by secondary actions, and tertiary actions as the last button in a group.

When using 2 buttons, one as a primary and one as a dropdown, place them as separate buttons.

</booster-do>

[x] Do not

<booster-do-not>
Arrange tertiary actions as the first button in a group or have secondary actions before primary actions.
</booster-do-not>

[x] Spacer

<booster-spacer></booster-spacer>

[x] Small spacer

<booster-spacer size="small"></booster-spacer>

[x] Grid system

<booster-grid columns="2">

     This is column 1 of 2.

    This is column 2 of 2.

</booster-grid>

@juliexiong on the offchance we build "Booster Components" to replace ZUI, what're your thoughts on changing these element tag names? Maybe something like <bdn-spacer> etc.

@juliexiong on the offchance we build "Booster Components" to replace ZUI, what're your thoughts on changing these element tag names? Maybe something like <bdn-spacer> etc.

Or <docs-spacer>?


Install per-project requirements in CI tests

No project tests are triggered here because only the CI code is modified, but the same changes passed with a modified project in #118.


Low zoom levels

Tiles at low zoom levels must to respond to the curvature of the Earth, while their minimal scaled topographic range often yields only two triangles covering the entire tile. For zoom levels less than 5, we currently fall back to a basic height field, but we should ideally have a method that subdivides triangles to densify the mesh to a certain threshold size.

We have solved this for now by bundling our own version of Martini that allows specifying maximum triangle size, this seems to work pretty well!


High variable genes

Hi,
I notice that new released scvi uses only high variable genes, while the earlier version (0.4.1) used all the genes in it's original tutorial. I used v0.41. to process my single data last year. So, does the change have a major influence ?

Did you use the old subsample genes method in 0.4.1? The model has not fundamentally changed at all, just the interface. If you'd like to run with all genes you are welcome to do that, though we have found gene selection can give better clustering results, etc.

According to scanpy's tutorial, the result of the highly-variable-genes detection is stored as an annotation in .var.highly_variable and auto-detected by PCA and hence, sc.pp.neighbors and subsequent manifold/graph tools. In that case, the step actually do the filtering below is unnecessary, too.
I notice that scvi-tools select highly variable genes actually
sc.pp.highly_variable_genes(
adata,
n_top_genes=2000,
subset=True,
layer="counts",
flavor="seurat_v3"
)
In this case, lots of genes will be discard, because we can only store one matrix(either counts or normalized data et al) in the .raw attribute of AnnData object for later use in differential testing and visualizations of gene expression. So how can we keep all the genes in scvi pipeline ?

According to scanpy's tutorial, the result of the highly-variable-genes detection is stored as an annotation in .var.highly_variable and auto-detected by PCA and hence, sc.pp.neighbors and subsequent manifold/graph tools. In that case, the step actually do the filtering below is unnecessary, too.
I notice that scvi-tools select highly variable genes actually
sc.pp.highly_variable_genes(
adata,
n_top_genes=2000,
subset=True,
layer="counts",
flavor="seurat_v3"
)
In this case, lots of genes will be discard, because we can only store one matrix(either counts or normalized data et al) in the .raw attribute of AnnData object for later use in differential testing and visualizations of gene expression. So how can we keep all the genes in scvi pipeline ?

Hi,
Please refer to this related issue:
https://github.com/10XGenomics/cellranger/issues/108#issuecomment-758455901
what about the scVI latent space ? Will genes with little variance contribute much to the latent space (just like principal components) ?

Hi,
Please refer to this related issue:
https://github.com/10XGenomics/cellranger/issues/108#issuecomment-758455901
what about the scVI latent space ? Will genes with little variance contribute much to the latent space (just like principal components) ?


Performance issue

It seems that the android app (not tried iOS) have performance issues.
Feedback from one user:
"The app seemed to use a lot of resources, my phone was slowing down significantly and got pretty warm."

First thing done => Disable the camera when the main screen is not focused and when the app is not active
https://github.com/zerologin/zerologin-mobile/commit/d7984680422ba4abb12055c53e22a93114a74156


 I'm reverting everything in 1-2 days.

nevermind, i'm working on fixing everything.

it is finished.

If I add support for the old design will you stop moaning?

i already reverted it back to the old design it's too late. well, you can add an option for the "new" one i guess

So you made me redesign the whole thing to your liking just to revert it the next day?

yeah sorry. alright i'm gonna write the repo guidelines and post it issues so these kinds of stuff won't happen again

that's why you shouldn't work for schizos


Version 0.12.0

Please start using SemVer compliant names in the tags starting with this release, otherwise some third party sites like dub (for dlang) will not be able to build and list our packages.  In this case it should be v0.12.0 and not 0.12.0.  I'm not sure the branch name matters in this case so we can maintain the same style we have been using for releases.  So, if you want to add both a 0.12.0 and a v0.12.0 tag for this release, that works for me.  In addition, if we run into issues integrating with third party sites that require minor build script-only changes, we will introduce additional SemVer compliant tags such as v0.12.0+dub.0.1 (see rule 10).  Just a heads up...

Please start using SemVer compliant names in the tags starting with this release, otherwise some third party sites like dub (for dlang) will not be able to build and list our packages. In this case it should be v0.12.0 and not 0.12.0. I'm not sure the branch name matters in this case so we can maintain the same style we have been using for releases. So, if you want to add both a 0.12.0 and a v0.12.0 tag for this release, that works for me. In addition, if we run into issues integrating with third party sites that require minor build script-only changes, we will introduce additional SemVer compliant tags such as v0.12.0+dub.0.1 (see rule 10). Just a heads up...

We typically have tried to avoid that type of tag and would go with a v0.12.1 release which is why we have had .x branches previously. not sure why this changed along the way, i think composer or one of the other build/packaging tools needed specific versioned branches

We will need a v0.12.0 tag in order to integrate with the dub (dlang) repository.  There's a good chance something will go wrong and a build metadata update will be needed.  By making an additional commit on the 0.12.0 branch and then tagging that commit v0.12.0+dub.0.1 then it will satisfy the dub requirements for integration.  I see no need to go through a 0.12.1 release just to fix a little bit of build metadata for one language.

Also note that Go's new module system requires the v prefix for semantic versioning.

AppVeyor has been fixed for the next build cycle.  Even as a committer I do not have permission to re-kick or modify the AppVeyor build for the project.

@dcelasun I read over the SemVer specification and there's nothing about a prefix v required or optional in that spec.  Does that mean the go and dlang dub package managers are actually non-compliant?

@jeking3 yes. Go's internal semver parser deviates from the spec:

This package follows Semantic Versioning 2.0.0 (see semver.org) with two exceptions. First, it requires the "v" prefix. Second, it recognizes vMAJOR and vMAJOR.MINOR (with no prerelease or build suffixes) as shorthands for vMAJOR.0.0 and vMAJOR.MINOR.0.

Okay, so the dub package manager's description just needs to change on their site.  I will update my issue on their site.

@jfarrell this needs to be moved along.  I provided comments 24 days ago and nothing has happened.

It would be great if we could rebase this branch from master since there has been a lot of changes in the past month.

@jfarrell can we get this released before the end of the year? A lot of changes happened on master since this branch was cut and it'd be great if we could release v0.12.0 with everything included.

I'm going to start this effort once again, and reset the clock for changes, and I will update Jira with the items that are marked "fixed in 1.0" to be "fixed in 0.12.0".

Thanks, let me know if I can help.

When we tag this release we will be tagging both 0.12.0 and v0.12.0.  They will be identical.

@jfarrell The PyPI admins have received a request to expand the maintainer list for the PyPI thrift project in order to upload 0.12.0 Could you please respond to https://github.com/pypa/warehouse/issues/5346 ?


MIDI.exe  returns different GTB than returned via USB

Describe the bug

Custom  USB MIDI 2.0 device.  The midi.exe tool show the following GTB information  (see screenshots)
It shows several groups, while there is only one GTB returned by the device.
midi.exe also report midi1 and 2 are not support.
This device does not implement responding to discovery call does not generate notifications. (yet)
This device is able to receive and transmit UMP messages under Linux.
Sorry, no OSX available to verify/compare the results.
Reference MIDIWorkbench (on Linux) reports all zero's for the GTB
The idea here is that minimal viable device could (become to) exist without function blocks and other features.
-- Sorry for the edits, if this caused an overflow on mailing lists , then .. apologies !

To Reproduce

Run the midi.exe tool from this repo

Run MIDI Workbench on Linux and select the device to retrieve

Refer USB MIDI 2.0 specification B.10 page  44. On an Ubuntu 23.10 machine. Use libsub  (latest git version) with a control transfer as specified in the USB specification. Retrieve the GTB from the device . It confirms the device returns the correct information as per the USB MIDI 2.0 specification:
Group Terminal Block Header Descriptor
bLength: 05h
bDescriptorType: 26h
bDescriptorSubType: 01h
wTotalLength: 0012h
Group Terminal Block Descriptor
bLength: 0Dh
bDescriptorType: 26h
bDescriptorSubType: 02
bGrpTermBlkID: 01h
bGrpTermBlkType: 00h
nGroupTrm: 00h
nNumGroupTrm: 01h
iBlockItem 04h
bMIDIProtocol: 11h
wMaxInputBandWith: 0001h
wMaxOutputBandWith: 0000h

Expected behavior

midi.exe tool to show same same GTB as returrned using the USB call.
midi.exe to report midi 1 and midi 2 are supported

Screenshots

Command: midi.exe endpoint properties

GTB portion of  from command: midi.exe endpoint properties  --verbose

Reference; MIDI Workbench (on Linux) shows zero's (right), Linux tool output (left)
Installer Name or Version

dev-preview-4-official
Windows 11 latest insider on an KVM with USB device pass through (W11 version 26020.1000)

Device information, if this is with an external MIDI device:

Custom external USB 2.0 MIDI device
Windows MIDI 2.0 Class driver from Day-preview-2

Additional context
Please confirm what Windows uses for bmRequestType  and wLength in the call to retrieve the descriptor ?
Any possibility to publish any corrections/errata that should be in and updated USB MIDI 2.0 specification, even unofficial ?

There's a discord thread on this here:
https://discord.com/channels/980245825202552942/1198866304736702555
If Workbench on Linux is showing all zeroes, I would think something is incorrect here.
This needs investigation, as all the other MIDI devices I've tried here show correct GTBs.

@AmeNote-Michael  @MusicMaker and I have a long thread on this in discord and they've been debugging this quite a bit. We're not 100%, but looking at your driver code, it appears that you're asking for too much data here and ignoring the header size values.
In https://github.com/microsoft/MIDI/blob/main/src/api/Drivers/USBMIDI2/Driver/Device.cpp#L1343 you have a comment that you guess at the size/number of the GTBs. But you should be able to get that information from the header. Later at 1393, instead of using the bytes transferred to calculate the number of group terminal blocks, you should use the size you read from the header and allocate a buffer based on that. (this does change how the code is structured).
Per the USB MIDI 2.0 spec:
wTotalLength is "Total number of bytes returned for the class-specific Group Terminal Block descriptors. Includes the combined length of this header descriptor and all Group Terminal Block descriptors. "
Not sure why this works with Roland, NI, and other devices I have, but it's not working with Muzak's code which does work with Linux which handles the header and GTBs as two requests with two separate buffers.

Please confirm what Windows uses for bmRequestType and wLength

I suspect wLength is coming from the total buffer size that gets allocated and that's something our WDF code is doing on our behalf. But I would defer to others with more USB/WDF knowledge than I have. But it would make sense given that the allocated buffer is larger than needed, and we get a bunch of garbage data after your GTB.
bmRequestType I'm not sure of.

@AmeNote-Michael just loaded beta Waldorf Iridium firmware and it runs into the same driver bug. So I have a test case here we can use to verify the fix.

Fixed in latest driver source.

Reopening until we ship to customers

Updated driver now uses index in Endpoints to determine if a GTB definition should be returned. This should provide the expected function.

@MusicMaker seems you are willing to use test signed drivers and do testing that way based on other posts. You also had raised this issue.
Can you please confirm this issue has been resolved with latest test signed driver.

@MusicMaker seems you are willing to use test signed drivers and do testing that way based on other posts. You also had raised this issue.
Can you please confirm this issue has been resolved with latest test signed driver.

Unless you've shared it separately, the test signed driver has only been shared with AMEI, not with the public. I'm fine with sharing it with MusicMaker, but not otherwise publicly, because putting your PC into a mode to enable test signed drivers always causes a percentage of people to brick their PCs or end up in bitlocker recovery mode because they didn't follow all the steps. It's a very unforgiving process.

@Psychlist1972 of course you are correct.
@MusicMaker if you are willing to run your system in test signed mode for which I could send you a driver to test with, resolving this issue will need to wait until after Attestation signed driver which we are hoping will be within the next week.

Sorry, I had been working on other issues and now catching up emails. Yes,   I could try the test driver. I am not aware of using bit-locker on Canary builds, unless windows enables that.

How to get hold of this updated test driver ? Is there a link to download it ?

Please test with today's driver release, when you get a chance. Thanks!

Closing this as fixed in the August 2024 driver release. If you test and find that not to be the case, we will reopen.

Thanks a lot ! will go trough regression with the new driver.

Regressed. the driver correctly respects bNumGrpTrmBlock now. It is also resilient having the wrong total length of all GTB data in the GTB header.


Changing token settings creates extraneous Hidden effect on NPCs when Stealthy and Perceptive both active

First off, thank you for this module, it is really cool and my players love it.
To be honest, I am not sure whether the origin of this issue is from Perceptive or Stealthy, but since the effect being applied is coming from Stealthy I thought I'd post here first.
Description:
When changing certain token settings, a random "Hidden" effect is created with the description "Banked stealth roll", even though no stealth has been rolled.
Steps to recreate bug:

Activate Stealthy and Perceptive modules
In Perceptive module settings, enable 'Stealthy Integration'
Enable 'Bank stealth rolls to actor' in Stealthy module settings
Drag an NPC token onto a scene (does not matter if vision is enabled or not on scene)
Modify the token's Light settings to add a light radius
A 'Hidden' effect is automatically applied to the token

Changing token scale can also cause the Hidden effect to be applied. I have not fully tested every setting so this may not be comprehensive.
There are also some specific NPC tokens that do not trigger this bug, but after testing for half an hour could not see any difference in the settings between tokens that trigger and do not trigger the bug.
If this Hidden effect is removed, subsequent modifications to token settings no longer trigger this bug. Also, if a Stealth check is made for the token before any token modifications, then changing token settings do not trigger this bug.
Notes:
Workarounds (?):
Disabling 'Bank stealth rolls to actor' in Stealthy module settings causes the bug to disappear.
Disabling 'Stealthy integration' in Perceptive module settings also causes the bug to disappear.

I'm glad the module has pleased some users!
My testing with another user yesterday points at this being an issue with Perceptive, and I'm not sure why it is issuing requests to Stealthy to bank a stealth value in these situations. Stealthy 4.0.7 release added logging to the specific API that Perceptive is using, you could try enabling Stealthy's logging at 'Log level' and then look at the F12 console output to see if you find entries like Stealthy | stealthy.bankStealth, as this function only gets called by things external to Stealthy. It would at least shed some light on the source of the issue. I audited the code yesterday, and as far as I can tell, Stealthy only has two routes to add a Hidden effect: rolling a skill check or receiving a stealthy.bankStealth call from an external source like Perceptive or a macro.
BTW, if you turn off banking stealth to actors, I bet after editing a token that you'll still find stealth values in the lower right of that Token's HUD. It just isn't showing you an effect. If this is not the case than there is a secondary issue inside Stealthy I need to figure out. Primary issue is still being caused by Perceptive I think.

This behavior should be fixed with Perceptive v3.6.1


Operator

[x] Operator aritmatika
[x] Operator penugasan
[x] Operator perbandingan
[x] Operator logika
[ ] Operator Identitas
[ ] Operator keanggotaan
[ ] Operator bitwise

I'll take this

Not done yet, re-opening.

kenapa auto close dia yah wkwkwk

Harusnya sih mention issue aja wkwk, kalo di-link auto-close dia.

haa I see, terima kasih infonya @norinorin. TIL


Dropping packages

These are all of my packages, send a PR if you want to have any, and link this
issue so I will be notified and mark them complete.

[ ] 9base
[ ] bkeymaps
[ ] boost
[ ] coreutils
[ ] diffutils
[ ] discount
[ ] distcc
[ ] emacs
[ ] emacs-nox
[ ] emacs-git
[ ] gawk
[ ] glib-networking
[ ] gnupg2
[ ] gnutls
[ ] gnugrep
[ ] groff
[ ] gstreamer
[ ] gst-plugins-base
[ ] gst-plugins
[ ] harfbuzz-icu
[ ] icu
[ ] isync
[ ] libassuan
[ ] libedit
[ ] libgcrypt
[ ] libgpg-error
[ ] libksba
[ ] libmpdclient
[ ] libpsl
[ ] libsoup
[ ] libxaw3d
[ ] libxslt
[ ] mpc
[ ] mpd
[ ] nano
[ ] nettle
[ ] nmap
[ ] npth
[ ] pandoc-bin
[ ] parted
[ ] pciutils
[ ] pinentry
[ ] pinentry-dmenu
[ ] procps-ng
[ ] ruby
[ ] runit
[ ] sbase
[ ] sent
[ ] shinit
[ ] sic
[ ] sinit
[ ] surfraw
[ ] sxiv
[x] ~sysmgr~ @dilyn-corner
[ ] tabbed
[ ] ubase
[ ] uemacs
[ ] vimb
[ ] vimpc
[ ] webkit2gtk
[ ] wget

I'd take sysmgr. There are several others I need but they're required by other things in community other people maintain.

@dilyn-corner Great, just a heads up, I have switched to the C implementation for sysmgr which is on https://github.com/cemkeylan/sm . The old shell version still lives on the same repository.

I can take mpc, mpd, libmpdclient, boost, gnugrep.

For sure I use sxiv. I will think about adopting other packages.

I also adopt nmap.

Just to maybe speed this along...
@Vouivre: gnutls -> msmtp
@trbednarzyk: groff -> graphviz
@konimex: libgpg-error -> libgcrypt -> irssi
@ioraff: pciutils -> flashrom
@eudaldgr: webkit2gtk -> surf
@sdsddsd1: webkit2gtk -> wyebadblock
webkit2gtk also needs glib-networking, icu -> harfbuzz-icu, libXslt, libgcrypt, libsoup, libwebp, and ruby.
I'll take libXslt because qt5* needs it, but I've built them just fine without it so I'd rather the new webkit maintainer takes it.

I can adopt groff, libedit, parted, and pciutils.

If webkit2gtk fall i will maintain under my personal repo, i don't want to maintain more and more packages here.

Reduced this list by half. Here's a crude listing of the remaining packages and their relationships with each other and other packages in community. In short: webkit2gtk and gnupg2 need most of what is waiting for adoption in the above list. These two also share a dependency or two (libgcrypt, libgpg-error, etc?).
- surf, vimb, wyeb, wyebadblock
    - webkit2gtk
        - libsoup
            - glib-networking
                - gnutls
                    - nettle
            - libpsl
                - icu
            - gst-plugins ????
                - gst-plugins-base
        - gstreamer
            - gst-plugins
                - gst-plugins-base
        - harfbuzz-icu
            - icu
        - libgcrypt
            - libgpg-error
        - libXslt
        - ruby

- emacs, emacs-nox, emacs-git
    - gnutls
    - libxaw3d

- gnupg2
    - pinentry
        - libassuan
            - libgpg-error
    - libgcrypt
        - libgpg-error
    - libksba
    - npth

- pinentry-dmenu
- parted
- tabbed
- uemacs
- vimb

Other packages in Community which depend on these packages.

- msmtp
    - gnutls

- graphviz
    - groff

- qt5, qt5-webengine
    - libXslt

@dilyn-corner

webkit2gtk -> wyebadblock

I am not the right person to maintain this. When there are issues after a version change, I would probably not be able to fix this, until any other project had done this, which work I could adopt. Apologies.

@dylanaraps why did you drop libedit and adopt parted after I just adopted both?

Then maybe @muevoid has the time to work on webkit2gtk?

Yes I do I can take everything left directly related to webkit2gtk minus vimb and gst-plugins and friends. Fyi afaik graphviz doesnt need groff.

@trbednarzyk I must not have realized while going through the list, apologies. Just resubmit the packages.

I will take over

gstreamer
gst-plugins
gst-plugins-base

I'll have a look at emacs, tabbed and pinentry-dmenu. I could adopt them. It could take a few days.

Only emacs stuff and vimb now. Thanks everyone. :)

If I adopt emacs, I won't adopt emacs-git. Is it ok for you ?

That's fine. Do you use emacs? It's best that you adopt packages you have a vested interest in.

I still use it, but not a lot. For the moment it's better for me to have it in community.

@Vouivre libxaw3d is a dependency of emacs, care to adopt it?

Of course! :+1:

Thanks everyone


Fixed #28375 -- Fixed KeyError raised on reverse prefetch of a model with OneToOne primary key to non-pk field

https://code.djangoproject.com/ticket/28375

Pushed an update. Thanks!

Thanks for the review @charettes