Performance effect of pseudo labels on dataset

Hi @darrenjkt,
I am curious that auto label generate FP and FN labels even if we do optimize hyperparameters in terms of our dataset. Did you make an experiment about the usage of auto-label ratio according to the dataset? For instance; my dataset annotation size is 500K. I created 800K  pseudo labels using the auto label tool. Does it make sense? Or did you experience like this study?

My understanding of your statement is that you have 500k human-annotated frames and 800k auto-labelled frames right?
I did not do experiments for of combining both human and automatic labels in training a dataset since this work is in unsupervised domain adaptation which assumes you have no labelled data to begin with.
My intuition is that including more pseudo-labelled data with human-labelled data can give further variation in training samples which leads to model improvement. However auto-labelling errors may also confuse the learning of the model which may affect performance. You'll have to experiment and see what works.

My understanding of your statement is that you have 500k human-annotated frames and 800k auto-labelled frames right?
I did not do experiments for of combining both human and automatic labels in training a dataset since this work is in unsupervised domain adaptation which assumes you have no labelled data to begin with.
My intuition is that including more pseudo-labelled data with human-labelled data can give further variation in training samples which leads to better model generalisation. However auto-labelling errors may also confuse the learning of the model which may affect performance. You'll have to experiment and see what works.

Yes, it is right. I think the most important thing is that raw data should not include hard instances because of poor accuracy. Thanks  for reply.

Sorry I don't understand your question. What do you mean by "like dataset"? Also I don't understand what you mean by "using training auto label" and "using as a dataset". Could you clarify?

Sorry I don't understand your question. What do you mean by "like dataset"? Also I don't understand what you mean by "using training auto label" and "using as a dataset". Could you clarify?

Sure, What is the difference between labeling raw data with an auto-label tool to embed dataset, and using without embed dataset? For these two scenarios, we label with the auto-label tool.

I think what you're asking is - what's the difference between these two scenarios:

Training a model on auto-labelled raw data + human-labelled data (e.g. nuscenes)
Training a model only on auto-labelled raw data.

Mixing auto labelled data and human labelled data for a dataset collected from the same deployment domain can work quite well.
However, training a model on a mix of your auto-labelled raw data with human-labelled nuscenes data may not help your model performance if your raw data's lidar and data collection environment is very different to nuscenes. If this is the case, you're better off just training with the auto-labelled dataset.
I hope that I've answered your question


Support for supported_color_mode hs

I have a mixture of hue bulbs and LIFX bulbs. The integration works against the hue bulbs as expected. Thank you!
The LIFX bulbs do not change colour. I found in Developer tools for the LIFX bulb that supported_color_modes: color_temp, hs
I changed the line in presets.py that checks for xy to hs and restarted Home Assistant. The integration successfully works against the LIFX bulbs.
Can you consider making this change in the source code? By supporting xy (hue) and hs LIFX we can support more bulbs.
        if "xy" in hass_state.attributes.get("supported_color_modes", ""):

Thanks
min_color_temp_kelvin: 1500
max_color_temp_kelvin: 9000
min_mireds: 111
max_mireds: 666
effect_list: effect_colorloop, effect_pulse, effect_stop
supported_color_modes: color_temp, hs
color_mode: hs
brightness: 255
hs_color: 277.239, 34.118
rgb_color: 221, 168, 255
xy_color: 0.315, 0.231
friendly_name: Work Desk A19 1
supported_features: 36

It should preferrably just check for all color modes then, which is xy, rgb and hs

This did work before. Then it didn't anymore. Now it does again
b5a00007


How many GPUs are required for this task?

How many GPUs are required for this task?

How many GPUs are required for this task?

Thank you very much for your attention to our work. In our experimental setup, we harnessed the computational power of 4 Nvidia RTX 3090 GPUs. In theory, a greater number of GPUs can be advantageous, as our approach relies on a symmetric cross-entropy loss, akin to the one used in CLIP. The increased computational resources can potentially enhance the model's performance further.

Thanks for your reply! And how much time does the training process consume for each dataset....

Thanks for your reply! And how much time does the training process consume for each dataset....

Phase 1 (80 epoch) lasts about 24 hours, phase 2 (200 epoch) lasts about 36 hours. Hope this helps.

Thks, this helps a lot!

Can you give information about the model parameter number and inference time?


docs: clarify the necessary build tags for lnd in README/Prerequisites

we require to build lnd with tags=signrpc walletrpc chainrpc invoicesrpc same as in the "Getting started" Guide
without the explicit build tags taro failed to connect to lnd
2022-09-29 20:04:09.162 [INF] CONF: Attempting to establish connection to lnd...
error creating server: unable to connect to lnd node: error checking connected lnd version. at least version "v0.15.99, build tags 'signrpc,walletrpc,chainrpc,invoicesrpc'" is required

Thanks Felix, we'll clarify this!


Accordion - JS warning

I'm using the latest version of devextreme (18.1.4-pre-18155), with the latest version of devextreme-react (18.1.4-alpha.7), and with the accordion widget, I get a warning on the JS file generated from my TSX file:

Line 19:  Unexpected mix of '&&' and '||'  no-mixed-operators

Line 29:  Unexpected mix of '&&' and '||'  no-mixed-operators

The code it self is the following:
function AccordionTitleTemplate() {
        return _super !== null && _super.apply(this, arguments) || this;
    }

function AccordionContentTemplate() {
        return _super !== null && _super.apply(this, arguments) || this;
    }

Everything works, at least I saw no issues, I just would like to get ride of the warning.

Why not just add parenthesis to the first && and permanently solve that warning?
return (_super !== null && _super.apply(this, arguments)) || this;

@AndrePinto-NET
As far I understand these warnings occur in your TS-generated code, isn't it?

Yes, I see. This code is automatically generated by the TS compiler, and I see no need to fix anything in it. By the way, most projects omit linting the node_modules folder. Do you have any strong reasons for doing so?

Some additional info here. I did not specified a constructor on my class, so by default, TS writes on the generated java script file the following constructor:
    function MyClass() {         return _super !== null && _super.apply(this, arguments) || this;     }
If I write the constructor my self, it ends up:
function MyClass(props) {         return _super.call(this, props) || this;     }
This will remove the warning that I was talking about. I can clearly see, like you mentioned before, that this has nothing to do with devextreme it self.


mbedtls: Backport "Fix x86_64 assembly for bignum multiplication"

Backports PR https://github.com/ARMmbed/mbedtls/pull/4948 to fix a regression
with our macOS builds using Clang 12.
Fixes #53297.

Cherry-picked for 3.4.

I don't think these issues are related. This bug here existed with or without that PR.

Yeah it's not related to that PR. The issues with the gzip compression PR are listed in #53800.


Add post How to Contribute?

Add post where it's shown the ways you can contribute to the theme, and how to open a Pull Request.
I'll also translate the post to spanish.

@BernatBC I have updated the local development guide in this PR. Can you please update your guides too?
https://github.com/hugo-toha/toha/pull/869

Thank you @hossainemruz!
I've updated the post and is ready for merging.


E/AndroidRuntime: FATAL EXCEPTION: create_react_context

🐛 Bug Report
I upgrade RN to last version ,then i want run it ,result this error.
To Reproduce
frist run commind "react-native upgrade"
then run "react-native-git-upgrade"
last run "npm install" and "react-native run-android"
Expected Behavior
I hope it worked for me.
Code Example
02-11 15:54:12.131 1017-1358/? E/AndroidRuntime: FATAL EXCEPTION: create_react_context
Process: com.xx.xx, PID: 1017
java.lang.RuntimeException: Unable to load script from assets 'index.android.bundle'. Make sure your bundle is packaged correctly or you're running a packager server.
at com.facebook.react.bridge.CatalystInstanceImpl.jniLoadScriptFromAssets(Native Method)
at com.facebook.react.bridge.CatalystInstanceImpl.loadScriptFromAssets(CatalystInstanceImpl.java:226)
at com.facebook.react.bridge.JSBundleLoader$1.loadScript(JSBundleLoader.java:32)
at com.facebook.react.bridge.CatalystInstanceImpl.runJSBundle(CatalystInstanceImpl.java:253)
at com.facebook.react.ReactInstanceManager.createReactContext(ReactInstanceManager.java:1152)
at com.facebook.react.ReactInstanceManager.access$900(ReactInstanceManager.java:123)
at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:943)
at java.lang.Thread.run(Thread.java:818)
Environment
React Native Environment Info:
System:
OS: macOS High Sierra 10.13.4
CPU: (8) x64 Intel(R) Core(TM) i7-4750HQ CPU @ 2.00GHz
Memory: 27.22 MB / 8.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 11.6.0 - /usr/local/bin/node
npm: 6.7.0 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
Android SDK:
API Levels: 22, 23, 24, 25, 26, 27, 28
Build Tools: 23.0.1, 23.0.3, 25.0.0, 27.0.3, 28.0.0, 28.0.3
System Images: android-28 | Google APIs Intel x86 Atom
IDEs:
Xcode: /undefined - /usr/bin/xcodebuild
npmPackages:
react: ^16.6.3 => 16.6.3
react-native: ^0.58.3 => 0.58.3
npmGlobalPackages:
react-native-cli: 2.0.1
react-native-git-upgrade: 0.2.7

react-native-git-upgrade has not been well supported and was recently removed. Can you try using a different upgrade process?

@hramos 👍 Do you know @providesModule,I upgrade RN to 0.58.4,it not work for me ,but befor it worked with RN0.38.0...

same issue
RN 0.59.8

Same issue, RN0.59.0, happens when building for release.

Same issue, RN0.59.0, happens when building for release.

check your gradle version (distributionUrl)
RN0.59.0 doesn't support gradle 5

Same issue, RN0.59.0, happens when building for release.

check your gradle version (distributionUrl)
RN0.59.0 doesn't support gradle 5

Don't upgrade gradle
Use *.jks format instead of *.keystore
Locate the app-release.apk, and install in any device

Same issue, RN0.59.0, happens when building for release.

check your gradle version (distributionUrl)
RN0.59.0 doesn't support gradle 5

Don't upgrade gradle
Use *.jks format instead of *.keystore
Locate the app-release.apk, and install in any device

Thank you for the suggestions!
To follow up, my problem was completely different and stemmed from the fact that our CI server failed when trying to build JS bundle due to the limit of the amount of watchers reached, which resulted in the fact that the .apk did not contain the bundle and thus the create_react_context failed while trying to retrieve the package from the local server.
After I increased the number of watchers it compiled properly and the JS bundle was contained within the .apk and they lived happily ever after.
Related issue:
https://stackoverflow.com/questions/22475849/node-js-what-is-enospc-error-and-how-to-solve/32600959#32600959

