Next LogAxis attempt

Here is the next iteration of the ability to switch graphical views to a log axis scale. This is now achieved through PointsView.setHScale(Scale) or PointsView.setVScale(Scale), where Scale is an Enum containing scale options Scale.LOG, Scale.LINEAR, and Scale.AUTO. This has been achieved by extending Projector to project logarithmically from v to u. A subclass of AxisTics was created to deal with painting log tics, called LogAxisTics.
There are currently three ways to set the axis scale:
PointsView.setHScale(Scale.LOG);  // set this PointsView scale to LOG
Tile.setVScale(Scale.LINEAR);        // set all the views in this and adjacent tiles to LINEAR
Projector.setScale(Scale.LOG);       // set this projector to LOG

The PointsView method sets its own projectors to the specified scale, as well as the Tile it belongs to, if not null. The Tile method sets its own views to the specified scale, as well as the adjacent Tiles. The Projector method is currently protected, and called by the PointsView method.
When new views are added to a Tile, for example with PlotPanel.addPoints(), if they have the default scale setting of Scale.AUTO, it will assume the scaling of the current Tile. If the new view has a definite set scale, then it will change the current scale of the Tile when it is added.
Here are some current issues or things still to address:

Axis labels not quite right when x1[] values are all negative.
Currently only implemented for PointsView.
Next step, I want to add the AxisScalable interface.
Maybe some clunky adjacent Tile checking in the PlotPanel.addPoints() method
Currently negative x2[] values are drawn at the bottom of a plot when VScale is set to LOG ... might want to change to draw distinct line segments?

Ready for advice and criticisms!

I should also mention that LogAxisTics is not smart in the way that AxisTics is for determining how many tics to draw ... it always draws all the powers of 10 in the range of x1[] as major tics, and draws all 8 tics inbetween the major tics as minor tics.

I took another quick look, but there is a lot here and my mind is now too far away on other things for me to give it due diligence. Perhaps another Mines JTK user can build and test this branch.

Just a couple things:

Let's get Javadoc on all classes, public and protected methods
Make sure every file has the apache license header you see in all other files.
This is my preference, but it might help to get some unit tests in this

Thanks for the feedback, Chris! I'll get those things taken care of.
I haven't written a lot of unit tests ... are you thinking of tests for the log scale projector and transcaler, or something more?
Thanks again!

OK Chris, I think I've filled in the unit tests and javadoc, and removed the stray debug code you found. I'm not sure what the best approach would be for automatically deciding whether a plot should be displayed in log scale ... maybe something about the range of x2[]?
Thanks!
@chrisengelsma

@ericaddison To be honest, it's something that can be kicked on down the road. I'm sure you could come up with something but personally "AUTO" being synonymous with "LINEAR" seems like fair logic to me. I will clone this and play with it very soon

@dhale i'm cool with it if you wanna take a look or merge

I remain preoccupied but did take a quick look this morning.
I see more changes than feel necessary. In particular, Scale.AUTO seems fragile, because it requires that linear/log state be kept consistent among instances of different classes. I wonder if this requirement is actually met, that any inconsistencies are well resolved.
What makes linear/log state different from other state maintained in Projector? Only the class Projector should maintain the state of log or linear scales. Other classes set or get Projectors. PlotPanel, for example, sets best Projectors in convenience methods like setLimits, and could do so as well in a method setScales. PlotPanel does not maintain its own state for limits, but by doing this in PlotPanel, we ensure that limits are set consistently for all Tiles in a row or column of a Mosaic.
What happens when Projectors with different scales are merged? In the current implementation of Projector.merge, this Projector always wins when the specified Projector p is inconsistent in some way. To be consistent, the linear/log scale of this Projector should win if inconsistent with Projector p.
What is the impact of these changes on performance of a PointsView with linear scales?
The class name AxisScalableTile is misleading because instances are not Tiles. Perhaps this class is unnecessary if we confine linear/log state to Projector only.
Should LOG be LOG10? I can imagine someday wanting LOG2.
Need to look for places in the current documentation that would be misleading if we add log scales. I'll bet that there are docs and/or comments where linear scales are implied.
No tabs. Indentation with spaces and whitespace around operators, function arguments, etc. should be consistent with other classes in the package mosaic.

@dhale Thanks for the comments, Dave. I agree with your points, and will see about pulling the scale state completely into Projector. Shouldn't be a big ordeal.
Currently in Projector.merge the Scale type is not considered during the merging until the computeShiftAndScales() method, where it switches to LINEAR if  any part of the Projector range is negative. This was a behavior choice (what happens when a LOG Projector receives negative range?), and if you think it should behave differently then let me know. Other than that the merged Projector (this) will maintain it's original Scale.
Sorry about the tabs, I though I caught all of those! I'll fix up the formatting. Do you happen to have an eclipse format file?
Thanks!

Certainly, a log scale is valid only for positive values v0 and v1, and this seems like a good case for another Check.argument in the constructor. In other words, I cannot think of a case where users would expect us to silently switch to linear when log was specified.
The method merge is all about resolving conflicts between Projectors, and here we must choose a scale that will yield a valid Projector. I would not put this code in computeShiftsAndScales, which assumes a valid Projector.
Remove System.out.println's before pushing.

@dhale  I was wrong about one of my previous comments ... I had set up PointsView to deal with negative values by just ignoring them if the range is partially negative, or switching to LINEAR if completely negative. I agree that the silent switch to LINEAR could be removed, but the ignore-negative-values behavior is similar to MATLAB, which may be familiar to users.
The logic to ignore negative values currently lives in PointsView.updateBestProjectors(), which constructs new Projectors with only positive values. This could probably be moved to Tile.updateBestProjectors(), but couldn't really go into Projector. This would move that responsibility out of the hands of individual views, which would relegate it back to their Tile, which would work with the Projectors to set up the axes.
How does that sound?

I like your current logic, having PointsView be responsible for constructing a valid best Projector, because I can imagine that other classes extending TiledView and supporting log scales might handle the log-of-negative-values problem differently.
When merging (inside Projector.merge) two best Projectors having different (log and linear) scales, what do you think of always choosing linear?
What to do when someone calls Tile.set*Projector with a non-linear Projector? We certainly cannot force all TiledViews to handle non-linear Projectors. So if any of the TiledViews in a Tile has a linear best Projector, then Tile.updateBestProjectors should give all TiledViews linear Projectors. In this way, Tile need only call (a new method) Projector.isLinear(). It need not know what other scales might be possible.

I like the idea of defaulting to LINEAR in Projector.merge() in the case of conflicts, so that if you add  a new view which is explicitly set to LINEAR to a Tile, then all connected views in the Mosaic will revert to LINEAR. However, I think that if a view is added with scale AUTO (which I think should be the default), then it should assume whatever the current Tile scale happens to be, or LINEAR if it's the first view. In any case, I think all views in a Tile should have the same scale of Projector.
This should also be the case if a TiledView is added that does not implement AxisScalable (set all to LINEAR). A similar check should be performed in the Tile.set*Projector() methods as you say.

The following seems sufficient and easier to understand for everyone:
Linear best Projectors are the default for all TiledViews.
So no AUTO.
And no interface AxisScalable.
Mosaic appearance should be independent of the order in which users set Projectors, either directly on a Tile or indirectly via parameters set for a TiledView, which affect it's best Projectors.

OK, no AUTO, no interface. Will rely on TiledView base class to inherit scale related methods, with LINEAR as default for all new views.
For the situation of multiple views in a Tile, should we expect the same behavior from setting the scale via the Tile set methods as setting one of the views in the Tile? I would think yes, and in either case all other views in the Tile should be set to the new scale, unless one of the views does not support the proposed scale, in which case all views will revert to LINEAR. Is that reasonable?

I assume you mean to add something like TiledView.supportsScale(Scale scale), so that a Tile can determine (in Tile.updateBestProjectors) whether or not it can use a non-linear scale specified directly in a best Projector for that Tile. If this method returns false for any TiledView, then the Tile will use a linear scale. The implementation of supportsScale in TiledView would return false for any Scale except linear. Subclasses of TiledView that support non-linear scales would override this method.
Alternatively, Tile.updateBestProjectors would simply use a non-linear scale if and only if the best Projectors of all TiledViews in this Tile have the same non-linear scale. In this alternative, Tile would simply ignore the scale attribute for any Projector specified directly via Tile.setBestProjector. I like this alternative because methods for setting limits in PlotPanel currently call Tile.setBestProjector with Projectors having linear scales.
These methods for setting limits in PlotPanel are currently the only places within the Mines JTK where Tile.setBestProjector is called. And I will guess that they are not called elsewhere. So we might also consider replacing these public methods in Tile with methods like those in PlotPanel that set only limits. To be safe, we should first @deprecate Tile.setBestProjector, while adding new methods like Tile.setLimits.

@dhale OK, here are some significant changes made. First let me address the issues that you raised recently:

Removed or @Deprecated instances of setBest*Projector() in both Tile and PlotPanel in favor of new Tile.setLimits() methods. The axis scale does not change based on the setLimits() method, so if negative limits are requested for a logarithmic projector, then a Check.arguments() exception will be thrown.

When attempting to set a new scale for a Tile, the tile calls setScales() for every TiledView it contains. If the resulting scales of the views are not all equal to the requested scale, then all are reset to LINEAR. As a consequence of this, the scale cannot be set for a view or tile in a mosaic until all tiles are populated.

Based on where a scale change is requested, either in Tile or through PointsView, the change will be propagated to all views and tiles in the Mosaic connected to the calling tile/view, resetting to LINEAR if at any time a non-compatible view is found.

After a PlotPanel is set up, there are now three basic ways to set axis scales:
PointsView.setScales(hscale,vscale);
PointsView.setBestProjectors(bhp,bvp); // protected method
Tile.setScales(hscale,vscale);

Plus a set of overloaded and convenience methods to access these. If desired, setScale() methods could be added to Mosaic and PlotPanel, which would set scale for a given row, column, or pair (irow,icol).

