add pipeline for mqtt disconnect packet

Codecov Report

Merging #374 (6fbadbb) into new-pipeline (e142796) will decrease coverage by 0.08%.
The diff coverage is 57.50%.

@@               Coverage Diff                @@
##           new-pipeline     #374      +/-   ##
================================================
- Coverage         80.85%   80.76%   -0.09%
================================================
  Files                59       59
  Lines              6611     6639      +28
================================================
+ Hits               5345     5362      +17
- Misses              982      988       +6
- Partials            284      289       +5

Impacted Files
Coverage Δ

pkg/object/mqttproxy/client.go
75.25% <52.17%> (-1.12%)
:arrow_down:

pkg/object/pipeline/mock.go
84.37% <64.70%> (-7.30%)
:arrow_down:

Continue to review full report at Codecov.

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


DOCUMENTATION FOR LINEAR SEARCH

Your branch has merge conflicts. Please refer http://stackoverflow.com/questions/161813/how-to-resolve-merge-conflicts-in-git and raise a PR again :)

could you merge my pull request i am not able to make further pull requests
On Tue, Oct 25, 2016 at 8:24 PM, Chinmay Deshpande<EMAIL_ADDRESS>
wrote:

Closed #87 https://github.com/IEEE-NITK/HacktoberFest/pull/87.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/IEEE-NITK/HacktoberFest/pull/87#event-835594060, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AV_DTTypY6UJ7aNZd7aoWXVdPNQNd1qpks5q3hgWgaJpZM4KgFVh
.


Add babel fragments to ..rcp.nls.feature and remove src setting from ..ext.sample.database.nls

Three parts modification:
1 Add some supplement i18n and l10n;
2 Remove src setting from org.jkiss.dbeaver.ext.sample.database.nls;
3 Add babel fragments to org.jkiss.dbeaver.rcp.nls.feature.

ruspl-afed, I removed and please check.


help

how to add china proxy?

https://github.com/wuuconix/DifferentDimensionMeAPI/commit/27c0fd438041d2e8d269c54d587eb12033f17999 supports China proxy now.
just input the China Proxy here.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
For example:
const chinaProxy = "http://<IP_ADDRESS>:7890"

27c0fd4 supports China proxy now.
just input the China Proxy here.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
For example:
const chinaProxy = "http://<IP_ADDRESS>:7890"

thankyou

{"error":"FetchError: request to https://ai.tu.qq.com/trpc.shadow_cv.ai_processor_cgi.AIProcessorCgi/Process failed, reason: connect ETIMEDOUT <IP_ADDRESS>:80"}

{"error":"FetchError: request to https://ai.tu.qq.com/trpc.shadow_cv.ai_processor_cgi.AIProcessorCgi/Process failed, reason: connect ETIMEDOUT <IP_ADDRESS>:80"}

I think the problem comes from the chinaProxy you input.
make sure your chinaProxy is valid.

{"error":"FetchError: request to https://ai.tu.qq.com/trpc.shadow_cv.ai_processor_cgi.AIProcessorCgi/Process failed, reason: connect ETIMEDOUT <IP_ADDRESS>:80"}

I think the problem comes from the chinaProxy you input. make sure your chinaProxy is valid.

address
Port
Country, City
Speed
Type
Anonymity

<IP_ADDRESS>
9091
China  Harbin
1322 мс
HTTP
High

{"error":"FetchError: request to https://ai.tu.qq.com/trpc.shadow_cv.ai_processor_cgi.AIProcessorCgi/Process failed, reason: connect ETIMEDOUT <IP_ADDRESS>:80"}

I think the problem comes from the chinaProxy you input. make sure your chinaProxy is valid.

address	Port	Country, City	Speed	Type	Anonymity
<IP_ADDRESS>	9091	China  Harbin	1322 мс	HTTP	High

I tried your proxy in browser using SwitchyOmega.
But cannot get the correct response of Tencent API.
So I still think that your proxy has some problem.

27c0fd4 supports China proxy now.
just input the China Proxy here.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
For example:
const chinaProxy = "http://<IP_ADDRESS>:7890"

27c0fd4 supports China proxy now.
just input the China Proxy here.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
For example:
const chinaProxy = "http://<IP_ADDRESS>:7890"

thankyou

Use http ?

{"error":"FetchError: request to https://ai.tu.qq.com/trpc.shadow_cv.ai_processor_cgi.AIProcessorCgi/Process failed, reason: connect ETIMEDOUT <IP_ADDRESS>:80"}

I think the problem comes from the chinaProxy you input. make sure your chinaProxy is valid.

address	Port	Country, City	Speed	Type	Anonymity
<IP_ADDRESS>	9091	China  Harbin	1322 мс	HTTP	High

I tried your proxy in browser using SwitchyOmega. But cannot get the correct response of Tencent API. So I still think that your proxy has some problem.

27c0fd4 supports China proxy now.
just input the China Proxy here.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
For example:
const chinaProxy = "http://<IP_ADDRESS>:7890"

27c0fd4 supports China proxy now.
just input the China Proxy here.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
For example:
const chinaProxy = "http://<IP_ADDRESS>:7890"

thankyou

Use http ?

Yes, the proxy protocol should be http. Because I used https://www.npmjs.com/package/https-proxy-agent which only support http and https.

27c0fd4 mendukung proxy China sekarang.
cukup masukkan Proxy China di sini.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
Sebagai contoh:
const chinaProxy = "http://<IP_ADDRESS>:7890"

27c0fd4 mendukung proxy China sekarang.
cukup masukkan Proxy China di sini.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
Sebagai contoh:
const chinaProxy = "http://<IP_ADDRESS>:7890"

terima kasih

Gunakan http?

Ya, protokol proxy harus http. Karena saya menggunakan https://www.npmjs.com/package/https-proxy-agent yang hanya mendukung http dan https.

Is it like this

27c0fd4 mendukung proxy China sekarang.
cukup masukkan Proxy China di sini.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
Sebagai contoh:
const chinaProxy = "http://<IP_ADDRESS>:7890"

27c0fd4 mendukung proxy China sekarang.
cukup masukkan Proxy China di sini.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
Sebagai contoh:
const chinaProxy = "http://<IP_ADDRESS>:7890"

terima kasih

Gunakan http?

Ya, protokol proxy harus http. Karena saya menggunakan https://www.npmjs.com/package/https-proxy-agent yang hanya mendukung http dan https.

 Is it like this

Yes, It's looking good.

27c0fd4 mendukung proxy China sekarang.
cukup masukkan Proxy China di sini.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
Sebagai contoh:
const chinaProxy = "http://<IP_ADDRESS>:7890"

27c0fd4 mendukung proxy China sekarang.
cukup masukkan Proxy China di sini.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
Sebagai contoh:
const chinaProxy = "http://<IP_ADDRESS>:7890"

terima kasih

Gunakan http?

Ya, protokol proxy harus http. Karena saya menggunakan https://www.npmjs.com/package/https-proxy-agent yang hanya mendukung http dan https.

 Is it like this

Yes, It's looking good.

does it not support using vps?

27c0fd4 mendukung proxy China sekarang.
cukup masukkan Proxy China di sini.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
Sebagai contoh:
const chinaProxy = "http://<IP_ADDRESS>:7890"

27c0fd4 mendukung proxy China sekarang.
cukup masukkan Proxy China di sini.
https://github.com/wuuconix/DifferentDimensionMeAPI/blob/27c0fd438041d2e8d269c54d587eb12033f17999/index.mjs#L17
Sebagai contoh:
const chinaProxy = "http://<IP_ADDRESS>:7890"

terima kasih

Gunakan http?

Ya, protokol proxy harus http. Karena saya menggunakan https://www.npmjs.com/package/https-proxy-agent yang hanya mendukung http dan https.

 Is it like this

Yes, It's looking good.

does it not support using vps?

This error should not happen.
Can you type node -v to see your node version?
I think it is caused by too low level of node version.

