CORS plugin regex backslash issue

Is there an existing issue for this?

[X] I have searched the existing issues

Kong version ($ kong version)
Kong 3.7
Current Behavior
We have a couple of CORS KongPlugins deployed with a config.origins set to something like:
config:
  origins:
    - 'http://localhost:8000'
    - 'https:\/\/[\w-_]+\.subdomain\.subdomain2\.domain\.com'
    - 'https:\/\/[\w-_]+\.subdomain\.domain\.com'

When running Kong 3.6 and KIC 3.3 on Helm chart 2.42.0, this works fine, but when we upgrade to Kong 3.7 or 3.8, the following error appears in the logs:
2024-11-07T22:38:32Z	error	recording a Warning event for object	{"name": "service-name", "namespace": "service-ns", "kind": "KongPlugin", "apiVersion": "configuration.konghq.com/v1", "reason": "KongConfigurationApplyFailed", "message": "invalid config.origins.2: 'https:\\/\\/[\\w-_]+\\.subdomain\\.subdomain2\\.domain\\.com' is not a valid regex", "error": "object failed to apply"}

and similar for the other origin containing regex.
If all \ in the origins are removed, replacing with something like https://[[[:ascii:]]-_]+.subdomain.domain.com the errors stop. If the backslashes are added again after removing them, the kong validating webhook throws an error with the same message, blocking the apply. In either case, the manifest itself is unchanged and still shows the original regex string in config.origins.
This was tested on several versions, including Kong 3.2 through 3.8, and KIC 2.8, 3.0 through 3.3. Only Kong 3.7 and 3.8 seem to be affected.
Some other strange behaviour:
When testing Kong 3.7 with KIC 2.8, \ was replaced with \\\\\\\\
Expected Behavior
I'm not sure where the extra \ is coming from, and why the replacement is also happening at apply time before reaching the admission controller. I would also expect that even with the replacement in the string, it should technically be valid regex, however not correct for the application.
Steps To Reproduce

Run Kong 3.7 or 3.8 with KIC 3.3 on chart 2.42
Use the Kong CORS plugin with a config.origins using a regex string with backslashes
Apply, observe kong validation webhook for errors

Anything else?
No response

Solved the issue after re-reading this, I didn't escape the - so it's invalid, interpreting it as a range. Rewriting as below is now working on 3.7 and 3.8.
config:
  origins:
    - 'http://localhost:8000'
    - 'https:\/\/[\w\-_]+\.subdomain\.subdomain2\.domain\.com'
    - 'https:\/\/[\w\-_]+\.subdomain\.domain\.com'


微调TTS时，报错FileNotFoundError: [Errno 2] No such file or directory: '/home/ti/Documents/MFA/newdir/train/mfcc/raw_mfcc.0.scp'

Creating dictionary information...
Setting up training data...
Calculating MFCCs...
Traceback (most recent call last):
File "aligner/command_line/align.py", line 186, in
File "aligner/command_line/align.py", line 142, in validate_args
File "aligner/command_line/align.py", line 94, in align_corpus
File "aligner/aligner/pretrained.py", line 74, in init
File "aligner/aligner/pretrained.py", line 122, in setup
File "aligner/aligner/base.py", line 89, in setup
File "aligner/corpus.py", line 979, in initialize_corpus
File "aligner/corpus.py", line 852, in create_mfccs
File "aligner/corpus.py", line 863, in _combine_feats
FileNotFoundError: [Errno 2] No such file or directory: '/home/ti/Documents/MFA/newdir/train/mfcc/raw_mfcc.0.scp'
我是按照PaddleSpeech/examples/other/tts_finetune/tts3的步骤来的，就是这里报错，不知道为什么，不知道怎么解决

Duplicated of https://github.com/PaddlePaddle/PaddleSpeech/issues/2437

解决方案详见 #2437


Created App layout for Main Website

Changes Web routes for main index
Added sub folder in main/layout for the layout files
Defined 2 App layout for Main site and Privacy policy

Closing PR


CEUR-WS returns more results than expected

http://ceur-ws-browser.bitplan.com/wikidatasync, click Refresh Wikidata.
It runs a SPARQL query then says "It found 3331 wikidata CEUR-WS proceedings records".
But the largest number is Vol-3323: even if CEUR have no gaps in their sequence, that's less than the WD results.
So I think the query is a bit wrong: some field is multi-valued (even though it's reasonable to assume it would be single-valued), so you get duplicate rows for the same volume.

@VladimirAlexiev: #45 states a need to improve the query anyways and it looks we are running into the problems that we wrote about in https://ceur-ws.org/Vol-3262/paper7.pdf

@WolfgangFahl I answered in #45: need to use UNION instead of OPTIONAL for multi-valued fields.
However, the difference of rows in this particular issue is pretty small: could you find the "duplicate" rows and then we analyze the reason?

https://cr.bitplan.com/index.php/List_of_Queries has a list of queries now
e.g. https://cr.bitplan.com/index.php/Q0.1 might work better


Create references-logon-banner.yml

Apologies on the earlier direct commit.  Mistake.
I recently was looking at a rust exe that changes the Windows logon banner.  The strings referencing the registry keys are passed to a function that modifies the keys so I can't tighten it down too much more.
Since the sample is in rust, the strings are not nice null terminated string.  It has to match a substring in a larger blob.  I'll upload the sample to test-files as well.

Referencing the above, here's a better explanation of the strings.  There is a string "blob" with offsets and length specified.
The blob is "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\SystemLegalNoticeCaptionLegalNoticeTextcmdnet user "
0040670a  6a12               push    0x12
0040670c<PHONE_NUMBER>         push    0x485745  {"LegalNoticeCaptionLegalNoticeTex…"}
00406711  6a39               push    0x39 {var_644}
00406713  680c574800         push    0x48570c {var_648}  {"SOFTWARE\Microsoft\Windows\Curre…"}
00406718  e8530d0000         call    sub_407470

Starting from the bottom string at 0x48570c, it has a length of 0x39, so the string will be
'SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Policies\\System'

and the second string has len 0x12 at offset 0x485745
`LegalNoticeCaption`

A collection of strings feels like a weak rule, but I haven't seen these particular keys referenced in many samples and restricting it to a basic block should cut down on any potential FPs.  I'm running the rules against the existing capa-testfiles repo now to ensure no FPs.

Rule has been run against capa-testfiles with no FPs


Header & Footer cuts off

I'm not sure if it was intended, I'm on Chrome Linux and the header & footer of the site are cut off. Looks a bit confusing in my opinion.
Even after adjusting top/ margin-top on .killer-logo & adding bottom/ margin-bottom on .deadly-subtitle via DevTools the logos can still be mistaken as 'poor design' due to the cut-offs. Hope this helps!

Ha, it's been a while :)
It's a design choice, but thanks for reporting it!

Ah I see, cool no probs ;)


import svg to render

im a react developer, i want use this lib to render svg into sketch file, and i got some problems, i found this issue: #265  and join it to discuss, but im stuck as well, i got a suggestion from @macintoshhelper , so i open a new issue, if u see this issue at first time, i suggest u should view the issue that i referenced before, if the issue still there, then check this issue;)
| -------------------------------------------------------------------------------------------------

Reporting a bug or issue

Expected behavior:
import a svg and rendered it successfully
Observed behavior:
i got a error in sketch with redbox
How to reproduce:

yarn
yarn dist
open sketch create a new doc and use this plugin

os version:
10.15.7
Sketch version:
75 (129697)
node version:
14.17.6
Please attach screenshots, a zip file of your project, and/or a link to your github project
https://github.com/SilentFlute/react2sketch-svg.git
@macintoshhelper hi, it's me again, i modified the project, but i know, i cant understand ur advices all, may be at all?
i replace react-native-svg with react-sketchapp, and modified the file as below:
webpack.skpm.config.js:
const path = require('path');

module.exports = (config) => {
  if (process.env.LOCAL_DEV) {
    config.module.rules[1].test = /^(?!.*\.(jsx?|tsx?|json|svg|md|nib|xib|framework|xcodeproj|xcworkspace|xcworkspacedata|pbxproj)$).*/;
    config.module.rules.push({
      test: /\.svg$/,
      use: [
        {
          loader: 'babel-loader',
          options: {
            presets: ['@skpm/babel-preset'],
          },
        },
        {
          loader: '@svgr/webpack',
          options: {
            native: true,
            svgoConfig: {
              plugins: [{ convertPathData: false }],
            },
            babel: false,
          },
        },
      ],
    });
    config.resolve = {
      ...config.resolve,
      alias: {
        ...config.resolve.alias,
        'react-sketchapp': path.resolve(__dirname, './Svg.js'),
      },
    };
  }
};

and then, add a file in the project, of course at the root directory, and just like u mentioned before:
Svg.js
import React from 'react';
import { Svg } from 'react-sketchapp';

const {
  Circle, ClipPath, Defs, Ellipse, G, Image, Line, LinearGradient,
  Path, Pattern, Polygon, Polyline, RadialGradient, Rect, Stop,
  Symbol, Text, TextPath, TSpan, Use
} = Svg;

const Mask = () => <></>;
const _G = ({ mask, ...props }) => (mask ? <></> : <G {...props} />);

const _Use = ({ xlinkHref: href, ...props }) => <Use href={href} {...props} />;
const _Image = ({ xlinkHref: href, ...props }) => (
  <Image href={href} {...props} />
);

export {
  Mask, Circle, ClipPath, Defs, Ellipse, _G as G, _Image as Image,
  Line, LinearGradient, Path, Pattern, Polygon, Polyline, RadialGradient,
  Rect, Stop, Symbol, Text, TextPath, TSpan, _Use as Use
};

export default Svg;

what confused me is in the my-command.js, u mentioned dynamic import, local file, and webpack compile, i modified this file as below:
import * as React from 'react';
import { render, Artboard } from 'react-sketchapp';
const ImgSvg = require('./imgs/sketch.svg');

const Document = () => {

  return (
    <Artboard
      name="my-image"
      style={{
        width: 1920,
        height: 1080
      }}
    >
      <ImgSvg></ImgSvg>
    </Artboard>
  );
}

export default () => {
  render(<Document />, context.document.currentPage());
};

all right, it doesn't modified at all, cuz i cant understand ur description, so i still need ur help...

You are aliasing react-sketchapp, which will prevent anything from rendering at all. What is happening, is that the @svgr/webpack Webpack loader is generating a file, which imports react-native-svg. You need to replace the react-native-svg with the Svg.js file, via Webpack import aliasing, which you can think of as a find/replace. Please read the Webpack docs on this. Ignore dynamic importing, that’s a React web concept which isn’t supported in a Node.js/JavaScriptCore environment, just do a normal import.
Svg.js
const path = require('path');

