TypeError running tests with Jasmine

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Steps to reproduce 🕹
Link to live example: https://codesandbox.io/p/sandbox/jasmine-error-lmnhhk
Steps:

Create a Next.js project
Add MUI packages
Add basic Jasmine stuff
Create a basic component & tests
Run the tests

Current behavior 😯
I get this error:
  Message:
    TypeError: getUtilityClass is not a function
  Stack:
        at eval (webpack://workspace/./node_modules/@mui/utils/esm/composeClasses/composeClasses.js?:13:30)
        at Array.reduce (<anonymous>)
        at eval (webpack://workspace/./node_modules/@mui/utils/esm/composeClasses/composeClasses.js?:11:32)
        at Array.forEach (<anonymous>)
        at composeClasses (webpack://workspace/./node_modules/@mui/utils/esm/composeClasses/composeClasses.js?:7:22)
        at useUtilityClasses (webpack://workspace/./node_modules/@mui/material/SvgIcon/SvgIcon.js?:42:78)
        at SvgIcon (webpack://workspace/./node_modules/@mui/material/SvgIcon/SvgIcon.js?:115:19)
        at renderWithHooks (webpack://workspace/./node_modules/react-dom/cjs/react-dom.development.js?:16305:18)
        at updateForwardRef (webpack://workspace/./node_modules/react-dom/cjs/react-dom.development.js?:19221:20)
        at beginWork (webpack://workspace/./node_modules/react-dom/cjs/react-dom.development.js?:21631:16)

Expected behavior 🤔
Tests run correctly
Context 🔦
I want to use Jasmine for testing...

If I edit<EMAIL_ADDRESS>file in the following way, all problems disappear...
export default function composeClasses(slots, getUtilityClass, classes = undefined) {
  const output = {};
  Object.keys(slots).forEach(
  // `Object.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.
  // @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208
  slot => {
    output[slot] = slots[slot].reduce((acc, key) => {
      if (key) {
        const utilityClass = getUtilityClass?.(key) ?? ''; // <-- Changed this
        if (utilityClass !== '') {
          acc.push(utilityClass);
        }
        if (classes && classes[key]) {
          acc.push(classes[key]);
        }
      }
      return acc;
    }, []).join(' ');
  });
  return output;
}

Your environment 🌎

npx @mui/envinfo
  System:
    OS: macOS 14.1
  Binaries:
    Node: 21.0.0 - ~/.nvm/versions/node/v21.0.0/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v21.0.0/bin/yarn
    npm: 10.2.0 - ~/.nvm/versions/node/v21.0.0/bin/npm
  Browsers:
    Chrome: 119.0.6045.159
    Edge: Not Found
    Safari: 17.1
  npmPackages:
    @emotion/react: ^11.11.1 => 11.11.1
    @emotion/styled: ^11.11.0 => 11.11.0
    @mui/base:  5.0.0-beta.24
    @mui/core-downloads-tracker:  5.14.18
    @mui/icons-material: ^5.14.18 => 5.14.18
    @mui/material: ^5.14.18 => 5.14.18
    @mui/private-theming:  5.14.18
    @mui/styled-engine:  5.14.18
    @mui/system:  5.14.18
    @mui/types: ^7.2.9 => 7.2.9
    @mui/utils:  5.14.18
    @types/react: ^18 => 18.2.35
    react: ^18 => 18.2.0
    react-dom: ^18 => 18.2.0
    typescript: ^5 => 5.2.2

I have opened a pull request (#39942)
@zannager @brijeshb42

After some debugging, this seems like an issue with the test runner and it's environment. When I just import it in node repl, the function is actually defined -
sandbox node
Welcome to Node.js v18.18.2.
Type ".help" for more information.
> require('@mui/material/SvgIcon')
{
  default: [Getter],
  svgIconClasses: [Getter],
  getSvgIconUtilityClass: [Getter]
}
> require('@mui/material/SvgIcon').getSvgIconUtilityClass(['hello'])
'MuiSvgIcon-hello'

Sorry for the newbie question, but I am not sure if the problem is related to the configuration of the testing environment (it is obvious to think so), I have tried many configuration options and the problem persists 😢.
Does anyone have any idea what the problem might be, how to solve it, or can throw any hints or tips?

@brijeshb42, do you have any details from your investigation?

@michaldudak I don't have it right now. But I just downloaded the codesandbox locally to test.

This may be fixed by EMS distribution improvements being worked on by @DiegoAndai in https://github.com/mui/material-ui/pull/41596


python36Packages.Logbook: 1.4.0 -> 1.4.1

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/python3.6-logbook/versions.
meta.description for python36Packages.Logbook is: '"A logging replacement for Python"'.

Checks done (click to expand)

built on NixOS

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 1.4.1 with grep in /nix/store/0icdsl08w5hby9z1d1hgs94lb7pkv3cn-python3.6-Logbook-1.4.1

directory tree listing: https://gist.github.com/82396e9ed5472f9fc3efc3cabe1da0c3

du listing: https://gist.github.com/2a86bf45c314ffc1de9525fff505440c

Outpath report (click to expand)

Outpath difference report
16 total rebuild paths
4 package rebuilds
4 x86_64-linux rebuilds
4 i686-linux rebuilds
4 x86_64-darwin rebuilds
4 aarch64-linux rebuilds
First ten rebuilds by attrpath
gmvault
python27Packages.Logbook
python36Packages.Logbook
python36Packages.Nikola

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/0icdsl08w5hby9z1d1hgs94lb7pkv3cn-python3.6-Logbook-1.4.1 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A python36Packages.Logbook https://github.com/r-ryantm/nixpkgs/archive/6c3558405bf15aa33bbe63cb0db5d2efe1bf017f.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/0icdsl08w5hby9z1d1hgs94lb7pkv3cn-python3.6-Logbook-1.4.1
ls -la /nix/store/0icdsl08w5hby9z1d1hgs94lb7pkv3cn-python3.6-Logbook-1.4.1/bin

Success on x86_64-linux (full log)
Attempted: python36Packages.Logbook
Partial log (click to expand)
tests/test_queues.py ssss...s.sss                                        [ 70%]
tests/test_syslog_handler.py ..                                          [ 71%]
tests/test_test_handler.py ..............................                [ 86%]
tests/test_ticketing.py s                                                [ 87%]
tests/test_unicode.py .......                                            [ 90%]
tests/test_utils.py ...................                                  [100%]

==================== 182 passed, 18 skipped in 2.10 seconds ====================
pytestcachePhase
/nix/store/0icdsl08w5hby9z1d1hgs94lb7pkv3cn-python3.6-Logbook-1.4.1

Success on x86_64-darwin (full log)
Attempted: python36Packages.Logbook
Partial log (click to expand)
tests/test_queues.py ssss...s.sss                                        [ 70%]
tests/test_syslog_handler.py ..                                          [ 71%]
tests/test_test_handler.py ..............................                [ 86%]
tests/test_ticketing.py s                                                [ 87%]
tests/test_unicode.py .......                                            [ 90%]
tests/test_utils.py ...................                                  [100%]

==================== 182 passed, 18 skipped in 2.42 seconds ====================
pytestcachePhase
/nix/store/4i3bj3j1vh0nh544xqnlc2ys46bak7kp-python3.6-Logbook-1.4.1

Success on aarch64-linux (full log)
Attempted: python36Packages.Logbook
Partial log (click to expand)
tests/test_queues.py ssss...s.sss                                        [ 70%]
tests/test_syslog_handler.py ..                                          [ 71%]
tests/test_test_handler.py ..............................                [ 86%]
tests/test_ticketing.py s                                                [ 87%]
tests/test_unicode.py .......                                            [ 90%]
tests/test_utils.py ...................                                  [100%]

==================== 182 passed, 18 skipped in 3.64 seconds ====================
pytestcachePhase
/nix/store/xx7f99a4hvv7r74pydq955cc607l6v74-python3.6-Logbook-1.4.1


Update 'how it works' for Password input

Made a clearer description of how to write labels and toggles when showing one or more password inputs.

Thanks for this contribution @edbrissenden!
Looks good to me too, I've also committed an edit to present as a bullet list to read a bit better.

@calvin-lau-sig7 It looks like your change upset prettier 😬 Would you be ok to run this (npm run lint:prettier -- --write) or do you want me to do it?

I can't do command lines, but I'll fix it manually, I'm assuming it's my bullet points.


MPV installation and players based on mpv

Hello, thank you so much for addinf support of Mpv player !! 🥇 💯
I followed the instructions to install mpv :
https://github.com/4gray/iptvnator/wiki/What-is-mpv-video-player-and-how-to-install-it-on-different-operating-systems%3F
and i donwload and install bat file contained in
bootstrapper.zip
https://sourceforge.net/projects/mpv-player-windows/files/latest/download
and a command prompt cmd window opens and installs mpv but I notice that there is a message "do not run this script while being an administrator", and I am using my windows 10 pc as an administrator and I have disables my anti virus for more speed, so have I been infected by a virus and malware by installing mpv player ?
concerning mpv, here are 4 excellent mpv gui players optimized for windows, linux ... and having many exceptional options, we hope these players based on mpv will be supported by our beloved Iptvnator in the future :)
https://coslyk.github.io/moonplayer.html
https://tsl0922.github.io/ImPlay/
https://github.com/mpvnet-player/mpv.net
https://github.com/mpvnet-player/mpv-gui

on the newer mac os operating systems and on silicone homebrew changed their root path to "/opt/homebrew/".
is there a way to manually point iptvnator to the executable mpv (/opt/homebrew/bin//mpv) ?

@bendschs I developed and tested on a M1 MacBook (macOS Ventura 13.2.1), also installed mpv via brew, no additional configuration was required.
Have you tried running mpv from the terminal, just using the mpv command? It's important that homebrew is specified in your $PATH (https://sourabhbajaj.com/mac-setup/Homebrew/), because node-mpv library which is used in iptvnator takes the path from there.
@trimechee Thanks for the feedback. I don't have a chance to test under windows at the moment :/ Perhaps someone else has tried mpv+iptvnator using windows?

@4gray Thank you :) when i saw the warning, i I cancelled the installation of the script that installs mpv, and i downloaded the latest stable version of mpv via this link from this famous site so no more need to install script or dig into beta version on sourceforge...
https://www.videohelp.com/software/mpv-media-player
maybe it will be a good idea to add a second new version of Iptvnator which already contains the executables of mpv player : a special version which contains modifications allowing mpv or other players to integrate more easily with Iptvnator....

in the terminal everything works as expected (see output).
the path environment is also set like suggested by brew (brew doctor would throw an error message if it was not).
iptvnator still does not seem to find mpv though (see screenshot).
Benno@B2 ~ % mpv
mpv 0.35.1 Copyright © 2000-2023 mpv/MPlayer/mplayer2 projects
 built on Sat Jan 28 04:49:47 2023
FFmpeg library versions:
   libavutil       57.28.100
   libavcodec      59.37.100
   libavformat     59.27.100
   libswscale      6.7.100
   libavfilter     8.44.100
   libswresample   4.7.100
FFmpeg version: 5.1.2

Usage:   mpv [options] [url|path/]filename

Basic options:
 --start=<time>    seek to given (percent, seconds, or hh:mm:ss) position
 --no-audio        do not play sound
 --no-video        do not play video
 --fs              fullscreen playback
 --sub-file=<file> specify subtitle file to use
 --playlist=<file> specify playlist file

 --list-options    list all mpv options
 --h=<string>      print options which contain the given string in their name

Benno@B2 ~ % which mpv
/opt/homebrew/bin/mpv
Benno@B2 ~ % brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
  /usr/local/lib/libDellMonitorSdkLib.dylib
  /usr/local/lib/libcpsrt.dylib
  /usr/local/lib/libwkextmac.dylib

hello, same problem here, mpv installed using homebrew, cli is working but iptvnator say it's not installed

Hi. Same problem. MacOS 13.3 (22E252). Iptvnator and mpv installed by homebrew.
brew install --cask iptvnator
brew install --cask mpv

For people having problems on M1 macs with IPTVnator not able to find mpv, here is a "hacky" fix:

Install mpv with homebrew
Get the path of the binary: which mpv. Copy the path (ex: /usr/local/bin/mpv)
Modify these lines in the IPTVnator code source:
https://github.com/4gray/iptvnator/blob/47bf91b099bf0914ec126968e19b5f4b63ad18e7/electron/api.ts#L41
with:

const createMpvInstance = () => new mpvAPI({
    "binary": '[PATH OF THE BINARY]',
}, ['--autofit=70%']);

Build IPTVnator again (https://github.com/4gray/iptvnator#how-to-build)

Hopefully, IPTVNator should now be able to find mpv

@martingouy thanks for the tip!
Has anyone tried it? If it works, I'll add the option of specifying the path in the settings.

I'm having the same issue as well; if launched from Finder, IPTVnator fails to launch mpv. However, when I start IPTVnator manually (e.g. invoking /Applications/iptvnator.app/Contents/MacOS/IPTVnator from the Terminal), on the first channel opening, Terminal asks for microphone permission (I have no clue why) and mpv launches successfully afterwards.

Please try it with v0.14.0 - https://github.com/4gray/iptvnator/releases/tag/v0.14.0

I am experiencing the same thing with v0.14.0 where it fails to load MPV. I've installed MPV both from source and via brew with no luck. I've explicitly set the path as well as moved to a custom location with the same error.
The only way (using $PATH) is to launch via command the same as @berkaycagir - /Applications/iptvnator.app/Contents/MacOS/IPTVnator. I don't however get asked for microphone permissions when doing this. Once launched via cli it works without issue.
2023 MPB 14 Inch M2 - OS 13.4 (22F66)

Ohhh this so marvellous amazing !! Thank you so much @4gray for all these new awesome features and bug fixes :) 💯 🥇

Hey @4gray,
Do you think it can works using IINA ? Which is really the best player for mac so far :https://github.com/iina/iina and it's based on MPV ?

Seems to work if using this:
https://github.com/vitorgalvao/mpv-dummy/


could you please add a bit of docs to the readme?

Thanks ! 👍

Yep! The gist of it is it works as a glue layer between a client and neo4j, safely translating structured JSON (or protobufs) into Cypher. It's separated into Read, Merge, and Create queries and by using structured JSON/protobufs the backend client can edit the query without having to parse any Cypher.

It can also function as the base of an ORM—if somebody goes that route they'd have to write something like:
type Query struct { ... }

func NewQuery( ... ) *Query { ... }

// Match sets the Query's matching criteria based on the provided (perhaps named) pattern.
func (q *Query) Match(pattern *Vertex, name string, opt bool) *Query {
    // append graphpb.Match to Query
    ...
}

// Cypher returns the generated Cypher query, its arguments, and an error, if any.
func (q *Query) Cypher() (string, args, error)
    return QueryArgs( ... )
}

Thank you !

@jexp you're welcome! I clarified them a bit and added sample JavaScript.


Composer file with volume mount for db.sqlite

Hi,
I'm trying to try out snapp but I'm having issues with logging in, and it seems that the database isn't getting populated with data, I can't seem to find what I'm doing wrong here.
Here's what I have in the composer file (Portainer):
version: '3.9'
services:
  snapp-url-short:
   image: uraniadev/snapp:latest
   ports:
    - 43000:3000
   volumes:
     - /docker/tools-prod-snapp-url-short/v/db/db.sqlite:/app/prisma/db.sqlite
   environment:
    NODE_ENV: development
    DATABASE_URL: "file:./db.sqlite"
    DATABASE_PROVIDER: sqlite # mysql | sqlite | pg
    TOKEN_SECRET: [>REDACTED<] # openssl rand -base64 32
    ORIGIN: https://url.[>REDACTED<]
    TIMEZONE: Europe/London

    #DATABASE_POSTGRES_URL= # "postgresql://root:password@postgres:5432/snappdb"
    #DATABASE_MYSQL_URL= # "mysql://root:password@mariadb:3306/snappdb"

    ADMIN_USERNAME: [>REDACTED<] # must be specified on first launch as it initiate the database
    ADMIN_EMAIL: [>REDACTED<] # must be specified on first launch as it initiate the database
    ADMIN_PASSWORD: [>REDACTED<] # must be specified on first launch as it initiate the database
    PORT: 3000 # app port
    #PUBLIC_UMAMI_WEBSITE_ID: # uuid  #https://github.com/umami-software/umami
    #PUBLIC_UMAMI_WEBSITE_URL: # https://umami.example.com/script.js
    DISABLE_HOME: false
    ENABLE_SIGNUP: false
    VTAPI_KEY: [>REDACTED<] # VIRUSTOTAL API KEY
    SMTP_HOST: [>REDACTED<] # host smtp.example.com
    SMTP_USER: [>REDACTED<] #<EMAIL_ADDRESS>    SMTP_PASS: "[>REDACTED<]" # account password
    SMTP_FROM: [>REDACTED<] #<EMAIL_ADDRESS>    SMTP_PORT: 465 # 465
    SMTP_SSL: true # true

I've created an empty db.sqlite file on the volume location.
The logs state:
Prisma schema loaded from prisma/sqlite/schema.prisma
✔ Generated Prisma Client (v5.18.0) to ./node_modules/@prisma/client in 326ms
Start by importing your Prisma Client (See: http://pris.ly/d/importing-client)
Tip: Want to react to database changes in your app as they happen? Discover how with Pulse: https://pris.ly/tip-1-pulse
npm notice
npm notice New minor version of npm available! 10.8.2 -> 10.9.0
npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.9.0
npm notice To update run: npm install -g<EMAIL_ADDRESS>npm notice
Prisma schema loaded from prisma/sqlite/schema.prisma
Datasource "db": SQLite database "db.sqlite" at "file:./db.sqlite"
1 migration found in prisma/migrations
No pending migrations to apply.
-------------------------------------------
             Welcome to Snapp!
-------------------------------------------
      Thank you for choosing this app.
      Have a great day and enjoy your
            experience with us!
-------------------------------------------
Listening on <IP_ADDRESS>:3000

While trying to login the console reads:
Failed to load resource: the server responded with a status of 403 (Forbidden)
What could be wrong here?

i have to update the docs, it is not clear enough, and there's a typo.
sqlite db is in database_schema folder, so /prisma/sqlite/db.sqlite, try to mount it that way
   - /docker/tools-prod-snapp-url-short/v/db/db.sqlite:/app/prisma/sqlite/db.sqlite

sorry my mistake

Hi, thanks for the reply. That did solve the sb.sqlite issue which now has content.
However, I'm still unable to login with the ADMIN_USERNAME and ADMIN_PASSWORD environment credentials, or with  admin/password if those are unset. The browser console reads the following errors (I've tried both using direct IP access and a local UPN via Nginx):

Container logs don't point to anything abnormal:
Prisma schema loaded from prisma/sqlite/schema.prisma
✔ Generated Prisma Client (v5.18.0) to ./node_modules/@prisma/client in 310ms
Start by importing your Prisma Client (See: http://pris.ly/d/importing-client)
Tip: Curious about the SQL queries Prisma ORM generates? Optimize helps you enhance your visibility: https://pris.ly/tip-2-optimize
npm notice
npm notice New minor version of npm available! 10.8.2 -> 10.9.0
npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.9.0
npm notice To update run: npm install -g<EMAIL_ADDRESS>npm notice
Prisma schema loaded from prisma/sqlite/schema.prisma
Datasource "db": SQLite database "db.sqlite" at "file:./db.sqlite"
1 migration found in prisma/migrations
Applying migration `20240808202925_init`
The following migration(s) have been applied:
migrations/
  └─<PHONE_NUMBER>2925_init/
    └─ migration.sql

All migrations have been successfully applied.
-------------------------------------------
             Welcome to Snapp!
-------------------------------------------
      Thank you for choosing this app.
      Have a great day and enjoy your
            experience with us!
-------------------------------------------
Listening on <IP_ADDRESS>:3000
VirusTotal API Key: configuration added to the database.
SMPT Setup: configuration added to the database.

What could be wrong?

you should use the same ORIGIN as ENV, the console log of your screen seems to redirect to http://snapp.-----.local, while your docker compsoe is https://url.
if using it on http:// remember env NODE_ENV to development
try to match those two :)

Thank you, that was it. I was [stupidly] expecting to be able to have an external URL set for the actual shortened URLs while only having local access to the dashboard. My apologies!
Thank you for this tool, it's looking great! If I may add some suggestions for future additions:

Prevent / confirm admin from being deleted accidentally (happened to me)
OAuth authentication

Actually you can, i never thought of it cause i prefer send my password through https, but if you mean to access it through VPN or in secure way, well it must match origin: .local
the get call for taking the url and redirecting (the frontend final use) can happen via https:// anyway, it doesn't use auth or stuff like that
i'm not sure about security thou.

On prevent admin deleting, well have to be honest happened to me too and i thought i fix'd it. i'll look into thaat

Thanks, so you understand the nuisance 😅

Actually you can, i never thought of it cause i prefer send my password through https, but if you mean to access it through VPN or in secure way, well it must match origin: .local
the get call for taking the url and redirecting (the frontend final use) can happen via https:// anyway, it doesn't use auth or stuff like that

I'm not sure I understood, but having unencrypted local access isn't a big deal in my case, but I do want the generated URLs to be available on the internet! Meaning having the ui on snapp.mylan.local and urls accessible on *.urls.mydomain.com, hence preventing public access to the UI.

so it should work as long as ORIGIN is the domain of the endpoint you want to login at :)


Duplicate images loaded

Version: 0.4.5
Expected Behavior

Images should be unique, no duplicate images should appear
Current Behavior

Currently, my bricks data only contains 2 unique images. I first initialize the bricks data to be an empty array, and then in the componentDidMount, I put 2 elements inside the array
constructor() {
        super();
        this.state = {
            tyu: []
        };
    }

componentDidMount() {
this.setState({
            tyu: [
                {
                    key: Math.floor((Math.random() * 100000000) + 1),
                    id: 0,
                    uri: 'https://img.purch.com/w/660/aHR0cDovL3d3dy5saXZlc2NpZW5jZS5jb20vaW1hZ2VzL2kvMDAwLzA5Ny85NTkvb3JpZ2luYWwvc2h1dHRlcnN0b2NrXzYzOTcxNjY1LmpwZw=='
                },
                {
                    key: Math.floor((Math.random() * 100000000) + 1),
                    id: 1,
                    uri: 'https://upload.wikimedia.org/wikipedia/commons/thumb/7/74/Cat-eating-prey.jpg/220px-Cat-eating-prey.jpg'
                },
            ]
        })
}

Possible Solution

Steps to Reproduce

Sample code
<Masonry
                                            sorted={false} // optional - Default: false
                                            columns={2} // optional - Default: 2
                                            bricks={this.state.tyu}
                                            spacing={1}
                                            imageContainerStyle={{
                                                backgroundColor: '#DCDCDC'
                                            }}
                                        />

Context (Environment)

Detailed Description

Possible Implementation

I'm having this issue too.

@vvavepacket Just ran the exact code within the example repo, no issues on duplications. From the looks of the warning notifications it appears the parent component maybe rendering multiple times, which would make me believe there is some configuration issues with the navigators or tabs.
Maybe want to console within the components and react-native-masonry to make sure nothing funky is going on.

Confirmed on React Native v0.54.
@brh55  Why don't you test on recent react-native versions?

Hi, is 0.5.0 branch valid enough for using it / merging soon in master ?

@lc3t35  It is valid enough, I just been a bit busy with a start up to add some additional features I've been wanting to include with the release.

I'm having this issue too.

@brh55 when are you planning to merge version 0.5.0 in master. I am having duplicate images issue, single column render issue when images are cached (only first time works as expected) and sometimes images are left biased. Can you present some solution for now?

Just published current state of v0.5.0 as an alpha prerelease (v0.5.0-alpha.1). I haven't properly tested this, so feel free to test this and report any issues.
An npm install should default to this pre-release.

@brh55 Duplicate image issue has been resolved on my side, but other two issues still persist. Although, single column render issue is not consistent on ios but consistent on android. I am attaching an image as a reference. Is there any quick fix for this?

@ahmedjamshed let's move this to a new thread for v0.5.0

@brh55 I fetch the data from my website api, then display them. My issue is after onPress into a details screen, the duplicate warning will appear. I am attaching some images to show the problem.

There is a known issue if all bricks haven't resolved completely, and there is a state change, a duplicated request will be made for the bricks that have not been placed. Haven't seemed to find a good way to get around this, while preventing a full reload.


Can not use \textcolor , always render as white color

Description of bug / unexpected behavior

Same as title
Expected behavior

Should render the text in red color
How to reproduce the issue

Code for reproducing the problem
from manim import *

class Demo(Scene):
    def construct(self):
        myTemplate = TexTemplate()
        myTemplate.add_to_preamble(r"\usepackage{color}")
        mtex = MathTex(
            "\\textcolor{red}{red}",
            tex_template=myTemplate)
        self.add(mtex)

Logs
Terminal output

docker run --rm -it -v "/Users/zhangsn/Dev/manim:/manim" manimcommunity/manim manim -qm scenes.py Demo
Manim Community v0.18.1

[05/23/24 09:09:46] INFO                                                                                scene_file_writer.py:737
                             File ready at '/manim/media/images/scenes/Demo_ManimCE_v0.18.1.png'

                    INFO     Rendered Demo                                                                                scene.py:247
                             Played 0 animations

System specifications
System Details
use docker manimcommunity/manim  Manim Community v0.18.1

LaTeX details

LaTeX distribution (e.g. TeX Live 2020):
Installed LaTeX packages:

Additional comments

You cannot use color inside your LaTeX, that is a known limitation in Manim.
(Otherwise almost all text would always be invisible since the default color in LaTeX is black, while by default Manim uses a white background...)
You will have to color your LaTeX objects in Manim afterwards using .set_color(). Or the different additional commands for "automatic" coloring - which might fail though, because of their respective limitations.
class Demo(Scene):
    def construct(self):
        myTemplate = TexTemplate()
        mtex1 = MathTex(
            r"\text{red}\,\int_0^\infty x\,\text{d}x",
            tex_template=myTemplate
        )
        mtex2 = Tex(
            r"red blue yellow",
        ).next_to(mtex1,DOWN)
        mtex1.set_color(RED)
        mtex2[0][0:3].set_color(RED)
        mtex2[0][3:7].set_color(BLUE)
        mtex2[0][7:].set_color(YELLOW)
        self.add(mtex1,mtex2)

Thanks for the reply.😄


ALL NEW UPDATES

Isnt BSO literally labeled the experimental bot
Okay well

Dont delete BSO anytime soon cuz its too popular
Put all the updates on a test run through BSO first, because the BSO channel is so active that we can be the “beta” testers for all updates so something like the Food update doesnt happen again because BSO players will give an honest opinion.
I recommend having a BSO dedicated Mod, i’d nominate myself but yeah.
Add more BSO commands because OSB has a bunch of commands that BSO doesnt

No actual issue, Magna assigns moderators based on activity, knowledge and usefulness for the server. BSO is a experimental fun bot, not a test bot as first thought. Updates are cared about for BSO aswell as OSB. But BSO got more freedome of changes. More commands is coming to both modes whenever time and creativity flows.
Close issue.


Create SETI-CustomBarnKit.netkan

Another small mod addition.
Rest of the netkan file self-administered as usual for faster trouble shooting/compatibility fixing.
Thank you very much and best regards,
Yemo

@Y3mo you forgot a comma in the version file

Damn, too much copy pasting,
corrected.
Thank you very much!

Looks good, merging with my thanks


Add Builder to configure Compress/Decompress.

To allow more control over certain parameters (e.g. the window size) and to not break the existing API, a configuration builder is added in this PR. The control is needed for example to properly implement the permessage-deflate extension of RFC 7692.
I chose to restrict the window bits to the range of 9 ..= 15 (instead of 8 ..= 15), because of zlib's recommendation in deflateInit2:

For the current implementation of deflate(), a windowBits value of 8 (a window size of 256 bytes) is not supported. As a result, a request for 8 will result in 9 (a 512-byte window). In that case, providing 8 to inflateInit2() will result in an error when the zlib header with 9 is checked against the initialization of inflate(). The remedy is to not use 8 with deflateInit2() with this initialization, or at least in that case use 9 with inflateInit2().

Thanks for the PR! I think though in this case having a builder may be a bit overkill, could a new constructor taking the window bits parameter be added?

I am fine with using an additional constructor instead of a builder. However I am not sure how to name it. What would be your preference?

I'd be fine with something like new_with_window_bits or something like that?

Thanks! One thing I may have missed though, how come these are only available on zlib?
(could the documentation be updated to reflect that as well?)

[..] how come these are only available on zlib?

@oyvindln pointed it out above, linking to https://github.com/alexcrichton/flate2-rs/blob/master/miniz-sys/miniz.c#L195

could the documentation be updated to reflect that as well?

Sure, I'll add a note.

Aha that must be why I didn't expose this originally as well!
Thanks!

@alexcrichton: Thanks for merging this! Do you plan to publish a new version to crates.io anytime soon?

Sure thing, published now!

Thanks a lot!


doc: getting_started: Clarify MSYS2 instructions

The MSYS2 installer does not include an updated version of the package
database, so users need to update it first in order to install all of
the required dependencies. Additionally, the repo must be cloned before
being able to install the Python requirements.
Signed-off-by: Carles Cufi<EMAIL_ADDRESS>

@joakimtoe please take a look

@dbkinder this will change yes. Remains to be seen how much.


Chakra UI example update.

Closes #335
Update the example as described here and use the last create-remix template.

I know it's been a little while, but when I try to attempt this after upgrading to Remix 2.15.0, I'm getting this error:
TypeError [ERR_INVALID_STATE]: Invalid state: ReadableStream is locked

Maybe something to do with using renderToString and then renderToPipeableStream? It's a little confusing to me right now. When I remove the steps around rendering to string -> extracting critical chunks and just start with the render to pipeable stream the error seems to go away. 🤔

@ITSjwags have you been able to solve it? I'm also stuck on how to convert it
  const html = renderToString(
    <ServerStyleContext.Provider value={null}>
      <CacheProvider value={cache}>
        <RemixServer context={remixContext} url={request.url} />
      </CacheProvider>
    </ServerStyleContext.Provider>,
  )

  const chunks = extractCriticalToChunks(html)

@ITSjwags have you been able to solve it? I'm also stuck on how to convert this part:
  const html = renderToString(
    <ServerStyleContext.Provider value={null}>
      <CacheProvider value={cache}>
        <RemixServer context={remixContext} url={request.url} />
      </CacheProvider>
    </ServerStyleContext.Provider>,
  )

  const chunks = extractCriticalToChunks(html)

@mariojsnunes  I haven't been able to solve it yet, other than removing that step. Which doesn't seem like the best approach.


🐛: runbiosimulations claims that no simulator can perform generic steady state analysis

Contact Details
No response
Location
runBiosimulations
What happened?
I uploaded
Figure5.omex.zip
to runbiosimulations and all of the simulators are greyed out. There are actually plenty of simulators who could handle this file.
What made it happen?
[ibid]
Version
Production (Deployed on a .org domain)
What browsers are you seeing the problem on?
Chrome
Relevant log output
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

I believe this is correct. Tools, including libRoadRunner, do steady state analysis with other methods.

It's true that roadrunner uses a function called 'steadyState' when running a steady state analysis, and a function called 'simulate' when running a time course.  But you can use the same model object for both.
Also, this is irrelevant to this particular SED-ML file:  the tasks either use simulate or steadystate, but never both.

Wait, maybe by 'method' you meant 'the particular KiSAO term 407'?  Which is the 'wrong kind' of steady state?  I'm not sure how much more generic you could get than 'steady state'; it's a direct child of 'modeling and simulation algorithm'.  Though it seems to also inherit from 622, flux balance method?  I guess I don't understand how the hierarchy works here.  If 407 isn't 'some sort of steady state analysis' then I guess we need a new KiSAO term for that, though I'm 99% sure that 'some sort of steady state analysis' is the term's original intended use.

Simulation is CVODE. Steady state is NLEQ2. These are different methods/algorithms. Biosimulators relies on tellurium/libroadrunner advertising that it can do steady state SED-ML tasks with NLEQ2 (KISAO_0000569).
We don't use the KISAO hierarchy for this. In fact, we never strictly rely on the KISAO parent-child hierarchy. KISAO isn't intended to be used this way. KISAO also uses other types of relationships to algorithm characteristics. This provides a much more flexible way of encoding knowledge that avoids forcing one specific top-down categorization of algorithms.

That's great, but this SED-ML file needs to say that it doesn't care what method is used to calculate the steady state.  Is 407 not sufficient for that?

I tried looking for the place where this information is stored, but couldn't find it--it doesn't seem to be in the code base in this repository, nor in the one at biosimulators_utils.  Can anyone point me in the right direction?

This is sourced from the capabilities of the individual simulation tools which are stored in the BioSimulations MongoDB database. The capabilities are loaded each time a simulation tool is pushed to the registry.

Ah, good to know.  I assume that there's code somewhere that matches up those capabilities to the kisao terms in the SED-ML files?  I assume that's the place we'd want to add 'the SED-ML file asked for 407; this simulator provides 569, which matches'.

The fuzzy/similarity search over KiSAO is implemented in the KiSAO Python package. This relies on information encoded into the ontology.

OK, so that means that we need to add this information to the KiSAO ontology directly, though not using the parent/child hierarchy, but some other relationship.
I'm not very familiar with Protege, but browsing the ontology with it, I'm not seeing anything that looks like these other relationships, so they must be somewhere I'm not looking.  When looking directly at (say) NLEQ1, all it says is that it's a subclass of 'Newton-type method', that it has the characteristic 'continuous variable', and has some parameters.  The Newton-type method itself seems to have more information:  several methods it is 'disjoint with'.
(Looking at the raw file, I'm not finding this either, I guess.)
What kind of relationship would need to be added to every specific steady-state solving algorithm to indicate that they were all particular methods that could be used to answer 407, the general 'find the steady state' term?

The logic is at https://github.com/SED-ML/KiSAO/blob/6aff1ba7577b31a74883176ed174f4bd537aca0e/libkisao/python/kisao/utils.py#L285.
Because KiSAO is not encoded sufficiently consistently, some of the logic is added at the libkisao level.

OK, it looks to me like that that get_substitutable_algorithms_for_policy doesn't deal with steady state algorithms at all, which would explain why I ran into my problem--I assume that without some sort of substitution policy, it only allows identical matches.
It also looks like the functions in general rely on characteristics, so (eg) all ODE algorithms have "'has characteristic' some 'ordinary differential equation problem'"  I assume this means that the best way to implement this would be to add "'has characteristic' some 'steady state problem'" to the algorithms in question?  And then add functions like 'get_steady_state_algorithms' to the Python API?

I didn't implement something similar because only a few steady-state algorithms were registered.

The same problem exists for
https://sed-ml.org/examples/L1V3/L1V3_repeated-steady-scan-oscli.omex
which likewise believes that nothing can simulate the steady state simulations (in fact, at least tellurium and copasi can do both).
Also:  I updated the file to claim that it could only be done with 569, at which point it said that only tellurium could simulate the model.  This is also wrong: at least Copasi can simulate it fine, and I'm pretty sure there are others as well.
It is no surprise that existing examples and SED-ML created with phrased-ml (as this was) use use 407; that's the only KiSAO term that existed for steady state simulations from 2012 through 2020.  You yourself added 568 and 569 in 2020, which is reasonable enough, but to go further and insist that people must use the brand new terms seems a little gauche, at the very least.


Add Documentation to Recommend Using GraalVM JDK 17 Version to 17.0.12 to Align with GFTC License Terms

Description:
This PR will update to recommend using graalvm 17 version to comply with the GraalVM free terms and conditions license(GFTC).

Hi @aparnajyothi-y, thanks for the PR. I work on the GraalVM at Oracle and contributed GraalVM support.
Instead of adding a note like this, we are using a different approach in setup-graalvm: we let java-version: '17' default to 17.0.12 and emit a job warning.
Do you think it would make sense to do the same in setup-java?

Hello @fniephaus, Thank you for the suggestion. Based on further investigation, it wouldn’t be feasible to adopt the same approach for Java 17 as in setup-graalvm at this time, because the end of GFTC support for version 17.0.12 has not yet been confirmed. As a result, we cannot be certain whether this will be the final update of Java 17 with GFTC license support, or if future versions will follow the same model.
Given this uncertainty, we’ve decided to update the documentation instead of implementing the same defaulting approach as in setup-graalvm.
We appreciate your understanding!

Hello @fniephaus, a gentle reminder to check if you have any further questions or need additional clarifications on the above.

Thanks for the ping, @aparnajyothi-y!
The blog post that introduced GFTC said the following about timelines:
"For designated Long Term Support releases (GraalVM for JDK 17), Oracle will provide these free GFTC releases until one full year after the subsequent LTS release".
According to the release calendar, Oracle GraalVM for JDK 17.0.12 is the last release under GFTC. The artifacts are still available and their license are not changed retroactively. In fact, the script-friendly URLs used by setup-java can only retrieve GFTC-licensed releases of Oracle GraalVM.
The end of permissive license was also announced here.
So, I'd still recommend to let 'java-version: 17' fall back to 17.0.12 while displaying a warning that notifies users of their options (upgrading to JDK 21 is recommended).
What do you think?


Lambda function does not finish and times out

Describe the bug
Hi there. I've been enjoying using Laconia for my lambda-based project, thanks for developing it.
I'm encountering an issue where my Lambda function executes properly, and I can see from the logs that it reaches the final line of the function (the return statement). However lambda doesn't seem to be aware that the function has finished, so it hangs until the configured timeout and then throws a timeout error.
To Reproduce
Here's a "toy" summary of my code:
import laconia from '@laconia/core';
import myAdaptor from 'Adaptors/myAdaptor';
import getDbConfig from 'Infrastructure/database/getDbConfig';
import connect from 'Infrastructure/database/connect';

const factory1 = async () => ({ dbConfig: await getDbConfig() });
const factory2 = async ({ dbConfig }) => ({
  connection: await connect(dbConfig),
});

const app = async (event, { connection }) => {
 let result;
  try {
    result = await connection.performQuery(event);
  } catch (err) {
    console.error('query error: ', err);
    result = err;
  }
  await connection.end();
  console.log('query result: ', result);
  return { result: result };
});

export default laconia(myAdapter(app))
  .register(factory1)
  .register(factory2);

When I invoke this function, the query and logging all happens within 1 second. Then the function waits 10 seconds before returning an error:
{
  "errorMessage": "2019-06-08T17:00:51.417Z SOME_UUID Task timed out after 10.00 seconds"
}

Expected behavior
I'm expecting the function invocation to gracefully terminate at the end of the execution of the logic in the app.
Actual behavior
All logic executed, then the function waits until the timeout.
Additional context
I'm using serverless-mysql as my DB client.

Thanks for filing this bug!
Do you happen to have set context.callbackWaitsForEmptyEventLoop = false; anywhere in your code? That could be the cause of the problem, as your event loop will always have the DB connection.

Seems like the serverless-mysql plugin also mentioned this, check it out here.

Thanks very much @ceilfors, that was the solution! I should have suspected it was serverless-mysql because my other laconia lambdas do not time-out and do not connect to a database.
I have a quick followup question. In the docs it says:

Laconia would recommend not using context or event in your application core as this is AWS specific

So I'm wondering where the recommended place to set callbackWaitsForEmptyEventLoop is? At the moment I have it in the lambda function itself:
const app = async (event, { connection, context }) => {
  let result;
  context.callbackWaitsForEmptyEventLoop = false;
  //...
});

Is there a better place? I was thinking it could happen in an adaptor since that's provider-specific, but I don't think the adaptor has access to the context.

@disbelief No worries!
That's right, you should set it in the adapter. I can't see your code for myAdapter, but the second argument of an adapter would be LaconiaContext, which would contain context as well, just like how you have done it in the app.

That makes sense. Thanks again @ceilfors !
If I could make one request regarding the Laconia documentation it would be a little more detail about adaptors, particularly writing my own custom adaptors.

@disbelief That's a good idea. Would you mind contributing by filing an issue describing what kind of problems you are facing when you're creating your own adapter? It would be great if we can ensure the documentation are covering all those problems.

Sure I'll put together my thoughts in a separate issue.


Add config rule for auto categorizing labels

To address issue #83
Signed-off-by: Mingshi Liu<EMAIL_ADDRESS>

Codecov Report

Merging #84 (5b1886c) into main (2308941) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main      #84   +/-   ##
=========================================
  Coverage     65.52%   65.52%
  Complexity      172      172
=========================================
  Files            29       29
  Lines           879      879
  Branches        119      119
=========================================
  Hits            576      576
  Misses          254      254
  Partials         49       49

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@noCharger aligned to create 1 to 1 relation between label and category. modified in label to category 1:1 mapping

@mingshl Let's make sure all labels are created as well.

@mingshl Let's make sure all labels are created as well.

still waiting for getting maintenance access to create new labels.


check for detail

"consolidated view of recommendations for all your Azure resources" includes AAD?  confused and conflicted.
according to FAQ in overview page (No AAD check):
What resources does Advisor provide recommendations for?
Advisor provides recommendations for virtual machines, availability sets, application gateways, App Services, SQL servers, and Azure Cache for Redis.

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

ID: bb9a519b-1be5-1df8-c1a8-7e45b4a124b3
Version Independent ID: 4fb7e449-66e0-5a0e-c6cb-272accc03e88
Content: Make resources more secure with Azure Advisor
Content Source: articles/advisor/advisor-security-recommendations.md
Service: advisor
GitHub Login: @kasparks
Microsoft Alias: kasparks

@keithcn Thanks for the feedback! We are currently investigating and will update you shortly.

@keithcn Azure advisor does provide recommendation for security related issues and AAD is part of that security & Identity. Reference: https://docs.microsoft.com/en-us/azure/advisor/advisor-security-recommendations It gves you recomendations but for managing azure security recommendations you go to security center. See this link - https://azure.microsoft.com/documentation/articles/security-center-recommendations/ for details.

so it should be modified in here:  https://docs.microsoft.com/en-us/azure/advisor/advisor-overview   in FAQ section:
it doesn't mention AAD resouce.
What resources does Advisor provide recommendations for?
Advisor provides recommendations for virtual machines, availability sets, application gateways, App Services, SQL servers, and Azure Cache for Redis.

@kasparks Could you please check on this request and update the document as appropriate?

Thanks for the question. I've updated the documentation.
#please-close

#please-close

@kasparks Thanks for updating the thread.
@keithcn Closing this issue for now. Feel free to reply to this thread if you've any concerns in this matter.


Repackage Recorded Future

Required items, please complete
Change(s):

See guidance below

Reason for Change(s):

See guidance below

Version Updated:

Required only for Detections/Analytic Rule templates
See guidance below

Testing Completed:

Test Doc

Checked that the validations are passing and have addressed any issues that are present:

See guidance below

Guidance <- remove section before submitting

Before submitting this PR please ensure that you have read the following sections and filled out the changes, reason for change and testing complete sections:
Thank you for your contribution to the Microsoft Sentinel Github repo.

Details of the code changes in your submitted PR.  Providing descriptions for pull requests ensures there is context to changes being made and greatly enhances the code review process.  Providing associated Issues that this resolves also easily connects the reason.

Change(s):

Updated syntax for XYZ.yaml

Reason for Change(s):

New schema used for XYZ.yaml
Resolves ISSUE #1234

Version updated:

Yes
Detections/Analytic Rule templates are required to have the version updated

The code should have been tested in a Microsoft Sentinel environment that does not have any custom parsers, functions or tables, so that you validate no incorrect syntax and execution functions properly.  If your submission requires a custom parser or function, it must be submitted with the PR.

Testing Completed:

Yes/No/Need Help

Note: If updating a detection, you must update the version field.

Before the submission has been made, please look at running the KQL and Yaml Validation Checks locally.
https://github.com/Azure/Azure-Sentinel#run-kql-validation-locally

Checked that the validations are passing and have addressed any issues that are present:

Yes/No/Need Help

Note: Let us know if you have tried fixing the validation error and need help.

References:

Guidance for Detection checks
General contribution guidance
PR validation troubleshooting

Working on it

This will conflict with updates in PR https://github.com/Azure/Azure-Sentinel/pull/6307#issuecomment-1327031038. We plan to look over the texts and update instructions and include pictures in the future. I'm just waiting for the 6307 PR to merge.

Hey @RecordedFutureOskbo, please let us know once that PR is merged, so that we can resolve conflicts and merge this as well, thanks.

Hey @v-mchatla, can you please merge https://github.com/Azure/Azure-Sentinel/pull/6307#issuecomment-1327031038 , this Pr so that we can proceed with this, thanks.

@v-atulyadav, as the changes from other PR are merged can you check and resolve the conflicts, thanks.

@v-atulyadav, as the changes from other PR are merged can you check and resolve the conflicts, thanks.


Primary Key

This issue also concerns the DSH integration.
DSH needs information about the Primary Key of the tables.
This is obviously not a small issue, but I am curious, whether you think that the addition of this feature would generally make sense.

@freddie-freeloader would you mind opening an issue with a high level description of the integration with DSH and some examples of generated queries? It'd make easier to understand the necessary changes.

Sure. I am creating some example queries right now.

I think this doesn't require a quill-core change, the DSH mode could provide a marker trait and determine the primary key using reflection on the types provided by https://github.com/getquill/quill/issues/154. Wdyt?

Example of what I have in mind:
case class Person(id: Int with PrimaryKey, name: String, age: Int)

That's a great idea. :smile:


Add customizations for building unattended Anaconda installers

Followup to #417 and #436.
This PR makes the two new installer options configurable in the blueprint. A new section is added called Installer with two options:

unattended: adds options to the kickstart to make the installation fully unattended.
wheel-sudo-nopasswd: adds a %post section to the kickstart file that creates a sudoers.d drop-in enabling NOPASSWD for the wheel group.

(I'm open to suggestions on option naming)
These options are required as part of the RHEL Edge service migration.  I enabled the options for all Anaconda-based installers except the Fedora live installer.
Note that in the two previous PRs, the options were enabled by default for Edge installers.  This is a major default image configuration change to be done by default, so we decided it needed to be a user-configurable option.
Initially the idea for this PR was just to make the two changes optional and deduplicate some of the kickstart inclusion handling, but a bit of tidying up of the pipeline code was also needed to make things more readable.  Also making the options interact with the other blueprint settings seemed like a sensible addition.
DRAFT: Needs tests

I did have one question though...I am seeing a future strong need to support injecting nearly arbitrary kickstarts into bib-generated ISOs; at least around partitioning.  This seems to make some important cleanups and generalizations, but still aims to front kickstarts by blueprints in general - except I guess it is now more obvious for something like bib to use the Go API to inject kickstarts directly that were passed externally?

I've been thinking about that a bit.  There's an explicit choice here to make something which can only be done through injection (creating a sudoers drop-in) a blueprint option.  I'm not entirely happy with the choice though because it's not just that it's a drop-in, it's a specific option (NOPASSWD) for a specific group (wheel), but I think it's a common enough change to make it useful as an option.
But more generally, we can't hope to support everything users want to add to their kickstarts and all we're doing is creating extra work for them because they will, in the end, always end up injecting their own bits after build, which is tedious.  So there's definitely some pressure there to support some kind of command injection.
For "API users" (like BIB), this is a much easier decision to make.  I think as a next step we can add a way for users linking against the library to pass things through.

The Fedora ISO is refusing to work with the options I'm setting.  Doesn't start the installation and simply reboots.  Need to dig into it.

I think the blueprint changes will also need to be synced to osbuild-composer, right? Also, the cloudapi blueprint schema will need to be updated, hooked up, etc.

I think the blueprint changes will also need to be synced to osbuild-composer, right? Also, the cloudapi blueprint schema will need to be updated, hooked up, etc.

Yup.  Hoping to get a PR in composer ready before this is merged.

Added some unit tests for the generation of the AnacondaInstallerISOTree pipeline that was refactored heavily in this PR.  The test checks that the expected stages are added to the pipeline and none of the others from alternative payload types are added.

I'm marking this as ready because I feel like the core functionality is there now and the unit tests cover it nicely.
I'd like to do the rest in follow-up PRs to keep this one from getting even longer.
Namely, things for follow-up are:

Naming the sudoers option in the blueprint (@bcl)
Boot tests for ISOs in CI
Different default values for different distros

Enabling the option for Fedora¹

¹ Still haven't figured out why that doesn't work.

FTR: This is only an issue with the image-installer which I suspect is related to the installation or configuration we do for the webui, which we don't do in the iot-installer.

@mvo5 I hope your comments have been adequately addressed :)


Icon request: Logitech

URL for the brand / site / app
https://www.logitech.com/
Logo resources for the icon
No response
Proof of the Aegis-compatible 2FA
https://github.com/2factorauth/twofactorauth/pull/7083

Anything else?
No response
Confirmation

[X] I have read and followed the issue guidelines & issue form.

Here you go!
https://github.com/aegis-icons/aegis-icons/blob/master/icons/1_Primary/Logitech.svg

:question: How to add icon(s) to Aegis?
:star: Support this project by giving a star! Just adding like to this comment is also appreciated.


feat: set global meter provider when configureMeterProvider is not defined

If you want to create a custom metric, there's no way to access the wrapper metric provider in the lambda code.
Usage:
const meter = metrics.getMeterProvider().getMeter('default');

getMeterProvider will return the globally configured meter provider

good catch!

Since we have a ticket targeting this as a bug, wondering if this should be released as a hotfix


Fail to download the model

Hi, it seems that the google drive links are expired and I can't download models using the provided links . Could you update the links? Thanks!

I am facing the same issue.

Apologies for the late reply and the inconvenience. The previous links are unavailable due to a service termination.
As a temporary solution, we’ve uploaded all the models to this Google Drive folder. You can access and use them as described here in README.
Please let us know if it still doesn't work for you. We are working on restoring the automatic downloading.  Thank you for your patience!


Implement Support for Multiple Runners per EC2 Instance

Hey there,
It might be interesting if we could set multiple runners per instance. Because with AWS there is often a shortage of instances, especially the m7a type. We're still sticking with ARC because we can run multiple jobs in one instance, which provides more garantee in case of shotage.

@theophileds hello, RunsOn automatically handles this case, just add multiple family types to your runs-on definition, and it will pick the one that is available at the time of launching.
v1.7.3 also introduced m7i-flex as a default instance type, which is more widely available everywhere, and less subject to interruptions.
See https://runs-on.com/reference/benchmarks-ec2-instances/, which I've just released.

See https://runs-on.com/features/custom-runners/ for how to define the family label, either inline in the runs-on:  definition, or via config file.

That's great!
Thanks.

@theophileds can I close? If you'd like some more details, just send me an email at<EMAIL_ADDRESS>Thanks!


NIFI-10945: Create a PostgreSQL Controller Service

Summary
NIFI-10945
Tracking
Please complete the following tracking steps prior to pull request creation.
Issue Tracking

[x] Apache NiFi Jira issue created

Pull Request Tracking

[x] Pull Request title starts with Apache NiFi Jira issue number, such as NIFI-00000
[x] Pull Request commit message starts with Apache NiFi Jira issue number, as such NIFI-00000

Pull Request Formatting

[x] Pull Request based on current revision of the main branch
[x] Pull Request refers to a feature branch with one commit containing changes

Verification
Please indicate the verification steps performed prior to pull request creation.
Build

[ ] Build completed using mvn clean install -P contrib-check

[ ] JDK 8
[ ] JDK 11
[ ] JDK 17

Licensing

[x] New dependencies are compatible with the Apache License 2.0 according to the License Policy
[x] New dependencies are documented in applicable LICENSE and NOTICE files

Documentation

[ ] Documentation formatting appears as expected in rendered files

@Lehel44 Thanks of adding this database-specific connection pool controller service for PostgreSQL!
Can you please eliminate the RAT and Checkstyle issues first? Please also use the current snapshot version in poms: 1.20.0-SNAPSHOT


duplicate node records in postgres (nodes) table

User Story
There are a few different ways a node can get added to the nodes postgres table (this is the data that serves the api/v0/nodes/search api).

a client run report is ingested, so we send information to the nodemanager about the node
a compliance report is ingested, so we send information to the nodemanager about the node
a user "manually" adds the node by accessing compliance/scan-jobs/nodes/add and entering information about some nodes
a user creates an aws, azure, or gcp node integration by visiting settings/node-integrations/add

A user recently reported that when they created an aws-ec2 integration, they ended up with duplicate node records under the nodes/search api.  Since chef-client was running on those nodes, we already had a record of them, but failed to recognize those nodes as the same object when ingesting information.
The nodes table has two different unique constraints:

the traditional id one, which correlates to the node uuid that is on the ingested report or created at time of object creation
a three-field unique match on source_id, source_region, and account_id. those fields, when referencing a node in aws, correlate to the instance-id of the node, the region in which the node exists (e.g. us-east-1), and the id of the aws account in which it exists. for azure, this is the node id, region, and tenant id.

This specific user problem can be traced to a missing data field on the message sent from the client run ingestion path to the nodemanager. We are only sending the instance id and region, no account id. The work to add the account id (and ensure we're storing all the correct information when ingesting the node data) is in progress.
But there are other cross-points where the duplicate node object problem still exists.
@kmacgugan wrote a thing about this
It's important that we address these duplicate node situations as much as possible for the one node view epic. As part of that epic, we'll be exposing all those nodes records in the ui, which will make any duplicate node object issues more apparent.
Definition of Done

read kyleen's doc
figure out what node uuid work has already been done and what problems still exist
see if there are other problems (if a node is running chef-client via hab, what is the uuid for that node? is there a node uuid attached to each app in the ingestion process for apps?  do those ids match?)
have the applications-service ingestion process let the nodemanager know about the node the app is running on
create issues for the problems etc so we can address them

currently, the chef-client UUID can be set to the habitat ring member ID, but this is opt-in only.
The client.rb template is here: https://github.com/chef/chef/blob/cd444f5dfd39e4494e0a8495b20b39259dab923a/habitat/config/client.rb#L17-L19
and the default config is https://github.com/chef/chef/blob/master/habitat/default.toml#L36
I am not sure why this setting is disabled by default but if we can change it then we would be able to correlate services from the applications tab database with infra nodes.

Seems that effortless will use its own client.rb template that uses the hab UUID if automate is enable at all: https://github.com/chef/effortless/blob/e181a3dd3473fd9233f34d6b36ed2dfd06cc3d3c/scaffolding-chef-infra/lib/linux/client-chunk.rb#L13-L17

For inspec runs, we used to use the chef_guid file but I think that was pulled out. I don't know if that is something we have added back in yet. So, the inspec-infra UUID link exists when the audit cookbook is used but not inspec runs.
For the infra schema, we have the source_id, region_id, account_id or tenant_id buried in the ohai data currently. Does it make sense to pull these to a top level field (or object) for querying in the future? This would make querying the infra data set easier in the future.

For the infra schema, we have the source_id, region_id, account_id or tenant_id buried in the ohai data currently. Does it make sense to pull these to a top level field (or object) for querying in the future? This would make querying the infra data set easier in the future.

The ingest service already stores the instance id and region on the node object, so once we have the account id on there, that should take care of things (that's done over here).
Or are you talking pulling it into something else/at a diff level?

follow up issues to create:

work to have applications service tell nodemanager about the node running the application and service status
get azure metadata from ohai data in ingest service and save the values to the cloud values for the node


feat(preset-mini,preset-wind): add global keywords

Basically, adding handler.global almost everywhere. For static rules, makeGlobalStaticRules were introduced to help with this.

@chu121su12 Thank you for this!


[AuthService] return accountId from authorize call

@joaquim-verges this #1411 already has this change


Lap Prefabs and Simple Editor

Used Blender exported gltf files and parsing it instead as the solution for initial level data.


fix: rm superfluous header on actor example

Similar to:
https://github.com/dapr/go-sdk/issues/218
There is a superfluous header call show in the actors example:
al.placement type=log ver=edge
DEBU[0004] Executing reminder for actor testActorType||ActorImplID123456||testReminderName  app_id=actor-serving instance=Samanthas-MacBook-Pro-2.local scope=dapr.runtime.actor type=log ver=edge
== APP == 2023/09/08 14:15:37 failed to unmarshal reminder param, err: illegal base64 data at input byte 4
== APP == 2023/09/08 14:15:37 http: superfluous response.WriteHeader call from github.com/dapr/go-sdk/service/http.(*Server).registerBaseHandler.func6 (topic.go:199)

With the removal of the line in this PR, the superflous header is removed:
DEBU[0002] Executing reminder for actor testActorType||ActorImplID123456||testReminderName  app_id=actor-serving instance=Samanthas-MacBook-Pro-2.local scope=dapr.runtime.actor type=log ver=edge
== APP == 2023/09/08 14:16:24 failed to unmarshal reminder param, err: illegal base64 data at input byte 4

We still need the write header line that was removed, because it accounts for a situation where there's no error. What needs to be done is to add a return statement in all other WriteHeader code blocks before the StatusOk one. There are other places in the code with the same issue, so it'd be great to add those return statements there too.

ping @sicoyle

pong @yaron2

Could we add a test for it?

Hi @daixiang0 @sicoyle , can this be merged asap please?


Failing tests on Arch Linux with yaegi 0.7.6-1

Hi,
I am the yaegi package maintainer for Arch Linux.
When I do go test ./... I get failing checks for yaegi 0.7.6-1 on Arch Linux in a systemd-nspawn container:
?   	github.com/containous/yaegi	[no test files]
?   	github.com/containous/yaegi/cmd/goexports	[no test files]
--- FAIL: TestYaegiCmdCancel (9.91s)
    yaegi_test.go:67: failed to probe race: write |1: broken pipe
    yaegi_test.go:82: error running yaegi command for "for {}\n": exit status 2
    yaegi_test.go:67: failed to probe race: write |1: broken pipe
    yaegi_test.go:82: error running yaegi command for "select {}\n": exit status 2
FAIL
FAIL	github.com/containous/yaegi/cmd/yaegi	9.925s
ok  	github.com/containous/yaegi/example/closure	0.014s
ok  	github.com/containous/yaegi/example/getfunc	0.016s
ok  	github.com/containous/yaegi/example/pkg	0.024s
?   	github.com/containous/yaegi/internal/genop	[no test files]
--- FAIL: TestInterpConsistencyBuild (187.04s)
    --- FAIL: TestInterpConsistencyBuild/composite6.go (0.00s)
        interp_consistent_test.go:92: ../_test/composite6.go:6:2: import "github.com/containous/yaegi/_test/ct1" error: unable to find source related to: "github.com/containous/yaegi/_test/ct1"
    --- FAIL: TestInterpConsistencyBuild/import3.go (0.00s)
        interp_consistent_test.go:92: ../_test/import3.go:3:8: import "github.com/containous/yaegi/_test/foo" error: unable to find source related to: "github.com/containous/yaegi/_test/foo"
    --- FAIL: TestInterpConsistencyBuild/import4.go (0.00s)
        interp_consistent_test.go:92: ../_test/import4.go:3:8: import "github.com/containous/yaegi/_test/p1" error: unable to find source related to: "github.com/containous/yaegi/_test/p1"
    --- FAIL: TestInterpConsistencyBuild/import5.go (0.00s)
        interp_consistent_test.go:92: ../_test/import5.go:3:8: import "github.com/containous/yaegi/_test/foo" error: unable to find source related to: "github.com/containous/yaegi/_test/foo"
    --- FAIL: TestInterpConsistencyBuild/import7.go (0.00s)
        interp_consistent_test.go:92: ../_test/import7.go:3:8: import "github.com/containous/yaegi/_test/foo-bar" error: unable to find source related to: "github.com/containous/yaegi/_test/foo-bar"
    --- FAIL: TestInterpConsistencyBuild/import8.go (0.00s)
        interp_consistent_test.go:92: ../_test/import8.go:3:8: import "github.com/containous/yaegi/_test/b1/foo" error: unable to find source related to: "github.com/containous/yaegi/_test/b1/foo"
    --- FAIL: TestInterpConsistencyBuild/tag0.go (0.00s)
        interp_consistent_test.go:92: ../_test/tag0.go:6:8: import "github.com/containous/yaegi/_test/ct" error: unable to find source related to: "github.com/containous/yaegi/_test/ct"
--- FAIL: TestInterpErrorConsistency (0.62s)
    --- FAIL: TestInterpErrorConsistency/import6.go (0.03s)
        interp_consistent_test.go:210: got "../_test/import6.go:3:8: import \"github.com/containous/yaegi/_test/c1\" error: unable to find source related to: \"github.com/containous/yaegi/_test/c1\"", want: "import cycle not allowed"
Hello
In Hi:
hello from Myint 4
--- FAIL: TestFile (2.16s)
    --- FAIL: TestFile/composite6.go (0.00s)
        interp_file_test.go:72: ../_test/composite6.go:6:2: import "github.com/containous/yaegi/_test/ct1" error: unable to find source related to: "github.com/containous/yaegi/_test/ct1"
    --- FAIL: TestFile/import3.go (0.00s)
        interp_file_test.go:72: ../_test/import3.go:3:8: import "github.com/containous/yaegi/_test/foo" error: unable to find source related to: "github.com/containous/yaegi/_test/foo"
    --- FAIL: TestFile/import4.go (0.00s)
        interp_file_test.go:72: ../_test/import4.go:3:8: import "github.com/containous/yaegi/_test/p1" error: unable to find source related to: "github.com/containous/yaegi/_test/p1"
    --- FAIL: TestFile/import5.go (0.00s)
        interp_file_test.go:72: ../_test/import5.go:3:8: import "github.com/containous/yaegi/_test/foo" error: unable to find source related to: "github.com/containous/yaegi/_test/foo"
    --- FAIL: TestFile/import6.go (0.00s)
        interp_file_test.go:66: got "../_test/import6.go:3:8: import \"github.com/containous/yaegi/_test/c1\" error: unable to find source related to: \"github.com/containous/yaegi/_test/c1\"", want: "import cycle not allowed\n\timports github.com/containous/yaegi/_test/c1"
    --- FAIL: TestFile/import7.go (0.00s)
        interp_file_test.go:72: ../_test/import7.go:3:8: import "github.com/containous/yaegi/_test/foo-bar" error: unable to find source related to: "github.com/containous/yaegi/_test/foo-bar"
    --- FAIL: TestFile/import8.go (0.00s)
        interp_file_test.go:72: ../_test/import8.go:3:8: import "github.com/containous/yaegi/_test/b1/foo" error: unable to find source related to: "github.com/containous/yaegi/_test/b1/foo"
    --- FAIL: TestFile/tag0.go (0.00s)
        interp_file_test.go:72: ../_test/tag0.go:6:8: import "github.com/containous/yaegi/_test/ct" error: unable to find source related to: "github.com/containous/yaegi/_test/ct"
FAIL
FAIL	github.com/containous/yaegi/interp	190.556s
?   	github.com/containous/yaegi/stdlib	[no test files]
?   	github.com/containous/yaegi/stdlib/syscall	[no test files]
?   	github.com/containous/yaegi/stdlib/unsafe	[no test files]
FAIL

When I build the binary without the tests, everything works as expected.
But it would be nice if we could get this tests working.

Hello,
You have to set go module off:
https://github.com/containous/yaegi/blob/27520f6dae030e9da8e7ed5d3058af737e8aee33/Makefile#L20

@ldez interesting, can you explain why (just for learning) and do you plan to 'fix' this? I don't think this is intended behavior, or am I wrong? :)

@ldez
Disbaling go module gives me this errors then:
cmd/yaegi/yaegi.go:43:2: cannot find package "github.com/containous/yaegi/interp" in any of:
	/usr/lib/go/src/github.com/containous/yaegi/interp (from $GOROOT)
	/build/go/src/github.com/containous/yaegi/interp (from $GOPATH)
cmd/yaegi/yaegi.go:44:2: cannot find package "github.com/containous/yaegi/stdlib" in any of:
	/usr/lib/go/src/github.com/containous/yaegi/stdlib (from $GOROOT)
	/build/go/src/github.com/containous/yaegi/stdlib (from $GOPATH)

Is this maybe related to the fact, that I am building it from tarball?

We disabled go modules because use custom GOPATH and vendor folder in test to follow the Go spec.
What version of go are you using?

1.13.8

The tarball is made by GitHub itself, we cannot guarantee the content, but it this should be exactly the content of the repo at the time of release.
I checked the tarball content and it's the good content: nothing is missing.
As we disable the go modules, the project must placed in $GOPATH/src/github.com/containous/yaegi, I think it's the root cause.
FYI I'm an Arch user, I don't have any issue on my computer to run the tests.

@ldez mh I see. So the path is the issue, I guess.
It's not related to running the tests from a git clone in the correct gopath.
Our PKGBUILD is just downloading the tarball right now and we are not creating a gopath. I guess, this is the reason why running tests fails

@shibumi Can we close this issue?

@mpl yes


JWT custom validation

Hi,
Would like to check, is there an appropriate method to overrride in the Security Handler that allows me to pass in additional validation, maybe in the ValidateToken method?
More specifically, I would like to verify the JTI against a blacklist. I have previously constructed this validation as a separate middleware but my the responses were shaped by the JwtBearerAuthentication middleware after the response returns back overwriting any custom status code / messages I've passed back.
Using a custom policy based authentication also returns the wrong status code with the same issues, so I was thinking of doing it directly inside the security handler.

@zixiangx there is no general delegate for checking if the token is appropriate for a specific purpose. Sometimes that is related to the method called OR the parameters passed to the method.
You can override ValidateToken, call the base, check the ClaimsPrincipal for a specific claim.
If you create a derived TokenValidationParameters type, this will be passed to this method and you can hang any thing you need on that.
Please re-open if you have any additional questions.

@zixiangx I opened https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/issues/623 there seemed to be a whole here.

Thanks @brentschmaltz, will follow #623


Slow inference speed on the 3090 Ti

i  use SAM2AutomaticMaskGenerator for real time app, but it's too slow to use, over 1second per frame even tiny model.
or is there any more generator for realtime app? build_sam2_video_predictor need a path with image list...
Thank thee very much!
here is my env:
Package                  Version     Editable project location

antlr4-python3-runtime   4.9.3
asttokens                2.4.1
comm                     0.2.2
contourpy                1.3.0
cycler                   0.12.1
debugpy                  1.8.7
decorator                5.1.1
einops                   0.8.0
exceptiongroup           1.2.2
executing                2.1.0
filelock                 3.16.1
flash-attn               2.6.3
fonttools                4.54.1
fsspec                   2024.10.0
hydra-core               1.3.2
iopath                   0.1.10
ipykernel                6.29.5
ipython                  8.29.0
jedi                     0.19.1
Jinja2                   3.1.4
jupyter_client           8.6.3
jupyter_core             5.7.2
kiwisolver               1.4.7
MarkupSafe               3.0.2
matplotlib               3.9.2
matplotlib-inline        0.1.7
mpmath                   1.3.0
nest-asyncio             1.6.0
networkx                 3.4.2
numpy                    2.1.2
nvidia-cublas-cu12       <IP_ADDRESS>
nvidia-cuda-cupti-cu12   12.1.105
nvidia-cuda-nvrtc-cu12   12.1.105
nvidia-cuda-runtime-cu12 12.1.105
nvidia-cudnn-cu12        <IP_ADDRESS>
nvidia-cufft-cu12        <IP_ADDRESS>
nvidia-curand-cu12       <IP_ADDRESS>
nvidia-cusolver-cu12     <IP_ADDRESS>
nvidia-cusparse-cu12     <IP_ADDRESS>
nvidia-nccl-cu12         2.20.5
nvidia-nvjitlink-cu12    12.4.127
nvidia-nvtx-cu12         12.1.105
omegaconf                2.3.0
opencv-python            <IP_ADDRESS>
packaging                24.1
parso                    0.8.4
pexpect                  4.9.0
pillow                   11.0.0
pip                      22.0.2
platformdirs             4.3.6
portalocker              2.10.1
prompt_toolkit           3.0.48
psutil                   6.1.0
ptyprocess               0.7.0
pure_eval                0.2.3
Pygments                 2.18.0
pyparsing                3.2.0
python-dateutil          2.9.0.post0
PyYAML                   6.0.2
pyzmq                    26.2.0
SAM-2                    1.0         /home/marco/Build/sam2
setuptools               59.6.0
six                      1.16.0
stack-data               0.6.3
sympy                    1.13.1
torch                    2.3.1
torchvision              0.18.1
tornado                  6.4.1
tqdm                     4.66.6
traitlets                5.14.3
triton                   2.3.1
typing_extensions        4.12.2
wcwidth                  0.2.13
wheel                    0.44.0
and sample code like:

run result:

That card should be able to run the (tiny) image encoder in 5-10ms and the prompt/mask decoder in around 1-1.5ms. The auto mask generator encodes the input image once and then uses a 64x64 grid of point prompts (by default), so a total of 1024 prompts are needed. Worst case, that should give a run time (per frame) of around:
Total inference time = 1*(10ms per frame) + 1024*(1.5ms per prompt) = 1546ms

That seems consistent with your timings, so most likely things are running as expected (you could maybe try compiling the model and/or adding the environment variable that the 'scaled_dot_product_attention' warnings mention to get a bit of a speed up). The only way to get a big speed up would be to use fewer prompt points, which can be adjusted when setting up the mask generator:
mask_generator = SAM2AutomaticMaskGenerator(sam2, points_per_side=4)

Using a very small number (like 4) should get it close to real-time speeds, but the trade-off is that it will likely miss segmentations compared to the default 64x64 grid.

thank thee very much!
two questions more,
1⃣ is there any webcam-like predictor like build_sam2_video_predictor ? so i can use for real-time application?
2⃣ I want to further divide something that can be well fragmented, such as a corner of a table or the tip of the tongue. In a video, I called the function add_new_points_or_box on multiple frames and passed in the labeled boxes, but the generalization does not seem to be ideal. Is there any possibility for further adjustment?

is there any webcam-like predictor like build_sam2_video_predictor ? so i can use for real-time application?

There's another repo that has a modified version of SAMv2 that does something like this:
https://github.com/Gy920/segment-anything-2-real-time
I also have a script that can run on webcams, but the code is not as similar to the original SAMv2 implementation.

I want to further divide something that can be well fragmented, such as a corner of a table or the tip of the tongue

I'm not entirely sure what you mean, but the model outputs multiple masks which are meant to segment objects at different levels which might be useful?
Here's an example showing a prompt point over the eye of the turtle while cycling through the mask outputs:

On the right are the mask outputs of the model, including a mask of the whole turtle, the turtle's head and just the eye. So for your use case, maybe selecting one of these masks would result in the further divided pieces you mentioned.
Unfortunately, I don't think the video segmentation provides a way of specifying which mask you want, instead it tries to guess which one is best. If you wanted to pick a different mask, you'd have to replace the code that auto-selects the mask with your own choice of index.


Why can not crawl into https packets with charles

Why can not crawl into https packets with charles

You should ask questions like this on Stack Overflow. This tracker is for bug reports with test cases and feature requests only.


Documentation is unclear WRT native NuGet packages

I find the use of ".NET" throughout this whole guide very confusing as it implies that NuGet is only for deployment of managed code.  It is not clear how to create and consume packages for native SDKs.

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

ID: bd0c2ac7-8837-d4fd-955b-6a5b261592f3
Version Independent ID: 4c62f271-70ea-8537-f670-b59bb702c4c0
Content: What is NuGet and what does it do?
Content Source: docs/what-is-nuget.md
Product: nuget
GitHub Login: @karann-msft
Microsoft Alias: karann

@TheRealZonaP - NuGet does not have a first class experience for creating native packages. Please take a look at this doc for more details - https://docs.microsoft.com/en-us/nuget/guides/native-packages

dupe of https://github.com/NuGet/docs.microsoft.com-nuget/issues/1774


Auto/default parameter values are populated in managed disk resource

What happened?
Created a composition, with managed disk resource and haven't specified parameter values for diskIopsReadWrite, diskMbpsReadWrite, diskIopsReadOnly, diskMbpsReadOnly, logicalSectorSize (defaults to 4096 with respect to documentation).
Resource gets created when applied with the above values populated (havent provided in composition or claim). I guess values are getting populated based on storage account type, which populates tier value as P10 as I have given storageAccountType: Premium_LRS
How can we reproduce it?
Use below mentioned Managed resource configuration:  (use issue.txt attached for YAML format)
apiVersion: compute.azure.upbound.io/v1beta1
kind: ManagedDisk
metadata:
name: testdisk
labels:
terraform: kdisk
annotations:
crossplane.io/external-name: test_disk01
spec:
forProvider:
createOption: Empty
diskSizeGb: 128
location: West Europe
resourceGroupNameSelector:
matchControllerRef: true
matchLabels:
terraform: script
storageAccountType: Premium_LRS
providerConfigRef:
name: azure-config
issue.txt
What environment did it happen in?

Provider Version: upbound official provider-azure v0.36.0
Kubernetes Version:
Kubernetes Distribution: AKS

kubectl describe on manageddisk (during first time creation):

AtProvider of managed disk describe:

True status for creation phase:

kubectl describe on manageddisk (during Reconciliation):

AtProvider of managed disk describe:

Error message during reconciliation:

Hi @kaushik287,
Thank you for raising this issue, I could not reproduce it with the provider version 0.37.1, please try again and let us know.
NAME                                           READY   SYNCED   EXTERNAL-NAME   AGE
manageddisk.compute.azure.upbound.io/example   True    True     example         18m

Hi @turkenf , I have checked with azure-provider 0.37.1, still with storageAccountType attribute set to Premium_LRS,  managed disk gets created but values of attributes disk_iops_read_write and disk_mbps_read_write get auto set to 500 and 100 respectively and due to these values reconciliation runs into above mentioned error.
Possible cause might be as Azure managed disk resource automatically sets these values based on disk size (as a baseline mentioned in azure docs) and I assume internally values returned by Azure API has them updated once resource is created and then values gets flown to atProvider --> forProvider.
In reconciliation phase forProvider has these values, which shouldn't be for storageAccountType* as Premium_LRS and issue is caused


Fresh install - Grafana graphs empty (MX routers, Junos 17.4, Ubuntu server)

Hi there
I have followed the instructions (https://open-nti.readthedocs.io/en/latest/install.html) which are a tad out of date, but basically on my Ubuntu 14.04 server I ran the usual apt updates, then:
$ git clone https://github.com/Juniper/open-nti.git
$ cd open-nti
$ make start
Everything starts up as it should.
Docker PS
CONTAINER ID        IMAGE                                  COMMAND                  CREATED             STATUS              PORTS                                                                                NAMES
fd84fc77e8ca        opennti_input-snmp                     "/source/start-inp..."   4 minutes ago       Up 4 minutes        <IP_ADDRESS>:162->162/udp                                                                                opennti_input_snmp
214ca3966a9d        juniper/open-nti-input-jti:latest      "/bin/sh -c /fluen..."   4 minutes ago       Up 4 minutes        <IP_ADDRESS>:50000->50000/udp, 24284/tcp, 40020/udp, <IP_ADDRESS>:50020->50020/udp                                             opennti_input_jti
e5cd0f02cc31        quay.io/influxdb/chronograf:<IP_ADDRESS>    "/usr/bin/chronogr..."   4 minutes ago       Up 4 minutes        <IP_ADDRESS>:8888->8888/tcp                                                                                chronograf_con
d164ebbfc4da        juniper/open-nti-input-syslog:latest   "/bin/sh -c /home/..."   4 minutes ago       Up 4 minutes        5140/tcp, 24220/tcp, 24224/tcp, <IP_ADDRESS>:6000->6000/udp                                                               opennti_input_syslog
d5111e0671b4        kapacitor:1.5.0                        "/entrypoint.sh ka..."   4 minutes ago       Up 4 minutes        <IP_ADDRESS>:9092->9092/tcp                                                                                kapacitor
aaf81a1a0be0        opennti_input-oc                       "/entrypoint.sh /s..."   4 minutes ago       Up 4 minutes        8092/udp, 8125/udp, 8094/tcp, <IP_ADDRESS>:50051->50051/udp                                                               opennti_input_oc
580c44001075        juniper/open-nti:latest                "/sbin/my_init"          4 minutes ago       Up 4 minutes        <IP_ADDRESS>:80->80/tcp, <IP_ADDRESS>:3000->3000/tcp, <IP_ADDRESS>:8083->8083/tcp, <IP_ADDRESS>:8086->8086/tcp, <IP_ADDRESS>:8125->8125/udp   opennti_con
When I tcpdump, I can see udp traffic coming in from my MX routers (MX960s, MX480s, MX204s, on a variety of Junos versions, 4/5 of them on 17.4, one on 15.1F6):

me@lab-docker:~/open-nti$ sudo tcpdump -i eth1.999 udp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1.999, link-type EN10MB (Ethernet), capture size 262144 bytes
12:28:23.077599 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 1304
12:28:23.082022 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 1073
12:28:23.894927 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 549
12:28:23.895002 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 157
12:28:23.896354 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 180
12:28:23.899546 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 1145

My Juniper config is like so:

me@mx5> show configuration services analytics | no-more
streaming-server open-nti-lab-docker {
remote-address <IP_ADDRESS>;
remote-port 50000;
}
export-profile open-nti-lab {
local-address <IP_ADDRESS>;
local-port 50000;
reporting-rate 10;
format gpb;
transport udp;
}
sensor phy-interfaces {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/interface/;
}
sensor log-interfaces {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/interface/logical/usage/;
}
sensor cpu-mem {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/cpu/memory/;
}
sensor pfe-lsp-usage {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/services/label-switched-path/usage/;
}
sensor firewall-stats {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/firewall/;
}
sensor pfe-fabric {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/fabric/;
}
sensor npu-memory {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/npu/memory/;
}

In influx, when I switch to the 'Juniper' database and run 'show measurements' I get the following:
name
juniperNetworks.cpu_memory_util_ext
juniperNetworks.fabricMessageExt
juniperNetworks.jnprLogicalInterfaceExt
juniperNetworks.jnpr_firewall_ext
juniperNetworks.jnpr_interface_ext
juniperNetworks.jnpr_lsp_statistics_ext
However, I see nothing in any of the graphs in Grafana. Has something changed in one of the tools and not updated in another?
I can give any other details required, happy to share screens etc if useful.
Cheers

Try chronograf and see if you can see telem data in there….
http://<IP_ADDRESS>:8888
click “Data Explorer” in the left pane/column
click “juniper.four_weeks”
click “juniperNetworks.jnpr_interface_ext”
… > device – (some number)
Do you see your devices listed there?

Aaron

From: James<EMAIL_ADDRESS>Sent: Monday, December 17, 2018 6:35 AM
To: Juniper/open-nti
Cc: Subscribed
Subject: [Juniper/open-nti] Fresh install - Grafana graphs empty (MX routers, Junos 17.4, Ubuntu server) (#249)
Hi there
I have followed the instructions (https://open-nti.readthedocs.io/en/latest/install.html) which are a tad out of date, but basically on my Ubuntu 14.04 server I ran the usual apt updates, then:
$ git clone https://github.com/Juniper/open-nti.git
$ cd open-nti
$ make start
Everything starts up as it should.
Docker PS
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fd84fc77e8ca opennti_input-snmp "/source/start-inp..." 4 minutes ago Up 4 minutes <IP_ADDRESS>:162->162/udp opennti_input_snmp
214ca3966a9d juniper/open-nti-input-jti:latest "/bin/sh -c /fluen..." 4 minutes ago Up 4 minutes <IP_ADDRESS>:50000->50000/udp, 24284/tcp, 40020/udp, <IP_ADDRESS>:50020->50020/udp opennti_input_jti
e5cd0f02cc31 quay.io/influxdb/chronograf:<IP_ADDRESS> "/usr/bin/chronogr..." 4 minutes ago Up 4 minutes <IP_ADDRESS>:8888->8888/tcp chronograf_con
d164ebbfc4da juniper/open-nti-input-syslog:latest "/bin/sh -c /home/..." 4 minutes ago Up 4 minutes 5140/tcp, 24220/tcp, 24224/tcp, <IP_ADDRESS>:6000->6000/udp opennti_input_syslog
d5111e0671b4 kapacitor:1.5.0 "/entrypoint.sh ka..." 4 minutes ago Up 4 minutes <IP_ADDRESS>:9092->9092/tcp kapacitor
aaf81a1a0be0 opennti_input-oc "/entrypoint.sh /s..." 4 minutes ago Up 4 minutes 8092/udp, 8125/udp, 8094/tcp, <IP_ADDRESS>:50051->50051/udp opennti_input_oc
580c44001075 juniper/open-nti:latest "/sbin/my_init" 4 minutes ago Up 4 minutes <IP_ADDRESS>:80->80/tcp, <IP_ADDRESS>:3000->3000/tcp, <IP_ADDRESS>:8083->8083/tcp, <IP_ADDRESS>:8086->8086/tcp, <IP_ADDRESS>:8125->8125/udp opennti_con
When I tcpdump, I can see udp traffic coming in from my MX routers (MX960s, MX480s, MX204s, on a variety of Junos versions, 4/5 of them on 17.4, one on 15.1F6):
me@lab-docker:~/open-nti$ sudo tcpdump -i eth1.999 udp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1.999, link-type EN10MB (Ethernet), capture size 262144 bytes
12:28:23.077599 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 1304
12:28:23.082022 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 1073
12:28:23.894927 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 549
12:28:23.895002 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 157
12:28:23.896354 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 180
12:28:23.899546 IP <IP_ADDRESS>.50000 > <IP_ADDRESS>.50000: UDP, length 1145
My Juniper config is like so:
me@mx5> show configuration services analytics | no-more
streaming-server open-nti-lab-docker {
remote-address <IP_ADDRESS>;
remote-port 50000;
}
export-profile open-nti-lab {
local-address <IP_ADDRESS>;
local-port 50000;
reporting-rate 10;
format gpb;
transport udp;
}
sensor phy-interfaces {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/interface/;
}
sensor log-interfaces {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/interface/logical/usage/;
}
sensor cpu-mem {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/cpu/memory/;
}
sensor pfe-lsp-usage {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/services/label-switched-path/usage/;
}
sensor firewall-stats {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/firewall/;
}
sensor pfe-fabric {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/fabric/;
}
sensor npu-memory {
server-name open-nti-lab-docker;
export-name open-nti-lab;
resource /junos/system/linecard/npu/memory/;
}
In influx, when I switch to the 'Juniper' database and run 'show measurements' I get the following:
name
juniperNetworks.cpu_memory_util_ext
juniperNetworks.fabricMessageExt
juniperNetworks.jnprLogicalInterfaceExt
juniperNetworks.jnpr_firewall_ext
juniperNetworks.jnpr_interface_ext
juniperNetworks.jnpr_lsp_statistics_ext
However, I see nothing in any of the graphs in Grafana. Has something changed in one of the tools and not updated in another?
I can give any other details required, happy to share screens etc if useful.
Cheers
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub https://github.com/Juniper/open-nti/issues/249 , or mute the thread https://github.com/notifications/unsubscribe-auth/Am_xaJt-n0e_WRPtHfe55Ujyqt96cW6nks5u5492gaJpZM4ZWRLs .  https://github.com/notifications/beacon/Am_xaJ44vT_NtWTav9t0eiq1SY9ekZ0eks5u5492gaJpZM4ZWRLs.gif

Thanks @agould123 - I have just been reading older closed issues (I am quite bad at using github it seems!) and saw that Cronograf is the replacement for InfluxDB's front end, even though the latter still seems present.
I do see some telemetry graphs by clicking around in there, yes. From this, I take it that the Grafana dashboards that Open-NTI comes with are no longer valid? The queries don't seem to work any longer - did I miss some documentation update somewhere?
Thanks for your reply

There is certain need of the document update. It seems that the old DB root for InfluxDB has been changed to juniper.four_weeks. The queries needs to be updated like this
SELECT mean("interface_stats.egress_stats.if_pkts") AS "mean_interface_stats.egress_stats.if_pkts", mean("interface_stats.ingress_stats.if_pkts") AS "mean_interface_stats.ingress_stats.if_pkts" FROM "juniper"."four_weeks"."juniperNetworks.jnpr_interface_ext" WHERE time > now() - 1h AND "interface_stats.if_name"='ge-0/0/0' GROUP BY time(:interval:) FILL(null)

Hi there,
I'm facing the same issue with grafana not showing any data points in the dashboards (but it works fine using Chronograf). Any idea to solve this grafana pb ? I tried many queries adjustments (including the one provided above) but nothing helps. Thx for your help.

Thanks for the suggestions. I am not really that well versed in the nuts and bolts here.. Is it likely this will be updated and I can just pull the containers down in a working order? :)

Hi there,
I'm facing the same issue with grafana not showing any data points in the dashboards (but it works fine using Chronograf). Any idea to solve this grafana pb ? I tried many queries adjustments (including the one provided above) but nothing helps. Thx for your help.
[EDIT]
I finally succeed in graphing something in grafana. The provided dashboard has to be update to take in account the four_weeks retention policy.

Hi @cylmad - I'm hitting this issue also, I can see data in Chronograf but nothing in Grafana - can you tell me how to update the Grafana dashboards to take into account the four_weeks policy?

I also had more success with displaying telemetry data using Chronograf.
While at Juniper NXTWORK 2019 in Vegas, I was in a session on telemetry and a very knowledge presenter on the material showed my later how to make Grafana work.
It was simple as you just have to select the proper data source (influxdb, or perhaps whatever data source you are using)  and then select field and time and grouped by and format.
-Aaron
From: lwbnet<EMAIL_ADDRESS>Sent: Saturday, April 11, 2020 4:01 PM
To: Juniper/open-nti
Cc: Aaron Gould; Mention
Subject: Re: [Juniper/open-nti] Fresh install - Grafana graphs empty (MX routers, Junos 17.4, Ubuntu server) (#249)
Hi there,
I'm facing the same issue with grafana not showing any data points in the dashboards (but it works fine using Chronograf). Any idea to solve this grafana pb ? I tried many queries adjustments (including the one provided above) but nothing helps. Thx for your help.
[EDIT]
I finally succeed in graphing something in grafana. The provided dashboard has to be update to take in account the four_weeks retention policy.
Hi @cylmad https://github.com/cylmad  - I'm hitting this issue also, I can see data in Chronograf but nothing in Grafana - can you tell me how to update the Grafana dashboards to take into account the four_weeks policy?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/Juniper/open-nti/issues/249#issuecomment-612512656 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AJX7C2COTUKK2JVMMRZXZ5LRMDLABANCNFSM4GKZCLWA .  https://github.com/notifications/beacon/AJX7C2DWV3GMTXKSE7WJAATRMDLABA5CNFSM4GKZCLWKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOESBDHEA.gif


Callbacks are not fired on android

Describe the bug
onScreenshotCaptured:
onScreenRecordingStart:
onScreenRecordingStop:
These callbacks are not fired when the event occurs
To Reproduce
Steps to reproduce the behavior:

Use the example app
run the application
Start Screen Recording

Expected behavior
A toast to be shown
No toast is shown.
Flutter:

version
3.10
channel

Dart:

version

Additional context
Add any other context about the problem here.

Okay, I am checking this, and upgrading to support latest Flutter version as well.

Hey, I checked and found out that the callbacks are not really needed on Android. As the package automatically blocks any screenshot (and shows a toast when user tries to click it) and screen recording (it automatically blackens the video). Also the package I was using to make this accomplish is not updated since last year.
These callbacks are necessary on iOS (as user can still record the screen, so you can show warning or any other alert message), but on Android they don't make sense for now. So I will be closing this issue, and request you to check the 0.1.0 version of the package, as it updated to latest Flutter, and is working on both Android & iOS.
Thanks for using secure_content package.