Traefik redirects .well-known endpoints for LetsEncrypt / ACME too

Bug
What did you do?
After the change here was added
[internal] Change the default priority on the router created by the redirect. (#6588 by ldez)
Installed Traefik v2.2.1 with the settings enabled for http -> https redirect and websecure enabled.
What did you expect to see?
.well-known endpoint for Certmanager should be allowed to pass or allow a whitelist of endpoints to not be redirected
What did you see instead?
Certmanager requests are failing
Output of traefik version: (What version of Traefik are you using?)
v2.2.1 / chart 8.1.4

What is your environment & configuration (arguments, toml, provider, platform, ...)?
 - --entryPoints.websecure.http.tls=true
    - --entrypoints.web.http.redirections.entrypoint.to=:443
    - --entrypoints.web.http.redirections.entrypoint.permanent=true
    - --providers.kubernetesingress
    - --providers.kubernetesingress.ingressendpoint.publishedservice=kube-system/traefik-v2
    - --serverstransport.insecureskipverify
    - --entryPoints.metrics.address=:8082
    - --metrics.prometheus.entryPoint=metrics
    - --metrics.prometheus
    - --accesslog

Certmanager Log
E0505 07:41:25.544469       1 sync.go:184] cert-manager/controller/challenges "msg"="propagation check failed" "error"="wrong status code '404', expected '200'" "dnsName"="x" "resource_kind"="Challenge" "resource_name"="x" "resource_namespace"="x" "type"="http-01"

Traefik Access log
{
  "ClientAddr": "<IP_ADDRESS>:60336",
  "ClientHost": "<IP_ADDRESS>",
  "ClientPort": "60336",
  "ClientUsername": "-",
  "DownstreamContentSize": 17,
  "DownstreamStatus": 301,
  "Duration": 341202,
  "OriginContentSize": 17,
  "OriginDuration": 164801,
  "OriginStatus": 301,
  "Overhead": 176401,
  "RequestAddr": "x",
  "RequestContentSize": 0,
  "RequestCount": 63,
  "RequestHost": "x",
  "RequestMethod": "GET",
  "RequestPath": "/.well-known/acme-challenge/-x",
  "RequestPort": "-",
  "RequestProtocol": "HTTP/1.1",
  "RequestScheme": "http",
  "RetryAttempts": 0,
  "RouterName": "web-to-443@internal",
  "StartLocal": "2020-05-05T07:45:23.411045332Z",
  "StartUTC": "2020-05-05T07:45:23.411045332Z",
  "entryPointName": "web",
  "level": "info",
  "msg": "",
  "time": "2020-05-05T07:45:23Z"
}

I guess this is a side-effect of the redirect, but it would be nice if there was a way to let the acme-challenge be forwarded anyways.

Noone that can fill in on this? We're going to run in production soon so it would be nice if it could work.

Hello @ekarlso,
we're hearing you and talking internally on that topic. I'll keep you posted 👍

This seemed like a multiple config problems at once which made this occur. Seems to work fine now sorry!


Try to get conda-smithy to rerender with noarch

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


why object detection fetch only 5 object

....

That is per Google's design: https://developers.google.com/ml-kit/vision/object-detection#custom-tflite


cssLoaderOptions are not passed

Just discovered the cssLoaderOptions are not correctly passed - i would have a fix for it but don't have the permission yet to push a feature-branch to actually open the PR. Would totally like to contribute! :)

Fixed & released 🙏


fix(3367): Android Click Broken When Platform Definition Capitalized

Motivation/Description of the PR

Resolves #3367

Applicable helpers:

[x] WebDriver
[x] Appium

Type of change

[x] :bug: Bug fix

Checklist:

[x] Local tests are passed (Run npm test)

Thanks!


Added S3 Write for Object Detection Results

@Dashrekker make sure you do a git pull origin dev to see the fixes Faris and I did

@Dashrekker were you able to test that object detection worked successfully? Also, do a git pull origin dev

@Dashrekker were you able to successfully test that object detection result gets written to S3? I forgot something very critical!

Hey @Dashrekker just let us know when you're ready to have this re-reviewed after resolving Karthik's comments

@farisdurrani is austin still unable to run docker? he said he could spin up container but the kernel.py script was a but flaky

@Dashrekker how's progress going on testing this out?

@Dashrekker hows this pr coming along?


Add support to detect conda virtual environments

This patch allows pyo3-pack develop to be
executed under conda environments.

I've bumped the nightly used for building in #190. Option::xor should now work without any feature flags


Number type incorrect precision when passed a float

OK, so this will be somewhat hard to explain because my only examples come from custom processors or custom parsers that we've built. If you want, I can give you an example with a custom processor over at https://github.com/BCODMO/bcodmo_processors, but I also plan to update these processors to get around this issues ASAP. Therefore this is also low priority, but I do think it is a bug on your end and I think I have a way to fix it.
The issue is when values are cast to the number type. Specifically, this line right here. There are four cases to look at.

If the value is already type Decimal, it will just return the value and never get here

:heavy_check_mark:

If the value is type string, it will convert a string val to a Decimal using Decimal(val)

>>> from decimal import Decimal
>>> test = '24.122667'
>>> Decimal(test)
Decimal('24.122667')

:heavy_check_mark:

If the value is within six.integer_types, it will convert the integer to Decimal:

>>> from decimal import Decimal
>>> test = 24
>>> Decimal(test)
Decimal('24')

:heavy_check_mark:

The last case, if the value is a float, it will convert a float to Decimal, which has precision problems.

>>> from decimal import Decimal
>>> test = 24.122667
>>> Decimal(test)
Decimal('24.12266699999999985948306857608258724212646484375')

:x:
Once again, sorry I don't have an actual pipeline-spec.yaml you could run to see this, but I think it's a problem that if floats are passed into this function you get a totally unexpected value. The easy solution is to change the line I linked to
value = Decimal(str(value))

converting the value to a string before passing into Decimal.

@cschloer Is this fixed in the PR above? Or should Evgeny still look into this? Thx!

Hey, so I pushed a fix in our code that works around this bug, but I decided to post this issue anyways because I think it is a bug in frictionless. It is low priority on our end because of the fix.

Fixed in:
pip install --upgrade tableschema=1.5.4

Sweet! Thanks for the fix. FYI I'm traveling for the next 4 or so weeks, so you might get some slower responses from me.


CommonJS module loader does not work

The global object in a browser window is window, which can also be referenced using this, like I said in my previous comment in #6 when writing a tip about how to implement this library as a universal module. However, in the module factory block, the global object is referenced by window, which, when loaded as a CommonJS module is undefined. This causes an error, and prevents the user from using this library.
Attaching screenshot:

FYI @EvandroLG

hi @wolfika I think it just happens because you're runing pageAccelerator in a node envirment. In a web browser, it wouldn't happen, right?
Thanks 👍


Username should be able to be an email address

Gitea version (or commit ref):  1.4.1
Git version: 2.17.0
Operating system:  FreeBSD
Database (use [x]):

[ ] PostgreSQL
[ ] MySQL
[ ] MSSQL
[X] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[X ] Not relevant

Log gist:
Failed to login<EMAIL_ADDRESS>via 'ldap2.domain.local': Invalid pattern for attribute 'username'<EMAIL_ADDRESS>must be valid alpha or numeric or dash(-_) or dot characters

Description
Users in my ldap directory only have a full email address as their "uid" and therefore their username (for several reasons).  I cannot get gitea to function in such an environment, because of the following check in login_source.go:

if binding.AlphaDashDotPattern.MatchString(sr.Username) {
return nil, fmt.Errorf("Invalid pattern for attribute 'username' [%s]: must be valid alpha or numeric or dash(-_) or dot characters", sr.Username)
}