I have the same problem and I solved it by turning Metro server off before the app was installed

I finally built a working Release

for having the index.android.bundle mentioned by

react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

remove extra files broke the build (for Error: Duplicate resources)

rm -vrf android/app/src/main/res/drawable*
run it with variant=release
react-native run-android --variant=release

My Environment

react-native info

  React Native Environment Info:
    System:
      OS: macOS 10.14.5
      CPU: x64 Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz
      Memory: 611.33 MB / 32.00 GB
      Shell: 5.3 - /bin/zsh
    Binaries:
      Node: 12.3.1 - /usr/local/bin/node
      Yarn: 1.16.0 - /usr/local/bin/yarn
      npm: 6.9.0 - /usr/local/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
    SDKs:
      iOS SDK:
        Platforms: iOS 12.2, macOS 10.14, tvOS 12.2, watchOS 5.2
    IDEs:
      Android Studio: 3.4 AI-183.6<IP_ADDRESS>22156
      Xcode: 10.2.1/10E1001 - /usr/bin/xcodebuild
    npmPackages:
      react: 16.8.3 => 16.8.3
      react-native: 0.59.0 => 0.59.0

Not sure I'm doing it right but at least the apk works on my Pixel 2

@ryanhanwu The error still existed after i follow you.

I do have the same issue with react native 0.60

+1

I do have the same issue with react native 0.60

Same issue on 0.60.5
System:
    OS: macOS 10.14.6
    CPU: (4) x64 Intel(R) Core(TM) i5-4570R CPU @ 2.70GHz
    Memory: 26.04 MB / 8.00 GB
    Shell: 5.3 - /bin/zsh
  Binaries:
    Node: 12.9.1 - /usr/local/bin/node
    Yarn: 1.17.3 - /usr/local/bin/yarn
    npm: 6.9.0 - /usr/local/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
  SDKs:
    iOS SDK:
      Platforms: iOS 12.4, macOS 10.14, tvOS 12.4, watchOS 5.3
    Android SDK:
      API Levels: 25, 26, 27, 28
      Build Tools: 28.0.3, 29.0.1
      System Images: android-27 | Google APIs Intel x86 Atom
  IDEs:
    Android Studio: 3.4 AI-183.6<IP_ADDRESS>92245
    Xcode: 10.3/10G8 - /usr/bin/xcodebuild
  npmPackages:
    react: 16.8.6 => 16.8.6
    react-native: ^0.60.5 => 0.60.5

@ryanhanwu solution's worked perfectly, thank you!

can we help me out
10-09 12:59:23.526  7655  7694 E AndroidRuntime: FATAL EXCEPTION: create_react_context
10-09 12:59:23.526  7655  7694 E AndroidRuntime: Process: pacakgename, PID: 7655
10-09 12:59:23.526  7655  7694 E AndroidRuntime: java.lang.RuntimeException: Unable to load script from assets 'index.android.bundle'. Make sure your bundle is packaged correctly or you're running a packager server.
10-09 12:59:23.526  7655  7694 E AndroidRuntime: 	at com.facebook.react.bridge.CatalystInstanceImpl.jniLoadScriptFromAssets(Native Method)
10-09 12:59:23.526  7655  7694 E AndroidRuntime: 	at com.facebook.react.bridge.CatalystInstanceImpl.loadScriptFromAssets(CatalystInstanceImpl.java:226)
10-09 12:59:23.526  7655  7694 E AndroidRuntime: 	at com.facebook.react.bridge.JSBundleLoader$1.loadScript(JSBundleLoader.java:32)
10-09 12:59:23.526  7655  7694 E AndroidRuntime: 	at com.facebook.react.bridge.CatalystInstanceImpl.runJSBundle(CatalystInstanceImpl.java:253)
10-09 12:59:23.526  7655  7694 E AndroidRuntime: 	at com.facebook.react.ReactInstanceManager.createReactContext(ReactInstanceManager.java:1152)
10-09 12:59:23.526  7655  7694 E AndroidRuntime: 	at com.facebook.react.ReactInstanceManager.access$900(ReactInstanceManager.java:123)
10-09 12:59:23.526  7655  7694 E AndroidRuntime: 	at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:943)
10-09 12:59:23.526  7655  7694 E AndroidRuntime: 	at java.lang.Thread.run(Thread.java:764)
I can not release build my build was crach
React Native Environment Info:
System:
OS: macOS 10.14.6
CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
Memory: 57.74 MB / 8.00 GB
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 12.6.0 - /usr/local/bin/node
Yarn: 1.19.0 - /usr/local/bin/yarn
npm: 6.11.3 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 13.0, DriverKit 19.0, macOS 10.15, tvOS 13.0, watchOS 6.0
Android SDK:
API Levels: 22, 23, 25, 26, 27, 28, 29
Build Tools: 27.0.0, 27.0.3, 28.0.0, 28.0.1, 28.0.2, 28.0.3, 29.0.0, 29.0.1, 29.0.2
System Images: android-22 | Google APIs Intel x86 Atom, android-23 | Google APIs Intel x86 Atom
IDEs:
Android Studio: 3.5 AI-191.8<IP_ADDRESS>00203
Xcode: 11.0/11A420a - /usr/bin/xcodebuild
npmPackages:
react: 16.8.3 => 16.8.3
react-native: 0.58.6 => 0.58.6
npmGlobalPackages:
react-native-cli: 2.0.1


add list and get policy

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 32 (0.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.6%) to 22.508%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

bundles.go
0
32
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
-0.6%

Covered Lines:
298

Relevant Lines:
1324

💛  - Coveralls


Fix PTDS destruction

Closes #5145
The actual stream tests show this error, but due to Python ignoring exceptions in __del__ methods they never failed when they should have done it :).

Warning: Due to the precarious circumstances under which del() methods are invoked, exceptions that occur during their execution are ignored, and a warning is printed to sys.stderr instead. Also, when del() is invoked in response to a module being deleted (e.g., when execution of the program is done), other globals referenced by the del() method may already have been deleted or in the process of being torn down (e.g. the import machinery shutting down). For this reason, del() methods should do the absolute minimum needed to maintain external invariants. Starting with version 1.5, Python guarantees that globals whose name begins with a single underscore are deleted from their module before other globals are deleted; if no other references to such globals exist, this may help in assuring that imported modules are still available at the time when the del() method is called.

cc @pentschev

Closing as @leofang's PR #5172 includes the fix for this issue  😄


Add support for SimplerInvoicing 1.2

Found at https://github.com/SimplerInvoicing/validation

Done with release 3.1.0


Automated Pack Migration

When updating the dev version of the pack, various folders and files need to be moved over to keep things intact. I wrote a short Powershell script to bring the recommended files over automatically to save time. It prompts the user for the old pack's minecraft folder path, and the new path. Saves, waypoints, and some other files outlined in Playing On Dev are moved to where they need to be.
I have tested this for my own use for a few versions and it works well so far. I've linked to the latest version of the script, there shouldn't need to be any other changes but in case there are I will update it.
Script Here

Moved the issue over to our guides repo. Thanks for taking the time to make this utility. Feel free to submit a pull request linking to it in the Playing On Dev guide.

#16


set_option completion only works with a prefix

Prerequisites
Please put an X between the brackets as you perform the following steps:

[x] Check that your issue is not already filed:
https://github.com/leanprover/lean4/issues
[x] Reduce the issue to a minimal, self-contained, reproducible test case.
Avoid dependencies to Mathlib or Batteries.
[x] Test your test case against the latest nightly release, for example on
https://live.lean-lang.org/#project=lean-nightly
(You can also use the settings there to switch to “Lean nightly”)

