refactor(create-app): fix duplicate selection issue & make it more logic

Description
This pull request fixes the duplicate selection issue, and improve the quality of code.
Additional context
The first thing I tried was to fix the selection issue:

But after a long look in the code of the create-app, I decided to improve it. So here is a list of what I exactly changed:

I changed most of the code to make it asynchronous when possible. I also fixed a bug that enquirer seemed to have (or at least the code). This one consisted in duplicating the choice of templates each time a directional key was touched.
To replace enquirer and make the code cleaner, I chose prompts, which is really well documented. It does exactly the same as enquirer, but actually does it better.
Concerning the structure of the files, I didn't find it normal to mix the templates with the package.json, the index.js etc... Each file has its place. For the templates, I simply created a folder "templates" and I put them in it. For the index.js file, I created a src folder, and I put it inside. I also removed the list of colors from the index and put them in a separate file called colors. <-- gonna be in another pull request
Finally, I replaced the term framework by template because the project already uses this term. Why add another term that can make the whole thing confusing? <-- Didn't make sense, reverted

Here is the visual result of changes:

What is the purpose of this pull request?

[x] Bug fix
[ ] New Feature
[ ] Documentation update
[x] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the Commit Convention.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[ ] Ideally, include relevant tests that fail without this PR but pass with it.

Hey @Olyno! Thanks for the PR!
Could you break the PR in smaller changes using different PRs for each?
This one is changing several things at the same time, so it would be difficult to review it and it may make git history less friendly to review later.
I think that changing from enquirer to prompts should be the first PR, to solve the bug that you found (good to make the callback to async changes also). Looks like prompts is more active, and it is 14.5kb vs 21kb (not much for node, but always good to reduce size). I think the best is to avoid a big refactoring though, so it is easier to merge the bug fix, and you can send another refactor PR later.
We could discuss in other PRs or issues about further changes. For example, I don't think that moving the templates in a separate folder is needed at this point. I also have doubts about replacing 'framework' with 'template', I don't think that framework is confusing in this context.
Thanks again!

Hi @patak-js, thanks you for your feedback!
I personally don't see how I can reduce this pull request into several for the simple reason that prompts to a certain logic that enquirer does not have and vice versa. So I don't think it is possible even though I would have liked to.
Enquirer allows you to create dialogues on the fly, while prompts is more adapted to make all the dialogues in a chain.
Also, should I go back to the term "framework" and put it back?

Yes, better to revert to "framework" IMO. And it is ok to refactor what is needed to use prompts, that could be the first PR.
What I think you shouldn't include is renaming templates from template-xxx to templates/template-xxx, and renaming index.js to src/index.js, just leave the file structure as is so the discussion can focus on one change at a time ( in this case enquirer -> prompts)

I did the revert for the "framework" and the file structure. It seems to have something wrong with the .gitignore file which includes 2 .vscode dirs from templates (template-svelte and template-svelte-ts).

Sorry @Olyno, it is still quite hard to review this PR because there are a lot of changes that are unrelated to the migration from enquirer to prompts. For example, moving the utility functions to the top instead of leaving them at the bottom of the file. Looks like there was an issue with the linter that let pass different linting rules (use of ; for example). I think the best would be to start from scratch and only perform the minimal changes needed to move to the new dependency, so we can focus on that. Please check in the generated diff that only the lines related to this move are touched.

Hey @patak-js sorry for the delay. I reworked the code as you requested, making as few changes as possible. I'll do some more pull requests later to improve the other parts 😃

Can you explain a bit when would the duplicate selection issue appears? It works fine on my side.
And if so, it's more likely a bug of enquirer where it might be better fixed in the upstream. To me, it's not worth to switching tools because of an edge case bug, otherwise we are likely to have duplicated work of switching a to b, then another switching b to c.

Yeah... I am with @antfu in this point
Also why prompts?
According to following statistics, we could directly move to inquirer 🤔
IMO the gap between enquirer vs prompts is not worth it to switch to prompts

https://www.npmtrends.com/enquirer-vs-inquirer-vs-prompts

Can you explain a bit when would the duplicate selection issue appears? It works fine on my side.

It works fine for me too on Windows, but does not work as expected on my Linux (see screen above)

And if so, it's more likely a bug of enquirer where it might be better fixed in the upstream. To me, it's not worth to switching tools because of an edge case bug, otherwise we are likely to have duplicated work of switching a to b, then another switching b to c.

Well I'm totally agree with you, and I would like to know how to fix it, but it doesn't seem possible to fix it directly here, it's probably an internal issue of enquirer. That's the reason why I did the choice to change the dependency directly to have one which have more chances to work on all OS.

Also why prompts?

If everything should be related to stats, then I guess WindiCSS should not be used since TailwindCSS is much more used, same for Svelte in front of React and much more...
If I chose prompts as a replacement, it's not about replacing with the first tool that comes along. I chose it mainly for:

Its api which is very easy to use
Its explicit typing
Its very well provided and organized documentation

As well as its popularity which only grows with time.
Inquirer remains an interesting choice, but:

The documentation is less well organized
The API is not intuitive

I'm talking here from my personal point of view, and one way or another it's up to you to decide what you prefer for Vite. I can of course redo all the code with Inquirer if you prefer.

I'm a bit splitted here 😕
First IMO WindiCSS is an improvement on top of TailwindCSS, like SCSS is for CSS
But let's not discuss this here...
Create React App uses prompts
https://github.com/facebook/create-react-app/blob/fddce8a9e21bf68f37054586deb0c8636a45f50b/packages/create-react-app/package.json#L38
Vue-CLI uses inquirer
https://github.com/vuejs/vue-cli/blob/2d3116ed50de185bee584d98d48cf7223782367d/packages/%40vue/cli/package.json#L45
I would like to let @patak-js or @antfu decide it 😅

First IMO WindiCSS is an improvement on top of TailwindCSS, like SCSS is for CSS

Yeah I know ahah, I was trying to show you an absurd comparison to explain you that numbers don't mean everything, WindiCSS was maybe not the best example 😅

I think it would be a good idea to check if inquirer is a better option here. @sodatea was there a rationale to choose it for vue-cli?

Thanks @sodatea, I think switching to prompts is a good idea. @antfu what do you think?
@Olyno the PR is still changing more things than just the move to prompts though. The getValidPackageName shouldn't be removed. This function is used to have an extra question when the project name is not valid.
The project could be named "Hello World", and in that case a new question will ask if "hello-world" is ok as the package-name and let the user change it.

Don't get me wrong, I am not against switching tools. As least we should explain a bit about why, otherwise this is like "changing the tool because of a bug" (as there are also like to have another bug in the tool you are replacing with, there will be no end to this). And I guess that's also why @patak-js is suggesting to make into two PRs.
As you have provided the detailed explanations, and they sounds reasonable to me now. 👍

This function is used to have an extra question when the project name is not valid.

Well I just did changes using the already existing code and the same logic @patak-js. Here is with the actual create-app package:

And here is with my changes:

@Olyno it is not the same. You should be able to create a project name "Hello World" (that is the name of the directory). In the version in this PR you can no longer do that, please check this comment from Evan https://github.com/vitejs/vite/pull/2385#issuecomment-799438365

Also, we should allow user to create directories with any name, we just need to make sure the name used in package.json is valid so that npm/yarn doesn't complain.

Nice one, I fixed it!

I've considered switching to prompts in Vue CLI, too. It is much smaller and works as well. (inquirer depends on rxjs, which is huge.)

THIS, is a really good reason against inquirer. 👍
So yeah, we may discuss and not fast-forward and merge this one now until we decided finally to switch to prompts.
And I'm with @antfu about not switching just cause "changing the tool because of a bug"

Beside that, I'm seeing these Operation cancelled + StackTrace

Is this now the new behavior? If so, I really don't like that and we should not print a Stack Trace just when normally cancelled. (e.g. Ctrl+C)

And I'm with @antfu about not switching just cause "changing the tool because of a bug"

Well, I gave more than this argument:

If I chose prompts as a replacement, it's not about replacing with the first tool that comes along. I chose it mainly for:

Its api which is very easy to use
Its explicit typing
Its very well provided and organized documentation

Is this now the new behavior? If so, I really don't like that and we should not print a Stack Trace just when normally cancelled. (e.g. Ctrl+C)

Changed

Updated and handled some edge cases so the tests are now passing

The UX is a lot better with prompts, there a lot of little details that make this a good move ❤
The only thing is that we lost the ability to use a project name that is not a valid package name. See this comment by Evan: https://github.com/vitejs/vite/pull/2385#issuecomment-799438365

we should allow user to create directories with any name, we just need to make sure the name used in package.json is valid so that npm/yarn doesn't complain.

In the current version, after the user enters a package name (we always accepts it), then:

if it is a valid package name, we use it as is
if it is invalid, we add an extra prompt that starts with a best-guess for a valid package name from the project name (replacing all invalid chars by -) as a placeholder and we let the user modify it

Pushed a commit to support non-valid project names. It also allows for users to set project name to ., which targets the current dir (so the prev message was re-instated). Some users were using this already.
Added also a throw if the user doesn't confirm that it is ok to delete the target dir files. I don't know if this is the correct pattern for prompts.

@Olyno @antfu I left one TODO because I don't know how to properly cancel the prompts if the user doesn't confirm that the target directory can be emptied.

Done @patak-js 👍🏻

LGTM now, except for the failing tests. @jamesgeorge007 maybe you could help us here?

Migrating to prompts doesn't call for a major refactor as it offers a similar API surface.
diff --git a/packages/create-app/index.js b/packages/create-app/index.js
index 1cbfb075..5f369d0e 100755
--- a/packages/create-app/index.js
+++ b/packages/create-app/index.js
@@ -5,7 +5,7 @@ const fs = require('fs')
 const path = require('path')
 const argv = require('minimist')(process.argv.slice(2))
 // eslint-disable-next-line node/no-restricted-require
