Have issues with plot.plot_media_channel_posteriors(media_mix_model=mmm)

I am running the dummy data for lightweight MMM, and when I run the code, below is the error message. I just started using lightweight MMM today. so everything should be the latest version.
plot.plot_media_channel_posteriors(media_mix_model=mmm)

TypingError                               Traceback (most recent call last)
Cell In[39], line 1
----> 1 plot.plot_media_channel_posteriors(media_mix_model=mmm)
File ~\AppData\Local\anaconda3\Lib\site-packages\lightweight_mmm\plot.py:818, in plot_media_channel_posteriors(media_mix_model, channel_names, quantiles, fig_size)
816     geo_axis.set_xlabel(axis_label)
817 else:
--> 818   channel_axis = arviz.plot_kde(
819       media_channel_posteriors[:, channel_i],
820       quantiles=quantiles,
821       ax=channel_axis)
822   axis_label = f"media channel {channel_names[channel_i]}"
823   channel_axis.set_xlabel(axis_label)
File ~\AppData\Local\anaconda3\Lib\site-packages\arviz\plots\kdeplot.py:263, in plot_kde(values, values2, cumulative, rug, label, bw, adaptive, quantiles, rotated, contour, hdi_probs, fill_last, figsize, textsize, plot_kwargs, fill_kwargs, rug_kwargs, contour_kwargs, contourf_kwargs, pcolormesh_kwargs, is_circular, ax, legend, backend, backend_kwargs, show, return_glyph, **kwargs)
260 if bw == "default":
261     bw = "taylor" if is_circular else "experimental"
--> 263 grid, density = kde(values, is_circular, bw=bw, adaptive=adaptive, cumulative=cumulative)
264 lower, upper = grid[0], grid[-1]
266 density_q = density if cumulative else density.cumsum() / density.sum()
File ~\AppData\Local\anaconda3\Lib\site-packages\arviz\stats\density_utils.py:498, in kde(x, circular, **kwargs)
495 else:
496     kde_fun = _kde_linear
--> 498 return kde_fun(x, **kwargs)
File ~\AppData\Local\anaconda3\Lib\site-packages\arviz\stats\density_utils.py:581, in _kde_linear(x, bw, adaptive, extend, bound_correction, extend_fct, bw_fct, bw_return, custom_lims, cumulative, grid_len, **kwargs)
577 # Determine grid
578 grid_min, grid_max, grid_len = _get_grid(
579     x_min, x_max, x_std, extend_fct, grid_len, custom_lims, extend, bound_correction
580 )
--> 581 grid_counts, _, grid_edges = histogram(x, grid_len, (grid_min, grid_max))
583 # Bandwidth estimation
584 bw = bw_fct * _get_bw(x, bw, grid_counts, x_std, x_range)
File ~\AppData\Local\anaconda3\Lib\site-packages\arviz\utils.py:193, in maybe_numba_fn.call(self, *args, **kwargs)
191 """Call the jitted function or normal, depending on flag."""
192 if Numba.numba_flag:
--> 193     return self.numba_fn(*args, **kwargs)
194 else:
195     return self.function(*args, **kwargs)
File ~\AppData\Local\anaconda3\Lib\site-packages\numba\core\dispatcher.py:468, in _DispatcherBase._compile_for_args(self, *args, **kws)
464         msg = (f"{str(e).rstrip()} \n\nThis error may have been caused "
465                f"by the following argument(s):\n{args_str}\n")
466         e.patch_message(msg)
--> 468     error_rewrite(e, 'typing')
469 except errors.UnsupportedError as e:
470     # Something unsupported is present in the user code, add help info
471     error_rewrite(e, 'unsupported_error')
File ~\AppData\Local\anaconda3\Lib\site-packages\numba\core\dispatcher.py:409, in _DispatcherBase._compile_for_args..error_rewrite(e, issue_type)
407     raise e
408 else:
--> 409     raise e.with_traceback(None)
TypingError: Failed in nopython mode pipeline (step: nopython frontend)
No implementation of function Function(<function histogram at 0x000001D07B65B7E0>) found for signature:

histogram(readonly buffer(float32, 1d, C), bins=int64, range=UniTuple(readonly buffer(float32, 0d, C) x 2))

There are 2 candidate implementations:

Of which 2 did not match due to:
Overload in function 'np_histogram': File: numba\np\arraymath.py: Line 3895.
With argument(s): '(readonly buffer(float32, 1d, C), bins=int64, range=UniTuple(readonly buffer(float32, 0d, C) x 2))':
Rejected as the implementation raised a specific error:
TypingError: Failed in nopython mode pipeline (step: nopython frontend)
No implementation of function Function(<function linspace at 0x000001D07B5A6E80>) found for signature:

linspace(readonly buffer(float32, 0d, C), readonly buffer(float32, 0d, C), int64)

There are 2 candidate implementations:
- Of which 2 did not match due to:
Overload of function 'linspace': File: numba\np\arrayobj.py: Line 4638.
With argument(s): '(readonly buffer(float32, 0d, C), readonly buffer(float32, 0d, C), int64)':
No match.
During: resolving callee type: Function(<function linspace at 0x000001D07B5A6E80>)
During: typing of call at C:\Users\dong.h.kang\AppData\Local\anaconda3\Lib\site-packages\numba\np\arraymath.py (3936)
File "....\AppData\Local\anaconda3\Lib\site-packages\numba\np\arraymath.py", line 3936:
def histogram_impl(a, bins=10, range=None):

               bins_array = np.linspace(bin_min, bin_max, bins + 1)
               ^

raised from C:\Users\dong.h.kang\AppData\Local\anaconda3\Lib\site-packages\numba\core\typeinfer.py:1086
During: resolving callee type: Function(<function histogram at 0x000001D07B65B7E0>)
During: typing of call at C:\Users\dong.h.kang\AppData\Local\anaconda3\Lib\site-packages\arviz\stats\density_utils.py (979)
File "....\AppData\Local\anaconda3\Lib\site-packages\arviz\stats\density_utils.py", line 979:
def histogram(data, bins, range_hist=None):

"""
hist, bin_edges = np.histogram(data, bins=bins, range=range_hist)
^

I just had this same issue due to the numba package which I think was installed when I installed scikit-lego earlier today.
What I did was uninstall lightweight_mmm, arviz, numpy, and numba. Then I reinstalled lightweight_mmm which automatically installed arviz and numpy for me.
Then I tried the plot again and it worked.
Hopefully this helps!

MMM, and when I run the code, below is the error message. I just started using lightweight MMM today. so everything should be the latest version.
plot.plot_media_channel_posteriors(media_mix_model=

Thank you very much Jonathan!

I am facing the same error while using this code on Google Colab:
plot.plot_media_channel_posteriors(media_mix_model=mmm,
channel_names=media_cols)
Getting the below error:
**AttributeError                            Traceback (most recent call last)
 in <cell line: 2>()
1 # posterior distributions of the media effects.
----> 2 plot.plot_media_channel_posteriors(media_mix_model=mmm,
3                                    channel_names=media_cols)
AttributeError: 'Figure' object has no attribute 'plot_media_channel_posteriors'**
I have already tried this as well but no resolve:
!pip uninstall -y matplotlib
!pip install matplotlib==3.1.3
This command: !pip install --upgrade git+https://github.com/google/lightweight_mmm.git
is by default installing matplotlib 3.6.1 and giving below error:
\ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
bigframes 1.0.0 requires matplotlib>=3.7.1, but you have matplotlib 3.6.1 which is incompatible.
Successfully installed matplotlib-3.6.1
WARNING: The following packages were previously imported in this runtime:
[matplotlib,mpl_toolkits]
You must restart the runtime in order to use newly installed versions.
So again did this:
!python -m pip uninstall matplotlib
!pip install matplotlib==3.7.1 and again used this code: plot.plot_media_channel_posteriors(media_mix_model=mmm,
channel_names=media_cols) and got the same error below:
**AttributeError                            Traceback (most recent call last)
 in <cell line: 2>()
1 # posterior distributions of the media effects.
----> 2 plot.plot_media_channel_posteriors(media_mix_model=mmm,
3                                    channel_names=media_cols)
AttributeError: 'Figure' object has no attribute 'plot_media_channel_posteriors'**
Only thing different I have done is I have used: from prophet import Prophet in order to decompose weekly sales with ds and holidys data and added trend, season, holiday under extra features in control variables. Rest I am following steps under: https://github.com/google/lightweight_mmm#introduction
Please let me know if anyone able to resolve this.

I am facing the same issue with the following error message:
"TypingError                               Traceback (most recent call last)
Cell In[20], line 3
1 import os
2 os.environ["ARVIZ_NO_NUMBA"] = "True"
----> 3 plot.plot_media_channel_posteriors(media_mix_model=mmm)
File ~\anaconda3\Lib\site-packages\lightweight_mmm\plot.py:817, in plot_media_channel_posteriors(media_mix_model, channel_names, quantiles, fig_size)
815     geo_axis.set_xlabel(axis_label)
816 else:
--> 817   channel_axis = arviz.plot_kde(
818       media_channel_posteriors[:, channel_i],
819       quantiles=quantiles,
820       ax=channel_axis)
821   axis_label = f"media channel {channel_names[channel_i]}"
822   channel_axis.set_xlabel(axis_label)
File ~\anaconda3\Lib\site-packages\arviz\plots\kdeplot.py:262, in plot_kde(values, values2, cumulative, rug, label, bw, adaptive, quantiles, rotated, contour, hdi_probs, fill_last, figsize, textsize, plot_kwargs, fill_kwargs, rug_kwargs, contour_kwargs, contourf_kwargs, pcolormesh_kwargs, is_circular, ax, legend, backend, backend_kwargs, show, return_glyph, **kwargs)
259 if bw == "default":
260     bw = "taylor" if is_circular else "experimental"
--> 262 grid, density = kde(values, is_circular, bw=bw, adaptive=adaptive, cumulative=cumulative)
263 lower, upper = grid[0], grid[-1]
265 density_q = density if cumulative else density.cumsum() / density.sum()
File ~\anaconda3\Lib\site-packages\arviz\stats\density_utils.py:498, in kde(x, circular, **kwargs)
495 else:
496     kde_fun = _kde_linear
--> 498 return kde_fun(x, **kwargs)
File ~\anaconda3\Lib\site-packages\arviz\stats\density_utils.py:581, in _kde_linear(x, bw, adaptive, extend, bound_correction, extend_fct, bw_fct, bw_return, custom_lims, cumulative, grid_len, **kwargs)
577 # Determine grid
578 grid_min, grid_max, grid_len = _get_grid(
579     x_min, x_max, x_std, extend_fct, grid_len, custom_lims, extend, bound_correction
580 )
--> 581 grid_counts, _, grid_edges = histogram(x, grid_len, (grid_min, grid_max))
583 # Bandwidth estimation
584 bw = bw_fct * _get_bw(x, bw, grid_counts, x_std, x_range)
File ~\anaconda3\Lib\site-packages\arviz\utils.py:201, in maybe_numba_fn.call(self, *args, **kwargs)
199 """Call the jitted function or normal, depending on flag."""
200 if Numba.numba_flag:
--> 201     return self.numba_fn(*args, **kwargs)
202 else:
203     return self.function(*args, **kwargs)
File ~\anaconda3\Lib\site-packages\numba\core\dispatcher.py:468, in _DispatcherBase._compile_for_args(self, *args, **kws)
464         msg = (f"{str(e).rstrip()} \n\nThis error may have been caused "
465                f"by the following argument(s):\n{args_str}\n")
466         e.patch_message(msg)
--> 468     error_rewrite(e, 'typing')
469 except errors.UnsupportedError as e:
470     # Something unsupported is present in the user code, add help info
471     error_rewrite(e, 'unsupported_error')
File ~\anaconda3\Lib\site-packages\numba\core\dispatcher.py:409, in _DispatcherBase._compile_for_args..error_rewrite(e, issue_type)
407     raise e
408 else:
--> 409     raise e.with_traceback(None)
TypingError: Failed in nopython mode pipeline (step: nopython frontend)
No implementation of function Function(<function histogram at 0x000001885F3402C0>) found for signature:

histogram(readonly buffer(float32, 1d, C), bins=int64, range=UniTuple(readonly buffer(float32, 0d, C) x 2))

There are 2 candidate implementations:

Of which 2 did not match due to:
Overload in function 'np_histogram': File: numba\np\arraymath.py: Line 3907.
With argument(s): '(readonly buffer(float32, 1d, C), bins=int64, range=UniTuple(readonly buffer(float32, 0d, C) x 2))':
Rejected as the implementation raised a specific error:
TypingError: Failed in nopython mode pipeline (step: nopython frontend)
No implementation of function Function(<function linspace at 0x000001885F25D080>) found for signature:

linspace(readonly buffer(float32, 0d, C), readonly buffer(float32, 0d, C), int64)

There are 2 candidate implementations:
- Of which 2 did not match due to:
Overload of function 'linspace': File: numba\np\arrayobj.py: Line 4817.
With argument(s): '(readonly buffer(float32, 0d, C), readonly buffer(float32, 0d, C), int64)':
No match.
During: resolving callee type: Function(<function linspace at 0x000001885F25D080>)
During: typing of call at C:\Users\Sirin\anaconda3\Lib\site-packages\numba\np\arraymath.py (3948)
File "..........\anaconda3\Lib\site-packages\numba\np\arraymath.py", line 3948:
def histogram_impl(a, bins=10, range=None):

               bins_array = np.linspace(bin_min, bin_max, bins + 1)
               ^

raised from C:\Users\Sirin\anaconda3\Lib\site-packages\numba\core\typeinfer.py:1091
During: resolving callee type: Function(<function histogram at 0x000001885F3402C0>)
During: typing of call at C:\Users\Sirin\anaconda3\Lib\site-packages\arviz\stats\density_utils.py (979)
File "..........\anaconda3\Lib\site-packages\arviz\stats\density_utils.py", line 979:
def histogram(data, bins, range_hist=None):

"""
hist, bin_edges = np.histogram(data, bins=bins, range=range_hist)
^"