Description
Type set_option  and trigger autocompletion in an editor (VSCode and neovim tested) and no completion results are returned.
But they are properly returned for set_option t (producing all options starting with t).
Context
Reported originally here on Zulip
Steps to Reproduce
(above)
Expected behavior: [Clear and concise description of what you expect to happen]
Completion of all options if no prefix is given.
Actual behavior: [Clear and concise description of what actually happens]
No response.
Versions
[Output of #version or #eval Lean.versionString] "4.14.0"
[OS version, if not using live.lean-lang.org.] macOS 15.1 (24B83)
Additional Information
Impact
Add :+1: to issues you consider important. If others are impacted by this issue, please ask them to add :+1: to it.

Are you sure it's only a prefix? I think I have seen it work with a infix of the full option as well.
Maybe the correct title is “No whitespace completion for set_option”?

Yes you're right, changed.


refactor(parser): move source length check into lexer

This change makes little difference in itself, but moving the check into the lexer will allow some optimizations in lexer using unsafe code which depend on this invariant.

Let me guess you are going to remove a lot of bound checks... I can't wait!

Let me guess you are going to remove a lot of bound checks... I can't wait!

I have been investigating that, yes!


Additional dns to overlay network

Could I add additional dns service (for example consul) to overlay embeded dns service?

Output of docker version:
(paste your output here)

Output of docker info:
(paste your output here)

Additional environment details (AWS, VirtualBox, physical, etc.):
Steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Additional information you deem important (e.g. issue happens only occasionally):

@nejtr0n thanks for asking, but the GitHub issue tracker is to track bugs and review PR's, not a general support forum. Can you ask your question on one of the below instead?

forums.docker.com
the #docker IRC channel on freenode
StackOverflow

I'll close this issue here


change to package level, since it's used only it tests  fix related t…

…o issue #1896

@ryanjbaxter something looks weird. Suddenly all my builds breaks. Even when I just fork without adding new code.
for example:
Caused by: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'org.springframework.cloud.config.server.environment.vault.SpringVaultClientConfiguration': Requested bean is currently in creation: Is there an unresolvable circular reference?
any idea? please help !!

I just realized this change was made in main and not in the 2.2.x branch.  There was a change to the way circular references were detected in Spring Boot that broke us.  I will need to look into that, but its unrelated to this change.
Is there a reason why these changes should be made in the 2.2.x branch?

@ryanjbaxter - I guess you mean - shouldn't ?
if that right, I don't see reason why not. It can be merged to all branches.
What do I need to do in order to make my build work again. Now even clean fork breaks.

Create a PR against 2.2.x, that branch should be fine.  I will merge it and merge it into main.  There is nothing you can do about making main build until we figure out the circular reference.

The build is now passing, but I would still suggest we submit this to the 2.2.x. branch

@ryanjbaxter  I'm working on that right now

@ryanjbaxter I see that you didn't insert your fix:
Make GitCredentialsProviderFactory a bean.  Fixes #1896 (#1926)  to branch 2.2.x and my fix depends on it.
Can you do it?

Im sorry im getting my projects/branches confused, submit the pr to the 3.0.x branch.

Already addressed in https://github.com/spring-cloud/spring-cloud-config/pull/1926


Need an example that shows how to safely display rich text created by draftjs

If we use draftjs to create rich text, we also need to display it somewhere. But the problem is how do we ensure that the data entered by the user and sent to the server via Draft.js is actually safe from XSS? I'd love to see an example that shows how Facebook ensure this.

fixed typo in the title

Hi, I suppose you can  something like this http://htmlpurifier.org on server side.

Save the ContentState to your server, it's just JSON and (unless you parse it in an unsafe way) it won't pose an XSS risk. You can use something like redraft to render, or one of the renders on awesome-draft-js which come in many languages.

you can use something like CSP to resolve he problem.

I have the same question. it is safe to save the draft-js objects on the server side without validation?


BLC_14: Bubbles of selected countries not shown in find

SEVERITY: Major
MODULE: Bubble Chart
OS/BROWSER: Windows 7/Chrome 45.0
STEPS TO REPRODUCE:

Navigate to URL: http://static.gapminderdev.org/vizabi/release/v0.5.1/preview/bubblechart.html
Bubble chart page will be loaded
Click on Find
Click the checkbox for countries like Abkhazia, Akrotiri etc.
Note that bubbles will not be selected for above stated countries

ACTUAL RESULTS:
Bubbles of selected countries like Abkhazia, Akrotiri etc. in Find, are not shown in chart
EXPECTED RESULTS:
Data for countries is not available like Abkhazia, Akrotiri etc. Bubbles & labels should be shown in chart for selected countries as Angola is selected, cab be seen in below screenshot
SCREENSHOT:

I believe this was fixed after 13420e0e26b656fc6829567e732a3a5919cc2a23 and will be available for testing after the next release.
The solution was: countries without sufiicient data to be displayed on the chart cannot be selected and do now show up on the "Find" list

You may also quickly check the develop version to make sure it's working: http://static.gapminderdev.org/vizabi/develop/preview/bubblechart.html

This issue is fixed now from developer end, as provided URL:
http://static.gapminderdev.org/vizabi/develop/preview/bubblechart.html
We will test it again when next release will be made available as per above comment of @arthurcamara1


Update cudfjni dependency version to 21.06.0

Signed-off-by: Peixin Li<EMAIL_ADDRESS>cudfJNI 21.06.0 is currently building and deploying, I will trigger the pre-merge after released

build

build


Adding malloc_trim call on full GC

Follow up on #5047. Does a couple things:

Adds a few methods to MRuby::Command::Compiler for asking about headers and functions. I took inspiration from how meson does it, which has a nice API.
Wraps the necessary includes and call within a #define set inside gcc.rake. That way if a user has a custom build_config.rb they can remove the define if they wish, like if they are using a different allocator than glib.

It appears either mingw or the CI system doesn't allow removing temp directories. That is a strange situation either way. I will work around it.

I am wondering whether it may be better to specify manually via a macro define, e.g. MRB_USE_MALLOC_TRIM.
In that case, we don't have to add a complex detection code. No worry about cross-compiling nor compiler portability.

Oh yes it should be prefixed with MRB_.
Are you saying you would like it off by default and enabling it with a custom build_config?

@RoryO yes. Altough it's less intelligent. I'd like to follow KISS principle here.

Okay, I have done that.

Thank you! It will be merged to mruby3 branch.

Oh that’s new! Okay I changed the base branch.

Oh, you didn't have to. I did it on my side.

Thank you anyway.

Should this be closed then?

I will close when I push to GitHub. I am struggling with other issues. Wait for a while.

Merged.


Device Group Support

As a user with multiple subs, I would like a solution that would allow me to change the settings on more than one sub at the same time.

Hi. At the same time would be impossible: your bluetooth connection can only handle 1 connection at a time, not only for svs devices but also for the rest. At most, all that could be done is launch a script, scan for devices, filter them by mac (I suppose every svs mac starts by 08:eb:ed) and then select one of them and pass this mac to the pySVS program and use it as value for SVS_MAC_ADDRESS variable.

Yeah - at the same time wasn’t the right expression as I know about that limitation. More like macro support to an arbitrary number of configured subs.
What sort of delay would be anticipated when switching between device connections? Would it be possible to support multiple BT transmitters simultaneously on the same host (and have each bound to their own sub)? Most users would have two at most although more might be the case for a smaller user base.


Cuda sync

the environment of train.py still have a little bit of problem, but I just create it first in case you want to take a look

Please let mw know when it runs.


Undefined network status causes runtime errors

Hello,
I just encountered a runtime error with the graphql-ppx use hook, it appears that in a certain case when the ~skip argument is passed as true the NetworkStatus gets undefined.
Here's how I fixed it, I suggest these changes:

<EMAIL_ADDRESS>
module NetworkStatus = {
  module Js_ = {
-    type t = int;
+    type t = option(int);
  };
<EMAIL_ADDRESS>jsConverter]

    |<EMAIL_ADDRESS>7] Ready
    |<EMAIL_ADDRESS>8] Error;

-  let toJs: t => Js_.t = tToJs;
+  let toJs: t => Js_.t = (t: t) => Some(tToJs(t));

-  let fromJs: Js_.t => t = string => tFromJs(string)->Belt.Option.getExn;
+  let fromJs: Js_.t => t =
+    optionalString => {
+      switch (optionalString) {
+      | Some(string) => tFromJs(string)->Belt.Option.getExn
+      | None => Ready
+      };
+    };
};

<EMAIL_ADDRESS>
    data,
    error,
    loading: js.loading,
-   networkStatus: js.networkStatus->NetworkStatus.fromJs,
+   networkStatus: Some(js.networkStatus)->NetworkStatus.fromJs,
  };
};

Thanks for the great contribution!

Awesome, thanks for finding this! I want to dig into this a little further and see exactly where issue is. Did I improperly type network status and it is supposed to be option(int)? Or did I improperly type something else and that type should have option(NetworkStatus.t)? Or is there no issue on our end and it's a bug in Apollo? I'll see if I can look into it later tonight.

So it looks like it's indeed a bug (or bad type) in apollo client. So the question becomes, do we default to Ready like you have above, come up with a new variant like SkippedOrNotPresent, or just switch NetworkStatus.t to be optional everywhere? I lean toward one of the first two, but will sleep on it and see if we get any input in the meantime.

And of those two, I'm kinda leaning toward SkippedOrNotPresent because it's the only one that actually conveys what's happening and doesn't require you to unwrap unnecessary optionals


Please create a release/tag

I am working on adding this to nixpkgs to fix, at first, bruno using the postCheck parameter of fetchFromGitHub.
The problem is that without a release it's much harder to setup automatic bumps of the package (basically someone will need to manually update some values everytime this changes to be up to date).
In nixpkgs these automations are done using r-ryantm but a update is only triggered by a release, the release has a version that is associated with a git tag, that changes what is passed to fetchFromGitHub, that triggers a rebuild of the source code download pass, that triggers the automation that changes the hash.
Basically, releases == jidoka(https://en.wikipedia.org/?title=Jidoka&redirect=no)/autonomation, no releases == full manual.
Just tagging a commit with git tag v0.1 and git push, for example, may solve the issue already (I am not sure if git push pushes all the tags by default).
For reference this is the PR I am working on, I may split up adding this package in another PR: https://github.com/NixOS/nixpkgs/pull/261139

No problem, I have added a release to this repository. Anything else you need from my end? Thank you for looking into adding this to nixpkgs - I think that is a good idea.

Perfect! That's all. Thank you!


Options not consistent for FS and S3FS in writeFile

I was trying to specify the encoding type of the file to be written however I found that I could not use FS and S3FS interchangeably .
The options for encoding in S3 putObject is 'ContentEncoding'. For FS it is 'encoding'.
Do you think there should be some options normalizing for these implementations?

Yeah, I noticed some inconsistencies with the API in relation to this and was going to address thing. S3FS should be taking in the interface of FS and mapping it as needed.
I'll get this covered with 2.0.0.


(AUTOMATIC) opensource update - Update to C++ 11

Closing, since https://github.com/googlei18n/libaddressinput/pull/140 was merged.


fix weight tooltip spaces

Ok, I know this is kind of an useless PR... but seeing those uneven spaces was really triggering me :/
Before:

After:

oh i didn't need to put those


Pattern: lead space, centered: specs from Web Simplification

Wonil-Suh1 created the following on Sep 01:
Specs will be provided by Lila.  Target delivery date is Sept 23.
Additional Information

discover pattern specs.sketch from Lila

Acceptance Criteria

[ ] Specs received from Web Simplification and reviewed with DDS engineering

Original issue: https://github.ibm.com/webstandards/digital-design/issues/1560

On Oct 01, hahnrob commented:
Design review meeting conducted Sept 24.


App launches on Realme X2 Pro stutter with --release but not --profile

Hello,
Everytime, I start the application there is animation stutter. This is mostly with the release APK.
Even with the default counter app. If I run it with "flutter run --release" command there is animation stutter at start of the application. Seems like frame drops.
Here is a screen recording. No other app is running at the background.

Target Platform: Android
Target OS version/browser: Android 10
Devices: Realme X2 Pro
Logs
$ "flutter analyze"
found no issues.
$ flutter doctor -v
[✓] Flutter (Channel master, 1.23.0-8.0.pre.284, on Linux, locale en_IN)
• Flutter version 1.23.0-8.0.pre.284 at /home/kapil/flutter
• Framework revision eefcff900c (23 hours ago), 2020-10-10 23:42:02 +0200
• Engine revision 11d756a62e
• Dart version 2.11.0 (build 2.11.0-207.0.dev)
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
• Android SDK at /home/kapil/Android/Sdk
• Platform android-30, build-tools 30.0.2
• Java binary at: /home/kapil/android-studio/jre/bin/java
• Java version OpenJDK Runtime Environment (build
1.8.0_242-release-1644-b3-6222593)
• All Android licenses accepted.
[✓] Android Studio (version 4.0)
• Android Studio at /home/kapil/android-studio
• 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-6222593)
[✓] VS Code (version 1.50.0)
• VS Code at /usr/share/code
• Flutter extension version 3.15.0
[✓] Connected device (1 available)
• RMX1931 (mobile) • <IP_ADDRESS>:5555 • android-arm64 • Android 10 (API 29)
• No issues found!

