Pasting into market description changes text/links

When pasting a text from Notion, you have two choices:

Paste, which results in Notion paragraphs being ignored.
Paste with style, which results in links being printed as [name](url).

Is there a way to paste text or make some change to the description editor so we can paste text with style in a way which doesn't kill links?

Can you give an example of the notion formatting?

https://www.notion.so/zeitgeistpm/85495dd4fcb94fe4a0fb21b5cc3a32a3?v=bcf986f56fd54204b07781ee85e6293e&p=cc7d79922502471b8ddbefae95d9d3d7&pm=s


Extension UI mixes with editors

two editors open
endup in the extension viewlet
select an extension
you have the extension 'viewlet', a code editor, and an extension view which looks all wrong

Dup of #7961


Pool settings confusing in 0.14 (IdleTimeout)

Version 3 upgrade docs for generic-pool are extremely vague and unclear on many changes. One of these changes is a new setting called evictionRunIntervalMillis which essentially equals the old reapInterval setting. Unfortunately knex test suite did not cover this in #2208.
In short the setting is used to start a timer which checks two other settings: idleTimeoutMillis and softIdleTimeoutMillis.
In generic-pool v2 this timer has a default value of 1000ms. In v3 however, it defaults to 0, which is the same as "never run any checks". This results in quite the breaking change since existing applications would expect idleTimeoutMillis to still work out of the box, but such is not the case anymore.
While this is not directly a knex issue, I still want to suggest that we update the docs to reflect this change, as it most likely affects a whole lot of applications that are currently using knex.
Reference: https://github.com/coopernurse/node-pool/issues/178
Will move to doc repo if agreed.

CC @elhigu

Awesome!


Bump to 0.9.

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


Implementation of CAN

Initial commit of CAN implementation for the ICML 2023 Topological Deep Learning Challenge

Hello @L-Scofano  ! Thank you for your submission. As we near the end of the challenge, I am collecting participant info for the purpose of selecting and announcing winners. Please email me (or have one member of your team email me) at<EMAIL_ADDRESS>so I can share access to the voting form. In your email, please include:

