Unexpected Exception in Dart 2.0.0-dev.69.1 When debugging Flutter

Dart VM version: 2.0.0-dev.69.1 (Fri Jul 20 18:30:52 2018 +0200) on "macos_x64"
MacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports)
Debug flutter source code in IDEA

Debug Flutter Tools in IDEA:
/usr/local/Cellar/dart/2.0.0-dev.69.1/libexec/bin/dart --enable-asserts --pause_isolates_on_start --enable-vm-service:51372 /Users/liufengkai/Documents/Code/flutter/packages/flutter_tools/bin/flutter_tools.dart packages pub run build_runner watch
Observatory listening on http://<IP_ADDRESS>:51372/

file:///Users/~/.pub-cache/hosted/pub.dartlang.org/analyzer-0.32.3/lib/src/dart/analysis/library_context.dart:96:34: Error: Can't return a value from a void function.
        return appendLibraryFiles(targetLibrary);
                                 ^

open library_context.dart:
      logger.run('Append library files', () {
        return appendLibraryFiles(targetLibrary);
      });

run method defined as :
  /// Return the result of the function [f] invocation and log the elapsed time.
  ///
  /// Each invocation of [run] creates a new enclosed section in the log,
  /// which begins with printing [msg], then any log output produced during
  /// [f] invocation, and ends with printing [msg] with the elapsed time.
  T run<T>(String msg, T f()) {
    Stopwatch timer = new Stopwatch()..start();
    try {
      writeln('+++ $msg.');
      _level++;
      return f();
    } finally {
      _level--;
      int ms = timer.elapsedMilliseconds;
      writeln('--- $msg in $ms ms.');
    }
  }

Ok, fix in master branch now ...


docs: Move task docs out of devcontainers

These are good docs, but there's no reason for them to be here. They'd be good in the Taskfile, or very open to other suggestions
While I really appreciate docs that we write (CC @richb-hanover ), it's important that they're focused, concise, and close to the code that they document -- because they also need to be maintained, and the project takes on that responsibility.
I really don't want to lose folks' generosity and ideas, but I'm going to start being a bit firmer on these sorts of things, because we're already starting to see some stale docs (#2044). There are other ways of writing things that have fewer guarantees of continued support -- blog posts, gists, etc.

There are other ways of writing things that have fewer guarantees of continued support -- blog posts, gists, etc.

Dang. You beat me. :-) As part of https://github.com/PRQL/prql/pull/1893#discussion_r1128635211, I was about to suggest that we need a new "newcomer's description" and that it should be a blog posting since that doesn't carry the "full weight" of needing to be true for all time. I'll look at reviving my original document as a blog post


Unknown CMake command "FetchContent_MakeAvailable"

When I try to add cpr to a project, I get:
Unknown CMake command "FetchContent_MakeAvailable"

My guess is that the version of CMake shipped with debian (3.13.4) is too old, but I am not sure. It would be nice if the documentation could mention what the minimum required version of CMake is.

Based on the official CMake documentation FetchContent got added in 3.11.
CPR requires 3.15:
https://github.com/whoshuu/cpr/blob/4f0a0bac4feabc74dee4ef1f634ff0bf5dc7efcc/CMakeLists.txt#L1


languages.pnpm installs packages with npm

Describe the bug
Enabling languages.javascript.pnpm.install executes a script that references npm.
https://github.com/cachix/devenv/blob/ad5a82f493f016bf4e82fae481b374d943be9560/src/modules/languages/javascript.nix#L42-L59
To reproduce
Enable the aforementioned option and fire up devenv.
Version
The version of devenv shouldn't come into it — this comes from the Nix module in the main branch.

If it's safe to substitute out npm with pnpm, I can open a PR later today.

cc @totoroot

@jcf, thanks for reporting!
Sorry, that was indeed a mistake I made. Either a rebase went wrong or I simply forgot to change it after copy-pasting the script section.
I can open a PR to address this this afternoon :)

Thank you for the PR, @totoroot, and thank you for the merge, @domenkozar!


modularise smoothing, add LoessSmoothing

Modularised the smoothing algorithm, added an interface for it.
The interface provides methods to smooth rt + mob dimension. This makes it easier to implement new smoothing algorithms.
Furthermore, i added loess smoothing.

Done. Thanks Steffen


update documentation

Status
Ready/In Progress/In Hold (Reason for hold)
Related Issues
fixes: https://jira-dc.paloaltonetworks.com/browse/CIAC-10606
Description
A few sentences describing the overall goals of the pull request's commits.
Screenshots
Paste here any images that will help the reviewer

@JudahSchwartz Doc review completed.


Feature: Mopidy Integration

Implement Mopidy as a source:

[ ] Using mopidy.js
[ ] with events (js)

Mopidy does not use authentication but  foreign connections can be restricted by origin.

@crosbyh @powellc this is available on the develop branch/docker image now if you'd like to try it out.

Added in v0.4.2 and available in

master git branch
foxxmd/multi-scrobbler:latest docker image tag
foxxmd/multi-scrobbler:0.4.2 docker image tag


refactor(server): group options by client and server

Not really useful right now as there is only one client-related option, namely action-logging.


File metadata

#330
This adds a metadata reader, which is capable of identifying sound files which contain wavetables.
This is determined by vendor-specific blocks which are present in the file metadata.
To implement this, a refactor was desired so the RIFF blocks are more easily accessible, and particularly in WAV files.
Wavetables Support

Surge
Serum
u-he
some Native Instruments

EDIT removed Native, it was incorrect. these wavetables have their definition provided as sidecar text file.

Added some tests to ensure wavetable is properly extracted.

Surge: test file is made with ./scripts/wt-tool/add-surge-metadata.py
Clm ("Serum"): made with a custom code at https://github.com/jpcima/WaveTableFactory/blob/627c20a7b35a4ab21dbb063eb0c5be35f0154acb/sources/wavetable.cpp#L71
U-he: too complex format, I don't know how to make (but we might create a dummy since it's just the chunk presence which is checked, not content)

I trust you for the file formats ;-)


dcmp lite mode

Add option to dcmp to allow comparison of only metadata. If metadata
is the same, then contents are assumed to be the same. Similarly,
if the metadata is different, the contents are assumed to be
different. The lite mode does no comparison of data/content.

Looks good.  Thanks again.


Deploy “testing” images

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[x] The code follows the code style and conventions of this project.
[ ] The change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.

Description of the change

Move files over from the “public tools” repo, which we can now delete
Change the URL of the VM setup script
Disable simulate.sh until we fix it
Update GitHub templates

@dluc,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Fix pre-commit check in Gloo implementation

Signed-off-by: terrytangyuan<EMAIL_ADDRESS>
What this PR does / why we need it:
This fixes the pre-commit check on master branch.
Which issue(s) this PR is related to (optional, link to 3rd issue(s)):
Fixes #
Reference to #

Special notes for your reviewer:
/cc @zw0610

Release note:

NONE

@zw0610 Could anyone from your team look into why we could merge code even when CI check failed?

@zw0610 Could anyone from your team look into why we could merge code even when CI check failed?

it seems travis ci is not triggered.

/lgtm


Build broken on 1.15

The commit bbc9f80d broke the build on Rust 1.15:
$ rustup run 1.15.0 cargo build
   Compiling mime v0.2.5 (file:///mnt/data/Projects/mime.rs)
error[E0001]: unreachable pattern
   --> src/lib.rs:165:21
    |
165 |                       _ => false
    |                       ^ this is an unreachable pattern
...
294 |   enoom! {
    |  _- starting here...
295 | |     pub enum Value;
296 | |     Ext;
297 | |     Utf8, "utf-8";
298 | | }
    | |_- ...ending here: in this macro invocation

error: aborting due to previous error

error: Could not compile `mime`.

To learn more, run the command again with --verbose.

Is that acceptable? If yes, could you state the minimal supported Rust version in the README and add 1.15 as a target to Travis?

Nope, that's a mistake. It was a lint that I could allow on Rust 1.19, I just assumed that it was always that way. I've published 0.2.6 that no longer triggers this error. Sorry about that!

Thanks :) Maybe adding both stable and the minimal supported Rust version to the Travis config might help?

Most likely. Finding the minimum Rust version takes time :)

I usually choose 1.15 since that's the first version with ? support (iirc) :)


[Useragent] : "all" option

Many component like "Slider" don't render properly if userAgent: "all" is active in the Theme configuration.
Because property "width" in Style configuration is an Object instead of a simple value.
-webkit-calc(..)
-moz-calc(..)
calc(..)
Ex : with application material-ui-webpack-example
const muiTheme = getMuiTheme({
  palette: {
    accent1Color: deepOrange500,
  },
    userAgent: "all"
});