I am facing the same issue. Can anyone give a simple explanation with the code on how they bypass this problem?


TypeScript Bindings / Types

I hate being that guy to ask, because it's been done to me. But the project I'm working on is TypeScript based, and I was curious if there are any plans to add TypeScript bindings (exported types) to the project.

Seconding this

new smlete-check 1.0.2:
Hint: Could not find a declaration file for module 'smelte/src/components/TextField'. '../node_modules/smelte/src/components/TextField/index.js' implicitly has an 'any' type.
  Try `npm install @types/smelte` if it exists or add a new declaration (.d.ts) file containing `declare module 'smelte/src/components/TextField';` (js)


Filetype condition support

I'm trying to switch over to Pckr from Packer and from what I can tell, it looks like filetype conditions are not currently supported. Is that right? In the example in the readme, it's mentioned but not shown:
 -- Load on a combination of conditions: specific filetypes or commands
  -- Also run code after load (see the "config" key)
  { 'w0rp/ale',
    cond = cmd('ALEEnable'),
    config = function()
      vim.cmd[[ALEEnable]]
    end
  };

i.e.

specific filetypes or commands

I'm guessing this is leftover from the Packer fork. Is filetype support planned? Or does it exist and I'm just not seeing it? I don't see any code in /lua/pckr/loader that looks related but I'm not familiar with this codebase.
Thanks!

Fair enough - I can do without it. Thanks for the reply!

@lewis6991 I'm still using packer, but I think I will do something like this about filetype loader, as I've found it useful for filetype specific plugins (nvim-jdtls, flutter-tools, nvim-metals, ...). Would you mind explaining what might go wrong with the following approach?
cond = function(load)
    vim.api.nvim_creata_autocmd("FileType", {
        pattern = { "sbt", "scala" },
        group = vim.api.nvim_create_augroup("pckr/loader", { clear = false }),
        callback = function(e)
            load()
            vim.api.nvim_exec_autocmds("FileType", { pattern = vim.bo[e.buf].filetype })
        end,
        once = true,
    })
end

I use nvim-metals and I unconditionally load it since it doesn't contain a plugin/ dir. Then in my config block I have:
local function setup()
  local metals = require'metals'

  metals.initialize_or_attach(vim.tbl_deep_extend('force', metals.bare_config(), {
    ...
  }))
end

vim.api.nvim_create_autocmd('FileType', {
  pattern = {'scala', 'sbt'},
  callback = setup
})

This avoids having to re-invoke FileType which could cause issues.
To re-iterate, if a plugin does not contain a plugin/ dir or has a small amount of code in plugin/, there is little need to lazy load.


bot.chat.postMessage will fail if message is longer than 3001 characters

If #18 is merged, it adds support for the "Anything else?" field. If a user really types a lot in that field and causes the total character count of the message passed to bot.chat.postMessage to go over 3001 characters, the API call will fail.
If we want to be safe, we should check character count of the entire message before making that call. If the char count is > 3001, we can substitute the anythingElse block content with "See Airtable for further notes from the requester", or something along those lines.

From Slack's Docs:

For best results, limit the number of characters in the text field to 4,000 characters. Ideally, messages should be short and human-readable. Slack will truncate messages containing more than 40,000 characters.

If you need to post longer messages, please consider uploading a snippet instead.

Interesting! Doesn’t seem to jibe with the reproducible error message their API was throwing at me last night.
To reproduce, you can just throw 4-5 paragraphs of Lorem ipsum in the “Anything else” field.
Perhaps it’s a limitation from the Slack node module?
Shouldn’t be too hard to dig into. Just need to make the time if we feel like this is a likely scenario a user could hit.

Yeah node module might be different. Slack recommends truncating the message on our end well before that character limit. Or we could split it up into different messages.


Press into manylinux wheels

Pressed binary Linux wheels cannot be directly uploaded to PyPI, as outlined here. Binary Linux wheels must follow the manylinux tagging scheme in order to allow upload to PyPI.
If you press a conda package into a wheel now and try uploading it to PyPI right away, you will receive something like:
Binary wheel '<your_wheel_name>-linux_x86_64.whl' has an unsupported platform tag 'linux_x86_64'.
I chose the pythonocc-core package for example.
Do conda packages have the necessary metadata for us to make a 1-to-1 mapping to a manylinux tag?
If not, what would be the effort to make that mapping? There aren't many manylinux tags to choose from, so maybe that's an easy thing to do.

This might be done using auditwheel, however, the pressed wheels might be read as too-recent versioned symbols and won't repair.


Removing panic on error within Resource Group deletion for e2e pipelines

Which issue this PR addresses:
Fixes https://msazure.visualstudio.com/AzureRedHatOpenShift/_workitems/edit/9705804/
What this PR does / why we need it:
Removing panic on error within Resource Group deletion for e2e pipelines. The panic causes e2e tests to fail and exit prematurely with internal server error. The internal server error will now log error instead.
Test plan for issue:
Testing will be done using the e2e pipeline and waiting for an internal server error within Resource Group deletion. More than one e2e test might be required to observe the condition and successful outcome.
Is there any documentation that needs to be updated for this PR?
  We know it isn't 100% successful in all cases and it's causing a lot of flakes.  The functional output of this work is to remove the failures on teardown.  If we are testing delete then we need to move it out of teardown and put proper checks around it.

Proposing a staged approach going forward. Resolving the e2e failures with logging the error and removing the panic within this PR to fulfil

The functional output of this work is to remove the failures on teardown.
Creating a new user story to investigate root cause and develop an appropriate solution. This could be retry logic, and/or breaking out setup and delete of cluster into separate e2e jobs, and even possibility adding the panic back in. TBD.

/azp run e2e

Proposing a staged approach going forward. Resolving the e2e failures with logging the error and removing the panic within this PR to fulfil

The functional output of this work is to remove the failures on teardown.

Creating a new user story to investigate root cause and develop an appropriate solution. This could be retry logic, and/or breaking out setup and delete of cluster into separate e2e jobs, and even possibility adding the panic back in. TBD.

I would disagree. This would basically mask the failure with error message. Which in reality nobody reads and it will get swamped with other priorities.
I think we need to add additional data here and leave the panic to get attention to this.
Examples could be:
If failed, check current state of RG and log out. We might see that this is just timeout issue and azure is having bad day deleting the RG.
In addition as Jim suggests bump timeouts of the client for deletion.
Overall I would like us to avoid masking errors or issues just for sake of implementing story.

This PR is being superseded by other bodies of work, closing PR.


Use Travis Build Containers