Closing this because it was the device issue.
Tested in Nokia 7 plus, release apk works fine, no animation stutter.

Closing this because it was the device issue.
Tested in Nokia 7 plus, release apk works fine, no animat

Holy moly, I've just finished developing my simple app and found myself with the same problem. On closer inspection noticed it was X2 Pro , same as my phone....
this sucks... 👎

I think its the problem with their Realme UI. There is so much lag or frame drops when playing some high end mobile games too.

I've actually tried LOS 17 and it's actually worse, on relame UI, --profile has no startup stutter but on LOS it is present as well

Yes you are right --profile feels really smooth but --release is stuttering.

Cc @liyuqian

I'm sorry, that was get closed by mistake.

Sorry, this was get closed by mistake.

This seems to be specific to Xiaomi devices. I just received a Xiaomi 10 and I'll try to reproduce it locally to figure out if there's anything that Flutter can help, or if this is an issue that only Xiaomi can fix.

Yes this can be a device specific issue because release APK works fine on Nokia. And the device I am testing in is a Realme device not Xiaomi.

But the 'flutter run --profile' works fine, No stutter.

@liyuqian
Actually, it is not Xiaomi issue. I've tried running the app on my old Redmi Note 5 Pro and it is working as intended. Seems to be Realme issue.
PS: I have not yet tested this but, it might be R8 compressing which is applied in --release that is causing the initial stuttering.
Need to test this though.

Ah, I mistakenly thought that Realme is a sub-brand of Xiaomi like Redmi. We don't have a Realme device in our library. CC @kf6gpe who keeps track of our hardware-specific needs. Considering the current resource limit and shipping latency, it may take a long time before we can act on this with a Realme device.

Which Realme, and I'll see if I can get one, @liyuqian and @zippka224? May take a week or so for me to get it and get it shipped over to @liyuqian though.

@kf6gpe Realme X2 Pro,
I am running latest OTA Android 10

Self-assigning so I remember to track down a handset, which I didn't do before. Stay tuned.

Handset shipped to @liyuqian today. Sorry for the delay on my side.

+1. I facing now same issue with my app. In release build there are visible stutters on every launch, profile also have the same, but less visible and not on every launch.
Only debug build have no stutters at app start. Don't know what is the reason of this problem, but hope it's framework-related one and will be fixed ☹

@RuslanBarcho Please file a separate bug for that issue, this one is specifically about the Realme phones.

I tried breaking down the GIF in the original report using https://ezgif.com/split to see the stutter but actually it doesn't seem bad at all? I'm not sure I'm seeing what I'm supposed to be seeing. Do you have a video recording by any chance?

Sorry, don't have any video recording. If flutter team has Realme X2 Pro by any chance, then this issue can be seen with any app's release apk.
Note that Realme X2 Pro is upgraded to Android 11 since this issue was opened. Maybe they have fixed it. I don't know.


Add support for Gradle multi-module projects.

The approach to inject the plugin dependency-license-report plugin used here is making a modified copy of the build.gradle and running it with -b, it means Gradle will ignore the settings.gradle and ignore all the subprojects (modules).
I asked on Gradle Slack and they told me to use an init script instead so it works properly, that will also fix the issue that we are only considering build.gradle and not the "new" build.gradle.kts which would change the syntax slightly.
Alternatively it would be possible to copy the settings.gradle to another file adding to it rootProject.buildFileName = "license-....gradle"´ and using it adding to the cli -c licensed-settings.gradle, but then we still need to add support for .gradle.kts files

@CristianGM I don't have deep knowledge of Gradle, but am happy with any changes that maintain backwards compatibility while solving the problems you mention. Would you be able to open a PR?

This was resolved with https://github.com/github/licensed/pull/583, which will be part of the major version 4.0 release


Is there a way to add strings to the license dictionary?

I'd like to be able to quickly add to the existing dictionary additional aliases that I'm seeing specific to my project.
Is there a way I can do this?

Hello @ketan
You may

add a license-dictionary.yaml to your project.projectDir
place a yamlsomewhere else and add it to the Task-Configuration

tasks.enforceLicenses {
    dictionaries = listOf("my-specific.yml")
}

added more config info to README.md

Thank you very much!
On Wed, 28 Aug, 2019, 15:14 André Schäfer<EMAIL_ADDRESS>wrote:

Closed #3
https://github.com/namics/gradle-license-enforce-plugin/issues/3.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/namics/gradle-license-enforce-plugin/issues/3?email_source=notifications&email_token=AAACSZXTFYBGIZRGDMMD7PLQGZCGRA5CNFSM4IOVWFJKYY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOTJPHM7A#event-2589881980,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAACSZRGJFJ7YMJNROTO4W3QGZCGRANCNFSM4IOVWFJA
.


feat(one_click_deployment/docker_os_env): docker

run c-based operating system development environment just through docker build and docker run.

thanks

已经合并，十分感谢


Change name of Death test name.

The name of the test cae for deth test should be terminated as "DeatTest". See GoogleTest Advanced Topics.

Released


rosbag2 service record/play support for Jazzy release note.

part of https://github.com/ros2/ros2_documentation/issues/4274

@clalancette @MichaelOrlov requesting review

@clalancette thanks, I just fixed your comments.


Implement Vigenere cipher

Implementation of Vigenere cipher in rust.
The current one from Rosetta code is way too outdated.

Thanks for this PR! Please place a comment here when you have addressed the issue I pointed out, so I can be notified about it and merge this.

Thank you for your feedback!
I have applied the change.

Awesome! Thanks!


Feat: abiwan integration for TS validation based on ABI

Motivation and Resolution
...
RPC version (if applicable)
...
Usage related changes

Change 1.
...

Development related changes

Change 1.
...

Checklist:

[ ] Performed a self-review of the code
[ ] Rebased to the last commit of the target branch (or merged it into my branch)
[ ] Linked the issues which this PR resolves
[ ] Documented the changes in code (API docs will be generated automatically)
[ ] Updated the tests
[ ] All tests are passing

Related to https://github.com/keep-starknet-strange/abi-wan-kanabi/issues/30

Closes https://github.com/0xs34n/starknet.js/issues/140


Update main function for all commands

Is there a property named params? I thought the leftover is spread into params. And also we need to make it fall back to an empty object.


Custom blocks

Which is better?
~A:~
import { block } from 'lit-vue'

block('i18n')`
...
`

B:
import { html } from 'lit-vue'

html`

hello world

<custom-block name="i18n">
...
</custom-block>
`

// edit: I immediately like B more after creating this issue 😅

:tada: This issue has been resolved in version 1.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Switch block verification to the unified scheduler

Problem
time has come this time really since #1668
Summary of Changes
soak the unified scheduler.

as of now, testnet adopted unified scheduler about 50%:

and it looks like the cluster isn't dead yet. xD


Integrate dask to parallel computation

build dask.highlevelgraph.HighLevelGraph
run dask.base.compute

we don't need to integrate it.


Add Java 17 images

Contributes to https://github.com/Azure/azure-functions-java-worker/issues/548
For Spring Cloud Function Azure we need to run Java 17 on Azure as the latest version of Spring Cloud Function requires it. However, the Azure Java functions runtime does not yet support Java 17.
To get around this limitation we deploy to Azure in a custom Docker container as described here. One problem, no Java 17 images in this repo to base our image from. I created the Java17 images from this repo locally and it works well. I figured I would attempt to contribute this back. I am sure there are other hurdles besides this PR to "turn on Java 17 for the world" but here we go anyways. I hope it helps.

ℹ I am not super familiar w/ this repo pipeline and tests so I am going to submit this PR and watch what the CI does. I am happy to update/add tests for this. Any guidance is appreciated as well. Thanks.

PR information

[x] The title of the PR is clear and informative.
[x] There are a small number of commits, each of which has an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, see this page.
[x] If applicable, the PR references the bug/issue that it fixes in the description.
[ ] New Unit tests were added for the changes made and CI is passing.

Hi @onobc, thanks very much for your contribution! Left some minor comment. Thanks again!

Please let me know if I can modify your pr directly. Thanks.

Hi @kaibocai , yes feel free to modify the PR in any way you need.


More info at: https://travis-ci.com/Qiskit/qiskit-terra/jobs/253805834

Duplicate of #3413 .


Rajben/create crud of products

Crud implementation

Just review. Please don't merge. I hope I'll improve implementation


Normalize sql statements to elide literal numbers and strings.

Normalize sql statements using a javacc-based lexer.

Replace sql numeric and string literals with a ?
Unit tests for sql normalization, including edge cases like thousands of quote marks
Adjust existing instrumentation tests accordingly to expect normalized sql in spans
Add configuration option to disable this feature
Fix weird edge case in muzzle: ReferenceMatcher's handling of primitive values was preventing helper classes from using primitive fields (primitive arrays were fine) due to two different reflective type systems in use with different representations of said primitive types.