It would be wonderful if the check allowed for "@" characters as well.
Thank you!
...
Screenshots

Thought: perhaps this should be a boolean option, since it could break other things.

What would the users slug be in the URLs<EMAIL_ADDRESS>I think there are allowed characters in email addresses that are not allowed in URLs.

This will also be nice for multi forrest ad users.

@sbtp are you sure? I'm fairly certain that this could be done.
Mentions for these emails would also work, using @user@domain like Mastodon and other ActivityPub-based systems do.

Federation is currently being worked on (via a separate working  group), and so this is something that will need to be evaluated in that context, as if emails are allowed, how would we mention across instances if an account on one instance is an email, especially if it contains a domain that doesn't match the domain of the git server.

that should probably be handled in oauth instead by for example replacing @ sign with - or something like that

Maybe it would work to change just the sanitizeUserDN to replace all instances of %s instead of just using sprintf for the first. Then you could use an LDAP filter like:
(&(objectClass=user)(|(sAMAccountName=%s)(UserPrincipalName=%s)(mail=%s)))

Was this functionality lost again? I was able to use LDAP emails as user-ids in version 1.7.0, but when I upgraded to  version 1.12.0+dev-171-g12960b9d1 it does not seem to work any more, and with the same error:

Error creating user @: User name is invalid [@]: must be valid alpha or numeric or dash(-_) or dot characters

Any news on this topic for version 1.12?

@voidbip yes unfortunately the functionality had to be lost due to a security issue with it.
What we need to do is allow LDAP to provide a mapping function from an email address to a username.

Hello, i'm trying to use our LDAP as authentification.
the user usually use email to authenticate and we can't use UID as is one letter and digit (ex: r160459) so the user can't remember that kind of information.
Any news for future version of gitea ?
thanks !

Years ago, I also used E-mail as username in LDAP and other systems. Then I have to admit that this is one of most bad mistakes I have made. Using E-mail as username leads to various problems. Then our team spent more time to migrate the account system from E-mail username to regular username.
So I would always down vote for the E-mail as username decision.

Closing per reasons above


first pass at costars batch upload form

What changed

added first pass of batch costars upload form

Issues

closes #66

Still needed

[ ] clarification on form tokens
[ ] thought around nuking existing costars contracts, updating contract base with upload

Left a few inline comments @hamhands -- the big thing is that this change doesn't actually do anything to the file once it is uploaded. On old Wex, we had a few methods that actually handled the data processing so that will need to be supplemented here.

@bsmithgall yeah that's what the first still needed refers to. That's going to take some thinking through tomorrow.

What do you mean by "form tokens"?

in each of the form templates there's a jinja thing that says something about form tokens.
Ex: {{ note_form.csrf_token() }}

That's related to CSRF

Unrelated to the actual data processing/upload

Ah ok, good to know.

@hamhands I'm closing this due to the closing of #62. You should rebase against master and re-submit a PR against master.


field_[fieldname]_string disappears from graphql when resolving relation

Describe the issue you're facing
This is probably more a question than a bug report, but you don't have a matching template for that, so I'll just go ahead here - sorry.
I have a content called news. Within this I have a field referencing a category. When inspecting it with graphql explorer I can see the ID of the referenced category by requesting the field field_category_string:
query {
  allStoryblokEntry(
    filter: {
      field_component: { eq: "news" }
    }
  ) {
    edges {
      node {
        name
        uuid
        field_category_string
      }
    }
  }
}