module.exports = (config) => {
  if (process.env.LOCAL_DEV) {
    config.module.rules[1].test = /^(?!.*\.(jsx?|tsx?|json|svg|md|nib|xib|framework|xcodeproj|xcworkspace|xcworkspacedata|pbxproj)$).*/;
    config.module.rules.push({
      test: /\.svg$/,
      use: [
        {
          loader: 'babel-loader',
          options: {
            presets: ['@skpm/babel-preset'],
          },
        },
        {
          loader: '@svgr/webpack',
          options: {
            native: true,
            svgoConfig: {
              plugins: [{ convertPathData: false }],
            },
            babel: false,
          },
        },
      ],
    });
    config.resolve = {
      ...config.resolve,
      alias: {
        ...config.resolve.alias,
-        'react-sketchapp': path.resolve(__dirname, './Svg.js'),
+        'react-native-svg': path.resolve(__dirname, './Svg.js'),
      },
    };
  }
};

my-command.js
import * as React from 'react';
import { render, Artboard } from 'react-sketchapp';
- const ImgSvg = require('./imgs/sketch.svg');
+ import ImgSvg from './imgs/sketch.svg';

const Document = () => {

  return (
    <Artboard
      name="my-image"
      style={{
        width: 1920,
        height: 1080
      }}
    >
      <ImgSvg></ImgSvg>
    </Artboard>
  );
}

export default () => {
  render(<Document />, context.document.currentPage());
};

right, alias, im not so familiar with webpack, just use scaffold instead, now i understand: the webpack loader @svgr/webpack use react-native-svg, and i need use Svg.js to instead react-native-svg, to let the svg image rendered successfully, and also the dynamic import
accordingly, i modified those 2 files as u said: my-command.js and webpack.skpm.config.js, then open sketch to use the plugin, but i still got a error:
Error: Could not find renderer for type 'xxx.svg'

missingRendererError

map

__skpm_run
__skpm_run

and that confused me a lot, i used the Svg.js to instead the react-native-svg for render the svg image, but i still got a error, but how? (sigh)