I think it would be nice for the normalization to happen off the main thread (in a span processor pipeline, prior to sending to exporter), but we can revisit that later (need to address #368 first 😄).

It's pretty darn fast (sub-sub-millisecond for normal sql), and could be made faster if need be.  But I agree, we're going to encounter things like this that necessitate some off-thread processing.

Can any gradle/circleci expert on here help with the spotless license check here?  The issue is that javacc generates some files in build/generated/, and the check target is complaining that they don't have a license header.  I specifically saw this problem on my local builds and added an exclude for /generated/ to the top-level gradle/spotless.gradle config.  This works for my builds but apparently not for circleci ones?

I can confirm. Works locally. Fails on CI. Really not sure what's the difference. Looked a bit at the spotless gradle plugin source code even 😭.
Some ideas worth trying (in this order of invasiveness I think):

Update com.diffplug.gradle.spotless to the latest 3.28.1 in trace-java.gradle
Change targetExclude from **/generated/** to build/generated/**
Change targetExclude again, this time to build/generated/**/*.java
Remove targetExclude altogether and add target 'src/**/*.java'

I think the last one should work, it's not ideal as it bypasses spotless' built-in detection of Java source sets, but if the other ideas don't work, then I'm all in on the last one 👍.

check finally succeeded! 😆🎉

check finally succeeded! 😆🎉

Yes.  I don't know if you saw the commit comment, but I did manually make sure that a missing license header in src/* does in fact still fail the build.


Identical segmentation if interruptions occur

I have two nginx servers with the following configurations:
Origin

the one receiving stream from client

rtmp {

    server {

        listen 1935;
        chunk_size 4096;

        application dvr {
            live on;
            hls on;
            hls_path temp/hls_temp;
            hls_fragment 4s;
            # hls_playlist_length
            hls_continuous on;
            hls_cleanup off;
            hls_fragment_slicing aligned;
            hls_type event;
            hls_fragment_naming timestamp;

            push localhost:1936 app=dvr;
        }
    }
}

Edge

the one that re-streams the origin to clients

rtmp {

    server {

        listen 1936;
        chunk_size 4096;

        application dvr {
            live on;
            hls on;
            hls_path temp/hls_temp;
            hls_fragment 4s;
            # hls_playlist_length
            hls_continuous on;
            hls_cleanup off;
            hls_fragment_slicing aligned;
            hls_type event;
            hls_fragment_naming timestamp;
        }
    }
}

Now, I simulate connection problems by starting only the origin server, then the command to publish the stream that you find bellow, AND after a few seconds I start the edge also to simulate the condition when the origin is not online at the moment of transmission start, but coming back later:
To simulate, I use https://download.blender.org/durian/trailer/sintel_trailer-720p.mp4 as source:
ffmpeg -i sintel_trailer-720p.mp4 -c:v libx264 -c:a libvo_aacenc -f flv rtmp://localhost/dvr/s1

Now, on the edge, the chunks(except first, of course) are identical in name and byte size due to hls_fragment_naming timestamp;, BUT they are not identical if I perform a md5 checksum, I've tried to analyze the resulting mpeg-ts files but I still cannot understand why those bytes are different.
Do you have any idea why this difference between segments ?
I gave the last chunk from origin and last chunk from edge, identical typestamps, identical byte size, except checksum! segments-origin-edge.zip

Using some mpeg-ts investigation tools I've discovered a first difference and that is the continuity counter, not yet decided if this has an influence on the recovery/re-composition of all segments into a single file on the edge machine. Any ideas on how to have even the CC identical ? From what I see it is off by one on the Edge machine in case the machine comes back online at a moment that is past the client streaming time(10 seconds later for example to simulate network issues).
I have attached a screenshot of the investigation(done using DVB Inspector from https://sourceforge.net/projects/dvbinspector/)

After a bit more research that I did myself I realized this continuity counter CC depends on start of something that is not identical in the two cases, maybe if a rule can imposed that it starts from 0 on every mpeg-ts file then the files will have identical checksums too.
Demuxing the mpeg-ts files to aac and h264 streams showed identical checksums over the streams and this is what matters most to be able to have identical segments. Currently they are not binary identical, but identical in content, I did not find any other difference occurring.

Conclusion - segments are not binary identical but the generated streams should be thus allowing edge machine to perform recovery of different segments from the origin machine by simply analyzing the file name and size. File name ensures segments at the same timestamps, file size ensures that the segments include all expected info.


DiffusionImage

Addition of DiffusionImage Model extracted from 59 https://github.com/huggingface/swift-coreml-diffusers/pull/59

Sorry for not making the high level description of this PR!
Motivation:
Create a single model object to represent a generated image.
Discussion:
The primary object created inside of this application is an image file. This new class is a Model representing a single instance of a generated image.
This instance captures the details used to generate this image, or the "recipe" of settings run through the diffusion pipeline.
This instance allows us to inspect or re-use this "recipe" content elsewhere within the application.
Drag and drop support:
By representing the generated image in an encapsulated class we also gain the benefit of being able to use the instance of the object itself as a data provider for drag and drop and share operations.
Batch image support:
By making the new DiffusionImage class aware of its own state the SwiftUI code can observe the class for changes and update the UI when the image is "waiting" to run, "generating" in the pipeline, or "complete" and ready to display.
Saved images: (line 189+)
With this addition there is a new feature added to the application which is to save the generated image into a temporary folder. Note: it is up to the app itself to cleanup its own custom temp folder! What this enables is a history of generated images and will enable a gallery of images to be added later. This user managed gallery of their created images is NOT included with the current PRs.


Add default opt values to API docs

If you don't like this way of denoting it it can be some other way, but the info should be included in this API doc section.
And fix typo.

Coverage remained the same at 100.0% when pulling 2b1c11b2e0f959f9888e87a6cc54179f860b01fb on jmm:api-opt-defaults into 061a6aee23116f585ba51c6956cab34fbdb52a04 on request:master.

Sorry, I lost sight of your PR. Thanks for your contribution!

Thanks! No problem. I don't know if this is what happened to you, but lack of ability to mark notifications as unread makes it really hard to keep track of stuff on GitHub.

Haha. I just read the emails which is probably the worst way to keep track. ;))

Ah, no I wouldn't say that :) Probably gives you more control, like ability to do things like mark notifications as unread and filter them by mentions, but I just like to do most stuff via the website and wish I could do those things there. https://github.com/isaacs/github/issues/236 https://github.com/isaacs/github/issues/511


settings problem

there is no document and wiki
ı search change color but here is no beginner solution
and more important there is no man page ???? why

thanks for this project but we need document for beginner user

I think what we need to do is in the help command of Ly, instead of telling the user to RTFM (which doesn't exist), we should tell something like "Please modify config values at /etc/ly/config.ini".


Hang with split hex and linear raw views when editing bytes

Version and Platform (required):

Binary Ninja Version: 3.5.4440-dev

Steps To Reproduce:
Please provide all steps required to reproduce the behavior:

Create a new binary file
Split
Change split pane to linear
Write 90909090 in hex view
Create a function at 0
Backspace a bunch in hex view

I can reproduce this

When it happens, the main thread is blocked when it tries to acquire the lock for the binary view. However, all analysis threads are idle and I do not see any thread that holds the lock at the moment.
Suspect: I did not check the Python thread, it could be holding the lock.

P.S.: type a few more 0x90 if you cannot reproduce it -- 4 is enough most of the time, but not always

This is being fixed in 2 different ways:

It was hanging because it was trying to get the next item in a basic block region, but the region extended beyond the bounds of the view and was always returning empty basic block groups. Now, instead of returning an empty group, it returns nullptr and can "move forward" to knowing it's the end of the view.
It was also hanging because the cached linear view cursor was outdated (from before the deletion occurred) when linear view was trying to navigate after the deletion. Now, navigation events will update the linear view cursor first so it is not outdated.


pbTest: Ensure in correct dir to start build

@sxa555 the searchLogFiles function cds out of the current directory. The if statement, which I'll admit is not written very well, will set branchName to be master, if it's empty.

Note: Since my last comment, I've decided to use this PR to clear up some other things in testScript.sh. See the added description.


Cannot read properties of undefined (reading 'BN')

Debugging locally stas-sdk and on const stas = require('stas-sdk') I get errorMessage "Cannot read properties of undefined (reading 'BN')". Seems that error line is const BN = bsv.crypto.BN.
I think a similar error was found and fixed on TAAL web wallet by Arnaldas who said to me:
"bsv library uses a wrapper for bn.js (https://github.com/moneybutton/bsv/blob/master/lib/bn.js) and they have implemented few additional methods here, as the lib is a little bit messy, we have a mix of multiple versions here"
"if you see somewhere in stas-js calling BN.fromNumber then it's not right, we should import BN from 'bn.js and do const n = new BN(x) (https://github.com/TAAL-GmbH/taal-wallet/commit/2da65dd1d30c0ef913ce771cbe654c1b8b9144c1#diff-b44070b08856e39ca62dfc4309210ccb9c43bf9b8494c4219786cc8578421b1dL435)".
Please fix ASAP so I can continue developing on stas-sdk,
best regards.

Apologies for the late response! The issue was not showing from my side on the unit tests, but have made the recommended changes that will be added later today. Please let me know if this is resolved on your end once the code is merged. Thank you for your patience.


feat(api): An API can not be deleted if there are active plans.

Closes gravitee-io/issues#342

:+1:


Python: Document default settings

The default settings (as stored in the client config JSON) should also appear in the documentation.
Proposal: use the GAPIC config to generate a reST file that Sphinx can incorporate into the generated docs.

Copied from https://github.com/googleapis/gax-python/issues/106:
During the usability study, participants intuitively understood the role of the CallOptions parameter, and its implications on their API requests.
However, for those that investigated further, it was not clear what the default CallOptions setting were, and thus it was difficult to predict the behavior of their requests without first manually setting the options.
Recommendation: Ensure that default CallOptions are accurately and clearly documented. If default options differ by API request, consider adding the defaults to each method’s reference documentation, so user can accurately predict the behavior of their request.
/cc @rok987
/cc @andrewmacvean
/cc @tbetbetbe

@geigerj Is this still relevant?

Yes, AFAIK we still don't document the default method configuration in any of the GAPIC docs.

Unassigning to go back on the backlog -- I'm not going to have bandwidth for this in the near future.


removing HTTP "server"

As I have mentioned in #493, I took a look at the sources. I did not like that I have found a stub of a HTTP server in there. There are better ways to get HTTP serving connection these days than bsh.util.Httpd. Can we please remove this completely?

@wiix Not sure what the HTTPD is used for there are a few things under util that has gone redundant actually.

There are better ways to get HTTP serving connection these days

Please elaborate...

@nickl- commented on Aug 12, 2018, 7:14 PM GMT+2:

@wiix Not sure what the HTTPD is used for there are a few things under util that has gone redundant actually.

There are better ways to get HTTP serving connection these days

Please elaborate...

I mean, if you really want to server HTTP connections you should probably use something like Jetty instead of that.

We have a jetty solution: https://github.com/beanshell/beanshell/blob/merge-fork-beanshell2/src/main/resources/bsh/servlet/run_servlet.sh
But a j2ee container is a bit of overkill if all you want is a HTTP listener...
Not defending the file httpd.java was just curious to know if there are new toys =)

The historic reason for the httpd util was in part to support running a remote bsh session in a web browser.  Try starting up the interpreter and entering 'server(8080);', then from your browser connect to localhost:8080.  It is kinda cute, a good demonstration of what can be done, and I know of people who used it routinely.
The way it was implemented requires running a java applet in the browser and this technology has been removed from Java, so it no longer works with Java 9 and beyond.  Even before 9 you would need to sign the applet to have it run, so the existing setup wont run with any modern java unless people sign the applet with their own certs.
Perhaps if there was interest the server() script could be modified to run a console using plain html instead of using an applet.  I would say keep the util.Httpd for now, it is very lightweight.  Jetty is a pretty big load to carry if you just want a simple remote connection in to the interpreter.