return (
      <MuiThemeProvider muiTheme={muiTheme}>
        <Slider defaultValue={0.5} />
...

I'm closing that issue as the root cause is the same as #5840.

I'm closing that issue as the root cause is the same as #5840.


Quality improvements and best current practices

This PR adds lots of suggestions done by @Bastian-Krause aiming at improving the overall quality of the test suite.

@Bastian-Krause From my side this is ready to merge. Feel free to have another look.


Compiled 1.12 is detected as virus

I just tried to install 1.12 and my Panda Antivirus did not let it happen.
Also here you can see the file on Total Virus:
https://www.virustotal.com/en/file/431f890d0a9a0cec3279412690bf4d46c30a079dafc364b902fa693346cb2066/analysis/
I have not tried to compile from the source yet. Not sure what might have caused this.

It's a false positive. The problem with pattern based scanners is well, they look for patterns.


Weights not updated

I have trained the ssd300 on custom data with 1 class for 30.000 iterations and used exponential learning rate decay. Besides that, I didn't change any other parameters. When inspecting in tensorboard the distribution of the weights, I saw that the weights didn't got updated. The weights were distributed evenly and didn't change at all, whereas the biases got updated very fast. Also when I visualized the activation layers, I saw that mostly the last blocks activations were all zero. I lowered the learning rate and try to train again.
@fisheess Did you encounter such problems, too?
My training parameters:
step1_1 = TrainerParams(
    feature_extractor='vgg_16',
    model_name='ssd300',
    fine_tune_fe=False,
    train_dir='experiments/ssd300_gtav_20.02.2018/train_log',
    checkpoint_path='weights/VGG16/vgg_16.ckpt',
    ignore_missing_vars=False,
    learning_rate=0.0001,
    learning_rate_decay_type='exponential',
    learning_rate_decay_factor=1,
    num_epochs_per_decay=1,
    end_learning_rate=0.000001,
    max_number_of_steps=300000,
    optimizer='adam',
    weight_decay=0.0005,
    batch_size=32,
    log_every_n_steps=100,
    save_interval_secs=60*60,
    save_summaries_secs=30,
    labels_offset=0,
    matched_thresholds=0.5
    )

Ok, again, it was due to bad tfrecords file. I had some images with 0 bounding boxes or wrong bounding boxes. I also filtered out bounding boxes which have smaller height then 0.05. Now everything is working fine, weights are updated slowly, biases fast.


⚠ Catalog API Endpoint has degraded performance

In 7f323df, Catalog API Endpoint (https://catalog.roblox.com/v1/bundles/details?bundleIds=192) experienced degraded performance:

HTTP code: 503
Response time: 7786 ms

Resolved: Catalog API Endpoint performance has improved in c55522c.


[CWS] add filter to actions

What does this PR do?
The idea is to add a condition to trigger an action. If the action filter doesn't match the action won't be triggered and the event will be sent without the rule_actions section. The filter uses a regular SECL expression applied on the currently evaluated event.
  - id: test
    expression: exec.file.name == "test123"
    actions:
    - kill:
        signal: SIGKILL
      filter: process.envp in ["KILLME=true"]

or
  - id: test
    expression: exec.file.name == "test123"
    actions:
    - kill:
        signal: SIGKILL
      filter: container.tags in ["image_name:testtest"]

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided. Except if the qa/skip-qa label, with required either qa/done or qa/no-code-change labels, are applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

/merge


would STFT be in scope for this project

Hi, Currently I'm porting librosa's implementation of an STFT function to rust, though I wonder whether or not that would be something worth adding directly to this project. This is a branch of math I'm not too familiar with, so I'm not sure if it's in scope for what this library is meant to provide or if it's more of a thing meant to be built on top of this library

Hey,  it doesnt quite fit the idea of this library which is to make multidimensional transforms easier by combining ndarray + rustfft/realfft/rustdct.
I think a stft could be its own crate (build on top of rustfft)

I have an stft implementation implemented in my crate. It's linked in the related issue. It's only for arrays of 1 and 2 dims, currently has a hardset window function, and currently only accepts f32s, though all of those things can be iterativley improved.
I guess I'm wondering is this something that would actually be useful to people or would it take a tremendous amount of effort to iterate to the point that it benefits more than say 5 people solving the exact same problem? I don't have a signal processing background so I'm still unsure of the scope of the utility I guess


Strange ValueError when computing on Series of floats

After loading a largish dataset into a dask DataFrame, I attempt to summarize a numeric column by calculating the min and max:
dd.compute(raw_data.weight.min(), raw_data.weight.max())

however, I get a ValueError on this computation, which seems to suggest there is date information in the column:
/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/dask/async.py in get_async(apply_async, num_workers, dsk, result, cache, queue, get_id, raise_on_exception, rerun_exceptions_locally, callbacks, **kwargs)
    479                     _execute_task(task, data)  # Re-execute locally
    480                 else:
--> 481                     raise(remote_exception(res, tb))
    482             state['cache'][key] = res
    483             finish_task(dsk, key, state, results, keyorder.get)

ValueError: could not convert string to float: '03/01/2013'

Traceback
---------
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/dask/async.py", line 263, in execute_task
    result = _execute_task(task, data)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/dask/async.py", line 245, in _execute_task
    return func(*args2)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/dask/compatibility.py", line 47, in apply
    return func(*args, **kwargs)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/dask/dataframe/csv.py", line 49, in bytes_read_csv
    coerce_dtypes(df, dtypes)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/dask/dataframe/csv.py", line 74, in coerce_dtypes
    df[c] = df[c].astype(dtypes[c])
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/pandas/core/generic.py", line 3054, in astype
    raise_on_error=raise_on_error, **kwargs)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/pandas/core/internals.py", line 3168, in astype
    return self.apply('astype', dtype=dtype, **kwargs)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/pandas/core/internals.py", line 3035, in apply
    applied = getattr(b, f)(**kwargs)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/pandas/core/internals.py", line 462, in astype
    values=values, **kwargs)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/pandas/core/internals.py", line 505, in _astype
    values = _astype_nansafe(values.ravel(), dtype, copy=True)
  File "/Users/fonnescj/anaconda3/envs/dev/lib/python3.5/site-packages/pandas/types/cast.py", line 537, in _astype_nansafe
    return arr.astype(dtype)

But, if I load the same dataset into a Pandas DataFrame, the column is numeric as expected:
>>> df.weight.mean()

206.02593543777544

Running Dask 0.11.1 on Python 3.5.2 (Anaconda) on macOS 10.12.

Hmmm, that is strange. I'd need to see the data (or a fake subset that reproduces) to debug. Alternatively, if you wanted to debug locally, using the synchronous scheduler and pdb can help. I usually run ipython --pdb -i mytestfile.py, with the following at the top of the test file:
import dask
dask.set_options(get=dask.get)

That will drop you into a pdb session upon error.

I can't share the data because it is hospital patient information, but here is a Gist with a little more info.

I wouldn't be surprised if the error came from some other column that you
were loading in on the side as well.  I second Jim's suggestion to try
dask.set_options(get=dask.get) .  I think that will help you to identify
the error quickly.
On Mon, Nov 28, 2016 at 10:36 AM, Chris Fonnesbeck<EMAIL_ADDRESS>
wrote:

I can't share the data because it is hospital patient information, but here
is a Gist with a little more info
https://gist.github.com/fonnesbeck/bc55b3f47e7c4865f602a887496d1e59.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/issues/1816#issuecomment-263302911, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AASszHsSDnoBq-4RFFkLocdiJekBfT4bks5rCvT-gaJpZM4K94u3
.

I will poke around. Thanks.

Its definitely coming from another column, but its unclear why this should matter if I am isolating a particular column and executing a summary method on it. Why would it want to convert some other column of dates into floats in order to do this?

Perhaps in calling read_csv you're triggering computations you don't need?
Perhaps isolate down to columns that you do need with use_cols=[...] ?
On Mon, Nov 28, 2016 at 11:08 AM, Chris Fonnesbeck<EMAIL_ADDRESS>
wrote:

Its definitely coming from another column, but its unclear why this should
matter if I am isolating a particular column and executing a summary method
on it. Why would it want to convert some other column of dates into floats
in order to do this?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/issues/1816#issuecomment-263312729, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AASszBRDye_bGFlNjyqdqjOd9pgRfcvZks5rCvyNgaJpZM4K94u3
.

I have been able to reproduce a similar error in dask 0.14.1, python 3.5.2, OSX 10.11.4.
The table contains a mix of string and numeric data.  Computing a trivial function mapping on a numeric column:
In [6]: data.x.map(lambda x: int(x)).compute()
/usr/local/anaconda3/lib/python3.5/site-packages/dask/async.py:266: DtypeWarning: Columns (7,8) have mixed types. Specify dtype option on import or set low_memory=False.
  result = _execute_task(task, data)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-6-885d1124eb4f> in <module>()
----> 1 data.x.map(lambda x: int(x)).compute()