your first and last name (as well as any other team members)
the title of the model you implemented
the domain of the model you implemented
your pull request number (#112)

Before July 13, make sure that your submission respects all Submission Requirements laid out on the challenge page. Any submission that fails to meet this criteria will be automatically disqualified.


HA reports range in miles/km unpredictably

USA Hyundai Ioniq 5
Describe the bug
Home Assistant sometimes reports range in miles, other times in kilometres.
Expected behavior
Report range in miles only
Screenshots

sorry but that looks like a lovelace (dashboard) issue, not part of this integration. easiest way to see all the integration provided data directly is go to the list of integrations then click where is says 1 device in the Kia/Hyundai car you should see a list like the before with all the distance in your home assistant preferred unit

d


I can download but authentication is nothing

Version
v1.13.0
Platform
win10
Steps to reproduce

Details
so what can i do.
now most video is not available.
Checklist

[X] I have looked through existing issues to make sure that this bug has not been reported before
[X] I have provided a descriptive title for this issue
[X] I have made sure that this bug is reproducible on the latest version of the application
[X] I have provided all the information needed to reproduce this bug as efficiently as possible
[ ] I have sponsored this project
[ ] I have not read any of the above and just checked all the boxes to submit the issue

I have no idea what you are asking

I have no idea what you are asking

sorry.
I tried to log in to my account, but when I clicked the authentication button, the dialog box that popped up was black and nothing.

Try downloading the WebView2 runtime: https://developer.microsoft.com/en-us/microsoft-edge/webview2/#download (Evergreen Bootstrapper)

Try downloading the WebView2 runtime: https://developer.microsoft.com/en-us/microsoft-edge/webview2/#download (Evergreen Bootstrapper)

ok now, thx~


Dead link

Link for the "Observables with Angular2 and FeathersJS" example should be:
https://berndsgn.ch/posts/observables-with-angular-and-feathersjs/
Not:
https://berndsgn.ch/observables-with-angular-and-feathersjs/

You can edit the file directly in the browser and automatically submit a pull request at https://github.com/feathersjs/awesome-feathersjs/edit/master/README.md


[sw] Add Guidance on DIF Return Codes

This PR adds the guidance as agreed in the software meeting on 2020-04-14. The guidance is also based on the discussion in #1911. I have also updated the style guide to refer to enum constants by that name (which is used by the standard), rather than "enum variants", which is not.
I have also added bitfield.h as an allowed library for DIFs, given it is already used and #2203 is likely to use it even more.

Closes #1911

I changed the order of the return codes to more accurately reflect the order in existing DIFs.

Posting on the main thread for visibility:
I think we should define values of all variants of dif_ip_result_t explicitly not just kDifIpOk to make sure that they are compatible across all functions (they are shared return codes after all):
typedef enum dif_ip_result {
  kDifIpOk = 0,
  kDifIpError = 1,
  kDifIpBadArg = 2,
} dif_ip_result_t;

and
typedef enum dif_ip_op_result {
  kDifIpOpOk = kDifIpOk,
  kDifIpOpError = kDifIpError,
  kDifIpOpBadArg = kDifIpBadArg,
  kDifIpOpSomeError,
  kDifIpOpAnotherError,
  ...
} dif_ip_op_result_t;

This may be a minor point but the guidance doesn't specify their values in its current form.

This may be a minor point but the guidance doesn't specify their values in its current form.

I think it does, given the two requirements

It must define the following constants (in this order)

and

the first three constants should be the same as the three constants in dif_<ip>_result_t

I suppose the language doesn't specifically speak to their values, so maybe you could do something silly like
typedef enum dif_ip_op_result {
  kDifIpOpOk = 1,
  kDifIpOpError,
  kDifIpOpBadArg,
  kDifIpOpSomeError,
  kDifIpOpAnotherError,
  ...
} dif_ip_op_result_t;

I do like the explicit valuing of these first three constants. It makes it clear that comparing these values across all dif_<ip>_<op>_result_t types is valid, assuming that's the intent.

It makes it clear that comparing these values across all dif_<ip>_<op>_result_t types is valid.

You are right, this was the point I was trying to make.

Ok, I think I have addressed all the comments and questions in this guidance. If you had comments, please re-check what I have written.
Other changes I have added to this PR:

Mandated DIF headers be "polyglot headers". This is needed because we use them from both C and C++.
Downgraded the requirements on not checking enum argument ranges to may not instead of should not. Hopefully this avoids some of the confusion around this rule and the rule for default: in enum switches being slightly contradictory, feedback I got from @GregAC this week.

As I said in the OT Software meeting, it would be useful if this could be re-reviewed so that it can be merged and I can start a new batch of changes relating to issues that have come out of the first few Design Reviews.
I'm now going to set a deadline, as it's already been about a week since my last comment. I would like any further comments by the end of Friday 12th June (AoE).

I'll merge this later today.


[BUG] An infinite loop and a few crashes

First of all, thanks for the continued development of pyDRTtools!
I noticed a few bugs while testing out the latest version (commit 3694b9b).
Infinite loop after clicking the "Hilbert Transform" button.
This is the relevant loop: https://github.com/ciuccislab/pyDRTtools/blob/3694b9b4cef9b29d623bef7300280810ec351d46/pyDRTtools/runs.py#L422-L432
The reason is that theta_0 is a numpy.ndarray with more than one dimension, which causes scipy.optimize.minimize to raise a ValueError ('x0' must only have one dimension.) here: https://github.com/ciuccislab/pyDRTtools/blob/3694b9b4cef9b29d623bef7300280810ec351d46/pyDRTtools/BHT.py#L151
Aside from making sure that theta_0 is 1D, you might also wish to narrow down the type(s) of exception(s) that are allowed to keep the loop running instead of using a bare except.
Crashes when closing a save file dialog by canceling
The functions related to the "DRT" and "EIS Regression" export buttons do not properly handle the case where the file dialog is closed by canceling:

https://github.com/ciuccislab/pyDRTtools/blob/3694b9b4cef9b29d623bef7300280810ec351d46/pyDRTtools/GUI.py#L206
https://github.com/ciuccislab/pyDRTtools/blob/3694b9b4cef9b29d623bef7300280810ec351d46/pyDRTtools/GUI.py#L260

If the value assigned to path is an empty string, then a FileNotFoundError will be raised later in the function when trying to write to the path. These crashes only occur if one of the three types of runs (simple, Bayesian, or HT) have been performed due to the if-elif blocks.
The QFileDialog.getSaveFileName returns an empty string if the modal window is closed by canceling, but it can also return an invalid path if the user types in a path (e.g. /tmp/foo/bar on Linux) into the File name input field in the modal window. So, I would recommend something along the lines of:
path, ext = QFileDialog.getSaveFileName(...)
if path == "":
    # The user closed the modal window by canceling.
    return
elif not os.path.isdir(os.path.dirname(path)):
    return
elif os.path.isdir(path):
    return

There might be some edge case that I'm missing here. The user is likely to assume that the file was saved unless they are somehow made aware when the path is invalid. Qt5 has a QErrorMessage class that could be used.
The following instance,  which is associated with saving a figure, does not cause a crash, but it does cause a few lines about an empty or null file name to be printed to the terminal: https://github.com/ciuccislab/pyDRTtools/blob/3694b9b4cef9b29d623bef7300280810ec351d46/pyDRTtools/GUI.py#L304
Crash when exporting "EIS Regression" results
This crash occurs when experimental data has been loaded but none of the three types of runs have been performed. The reason for this is that the following if-else block assumes that at least a simple or Bayesian run has been performed.
https://github.com/ciuccislab/pyDRTtools/blob/3694b9b4cef9b29d623bef7300280810ec351d46/pyDRTtools/GUI.py#L263-L295

Hello,
Thank you for your interest in pyDRTtools. Instead of using the version from PYPI, could you please git-clone the repository directly and launch the interface accordingly, as the current version will be updated on PYPI later. We are still testing it. I just launched the version from GitHub, and everything works fine. Please let me know if you encounter any other issues."

Crash when exporting "EIS Regression" results
Thank you for testing and calling our attention to this. This will be fixed and updated in the current version before releasing it.
Thank you

Crash when exporting "EIS Regression" results
Could you please provide the data where you encountered this issue so we can test it? I've tested with some data on my end, and everything still works fine. Your assistance in providing the specific data would be greatly appreciated. I look forward to your response. Thank you in advance.

I did not install pyDRTtools via PyPI. I cloned this repository (see the first message for the specific commit), created and activated a new virtual environment, installed pyDRTtools as an editable package that points to the cloned repository, and installed all of the required dependencies.
Regarding the last issue (exporting "EIS regression" results); this is very much an edge case that is unlikely to affect most people if they are using the program normally. I only noticed the issue when I started looking for the causes for the other issues I reported.
If you start the program, import some data, press the button for exporting the "EIS Regression" results, and provide a valid file path, then the program should crash when it reaches the following line: https://github.com/ciuccislab/pyDRTtools/blob/3694b9b4cef9b29d623bef7300280810ec351d46/pyDRTtools/GUI.py#L293
Following these steps, I get the following exception: AttributeError: 'EIS_object' object has no attribute 'mu_Z_re'. If you performed any of the runs (Simple, Bayesian Run, or Hilbert Transform) after importing some data, then the attributes accessed on that line should exist and an exception is not raised.


Develop webserver

This changes all user_id to email; it seems more intuitive this way on a front-end perspective. Just do a find a replace in the GUI stuff.

@MattGuptil do a find and replace of all user_ids to email. Instead of a user_id field, we can just have an email field which i think makes more sense.


docs: section about dropped openapi option

Because operator-sdk generate openapi has been dropped, it is good to add here a section on how to work with openapi from now on

Description of the change:
Motivation for the change:

@camilamacedo86  @joelanford I created this PR

did all the changes you requested @camilamacedo86, can you take a look?

Hi @georgettica,
I am closing this one since it is open for a while without address the suggestion.
However, feel free to re-open this one with you wish and if you be able to address the requests changes to add info requested.
Really thank you for your contribution.
And please you are more than welcome to push PR's and contribute to this project.


Add documentation for new EC2 meta labels

https://github.com/prometheus/prometheus/commit/9e05d82eaddea513f1258df906e4c522a803393b

We appear to be up to date here.


notification + notification sink system

experiment with sending email/SMS? knowing more about the capability of those sinks (do you just send text blobs, HTML etc.?) would inform system design

got encrypted email working through gmail relay, will likely just use that going forward


update reference to library

What
Update reference to latest dp-renderer release.
How to review
See that latest release matches go.mod file
Who can review
Anyone but me.

Shouldn't there be changes in go.sum too?

Yes, there should


cc number validation

hello,
thank you for this component, its really great and time saving.
I wonder if there is possibility to validate card number and set input errors/invalid status if the card number is wrong?

update css instead e.g.
    .jp-card-invalid {
        border-color: red;
    }


Add ngRx

Greetings!
Congratulations for this great tool. I like it so much and it was very helpful create a prototype with PWA for my work.
Anyway I was seeing the structure created by the tool and I did realize that it doesn't have an implementation of redux in the project. So would be great if you can add this feature in this generator.
Maybe I can support to you guys adding a pull request to adding this new stuff.
Please let me know and congratulations again.
Thanks for advanced

Hello! Thanks for creating this issue, this was discussed internally from a long time and it sure would be a nice addition 😃
Just that instead of NgRx I was considering Ngxs, as it adds the same value as NgRx, but with reduced boilerplate and with a nicer syntax (IMO). However if we find volunteers, both could be considered as an option 😉

Cool! thanks!

@sinedied why not add both as options?

@dvaJi See the end of my previous post 😉

Should consider this too: Akita


node_modules

After Adding this Package getting this error.
error: Error: Unable to resolve module stream from F:\test\test_folder\node_modules\react-native-png\src\png.js: stream
could not be found within the project or in these directories:
node_modules
2 |
3 | let util = require("util");

4 | let Stream = require("stream");
|                       ^
5 | let Parser = require("./parser-async");
6 | let Packer = require("./packer-async");
7 | let PNGSync = require("./png-sync");

my package.json file
{
"name": "test_folder",
"version": "0.0.1",
"private": true,
"scripts": {
"android": "react-native run-android",
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint ."
},
"dependencies": {
"react": "18.1.0",
"react-native": "0.70.6",
"react-native-png": "^0.0.2"
},
"devDependencies": {
"@babel/core": "^7.12.9",
"@babel/runtime": "^7.12.5",
"@react-native-community/eslint-config": "^2.0.0",
"babel-jest": "^26.6.3",
"eslint": "^7.32.0",
"jest": "^26.6.3",
"metro-react-native-babel-preset": "0.72.3",
"react-test-renderer": "18.1.0"
},
"jest": {
"preset": "react-native"
}
}

@rajibulanam
Hi!, have a try this
npm install stream

😁

@rajibulanam Hi!, have a try this
npm install stream

😁

I'm using stream 0.0.2 version by Julian Gruber is ok.
more info, here is git repository

Dear,
Brother I am trying to use your code in react-native CLI. But facing an error.
Please give an example of this code, can read from FS. This code is from your test folder.
import { PNG } from '../src/png';
// load file from fs read.
import * as fs from 'fs';
const buffer_from_fs = fs.readFileSync('./test/1.png');
const png = PNG.sync.read(buffer_from_fs,);
console.log('png ', png)

I'm so sorry for there is not explicit why will appear "fs" module.
React Native is not NodeJS environment so we can not use "fs" module.

how to do with loading png in React Native?
We use Image from react-native.  read here
import {Image} from react-native
// if your png is static png
// or some dynamic import ?

React Native Image Component Code
And what is kind of png  source you loaded ?
I don't know the specify circumstance.
however, thank you for put this issue, that realize me to add more information.
I admit it's still very imperfect, I was apologetic took your time... 😢

Hi, Brother I am using this way at react-native. I am getting error in when I am trying to ad your PNG library in my code. Please guide me how I can use your library on my project.
/**

Sample React Native App
https://github.com/facebook/react-native

@format
@flow strict-local
*/

import React, {useState, useEffect} from 'react';
import type {Node} from 'react';
import {
SafeAreaView,
ScrollView,
StatusBar,
StyleSheet,
Text,
useColorScheme,
View,
Image,
} from 'react-native';
import {
Colors,
DebugInstructions,
Header,
LearnMoreLinks,
ReloadInstructions,
} from 'react-native/Libraries/NewAppScreen';
import { PNG } from 'react-native-png';
import ImgToBase64 from 'react-native-image-base64';
/* $FlowFixMe[missing-local-annot] The type annotation(s) required by Flow's

LTI update could not be added via codemod */
const Section = ({children, title}): Node => {
const isDarkMode = useColorScheme() === 'dark';
return (

<Text
style={[
styles.sectionTitle,
{
color: isDarkMode ? Colors.white : Colors.black,
},
]}>
{title}

<Text
style={[
styles.sectionDescription,
{
color: isDarkMode ? Colors.light : Colors.dark,
},
]}>
{children}

);
};

const App: () => Node = () => {
const [content, setContent] = useState(null);
const isDarkMode = useColorScheme() === 'dark';
const foo = require('./assets/test.png');
const fooURI = Image.resolveAssetSource(foo).uri;
ImgToBase64.getBase64String(fooURI)
.then(base64String =>
setContent(base64String)
)
.catch(err => console.log(err));
console.log('Base64: ' + content);
const png0 = PNG.sync.read(content);
console.log('png ', png0);
const backgroundStyle = {
backgroundColor: isDarkMode ? Colors.darker : Colors.lighter,
};
return (

<StatusBar
barStyle={isDarkMode ? 'light-content' : 'dark-content'}
backgroundColor={backgroundStyle.backgroundColor}
/>

<View
style={{
backgroundColor: isDarkMode ? Colors.black : Colors.white,
}}>

TestAssetsApp

        <ReloadInstructions />

        <DebugInstructions />

        Read the docs to discover what to do next:

      <LearnMoreLinks />
    </View>
  </ScrollView>
</SafeAreaView>

);
};
const styles = StyleSheet.create({
sectionContainer: {
marginTop: 32,
paddingHorizontal: 24,
},
sectionTitle: {
fontSize: 24,
fontWeight: '600',
},
sectionDescription: {
marginTop: 8,
fontSize: 18,
fontWeight: '400',
},
highlight: {
fontWeight: '700',
},
});
export default App;

Dear Brother,
These are my code:
   const foo = require('./assets/test.png');
   const fooURI = Image.resolveAssetSource(foo).uri;

  ImgToBase64.getBase64String(fooURI)
  .then(base64String =>
    console.log('png ', PNG.sync.read(base64String))
    )
  .catch(err => console.log(err));

The error I am getting:
 LOG  Running "test_folder" with {"rootTag":1}
 LOG  [Error: unrecognised content at end of stream]

I am very much interested to use your library, this is the reason I am posting it day by day.
Thanks

what block throw this error ?

This part of the Code throw error:
console.log('png ', PNG.sync.read(base64String))

try this to your project https://github.com/browserify/browserify

the important, it is base64String into a Buffer Object,
that I was careless set the type is any, it must be Buffer

if you appear
[ReferenceError: Can't find variable: Buffer]

to set the Buffer can be referenced.
global.Buffer = global.Buffer || require('buffer').Buffer

I copied your code and run it completely !

I am very much interested to use your library, this is the reason I am posting it day by day.

Thank you so much, I am honored to be appreciated by you !

take a new v0.0.5 version, It might be better
yarn add "react-native-png"

npm update "react-native-png"

Brother,
Thanks.

Thank you for your participation


Tests broken because docker image bflad/testcontainerd invalid

The bflad/testcontainerd image (used in container tests) is invalid (at least for newer docker clients). @bflad @tduffield would it be possible to get a fixed version within a reasonable time?
$ docker --version
Docker version 1.4.1, build 5bc2ff8
$ docker pull bflad/testcontainerd
Pulling repository bflad/testcontainerd
05bbd8f1a81e: Error pulling image (latest) from bflad/testcontainerd, endpoint: https://registry-1.docker.io/v1/, image ID 'e9aa60c60128cad1' is inval05bbd8f1a81e: Error pulling image (latest) from bflad/testcontainerd, image ID 'e9aa60c60128cad1' is invalid

FATA[0004] Error pulling image (latest) from bflad/testcontainerd, image ID 'e9aa60c60128cad1' is invalid

I don't have access to that repo so I would need to recreate it. @bflad, can you rebuild the image and repush it to the Docker Hub?

#267 should fix this.


gobang: init at 0.1.0-alpha.5

Motivation for this change
Closes #137450
gobang is a cross-platform TUI database management tool written in Rust
https://github.com/tako8ki/gobang
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 139923 run on x86_64-linux 1

1 package built:

gobang


Add event URL to Junebug outbound messages

For Junebug to send us back events, we need to set the event url in the outbound message that we send Junebug. We will probably have to add the django sites framework in order to get a full URL to send Junebug.

Resolved by https://github.com/praekelt/seed-message-sender/pull/16


Question about Breadcrumbs and Navigation component?

@illright I notice that you have the breadcrumbs component on the doc site but is not available from the library. Same to the navigation bar component; is there a particular reason that not supporting it?
Many thanks for your time.

These components are not part of the library; they were custom made for the docs and are not designed with reusability/customizability in mind as to include it in the library. If they are really needed, we can look into that.

If you wanna see these components added, you may propose the desired interface: what props/slots would you like to see, etc. We'll add those components in the future

@aabounegm and @illright I believe both components would be highly useful and practical to use in any web app. Will think about the interface when I have some time.

I think the Breadcrumbs component is clear. It is like this component in the docs that looks like this:

But what about the Navigation Bar component? We do not have such component in our docs, and I do not quite understand what exactly you are referring to. Do you have any imagination for what the Navigation Bar component should look like or what it should do?


WorkspaceFolder value in resolved environment is incorrect

The documentation for worksapceFolder is as follows
              /**
               * Any specific workspace folder this environment is created for.
               */
              readonly workspaceFolder: Uri | undefined;

However when I resolve the environment the value is the folder of the enviornment it self.
See below,

Workspace folder in vscode is the folder stuff
The virtual enviornment is .vengWidgets and this is inside stuff folder
However the value for workspaceFolder is .venvWidgets

This causes issues as we exclude environments that do not belong to the current workscape folder stuff

.vengWidgets workspace also belongs to current workspace stuff, so this seems expected. Regardless, changed the API to return WorkspaceFolder instead of Uri to clearly indicate which workspace the env belongs to.

@karrtikr
We are no longer using this API.


feat: support custom header path in nextjs publishing

feat: support custom header path in nextjs publishing
This change adds support for the site configuration customHeaderPath to nextjs publishing.
Docs PR: https://wiki.dendron.so/notes/f2ed8639-a604-4a9d-b76c-41e205fb8713.html#customheaderpath
Note

The current way we do head tags is to use next/head to append necessary head tags on each components. (When we are not using that component, the appended elements will be unmounted)
The built-in Head component that next/head provides does not currently allow dangerouslySetInnerHTML props (most likely because of their appending/unmount behavior).
Specifically for third party scripts, nextjs recommends that we use their built-in Script component provided by next/script, which is available in next 11 (we are currently on 10).
I have opted for introducing html-react-parser and directly parsing the customHeaderPath content and appending it to every note page using the Head component for now, but this is less than ideal.

The behaviour is on par with 11ty publishing, so no backwards compatibility is broken
but,

letting arbitrary html to be injected to the head isn't safe to begin with
we don't (nor does html-react-parser) make effort to sanitize the HTML or prevent XSS.

For these reasons, I've added a backlog item to spec out a better way to let users add custom head contents once nextjs achieves feature parity.

Since this feature is a relatively niche one (I have no data to back this up so correct me if I'm wrong), we should figure out a better way to do this as soon as we have the bandwidth to do so before it's exposed to more users

Pull Request Checklist
You can go to dendron pull requests to see full details for items in this checklist.
General
Quality Assurance

[~] add a test for the new feature
[~] make sure all the existing tests pass
[x] do a spot check by running your feature with our test workspace
[ ] after you submit your pull request, check the output of our integration test and make sure all tests pass

NOTE: if you running mac/linux, check the windows output and vice versa if you are developing on windows

Special Cases

[~] if your tests changes an existing snaphot, make sure that snapshots are updated
[x] if you are adding a new language feature (graphically visible in vscode/preview/publishing), make sure that it is included in test-workspace. We use this to manually inspect new changes and for auto regression testiing

Docs

[x] Make sure that the PR title follows our commit style
[x] Please summarize the feature or impact in 1-2 lines in the PR description
[~] If your change reflects documentation changes, also submit a PR to dendron-site and mention the doc PR link in your current PR

Note on docs:
the behavior of this configuration is identical to the existing 11ty publishing feature so no document update is necessary on the public facing end.


adds support for alter table in policy

Summary

Details

How it was tested

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

@brunocalza okay if we close this one out?


Build AppCta using WebComponent approach

As a part of the dev team effort to create an open-source component library, some of the initial goals involved discussion, research, and testing of various approaches.
After several meetings, we've decided to build the <AppCta> component, using a web component approach.
Acceptance criteria

the current AppCta is built
the component is published
the component can be consumed by multiple projects

Note: this issue is a good candidate for the web-components library


Use smallest missing shardID if none is given

Tested with the following procedure:

Remove shard_id from the configuration file
Restart Sequins and make sure it does smallest missing to figure out the correct shardID
Restart Sequins again and make sure it reads from the self_assigned_id file
Change the self_assigned_id file to be "0\n" and then restore the configuration file to include shard_id again
Restart Sequins again and make sure it uses the configuration file over the self_assigned_id file

I tested this on tha node with the lowest shardID, the highest shardID, and a shardID in the middle.
This has a fair amount of logging lines. Are there any you think I should remove?
r? @scottjab-stripe

It's worth noting the tests I conducted for this PR were done on 7d14c96. I will rerun those tests after this PR is approved and before it is merged in.

lgtm


Update pyproject.toml

removed full installation of starlette as a dependency

I think python-multipart is missing in pyproject.toml required dependencies.
And for the httpx, you are right that is needed but in the test dependencies not main dependencies:
https://github.com/aminalaee/sqladmin/blob/1940e545765c08c66ed284731d5e4e4d2077ce8b/pyproject.toml#L57

Thank you for the PR.


Add Lekhya's markdown file

Field
Description

About
I want to add a markdown file

Github
Lekhya25

Email
<EMAIL_ADDRESS>

Label
Update request

https://github.com/Lekhya25

Define You

[x] Hacktober Fest Contributor

Please assign this task to me


TimeLimiter should be optional

now
Currently it is not possible to deactivate the TimeLimiter when using the circuitbreaker via org.springframework.cloud.client.circuitbreaker.CircuitBreakerFactory.
The org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JAutoConfiguration#resilience4jCircuitBreakerFactory defaults to a TimeLimiterRegistry which in turn always provides the default io.github.resilience4j.timelimiter.TimeLimiterConfig#timeoutDuration of 1s.
Later on, the org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JCircuitBreaker#run relies on the presence of a TimeLimiter since io.github.resilience4j.timelimiter.TimeLimiter#decorateFutureSupplier(io.github.resilience4j.timelimiter.TimeLimiter, java.util.function.Supplier<F>) is used to wrapp the invocation.
So there is no out-of-the-box-way to deactivate the TimeLimiter functionality of the spring-cloud-circuitbreaker via .yaml. If you want to use the circuitbreaker you get stuck with the TimeLimiter as well.
If there is already a proper way to use the spring-cloud circuitbreaker by making use of the CircuitBreakerFactory without the TimeLimiter, this feature request can be dropped immediately and no further reading is required. ;)
why
As an example, in a use case where a socket/port (with provided timeouts) gets opend within the circuitbreakers invocation, there is no need for a TimeLimiter on a higher level.
Additionally it can lead to serious resource leaks on certain operating systems to interrupt the calling Thread if a blocking I/O operation is running within the circuitbreakers invocation and somebody forgot to define a timeout on the I/O operation itself. Within this scenario the Thread could be interrupted but the I/O operation stays open/blocked, representing a possibly undetected resource leak.
workaround
As a workaround, we currently override the spring-cloud TimeLimiter with our own one which uses a timeout higher than the one used by the inner operation.
/**
 * This configuration provides a custom {@link TimeLimiterRegistry}, used by spring-cloud-circuitbreaker-resilience4j.
 * This configuration loaded conditionally, if override-spring-cloud-timelimiter/code> is set to true.
 */
@Configuration
@ConditionalOnProperty(name = "override-spring-cloud-timelimiter")
public class SpringCloudResilience4JTimeLimiterConfig {

    private static final Logger LOG = LoggerFactory.getLogger(SpringCloudResilience4JTimeLimiterConfig.class);

    /**
     * Retrieve a {@link TimeLimiterRegistry} which overrides the default timeout
     * by using the socket's read timeout and multiplies it by two.
     *

     * This is necessary since the sprint-cloud-resilience4j implementation does not permit using the circuit-breaker
     * without using a time-limiter.
     *
     * @param timeoutMs the read timeout in milliseconds
     * @return the customized {@link TimeLimiterRegistry}
     * @see org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JAutoConfiguration
     * @see org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JCircuitBreaker#run(Supplier, Function)
     */
    @Bean
    @Primary
    public TimeLimiterRegistry timeLimiterRegistry(@Value("${resttemplate.readtimeout}") int timeoutMs) {
        LOG.info("overriding spring-cloud circuitbreaker TimeLimiterRegistry");
        return new InMemoryTimeLimiterRegistry(
                TimeLimiterConfig.custom()
                        .timeoutDuration(Duration.ofMillis(timeoutMs * 2L))
                        .cancelRunningFuture(false)
                        .build()
        );
    }
}

desired
It would be beautiful to either have a property provided which in turn would deactivate the TimeLimiter explicitely.
Otherwise it would be most logical to not activate/use the TimeLimiter within the Resilience4JCircuitBreaker if no TimeLimiter configuration is provided. But as a drawback, this would be a semantic API break which is probably not desired.

I think this makes sense, would you be interested in submitting a PR with these changes?

Yes, i am interested.

Great!  If you can make the changes and submit a PR we would welcome the contribution!

With some deeper insights, i just realized that it is already possible to logically disable the use of the TimeLimiter (within the scope of the non-reactive implementation) by setting the property org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JConfigurationProperties#disableThreadPool to false.
This property is referenced/checked within org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JCircuitBreakerFactory#create(java.lang.String, java.lang.String, java.util.concurrent.ExecutorService).
When disabling the tread pool, org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JCircuitBreaker#run simply invokes the provided supplier, which in turn is exactly what i intended to happen.
Nevertheless, the org.springframework.cloud.circuitbreaker.resilience4j.ReactiveResilience4JCircuitBreaker does not benefit from this implicit logical behavior. Within the reactive implementation, the timeout is always set (.timeout(tuple.getT2().getTimeLimiterConfig().getTimeoutDuration()))
These observations lead to the following question and possibilities:

Is it desired to introduce a new property/parameter (e.g. spring.cloud.circuitbreaker.resilience4j.disable-time-timiter which then additionally removes the timelimit from the reactive implementation or
is it not desired and i will not continue in doing so?

In any circumstances, it is probably desirable to document this already complex behavioral configuration/decision tree somehow. Introducing a new disable-time-timiter-Property would lead to an even more complex configuration behavior. When introduced, the implementation whould need to deal with the following combination of properties.
spring.cloud.circuitbreaker.resilience4j.disable-thread-pool=false
spring.cloud.circuitbreaker.resilience4j.disable-time-timiter=true

I am looking forward for some input in regard to this.

I think its ok to introduce the disable-time-timiter property but it would only have effect in the non reactive case when using a thread pool.


Convert the original dataset into jsonlines

Hello, there was a problem running the project.
First, I got "OntoNotes 5.0 Corpus".
and then I runned minimize.py.
minimize.py needs {train/dev/test}.english.v4_gold_conll, But the files don't exist in Corpus.
Is there anything I miss?
Thanks.

Fixed the issue with link.


Support for followup messages

Is it possible as for now to send followup messages?
For example I want my bot to be able to inform the user it got their request to do something and then when that something is done to send a message again confirming its completion.

You'd probably want the process to look like this:

Incoming request from the slash command;
Queue up work (e.g. adding things to KV which gets processed by cron triggers, or using event.waitUntil);
Respond to the slash command with a ack message;
Perform work
Send message with a Webhook.

Hope that makes sense, but let me know if I can clarify something :)


Does it creaate a problem with ros distriubutions.

first i cloned your git link which was given...
I have ros noetic version and i installed python dependencies just by changing the name of the ros distributor from melodic to noetic.
when i did catkin make it throws a lot of error in the code regarding unsigned int and some functions not defined.

Can you please copy and paste your build logs @harshchawra ?

@harshchawra I am closing this due to inactivity. Feel free to open it again.


Callbacks can happen after rs2::sensor::stop()

Field

Camera Model
D435i

Firmware Version
<IP_ADDRESS>

Operating System
Linux

Kernel Version
5.10

Platform
PC

SDK Version
2.39.0

Language
C++

Issue Description
I recently ran into a use-after-free that was caused by a sensor callback happening after rs2::sensor::stop() was called. Having looked at the code (this is the Linux V4L2 backend) it doesn't look like there's anything there to prevent a callback from happening after uvc_sensor::stop() since it ends up just setting an atomic flag in v4l2_uvc_device::stop_callbacks() which doesn't wait for the v4l2_uvc_device::poll() function to return. I feel like this behaviour is unexpected and unsafe.

Hi thomas-slamcore
Thanks for sharing your finding
When the use after free occurs, will it cause your application (use Librelasense API) crash?
or has issue such as image freeze or stuck for a while?

Hi there,
Honestly I'm not 100% sure anymore whether it crashed that one time, obviously this is rather hard to reproduce. Since then we've implemented our own workaround (we basically ignore callbacks based on an atomic flag), but this is something that should be fixed within librealsense. Your documentation for rs2::sensor::stop() is a bit sparse, but it doesn't make any sense that callbacks should be triggered after stop() has returned.
Here's a screenshot from ASAN which helped me diagnose this issue.


Speed fish suggestion

Hello, I find that the fish are moving way too fast. Would it be possible to add an option to adjust this?

Added in 1.2.1


Add Flash Player Beta - PPAPI <IP_ADDRESS>.

If there’s a checkbox you can’t complete for any reason, that's okay, just explain in detail why you weren’t able to do so.
After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} reports no offenses.
[x] The commit message includes the cask’s name and version.

Additionally, if updating a cask:

[ ] If the sha256 changed but the version didn’t,
provide public confirmation by the developer: {{link}}

Additionally, if adding a new cask:

[x] Named the cask according to the token reference.
[x] brew cask install {{cask_file}} worked successfully.
[x] brew cask uninstall {{cask_file}} worked successfully.
[x] Checked there are no open pull requests for the same cask.
[x] Checked the cask was not already refused in closed issues.
[x] Checked the cask is submitted to the correct repo.

Thank you, but I’m going to make an “override rules” decision on these ones and refuse them.
Flash is undoubtedly “dead technology walking”. There’s no point to supporting it anywhere, and no one has ever needed their betas in HBC before. Adding dying software to this repo will have no real benefits and will add overhead.
Thank you, but for this one, if you need it you should consider a tap.


Added tests

In this PR, I added unit tests, health checks, Travis config and Travis badge.

CLA is valid!

Note that these tests would be wholly inadequate for a consumer facing application that generates revenue. However, for the pure site, I think that this may be good enough to give us enough confidence to implement CD.
Also note that I struggle with the testing of the routes. My tests look more like acceptance tests than true unit tests. They are however not redundant with the health checks, which serve a slightly different purpose.
Finally, note that we may need to add unit tests for additional libraries (the stuff under lib/) but I haven't had time to implement those, and I don't want this task to turn into a multi-week effort. I may, however, send subsequent PRs to fill those holes as time allows.

Looks about right. I have some extra unit tests for everything in lib/ I'll send if I manage to dig them up.

@juandopazo that would be awesome if you could send a separate PR for that stuff, if you can dig it out.


Options to show the response code pages

Not an issue (maybe)...
When I run the awesome Hey against one of my sites, it lists a ton of 503 response codes which makes no sense as I cannot see these with any other tools including muffet.
Is there a hidden flag to show all the responses and links that Hey is checking? Makes sense if it's reporting something that we can see it too.
thanks, amazing tool btw!

Chances are the default content-type is what's causing these 503 - Try adding -T "text/plain" to your requests, and see if that helps.

Thanks! Just tried, sadly the same output. Running:
hey -T "text/plain" https://DOMAIN.com/
gave me:
Status code distribution:
  [200]	12 responses
  [503]	188 responses

Interesting... tried with different sites & hosting Co's, this is only happening on sites hosted by Brizy.cloud which we use. They use AWS on the back. Here's a test page if it helps:
test brizy.cloud
full URL for clarity:
https://pear10259858.brizy.site/

Saw something similar, and working on a -debug flag to dump the request responses to a file. Perhaps it will help debug this. The provided endpoint will help me see the value in it. Thanks for sharing!

Re-ran against your endpoint, with a -debug, which dumps all requests to a log file. Results were similar to what you saw:
./bin/hey -debug -n 8 -c 2 https://pear10259858.brizy.site                                                                                ⎈ |mma-test-west:ce01aws)

Summary:
  Total:        0.6419 secs
  Slowest:      0.4072 secs
  Fastest:      0.0715 secs
  Average:      0.1603 secs
  Requests/sec: 12.4637

  Total data:   412 bytes
  Size/request: 51 bytes

Response time histogram:
  0.071 [1]     |■■■■■■■■
  0.105 [5]     |■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
  0.139 [0]     |
  0.172 [0]     |
  0.206 [0]     |
  0.239 [0]     |
  0.273 [0]     |
  0.307 [0]     |
  0.340 [0]     |
  0.374 [0]     |
  0.407 [2]     |■■■■■■■■■■■■■■■■

Latency distribution:
  10% in 0.0734 secs
  25% in 0.0796 secs
  50% in 0.0811 secs
  75% in 0.4061 secs
  0% in 0.0000 secs
  0% in 0.0000 secs
  0% in 0.0000 secs

Details (average, fastest, slowest):
  DNS+dialup:   0.0594 secs, 0.0000 secs, 0.2379 secs
  DNS-lookup:   0.0010 secs, 0.0000 secs, 0.0040 secs
  req write:    0.0003 secs, 0.0000 secs, 0.0008 secs
  resp wait:    0.0951 secs, 0.0713 secs, 0.1574 secs
  resp read:    0.0053 secs, 0.0002 secs, 0.0163 secs

Status code distribution:
  [200] 6 responses
  [503] 2 responses

Sample from the logs:
{"level":"debug","msg":"HTTP/1.1 503 Service Temporarily Unavailable\r\nContent-Length: 206\r\nConnection: keep-alive\r\nContent-Type: text/html\r\nDate: Tue, 05 Apr 2022 16:31:06 GMT\r\nServer: nginx\r\n\r\n\u003chtml\u003e\r\n\u003chead\u003e\u003ctitle\u003e503 Service Temporarily Unavailable\u003c/title\u003e\u003c/head\u003e\r\n\u003cbody bgcolor=\"white\"\u003e\r\n\u003ccenter\u003e\u003ch1\u003e503 Service Temporarily Unavailable\u003c/h1\u003e\u003c/center\u003e\r\n\u003chr\u003e\u003ccenter\u003enginx\u003c/center\u003e\r\n\u003c/body\u003e\r\n\u003c/html\u003e\r\n","time":"2022-04-05T09:31:06-07:00"}

The above makes me assume that the service limits the number of requests that it can process given a certain timespan, and will return 503 when that is exhausted. (prevents hammering the service)
The current implementation dumps both 200 responses and 503 responses in its current form, should it only be non-200 codes that get dumped? Following this I can make a PR here if it helps.

Your thinking makes sense (service hammering). If it's any help, Brizy use AWS for their tech stack but, I've not seen this on any other hosted websites even with AWS. Your PR would be a great idea to capture these quirks.
Thanks!

@FrenchBen which version has the -debug option?

@hrchu this is my fork of Hey :)