I have changed my mind on this one.  This is not a core element of BeanShell, it is more of a utility.  And the function that it supported is broken, so it is really not much use.  As I mentioned in #564 if someone wants to fix this then it would be better if it were in an additional library rather than in the core.


325 document upload

https://github.com/bcgov/cas-registration/issues/325
It was decided that document upload isn't needed for MVP, so pausing this work. What's completed in this PR:

helper functions and resolvers to transform between dataurls and django ContentFile
users can upload a boundary map document

Brianna todos:

file fields were never added to the useroperator json schema
do we have a limit on filesize? next/vercel (something, check what it was for cif blocks at 1mb)

Closing, new branch 325-statutory-declaration


🐛 Smooth Scroll Bug

Here's a REPL showing the bug
https://svelte.dev/repl/30b4e8bbd90c4b8e97100a1225f5be66?version=3.48.0
It happens when you have scroll-behavior: smooth set on the viewport (html or body). Comment that line out and it will work normally. Dragging the native scrollbar up/down works fine. It's only when you try and drag the svrollbar up/down there is a noticeable lag.
I've also included a video demo showing the issue
svrollbar-smooth-scroll-bug.webm

@daylilyfield any update on this?

bump.


Demo does not make important/relevant benchmarking information clear

http://web-perf.github.io/react-worker-dom/ just looks like a bunch of rows with flickering numbers and doesn't seem to have any useful information. Would be great if I could see just a simple benchmark:

How long does it take to render 1000 rows with workers?
How long does it take to render 1000 rows without workers?

FWIW I've found JSperf very useful for things like this.

Note that JSPerf is not the right tool for benchmarking here since it only measures the time taken by Javascript to run. Regardless of Javascript running in a worker or the main UI thread, the time it takes is usually the same.
For specific benchmarking in this case, one would be interested in the browser rendering time. Something like browser-perf or simply opening the Chromedevtools and starting the Frame Rate panel.
Unfortunately, there is no simply way to show the frame rate panel. We could use some of the FPS meters, but they rely on requestAnimationFrame which is much less accurate than the information that the Chrome dev tools provides. This information is only available in the chrome tracing which is not accessible to the web page.
Maybe we could put this information on the home page I guess. I have also written a blog with more specific numbers here

Closing this issue. Please reopen if you think the explanation is not satisfactory


Simplify check docs workflow

Codecov Report
Base: 99.81% // Head: 99.81% // No change to project coverage :thumbsup:

Coverage data is based on head (01850f4) compared to base (140f0f4).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #83   +/-   ##
=======================================
  Coverage   99.81%   99.81%
=======================================
  Files          10       10
  Lines         530      530
=======================================
  Hits          529      529
  Misses          1        1

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


allow circular references, use definition types, update test framework

This fixes https://github.com/yarax/swagger-to-graphql/issues/33 and https://github.com/yarax/swagger-to-graphql/issues/51
The issue wasnt the loading, it was when you try and convert object definitions, you change the name and add a prefix, so it appears like a new object. Furthermore, you dont track the objects you've added already. So, even though loading the structure worked, the conversion had an infinite loop. I've updated the test framework because the test currently only checked that there wasnt an error, it didnt check for correctness. So, I've updated it to check that the output is correct and I've added a test for a circular dependency.
Next, the ref parser removed the refs from the object structure, so none of those definitions were ever used and produced very odd results. I've changed it so that the ref parser doesnt replace the refs since we handle them manually in the code.
The above two things have caused quite a large change in the output of the code. To see the difference compare test/fixtures/petstore.graphql and test/fixtures/petstore.graphql.old (which is what the code produced before this PR).

I was working in the exact same thing,
good job!

@ofersadgat you forgot to add chai as a dev depency:
--- package.json	(revision 9d74899e3016a62d06111f4bc25e7533549e4365)
+++ package.json	(date<PHONE_NUMBER>456)
@@ -25,6 +25,7 @@
     "babel-plugin-transform-runtime": "^6.23.0",
     "babel-preset-es2015": "^6.24.1",
     "babel-preset-stage-0": "^6.24.1",
+    "chai": "^4.1.2",
     "eslint": "^3.19.0",
     "eslint-config-airbnb-es5": "^1.1.0",
     "eslint-plugin-react": "^6.5.0",

Hi @ofersadgat
Thanks for PR!
Sounds reasonable, I'll have a look in the weekend
@4F2E4A2E also thanks for help

@ofersadgat there is maybe an issue you wanna fix for PATCH | POST | PUT  requests which also share the same type with GET:
GET | findPetsByStatus has a response of Pet ("$ref": "#/definitions/Pet")
findPetsByStatus(status: [String]): [Pet]

but only a input type of Pet were generated:
input Pet {
  id: String
  category: Category
  name: String
  photoUrls: [String]
  tags: [Tag]

  """pet status in the store"""
  status: String
}

This could be added to the test at the end:
===================================================================
--- test/index.js	(date<PHONE_NUMBER>000)
+++ test/index.js	(date<PHONE_NUMBER>212)
@@ -12,9 +12,11 @@
           .then((schema) => {
             const graphqlfile = directory + (file.replace('.json', '.graphql'));
             const graphschema = graphql.printSchema(schema);
-            const expected = fs.readFileSync(graphqlfile, "utf8");
+            const expected = fs.readFileSync(graphqlfile, 'utf8');

             expect(graphschema).to.equal(expected);
+            graphql.graphql(schema, '{ findPetsByStatus(status: "3") } ')
+                  .then(f => console.log(JSON.stringify(f)));
           });
       });
     }

The query may vary of course.

Aaand this is how the circular.json could look like:
===================================================================
--- test/fixtures/circular.json	(date<PHONE_NUMBER>000)
+++ test/fixtures/circular.json	(date<PHONE_NUMBER>828)
@@ -34,6 +34,35 @@
                     }
                 }
             }
+        },
+        "/swagger-graphql/patch/circular": {
+            "patch": {
+                "description": "A retrieves a circular structure",
+                "parameters": [
+                    {
+                        "in": "body",
+                        "name": "body",
+                        "required": false,
+                        "schema": {
+                            "$ref": "#/definitions/Circular"
+                        }
+                    }
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "responses": {
+                    "200": {
+                        "description": null,
+                        "schema": {
+                            "type": "array",
+                            "items": {
+                                "$ref": "#/definitions/Circular"
+                            }
+                        }
+                    }
+                }
+            }
         }
     },
     "definitions": {

This process could be done easier :)

@4F2E4A2E I've fixed the chai inclusion. I didnt realize that you couldnt reuse the types so I've changed it to duplicate the definition one being an input (and ending with the name 'Input') and the other being normal. If you have another idea for the naming (or how to improve that) im all ears.
I also thing you're confused about how the test framework works. The test framework takes a pair of files: circular.json and circular.graphql and basically makes sure that given the swagger definition in circular.json we get the expected graphql output in circular.graphql. So, if you want to update what the result of the test should be you go to circular.graphql and change it there.

I didnt realize that you couldnt reuse the types so I've changed it to duplicate the definition one being an input (and ending with the name 'Input') and the other being normal. If you have another idea for the naming (or how to improve that) im all ears.

I recommend not to modify the object names and rather resolve it without the input string appendix, as far as i know this is totally fine by graphql-schema, since it's being unique by the type itself:  type Circular and input Circular.

I also think you're confused about how the test framework works. The test framework takes a pair of files: circular.json and circular.graphql and basically makes sure that given the swagger definition in circular.json we get the expected graphql output in circular.graphql.

No i am not confused, just made a propose which is not in your intent for this test. My intention was to qualify and improve the meaning of the test by testing those definitions if they really do work with a graphql instance. We can do that in another test no problem at all.
And since we are at it, i think the code might still have some bug, i discovered that with my confused test 🗡 :)
findPetsByStatus(status: [String]): [PetInput]

 {"errors":[{"message":"The type of viewer.findPetsByStatus must be Output Type but got: [PetInput]."},{"message":"The type of viewer.findPetsByTags must be Output Type but got: [PetInput]."},{"message":"The type of viewer.getPetById must be Output Type but got: PetInput."},{"message":"The type of viewer.getUserByName must be Output Type but got: UserInput."}]}
Anyhow, you are welcome 👍

@4F2E4A2E Thanks for the catch! The test has been corrected to include the correct result.
Yeah, if you'd like you can create a separate test to test that the queries work. As for the naming, I dont think thats legal. Multiple threads seem to support that statement. For example: https://github.com/apollographql/graphql-tools/issues/179

P.S. I've also added compatibility for the server field. This makes passing swagger entirely self contained in specifying how to request the resources.

Great work @ofersadgat, first tests are looking good. Starting further tests now...

Great work both @ofersadgat and @4F2E4A2E! Good discussion and solving the problem. 👍🏻👏🏻

@Naming: i like the explicit side of it, though afaik , this is a valid graphql schema:
type Circular {
  name: String
  reference: Circular
}

input Circular {
  name: String
  reference: Circular
}

All operations on a complex schema are running just fine. @yarax from my end it's a go 👍

@4F2E4A2E I tried inputting the schema as you defined it to graphql and I get an exception:
Error: Schema must contain unique named types but contains multiple types named "Pet".
at invariant (node_modules\graphql\jsutils\invariant.js:19:11)
at typeMapReducer (node_modules\graphql\type\schema.js:197:58)
at Array.reduce (native)
at node_modules\graphql\type\schema.js:221:36
at Array.forEach (native)
at typeMapReducer (node_modules\graphql\type\schema.js:214:27)
at Array.reduce (native)
at new GraphQLSchema (node_modules\graphql\type\schema.js:111:34)
at schemaFromEndpoints (lib\index.js:75:10)
at _callee2$ (lib\index.js:145:22)
at tryCatch (node_modules\regenerator-runtime\runtime.js:62:40)
at GeneratorFunctionPrototype.invoke [as _invoke] (node_modules\regenerator-runtime\runtime.js:296:22)
at GeneratorFunctionPrototype.prototype.(anonymous function) [as next] (node_modules\regenerator-runtime\runtime.js:114:21)
at step (node_modules\babel-runtime\helpers\asyncToGenerator.js:17:30)
at node_modules\babel-runtime\helpers\asyncToGenerator.js:28:13
So, I dont think that is allowed.

@ofersadgat you're right, it is not possible.