Quick response to your comments is all I have time for now. I have not had a chance to study the code.
Remove the convenience method Tile.setScales and perhaps most of messy problems/cases you cite go away. Here is my reasoning.
Projector constructor should Check.argument to ensure that a log scale is not specified with negative limits. I think this is what you meant above, but I was unsure who you have calling Check.argument.
Methods Tile.setLimits make sense because any TiledView must be able to honor limits (even negative limits) and support linear scales. So whenever a TiledView is given a Projector with negative limits, it will never have a logarithmic scale. TiledViews never assume they will be given their best Projectors.
Methods Tile.setScales do not make sense, because a Tile can handle any sort of TiledView, and not all TiledViews can be expected to support nonlinear scales.
Same thinking applies to any convenience methods in Mosaic and/or PlotPanel.

I'm gonna rehash how the scale change works now, and then see if I understand what you are suggesting.
As it is now, a Tile kind of manages the scales of the views it contains. If you call setScale() on a Tile, then it will attempt to set that scale for all views it contains (which ultimately means create a new BestProjector), and then pass the new scales up to mosaic, who then does the same for the other tiles in the same row/column as the original tile. If you call setScale() for an individual TiledView (only PointsView at the moment, others are No-ops), the same things happen if the view has a Tile; it still tries to set all connected views to have the same scale. If you give a TiledView a new Projector explicitly, it will still propagate up to the Tile and then Mosaic (unless specifically requested otherwise with a new boolean argument).
I have removed the public ability to give a Tile a projector, and replaced that with a setLimits() method. In this method, Tile creates it's own new projector with the new limits and it will take in whatever the current scale is via alignProjectors(). This is the meaning I took when you suggested removing setBestProjector() from Tile in exchange for methods that take only limits. This leaves open the possibility of a Tile having a LOG projector but receiving a request for negative limits, which currently throws an exception (Tile.setLimits( ) does a Check.argument), but could go back to the silent-switch-to-LINEAR behavior. Looking back at your comment maybe this is what you meant ... do you think that when calling setLimits() for a Tile, the scale should be set to LINEAR in any case? This would remove the possibility of trying to set a LOG projector to have negative limits. Additionally, Projector does a Check.argument() whenever its scale is changed, including in the constructor.
I don't quite understand why you say that Tile.setScale() doesn't make sense. Based on the current implementation, a Tile can handle any sort of TiledView, yes, but the Tile also requires that all of it's TiledViews have the same scale. If one of the TiledViews refuses to set to a particular scale (i.e. not supported), then Tile will set them all back to LINEAR, maintaining the same-scale requirement.
From your suggestions, and there's a good chance I'm misinterpreting this one, Tile would never worry about explicitly changing the scale of a TiledView, but would always return a LINEAR best projector unless the best projectors of all the contained TiledViews have the same non-linear scale (would also need to reach out to adjacent Tiles in the Mosaic for this check). With this scheme, a user would need to explicitly set the scale of all the TiledViews in this Tile and any adjacent Tiles to LOG10 before you would actually get a logarithmic display. Is that what you are thinking?
Thanks for the comments! I think we are converging on a solution here.

To quickly answer your last question, yes. Users who want a non-linear scale must specify a consistent non-linear scale when configuring their TiledViews. This requirement is easy to implement, easy to document, and creates no must-set-this-before-that problems.
Tile gives its TiledViews a Projector obtained by merging their best Projectors, accounting for any limits specified for the Tile. In cases where a scale is inconsistent with another scale, or with limits, Projector.merge yields linear.

OK, so if I understand right then the steps for a log-scale view might go something like:
// make a plotpanel
PlotPanel plot = new PlotPanel(a,b);

// set up views
PointsView pv1 = plot.addPoints(a1,b1,x1,y1);
PointsView pv2 = plot.addPoints(a2,b2,x2,y2);
... add more views ...

// set required views to LOG10
pv1.setScales(AxisScale.LOG10);
pv2.setScales(AxisScale.LOG10);
... same for all necessary views ...

That last step of setting all appropriate views to LOG10 seems like it could be easily automated by a convenience method setScales() in Tile, PlotPanel, and/or Mosaic... If there is a TiledView in the list of views that does not support the requested scale, then I don't see a difference whether that issue is raised explicitly by the user (as above), or by a convenience method ... I think it should just reduce the lines of code that a user needs to write if there happen to be lots of affected views... Further, it might get a little confusing or cumbersome for the user to decide which axes of which views need to be set to which scale in order to reproduce the 4-tile plot above. For example, above I would need to set the scales of 6 total TiledViews: two to (LOG10,LOG10), two to (LINEAR,LOG10), and two to (LOG10,LINEAR). With a proper setScales() method in Tile (or elsewhere), I could just call something like, for example, plot.setScales(1,0,LOG10,LOG10), and the rest would be taken care of automatically. This would still result in LINEAR best projectors if any of the views affected did not support the requested scale.
(that reminds me, I need to protect against explicitly setting a non-implemented TiledView with a non-linear projector through setBestProjectors())
Thoughts about this?

I guess I can see your point better with this kind of flow:
// make a plotpanel
PlotPanel plot = new PlotPanel(a,b);

// set up views one at a time
PointsView pv1 = plot.addPoints(a1,b1,x1,y1);
pv1.setScales(AxisScale.LOG10);
pv1.setOtherAttributes()
...

PointsView pv2 = plot.addPoints(a2,b2,x2,y2);
pv2.setScales(AxisScale.LOG10);
pv2.setOtherAttributes()
...

... etc ...

But still would require thought and potential confusion for mutli-tile plots I think...

Your PlotPanel with four tiles is good for illustrating what is possible, but is likely to be atypical and insufficient to justify increased complexity in the Tile-TiledView negotiation of best Projectors. In our support for non-linear scales, let's begin with the changes that are essential and easiest to document.
By the way, with Tile.set*Projector deprecated, we may want methods Tile.setMargins to go with Tile.setLimits. These margins (fractions of tile width or height) would then be used when computing u0 and u1 in a Tile's best Projector. Like limits, margins are another aspect of Projectors that all TiledViews can handle.

Gotcha. I will pull any scale setting out of Tile and Mosaic, and return LINEAR best projectors from Tile if the scales of all TiledViews in the Tile do not match.

I have made most of the changes mentioned above. Tile and Mosaic no longer try to set any scales, but will return LINEAR best projectors if all relevant TiledViews do not agree on the same scale. This allowed a decent amount of code simplification with the whole scale-setting process.
There are now two demos. The first, LogAxisPlotDemo, plots a single Tile and sets the scales to LOG10. There are buttons to change the scales of each PointsView individually, to test the new Tile.setLimits() method, and to add a GridView, which does not have any scale stuff implemented (this shows what happens when an unsupported view is added to a Tile).
The second, LogAxisPlotDemo2, displays the 4-Tile Mosaic again with a single PointsView per Tile. There are now ComboBoxes in the window to set the Scales of each of the views individually, to explore the right combinations of scales for scale displays.
I haven't looked at the setMargins() stuff yet. I'll study up on that.

I've not forgotten this, and your screenshots look great. Just busy with other programming before traveling to the conference championships in Grand Junction for Mines Swimming this week.
Would anyone following this thread like to review Eric's pull request?

I'm pulling this out of stasis and taking a look at it

:) This was from more than a year ago? That was fast...

Cool! Thanks!


Uma layout in inspector looks corrupted

Hi,
Firstly, I'd like to say how amazing UMA is. You can create a wide range of fantastic characters in a short space of time which is brilliant for an indie developer like me. I'm new to UMA and I'm working my way through the Secret Anorak tutorials which again are amazing, very easy to follow and cover everything you need to know.
As I'm new to this, I may be doing something wrong, but I'm having issues with the layout of some of the UMA content in Unity (particularly assets and recipes). I attach a few screenshots to show you what I mean. The inspector view of the characters is fine.
Environment (please complete the following information):

Unity Version: 2019.3.0a3
UMA Version: 2.9 (downloaded a few days ago)
Platform Build (if not editor): I'm just using the normal Unity Editor.

Tested working in release version of 2019.3

Hi Jaimi, many thanks for that. I have upgraded to the latest version of Unity and it works now.


Can multiple audioProducers or videoProducers be supported?

the examples mediasoup.py demo code, use one videoTrack and one audioTrack, it seems that a videoTrack corresponds to a videoProducer, and a audioTrack corresponds to a audioProducer.
Init load device depends on self._tracks.
self._tracks.append(videoTrack)
self._tracks.append(audioTrack)
self._device = Device(
handlerFactory=AiortcHandler.createFactory(tracks=self._tracks)
)
Thanks a lot!

You can use multiple devices.