Some of the scalacheck tests fail with code 137, which usually indicates they're running up against Travis' resource limits. The [new Travis infrastructure] (http://docs.travis-ci.com/user/migrating-from-legacy/?utm_source=legacy-notice&utm_medium=banner&utm_campaign=legacy-upgrade) provides "...2 dedicated cores and 4GB of memory, vs 1.5 cores and 3GB...", which should alleviate the issue.

Great stuff! Thank you!


FIX-#2987: Remove stuff related to internal Series object

Signed-off-by: Igoshev, Yaroslav<EMAIL_ADDRESS>
What do these changes do?


In instances where _bptIn is empty, exit

Description
Please include a summary of the change and if relevant which issue is fixed. Please also include relevant motivation and context.
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Dependency changes
[ ] Code refactor / cleanup
[ ] Documentation or wording changes
[ ] Other

How should this be tested?
Please provide instructions so we can test. Please also list any relevant details for your test configuration.

[ ] Test A
[ ] Test B

Visual context
Please provide any relevant visual context for UI changes or additions. This could be static screenshots or a loom screencast.
Checklist:

[ ] I have performed a self-review of my own code
[ ] I have requested at least 1 review (If the PR is significant enough, use best judgement here)
[ ] I have commented my code where relevant, particularly in hard-to-understand areas
[ ] If package-lock.json has changes, it was intentional.
[ ] The base of this PR is master if hotfix, develop if not

It doesn't seem like it's possible for _bptIn to be an empty string if hasBptIn is 0, as they are checking the same underlying value when isSingleAssetExit is false. Gareth has implemented another fix for this issue here: #3752 so closing in favor of that.


[JENKINS-34764] Fix PCT against 2.x baseline

[x] Fix PCT against 2.x baseline
[x] Bump parent pom to 2.9

@reviewbybees esp. @svanoort

This pull request originates from a CloudBees employee. At CloudBees, we require that all pull requests be reviewed by other CloudBees employees before we seek to have the change accepted. If you want to learn more about our process please see this explanation.

:bee:

@reviewbybees done

This pull request has completed our internal processes and we now respectfully request the maintainers of this repository to consider our proposal contained within this pull request for merging.


Cumulative value with dense=True over partition is incorrect

Steps to reproduce
I created 2 cumulative values that are partitioned by Month and Year respectively.

If I set dense = True, the cumulative values becomes incorrect:

I have the Sales date hierarchy which I used for the partitioning and I have the Year hierarchy which is created during cube creation.
With dense=True, the filter on the Year hierarchy doesn't work correctly.

Source: car-commission.zip
Environment

atoti: 0.6.3
Python: 3.8.12
Operating System: win32

Hi Huifang,
I took a look at this issue.
Internally, setting dense=True means that we take the queried location and expand on all the levels above and equal to the specified one.
So here, we expand on the levels ALL, Year, Month, Date of the sales date hierarchy.
Thus, when filtering on the single level hierarchy Year, we are not filtering on the cumulative scope, but on another hierarchy.
The locations can resemble something like "AllMember, AllMember\2016, AllMember\2007\Jan\01" etc... with all the elements from 2007 up to 2017.
Now this becomes more of a design issue in my opinion.
When you create a date hierarchy, we do not destroy the previous single hierarchies that were created on the Year, Month, Day fields of the Sales table.
But the issue is that in an OLAP system, the hierarchies are supposed to be completely orthogonal, without relations between them.
Here there is a real correlation between the Year level of the Year hierarchy, and the Year level of the Sales Date hierarchy: they are even based on the same store fields, and both represent the dates of the sales.
I believe, by watching the GIF, that you already figured out you can have a correctly working filter, even on the dense version, by filtering on sales date.
I'll come back to you after we have discussed the issue internally.
Cheers,
Acriss


problem in openload download

i change openload.py and make youtube-dl but this erorr :
youtube-dl -v https://openload.co/embed/j4TxUXWqVZc/xcite-king.james
Traceback (most recent call last):
File "/usr/lib64/python2.6/runpy.py", line 122, in _run_module_as_main
"main", fname, loader, pkg_name)
File "/usr/lib64/python2.6/runpy.py", line 34, in _run_code
exec code in run_globals
File "/usr/local/bin/youtube-dl/main.py", line 16, in
File "/usr/local/bin/youtube-dl/youtube_dl/init.py", line 43, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/init.py", line 9, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/extractors.py", line 54, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/ard.py", line 7, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/generic.py", line 85, in
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/openload.py", line 107
SyntaxError: 'return' outside function
why?

Offtopic.


Improve sample values output: Block-oriented comments

Is your feature request related to a problem? Please describe.
We currently have a sample values generator from #857 that comments out things that are not required for the user:
features:
  eirini:
    enabled: false
  # ingress:
    # enabled: false
    # tls:
      # crt: ~
      # key: ~
    # annotations: {}
    # labels: {}

Describe the solution you'd like
It would be nice if the comment characters (#) were lined up in one column so that on column-editing-capable editors they can be uncommented easily.  Something like:
features:
  eirini:
    enabled: false
  # ingress:
  #   enabled: false
  #   tls:
  #     crt: ~
  #     key: ~
  #   annotations: {}
  #   labels: {}

Describe alternatives you've considered
The easy path would be to just make all the #s be on the first column; that doesn't look as nice though (especially if there's a single deeply-nested required value).
We probably want to think about how to deal with actual comments in there too. Do we double-comment? Leave it along (and have jagged comment starts)? Move the comment mark around (and make uncommenting annoying)?
The current behaviour was the easiest to implement quickly.

One problem I see with putting the # char in a lower column is that it becomes more ambiguous if the commented lines are indented by the comments, or if the # just replaced a space, i.e. does
features:
  eirini:
    enabled: false
  # ingress:
  #   enabled: false

mean
features:
  eirini:
    enabled: false
  ingress:
    enabled: false

or
features:
  eirini:
    enabled: false
    ingress:
      enabled: false

Hmm, I guess it is ambiguous whatever you do. 😦 Suggestions welcome!


tree-sitter/update: add swift grammar

Description of changes
add swift grammar to tree-sitter

Things done

Built on platform(s)

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

[x] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

@Profpatsch @oxalica
Hoping you can help with review and merge

src/scanner.c:1:10: fatal error: tree_sitter/parser.h: No such file or directory
    1 | #include <tree_sitter/parser.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
note: keeping build directory '/tmp/nix-build-tree-sitter-swift-grammar-0.20.7.drv-2'
error: builder for '/nix/store/4dzkp9qkinhc519lyyyqdxdycbzyjpi1-tree-sitter-swift-grammar-0.20.7.drv' failed with exit code 1;
       last 10 log lines:
       > unpacking source archive /nix/store/ivv3z2syjlvbf30n7kky7vj2vmdjqgs8-tree-sitter-swift-3cd052d
       > source root is tree-sitter-swift-3cd052d
       > patching sources
       > configuring
       > no configure script, doing nothing
       > building
       > src/scanner.c:1:10: fatal error: tree_sitter/parser.h: No such file or directory
       >     1 | #include <tree_sitter/parser.h>
       >       |          ^~~~~~~~~~~~~~~~~~~~~~
       > compilation terminated.
       For full logs, run 'nix log /nix/store/4dzkp9qkinhc519lyyyqdxdycbzyjpi1-tree-sitter-swift-grammar-0.20.7.drv'.

Add this:
diff --git a/pkgs/development/tools/parsing/tree-sitter/default.nix b/pkgs/development/tools/parsing/tree-sitter/default.nix
index 728100c540b..7a31566e193 100644
--- a/pkgs/development/tools/parsing/tree-sitter/default.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/default.nix
@@ -59,6 +59,7 @@ let
           inherit version;
           source = if grammar ? src then grammar.src else fetchGrammar grammar;
           location = if grammar ? location then grammar.location else null;
+          generate = if grammar ? generate then grammar.generate else false;
         };
       grammars' = import ./grammars { inherit lib; } // extraGrammars;
       grammars = grammars' //
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-swift.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-swift.json
index f06409621d8..7b8868997e7 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-swift.json
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-swift.json
@@ -7,5 +7,6 @@
   "fetchLFS": false,
   "fetchSubmodules": false,
   "deepClone": false,
-  "leaveDotGit": false
+  "leaveDotGit": false,
+  "generate": true
 }

Please rebase your PR to latest master


Transmation failed when running from commandline

I can make a report from oXygen, but failed from command line due to missing the dtd.
See log.txt for detial.
My environments are:

Windows 10
DITA-OT 3.4.1

This is a bug in the Apache ANT xml catalog, the problem is discussed here in more details:
https://github.com/dita-ot/dita-ot/issues/3142
I also created a DITA OT plugin as a patch for the problem:
https://github.com/dita-ot/dita-ot/files/2745305/com.oxygenxml.ant.patches.zip

This is a bug in the Apache ANT xml catalog, the problem is discussed here in more details:
https://github.com/dita-ot/dita-ot/issues/3142
I also created a DITA OT plugin as a patch for the problem:
https://github.com/dita-ot/dita-ot/files/2745305/com.oxygenxml.ant.patches.zip


Include more information about the policy in chef push output

Description
The goal of this change is to surface more information so that it's
easier for users to detect a certain class of mistakes (e.g., run
chef push from the wrong working directory) and to produce a more
useful log of what chef push did when run in a Ci context.
Possible downside is that the extra information may be offputting to
novice users, but that's probably a wash as some novices would likely
appreciate the additional detail about the consequences of the command
they are running.
Old output:
Uploading policy to policy group new_pgroup
< other stuff >

New output:
Uploading policy jenkins (d064016951) to policy group new_pgroup
< other stuff >

Issues Resolved
Inspired by a debugging session in Chef Software internal slack.
Check List

[ ] New functionality includes tests
[ ] All tests pass
[ ] RELEASE_NOTES.md has been updated if required (not required for bugfixes, required for API changes)
[x] All commits have been signed-off for the Developer Certificate of Origin. See https://github.com/chef/chef/blob/master/CONTRIBUTING.md#developer-certification-of-origin-dco

@danielsdeleo Specs are mad

@tas50 derp, did a small reorganization and forgot to re-run. Should be fine now


dependabot.yml: lockfile-only versioning strategy

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[ ] Have you successfully run brew style with your changes locally?
[ ] Have you successfully run brew typecheck with your changes locally?
[ ] Have you successfully run brew tests with your changes locally?

This is documented as being the default but it doesn't seem to be that way. 🤷♂

Review period skipped due to critical label.

I think the settings here just don't work on this repo. Doesn't happen on any other repo.


oc explain shows empty description

Describe the feature request
When using oc explain with custom resources brought by Maistra (e.g. servicemeshcontrolplane) this should report the available schema. Now it reports just .

@rvansa Can you please open a jira for this issue?  https://issues.jboss.org/browse/MAISTRA

Moved to https://issues.jboss.org/browse/MAISTRA-762


Is it possible to throttle the display of tooltip

Is it possible to throttle the display of tooltip for few seconds using some property so that it will be only visible when the cursor is on the control for XXX seconds. If users move out of the control before the throttle time period then the tooltip will not be available.

Check out the delay-related options in the docs.


refactor(issue-367): clean up flask ui for public preview

Issue:  #367
Cleaning up flask frontend for public preview.
Resolves the following views:

create donation form

before

after

create campaign form

before

after

view campaign page

before

after

home page view

before

after

access denied error page

before

after

@ace-n All updated!


Elapsed time is missing for jobs running on remote HPC resources

Example:
ID      NAME                  CREATED               STATUS    ELAPSED      IMAGE                           CMD
22337   lammps-benchmark-lj   2019-06-03T14:28:52   running                alahiff/lammps-openmpi:latest   lmp_mpi -in in.lj.txt

JobStartDate is not defined, but EnteredCurrentStatus can be used instead.
Fixed in https://github.com/prominence-eosc/prominence/commit/b2d7f8b80691239268435d63fe9eaff9b4f0fbde


Fix travis by installing ko

Without this, hack/release.sh fails with:
hack/release.sh: line 10: ko: command not found

See https://travis-ci.org/github/shipwright-io/build/builds/758200833#L5665

I remove @zhangtbj from the reviews because he is OOTO. I´m familiar with the need of this change, so I´m approving.

/lgtm
/approve


It keeps showing "Connecting to server..." with no response.

I have run npm install and npm run setup-auto-gpt,
And npm start has been successful.

However, when I access "ip:7070", it keeps showing "Connecting to server..." with no response.

Why is this happening? What can I do to solve it?

If you're connecting to it from a different system from which you're running it on, edit the .env file in apps/frontend and put the ip/domain of the server there


Clementine requires unfree libspotify to build

Issue description
Clementine requires unfree libspotify to build.
Steps to reproduce
$ nix-shell -p clementine --show-trace
error: while evaluating the attribute 'buildInputs' of the derivation 'shell' at /etc/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:148:11:
while evaluating the attribute 'blob' of the derivation 'clementine-1.3.1' at /etc/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:148:11:
while evaluating the attribute 'buildInputs' of the derivation 'clementine-blob-1.3.1' at /etc/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:148:11:
while evaluating the attribute 'handled' at /etc/nixpkgs/pkgs/stdenv/generic/check-meta.nix:204:7:
while evaluating 'handleEvalIssue' at /etc/nixpkgs/pkgs/stdenv/generic/check-meta.nix:124:28, called from /etc/nixpkgs/pkgs/stdenv/generic/check-meta.nix:205:14:
Package ‘libspotify-12.1.51’ in /etc/nixpkgs/pkgs/development/libraries/libspotify/default.nix:84 has an unfree license (‘unfree’), refusing to evaluate.

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