Thanks guys, I looked through the code, looks fine. I'll merge it soon and publish as a new version

Available in v.1.2.4


First example doesn't work?

First example from the README doesn't even work?
from elevenlabs import play
from elevenlabs.client import ElevenLabs

client = ElevenLabs(
  api_key="YOUR_API_KEY", # Defaults to ELEVEN_API_KEY
)

audio = client.generate(
  text="Hello! 你好! Hola! नमस्ते! Bonjour! こんにちは! مرحبا! 안녕하세요! Ciao! Cześć! Привіт! வணக்கம்!",
  voice="Rachel",
  model="eleven_multilingual_v2"
)
play(audio)

Name: elevenlabs
Version: 1.3.1
Summary:
Home-page:
Author:
Author-email:
License:
Location: /opt/homebrew/lib/python3.10/site-packages
Requires: httpx, pydantic, requests, typing_extensions, websockets
Required-by:

(turbo) bryan@Bryans-MBP-7 lang % python eleven_test.py
Traceback (most recent call last):
  File "/Users/bryan/work/lang/eleven_test.py", line 8, in <module>
    audio = client.generate(
AttributeError: 'ElevenLabs' object has no attribute 'generate'

@bryanhpchiang we haven't been able to reproduce this error -- if you can link a zip with the example we will look into it further. I would make sure that you are on the latest version of the client library.


HttpErrorResponse are handled twice in  HttpInterceptor and Errorhandler

Don't you think it get's handled in two places?
https://github.com/tomastrajan/angular-ngrx-material-starter/blob/0bdf1e5b9d415b2e3007bd1d6268e70c70205552/projects/angular-ngrx-material-starter/src/app/core/http-interceptors/http-error.interceptor.ts#L25
My question is why not just use throwError inside the interceptor to propagate the error back to the app?

As far as I remember, this is an side effect for errors in backend request so we display some notification but then the error is propagated to the call site where the request was made which usualy then handles error directly.
throwError would do nothing in this case as tap operator is only for side effects and does not influence the origin stream.
Hope that clarifies your question.

It was a mistake on my part. What I mean is instead of tap we use catchError and rethrow the error back using throwError.  With the current setup isn't the notification service gets called twice since the interceptor just delegates the handling to ErrorHandler, and then the propagated error also will once again be handled by ErrorHandler. maybe I'm wrong but that's how I feel like how it goes.

@chan-dev it would be, but the assumption is that every called handles its own erros and converts them to the valid value so they never buble up to central error handler.

got ya, i guess we should add it in the documentation or README?

@chan-dev that could be valuable addition ;)


Examine the possibility of eliminating some of the CASTing that propagates from JsonLocatorField

Touched in #740 and discussed in Gitter, I think this a possible area of (massive) perf gains, especially when indices are concerned.

@jokokko Can you make this one a bit more concrete? I don't see JsonLocatorField as something we can't change later after the 2.0 release. As for some of what you're talking about in #740, you'd have to break into individual Linq parsing to effect some of those changes. There won't be any quick, easy fix to JsonLocatorField by itself.

Meh, I hit some of this today.
Couple thoughts:

In some places, we need a "raw" locator that gives you the JSONB element
In other places, we need it cast to an exact type
In still other places, we may need it corrected a bit for usage in JSONB_ARRAY_**** functions
There are two different constructors for JsonLocatorField, one for shallow fields and one for complex fields, and they do not have consistent logic applied to them.

Wimping out and pushing this to 3.0.

Finally working on this now


fix: use provided.al2023 if go1.x is specified

This PR resolves #400 by automatically deploying with the provided.al2023 runtime if go1.x is specified with a warning about the deprecation.
Note that the handler value for experiment JSON files have also changed accordingly based on AWS's standards: Handler value main must now be bootstrap, and the compiled Go binary must also be named bootstrap to provide a valid entry for AWS Lambda.
Changes

Add warning message and change deployment runtime string to provided.al2023 if go1.x is specified in the experiment JSON
Update hellogo.json sample experiment JSON file to adhere to the new runtime (use bootstrap handler value instead of main)
Update building module to compile Go binaries as bootstrap
Update zip module zipping path to correctly locate the bootstrap binary

Closing as the wrong test pipeline was triggered.


Periodic Leaving group, reason: {shutdown,ssl_closed}

Im getting Periodic Leaving group, reason: {shutdown,ssl_closed}  in a periodic manner using the subscriber group consumer.
Im connecting to kafka via ssl, that works fine, the disconnects cadence it's the same as the idle connection timeout on the server. So i guess is server triggered, but connections, i think, should not be idle cause im producing constantly on those topics or at least quicker than 10 minutes (idle connection timeout configured). And also i have the keepalive socket option:
{brod_client_1,
            [
              {endpoints, [xxxx]}, %% Broker address list
              {reconnect_cool_down_seconds, 10}, %% socket error recovery
              {auto_start_producers, true},
              {extra_sock_opts, [{keepalive, true}]},
              {ssl, [
                {certfile, "xxx"},
                {keyfile, "xxx"},
                {cacertfile, "xxx"}]}
            ]
          }

The disconnect is bad enough, but that triggers a rebalancing of partitions, and it's just a waste of processing back and forth every n minutes.
Im using brod 3.15.1 and erlang 23.2.something.
Anyone see anything like this?
Regards,
Sebastian

Leaving group indicates that it was the consumer group member getting disconnected,
a consumer group coordinator may not always share the tls connection with producers under the same brod client.
The coordinator should send heartbeats (every 5 seconds by default), which should not cause the ssl connection to idle.
Could you provide the full logs at info level? including

the full timeline for a group member to join, sync, getting assignments etc.
the full log lines, including group ID, member ID generation etc

what you can see here is the app starting up, getting some partitions, after 9~ minutes idle connection timeout kick in, they are configured at 9 min.
Reconnects, gets assignments and all over again every ~9 mins.....
=INFO REPORT==== 20-Jul-2021::14:42:03.208843 ===
Group member (xxxx-consumer-group,coor=<0.1155.0>,cb=<0.1154.0>,generation=303):
elected=false
=INFO REPORT==== 20-Jul-2021::14:42:03.216980 ===
Group member (xxxx-consumer-group,coor=<0.1155.0>,cb=<0.1154.0>,generation=303):
assignments received:
  topic:
    partition=1 begin_offset=214179
    partition=3 begin_offset=212919
    partition=5 begin_offset=208565
    partition=7 begin_offset=208592
=INFO REPORT==== 20-Jul-2021::14:42:03.438844 ===
client brod_client_1 connected to xxxx:24402
=INFO REPORT==== 20-Jul-2021::14:42:04.475538 ===
client brod_client_1 connected to <IP_ADDRESS>:24402
=INFO REPORT==== 20-Jul-2021::14:42:09.740198 ===
client brod_client_1 connected to <IP_ADDRESS>:24402
....
....
....
....
=INFO REPORT==== 20-Jul-2021::14:51:03.278714 ===
Group member (xxxx-consumer-group,coor=<0.1155.0>,cb=<0.1154.0>,generation=303):
Leaving group, reason: {shutdown,ssl_closed}
=INFO REPORT==== 20-Jul-2021::14:51:06.359617 ===
Group member (xxxx-consumer-group,coor=<0.2493.0>,cb=<0.2491.0>,generation=305):
elected=true
=INFO REPORT==== 20-Jul-2021::14:51:06.364785 ===
Group member (xxxx-consumer-group,coor=<0.2493.0>,cb=<0.2491.0>,generation=305):
assignments received:
  topic:
    partition=0 begin_offset=210102
    partition=2 begin_offset=214100
    partition=4 begin_offset=204084
    partition=6 begin_offset=420865

How many consumer members are there in the consumer group?
My guess is that one or more members take too long time to respond to assignment revoke.
The assignments_revoked call from coordinator to group subscriber is a gen_server call with infinity timeout.
If the messages are very small, maybe try to consume smaller batches?
Or handle message (set) asynchronously in the hand_message callback.

So in the example we have 2 consumers, it happens with 1 or 10.
Messages are small and take nothing to process. We do not process messages in batch, although i guess brod is getting them in batches.
I mean if we change the connection idle timeout to 1 min this happens every minute if we configure 60 minutes (i think its the max in the server config) then it happens every 60 minutes. It really looks like brod is unable to "keep alive" that connection, it seems to have nothing else to do with the processing of messages. This happens even if there are NO messages.

Which Kafka version is it?
It doesn’t make any sense because it’s sending heartbeats (otherwise session timeout).
Can you find anything interesting in kafka logs?

Maybe its not sending correct heartbeats for ALL the connections, i have no idea how many it is keeping around.
We currently using kafka 2.8.0 previous version of the server had the same behaviour. Server logs show the rebalancing and all that but nothing else. I guess because it is a perfectly sound behaviour IF heartbeats are not getting to the server.
I haven't traced in depth network or tracing logs anywhere, i hoped someone was seeing the same thing.

We just finished testing brod 3.16.0 and it seems to fix this! i guess the upgrade to kpro 4 is the key thing? No more disconnects! It is the only change we did......


Update job status field

ref #19

Can you make sure grunt test passes? Happy to look at this, but right now Travis CI is failing.

+1

+1

@LewisJEllis travis now is Ok ;)

Looks good, thanks!


With this change you just can add normal abilities similar to hero abilities.

👍


DatabaseTransport should not close a connection

The DatabaseTransport accept a db conn, but it closed by DatabaseTransport finally. I don't think it's a good design because the conn may have other usage outside the DatabaseTransport. The conn lifecycle should be maintain by its creator but not closed by DatabaseTransport.
The caused lot of ansible module can not work, because after DatabaseTransport, we still use the conn to retrieve the job_log or use as another DatabaseTransport.

This is a deliberate design choice. The DatabaseTransport is meant to own the connection and is not meant be used outside of the transport.

I don't think it's a good design since the outside conn will be closed imperceptibly. This breaks the existed behavior of lots customer's code.

I don't think it's a good design since the outside conn will be closed imperceptibly. This breaks the existed behavior of lots customer's code.

You're saying you already had lots of code using DatabaseTransport that used to work? Under which version of itoolkit? Can you just keep using that version? If not, why not?
If you mean it doesn't work the way you would like, so you can't write new code the way you would like, you have a couple of options. One is to fork this project and fix it to your liking. It may be easier to do this than to persuade Kevin to change the design.
To me, a much simpler option is to just use the package as it is and adapt your own code to fit.
There are many things you can do to adapt. The most straightforward is probably to just make sure to always create a new connection that is meant solely for the transport. The docstring for the DatabaseTransport class already contains examples for this:
>>> from itoolkit.transport import DatabaseTransport
>>> import pyodbc
>>> transport = DatabaseTransport(pyodbc.connect('DSN=*LOCAL'))