Now, if I ask gatsby-source-storyblok to resolve this relation:
...
{
  resolve: 'gatsby-source-storyblok',
  options: {
    resolveRelations: [
      'news.category',
    ],
},
...

the relation gets resolved as expected but the field_category_string disappears as an option from graphql. This is very unfortunate since I need the category to query for news withing this category.
Or to re-phrase the question: How can I resolve relations and allow the entities to be filtered by such a resolved relation?
Reproduction
sorry...
Steps to reproduce
No response
System Info
System:
    OS: Linux 6.1 Debian GNU/Linux 12 (bookworm) 12 (bookworm)
    CPU: (16) x64 AMD Ryzen 7 2700X Eight-Core Processor
    Memory: 13.34 GB / 46.97 GB
    Container: Yes
    Shell: 5.9 - /usr/bin/zsh
  Binaries:
    Node: 20.9.0 - ~/.nvm/versions/node/v20.9.0/bin/node
    Yarn: 1.22.21 - ~/.nvm/versions/node/v20.9.0/bin/yarn
    npm: 10.1.0 - ~/.nvm/versions/node/v20.9.0/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 121.0.6167.139
  npmPackages:
    gatsby: ^5.12.4 => 5.12.11

Used Package Manager
yarn
Error logs (Optional)
No response
Validations

[X] Follow our Code of Conduct

Shouldn't you just be able to get that information from the resolved relation then instead?

Thank you! Could you maybe provide an example of how I would filter the entities based on the values of a resolved entity?


Feature request: toAsyncState pipe

I'm submitting a...

[ ] Regression (a behavior that used to work and stopped working in a new release)
[ ] Bug report
[ ] Performance issue
[x] Feature request
[ ] Documentation issue or request
[ ] Support request
[ ] Other... Please describe:

Current behavior
There is no pipe, so all the mapping should be done in the component.
Expected behavior
There is a pipe which you can use in templates
Minimal reproduction of the problem with instructions
I created a stackblitz with a toAsyncState pipe:
https://stackblitz.com/edit/loadoff-toasyncstate-pipe?file=src%2Fapp%2Fhello.component.ts
@Pipe({
  name: "toAsyncState"
})
export class ToAsyncStatePipe implements PipeTransform {
  transform<T>(val: Observable<T>): Observable<AsyncState<T>> {
    return isObservable(val) ? val.pipe(toAsyncState<T>()) : val;
  }
}

What is the motivation / use case for changing the behavior?
The code would be a bit cleaner for simple use cases.

Do u want to submit a PR?

I'm closing this request as it'll make the library coupled to Angular, and it doesn't worth it for one line of code. Users can easily add it to the application if they want this functionality.


ansible-lint - use changed_when for conditional tasks

ansible-lint now requires the use of changed_when even for
conditional tasks
Signed-off-by: Rich Megginson<EMAIL_ADDRESS>

[citest]


BL1-S04-01 create 4 duplicate entity

BL1-S04-01 create more entity than expected.
{
  "version": 1,
  "minor_version": 1,
  "key": "sonoff/[REMOVED].json",
  "data": [
    {
      "name": "喷淋继电器",
      "deviceid": "10017e4200",
      "apikey": "[Removed]",
      "extra": {
        "model": "BL1-S04-01",
        "ui": "单通道插座_支持2.4G轻智能",
        "uiid": 138,
        "description": "2022年8月5日 蒲玖云 WW220332",
        "manufacturer": "深圳酷宅科技有限公司",
        "mac": "d0:27:02:fc:81:50",
        "apmac": "d0:27:02:fc:81:51",
        "modelInfo": "5fe431fc9d1fdb25a428cd96",
        "brandId": "59e0dbc25c1af3a660cc1ac0",
        "chipid": "7CB94CB7FB1B"
      },
      "brandName": "coolkit",
      "brandLogo": "",
      "showBrand": false,
      "productModel": "BL1-S04-01(138)",
      "tags": {
        "deviceIconType": 1
      },
      "devConfig": {},
      "settings": {
        "opsNotify": 0,
        "opsHistory": 1,
        "alarmNotify": 1,
        "wxAlarmNotify": 0,
        "wxOpsNotify": 0,
        "wxDoorbellNotify": 0,
        "appDoorbellNotify": 1
      },
      "devGroups": [],
      "family": {
        "familyid": "63df2d75e528580008dd12a0",
        "index": 0,
        "members": [],
        "roomid": "63df2d84eee1fa0008b54894"
      },
      "shareTo": [],
      "devicekey": "[Removed]",
      "online": true,
      "params": {
        "bindInfos": {},
        "version": 8,
        "rssi": -60,
        "fwVersion": "1.4.1",
        "switches": [
          {
            "switch": "off",
            "outlet": 0
          },
          {
            "switch": "off",
            "outlet": 1
          },
          {
            "switch": "off",
            "outlet": 2
          },
          {
            "switch": "off",
            "outlet": 3
          }
        ],
        "configure": [
          {
            "startup": "off",
            "outlet": 0
          },
          {
            "startup": "off",
            "outlet": 1
          },
          {
            "startup": "off",
            "outlet": 2
          },
          {
            "startup": "off",
            "outlet": 3
          }
        ],
        "pulses": [
          {
            "pulse": "off",
            "switch": "off",
            "outlet": 0,
            "width": 0
          },
          {
            "pulse": "off",
            "switch": "off",
            "outlet": 1,
            "width": 0
          },
          {
            "pulse": "off",
            "switch": "off",
            "outlet": 2,
            "width": 0
          },
          {
            "pulse": "off",
            "switch": "off",
            "outlet": 3,
            "width": 0
          }
        ],
        "sledOnline": "on",
        "ssid": "XHomeIOT",
        "bssid": "7e:45:58:71:12:46"
      },
      "denyFeatures": [
        "allOnOff",
        "extSwitchMode",
        "remoteControl",
        "lightScene",
        "remoteSupport",
        "upgradeFirmwareReminder",
        "startupWithDelay",
        "pluse_with_hour",
        "extSwitchMode_with_relay",
        "backlightIndicator",
        "localCtl",
        "remoteSubDevice"
      ],
      "isSupportGroup": true,
      "isSupportedOnMP": true,
      "deviceFeature": {}
    }
  ]
}

Expected only one entity, but got four.
It's a single channel relay that looks similar to Sonoff Basic.

So I just found out that it's the same as #623

Show device diagnostics. Are you sure you using latest integration version?

Can you show device page screen?

If this is what you mean.
The other three duplicated switch entity was disabled by me.
It used to be available, but control them will do nothing.
So I disabled them.

This is leftover from old integration version. You can delete them manually.

Solved. Thanks1


(docs) Improve repo markdown documentation pt1

First pass at updating the readme, contributing guide, etc. I plan on coming back to finalizing these a bit more soon but want to get something out there

Cool


⚠ Taitopia Cloud Rendering Service Status has degraded performance

In b24b338, Taitopia Cloud Rendering Service Status (https://status-api.taitopia.design/health/taco) experienced degraded performance:

HTTP code: 200
Response time: 60 ms

Resolved: Taitopia Cloud Rendering Service Status performance has improved in a3520c6 after 4 hours, 58 minutes.


🐛 v3 (Android): Missing List case in convertJSIObjectToJNIMap

What's happening?
I wanted to pass an array as the value for one of the options of a frame processor. It works on iOS, but not Android. Unfortunately, I am not too familiar with jsi/jni code to be able to submit a PR for this myself. I could probably put back the ReadableNativeArray stuff from the old code, but I'm guessing you had something else in mind for that.
Reproduceable Code
} else if (value.isObject()) {
      // Object

      auto valueAsObject = value.getObject(runtime);

      if (valueAsObject.isArray(runtime)) {
        // List<Object>
      } else if (valueAsObject.isHostObject(runtime)) {
        throw std::runtime_error("You can't pass HostObjects here.");
      } else {
        // Map<String, Object>

        auto map = convertJSIObjectToJNIMap(runtime, valueAsObject);
        hashMap->put(key, map);
      }

Relevant log output
2023-09-02 09:38:40.764 25240-25240 ExamplePlugin           com.mrousavy.camera.example          D  1920 x 1080 Image with format #34. Logging 4 parameters:
2023-09-02 09:38:40.764 25240-25240 ExamplePlugin           com.mrousavy.camera.example          D    -> 42.0 (java.lang.Double)
2023-09-02 09:38:40.764 25240-25240 ExamplePlugin           com.mrousavy.camera.example          D    -> true (java.lang.Boolean)
2023-09-02 09:38:40.764 25240-25240 ExamplePlugin           com.mrousavy.camera.example          D    -> {test=0.0, second=test} (java.util.HashMap)
2023-09-02 09:38:40.764 25240-25240 ExamplePlugin           com.mrousavy.camera.example          D    -> hello! (java.lang.String)

Camera Device
No response
Device
Any Android
VisionCamera Version
3.0.0
Can you reproduce this issue in the VisionCamera Example app?

[X] I can reproduce the issue in the VisionCamera Example app.

Additional information

[ ] I am using Expo
[X] I have enabled Frame Processors (react-native-worklets-core)
[X] I have read the Troubleshooting Guide
[X] I agree to follow this project's Code of Conduct
[X] I searched for similar issues in this repository and found none.

oh lol must've been a long night when I worked on that


Copy Mobilespec App Template Instead of Linking It

Instead of symlinking the mobilespec app template when calling createmobilespec, copy the template's contents instead. Justifications for this are:

if files are changed in the created mobilespec app, they should not change the template
symlinking doesn't offer an advantage during development since re-running createmobilespec is required anyway when plugins are changed
on windows symlinks require Administrator privileges

LGTM !

The idea LGTM, but i would prefer not to remove linking of www at all, just hide it behind a corresponding option (--linkwww for example). There is already the same login for plugins and platforms here.

I put the change behind a flag called --copywww. By default www is linked, and if the flag is passed, then it is copied instead.


slurm: 17.11.7 -> 17.11.9-2

Motivation for this change
Version bump
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[x] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
nixos/tests/slurm.nix succeeds
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Fits CONTRIBUTING.md.

The test runs flawlessly on my local machine. I suspect that the problem here is something else.
It looks like the VMs are failing to start up properly. No test routines were from the perl script were even executed.
error: timed out waiting for the VM to connect
timed out waiting for the VM to connect

Would you mind restarting the test?


Disallow people from seeing private room auth

this is helpful for keeping the private rooms that don't have modjoin on private.

If they don't have modjoin on, then what's to stop people from just joining the room as is and finding out about it that way?

@panpawn this is helpful for the staffroom

How does the staffroom block joining, then? The same thing should be done here.

@Zarel: It checks if `room.staffRoom && !user.isStaff`` is true.

It checks targetRoom.staffRoom && !user.isStaff. User is a staff if he has a global status or is roomauth in a room with ID staff.

Easy enough to do the same thing here, then.

User is a staff if he has a global status or is roomauth in a room with ID staff.

This sounds a bit hardcoded and should be looked into at some point probably.

Done in c027fe6e4520b9deb661.


lack of set color

Hello
You removed the color setting in your new version. I expected you to hold methods in your update. Considering changing the repository to Maven, I want to use your new version. Because of your change, my code will engage with a couple of problems if I update the version.
I need the below method in java and XML
setLowSpeedColor setMediumSpeedColor setHighSpeedColor setMediumSpeedPercent setLowSpeedPercent
Thank you for your free code source

Hi
Since version 1.5.0 you need to use sections instead of old methods.
You can read the documentation about it. But please be aware that sections are used only from code part of the project.


Run kubectl apply -k deploy to deploy operator

This seems to work and generate a running operator, however, the operator
doesn't appear to do any work.

@sdake: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

gencheck_operator
97ac387c064721e56bffe02f909b8f7d41a79546
link
/test gencheck_operator

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


[feature]: get rid of npm/yarn commands

This PR removes the use of ~npm view~ npm/yarn commands in favor of reading from package-lock.json or node_modules directly.
Closes #10 and closes #13 by making them irrelevant.
Context
The biggest bottleneck in the app right now is the amount of time it takes to run npm view for all dependencies. Originally, I was considering using whatever package npm uses under the hood in the view command to try and optimize, but I realized recently that all of the information we need should actually be in the repo it's being run in. This led me to look into just reading the info from file instead of fetching. The execution time difference is wild:

with npm view: ~2s (and this is with a good internet connection on a fast computer)
reading from filesystem: ~330ms (😱)

(ran these rough benchmarks with npm and yarn on projects with few dependencies and times were pretty consistent for both -- basically takes less than 1/4 the time of the original implementation)
With this bottleneck out of the way, it opens up a lot more flexibility in how we implement other features, because we can worry a little less about performance. It also makes testing easier because we won't have to mock out fetch calls to npm (plus, tests will run way faster).
Changes
(EDIT: see comment below for additional changes)

removed npm view calls
replaced them with package manager-specific functions that read the info from the filesystem. package-lock.json for npm and node_modules for yarn (by finding node_modules/{PACKAGE_NAME}/packge.json)
added some type info for package.json and package-lock.json
renamed PACKAGE_MANAGER to MANAGERS because I didn't like how it looked 😅
added lockFile: string to Manager objects

I don't believe this would be a breaking change -- it'd just improve performance by a lot.
QA

inside the cli function (src/cli/index.ts), wrap execWithLog and createReport with console.time calls
switch back and forth between this branch and main, running npm run dev in each
compare times
also, all tests should pass and stuff should work how it's supposed to

console.time('depngn');
const compatData = await execWithLog(
  'Fetching engine data',
  async () => await depngn({ version, cwd })
);
await createReport(compatData, version, reporter);
console.timeEnd('depngn');

Update
I refactored a few more things and reduced execution time even further to ~20ms.
New Changes

getDependencies now also reads from file (package.json) instead of executing npm ls
getDependencies now returns an array of strings (package names) instead of an object (we no longer need to know the exact version number of each package because we aren't using npm view. also, slightly more performant because we don't have to reduce to new objects, we just filter out unwanted package names)
removed list from Manager objects
move getDependencies and getPackageManager calls inside getEngines since we don't actually need to pass those values around (because getDependencies no longer needs to know anything about manager
renamed queries directory to depngn (they aren't really queries anymore because we aren't fetching anything. subjective change, but i like it more)
moved depngn function definition to depngn/index.ts and then re-export it from src/index.ts (also subjective, but i think this is a better format and matches the cli directory now)
added readFromFile helper to utils (uses require() instead of import() for slightly better version support)
added tslib dev dependency so we can use spread arrays in function parameters (because of readFromFile helper)

Hey @kindoflew, what about naming the current depngn folder as core? Naming it depngn inside the src sounds a bit confusing to me

@KostiantynPopovych ooohh, i like that a lot more. good call!

@KostiantynPopovych i made the update to the directory name and merged changes from main!

@kindoflew, during the review, I found the new interface for package.json, and now I recall that it may contain the resolutions field. So, shouldn't we take care of that field as well?

@KostiantynPopovych -- good call! i added a handful more fields that I got from https://docs.npmjs.com/cli/v9/configuring-npm/package-json, plus resolutions (which is yarn specific)

@kindoflew Looks good, thank you!


Update can not use limit

It will cause many security problems.

Thanks for opening this issue, @foreverrice.
I added support for the LIMIT clause in https://github.com/ent/ent/pull/3018, but note that PostgreSQL does not support it, and SQLite needs to be built with the SQLITE_ENABLE_UPDATE_DELETE_LIMIT option to support it.
You can update Ent to the latest master using go get entgo.io/ent@master, enable the modifiers feature-flags as described here, and use the LIMIT option as described in this link: https://entgo.io/docs/feature-flags#modify-example-6.

don't use modify, cann't add support?


Do ossim-batch-test

Do ossim-batch-test
!story G17.1
!component test

I will run the ossim-batch-tests when we have a baseline built.

Will run the batch test when I get a baseline. Today we don't have any of the software in one compiled baseline. I have been running tests off of Aaron workstation.

This will happen when the baseline is tagged and move to server to run Ossim Batch Scritps.

Test Scripts have been run and reviewed. Had 6 questions the the tests

I have one question left on band selection running the scripts so I am going to close this issue and work with Garrett on the questions


Set Exported Mountpoint

Added option to set mountpoint on exported resource.

Thank you for working on this module!


How to manage contacts?

Hey there,
i noticed there is no way you can manage contacts or broadcast lists on WhatsApp Web. So i guess there is no way to automate add/delete contacts to/from broadcast lists, send/receive messages from broadcast lists through the help of Selenium here.
Now I'm wondering even more how such paid services able to send broadcasts in a automatic way. Don't think they use browser automation here.
Any other idea?

Are you looking for a professional solution or how to do this with the API ?


Unable to connect to FTPS using static method

I am trying to connect to a FTPS server with invalid certificate, so I need to skip certificate validation. I am using Powershell to run the following code:
$ftpClient = [FluentFtp.FtpClient]::Connect("ftps://$($userName)@$($hostName):$($port)", $false) # false = do not check certificate

Unfortunately, I get the error Exception calling "Connect" with "2" argument(s): "SSL/TLS required on the control channel". I think this is because the static Connect method is not setting the EncryptionMode to use explicit TLS although the url begins with ftps://.... See here https://github.com/robinrodricks/FluentFTP/blob/master/FluentFTP/Client/FtpClient_Static.cs#L15.
I am also unable to instantiate FtpClient using its constructor and then add a callback to the ValidateCertificate event, because the callbacks seems to be invoked on a different thread which Powershell doesn't like. So my hopes are in the static Connect method.
FTP OS: Windows
FTP Server: FTPS Server
Computer OS: Windows 10 x64
FluentFTP Version: 33.0.3

Don't use the static methods. They are old and only provided for backwards compatibility. For powershell you can use the dynamic FtpClient object, it works.


Unwarping: make sure we compute correct effective readout times

Particularly, try to get fieldmaps acquired on Siemens, Phillips and GE and prepare a battery of tests for them.
(ref for Phillips: http://www.spinozacentre.nl/wiki/index.php/NeuroWiki:Current_developments#B0_correction)
Parameter conversion across manufacturers https://www.healthcare.siemens.com/siemens_hwem-hwem_ssxa_websites-context-root/wcm/idc/groups/public/@global/<EMAIL_ADDRESS>

I'll write a couple of unit tests for this.


[Inventories] A rewrite of the extension with events

It has the same features of the one integrated to GDevelop but it's written with events so users can modify it if they need to.
Demo

https://github.com/GDevelopApp/GDevelop-examples/pull/500

Very nice 🔥🔥🔥

Note there is an existing extension named Extra inventory functions that could be merge with this update of the Inventory extension.


Toggling follow new option fails in single flow view.

Problem Description
Toggling follow new flow option via F does not work while in the view of a single flow.
Steps to reproduce the behavior:

launch mitmproxy
continually generate new requests
activate Follow new option
enter a flow
try to deactivate Follow new option
error: the view still follows the new flows

System Information
mitmproxy version 9.0.1

Given that we don't use F for something else at the moment, I would be fine with also assigning it to Follow new in the individual flow view. PRs welcome!


Clarification about adding name to CONTRIBUTING.md

Hi,
I saw in the CONTRIBUTING.md file that contributors need to add their names. I wanted to confirm if I need to add my name in the current project's file as well as in the organization's project file. I didn't see any specific instructions about this.
Thanks!

Hi! You don't need to add your name anywhere to contribute. What part of the CONTRIBUTING.md are you referring to?

Hi @AaronDewes,
I saw the instruction to add my name in the CONTRIBUTING.md file of the first-contributions project, which led me to this project - Probot. I wanted to confirm if this instruction applies here as well.
Thanks!

The instructions given in that project are only to give you an example on how to use git.
Every project will have different contribution guidelines.


refactor: optimize the code in ParamNameResolver.java

Optimize the code inline 122 of ParamNameResolver.java. The method String.valueOf is unnecessary and can be deleted.

Thank you, @xdshent !


When queueing a callable for asap executing should you be able to cancel it?

Just like one off and periodic timers you might want to cancel it at some point

I'd say so. It's still scheduled and I can't see a reason for not providing the option to remove it.

queue() should not return a watcher. It should just execute the function next chance it gets with no going back. Essentially you should think of it as the same way as actually executing the function. There's no need to add the performance overhead to create a watcher that will never be used.

@trowski - Why not call the function explicitly from the calling code and remove the overhead of using the event loop at all?
Are there any good examples of when queue() would be used? I'm struggling to visualise a good use case.

Icicle uses queue() to ensure callbacks on awaitables are always executed asychronously. That is, when calling then() or done() on an awaitable, the callback is never executed until after the scope calling the awaitable method has been left.
queue() is also used to avoid blowing up the call stack when scheduling coroutines. If a coroutine were to have several awaitables in a row that were immediately resolved (with synchronous callbacks), you can easily blow up the call stack.
Generally users of async libraries will have no reason to use queue() because they should be using other tools like awaitables (promises) or coroutines to write async code, they shouldn't be scheduling callbacks themselves. However, the event loop needs to have some way of simply deferring execution for these tools to be built on.

That all makes sense. None of the use cases given there would require a watcher object - so unless anyone else can think of a use case I'm happy with  queue() not returning a watcher. The only reason I can think of in favour is consistency with other methods.

I would like to be able to cancel.
In RxPHP the scheduler needs to be able to schedule items to run as soon as possible, they need to be ordered in the same order they the were scheduled, and they also need to be cancelable.
It is possible (and happens in many Rx operators) that scheduled items will need to cancel scheduled items that are queued behind it.

Another watcher could be added for scheduling a callback that could be cancelled but otherwise executed as soon as possible or when it makes sense. Icicle offers Immediates for this purpose. However there needs to be a performant way of deferring function execution. Icicle uses queue() extensively to ensure execution is deferred. Adding unnecessary overhead would be very detrimental.
The specification of queue() should include that functions MUST be executed in the order given. Icicle, React, and Amp all do this with their equivalent functions already.
RxPHP could build it's own scheduler that uses queue() internally when a function is ready to be executed. The scheduler could provide a method to cancel a scheduled function, only calling queue() when it is certain the function should be executed. If you're using React, then I assume this sort of thing has already been done since nextTick() and futureTick() offer no chance to cancel.

The cancellation feature can be accomplished through other means. And perhaps it would be best to leave this to the user to figure that stuff out as it isn't always needed. This way you do get the best performance.

We have the possibility in Amp. I don't think it's too much overhead.

@kelunik If we were just incrementing an integer and returning it I'd be inclined to agree. Allocating and destroying an object for every function deferment is too much overhead.

I'll do some benchmarks later to see how significant the overhead is. Will post scripts and results here when done.

@trowski Better increment a string, otherwise you'll probably run into overflows.

I suppose you could run into overflow issues if you were running PHP on a 32-bit platform. With phones and other non-tradeional computers that's still a high possibility. Whatever, increment a int or string, not much difference.

I don't think there's a big problem with making immediates (or whatever it's called ;-)) cancellable … though it probably depends a lot on the library around the loop how much overhead it really is.
Amp (I've measured Aerys actually) isn't calling immediately() very often, hence there it is rather not an issue. … So, please report how much of overhead it really if for you.

@bwoebi Aerys isn't using that many coroutines, it uses mostly I/O watchers, so might not be the best source to measure.

Icicle uses coroutines for virtually everything, so queue() is called quite often.

Hehe, the trick is rather that we're not always scheduling a new tick, but only sometimes: https://github.com/amphp/amp/blob/master/lib/functions.php#L786-L793 (which is a significant perf difference too)

I like the consistency offered by making resolution async because resolving a promise will not allow another context to start executing until the current scope is left.

Well, that doesn't make any difference actually in code (except possibly smaller stack traces) … or am I missing anything?

It makes the code much easier to reason about. If a method resolves a promise and modifies the state of the object, synchronous resolution can allow other methods to be called on the same object before the method resolving the promise has finished. You certainly can code around this, but it's a pain and unintuitive.
In the example below, if resolving the deferred causes doSomethingAsync to be called again, the same deferred will be returned as the previous call because the property hasn't been set to null yet.
class Example
{
    function doSomethingAsync()
    {
        if ($this->deferred) {
            return $this->deferred;
        }

        $this->deferred = new Deferred();

        // Start a watcher in the loop to do something async.
        $this->loop->onReadable($this->stream, function () {
            $this->deferred->resolve($result);
            $this->deferred = null;
        });

        return $this->deferred;
    }
}

@trowski That code is not affected, because I/O watchers are only executed in the next tick. It's just about coroutine resolution and doesn't change how the code works.

I'd say you're describing an anti-pattern.
IMO, you should have your scope cleaned up before you are actually doing calls into the wild - at least Promises shouldn't be tied to the reactor, the immediately is merely a way to distribute work (instead of having a single task suck up all the resources).
If you assume a reactor inside promises, that's your thing, but the standardized Promises (if we'll ever have them), shouldn't rely on its existence.

Resolving the promise will cause the coroutine waiting on the promise to continue. That coroutine might cause doSomethingAsync() to be called again.

@bwoebi It would probably be wise to set the deferred to null first, and something I could certainly clean up in Icicle. I just worried that others writing code would get caught in the same trap since it's easy to forgot that another context might call your method before it has finished. Even async with coroutines can be hard to reason about. :smile:

It's a trap and you should avoid it. It's one of the things you need to be aware of when creating a library. But in actual application code (most users - at least when using coroutines), it doesn't matter so much.

You make some good points. Only the lower level libs have to deal with these issues, since application code should be using coroutines that don't have those problems. I have some code to modify. :coffee:

Did anyone ever cancel a defer / immediately / queue event yet? If not, the only reason I see is consistency.

@kelunik no, but someone stated above he's doing it.
Also, there is no harm in supporting it, as we all agreed - thus, closing this issue, except someone has to add anything important.


Why RESTRICT=mirror?

https://github.com/cardoe/cargo-ebuild/blob/326d33b8b3eb173783820d2d596444a1914b41d8/src/ebuild.template#L18

The RESTRICT="mirror" setting should be used if we cannot legally mirror certain files; files will still be downloaded from the original locations.
Mirrors – Gentoo Development Guide

Many projects written in Rust are OSS (as far as I know), and RESTRICT=mirror seems not necessary for such usual OSS applications, especially when we want ebuild files for them.
Why is this line included in default template?
If this exists for safety (i.e. to prevent accidentally mirroring proprietary stuff), then I want some comments in the template to indicate when this line is necessary and when unnecessary.

Ok, I understand this exists to prevent portage from fetching crates from mirrors while they are not deployed to mirror servers.
I still want comment lines for this (because actually mirroring is not "restrict"-ed), but RESTRICT=mirror itself would be useful and should not be removed for now.

PR is welcome if you'd like to add that boilerplate into every ebuild.

Closing as abandoned.

Closing as abandoned.


Dismissed stream not working on iOS?

I am not getting event from for the dismissed stream, while all other streams work well. I'm doing the following on the iOS simulator on Mac:

Notification is displayed: displayedStream is returning a new event
Notification is clicked on: actionStream is returning a new event
But when I swipe up on the notification when it is displayed at the top section of the screen - I'm expecting dismissedStream stream to fire an event, but nothing happens.

Is there a different gesture that is considered as "dismissed" on iOS?

This is not a dismiss event, because the notification keeps existing in the notification stack. A dismiss event on iOS is when you swipe left the notification. But iOS do not delivery the dismiss events all the times. To know more about it please check our README documentation.

Got you. Thanks for the prompt response.
Perhaps worth adding that to the README? Couldn't find that information there.

Hi! Sorry for taking so long to respond to your issue on GitHub. I was focused on releasing the new 0.7.0 version of awesome_notifications and awesome_notifications_fcm and i didn't had time enough to do both. But now I can answer all your questions.
So now i'm asking you to recreate this topic using the new issue template. There's a lot of missing informations that i need to understand your problem, and all the instructions are already in the new issue template. Also, remember to check beforehand if your issue was posted by another user.
So I will automatically close all previous issues so far.
Sorry for the inconvenience and i will be waiting for your new issue request.
Thank you so much for your support!


Update wording, upload PDF that was 404 before

Hi. :)
This changes the README to a more correct grammatical style, and I hope you like it.
Congrats on this great library!

Thank you for contribution! It is really great one!


Update content on GitHub to account for 2FA

In the current content on pushing to GitHub for the first time, we don't mention what to do if an account is secured with 2FA.
https://prototype-kit-training.cloudapps.digital/task-5.html#push-the-staged-commits-to-the-remote-repo
During the training some users struggled to push their local commits to the remote repo because they needed to generate a personal access token.
This is only applicable to first commits in the terminal and isn't a concern where users commit via GitHub for Desktop.
To ensure users of the kit can follow the guidance in the training material and upload their prototype to GitHub via the terminal, additional instructions are needed.
https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line

Fixed in #8


Sort and filter for fields takes from outside the entity, take values via service

Hello,
I have the case of having fields from outside the Entity. and I'm not able to make the sort and filter works for these fields.
and these fields take its value from a service.
I thought about adding them to the entity, but since the Entity should be simple and should not use services inside, I didn't.
Can you help me with that ?

->addField('dueDate', array('filterable' => true, 'sortable' => true, 'label' => 'Due Date',
                'formatValueCallback' => function ($value, $row) {
                    /** @var AbstractPaymentProvider $paymentProvider */
                    $paymentProvider = $this->get('payment.factory')->factoryByPaymentProvider($row['p.paymentProvider']);
                    /** @var  Order $order */
                    $order = $this->get('doctrine')->getRepository('CommonBundle:Order')->find($row['o.id']);
                    return $paymentProvider->getPaymentProviderName() != 'paypal' ? $paymentProvider->getDueDate($order)->format('Y-m-d') : '-';
                }
            ))
 ->addField('invoiceDate', array('filterable' => true, 'sortable' => true, 'label' => 'Invoice Date',
                'formatValueCallback' => function ($value, $row) {
                    if ($row['o.dateMoving']) {
                        return $row['o.dateMoving']->add(new \DateInterval('P3D'))->format('Y-m-d');
                    }
                }
            ))

Hi,
It is not possible with this bundle and it won't be possible. This bundle is very simple and limited to a sql request to get the results.
If you need a paginator with custom data coming from something outside from a sql request, you can use the pager fanta paginator.
Best regards,
Philippe


Subaru FPv2

Initial Subaru FPv2 support is implemented in subaru-PR-test branch (https://github.com/martinl/openpilot/blob/subaru-PR-test/selfdrive/car/fw_versions.py#L62) using ROM ID from OBD Mode 22 queries (22 F1 82)
Some sample FPv2 values gathered from openpilot users for Impreza, Crosstrek, Outback and Forester: https://github.com/martinl/openpilot/blob/subaru-PR-test/selfdrive/car/subaru/values.py#L104
TODO

Find a solution for currently required 10 second pre-delay for queries when switching on ignition
Verify if ROM ID is used for checking ECU firmware versions / updates in SSM4

Don't know if its needed but this is from my 2018 2.5i Premium Legacy
carFw = [
  (ecu = engine, fwVersion = "\xb5\"@p\a", address = 2016, subAddress = 0),
  ( ecu = transmission,
    fwVersion = "\xbc\xf2\x00\x81\x00",
    address = 2017,
    subAddress = 0 ),
  ( ecu = fwdRadar,
    fwVersion = "\xf1\x00\x00\x00\x02",
    address = 2000,
    subAddress = 0 ),
  ( ecu = eps,
    fwVersion = "{\xb0\x00\x00",
    address = 1862,
    subAddress = 0 ),
  ( ecu = esp,
    fwVersion = "\x8b\x97D\x00",
    address = 1968,
    subAddress = 0 ),
  ( ecu = fwdCamera,
    fwVersion = "\x00\x00df\x1f@ \n",
    address = 1927,
    subAddress = 0 ) ],
radarTimeStep = 0.05,
communityFeature = true,
steerLimitTimer = 0.4,
fingerprintSource = can,
networkLocation = fwdCamera ) )

Don't know if its needed but this is from my 2018 2.5i Premium Legacy

thanks, added the FPv2 to subaru-PR-test

There is initial confirmation of FPv2 in the form of two 2018 Foresters which have matching ROM ID-s (except for transmission)

And similar confirmation with two 2019 Ascent ROM ID-s

PR https://github.com/commaai/openpilot/pull/1878

10 second delay after ignition needs to be resolved before upstreaming

10 second delay was not needed, merged to upstream


Fix unintended removal of the DSDL root namespace directory when invoking generate_package()

Fixes #133 (@TomDeRybel FYI)

Pull Request Test Coverage Report for Build 36964066

8 of 8 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.08%) to 95.858%

Totals

Change from base Build 36963799:
0.08%

Covered Lines:
12059

Relevant Lines:
12436

💛  - Coveralls


Keda 2.9.1 on AKS with Pod-Identity Looks for AzureCLICredential-

Report
when running Keda 2.9.1 with Pod Identity ( No Workload Identity) , the DefaultAzureCredentials() chain look for AzureCLICredentials but fails on "/bin/sh azurecli file not found"
The AzureCLICredential should be remvoed from the Chain list
Expected Behavior
Default Azure Credentials has options to opt-Out several Chain providers such as VisualStudioCredentials /AzureCLI Credentials etc.
so since this is Pod-Identity with distroless image the Azure CLI should not be part of this chain
Actual Behavior
many "AzureCLICredential: fork/exec /bin/sh: no such file or directory\n\terror reading service account token"
Steps to Reproduce the Problem

Use AKS 1.24 with Mariner node Pools
Use Keda 2.91 with WorkloadIdentity=False
Deploy keda with AAD-Pod Identity and add Scaled Object

Logs from KEDA operator

keda-operator-d5464cdd6-zvdw2 keda-operator 2022-12-18T15:03:48Z        ERROR   azure_servicebus_scaler error getting service bus entity length {"type": "ScaledObject", "namespace": "vi-be-map-dev11", "name": "rc-visolo", "error": "ChainedTokenCredential: failed to acquire a token.\nAttempted credentials:\n\tAzureCLICredential: fork/exec /bin/sh: no such file or directory\n\terror reading service account token - open : no such file or directory"}
keda-operator-d5464cdd6-zvdw2 keda-operator github.com/kedacore/keda/v2/pkg/scalers.(*azureServiceBusScaler).GetMetricsAndActivity
keda-operator-d5464cdd6-zvdw2 keda-operator     /workspace/pkg/scalers/azure_servicebus_scaler.go:266
keda-operator-d5464cdd6-zvdw2 keda-operator github.com/kedacore/keda/v2/pkg/scaling/cache.(*ScalersCache).GetScaledObjectState
keda-operator-d5464cdd6-zvdw2 keda-operator     /workspace/pkg/scaling/cache/scalers_cache.go:136
keda-operator-d5464cdd6-zvdw2 keda-operator github.com/kedacore/keda/v2/pkg/scaling.(*scaleHandler).checkScalers
^Ckeda-operator-d5464cdd6-zvdw2 keda-operator   /workspace/pkg/scaling/scale_handler.go:360
keda-operator-d5464cdd6-zvdw2 keda-operator github.com/kedacore/keda/v2/pkg/scaling.(*scaleHandler).startScaleLoop
keda-operator-d5464cdd6-zvdw2 keda-operator     /workspace/pkg/scaling/scale_handler.go:162
keda-operator-d5464cdd6-zvdw2 keda-operator 2022-12-18T15:03:48Z        ERROR   azure_servicebus_scaler error getting service bus entity length {"type": "ScaledObject", "namespace": "vi-be-map-dev11", "name": "celebs", "error": "ChainedTokenCredential: failed to acquire a token.\nAttempted credentials:\n\tAzureCLICredential: fork/exec /bin/sh: no such file or directory\n\terror reading service account token - open : no such file or directory"}
keda-operator-d5464cdd6-zvdw2 keda-operator github.com/kedacore/keda/v2/pkg/scalers.(*azureServiceBusScaler).GetMetricsAndActivity
keda-operator-d5464cdd6-zvdw2 keda-operator     /workspace/pkg/scalers/azure_servicebus_scaler.go:266
keda-operator-d5464cdd6-zvdw2 keda-operator github.com/kedacore/keda/v2/pkg/scaling/cache.(*ScalersCache).GetScaledObjectState
keda-operator-d5464cdd6-zvdw2 keda-operator     /workspace/pkg/scaling/cache/scalers_cache.go:136

KEDA Version
2.9.1
Kubernetes Version
1.24
Platform
Microsoft Azure
Scaler Details
Azure Service Bus
Anything else?
No response

Hi,
AzureCLICredentials is useful for local troubleshooting, but it's weird because it shouldn't fail as ChainedTokenCredential doesn't a fallback for every provider in the chain (it's the default behaviour, indeed).
If this is a problem, we have to remove it from the chain, but it's weird because e2e tests cover the scenario where AzureCLICredentials is tried as part of the chain and there isn't any error, and it works

Could the problem be that any provider in the chain can get the token, and you only see the error from the first one?, I have to try it

no there are MI pod identity that works fine
when i take the same code and revert it to keda 2.8.1 it works

I've experienced the same issue upgrading from (Helm Chart) 2.8.2. Using AAD pod identity works perfectly with that version. The only change I make is to upgrade to 2.9.2
We have a single TriggerAuthentication that does not specify identityId as part of podIdentity spec, which should mean it falls back to aadpodidentity label binding. Adding explicit identityId makes no difference.
Azure SDK is supposed to return the last error. Is it possible that the credentials are not being added to the chain? Is there an error at https://github.com/kedacore/keda/blob/main/pkg/scalers/azure_servicebus_scaler.go#L330 that means it's not added?

Interesting point... Maybe it's added IDK why 🤔
Let me try your scenario in my local cluster to be sure about that

I have added a logger in case of errors that prevent the addition of it. The tag is jorturfer/keda:msi-logger (it's generated from main, so it's 2.9.1 + the logger change). Could you try to deploy that version and see if there is any error? In parallel, I'm adding aad-pod-identity to my local cluster to check it from my side

I have reproduced the issue, but it doesn't seem related with the AzureCLICredential because removing it fails too. I feel that it's related with any wrong configuration after sdk migration (we upgraded the service bus SDK) with the bad luck that AAD-Pod-Identity doesn't have e2e test :(

I have found the issue and sadly it's really complex to solve properly because the SDK it's totally closed for extension... For the moment, I'm going to undo the change that unified both identity providers (which I hope is the future) meanwhile we try to include our requirements.

https://github.com/kedacore/keda/issues/4029

thanks for the update @JorTurFer

So what options do we have for those of us experiencing this particular issue, are on :
AKS - version 1.23.5
aad-pod - chart version 4.1.15
keda - chart version: 2.9.1
TIA

The only option atm is to downgrade KEDA to 2.8.1 or switching from aad-pod-identity to azure workload identity. This PR solves the issue but we don't plan (not yet at least) to do a hotfix release. You could use main tag instead of a pined version once this is merged, but main tag also has integrated the admission webhooks, so atm it's a bit more complicated because you need to deploy all needed resources for webhooks manually due to helm chart isn't ready yet (I plan to have it ready this week).
My suggestion is to switch to aad workload identity because aad-pod-identity is deprecated and will be unmaintained at the end of this year (I don't remember the exact date), but I understand that this could require more effort than other options.

I could move to workload identity, however, that too exhibits the same sort of issue (documented here https://github.com/kedacore/keda/issues/3977). So it feels like whichever way I go I'm going to hit an issue.

I could move to workload identity, however, that too exhibits the same sort of issue (documented here #3977). So it feels like whichever way I go I'm going to hit an issue.

Are you using Mariner distro too? That issue is located with Mariner distro

That distro isn't affected by the error with workload identity, as I said, the issue is with the distro and workload identity, not with KEDA itself, I have in production workloads using workload identity indeed and I haven't seen that problem.
The error you are seeing is related with a bug introduced in that version when we migrated from the old identity sdk to the new one. That change is reverted here https://github.com/kedacore/keda/pull/4030

I'm not sure if anyone is experiencing this same issue after upgrading to the version 2.9.2 or above, instead of working as expected now it just displays a different error. Thought it would be worth asking if anyone experienced the same. @JorTurFer
2023-09-12T18:11:14Z    ERROR   azure_servicebus_scaler error getting service bus entity length {"type": "ScaledObject", "namespace": "staging", "name": "functionx", "error": "ChainedTokenCredential: failed to acquire a token.\nAttempted credentials:\n\tmanaged identity timed out"}
github.com/kedacore/keda/v2/pkg/scalers.(*azureServiceBusScaler).GetMetricsAndActivity
/workspace/pkg/scalers/azure_servicebus_scaler.go:262
github.com/kedacore/keda/v2/pkg/scaling/cache.(*ScalersCache).GetMetricsForScaler
/workspace/pkg/scaling/cache/scalers_cache.go:78
github.com/kedacore/keda/v2/pkg/scaling.(*scaleHandler).GetScaledObjectMetrics
/workspace/pkg/scaling/scale_handler.go:443
github.com/kedacore/keda/v2/pkg/metricsservice.(*GrpcServer).GetMetrics
/workspace/pkg/metricsservice/server.go:45
github.com/kedacore/keda/v2/pkg/metricsservice/api._MetricsService_GetMetrics_Handler
/workspace/pkg/metricsservice/api/metrics_grpc.pb.go:79
google.golang.org/grpc.(*Server).processUnaryRPC
/workspace/vendor/google.golang.org/grpc/server.go:1340
google.golang.org/grpc.(*Server).handleStream
/workspace/vendor/google.golang.org/grpc/server.go:1713
google.golang.org/grpc.(*Server).serveStreams.func1.2
/workspace/vendor/google.golang.org/grpc/server.go:965

I'm not sure if anyone is experiencing this same issue after upgrading to the version 2.9.2 or above, instead of working as expected now it just displays a different error. Thought it would be worth asking if anyone experienced the same. @JorTurFer
2023-09-12T18:11:14Z ERROR azure_servicebus_scaler error getting service bus entity length {"type": "ScaledObject", "namespace": "staging", "name": "functionx", "error": "ChainedTokenCredential: failed to acquire a token.\nAttempted credentials:\n\tmanaged identity timed out"} github.com/kedacore/keda/v2/pkg/scalers.(*azureServiceBusScaler).GetMetricsAndActivity /workspace/pkg/scalers/azure_servicebus_scaler.go:262 github.com/kedacore/keda/v2/pkg/scaling/cache.(*ScalersCache).GetMetricsForScaler /workspace/pkg/scaling/cache/scalers_cache.go:78 github.com/kedacore/keda/v2/pkg/scaling.(*scaleHandler).GetScaledObjectMetrics /workspace/pkg/scaling/scale_handler.go:443 github.com/kedacore/keda/v2/pkg/metricsservice.(*GrpcServer).GetMetrics /workspace/pkg/metricsservice/server.go:45 github.com/kedacore/keda/v2/pkg/metricsservice/api._MetricsService_GetMetrics_Handler /workspace/pkg/metricsservice/api/metrics_grpc.pb.go:79 google.golang.org/grpc.(*Server).processUnaryRPC /workspace/vendor/google.golang.org/grpc/server.go:1340 google.golang.org/grpc.(*Server).handleStream /workspace/vendor/google.golang.org/grpc/server.go:1713 google.golang.org/grpc.(*Server).serveStreams.func1.2 /workspace/vendor/google.golang.org/grpc/server.go:965

The bug was solved by this commit: https://github.com/kedacore/keda/pull/4030
It was released as part of v2.10, so you have to downgrade to v2.8 or upgrade to at least v2.10

I'm afraid I tried upgrading to v2.10.1 and v2.11.2 and I keep getting the same error I described above. I wished it had more information on what it could be but I am left in the dark with a 'managed identity timed out' message, without changing anything from v2.8 to the versions above. @JorTurFer Thanks for answering so quickly, was hoping someone with the same issue could shed some light.
2023-09-12T18:42:37Z    ERROR   azure_servicebus_scaler error getting service bus entity length {"type": "ScaledObject", "namespace": "staging", "name": "nidcustomerbackgroundservices", "error": "ChainedTokenCredential: failed to acquire a token.\nAttempted credentials:\n\tmanaged identity timed out"}
github.com/kedacore/keda/v2/pkg/scalers.(*azureServiceBusScaler).GetMetricsAndActivity
        /workspace/pkg/scalers/azure_servicebus_scaler.go:262
github.com/kedacore/keda/v2/pkg/scaling/cache.(*ScalersCache).GetMetricsAndActivityForScaler
        /workspace/pkg/scaling/cache/scalers_cache.go:130
github.com/kedacore/keda/v2/pkg/scaling.(*scaleHandler).GetScaledObjectMetrics
        /workspace/pkg/scaling/scale_handler.go:471
github.com/kedacore/keda/v2/pkg/metricsservice.(*GrpcServer).GetMetrics
        /workspace/pkg/metricsservice/server.go:47
github.com/kedacore/keda/v2/pkg/metricsservice/api._MetricsService_GetMetrics_Handler
        /workspace/pkg/metricsservice/api/metrics_grpc.pb.go:99
google.golang.org/grpc.(*Server).processUnaryRPC
        /workspace/vendor/google.golang.org/grpc/server.go:1337
google.golang.org/grpc.(*Server).handleStream
        /workspace/vendor/google.golang.org/grpc/server.go:1714
google.golang.org/grpc.(*Server).serveStreams.func1.1
        /workspace/vendor/google.golang.org/grpc/server.go:959

If you have tried v2.10.1 and v2.11.2 and if fails, I suggest creating an issue for it because this issue was for a specific problem and it was already fixed


Contribution descriptions are set to config object's keys

[x] I'm sure this issue is not a duplicate.
More info: Contribution descriptions are pulling and rendering the config object's keys instead of values. I'm seeing the same issue with English and German. I'm on Mac OS 10.14.5, vscode 1.34.0, vscode-icons 8.7.0.

Turns out this is a vscode visual bug. Investigating it, I searched for another extension that uses nls for translation support and found yzhang-gh/vscode-markdown. If you search in vscode extensions sidebar for markdown and view the Contributions section for that extension, you will see the same visual bug.
Better report this to the vscode issues.

Related https://github.com/microsoft/vscode/issues/54111

If you disable ethernet connection and reload VS Code you will see correct labels.

It is solved by now:


Compilation fails with C++20 and C++23 with gcc 11.3

Compiling zpp_bits.h into a static library using CMake produces the attached errors with both C++20 and C++23. GCC version is 11.3 and CMake version is 3.22.
zpp_error.txt

Standalone compilation works, so could be an issue with CMake.

Did you solve the issue?
I have the same issue with cmake and msvc compiler
If i create simple console app then it works fine


Update finagle to 17.10.0

New version was released few days ago
Also update catbird & iteratee

Codecov Report

Merging #861 into master will decrease coverage by 0.68%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #861      +/-   ##
==========================================
- Coverage   81.43%   80.74%   -0.69%
==========================================
  Files          50       50
  Lines         727      727
  Branches       33       33
==========================================
- Hits          592      587       -5
- Misses        135      140       +5

Impacted Files
Coverage Δ

core/src/main/scala/io/finch/Input.scala
87.5% <0%> (-12.5%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update bdf9110...cb1c05d. Read the comment docs.

If the only thing blocking the upgrade to Cats 1.0.0-RC1 is circe-jackson I can try to get that published today.

@travisbrown it would be awesome! Thanks

I think we also need circe-streaming (which is being extracted from Circe) to do a Cats upgrade.

@ImLiar Looks like we need to depend on logging explicitly (based on https://travis-ci.org/finagle/finch/jobs/297979347). I'd just replace log() with println for now.

@vkostyukov You're right, sorry—I'll try to sort out https://github.com/travisbrown/iteratee/pull/218 tonight. In the meantime circe-jackson's ready.

@vkostyukov
Yep, I'm on it with fixing a logger

Thanks @ImLiar! Merging this in.

@vkostyukov there are still some warning (potential binary incompatibilities) because circe-streaming wasn't releassed yet. Waiting for iteratee tests fix

Yeah. Looks like we also need to bump discipline's version.


Update 13_spark_shell.md

Fix + yet another alternative to running a named Docker container

Thanks for the patch!


Add LLM support for full suite of MIRA operations

This issue is to attempt to ingest all of MIRA's documentation into the GPT-4 context to enable a user to have AI assisted MIRA code generation support when performing modeling operations.

The concrete goal is to do this for MIRA, but ideally this solves for doing this in general--how to add LLM support for arbitrary libraries within Beaker.


Add tcp fast open support.

Add tcp fast open support for both side on linux kernel 3.7+.
Please review.

@zxjcarrot  @cyfdecyf  thx for ur great work.  dear both, may i ask is there any way to fix conflicts for FAST OPEN?

This feature is going to be delivered with next version of Golang (1.9).
golang/go#4842