Citi Credit Cards stopped working (again) - 403 Forbidden from Akamai

For me at least, Citi Credit Cards stopped working again on July 22 (5 days ago).
I actually called Citi and asked and was referred to their Online Technical Support at 1-866-544-5534. I called them and was told (not sure how much I believe this) that it's a known issue with problems downloading transactions, they're working on it, and to use PDF instead. I explained that you can't import a PDF into finance software, and was told they have people working on it and to call back in 24 hours if it's not fixed.
The error I'm seeing is coming from Akamai, their CDN provider, so there's definitely either something broken, they shut Direct Connect off alltogether, or they're using Akamai to filter on user-agent or other headers or part of the OFX itself.
Here's the debug-level logging for what I'm seeing, with all sensitive information replaced with the string "REDACTED":
2018-07-27 17:39:59,999 [DEBUG client.py:154 - root._do_post() ] posting data to https://www.accountonline.com/cards/svc/CitiOfxManager.do
2018-07-27 17:40:00,005 [DEBUG client.py:174 - root._do_post() ] ---- request headers ----
2018-07-27 17:40:00,005 [DEBUG client.py:176 - root._do_post() ] Content-Type: application/x-ofx
2018-07-27 17:40:00,005 [DEBUG client.py:176 - root._do_post() ] Host: www.accountonline.com
2018-07-27 17:40:00,005 [DEBUG client.py:176 - root._do_post() ] Content-Length: 660
2018-07-27 17:40:00,005 [DEBUG client.py:176 - root._do_post() ] Connection: Keep-Alive
2018-07-27 17:40:00,006 [DEBUG client.py:176 - root._do_post() ] Accept: */*, application/x-ofx
2018-07-27 17:40:00,006 [DEBUG client.py:176 - root._do_post() ] User-Agent: httpclient
2018-07-27 17:40:00,006 [DEBUG client.py:178 - root._do_post() ] ---- request body (query) ----
2018-07-27 17:40:00,006 [DEBUG client.py:179 - root._do_post() ] OFXHEADER:100
DATA:OFXSGML
VERSION:102
SECURITY:NONE
ENCODING:USASCII
CHARSET:1252
COMPRESSION:NONE
OLDFILEUID:NONE
NEWFILEUID:2311c068b37b4efea03e18929b1d0c28

<OFX>
<SIGNONMSGSRQV1>
<SONRQ>
<DTCLIENT>20180727173959
<USERID>REDACTED
<USERPASS>REDACTED
<LANGUAGE>ENG
<FI>
<ORG>Citigroup
<FID>24909
</FI>
<APPID>QWIN
<APPVER>2500

</SONRQ>
</SIGNONMSGSRQV1>
<CREDITCARDMSGSRQV1>
<CCSTMTTRNRQ>
<TRNUID>REDACTED
<CLTCOOKIE>4
<CCSTMTRQ>
<CCACCTFROM>
<ACCTID>REDACTED
</CCACCTFROM>
<INCTRAN>
<DTSTART>20180627
<INCLUDE>Y
</INCTRAN>
</CCSTMTRQ>
</CCSTMTTRNRQ>
</CREDITCARDMSGSRQV1>
</OFX>
2018-07-27 17:40:00,083 [DEBUG client.py:183 - root._do_post() ] ---- response ----
2018-07-27 17:40:00,083 [DEBUG client.py:184 - root._do_post() ] {'fp': None, 'debuglevel': 0, '_method': 'POST', 'headers': <http.client.HTTPMessage object at 0x7f51d7b31550>, 'msg': <http.client.HTTPMessage object at 0x7f51d7b31550>, 'version': 11, 'status': 403, 'reason': 'Forbidden', 'chunked': False, 'chunk_left': 'UNKNOWN', 'length': 0, 'will_close': True, 'code': 403}
2018-07-27 17:40:00,083 [DEBUG client.py:185 - root._do_post() ] Headers: [('Server', 'AkamaiGHost'), ('Mime-Version', '1.0'), ('Content-Type', 'text/html'), ('Content-Length', '309'), ('Expires', 'Fri, 27 Jul 2018 21:40:00 GMT'), ('Date', 'Fri, 27 Jul 2018 21:40:00 GMT'), ('Connection', 'close')]
2018-07-27 17:40:00,083 [DEBUG client.py:186 - root._do_post() ]
<TITLE>Access Denied</TITLE>

Access Denied

You don't have permission to access "http://www.accountonline.com/cards/svc/CitiOfxManager.do" on this server.

Reference #18.86c95640.1532727600.3a5b6dc

I'll keep an eye on this...

Hmm, I am not having any issues.  Are you still getting this error?

Yup...
As shown above, I'm sending OFX version 102, APPID QWIN and APPVER 2500...

So I just called Citi back and actually got to speak to a supervisor. They don't have any known issues impacting Direct Connect, just something with downloading via the UI. She reached out to someone who actually knows their systems and was told that there's no reason they can think of for the Akamai error on their end. Everyone was very nice, and apologetic that they couldn't really do any more troubleshooting for third-party software.
If nobody else is seeing this, I guess I'll close the issue... and maybe see what happens if I try the download from work, using a completely different network and hitting a different Akamai edge server.

Crap.
Ok, so I replicated the 403 from Akamai with curl. I then ran the same curl from an EC2 instance in AWS, and got my OFX back fine.  I don't know, or for some reason I'm hitting a broken Akamai edge node or something.
If I hit https://www.accountonline.com/ directly in a browser I get the redirect to https://www.citi.com so whatever's happening seems specific to the OFX endpoint. No idea why they'd block me, I've just been running the same OFX requests once a day for years.
I guess it's just me though. Closing this.


download_folder_to_path failed when download big size folder

Issue
I have a ~150 GB folder that I am trying to download from S3 to local.  Here is my code:
from pathlib import Path, PurePosixPath

from prefect import task
from prefect_aws.s3 import S3Bucket

@task
async def download_dir_from_s3_to_local(
    s3_bucket: S3Bucket, s3_dir_path: PurePosixPath, local_raw_dir_path: Path
) -> None:
    await s3_bucket.download_folder_to_path(str(s3_dir_path), local_raw_dir_path)

After downloading the folder for about 1 min 500MB/s, the task will failed with error
Encountered exception during execution:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 382, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1012, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 411, in connect
    self.sock = ssl_wrap_socket(
  File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 449, in ssl_wrap_socket
    ssl_sock = _ssl_wrap_socket_impl(
  File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 493, in _ssl_wrap_socket_impl
    return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
  File "/usr/lib/python3.10/ssl.py", line 513, in wrap_socket
    return self.sslsocket_class._create(
  File "/usr/lib/python3.10/ssl.py", line 1071, in _create
    self.do_handshake()
  File "/usr/lib/python3.10/ssl.py", line 1342, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLEOFError: [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/botocore/httpsession.py", line 465, in send
    urllib_response = conn.urlopen(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 755, in urlopen
    retries = retries.increment(
  File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 507, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/lib/python3/dist-packages/six.py", line 718, in reraise
    raise value.with_traceback(tb)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 382, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1012, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 411, in connect
    self.sock = ssl_wrap_socket(
  File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 449, in ssl_wrap_socket
    ssl_sock = _ssl_wrap_socket_impl(
  File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 493, in _ssl_wrap_socket_impl
    return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
  File "/usr/lib/python3.10/ssl.py", line 513, in wrap_socket
    return self.sslsocket_class._create(
  File "/usr/lib/python3.10/ssl.py", line 1071, in _create
    self.do_handshake()
  File "/usr/lib/python3.10/ssl.py", line 1342, in do_handshake
    self._sslobj.do_handshake()
urllib3.exceptions.SSLError: [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/prefect/engine.py", line 1733, in orchestrate_task_run
    result = await call.aresult()
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 291, in aresult
    return await asyncio.wrap_future(self.future)
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 345, in _run_async
    result = await coro
  File "/tmp/tmpac9aabavprefect/src/amazon_s3/tasks/download_dir_from_s3_to_local.py", line 11, in download_dir_from_s3_to_local
    await s3_bucket.download_folder_to_path(str(s3_dir_path), local_raw_dir_path)
  File "/usr/local/lib/python3.10/dist-packages/prefect_aws/s3.py", line 791, in download_folder_to_path
    await asyncio.gather(*async_coros)
  File "/usr/local/lib/python3.10/dist-packages/prefect/utilities/asyncutils.py", line 91, in run_sync_in_worker_thread
    return await anyio.to_thread.run_sync(
  File "/usr/local/lib/python3.10/dist-packages/anyio/to_thread.py", line 33, in run_sync
    return await get_asynclib().run_sync_in_worker_thread(
  File "/usr/local/lib/python3.10/dist-packages/anyio/_backends/_asyncio.py", line 877, in run_sync_in_worker_thread
    return await future
  File "/usr/local/lib/python3.10/dist-packages/anyio/_backends/_asyncio.py", line 807, in run
    result = context.run(func, *args)
  File "/usr/local/lib/python3.10/dist-packages/boto3/s3/inject.py", line 190, in download_file
    return transfer.download_file(
  File "/usr/local/lib/python3.10/dist-packages/boto3/s3/transfer.py", line 326, in download_file
    future.result()
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/futures.py", line 103, in result
    return self._coordinator.result()
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/futures.py", line 266, in result
    raise self._exception
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/tasks.py", line 139, in __call__
    return self._execute_main(kwargs)
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/tasks.py", line 162, in _execute_main
    return_value = self._main(**kwargs)
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/download.py", line 569, in _main
    response = client.get_object(
  File "/usr/local/lib/python3.10/dist-packages/botocore/client.py", line 535, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/usr/local/lib/python3.10/dist-packages/botocore/client.py", line 963, in _make_api_call
    http, parsed_response = self._make_request(
  File "/usr/local/lib/python3.10/dist-packages/botocore/client.py", line 986, in _make_request
    return self._endpoint.make_request(operation_model, request_dict)
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 119, in make_request
    return self._send_request(request_dict, operation_model)
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 202, in _send_request
    while self._needs_retry(
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 354, in _needs_retry
    responses = self._event_emitter.emit(
  File "/usr/local/lib/python3.10/dist-packages/botocore/hooks.py", line 412, in emit
    return self._emitter.emit(aliased_event_name, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/botocore/hooks.py", line 256, in emit
    return self._emit(event_name, kwargs)
  File "/usr/local/lib/python3.10/dist-packages/botocore/hooks.py", line 239, in _emit
    response = handler(**kwargs)
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 207, in __call__
    if self._checker(**checker_kwargs):
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 284, in __call__
    should_retry = self._should_retry(
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 320, in _should_retry
    return self._checker(attempt_number, response, caught_exception)
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 363, in __call__
    checker_response = checker(
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 247, in __call__
    return self._check_caught_exception(
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 416, in _check_caught_exception
    raise caught_exception
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 281, in _do_get_response
    http_response = self._send(request)
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 377, in _send
    return self.http_session.send(request)
  File "/usr/local/lib/python3.10/dist-packages/botocore/httpsession.py", line 492, in send
    raise SSLError(endpoint_url=request.url, error=e)
botocore.exceptions.SSLError: SSL validation failed for https://my-bucket.s3.us-west-2.amazonaws.com/my-folder/records/fcc3/metadata [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)
11:32:48 PM
Download | s3://my-bucket/my-folder-0
prefect.task_runs
Finished in state Failed('Task run encountered an exception SSLError: SSL validation failed for https://my-bucket.s3.us-west-2.amazonaws.com/my-folder/records/fcc3/metadata [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)')
11:32:48 PM
Download | s3://my-bucket/my-folder-0
prefect.task_runs
Encountered exception during execution:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 382, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1012, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 411, in connect
    self.sock = ssl_wrap_socket(
  File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 449, in ssl_wrap_socket
    ssl_sock = _ssl_wrap_socket_impl(
  File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 493, in _ssl_wrap_socket_impl
    return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
  File "/usr/lib/python3.10/ssl.py", line 513, in wrap_socket
    return self.sslsocket_class._create(
  File "/usr/lib/python3.10/ssl.py", line 1071, in _create
    self.do_handshake()
  File "/usr/lib/python3.10/ssl.py", line 1342, in do_handshake
    self._sslobj.do_handshake()
ssl.SSLEOFError: [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/botocore/httpsession.py", line 465, in send
    urllib_response = conn.urlopen(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 755, in urlopen
    retries = retries.increment(
  File "/usr/lib/python3/dist-packages/urllib3/util/retry.py", line 507, in increment
    raise six.reraise(type(error), error, _stacktrace)
  File "/usr/lib/python3/dist-packages/six.py", line 718, in reraise
    raise value.with_traceback(tb)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 382, in _make_request
    self._validate_conn(conn)
  File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 1012, in _validate_conn
    conn.connect()
  File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 411, in connect
    self.sock = ssl_wrap_socket(
  File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 449, in ssl_wrap_socket
    ssl_sock = _ssl_wrap_socket_impl(
  File "/usr/lib/python3/dist-packages/urllib3/util/ssl_.py", line 493, in _ssl_wrap_socket_impl
    return ssl_context.wrap_socket(sock, server_hostname=server_hostname)
  File "/usr/lib/python3.10/ssl.py", line 513, in wrap_socket
    return self.sslsocket_class._create(
  File "/usr/lib/python3.10/ssl.py", line 1071, in _create
    self.do_handshake()
  File "/usr/lib/python3.10/ssl.py", line 1342, in do_handshake
    self._sslobj.do_handshake()
urllib3.exceptions.SSLError: [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/prefect/engine.py", line 829, in orchestrate_flow_run
    result = await flow_call.aresult()
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 291, in aresult
    return await asyncio.wrap_future(self.future)
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 345, in _run_async
    result = await coro
  File "/tmp/tmpac9aabavprefect/src/main.py", line 186, in itg_ingest_data
    glue_job_names = await download_process_upload_dir(
  File "/tmp/tmpac9aabavprefect/src/app/utils/download_process_upload_dir.py", line 41, in download_process_upload_dir
    await download_dir_from_s3_to_local.with_options(
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/api.py", line 182, in wait_for_call_in_loop_thread
    return call.result()
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 282, in result
    return self.future.result(timeout=timeout)
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 168, in result
    return self.__get_result()
  File "/usr/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
    raise self._exception
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 345, in _run_async
    result = await coro
  File "/usr/local/lib/python3.10/dist-packages/prefect/engine.py", line 1312, in get_task_call_return_value
    return await future._result()
  File "/usr/local/lib/python3.10/dist-packages/prefect/futures.py", line 237, in _result
    return await final_state.result(raise_on_failure=raise_on_failure, fetch=True)
  File "/usr/local/lib/python3.10/dist-packages/prefect/states.py", line 91, in _get_state_result
    raise await get_state_exception(state)
  File "/usr/local/lib/python3.10/dist-packages/prefect/engine.py", line 1733, in orchestrate_task_run
    result = await call.aresult()
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 291, in aresult
    return await asyncio.wrap_future(self.future)
  File "/usr/local/lib/python3.10/dist-packages/prefect/_internal/concurrency/calls.py", line 345, in _run_async
    result = await coro
  File "/tmp/tmpac9aabavprefect/src/amazon_s3/tasks/download_dir_from_s3_to_local.py", line 11, in download_dir_from_s3_to_local
    await s3_bucket.download_folder_to_path(str(s3_dir_path), local_raw_dir_path)
  File "/usr/local/lib/python3.10/dist-packages/prefect_aws/s3.py", line 791, in download_folder_to_path
    await asyncio.gather(*async_coros)
  File "/usr/local/lib/python3.10/dist-packages/prefect/utilities/asyncutils.py", line 91, in run_sync_in_worker_thread
    return await anyio.to_thread.run_sync(
  File "/usr/local/lib/python3.10/dist-packages/anyio/to_thread.py", line 33, in run_sync
    return await get_asynclib().run_sync_in_worker_thread(
  File "/usr/local/lib/python3.10/dist-packages/anyio/_backends/_asyncio.py", line 877, in run_sync_in_worker_thread
    return await future
  File "/usr/local/lib/python3.10/dist-packages/anyio/_backends/_asyncio.py", line 807, in run
    result = context.run(func, *args)
  File "/usr/local/lib/python3.10/dist-packages/boto3/s3/inject.py", line 190, in download_file
    return transfer.download_file(
  File "/usr/local/lib/python3.10/dist-packages/boto3/s3/transfer.py", line 326, in download_file
    future.result()
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/futures.py", line 103, in result
    return self._coordinator.result()
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/futures.py", line 266, in result
    raise self._exception
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/tasks.py", line 139, in __call__
    return self._execute_main(kwargs)
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/tasks.py", line 162, in _execute_main
    return_value = self._main(**kwargs)
  File "/usr/local/lib/python3.10/dist-packages/s3transfer/download.py", line 569, in _main
    response = client.get_object(
  File "/usr/local/lib/python3.10/dist-packages/botocore/client.py", line 535, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/usr/local/lib/python3.10/dist-packages/botocore/client.py", line 963, in _make_api_call
    http, parsed_response = self._make_request(
  File "/usr/local/lib/python3.10/dist-packages/botocore/client.py", line 986, in _make_request
    return self._endpoint.make_request(operation_model, request_dict)
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 119, in make_request
    return self._send_request(request_dict, operation_model)
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 202, in _send_request
    while self._needs_retry(
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 354, in _needs_retry
    responses = self._event_emitter.emit(
  File "/usr/local/lib/python3.10/dist-packages/botocore/hooks.py", line 412, in emit
    return self._emitter.emit(aliased_event_name, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/botocore/hooks.py", line 256, in emit
    return self._emit(event_name, kwargs)
  File "/usr/local/lib/python3.10/dist-packages/botocore/hooks.py", line 239, in _emit
    response = handler(**kwargs)
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 207, in __call__
    if self._checker(**checker_kwargs):
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 284, in __call__
    should_retry = self._should_retry(
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 320, in _should_retry
    return self._checker(attempt_number, response, caught_exception)
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 363, in __call__
    checker_response = checker(
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 247, in __call__
    return self._check_caught_exception(
  File "/usr/local/lib/python3.10/dist-packages/botocore/retryhandler.py", line 416, in _check_caught_exception
    raise caught_exception
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 281, in _do_get_response
    http_response = self._send(request)
  File "/usr/local/lib/python3.10/dist-packages/botocore/endpoint.py", line 377, in _send
    return self.http_session.send(request)
  File "/usr/local/lib/python3.10/dist-packages/botocore/httpsession.py", line 492, in send
    raise SSLError(endpoint_url=request.url, error=e)
botocore.exceptions.SSLError: SSL validation failed for https://my-bucket.s3.us-west-2.amazonaws.com/my-folder/records/fcc3/metadata [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)
11:32:48 PM
prefect.flow_runs
Finished in state Failed('Flow run encountered an exception. SSLError: SSL validation failed for https://my-bucket.s3.us-west-2.amazonaws.com/my-folder/records/fcc3/metadata [SSL: UNEXPECTED_EOF_WHILE_READING] EOF occurred in violation of protocol (_ssl.c:1007)')

I feel it is related with https://stackoverflow.com/a/46387660/2000548
Basically, if has a lot of requests to a S3 in short time, it will fail. Any way to download big folder at once? Thanks! ☺

Hi @hongbo-miao, how many files are in the bucket? I'm trying to understand if this is a case of "download many small files" or "download a few huge files".
If there are many small files we have a couple of options - one is using AWS's built in retry mechanism to retry failures such as the one above. A minimal example of using that would look like:
from prefect_aws import AwsClientParameters, AwsCredentials, S3Bucket

client_params = AwsClientParameters(config={"retries": {"max_attempts": 10}})
creds = AwsCredentials(aws_client_parameters=client_params, ...)
bucket = S3Bucket(credentials=creds, bucket_name="...", ...)
...
bucket.download_folder_to_path()

The other option is to try using the bucket's S3Bucket.get_directory method -- internally this method will download one file at a time (as opposed to S3Bucket.download_folder_to_path which will concurrently download all files at once). This option will be a bit slower but won't overwhelm the bucket.
If the bucket has a couple of big files we'll need to try something else. Let me know if either of those help.


add css that forces width on select2 placeholder

WHY
BEFORE - What was wrong? What was happening before this PR?
Reported in #4194 multiple selects2 would not properly display on page when they are inside a tab that is not the first one to be displayed.
AFTER - What is happening after this PR?
They display fine.
HOW
How did you achieve that, in technical terms?
Added a script that forces the width of the placeholder container to be 100% of the parent element, even if not present in the current visible elements.
Is it a breaking change or non-breaking change?
non-breaking
How can we test the before & after?
In Monster demo, go create a new one, and then move to relationships tab. You will see that all select2 multiples are not displaying the placeholder correctly. (If you refresh the page in relationships tab they will work fine, but you will see that the ones in the selects tab will be broken, do the same in the selects tab by refreshing, they will work, relationship ones are broken.).
After this PR no more select multiple broken.

We can force this with CSS only solution by using:
.select2-container li:only-child,
.select2-container input:placeholder-shown {
  width: 100% !important;
}

I debated two reasons on why not do it css now:

people would need to republish assets to get the fixes.
placeholder-shown pseudo class is not supported in old browsers, and in previous versions when they added support, some required the specials -ms, -moz prefixes in classes. https://caniuse.com/#search=%3Aplaceholder-shown

If we decide to go to a 100% CSS solution (dropping support for older browsers, new ones all support this functionality), we could also remove the style="width:100%" in the select2 fields blade files and add it to this fix aswell because it works in combination.
Let me know @tabacitu

@tabacitu removed JS in favor of CSS solution.
Can you give this a go ? It seems to be working fine for me.

Ahh... much muuuuch better 👍

Thank you @pxpm !


Issue #335 Adds example to readme.

This PR fixes #335 by adding a link to the example project.

It is.


Fix cell type in DomainRuleWithArrays

[ ] ~Tests added for any new code~
[x] Ran make fmt-fix (or had formatting run automatically on all files edited)
[ ] ~Documentation added for any new functionality~
[ ] ~Entries added to ./unreleased/ for any new functionality~

This PR propagates the use of RecRowT1 in DomainRule to DomainRuleWithArrays.

Exactly. Not having the row records in apply led to rewriter error: DOMAIN x where type(x) = CellTFrom({ id: Str, round: Int, src: Str, type: Str }) is not implemented in a spec I'm experimenting with. I did a quick check on the other array rules and this is the only one that have records on apply, so I think this problem is limited to this rule.


Buttons with icons do not support text overflow.

Steps to Reproduce
I tried it on my computer and also on DartPad. I have the problem on both.
import 'package:flutter/material.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    const text =
        'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut a euismod nibh. Morbi laoreet purus.';
    return MaterialApp(
      home: Scaffold(
        body: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            Row(
              children: [
                Expanded(
                  child: TextButton(
                    onPressed: () {},
                    child: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: TextButton.icon(
                    onPressed: () {},
                    icon: const Icon(Icons.ac_unit),
                    label: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: ElevatedButton(
                    onPressed: () {},
                    child: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: ElevatedButton.icon(
                    onPressed: () {},
                    icon: const Icon(Icons.ac_unit),
                    label: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: OutlinedButton(
                    onPressed: () {},
                    child: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: OutlinedButton.icon(
                    onPressed: () {},
                    icon: const Icon(Icons.ac_unit),
                    label: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
              ],
            ),
            Row(
              children: [
                Expanded(
                  child: FlatButton(
                    onPressed: () {},
                    child: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: FlatButton.icon(
                    onPressed: () {},
                    icon: const Icon(Icons.ac_unit),
                    label: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: RaisedButton(
                    onPressed: () {},
                    child: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: RaisedButton.icon(
                    onPressed: () {},
                    icon: const Icon(Icons.ac_unit),
                    label: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: OutlineButton(
                    onPressed: () {},
                    child: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
                Expanded(
                  child: OutlineButton.icon(
                    onPressed: () {},
                    icon: const Icon(Icons.ac_unit),
                    label: const Text(
                      text,
                      overflow: TextOverflow.ellipsis,
                    ),
                  ),
                ),
              ],
            ),
          ],
        ),
      ),
    );
  }
}

Expected results:
The same as with a button without icon.
Actual results:
A RenderFlex overflowed by 484 pixels on the right.

Logs

[+1055 ms] I/flutter (13510): ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
[   +3 ms] I/flutter (13510): The following assertion was thrown during layout:
[        ] I/flutter (13510): A RenderFlex overflowed by 484 pixels on the right.
[        ] I/flutter (13510):
[        ] I/flutter (13510): The relevant error-causing widget was:
[        ] I/flutter (13510):   _TextButtonWithIcon file:///Users/lsaudon/Projects/poc/lib/main.dart:29:37
[        ] I/flutter (13510):
[        ] I/flutter (13510): The overflowing RenderFlex has an orientation of Axis.horizontal.
[        ] I/flutter (13510): The edge of the RenderFlex that is overflowing has been marked in the rendering with a yellow and
[        ] I/flutter (13510): black striped pattern. This is usually caused by the contents being too big for the RenderFlex.
[        ] I/flutter (13510): Consider applying a flex factor (e.g. using an Expanded widget) to force the children of the
[        ] I/flutter (13510): RenderFlex to fit within the available space instead of being sized to their natural size.
[        ] I/flutter (13510): This is considered an error condition because it indicates that there is content that cannot be
[        ] I/flutter (13510): seen. If the content is legitimately bigger than the available space, consider clipping it with a
[        ] I/flutter (13510): ClipRect widget before putting it in the flex, or using a scrollable container rather than a Flex,
[        ] I/flutter (13510): like a ListView.
[        ] I/flutter (13510): The specific RenderFlex in question is: RenderFlex#95b37 relayoutBoundary=up15 OVERFLOWING:
[        ] I/flutter (13510):   creator: Row ← _TextButtonWithIconChild ← Center ← Padding ← IconTheme ← Builder ← _PointerListener
[        ] I/flutter (13510):     ← Listener ← _GestureSemantics ← RawGestureDetector ← GestureDetector ← _RawMouseRegion ← ⋯
[        ] I/flutter (13510):   parentData: offset=Offset(0.0, 0.0) (can use size)
[        ] I/flutter (13510):   constraints: BoxConstraints(0.0<=w<=207.0, 0.0<=h<=Infinity)
[        ] I/flutter (13510):   size: Size(207.0, 24.0)
[        ] I/flutter (13510):   direction: horizontal
[        ] I/flutter (13510):   mainAxisAlignment: start
[        ] I/flutter (13510):   mainAxisSize: min
[        ] I/flutter (13510):   crossAxisAlignment: center
[        ] I/flutter (13510):   textDirection: ltr
[        ] I/flutter (13510):   verticalDirection: down
[        ] I/flutter (13510):   textBaseline: alphabetic
[        ] I/flutter (13510): ◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤◢◤
[        ] I/flutter (13510): ════════════════════════════════════════════════════════════════════════════════════════════════════
[        ] I/flutter (13510): Another exception was thrown: A RenderFlex overflowed by 495 pixels on the right.
[        ] I/flutter (13510): Another exception was thrown: A RenderFlex overflowed by 499 pixels on the right.
[        ] I/flutter (13510): Another exception was thrown: A RenderFlex overflowed by 497 pixels on the right.
[  +35 ms] I/chatty  (13510): uid=10324(com.lsaudon.poc) 1.ui identical 1 line
[        ] I/flutter (13510): Another exception was thrown: A RenderFlex overflowed by 497 pixels on the right.

No issues found! (ran in 1.6s)

[✓] Flutter (Channel stable, 1.22.6, on macOS 11.2.3 20D91 darwin-x64, locale fr-FR)
    • Flutter version 1.22.6 at /Users/lsaudon/development/flutter
    • Framework revision 9b2d32b605 (il y a 7 semaines), 2021-01-22 14:36:39 -0800
    • Engine revision 2f0af37152
    • Dart version 2.10.5

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/lsaudon/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.4)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    • CocoaPods version 1.9.3

[!] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.54.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.20.0

[✓] Connected device (1 available)
    • SM T500 (mobile) • R9WNB0YFZCJ • android-arm64 • Android 10 (API 29)

! Doctor found issues in 1 category.

Keeping this issue open for further investigation.

flutter doctor -v
[✓] Flutter (Channel master, 2.1.0-11.0.pre.205, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-GB)
    • Flutter version 2.1.0-11.0.pre.205 at
      /Users/dhs/documents/Fluttersdk/flutter
    • Framework revision 267f66a7dc (3 hours ago), 2021-03-10 23:15:03 -0500
    • Engine revision 1b68503bc8
    • Dart version 2.13.0 (build 2.13.0-125.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/dhs/Library/Android/sdk
    • Platform android-30, build-tools 30.0.0
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.3, Build version 12C33
    ! CocoaPods 1.9.3 out of date (1.10.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin
        code that responds to your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see
      https://guides.cocoapods.org/using/getting-started.html#installation for
      instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.54.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.18.1

[✓] Connected device (4 available)
    • sdk google atv x86 (mobile) • emulator-5554                            •
      android-x86    • Android 10 (API 29) (emulator)
    • Darshan's iphone (mobile)   • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.2
    • macOS (desktop)             • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)                • chrome                                   •
      web-javascript • Google Chrome 89.0.4389.82

! Doctor found issues in 1 category.


Auto Completion

please complete the following information:

OS version: Win 10
Editor: vscode
Editor version: latest
Programming language: py
TabNine extension version: 3.4.27
Engine version (could be located within Tabnine Hub): 3.7.1-45

Issue Details:
using the inline completions experimental mode
when I press tab it always autocompletes to the text written even I selected a different option in the drop-down menu.

gz#6536

Hi @ToastedMice
Inline completions are handled separately to the dropdown completions.
To see the inline completion keybindgs, simply hover on the inline suggestion. See https://github.com/codota/TabNine/issues/432#issuecomment-897183815


observer: log opcode number instead of name

There is a mismatch between event numbers in userspace and their opcode numbers from the BPF side, so we can't log opcode names like we've been doing. In any case, the number would be more informative here so let's just do that everywhere.
Signed-off-by: William Findlay<EMAIL_ADDRESS>

Yikes that's a lot of CI failures :(

should be good to go now


feat: ChainHistoryProvider pagination and constraints

Context
These queries are currently unbound and pose a DOS threat. We’re also missing an upper bound on the block range filter, which is a functional issue.
Proposed Solution
As we discussed with @mkazlauskas, it makes sense to apply pagination only on transactionsByAddresses where the ratio between addresses (filter items) and transactions (response) is one-to-many. We also apply addresses count limitation up to the PAGINATION_PAGE_SIZE_LIMIT
For the other two provider methods, we just apply filter items (ids) limitation up to the PAGINATION_PAGE_SIZE_LIMIT value since the relation is one-to-one and the response items can not be greater than one-page size.
The pagination for transactionsByAddresses itself is done on the application level once we extract the transaction ids rather than at DB level across 2 subqueries due to:

we have 2 DB queries (extract inputs/outputs for given addresses) and then compute the tx ids
both findTxInputsByAddresses and findTxOutputsByAddresses queries and composing the tx ids are not expensive operations (in addition could be cached if needed)
to apply pagination in inputs/outputs DB queries would be hard and increase the complexity which requires additional logic for the offset and limit since the tx ids are composed of 2 different subqueries

Important Changes Introduced

add PAGINATION_PAGE_SIZE_LIMIT env var
add --pagination-page-size-limit cli arg
add a base type to model the query as paginated
txs by addresses response is paginated (in-app level)
enforce pagination as the required argument (Open API validation)
add pagination page size limit constraints in provider methods
interpret the error as a 400 code response
make Range generic reusable interface
refactor TransactionsByAddressesArgs from sinceBlock to blockRange

The unsigned commit is recommitted and now is signed. The last two commits related to pagination are squashed as suggested. Force push was required due to both.
Yep, stake pool search pagination constraints are part of a separate task.
Ready for reviews. @mkazlauskas

Noticed today after the latest merge in master some conflicts popped up, shall I resolve them first before the final review, also to be able to see CI build triggered? @rhyslbw  @mkazlauskas

Please rebase and squash

Rebased and resolved conflicts, commits are squashed.


Add merbridge to projects page

Merbridge is designed to make traffic interception and forwarding more efficient for service mesh.
GitHub: https://github.com/merbridge/merbridge
Website: https://merbridge.io/

@kebe7jun would you mind moving it down? We are currently sorting by Github stars

@kebe7jun would you mind moving it down? We are currently sorting by Github stars

Of course, I don't notice this rule before.

@kebe7jun Thanks, it seems the deploy preview failed, can you check it again?

It doesn't look like my changes are causing it, or maybe a new deploy will fix it? But I don't know how to do it.

@xmulligan Thank you!


Get emoji names from searchEmojis

searchEmojis returns a td_api::emojis class, but the class only has a list of emojis, not emojis and their names. searchEmojis is used by Telegram X, but since TDLib doesn't return any names, Telegram X cannot show any corresponding names when listing emojis.

Emoji has no "names". Whatever you call their name, this is fixed and is not related to actual search.

Whatever you call their name, this is fixed and is not related to actual search.

What do you mean?

I mean that emoji has no "names".

By names, I was referring to the "keywords" of an emoji. For example, 🛞 is mapped to tire, tyre, and wheel. If I were searching for "t", I'd like to get tire and/or tire and tyre.

searchEmojis works in the opposite direction. There are no keywords mapped to an emoji, but list of emoji mapped to a keyword. An emoji can be found by hundreds of words in each language. The list of words can be very big and isn't supposed to be visible to the user unless the user typed the exact keyword.

There are no keywords mapped to an emoji, but list of emoji mapped to a keyword.

Isn't that what I said?

No. You can receive multiple emoji by a keyword. The keyword is just a search term in searchEmojis, it isn't supposed to be visible to the user.

Multiple emojis sharing the same keyword isn't (or at least shouldn't) be a problem though

Thank you! (For anyone else looking, this issue was fixed by https://github.com/tdlib/td/commit/bf6345248fd6e9310eb54306af5700eedebe7386)


We still have references to wiki.zephyrproject.org

The files below should be adapted to point to the right location in the Zephyr documentation:

samples/net/mbedtls_sslclient/README:[2] https://wiki.zephyrproject.org/view/Galileo_Gen1_Gen2
samples/subsys/usb/console/README.txt:Refer to https://wiki.zephyrproject.org/view/Arduino_101 for details on flashing
samples/subsys/usb/mass/README.txt:Refer to https://wiki.zephyrproject.org/view/Arduino_101 for details on flashing
samples/subsys/usb/webusb/README.txt:Refer to https://wiki.zephyrproject.org/view/Arduino_101 for details on
tests/bluetooth/tester/README:[1] https://wiki.zephyrproject.org/view/Arduino_101#Bluetooth_firmware_for_the_Arduino_101
tests/net/lib/mqtt_packet/README:  https://wiki.zephyrproject.org/view/Arduino_101

Addressed with PR #757


Update install-azure-cli-windows.md

Fix for issue: #3028

Docs Build status updates of commit 71ded8f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/install-azure-cli-windows.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 24402d8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/install-azure-cli-windows.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 22e04f6:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/install-azure-cli-windows.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

@jiasli Please review.

Hey @yonzhan, would it be possible to get a confirmation on these details? Thanks :)

I don't think this is necessary as Windows will automatically choose the latest TLS version that is available. In the latest Windows 10 and Windows 11, TLS 1.2 will be used.

This issue is too general and can happen to any non-standard Windows connecting to Azure Storage account. Let's close this PR for now. If we see more occurrences of this issue, we will reconsider it.