Optimization: Display images using only the URL (do not get pokemon's details)

Wasn't needed to do it as changing the protocol from REST to GraphQL optimized the loading of the page and made this issue unnecessary.


Request to add version Fabric

https://github.com/onebeastchris/GeyserHacks-Fabric
I've made a fabric port for 1.19.3, it should get approved & available on modrinth shortly
Has the fixes for bamboo & dripstone; as well as the fix for ItemSteerables


Enable 2:1 and 4:1 rectangular intra prediction function calls"

Straightforward addition of 15 more 2:1 and 4:! rectangular
sized intra predictions, following current trait approach.

Coverage decreased (-0.6%) to 84.622% when pulling 183a901ae94d44da1608cdb44f45db026e517e92 on ycho:add_rect_intra_pred into 714c5ca773c505cc4b1b0f44cac866ab0fa762c9 on xiph:master.


refactor: removed init command

Removes init command to close #283

This shouldn't be merged until we are ready to bump the minor version.


编译yolox环境的时候一直报错，请问这个是怎么回事呢

torch                   1.7.0
torchaudio              0.7.0
torchfile               0.1.0
/workspace/YOLOX_OBB_NEW/yolox/ops/onnxruntime/common/ort_utils.h:3:33: fatal error: onnxruntime_cxx_api.h: No such file or directory
#include <onnxruntime_cxx_api.h>
^
compilation terminated.
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 1516, in _run_ninja_build
subprocess.run(
File "/usr/local/lib/python3.8/subprocess.py", line 512, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.
The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "<string>", line 2, in <module>
  File "<pip-setuptools-caller>", line 34, in <module>
  File "/workspace/YOLOX_OBB_NEW/setup.py", line 144, in <module>
    setuptools.setup(
  File "/usr/local/lib/python3.8/site-packages/setuptools/__init__.py", line 153, in setup
    return distutils.core.setup(**attrs)
  File "/usr/local/lib/python3.8/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/local/lib/python3.8/distutils/dist.py", line 966, in run_commands
    self.run_command(cmd)
  File "/usr/local/lib/python3.8/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/usr/local/lib/python3.8/site-packages/setuptools/command/develop.py", line 34, in run
    self.install_for_development()
  File "/usr/local/lib/python3.8/site-packages/setuptools/command/develop.py", line 114, in install_for_development
    self.run_command('build_ext')
  File "/usr/local/lib/python3.8/distutils/cmd.py", line 313, in run_command
    self.distribution.run_command(command)
  File "/usr/local/lib/python3.8/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/usr/local/lib/python3.8/site-packages/setuptools/command/build_ext.py", line 79, in run
    _build_ext.run(self)
  File "/usr/local/lib/python3.8/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run
    _build_ext.build_ext.run(self)
  File "/usr/local/lib/python3.8/distutils/command/build_ext.py", line 340, in run
    self.build_extensions()
  File "/usr/local/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 653, in build_extensions
    build_ext.build_extensions(self)
  File "/usr/local/lib/python3.8/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
    _build_ext.build_ext.build_extensions(self)
  File "/usr/local/lib/python3.8/distutils/command/build_ext.py", line 449, in build_extensions
    self._build_extensions_serial()
  File "/usr/local/lib/python3.8/distutils/command/build_ext.py", line 474, in _build_extensions_serial
    self.build_extension(ext)
  File "/usr/local/lib/python3.8/site-packages/setuptools/command/build_ext.py", line 202, in build_extension
    _build_ext.build_extension(self, ext)
  File "/usr/local/lib/python3.8/distutils/command/build_ext.py", line 528, in build_extension
    objects = self.compiler.compile(sources,
  File "/usr/local/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 473, in unix_wrap_ninja_compile
    _write_ninja_file_and_compile_objects(
  File "/usr/local/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 1233, in _write_ninja_file_and_compile_objects
    _run_ninja_build(
  File "/usr/local/lib/python3.8/site-packages/torch/utils/cpp_extension.py", line 1538, in _run_ninja_build
    raise RuntimeError(message) from e
RuntimeError: Error compiling objects for extension
error: subprocess-exited-with-error

× python setup.py develop did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.
full command: /usr/local/bin/python3.8 -c '
exec(compile('"'"''"'"''"'"'
# This is <pip-setuptools-caller> -- a caller that pip uses to run setup.py
#
# - It imports setuptools before invoking setup.py, to enable projects that directly
#   import from `distutils.core` to work with newer packaging standards.
# - It provides a clear error message when setuptools is not installed.
# - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so
#   setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning:
#     manifest_maker: standard file '"'"'-c'"'"' not found".
# - It generates a shim setup.py, for handling setup.cfg-only projects.
import os, sys, tokenize

try:
    import setuptools
except ImportError as error:
    print(
        "ERROR: Can not execute `setup.py` since setuptools is not available in "
        "the build environment.",
        file=sys.stderr,
    )
    sys.exit(1)

__file__ = %r
sys.argv[0] = __file__

if os.path.exists(__file__):
    filename = __file__
    with tokenize.open(__file__) as f:
        setup_py_code = f.read()
else:
    filename = "<auto-generated setuptools caller>"
    setup_py_code = "from setuptools import setup; setup()"

exec(compile(setup_py_code, filename, "exec"))
'"'"''"'"''"'"' % ('"'"'/workspace/YOLOX_OBB_NEW/setup.py'"'"',), "<pip-setuptools-caller>", "exec"))' develop --no-deps
cwd: /workspace/YOLOX_OBB_NEW/

error: subprocess-exited-with-error
× python setup.py develop did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.

Did you install ninja?


vs coad is not running

Type: Feature Request
where as i was new to coading  and i want to learn html so i research and notised that VS COAD is the best way for it.
so i have installed vs coad from microsoft store but it is stil no working.
again i have downloaded from chrome also and installed but same problume i am facing . so PLEASE solve me this issue
VS Code version: Code 1.76.1 (5e805b79fcb6ba4c2d23712967df89a089da575b, 2023-03-08T16:32:00.131Z)
OS version: Windows_NT x64 10.0.22621
Modes:
Sandboxed: Yes

You appear to have opened the root of your D: drive, then asked VS Code to show you what is inside the special "System Volume Information" folder.
I suggest you create an ordinary folder on your D drive, then open that in VS Code.

@Aravindh0359

Please could you create a folder named d:\temp
Go into VS Code and select File -> Open Folder
Select the above folder and click ok
That shoudl work

Closing as this should fix it, if you still run into issues, please let us know and we'll re-open this issue or please feel free to re-open this issue or crteate a new one.


Ignore request whose method is OPTIONS

I always get a KeyError on requests whose method is OPTIONS because before_request(request) is not executed for those requests and request['__START_TIME__'] is not set, I don't think it makes any sense to monitor OPTIONS requests anyways.

Thank you for the fix!


graphViewDebug fails with exception graph.ElementOrder

Many tasks fail with graphViewDebug which generates exception com.google.common.graph.ElementOrder com.google.common.graph.ElementOrder.stable()
Unfortunately it's a private project which I can't share.
Plugin version
1.13.1, but also can be reproduced with 1.0.0-rc01 even when dependency.analysis.old.model=true.
Does not happen on 0.80.0.
Gradle version
7.5.1, but also 7.3 and 7.0.0
(Optional) Android Gradle Plugin (AGP) version
7.3.1
though I suspect this is not related to Android since I can reproduce the error in a pure java library.
Describe the bug
> ./gradlew analytics:projectHeal
Configuration on demand is an incubating feature.
Disabling remote cache because it is set to false

. . .

> Task :analytics:graphViewMain FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':analytics:graphViewMain'.
> 'com.google.common.graph.ElementOrder com.google.common.graph.ElementOrder.stable()'

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.

* Get more help at https://help.gradle.org

BUILD FAILED in 684ms
43 actionable tasks: 1 executed, 42 up-to-date

To Reproduce
./gradlew buildHealth or ./gradlew base:projectHealth or ./gradlew base:reason --id foobar
Where base is an android library.
or ./gradlew analytics:projectHeal --no-daemon
where analytics is a jvm library

@fmatosqg can you provide a stacktrace? A reproducer would also be very helpful.

found the problem!
while looking at the stack trace, realized that this is crashing on a Guava class. And android builds tend to have problems with guava, so I looked further, and found out that the method stable was introduced in a newer version of guava than we're using.
Upgrading it to 31.0 made the crash go away.

Thanks for letting me know! Guava's a real pain (because it's so popular). I have considered shading it for this reason, but it's so huge and I don't want to bloat the plugin binary.


test-helpers: Flesh out empty bytes

Empty bytes from Solidity getters are returned with 2 zeroes, so it’s
better to have them this way to compare.

Maybe let's leave a note; I didn't realize that (and I think I've seen this usually as just 0x)!

For reference, see here:
https://github.com/aragon/aragon-court/blob/development/test/subscriptions/aragon-app-fees-cashier.js#L15
https://github.com/aragon/aragon-court/blob/development/test/subscriptions/aragon-app-fees-cashier.js#L248

@bingen Ohh interesting—what does a call to an empty bytes storage give you? Or is this to be expected because the first byte is the length (0)?
Since we're using this on 0.4.24 and it's a dynamic array, I'm just wondering if this is any different on a 0.5 contract.


ERROR!!!! When I run the converted model , it always got terminate called after throwing an instance of 'std::bad_alloc'   what():  std::bad_alloc

@nerox8664 Hi guys, after successfully getting the converted model, I got the error as following:
Using TensorFlow backend.
2018-06-28 11:24:45.607236: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2018-06-28 11:24:46.300184: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1356] Found device 0 with properties:
name: GeForce GTX 1080 Ti major: 6 minor: 1 memoryClockRate(GHz): 1.62
pciBusID: 0000:88:00.0
totalMemory: 10.91GiB freeMemory: 10.75GiB
2018-06-28 11:24:46.300260: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1435] Adding visible gpu devices: 0
2018-06-28 11:24:46.914014: I tensorflow/core/common_runtime/gpu/gpu_device.cc:923] Device interconnect StreamExecutor with strength 1 edge matrix:
2018-06-28 11:24:46.914079: I tensorflow/core/common_runtime/gpu/gpu_device.cc:929]      0
2018-06-28 11:24:46.914088: I tensorflow/core/common_runtime/gpu/gpu_device.cc:942] 0:   N
2018-06-28 11:24:46.914566: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1053] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 10390 MB memory) -> physical GPU (device: 0, name: GeForce GTX 1080 Ti, pci bus id: 0000:88:00.0, compute capability: 6.1)
/home/wupeng/workshop/fashion-keypoint/venv-kp/local/lib/python2.7/site-packages/keras/models.py:252: UserWarning: No training configuration found in save file: the model was not compiled. Compile it manually.
warnings.warn('No training configuration found in save file: '
('image_path  :', './data/train_0427/Images/dress/ca8b38cc7fb0ce9e35563766d12090b7.jpg')
terminate called after throwing an instance of 'std::bad_alloc'
what():  std::bad_alloc
Aborted (core dumped)

More details. I successfully converted the pytorch model to keras/tensorflow model. And, after I got the converted keras-tensorflow model, I test this as input as input_np = np.random.uniform(0, 1, (1, 3, 384, 384)). The ouput of the  keras-tensorflow model is almost the same as the original pytorch model. However, when I test this  keras-tensorflow model under the images as input, it broke down as following the error as above.
Thanks
Looking forward any replies. @nerox8664 @justasbr
Sincerely

Hello there.
oriImg.shape---0 : (512, 512, 3)
scale : 0.7
imageToTest.shape---> : (358, 358, 3)
imgToTest_padded ---> : (384, 384, 3)

Looks like you try to run CHW model with HWC image. Please, check image dimension ordering and try again.
Furthermore, you can change the model ordering with corresponding converter option.

Ok, I will check it. However, I'm not similar to the tensorflow and keras, and would you mind explaining more details about the following setting：
...
"backend": "tensorflow",
"image_data_format": "channels_first",
...
And，this setting is related to the model ordering ?

as for the fully convolutional network, the size of input is not fixed. And I found that the converted keras-tensorflow model need the FIXED input size, for example, I got the transformed model of the  input_np = np.random.uniform(0, 1, (1, 3, 384, 384)), and keras_model = pytorch_to_keras(pytorch_model, input_var, (3, 384, 384), verbose=False). If I would like to maintain the changeable input character of the fully convolutional network, how can I do that??

@nerox8664
as for the fully convolutional network, the size of input is not fixed. And I found that the converted keras-tensorflow model need the FIXED input size, for example, I got the transformed model of the  input_np = np.random.uniform(0, 1, (1, 3, 384, 384)), and keras_model = pytorch_to_keras(pytorch_model, input_var, (3, 384, 384), verbose=False). If I would like to maintain the changeable input character of the fully convolutional network, how can I do that??

hello @Ai-is-light.
You can check the new version. Models with not specified spatial dimensions are now supported by the converter.


Forbidden URL

I get this error: Error occurred while making the request: 403 Client Error: Forbidden for url: https://replicate.com/api/model…

Nvm saw the other issue


Add MINGW64 to build matrix

I'm interested in cross-platform use, so I added a build for Windows (MSYS2+MINGW) to the build matrix.
I only added the MINGW64 version, but thanks to msys2/setup-msys2 action, it is easy to add support for  x86, clang, and UCRT.
I hope this helps, but if you don't need it, just close the pull request.

Thank you for adding the configuration for Windows to the build matrix.
This pull request is very helpful because I have been wondering how to test on Windows.
I gladly merge this change.


[Grid] Rename Layout to Grid

On hold - I have a bizarre failure on unrelated HiddenJs.spec.js, want to see if it is the same on circleci.

[ ] PR has tests / docs demo, and is linted.
[ ] Commit and PR titles begin with [ComponentName], and are in imperative form: "[Component] Fix leaky abstraction".
[ ] Description explains the issue / use-case resolved, and auto-closes the related issue(s) (http://tr.im/vFqem).

Bizarre results

as-is, HiddenJs.spec in isolation fails
as-is, Grid.spec in isolation succeeds
delete Grid.spec - ALL tests succeed
undelete Grid.spec, HiddenJs.spec fails

It must be a problem with the shallow mount creation, because it fails on HiddenJs.spec even when running that single spec.

test/mocha.opts - removing src/{,**/}*.spec.js makes the isolated file running work.  finally  getting closer.
050a59f

I'm unclear on the changes you want.

I would 💯 rather see the default property on the top level API Hidden and not on the implmentations
Default props are on the top level, and the implementation level.  Are you saying omit them from HiddenJs?

I think that HiddenJs should have required properties.
Yes it should have at least one of the breakpoint/only props.  Should I handle that with an invariant violation?

I'm unclear on the changes you want.

My point is that I think that it's better to have the exposed API handling the default properties (Hidden in our case) and the internal component (HiddenJs in our case) depending on properties behind always present. In order to implement that, we need to remove the cyclic dependency. What do you think?

I'm trying to clear that out right now.  Agree that we aren't intending to expose HiddenJs for direct use.  I'm not sure that will clear up the test issue, but I'll try and it will ultimately be more clear.
How do you suggest validating one of 14 properties is present?

I'm suggesting to remove those two lines and to move the logic in the parent component.

Agreed, just thought you also wanted one of these validated: https://github.com/callemall/material-ui/blob/next/src/Hidden/HiddenJs.js#L23-L33

So I managed to provide some better clarity in the Hidden component, unfortunately now tests don't run with or without my workaround in mocha.opts and karma.tests.js.
@oliviertassinari do you spot anything wrong with my code?

Finally figured out I didn't need two dive(s), whereas I did before.
This should be good to merge once automated tests pass.


Make JLed::Update(uint32_t t) public

See #129

coverage: 98.377% (+0.006%) from 98.371%
when pulling 92e497142267346895f9be7ed166ae5d8a1b4865 on make_update_public
into 1c79299395a5f41efd443acb8eb7111bd1930376 on master.


API RH & PyTest & README & Crontab

next time will be separated

Important to mention: API_FB PyTest removed due to work time of Facebook engineers and the PyTest was static.
Due to the lack of time, it been removed

Important to mention: API_FB PyTest removed due to work time of Facebook engineers and the PyTest was static.
Due to the lack of time, it been removed

I think it came from my last pull, I didn't use this file

I think it came from my last pull, I didn't use this file


Support multiple outbound ports instead of only one 15001 to avoid local source port exhaustion

We hit an issue that the application has very high cps, >1000 cps. It's tcp traffic and intercepted by the outbound listener. But since there is only one port for the outbound listener, it freqently exhausted the local source port.
Here is the local_port_range:
kubectl  exec apppod -n appns -c istio-proxy -- bash -c "sysctl net.ipv4.ip_local_port_range"
net.ipv4.ip_local_port_range = 32768      60999

And since only one outbound port 15001, the 5 tuple is about 28000 so the maximum cps is about 28000/60s =466 cps, the 60s here is the TIME_WAIT configured which means with 466 cps the local source port will be exhausted within 1m.
There are several options to optimize:

Change the client to reuse connection
Increase the local_port_range
Reduce the TIME_WAIT duration or enable tcp_tw_reuse

From istio pespective, is it possible to add more outbound ports to support higher cps?
[ ] Ambient
[ ] Docs
[ ] Dual Stack
[ ] Installation
[ x] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

Multiple outbound ports is tricky due to our iptables rules....are you saying the sidecar isn't reusing/pooling connections to the same 5-tuple?

Multiple outbound ports is tricky due to our iptables rules....are you saying the sidecar isn't reusing/pooling connections to the same 5-tuple?

The problem is not sidecar to upstream but the application to sidecar and there is no reusing/pooling in the application side.
For this case all the application outbound connections will be hijacked to <IP_ADDRESS>:15001, so there is only one destinations ip/port, it is easily get source port exhaustion issue because of the local port range is from 32768 to 60999. Once the application has a high outbound CPS (470c/s), the local port will be used up and the tcp connection between app and sidecar will fail.
$cat /proc/sys/net/ipv4/ip_local_port_range
32768    60999

The TCP time_wait duration is 60s. So the max allowed CPS is about  (60999-32768)/60=470

For now we changed the client to use keep alive but there is potential issue with single outbound port.

Related issue https://github.com/istio/istio/issues/38982 which is between gateway and sidecar.


Fixed unit test for address_de

Test was not actually testing address_de. Fixed and added test for zip_code as well.

Small change. I noticed it while adding the address_ca extension.

txs.


Uncomment and update double restage test to align with other tests

Rebased to latest next branch

Cherry-picked to main and changed target branch to main.


[MM-12149] Add border to image of link preview and not allow such image width to exceed the view port width

Summary
With all white PNG image from link preview and theme of white background, the image is hidden and makes a significant space on link preview.
Discussion on pre-release: https://pre-release.mattermost.com/core/pl/ytqicfj99tngf8dd6wq5ugcmkr
Solution is to add border to image of link preview.
This PR also includes:

not allowing such image width to exceed the view port width
set border radius of 3 pixel to link and image preview containers

Ticket Link
Jira ticket: MM-12149
Checklist

[x] Added or updated unit tests (required for all new features)
[x] Has UI changes

Device Information
This PR was tested on: [iOS simulator and Android emulator]
Screenshots

Done cherry pick to release-1.13.


Redirect HTTP to HTTPS for WebUI

This PR adds a 301 redirect that tells users connecting on port 80 (HTTP) that there is an HTTPS endpoint and redirects.

Confirmed working. h/t @armab and @dennybaa


php script not working

Hi,
I was trying to setup your tool for analyzing the NPS logs. After i execute the PHP i just see the command
[+ ]added 1602 and nothing happens
When i query the DB, it does not show any records. Please help me out.

Hello!
Check the error log of your influxDB. The script might have problems with names with spaces in them.
On debian the log should be under /var/log/influxdb/error.log

Hi,
There is  no error.log created. However i see these lines in influxdb;log
[wal] 2016/02/25 17:14:42 Flush due to idle. Flushing 8 series with 8
points and 460 bytes from partition 1
[wal] 2016/02/25 17:14:42 write to index of partition 1 took 23.824436ms
Kindly help me out.
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:04 PM, Christian Haschek<EMAIL_ADDRESS>
wrote:

Hello!
Check the error log of your influxDB. The script might have problems with
names with spaces in them.
On debian the log should be under /var/log/influxdb/error.log
—
Reply to this email directly or view it on GitHub
https://github.com/chrisiaut/influxdb_radius_analyzer/issues/2#issuecomment-188743526
.

Okay nothing suspicious here. Make sure the data is really sent to the server. You can use tcpdump on the linux box to verify that.

Hi,
When i do a a netstat -an on the server i see that the service is running
as udp6 instead of udp. Is that OK?
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:27 PM, Christian Haschek<EMAIL_ADDRESS>
wrote:

Okay nothing suspicious here. Make sure the data is really sent to the
server. You can use tcpdump on the linux box to verify that.
—
Reply to this email directly or view it on GitHub
https://github.com/chrisiaut/influxdb_radius_analyzer/issues/2#issuecomment-188753278
.

yes that's ok
try it with tcpdump udp port <your udp port>
then start the php script and check if data is transmitted

Hi,
I see these
17:49:16.631405 IP trdxsrv31.toradex.int.54737 >
ittools-blr.toradex.int.8090: UDP, length 117
17:49:16.632201 IP trdxsrv31.toradex.int.54738 >
ittools-blr.toradex.int.8090: UDP, length 109
But it is not writing into the database.
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:47 PM, Christian Haschek<EMAIL_ADDRESS>
wrote:

yes that's ok
try it with tcpdump udp port
then start the php script and check if data is transmitted
—
Reply to this email directly or view it on GitHub
https://github.com/chrisiaut/influxdb_radius_analyzer/issues/2#issuecomment-188757824
.

Hi,
These are my settings
define('IMPORT_OLD',false);
define('USERADIUSTIME',true);
define('PATH',"C:\Windows\System32\LogFiles\IN");
define('DBNAME','radius');
define('DBIP','<IP_ADDRESS>');
define('DBPORT',8090);
define('ONLYNEWDATA',true);
The log files are under c:\windows\system32\LogFiles
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:47 PM, Christian Haschek<EMAIL_ADDRESS>
wrote:

yes that's ok
try it with tcpdump udp port
then start the php script and check if data is transmitted
—
Reply to this email directly or view it on GitHub
https://github.com/chrisiaut/influxdb_radius_analyzer/issues/2#issuecomment-188757824
.

the new version now sanatizes strings before sending to influx, had problems with that before

Hi,
I tried to setup your tool again. When i run the command php
.\analyze_influx.php
I get this error
Warning: filesize(): stat failed for
C:\Windows\System32\LogFiles\IN1609.log in
C:\influxdb_radius_analyzer-master\analyze_influx.php on line 61
I am attaching the file for your reference. Please help me out
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:54 PM, Krishna MS<EMAIL_ADDRESS>wrote:

Hi,
These are my settings
define('IMPORT_OLD',false);
define('USERADIUSTIME',true);
define('PATH',"C:\Windows\System32\LogFiles\IN");
define('DBNAME','radius');
define('DBIP','<IP_ADDRESS>');
define('DBPORT',8090);
define('ONLYNEWDATA',true);
The log files are under c:\windows\system32\LogFiles
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:47 PM, Christian Haschek <
<EMAIL_ADDRESS>wrote:

yes that's ok
try it with tcpdump udp port
then start the php script and check if data is transmitted
—
Reply to this email directly or view it on GitHub
https://github.com/chrisiaut/influxdb_radius_analyzer/issues/2#issuecomment-188757824
.

Hi,
FYI
The program gives the above error and runs into a infinite loop.
Regards,
Krishna M S
On Thu, Sep 1, 2016 at 3:11 PM, Krishna MS<EMAIL_ADDRESS>wrote:

Hi,
I tried to setup your tool again. When i run the command php
.\analyze_influx.php
I get this error
Warning: filesize(): stat failed for C:\Windows\System32\LogFiles\IN1609.log
in C:\influxdb_radius_analyzer-master\analyze_influx.php on line 61
I am attaching the file for your reference. Please help me out
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:54 PM, Krishna MS<EMAIL_ADDRESS>wrote:

Hi,
These are my settings
define('IMPORT_OLD',false);
define('USERADIUSTIME',true);
define('PATH',"C:\Windows\System32\LogFiles\IN");
define('DBNAME','radius');
define('DBIP','<IP_ADDRESS>');
define('DBPORT',8090);
define('ONLYNEWDATA',true);
The log files are under c:\windows\system32\LogFiles
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:47 PM, Christian Haschek <
<EMAIL_ADDRESS>wrote:

yes that's ok
try it with tcpdump udp port
then start the php script and check if data is transmitted
—
Reply to this email directly or view it on GitHub
https://github.com/chrisiaut/influxdb_radius_analyzer/issues/2#issuecomment-188757824
.

Well have you checked that the file ```C:\Windows\System32\LogFiles\IN1609.log````exists?

Hi,
I need a help from you. I downloaded the php file and tried to execute it.
The program executes well
However it does not close the Window. Is there a way to fix this problem. I
am running this on Windows 2012 R2 server with PHP 7.
Thank you
Regards,
Krishna M S
On Thu, Sep 1, 2016 at 3:18 PM, Krishna MS<EMAIL_ADDRESS>wrote:

Hi,
FYI
The program gives the above error and runs into a infinite loop.
Regards,
Krishna M S
On Thu, Sep 1, 2016 at 3:11 PM, Krishna MS<EMAIL_ADDRESS>wrote:

Hi,
I tried to setup your tool again. When i run the command php
.\analyze_influx.php
I get this error
Warning: filesize(): stat failed for C:\Windows\System32\LogFiles\IN1609.log
in C:\influxdb_radius_analyzer-master\analyze_influx.php on line 61
I am attaching the file for your reference. Please help me out
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:54 PM, Krishna MS<EMAIL_ADDRESS>wrote:

Hi,
These are my settings
define('IMPORT_OLD',false);
define('USERADIUSTIME',true);
define('PATH',"C:\Windows\System32\LogFiles\IN");
define('DBNAME','radius');
define('DBIP','<IP_ADDRESS>');
define('DBPORT',8090);
define('ONLYNEWDATA',true);
The log files are under c:\windows\system32\LogFiles
Regards,
Krishna M S
On Thu, Feb 25, 2016 at 5:47 PM, Christian Haschek <
<EMAIL_ADDRESS>wrote:

yes that's ok
try it with tcpdump udp port
then start the php script and check if data is transmitted
—
Reply to this email directly or view it on GitHub
https://github.com/chrisiaut/influxdb_radius_analyzer/issues/2#issuecomment-188757824
.


Setting the Developer Payload on Purchase.

Hi There,
I am attempting to write server validation taking guidance from this.
Jonathan sets a developer payload parameter in the article into his native Buy method.
As I am using InAppBillingPlugin directly and not invoking natively I cannot see an overload or way to set the developer payload object when Purchasing a subscription.
The documentation here mentions that it can be done.
Please could an example be provided?
Thank you.

These are no longer used, see -> https://developer.android.com/google/play/billing/developer-payload


Assorted fixes

Just a bunch of little fixes I've been accumulating.

I've merged in the commit from #423 as well.

Is this meant as master only?

@levitte I fixed all the issues locally, but I can 't currently push to GitHub (again...). I'll do it later.

Is this meant as master only?

They are all pretty simple fixes, so backporting them shouldn't be difficult. I can open new PRs for 1.0.2 and 1.0.1 if needed.

Backporting is usually the matter of a cherry pick and perhaps one or two small conflicts to resolve.  However, I usually want to know the intent of a pull request, hence my question.

Ah ok. While they are all pretty small issues, I think they'd be worth backporting to at least 1.0.2.
I was also looking at the bugs/ directory, does it have any use? I think it can be removed along the other useless code.

I also just pushed the fixes for your comments.

There's also crypto/threads/ which doesn't seem to be used at all.

So I went ahead and removed bugs/ and crypto/threads/ as well. I left that in a separate commit though, so it can be easily discarded if you want.
I also have another patch that removes the remaining FIPS code (~500 lines) but I don't know if you want to get rid of that as well.

Actually, the removal of bugs/ and crypto/thread/ is something that I'd like to keep in master only, so ideally it should be in a different pull request.

Ok, I moved that commit to #448.

+1 as it stands now

+1 from me too.  you want to commit/push?  let me know if you want me to do it.  (i agree master and 1.0.2)

I'll do it...  and if we're backporting to 1.0.2, there's no reason whatsoever not to backport to 1.0.1.

Pushed on master, 1.0.2 and 1.0.1

Since this has been merged, RT#4090, RT#4081 and RT#4068 can be closed now.


Remove the use of deprecated BroadcastChannel.

Description
It seems like the BroadcastChannel is completely deprecated in the newest
Kotlin, so.. getting rid of it.
It is effectively a refactoring as it touches only the test code.
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)
[ ] This change requires a documentation update

Test Plan
Just run the current tests.
Checklist:
Before submitting your PR, please review and check all of the following:

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my change is effective
[x] New and existing unit tests pass locally with my changes

Additional Notes:
Add any other information about the PR here.

This PR still tells me that it needs a review.. Do I need to do anything to make it happen?


Background color cannot be changed

Description
The background color cannot be changed
Steps to reproduce

Go to http://leonardocolor.io
Click on Create new theme
Observe the default Color scale "Gray"
Observe the tab "Theme colors" is selected
Observe the palette generated from the color scale Gray
Observe the Background color cannot be changed
Click on the "Theme Settings icon"
Click on "Background color"
Observe only "Gray" is available to select
If you add more colors to the Color scale, selecting those colors as the Background color does not change anything.

Expected behavior
The Background color should have the option to input a custom color value.
Nothing happens when you click on it except copying the current value (#FFFFFF) to clipboard.
Screenshots

Environment
MacBook Pro M1 (16-inch, 2021)
MacOS 12.4
Version 100.0.4896.127 (Official Build) (arm64)
Additional context
N/A

@markjharvey a few things could be happening here:

When the background lightness is set to 100% in the settings menu, regardless of which color scale is selected, the color will always be white (#ffffff). Changing the background lightness to less than 100% will show more color when another scale is selected.
Clicking on the square labeled "background color" in the main area of the page will copy the value: those are output colors generated based on the settings you have set.

Some of these details are demonstrated in this introductory video for creating themes: https://youtu.be/d-i18M384Bo
Hope this helps

@NateBaldwinDesign How do I change the Background color to black #000000?

The "background color" picker selects which color scale to use for a background. Backgrounds are dynamic, just as with everything else, so you can adjust lightness (this helps for creating light and dark mode themes)

Choosing different scales will change the background color appearance. Lightness of the background is independent and determined via the "lightness" slider.

To make the background black, slide the "lightness" to zero

@NateBaldwinDesign Thank you so much for that explanation. I can see now I just did not understand how to use this. My fault and thanks again for clarifying.
Perhaps I should create an issue for a feature request, a plain "White" and "Black" option in that dropdown. Maybe it disables the other sliders? I'm not sure exactly and don't want to solution. Just a way to explicitly say "Make the background white/black"

It's no problem @markjharvey! These are good points. There is some difficulty using the tool and it could be improved to help these types of problems.

@NateBaldwinDesign I just tested this in a few browsers as I had been experiencing the same issue, and the bg theme color does not work in Firefox. I tested Chrome, Edge, Brave, and Firefox (only the last one produces this issue) on Win 11.

@NateBaldwinDesign I just tested this in a few browsers as I had been experiencing the same issue, and the bg theme color does not work in Firefox. I tested Chrome, Edge, Brave, and Firefox (only the last one produces this issue) on Win 11.

Did you try adjusting the lightness slider? No matter which theme you have selected, if the lightness slider is 0% or 100%, it will be black or white. To get the color selected in the theme, you have to adjust the lightness.

+1 that I also thought I could click the background color chip and set a different hex as the background
I don't prefer to use arbitrary sliders. We already have fixed hex values we're using for backgrounds, so I want to generate a palette using those specific values


optimize

1.add getSettings func for external access.
2.add translation of context menu button‘s title.
3.add id property to file item if server supply.
4.autofocus input control when new file window is shown.
5.when server response content is json then not to parse it, but use it directly.

@papaofradeon what is your logic or ideal to put an id in the input
var id = element.id;

               if(id != undefined)

                   el.find('div.check input[name=check]').attr('data-id',id);

generally in file system the path and name of file can identify unique file, not need the id, but my business allow multiple user have the same name of file in the same path and maybe view in one list，so i add it to distinguish it simply.

在 2017年8月11日，12:25，Guillermo<EMAIL_ADDRESS>写道：
@papaofradeon https://github.com/papaofradeon what is your logic or ideal to put an id in the input
var id = element.id;
           if(id != undefined)
               el.find('div.check input[name=check]').attr('data-id',id);

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/guillermomartinez/filemanager-ui/pull/6#issuecomment-321729644, or mute the thread https://github.com/notifications/unsubscribe-auth/AExQyGtg8BWj-_k8oNBQqgbMlRogv_osks5sW9eqgaJpZM4OskNw.


Add NewConfigMapWatcher for mesh config

As part of #27707. The intent is that this will be used when a local file isn't provided
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[X] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
[X] Does not have any changes that may affect Istio users.

@tbarrella: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio
f50e07ff7f310e81bcf2350f926179725d3ce48f
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@tbarrella: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio
f50e07ff7f310e81bcf2350f926179725d3ce48f
link
/test unit-tests_istio

lint_istio
f50e07ff7f310e81bcf2350f926179725d3ce48f
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


test: API check constantly failing on arm5 builder

The linux-arm-arm5spacemonkey  is no longer failing on locklinear (#24221); but it's now constantly failing on the API check test: https://build.golang.org/log/13e8623c9799ad7ac18b10d8e7b51997062bd5cf
The error says:

Go version is "builder host-linux-armel-cross", ignoring -next /home/builder/stage0scratch/workdir/go/api/next.txt

It appears that runtime.Version() is not returning a string of the expected form (devel ...) (?)
cc @bradfitz

Ops, dup of  #24754. Closing.


Add wiki back

Add the wiki back. Links on the sidebar don't "load" the page, so don't merge this in yet.

Tracked down the issue, the router on this line doesn't has a push method.

I tried finding what you would use instead but it seems that it should be this.$router.push() so... ¯_(ツ)_/¯

We also get this nice console error and the article doesn't load at all:

Maybe we should just use window.open in all cases?

Nuxt is using Vue Router so there must be an internal method we can use. Using the browser methods will force a page reload which is not what we want (I realise now that I was doing this previously and is not the best method).

Ok, I think I got it tracked down, this is only called client-side, but not server-side.

We might be able to use a middleware, but I don't think we can run the method from one

I think I got it. It are the foo?.bar things in store/index.js, no idea what these actually do tough

Oh, that's called "optional chaining", it's only supported in Node version 14 so you will need to update your Node by the sounds of it.

Applying @babel/plugin-proposal-optional-chaining seems to fix the the issue.

Ok, so I think I got a (half) working thing (finally! :tada:).
I query the raw contents of the files from GitHub periodically in a server middleware.
Then I fetch these saved contents using a fetch action from nuxt and then display them by doing a render inline.

Superseded by #283


[Feat] Pasting multiple URL's at once

Would it be possible to replace all the URL's when pasting instead of just 1 link at a time? Maybe this could just be a special command to avoid delays.

Yes, that would be great.

I really need this feature, especially when I have more than 100 URLs in one page that need to be updated.

This keyboard maestro macro will do it.
Requires Advanced URI plugin. Youll need to change the found image to match your own.
Fetch All URL titles.kmmacros.zip

Requesting this as well. Crucial plugin for anyone who has to work with listing many urls, like for people who use Obsidian as a bookmarking database.


Validation Improvements

Some more improvements to the share validation process. See commit messages for more details.

Looks good! Thanks!


slideBy ignored when using goTo (prev/next)

When using the goTo method with prev or next, the slideBy count is ignored. Is there a way to replicate how this works with the native prev/next buttons?
Example: https://codepen.io/darby/pen/XaYzbp

The goTo method is designed to go to exact slide, so the keywords "prev/next" will just go previous/next slide.
You could replicate the native prev/next buttons functions using controlsContainer option, which wraps around the customized prev/next buttons.

My issue really is that I want to use custom markup for the controls though. My personal preference is to not target data attributes for the controls or slides, I'd rather keep it consistent with the BEM naming methodology I've used in my project...
It still seems strange to me that goTo method for prev/next go to the next slide, whereas the native buttons respect the slideBy page option. Are you sure this is correct behaviour? I would expect them to be the same really.

Hmm, maybe you're right.
"prev/next" for the "goTo" function should work the same way as the native ones.
Thanks for your feedback. I will update this and let you know.

Fixed in v2.1.3,
Could you check?

Top job.


Work for cells

Hi, can this be used for cells in a collection view? Or is it something you could add at some time?
Thanks :)

Trying to do the same thing @dkcas11


Chinese garbled characters

In XAML documents, different writing styles will display different content

As shown in the figure, the second content displays an error and is not in Chinese

I don't think this is anything to do with Style? I suspect you will have the same issue in a plain WPF project without Stylet.

抱歉，我刚刚在项目里把stylet删了，又显示正常了，如图所示，我的stylet版本是1.3.4，.NET4.5.2
I hope you can try multiple times
The code is as follows:
        <Label
            Grid.Row="7"
            Grid.Column="0"
            Content="直门" />
        <TextBox
            Grid.Row="7"
            Grid.Column="1"
            Text="直门-_" />
------------------ 原始邮件 ------------------
发件人: "Antony @.>;
发送时间: 2024年6月17日(星期一) 下午3:46
收件人: @.>;
抄送: @.>; @.>;
主题: Re: [canton7/Stylet] Chinese garbled characters (Issue #392)
I don't think this is anything to do with Style? I suspect you will have the same issue in a plain WPF project without Stylet.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

Stylet does not do anything which might affect how a Label or TextBox works. I can't see how this can possibly be a problem with Stylet.

抱歉，我已经找到原因了，是metro引用资源文件的原因，感谢你的耐心回答~
------------------ 原始邮件 ------------------
发件人: "Antony @.>;
发送时间: 2024年6月17日(星期一) 下午4:35
收件人: @.>;
抄送: @.>; @.>;
主题: Re: [canton7/Stylet] Chinese garbled characters (Issue #392)
Stylet does not do anything which might affect how a Label or TextBox works. I can't see how this can possibly be a problem with Stylet.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

I'm glad you fixed it!


dictdDBs.wiktionary: 20210920 -> 20211001

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for dictdDBs.wiktionary is: "DICT version of English Wiktionary"
meta.homepage for dictdDBs.wiktionary is: "https://en.wiktionary.org/"
meta.changelog for dictdDBs.wiktionary is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 20211001 in filename of file in /nix/store/isbgp9brx68cmhbg4qrpxk5r834fvki4-dict-db-wiktionary-20211001

directory tree listing: https://gist.github.com/a0ed046374c49344dffb458359501944

du listing: https://gist.github.com/4c1faa3304c74118b6c4afe6a1d23beb

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
dictdDBs.wiktionary

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/isbgp9brx68cmhbg4qrpxk5r834fvki4-dict-db-wiktionary-20211001 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A dictdDBs.wiktionary https://github.com/r-ryantm/nixpkgs/archive/53f4b8574014aa7dc695e5d375547f403a752f9e.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/isbgp9brx68cmhbg4qrpxk5r834fvki4-dict-db-wiktionary-20211001
ls -la /nix/store/isbgp9brx68cmhbg4qrpxk5r834fvki4-dict-db-wiktionary-20211001/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

dictdDBs.wiktionary

Maintainer pings
cc @alyssais for testing.

Let the bot pick up newer version


HIVE-27174 : Disabled sysdb.q

What changes were proposed in this pull request?
Disabled sysdb.q test. The test is failing because of diff in BASIC_COLUMN_STATS json string.
Client Execution succeeded but contained differences (error code = 1) after executing sysdb.q
3803,3807c3803,3807
< COLUMN_STATS_ACCURATE org.apache.derby.impl.jdbc.EmbedClob@125b285b
< COLUMN_STATS_ACCURATE org.apache.derby.impl.jdbc.EmbedClob@471246f3
< COLUMN_STATS_ACCURATE org.apache.derby.impl.jdbc.EmbedClob@57c013
< COLUMN_STATS_ACCURATE org.apache.derby.impl.jdbc.EmbedClob@59f1d7ac
< COLUMN_STATS_ACCURATE org.apache.derby.impl.jdbc.EmbedClob@717777a0
—

COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"c_boolean":"true","c_float":"true","c_int":"true","key":"true","value":"true"}}
COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"c_boolean":"true","c_float":"true","c_int":"true","key":"true","value":"true"}}
COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}}
COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":{"key":"true","value":"true"}}
COLUMN_STATS_ACCURATE {"BASIC_STATS":"true","COLUMN_STATS":

Why are the changes needed?

There is no issue in the test. The current code prints the COL_STATS as an Object instead of a json string. Not sure why is this case. Tried a lot of ways but seems like this is not fixable at the moment. So, disabling it for now. Note that, in Hive 3.1.3 release this test was disabled so there should not be any issue in disabling it here.
Does this PR introduce any user-facing change?

NO
How was this patch tested?

Jenkins pipeline
Created a followup ticket to fix this test that can be taken up later - HIVE-27057 Test fix for sysdb.q - ASF JIRA (apache.org)

@vihangk1 I have tried a lot of ways in my local but this test does not seem fixable from my side. If possible you can give it a try otherwise we can disable this test in branch-3. Note that this test was already disabled in Hive-3.1.3 release branch. Also there is no problem in the test, it is just the diff between printing the object and the actual json string.

Did you try to understand why this works on master v/s branch-3? I spent some time on this and I was able to narrow this failure down to HIVE-21741 using git bisect. Trying to understand why this works on master v/s branch-3.

@vihangk1 I see that in this #HIVE-21741, there were some changes related to INDEX_PARAMS from varchar to Clob. My hunch is that somewhere because of that this issue comes. Any luck from your side.

Hi @amanraj2520 Sorry for the delay in response, I was out of town. I tried to debug it and from what I see, the class name is  being returned by the jdbc ResultSet itself when we query the PARAM_VALUE using the JDBC Storage Handler. I don't see why the master branch gives the string value and branch-3 gives the class name.
I think instead of reverting those patches, we should disable this test for now and follow up in a separate ticket to determine if this should block 3.2. or not. I am okay merging this PR instead of reverting the offending commits in this case because those are important fixes to have.

Sure @vihangk1 . Will close the revert test. One thing is we will still need https://github.com/apache/hive/pull/4157. This fixes a different issue in sysdb.q. If you go to the original sysdb.q test failure, you will observe these extra differences on top of BASIC_STATS difference. We need to backport this ticket for them.

https://issues.apache.org/jira/browse/HIVE-27057 Created this ticket to followup on this test fix

Thanks @amanraj2520


ternary expression in jsx doesn't work properly

{condition?
  <Component>
    <input />
  </Component>
  :
  null
}

doesn't render <Component> properly but only <input /> if condition is truthy.

Does this work with the standard vdom functions or if you write out using
the exposed Incremental DOM functions? If so, the issue probably lies with
the Babel plugin.
On Fri, 26 Aug 2016, 17:15 Steve Mao<EMAIL_ADDRESS>wrote:

{condition?

:
null
}
doesn't render <Component> properly but only <input />
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/skatejs/skatejs/issues/749, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAIVbG4KBKjT9lGM1J3pC-5uOkbdHtmrks5qjpKsgaJpZM4JtzfF
.

Sorry @treshugart , I didn't put enough details but I'd forget this :) I think this is a regression introduced recently cos it was working before. I'll give more information soon.

Ok, I just know we've had issues in the past. Switching to functions fixed things while using the JSX transformer broke things.

Interesting observation - it works better if you use empty strings, i.e.:
{condition?
  <Component>
    <input />
  </Component>
  :
  ''
}

Somehow it makes it better (maybe a TextNode is created in its place?)

I can't reproduce my original issue anymore. The dependency is pinned so I didn't install a different dependency. but I have upgraded my chrome to 53. I don't know if that's the reason.

One scenario I had was ultimately due to https://github.com/tmorin/idomizer/issues/2. I'm going to close this issue, but will re-open if someone can provide a reproduction case.


Add files via upload

girlface-gianna

This is really good. I was a bit surprised with the result after reading the code. The girl's face is a bit spooky to me. Not sure if that was intentional but the piece works.
Congrats, you've earned you Blot. You can order it here.


Deprecate usage of electron-packager

As electron-vue has grown over the past year, it has become apparent that the advanced usage of webpack, asset handling, and dependency management has become too troublesome to handle with the simple setup of electron-packager.
electron-builder on the other hand is able to handle all of the above features and go beyond those if needed. In the end, the benefits here just don't compare to electron-packager like they once did in the past.
Related: https://github.com/SimulatedGREG/electron-vue/pull/292

#310 Electron-webpack can be used with any package tool, but only electron-builder allows you to copy files on the fly and construct any dist out as you want. In the future electron builder will use webpack in memory fs to build project directly to asar archive.


Flutter [Web] [Android] FilterChip spacing on Android & ios browser

Hi,
FilterChips with both the HTML and CanvasKit renderer appear to be having extra vertical spacing in Android and ios web.
Expected as seen in Windows, IpadOS :

Actual in Android latest Chrome and Opera Galaxy S20:

minimal code sample
import 'package:flutter/material.dart';
import 'package:universal_html/html.dart' as universal_html;

void main() {
  runApp(const MyApp());
}

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

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    bool? check = universal_html.document.body?.getAttribute("flt-renderer")?.contains("html");
    String renderer = check != null && check ? 'HTML' : (check != null && !check ? 'Canvas' : 'N/A');

    return MaterialApp(
      title: renderer + ' renderer',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(title: renderer + ' renderer'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;
  List<String> data = [];

  @override
  Widget build(BuildContext context) {
    for (int a = 0; a < 30; a++) {
      _counter++;
      data.add('Test' + _counter.toString());
    }

    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          children: [
            const Text('REFERENCE SIZE'),
            Wrap(
                spacing: 4,
                runSpacing: 0,
                children: data.map((_) {
                  return Text(_);
                }).toList()),
            Wrap(
                spacing: 4,
                runSpacing: 0,
                children: data.map((_) {
                  return FilterChip(
                    label: Text(_),
                    onSelected: (value) {},
                  );
                }).toList()),
          ],
        ),
      ),
    );
  }
}

flutter doctor
[√] Flutter (Channel master, 2.6.0-1.0.pre.238, on Microsoft Windows [Version 10.0.17763.2114], locale en-IE)
    • Flutter version 2.6.0-1.0.pre.238 at C:\Code\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 53e851162e (9 hours ago), 2021-09-10 01:37:42 -0400
    • Engine revision 825c409164
    • Dart version 2.15.0 (build 2.15.0-93.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at C:\Users\Omega\AppData\Local\Android\sdk
    • Platform android-30, build-tools 30.0.3
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6842174)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • CHROME_EXECUTABLE = C:\Code\FlutterTesting\ChromeCORS.bat

[√] Android Studio (version 2020.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6842174)

[√] VS Code (version 1.60.0)
    • VS Code at C:\Users\Omega\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.26.0

[√] Connected device (2 available)
    • Chrome (web) • chrome • web-javascript • Google Chrome 93.0.4577.63
    • Edge (web)   • edge   • web-javascript • Microsoft Edge 92.0.902.73

• No issues found!

For now wrapping in a SizedBox seems to be a workaround:
SizedBox(
  height: 30,
  child: FilterChip()
)

�

Hi @zambetpentru, Thanks for filing the issue, I am able to reproduce the issue the Runspacing is the extra spacing on IOS and Android (also web) than desktop and web. This issue also occurs when using Chip instead of FilterChip

code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

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

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    String renderer = ' Unknown';

    return MaterialApp(
      title: renderer + ' renderer',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(title: renderer + ' renderer'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;
  List<String> data = [];

  @override
  Widget build(BuildContext context) {
    for (int a = 0; a < 30; a++) {
      _counter++;
      data.add('Test' + _counter.toString());
    }

    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          children: [
            const Text('REFERENCE SIZE'),
            Wrap(
                spacing: 4,
                runSpacing: 0,
                children: data.map((_) {
                  return Text(_);
                }).toList()),
            Wrap(
                spacing: 4,
                runSpacing: 0,
                children: data.map((_) {
                  return FilterChip(
                    label: Text(_),
                    onSelected: (value) {},
                  );
                }).toList()),
          ],
        ),
      ),
    );
  }
}

Output

Web desktop
MacOS Desktop

IOS Web
IOS App

Android Web
Android App

flutter doctor -v
[✓] Flutter (Channel stable, 2.5.0, on macOS 11.5.2 20G95 darwin-arm, locale en-GB)
    • Flutter version 2.5.0 at /Users/mahesh/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 4cc385b4b8 (5 days ago), 2021-09-07 23:01:49 -0700
    • Engine revision f0826da7ef
    • Dart version 2.14.0

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5.1, Build version 12E507
    • CocoaPods version 1.10.2

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

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 60.1.4
    • Dart plugin version 212.5080.8

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

[✓] Connected device (4 available)
    • Redmi K20 Pro (mobile) • d9dac45d                             • android-arm64  • Android 11 (API 30)
    • iPhone 12 Pro (mobile) • B622CBB7-F906-4FA7-8F49-FACEAAC905AB • ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-5
      (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 11.5.2 20G95 darwin-arm
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 93.0.4577.63

• No issues found!

[✓] Flutter (Channel master, 2.6.0-1.0.pre.103, on macOS 11.5.2 20G95 darwin-arm, locale en-GB)
    • Flutter version 2.6.0-1.0.pre.103 at /Users/mahesh/Documents/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 2c30b252a5 (2 weeks ago), 2021-08-27 23:26:03 -0400
    • Engine revision ca52647cd2
    • Dart version 2.15.0 (build 2.15.0-65.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.5.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.10.2

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

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 60.1.4
    • Dart plugin version 212.5080.8

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

[✓] Connected device (4 available)
    • Redmi K20 Pro (mobile) • d9dac45d                             • android-arm64  • Android 11 (API 30)
    • iPhone 12 Pro (mobile) • B622CBB7-F906-4FA7-8F49-FACEAAC905AB • ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-5
      (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 11.5.2 20G95 darwin-arm
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 93.0.4577.63

• No issues found!

Android
IOS
MacOs
Web

❌
❌
✅
✅

✅ : No Issue ❌: Issue reproduced

Hello !
I think I just found the solution here : https://stackoverflow.com/questions/77630019/flutter-filter-chips-in-wrap-has-odd-spacing-on-web
It looks like the guilty FilterChip parameter is materialTapTargetSize which "default value is MaterialTapTargetSize.padded on mobile platforms and MaterialTapTargetSize.shrinkWrap on others."

Thanks @Steph3101 that works well!


Add --all-features to Rust Analyzer flags

This stops rust-analyzer from building the web viewer, since crates/re_web_viewer_server/build.rs checks the __ci feature
Checklist

[x] I have read and agree to Contributor Guide and the Code of Conduct

Btw, this still works:
rm web_viewer/*.wasm
touch crates/re_viewer/src/lib.rs
cargo r -p rerun --all-features -- ../objectron.rrd --web-viewer

that's because --all-features here means all features of the rerun crate. Only when there is no -p/--project argument will --all-features matter (or when using it with -p re_web_viewer_server


[5.3][SourceKit] Fix issue where CompletionCheckDependencyInterval is set to 0 when the global config request is sent

master: https://github.com/apple/swift/pull/33198

Explanation: Fast completion mode was intended to check dependencies after a delay, to avoid doing lots of I/O stat calls for every completion invocation. But by mistake the delay was unintentionally set to '0' when a 'global config' request is sent by the client, meaning this default optimization for delaying the I/O checks is not enabled when using completion in Xcode.
Scope: SourceKit completion
Risk: Very low. Simple targeted fix.
Testing: Added regression test.
Issue: rdar://66309544
Reviewer: @rintaro

@swift-ci Please test

@swift-ci please nominate


da: replace go-cnc with celestia-openrpc

Overview
This PR replaces go-cnc with celestia-openrpc for the client. Fixes #979
Checklist

[ ] New and updated code has appropriate documentation
[ ] New and updated code has new and/or updated testing
[ ] Required CI checks are passing
[ ] Visual proof for any user facing features like CLI or documentation updates
[ ] Linked issues closed with keywords

Blocked by https://github.com/rollkit/celestia-openrpc/issues/10

Blocked by https://github.com/rollkit/rollkit/issues/1018

Resolved #1018 so unblocked, requesting re-reviews.

can you fix the failing tests? you can fetch your latest changes in the celestia-openrpc PR branch by using the latest commit. e.g., go get github.com/rollkit/celestia-openrpc@700156c205f8ac36098a913ebad92c16f0182dfd should fetch you the required changes.

OK, will wait for https://github.com/celestiaorg/celestia-node/pull/2376 https://github.com/celestiaorg/celestia-node/pull/2367 to be merged first.

After this PR is merged, --rollkit.da_config will require auth_token to be passed.


Confused about image saved and  transformtransformed

Hi, @StevenBanama
First in preprocessing/dataset_proc.py, you filter the more-than-one-face and no-crops images.In other words,the only-one-face images are reversed, Exactly, the image saved in pd.DataFrame are a lot of first align face,i.e. crops[0], while trible boxes.
Second in utils/image_transforn.py, every first align face is padded with (200, 200, 200, 200).
Here is the question. The trible box coordinates are uesd as slice on padded image.I think it is unreasonable.Because the coordinates base on origin input image.I also try some pictures from imdb-wiki dataset to prove what I say is right

Problem (I): you can use only once.  if you  use  alignment for face, meanwhile you should change the postion of landmarks. The second detection is just for get  landmark without ratation, that is why i detect face twice.
Problem (II)  :  the  200 padding around image aims to keep origin scale of box and add padding for the box out of bounds with less noise.

@MoonBunnyZZZ Problem (I): You can use only once detection with rotation. if you use alignment for face, meanwhile you should change the postion of landmarks. The second detection is just for get landmark without rotation, that is why i detect face twice.
Problem (II) : the 200 padding around image aims to keep origin scale of tri-box and add padding for the box out of bounds with less noise.

@StevenBanama Thank you for replay
Maybe my statement is

@MoonBunnyZZZ Problem (I): You can use only once detection with rotation. if you use alignment for face, meanwhile you should change the postion of landmarks. The second detection is just for get landmark without rotation, that is why i detect face twice.
Problem (II) : the 200 padding around image aims to keep origin scale of tri-box and add padding for the box out of bounds with less noise.

@StevenBanama
Thank you for replay.Could you tell me where the second detection in code is ?I think it is missing the second detection that make me confused about data preprocess.

cascad_imgs, padding = [], 200
#### step 1. add extra padding for aliagn image!!!!!!
new_bd_img = cv2.copyMakeBorder(img, padding, padding, padding, padding, cv2.BORDER_CONSTANT)
#### offset for add for extra padding, so that keep same as before !!!!!!
    cascad_imgs.append(cv2.resize(new_bd_img[w_min+padding:w_max+padding, h_min+padding: h_max+padding,:], shape))   ####

@MoonBunnyZZZ Problem (I): You can use only once detection with rotation. if you use alignment for face, meanwhile you should change the postion of landmarks. The second detection is just for get landmark without rotation, that is why i detect face twice.
Problem (II) : the 200 padding around image aims to keep origin scale of tri-box and add padding for the box out of bounds with less noise.

@StevenBanama
Thank you for replay.Could you tell me where the second detection in code is ?I think it is missing the second detection that make me confused about data preprocess.

detection is wrapped by function named "gen_face"
def crop_and_trans_images(self, detector, series):
    # imdb 数据存在多张人脸，所以对于多人脸的数据直接清除掉
    image_path = os.path.join(self.data_dir, series.full_path[0])
    try:
        print(image_path)
        image = cv2.imread(image_path, cv2.IMREAD_COLOR)
        if not np.isnan(series.second_face_score):
            raise Exception("more than one face~---%s~-%s- %s"%(series.name, series.age, image_path))
        bounds, lmarks = gen_face(detector, image, image_path)
        crops = detector.extract_image_chips(image, lmarks, padding=0.4)  # aligned face with padding 0.4 in papper
        if len(crops) == 0:
            raise Exception("no crops~~ %s---%s"%(image_path, series.age))
        if len(crops) > 1:
            raise Exception("more than one face~---%s~-- %s"%(series.name, image_path))
        bounds, lmarks = gen_face(detector, crops[0], image_path)  # recaculate landmar
        org_box, first_lmarks = bounds[0], lmarks[0]
        trible_box = gen_boundbox(org_box, first_lmarks)
        pitch, yaw, roll = get_rotation_angle(crops[0], first_lmarks) # gen face rotation for filtering
        image = crops[0]   # select the first align face and replace


Add selected state to tabs on event calendar

Currently there are hover and focus styles:

But there should also be a state for the currently selected one, so it would be clear immediately

Done in #367


BnP logging improvements

BnP job now emits config properties in one entry per line.
Bumped up some useful logs to INFO level in the HttpHook.

Thanks for the review, I merged it in.


Physicsengine

The new physics engine architecture!
Is backwards compatible, so there is no need to change existing code.
Some functions are deprecated.
Documentation is coming soon.

WWAAAAAOOOOWWwwww
2016-02-22 21:26 GMT+01:00 Raanan Weber<EMAIL_ADDRESS>
The new physics engine architecture!
Is backwards compatible, so there is no need to change existing code.
Some functions are deprecated.
Documentation is coming soon.
You can view, comment on, or merge this pull request online at:
https://github.com/BabylonJS/Babylon.js/pull/983
Commit Summary

Physics Engine v2
Introducing changable math objects
Merge remote-tracking branch 'refs/remotes/BabylonJS/master' into
PhysicsEngine
Fixing constant update procedure.
Further updates
Removing unneeded function
Auto-Rotation update
Cleanup math and abstract mesh with rotation
Oimo plugin
Moving rotation update to the right location
OimoPlugin and refactoring
Updating collider callback
Bug fixes
Vug fixed with oimo and parenting.
Changes to parenting system and bug fixes
Cleanup, further functionality
Short documentation

File Changes

M Tools/Gulp/config.json
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-0 (2)
M Tools/Gulp/gulpfile.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-1 (4)
M src/Math/babylon.math.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-2 (48)
M src/Math/babylon.math.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-3 (2)
M src/Mesh/babylon.abstractMesh.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-4 (175)
M src/Mesh/babylon.abstractMesh.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-5 (183)
M src/Mesh/babylon.mesh.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-6 (21)
M src/Mesh/babylon.mesh.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-7 (22)
M src/Physics/Plugins/babylon.cannonJSPlugin.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-8 (464)
M src/Physics/Plugins/babylon.cannonJSPlugin.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-9 (538)
M src/Physics/Plugins/babylon.oimoJSPlugin.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-10 (511)
M src/Physics/Plugins/babylon.oimoJSPlugin.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-11 (593)
M src/Physics/babylon.physicsEngine.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-12 (154)
M src/Physics/babylon.physicsEngine.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-13 (212)
A src/Physics/babylon.physicsImpostor.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-14 (221)
A src/Physics/babylon.physicsImpostor.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-15 (315)
A src/Physics/babylon.physicsJoint.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-16 (40)
A src/Physics/babylon.physicsJoint.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-17 (61)
M src/Tools/babylon.sceneSerializer.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-18 (6)
M src/Tools/babylon.sceneSerializer.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-19 (6)
M src/babylon.scene.js
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-20 (50)
M src/babylon.scene.ts
https://github.com/BabylonJS/Babylon.js/pull/983/files#diff-21 (58)

Patch Links:

https://github.com/BabylonJS/Babylon.js/pull/983.patch
https://github.com/BabylonJS/Babylon.js/pull/983.diff

—
Reply to this email directly or view it on GitHub
https://github.com/BabylonJS/Babylon.js/pull/983.

Hi Raanan,
Why Mesh.prototype.getChildren has been deleted ? another function replaces it? I use this function to reach all children of objects.

it is not deleted, just moved to an upper class. In this commit it is in AbstractMesh, and in a future commit it will be in the Node class, but it should be transparent to you, as the mesh and abstract mesh are both extentions of the Node class.

maybe is this the answer ?
http://www.html5gamedevs.com/topic/20650-questions-about-meshgetchildren/?do=findComment&comment=117827
Le 23/02/2016 13:26, David a écrit :

Hi Raanan,
Why Mesh.prototype.getChildren has been deleted ? another function
replaces it? I use this function to reach all children of objects.
—
Reply to this email directly or view it on GitHub
https://github.com/BabylonJS/Babylon.js/pull/983#issuecomment-187680019.

Ok, I did not have all followed. thanks guys