Ah, you need to remove if (process.env.LOCAL_DEV) {
const path = require('path');

module.exports = (config) => {
-  if (process.env.LOCAL_DEV) {
    config.module.rules[1].test = /^(?!.*\.(jsx?|tsx?|json|svg|md|nib|xib|framework|xcodeproj|xcworkspace|xcworkspacedata|pbxproj)$).*/;
    config.module.rules.push({
      test: /\.svg$/,
      use: [
        {
          loader: 'babel-loader',
          options: {
            presets: ['@skpm/babel-preset'],
          },
        },
        {
          loader: '@svgr/webpack',
          options: {
            native: true,
            svgoConfig: {
              plugins: [{ convertPathData: false }],
            },
            babel: false,
          },
        },
      ],
    });
    config.resolve = {
      ...config.resolve,
      alias: {
        ...config.resolve.alias,
        'react-native-svg': path.resolve(__dirname, './Svg.js'),
      },
    };
-  }
};

oh yeah, of course, process.env.LOCAL_DEV means in the development mode, but when i build my project/code, it's production mode, right right, when i modified that, it worked, finally, it worked, thanks again!
and one more question: just as u mentioned in another issue that i referenced in the beginning, u said that i should use nodejs to save th svg into this project, and import this svg to render, that means:

use nodejs fetch a svg and save it into my react2sketch project
use shell script to write some codes into the my-command.js, like: import ImgSvg from '{the svg that i saved from 1st step}'; and <ImgSvg></ImgSvg>
after 2nd step, build the project

is that right?

Uhh, I guess that would work, but it sounds really hacky. I would just have the necessary SVGs locally and import them by hand. You might be able to make a codemod to inject imports into a file, or could create a react-sketchapp Webpack loader to fetch and compile the SVG, then you could do import Svg from 'http://localhost:8080/file.svg';

https://dev.to/emilios1995/dynamic-imports-in-react-native-9k5

emmmm, in my situation, i will deal with all the svg images, not only some necessary svgs, and the svg might have many structures, cuz this project will play a middle layer role for the entire project, even if this entire project is still in my mind, haha, so about render svg is really hacky
and the idea u posted, i check it out, it's a good idea, it's helpful, i will consider about it, thanks again


fix markdown rendering on slug pages

renders fine on other pages but rendering on the post page itself is not correct. lists dont work for some reason

we have to style them manually. tailwind resets many default styles

wait so how do we style lists?


Toolbar is not visible while uBlock is active

Due to a ad selector (body > div[id="toolbar"][style]) in uBlock Origin, the toolbar is not visible (displayed as none). I can only see the element optionsbar.
Browser: Chrome 102 on macOS.

Can you provide a screenshot? I cannot reproduce your issue on Chrome 102 with uBlock Origin.


[docs] Plugins can set up and maintain state doesn't work

Hi,
In the documentation, page https://tauri.app/fr/v1/guides/features/plugin/,  there is an example teaching how to create a plugin, using the plugin::Builder, that manages state :
Here it is :
pub fn init<R: Runtime>() -> TauriPlugin<R> {   Builder::new("awesome")     .invoke_handler(tauri::generate_handler![do_something])     .setup(|app_handle| {       // setup plugin specific state here       app_handle.manage(MyState::default());       Ok(())     })     .build() }
Sadly, app_handle doesn't have any manage() method anymore...
I found out that I can manage my plugin state in the app builder directly...
It works, but the app should not be aware of the plugin's state (imho). So I assume it should be a better way to do it.
Thanx for help
Fred

Did you add use tauri::Manager at the top of your rs file?


Add fk_as_int option to get_pydantic()

This allows to create pydantic models that contain the FK ID instead of the full related model for each field specified in fk_as_int. To see why this can be useful, check #343.
Unfortunately I didn't manage to allow for more than one level of nesting in the given dict/set, meaning one can only skip the conversion of a directly related model, not an indirectly related one. A more concrete example of this caveat has been added to the docs.

Codecov Report

Merging #893 (e91f53b) into master (ba15d62) will not change coverage.
The diff coverage is 100.00%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files

@@            Coverage Diff            @@
##            master      #893   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          200       200
  Lines        16532     16565   +33
=========================================
+ Hits         16532     16565   +33

Impacted Files
Coverage Δ

ormar/models/mixins/pydantic_mixin.py
100.00% <100.00%> (ø)

...ts/test_fastapi/test_excludes_with_get_pydantic.py
100.00% <100.00%> (ø)

...ydantic_generation/test_getting_pydantic_models.py
100.00% <100.00%> (ø)


Fix #7

@Mandalka I've updated the architecture to allow for multiple pretrained models. Different models contain different spaCy pipeline components (e.g., certain models don't have the ability to do a task like named entity recognition). I documented in the OpenAPI spec that certain HTTP API endpoints would be unavailable for these models. However, I was unsuccessful in testing out such models (e.g., the en_trf_bertbaseuncased_lg model). If this is important to you, please let me know if my assumptions are incorrect. I fear they might be because I said that models such as en_trf_bertbaseuncased_lg don't allow for sentence segmentation. I said this because traditional models depend on a parser pipeline component, but this one doesn't (it does have a sentencizer component though).


DD_API_KEY environment variable ignored by the container

Steps to reproduce

Run Docker Compose with the following service:

  datadog:
    image: datadog/agent:latest
    links:
      - service1
      - service2
      - service3
    environment:
      - DD_APY_KEY=<disclosed>
      - DD_SITE=datadoghq.eu
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /proc/:/host/proc/:ro
      - /sys/fs/cgroup:/host/sys/fs/cgroup:ro

What happens?
app-engine-datadog-1  | [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
app-engine-datadog-1  | [s6-init] ensuring user provided files have correct perms...exited 0.
app-engine-datadog-1  | [fix-attrs.d] applying ownership & permissions fixes...
app-engine-datadog-1  | [fix-attrs.d] done.
app-engine-datadog-1  | [cont-init.d] executing container initialization scripts...
app-engine-datadog-1  | [cont-init.d] 01-check-apikey.sh: executing...
app-engine-datadog-1  |
app-engine-datadog-1  | ==================================================================================
app-engine-datadog-1  | You must set an DD_API_KEY environment variable to run the Datadog Agent container
app-engine-datadog-1  | ==================================================================================
app-engine-datadog-1  |
app-engine-datadog-1  | [cont-init.d] 01-check-apikey.sh: exited 1.
app-engine-datadog-1  | [cont-finish.d] executing container finish scripts...
app-engine-datadog-1  | [cont-finish.d] done.
app-engine-datadog-1  | [s6-finish] waiting for services.
app-engine-datadog-1  | [s6-finish] sending all processes the TERM signal.
app-engine-datadog-1  | [s6-finish] sending all processes the KILL signal and exiting.
app-engine-datadog-1 exited with code 1

What should happen?
Service should not fail over missing DD_API_KEY environment variable since it is defined.

Typo in DD_API_KEY, instance started properly.
Closting, apologies for the noise.


quickstart has problem with VS Code

VSCode Version: Code 1.9.1 (f9d0c687ff2ea7aabd85fb9a43129117c0ecf519, 2017-02-09T00:26:45.394Z)
OS Version: Windows_NT ia32 10.0.10240
Extensions:

Extension
Author
Version

angular2
johnpapa
2.0.0

TypeScriptImport
kevinmcgowan
1.17.0

vim
vscodevim
0.5.3

Steps to Reproduce:

What is quickstart?
Please provide more information.


⚠ Site ANTS has degraded performance

In cb31307, Site ANTS (https://ants.gouv.fr) experienced degraded performance:

HTTP code: 200
Response time: 8731 ms

Resolved: Site ANTS performance has improved in 3c58505.


Installer doesn't add mix test alias that sets up the DB and runs migrations.

It needs to add the following alias into the mix.exs if it doesn't already exist.
def project do
  [
    # ...
    aliases: aliases(),
    # ...
  ]
end

def aliases do
  [
    test: ["ash.setup --quiet", "test"]
  ]
end

Fixed by f5a1b6f79f93d62f0a1376a4f6f5b78043a03729


Gulp fixes

Various gulp fixes:

Bug in which this.emit would throw, since the arrow function did not bind this
The watcher now throws every error that isn't the basic "Command failed" error that happens when gulp-qunit fails - makes for easier debugging
The babel preset has been updated to go with the new rollup configuration (fixes #357)

Thanks a lot @birjolaxew :beer:


Future api support

Hi there, is there any plan to support future api?

I have no immediate plans to do so, but I would welcome a PR.

@ChunYoLin Can you share a link to any documentation on the future api?

Hi Luke,
sorry for late replay,
I just join google recently,
and there are tons of trainings at first.
Anyway,
you can check future api here,
https://binance-docs.github.io/apidocs/futures/en/#change-log,
I have implemented some of them locally,
currently there are some workarounds and not very elegant, so I don't make pull request yet,
by the way,
I think it should be better if we separate the restful and websocket api,
because there are many of them with same name, it is kind of mess don't you think?

Maybe it's time for a v2 of this package using only future api?

Hi Luke,
I think you misunderstood the future api, future is stand for the "binance future" which is another kind of market in binance.

Is there a complete API guide or is it fragmented? I thought that was the complete API spec.


OpenCost UI nginx timeouts tuning

Describe the bug
Opencost does not allow to tune values below
https://github.com/opencost/opencost-ui/blob/f243545ed8b04113d088f0e62e064acf5d950714/default.nginx.conf.template#L69-L71
        proxy_connect_timeout       180;
        proxy_send_timeout          180;
        proxy_read_timeout          180;

because we have clusters that can have more than 100 nodes time to time cluster cost count for 7 days in UI return
Failed to load report data
Request failed with status code 404

and in logs we see
opencost-bc6d766b9-fw2sg opencost-ui 2024/10/11 12:38:53 [error] 28#28: *296999 upstream timed out (110: Operation timed out) while reading response header from upstream, client: <IP_ADDRESS>, server: _, request: "GET /model/allocation/compute?window=7d&aggregate=namespace&includeIdle=true&step=1d&accumulate=false HTTP/1.1", upstream: "http://<IP_ADDRESS>:9003/allocation/compute?window=7d&aggregate=namespace&includeIdle=true&step=1d&accumulate=false", host: "prod-spok-opencost.domain.net", referrer: "https://prod-spok-opencost.domain.net/allocation?window=7d"
opencost-bc6d766b9-fw2sg opencost-ui 2024/10/11 12:38:53 [error] 28#28: *296999 open() "/var/www/custom_504.html" failed (2: No such file or directory), client: <IP_ADDRESS>, server: _, request: "GET /model/allocation/compute?window=7d&aggregate=namespace&includeIdle=true&step=1d&accumulate=false HTTP/1.1", upstream: "http://<IP_ADDRESS>:9003/allocation/compute?window=7d&aggregate=namespace&includeIdle=true&step=1d&accumulate=false", host: "prod-spok-opencost.domain.net", referrer: "https://prod-spok-opencost.domain.net/allocation?window=7d"
opencost-bc6d766b9-fw2sg opencost-ui <IP_ADDRESS> - - [11/Oct/2024:12:38:53 +0000] "GET /model/allocation/compute?window=7d&aggregate=namespace&includeIdle=true&step=1d&accumulate=false HTTP/1.1" 404 153 "https://prod-spok-opencost.domain.net/allocation?window=7d" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:131.0) Gecko/20100101 Firefox/131.0" "<IP_ADDRESS>"

so in this case we hit 180s timeouts for opencost UI containers
opencost and prometheus pods do not get OOM and have CPU request settings (CPU limit = null) higher than metrics showing for them during 7-day calculation requests
So it seems like we need the ability to tune these parameters on the docker level and then on the chart level. In another case, we need to build our own docker container for opencost UI with updated timeout variables that is a good solution as I see.
Could be that I missed something, so suggestions are appreciated.

Would support a PR here! Should be a quick handful of helm changes!

Can provide pr for this and after approval also PR for the opencost chart.
Is such productivity expected for opencost on such cluster sizes because kubecost doesn't have such productivity issues?

Kubecost handles caching and data layers on the user's behalf between Prometheus and the UI; that is beyond the scope of opencost today.


README should reflect that rvv has been ratified

There has been some confusion reguarding the ratification status of rvv from people referencing this repo. This should be easy to fix.

Addressed by PR #946


fix(server): refactor file-list event interface

Remove the confusing promise container in favor of a current-file-list state.
The custom-then() function around a promise is hard to understand and reason about.
A simple object with a files property expresses the 'current files list' clearer.

:white_check_mark: Build karma 2860 completed (commit https://github.com/karma-runner/karma/commit/5c9bef693e by @johnjbarton)

:white_check_mark: Build karma 2860 completed (commit https://github.com/karma-runner/karma/commit/5c9bef693e by @johnjbarton)

:x: Build karma 2862 failed (commit https://github.com/karma-runner/karma/commit/f6d72807f0 by @johnjbarton)

:x: Build karma 2862 failed (commit https://github.com/karma-runner/karma/commit/f6d72807f0 by @johnjbarton)

I added the bundler here. I will try to separate the addition from the refactoring.

I added the bundler here. I will try to separate the addition from the refactoring.

:white_check_mark: Build karma 2894 completed (commit https://github.com/karma-runner/karma/commit/f8614d3a6e by @johnjbarton)

:white_check_mark: Build karma 2894 completed (commit https://github.com/karma-runner/karma/commit/f8614d3a6e by @johnjbarton)

To avoid introducing a change to middleware/karma and then just turn around and change it again, I combined the refactoring with the bundler introduction in #3638

To avoid introducing a change to middleware/karma and then just turn around and change it again, I combined the refactoring with the bundler introduction in #3638


the 'linkcheck' preprocessor should not block the build

It often happens that PRs and commits are blocked from being built and pushed because unrelated (in other parts of the document) links now appear to be broken

Well, they fail to build, but that doesn't prevent them from being pushed, does it?

@ISSOtm it blocks the build

Ah, fair.
Solution: split CI into two jobs, one running mdBook without linkcheck and publishing the results; the other running linkcheck.
This will still cause a CI failure, and thus raise red flags (or a red :x:, I guess), but not prevent deployment.
This can be achieved by using environment variables to override the output config, and disable some renderers, I believe.

Okay I agree with what you proposed


Jupyter Server Config

Gene:
Starting this issue as a container to hold discussion and options about spinning up the jupyter server on the HPC host.
Here's the deal.... the Pangeo documentation -- and the how-to guidance written by rsignell (which is based on the pangeo docs) -- directs us to do the following to spin up the server:
on the HPC:
create a compute node: salloc -A username .....
Start the server itself: jupyter lab --no-browser .....
On your local desktop:
Set up a port-forwarder: ssh -N -L .....
Launch your web browser with http://localhost:8889
The jupyter server runs on the HPC host, and accepts connections on a given port number. Connections to that port using HTTP protocol will connect to the jupyter compute server.
I question the need to use a port-forwarder on my localhost. The way I read the docs, that step is used to forward connections made to my desktop on port 8889 toward the jupter server port on the HPC. Why can't I just connect directly to the HPC port from my browser?
The jupyter sever documentation describes this in some detail.... I think it would be a lot easier for the users if we could eliminate the ssh step from the flow.
This ssh step may be necessary because of network security going to and from the HPC host, but I will need to get access to the host in order to test whether that is actually true.
The set-up I am driving toward would be slightly more complicated to initially configure (but very much suited to automation). The advantage is that the repeated workflows (spin up server, run notebooks) would be greatly simplified.
The server configuration can be set in a few ways:
command line switches
~/.jupyter/jupyter_server_config.py
~/.jupyter/jupyter_server_config.json
Command line is a nightmare for users... to avoid. I prefer editing the JSON file, as it is the easiest to understand and it only contains data for overriding defaults. The .py file is lengthy and more complex than we need.
Recommendations:
Generate a password (this automatically gets stored in jupyter_server_config.json
Add to the JSON config with these options:
Allow remote access
Bind to all interfaces (not just the one mapping to hostname).
Specify a certificate and key file to enable SSL. Our cert will be unregistered/serf-signed, so the browser will balk... but if we want https, we have to have a cert.
Set open_browser to False
Formally set the binding port per user account.
If we did all that, the user could spin up their jupyter server with a simple command: jupyter lab (rather than jupyter lab --no-browser --ip='hostname' --port=8400)
AND... we would eliminate all possibility of a port number collision among users. Firmly fixing the port number will also help with the friction of a self-signed certificate for SSL.
A few more details....  The fully-configured JSON that I have had good luck with (so far) is as follows:
{
  "ServerApp": {
    "password": << hashed password >> ,
    "open_browser": false,
    "certfile" : "/Users/trantham/.jupyter/CERT.pem",
    "keyfile" : "/Users/trantham/.jupyter/KEY.key",
    "ip": "<IP_ADDRESS>",
    "port" : 8402,
    "allow_remote_access": true
  }
}

The hashed password is created a few different ways... We can call jupyter server password on the command line (this is what is shown in Pangeo docs).... or we can do it programatically within python:
from notebook.auth import passwd
hashed_pw = passwd()

That call to passwd() will read from the terminal (not STDIN) and generate a suitable hash of the password to store in its encrypted form.
The reason I like the idea of doing it from within a Python script is that we will be doing other things with python at setup time (like re-writing that JSON). IMO, it would be best to do it all in the same programming environment -- with a slick setup script.
We also need to decide a couple of things on SSL and https. . .

Do we think it is necessary?  Since we're on a secured network, is it worth the trouble to set up SSL to encrypt the back-and-forth between the client and server? One could argue that it really is not required.  To-be-discussed @alaws-USGS
If we think that it is worth-while, so we want to 'publish' the cert file within the repo (causing every user to have the same self-signed cert), or have each potential user create their own certificate at install time?  For-sure, the better option is to have each user create their own cert... but it adds complexity to the setup....  See the example:

> openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout KEY.key -out CERT.pm
Generating a RSA private key
.....................................................................+++++
.......................................................................................................................................................................................................+++++
writing new private key to 'KEY.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: US
State or Province Name (full name) [Some-State]: Colorado
Locality Name (eg, city) []: Denver
Organization Name (eg, company) [Internet Widgits Pty Ltd]: DOI
Organizational Unit Name (eg, section) []: USGS
Common Name (e.g. server FQDN or YOUR name) []: HyTEST
Email Address []:

That cert is good for a year, after which it will need to be re-generated.
I found an easy way to automate everything... user just needs to supply a password.
See the file auto-conf.py
We still need to decide if we care about https and SSL. But if we do, we can automate every part of setting it up.

Andrew:
@gzt5142 I read through the comments and have a couple thoughts.
To the "We also need to decide a couple of things on SSL and https. . ." comment: You are correct that much of the work on HPCs will be over a secured network (VPN) but I think after our meeting today it would be a good idea to add SSL for any cloud or other use cases. And as for .pem/.crt files, would any of the default ones we use for DOI certs be useful? Info at https://github.com/usgs/best-practices/blob/master/ssl/UsingGitWithHTTPSInterception.md.
Rich:
The USGS-specific instructions we have for getting started on HPC are here:
https://github.com/USGS-python/hytest-development/blob/main/hpc.md
From Linux, Mac & Windowss/WSL2, we can also use this approach:
https://jupyter-forward.readthedocs.io/en/stable/
Andrew: Thanks Rich!
Gene:
I had not seen jupyter-forward before -- I had been focused instead on the hpc.md run-book.
It looks to me like jupyter-forward might be a more comprehensive solution, and also more flexible -- not requiring user to start an interactive shell on the HPC.
I wonder if we should pick one as the One True Solution(tm), and remove references to alternates. that is... either (1) coach users how to set things up from an HPC shell/login for execution from same.... or (2) use jupyter-forward from their desktop. Is there an advantage to having both? My take would be that simpler is better, so users can focus on the science they want to do.
If we present jupyter-forward as the best option, then we need to help users set up a conda env on their windows/mac/etc host and get jupyter-forward into their path. And then we need to offer a way to get the HyTEST-specific conda environment set up on HPC so that future runs of jupyter-forward will be able to activate it.
Rich:
@gzt5142 , I like the jupyter-forward approach a lot -- the main stumbling block was that we have many users on Windows, but there is an issue with port forwarding on windows. ( If you have any windows experience/expertise, it would be great if you could take a look at that issue!)
So currently Windows users would need to install WSL2 to use jupyter-forward -- which is great if they already have it, but if not, it's a bit of a high-bar or tough love situation. This is why we still kind of have the old instructions -- at least they work for everyone. :(
That said, if you do have WSL2 installed, it works nicely: ncar-xdev/jupyter-forward#152 (comment)

Gene:
Sad to say that I'm a relative newbie to the windows world, so not of immediate help.
I think I still need to do some background research to understand the need for port forwarding. I'm still living in the naive world where I imagine an addressable interface when the jupyter server spins up.
For example... the following works fine for me without setting up a port forwarder
On the remote host:
jupyter lab --no-browser --port=8080 --ip='<IP_ADDRESS>'

Then in my desktop's browser:
http://<IP_ADDRESS>:8080/lab

(I have to specify the IP, since I am using a temporary virtual host for which there is no name in the DNS).
The --ip=<IP_ADDRESS> replaces an older jupyter option for allow_remote_access. It instructs jupyter server to listen on all interfaces on the host (not just localhost).
Now... there may very well be a good reason this won't work on the HPC.  If I ever get access, I can test and try.
The other thing to consider is that with ssh, the port forwarding takes place on a secured (SSL) connection. If we fell that is important, we can get jupyer server to do that also.
IF that specification works on the HPC, this would eliminate the need for port forwarding on a windows host, and we could consolidate around jupyter-forward.
So.... jupyter-forward uses ssh to execute the jupyter lab command on the remote (HPC) host.
And it explicitly names the --ip=<hostname> parameter.  the host name comes from executing hostname -f on the remote host.  My understanding is that if that name resolves via DNS, then no port forwarding is needed to connect to the server.  (I am unable to test this at present).  The wildcard approach/solution such that port forwarding is not necessary would be to override the hostname so that it specifies --ip=<IP_ADDRESS> instead.
There does not seem to be an easy way to do this without modifying the jupyter-forward code itself.  Using a custom version of this tool seems as difficult and 'tough love' an operation as getting folks to set up WSL2 on their Windows hosts.
If this solution seems worthwhile, we can pursue it further....
An ugly change just to test this.... changed line 189 of jupyter_forward/core.py to:
command = r'jupyter lab --no-browser --ip=<IP_ADDRESS>'

Then this command works such that no port-forwarding is needed:
./jupyter-forward --identity ./.vagrant/machines/default/virtualbox/private_key --no-port-forwarding vagrant@<IP_ADDRESS>:2222

Rich:
Just a note that I tested these commands and they both worked (requesting that a 2 hour session be launched that uses the "woodshole" account and the "pangeo" conda environment).
$ jupyter-forward tallgrass --launch-command "srun -A woodshole -N 1 -t 02:00:00" --conda-env pangeo --port 8889

$ jupyter-forward denali --launch-command "srun -A woodshole -N 1 -t 02:00:00" --conda-env pangeo --port 8889

This is taking advantage that I have a ~/.ssh/config file that contains these lines:
Host denali
     HostName denali.cr.usgs.gov
     User rsignell
     IdentityFile ~/.ssh/id_ed25519
Host tallgrass
     HostName tallgrass.cr.usgs.gov
     User rsignell
     IdentityFile ~/.ssh/id_ed25519

seems like this is a parallel issue to #7 ... should probably close this an put future discussion there.

@gzt5142 and @alaws-USGS , great news - Jupyter-Forward is now working on Windows!  No WSL2 required!
https://github.com/ncar-xdev/jupyter-forward/issues/81#issuecomment-1242137881

SWEET.  I'll drive forward with this as the preferred option for running on HPC.

New information....
Have been pointed toward OnDemand service at https://tallgrass-denali-ondemand.cr.usgs.gov/pun/sys/dashboard
At first blush, this looks like a much more streamlined user experience.
User can request an allocation on tallgrass, within which a jupyter server will run.  User can custom-configure a conda environment.
Am testing now to see how this works vs jupyter-forward or a manual HPC config.

Instructions for HPC launch using jupyter server are included in the PR #88 .


⚠ Bofrost.lu has degraded performance

In e287206, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1311 ms

Resolved: Bofrost.lu performance has improved in 16cbea3 after 10 minutes.


Available methods/parameters for download process in Azure SDK for Java

Query/Question
Which ParallelTransferOptions values are relevant to BlobClientBase#downloadWithResponse, how do they affect the download behavior, and are there recommended values for different scenarios? Same question for DataLakeFileClient#readToFileWithResponse.
Which OpenOption values are required for BlobClientBase#downloadWithResponse, which are optional, and how do the optional values affect the behavior of the download? Same question for DataLakeFileClient#readToFileWithResponse.
Why is this not a Bug or a feature Request?
I am just looking for more information - I have not been able to find this documented.
Setup (please complete the following information if applicable):

OS: [e.g. iOS] windows
IDE: [e.g. IntelliJ] Intellij
Library/Libraries: com.azure.storage.blob and com.azure.storage.file.datalake

Information Checklist
Kindly make sure that you have added all the following information above and checkoff the required fields otherwise we will treat the issuer as an incomplete report

[X] Query Added
[X] Setup information Added

@jaschrep-msft could you please follow up with @sspencer88 on their question?

@ibrahimrabab @joshfree @jaschrep-msft just wanted to bump this issue - I'm just looking for some clarification/information about existing methods in the Azure java sdk

Hi @sspencer88
Apologies on not being able to get back to you sooner! For BlobClientBase#downloadToFileWithResponse, this is the appropriate ParallelTransferOptions class we use:
https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/models/ParallelTransferOptions.java
and for DataLakeFileClient#readToFileWithResponse, the appropriate ParallelTransferOptions class we use is:
https://github.com/Azure/azure-sdk-for-java/blob/main/sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/ParallelTransferOptions.java
The reason why there's two is because we introduced ParallelTransferOptions in Blobs package first, but then introduced it in other packages so we've added it to the common package that can be easily accessible by other packages. We have future plans to deprecate the ParallelTransferOptions in the Blobs package, but for now you should use this one for downloadToFile for BlobClientBase.
ParallelTransferOptions are used to parallelize upload/download requests depending on how large the data is that you are trying to upload/download. This is a good resource to look at:
https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blobs-tune-upload-download-java#performance-tuning-for-downloads
This is also another helpful resource (related to .NET but Java uses the same logic):
https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blobs-tune-upload-download#performance-considerations-for-downloads
As for OpenOption values, this is mainly used to configure how to open or create the file. By default, we do not overwrite, these are the values we pass if not specified:
private static final Set DEFAULT_OPEN_OPTIONS_SET = Collections.unmodifiableSet(new HashSet<>(
Arrays.asList(StandardOpenOption.CREATE_NEW, StandardOpenOption.READ, StandardOpenOption.WRITE)));
If you want to overwrite the file, you can do something like this:
Set overwriteOptions = new HashSet<>(Arrays.asList(StandardOpenOption.CREATE,
StandardOpenOption.TRUNCATE_EXISTING, // If the file already exists and it is opened for WRITE access, then its length is truncated to 0.
StandardOpenOption.READ, StandardOpenOption.WRITE));
Same applies to DataLakeFileClient#readToFileWithResponse when it comes to OpenOption.
Please let us know if this helps, and if you have any more questions feel free to reach out!


dynamic tables with Ajax

Hi,
Im using the dynamic tables. Data operations are dynamic (No postback or reload page ). So ın this case my table data comes with ajax.  Each time ın query i fill my data to table but the problem is, table feautures doesnt work(paging,search etc.). Here is my sample ajax code
$('#datatable').empty();             $('#datatable').append(result);                     $('#datatable').DataTable();
Thanks

Thanks a lot. Problem fixed.


core: add way to remove a connection

This adds the method add_any_connection_with_handle which returns a handle that can later be used to remove a connection again using remove_connection.
Untested, @jperez-droneup if you want to give this a try.

This does indeed fix my issue with reconnecting on a new IP address, and avoids destructing the mavsdk altogether. Thanks for your fast responses! 5/5 stars

Thanks for testing @jperez-droneup!


[Bug] Valid JSON input causes error

What are you really trying to do?
I am trying to execute a workflow and pass JSON input via the --input option to the temporal workflow execute command
Describe the bug
The following command, (incorrectly) results in an error
temporal workflow execute \
    --task-queue workshop \
    --type example01 \
    --input '{"A":1,"B":2}'
Error: input is not valid JSON: unexpected end of JSON input

Minimal Reproduction
See above, the JSON input '{"A":1,"B":2}' is not accepted by the temporal workflow execute command.
However the same input is accepted by tctl workflow run
tctl workflow run \
    --taskqueue workshop \
    --workflow_type example01 \
    -i '{"A":1,"B":2}'
...
Result:
  Run Time: 1 seconds
  Status: COMPLETED
  Output: [{"Result":3}]

Environment/Versions

OS and processor: M1 Mac
Temporal Version: temporal version 0.6.0 (server 1.20.0) (ui 2.11.0)

Fixed in 0.7.0.


fix: ignore pip install .whl file

I have added a condition for ignoring commands that contain a string .whl
the condition is returned null to indicate that the package should be ignored.
and I added this example to examples in this file 'real-examples.yaml'

I run tests and everything seems fine except for one error unrelated to the change I made
but no changes were made to the file  'real-example-results.yaml'

You should delete the tests/real-examples/snapshots folder and the re-run the tests (you may run yarn test:integration if you want to run only the "real examples" test)


NPE using contains on Guava SetView

Hello I'm facing an NPE using contains on guava com.google.common.collect.Sets.SetView, also present in 3.24.0.
It was working well on 3.23.1

assertj core version: 3.24.1
java version: corretto-11.0.17
test framework version: Junit 4.13.2
guava version : 31.1-jre

import com.google.common.collect.Sets;
import org.assertj.core.api.Assertions;
import org.assertj.core.api.BDDAssertions;
import org.junit.Test;

import java.util.Collections;
import java.util.Set;

public class AssertJCoreIssue {

    @Test
    public void should_pass_contains() {
        //GIVEN
        Set<String> set1 = Collections.singleton("123");
        Set<String> set2 = Collections.singleton("456");

        //WHEN
        Sets.SetView<String> guavaSet = Sets.union(set1, set2);

        //THEN
        BDDAssertions.then(guavaSet).contains("123"); // NPE
        Assertions.assertThat(guavaSet).contains("123"); // NPE
    }
}

Seeing this as well, caused by the check added in https://github.com/assertj/assertj/issues/2134 as getCanonicalName() on the resulting Class of Sets.union returns null as it is an anonymous class.

This can be worked around by doing, for example, Assertions.assertThat(java.util.Set.copyOf(guavaSet)).contains("123");

Thanks for the details, @TakiuGit and @dsw2127. I plan to work on it and release a fix by the end of the week.


proxy not work in nginx server

Nuxtjs: 1.0.0 RC11
= @nuxtjs/proxy : latest
I had build my spa page very well, and there's a third party API request using axios in my page.
When i run it from localmachine , everything is fine.
But after i move the generate files using nuxt generate into nginx server. I found that the proxy request cannot parse with 404 returned.
the proxy i had configured in my nuxt.config.js file like below：
 modules: [
    ['@nuxtjs/google-analytics', { ua: 'UA-78501857-4' }],
    '@nuxtjs/axios',
    '@nuxtjs/proxy'
  ],
  axios: { debug: true },
  proxy: {
    // /api/test1/test2  -> http://www.toutiao.com/api/test1/test2

    '/api': {
      target: 'http://www.toutiao.com',
      changeOrigin: true,             // for vhosted sites, changes host header to match to target's host
      logLevel: 'debug'
    }
  },

The axios request url is : http://www.toutiao.com/api/pc/feed/?min_behot_time=0&category=all&utm_source=toutiao&widen=1&tadrequire=true&as=A105A9CB66F96E6&cp=59B609C66E464E1

The proxy url had become: http://localhost:3030/api/pc/feed/?min_behot_time=0&category=all&utm_source=toutiao&widen=1&tadrequire=true&as=A105A9CB66F96E6&cp=59B609C66E464E1

In nginx server I saw the request is http://servername.com/api/pc/feed/?min_behot_time=0&category=all&utm_source=toutiao&widen=1&tadrequire=true&as=A105A9CB66F96E6&cp=59B609C66E464E1 , but it returned as 404.

I dont think proxy will work on spa, i just using it form develop

it's too bad for this, it seems that the proxy is conflict with the nginx's proxy server.
I'm going to close this issue, as nobody has reponse for it.
thanks @dreambo8563

@alterhu2020 朋友你解决了这个问题了吗？


Implement test suite in words package

Improve conformance with the official test suite.
We’re importing (a fork of) the segment package from bleve to take advantage of their tests.
The ‘ignore’ logic of WB4 is a pain, once you understand it. All subsequent rules require logic to ignore those categories. It’s been implemented with the seekPrevious method, which seems to work.
As of this writing, the words package passes 1775 of 1823 tests. The tests identified a good number of bugs, see:

b5832927e2d1f9f979db2620cdd7d1cfd9bcfb1a
096feb41e83822437629526ac6e205cf8ac8c650
b4785aeb63a4ad14da42e7defb9607591890c7e0

Currently (53d6d39255051f26dbd55f7ac413fbb83f8a9b23) failing on:
÷ [0.2] LATIN SMALL LETTER A (ALetter) × [6.0] COLON (MidLetter) × [4.0] COMBINING DIAERESIS (Extend_FE) × [7.0] LATIN CAPITAL LETTER A (ALetter) ÷ [0.3]

The issue is that we need to ignore WB4 on lookahead — similar to seekPrevious, i.e. seekForward.
This is a pain since we can only peek one rune in the current implementation. Need to rethink...

We’re at 1775/1823 tests passing as of f595cbb1b3b6f897de3a767a672c4bffe6e55414. To get these last cases, we need some sort of unbounded lookahead.

The tests are passing after adding support for more lookahead and much refactoring. I chose a lookahead count of 4, and the tests passed.


The attribute annotation_name isn't defined

Dear everyone
I need help.  When I build my idl file include the verbatim annotaion,   An error occurs, that is ERROR: context [/struct_type /complete_type_detail /type_annotations /_sub36 /applied_verbatim_annotation] 14:18 attribute annotation_name isn't defined.
I don't know what is the question, Is fast-dds-gen not support the use of verbatim annotation struct type ? Please help me, thanks very mcuh.
Fast-DDS-Gen version: 4.0.3
The idl:
module std_msgs {
module msg {
@verbatim (language="c++", text="basic type boolean")
struct Bool {
boolean data;
};
};
};
Thanks a lot

You can check the documentation for the supported annotations here


Dockerize Chatbot

Hi @mahaveergurjar ,
After researching and spending so much time on this issue, I come through a way to Dockerize Chatbot. But there are some issues during running Docker image. As I have Windows system, I experience some errors. I found that the Docker image may run perfectly on Linux / MacOS systems. If you are able to test it on such systems, please do further.

I am experiencing above error mainly due to WSL running in my Windows system.
Please do the necessary. I added the steps to build and run docker file in the README. Thankyou for giving me this opportunity.

I don't use docker so i don't know much about this but i will try and check on my system its work or  not  when i am free

I don't use docker so i don't know much about this but i will try and check on my system its work or not when i am free

Ok @mahaveergurjar ...I consulted this problem with lead developers....The final conclusion was Dockerizing Elcetron app is not necessary...In future if we use separate backend framework, then Dockerizing that backend would be great...This was their point....Please try my code on your system....If you are able to run it succesfully, you can merge it to main branch..Otherwise, you can close this PR and even delete this issue...
Sorry for my incompetence...

Its ok no problem


Update on config loader for nested values.yml

@wswjwjccjlu Thanks a lot for your help. This is a very core function and very important when using the config server. I am wondering if you could add several test cases for map and list as well as string. When a list and map are used, indentation is very important as well. So we might need to test with different indentations.


Add an ARM64 Linux and ARM Windows binary to the release

Using the cross compiler

worked like a charm for me, thank you!


Add a 1:1 reference line to the log-log graphs

Given the axes, logarithmic growth is characterised by a straight line with gradient 1.
Whilst you can almost see this from the chart, it would be helpful to have this y=x line as a reference - so you can see how far a country has deviated below logarithmic growth.
I should say, I think this is an absolutely excellent viz. The best I have seen out there for measuring progress

Hi, this is related to #82, which is a priority. Correct me if I'm wrong, but I think a y=x line would correspond to a doubling time of e days. It may be clearer to illustrate trend lines for different integer doubling times (e.g. 2 days, 5 days, 10 days).

Missed that, apologies - do close /merge this
(I think if you are using a base 10 log rather than natural ln, then a y=x line would a doubling time of 1 unit of time (as defined by your y axis rate of change denominator. Ie 1 week:
From the SI compartmental model, which should be a good approximation in early stages:
dI/dt = betaSI/N, [beta = 1/doubling time]
log (dI/dt) = log(I) +log(beta*S/N)
in limit I << N (many less infected than total population), S/N --> 1
log(dI/dt) =log(I) + log(beta)
which is your plot, with intercept of log(beta)
for log(beta)=0, beta =1,
ie doubling time of 1 time unit.)

Thanks for the clarification, this is helpful!

@all-contributors add @archiewood for ideas


MODULES-231 Add checkstyle to build

I don't want to include src/main/java/org/jboss/modules/xml/MXParser.java in checkstyle.  Also I'd like the removal of the unused class to be a separate commit to help clarify the impact of this.

updated, I will send separate pull for removal of the class


CsrfMiddleware and CsrfAwareActionInterface

CsrfMiddleware is currently running for all requests. However, this functionality is sometimes not required, or a separate implementation is required for individual endpoints that process external requests as API.
Magento has a CsrfAwareActionInterface endpoint interface. If implemented, the endpoint checks the Csrf itself, otherwise the Csrf is checked by Magento. You need to do something like this.

That's already possible. Middleware could be used in three ways:

Via main application stack.
Via route group stack.
Via individual route stack.

All these are configured at the application level. That's already in docs but will be even more visible after alpha release: https://github.com/yiisoft/docs/blob/master/guide/en/structure/middleware.md

It is clear that it is possible to add it. But I mean that it would be nice to be able to add the CsrfAwareActionInterface interface in the controller and not implement your own CsrfMiddleware. Now we have CsrfMiddleware whose area is very limited, and it is inconvenient to use it for separate routes. In case of difficulties, 99% of people will not write their own CsrfMiddleware, they will simply disable it.

What if third-party modules add routes for which Csrf is not needed? Will they have to ask the user to change their global configuration? Remove from the chain above CsrfMiddleware applications? I find it difficult.
I understand that you want to make it as simple as possible, but a step to the left, a step to the right, there are problems. This is not forward-looking.

Alright. CSRF is likely worth to be moved to router level.


Korean translation

thx for your help！ would you like to tell me your id in steam?

I'm inbae on steam :)


Create release notes for GOV.UK Prototype Kit v12.1.1

What
Create release notes for GOV.UK Prototype v12.??? (fix release)
Why
To tell users about the potential impact on prototypes of the removal of Gulp and unchecked boxes
Who needs to work on this
Technical writer aka content designer, Developer
Who needs to review this
Team
Done when
Before release on 15 or 16 June
Done when

[x] Content designer drafts release notes
[ ] Team reviews release notes
[ ] PR raised to update release notes in Changelog

Draft notes: https://docs.google.com/document/d/1f1n-WRe8OXMQlSWci3efJl_gW0VTrKuWc1IL9n25CZY/edit#


Update integration test and remove documents parameter from Spec2Vec

Recent fixes in matchms correctly remove negative losses. That required a retrained word2vec model.

New model file added.
Removed documents argument from Spec2Vec and Spec2VecParallel since it is not needed.
Switch from matchms 0.3.1 to matchms 0.3.4 since that contains the fixed add_losses filter.

Thanks for the review Stefan!


v-show breaks when used in a Vue component that is a direct slot of NuxtClientFallback

Environment
Nuxt project info:                                                                                12:11:19

Operating System: Linux
Node Version:     v18.18.0
Nuxt Version:     3.8.2
CLI Version:      3.10.0
Nitro Version:    2.8.1
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      devtools, experimental
Runtime Modules:  -
Build Modules:    -

Reproduction
https://stackblitz.com/edit/github-ouse6d?file=app.vue
Describe the bug
The page should not show any content at all. But it does when the SSR rendered HTML is shown. And then turns black after hydration completes.
Additional context
This only happens when v-show is used on a Vue component that is a direct child of NuxtClientFallback.
Logs
No response

Let's track in that issue then 🙏
If for whatever reason that's not fixed upstream we can reopen here and look to resolve in Nuxt.


[4.2] migrator: handle changed parameter declarations by introducing bridging local variables.

Explanation: When users override a SDK function whose parameter types have been changed,
we should introduce a local variable in the body of the function definition
to shadow the changed parameter. Also, a proper conversion function should
be applied to bridge the parameter to the local variable.
Scope: Swift 4.2 migrator
Issue: rdar://problem/41828411
Risk: Low
Testing: Added regression tests; manual tests using swift-migrate-test
Reviewed by: Nathan Hawes

@swift-ci please test


Documentation of new use cases

It would be great if the documentation can be also enriched to include the new use cases supported in this PR.
Originally posted by @ZwwWayne in https://github.com/open-mmlab/mim/issues/33#issuecomment-854539188

resolved by PR #36


Cannot calculate more than two digits

ruby .\formolecule.rb
Chemical formula: C30
"C30\n"
"C3"
36.033
{"C"=>36.033}
{"C"=>100.0}

fixed.
https://github.com/58/ForMolecule/commit/4fccdf2eeab75132989a5ef557faba134e2562a3


Support for rpm file which does not have a dependency on /bin/sh

All RPMs generated by cargo-generate-rpm require /bin/sh.
This seems unnecessary, as Rust binaries don't universally require a shell. In my case I'm trying to build distroless-like containers from RPMs generated by cargo-generate-rpm, and this is causing a shell and it's dependencies to be pulled in unnecessarily.
This behaviour comes from by rpm-rs, which appears to not be maintained at present: https://github.com/Richterrettich/rpm-rs/issues/54. I've raised a PR to https://github.com/rpm-rs/rpm-rs/pull/7 - which is a community fork that isn't yet publishing to crates-io.

rpm-rs/rpm#7 has been merged to the fork of rpm-rs, which  is a maintained-but-not-published-for-a-long-time community fork.
They do not care about backward compatibility. So, it is necessary to do following tasks on switching rpm-rs/rpm:

add /bin/sh to dependency automatically, which is usually necessary
add functionality to omit /bin/sh in dependency


[IsolatedDefaultValues] Actor-isolated default value in actor-isolated context

Description
This feels like it should be legal. Am I missing something? Even the diagnostic text is confusing.
"Actor-isolated default value in actor-isolated context"
Shouldn't that be the same isolation? Reproducible with Swift5 + upcoming feature IsolatedDefaultValues or Swift 6
Reproduction
public actor Foo {
    var name = "foo"
    lazy var twiceName = { // error: Actor-isolated default value in a actor-isolated context
       name + name
    }()
}

Expected behavior
lazy var twiceName's default value should be isolated to the actor and have access to name
Moving the IEAC to a private func with the same body produces this behavior, should the default value be accepted in the same way?
Environment
Version 16.2 beta 3 (16C5023f)
but not limited to betas
Additional information
No response

Thanks for filing! I just ran into something similar. Worth noting that the following compiles just fine:
public actor Foo {
    var name = "foo"
    lazy var twiceName: String = {
       name + name
    }()
}

The two required differences between the OP code and mine: I gave twiceName the explicit type of String, and I put name's declaration above twiceName.


Added GetAllClassificationsInSystem() and  GetDetailsOfClassificationItems()

I think the branch is not updated with main. BoundingBox methods are missing, and few old codes are still present.


"Backup Call log" crashes Android Q on Pixel 4a

Before you report your issue, please consider perusing the https://github.com/jberkel/sms-backup-plus#faq and searching the issues page to see if it has already been reported.
Expected behaviour
Program will not crash when "Backup Call Log" is enabled and the BACKUP button is pressed
Actual behaviour
As soon as you press "BACKUP", the program closes (exits) without any error message.  No error popup.  If you unclick "Backup Call Log", the SMS messages are backed up properly and the program does not crash.
Steps to reproduce the behaviour
Enable "Backup Call Log"
Press BACKUP
Please specify the following:

Android 11  Build RQ1A.201205.008
Pixel 4a
SMS Backup 1.6.0 Beta 2
Textra

Please attach the debug log

sms_backup_plus.log
Not much information in it, I use a "Custom IMAP server" and there is no connection made to the server, the app crashes within a second from clicking the "Backup" button so my guess would be somewhere in counting how many calls there is to backup. After this log I unchecked "Backup Call log" and it happily backed up one SMS.

Same here.  Nothing in the log.

If I change the setting "Maximum number of items per backup." to "All" it works, any other (100, 200, 500) makes the app crash.

@blip-unicorn Thanks for both of those.
Even that minimal log helps narrow down where the crash could have occurred.
The information about limiting the number of items per backup will be useful too.

Same here.
Pixel 4 (not 4a).
Newest android.
App crashes immediatly after pressing 'backup'.
Disabling 'call log' (leaving sms and mms) -> backup works no problem.
I had 500 as max items per backup.
After setting 100 and enabling 'call log' -> still crashes.
Changing max tiems to 'All -> it works (looks like, as it shows 500 items and backup is progressing as I'm typing ;)
Conclusion: if call log items to be backuped up > limit set by the user = app crashes.

Conclusion: if call log items to be backuped up > limit set by the user = app crashes.

I don't agree with this conclusion since my phone is new and I do not yet have 100 calls in the call log.

This is new behaviour that's only started in the last few months, breaking releases of SMS Backup+ that were "working" for over a year before that.
So one can only surmise that some update to Android has caused or triggered the problem.
Most people are reporting that it crashes unless they choose "unlimited" (or doesn't crash, so they're not talking about it). Personally it's still working fine for me, so it's a bit tricky to diagnose, but it seems like there's a glitch in the limit-handling code somewhere, probably well before it ever starts the backup process judging by the log that's attached.
(For example, it might be that when the limit is chosen by the user, the dialog handling code stores a Java object with the wrong type where the limit should be, which later causes a run-time abort. But a null can't cause a type-conflict, Note that this is speculative: I'm merely trying to figure out what's most likely from the evidence given so far; I haven't looked at that part of the code yet.)

If I read the Android source correct this is a change between Android 10 and Android 11 and was introduced by commit 1949102

@blip-unicorn looks like you're right on the money there, thanks!
(However why they needed to exclude LIMIT mystifies me, as it can only take an integer parameter, so it doesn't introduce any risk of "bad" or "costly" SQL injection.)

My thanks to everyone who figured this out! I KNEW it had to be something about my phone, because this just started recently & I'd never had a problem with it in years of use. I just noticed issues over the last week or so, & was trying to narrow it down based on what I saw as the most recent dates for the SMS, MMS, & call log backups. I had limited the number of items in the past because, in the course of switching phones a year ago, I've wound up with multiple copies of, really, a LOT of items. But now, having switched to "All", the app appears to be back to normal.

Vào 7:54, Th 5, 7 thg 10, 2021 Rrtccd @.***> đã viết:

My thanks to everyone who figured this out! I KNEW it had to be something
about my phone, because this just started recently & I'd never had a
problem with it in years of use. I just noticed issues over the last week
or so, & was trying to narrow it down based on what I saw as the most
recent dates for the SMS, MMS, & call log backups. I had limited the number
of items in the past because, in the course of switching phones a year ago,
I've wound up with multiple copies of, really, a LOT of items. But now,
having switched to "All", the app appears to be back to normal.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jberkel/sms-backup-plus/issues/1054#issuecomment-937358204,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHG3HMA2W3KP7KG24QY6GNDUFTVTBANCNFSM4WQGM7YQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Vào 9:39, Th 2, 11 thg 10, 2021 Hương Ngô @.***> đã
viết:

Vào 7:54, Th 5, 7 thg 10, 2021 Rrtccd @.***> đã viết:

My thanks to everyone who figured this out! I KNEW it had to be something
about my phone, because this just started recently & I'd never had a
problem with it in years of use. I just noticed issues over the last week
or so, & was trying to narrow it down based on what I saw as the most
recent dates for the SMS, MMS, & call log backups. I had limited the number
of items in the past because, in the course of switching phones a year ago,
I've wound up with multiple copies of, really, a LOT of items. But now,
having switched to "All", the app appears to be back to normal.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jberkel/sms-backup-plus/issues/1054#issuecomment-937358204,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHG3HMA2W3KP7KG24QY6GNDUFTVTBANCNFSM4WQGM7YQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

THANK YOU to all that figured this out! I've been having the exact same problem everyone else has for months. Text messages and the call log are EXTREMELY critical to me since it date and time-stamps some extreme issues in my personal life and provide me with evidence of who said what and when. Without it, I'm doomed to 'he said, she said." This App has been invaluable for me since I've had it, which has been about as long as it's been out; so long I can't remember! Fortunately, I signed up for updates on this topic, got the email with the solutions many in this group figured out, tried them myself (no limit on number of items per backup) and now it's working! WHAT a relief and a virtual lifesaver in my case. Thanks again to all, along with the developer. All the best...


Run a spotipy script as cronjob on a Raspberry Pi (OAuth problem)

Hi,
I tried to run my spotipy based python script on the Raspberry Pi. It won't work.
In the logs you will find the request for a new OAuth token ("... Paste that url you were directed to to complete the authorization.").
The spotipy cache file is also in the directory. The script works as long as I will not run it via CRON.
I cannot see how to solve this. Can somebody help me?
Greetings, michael

I'm running into the same problem, it keeps asking me to authenticate even though I have. It's as if it doesn't get the cached token.

Does cron run with its own user?

I believe cron runs as root. I set this up so that I'm cd'ing to the appropriate directory within cron before executing my spotipy script. Something like:
0 * * * * cd /env && /env/spotipy_script.py >> spotipy.log
Seems to work just fine for me since my appkey is also within this directory.

However, when I provide the full callback url it never works, If I provide ?code=.... it works. But I think it a pycharm console issue.

Thanks @grlindburg
This worked for me too. My crontab task (every night at 0:24 AM)
24 0 * * * cd /home/pi/scripts/SpotifyNotificationTweeter && python3.4 main.py > /home/pi/snt.txt


Viewing multiple positions per well

Per our discussion @ziw-liu @ieivanov @talonchandler:
Our experience and thoughts

There is a need to properly display multiple positions within a well in napari. Currently, the napari-ome-zarr format does not display multiple positions within a well. It only loads position 0.
Additionally, dragging and dropping a Well with multiple positions creates the behavior in #75, which duplicates the naming of the layers given the number of positions in the well. From this one gets one slider for the position, making it difficult to see or scan through the whole plate.
One solution is to write tiled datasets like in #73 where we stitch multiple positions into a single tiled array. This can be written in Data.zarr/Row0/Col0/position/0and will show properly in napari-ome-zarr. We need to store in metadata where and what position each chunked (Y,X) array came from to preserve the original position during acquisition.

The expected behavior we want

Easy method to drag and drop a well with multiple positions
Implement a pyramid structure for viewing the whole plate
We discussed the potential to add a custom viewer to get us rolling.

Please feel free to add more to this if I missed any points.

Adding some more notes from our discussion yesterday:

We would like to be able to display in napari both multiple wells within a well plate, and multiple FOVs within a well.
Currently displaying multiple wells within a well plate works decently. Here are some limitations

Only the first FOV from each well is loaded when using the napari-ome-zarr plugin to display HCS data. I think this behavior is good - it's not immediately practical to display all FOVs from all wells at the same time. A possible extension may be to display a random FOV, rather than the first one.
The first FOV within a well needs to be named 0. This presents a limitation in carrying over the names of the FOVs from the experiment.
The array within Position 0 needs to be named 0 - that's largely OK

Displaying multiple FOVs within a well does not work, and leads to issue described in #75. This is a limitation due to the ome-zarr reader which the napari-ome-zarr plugin uses to load the data.

One easy solution to both issues would be to write a new (say napari-iohub) plugin which will use iohub to read the zarr datasets. A long term fix would be to use pyramids for visualization. Tiling to me seems more of a hack for this application, and we'll run into the problem of trying to display too much data at the same time when loading a whole well plate.

Thanks for documenting this issue. While a napari viewer will probably not be part of iohub (which aims to serve other projects as a library), the need to view high-content screening data properly is indeed present.
recOrder currently contributes a reader to napari by wrapping WaveorderReader. As we release iohub, recOrder will be updated to depend on it, and I think it is natural to utilizing existing code by @talonchandler in recOrder view to address this issue. We can either upgrade the recOrder reader or move that functionality into a standalone package.

Removing bug label since it is not an iohub bug to be writing files according to the NGFF spec.

Although we are not clear why it did not work before, but napari-ome-zarr can now view multiple positions in a well (channel as layers) if the FOVs are named as 0, 1, 2, ... Also the napari builtin reader can open arbitrarily named positions as layers.


[Bug] Cannot add SplineROI dynamically

Describe the Bug
I need to add SplineROI dynamically to my canvas. An error occurs when using annotationHydration:
TypeError: Cannot destructure property 'instance' of 'annotation.data.spline' as it is undefined.
As I understand it, when using annotationHydration, part of the data required to render the spline is not created, and more specifically, the "spline" field in the "data". How can I add this annotation if I know the node points?
Steps to Reproduce

Try to add "SplineROI" annotation through annotationHydration

The current behavior
TypeError: Cannot destructure property 'instance' of 'annotation.data.spline' as it is undefined.
The expected behavior
Annotation added and rendered
OS
Windows 10
Node version
20.15.1
Browser
Chrome 130.0.6723.70

@tokyobordel maybe try to add a simple reproduction code

i am also facing similar issues but with RectangleROITool and CircleROITool #1607

@daker, it seems, at the moment dynamic addition only works for Probe and Length. I see that the necessary data for building complex annotations (like splines, rectangles, circles, etc.) is not added to annotationHydration https://github.com/cornerstonejs/cornerstone3D/blob/79887f9681ce363798c1f1454bbe0c670fdabded/packages/tools/src/utilities/annotationHydration.ts#L24-L48

@daker, it seems, at the moment dynamic addition only works for Probe and Length. I see that the necessary data for building complex annotations (like splines, rectangles, circles, etc.) is not added to annotationHydration https://github.com/cornerstonejs/cornerstone3D/blob/79887f9681ce363798c1f1454bbe0c670fdabded/packages/tools/src/utilities/annotationHydration.ts#L24-L48

@sedghi do you know if RectangleROITool, CircleROITool and SplineROI work with annotationHydration ?

Hmmm i don't know, probably not? I will look into this

@daker, fast example:
cornerstoneTools.utilities.annotationHydration(viewport, 'SplineROI', [
  [21.36147540983606, 0.00008000000002539309, -1230.2434426229509] as Types.Point3,
  [78.3254098360656, 0.00008000000002539309, -1157.3631147540982] as Types.Point3,
  [-25.550000000000008, 0.00008000000002539309, -1159.038524590164] as Types.Point3,
]);
cornerstoneTools.utilities.triggerAnnotationRenderForViewportIds([
  viewport.id,
]);

The SplineROI creates a spline instance in memory (here) and it may be missing. The in-memory spline is created using those control points, it splits each curve between two points into line segments and it uses those very small line segments to calculate if a point is close to the spline. I think it needs to be changed in order to create that in-memory spline if it does not exist yet.

Thanks Leo, @IbrahimCSAE will take a look into it

@sedghi do you know if RectangleROITool, CircleROITool and SplineROI work with annotationHydration ?

@daker  Haha, I have used RectangleROITool work with annotationHydration, it works.
The version at that time was 1.77.11，maybe you can have a try?

Please refer to the PR for details on the new static method available on the tool for hydration.https://github.com/cornerstonejs/cornerstone3D/pull/1624


Valid badge types that aren't found should respond with 404

Are you experiencing an issue with...
shields.io
🐞 Description
I wanted to automate finding invalid badges due to #8671. Unfortunately many of these respond with 200, so it's difficult to determine if they're valid programatically. In order to troubleshoot this I would need to host my own server, which isn't practical when I'm contributing to repositories in many organizations, some of which I don't admin.
The standard HTTP error code for resources that cannot be found is 404. GitHub already responds with this when you don't have permission to access a repository on the web or API. I think it would be best to stay consistent, and we can add custom headers if we want to further distinguish types of errors from badges.
🔗 Link to the badge

https://img.shields.io/bitbucket/issues/nickmccurdy/rose
https://img.shields.io/github/workflow/status/nickmccurdy/rose/build
https://img.shields.io/github/actions/workflow/status/nickmccurdy/rose/doesntexist.js.yml
https://img.shields.io/github/actions/workflow/status/nickmccurdy/doesntexist/doesntexist.js.yml

💡 Possible Solution
Any image request where a resource can't be found should respond with 404.

This should be a bug, not a question.

Hello. The reason why we don't do this is we want the output to be visible to users if there is some kind of error (be that not found, or a validation error or whatever). If you link an image in a <img> tag and we return a response with a 404 status code (or other error code) rather than a 200 then browsers will render a  rather than  (or whatever), even if there is usable image data in the body of the error response.
Obviously there is a tradeoff to be made here. We've picked rendering user visible output as the thing to optimise for ahead of RESTful-ness.

Thanks, I wasn't aware, that is unfortunate. Perhaps a codemod or linter could be helpful instead.


Curve Multiple TWAP for Palomabot and Curvebot

As a user, I want to be able to select multiple tokens for a Curve TWAP bot so that I don't have to schedule one bot per token, but will only need to schedule one both with multiple approvals.
Acceptance Criteria

Implement multiple token selection with amounts with new UI from @joycehermosilla.
Ensure that user has warnings that they must complete MULTIPLE ALLOWANCES for the bot
Check with @rootedbox that multiple bots created and run.
Ensure we collect gas for each token's twap transaction
Ensure that no date / time selected with one trade will be immediate execution.

Epic: https://www.notion.so/volumefi/EPIC-09-01-23-TWAP-Bot-with-Multiple-Sell-Tokens-for-Curve-e7e564395f5743c5a5515d5d7f725ba5
UI Flow:

[ ] The user selects Multiple Curve TWAP Bot (I will send you an icon)

[ ] The user lands on the Multiple Curve TWAP detail view:
https://www.figma.com/file/ClniQyKFqN1hSpWizV5O4A/Paloma?type=design&node-id=11495-2921&mode=design&t=zkmp4iOqQxgGo3KE-4

[ ] First, the user should select the tokens, for this, they will need to select from their available tokens with a balance greater than 0. The tokens will be ordered by balance.

[ ]Next to each token is a check box, if a user selects one of the tokens the user will be able to input an amount.

[ ] After an amount is input the selected token and amount will appear as a Label on the 2 Step "Build your TWAP". From the Label, they can also unselect the token with the "x"

[ ] After the user selects all the tokens they will need to select the Buy token (only 1). After Selecting the token the front-end will fetch the total amount of the selected token they will buy.

[ ] And finally, the user should select the interval between trades, the number of trades, and the date to start the bot.

[ ] Approve/Sign flow: The user need to approve and sing the deposit of each token. Approve/Sign flow here: https://www.figma.com/file/ClniQyKFqN1hSpWizV5O4A/Paloma?type=design&node-id=11531-17476&mode=design&t=SH0pX385ABNozz5B-4

[ ]

This is live. Thank you @jamie088!


Handle keyboard input in web version.

Problem:
Not possible to use keyboard in web version.
Solution:
I added hidden component KeyboardHandler which handle keyboard input.
This component rendered in AppRender component.
KeyboardHandler uses data from keyCodes.json in constants folder.
Result:
Now it is possible to interact with calculator by keyboard.

Cool idea!


Toggle focus mode has no effect

Chrome, Version 67.0.3396.99 (Official Build) (64-bit).
Synced workspace

The button in browser with the tooltip "Toggle focus mode" has no effect. All other controls seem to be okay. I may have misunderstood its purpose. If this is supposed to fade-bg and make app fullscreen, maybe without read pane that would be very useful.
It is possible to workaround by fullscreen browser, turn off navbar and status bar, turn off preview. But the click to do this would be good.

Resolved: with a clearer idea from the community about what focus mode does: "With focus mode on, whenever you type something, the caret stays centered vertically on the screen."


Fixes bug where we misclassified 1xx range as error (4.13.x)

Same as #875, but for the 4.13.x branch. Note, we don't have a current
schedule to do a last 4.13.x release, but we should prior to moving to
ASF at least to fix dependency versions.

there is no CI on this branch as we almost never do backports


clusterroles become roles for restricted clusters

What this PR does / why we need it:
Which issue this PR fixes
This is somewhat related to https://github.com/Kong/charts/issues/152
Special notes for your reviewer:
Checklist
This PR makes ClusterRoles changeable into Roles for single-namespace deployments is restricted clusters.

 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.

@hbagdi this is kinda incongruous with the controller since the equivalent doesn't exist in the flat manifests. However, I don't know if we'd want to provide equivalents there or instruct users to change the CR/CRB manually if they need it, in which case the discrepancy is a non-issue. Do you think we should have a corresponding change there to add this somehow before this is released in Helm?

It is completely fine (and even encouraged) for the Helm chart to have more features than the YAML manifests in KIC repo, but every feature in YAML manifest should be covered in the Helm chart.
The YAML manifests are meant as examples only.
(I know they are used as is in production but that's not what we should encourage)

hey @andrevtg  we are looking forward to seeing this commit, are you going to deliver the requested adjustment at the Readme soon? Thank you!


Added the Stack permutation program.

STACK PERMUTATION

Problem Description:
Given two integer arrays, input and output, each containing unique elements and both of the same length n, determine if it is possible to achieve the output sequence using only stack operations on the input sequence. In other words, we start with the input array and can perform a series of stack operations: we may push elements from input onto a stack in their original order and pop them off the stack to match the output sequence. The task is to write a program that checks if the output sequence is a valid stack permutation of the input sequence. If it's possible to generate the output using these stack operations, print "Yes"; otherwise, print "No".

Description
1. Input Arrays: The program receives two integer arrays, input and output, both of the same length and containing unique elements.
2. Function isStackPermutation: This function checks if output is a valid stack permutation of input.
Step 2.1: Initialize a stack (array) to simulate the stack operations and a variable top to track the top of the stack.
Step 2.2: Use a variable j to track the current index of the output array.
3. Iterate through input: For each element in input:
Step 3.1: Push the current element from input onto the stack.
Step 3.2: While the stack’s top matches the next element in output, pop it from the stack and move to the next element in output.
4. Result Check: After processing all elements in input, check if all elements in output have been matched. If j equals the length of output, return true; otherwise, return false.
5. Main Function: Tests the isStackPermutation function with example arrays and prints "Yes" if output is achievable from input using stack operations, otherwise prints "No".

Input:
int input[] = {1, 2, 3};
int output[] = {2, 1, 3};
Output:
Yes, it is a stack permutation.

Time Complexity:
The time complexity of this solution is O(n), where n is the number of elements in the input (or output) array. This is because we iterate through each element in the input array once, pushing each onto the stack. Each element can only be popped from the stack once when it matches the next element in the output array, so the number of push and pop operations is limited to
2n (one push and one pop per element at most). Thus, the algorithm efficiently completes the check in linear time.

This program is w.r.t  issue #1044 which you assigned me.


docs: update README  for v5

Description
docs: update README  for v5
Type of Change

[ ] ✨ New feature (non-breaking change which adds functionality)
[ ] 🛠 Bug fix (non-breaking change which fixes an issue)
[ ] ❌ Breaking change (fix or feature that would cause existing functionality to change)
[ ] 🧹 Code refactor
[ ] ✅ Build configuration change
[x] 📝 Documentation
[ ] 🗑 Chore

Nice catch!


No such file or directory

When i am running scrccpy, I am getting the below error, can someone help me on this
m-c02yh1hajg5h:scrcpy m0c04li$ scrcpy
-bash: /usr/local/bin/scrcpy: No such file or directory

How did you install it?

1st - brew install scrcpy
Then
brew cask install android-platform-tools

@rom1v : any update on this?

Hmm. Could you locate scrcpy on your system? Is it in /usr/bin/scrcpy for example?

Still seeing this.
I installed on Linux using apt, then uninstalled using apt.  Then installed a more recent version using snap.  Which finds it at /snap/bin/scrcpy (and /snap/bin is in my path).  But just running scrcpy yeilds: bash: /usr/bin/scrcpy: No such file or directory

Actually this appears to be some sort of file system caching issue.  I suspected as much, since there was no file at /usr/bin/scrcpy, so I restarted my system.  Problem gone.  Maybe leave this for others to no waste time over complicating it! ;)

yes as @artemis-prime mentioned, I too installed by cloning the repo and running ./install-release.sh and it showed that /usr/bin/scrcpy not found even though the binary was in the correct directory. So I just closed and opened the terminal and it worked :smile:.


Create Programmable Search Engine By Google

THE CSE FILE (css.xml) AND ANNOTATION FILE (annotation.xml) IS GIVEN IN THE FILES.

happy coding


Write api for administrator

Administrator's possibilities:

[x] Create new users.
[x] Edit only Managers.
[x] Change passwords for all Managers.
[x] Block the account of the Manager (the user can not enter the account).
[x] Edit all Clients.
[x] To change the territorial coefficient of the Client (3 territories, each has a percent surcharge factor of 0.5%, 1%, 1.5%).
[x] Can remove Clients.
[x] Can edit loans.
[x] Can change the period for issuing a loan.

It's done.


Integrate - Azure Alert incoming webhook

This commit fixes #20677. Three types of payloads have been integrated

Log
Metric
Activity Log.

Test cases and doc have been added.
Testing plan:
I have tested webhooks on the local by sending requests through postman (replica of the requests that are sent by Azure in webhooks)
GIFs or screenshots:

@timabbott can you please review this PR

@timabbott @alexmv @alya can u please review this PR?

@Akshat1903 needs cleanup on the formatting to look professional; check out some of our other webhooks like Pagerduty for inspiration.

@timabbott i can't understand which part needs cleanup if you can please guide me to the section

@Akshat1903 are you still interested in taking this forward?


borrow_mut panic in src/dfa.rs:454:31 - DFA cache not thread-safe?

What version of regex are you using?
regex-1.5.4
Describe the bug at a high level.
An application that I'm developing using tokio as async runtime occasionally shows a panic:
thread 'tokio-runtime-worker' panicked at 'already borrowed: BorrowMutError', /home/hmm/.cargo/registry/src/github.com-1ecc6299db9ec823/regex-1.5.4/src/dfa.rs:454:31

What are the steps to reproduce the behavior?
Don't know how to reproduce reliably - it's most likely a race condition with a regex that I put into a lazy_static variable to avoid recompiling the expression all the time. I assume that in some situations tokio might schedule async tasks on different threads, and when one thread wants to borrow the cache mutably while another one already has it this error could occur.
What is the actual behavior?
Panic as described.
What is the expected behavior?
Well, no panic of course :-)

The cache itself isn't thread safe. There is higher level synchronization that should prevent the same cache from being used in two different threads simultaneously.
Unfortunately, I'm not sure I'll be able to make much progress on this without some kind of reproduction. Could you try to come up with one?


slime nerf

About the PR
Makes slimes actually killable by fire extinguisher.
Why / Balance
they are stupidly robust .
Technical details
one liner nerd.

Summary by CodeRabbit

New Features

Slimes now inflict increased damage with a new "Caustic" damage type, enhancing gameplay dynamics and player strategies.

Gameplay Changes

The damage mechanics for slimes have been redefined, replacing the previous "Heat" damage type.

@coderabbitai stop adding changelog summaries to PRs they are already doing it themselves by including :cl:

make slimes metabolise chems quicker for shits and giggles :trollface:


Multi-processor communication

Hi, your packet manager has good approach. Just the problem is start 0xAA and end 0x55 bytes. These start and end are not optional when compiling while other features are option.
The problem is that when it is intend to use from "lwpkt" in the multi-processor communication that support 9th bit of data Address byte, (something like ATMEGA chip of serial port) this address (destination) will help processor hardware to check input frame in multi-drop serial networks.
So it is recommended to do option the start and end bytes and also reverse the position of FROM with TO byte (right now FROM is first byte and TO in next in current packet structure) For use from "lwpkt" in the multi-processor communication the first byte of packet should be TO field.
What is your idea about this feature?

So your complete packet structure would look:
now: start, start, [from], [to] [cmd], len, [data], [crc], stop
new: to, [from], [cmd], len, [data], [crc], stop
How do you handle bus errors in case of de-sync? For example in MQTT these things are handled on the TCP and ethernet level, while lwPKT is to be used in actual low-level implementation to transmit higher-level packets (or simple raw data).

Hi, as I recommended my mean was add 'option'.
Yes, it is intended to use lwpkt in the low level raw data. In fact using from lwpkt intend of multi-processor communication over the serial RS485 line with high bandwidth by using of DMA to reach 5Mbits/s with one master and 128 slaves on the share bus can be application scope.
To achieve a high performance and lower latency in this view, it is recommended to use from Hardware UART to detect the first byte of frame as address of destination. The STM32 microcontrollers also support 9-bit data mode, which normally if 9th bit set as 1 so it is assumed to the address of node. In this case UART controller see always when 9th bit is on and then interrupt the program to received data, if the byte address match with the pre-configured node address so this frame is for this node in the share bus like RS485. Therefore the error of receiving the frame will be based on UART controller.
The suggested frame structure for this usage will be as bellow:
[start],[to],[from],[cmd],len,[data],[crc],[stop]
I think it should be some compiling error check that user do not disable (start) and (end) field within disable of (to) field for example. In fact at least one of [start] or [to] or [cmd] should be enabled by compiler definition option.
Other thing like bus errors could be also check by enable [crc] by user if need.
What is your opinion, for this option and frame structure?

For start having an option to swap to and from fields is a feasible option with macro.

Yes, having option to swap [to], [from] by compiler macro is good option to background compatibility for users that develop packets by [from],[to] order.


[SPARK-40616][SQL] Add a warning for insertion of DECIMAL values containing exponent

What changes were proposed in this pull request?
Add a clear warning in spark SQL so that users are aware that a decimal containing an exponent will be converted to double, which may lead to a loss of precision.
The warning message: In Spark 3.0, numbers written in scientific notation would be parsed as Double. To restore the behavior before Spark 3.0, you can set spark.sql.legacy.exponentLiteralAsDecimal.enabled to true.
For example, when we want to insert 8.8888888888888888888e9 to a DECIMAL(20,10) column of a table, we will be able to see the following warning:
spark-sql> CREATE TABLE t(c0 DECIMAL(20,10));
spark-sql> INSERT INTO t VALUES (8.8888888888888888888e9);
22/10/07 15:36:04 WARN SparkSqlAstBuilder: In Spark 3.0, numbers written in scientific notation would be parsed as Double. To restore the behavior before Spark 3.0, you can set spark.sql.legacy.exponentLiteralAsDecimal.enabled to true.
spark-sql> select * from t;
8888888888.8888900000

The warning will not show up for DECIMAL values without exponent.
Why are the changes needed?
Users may not be aware that numbers written in scientific notation (for example, 1E2) would be parsed as Double during insertion. Adding a warning to let them be aware of potential precision loss and options of setting one configuration to restore the behavior before Spark 3.0.
Does this PR introduce any user-facing change?
Yes, it adds a warning.
How was this patch tested?
There are no new tests added. All existing tests pass. This change was tested by running the Spark SQL shell with decimal values with and without values containing exponent (For example, see "What changes were proposed in this pull request?
"). We are happy to also add a unit test if it is necessary.

Can one of the admins verify this patch?


Update logback-classic to 1.5.13

About this PR
📦 Updates ch.qos.logback:logback-classic from 1.4.14 to 1.5.13
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "ch.qos.logback", artifactId = "logback-classic" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "ch.qos.logback", artifactId = "logback-classic" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #198.


Add more colors to the chicken pet🐔

Please describe your idea.
Adding more color-types to the chicken pet (white is default). In the picture below there are some colors, that would fit for the chicken. Not every color has to be included, but I would love "black" and "brown red". :)

Describe how the idea would be helpful
The users could now choose between different colors for their favourite pet - the chicken! 🐔
Additional context
Additionaly I use this issue to add some other names for the chickens, as it would be much overhead to create an extra PR for that.
@gulyapulya Do you also want to contribute to this issue? Then @tonybaloney could assign this issue to us.

Yes, sure, let's do that!

So, you make the colored chickens, create a pr and after that I will implement it again. :)


Add a guide for contributors

Add a simple guide explaining how to setup react-native-strorybook for development with a demo repository.

Fixed with #15


[Localization] Inline text into text delegate

'Nothing here' text moved into text delegate and changed to 'Empty list'.
For Chinese, Japanese and German I have used google translate - they have to be refined.

@Letalus Can you please validate the German translation?

@yanivshaked the german translation is fine