root@Ubuntu-Ribeng:~# cd DifferentDimensionMeAPI
root@Ubuntu-Ribeng:~/DifferentDimensionMeAPI# npm i
npm WARN DifferentDimensionMeAPI No repository field.
npm WARN DifferentDimensionMeAPI No license field.
audited 74 packages in 5.227s
10 packages are looking for funding
run npm fund for details
found 0 vulnerabilities
root@Ubuntu-Ribeng:~/DifferentDimensionMeAPI# node index.mjs
/root/DifferentDimensionMeAPI/index.mjs:1
import { v4 as uuidv4 } from 'uuid'
^
SyntaxError: Unexpected token {
at Module._compile (internal/modules/cjs/loader.js:723:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
at startup (internal/bootstrap/node.js:283:19)
at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3)
root@Ubuntu-Ribeng:~/DifferentDimensionMeAPI# node -v
v10.19.0

root@Ubuntu-Ribeng:~/DifferentDimensionMeAPI# node -v v10.19.0

version 10.19.0 is too low.
You should upgrade it to the Latese LTS version which should be 18.13.0.
Learn More: https://nodejs.org/en/
https://github.com/nvm-sh/nvm

root@Ubuntu-Ribeng:~/DifferentDimensionMeAPI# node -v v10.19.0

version 10.19.0 is too low. You should upgrade it to the Latest LTS version which should be 18.13.0. Learn More: https://nodejs.org/en/ https://github.com/nvm-sh/nvm

thank you.. now i want to find a proxy 😁 can you give me a proxy

thank you.. now i want to find a proxy 😁 can you give me a proxy

It's impossible to find a free alive proxy. Don't waste your time searching and just buy it somewhere. See more: https://github.com/lmcsu/qq-neural-anime-tg#mode-and-proxies

Why?

Mengapa?

Itu yang terbaik.

thank you, I can use the get proxy tool and connect to the ai

Why?

That's the best.

Why are my results different? and there is no video version either

Why are my results different? and there is no video version either

Please open a new issue. This question is out of topic in this issue.

For everyone who has not a alive chinese proxy.
Please see this issue.
https://github.com/wuuconix/DifferentDimensionMeAPI/issues/7#issuecomment-1399428992
use the aiplay_ai_painting_anime_entry as busiId may not need a proxy. Because it is open to the world.


Error with (save)

When I try to run the process, it processes the frames and then I get this:
Traceback (most recent call last):-
File "D:\sd\stable-diffusion-webui\venv\lib\site-packages\gradio\routes.py", line 488, in run_predict
output = await app.get_blocks().process_api(
File "D:\sd\stable-diffusion-webui\venv\lib\site-packages\gradio\blocks.py", line 1431, in process_api
result = await self.call_function(
File "D:\sd\stable-diffusion-webui\venv\lib\site-packages\gradio\blocks.py", line 1103, in call_function
prediction = await anyio.to_thread.run_sync(
File "D:\sd\stable-diffusion-webui\venv\lib\site-packages\anyio\to_thread.py", line 33, in run_sync
return await get_asynclib().run_sync_in_worker_thread(
File "D:\sd\stable-diffusion-webui\venv\lib\site-packages\anyio_backends_asyncio.py", line 877, in run_sync_in_worker_thread
return await future
File "D:\sd\stable-diffusion-webui\venv\lib\site-packages\anyio_backends_asyncio.py", line 807, in run
result = context.run(func, *args)
File "D:\sd\stable-diffusion-webui\venv\lib\site-packages\gradio\utils.py", line 707, in wrapper
response = f(*args, **kwargs)
File "D:\sd\stable-diffusion-webui\extensions\sd-wav2lip-uhq\scripts\ui.py", line 156, in generate
video = face_swap.generate()
File "D:\sd\stable-diffusion-webui\extensions\sd-wav2lip-uhq\scripts\faceswap\swap.py", line 195, in generate
result = self.swap_face(
File "D:\sd\stable-diffusion-webui\extensions\sd-wav2lip-uhq\scripts\faceswap\swap.py", line 165, in swap_face
result_image.save(fn.name)
AttributeError: 'numpy.ndarray' object has no attribute 'save'

Hi,
It seems to be an issue with numpy package, try to only select sd-wav2lip-uhq in extensions tab and apply and restart.
Numpy can be use in several extensions.
Let me know

Same issue,even close all other extensions


Inconsistency in Limitations

The limitations are not consistent with this article : Container Instances Availability Zones
In this article (Reliability in Azure Container Instances) :
The following container groups do not support availability zones at this time:

    Container groups with GPU resources
    Virtual Network injected container groups
    Windows Server 2016 container groups

In the Container Instances Availability Zones article, only the Container Groups with GPU resources are mentioned.
As the later article has been updated 3 weeks ago I assume the Reliability in Azure Container Instances article is outdated on this point.
Have a good day.

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

ID: 1b199b00-bd77-f3c8-5ccb-ac10b110958b
Version Independent ID: d4ff6b18-3aa3-fc8f-317f-7524f909b0b3
Content: Reliability in Azure Container Instances
Content Source: articles/reliability/reliability-containers.md
Service: container-instances
GitHub Login: @anaharris-ms
Microsoft Alias: anaharris

Commits that removes these lines in the Container Instances Availability Zones articles :
https://github.com/MicrosoftDocs/azure-docs/commit/d749644e2ca2478be490ac739a168b65e847955c
https://github.com/MicrosoftDocs/azure-docs/commit/ba521ba896b109c3a1379fa1194d7ddd4a968ff5

@sjacquier-coexya
Thanks for the feedback! I have assigned the issue to content author to check and update the document as appropriate.

@anaharris-ms
Can you please check and add your comments on this doc update request as applicable.

@VikasPullagura-MSFT Fix is being applied.
#please-close


New methods for integer and string asserters

As requested in the following issue https://github.com/mageekguy/atoum/issues/21, i wrote some code and here is my pull request.

You're right, this is a good idea. Changes are committed.


connect_grpc_bridge: remove request content-length

Commit Message: connect_grpc_bridge: remove request content-length
Additional Description:
We need to always remove Content-Length since the request on the other side of the filter is chunked with a different body size.
Risk Level: Low
Testing: unit test
Docs Changes: n/a
Release Notes: n/a

cc @jchadwick-buf


Build failed on Ubuntu due to TU in failure

While trying to build the current master version of ARA, using the command mvn clean install -Pdev -DskipPitest on Ubuntu 2 unit tests are in failure.

A little analysis show that the tested code use the following code :
try {
           // ...
           final File file = new File(absoluteFolderPath + File.separator + fileName);

            // Will create directories if they do not exist
            FileUtils.write(file, html, StandardCharsets.UTF_8);

            return araConfiguration.getFileHttpAccess() + subFolder + "/" + fileName;
        } catch (IOException e) {
            log.error("HTTP log saving failed: {}", e.getMessage(), e);
            return null;
        }

And the unit test checks the return null because the path is expected to be /var/proc/?/not-writable/directory/any.
But FileUtils.write try to create the path if it doesn't exists (by calling FileUtils.openOutputStream and then File.mkdirs).
On Windows, you can't create this path, but it can be created on Unix systems.
One fix is to change the use of FileUtils.write to another call which will not create the path if it doesn't exists (be careful to regression in this case).

It seems that the creation of sub directories is a feature of this function, so we need to update the test instead.

Will be delivered in version 4.0.0


⚠ ClamAV has degraded performance

In 894b5e5, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 67 ms

Resolved: ClamAV performance has improved in c25e684 after 5 minutes.


Support for Web?

Feature request
This package should provide Web support.
Why it is needed
A CheckBox component for the browser is built-in to React Native Web. But the React Native CheckBox is deprecated and will be removed at some time. So I think this package should also provide Web support, to have a all-in-one solution 🙂 Would be nice.
Possible implementation
Maybe just move the code over here and deprecate it in React Native Web too @necolas 😄

I agree, this would be very useful

The purpose of react-native-checkbox is to try to offer an all-in-one solution for using native components in JavaScript.
For the Web world, I think people would directly just use the <input type='checkbox"'> which is already there for JavaScript.
If I am wrong, please emoji on this comment.

Going forward every fundamental component in this org will need to support the variety of platforms that react native targets: ios, android, windows, mac, web

@necolas
Agree with the need to support the variety of platforms that react-native targets. Actually, we would support windows in the next version. And plan to support mac in the future. Supporting for WEB looks great. I am not sure about that, so let us discuss

TBH I think a checkbox should be part of the core library, alongside other form elements. That's why I didn't remove it from RNWeb. I'm not sure why this one was moved out of core. Possibly FB is using custom implementations internally. I'll ask around next week

The purpose of react-native-checkbox is to try to offer an all-in-one solution for using native components in JavaScript.
For the Web world, I think people would use React and just use the <input type="checkbox"'> directly which is already there for JavaScript.
But, please emoji on this comment let me know if I am wrong about that, 😄 😄 😄

The props should match up and such.
In a shared code base, without web support, it would look like
if (Platform.OS === ‘web’) return <input type="checkbox"'>;

return <Checkbox />

It would be annoying trying to match props to both and such.

Because it wasn't used internally at FB

FWIW, I'm currently experiencing peer dependency issues over react-native-windows–and since the project I'm using this component in will never be on the web or windows, installing it doesn't feel quite right.
Not sure what the ideal solution is here, but willing to dig around.

Hate to be That Guy™ but any news on this? As far as I'm aware there's already a perfectly reasonable implementation of Checkbox component for the web in react-native-web already 🤔

I solved it like this:
CustomCheckboxTypes.ts
import { ViewProps } from "react-native";

export interface CustomCheckboxProps extends ViewProps {
  value?: boolean
  onValueChange?: (e: any) => void,
  onChange?: (e: any) => void,
  disabled?: boolean,
}

CustomCheckbox.tsx
import { CheckBox } from 'react-native-web';
import { CustomCheckboxProps } from "./CustomCheckboxTypes";

// See https://necolas.github.io/react-native-web/docs/checkbox/
export const CustomCheckbox = (props: CustomCheckboxProps) => {
  return (
    <CheckBox
      {...props}

      // Resolve the warning:
      //   Warning: A component is changing an uncontrolled input to be controlled.
      //   This is likely caused by the value changing from undefined to a defined
      //   value, which should not happen. Decide between using a controlled or
      //   uncontrolled input element for the lifetime of the component. More info:
      //   https://reactjs.org/link/controlled-components
      value={props.value === undefined ? false : props.value}
    />
  );
};

CustomCheckbox.native.tsx
import CheckBox from '@react-native-community/checkbox';
import { CustomCheckboxProps } from "./CustomCheckboxTypes";

// See https://github.com/react-native-checkbox/react-native-checkbox?tab=readme-ov-file#common-props
export const CustomCheckbox = (props: CustomCheckboxProps) => {
  return (
    <CheckBox {...props} />
  );
};

And then the user of the component just does:
import { CustomCheckbox } from './CustomCheckbox';

React Native has magic handling of the .native file suffix so that it will import CustomCheckbox.native.tsx on native and CustomCheckbox.tsx on web.
Then use like normal:
<CustomCheckbox
  key="checkbox1"
  value={checkbox1}
  onValueChange={() => setCheckbox1(!checkbox1)}
/>


Where to enter the endpoint?

From README.md:
Integration with Open WebUI: In the Open WebUI configuration, set the API endpoint to http://localhost:8012/v1/chat/completions. This will allow Open WebUI to use the search functionality of GraphRAG4OpenWebUI.
Where exactly do I have to enter the endpoint? In Connections --> OpenAI API? Because there you have to enter an API-key and although GraphRAG4OpenWebUI is up and running, it will result in connection failures.
What am I missing here?

You need to enter the endpoint http://localhost:8012/v1/ in Connections --> OpenAI API, and the API key does not need to be entered.
For details, you can refer to this demo video: https://youtu.be/z4Si6O5NQ4c


make eslint a dev dependency

I'm curious why linting is not a dev dependency?
I expect that common process is that you use dev mode until you're ready to build production. At that point all linting issues should be resolved.
Having linting as part of dependencies affects things when using continuous integration, causing longer time to install dependencies. Because the rule does not have linting as part of the config, the linting doesn't happen.
to get around that, I've created a hack to not require the eslint-loader
let createLintingRule = () => ({})

if (process.env.NODE_ENV !== 'production') {
  createLintingRule = () => ({
    test: /\.(js|vue)$/,
    loader: 'eslint-loader',
    enforce: 'pre',
    include: [resolve('src'), resolve('test')],
    options: {
      formatter: require('eslint-friendly-formatter'),
      emitWarning: !config.dev.showEslintErrorsInOverlay
    }
  })
}

which loads it only in development, given that  this line only requires it if the dev config uses linting       ...(config.dev.useEslint ? [createLintingRule()] : []),

@dasDaniel
eslint is already a dev dependency template/package.json#L34 and template/build/webpack.base.conf.js#L46


Move playbooks to a standalone chart

add field enable in playbook
also chevk snapshot playbbook, something seems out of sync for it


Different restart mechanism

The current loop approach crashes under Linux all the time. Different approach with os.execvp - works both under Linux and Windows - might not work in the compiled executable - requires testing.

In default windows using pycharm IDE this restart mechanism loses the ide. It restarts and no longer has the regular log or debug.
One failed restart gave me:
C:\Users\David\AppData\Local\Programs\Python\Python311\python.exe: can't open file 'C:\\Program': [Errno 2] No such file or directory
And the other method worked perfectly. So maybe divide by OS.

Commandline in windows and compiled windows worked fine. It's actually only an issue for the IDE and the general rule there would just be don't restart that. So this may actually be a pass for windows too.

After some fixes to the Mouse Query and Double-Buffer Signals issues this may not be needed anymore.
Please verify there's any issue with the current mechanism on Linux.


Write documentation for sz-sdk-go

The Go documentation is written in the godoc style and is automatically posted at

https://pkg.go.dev/github.com/senzing/g2-sdk-go

References

https://github.com/senzing-garage/garage-roadmap/issues/8
https://github.com/senzing-garage/g2-sdk-go-base/issues/156

Fixed via https://github.com/senzing-garage/sz-sdk-go/issues/179


Scala 2.12 support

Classes implementing the AwaitilitySupport trait are failing when using scala 2.12.x with the following message
failed: java.lang.NoSuchMethodError: org.awaitility.scala.AwaitilitySupport.$init$(Lorg/awaitility
/scala/AwaitilitySupport;)V

The same code works fine with scala 2.11.8

Yeah I tried to update it but I don't want Awaitility to depend on Java 8 so I had to revert. Do you know of any solution to this?

Any updates? I think its ok now (in 2019) to let awaility depend on java 8

One workaround is just not to use the AwaitilitySupport trait (and, in fact, the awaitility-scala as well) at all. It doesn't add all that much in fact, just some implicit conversions to bridge the tiny (in Scala 2.12) gap between the Scala lambdas and the java.util.Callable. The gap being: writing the () => explicitly to differentiate a code block from lambda coercion. So to get started with using awaitility in a Scala test without the awaitility-scala dependency:
import org.awaitility
import org.awaitility.Awaitility._
import org.awaitility.core.ThrowingRunnable
import scala.concurrent.duration._

// OPTION 1: add implicit conversions
  implicit def byNameFunctionToCallableOfType[T](function: => T): Callable[T] = () => function
  implicit def byNameFunctionToCallableOfBoolean(function: => scala.Boolean): Callable[java.lang.Boolean] = () => function
  implicit def byNameFunctionToRunnable[T](function: => T): ThrowingRunnable = () => function

await atMost 5.seconds until { true == true }

// OPTION 2: ditch the conversions

await atMost 5.seconds until { () => true == true }

@michalmela Thanks for the tip!

The new version of awaitility, 4.0.0-rc1, uses Scala 2.13.0. You could try that out. I'm going to close this issue.


Test cases flow

[ ] create parallel flows for populating normal database and test database
[ ] define SQL queries to test the lite database


Buggy Wikidata handling with iD

How to reproduce:

Click this link: https://www.openstreetmap.org/edit?way=234938994#map=19/50.14551/9.02485

What is expected:

iD should display a Wikidata field with the item

What happens instead:

iD displays an empty Wikidata field with a grayed-out link; clicking on it still works and leads to the correct Wikidata item. iD also displays an empty Wikipedia field (supposedly for German Wikipedia) although the object is not tagged with any wikipedia= tag; clicking on the non-grayed out link does nothing.

Attempting to delete the empty Wikipedia link will actually delete the Wikidata tag with no prior warning.
I have no idea where the issue lies.

Another thing I just noticed: the address field is grayed out and does not display any address at all, even though the object contains appropriate addr: tags.

@Prince-Kassad Hmm this is what I see when running iD in German:

iD has to query Wikidata in order to show the name and description, so it's possible that failed or your browser/network blocked the query. We should probably have a better fallback UI.
The Wikipedia field appears if there's a wikidata tag. Since there isn't actually a wikipedia tag, it appears empty.
The Address field won't load if iD can't tell what address format to use. Weirdly this also isn't working for me, I'll investigate further.

@Prince-Kassad I tried this again and was able to get both the Wikidata and Address fields to load after a moment. Since these both require network calls, I'm thinking it was a network issue and not a bug with iD.

@Prince-Kassad However, #4198 might interest you. It's about making the experience nicer when something on the network is unavailable.


the auto schema detection does not order the columns in the same way for different ables

Describe the bug
The user reported that
even when the upstream table's schemas are the same,
the ordering of the columns is "sometimes" not the same.
Therefore, union cannot union them by default via *.
Error message/log
No response
To Reproduce
No response
Expected behavior
No response
How did you deploy RisingWave?
No response
The version of RisingWave
No response
Additional context
No response

I tried an example, say I created two tables in MYSQL:
CREATE TABLE ExampleTable (
    id INT AUTO_INCREMENT PRIMARY KEY,        -- Integer type with auto-increment
    name VARCHAR(255) NOT NULL,               -- Variable character string
    birth_date DATE,                          -- Date type
    email VARCHAR(255),                       -- Variable character string
    is_active BOOLEAN DEFAULT TRUE,           -- Boolean type
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP -- Timestamp with default current time
);

CREATE TABLE AnotherExampleTable (
    name VARCHAR(255) NOT NULL,               -- Variable character string
    email VARCHAR(255),                       -- Variable character string
    id INT AUTO_INCREMENT PRIMARY KEY,        -- Integer type with auto-increment
    birth_date DATE,                          -- Date type
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- Timestamp with default current time
    is_active BOOLEAN DEFAULT TRUE            -- Boolean type
);

They have the same set of columns, but the order of columns is different.
It will lead to different “column ordinal” in the information schema:
mysql> SELECT TABLE_NAME, COLUMN_NAME, ORDINAL_POSITION
    -> FROM information_schema.COLUMNS
    -> WHERE TABLE_NAME IN ('ExampleTable', 'AnotherExampleTable')
    -> AND TABLE_SCHEMA = 'public';
+---------------------+-------------+------------------+
| TABLE_NAME          | COLUMN_NAME | ORDINAL_POSITION |
+---------------------+-------------+------------------+
| AnotherExampleTable | name        |                1 |
| AnotherExampleTable | email       |                2 |
| AnotherExampleTable | id          |                3 |
| AnotherExampleTable | birth_date  |                4 |
| AnotherExampleTable | created_at  |                5 |
| AnotherExampleTable | is_active   |                6 |
| ExampleTable        | id          |                1 |
| ExampleTable        | name        |                2 |
| ExampleTable        | birth_date  |                3 |
| ExampleTable        | email       |                4 |
| ExampleTable        | is_active   |                5 |
| ExampleTable        | created_at  |                6 |
+---------------------+-------------+------------------+
12 rows in set (0.01 sec)

The schema discovery library we use will order the columns based on the column ordinals: https://github.com/SeaQL/sea-schema/blob/master/src/mysql/query/column.rs#L72
The ordering produced by this 3rd library will be inherited by RW: https://github.com/risingwavelabs/risingwave/blob/release-1.10/src/connector/src/source/cdc/external/mysql.rs#L102-L118

The user reported that
even when the upstream table's schemas are the same,
the ordering of the columns is "sometimes" not the same.

IIUC, this is determined by their business, there exist tables have same columns but in different order, am I right?
It is surprised to me that UNION requires the ordering of result set to be same, because when we union two sets, we don't care about the ordering of sets. So one solution is to implement the CORRESPONDING clause (link).

IIUC, this is determined by their business, there exist tables have same columns but in different order, am I right?

Yes, and the upstream tables are managed by a different team. The user is not allowed to alter the orderings of the columns in the upstream table.

CORRESPONDING

Thanks, this is a good idea

Sounds like CORRESPONDING is the standard version of BY NAME mentioned in https://github.com/risingwavelabs/risingwave/issues/15637#issuecomment-1991060486
Without it, the user can easily workaround by manually reordering the columns before union. Or for ease of reuse, create a view over the table just to reorder columns, and use the view rather than underlying table afterwards. Specifying all columns again in correct order may sound receptive but it is no harder than redefining the upstream with correct column order, which is out of their control but willing to do. - Or does turning off aut-schema detection work?
Furthermore, the original issue description stated:

The user reported that
even when the upstream table's schemas are the same,
the ordering of the columns is "sometimes" not the same.

The example in https://github.com/risingwavelabs/risingwave/issues/17451#issuecomment-2189145094 above does not satisfy the even when part. Does auto-schema detection guarantee the column orders in RisingWave is always the same as upstream?

Without it, the user can easily workaround by manually reordering the columns before union. Or for ease of reuse, create a view over the table just to reorder columns, and use the view rather than underlying table afterwards. Specifying all columns again in correct order may sound receptive but it is no harder than redefining the upstream with correct column order, which is out of their control but willing to do.

Manual re-ordering by specifying the names of columns again makes the auto schema detection essentially meaningless because we want to avoid typing the names in the first place. But we now need to do it again.
There are different levels of "willing". I believe the fact that auto-schema detection is implemented in RW and other systems indicates that people are not really that willing.
For the change of the upstream table, the producer just needs to do it once.
As the consumers of the upstream table via CDC, they can be different people/teams. So everyone needs to do the same again.
I have little confidence that the upstream team/or one of the downstream teams is willing to provide a script for the rest so the rest saves the trouble. I just feel that an average organization does not operate in this "nice" way.

The example in https://github.com/risingwavelabs/risingwave/issues/17451#issuecomment-2189145094 above does not satisfy the even when part. Does auto-schema detection guarantee the column orders in RisingWave are always the same as upstream?

As the two lines of code (one in sea and one in RW) suggest, "column ordinal", aka the order of how you specify columns in the table definition determines the orderings we get when auto-detecting the schema from the upstream database to RW.

Another approach is that we just sort the columns by their name on our side, is there any concern?

Manual re-ordering by specifying the names of columns again makes the auto schema detection essentially meaningless because we want to avoid typing the names in the first place. But we now need to do it again.

However, users are also not able to directly UNION these two tables in the upstream system (without BY NAME). 😕 I don't think it's a problem that we should help to address. Though supporting UNION BY NAME is definitely good.

However, users are also not able to directly UNION these two tables in the upstream system (without BY NAME). 😕 I don't think it's a problem that we should help to address.

I don't get the logic here
it's fine if PG/MySQL decides not to help with this case.
But what exactly prevents us from helping in this case?

It seems we agreed to help via UNION BY NAME.  :eyes: Where's the disagreement?

Another approach is that we just sort the columns by their name on our side, is there any concern?

It would be a surprise to user that the order of columns in cdc table is different from its upstream.
I think the elegant way is to support UNION CORRESPONDING. The other quick and dirty way is to add a with option to CREATE TABLE to sort columns by name.

It seems we agreed to help via UNION BY NAME. 👀 Where's the disagreement?

Why not one step further, automatically order the columns of the CDC table according to the name.
I think users can live with the "UNION BY NAME" or "UNION CORRESPONDING" approach. I am not against it.
But I don't see why ordering the columns of the table by name is bad.

It would be a surprise to user that the order of columns in cdc table is different from its upstream.

But this is a big assumption.
In this particular case, the user is more surprised why it does not work automatically with columns being the same.
I cannot imagine why the user would care about the order of columns in the table other than the union case.
If there is a meaningful example, case closed. I don't have any counter-arguments anymore.
But right now there is none proposed in this thread.

Why not one step further, automatically order the columns of the CDC table according to the name.

I don't understand what you mean by "automatically order". How to order? :eyes:

Order affects select * (perhaps not that important)
More importantly for UNION, if user have t1(a int, b int), t2(b int, a int), you can see order will affect the result for UNION without BY NAME

I don't understand what you mean by "automatically order". How to order? 👀

If the upstream table is create table t(z int, y int, a int), we re-order the columns in the schema according to its name alphabetically,
i.e. create table t(a int, y int, z int) when the user define the create table t(*) from CDC source in RW.

you can see order will affect the result for UNION without BY NAME

This has to be discussed under the context of auto schema detection for the CDC tables.
It's weird to see that people would do this to trick themselves on purpose
i.e. having two+ tables essentially the same (the reason why they want to union in the first place) and then defining two columns with interchangeable names in two+ tables only to union t1's a and t2's b together instead of t1's a and t2's a.
(never mind if you thought I was referring to automatically re-ordering in union query instead of re-ordering in the source table)
This issue occurs when we later implement the auto-union feature for CDCing multiple upstream databases/tables.
It leaves us with no choice that we have to have the same schema for all the tables involved. (IF the feature is really viable at all)

cc @xiangjinwu @neverchanje might want to chime in

Sharing my thoughts:

UNION CORRESPONDING: good extension
We shall clearly define one of the following as expected behavior. I would prefer the easiest to implement correctly.

CDC ingested table has the same column order as upstream
CDC ingested table has column order sorted alphabetically according to UTF-8
CDC ingested table does not guarantee column order, especially after alter

This has to be discussed under the context of auto schema detection for the CDC tables.
It's weird to see that people would do this to trick themselves on purpose

But a SQL union executor would not have different behaviors when the input is a CDC table or any other relation. By SQL standard and all existing SQL databases, union works by column order rather than names. That's why CORRESPONDING was introduced later to provide a more human-friendly alternative.

On the other hand, I also think enforcing the order of both sides of UNION is unnecessary. I tried running a query that unions different column orders in duckdb and mysql, and they both produce results successfully.
UNION, INTERSECT and other set operations: use the schema of  by default, thus eliminating the need to introduce the new keyword CORRESPONDING.

Did not really get what you mean. I tried select 7 as a, 8 as b union all select 9 as b, 4 as a; on both MySQL 8.0 and DuckDB 1.0.0 and they all union by position. CORRESPONDING is necessary for DuckDB to switch to the alternative behavior.

Addendum: The reason DuckDB uses by name instead of corresponding is that they decided to support a different number of columns on each side of the union, filling missing columns on the other side with NULL. I believe we do not need to support this behavior, and in fact, this silent tolerance might be harmful. Therefore, I think we should still use corresponding.
https://github.com/duckdb/duckdb/issues/4320#issuecomment-1209245589

But a SQL union executor would not have different behaviors when the input is a CDC table or any other relation.

I don't get it. The idea of re-ordering columns by us does not alter the behavior of "union".
The behavior of the union stays the same.


Sorting logic in index_chains()

Currently the default sorting logic ranks chains by:
first, umi_count (duplicate_count), then, read_count (consensus_count), both in descending order.
However, for chains with equal umi_count, would having higher read_count actually reflect lower real world abundance?
Or, would it be possible to expose the ascending= option in ak.argsort(), e.g. sort_chains_by=dict(sort_key=(default_value, ascending)) or a separate ascending=dict(sort_key=ascending).
Does this make sense?

Hi,
thanks for the question. I don't think that the read count for chains with equal UMI count provides any useful information about true abundance. But it's also not worse than random. There are two reasons it's implemented that way:

the sorting gets more reproducible as it doesn't depend on random order in the case of ties
the same default sorting keys can be used for datasets that do and don't provide umi counts

You have a point that it's currently not possible to specify whether to sort ascending/descending in the index_chains function. I'm a bit wary thought to introduce even more complexity to that function.
Would something like
adata.obsm["airr"]["sort_key2"] = -adata.obsm["airr"]["sort_key2"]
ir.pp.index_chains(adata, sort_chains_by = {"sort_key2": float("-inf")})

work for you as a workaround?

Hi @grst,
Thank you for the quick reply. In the context of 10X VDJ sequencing, abundance of reads is largely determined by, on top of UMI abundance, efficiency of PCR amplification and luck of sampling during sequencing. In other words, read count represents number of observations. Unique molecules that require higher number of observations to be found are likely less abundant than those require fewer observations. That's the rationale. In practice, it would affect only a very small subset of cells.
Thank you for the workaround. I can live with that :). Thanks!

Closing because you said you could live with the workaround. Let me know if there are any other issues.


do not attempt adding when file is None

Codecov Report

Merging #209 (61ecb53) into master (9466389) will decrease coverage by 0.05%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #209      +/-   ##
==========================================
- Coverage   83.28%   83.23%   -0.06%
==========================================
  Files          30       30
  Lines        2291     2290       -1
==========================================
- Hits         1908     1906       -2
- Misses        383      384       +1

Impacted Files
Coverage Δ

quetz/config.py
88.67% <ø> (ø)

quetz/tasks/mirror.py
92.64% <ø> (+0.37%)
:arrow_up:

...ons/a3ffa287d074_case_insensitive_channel_names.py
68.75% <0.00%> (-6.25%)
:arrow_down:

quetz/testing/fixtures.py
96.80% <0.00%> (-2.41%)
:arrow_down:

quetz/auth_github.py
80.48% <0.00%> (+2.98%)
:arrow_up:

quetz/auth_google.py
57.14% <0.00%> (+4.20%)
:arrow_up:

Continue to review full report at Codecov.

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


Error when spinning up NextJS app for first time

Hello,
When I spin up NextJS via npm run dev I consistently get the following error in the console.
Warning: Received `false` for a non-boolean attribute `sm`.

If you want to write it to the DOM, pass a string instead: sm="false" or sm={value.toString()}.

If you used to conditionally omit it with sm={condition && value}, pass sm={condition ? value : undefined} instead.
    at h1
    at Styled.p
    at TextChild (/Users/brett/project-tavern/node_modules/@nextui-org/react/cjs/text/child.js:27:3)
    at TextChild (/Users/brett/project-tavern/node_modules/@nextui-org/react/cjs/text/child.js:27:3)
    at Text (/Users/brett/project-tavern/node_modules/@nextui-org/react/cjs/text/text.js:50:3)
    at Text (/Users/brett/project-tavern/node_modules/@nextui-org/react/cjs/text/text.js:50:3)
    at div
    at Styled.div
    at div
    at Styled.div
    at NavBar
    at div
    at Styled.div
    at Layout (webpack-internal:///./components/Layout.tsx:32:19)
    at SsrProvider (/Users/brett/project-tavern/node_modules/@nextui-org/react/cjs/theme/ssr-provider.js:38:3)
    at ThemeProvider (/Users/brett/project-tavern/node_modules/@nextui-org/react/cjs/theme/theme-provider.js:37:10)
    at exports.ThemeProvider (/Users/brett/project-tavern/node_modules/next-themes/dist/index.js:1:1552)
    at MyApp (webpack-internal:///./pages/_app.tsx:48:18)
    at StyleRegistry (/Users/brett/project-tavern/node_modules/styled-jsx/dist/stylesheet-registry.js:231:34)
    at AppContainer (/Users/brett/project-tavern/node_modules/next/dist/server/render.js:390:29)
    at AppContainerWithIsomorphicFiberStructure (/Users/brett/project-tavern/node_modules/next/dist/server/render.js:420:57)
    at div
    at Body (/Users/brett/project-tavern/node_modules/next/dist/server/render.js:688:21)

I am not using the 'sm' option anywhere in the application currently - so this seems to be an issue in the package?

Hi, there is already a bug for this
#161


fix: the file argument must be of type string

When I run Launcher.launch(), I get the following error: The "file" argument must be of type string. Received type object. If I make the changes, there is no more error. However, I am not sure if this is the way to fix it.

Oops, I'll fix the linting errors. I edited the file directly in GitHub so I couldn't run the lint command.

Sorry, this is actually not an issue with minecraft-launcher-core-node. I just wasn't using the library correctly.


[CUSOLVER] cuSOLVER handler does not support multiple streams

Summary
Intel llvm introduced multiple CUDA streams per SYCL queue which broke the cuSOLVER scope handler that assumed one stream per device per thread. This broke asynchronous submissions, in the short term synchronous cuSOLVER submissions should be used. See #209 and #215 for further details.
Version
All versions built with intel llvm after dd418459868a976cd2eeae367fea6b92795ea611.
Environment
cuSOLVER backend

@ericlars is this fixed and can be closed?


Add taper serialization

This branch adds missing serialization code for the set of objects defined in taper.h.   That includes true two-sided tapers as used, for example, in spectral analysis and the TopMute class (mapped in pybind11 code to _TopMute).
I didn't add test pickle code for TopMute because I still don't have pytest fully implemented.  I notice that I don't think there is any test code for Taper classes that I added pickle to either:  LinearTaper, CosineTaper, and VectorTaper.
There are some minor changes to the C++ taper test program that do test the boost serialization used in the C code.  The pybind11 serialization with pickle, however, is completely different for LinearTaper, CosineTaper, and TopMute.  VectorTaper directly applies the boost serialization. The reason I did that is that the first 3 are defined by 3 to 4 numbers that are easily serialized as a tuple in pybind11.   Should be must faster than preserving all the baggage of serializing the full object interface.  Note I tested all 4 pickle instances with the same one we use in all the other tests:
#data_object is the object we want to test with pickle
dcopy=pickle.loads(pickle.dumps(data_object))
# followed by assert to verify copy and original are equal

I can add the test code for TopMute easily of you want.  The taper objects, I think, are harder because we don't have any existing tests that I found.

Codecov Report

Merging #268 (c604a53) into master (d292827) will decrease coverage by 0.34%.
The diff coverage is 12.90%.

@@            Coverage Diff             @@
##           master     #268      +/-   ##
==========================================
- Coverage   47.89%   47.54%   -0.35%
==========================================
  Files         118      118
  Lines       15359    15505     +146
==========================================
+ Hits         7356     7372      +16
- Misses       8003     8133     +130

Impacted Files
Coverage Δ

cxx/include/mspass/algorithms/Taper.h
15.90% <0.00%> (-84.10%)
:arrow_down:

cxx/src/lib/algorithms/Taper.cc
46.99% <0.00%> (-1.20%)
:arrow_down:

cxx/test/taper/test_taper.cc
0.00% <0.00%> (ø)

cxx/python/algorithms/basic_py.cc
56.02% <23.45%> (-21.76%)
:arrow_down:

cxx/include/mspass/seismic/BasicTimeSeries.h
90.56% <100.00%> (ø)

Continue to review full report at Codecov.

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

Sure! I will work on it soon.


Fix IsoBuffer.from (0.35)

Note - there is already test "bufferToString working with IsoBuffer" for IsoBuffer (which is typed array).

i you want client packages 0.35 to get this change, it needs to be made is branch release/0.33, which is the branch common utils 0.27 is released from.

I can do that, but can't we release 0.27.2 (or whatever the latest) from here?

no, becuase the version of common utils in this branch is 0.28 which is a yet to be released version, and may not be compatible with 0.27

Ok, will do that, though I do not understand why would we bump a version of common-util and not consume it - that does not make sense to me. It's time bomb - we accumulate a bunch of changes and hope future consumption would be easy - it should be more incremental IMHO (bump version and consume latest every release, or not bump it).

agreed. whoever bumped it should consume it. super weird it's bumped but not used

Moving to 0.33 / https://github.com/microsoft/FluidFramework/pull/5378


I could create a program to decode and encode morse code using python.

Describe the solution you'd like
I would like to create a script which encodes text from English to morse code and vice versa

Hi @DhanushNehru this issue is resolved kindly review it in the PR thanks.


Kaia Nodit Rust SDK

Description
As a rustacean i'd love to work on implementing the Kaia Nodit.io RUST SDK,  With my experience in Rust, i will help developers to seamlessly integrate blockchain data into their Rust applications to leverage Nodit.io's services.

Ok approved


@vitejs/plugin-legacy modernPolyfill is not affected by target/browserslist/source code

Describe the bug
I'm using plugin-legacy to add polyfill for modern browsers. However, the polyfills used are always the same no matter what target or browserslist I set.
Then I add structuredClone method in main.js. Unfortunately, web.structured-clone is not added by plugin. It seems that what method I use in source code does not affect modernPolyfills, either.
I tried both 1.8.2 and 2.0.0-alpha.1
Reproduction
https://stackblitz.com/edit/vitejs-vite-gsrtkm
System Info
System:
    OS: Windows 10 10.0.22000
    CPU: (20) x64 12th Gen Intel(R) Core(TM) i7-12700H
    Memory: 4.26 GB / 15.70 GB
  Binaries:
    Node: 16.15.0 - C:\Program Files\nodejs\node.EXE
    npm: 8.9.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.22000.120.0), Chromium (101.0.1210.47)
    Internet Explorer: 11.0.22000.120
  npmPackages:
    @vitejs/plugin-legacy: ^1.8.2 => 1.8.2
    vite: ^2.9.9 => 2.9.9

Used Package Manager
npm
Logs
vite v2.9.9 building for production...
✓ 4 modules transformed.
rendering chunks (1)...[@vitejs/plugin-legacy] modern polyfills: Set(4) {
  'core-js/modules/es.array.iterator.js',
  'core-js/modules/web.dom-collections.iterator.js',
  'core-js/modules/es.promise.js',
  'core-js/modules/es.regexp.exec.js'
}
dist/assets/favicon.17e50649.svg           1.49 KiB
dist/index.html                            0.53 KiB
dist/assets/index.e9192aae.js              0.91 KiB / gzip: 0.53 KiB
dist/assets/index.06d14ce2.css             0.17 KiB / gzip: 0.14 KiB
dist/assets/polyfills-modern.e9f39d78.js   34.19 KiB / gzip: 14.12 KiB

Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

About browserslist, it is traced at #2476.
modernPolyfills not including structuredClone polyfill is a bug.

That is documented here.
https://github.com/vitejs/vite/tree/main/packages/plugin-legacy#modernpolyfills:~:text=targeting browsers with native ESM support
For that feature request, it is tracked at #6922.

Ah I see. Currently, modernpolyfills always targets to all browsers supporting ESM, no matter what targets are set. Thank you!


Matt Morgan will hit Kim Jong Un's Little Sister for 3!

Matt Morgan was killed!!
battle over
Matt Morgan goes first because of higher speed. 14.6125 vs 2.1
Matt Morgan is attacking
Matt Morgan will hit Kim Jong Un's Little Sister for 1!

Matt Morgan was killed!!
battle over
Matt Morgan goes first because of higher speed. 14.6125 vs 2.1
Matt Morgan is attacking
Matt Morgan hit a crit!
Matt Morgan will hit Kim Jong Un's Little Sister for 3!

Matt Morgan was killed!!
battle over
Matt Morgan goes first because of higher speed. 14.6125 vs 2.1
Matt Morgan is attacking
Matt Morgan hit a crit!
Matt Morgan will hit Kim Jong Un's Little Sister for 3!

Kim Jong Un's Little Sister will hit Matt Morgan for 64!
Matt Morgan was killed!!
battle over
Matt Morgan goes first because of higher speed. 14.6125 vs 2.1
Matt Morgan is attacking
Matt Morgan will hit Kim Jong Un's Little Sister for 1!

Matt Morgan will hit Kim Jong Un's Little Sister for 3!

They agree to be friends instead of fighting.

I added the ability feature flag different combat strategies.

Allows people to prototype their own alternate combat strategies
In the future we will be able to treat combat strategies as immutable when we make "balancing patches". For instance can test out a balancing patch for a week to see how it goes.
We could implement events like this: make meme combat strategies and turn them on for holidays and such


Remove ExperimentalCriticalPodAnnotation from featureflags

ExperimentalCriticalPodAnnotation is not used anymore within Kubernetes 1.16. On Windows, this is reported to cause the Kubelet to exit.
@deads2k @sjenning @ravisantoshgudimetla

/lgtm


Black screen on pop

MotionToast(
      dismissable: false,
      icon: Icons.error,
      primaryColor: CustomColors.red2,
      secondaryColor: CustomColors.red1,
      toastDuration: const Duration(seconds: 3),
      backgroundType: BackgroundType.solid,
      title: const Text(
        'Error',
        style: TextStyle(fontWeight: FontWeight.bold),
      ),
      description: Text(
        text ?? 'Unexpected Error.',
      ),
      position: MotionToastPosition.bottom,
      animationType: AnimationType.fromRight,
      height: 100,
      width: 350,
    ).show(context);

When I click the back button on any android phone, I got a black screen (If I did it in the moment that my MotionToast timer arrive to his end), Knowing that the PopScope is set to canPop: false, and the dismissable: false. I getting this issue in all my projects!!

@RawadZogheib I just published a new version 2.8.0, update the motion toast package you have and let me know if the problem persist


fixed TypeError being thrown due to lack of arguments

Hello, I am cpyberry.
If you happen to have a free moment, I'd be very glad if you could give me your opinion.
Contents

changed the number of arguments to be taken in search.py to 3

Reasons

search function requires three arguments, but did not have only one passed

cd cities-api
python ./search.py "sao paulo"

Traceback (most recent call last):
  File "./search.py", line 31, in <module>
    print(search(query))
TypeError: search() missing 2 required positional arguments: 'query' and 'populate'

That's a good suggestion
Thank you


[ISSUE #348] Setup automated workflows for greetings

ISSUE #348
By setuping the GitHub Greetings workflow, we can:

Accurately identify new users and contributors
Encourage new users and contributors
Attract new users and contributors to the WeChat Group and our mailing lists

Hi @xwm1992 @qqeasonchen, please review this PR and let me know if you have any questions. Thanks.

Hi @SteveYurongSu I want to know that is this greeting action will be triggered on each pull request & issue and emailling to all of us?

@xwm1992
This GitHub Action will only be triggered when:

new users opening their first issues in this repo

new contributors submitting their first PRs in this repo

The GitHub Bot will automatically leave a comment which is defined in 'greetings.yml' for these issues / PRs. We will not be notified unless we subscribe to the mailing list that follows all issues / PRs.


Example for visualizing with pycortex?

Hello, thanks again for this wonderful dataset!
Apologies if this is a basic question but I have been struggling to visualize the results of the encoding model (specifically the test correlations in corrs.npz) as a flatmap using pycortex. I see that you've kindly provided the anatomical files for each subject, but when I try to load them in (e.g. following the docs here) the directory structure doesn't seem to align for visualization.
Is it possible to visualize the resulting corrs with the provided data or is some of the necessary anatomical information missing? Thanks a bunch!
Best,
Chandan

Ah I did figure it out! Thanks for providing all the files :)
All it took was pointing the cortex config filestore to the ds003020/derivative/pycortex-db directory and then passing the right xfmname (e.g. for subject 'UTS03', the xfmname is 'UTS03_auto' when visualizing.


Mapping from torchvision transforms to FFCV transforms

Dear Authors,
Is there is 1 to 1 mapping from the image transforms that are supported by torchvision and those of ffcv, more specifically, when I see this page - https://docs.ffcv.io/api/decoders.html#ffcv.fields.decoders.CenterCropRGBImageDecoder - I see that a lot of these are very similar to the ones that torchvison has, since we want an equivalent dataloader in both ffcv and pytorch, here is a list of torchvison transforms - https://pytorch.org/vision/0.8/transforms.html - just adding this here for reference.
The above context brings me to specific question that I had - I want to do a simple resize of images, how do I do that in ffcv, I see here that https://docs.ffcv.io/api/decoders.html#ffcv.fields.decoders.CenterCropRGBImageDecoder - there is a center crop but that does cropping first and then resizing, can I just have an op which does a simple resize?
In a broader context, if someone can provide some common torchvison transforms followed by their equivalent ffcv counterparts, that would be super useful!
Thanks for your time!

You can probably use ffcv.fields.decoders.RandomResizedCropRGBImageDecoderand set scale=(1.0, 1.0) and ratio=(1.0, 1.0). I agree there should be a ResizeDecoder though


Support running as task daemon

draft API:
taskr := gronx.NewTasker()

taskr.Task("*/5 * * * *", func (ctx Context) {
})
// ... add more tasks

// run tasker and triggers the task when each of them are due
taskr.Run()

closed by #3


FormBuilderRangeSlider terrible performance when in scrollable container

Using FormBuilderRangeSlider widget inside a SingleChildScrollView widget that has physics: const AlwaysScrollableScrollPhysics() leads to performance issues when trying to drag the handles around. It seems to interfere with scrolling up and down the page (or the scrollable container). Interestingly, FormBuilderSlider does not lead to any issues.

Flutter version: 3.0.3
Plugin version: 7.3.1
Example:
import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:solli/model/models/job.dart';
import 'package:flutter_form_builder/flutter_form_builder.dart';

class EditJobScreen extends StatelessWidget {
  EditJobScreen({
    Key? key,
  }) : super(key: key);

  final _formKey = GlobalKey<FormBuilderState>();

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: const Text('Test')),
      body: Scrollbar(
        child: SingleChildScrollView(
          physics: const AlwaysScrollableScrollPhysics(),
          child: Padding(
            padding: const EdgeInsets.symmetric(
              vertical: 20.0,
              horizontal: 20.0,
            ),
            child: Column(
              crossAxisAlignment: CrossAxisAlignment.start,
              children: [
                FormBuilder(
                  key: _formKey,
                  autovalidateMode: AutovalidateMode.disabled,
                  child: Column(children: [
                    FormBuilderSwitch(
                      name: 'active',
                      initialValue: true,
                      title: Text(
                        'Active',
                        style: Theme.of(context).textTheme.headline5,
                      ),
                      decoration: const InputDecoration(
                        border: InputBorder.none,
                      ),
                    ),
                    FormBuilderRangeSlider(
                      name: 'hours',
                      min: 0,
                      max: 40,
                      // divisions: 40,
                      decoration: const InputDecoration(
                        border: InputBorder.none,
                        labelText: 'Hours per week',
                      ),
                      initialValue: const RangeValues(0.0, 40.0),
                    ),
                    FormBuilderSlider(
                      initialValue: 1,
                      min: 0,
                      max: 40,
                      name: '',
                    ),
                    Container(
                      height: 800,
                      color: Colors.grey,
                    )
                  ]),
                ),
              ],
            ),
          ),
        ),
      ),
    );
  }
}

Hi @rensvis. Thanks for your contribution.
Seems a interesting bug to take a look.
Related to this file, maybe is related with some Flutter bug or a widget arrange in this package.
Feel free to comment or open a PR if you solve this error.

I test with Flutter 3.7.12 and package version: 7.8.0 and works fine
Screencast from 22-04-23 16:48:56.webm


COMP: Use GNU tar and extract only relevant files

Fixes the following error:
./macpython-download-cache-and-build-module-wheels.sh: line 81: /Users/svc-dashboard/D/P/ITKPythonPackage/scripts/macpython-install-python.sh: No such file or directory Building module wheels
./macpython-download-cache-and-build-module-wheels.sh: line 85: /Users/svc-dashboard/D/P/ITKPythonPackage/scripts/macpython-build-module-wheels.sh: No such file or directory

👍


Some automation features

Have some ideas/requests pending on my mind:

Automatic Trading Post: literary SC2 conversion; new (more expensive) building; obviously avaliable only for human players.
Automatic Recruitment Center: simillary - a building that would allow auto-recruitment of troops (as long as merc. post/barracks/cathedral are present), possibly with settings for: max troop limit, priority setting and minimal gold amount after which recruitment trigers.
Key shortcut for cathedral.

From my understanding adding new buildings is not practical.
1 seems good, but I think if we are changing the interface (to add the building to the menu) it would be better to just allow the player to type the amount they wish to sell.
2. I'm not sure what I think about this, I especially think it would not be good in a multiplayer situation, however in single player I guess I can just not use it...
3. I agree, there are a few other things I'd like hotkeys for too (greatest lord screen for example)

This was already several suggested and discussed several times https://github.com/Sh0wdown/UnofficialCrusaderPatch/issues/36 is the original post (but in German, but other posts popped up and were closed as duplicate. I think, I sometime ago read, that there is an external tool for the auto-marketplace, but I could not find it. Anybody?
There was the idea to recruit multiple troops via shift-click (I don't find the post), I would prefer this over the auto-recruitment feature.
More shortcuts were already suggested, but I still would love this :) The SHCPlayer from @JuGGerNaunT on ModDB has a hotkey plugin, but apparently is incompatible to the UCP, so I guess these are not the droids you are looking for.

Would love to see the link, too.
Number 2. came to mind after I tried to, kind of, roleplay as a Snake and I realised I have too much things to do to recruit troops as fast as my economy (and people growth) allows. This aplies often to any low cost units: monks, archers, spearmen, etc. Shift-click (or any external multiclick macro) doesn't solve this beacause the problem is in +24 pop limit blocking army recruitment, not recruitment speed itself.
We actually have something similar to proposed No.2 already implemented in Extreme: outposts. Putting some logic to only recruit troops when weapons/gold is avaliable and allowing player to choose kind of recruited troop could be a good start.

Also:
4. Have L key not only focus on lord but also choose him (best: after second key hit).

My friend I previously suggested these are the automatic ideas for the Stronghold Crusader 1

Automatically sell goods: from a warehouse, from a barn from an arsenal. Choose the number of products sold
Automatically buy goods: at a warehouse, in a barn in
arsenal. Choose the amount of purchased goods.
I agree about the automatic recruitment of the army. It’s necessary.
Add automatic repair of towers, walls, gates
ADD automatic re-location of wolf pits
Add the automatic appearance of dogs in the cage. at least three times.
Add automatic RESET resin to the ground
Add selection of all workshops of the same type
Add with one click to change the produced weapons
Make the button "Send on vacation" for each individual building
Make a change to the produced weapon by pressing the keys 1 and 2. For example, on the number 1 - bow to 2 - crossbow
So that the goods that were extracted do not disappear if you send the employee on vacation.
Add the ability to hire IMMEDIATELY 5, 10, 24 units at once.
Ctrl + z key combination - all buildings of this type on the map
Double-clicking on a building with a mouse - selects all buildings of a given type within the visible part of the player’s screen.
Increase the range of action of the healer. It's great he began to heal units and lords, but let him now increase the range.
Let the delete button work like the destruction of a building.
Button - c is the abort action of the stop. Button - and this is an aggressive attack position. Knopka d is a passive defense.

Дружище я предлагал ранее вот какие автоматические идеи для Стронгхолд Крестоносец 1

Автоматически продавать товары: со склада, из амбара из арсенала. Выбирать количество продаваемых товаров
Автоматически покупать товары: на склад, в амбар в
арсенал. Выбирать количество покупаемых товаров.
Про автоматический набор армии согласен. Надо такое.
Добавить автоматический ремонт башен, стен, ворот
ДОбавить автоматическое ПОВТОРНОЕ расположение волчьих ям
ДОбавить автоматическое появление псов в клетке. хотябы на три раза.
7)Добавить автоматическое ПОВТОРНОЕ расположение смолы на земле
Добавить выделение всех мастерских одного типа
ДОбавить одним нажатием клавиши менять производимое оружие
СДелать кнопку "Отправить в отпуск" для каждого отдельного здания
Сделать изменение производимого оружия нажатием клавиш  1 и 2. Например на цифре 1 - лук  на   2 - арбалет
Чтоб товары которые были добыты не исчезали если ты отправляешь работника в отпуск.
ДОбавить возможность нанимать СРАЗУ по 5, 10, 24 юнита сразу.
КОмбинация клавиш  ctrl +z  - все здания этого типа на карте
ДВойное нажате мышью на здание - выделение всех зданий данного типа в пределах видимой части экрана игрока.
16 ) Увеличить диапазон действия лекаря. Это здорово он стал лечить юнитов и лорда но пускай он теперь и диапазон увеличит.
Пусть кнопка delete работает как уничтожение здания.
Кнопка - c это отмена действий стоп. Кнопка - а это агрессивная позиция атака . КНопка д - это пассивная оборона.


⚠ Bofrost.be has degraded performance

In 26dcaa3, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 2366 ms

Resolved: Bofrost.be performance has improved in 5086bda.


Make sure event isn't null to avoid nil object errors

As seen on issue #15 , seems like the codec receives nil objects that cause the errors.
While this is the easy fix, it might be better to understand why we're getting nil events.

Any progress on this guys?

Thanks for your good effort @amit-o
I tip my hat to you 🎩


standalone/io/http_server_response_test is flakily crashing

From this vm-linux-debug-simmips-be log:
FAILED: none-vm-checked debug_simmips standalone/io/http_server_response_test
Expected: Pass
Actual: Crash
CommandOutput[vm]:

stderr:
../../runtime/vm/scavenger.cc: 239: error: expected: to_->Contains(RawObject::ToAddr(obj))
Dumping native stack trace for thread d39
Aborting re-entrant request for stack trace.
../../runtime/vm/os_thread_linux.cc: 401: error: pthread error: 35 (Resource deadlock avoided)
Aborting re-entrant request for stack trace.

Command[vm]: DART_CONFIGURATION=DebugSIMMIPS out/DebugSIMMIPS/dart --enable_asserts --enable_type_checks --short_socket_write --ignore-unrecognized-flags --packages=/mnt/data/b/build/slave/vm-linux-debug-simmips-be/build/sdk/.packages /mnt/data/b/build/slave/vm-linux-debug-simmips-be/build/sdk/tests/standalone/io/http_server_response_test.dart
Took 0:00:06.209282

Short reproduction command (experimental):
    python tools/test.py -asimmips --checked -t480 standalone/io/http_server_response_test

This issue has been last updated 252 days ago. Please consider investigating whether it is still meaningful and if not close it. If the issue is still meaningful please find a relevant owner. Thank you.


Untested code released - please check!!!

I suppose despite being a Microsoft project nobody tested the code on Windows environment before releasing it here..:(.
For example:
1)On Lightspeech the build process from requirements.txt fails on numpy
###########
error:
[end of output]
    note: This error originates from a subprocess, and is likely not a problem with pip.
    ERROR: Failed building wheel for numpy
    Running setup.py clean for numpy
    error: subprocess-exited-with-error

    python setup.py clean did not run successfully.
    exit code: 1

    [10 lines of output]
    Running from numpy source directory.

    `setup.py clean` is not supported, use one of the following instead:

      - `git clean -xdf` (cleans all files)
      - `git clean -Xdf` (cleans all versioned files, doesn't touch
                          files that aren't checked into the git repo)

    Add `--force` to your command to use it anyway if you must (unsupported).

    [end of output]

    note: This error originates from a subprocess, and is likely not a problem with pip.
    ERROR: Failed cleaning build dir for numpy
  Failed to build numpy
  ERROR: Could not build wheels for numpy, which is required to install pyproject.toml-based projects
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error
× pip subprocess to install build dependencies did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
##########

The code of

LightSpeech\tasks\base_task.py", line 13
is wrong, had to change from
from pytorch_lightning.logging import TensorBoardLogger
no module exists with this name pytorch_lightning.logging
to:
from pytorch_lightning.loggers import TensorBoardLogger
PLEASE TEST / CHECK AGAIN THE CODE FROM THE Priorgrad and Lightspeech modules on windows environments

The code is built and tested on Linux by default. Modifications or API changes should be made on other platforms in your practice.


[stable/airflow] fix service name typo in notes

Signed-off-by: Study Hsueh<EMAIL_ADDRESS>
What this PR does / why we need it:
Fixes service name airflow-web typo in NOTES.txt
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/ok-to-test

/assign
/lgtm


Impersonating feature

...
needed for solving issues for a specific user .
imo.

Can you please provide a description of the feature you are requesting?
Or explain what it is supposed to do?
Preferably with some examples of how to implement it (or at least some links to examples/docs).


The colab is not working anymore

It seems like the colab is not working anymore, possibly due to some updated python packages?

Try this, it should work (Works for me):
load_samples = True

print("Installing Packages and Dependencies\nPlease wait 2-3 minutes")
!npm install localtunnel
!apt install libasound2-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg -y

print("Installing main packages...")
!pip install torch==2.1.1+cu118 torchaudio==2.1.1+cu118 --index-url https://download.pytorch.org/whl/cu118
print("Installing XTTS-V2 API SERVER...")
!pip install xtts-api-server
print("Force reinstalling numpy packet... 'numpy==1.26.2'...")
!pip install --force-reinstall numpy==1.26.2

# Install cloudflare as alternative
!wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
!apt install ./cloudflared-linux-amd64.deb aria2 -y
!rm cloudflared-linux-amd64.deb

# Deepspeed
print("Installing deepspeed...")
!pip install deepspeed

# copy exaple sample
if load_samples:
    print("Creating folder... 'speakers'...")
    !mkdir speakers

print("Finally, done!")

Try using my code:
print("Installing Packages and Dependencies\nPlease wait...\n\n")

# =-=-=-=-=-=-=-=-=-=-=-=-=-=- DO NOT EDIT CODE HERE =-=-=-=-=-=-=-=-=-=-=-=-=-=-
# NPM Update
print("Updating npm...")
!npm install -g<EMAIL_ADDRESS>
# Localtunnel
print("Installing localtunnel...")
!npm install localtunnel

# Linux packages
print("Installing audio dependencies and other required packages...")
!apt install libasound2-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg -y

# PyTorch
print("Installing main packages...")
!pip install torch==2.1.1+cu118 torchaudio==2.1.1+cu118 --index-url https://download.pytorch.org/whl/cu118

# TTS for API Server
print("Installing TTS...")
!pip install TTS

# XTTS API Server
print("Installing XTTS API Server...")
!pip install --upgrade xtts-api-server

# Numpy
print("Reinstalling numpy...")
!pip install --force-reinstall numpy==1.26.2

# Deepspeed library installation
print("Installing deepspeed...")
!pip install deepspeed

# Install cloudflare as alternative
print("Installing cloudflare...")
!wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
!apt install ./cloudflared-linux-amd64.deb aria2 -y
!rm cloudflared-linux-amd64.deb

# Create speakers folder for TTS voices
print('Creating folder named "speakers"...')
!mkdir speakers

# Done
print("-" * 21)
print("-->\t\tFinally, done!")
print("-" * 21)
print("Now you can start next cell.")
print("-" * 21)
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

# TTS Code
import subprocess
import re

use_deepspeed = True
Tunnel = "localtunnel"
Model_version = "v2.0.3"
Model_source = "local"

# =-=-=-=-=-=-=-=-=-=-=-=-=-=- DO NOT EDIT CODE HERE =-=-=-=-=-=-=-=-=-=-=-=-=-=-
group = 1
host = "<IP_ADDRESS>"

def pip_list_comma_separated():
    result = subprocess.run(['pip', 'list'], stdout=subprocess.PIPE)
    pip_list_output = result.stdout.decode('utf-8')
    lines = pip_list_output.splitlines()

    package_lines = lines[2:]
    packages = [line.split()[0] for line in package_lines]
    comma_separated_packages = ', '.join(packages)

    print(comma_separated_packages)

# Display installed libraries
print("-" * 21)
print("Displaying installed libraries...")
pip_list_comma_separated()
print("-" * 21)

# Starting a tunnel.
print(f"Starting tunnel using {Tunnel}...")
if Tunnel == "cloudflare":
    #subprocess.Popen(['cloudflared', '--url', 'http://<IP_ADDRESS>:8020'], stdout=open('lt.log', 'w'), stderr=subprocess.STDOUT)
    group -= 1
else:
    #subprocess.Popen(['npx', 'lt', '-p', '8020'], stdout=open('lt.log', 'w'), stderr=subprocess.STDOUT)
    print()

print("Checking...")
tunnel_url = ''

# Open the file for reading.
print("Reading tunnel log...")
with open('lt.log', 'r') as testwritefile:
    log_content = testwritefile.read()
    url_match = ""

    # Use regular expressions to find the URL.
    if Tunnel == "cloudflare":
        url_match = re.search(r'https:\/\/[a-z-]+\.trycloudflare\.com', log_content)
    else:
        url_match = re.search(r'your url is: (https?://\S+)', log_content)

    if url_match:
        tunnel_url = url_match.group(group)
        print(f"Your url for SillyTavern: {tunnel_url}")
    else:
        print("URL not found.")

if Model_source == "api":
    host = "<IP_ADDRESS>"

if Tunnel == "localtunnel":
    print("Fetching your public IP address...")
    !curl ipv4.icanhazip.com

print("\n" + "-" * 21)

# Deepspeed
deepspeed_flag = ""
if use_deepspeed:
    deepspeed_flag = "--deepspeed"

# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# Start API server.
print("Starting API server...")
!python -m xtts_api_server {deepspeed_flag} -hs {host} -t {tunnel_url} -ms {Model_source} -v {Model_version}
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Cool thanks. Hoping this project stays maintained

No problem, I also hope they don't abandon this project because I use this TTS for my private AI and would be saddened by a change to another solution.

Still broken

import subprocess
import re
print("Installing Packages and Dependencies\nPlease wait...\n\n")

# =-=-=-=-=-=-=-=-=-=-=-=-=-=- DO NOT EDIT CODE HERE =-=-=-=-=-=-=-=-=-=-=-=-=-=-
# NPM Update
print("Updating npm...")
!npm install -g<EMAIL_ADDRESS>
# Localtunnel
print("Installing localtunnel...")
!npm install localtunnel

# Linux packages
print("Installing audio dependencies and other required packages...")
!apt install libasound2-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg -y

# XTTS API Server
print("Installing XTTS API Server...")
!pip install --upgrade xtts-api-server

# Numpy
print("Reinstalling numpy...")
!pip install --force-reinstall numpy==1.26.2

# Deepspeed library installation
print("Installing deepspeed...")
!pip install deepspeed

# Install cloudflare as alternative
print("Installing cloudflare...")
!wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
!apt install ./cloudflared-linux-amd64.deb aria2 -y
!rm cloudflared-linux-amd64.deb

# Create speakers folder for TTS voices
print('Creating folder named "speakers"...')
!mkdir speakers

# TTS Code
use_deepspeed = True
Tunnel = "localtunnel"
Model_version = "v2.0.3"
Model_source = "local"

# =-=-=-=-=-=-=-=-=-=-=-=-=-=- DO NOT EDIT CODE HERE =-=-=-=-=-=-=-=-=-=-=-=-=-=-
group = 1
host = "<IP_ADDRESS>"

def pip_list_comma_separated():
    result = subprocess.run(['pip', 'list'], stdout=subprocess.PIPE)
    pip_list_output = result.stdout.decode('utf-8')
    lines = pip_list_output.splitlines()

    package_lines = lines[2:]
    packages = [line.split()[0] for line in package_lines]
    comma_separated_packages = ', '.join(packages)

    print(comma_separated_packages)

# Display installed libraries
print("-" * 21)
print("Displaying installed libraries...")
pip_list_comma_separated()
print("-" * 21)

# Starting a tunnel.
print(f"Starting tunnel using {Tunnel}...")
if Tunnel == "cloudflare":
    subprocess.Popen(['cloudflared', '--url', 'http://<IP_ADDRESS>:8020'], stdout=open('lt.log', 'w'), stderr=subprocess.STDOUT)
    group -= 1
else:
    subprocess.Popen(['npx', 'lt', '-p', '8020'], stdout=open('lt.log', 'w'), stderr=subprocess.STDOUT)
    print()

print("Checking...")
tunnel_url = ''

# Open the file for reading.
print("Reading tunnel log...")
with open('lt.log', 'r') as testwritefile:
    log_content = testwritefile.read()
    url_match = ""

    # Use regular expressions to find the URL.
    if Tunnel == "cloudflare":
        url_match = re.search(r'https:\/\/[a-z-]+\.trycloudflare\.com', log_content)
    else:
        url_match = re.search(r'your url is: (https?://\S+)', log_content)

    if url_match:
        tunnel_url = url_match.group(group)
        print(f"Your url for SillyTavern: {tunnel_url}")
    else:
        print("URL not found.")

if Model_source == "api":
    host = "<IP_ADDRESS>"

if Tunnel == "localtunnel":
    print("Fetching your public IP address...")
    !curl ipv4.icanhazip.com

print("\n" + "-" * 21)

# Deepspeed
deepspeed_flag = ""
if use_deepspeed:
    deepspeed_flag = "--deepspeed"

# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
# Start API server.
print("Starting API server...")
!python -m xtts_api_server {deepspeed_flag} -hs {host} -t {tunnel_url} -ms {Model_source} -v {Model_version}
# =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

@yoshuzx I hope it's working for you again because it's working (somehow) for me.

Hi,
I'm having an issue with the Colab where I believe it is running properly (I get as far as being able to play back voice samples on the SillyTavern UI) but when I try to generate audio, either for a new message or playback of an existing message, I get the error "TypeError: NetworkError when attempting to fetch resource."
Also, when I set up the localtunnel link to the TTS API on the Colab, the voice options and sample audio playbacks are only available for a few seconds or so before the portal seems to stop working and it says I need to recheck my API connection.
Trying this on the staged version of SillyTavern right now. I can replicate my run of the Colab book if needed, but if you have a simple quick fix based on the info I've provided, that would be super helpful. Thanks!

still broken for me


Face colour

The face colours are still a bit weak. The orange, especially, blends in with the wood grain. The wood grain is hard to see, so maybe a pattern would work better.
Should we change the font for each puzzle in a set? Change the colour or style of the dividers?
The goal is to make it easy to sort through a pile of blocks and pull out the ones for a particular puzzle.

[ ] text control for puzzle set to enter background colour
[ ] choose face colours based on background colour
[ ] frame titles with background colour in clue booklet
[ ] text control for puzzle pair to enter front's background colour
[ ] choose back's background colour 180° from front's, but keep pattern for now
[ ] document how to use background colour

Current plan: drop meaningful colours in the set, like green for easy and red for hard. Choose a background colour for both sides, then space the face colours evenly around the hue circle. The face colours can be: 1. white, 2. transparent, 3 - n. evenly spaced around the hue circle, away from the background hue.
Add a control to pick the background colour for the puzzle set, then calculate all the face colours based on that. First control can be a text field where you enter a hex code.

I think saturation of 1/3 and value of 2/3 looks pretty good.

If I end up with the final collections described in #41, I will need 14 background colours:

set 1 - 0°
pair 1 9x9 - 51° and 231°
pair 2 11x11 - 103° and 283°
pair 3 13x13 - 154° and 334°
set 2 180°
pair 4 9x9 - 129° and 309°
pair 5 11x11 - 26° and 206°
pair 6 13x13 - 77° and 257°


Fatal lints

I'd like to be able to make lints fatal (non-zero exit code) without writing a wrapper to scrape the output. A --fatal-lints would do the trick as well as something in .analysis_options.

Seems this is already implemented (not tried myself yet) #24452

AFAICT, that lets you have fatal warnings and hints, but not lints. Flutter still wraps the analyzer in a script that checks for lint outputs because the exit code is 0 when there are only lints. I'm testing with
dartanalyzer version 1.15.0-dev.4.0

/cc @sethladd

If nobody is fundamentally opposed to it, I'll take a stab at adding the option.

Contributions are always welcome!
If "fatal" just means a non-zero error code from the command-line analyzer, then it makes more sense to me for it to be a command-line analyzer flag.

PR is out for review.


Fixes https://github.com/SAP/openui5/issues/617

This is my very first pull request, hopefully I don't mess this up, please go easy on me :)

 You should sign our Contributor License Agreement in order to get your pull request merged.

As the related issue has been closed already I also close this pull request. Please feel free to reopen.


Rethinking Juliawin

Problematic aspects of Juliawin

Currently releasing Juliawin from my home computer is not sustainable or auditable (from a security standpoint).
Also, Juliawin needs to find a way to become somewhat cross-platform. My initial tests in https://github.com/heetbeet/juliawin/tree/moving-over-to-bash-centric-environment seems like the best way to go cross platform is to move all the glue over to bash, and to add GitSCM as a hard dependency for windows users (not ideal though, since GitSCM adds ~50mb dependencies).
The code for Juliawin is a spaghetti mess with a mixture of both downloading and setting up the environment, making entry points to the portable applications, and doing portability cleaning and environment fixing. We need to fix this situation

Rethinking the model
I'm playing around with Github Actions and the following pipeline needs to be set up in order for this product to survive and not require constant maintenance:
Actionables

Remove all code that downloads external artifacts and move this over to a Github Action build step

e.g. run choco install tcc to get tcc
e.g. get rcedit artifacts from https://github.com/electron/rcedit
e.g. use https://github.com/julia-actions/setup-julia to retrieve julia and then just copy it into packages
e.g. just pirate GitSCM directly from the %ProgramFiles% directory
e.g. run suisei-cn/actions-download-file@v1 to download and extract vscode and friends

Maybe zip and keep a Github link for each program in packages/<program> so that you can retrieve it externally as dependencies when we want to
Maybe add a simple commandline tool to do simple feature installations and removals

e.g. juliawin install [vscode/pluto/pycall/ijulia]
e.g. juliawin remove [vscode/pluto/pycall/ijulia]
e.g. juliawin upgrade [vscode/pluto/pycall/ijulia]
e.g. juliawin force-julia-version 1.6.3

While we are inventing the wheel, we should probably just use julia from https://github.com/JuliaLang/juliaup to get all the julia versioning features
Maybe use instruction configurations like a pluto.yaml or a vscode.yaml to do the feature installation dirty work (how do others do it?), add things like

Entry point wrappers + their icons
Code that needs to be run to install the feature and all it's dependencies

Build a mechanism that can move the original packages/julia to packages/julia_backup and use it as a fallback when juliawin force-julia-version fails (do this only for the original julia that come with the original installer)
Build ready made installers that have made a few feature choices on your behalf: steal everything useful to create exe installers from https://github.com/heetbeet/juliawin-create-releases/blob/main/scripts/make_release_from_scratch.py and chuck the rest
Let this pipeline flow into Juliawin release cycle

Take away

Juliawin started as a script that can be run on Windows without any dependencies and do all the downloading, unpacking and glueing together on the user's behalf.
This model is very flawed and not ideal, you want everything that can go wrong be vetted in the build process, and give the user a clean installer to get things started.
We gradually moved over to providing installers, but the code for generating these installers is a complete manual mess: https://github.com/heetbeet/juliawin-create-releases
We should focus on being as lazy as possible for our implementation, use other good well-vetted projects like chocolatey, GithubActions, juliaup etc. to do the heavy lifting.

I would also add ability to upgrade a current installation.

By the way, Why bash and not PowerShell?


Get started with SharePoint webhooks Documentaion

Category
Question
Insufficient
When working through the article Get started with SharePoint webhooks. The section on "Step 1: Register a Microsoft Azure Active Directory (AD) application for Postman client" is woefully inadequate. All the other steps take you through step by step but this just leaves you on your own. Do you create a new Azure App? What are the setting that is asks for e.g. SIGN-ON URL, APP ID URI? When you need to  "To access SharePoint Online, it's important to grant the Azure AD app permissions to the Office 365 SharePoint Online application and select the read and write items and lists in all site collections permission." Is this Application Permissions or delegated.
A link off to an out of context article is not sufficient. I am now stuck in the middle of the article trying to connect Postman which is failing without knowing if the Azure AD connection is correct.

@WhereCodeGoesToDie The idea is that we don't want to duplicate content and store the same content and maintain two versions of such article. And thus the reason to provide a link to the AAD doc. What exactly is failing? Are you able to authenticate to your AAD tenant from Postman initially to get the token?
The paragraph states what you need to input as well:

In order for the Postman client to communicate with SharePoint, you will need to register an Azure AD app in your Azure AD tenant associated with your Office 365 tenant.
To access SharePoint Online, it's important to grant the Azure AD app permissions to the Office 365 SharePoint Online application and select the read and write items and lists in all site collections permission.
Enter the following endpoint as the Reply (Redirect) URL for the app. This is the endpoint to which Azure AD will send the authentication response; including the access token if authentication was successful.
https://www.getpostman.com/oauth2/callback
The following properties are required in later steps, so copy them to a safe place:

Client Id
Client Secret

@chakkaradeep thank you very much for your reply. I would still ascertain that the relevant parameters to set when creating the AAD are not given. What is the SIGN-ON URL or the APP ID URL required to create the AAD? What section of the document linked to are relevant?
I have followed the instructions given and when I try to connect via Postman I am given "Could not complete OAuth Login" I am able to connect to the SharePoint Online site using the given credentials.

@chakkaradeep  here is a brilliant example of what the current article is missing

Thanks for the feedback @WhereCodeGoesToDie. We are investigating this issue.


Fixed #35690 -- Raise TypeError if QuerySet.in_bulk is called after QuerySet.values or QuerySet.values_list.

Trac ticket number

35690
Branch description
When calling QuerySet.values() followed by QuerySet.in_bulk(), an AttributeError is raised, which doesn't directly give the user feedback on how to resolve the error or what the user even did wrong. This adds an additional check and raises a TypeError with the appropriate message.
I can try and define the behavior, but I wanted to submit the simpler pull request for review before working on a more complicated fix.
Let me know if docs are required. A simple short note on the in_bulk method might be sufficient.
Checklist

[x] This PR targets the main branch.
[x] The commit message is written in past tense, mentions the ticket number, and ends with a period.
[x] I have checked the "Has patch" ticket flag in the Trac system.
[x] I have added or updated relevant tests.
[ ] I have added or updated relevant docs, including release notes if applicable.
[ ] I have attached screenshots in both light and dark modes for any UI changes.

Force-pushed changes to test to make them more complete.


Suppress certain warnings in inactive #if regions without relying on IfConfigDecl

For a few categories of warnings, we currently look through inactive code (represented by IfConfigDecl) to try to determine whether there are other configurations of code that might not have the warning. If we find evidence of that, we suppress the warning. This includes, e.g.,

Warnings about variables that are set but never used
Warnings about mutable variables that are never mutated
Warnings about do..catch blocks with no "try" or "throw" inside them

For example, we don't warn about the lack of try/throw in this code:
do {
  #if DEBUG
  try foo()
  #endif
} catch {
  // ...
}

even if DEBUG is not set.
Reimplement this suppression mechanism in terms of the pure syntax tree with SwiftIfConfig deciding which regions are inactive. This eliminates a dependency on having the inactive clauses represented in an IfConfigDecl as well as expanding the suppression to "unparsed" code:
do {
  #if compiler(>=7.0)
  try foo()
  #endif
} catch {
  // ...
}

@swift-ci please smoke test

@swift-ci please smoke test


Iv 3788 handle json input with byte order mark

Code Coverage is 82.3%, details at https://s3.amazonaws.com/rs-code-coverage/rsc/2016-01-14_554_Coverage-82.3.txt (sometimes the URL can take a few minutes to be available)


Will the releases be updated to v2?

Hi, I noticed there's be some recent changes to master including the use of oauth.  Seems to work well and wondered if the releases will be updated from v1 to v2, as the readme.md currently uses v2 (which doesn't seem to exist)?
uses: tailscale/github-action@v2

But v1 here.
https://github.com/tailscale/github-action/releases
As an aside, is there any plans for us to be able to choose latest as a version to install, e.g.
- uses: tailscale/github-action@main
    with:
      oauth-client-id: ${{ secrets.TS_OAUTH_CLIENT_ID }}
      oauth-secret: ${{ secrets.TS_OAUTH_SECRET }}
       version: latest

We submitted the OAuth code last night, applying the v2 tag and a changelog notification is intended for today.

As an aside, is there any plans for us to be able to choose latest as a version to install, e.g.

The tradeoff we face is:

most new Tailscale features like SSH or audit logs or so forth don't really benefit the narrow niche of CI runners
literally every time we update the client version in this github-action, we get a burst of problem reports attributing every problem with GitHub to the new Tailscale version

So we settled into a cadence where we skip a few Tailscale releases between updates of the Action. We maintain backwards compatibility with prior Tailscale versions for a very, very long time (we still support the few remaining nodes running version 0.9.0), so CI runners a few versions back will interoperate with the rest of the tailnet a few versions forward.

That's great thanks.  I'd seen a few updates to main over the months so wasn't sure whether to follow main on the action or the versions.  I like to live dangerously...
I get your point on the trade-offs.  I imagine the downtime currently happening with GitHub now will be attributed to your release!  But appreciate the answer, and makes sense.  If it's being updated gradually then I'm all good with that.

The v2 tag has been pushed and the ChangeLog published.