Technical details
Please run nix-shell -p nix-info --run "nix-info -m" and paste the
results.
$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 4.14.29, NixOS, 18.09.git.7f291f8 (Jellyfish)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.0`
 - nixpkgs: `/etc/nixpkgs`

Nix disallows the installation of unfree packages by default. As explained in the error message you have to explicitly allow Nix to install unfree software.

@Ma27 Yes, I understood that. I meant to say that perhaps Clementine shouldn't require such unfree packages by default. And as far as I understand, the packaging of Clementine tries to achieve that but there's something wrong because it doesn't work.

you're right. I can have a look at the internals of Clementine, but it
should be possible to use some sort of feature flag to optionally enable
using libspotify %)
On Mon, Apr 2, 2018 at 1:14 PM, Jaakko Luttinen<EMAIL_ADDRESS>wrote:

@Ma27 https://github.com/Ma27 Yes, I understood that. I meant to say
that perhaps Clementine shouldn't require such unfree packages by default.
And as far as I understand, the packaging of Clementine tries to achieve
that but there's something wrong because it doesn't work.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/issues/38315#issuecomment-377909259,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFvwBFSLGOLiiuqDCgCG6lmBitBmlb0dks5tkggrgaJpZM4TDJph
.

I think we can even set it to only enable spotify when "config.allowUnfree" is true.

I just tried to fix this issue with the following patch:
diff --git a/pkgs/applications/audio/clementine/default.nix b/pkgs/applications/audio/clementine/default.nix
index 92a33035c82..fdc1c042217 100644
--- a/pkgs/applications/audio/clementine/default.nix
+++ b/pkgs/applications/audio/clementine/default.nix
@@ -1,7 +1,8 @@
 { stdenv, fetchurl, fetchpatch, boost, cmake, chromaprint, gettext, gst_all_1, liblastfm
 , qt4, taglib, fftw, glew, qjson, sqlite, libgpod, libplist, usbmuxd, libmtp
 , libpulseaudio, gvfs, libcdio, libechonest, libspotify, pcre, projectm, protobuf
-, qca2, pkgconfig, sparsehash, config, makeWrapper, runCommand, gst_plugins }:
+, qca2, pkgconfig, sparsehash, config, makeWrapper, runCommand, gst_plugins
+}:

 let
   withSpotify = config.clementine.spotify or false;
@@ -95,7 +96,7 @@ let
       ./clementine-spotify-blob.patch
     ];

-    buildInputs = buildInputs ++ [ libspotify ];
+    buildInputs = buildInputs ++ stdenv.lib.optional (config.allowUnfree or false) libspotify;
     # Only build and install the Spotify blob
     preBuild = ''
       cd ext/clementine-spotifyblob

However this breaks the build with the following message:
Either crypto++ must be available or the non-GPL Spotify code must be available

I'm not sure about librespot as alternative as it seems to be unmaintained as well (https://github.com/plietar/librespot#unmaintained). Furthermore I'm not sure if it might cause legal issues for us if we distribute packages including such libraries (https://github.com/plietar/librespot#disclaimer)
I can have a deeper look at it tonight, but I could image two solutions:

patch the source of the affected build accordingly to make sure no libspotifyis needed anymore or make it truly optional
explicitly mark clementine as unfree and use clementineFree as new default

just submitted a patch which uses the free build yb default:)


Editor crashes, when saving a project.

When I press the save button, the map WILL save the changes but will crash the editor right after.
The map is inside the maps folder and it's name or folders do not contain dots.
Crashlog below.
Sun Jul 05 03:32:53 2020
Application has crashed: C++ exception
mods/BeardLib-Editor/Classes/ProjectManager.lua:241: attempt to index local 'mod' (a nil value)
SCRIPT STACK
save_main_xml() @mods/BeardLib-Editor/Classes/ProjectManager.lua:117
save_main_xml() @mods/BeardLib-Editor/Classes/Map/InEditorOptions.lua:341
@mods/BeardLib-Editor/Classes/Map/InEditorOptions.lua:291

Callstack:
     payday2_win32_release  (???)     ???
     payday2_win32_release  (???)     ???
     payday2_win32_release  (???)     ???
     payday2_win32_release  (???)     zip_get_name
                     ntdll  (???)     RtlDosSearchPath_Ustr
                     ntdll  (???)     RtlFreeHeap
                     ntdll  (???)     RtlSetLastWin32Error
                KERNELBASE  (???)     CreateFileW
                KERNELBASE  (???)     CreateFileW
                     ntdll  (???)     ZwQueryVirtualMemory
                KERNELBASE  (???)     VirtualQueryEx
                KERNELBASE  (???)          NvOptimusEnablement
                       ???  (???)     ???
                       ???  (???)     ???
                       ???  (???)     ???
                       ???  (???)     ???

Current thread: Main

System information:
Application version : 1.95.896
CPU : AMD Ryzen 5 3600X 6-Core Processor (6 cores); SSE; SSE2; SSE3; SSSE3; SSE4.1
DirectX : 12.0
GPU : NVIDIA GeForce GTX 1060 6GB / nvldumd.dll[<IP_ADDRESS>14]
Language : english
Memory :     16337MB 968KB
OS : 6.2.9200 () 0x300-0x1 (64 bits)
Physics : threaded
Renderer : DX9 threaded
Sound : Microsoft (Headphones (High Definition Audio Device))

Make sure that the map is opened in Maps folder and has no special characters like a period

Also make sure that the project name is the same as the folder name in the maps folder


Merge relational database modeling into general modeling

As discussed offline, we should consider removing the separate "relational database modeling" subsection and merge its contents into general modeling. 99% of EF Core users are relational (so information is split across two places), and the split between relational and non-relational isn't very meaningful or interesting to the vast majority of users.
Where we think it's really important to highlight that something is relational, we can call it out.

Related: https://github.com/aspnet/EntityFramework.Docs/issues/862

PRs are out merging all relational model building pages into non-relational.


keep the on-line docs for 0.5.x after 1.0 release

Background
We want to keep 0.5.x docs as we plan significant overhaul for 1.0. In particular the way to sync files, databases and rest apis will be documented differently.
Requirements

[ ] allow to build and deploy docs for a particular git tag

[ ] disable the search and dhelp (alternatively we could probably force algolia to index our tag)

[ ] link to it from new 1.0 docs

One option is to do it similar to Docusaurus archived versions:
https://github.com/facebook/docusaurus/blob/473d1442b82f536749f3206bf7a628544c05ebf6/website/docusaurus.config.ts#L664-L669


We need to downgrade again to Flutter 3.0

Hi everyone,
For a few days, people have been complaining about scanning issues.
After digging a little bit in the issue, the problem is only reproducible in release mode.
And following my researches, there is an issue on Flutter 3.3 (or Dart 2.19) with isolates.
When we start the isolate, we now have this error:
Abort message: '../../third_party/dart/runtime/vm/message_snapshot.cc: 576: error: expected: !lib.IsNull()'
I will open an issue on Flutter to see what we can do.
But since we want to be able to release an app, the easiest fix is to downgrade again to 3.0.
I will open a PR in that goal, the time the find a real fix…
Clearly the quality of this release is really really low

@g123k Fun fact: yesterday I upgraded to the latest macos and now I cannot play youtube videos... Not the good season for upgrades, obviously.
Regarding Smoothie, from what I've tried this morning:

flutter downgrade goes down to 3.0.5, which is fine
then run flutter doctor
in the pubspec.yamls, put that instead:

environment:
  sdk: ">=2.17.0 <3.0.0"
  flutter: ">=3.0.5"

in smooth_app/pubpsec.yaml: flutter_map: 2.2.0, typed_data: 1.3.0
a few files to fix

@g123k I'm ready for a PR - if you've already started one we can use yours or mine.
That said, next time we think about upgrading a version, we should ask ourselves - "Do we need it?".

We downgraded 👍🏼


Access log specifier %DOWNSTREAM_DIRECT_REMOTE_ADDRESS% does not work as documented with proxy-protocol

Description:
Access log specifier %DOWNSTREAM_DIRECT_REMOTE_ADDRESS% is documented as This is always the physical remote address of the peer even if the downstream remote address has been inferred from proxy proto or x-forwarded-for.
Repro steps:
Run against attached config:
printf "PROXY TCP4 <IP_ADDRESS> <IP_ADDRESS> 12345 23456\r\nGET / HTTP/1.1\r\nHost: foo.com\r\n\r\n" | nc -q 1 localhost 8080
Config:
  listeners:
  - address:
      socket_address:
        address: <IP_ADDRESS>
        port_value: 8080
    listener_filters:
      - name: 'envoy.filters.listener.proxy_protocol'
    filter_chains:
    - filters:
      - name: envoy.http_connection_manager
        config:
          codec_type: auto
          stat_prefix: ingress_http
          access_log:
          - name: envoy.file_access_log
            config:
              path: "http_access.log"
              format: "[%START_TIME%] direct=%DOWNSTREAM_DIRECT_REMOTE_ADDRESS% regular=%DOWNSTREAM_REMOTE_ADDRESS%\n"
          route_config:
            name: local_route
            virtual_hosts:
            - name: service
              domains:
              - "*"
              routes:
              - match:
                  prefix: "/"
                direct_response:
                  status: 200
                  body:
                    inline_string: "All is well.\n"
          http_filters:
          - name: envoy.router
  clusters:
admin:
  access_log_path: "/dev/null"
  address:
    socket_address:
      address: <IP_ADDRESS>
      port_value: 8081

node:
  id: the_id
  cluster: the_cluster

Logs:
[2020-03-11T02:24:02.644Z] direct=<IP_ADDRESS>:12345 regular=<IP_ADDRESS>:12345
Related history:
#4996
#5064
#8278

I see two possibles fixes:

Adjust the docs to match current behavior
Fix the proxy-protocol handling to set the direct remote adddress correctly

I prefer option 2.
cc @lizan

(2) sounds appropriate to me.

(2) SGTM


Added words to Geeksay.js

Added words to Geeksay.js.

Thanks @Shubham0812! 👍

Happy to help :) .


Unicode to ANSI converter

Hello there! I am working on an application in Unity, where I need to add Bangla text. The data is stored in Firebase, which I want to convert to ANSI to show with the ANSI fonts in Unity, as Unity still does not support writing in Unicode for Bangla language. I checked your code, you have made an excellent converter! Did you work on the reverse conversion for Unicode to ANSI? If you have, it would be very helpful for me.

@TasmiaZerin1128 Sorry for the extremely late reply. We haven't worked with with ANSI to Unicode conversion. If you look at the codebase, there are character mappings which can be reversed to get your intended use case.

Seems like you have already implemented it in C#. Kudos to you!


No pytorch.bin is generated after training is done

I have rerun the whole training pipeline for the vicuna 7b model.
The training ended successfully. However, there is no pytorch.bin is generated. May I know why?
The following folders and files are what I get.
Folders:
state_0  state_10  state_12  state_15  state_17  state_2   state_3  state_6  state_8
state_1  state_11  state_13  state_16  state_18  state_20  state_5  state_7

Files:
config.json  model_1.safetensors  model.safetensors  optimizer.bin  random_states_0.pkl  scheduler.bin

The specific filename depends on the code you used to save the weights. Based on your screenshot, it seems that the EAGLE weights were saved as model.safetensors. You could try loading the weights from model.safetensors.

Thank you very much. Loading from safetensors work. However, I need to modify the scripts.


Cursor don't update after autojump

I have illuminate.nvim and it will highlight cursorword, but leap's autojump seems not trigger their detect of new cursorpos, only after I type the third char. Is it probably a fake cursor during autojump?
https://github.com/ggandor/leap.nvim/assets/97848247/458d575e-7564-439a-8119-3137bfe58670

nightly

Does this snippet fix the issue?
vim.api.nvim_create_augroup('LeapIlluminate', {})
vim.api.nvim_create_autocmd('User', {
  pattern = 'LeapPatternPost',
  callback = function ()
    vim.api.nvim_exec_autocmds('CursorMoved', {
      group = 'vim_illuminate_v2_augroup'
    })
  end,
  group = 'LeapIlluminate',
})

Is it probably a fake cursor during autojump?

No, on nightly it's the real one.

You might ask this in the illuminate repo too.

Hi, if I use this function
vim.api.nvim_create_augroup("LeapIlluminate", {})
vim.api.nvim_create_autocmd("User", {
    pattern = "LeapPatternPost",
    callback = function()
        local winid = vim.api.nvim_get_current_win()
        local cursor = vim.api.nvim_win_get_cursor(winid)
        -- __AUTO_GENERATED_PRINT_VAR_START__
        print([==[function cursor:]==], vim.inspect(cursor)) -- __AUTO_GENERATED_PRINT_VAR_END__
        require("illuminate.engine").refresh_references(_, _, "hi")
    end,
    group = "LeapIlluminate",
})

the cursor pos is not updated when autojump, so illuminate can't update too

Sorry, try LeapSelectPre as the pattern (PatterPost is before the jump).

If I add a redraw command under https://github.com/RRethy/vim-illuminate/blob/305bf07b919ac526deb5193280379e2f8b599926/lua/illuminate/highlight.lua#L51
it works

Had the same problem too, but I didn't have vim-illuminate installed. Bisecting shows that 74b2ed7 introduces this bug

The reason is that the fix required has been reverted on https://github.com/neovim/neovim/pull/28235
and now that nvim__redraw has been merged on nightly though it's experimental (https://github.com/neovim/neovim/pull/28101), calling nvim__redraw on LeapSelectPre should work.

Any updates on this one? I also have this problem.
I cannot use the default mappings as they conflict with gbprod/substitute.nvim
Remapping the keys with
keymap.set({ "n", "x", "o" }, "f", "<Plug>(leap-forward)")
keymap.set({ "n", "x", "o" }, "F", "<Plug>(leap-backward)")
keymap.set({ "n", "x", "o" }, "gf", "<Plug>(leap-from-window)")

results in the aforementioned issue.
This happens both on v10 and nightly.

@einCyberSimon I cannot reproduce, both 0.10 stable and nightly 0.11 should work. (Fixed by f1f19fc, it has nothing to do with the mappings.)

Hm, there seems to be another problem, as jumping does not work at all anymore (also with require("leap").create_default_mappings(), even with resetting my config and reinstalling nvim.
My config currently looks like this (using lazy.nvim)
return {
    "ggandor/leap.nvim",
    dependencies = { "tpope/vim-repeat" },
    config = function()
        require("leap").create_default_mappings()
    end,
}

After pressing s, than some character (for instance c) and a second character (e.g., l), it says not found: cl

@einCyberSimon If the problem persists, please open a separate issue.


Use the new compiler in Vite plugin

Fixes https://github.com/vanilla-extract-css/vanilla-extract/issues/1211
This PR adds a config option to use the new compiler powered by vite-node, introduced by @markdalgleish in https://github.com/vanilla-extract-css/vanilla-extract/pull/1030.
I've provided more details in each changeset.
You can run a fixture against the new compiler like this:
pnpm build
pnpm start --type=vite-next
# or a specific fixture
pnpm start-fixture features --type=vite-next
# with debug timings
DEBUG=vanilla-extract nr start-fixture --type=vite --mode=development features
DEBUG=vanilla-extract nr start-fixture --type=vite-next --mode=development features

I've also tested a snapshot with Remix using the unstable Vite plugin.
Ran some stats on a fresh app created with sku init, with Braid and Remix. The results are below:
{
  "minimum compilation time (in ms)": {
    "current": 59,
    "compiler": 386
  },
  "maximum compilation time (in ms)": {
    "current": 6794,
    "compiler": 1422
  },
  "median": {
    "current": 2071,
    "compiler": 1160,
    "comparison": "55.96% of current"
  },
  "average": {
    "current": 2333,
    "compiler": 548,
    "comparison": "23.48% of current"
  }
}

So yeah, the new compiler is 4-5x faster (on average) than the current Vite plugin.

TODO:

[ ] update site

All credit to @markdalgleish on this one. I just made a few small adjustments to already working code.


Crash report

http://pastebin.com/RKd5L3b2
5 crash-reports in a day.

Oh dear, looks like my attempt at synchronizing the maps didn't work. I'll try again.

Was actually a different map crashing, my synchronization holds. Try build 162, I've made the relevant maps concurrent which will hopefully sidestep this issue altogether.

Make that 163 actually

Sweet, closing for now


Changing for CORTX

I'm leaving master as edits that worked with CORTX. Now that my lab with CORTX has been shutdown (SEAGATE CORTX hackathon ended :( unfortunately), I'm switching this project to store files saved on discord rather than on CORTX.


Install Rally in PEP 517 mode

Simply having a pyproject.toml file with a build-system entry as done in https://github.com/elastic/rally/pull/1548 means that --no-use-pep517 is going to fail. This pull request integrates the relevant part of https://github.com/elastic/rally/pull/1551 to stop doing that.
We need to merge this before the nightly benchmarks run.

LGTM. Good to see that we don't rely on setuptools anymore.

We still rely on setuptools right now, but it's installed by pip itself and encoded in a single place (pyproject.toml).

We still rely on setuptools right now, but it's installed by pip itself and encoded in a single place (pyproject.toml).

Ah yes thanks for the clarification, I forgot the previous PR https://github.com/elastic/rally/pull/1548/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711R2


Inference on a video file

Hi,
If in case, anyone of you are planning to perform just the inference without the target annotation on a video, then do visit the repository: https://github.com/pratikk-bulani/3DC-Seg-Inference
Thanks

https://github.com/pratikk-bulani/3DC-Seg-Inference


Logic code in protractor - if statement

Hi All,
I have a problem with if statement. I have a function as below:
Lib.prototype.selectStorageTarget = function (arg1, callback) {
        var found = false;
        var leftMenu;
        element.all(by.repeater("menu in menus")).then(function(itemList) {
            itemList.forEach(function(item) {
                leftMenu = item.element(by.css('[class="ng-binding"]'));
                leftMenu.getText().then(function(clickedMenu) {
                    if (clickedMenu == arg1)
                    {
                        found = true;
                        leftMenu.click();
                        return callback();
                    }
                });
            });
        }).then(function() {
            if (!found) {
                return callback(new Error(arg1 + ' is not found'));
            }
        });
    };

and cucumber syntax: When I want to select "Storage Target", which is the one part of menu on my page. Result receiving from protractor when i execute is attached in

If i change content of if statement to if (found == "false"), result will be successful.

but it is problem when i change cucumber syntax to: When I want to select "Example", which does not exist on my page, result will be

Please help me solve this problem, thank you very much.

found == "false" checks if the found variable equals the string "false", rather than the boolean false.  So when you change the if statement to if(found == "false") then the conditional is never true and so the error callback never gets run.

Thanks for your comment, i will research and find out the best way for my code


application/x-www-form-urlencoded metadata middleware form handling broken

I'm experiencing a problem creating an API specification that allows form data to be submitted as application/x-www-form-urlencoded or multipart/form-data but application/x-www-form-urlencoded does not seem to be handled properly.
Here is a sample project that illustrates the problem: https://gist.github.com/patrickpilch/af952114ba31d5d9d8b97988e833a789
When running that application, the following request using multipart will work:
$ curl -X POST -H "Cache-Control: no-cache" -H "Content-Type: multipart/form-data" -F "field1=value1" -F "field2=value2" "http://server:8484/test"

Output: Receieved username: value1 password: value2
But using url-encoded data will fail:
curl -X POST -H "Content-Type: application/x-www-form-urlencoded" -d 'field1=value1&field2=value2' "http://server:8484/test"

Output: {"message":"Request validation failed: Parameter (field1) is required"}
It appears the current logic only triggers url-encoded data parsing for the body only if the body is undefined.

I don't think the provided body parsing middleware supports that content type.  Out of the box we provide the body-parser from Express and multer but you can provide your own versions, or the same with your own configurations, to suit your needs.

It supports it, and the project is currently using it.
In the issue report, I hyperlinked the logic I believe is responsible for the problem. It will only ever call the url-encoded parser if the body is not defined, but it is - as url-encoded K/V pairs.

Gotcha.  I'll get this resolved when I get back from vacation.


fixes #400

Codecov Report

Merging #401 into master will increase coverage by 0.09%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #401      +/-   ##
==========================================
+ Coverage   74.25%   74.34%   +0.09%
==========================================
  Files          25       25
  Lines        1348     1345       -3
==========================================
- Hits         1001     1000       -1
+ Misses        347      345       -2

Flag
Coverage Δ

#unittests
74.34% <100.00%> (+0.09%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/rendering/htmlformats.jl
83.05% <ø> (ø)

src/rendering/miscformats.jl
87.50% <ø> (ø)

src/rendering/pandocformats.jl
85.18% <ø> (ø)

src/rendering/common.jl
89.15% <100.00%> (+0.92%)
:arrow_up:

src/run.jl
81.56% <100.00%> (+0.31%)
:arrow_up:

Continue to review full report at Codecov.

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


WIP: ocf device

Codecov Report

Merging #359 (44dad7b) into main (2a60018) will increase coverage by 0.05%.
The diff coverage is 57.14%.

:exclamation: Current head 44dad7b differs from pull request most recent head 5362494. Consider uploading reports for the commit 5362494 to get more accurate results

@@            Coverage Diff             @@
##             main     #359      +/-   ##
==========================================
+ Coverage   65.16%   65.21%   +0.05%
==========================================
  Files          77       77
  Lines        5408     5428      +20
==========================================
+ Hits         3524     3540      +16
- Misses       1461     1464       +3
- Partials      423      424       +1

Impacted Files
Coverage Δ

schema/link.go
68.26% <57.14%> (-1.95%)
:arrow_down:

... and 2 files with indirect coverage changes


IMPORTANT! Tree does not work inside a MODAL and we are STUCK !

We are using https://github.com/dwmkerr/angular-modal-service
Inside MODAL , we wanna use https://github.com/wix/angular-tree-control . But this does not work inside the MODAL , but works fine if we do not use MODAL , just in Home Page
Please watch the video.
http://www.screencast.com/t/gaUr2eAQUvh
Please let me know the scenario.

I have no idea what;s going on. I guess they are doing something strange in this library.
I'd try to debug how the tree is constructed in the modal popup - that is, during the execution of the modal template compile at https://github.com/dwmkerr/angular-modal-service/blob/master/src/angular-modal-service.js#L118-L120, what options are passed into the tree control at https://github.com/wix/angular-tree-control/blob/master/angular-tree-control.js#L104
is that the options object you expect?

@yoavaa
One more update , I tried https://github.com/angular-ui-tree/angular-ui-tree with keeping all other same . angular-ui-tree works fine inside the Modal . But wix/angular-tree-control does not work as I showed you the video.

@yoavaa Your Tree control works fine if any options object we pass,right ? Coz inside the Library's code I saw if options props are not available it takes the defaults . But in the treeTransclude directive here https://github.com/wix/angular-tree-control/blob/master/angular-tree-control.js#L392 , scope.options is undefined . this is the issue .

But the trreeTransclude gets it's scope from the tree control - and should
inherit the options (via prototype inheritance).
Can you check what is the prototype hierarchy for this scope?
On Sun, May 1, 2016 at 11:18 AM Shahjada Talukdar<EMAIL_ADDRESS>wrote:

@yoavaa https://github.com/yoavaa Your Tree control works fine if any
options object we pass,right ? Coz inside the Library's code I saw if
options props are not available it takes the defaults . But in the
treeTransclude directive here
https://github.com/wix/angular-tree-control/blob/master/angular-tree-control.js#L392
, scope.options is undefined . this is the issue .
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/wix/angular-tree-control/issues/214#issuecomment-216024985

@yoavaa
I fixed https://github.com/wix/angular-tree-control/pull/215
You can check and merge the PR

I cloned the repository and it works for me (yeahhh!).
But "bower install angular-tree-control" does not contain this fix and it's sad.

@Mad-Head I fixed in the Repo , not sure about the Bower!
Feels good , this helped you :+1:

"templateOptions" also does not work with modals.


client.describe returns "error decoding response body: invalid type: map, expected a string"

trying to use describe command from the example, but getting error:
HTTPError("error decoding response body: invalid type: map, expected a string...

I've encountered a similar error and it is related to the struct DescribeResponse because some fields might be not matching the retrieved JSON from the REST API callout.

Thank you for reporting this issue! and sorry for late reply.
Now, client.describe return serde_json::Value instead of DescribeResponse, so this issue resolved.
https://github.com/tzmfreedom/rustforce/blob/8293c28be0783dc1887d387054d51d9b5f0a3aae/src/client.rs#L372
If so, I'll close this issue.


Transformer selecting highest-prio items

I need this to respect completion item priorities in CompletionMenuModel. Currently priorities are not regarded; I need adding this option on-demand.

All fixed. Please consider also one-commit version https://github.com/JetBrains/jetpad-mapper/pull/87

@glebleonov Done. Also added license texts.

@glebleonov Done. Correct and error cases reside in different classes. Null priorities and getPriority tests added.

@glebleonov Done.

@aleksei-berezkin Seems to be ok now, provide a squased request, please.

@glebleonov Please consider https://github.com/JetBrains/jetpad-mapper/pull/88

merged https://github.com/JetBrains/jetpad-mapper/pull/88


CSS not found

Hi,
I tried the latest version of the script.
I had to change one variable as the logon check was not working:  "PROFILE_URL = SAFARI_BASE_URL
After that it works but it does not find anymore the CSS files:
"[-] Downloading book CSSs... (0 files)"

I don't think this is necessarily a problem.
In general the CSS-File-Lookup is searching for stylesheet-elements. When searching a downloaded OEBPS for stylesheet, style, or any external references I can't find any relevant.
I suspect that this might be related to this change:
https://github.com/lorenzodifuccia/safaribooks/commit/5b9961614a7d6bc954f54d4f653f6e1346c030c1
Do you see any display discrepancy? If so what is the book-id?

I updated the safaribooks.py file here: #198

Hello,
@jp-13, @noxymon, @TheSnoozer, could you please test the last commit?
I updated the code with a functionality that takes the CSS from the JSON information about the book.
Let me know if it work.

Hello,
@jp-13, @noxymon, @TheSnoozer, could you please test the last commit?
I updated the code with a functionality that takes the CSS from the JSON information about the book.
Let me know if it work.

Tested using<PHONE_NUMBER>936 in master branch, CSS downloaded.
but :

the images are not downloaded. try this.
TOC linked also missing.  try this,

Thanks @lorenzodifuccia for the fix! Works on my end - haven't noticed any issues.
As a side note - the following should be fixed now too:

https://github.com/lorenzodifuccia/safaribooks/issues/206
https://github.com/lorenzodifuccia/safaribooks/issues/201
https://github.com/lorenzodifuccia/safaribooks/issues/174
https://github.com/lorenzodifuccia/safaribooks/issues/163


Git merge issue in README?

def deps do
  [
<<<<<<< HEAD
    ...,
=======
    {:absinthe_plug, "~> 1.2.3"},
>>>>>>> master
    {:poison, "~> 1.3.0"}
  ]
end

Hi @croaky, this was fixed in c5a6513526e1f48b0e5cddc5ea7757aed6d98348

Thanks for catching this and fixing it. (oops!)


Added failing test with a fix to initialize device properties when .use(...

...Device) is called

Hi Adam,
I have tested above fix and found out that monitors are not getting updated once the transition happens in zetta browser. I need to refresh browser manually to see changes.
You can reproduce issue by using below code
var zetta = require('zetta');
var car = require('zetta-car-mock-driver');
zetta()
.name('Zetta-Explorer')
.use(car)
.listen('1337', function() {
console.log('zetta server is running on localhost port 1337 ');
});
Go to zetta browser and change the state of the car to Start Car -> Accelerate Car . Speed monitor value doesn't change. On browser manual refresh we can see changes.
Cheers,
Anil Sagar

Thanks Anil, will look into this today.

@anil614sagar  Was able to reproduce this. This is caused when a device is provisioned from the registry, so after the first time zetta was run. There were some conflicts on how the id was set after a init function is called on the .device.

+1


[WIP] Bump to Django 1.11

This PR contains all the commits of #4822 and also bumps the Django version to 1.11.

@timabbott, this is ready for review.

Actually wait on this one.

:?: what is the difference between this one and #4822 ?

@rht, #4822 doesn't bump the Django version. We want to ensure that the new commits work on Django 1.10 as well so that the transition is easier.

@timabbott please review.

@rht, can you please review this as well? Thanks.

These look good; merged, thanks @umairwaheed!  I will try to do the upgrade on chat.zulip.org shortly, and then I think we can start removing the compatibility code for 1.10.

@umairwaheed I didn't actually do the 1.11 package upgrade before (just merged the prereqs), merging that  now.  One note, however: you should always do the latest 1.11.x, not 1.11 itself -- the major versions usually have security bugs fixed if they're out for more than a week or two.  In this case, we're going to 1.11.2.

Belated LGTM.


Missing cache initialization

It seems like you forgot to call GCache::Initialize() somewhere, so I added a new function InitializeCache() in the Generator with a little bit of file logging

I just forgot to include a line in the last update, fixed now along with some other stuff. I feel like adding a timer and stuff is unnecessary, but your welcome to keep it in your own build.


cgroup: wait to verify value in set()

This is a fix for https://github.com/ARM-software/devlib/issues/136
The standard behavior for write_value() is to read it back immediately
afterwards and verify that it has been written. When writing some cgroup
parameter values (e.g. "FROZEN"), it may take a while for them to take
effect. If they are read back immediately afterwards, the result won't
match the expected value, producing an error.
While it is possible to disable validation on write, it is still
desirable to make sure that the parameters are set properly. This commit
changes the behavior to continue reading the value up to a timeout
period afterwards, giving it time to take effect, and only raise an
error if the timeout is reached.

Thanks for the fix.
Please import os.path. Apart from that it looks good to me. It's probably a shame to wait before raising an exception if the read value if clearly wrong but I don't really see how to do that in a generic way. This is probably the best we can do without managing all transition states of cgroups independently.

Please import os.path.

Done.

It's probably a shame to wait before raising an exception if the read value if clearly wrong but I don't really see how to do that in a generic way.

Well this is only in the exceptional case, and only 10s of target time. The alternative would be to add an awareness of in-progress/final value pairs, such as FREEZING/FROZEN, but that would periodically break when things change.

The alternative would be to add an awareness of in-progress/final value pairs, such as FREEZING/FROZEN, but that would periodically break when things change.

I agree, it's probably not worth it.
Design-wise, would it make sense to move the timeout feature to target.write_value ? It could be used together with verify to wait before raising an exception. I would suggest a default timeout of -1 meaning raise exception with no delay.

I would better consider the shutil alternative implementation to better support freeze/thaw operations.

I would better consider the shutil alternative implementation to better support freeze/thaw operations.

Yeah, I think that might be a better idea. Closing this pull.


serial: stm32: Use clock information from device tree

Fixes #10448

Codecov Report

Merging #11214 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #11214   +/-   ##
=======================================
  Coverage    53.1%    53.1%
=======================================
  Files         218      218
  Lines       26883    26883
  Branches     5952     5952
=======================================
  Hits        14277    14277
  Misses      10172    10172
  Partials     2434     2434

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 93bd263...2c00c41. Read the comment docs.

recheck

qemu issue again

recheck


Remove extra copies from platform messages

Work outlined in document: https://docs.google.com/document/d/1oNLxJr_ZqjENVhF94-PqxsGPx0qGXx-pRJxXL6LSagc/edit#

[ ] Add performance tests
Embedder copy

[ ] Pass ownership of message memory to embedder when receiving messages from flutter
[ ] Pass ownership of message memory to the engine when sending results from embedder

Dart VM copy

[ ] Pass ownership of message from dart vm to engine when receiving a message from flutter (typedata)
[ ] Pass ownership of message from engine to dart vm when sending response a message to flutter (typedata)

I was able to measure the performance of the std::vector -> Mapping PR.  With just the move to Mapping binary messages were 21% faster on iOS.  It looks like the deallocator is really slow for std::vector<uint8_t> compared to just calling free on the whole buffer.
Here you can see how slow it is:

The iOS performance benchmarks are running now too.  We got about a 42% increase in performance for the 1MB payload benchmark.
I've attempted to duplicate that success on Android and I haven't been able to.  I removed the copy for android by using a direct bytebuffer but that didn't improve the benchmark numbers: https://github.com/flutter/engine/commit/bdedbad91e26ccb77b9541e09a2d2e6b7d285c1f
Here is the java profile before the change:

Here is the java profile after the change:

From the java perspective the copy didn't seem to be eliminated and we went from a arraycopyByteUnchecked to a memmove which is slower.
Another thing I saw is that we seemed to be getting inconsistent time between handling handling messages, sometimes with a delay up to 150ms:

I suspected that this was because scheduling on the platform thread can be slow.  It might even be the case that our events were getting blocked on vsync events like the Handler API can do.  I added a print statement to figure out how long it was taking to service events we put on the event loop and I found that usually they were serviced in less than 1ms, but every 150ms or so they would take ~10ms.  That's significant but it doesn't explain the huge delays I saw between servicing messages in java.
diff --git a/shell/common/shell.cc b/shell/common/shell.cc
index 8c37afa18..4218e2f4e 100644
--- a/shell/common/shell.cc
+++ b/shell/common/shell.cc
@@ -1210,9 +1210,12 @@ void Shell::OnEngineHandlePlatformMessage(
     return;
   }

+  auto start = std::chrono::system_clock::now();
   task_runners_.GetPlatformTaskRunner()->PostTask(
       fml::MakeCopyable([view = platform_view_->GetWeakPtr(),
-                         message = std::move(message)]() mutable {
+                         message = std::move(message), start]() mutable {
+        auto now = std::chrono::system_clock::now();
+        FML_LOG(ERROR) << "foobar platform time:" << std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count() << " " << std::chrono::duration_cast<std::chrono::milliseconds>(now - start).count();
         if (view) {
           view->HandlePlatformMessage(std::move(message));
         }

...

I also added a probe to measure handling the time between posting a response on the UI thread and it getting handled and it actually took longer time but was more consistent, ~12ms.
diff --git a/lib/ui/window/platform_message_response_dart.cc b/lib/ui/window/platform_message_response_dart.cc
index f53fc41d6..da121f76a 100644
--- a/lib/ui/window/platform_message_response_dart.cc
+++ b/lib/ui/window/platform_message_response_dart.cc
@@ -33,8 +33,11 @@ void PlatformMessageResponseDart::Complete(std::unique_ptr<fml::Mapping> data) {
   }
   FML_DCHECK(!is_complete_);
   is_complete_ = true;
+  auto start = std::chrono::system_clock::now();
   ui_task_runner_->PostTask(fml::MakeCopyable(
-      [callback = std::move(callback_), data = std::move(data)]() mutable {
+      [callback = std::move(callback_), data = std::move(data), start]() mutable {
+        auto now = std::chrono::system_clock::now();
+        FML_LOG(ERROR) << "foobar ui time:" << std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count() << " " << std::chrono::duration_cast<std::chrono::milliseconds>(now - start).count();
         std::shared_ptr<tonic::DartState> dart_state =
             callback.dart_state().lock();
         if (!dart_state) {

Separately I wrote a probe into the jni code where the copy would be eliminated, without the copy removal that code executed in ~1ms with the 1MB payload.
diff --git a/shell/platform/android/platform_view_android_jni_impl.cc b/shell/platform/android/platform_view_android_jni_impl.cc
index 16e58e46c..d9960073f 100644
--- a/shell/platform/android/platform_view_android_jni_impl.cc
+++ b/shell/platform/android/platform_view_android_jni_impl.cc
@@ -1096,6 +1096,7 @@ PlatformViewAndroidJNIImpl::~PlatformViewAndroidJNIImpl() = default;
 void PlatformViewAndroidJNIImpl::FlutterViewHandlePlatformMessage(
     std::unique_ptr<flutter::PlatformMessage> message,
     int responseId) {
+  auto start = std::chrono::system_clock::now();
   JNIEnv* env = fml::jni::AttachCurrentThread();

   auto java_object = java_object_.get(env);
@@ -1120,6 +1121,9 @@ void PlatformViewAndroidJNIImpl::FlutterViewHandlePlatformMessage(
   }

   FML_CHECK(CheckException(env));
+  auto now = std::chrono::system_clock::now();
+  FML_LOG(ERROR) << "foobar jni time:" << std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count() << " " << std::chrono::duration_cast<std::chrono::milliseconds>(now - start).count();
+
 }

I'm not sure where the slowdown is happening.  I haven't had much luck with android profiling tools.

I give up with Android.  I think the ultimate solution will be synchronous channels anyway.  If you take <1ms to perform your task, why incur 25ms of overhead to execute it if you don't require that your code runs on the platform thread.  @iskakaushik was looking into this recently and something similar was described for the other direction here: https://github.com/flutter/flutter/issues/28310
FWIW I put print statements into the engine and it looks more like 20ms between events which is in stark contrast to what the profiler was showing with 150ms.  It may be a sampling problem related to the nyquist frequency of the sampler.  The text output was a bit harder to parse though, there might have been an outlier in there hidden.
It's unfortunate I could make a big impact for iOS but couldn't duplicate the work on Android.

Another thought, I put custom trace statements in the code than ran a comparison between the 14k and 1mb payload since the performance tests clearly show there is a difference is speed.
The last field in the print statements is the time since epoch in milliseconds.
14k:
E/flutter (22912): [ERROR:flutter/lib/ui/window/platform_configuration.cc(112)] foobar SendPlatformMessage entry:1621383175568
E/flutter (22912): [ERROR:flutter/shell/common/shell.cc(1213)] foobar OnEngineHandlePlatformMessage post:1621383175568
E/flutter (22912): [ERROR:flutter/lib/ui/window/platform_configuration.cc(139)] foobar SendPlatformMessage exit:0xb0e4f520<PHONE_NUMBER>568
E/flutter (22912): [ERROR:flutter/shell/common/shell.cc(1217)] foobar OnEngineHandlePlatformMessage handle:1621383175569
E/flutter (22912): [ERROR:flutter/shell/platform/android/platform_view_android_jni_impl.cc(1099)] foobar FlutterViewHandlePlatformMessage entry:1621383175569
E/flutter (22912): [ERROR:flutter/shell/platform/android/platform_view_android.cc(216)] foobar InvokePlatformMessageResponseCallback entry:0xedd803d0<PHONE_NUMBER>569
E/flutter (22912): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(36)] foobar Complete post:0xb0e4f520<PHONE_NUMBER>569
E/flutter (22912): [ERROR:flutter/shell/platform/android/platform_view_android.cc(231)] foobar InvokePlatformMessageResponseCallback exit:0xedd803d0<PHONE_NUMBER>569
E/flutter (22912): [ERROR:flutter/shell/platform/android/platform_view_android_jni_impl.cc(1124)] foobar FlutterViewHandlePlatformMessage exit:1621383175569
E/flutter (22912): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(39)] foobar Complete handle:0xb0e4f520<PHONE_NUMBER>569
E/flutter (22912): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(50)] foobar Complete exit:0xb0e4f520<PHONE_NUMBER>569

1MB:
E/flutter (23095): [ERROR:flutter/lib/ui/window/platform_configuration.cc(112)] foobar SendPlatformMessage entry:1621383252270
E/flutter (23095): [ERROR:flutter/shell/common/shell.cc(1213)] foobar OnEngineHandlePlatformMessage post:1621383252271
E/flutter (23095): [ERROR:flutter/lib/ui/window/platform_configuration.cc(139)] foobar SendPlatformMessage exit:0xb4a6a8b0<PHONE_NUMBER>271
E/flutter (23095): [ERROR:flutter/shell/common/shell.cc(1217)] foobar OnEngineHandlePlatformMessage handle:1621383252271
E/flutter (23095): [ERROR:flutter/shell/platform/android/platform_view_android_jni_impl.cc(1099)] foobar FlutterViewHandlePlatformMessage entry:1621383252271
E/flutter (23095): [ERROR:flutter/shell/platform/android/platform_view_android.cc(216)] foobar InvokePlatformMessageResponseCallback entry:0xedd83710<PHONE_NUMBER>272
E/flutter (23095): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(36)] foobar Complete post:0xb4a6a8b0<PHONE_NUMBER>273
E/flutter (23095): [ERROR:flutter/shell/platform/android/platform_view_android.cc(231)] foobar InvokePlatformMessageResponseCallback exit:0xedd83710<PHONE_NUMBER>273
E/flutter (23095): [ERROR:flutter/shell/platform/android/platform_view_android_jni_impl.cc(1124)] foobar FlutterViewHandlePlatformMessage exit:1621383252273
E/flutter (23095): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(39)] foobar Complete handle:0xb4a6a8b0<PHONE_NUMBER>285
E/flutter (23095): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(50)] foobar Complete exit:0xb4a6a8b0<PHONE_NUMBER>286

If you look, the biggest difference in time is between Complete post and Complete handle, in 14k it is <1ms, but on 1MB it is 12ms.  This is not the portion of the code I was optimizing.  I was optimizing the time between FlutterViewHandlePlatformMessage entry and Complete post which is <1ms on 14k and 1ms for 1MB.  It seems like the biggest inefficiency is in the response to messages, not the sending of messages.

Here is the same print statements for iOS with the 1MB payload, notice the difference between  Complete post and Complete handle is <1ms where we are seeing 12ms above for Android.
[VERBOSE-2:platform_configuration.cc(112)] foobar SendPlatformMessage entry:1621385201096
[VERBOSE-2:shell.cc(1213)] foobar OnEngineHandlePlatformMessage post:1621385201096
[VERBOSE-2:platform_configuration.cc(139)] foobar SendPlatformMessage exit:0x280f4e6d0<PHONE_NUMBER>097
[VERBOSE-2:shell.cc(1217)] foobar OnEngineHandlePlatformMessage handle:1621385201097
[VERBOSE-2:platform_message_response_dart.cc(58)] foobar Complete post:0x280f4e6d0<PHONE_NUMBER>097
[VERBOSE-2:platform_message_response_dart.cc(40)] foobar Complete handle:0x280f4e6d0<PHONE_NUMBER>097
[VERBOSE-2:platform_message_response_dart.cc(53)] foobar Complete exit:0x280f4e6d0<PHONE_NUMBER>097

I've expanded the print statements on android to include event loop logs:

E/flutter ( 1495): [ERROR:flutter/lib/ui/window/platform_configuration.cc(115)] foobar SendPlatformMessage entry:1621459468045
E/flutter ( 1495): [ERROR:flutter/shell/common/shell.cc(1213)] foobar OnEngineHandlePlatformMessage post:1621459468045
E/flutter ( 1495): [ERROR:flutter/fml/platform/android/message_loop_android.cc(89)] foobar WakeUp entry:0xedf56490<PHONE_NUMBER>045
E/flutter ( 1495): [ERROR:flutter/lib/ui/window/platform_configuration.cc(142)] foobar SendPlatformMessage exit:0xb4d4b110<PHONE_NUMBER>045
E/flutter ( 1495): [ERROR:flutter/fml/platform/android/message_loop_android.cc(97)] foobar OnEventFired entry:0xedf56490<PHONE_NUMBER>045
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_task_queues.cc(133)] foobar GetNextTaskToRun entry:1<PHONE_NUMBER>045
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_impl.cc(124)] foobar FlushTasks entry:0xedf56490<PHONE_NUMBER>045
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_task_queues.cc(133)] foobar GetNextTaskToRun entry:0<PHONE_NUMBER>045
E/flutter ( 1495): [ERROR:flutter/fml/platform/android/message_loop_android.cc(89)] foobar WakeUp entry:0xedf56490<PHONE_NUMBER>045
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_task_queues.cc(159)] foobar GetNextTaskToRun exit:0<PHONE_NUMBER>045
E/flutter ( 1495): [ERROR:flutter/shell/common/shell.cc(1217)] foobar OnEngineHandlePlatformMessage handle:1621459468045
E/flutter ( 1495): [ERROR:flutter/shell/platform/android/platform_view_android_jni_impl.cc(1099)] foobar FlutterViewHandlePlatformMessage entry:1621459468045
E/flutter ( 1495): [ERROR:flutter/shell/platform/android/platform_view_android.cc(216)] foobar InvokePlatformMessageResponseCallback entry:0xedd83710<PHONE_NUMBER>046
E/flutter ( 1495): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(61)] foobar Complete post:0xb4d4b110<PHONE_NUMBER>046
E/flutter ( 1495): [ERROR:flutter/fml/platform/android/message_loop_android.cc(89)] foobar WakeUp entry:0xedf50c90<PHONE_NUMBER>047
E/flutter ( 1495): [ERROR:flutter/shell/platform/android/platform_view_android.cc(231)] foobar InvokePlatformMessageResponseCallback exit:0xedd83710<PHONE_NUMBER>047
E/flutter ( 1495): [ERROR:flutter/shell/platform/android/platform_view_android_jni_impl.cc(1124)] foobar FlutterViewHandlePlatformMessage exit:1621459468047
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_task_queues.cc(133)] foobar GetNextTaskToRun entry:0<PHONE_NUMBER>047
E/flutter ( 1495): [ERROR:flutter/fml/platform/android/message_loop_android.cc(97)] foobar OnEventFired entry:0xedf56490<PHONE_NUMBER>047
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_impl.cc(124)] foobar FlushTasks entry:0xedf56490<PHONE_NUMBER>047
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_task_queues.cc(133)] foobar GetNextTaskToRun entry:0<PHONE_NUMBER>047
E/flutter ( 1495): [ERROR:flutter/fml/platform/android/message_loop_android.cc(97)] foobar OnEventFired entry:0xedf50c90<PHONE_NUMBER>059
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_impl.cc(124)] foobar FlushTasks entry:0xedf50c90<PHONE_NUMBER>059
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_task_queues.cc(133)] foobar GetNextTaskToRun entry:1<PHONE_NUMBER>059
E/flutter ( 1495): [ERROR:flutter/fml/platform/android/message_loop_android.cc(89)] foobar WakeUp entry:0xedf50c90<PHONE_NUMBER>059
E/flutter ( 1495): [ERROR:flutter/fml/message_loop_task_queues.cc(159)] foobar GetNextTaskToRun exit:1<PHONE_NUMBER>059
E/flutter ( 1495): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(42)] foobar Complete handle:0xb4d4b110<PHONE_NUMBER>059
E/flutter ( 1495): [ERROR:flutter/lib/ui/window/platform_message_response_dart.cc(55)] foobar Complete exit:0xb4d4b110<PHONE_NUMBER>060

This shows the the largest part of the delay is in waiting for the Looper to call our OnEventFired.  I don't understand why it waits for so long.  It isn't out of the realm of possibility that it is blocking on vsync... but that doesn't explain why it is slower when the payload is larger.  I see no reason why there should be a correlation there.

I was able to verify that the argument to WakeUp is the current time, but OnEventFired is only firing after ~13ms, presumably because the ui thread is busy executing another operation that is bound by the size of the payload?

I tried the profiler for android studio again and increased the payload to 2MB, and I can clearly see that the UI thread is occupied with a memcpy, but it isn't clear who is initiating it, especially when considering it should be someone unique to android and not on iOS.  I expect the UI thread to behave mostly the same between iOS and Android

Hey @aam, on Android I'm seeing worse performance on platform channels in Flutter than on iOS.  I'm testing by sending a payload of 1MB back and forth dart (ui thread)-> c++ (platform thread) -> java (platform) -> c++ (platform) -> dart (ui thread).  When going from c++ to dart I'm seeing a delay between scheduling the task on the ui task runner and it actually getting executed (the ui thread this is the thread running the Dart isolate).  The delay is proportional to the size of the payload of the message.
The thing that is curious is that at this point there shouldn't be any work on the UI thread that is bounded by the size of the payload.  That copy already happened when we sent the data to the c++ code, and we shouldn't be copying back a result yet because we haven't hopped back onto the UI thread.
I use the Android Studio profiler to try to track down what is happening and I can clearly see that memcpy is taking up a large amount of time but it can't tell me where it is happening.  It's also odd that this latency shows up on Android but not iOS.
My question is, can you think of something in Dart that might be binding up the ui thread's event loop, creating this latency in scheduling the response?  Specifically something that might be different between the iOS and the Android implementation?  Maybe some extra memcpy that would happen on Android?
While writing this up I realized that difference in when garbage is collected might create such a situation.  If the Dart VM decided to collect garbage right after the dart (ui thread)->c++ (platform thread) it might block the ui thread when we try to go back to Dart.  I wouldn't expect the garbage collector's execution time to scale with the size of the buffer though, it would more scale with the number of objects.  Maybe this is an extra copy from the generational garbage collector when going from short term to long term memory?
I'm about to give up on this I'm uncertain if the amount of time I spent on this is worth it.  I just wanted to check with you quickly to see if you had an idea on what it might be with respect to Dart.  Thanks.

I just ran the benchmark tests on the builtin engine and I get wildly different results:
local profile engine:
I/flutter (20197): ================ RESULTS ================
I/flutter (20197): :::JSON::: {"platform_channel_basic_standard_2host_small":336.0208,"platform_channel_basic_standard_2host_large":5274.7208,"platform_channel_basic_binary_2host_large":667.5252,"platform_channel_basic_binary_2host_1MB":16536.8056}
I/flutter (20197): ================ FORMATTED ==============
I/flutter (20197): BasicMessageChannel/StandardMessageCodec/Flutter->Host/Small: 336.0 µs
I/flutter (20197): BasicMessageChannel/StandardMessageCodec/Flutter->Host/Large: 5274.7 µs
I/flutter (20197): BasicMessageChannel/BinaryCodec/Flutter->Host/Large: 667.5 µs
I/flutter (20197): BasicMessageChannel/BinaryCodec/Flutter->Host/1MB: 16536.8 µs

builtin engine:
I/flutter (20417): ================ RESULTS ================
I/flutter (20417): :::JSON::: {"platform_channel_basic_standard_2host_small":256.6312,"platform_channel_basic_standard_2host_large":2353.3572,"platform_channel_basic_binary_2host_large":141.1596,"platform_channel_basic_binary_2host_1MB":1781.7596}
I/flutter (20417): ================ FORMATTED ==============
I/flutter (20417): BasicMessageChannel/StandardMessageCodec/Flutter->Host/Small: 256.6 µs
I/flutter (20417): BasicMessageChannel/StandardMessageCodec/Flutter->Host/Large: 2353.4 µs
I/flutter (20417): BasicMessageChannel/BinaryCodec/Flutter->Host/Large: 141.2 µs
I/flutter (20417): BasicMessageChannel/BinaryCodec/Flutter->Host/1MB: 1781.8 µs

I was was building with gn --runtime-mode profile --unoptimized --android  I don't expect removing LTO to have that much of an effect.  I'll try with a locally built release engine.

I was erroneously thinking that --unoptimized only deals with LTO, it doesn't it specifies -O0, --no-lto blocks LTO.

I think https://github.com/flutter/engine/pull/34363 might help with the scheduling delays you've found above.
I did try to reproduce the results above first though, with the platform_channel_benchmarks app but wasn't able to. I'm running on a pixel 4 (at flutter/flutter@3deb245b2c2982dbab5dbebed9db853325190f9a) and I tried both release mode and profile mode. Repeated runs are all in the same order of magnitude that do not reflect the delay you encountered above.
06-29 11:22:32.946  4151  4179 I flutter : ================ FORMATTED ==============
06-29 11:22:32.947  4151  4179 I flutter : BasicMessageChannel/StandardMessageCodec/Flutter->Host/Small: 112.2 µs
06-29 11:22:32.947  4151  4179 I flutter : BasicMessageChannel/StandardMessageCodec/Flutter->Host/Large: 1677.6 µs
06-29 11:22:32.947  4151  4179 I flutter : BasicMessageChannel/BinaryCodec/Flutter->Host/Large: 112.4 µs
06-29 11:22:32.947  4151  4179 I flutter : BasicMessageChannel/BinaryCodec/Flutter->Host/1MB: 649.3 µs
06-29 11:22:32.947  4151  4179 I flutter : BasicMessageChannel/StandardMessageCodec/Flutter->Host/SmallParallel3: 57.9 µs
06-29 11:22:32.947  4151  4179 I flutter : BasicMessageChannel/StandardMessageCodec/Flutter->Host (background)/Small: 93.5 µs
06-29 11:22:32.947  4151  4179 I flutter : BasicMessageChannel/StandardMessageCodec/Flutter->Host (background)/SmallParallel3: 54.5 µs

Not sure if I missed something - it would be nice to try the PR above with the benchmark and see if it helps, which might unblock optimizations mentioned above like https://github.com/flutter/engine/commit/bdedbad91e26ccb77b9541e09a2d2e6b7d285c1f


Overhaul Variant Documentation

I'm not sure what issues this may close right now, but there's a strong possibility it does, at least one.
This PR is really, really old. @MewPurPur asked me if I ever had a "documentation overhaul" PR for this page. I actually said yes, but it was a huge, far from finished draft of needed information (which you'll see). They then spent a fair amount of time unraveling the draft into something readable. The current PR is almost unchanged from what was sent.
So, why? What's even wrong?

A big chunk of it describes what other aspects in the engine use Variants for, not what Variant is or can be.
It is convoluted, with remarks and tangents all over.

I could go into detail, but as I expressed in our chat, it's like talking about fire and remarking about nuclear fusion without finishing to explain what heat even is.

It's old. It just plainly smells old. No one is willing to touch it, or read it.

So, basically, we need to come up with many good reasons to be clicking on "Variant" in the Class Reference, because as is it's kind of sad.
The goals have been so far:

Categorize Variant types into groups, or at least make a clear distinction between them.

Container types are most definitely their own unique category.

Explain once and for all in an easily accessible place the difference between "passing by value" and "passing by reference"

This is a huge pain point for starting programmers and there's no centralised spot for this explanation. We basically have to remind of it every time it comes up. That is fine when explained briefly, but it often isn't!

Explain what null is.

Null is intrinsic to the inner workings of Variant, yet it's not even mentioned.

Go more into detail on Variant's memory footprint. We have decided to omit this detail due of the highly varying size, and potential inaccuracy that would happen over time.

This was at time contested, some are unsure on the actual size of a Variant. It's tricky, because some types allocate more than "only 20 bytes".
Not done in the current draft.

In my opinion even in this draft state, this version is a far improvement, although the bar is really low.

Reworded the Value VS. Reference examples. I really want to reorganize each individual topic, but it's tricky to.
Given the limitations, a lot of this also depends on how it looks like in the built-in documentation, so I'll have to see.


Use ogmios-datum-cache reflection in our code

Currently, to match ODC responses to requests we don't use reflection that is implemented in https://github.com/mlabs-haskell/ogmios-datum-cache/pull/13 because it was not available earlier.
We need to address that.
This may make it possible to unify some code for ogmios and ogmios-datum-cache requests.

It's been merged: https://github.com/mlabs-haskell/ogmios-datum-cache/pull/31


add reference to original on monkeyPatched functions

L1270

diff at https://github.com/rauenzi/BetterDiscordApp/pull/150/files?w=1

Why you messin' with my whitespace dawg?

atom trims all trailing whitespace on save

Not configurable? gross


Supported operating System

Please include Windows Operating System which supports accelerated networking, Its confusing as if windows doesn't support though it is confirmed in another blog
https://azure.microsoft.com/en-us/blog/maximize-your-vm-s-performance-with-accelerated-networking-now-generally-available-for-both-windows-and-linux/

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

ID: f89338c0-968d-c22f-5b0d-ed3870ebc2fa
Version Independent ID: 6daae1cc-f758-1d37-9de3-80a2832c08ef
Content: Create an Azure virtual machine with Accelerated Networking
Content Source: articles/virtual-network/create-vm-accelerated-networking-cli.md
Service: virtual-network
GitHub Login: @jimdial
Microsoft Alias: jdial

@maayez The list of supported Windows operating systems is in the Windows version of this article.  I added a link to that article near the start of this article. The change will publish later today. #please-close.

We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Check auto-generated conversions in pre-commit hook

Also followup from #8443
cc @thockin

PTAL

PTAL

LGTM, not merging due to freeze