/usr/local/anaconda3/lib/python3.5/site-packages/dask/base.py in compute(self, **kwargs)
     93             Extra keywords to forward to the scheduler ``get`` function.
     94         """
---> 95         (result,) = compute(self, traverse=False, **kwargs)
     96         return result
     97

/usr/local/anaconda3/lib/python3.5/site-packages/dask/base.py in compute(*args, **kwargs)
    200     dsk = collections_to_dsk(variables, optimize_graph, **kwargs)
    201     keys = [var._keys() for var in variables]
--> 202     results = get(dsk, keys, **kwargs)
    203
    204     results_iter = iter(results)

/usr/local/anaconda3/lib/python3.5/site-packages/dask/threaded.py in get(dsk, result, cache, num_workers, **kwargs)
     74     results = get_async(pool.apply_async, len(pool._pool), dsk, result,
     75                         cache=cache, get_id=_thread_get_id,
---> 76                         **kwargs)
     77
     78     # Cleanup pools associated to dead threads

/usr/local/anaconda3/lib/python3.5/site-packages/dask/async.py in get_async(apply_async, num_workers, dsk, result, cache, get_id, raise_on_exception, rerun_exceptions_locally, callbacks, dumps, loads, **kwargs)
    498                     _execute_task(task, data)  # Re-execute locally
    499                 else:
--> 500                     raise(remote_exception(res, tb))
    501             state['cache'][key] = res
    502             finish_task(dsk, key, state, results, keyorder.get)

ValueError: invalid literal for int() with base 10: '   '

results in an error, evidently from another column.  This was corrected by restricting the data read columns, e.g.
In [1]: data = dd.read_csv("data.csv",usecols=['x','y'])

However, I encountered another interesting variant on the error -- when forcing the read to be of type string,
In [1]: data = dd.read_csv("data.csv",dtype=str,usecols=['x','y'])
In [2]: data.x.map(lambda x: int(x).compute()
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
/usr/local/anaconda3/lib/python3.5/site-packages/dask/dataframe/utils.py in raise_on_meta_error(funcname)
    147     try:
--> 148         yield
    149     except Exception as e:

/usr/local/anaconda3/lib/python3.5/site-packages/dask/dataframe/core.py in _emulate(func, *args, **kwargs)
   3044     with raise_on_meta_error(funcname(func)):
-> 3045         return func(*_extract_meta(args, True), **_extract_meta(kwargs, True))
   3046

/usr/local/anaconda3/lib/python3.5/site-packages/dask/utils.py in __call__(self, obj, *args, **kwargs)
    937     def __call__(self, obj, *args, **kwargs):
--> 938         return getattr(obj, self.method)(*args, **kwargs)
    939

/usr/local/anaconda3/lib/python3.5/site-packages/pandas/core/series.py in map(self, arg, na_action)
   2176         else:
-> 2177             new_values = map_f(values, arg)
   2178

pandas/src/inference.pyx in pandas.lib.map_infer (pandas/lib.c:66124)()

<ipython-input-9-885d1124eb4f> in <lambda>(x)
----> 1 data.x.map(lambda x: int(x)).compute()

ValueError: invalid literal for int() with base 10: 'foo'

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
<ipython-input-9-885d1124eb4f> in <module>()
----> 1 data.x.map(lambda x: int(x)).compute()

/usr/local/anaconda3/lib/python3.5/site-packages/dask/dataframe/core.py in map(self, arg, na_action, meta)
   1751         dsk.update(self.dask)
   1752         if meta is no_default:
-> 1753             meta = _emulate(M.map, self, arg, na_action=na_action)
   1754         else:
   1755             meta = make_meta(meta)

/usr/local/anaconda3/lib/python3.5/site-packages/dask/dataframe/core.py in _emulate(func, *args, **kwargs)
   3043     """
   3044     with raise_on_meta_error(funcname(func)):
-> 3045         return func(*_extract_meta(args, True), **_extract_meta(kwargs, True))
   3046
   3047

/usr/local/anaconda3/lib/python3.5/contextlib.py in __exit__(self, type, value, traceback)
     75                 value = type()
     76             try:
---> 77                 self.gen.throw(type, value, traceback)
     78                 raise RuntimeError("generator didn't stop after throw()")
     79             except StopIteration as exc:

/usr/local/anaconda3/lib/python3.5/site-packages/dask/dataframe/utils.py in raise_on_meta_error(funcname)
    159                ).format(" in `{0}`".format(funcname) if funcname else "",
    160                         repr(e), tb)
--> 161         raise ValueError(msg)
    162
    163

ValueError: Metadata inference failed in `map`.

Original error is below:
------------------------
ValueError("invalid literal for int() with base 10: 'foo'",)

Traceback:
---------
  File "/usr/local/anaconda3/lib/python3.5/site-packages/dask/dataframe/utils.py", line 148, in raise_on_meta_error
    yield
  File "/usr/local/anaconda3/lib/python3.5/site-packages/dask/dataframe/core.py", line 3045, in _emulate
    return func(*_extract_meta(args, True), **_extract_meta(kwargs, True))
  File "/usr/local/anaconda3/lib/python3.5/site-packages/dask/utils.py", line 938, in __call__
    return getattr(obj, self.method)(*args, **kwargs)
  File "/usr/local/anaconda3/lib/python3.5/site-packages/pandas/core/series.py", line 2177, in map
    new_values = map_f(values, arg)
  File "pandas/src/inference.pyx", line 1207, in pandas.lib.map_infer (pandas/lib.c:66124)
  File "<ipython-input-9-885d1124eb4f>", line 1, in <lambda>
    data.x.map(lambda x: int(x)).compute()

There are, of course, no entries with value "foo" in the data... they seem to have been inserted during the CSV read?

This is a duplicate of https://github.com/dask/dask/issues/2265, and is a non-issue (besides our docs maybe needing improvement :)).
For methods that take user provided functions, dask tries to infer the metadata (column names, dtypes, etc...) by running the function on some fake data that matches the dtype. For columns with object type, the string "foo" is used. When it works this is nice, but for some functions (as you've found) this will fail. In these cases you'll need to specify the metadata yourself.
>>> data.x.map(int, meta=('x', int))

For more information please see the doc for map_partitions (will add to map as well).

(will add to map as well).

Done in https://github.com/dask/dask/pull/2282

@jcrist thanks for the quick reply.  Can confirm this corrected the issue, makes perfect sense to supply the explicit metadata :)  This leaves everything down to my version of @fonnesbeck's original issue, which (I assume) is the system choking on trying to apply the imputed column types on compute().  Filtering via usecols or supplying appropriate metadata seems to have corrected it.

@fonnesbeck : closing for now as stale. If this is still an issue for you feel free to reopen (preferably with a reproducible test case :))


Update parso to 0.2.1

Fixes #1833
Fixes #1721
@brettcannon If updating Parso fixes #1721, should't we consider including this into the next release (delaying the release) or releasing a patch asap?
VS Code seems to plan releasing the Outline feature in the next version. If they do, then we'll have a larger (if not all) users facing the same issue of intellisense not working due to the outline feature.
This pull request:

[x] Has a title summarizes what is changing
[x] Includes a news entry file (remember to thank yourself!)

@DonJayamanne Updating parso to 0.2.1 does not fix #1721. It does prevent some error messages in the developer console.


Build pipeline failed when installing python-genpackagedoc

Hi,
Both build pipelines OSS and BIOS are failed now due to same issue with genpackagedoc:
-Referent OSS pipeline: https://github.com/test-fullautomation/RobotFramework_AIO/actions/runs/11227945384/job/31211024409
Chapter 1.
(./Introduction.tex) [1]
Chapter 2.
(./Description.tex (/usr/share/texlive/texmf-dist/tex/latex/psnfss/ot1pcr.fd)
[2]
Underfull \hbox (badness 10000) in paragraph at lines 182--187

[3] [4] [5]
! Undefined control sequence.
l.372 \pandocbounded
                    {\includegraphics[keepaspectratio]{./pictures/TOC01.png}}
?
! Emergency stop.
l.372 \pandocbounded
                    {\includegraphics[keepaspectratio]{./pictures/TOC01.png}}
!  ==> Fatal error occurred, no output PDF file produced!
Transcript written on GenPackageDoc.log.

LaTeX compiler returned 1

Error: !!! ERROR !!!
[CDocBuilder.Build] : !!! ERROR !!!
[CDocBuilder.__GenDocPDF] : LaTeX compiler not returned expected value 0!

Thank you,
Ngoan

Hi @HolQue ,
Hi @test-fullautomation ,
I checked and found that the genpackagedoc failed due to new release pypandoc_binary version 1.14.
It was stuck and failed at step to generate pdf file as above information.
When I installed the previous version of pypandoc_binary - 1.13, genpackagedoc is fine again.
I used this fixed version as workaround solution #370  to avoid error in build pipeline while waiting a change (if requires) from genpackagedoc package.
Thank you,
Ngoan

#370 is merged.


[Performance] Opening search for the first time on a big account is causing the app to hang massively

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

What performance issue do we need to solve?
In a customers meeting the customer was trying to open the search for the first time in NewDot. It caused the app to hang up, and it was a very bad user experience (see the recording):
https://github.com/user-attachments/assets/99d97430-9545-475a-afca-7d0c5b5d1437
What is the impact of this on end-users?
User perception of the app is very bad, as it's super laggy, basically not usable (the browser even warns that the app is hanging).
List any benchmarks that show the severity of the issue
The customer shared a profile trace with us:
Firefox 2024-07-25 10.42 profile.json.gz
Proposed solution (if any)
None yet, I will go through the profile and see what can be optimised, what exactly caused those lags.
List any benchmarks after implementing the changes to show impacts of the proposed solution (if any)
not available yet
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Version Number: v9.0.13-4
Reproducible in staging?: not tested
Reproducible in production?: yes
Email or phone of affected tester (no customers): customer
Logs: See performance file
Notes/Photos/Videos: See attached video
Expensify/Expensify Issue URL: n/a
Issue reported by:@hannojg
Slack conversation:https://expensify.slack.com/archives/C05LX9D6E07/p1721919928992729
View all open jobs on Upwork

cc @sakluger

Curious what is happening with this especially to see if it is related to large numbers of reports (seems likely as there are 15k reports). Gonna assign myself in case @hannojg needs any assistance.

No updates

No update

A large part of this hanging is due to us building the search options the moment we open the search page:

https://github.com/Expensify/App/blob/4bac1000e36d0a8ba5fba945e87053d7b8cf2ef2/src/pages/ChatFinderPage/index.tsx#L78-L91

I am thinking about how to solve this here, by moving the operations in a first step to a separate thread/web worker:

https://expensify.slack.com/archives/C05LX9D6E07/p1723454316012939?thread_ts=1723209631.007999&cid=C05LX9D6E07

I just opened a PR hat shows a PoC for using web workers for running the search, which will unblock the main thread:

https://github.com/Expensify/App/pull/47432

I am now seeking approval on this new technical design here.
(Note: I am OOO for the rest of the week and will continue next week Monday 19.08)

Moving to weekly for now since Hanno is out until Monday.

Commenting for assignment :)