-const { prompt } = require('enquirer')
+const prompts = require('prompts')
 const {
   yellow,
   green,
@@ -131,11 +131,18 @@ async function init() {
     /**
      * @type {{ projectName: string }}
      */
-    const { projectName } = await prompt({
-      type: 'input',
+    const { projectName } = await prompts({
+      type: 'text',
       name: 'projectName',
       message: `Project name:`,
-      initial: 'vite-project'
+      initial: 'vite-project',
+      onState: ({ aborted }) => {
+        if (aborted) {
+          process.nextTick(() => {
+            process.exit(1)
+          })
+        }
+      }
     })
     targetDir = projectName
   }
@@ -150,7 +157,7 @@ async function init() {
       /**
        * @type {{ yes: boolean }}
        */
-      const { yes } = await prompt({
+      const { yes } = await prompts({
         type: 'confirm',
         name: 'yes',
         initial: 'Y',
@@ -159,7 +166,14 @@ async function init() {
             ? 'Current directory'
             : `Target directory ${targetDir}`) +
           ' is not empty.\n' +
-          'Remove existing files and continue?'
+          'Remove existing files and continue?',
+        onState: ({ aborted }) => {
+          if (aborted) {
+            process.nextTick(() => {
+              process.exit(1)
+            })
+          }
+        }
       })
       if (yes) {
         emptyDir(root)
@@ -184,41 +198,44 @@ async function init() {
     /**
      * @type {{ framework: string }}
      */
-    const { framework } = await prompt({
+    const { framework } = await prompts({
       type: 'select',
       name: 'framework',
       message,
-      format(name) {
-        const framework = FRAMEWORKS.find((v) => v.name === name)
-        return framework
-          ? framework.color(framework.display || framework.name)
-          : name
-      },
       choices: FRAMEWORKS.map((f) => ({
-        name: f.name,
-        value: f.name,
-        message: f.color(f.display || f.name)
-      }))
+        title: f.color(f.display || f.name),
+        value: f.name
+      })),
+      onState: ({ aborted }) => {
+        if (aborted) {
+          process.nextTick(() => {
+            process.exit(1)
+          })
+        }
+      }
     })
+
     const frameworkInfo = FRAMEWORKS.find((f) => f.name === framework)

     if (frameworkInfo.variants) {
       /**
        * @type {{ name: string }}
        */
-      const { name } = await prompt({
+      const { name } = await prompts({
         type: 'select',
         name: 'name',
-        format(name) {
-          const variant = frameworkInfo.variants.find((v) => v.name === name)
-          return variant ? variant.color(variant.display || variant.name) : name
-        },
         message: 'Select a variant:',
         choices: frameworkInfo.variants.map((v) => ({
-          name: v.name,
-          value: v.name,
-          message: v.color(v.display || v.name)
-        }))
+          title: v.color(v.display || v.name),
+          value: v.name
+        })),
+        onState: ({ aborted }) => {
+          if (aborted) {
+            process.nextTick(() => {
+              process.exit(1)
+            })
+          }
+        }
       })
       template = name
     } else {
@@ -288,13 +305,20 @@ async function getValidPackageName(projectName) {
     /**
      * @type {{ inputPackageName: string }}
      */
-    const { inputPackageName } = await prompt({
-      type: 'input',
+    const { inputPackageName } = await prompts({
+      type: 'text',
       name: 'inputPackageName',
       message: `Package name:`,
       initial: suggestedPackageName,
       validate: (input) =>
-        packageNameRegExp.test(input) ? true : 'Invalid package.json name'
+        packageNameRegExp.test(input) ? true : 'Invalid package.json name',
+      onState: ({ aborted }) => {
+        if (aborted) {
+          process.nextTick(() => {
+            process.exit(1)
+          })
+        }
+      }
     })
     return inputPackageName
   }


Cannot build when using as a library

Not exactly sure what is causing this issue but when adding this as a dependency (using master not 0.3.0) I get this error:
   Compiling dlc-manager v0.3.0 (https://github.com/p2pderivatives/rust-dlc#0a4e29fd)
error[E0599]: no method named `write` found for struct `HashMap` in the current scope
  --> /home/ben/.cargo/git/checkouts/rust-dlc-b5770de66c51b951/0a4e29f/dlc-manager/src/chain_monitor.rs:26:1
   |
26 | impl_dlc_writeable!(ChainMonitor, { (watched_tx, writeable), (last_height, writeable), (last_block_hashes, { cb_writeable, write_vec, read_vec}) ...
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method not found in `HashMap<bitcoin::Txid, chain_monitor::ChannelInfo>`
   |
   = note: this error originates in the macro `field_write` which comes from the expansion of the macro `impl_dlc_writeable` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0277]: the trait bound `HashMap<bitcoin::Txid, chain_monitor::ChannelInfo>: lightning::util::ser::Readable` is not satisfied
  --> /home/ben/.cargo/git/checkouts/rust-dlc-b5770de66c51b951/0a4e29f/dlc-manager/src/chain_monitor.rs:26:1
   |
26 | impl_dlc_writeable!(ChainMonitor, { (watched_tx, writeable), (last_height, writeable), (last_block_hashes, { cb_writeable, write_vec, read_vec}) ...
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `lightning::util::ser::Readable` is not implemented for `HashMap<bitcoin::Txid, chain_monitor::ChannelInfo>`
   |
   = help: the following other types implement trait `lightning::util::ser::Readable`:
             ()
             (A, B)
             (A, B, C)
             AcceptDlc
             AcceptedChannel
             AcceptedContract
             AdaptorInfo
             AnnouncementSignatures
           and 205 others
   = note: this error originates in the macro `field_read` which comes from the expansion of the macro `impl_dlc_writeable` (in Nightly builds, run with -Z macro-backtrace for more info)

The project I am trying to pull it into has lightning 0.0.12 as a dependency as well, possibly the error could be coming from there but doesn't seem like that would cause the issue

This is in wasm as well, maybe that's the issue?

Am able to continue working on top of this for now: https://github.com/benthecarman/rust-dlc/commit/3729e5a11429275947209ad12e4c33046012311f


When initializing the QDrantHttpClient, you need to set the OkHttpClient and add some configurations.

For instance:

Incorporate additional interceptors.
Implement other more nuanced configurations.

Yes, that is a good enhancement. The client builder should incorporate a way to provide an already configured OkHttpClient instance.

Enhancement will be included in next release.

Enhancement released with v0.12.0


Added missing results service env vars on docker file for queuer

[ ] I have added the tests to cover my changes.
[x] I have updated the documentation and CHANGELOG accordingly.
[x] I have read the CONTRIBUTING document.

Closed due to: Duplicate PR


Add missing DocBlock.

@regniblod thanks for taking care of updating/finishing all the PHPdoc blocks!


Typo in Decision Tree lesson name

Hi,
This one cannot be fixed in this repo, but thought it was still worth mentioning for future versions of the course (hoping there will be more versions as it's probably one of the best ML courses out there :clap: )
The typo is on lesson "Decisison tree" :+1:

Thanks this is specific to FUN (the MOOC platform we use), tagging this for the next session.

Done in Fun


vr: fix python exception when configure VRs

Description
This PR fixes #4474
before
root@r-27-VM:/var/cache/cloud# /opt/cloud/bin/configure.py monitor_service.json
ERROR:root:Command 'ip link show eth0 | grep 'state DOWN'' returned non-zero exit status 1

with this change
root@r-27-VM:/var/cache/cloud# /opt/cloud/bin/configure.py monitor_service.json
root@r-27-VM:/var/cache/cloud#

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[X] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale

[ ] Major
[ ] Minor

Bug Severity

[ ] BLOCKER
[ ] Critical
[ ] Major
[X] Minor
[ ] Trivial

Screenshots (if appropriate):
How Has This Been Tested?

LGTM

@blueorangutan package

@rhtyd a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: ✔centos7 ✖centos8 ✔debian. JID-2418

@blueorangutan test

@rhtyd a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

Trillian test result (tid-3228)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 31812 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr4489-t3228-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_kubernetes_clusters.py
Smoke tests completed. 83 look OK, 0 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File


sha3 import aliasing not working

I tried to run the unit tests for my pyethereum based project on Travis CI. They fail with an internal assert in utils.py:
   assert encode_hex(sha3(b'')) == b'c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470'
  AssertionError

@chfast was kind and pointed me this might be because of incompatible sha3 library.
I see in the head of utils.py
try:
    from Crypto.Hash import keccak
    sha3_256 = lambda x: keccak.new(digest_bits=256, data=x).digest()
except:
    import sha3 as _sha3
sha3_256 = lambda x: _sha3.sha3_256(x).digest()

I am assuming I have wrong crypto library installed. However it is not hard failing during imports, because of this import aliasing. To make it more clear to the library user what is failing here I propose

Either remove import aliasing for sha3

Have an assert error message state "You are missing library install x"

The error is actually caused from this commit upstream in pyrlp
https://github.com/ethereum/pyrlp/commit/2ec0fe159652f2cf12794bd8c239a8823cf93579#diff-08365a27b3d167a1798206d64f6e3708
The return value is not a string (instead of bytes).

You can side-step this by forcing rlp==0.4.6

Actually turns out there is now another problem that triggers this.
sha3 and keccak (although in principle the same algorithm) use slightly different padding strategies.
Ethereum uses the keccak version.
Recently pysha3 released v. 1.0.0 and in doing so switched to the 'standard' SHA3 implementation. They still provide a keccak implementation under the keccak_256 name.
I've opened #430 to track this problem.


Downtime

Jan 6 2020
API was down from 12pm to 8pm.

Jan 8, 2020
API is currently down for maintenance.
In an effort to fix #16, I am making some changes to DNS setting that may result in downtime.


Design User Sign Up

Write up backend code sign-up wherein the user enters their name, email, and password.

Development is complete and the code is checked in. (Commit no: e5a6980f832ca89e2c41553bd3569db9e40d9f06)


Introduce @use-custom-controls variable

This allows themes to opt-out of custom styling for controls, like radio, checkbox, select etc. Useful for themes that like to mimic a more native look and feel, like unity-ui, native-ui etc.

@use-custom-controls: true;
@use-custom-controls: false;

Questions

[ ] Variable name?

Drop the use- and just have @custom-controls: true;?
Invert it to @use-native-controls: false;

Let's 🐑  this, so it makes it into the same release as https://github.com/atom/atom-ui/pull/8.


Preventing the selection of date and times in the past

Is it possible to prevent the picking of dates and times that have already past? We only want to allow the selection of future dates.

I apologize, I see this is in the documentation

I couldn't find it in documentation quickly and ended up here, maybe it can be improved, I searched for "past" on the page.

@omidfi Hi,
The prop you are looking for is called isValidDate. Thanks for the feedback, I'll re-phrase the example part for isValidDate to include that word.


Installing pydantic_core-2.13.0 with pip on Debian 11

Trying to install pydantic_core-2.13.0 with pip on Debian 11 leads to following error:
Collecting pydantic_core
  Using cached pydantic_core-2.13.0.tar.gz (357 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]

      Cargo, the Rust package manager, is not installed or is not on PATH.
      This package requires Rust and Cargo to compile extensions. Install it through
      the system's package manager or via https://rustup.rs/

      Checking for Rust toolchain....
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

The previous versions were installed fine. I did not need cargo before.
I installed cargo with apt from the Debian repo and now get the following error:
Collecting pydantic_core
  Using cached pydantic_core-2.13.0.tar.gz (357 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [10 lines of output]
      error: failed to parse manifest at `/tmp/pip-install-i370odut/pydantic-core_98f141796ce441c6a7d0a2d77317e035/Cargo.toml`

      Caused by:
        invalid type: unit variant, expected string only for key `profile.bench.strip`
      💥 maturin failed
        Caused by: Cargo metadata failed. Does your crate compile with `cargo build`?
        Caused by: `cargo metadata` exited with an error:
      Error running maturin: Command '['maturin', 'pep517', 'write-dist-info', '--metadata-directory', '/tmp/pip-modern-metadata-_xm6iqs2', '--interpreter', '/usr/local/bin/python3.11']' returned non-zero exit status 1.
      Checking for Rust toolchain....
      Running `maturin pep517 write-dist-info --metadata-directory /tmp/pip-modern-metadata-_xm6iqs2 --interpreter /usr/local/bin/python3.11`
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.

I guess the installed cargo version 0.47.0-3+b1 is older and does only accepts strings for 'strip'.
I have observed the same problem on Centos-7, Rocky-8 and Ubuntu 20.04.

It looks like our linux x86_64 build has switched manylinux version
2.12: https://files.pythonhosted.org/packages/10/dd/c705ec5403a2dbd9a7928ed3c83d5a7dc50d765e700701bf0579920a2a96/pydantic_core-2.12.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
2.13: https://files.pythonhosted.org/packages/00/d5/07c631265a2ca2d3f67ce5fe92bf4f0b5ffa27268c4ce757e03b5089f10c/pydantic_core-2.13.0-cp310-cp310-manylinux_2_34_x86_64.whl
glibc 2.34 vs 2.17
This was unintended, I guess in #1063. I'll investigate.

Great find @mdierksen, thank you so much.

Always happy to help. Thank you for your work. :)

Should be restored in 2.14.1, just pushing now.


Add funding.json

Current dependencies on/for this PR:

main

PR #396   👈

This stack of pull requests is managed by Graphite.


Purge expired memory sessions

[#170010973]

I was looking at #1152 and #1151
What would be important to have regular cleanup of sessions. Is the default for #1152 configured for once per hour? This would be to long for my understanding.

@mwdb Both #1151 and #1152 allow for the configuration to drive the purge timeline. We'll take a look during Pacific working hours to figure out the best parts of #1151 and #1152 and make sure that the BOSH release allows setting any configuration options. CC: @shamus @dbeneke

@mwdb while it is configurable, why do you feel the default of an hour would be too long? It's mostly a matter of how aggressively to purge the store.

We have seen examples where we had 80.000 sessions taking 500 MB. Freeing this only once an hour would mean releasing a bunch of memory at once and causing a lot of work for the GC. It is better to more frequently release memory to avoid any peaks.

I went ahead and bumped to default to 15 minutes in the other PR.  I understand that you have an active installation and will need the ability to tune how frequently sessions are purged which we can address via a property in the BOSH release.

Closing as #1152 has been merged.


fix: convert the pointer values of type uchar to unsafe.Pointer before converting them to *char

Signed-off-by: Felix Ting<EMAIL_ADDRESS>

@vladimirvivien I found a type-casting issue and tried to fix it. But I don't know CGO in much detail. I'd appreciate it if you could help review the change. Thanks!

🎉  @FelixTing thank you for submitting this patch. Good catch.

@vladimirvivien Thank you for your help.


Fix Token Transformer references on typography and boxshadow tokens

Closes #685, closes #690

@six7 I'm guessing the storybook deployment fails because of a missing token (pun intended 😋 ) when running from my branch/PR, right? Other than that, I hope the build and tests are good 🤞🏻

@six7 I'm guessing the storybook deployment fails because of a missing token (pun intended 😋 ) when running from my branch/PR, right? Other than that, I hope the build and tests are good 🤞🏻

yes, that one fails because storybook is part of the next branch. i'm currently preparing for the next release, so i'll have to leave this one open until we have that done, but will do that afterwards 👍

@six7 I'm guessing the storybook deployment fails because of a missing token (pun intended 😋 ) when running from my branch/PR, right? Other than that, I hope the build and tests are good 🤞🏻

yes, that one fails because storybook is part of the next branch. i'm currently preparing for the next release, so i'll have to leave this one open until we have that done, but will do that afterwards 👍

@six7 Thx 👍🏻
I've merged latest changes from main to my branch, and I see now, that the SB deployment goes through, but the Cypress test fails. As far as I can see that's not related to my changes or...?

AssertionError: Timed out retrying after 4000ms: Expected to find element: [data-cy="themeselector-dropdown"], but never found it.

@six7 Any updates on this one? 🙏🏻 😊

Sorry for the delay. Merging this in now and releasing tomorrow morning 🙏

Sorry for the delay. Merging this in now and releasing tomorrow morning 🙏

No worries, thx 😊👍🏻

Sorry for the delay. Merging this in now and releasing tomorrow morning 🙏

No worries, thx 😊👍🏻

Released ! 🎉 Thanks again!


Return proper Error in the callbacks

Up to the latest version we return an object literal with useful information. However, I think we should return a proper Error object with the same information we return now and a message property.

Closing this issue as "won't fix".


useNavigationComponentDidAppear handler get fired when componentId is undefined

First of all thank you for the awesome little library. I just noticed that useNavigationComponentDidAppear handler get attached when the componentId becomes undefined which leads to a potential memory leak since React can't destroy the component properly.
How to reproduce: (As you can see I have change prop name from componentId to componentID). This is an edge case since in TS config componentId marked as optional and the way I found the issue was someone in my team accidentally used following hook in a non-react native navigation registered screen which leads to componentId to become undefined.
const [ready, setReady] = useState();
useNavigationComponentDidAppear(async () => {
    setReady(true)
  }, props.componentID);

Hi @samithaf,
First of all, thank you for taking the time to report this issue!
Your report has led to some internal discussion within the team on how to handle this case and similar ones, so we will be looking into it.
I'll keep the issue updated with new info when something comes up.

Hi @samithaf based on your suggestion we've updated the library to log warning messages if you don't provide a componentId as you suggested.
You can find more info about the 6.1.0 updates here https://underscopeio.github.io/react-native-navigation-hooks/docs/migration-guide
Thanks for reporting this one!


i2c: busy wait in s_i2c_send_commands is not very power efficient. (IDFGH-12076)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

General issue report
While researching #13136, I noticed that s_i2c_send_commands does a "busy wait" while waiting for the interrupt handler to (eventually) finish the i2c transfer.
Correct me if I'm wrong, but this isn't very power efficient; at low i2c clock rates, it isn't computationally efficient for other tasks, either, because it spins the CPU waiting for the transfer to complete:
while (i2c_master->trans_done == false) {};

Wouldn't this be better for power consumption?
while (i2c_master->trans_done == false) {
  esp_light_sleep_start();
};

or if FreeRTOS is involved, maybe this would be better to suspend the busy wait until the next systick?
while (i2c_master->trans_done == false) {
  taskYIELD();
};

If FreeRTOS is always expected to be in the build for this driver, then maybe the synchronous version should suspend the task with task = xGetCurrentTaskHandle(); vTaskSuspend(NULL); and the callback should resume it with vTaskResume(task); return true; in the callback handler.
This provides not just better CPU sharing and power-usage efficiency, but an 8x performance improvement over 1kHz systicks and ~75x over 100Hz systicks.  Here is a simple sync vs async benchmark:

async with task suspend/resume: 7506 samples/sec
sync with vTaskDelay(1); is limited by the systick rate, so the best it can do is ~995 samples/sec, or 99 samples/sec with the default of systick at 100Hz.

Test project:
https://github.com/KJ7LNW/esp32-i2c-test/tree/master
n.b.: I'm not sure if xGetCurrentTaskHandle() is a thing, but I found a reference to it here.

@mythbuster5 I believe this hasn't been sufficiently documented since the new driver was added.
The previous API used a FreeRTOS queue to receive messages once commands were completed, while now the API is truly CPU blocking.
I have had TWDT trigger because of this when device is offline.

@nebkat, and @mythbuster5: Please see PR #13322 which would close this issue.


Added notermguicolor support and special effects

Changes

Added notermgui support
Added calculating cterm values from rgb hax codes
updated nord theme as POC
Exposed special parameters for highlight(like bold,italic) to themes
with sp like to bold "B" in normal mode do normal.b.sp = 'bold'
Checked notermguicolor support in README.md
Changed CONTRIBUTING.md to reflect current notermguicolor support

It's backwords compatable so old themes will work .

Good job! This looks like an optimal solution.

Good job! This looks like an optimal solution.

Done

Done

I've added a function to calculate cterm values from rgb colors . Now even the themes that don't provide those values will have notermgui support :) .
Though the color seems abit washed out see if you can find any impovement.

I've added a function to calculate cterm values from rgb colors . Now even the themes that don't provide those values will have notermgui support :) .
Though the color seems abit washed out see if you can find any impovement.

Thats 256 colors palate. Theres nothing like the sheds of gray used in gruvbox in those 256 colors . There are limitations when that few colors are used. That's why they get rendered like different gray .
(after all RGB has 16,777,216 colors that we are trying to fit in 256 colors)

Thats 256 colors palate. Theres nothing like the sheds of gray used in gruvbox in those 256 colors . There are limitations when that few colors are used. That's why they get rendered like different gray .
(after all RGB has 16,777,216 colors that we are trying to fit in 256 colors)

Themes checklist

[x] nord
[x] - powerline
[ ] - one dark
[ ] - gruvbox
[ ] - dracula
[ ] - forest night

Themes checklist

[x] nord
[x] - powerline
[ ] - one dark
[ ] - gruvbox
[ ] - dracula
[ ] - forest night

Bad tap naver mind . See if it fells more nordy now

Bad tap naver mind . See if it fells more nordy now

I've rewritten the cterm autogenaration . Check it out . It works really well . I donn't think we even need to add cterm values to themes any more.

I've rewritten the cterm autogenaration . Check it out . It works really well . I donn't think we even need to add cterm values to themes any more.

I've updated CONTRIBUTING.md . You can try improving the algorithm .Apart from that I think it's complete.

I've updated CONTRIBUTING.md . You can try improving the algorithm .Apart from that I think it's complete.

I've updated CONTRIBUTING.md . You can try improving the algorithm .Apart from that I think it's complete.

I agree. I will look into the algorithm and CONTRIBUTING.md later today.

I've updated CONTRIBUTING.md . You can try improving the algorithm .Apart from that I think it's complete.

I agree. I will look into the algorithm and CONTRIBUTING.md later today.

I updated theme formatting to make them more compact, I think it makes them clearer to read while also reducing code size slightly.

I updated theme formatting to make them more compact, I think it makes them clearer to read while also reducing code size slightly.

I've changed implementation to a function . no more tables and meta tables

I've changed implementation to a function . no more tables and meta tables

Wellcome

Wellcome


prevent restyled loops

Problem
Repositories with symbolic links that point upwards (e.g. https://github.com/project-chip/connectedhomeip/blob/master/examples/wifi-echo/server/esp32/third_party/connectedhomeip) send restyled into an infinite loop.
Summary of Changes
exclude places we know have upward symlinks
(also fixes CODEOWNERS)

@mspang @bzbarsky-apple @saurabhst would appreciate speedy review, these 2 items have borken our processes


Update the documentation

Description of feature request
Update the documentation to reflect the new cli format
Requirements to close this ticket:

[x] Wiki should reflect the new cli call formatting
[x] Readme should reflect the new cli call formatting
[x] help page should reflect the new cli call formatting

This is completed and published to npm


Access to doc field when the doc_values:true is still slower

Describe the bug
I am trying to use a script score query and computing the score based on whether the doc has the field in it
{
  "query": {
    "script_score": {
      "script": {
        "lang": "painless",
        "source": """if(doc['T12M_visits_text'].size() != 0){return 1;}return 0;"""
      },
      "query": {
        "bool": {
          "must": [
            {
              "term": {
                "entity_type.keyword": {
                  "value": "website"
                }
              }
            }
          ]
        }
      }
    }
  }
}

There are better ways to do this but I am trying to understand why does checking for field in the way shown above takes around 5s-9s. The index has around 500,000 documents which is around 1 GB (index size)
Index mapping for above field
"T12M_visits_text" : {
          "type" : "keyword",
          "ignore_above" : 512
        }

So my question is why does accessing 'T12M_visits_text' takes longer ? The field has keyword type with variable length text but none of the field values exceed 512 limit
I tried same query with another field of datatype long, and that runs within 1s
Expected behavior
The query should run within 1 or 2s
Plugins
None
Host/Environment (please complete the following information):

OS version 1.3

I would rerun this in OpenSearch 2.x to confirm that it's still slower, next, just to rule out bugs.

I was able to get better performance by using a field of type long instead of keyword. Based on my current experiments I have found accessing numeric data types is faster than keywords, given that both are not present in field data cache

One difference I noticed is that string/binary doc values have to do a full byte array copy for each value (ref):
        @Override
        public void setNextDocId(int docId) throws IOException {
            if (in.advanceExact(docId)) {
                resize(in.docValueCount());
                for (int i = 0; i < count; i++) {
                    // We need to make a copy here, because BytesBinaryDVLeafFieldData's SortedBinaryDocValues
                    // implementation reuses the returned BytesRef. Otherwise we would end up with the same BytesRef
                    // instance for all slots in the values array.
                    values[i].copyBytes(in.nextValue());
                }
            } else {
                resize(0);
            }
        }

Whereas for longs, it does not (ref:
        @Override
        public void setNextDocId(int docId) throws IOException {
            if (in.advanceExact(docId)) {
                resize(in.docValueCount());
                for (int i = 0; i < count; i++) {
                    values[i] = in.nextValue();
                }
            } else {
                resize(0);
            }
        }

Another difference may be related to the ordinals lookups for keyword field values, but I'm not as clear on how that works.


Fix attack style highlighting

Attack style highlighting has been a bit broken for a while and recently it completely broke. These changes should get it working again. Namely copies the logic from this commit: https://github.com/runelite/runelite/commit/ffe16454ba894d673db91e2d1fd8d3c4c265b2c7
Fixes #21
Fixes #23

Thanks for fixing this. Looks like it's working again


running problem

The content at line 29th of logistic_regression.py and line 26th of train_mlp.py should be int(np.power(2, 7)).

Would you please create a pull request?


Create peak_memory_uasge_tracker.py

Adding the example by feature for tracking peak memory usage of GPU. One example of usage is to track the peak memory reduction when using FSDP.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


[Question]: exceeded call rate limit of azure openai using DocumentSummaryIndex

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
I uses DocumentSummaryIndex with Azure openai api, and I got the errors.
Background: I'm following the instructions and the codes of:
https://gpt-index.readthedocs.io/en/latest/examples/index_structs/doc_summary/DocSummary.html
After running:
response_synthesizer = ResponseSynthesizer.from_args(response_mode="tree_summarize", use_async=True) doc_summary_index = DocumentSummaryIndex.from_documents(     city_docs,      service_context=service_context,     response_synthesizer=response_synthesizer )
I've got:
`<llama_index.indices.query.response_synthesis.ResponseSynthesizer object at 0x000001CC1D03CDF0>
current doc id: Toronto
INFO:llama_index.indices.common_tree.base:> Building index from nodes: 7 chunks

Building index from nodes: 7 chunks
Building index from nodes: 7 chunks
Building index from nodes: 7 chunks
WARNING:langchain.llms.openai:Retrying langchain.llms.openai.acompletion_with_retry.locals>._completion_with_retry in 4.0 seconds as it raised APIConnectionError: Error communicating with OpenAI.
Retrying langchain.llms.openai.acompletion_with_retry.._completion_with_retry in 4.0 seconds as it raised APIConnectionError: Error communicating with OpenAI.
`

I think the reason is that "DocumentSummaryIndex.from_documents" just cuts the document into small pieces and initiates several call of OPENAI api.
How to solve this? Thans!

I have a solution, modify the ~\miniconda3\envs\py310\Lib\site-packages\langchain\llms\openai.py
line 79 and 80
min_seconds = 12
max_seconds = 20
# Wait 2^x * 1 second between each retry starting with
# 12 seconds, then up to 20 seconds, then 20 seconds afterwards


[Bug]: Parser doesn't distinguish label from variable name in ON_IOERROR

Current Behavior
In the following example, the VS Code editor extension for IDL incorrectly flags "bad_num" as an "unused variable" (error 104), when it is correctly used as a label for an implicit GOTO.
function Blah::ValidateTextInput, event
compile_opt idl2, HIDDEN
On_Error, 2
on_ioerror, bad_num
widget_control, self.wText, GET_VALUE=text
ans=double(text)
if (ans le 0.0) then return, -1  ; must be positive
return, ans
bad_num:
return, -1
end
Expected Behavior
Should not markup the source in this context.
GitHub Repo
No response
Steps to Reproduce
Paste example code into an editor window.
Failure Logs
No response
Operating System

[ ] macOS (Intel x86_64)
[ ] macOS (ARM64)
[ ] Linux
[X] Windows

IDL Version
9.0
Additional Information
No response

Unfortunately there's nothing to be done about this one.
Technically, no matter what's happening with IDL behind the scenes, that's still a variable in your code. And go-to tags are not tracked as variables so I would expect that that problem gets reported based on what your code looks like.
Because of some optimizations we have to speed up the process, we don't have the information we need to check the parents and filter out on_ioerror routine calls at the place we pick out variables.
I'll think of this a bit more, but I'll likely close as won't/can't fix.


fix(optimizer): fix lost projection pk

Signed-off-by: Alex Chi<EMAIL_ADDRESS>What's changed and what's your intention?
The original implementation of projection pk selection seems wrong -- if any key is filtered from pk, then all pks are lost.
Note that this PR still doesn't solve .https://github.com/singularity-data/risingwave/issues/3118
Checklist

[x] I have written necessary docs and comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Refer to a related PR or issue link (optional)
close https://github.com/singularity-data/risingwave/issues/3086

sorry for the late reply

if any key is filtered from pk, then all pks are lost
I think we should do that... we need we can identify a row with the pks. so if a key is removed by projection, then we can not give any pk of the result. for example if there is a table(a,b,c) with pk(a,b) and rows(1,2,3), (1,3,3), and we do projection to remove the second column, then the result is rows (1,3), (1,3). there is no pk for the result.


'assert_type_is' always throw for Promise of attribute

Given an IDL like
interface Foo {
  attribute Promise<Bar> attr;
};

assert_type_is will throw Unrecognized type [object Object] from [https://github.com/w3c/testharness.js/blob/master/idlharness.js#L554].
This is because in [https://github.com/w3c/testharness.js/blob/master/idlharness.js#L450] expect the type.idlType is a string for primitive types. However, the idlType is an object represents Bar type, something like:
{
  "sequence":false,
  "generic":"Promise",
  "nullable":false,
  "array":false,
  "union":false,
  "idlType": {
    "sequence":false,
    "generic":null,
    "nullable":false,
    "array":false,
    "union":false,
    "idlType":"Bar"
  }
}

There are two test cases I know that affected by this issue:
[https://github.com/w3c/web-platform-tests/blob/master/presentation-api/receiving-ua/idlharness.html#L97]
[https://github.com/w3c/web-platform-tests/blob/master/webrtc/rtcpeerconnection/rtcpeerconnection-idl.html#L88]

Bug fixed by PR #213, which just landed.


Fixed broken links in search results when performing a local search

This will hopefully work and address the issue in #369.

Looks like black magic that I don't understand.
Approved 👍


Using #[must_use]

I've ran into a footgun with Transform::translate[_mut] where I managed to call translate instead of translate_mut. translate has no side effects and returns a new object, so it's a good candidate for #[must_use]. Should we sprinkle the API with #[must_use]?

I think this is a useful addition. We should check for other instances where this could be helpful for the user. Rectangle::intersection would be one example outside the transform API.

I think it can go on constructors and field accessors, conversion functions (like those of Angle) in general - if the result isn't used, what's the point?
On the other hand, I'm not sure if we want to mark a million functions' results as must_use. Helpful, but probably overkill?

... ,conversion functions (like those of Angle) in general - if the result isn't used, what's the point?

Do you mean the Angle::to_degrees and Angle::to_radians methods? There is no point, but I'm also not sure if the attribute is required in this case. Methods with a to_ and into_ are expected to return a value according to the API guidelines. The std library doesn't add a must_use attribute to functions like u16::to_le().

On the other hand, I'm not sure if we want to mark a million functions' results as must_use. Helpful, but probably overkill?

I agree that we need to find a balance with this.

We could draw a line and only mark the costly functions or whose names are similar enough (translate vs translate_mut) which could be thought of as somewhat "risky".

I'm not sure that the cost of function calls needs to be considered in this case. If an expensive object is constructed and never use the compiler will probably optimize it out anyway.
I would add a must_use attribute to translate even if translate_mut did not exist. The std library does the same for methods like u16::wrapping_sub. The same would apply to the abs and normalize methods in the Angle trait, which should also get a must_use tag IMO.


Home Page Content Alignment

I would like to adjust the home page text alignment and shift it to the left and also shift the images a little lower when in smaller screen to display the donate button which is not visible now.
Please assign me the issue under LGM-SOC '21.

@ri-tae-ka this issue is under responsiveness. Issue is already assigned


Token-by-token streaming without API

Is there a way to stream token-by-token without using the API? i.e.
output = llm(prompt, max_tokens=256, stop=["\n"], echo=False, stream=True)
for token in output:
	print(output)

Thanks in advance!

What do you mean by "without using the API"?

Sorry, I meant without using the HTTP API

yes, try this..
for event in output:
event_text = json.loads(json.dumps(event))["choices"][0]["text"]
print(event_text , end='', flush=True)


docs(deeplinker): add inital docs

Short description of what this resolves:
DO NOT MERGE YET
Still a few changes that I need to make regarding dynamic links

[x] Simple Link segment
[x] Dynamic params
[x] Default history
[ ] HTML Location

Ionic Version: 1.x / 2.x
2.x

Didn't get to change the location strategy, but that can be added down the road.


Default listing should list all upcoming incomplete tasks

Expired tasks should not be included in the default list view.

Issue resolved.


Hide unused options when not using "Video RAM" compression mode

Hides "HDR Mode" and "No BPTC If RGB" options when texture import mode is set to something other than "Video RAM" since neither are used.

Thanks, looks good.


Added codecov support

Be sure to add any other files we want coverage on: simply do --cov=<module name> on pytest

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@71dd7e3). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #610   +/-   ##
=========================================
  Coverage          ?   61.16%
=========================================
  Files             ?        5
  Lines             ?     1043
  Branches          ?        0
=========================================
  Hits              ?      638
  Misses            ?      405
  Partials          ?        0

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 71dd7e3...36d9109. Read the comment docs.

That's better coverage than I'd expected...

@ArtOfCode- It's only tracking select files.


Implement function capturing with &

As described in #42, treating functions as first-class citizens requires more than just having them as values. With anonymous functions, it's easily possible to create a function and store its value in a variable. Manipulating that variable, though, because any reference to the variable would execute the function.
Additionally, there's no way to get a reference to a function after the point of definition for the same reason: attempting to reference the function will end up calling it instead.
#42 proposed the & prefix as the way to capture references to functions instead of calling them. An example with a normal function might look like this:
def foo(a, b)
  a + b
end

bar = &foo
bar(1, 2) #=> 3

This syntax would also be used to pass functions as the block parameter for another Call. For example:
def foo(&block)
  block(1, 2)
end

def bar(a, b)
  a + b
end

foo(&bar) #=> 3

One consideration to make is how a function could be passed as something other than the block argument. With the above, this wouldn't be possible. A workaround could be to capture the function into a variable in a separate statement, then pass that variable to the function, but this could use some more thought.

One possibility is to say that &foo simply captures the function foo, and to pass it as a block argument requires a second &. For example:
def apply_block(a, b, &block)
  block(a, b)
end

def bar(a, b)
  a + b
end

apply_block(1, 2, &&bar) #=> 3

Passing a function as something other than a block would just be done with a single &, then:
def foo(func)
  func(1, 2)
end

def bar(a, b)
  a + b
end

foo(&bar) #=> 3

That's visually ambiguous with a && b, so I'm not really a fan, but the semantics would at least be somewhat more clear. To me, this is most similar to l-value and r-value references (&a vs &&a) in C++.
In any case, the ambiguity of being able to capture functions in-place and not have them act as the block argument seems bad. Particularly in the above example, the call foo(&bar) would normally be a visual match with the definition of foo, def foo(&block). Using this double-amper syntax would remove that visual clarity.
Maybe it's not worth supporting this feature directly, since it can be done with a workaround already, and should otherwise be discouraged:
captured_bar = &bar
foo(captured_bar) # Equivalent to the `foo(&&bar)` shown above.


Update the About page to add the text from "External sources" page

Problem

To better organize the information about Openverse, we need to remove the top-level "External sources" navigation link and move all the information from it to the About page.
Description

Move the information from the External sources page to an appropriate place in the About page. This updated text should only be shown when the new_header is on.
Implementation

[ ] 🙋 I would be interested in implementing this feature.

can i work on it?


Con 3801 add gross selling price in import

@svenfinke please merge master in your branch. Tests are already fixed.

@sbofirov Done :)


Readme

Due to the new card design, the website looks a little different. Update the README by replacing the old screenshot with a current one that reflects the updated website UI.
A new key, description, has been added to the DB. update the contribution steps accordingly

hello @JasonDsouza212  , I would love to take this issue

ok, you can start working on this @mukadas026

Understood, please assign it to me

@JasonDsouza212 I was able to submit a pull request

Yes, I have replied to your pull request.  have a look at it.

Thanks for the opportunity @JasonDsouza212


Clean up permissions

A lot of app permissions are duplicates, unused, or deprecated. Clean up these permissions for uniformity and to prevent conflicts.

This should also switch to modern permission asking system.
New installs have to manually grant permissions.


How to train on new dataset

Hi, nice work. How about retraining on a new dataset? Because I find that the pre-trained PCN performs badly on low-resolution images.

I haven't train on new data myself too. I just convert the model from the original repo. For training details, you can refer to the paper and  implement by yourself.
I have no plan to implement training phrase right now.
The author of this model have said he may release the training code in the future,  See this


Example: https://svelte.technology/repl?version=1.57.2&gist=0dab08ad8f496bd94dc2f9b6ffbfb8fd

Failed to execute 'btoa' on 'Window': The string to be encoded contains characters outside of the Latin1 range.`

It's nothing to do with Svelte itself, you can go back a bunch of versions and the error still pops up.

Seems to be related to having a <style> tag and also having a high unicode character in there (even in a comment), which is most peculiar. Having one or the other is fine.

I would guess this is to do with sourcemaps somehow — btoa is used to encode mappings as base64. The offending character appears to be the em-dash in the comment

Ok, so I've looked into this and it's a bit of a pain. The issue is that MagicString needs to encode strings as base64 — in Node, it uses Buffer...
const btoa = str => new Buffer(str).toString('base64')

...whereas in the browser it uses btoa. Until today I thought they had the same behaviour, but it turns out btoa can't handle characters outside Latin1.
I think a possible solution would be to generate a Blob URL in the browser instead of a base64 one. In the meantime, I'll remove the em dash from the comment so that people are less likely to hit this bug.

it turns out btoa can't handle characters outside Latin1.

Good to know! Would you mind sharing the source where you learned that?

The error message in the original comment!


Commenting on GitHub sends Danger failures

Expected Behavior
Crickets.
Observed Behavior

Steps to Reproduce
Comment on an existing issue. e.g. this one. And then look in your inbox.
Context
It's not only me, @BraisGabin also confirmed seeing these emails. Failures are visible in Actions:
https://github.com/detekt/detekt/actions/workflows/danger.yaml?query=is%3Afailure
Based on history this issue is about 2 days old, see last page of above list.

Oh, this is it:
https://github.com/detekt/detekt/blob/0d42e58e1087ac5bffcc0a125d707efbd9bced88/.github/workflows/danger.yaml#L4
introduced by https://github.com/detekt/detekt/pull/5194 cc @cortinico @schalkms

Yup my bad. I haven't seen those mails as I have emails disabled for Github. #5202 is the fix


shard iterator type defaults to latest instead of trim-horizon when using kcl with a group

When you specify a group the binder will default to using trim-horizon normally. If you turn on the kcl, consumers with a group will default to latest instead. If this isn't a bug could it be documented please? Thanks

Is it a backwards incompatible change to fix this? : \

@sixcorners ,
you can find the fix here: https://github.com/spring-cloud/spring-cloud-stream/pull/2365.
Pay attention to that KinesisClientLibConfiguration instance. That's probably would be a starting point how to apply a workaround for existing version when you provide an external configuration.


Go to next match after "ending" search

Hi,
I'm currently checking out ctrlf, fantastic package, but I'm missing one "key" functionality. I come from vim and I really like the way when searching with "/" you press enter, navigate around and edit some text, and then you can press "n" to go to the next occurence.
How do I replicate this behavior with ctrlf? In isearch I can do this via isearch-repeat-forward. I kinda need ctrlf-repeat-forward.
Thanks for the help in advance :)

The default binding for this would be C-s C-s. I suppose you want something shorter?

Ah yes this comes close! isearch keeps the highlighting, that's quite neat, maybe there is a way to use the search term as input for the corresponding highlight-<...> function or ctrlf could implement similar behavior to isearch in that regard.
For now, how would I bind C-s C-s though? As "macro" ?

Sure, those things all seem like reasonable possibilities, however I'm not sure offhand what the best approach would be.
I don't think it would be possible to bind C-s C-s as a single command, directly, since each of the C-s instances are actually different commands.
I think what we'd probably want to do is copy this function but have it use the last search query rather than using symbol at point:
https://github.com/radian-software/ctrlf/blob/63d27a0209f2b4fa08a3fac752a20cfae56d54b9/ctrlf.el#L1414-L1431

I think what we'd probably want to do is copy this function but have it use the last search query rather than using symbol at point:

I played around with this a little bit, what we basically need is use (car ctrlf-search-history) + the position of the next result if there is one. I didn't find a function that returns the position of the next match though, if that would exist this would be possible right?

Why do you need the position of the next match, rather than simply moving to it by invoking ctrlf-forward?


Fix likes feature in Search Page

This PR fixes likes in Search Page because it was not working and fixes an error that popped up in TrackJS that raised when trying to update likes in store when the visualization was not there anymore.

Working 👌
🚀🚀🚀

retest this please


Pressing  opens the wrong html file

When using windows terminal, if we:

start it at the default path (~)
cd to another path
edit index.html under that path
press Alt + b to open the html file in the browser

If there is an ~/index.html, it will be opened instead of the index.html we really intend to open in the browser.

Fixed in 4b133fe


Update migrate-to-v2-managed-online-endpoints.md

Deprecate ACI->MIR migration script.

@dem108
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@dem108
Can you review this old PR and determine whether it needs to be closed or merged?

#sign-off

Thank you for contributing to this Azure documentation. Unfortunately, changes to Machine Learning content can't be accepted this week. The Skilling Content group is migrating this content to a new repository: azure-ai-docs.
In the meantime, we are closing this PR and tagging it so that when the content is available in the new repo, we can follow up with new location information.
#label:"migrate-followup"
#please-close

@frcai We’re happy to share that contributions to machine-learning, ai-studio, ai-services, genomics, open-datasets, search are once again possible at azure-ai-docs. We appreciated your patience during this migration.
Find your article in the new repository and make the changes there (or copy/paste the raw markdown from your changed file) and open a new PR.
#remove-label:"migrate-followup"


refactor: remove encoder method from WalManager

Which issue does this PR close?
Closes #
Rationale for this change
Currently, the default implementation of encoder method in WalManager trait is useless because callers can use the LogBatchEncoder directly to create such encoder.

What changes are included in this PR?
Remove the encode method defined in WalManager.

Are there any user-facing changes?
None.

How does this change test
Existing tests.

Codecov Report

Merging #661 (1cb9240) into main (ce9fa87) will decrease coverage by 0.03%.
The diff coverage is 100.00%.

:exclamation: Current head 1cb9240 differs from pull request most recent head cae57df. Consider uploading reports for the commit cae57df to get more accurate results

@@            Coverage Diff             @@
##             main     #661      +/-   ##
==========================================
- Coverage   66.94%   66.91%   -0.03%
==========================================
  Files         283      283
  Lines       43969    43940      -29
==========================================
- Hits        29435    29404      -31
- Misses      14534    14536       +2

Impacted Files
Coverage Δ

analytic_engine/src/instance/engine.rs
64.03% <ø> (ø)

wal/src/lib.rs
100.00% <ø> (ø)

wal/src/manager.rs
90.43% <ø> (-0.12%)
:arrow_down:

analytic_engine/src/instance/alter.rs
95.19% <100.00%> (-0.28%)
:arrow_down:

analytic_engine/src/instance/write.rs
87.05% <100.00%> (-0.32%)
:arrow_down:

analytic_engine/src/manifest/details.rs
95.93% <100.00%> (-0.03%)
:arrow_down:

components/skiplist/src/list.rs
98.87% <0.00%> (-0.23%)
:arrow_down:

wal/src/rocks_impl/manager.rs
92.53% <0.00%> (-0.19%)
:arrow_down:

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


Notebooks are empty after Docker container restarts

Description
In the last few days, I've had a few instances where I exit and restart my Docker container, only to find the notebook I was working on empty. I only saw it happen for notebooks not in a folder, though I didn't test it with notebooks in folders.
Steps to reproduce
Create a notebook, write a simple query, save it, and reload the Docker container.
Expected results
The notebook to appear as I was working on it before restarting my container.
Actual results
The notebook development panel is empty, despite having text in it previously.
Additional details and attachments

Versions

Engine Version: 0.28.1
Web UI Version: ...
Java Version: ...
Barrage Version: ...
OS: OS X
Browser: Chrome
Docker: 20.10.13

This seems to only be an issue for a notebook that was created and saved, but never closed after it was created. Current workaround would be to re-open the notebook from the file explorer and it should be good from that point forward.
Also appears you do not need to restart the server, just refresh the page in this case.
The issue is the fileMetadata doesn't get updated for the panel which makes the panel not rehydrate properly on reload.

If there are any cases of the notebook still being empty when re-opened from the file explorer, then we'll need more specifics on how to reproduce.

Confirmed works in DHC 0.27.0 (web UI 0.45.1), but not 0.28.0 (web UI 0.47.0). Also test DHC 0.27.0 w/ a newer web UI and the bug exists there, so seems to be a web UI issue, not core

Broken by #1451


Make maximal varchar string length configurable in fe.conf and be.conf.

Why I'm doing:
This is needed as some of our workloads involve very long string length.
What I'm doing:
Simply make these the string length limits configurable through fe.conf and be.conf
Fixes #issue
What type of PR is this:

[ ] BugFix
[ ] Feature
[x] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[x] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

[ ] This is a backport pr

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto-backported to the target branch

[ ] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@imay @chaoyli Could you guys please help me trigger the run of workflows again? I debugged the test failure of be and it actually can pass on my dev machine, so I guess it might just be flakiness.


Verify base backup with received manifest

Used cJSON to parse the manifest.

I don't see MANIFEST yes MANIFEST_CHECKSUMS 'SHA256' being sent for PostgreSQL >= 13

@jesperpedersen I checked on Postgres15; the message sent is BASE_BACKUP (LABEL 'pgmoneta_base_backup_20230809121918', WAL true, WAIT false, CHECKPOINT 'fast', MANIFEST 'yes', MANIFEST_CHECKSUMS 'SHA256'). It won't appear on postgres log.
I verified this also with Postgres13 as well earlier. And I'm sure the manifest is indeed received and verified.
The rest of change requests have addressed. We don't have hash algorithm functionalities other than sha256 yet. So I just left a log message as a placeholder there. We could open another issue to add support for other hash algorithms.

Yeah, for now lets just push MANIFEST yes MANIFEST_OPTION 'SHA256' as well in our implementation

Yeah, for now lets just push MANIFEST yes MANIFEST_OPTION 'SHA256' as well in our implementation

I'm not following.. These options is already in our backup infrastructure. And I already verified the message sent to postgres server. Can you be more specific on what needs to change?

Merged.
Thanks for your contribution !


network status tracking code, tests, and changes to build file for both.

Test this please

@ctiller - I addressed your last set of comments. Anything more needs to be done?

I think we should at least add something to endpoint_tests.c that proves this for all endpoints.
grpc_endpoint_read(... foo ...);
assert(foo_not_called);
grpc_endpoint_shutdown(...);
assert(foo_called_with_failure);
grpc_endpoint_read(... bar ...);
assert(bar_called_with_failure);

Since this has languished and I need the endpoint idempotency for other changes, I'm going to look at that piece today.


chore: publish v1.2.0

I read on the Discord that listUsers is actually paged so it doesn't return all users. See gotrue-js issue. Do we want to fix that before release or remove the method or keep the bug for now?

@Vinzent03 Great find! I was not aware of this at all. I think it's okay to release this for now, and let's implement a feature to get different page once it is implemented on js library!

I read on the Discord that listUsers is actually paged so it doesn't return all users. See gotrue-js issue. Do we want to fix that before release or remove the method or keep the bug for now?

@Vinzent03 this is now a thing in gotrue-js
https://github.com/supabase/gotrue-js/pull/544
Not yet included in the supabase-js client

@j4w8n I've already implemented it in #109, but you are right it's not jet released. We might bundle it with #110, but I'm not sure. What do you think @dshukertjr ?

Oh yeah sorry. It slipped by with all the launch week chaos! Will create a PR for a new version launch right now!

@j4w8n A new version containing the update has been published!

@dshukertjr yep in gotrue-js. They just haven't bumped the version in supabase-js yet.

@j4w8n You mean gotrue-dart and supabase-flutter, correct? Yup, even though supabase-flutter has not been updated, you can actually run dart pub upgrade gotrue. This will update your pubspec.lock and therefore upgrade the underlying gotrue version used in your app!

@dshukertjr roger that. I'm a js guy. Just remember Vinzent mentioning this feature a while back, and y'all wanted to wait until the js version was out.

@j4w8n Oh I remember. Yeah I subscribed to the pr after you sent it in the Discord so I was aware of, but thanks for taking care!


Issues with replaceText?

A user did not see the time elapsed when so configured at the completion of puzzles. It only happened on Edge. It worked fine in Chrome. Might be related to replaceText

Code seems fine. Nothing that wouldn't work on any browser.


react-masonry-component doesn't respect masonry's initLayout setting

I am trying to handle the call of .layout() myself and looking at masonry's docs one can disable the layout by setting initLayout to false.
However this component doesn't use this option to disable the following lines that trigger layout:
    componentWillReceiveProps: function() {
        this._timer = setTimeout(function() {
            this.masonry.reloadItems();
            this.isMounted && this.isMounted() && this.forceUpdate();
        }.bind(this), 0);
    },

    componentDidUpdate: function() {
        this.performLayout();
        this.imagesLoaded();
    },

Yeah that's something that can be added easy enough. Are you comfortable enough to submit the required changes in a backwards compatible way?


HDDS-7301. Cleanup of org.apache.hadoop.ozone.OmUtils

What changes were proposed in this pull request?
Removed dead code and code smells reported by Sonar.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-7301
How was this patch tested?
unit tests

Thanks @myskov for the patch.

some public static methods such as getOmRpcPort might be useful in the future (they are used only once and the patch has inlined them)

Not only that, but it is possible that user code may call these public methods. I think it's better to deprecate them first, to be removed in some future release.

hey @myskov ~ would you mind marking those methods deprecated for now and creating ticket(s) for the removal in the future?

Thanks @myskov for the patch, @kaijchen for the review.


want to Transmit my Screen not Camera what changes i need to take libstreaming

helo dear i search many for LibStreaming its work for camera but i want to capture my screen and then want to be transmit but i dont find any solution for that. is their any changes which take to libstreaming to working for my requirement or any other solution to capture and transmit sacreen simultausly over wifi
i campure my screen using mediarecorder but it transmition not possible with this is there any way to integrate libstreaming with mediarecorder output Thanks in advance

Look at this example
https://github.com/306470558/Android_show_screen_rtsp
it will help you a lot and there is an issue with audio streaming check out this, I will help you when you will got that issue.


Provide support to execute only the scenario scripts

Description:
When exposing TestGrid to external customers, they may have the need to get their existing deployment (say, a pre-prod environment) verified against the WSO2 TestGrid. This gives the customers the confidence that whatever they have built is solid.
To make this happen, following should happen:

Customer provide WSO2 with a list of endpoints and credentials.
TestGrid will feed this information to Scenarios test scripts, and execute them.
Scenario test scripts will provide the test results to TestGrid in csv format.
TestGrid will generate a detailed report about the test status, and email the customer.

Affected Product Version:
N/A
OS, DB, other environment details and versions:
N/A
Steps to reproduce:
N/A
Related Issues:
#493

This is a duplicate of #493


Not everyone is using Apache (or PHP >= 5.4.0)

Argh should've had a better look over this pull request before merging.

I need to test this instead:
if (isset($_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'])) {
    $req_method = $_SERVER['HTTP_X_HTTP_METHOD_OVERRIDE'];
} else if (isset($_REQUEST['_method'])) {
    $req_method = $_REQUEST['_method'];
}

This should fix it. Let me know if you have any issues.


Cannot view package statistics per client

Go to https://www.nuget.org/stats/packages/Newtonsoft.Json?groupby=Version
try to click "Client name" checkbox.
This used to work and show "package statistics per client" now it does nothing for me. Tested in chrome and edge.

Looks like a JavaScript error.
On Fri, Oct 30, 2015 at 10:56 AM, Steffen Forkmann<EMAIL_ADDRESS>
wrote:

Go to https://www.nuget.org/stats/packages/Newtonsoft.Json?groupby=Version
try to click "Client name" checkbox.
This used to work and show "package statistics per client" now it does
nothing for me. Tested in chrome and edge.
—
Reply to this email directly or view it on GitHub
https://github.com/NuGet/NuGetGallery/issues/2763.

Indeed! Pushed a fix.


Difficulties seeing Posts due to Date - LIVA Hugo Template

I currently working on relaunching our website for our private podcast using Hugo with you LIVA template.
my trouble is: posts are not showing up if I change the date in the front matter to to current dates. My suggestion is that somewhere in a config or list file the website thinks that 2020 dates are in the future and therefor not to be displayed.
Where do I find this config?
Thanks in Advance
Chris

Hey, there is no config like this. I suggest you to not change the date. you can create a new post for get a recent date. thanks

OK,
but since I am going to relaunch an already existing website with
existing post, I need to make changes to the date.
And also I did create new posts and they did not apear on the start
page.
So something might be wrong with the range oder list layout
configurations.
What do you advise for me to do in order to see posts that do not
contain the dates fron the sample content?
Thanks for your help.
Chris
Am 06.04.2020 05:41, schrieb Somrat:

Hey, there is no config like this. I suggest you to not change the
date. you can create a new post for get a recent date. thanks
--
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub [1], or unsubscribe
[2].
Links:
[1]
https://github.com/themefisher/liva-hugo/issues/20#issuecomment-609549413
[2]
https://github.com/notifications/unsubscribe-auth/APCCCABPFYM7MMTLI5EGD23RLFFPVANCNFSM4MAMH47A


Need to install sentencepiece

It's in the base ComfyUI requirements. Not an issue with this custom node.

Thank you, I made a mistake...

No worries!


Made background transparent, added resize to prototype

Not sure if you accept PRs, and this is a subjective one, but it made developing my game with this program easier.

Took advantage of the canvas alpha option to make the background (0 squares) transparent.
Includes the example resize() code to the base class

I did this in my fork as well: https://github.com/seiyria/mixel for those looking for something to just use.


Display Suggestions for current song

Youtube gives a list of video suggestions for current playing video. Need to figure out a good way to display it on the screen, so that it doesn't interfere with the video player and list.
Backend functions already exist to fetch a list, front-end part remains.

Can you guide me how to tackle this issue

Check this function to fetch suggested videos.
You may want to create a new module suggestions.js for this.
For displaying, it is similar to the <ul> used for playlist and searchlist.
I'll leave it on you to figure out exactly how it should be displayed. Think about user-experience aspects when making choices (how easily is it accessible, does it cover important parts of the screen, should it auto-hide, when should it show etc.)
The last implementation I had simply showed a list of suggestions for the current playing song next to the playlist. It took up unnecessary screen space and looked weird and confusing, so I removed it when remaking the UI.


Reorder references based on summary

Replaces https://github.com/vectara/vectara-answer/pull/49
Fixes https://github.com/vectara/vectara-answer/issues/48
Todo:

[ ] Refine UX of fetching results and then summary when in Summary mode. Surface status, e.g. “Search for references” -> “References retrieved, summarizing”. Gracefully handle subsequent requests.
[ ] In Summary mode, emphasize linked content over snippet.
[ ] Dedupe search results (https://github.com/vectara/vectara-answer/pull/47).

Hey @cjcenizal - any updates on this one?

Also what are the ovals next to the links in the search references shown in the screenshot? I don't see them when running vectara answer

Also what are the ovals next to the links in the search references shown in the screenshot? I don't see them when running vectara answer

That's a glitch caused by the absence of filters. We should fix that in another PR to not render that bit of the UI when filters are missing.

Looks great! How fast can we fix the ovals with a new PR? I don't want to merge into main without it, but I do want to merge to main soon since it looks so nice :)

How fast can we fix the ovals with a new PR?

This is an existing bug so don't need to block the merge on this. I'll fix this in another PR.


navigation map without street shapes

dump.zip
I have MIB-STD2-PQ Technisat EU SW 254 patched with toolbox, it recognizes the non-original sd card as map and starts navigation but there is no street drawing, it says: "B126C F0 (009)" Navigation Database Faulty
dump.zip
While the same card works perfectly on another MIB-STD2-PQ Technisat US SW 367 pictures attached

Rename \maps\01 to \maps\00
hope this helps https://www.drive2.com/b/640748923375325654/

Rename \maps\01 to \maps\00 hope this helps https://www.drive2.com/b/640748923375325654/
The unit comes from Australia it's basically based on European firmware and the map includes Australia, North Africa etc.
As I need Algerian map, so I solved the problem by renaming 27 to 22
Thank you

what is the coding of 5F on the first unit and on the second unit?

Friday,03,March,2023,22:36:13:60195
VCDS Version: Release 22.10.0
Address 5F: Information Electr.
Control Module Part Number: 5C0 035 680 B
Component and/or Version: MU-S-N-ER     H22 0254
Software Coding: 06330708FF0000001121000100080000AF0100D401200101C6
Work Shop Code: WSC 29588
VCID: 204F93553B28C08DA2-8074
Advanced Identification/FAZIT
Serial number:
Identification: YD7-002
Date: 01.10.15
Manufacturer number: 0312
Test stand number: 0202
Flash Status
Programming Attempts(application): 0/6
Programming Attempts(data): 65535/0/1/1/1/1/65535/65535/65535/1/1/65535/65535/65535/65535/65535/65535/0/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535
Successful Attempts(data): 65535/0/1/1/1/1/65535/65535/65535/1/1/65535/65535/65535/65535/65535/65535/0/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535/65535
Flash Date: 00.01.01
Flash Tool Code(data): 00015 790 00066
Misc.
Hardware number: 5C0 035 680 B
Workshop System Name: J794
Equipment/PR Code: FFFFFFFFFFFFFFFFFFFFFFFF
Dataset Number: 5K7CV1v__A_
Dataset Version: 0001
ASAM Dataset: EV_MUStd4CTSAT
ASAM Dataset Revision: 001022
Friday,03,March,2023,22:38:58:60195
VCDS Version: Release 22.10.0 Running on Windows 7 x86
www.Ross-Tech.com
            Address 5F: Information Electr.       Labels: 5G0-035-MIB-STD2.clb

Control Module Part Number: 5C0 035 680 B    HW: 5C0 035 680 B
Component and/or Version: MU-S-N-ER     H22 0254
Software Coding: 06330708FF0000001121000100080000AF0100D401200101C6
Work Shop Code: WSC 29588 002 104857
ASAM Dataset: EV_MUStd4CTSAT 001022 (VN35)
ROD: EV_MUStd4CTSAT_SE36.rod
VCID: 204F93553B28C08DA2-8074
2 Faults Found:
1555 - Check Software Version Management
B201A 00 [009] - -
[New feature! Extended UDS fault detail is only supported by current gen. interfaces]
Confirmed - Tested Since Memory Clear
Freeze Frame:
Fault Status: 00000001
Fault Priority: 6
Fault Frequency: 1
Reset counter: 186
Mileage: 143272 km
Date: 2064.14.14
Time: 14:35:08
                Voltage terminal 30: 12.5 V
                Status_Software_Version_Management-module_name:

15360768 - Component Protection
U1101 00 [009] - Active
[New feature! Extended UDS fault detail is only supported by current gen. interfaces]
Confirmed - Tested Since Memory Clear
Freeze Frame:
Fault Status: 00000001
Fault Priority: 4
Fault Frequency: 1
Reset counter: 186
Mileage: 143272 km
Date: 2064.14.14
Time: 14:35:09
                Voltage terminal 30: 12.5 V

Friday,03,March,2023,23:07:03:60195
VCDS Version: Release 22.10.0 Running on Windows 7 x86
www.Ross-Tech.com
            Address 5F: Information Electr.       Labels: 5G0-035-MIB-STD2.clb

Control Module Part Number: 5C0 035 684 B    HW: 5C0 035 684 B
Component and/or Version: MU-S-NS-US    H31 0367
Software Coding: 06330702FF0000001111000100080000AF0100D401200101C6
Work Shop Code: WSC 12345 123 61029
ASAM Dataset: EV_MUStd4CTSAT 001022 (VN35)
ROD: EV_MUStd4CTSAT_SE36.rod
VCID: 24479F453730DCADC6-8070
Fault Codes have been Erased
2 Faults Found:
1555 - Check Software Version Management
B201A 00 [009] - -
[New feature! Extended UDS fault detail is only supported by current gen. interfaces]
Confirmed - Tested Since Memory Clear
Freeze Frame:
Fault Status: 00000001
Fault Priority: 6
Fault Frequency: 1
Reset counter: 186
Mileage: 143272 km
Date: 2064.14.14
Time: 15:08:47
                Voltage terminal 30: 13.2 V
                Status_Software_Version_Management-module_name:

15360768 - Component Protection
U1101 00 [009] - Active
[New feature! Extended UDS fault detail is only supported by current gen. interfaces]
Confirmed - Tested Since Memory Clear
Freeze Frame:
Fault Status: 00000001
Fault Priority: 4
Fault Frequency: 1
Reset counter: 186
Mileage: 143272 km
Date: 2064.14.14
Time: 15:08:47
                Voltage terminal 30: 13.2 V


Add a warning about using --interval on Windows.

I think I got the if logic right, but a spot check would be good. Basically --interval on Windows works but is a really bad idea for all the reasons we hard-blocked non-forking interval runs on other platforms. We probably shouldn't actually break it on Windows, but from talking to Matt it sounds like nobody should be doing this so let's give them warning now and remove it in Chef 13 or something.
/cc @chef/client-windows for review.

I definitely like having a more perscriptive message. However I think it should raise and not simply warn. Its realy more than discouraged. Its unsupported. Based on the conditionals above this change, it looks like this not only protects against using :interval on windows but also :daemonize. I don't think we want to give the impression that these are worth pursuing on Windows.

Bizzare, and I appear to have :+1:'d the code that added the windows check as well.  I would just remove it and raise, because unforked interval running isn't going to work right at this point.  If we need to fix the 'forked' side of things so that we shell_out to a one-shot run that does the work we should do that.

So, to be really clear, IMO we broke interval runs in the same process completely in 12.0 -- windows people just haven't yet been clearly informed of that, and anyone running interval runs in the same process is getting some truly fascinating monkeypatching as they upgrade their cookbooks and don't bounce their chef-client 'service' on their nodes.  I would not consider a 'raise' here to be a breaking change because it is breaking something that is already hella broken.

also just needs to be cleaned up and merged


Properly clearing non Podio based objects

BEGINRELEASENOTES

Clear non Podio based objects from the data store when DataWrapper is destructed

ENDRELEASENOTES
Currenty DataWrapper deletes nullptr:
EventDataSvc         INFO Clearing Podio DataWrappers...
EventDataSvc         INFO Podio DataWrappers cleared.
EventDataSvc         INFO Clearing the Store...
DataWrapper: Deleting N6HepMC312GenEventDataE?
DataWrapper: is_owner: 1
DataWrapper: m_data: 0xbaf5870
DataWrapper: No
DataWrapper: Deleting N7edm4hep20MCParticleCollectionE?
DataWrapper: is_owner: 1
DataWrapper: m_data: 0
DataWrapper: Yes

I'm having a déjà vu, I'm pretty sure someone else or me said something about this but I can't seem to find anything... I'll edit a bit the title since if you use PodioInput and PodioOutput then everything gets wrapped in these DataWrappers so it does apply to podio based objects.


Fallback to default values from application.yaml on "spring.cloud.config.fail-fast: true"

Is your feature request related to a problem? Please describe.
As per the docs:
If you expect that the config server may occasionally be unavailable
 when your application starts, you can make it keep trying after a failure.

We want to use that, since our config server take some time to be up. But, we also want to use the application.yaml, if the server is not reachable (basically, the behaviour of spring.cloud.config.fail-fast: false).
Can we have the "best of both worlds"?
Describe the solution you'd like
When I have the spring.cloud.config.fail-fast: false set and added spring-retry and spring-boot-starter-aop to my classpath, I want to have an additional flag to indicate, that the application should fall back default values from the application.yaml
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
In the ConfigServicePropertySourceLocator is the code that checks for the fail-fast propery.

Are you using spring.config.import=optional:configserver?

Hey,
I am using the "old" setup: I have a bootstrap.yaml
spring:
  application:
    name: my-application
  cloud:
    config:
      uri: http://localhost:8888
      server:
        bootstrap: false
      fail-fast: false

and I am using version 2.0.0.M9 of spring-cloud-config. The application is on spring boot 2.6.6 and java 11.
Would moving to spring.config.import=optional:configserver make it possible to have a retry and a fallback?

Hey,
I tried your suggestion with a "newer" application of ours. It's spring boot 2.7.0 application with spring-cloud-dependencies 2021.0.7.
The issue is basically the same. While the application now keeps running, its marked as failed and will stop all listeners and endpoints (going to Application availability state ReadinessState changed to REFUSING_TRAFFIC).
The Exception this time is different:
org.springframework.cloud.config.client.ConfigClientFailFastException: Could not locate PropertySource and the fail fast property is set, failing
	at org.springframework.cloud.config.client.ConfigServerConfigDataLoader.doLoad(ConfigServerConfigDataLoader.java:197) ~[spring-cloud-config-client-3.1.3.jar:3.1.3]

However, the reason seems similar: If fail-fast is enabled, the application will not fall back to the default values in the application.yaml, but just stop with an error.
Ideally, there would be an option to prevent the exception and just continue running.

What if you remove the fail-fast property and just set `spring.config.import=optional:configserver:"?  If the client can't reach the config server in that case it should just continue on.

If fail-fast is set to true it means to fail on startup if it can't reach the config server.  You want the application to startup and use application.yaml if it can't reach the config server so fail-fast needs to be false and/or you need to add optional to the config.import statement.


scikit-bio

Strange issue with python setup.py install
Running scikit-bio-0.4.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-digm_y/scikit-bio-0.4.2/egg-dist-tmp-MmEswG
Traceback (most recent call last):
  File "setup.py", line 25, in <module>
    setup(**config)
  File "/dnas/apps/anaconda/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/dnas/apps/anaconda/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/dnas/apps/anaconda/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/install.py", line 67, in run
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/install.py", line 117, in do_egg_install
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 380, in run
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 610, in easy_install
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 661, in install_item
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 709, in process_distribution
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/pkg_resources/__init__.py", line 836, in resolve
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/pkg_resources/__init__.py", line 1081, in best_match
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/pkg_resources/__init__.py", line 1093, in obtain
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 629, in easy_install
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 659, in install_item
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 842, in install_eggs
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 1070, in build_and_install
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/easy_install.py", line 1056, in run_setup
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 240, in run_setup
  File "/dnas/apps/anaconda/lib/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 193, in setup_context
  File "/dnas/apps/anaconda/lib/python2.7/contextlib.py", line 35, in __exit__
    self.gen.throw(type, value, traceback)
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 164, in save_modules
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 139, in resume
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 152, in save_modules
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 193, in setup_context
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 237, in run_setup
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 267, in run
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 236, in runner
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/sandbox.py", line 46, in _execfile
  File "/tmp/easy_install-digm_y/scikit-bio-0.4.2/setup.py", line 133, in <module>

  File "/dnas/apps/anaconda/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/dnas/apps/anaconda/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/dnas/apps/anaconda/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/bdist_egg.py", line 151, in run
  File "/dnas/apps/anaconda/lib/python2.7/distutils/cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "/dnas/apps/anaconda/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/egg_info.py", line 180, in run
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/egg_info.py", line 207, in find_sources
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/egg_info.py", line 291, in run
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/egg_info.py", line 320, in add_defaults
  File "/dnas/apps/anaconda/lib/python2.7/site-packages/setuptools-18.0.1-py2.7.egg/setuptools/command/sdist.py", line 130, in add_defaults
  File "/dnas/apps/anaconda/lib/python2.7/distutils/cmd.py", line 312, in get_finalized_command
    cmd_obj.ensure_finalized()
  File "/dnas/apps/anaconda/lib/python2.7/distutils/cmd.py", line 109, in ensure_finalized
    self.finalize_options()
  File "/tmp/easy_install-digm_y/scikit-bio-0.4.2/setup.py", line 27, in finalize_options

AttributeError: 'dict' object has no attribute '__NUMPY_SETUP__'

This issue is resolved by first pip installing scikit-bio

Should also work if using pip install abstar instead of python setup.py install


Display Space Users

Blocked on https://github.com/cloudfoundry-incubator/stratos/pull/1901

Should we only show the roles that are relevant to the current org? (same issue on #1901)

@KlapTrap I think we should display all the data CF API returns. This is consistent with what the CLI and PCF Dev UI display.

We chatted about it. Agreed but we might need to do some UI tweak further down the line to prioritise the space you're looking at.