or
>>> from itoolkit.transport import DatabaseTransport
>>> import ibm_db_dbi
>>> transport = DatabaseTransport(ibm_db_dbi.connect())

If you do it that way, you don't even have a separately usable reference to the connection.
You also mention that

after DatabaseTransport, we still use the conn to retrieve the job_log or use as another DatabaseTransport.

OK, so another way you could adapt is to keep the DatabaseTransport open for as long as you need the connection. Why do you need to create a new DatabaseTransport on the same connection anyway? Why can't you just keep using the one you already have?

Yes, if you look at Ansible for IBMi(https://github.com/IBM/ansible-for-i), we already has the framework to keep a conn during the Ansible lifecycle but not the DatabaseTransport lifecycle. A typical case is we need use the conn to prompt the authority by calling qsygetph before and then do DatabaseTransport then finally change back the authority, the conn should the same one in order to run in the same job. But now, the conn got closed after  DatabaseTransport. Another case is we first got the job information and then run DatabaseTransport and then retrieve the joblog, it also needs the same conn. But after the DatabaseTransport, the conn got closed, so we can not retrieve joblog by that closed conn. So many cases here. And lot of our Ansible on ibmi customer meet the issue when they upgrade the python39 and python39-itoolkit, I check the version, the close conn feature are in 1.7, so under 1.6.0, it doesn't have this error.
We can not use a fixed version(e.g. 1.6.2) under our project but not use the site-packs, because Ansible is not a rpm installed on IBMi. It running as a client of ssh by sending some generated code to target IBMi to run.
Why the behavior of itoolkit changed such impunity? It should be at least give a compatible option with existing code, e.g. like the DatabaseTransport could have a parm to choice to close the conn or not.

The source I mentioned is https://github.com/IBM/ansible-for-i/blob/devel/plugins/module_utils/ibmi/ibmi_module.py

The source code I mentioned is https://github.com/IBM/ansible-for-i/blob/devel/plugins/module_utils/ibmi/ibmi_module.py

After looking briefly at that code, I don't see why you can't refactor it so that you don't keep creating new DatabaseTransport objects. You should be able to just create one (right after you create a connection) and reuse it.

The fact is the conn closed after DatabaseTransport was called, we have other modules use the ibmi_module.py in plugins.
For example, in https://github.com/IBM/ansible-for-i/blob/devel/plugins/modules/ibmi_cl_command.py,
line 220 rc, out, err, job_log = ibmi_module.itoolkit_run_command_once(command)
line 221 job_name_info = ibmi_module.get_current_job_name()
After line 220 run, the conn closed in 221
Even in the
def itoolkit_run_command_once(self, command):
'''This method equals to itoolkit_run_command and itoolkit_get_job_log'''
rc, out, error = self.itoolkit_run_command(command)
job_log = self.get_job_log('*', self.startd)
return rc, out, error, job_log
Line  job_log = self.get_job_log('*', self.startd) will got exception " ibm_db_dbi::ProgrammingError: Cursor cannot be returned; connection is no longer active."

Or do you mean I should use itransport = DatabaseTransport(ibm_db_dbi.connect()) instead of itransport = DatabaseTransport(self.conn)
So the DatabaseTransport just closes the ibm_db_dbi.connect() but not self.conn ?

I tried use a new conn in DatabaseTransport, but the bad news is the DatabaseTansport job is 'jobname': 'QSQSRVR', 'jobuser': 'QUSER', 'jobnbr': '126387', but the original conn's job is 126115/QUSER/QSQSRVR. This is not what we expected. We use a single conn is to let all the action happened in same job, so that we can get more information about that job to monitor the joblog, these information is more important to us.

Did some digging and this behavior was changed in #66 for issue #64.
The nice thing is that it is all within your ability to override this behavior by subclassing the transport: https://github.com/IBM/python-itoolkit/blob/main/src/itoolkit/transport/base.py#L72-L75
You can add something like this to your code and don't even need to depend on any changes here:
class UnclosingDatabaseTransport(DatabaseTransport):
    def _close(self):
        """Don't close connection, we'll manage it ourselves"""
        pass

Good thing Kevin responded before I finished writing my comment! I was going to propose a few alternatives, concretely illustrating what I meant by "don't keep creating new transports, just reuse the first one", but I think Kevin's approach is simpler. His way definitely aligns more closely with your existing mental model.
I will now just offer this: Taken exactly as written, Kevin's solution requires you to change all your current DatabaseTransport calls, of which there are many. Instead of
itransport = DatabaseTransport(self.conn)

you have to do
itransport = UnclosingDatabaseTransport(self.conn)

Not horrible by any means, but if you would like to disrupt your existing code as little as possible (creating the smallest diffs), you can make the following refinement:
from itoolkit.transport import DatabaseTransport as BaseDatabaseTransport

class DatabaseTransport(BaseDatabaseTransport):
    def _close(self):
        """Don't close connection, we'll manage it ourselves"""
        pass

Then you don't have to touch any of your other code.

Great thanks for you help! I will try it on Ansible. One more question, I want to my code change both worked for itoolkit 1.6.x (without the close conn code)and itoolkit 1.7, any suggestions for my implementation?

Great thanks for you help! I will try it on Ansible. One more question, I want to my code change both worked for itoolkit 1.6.x (without the close conn code)and itoolkit 1.7, any suggestions for my implementation?

The approach suggested in this thread will work with 1.6.x and 1.7.x.
For your own understanding, I strongly encourage you to (a) try it out with itoolkit 1.6.x to see what happens, and (b) figure out for yourself why it does what it does (or doesn't do what it doesn't do). Hint: Instead of making the new _close method just pass, try putting in a print statement or raising an exception.
I think it's important to understand any code that you're going to commit into a project.

Thanks for all your support, the solution is perfect. Both worked for itoolkit 1.6 and higher version.


[VS Code] [Audio] Request startOrJoinCall failed unexpectedly without providing any details.

Error:
Request startOrJoinCall failed unexpectedly without providing any details.
Steps to Reproduce:
1.
2.

Version Data

extensionName
VSLS-Audio

extensionVersion
0.1.91

applicationName
VSCode

applicationVersion
1.74.2

platformName
Linux

platformVersion
5.15.0-56-generic

We're unable to prioritize fixes to this area as we re-evaluate our priorities and product direction. We understand that this maybe disappointing. We appreciate your input and comments on this issue till now. We will soon be sunsetting this feature, https://github.com/MicrosoftDocs/live-share/issues/4826, and will work towards a better use experience for communication needs for Live Share users from the editor.


Have a problem with adding in project

longman/telegram-bot 0.74.0 requires psr/log ^1.1 -> found psr/log[1.1.0, ..., 1.1.4]
but the package is fixed to 2.0.0 (lock file version)+
composer req for symfony project, can't install tgbot

You can rename composer.lock to composer.lock.bkp and try to install with the following command:
composer require -W  longman/telegram-bot

-W, --update-with-all-dependencies                   Allows all inherited dependencies to be updated, including those that are root requirements.

Looks like it could be fixed by #1282

@dEROZA Version 0.76.0 was just released, it addresses this issue too 👍


Fix Readme tutorial

Description
The current tutorial in Readme is broken
$ uvicorn quetz.main:app --reload
...
RuntimeError: Directory 'channels' does not exist

$ ./test-cli-client.sh
./test-cli-client.sh: 2: ./test-cli-client.sh: curl: not found

Proposition
Add curl dependency
Create channels directory

The test-cli-client.sh script is ultimately obsolete now there is the quetz-client tool, so it might make more sense to simply remove that rather than pull in curl for it.
It also might be worth creating the channel directory during app startup (prior to mounting in main.py), rather than an explicit step for the user.

Hi @benjamb !
Thanks for your comment, I modified the proc to:

install quetz-client instead of curl
use quetz-client to push packages (requires the API token stored in a env variable for now)

The package repository bootstrap could be done by a single command. Maybe I missed it, I will open a dedicated issue otherwise.
Is it OK for you that way?
Thanks!

looks good to me!

thanks for the contribution


Add the ability to create DigitalOcean Spaces

Description of your changes
Adds the ability to create the Space resource which is an s3 bucket on DigitalOcean.

Fixes https://github.com/crossplane-contrib/provider-digitalocean/issues/24
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested
Ran locally using a kind cluster.

@kimschles or @hasheddan This is ready for review if either you have any time!


Ignoring error when cleaning cache to not raise Exception on race conditions

I have multiple python processes that use the same file storage cache, But sometimes there is a race condition when they try to clean the cache at the same time.
So I just added a try block to ignore the exception when removing a file if the file is not found.

Hey! I think it would not work, because of concurrent read/writes. Currently, I think we don't support that backend for multiprocessed applications, instead, you can look at another ones, for example sqlite/redis or aws.

Hey, thanks for the reply, I agree that this do not fully fix the issue and other engine are better suited for this task.
I recently discovered this library, and it is very convenient to use, especially for quick/small personal projects that are deployed as an http server with >2 workers and the file storage is very easy to setup. The problem is that the bug this PR addresses happens very frequently in those kind of personal projects: because they usually don't receive any traffic for a quite some time, when they suddenly receives requests in parallel, it triggers a cache clean in all workers at the same time and that raises an exception, it happened to me multiple times per day for those past weeks.
On the other side I have never encountered the issue with parallel cache writes that you mention while using a patched version of the library, because I think it needs (in the case of http servers) parallel requests that fetches the same un-cached data (which is very rare if the client does make duplicate requests) routed to different workers, while the bug the PR addresses just need parallel requests routed to different workers.
So I fully agree that this is a quick fix that does not solve completely the issue, but it solves it almost all they way, while also being a very simple fix that should not be seen as a sign of fully supporting parallel cache for the file storage.

Okay, I think we can merge this. Can we also have a changelog for this PR?

Just pushed the changelog, but i realised i don't have an issue to link to

Thanks for the PR!


docs: update retry plugin docs

Description: Updated/Restructured the retry plugin docs so that it lists the built-in plugins explicitly instead of just in the examples.
Risk Level: Low
Testing: N/A
Docs Changes: N/A
Release Notes: N/A

@zuercher addressed the feedback. PTAL.

@zuercher Removed the spaces. should be good to go. PTAL.