Thanks for helping, @chrispader. I'll be OOO for the next week. Hopefully we'll have some more details from the investigation when I return!

We were able to reproduce the bigger lags when running on a virtual machine, where the hardware is more constraint than on our recent MacBook Pro models directly. (note: we tested against a recent adhoc build that contained some search improvements).
The thing that takes the most time when opening the search page / chat finder page is:

calling createOptionsList
calling getSearchOptions (on the results of createOptionsList)
calling triggerUnreadUpdate also took ~1-2 seconds

We will come up with solutions for improving the performance of these functions (in the current single threaded architecture).
(Some of these solutions might blend with the solutions we are working on here)

@hannojg any updates on this investigation?

No updates - seems like we are focusing on improving search speed first. There is a WIP PR for that (https://github.com/Expensify/App/pull/48652), hopefully we'll get back to this one after that.

No updates.

What's the latest on this one?

We were able to get another, cleaner, sample of that problem here which relates to creating the options (which causes the lag):

https://github.com/Expensify/App/issues/46593#issuecomment-2387772633

I am sure now that we have a cleaner recording we can come up with good solutions to make this faster!

No updates.

No updates.

No updates

No updates

No updates

No updates

No update

I will try to look into this issue this week!

We've identified one place where the performance can be improved.
When opening the search page we need to construct out search options. Part of that step is to order the options.
Opening the full search page takes on my Mac:
Timing:development.new.expensify.open_search<PHONE_NUMBER>284744

For that, we need to create the search options, which makes up for ~70ms of the 416ms:
Timing:development.new.expensify.load_search_options 37.700000047683716
Timing:development.new.expensify.load_search_options 34.200000047683716

Of those 70ms half of the time is spend on ordering the items.
We use lodash order functions, which are known to be slow. We should replace the lodash sort with our own function that is optimized for performance.

Note: the numbers may not seem that drastically as those are from my high end MacBook. The numbers for android on a lower end device are:
Timing:development.new.expensify.load_search_options<PHONE_NUMBER>939642
Ordering options took<PHONE_NUMBER>029707ms
Timing:development.new.expensify.open_search 6194.899076998234

This is only one part of where the time goes for creating the search options, we will continue to where the other time is spend and how it can be optimized.


Expand / collapse of token sets causes weird UI issues

When your token sets share the name with token folders, and you expand/collapse token folders, the UI will act weird.
To reproduce:

Create a set called core/foo
Another one called light/foo
Another one called core
Another one called light

https://github.com/tokens-studio/figma-plugin/assets/4548309/535971bd-0c41-4887-8f24-f703f26cfc8b

Closing as this was fixed in another issue


TextFields don't update view when navigating with HOME/END or CTRL + LEFT/RIGHT

When navigating text that extends beyond the width of a text field, using HOME/END or CTRL + LEFT/RIGHT (as well as their combinations with SHIFT held down) doesn't move the view to follow where the cursor ends up.

Fixed here: 9625bbca9a044e90e5c591673cedd81d57661efd


Fix client transactions method

Fetching transactions didn't work without this change.

👍   Thanks so much @steveklebanoff  for the controbution


Issue #738 Initial CLI Skeleton

This is the stubbed out version of the operator tool CLI.  This doesn't close the associated issue, but once accepted it does settle the API.

test this please


convert pound to kilogram

Description
Write a program to convert pound to kilogram
1 pound = 0.453592 kg
Input  : 1
Output : 0.453592

Contributed by - @Aranarora
Tracking Issues

[x] #6888
[x] #6889
[x] #6890
[x] #6891
[x] #6892
[x] #6893
[x] #6894
[x] #6895
[x] #6896
[x] #6897
[x] #6898
[x] #6899
[x] #6900
[x] #6901
[x] #6902
[x] #6903
[x] #6904
[x] #6905
[x] #6906
[x] #6907

Assign me this issue

Hey @harisdev-netizen
All issues have already been closed
You can comment !assign on any good first issue you want to contribute to, to be auto-assigned
!assign


testing: increase sql request timeout on travis

sometimes create/delete statements are really slow on travis as it seems :(

sad ack


mvn install failed

I followed the instruction but mvn install failed:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project QordobaLib: Compilation failure: Compilation failure:
[ERROR] /private/var/tmp/testing/api-sdk-java/QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:[1483,16] error: method getTmAsync(String,APICallBack<LinkedHashMap<String,Object>>) is already defined in class QordobaController
[ERROR] /private/var/tmp/testing/api-sdk-java/QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:[1557,16] error: method getTmAsync(String,APICallBack<LinkedHashMap<String,Object>>) is already defined in class QordobaController
[ERROR] /private/var/tmp/testing/api-sdk-java/QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:[1630,16] error: method createTmAsync(APICallBack) is already defined in class QordobaController
[ERROR] /private/var/tmp/testing/api-sdk-java/QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:[2185,16] error: method getGlossariesAsync(String,APICallBack<LinkedHashMap<String,Object>>) is already defined in class QordobaController
[ERROR] /private/var/tmp/testing/api-sdk-java/QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:[2259,16] error: method getGlossariesAsync(String,APICallBack<LinkedHashMap<String,Object>>) is already defined in class QordobaController
[ERROR] /private/var/tmp/testing/api-sdk-java/QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:[2409,16] error: method createGlossariesAsync(APICallBack) is already defined in class QordobaController
[ERROR] /private/var/tmp/testing/api-sdk-java/QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:[2472,16] error: method getGlossariesAsync(String,String,APICallBack<LinkedHashMap<String,Object>>) is already defined in class QordobaController
[ERROR] /private/var/tmp/testing/api-sdk-java/QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:[2758,16] error: method getLanguagesAsync(APICallBack<LinkedHashMap<String,Object>>) is already defined in class QordobaController
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

Your Maven is reading Java version as 1.6.XX, Where as the pom.xml says the version is 1.7.
Try installing the required verison.
If already installed check your $JAVA_HOME environment variable, it should contain the path of Java JDK 7. If you dont find it, fix your environment variable.
try
mvn clean install -X helps to identify the root cause.
Some of the important phases of Maven build lifecycle are:
clean – the project is clean of all artifacts that came from previous compilations compile – the project is compiled into /target directory of project root install – packaged archive is copied into local maven repository (could in your user's home directory under /.m2) test – unit tests are run package – compiled sources are packaged into archive (JAR by default)

You sure I'm using 1.6.XX? Here is output of "java -version":
$ java -version
java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)
Are you able to repeat the issue?

Hi @fluent - we haven’t been able to reproduce that error. Can you send me your Skype ID to waseem AT qordoba dot com? Happy to help you debug live.

I don't have Skype account.
If you look at the error message, the method has defined more than once in QordobaLib/src/com/qordoba/developers/controllers/QordobaController.java:
public void getTmAsync(
        final String tmId,
        final APICallBack<LinkedHashMap<String, Object>> callBack
) {

How can you get around the issue?

Can you send me your email to waseem AT qordoba dot com? Happy to help you debug live. I will Send you video conference URL.

Thanks for the prompt reply but unfortunately we won't go any further as my colleagues also got similar errors about duplicated method signature with the Java SDK. Earlier I tried the C# SDK but got a lot of errors as well.

Strange. There may be a missing installation steps. In any case, it’s not going to work without keys. Happy to give you test keys on the phone on Monday. Email me a number and happy to call you.


NewPeer should never be sent before connect was called.

If one peer is directly reachable and the other peer calls crust::Service::connect, a connection will be established and a NewPeer event raised on both sides. This should only happen after both sides have called connect.

Is there a reliable way to reproduce this bug? I tried to write a test case for it, but it passed.

If I prepare-connection-info on both sides in the crust_peer example, but then call connect on only one side, I get a connection, and I get the event on both sides.

Confirmed. Failing test case here: https://github.com/madadam/crust/blob/spurious-new-peer-event-fix/src/service.rs#L1115

Fixed in #608


Add return-undefined rule

PR checklist

[ ] Addresses an existing issue: #0000
[X] New feature, bugfix, or enhancement

[X] Includes tests

[X] Documentation update

Overview of change:
Adds the return-undefined rule, which specifies when to prefer return; vs return undefined;.
CHANGELOG.md entry:
[new-rule] return-undefined

@andy-hanson broke master when merged. Looks like it needs to converted to use Program


Cygwin make fails due to missing _O_BINARY error in xxHash

This issue effects mccortex because of it's dependency on xxHash (https://github.com/Cyan4973/xxHash/tree/88c6ee1e4db6155dbe7047fed793cb8406b56086).
Original issue in xxHash repo (opened 16th of March 2017): https://github.com/Cyan4973/xxHash/issues/100

Thanks for pointing this issue out. I've removed xxHash from our dependencies in 01d43275ec7bff92f74360a41d8bc84928d62368. Will merge into master after the tests run.


Invoice Processing doc

The original PR3736 contains three app services (Intelligent Document Service, Invoice Processing, Receipt Processing). However, the Invoice Processing will not be released together with the other two. Therefore, a new PR is created only for the Invoice Processing doc.

The entire content for the Invoice Processing doc is moved to PR#4265. The doc will be released via PR#4264.
I will close this PR. There are too many conflicting files in this PR. It is much easier to move the Invoice Processing doc to a new branch than resolving all conflicts here.


bug: CohereChatGenerator not supporting tools

PSA: Not sure if this is actually a bug, might be a missing feature..
Describe the bug
The command-r model by Cohere is actually working with the CohereChatGenerator, but there seems to be a bug when we provide tools to the generator. It produces an empty response, nothing seems to happen.
On the other hand command returns an error saying tools are not supported.
To Reproduce
Works:
from haystack_integrations.components.generators.cohere import CohereChatGenerator

chat = CohereChatGenerator(model = "command-r")
message = ChatMessage.from_user("What's Natural Language Processing? Be brief.")
print(chat.run([message]))

Does not work (I used the cohere way of function definition here)
tools = [
   {
       "name": "sql_query_func",
       "description": f"This a tool useful to query a SQL table called 'absenteeism' with the following Columns: {', '.join(df.columns)}",
       "parameter_definitions": {
           "queries": {
               "description": "The query to use in the search. Infer this from the user's message. It should be a question or a statement",
               "type": "str",
               "required": True,
           }
       }
   }
]
messages = [
    ChatMessage.from_system(
        "You are a helpful and knowledgeable agent who has access to an SQL database which has a table called 'absenteeism'"
    ),
    ChatMessage.from_user("On which days of the week does the average absenteeism time exceed 4 hours?"),
]

chat_generator = CohereChatGenerator(model = "command-r")
response = chat_generator.run(messages=messages, generation_kwargs={"tools": tools})
print(response)

Describe your environment (please complete the following information):

OS: [e.g. iOS] Colab
Haystack version: main branch
Integration version: cohere-haystack-0.6.0

@masci @TuanaCelik I'm working on a solution for this

Hii @vblagoje, I could take this up, if it's not being worked on.

done in #790


Give visual indication of whether a comment is top level or not in the modqueue

Could just check if parent_id == link_id

1:11 PM  We should do 'has replies' while we're at it.
1:11 PM  We already have the code from flat view that does it.

The latter requires a get request,  since flatview just does that by looking at the son object for  childs.

Well skip that one then! :)


to add a syntax in languages.yml...

i need remake the languages id?
example:
  type: markup
  color: "#b7e1f4"
  extensions:
  - ".mtml"
  tm_scope: text.html.basic
  ace_mode: html
  codemirror_mode: htmlmixed
  codemirror_mime_type: text/html
  language_id: 220``` +1
```MUF:
  type: programming
  group: Forth
  extensions:
  - ".muf"
  - ".m"
  tm_scope: none
  ace_mode: forth
  codemirror_mode: forth
  codemirror_mime_type: text/x-forth
  language_id: 219```+1

??

or i can add my new language in the end file?

I'm not sure I understand your question. Have you read the contribution guidelines on adding a new language?

xBase:
type: programming
color: "#403a40"
aliases:

advpl
clipper
foxpro
extensions:
".prg"
".ch"
".prw"
tm_scope: source.harbour
ace_mode: text
language_id: 421
Latino:
type: programming
color: "#94B0C7"
extensions:
".lat"
ace_mode: text
language_id: 422

xBase:
  type: programming
  color: "#403a40"
  aliases:
  - advpl
  - clipper
  - foxpro
  extensions:
  - ".prg"
  - ".ch"
  - ".prw"
  tm_scope: source.harbour
  ace_mode: text
  language_id: 421
Latino:
  type: programming
  color: "#94B0C7"
  extensions:
  - ".lat"
  ace_mode: text
  language_id: 422

is that ok?

No. You need to add Latino without a language_id field and then run ./script/set-language-ids --update.

yes, i did add in the file and i did run it but that is the result

Then it is correct.

about the license. how can i do that? the step 3

i cant understand that step

Just run ./script/licensed and be careful when you git add the files to only add those related to the language you're adding.

thanks!


Update TS syntax

Since I implemented TypeScript support there has been new syntax added such as assert that I've yet to add.

@torifat added asserts support. Not sure if there's anything else we're missing.

Is import type { ... } from '...' supported?

@stephenwf Seems prettier still doesn't support it
https://github.com/prettier/prettier/issues/7263

@stephenwf Ah, it's not actually. We support it for Flow so sharing that logic should be easy. Created #108 to track.


Enable further property assertion (checked/selected) on elements such as switches/chips/selectors

Currently the following properties are being exposed for true/false on elements:
"clickable" : "true",
"enabled" : "true",
"focused" : "false",
"checked" : "true",
"selected" : "false"

For elements such as switches/chips/selectors there is currently no way to know if they are checked/selected as we're only able to query the enabled state which seems to evaluate as true for nearly everything on screen.
I realise these are currently only queryable in Android and not iOS, but I think it would make for much cleaner code and assertions if we could evaluate on them as an optional field. At the moment I have to write my tests with existing knowledge of the current switch state and sometimes toggle not knowing which way it is going to be set.

Main use case from this is to be able to run conditional flows as a result of the outcome of the element state

As mentioned by @simon-gilmurray, it's useful for validating the mentioned parameters

Closed in #781


ChatVertexAI's implementation of async streaming is inconsistent with other providers

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
import asyncio
from langchain_google_vertexai import ChatVertexAI
from langchain_openai import ChatOpenAI
from langchain.callbacks.base import BaseCallbackHandler
from langchain.schema import HumanMessage

class MyCallbackHandler(BaseCallbackHandler):

    def on_llm_start(self, serialized, prompts, **kwargs):
        print("  on_llm_start")

    def on_llm_end(self, repsonse, **kwargs):
        print("  on_llm_end")

    def on_llm_new_token(self, token, **kwargs):
        print("  on_llm_new_token", token)

async def main():
    # works

    print("openai: start")
    await ChatOpenAI(streaming=True).agenerate(
        [[HumanMessage(content="Hello, how are you?")]],
        callbacks=[MyCallbackHandler()],
    )
    print("openai: done")

    # fails
    print("vertex: start")
    await ChatVertexAI(streaming=True, model_name="gemini-pro").agenerate(
        [[HumanMessage(content="Hello, how are you?")]],
        callbacks=[MyCallbackHandler()],
        # stream=True ## <--- works if you add this, but isn't necessary for OpenAI
    )
    print("vertex: done")

if __name__ == "__main__":
    asyncio.run(main())

Error Message and Stack Trace (if applicable)
No response
Description
I expect ChatVertexAI to behave like other providers: accept streaming=True in the constructor and then invoke the on_llm_new_token callback for streaming operations.
The provided example gives the following output, which shows the inconsistency:
openai: start
  on_llm_start
  on_llm_new_token
  on_llm_new_token Hello
  on_llm_new_token !
  on_llm_new_token  I
  on_llm_new_token 'm
  on_llm_new_token  just
  on_llm_new_token  a
  on_llm_new_token  computer
  on_llm_new_token  program
  on_llm_new_token ,
  on_llm_new_token  so
  on_llm_new_token  I
  on_llm_new_token  don
  on_llm_new_token 't
  on_llm_new_token  have
  on_llm_new_token  feelings
  on_llm_new_token ,
  on_llm_new_token  but
  on_llm_new_token  I
  on_llm_new_token 'm
  on_llm_new_token  here
  on_llm_new_token  to
  on_llm_new_token  help
  on_llm_new_token  you
  on_llm_new_token .
  on_llm_new_token  How
  on_llm_new_token  can
  on_llm_new_token  I
  on_llm_new_token  assist
  on_llm_new_token  you
  on_llm_new_token  today
  on_llm_new_token ?
  on_llm_new_token
  on_llm_end
openai: done
vertex: start
  on_llm_start
  on_llm_end
vertex: done

If you add stream=True to the agenerate call, the callbacks are correctly invoked. So it seems it's the handling of the constructor param that is inconsistent with other providers.
System Info
System Information

OS:  Darwin
OS Version:  Darwin Kernel Version 22.6.0: Thu Nov  2 07:43:57 PDT 2023; root:xnu-87<IP_ADDRESS>1.17~6/RELEASE_ARM64_T6000
Python Version:  3.11.6 (main, Nov  2 2023, 04:39:43) [Clang 14.0.3 (clang-14<IP_ADDRESS>.1)]

Package Information

langchain_core: 0.1.36
langchain: 0.1.13
langchain_community: 0.0.29
langsmith: 0.1.22
langchain_google_vertexai: 0.1.2
langchain_openai: 0.0.8
langchain_text_splitters: 0.0.1

Packages not installed (Not Necessarily a Problem)
The following packages were not found:

langgraph
langserve

Wondering how I can work around this if I'm using ChatVertexAI in a chain with the (deprecated) LLMChain.


Fix DeferredStreamMessage may not call subscribeToDelegate method.

#delegate() and #subscribe() may call from different thread, and there is a timing issue that both method won't call subscribeToDelegate method. Apply this change will fix the problem and solve leaking subscriber issue too.

I can reproduce this by code like below, but it's really rare, sometimes it won't happened even run more that 30mins, sometime reproduces when just running in few seconds.
    @Test
    public void tryRace() throws InterruptedException {
        ExecutorService executorService = Executors.newFixedThreadPool(2);
        while (true) {
            @SuppressWarnings("unchecked")
            StreamMessage<Object> delegate = mock(StreamMessage.class);
            when(delegate.closeFuture()).thenReturn(new CompletableFuture<>());
            @SuppressWarnings("unchecked")
            Subscriber<Object> subscriber = mock(Subscriber.class);
            DeferredStreamMessage<Object> deferredStreamMessage = new DeferredStreamMessage<>();
            final CountDownLatch latch = new CountDownLatch(1);
            executorService.submit(() -> {
                latch.await();
                Thread.sleep(1);
                deferredStreamMessage.delegate(delegate);
                return null;
            });
            executorService.submit(() -> {
                latch.await();
                Thread.sleep(1);
                deferredStreamMessage.subscribe(subscriber);
                return null;
            });
            latch.countDown();

            await().atMost(5, TimeUnit.SECONDS)
                   .untilAsserted(() -> verify(delegate).subscribe(subscriber, false));
        }

updated, I'm trying to make test, but not have idea yet.

I'm really sorry to tell you, but this just crossed my mind.
I think we can handle this without using states just change a little bit of subscribe0() method from the previous code.

private void subscribe0(Subscriber subscriber, Executor executor, boolean withPooledObjects) {
        if (abortPending) {
            failLateSubscriber(subscriber, executor, AbortedStreamException.get());
            return;
        }

        final PendingSubscription newPendingSubscription =
                new PendingSubscription<>(subscriber, executor, withPooledObjects);

        if (!pendingSubscriptionUpdater.compareAndSet(this, null, newPendingSubscription)) {
            failLateSubscriber(subscriber, executor,
                               new IllegalStateException("subscribed by other subscriber already"));

        }
        final StreamMessage delegate = this.delegate;
        if (delegate == null) {
            return;
        }

        subscribeToDelegate(delegate, newPendingSubscription);
    }

and compareAndSet again in subscribeToDelegate().. What do you think about this?

updated, @minwoox thx for ur idea/recommendation.

@imasahiro Any comments?

updated, will 2nd commit make things better? and I found 1st commit forget to return when !pendingSubscriptionUpdater.compareAndSet(this, null, newPendingSubscription) . I think it should(?).

And I changed some at 2nd commit, so need recheck. thx.

Thanks, @kojilin !


perf: improve lightgbm training performance 4x-10x by setting num_threads to be cores-1 by default for single dataset mode

In benchmarking, it was discovered that lightgbm training time could be reduced 4X-10X by setting the num_threads to be equal to the # of machine cores - 1 for the single dataset mode (which is now the default mode).
This actually was already suggested in the lightgbm docs:
https://lightgbm.readthedocs.io/en/latest/Parameters.html#num_threads

for distributed learning, do not use all CPU cores because this will cause poor performance for the network communication

Poor network communication can lead to very slow training execution time.
On one scenario with a 37 GB dataset on disk with parameters:
learning_rate = 0.1, num_leaves = 768, num_trees = 1000, min_data_in_leaf = 15000, max_bin = 512
the training time without setting num_threads was 5.5 hours, while setting num_threads to (number of machine cores)-1 reduced the training time to 1.2 hours.  The change in performance will vary depending on the parameters used.
This PR sets the distributed lightgbm number of threads by default to be (num cores)-1  if the parameter is not specified by the user.  The user can still override the parameter.

/azp run

Codecov Report

Merging #1282 (0ffee85) into master (c65423c) will decrease coverage by 81.05%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master   #1282       +/-   ##
==========================================
- Coverage   83.25%   2.20%   -81.06%
==========================================
  Files         300     248       -52
  Lines       13720   12002     -1718
  Branches      670     673        +3
==========================================
- Hits        11423     265    -11158
- Misses       2297   11737     +9440

Impacted Files
Coverage Δ

...osoft/azure/synapse/ml/lightgbm/LightGBMBase.scala
0.00% <0.00%> (-94.89%)
:arrow_down:

...azure/synapse/ml/lightgbm/LightGBMClassifier.scala
0.00% <0.00%> (-91.12%)
:arrow_down:

...oft/azure/synapse/ml/lightgbm/LightGBMRanker.scala
0.00% <0.00%> (-64.18%)
:arrow_down:

.../azure/synapse/ml/lightgbm/LightGBMRegressor.scala
0.00% <0.00%> (-74.14%)
:arrow_down:

...m/src/main/scala/com/microsoft/lightgbm/SWIG.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...ain/scala/org/apache/spark/ml/param/MapParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...n/scala/org/apache/spark/ml/param/UDPyFParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...cala/org/apache/spark/ml/NamespaceInjections.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...cala/org/apache/spark/ml/param/DataTypeParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...ala/org/apache/spark/ml/param/ByteArrayParam.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

... and 283 more

Continue to review full report at Codecov.

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

An added benefit seems to be that the lightgbm tests finish faster as well - the lightgbm1 unit tests finished in 11 min in this build and took 33 min in previous build :sweat_smile:

/azp run

/azp run

/azp run

/azp run


Prevent dollar sign mask deletion

Currently a user can delete the initial dollar sign in a currency mask. Is there an option to prevent that?

got the same question


Add Blender 3.3.1 tags and generate new Dockerfiles

The cpu version runs fine on my machine (I can't test the gpu version):
> docker run -it blender blender --version
Blender 3.3.1

@juniorxsound  I am not sure why the 3.2 docker build is failing as there are no changes around it.  I have done the changes for 3.3.1 alone.

@juniorxsound Thanks for reviewing. I just pushed the requested changes, however drone build did not trigger.

Any updates to when this will be merged?


Configure Multiple Cars

How could I arrange a connection of multiple cars?
If I have to start the script twice, a different port should be specified.

I've created two subdirs in my users home and copied the volco4evcc directory and all config into this directory.
The start failed:
Import-Module: /root/XC90/volvo4evcc/start.ps1:2
Line |
   2 |  Import-Module "$($pwd.path)/volvo4evcc/Volvo4evcc.psd1"
     |  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | The specified module '/root/volvo4evcc/Volvo4evcc.psd1' was not loaded because no valid module file was found in any module directory.
Start-Volvo4Evcc: /root/XC90/volvo4evcc/start.ps1:14

If I changed the directory before I start to ~/XC90 it works.
After that I will try the second car. I will keep you informed.

How are you cars configured on the volvo site, Is that 12 cars in 1 account or do you have a separate account per car ?

Yeah i've got both cars in one account.
Actually I'm using volvo2mqtt, and have no VIN in my volvo2mqtt config. I'm get the information about boths registered VIN's.

Both instances are working separately, but if I start the second one in parallel to the first, the first one get's killed.
How do you identify the process on startup to kill the old one?
vm-volvo4evcc:~/XC40# ~/XC40/volvo4evcc_XC40.sh
Token loaded from Disk succesfull
Startup with Connected:True - Charging:False
Killed
vm-volvo4evcc:~/XC90# /root/XC90/volvo4evcc_XC90.sh
Token loaded from Disk succesfull
Startup with Connected:True - Charging:False
Just a Evcc pull and token test no action taken - Token valid for another : 7.2 minutes

I've changes start.ps1 to have the path of the script in Get-Process, then it's working
#    Get-Process 'pwsh' | Where-Object -FilterScript {$_.Commandline -like "*volvo4evcc/start.ps1" -and $_.id -ne $pid } | Stop-Process -Force
    Get-Process 'pwsh' | Where-Object -FilterScript {$_.Commandline -like "*$($pwd.path)/volvo4evcc/start.ps1" -and $_.id -ne $pid } | Stop-Process -Force

@christoph-ng
I have started analysing what is needed for multi car support,
Am i assuming correctly that on the volvo API the only difference is the VIN numbers ?   you currently setup this module twice configuring the VIN as the difference.

Am i assuming correctly that on the volvo API the only difference is the VIN numbers ?

As what I have seen, yes. That is why I included the VIN in my version (volvo2evcc - which I will remove, when yours is final, since it is the better approach). I used jq in evcc to parse the result for the correct VIN then.
soc:
source: http
uri: http://<IP_ADDRESS>:8182/data
method: GET
jq: .data.YOUR_VIN.battery_charge_level

Looks like we have a first test build ,
Do note you have to remove the old module and log and config files that where created to be able to migrate successfull to this version
than rerun
Import-module "$($HOME)/Volvo4Evcc/Volvo4Evcc.psd1"
Set-volvoconfig
Set-volvoconfig -WeatherInfo

That looks good, I'm getting the status of my two cars.
Do I have to set the follwing in EVCC? Is it possible to replace Car0/Car1 by the VIN to identify the cars?

Thats some good feedback, as this is a beta build i am planning to incorporate all feedback you can give inc some of the fixes from the main branch and then release it as a 2.0 of the  addon.

I've tested connection of both cars and do a summarize of the events. It seems that the detection after connection a new car is quite slow and takes some minutes. You can see the protocoll of my testing above. There is no refresh after the car gets disconnected and I got some errors in evcc. Please have a look, perhaps it helps you.
The timestamps in volvo4evcc are not in my local time 09:07 => 10:07. You have to add one hour to my times and the evcc times.
-> Car1 Connected
    "chargingSystemStatus": {
      "value": "CHARGING_SYSTEM_IDLE",
      "timestamp": "2024-11-28T09:07:25Z"
    },
    "chargingConnectionStatus": {
      "value": "CONNECTION_STATUS_CONNECTED_AC",
      "timestamp": "2024-11-28T09:07:25Z"
    },
    "EvccStatus": {
      "value": "B"

-> Disconnect Car1 on 10:17
[lp-1 ] INFO 2024/11/28 10:17:19 car disconnected
[lp-1 ] INFO 2024/11/28 10:17:19 vehicle updated: XC90volvo4evcc -> unknown
[lp-1 ] DEBUG 2024/11/28 10:17:19 set battery boost: false
[lp-1 ] DEBUG 2024/11/28 10:17:19 set session soc limit: 0
[lp-1 ] DEBUG 2024/11/28 10:17:19 set session energy limit: 0
[push ] ERROR 2024/11/28 10:17:19 invalid message template for disconnect: wanted: [vehicleTitle], got: [auth battery batteryBoost batteryCapacity batteryDischargeControl batteryEnergy batteryGridChargeActive batteryGridChargeLimit batteryMode batteryPower batterySoc bufferSoc bufferStartSoc chargeCurrent chargeCurrents chargeDuration chargePower chargeRemainingEnergy chargeTotalImport chargedEnergy chargerFeatureHeating chargerFeatureIntegratedDevice chargerIcon chargerPhases1p3p chargerPhysicalPhases chargerStatusReason charging connected connectedDuration currency disableDelay disableThreshold effectiveLimitSoc effectiveMaxCurrent effectiveMinCurrent effectivePlanSoc effectivePlanTime effectivePriority enableDelay enableThreshold enabled fatal greenShareHome greenShareLoadpoints gridConfigured gridCurrents gridEnergy gridPower gridPowers hems homePower influx interval limitEnergy limitSoc loadpoint maxCurrent minCurrent mode mqtt network phaseAction phaseRemaining phasesActive phasesConfigured phasesEnabled planEnergy planOverrun planProjectedEnd planProjectedStart planTime priority prioritySoc pv pvAction pvEnergy pvPower pvRemaining residualPower sessionCo2PerKWh sessionEnergy sessionPrice sessionPricePerKWh sessionSolarPercentage siteTitle smartCostActive smartCostNextStart smartCostType sponsor statistics tariffFeedIn tariffGrid tariffPriceHome tariffPriceLoadpoints title vehicleClimaterActive vehicleDetectionActive vehicleLimitSoc vehicleName vehicleOdometer vehicleRange vehicleSoc vehicleWelcomeActive vehicles version]

-> ReConnect Car1 10:21
[main ] DEBUG 2024/11/28 10:21:19 vehicle status: A (XC40volvo4evcc)
[main ] DEBUG 2024/11/28 10:21:19 vehicle status: B (XC90volvo4evcc)
[lp-1 ] INFO 2024/11/28 10:21:19 vehicle updated: unknown -> XC90volvo4evcc
[lp-1 ] DEBUG 2024/11/28 10:21:19 vehicle status: B

  "Car1": {
    "chargingSystemStatus": {
      "value": "CHARGING_SYSTEM_IDLE",
      "timestamp": "2024-11-28T09:21:20Z"
    },
    "chargingConnectionStatus": {
      "value": "CONNECTION_STATUS_CONNECTED_AC",
      "timestamp": "2024-11-28T09:21:20Z"
    },
    "EvccStatus": {
      "value": "B"

Timestamp of chargingConnectionStatus hasn't changed to 10:21. It seems that volvo4evv does not recognize the reconnect
-> Disconnect Car1 at 10:24
lp-1 ] DEBUG 2024/11/28 10:24:49 charger status: A
[lp-1 ] INFO 2024/11/28 10:24:49 car disconnected
[lp-1 ] INFO 2024/11/28 10:24:49 vehicle updated: XC90volvo4evcc -> unknown

  "Car1": {
    "chargingSystemStatus": {
      "value": "CHARGING_SYSTEM_IDLE",
      "timestamp": "2024-11-28T09:21:20Z"
    },
    "chargingConnectionStatus": {
      "value": "CONNECTION_STATUS_CONNECTED_AC",
      "timestamp": "2024-11-28T09:21:20Z"
    },
    "EvccStatus": {
      "value": "B"

10:27:
unchanged CHARGING_SYSTEM_IDLE, CONNECTION_STATUS_CONNECTED_AC, EVCC Status B
10:38:
unchanged CHARGING_SYSTEM_IDLE, CONNECTION_STATUS_CONNECTED_AC, EVCC Status B
11:13:  Car1 gets disconnected in Volvo4evcc, this is the event of 10:24
Car1
    "chargingConnectionStatus": {
      "value": "CONNECTION_STATUS_DISCONNECTED",
      "timestamp": "2024-11-28T09:24:43Z"
    },
    "EvccStatus": {
      "value": "A"

11:14: Car0 connected
  "Car0": {
    "chargingConnectionStatus": {
      "value": "CONNECTION_STATUS_DISCONNECTED",
      "timestamp": "2024-11-28T10:06:35Z"
    },
    "EvccStatus": {
      "value": "A"

  "Car1": {
     "chargingConnectionStatus": {
      "value": "CONNECTION_STATUS_DISCONNECTED",
      "timestamp": "2024-11-28T09:24:43Z"
    },
    "EvccStatus": {
      "value": "A"

11:15 GuestCar shown in EVCC
EVCC Log:
[push ] ERROR 2024/11/28 11:14:49 invalid message template for connect: wanted: [vehicleTitle], got: [auth battery batteryBoost batteryCapacity batteryDischargeControl batteryEnergy batteryGridChargeActive batteryGridChargeLimit batteryMode batteryPower batterySoc bufferSoc bufferStartSoc chargeCurrent chargeCurrents chargeDuration chargePower chargeRemainingDuration chargeRemainingEnergy chargeTotalImport chargedEnergy chargerFeatureHeating chargerFeatureIntegratedDevice chargerIcon chargerPhases1p3p chargerPhysicalPhases chargerStatusReason charging connected connectedDuration currency disableDelay disableThreshold effectiveLimitSoc effectiveMaxCurrent effectiveMinCurrent effectivePlanSoc effectivePlanTime effectivePriority enableDelay enableThreshold enabled fatal greenShareHome greenShareLoadpoints gridConfigured gridCurrents gridEnergy gridPower gridPowers hems homePower influx interval limitEnergy limitSoc loadpoint maxCurrent minCurrent mode mqtt network phaseAction phaseRemaining phasesActive phasesConfigured phasesEnabled planEnergy planOverrun planProjectedEnd planProjectedStart planTime priority prioritySoc pv pvAction pvEnergy pvPower pvRemaining residualPower sessionCo2PerKWh sessionEnergy sessionPrice sessionPricePerKWh sessionSolarPercentage siteTitle smartCostActive smartCostNextStart smartCostType sponsor statistics tariffFeedIn tariffGrid tariffPriceHome tariffPriceLoadpoints title vehicleClimaterActive vehicleDetectionActive vehicleLimitSoc vehicleName vehicleOdometer vehicleRange vehicleSoc vehicleWelcomeActive vehicles version]
[push ] ERROR 2024/11/28 11:14:49 invalid message template for start: wanted: [vehicleTitle], got: [auth battery batteryBoost batteryCapacity batteryDischargeControl batteryEnergy batteryGridChargeActive batteryGridChargeLimit batteryMode batteryPower batterySoc bufferSoc bufferStartSoc chargeCurrent chargeCurrents chargeDuration chargePower chargeRemainingDuration chargeRemainingEnergy chargeTotalImport chargedEnergy chargerFeatureHeating chargerFeatureIntegratedDevice chargerIcon chargerPhases1p3p chargerPhysicalPhases chargerStatusReason charging connected connectedDuration currency disableDelay disableThreshold effectiveLimitSoc effectiveMaxCurrent effectiveMinCurrent effectivePlanSoc effectivePlanTime effectivePriority enableDelay enableThreshold enabled fatal greenShareHome greenShareLoadpoints gridConfigured gridCurrents gridEnergy gridPower gridPowers hems homePower influx interval limitEnergy limitSoc loadpoint maxCurrent minCurrent mode mqtt network phaseAction phaseRemaining phasesActive phasesConfigured phasesEnabled planEnergy planOverrun planProjectedEnd planProjectedStart planTime priority prioritySoc pv pvAction pvEnergy pvPower pvRemaining residualPower sessionCo2PerKWh sessionEnergy sessionPrice sessionPricePerKWh sessionSolarPercentage siteTitle smartCostActive smartCostNextStart smartCostType sponsor statistics tariffFeedIn tariffGrid tariffPriceHome tariffPriceLoadpoints title vehicleClimaterActive vehicleDetectionActive vehicleLimitSoc vehicleName vehicleOdometer vehicleRange vehicleSoc vehicleWelcomeActive vehicles version]
[main ] DEBUG 2024/11/28 11:14:49 vehicle status: A (XC40volvo4evcc)
[main ] DEBUG 2024/11/28 11:14:49 vehicle status: A (XC90volvo4evcc)

11:18: EVCC gets the info that XC40 (CAR0) gets connected - 4 Minutes after connection
[lp-1 ] DEBUG 2024/11/28 11:18:49 charger status: B
[lp-1 ] DEBUG 2024/11/28 11:18:49 vehicle api refresh
[main ] DEBUG 2024/11/28 11:18:49 vehicle status: B (XC40volvo4evcc)
[main ] DEBUG 2024/11/28 11:18:49 vehicle status: A (XC90volvo4evcc)
[lp-1 ] INFO 2024/11/28 11:18:49 vehicle updated: unknown -> XC40volvo4evcc
[lp-1 ] DEBUG 2024/11/28 11:18:49 vehicle status: B

  "Car0": {
    "chargingSystemStatus": {
      "value": "CHARGING_SYSTEM_IDLE",
      "timestamp": "2024-11-28T10:14:52Z"
    },
    "chargingConnectionStatus": {
      "value": "CONNECTION_STATUS_CONNECTED_AC",
      "timestamp": "2024-11-28T10:14:52Z"
    },
    "EvccStatus": {
      "value": "B"

Thx, So in essence it seems to work but its slow atm ,  (This is due to the saving of API calls with a single car )
Let me see if i can add some enhanced logic to speed it up without generating excessive API calls.
For the EVCC error, no clue here on my end looks like that the messaging  part but i don't have enough experience with EVCC to know why that generates ,  did you have that with other modules ? not sure why it would relate other than using a custom vehicle VS a templated one. but the use the same base YAML

@christoph-ng
I have updated the miltiplecarsimplke branch to include some new logic that should increase detection to under 30 sec.
You can inplace upgrade , just copy the files over the folder and restart

Added the dynamic names @christoph-ng

Sorry I forgot to reply. Thats fine now, thanks.


Update renderer.c

clip_rect must be initialized to the full window, otherwise drawing will not work until a MU_COMMAND_CLIP is issued.
This issue affects specially single-window interfaces, because there's no clipping involved.

Thank you! TIL.

Thanks!

Thank you both for this library. Love it!


The ExpandMacroAsync method formats the 'd' case incorrectly

When the spf record below is validated the %{d} parts gets an additional dot which invalidates the resulting domain name. The DomainName.Parse method throws an exception.
v=spf1 include:%{ir}.%{v}.%{d}.spf.has.pphosted.com -all
The issue is the case "d" at line 556. More precisely line 557. The domain.ToString() returns a domain name with a dot prefix. This causes two dots and invalidates the resulting string.

Fixed in version 3.1.1

Please can you link to where the change was made? We can't upgrade to v3 because it is .net 6 only and we are on netstandard so will need to backport the fix.
Thx


Use the circular_menu in appbar

Hi,
Can I use the circular_menu widget in the app bar, I have a IconButton upon which I open a PopupMenuButton, but this formation looks old in front of your widget please guide me how can I use this widget in the app bar.
Thanks,

Hi @areeba-arshad
Thanks for creating this issue ,
Please wrap the Scaffold with CircularMenu and set the alignment to Alignment.topLeft or Alignment.topRight or Alignment.topCenter as you want , so the circular menu floats above the app bar and it seems like placed in it , like this :
CircularMenu(
        backgroundWidget: Scaffold(
          appBar: AppBar(),
          body: Center(
            child: Text(
              "Circular Menu in the app bar",
              style: TextStyle(fontSize: 25),
            ),
          ),
        ),
        toggleButtonColor: Colors.pink,
        alignment: Alignment.topLeft,
        items: [
          CircularMenuItem(
            onTap: () {
              print("amber");
            },
            icon: Icons.search,
            color: Colors.amber,
          ),
          CircularMenuItem(
            onTap: () {
              print("green");
            },
            icon: Icons.settings,
            color: Colors.green,
          ),
          CircularMenuItem(
            onTap: () {
              print("orange");
            },
            icon: Icons.home,
            color: Colors.deepOrange,
          ),
        ],
      )


GitHub CI: enable 'cache' action

This caches Maven artifacts. Builds should be faster with caching enabled.
See: https://github.com/actions/cache/blob/master/examples.md

Contributing to Twilio

All third-party contributors acknowledge that any contributions they provide will be made under the same open-source license that the open-source project is provided under.

[x] I acknowledge that all my contributions will be made under the project's license.

Good call

LGTM

Thanks!


load_threaded_request() combined with awaiting a timer fails when loading the same resource twice

Godot version
4.0 alpha 8
System information
Windows 10
Issue description
Using ResourceLoader.load_threaded_request() to load a resource while also using await get_tree().create_timer().timeout to wait (eg. for a loading animation to complete) will work the first time, but running it a second time to reload the same resource results in ResourceLoader.load_threaded_request() loading a null object instead.
Steps to reproduce
Use ResourceLoader to load a resource.
ResourceLoader.load_threaded_request(path_to_resource)
while true:
	if load_status == ResourceLoader.THREAD_LOAD_LOADED:
		break
	await get_tree().create_timer(0.5).timeout
	load_status = ResourceLoader.load_threaded_get_status(path_to_resource)
var resource = ResourceLoader.load_threaded_get(path_to_resource)

Add a timer somewhere in the function outside the while loop.
await get_tree().create_timer(0.5).timeout

The resource will load properly once, but on the second run it will be null; instantiating it will cause an error.
Minimal reproduction project
LoadError.zip
The project replicates the error with scenes. Use KEY_1 and KEY_2 to control scene switching.

I can confirm the issue with alpha8 but not with beta5. Could you reproduce the error with a more recent version of the engine?

Just checked with Godot 4 RC1 and issue seems to be resolved, thanks


Remove version: OpenJS.NodeJS.LTS version 18.14.2

Replaced by another Pull Request
Microsoft Reviewers: Open in CodeFlow

https://www.github.com/microsoft/winget-pkgs/pull/143386#issuecomment-1986949152 [Policy] Needs-Author-Feedback

Close with reason: See discussion in above linked issue;


Rows - Randomize output

Add logic when ROWS to randomize the output.

@ayush-shah can you add more details

Profiler when profiles based on the given rows limit..
adding a randomization logic to fetch new random data from the source should give us a better profiling


How do you write a script using Cats Effect IOApp or Scalaz zio App?

Both of these libraries "take over" the main method of the outer object.
What would be the way of writing this in Ammonite? Is it possible?
Edit: I asked this question assuming that either of the libraries do something special that could not be replicated manually. I'm still not totally sure of their inner workings.
If their App traits are nothing special, it is possible to just build the IOs and run them yourself, as below.
object CatsEffectMain {
  def main(args: Array[String]): Unit = {
    val io =
      IO {
        println("Hello, world!")
      }.as(ExitCode.Success)

    io.unsafeRunSync()
  }
}

object ScalazZioMain {
  def main(args: Array[String]): Unit = {
    val runtime = new scalaz.zio.DefaultRuntime {}
    val io = putStrLn("Hello World!")

    runtime.unsafeRun(io)
  }
}

Seems like you already found your answer???

Maybe. Just wasn't sure if that was "the right" thing to do.


Fix broken links

Fixes
https://github.com/ioam/holoviews/issues/2854
I just copied from bokeh/Paths.ipynb or matplotlib/Paths.ipynb and replaced Path with Labels

Thanks!

Thanks!


Display Champion Image

I have a list of Participants, List<Participant> participants containing 10 participants and I want to create an ImageView that contains the champion image/picture.
Image img = participants.get(0).getChampion().getImage();
Now how would I use img to have it display on the ImageView? I haven't found a way to convert the Image img into a bitmap.

The Image type doesn't actually store the image data, so you won't be able to find a way to convert it directly into a bitmap.
https://developer.riotgames.com/docs/static-data describes how to get the images from the Image data the API sends under the Image & Data Urls section.

Yeah, that's what I ended up doing, thanks though.


 C is a superior language.

All type-punning unions in Legion should be gone now as of this merge request being merged:
https://gitlab.com/StanfordLegion/legion/-/merge_requests/398
If anyone finds any other type punning unions they can let me know.
Note: there are still a few unions, but they obey the rules of C++ and are not type-punning unions.


Severity is ordered alphabetically

Hey @ZsDeak-SAP, thank you for the catch!
It was fixed and is already available in version 2.1.4. It's also already published in NPM 😄


MAINT: stats.pearson3: fix ppf for negative skew

Reference issue
Closes gh-17050
What does this implement/fix?
gh-17050 reported that pearson3.ppf was incorrect for negative values of skew. The fix is similar to that for cdf in gh-12640 - use the fact that pearson3.ppf(x, skew) = -pearson3.ppf(1-x, -skew).

It would be good to get this in 1.9.2.


Use API for Peer Id

The api returns our_current_id for get_verify_config_hash, so we use that. Since PeerId is part of ConsensusConfigGenParams too, we can determine which peer we are/are not.

Addresses one of the issues in #1