Add 0tils

if it needs a rename that is fine,
blocks:

I did a better job at explaining this on the github page.

Some criticisms:

A lot of Label spam. Try to limit how many Labels you use to not make the toolbox size bigger than it needs to be.
Try not to include blocks other extensions use: "If <> then () else ()" is in Utilities, as well as "newline". A lot of people use Utilities, they do not need these blocks again.
How does Local Storage in your extension differ from the existing Local Storage extension?

remove the parentheses
you prolly don't need the version block
yeah stop the label spam

will be fixed.

is this good?

Some criticisms:
* A lot of Label spam. Try to limit how many Labels you use to not make the toolbox size bigger than it needs to be.

* Try not to include blocks other extensions use: "If <> then () else ()" is in Utilities, as well as "newline". A lot of people use Utilities, they do not need these blocks again.

* How does Local Storage in your extension differ from the existing Local Storage extension?

in the "How does Local Storage in your extension differ from the existing Local Storage extension?", I added the localstorage before I knew there was a already an option cause at the time of making it I did not have access to extensions.turbowarp.org

if you feel the need to put parenthesized categories in your extension, that seems like a strong indication you should consider breaking it into multiple extensions

I added the localstorage before I knew there was a already an option cause at the time of making it I did not have access to extensions.turbowarp.org

if some blocks in this extension are copies of other extensions, consider removing those blocks

i have already removed the duplicates

fixed mentioned issues

<(true/false)> exists in Utilities as 2 blocks and a version of it with "random" as an extra option is in LMS Utilities
(() ^ ()) exists in several extensions now
<() === ()> exists in several extensions (including utilities)
[download () as ()] appears to be identical to the one in files, unless there's some extra utility to it I'm missing

<(true/false)> exists in Utilities as 2 blocks and a version of it with "random" as an extra option is in LMS Utilities

(() ^ ()) exists in several extensions (including utilities)

<() === ()> exists in several extensions (including utilities)

[download () as ()] appears to be identical to the one in files, unless there's some extra utility to it I'm missing

the download block is different as it uses download.js, not appending an A link to the page clicking it then deleting it,
and I must have forgot to add the other 2 to be hidden

i fixed the missed duplicates and the tripple equals not hiding

(note that some overlap between extensions is a problem, but at the same time we don't need 10 different versions of utilities, hope you can understand)

etween extensions is a problem, but at the same time we don't need 10 different versions of utilities, ho

i removed duplicated, and if you can tell me what the overlaps are.

I am going to add the "(i36)" before the duplicate encode block as it has different paramaters.

if you insist on using window.open for whatever reason, you must check await Scratch.canOpenWindow(url) before opening.

Related: https://github.com/TurboWarp/extensions/issues/674

Related: #674

replied

Related: #674

Referring to this, I personally think it'd be best to split this extension up into different already existing extensions such as ShovelUtils, Networking, etc. Some of these blocks already exist in those extensions, but for the ones that don't, you can just submit a PR modifying them to add them. You can still credit yourself in comments inside the code.

I will not close this request but I will still move all the blocks to existing extensions

I will not close this request but I will still move all the blocks to existing extensions

Makes sense, although you can draft it if you want so you don't feel rushed to finish anything https://en.scratch-wiki.info/wiki/List_of_Scratch_Modifications
it's up to you though

related: https://github.com/TurboWarp/extensions/pull/676


Readme improvements.

From @livlab
"it might be helpful to break the  using into setup/configure so people can quickly see that "this is how you get it going" and  "this is how I make it my own"
oh and you wanted to note WHERE on the page to place the tracker"


PowerShell Syntax Highlighting Error: .bat and .exe files

There's syntax highlighting as part of the PowerShell extension to indicate commands. This makes things like something.bat and ipconfig.exe the same color as PowerShell cmdlets like import-module. The highlighting for .bat and .exe files doesn't properly detect when .bat or .exe is part of a longer word. It also does not properly highlight .bat and .exe files whose names start with numbers.
Code to reproduce
something.bat
ipconfig.exe
Import-Module AzureRM.Backup
Import-Module AzureRm.Batch
Import-Module AzureRm.Exefake
Import-Module AzureRM.Cdn
21jumpstreet.bat

Result of code
Using Monokai Dimmed theme for emphasis.

Lines 4, 5 and 7 have incorrect syntax highlighting.
Diagnostic info
code --list-extensions --show-versions
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
code -v
1.11.2
6eaebe3b9c70406d67c97779468c324a7a95db0e

$PSVersionTable

Name                           Value
----                           -----
PSVersion                      5.1.14393.1066
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.14393.1066
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

Possible Fix
It appears that the regular expression that detects these patterns is flawed: https://github.com/Microsoft/vscode/blob/master/extensions/powershell/syntaxes/PowershellSyntax.tmLanguage#L243
By replacing the above linked line with a better regular expression, this issue could be resolved.
More appropriate regular expression
<string>(\b(([A-Za-z0-9\-_\.]+).(?i:exe|com|cmd|bat))\b)</string>
Results after applying fix

@ThmsRynr @mjbvz Our grammar comes from https://github.com/SublimeText/PowerShell and we don't want to maintain our own fork. Please make a pull request there. Once accepted I will update our grammar.

@daviwil FYI, see my comment above. I'd actually leave it up to you if you want to fork the powershell grammar and maintain an own variant. If we maintain our own variant, I'd suggest to create a new repository that just contains the grammar. Similar to https://github.com/Microsoft/TypeScript-TmLanguage.

We have our own repo for our grammar here but it's currently being rewritten so it shouldn't be used directly.  I didn't realize you had a script that pulls in grammars from other repos, that's cool!  It looks like it supports plist, cson, json, or XML.  Is there any difference between those formats?  Should we standardize on JSON now?

@daviwil yes we added a script to most language extensions that can be run with npm run update-grammar in the extensions folder. I just added it for Powershell but will wait running it to not overwrite the changes of this PR. Once your repo is ready I'll change to it. I'll also have to update the OSSReadme then.
For your repo I recommend to keep using plist or tmLanguage so the grammar can be consumed from TextMate or other editors as well.

@daviwil Let me know if I can start using the grammar in https://github.com/PowerShell/EditorSyntax/...

Not yet, we're starting the effort back up again to fix the issues that were reported the last time we tried to use the grammar.  I'll let you know (or send a PR) when it's ready to be used.  Thanks!


Can't override template of a slider using a control theme?

Describe the bug
I'm attempting to override the template of a slider using a control theme.
To Reproduce
See Example.zip
Expected behavior
The slider should use the new template based upon the specified control theme.
Environment

OS: Windows
Avalonia-Version: 11.0.5

Additional context
I was attempting to change the margin of the slider so the ticks marks would align correctly, see: https://github.com/amwx/FluentAvalonia/issues/496 , but the only way I could get my template to work was by setting it explicitly, e.g.
if (slider.FindResource(typeof(Slider)) is ControlTheme controlTheme)
{
    slider.Theme = controlTheme;
    slider.Template = controlTheme.Setters
                                  .OfType<Setter>()
                                  .FirstOrDefault(match => match.Property?.Name == nameof(Template))
                                  ?.Value as IControlTemplate;
}

Without this the slider template doesn't change.
This happens even when not using FluentAvaloniaUI.

You're basing your ControlTheme on the existing one, via BasedOn="{StaticResource {x:Type Slider}}", so existing styles from there apply.
A simple change is to wrap your setter inside <Style Selector="^:horizontal"> to override that existing style:
<ControlTheme [...]>
  <Style Selector="^:horizontal">
    <Setter Property="Template">
      [...]
    </Setter>
  </Style>
</ControlTheme>

That said, you can simply forget about the ControlTheme if you're not redefining everything and use a standard Style instead:
<Style Selector="Slider:horizontal">

I'm converting this issue to a discussion.


OTS dataset

I find thare are some images appearing repeatedly in the training set and test set，so could you please provide data cleaning code for OTS If it's convenient for you？

If you mean that the training and test sets in the outdoor experimental setup contain the same samples, then yes, indeed.
This data leakage is mainly caused by the wrong train/test split of the RESIDE dataset (it provides two versions of OTS, both with data leakage), and we just followed the experimental setup of the previous works (although it is quite unreasonable).
If you want to follow our (or other peers') work, I suggest you do not change the experimental setup. If you insist on doing so, please eliminate the images with the same id by yourself. It is very simple.

I‘ve known how to deal with it already，thank you for your reply！！

import os
import shutil

if __name__ == '__main__':
	# show the duplicate images in the train set of RESIDE-OUT

	for suffix in ['GT', 'hazy']:
		refer_dir = 'data/RESIDE-OUT/test/' + suffix
		target_dir = 'data/RESIDE-OUT/train/' + suffix
		backup_dir = 'data/RESIDE-OUT/backup/' + suffix

		os.makedirs(backup_dir, exist_ok=True)

		refer_img_names = os.listdir(refer_dir)
		target_img_names = sorted(os.listdir(target_dir))

		refer_img_ids = sorted(set([name.split('_')[0] for name in refer_img_names]))
		target_img_ids = sorted(set([name.split('_')[0] for name in target_img_names]))

		for target_img_name in target_img_names:
			if target_img_name.split('_')[0] in refer_img_ids:
				print(target_img_name)

				shutil.move(
					os.path.join(target_dir, target_img_name),
					os.path.join(backup_dir, target_img_name)
				)

				exit(0)

Because it's really simple, I also wrote a code for reference.


add slider

I've been using this in my own project and felt I've gotten it to a point worth sharing.
I just updated the track markers portion to be more React-oriented. Previously, I just had the functions doing manual DOM manipulations, since I wasn't actually using discrete sliders in my project.
I still need to update the README, specifically in relation to the Props section.

Codecov Report

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

@@          Coverage Diff           @@
##           master    #868   +/-   ##
======================================
  Coverage    94.5%   94.5%
======================================
  Files          85      85
  Lines        3496    3496
  Branches      532     532
======================================
  Hits         3304    3304
  Misses         66      66
  Partials      126     126

Continue to review full report at Codecov.

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

@moog16 I just fixed some lint and typing issues.
I'm reading up on the screenshot tests at the moment.

@moog16 I added a screenshot test, but I'm still not completely clear on everything involved.
I saw the list in screenshot-test-urls.tsx, but adding 'slider' there didn't seem to add it to the test.  Is that in the Docker image itself?
Also, switch and ripple screenshot tests don't seem to currently be running either.
They're also not in the screenshot-test-urls.tsx.
Is there a way for me to view and validate the "golden" image? And where am I supposed to submit that, since the instructions seem to indicate that I can't upload them via the Docker.

@cpboyd I have to actually create the golden. I'll get around to this today. The instructions is for you to test everything out. I need to update the contribute doc though (as this might be where the confusion is coming from)

@moog16 Commit aa0a057 basically replicates a substantial portion of the mdc-slider/foundation.ts
Further, I left the registerBodyInteractionHandler as I'm not sure there's a more React-like way to add handlers to the document body.

I guess the rebase to master confused @googlebot.

Changed the base to rc0.14.0

#258

@moog16 How do you suggest I handle the onTransitionEnd within
updateUIForCurrentValue_?
This gets called by setValue_, and thus most of the events.

@cpboyd I see what you're saying about updateUIForCurrentValue. What if you do implement [de]registerThumbContainerInteractionHandler. You can set a flag to true in the register and set the flag to false in the deregister. Then in this.onThumbEnd, say:
onThumbEnd: () => {
  if (!this.flag) return;
  // ...
}

@moog16 That's effectively what I tried to do in https://github.com/material-components/material-components-web-react/pull/868/commits/b333d05c08152eb700c4a6fd62d3e7e1881b783c

ah you're right...Sorry, it was a lot to sift through. But what you did makes sense.

Is this ready for review again?

@moog16 I rebased with rc0.14.0.
Should I also squash the slider commits down?

no need! We'll squash merge this puppy when its ready. I'll take anotehr look. Thanks!

@moog16 I think I've addressed all the new comments.
I'll work on the unit tests.

Great! Let me know when its ready for review :)

@moog16 I rebased to rc0.15 and added some unit tests.
Note: I'm currently using @material/slider 2.3.0.  I'm not overly familiar with material-components-web versioning.  Some of the React components are still using the mdc v1 versions.  Should I downgrade (or optionally upgrade to v3)?

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 70.42254% with 42 lines in your changes missing coverage. Please review.

Project coverage is 93.24%. Comparing base (4f36078) to head (0e30a79).

Files with missing lines
Patch %
Lines

packages/slider/index.tsx
70.42%
34 Missing and 8 partials :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff              @@
##           rc0.15.0     #868      +/-   ##
============================================
- Coverage     94.13%   93.24%   -0.89%
============================================
  Files            86       87       +1
  Lines          3649     3791     +142
  Branches        578      597      +19
============================================
+ Hits           3435     3535     +100
- Misses           90      124      +34
- Partials        124      132       +8

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[GHSA-pg6w-hq9f-wfwr] resumable.php (aka PHP backend for resumable.js) 0.1.4...

Updates

Affected products
CWEs
Description
Severity
Source code location
Summary

Comments
I am the CVE reporter

Hi there, I think I follow on adding the package dilab/resumable.php, but how do you justify the other packages being added? They seem unrelated to me.

Hi there, I think I follow on adding the package dilab/resumable.php, but how do you justify the other packages being added? They seem unrelated to me.

I did search for forked repositories and projects using the same code
They should also be warned they are vulnerable. Since they copy pasted the code or the vulnerable parts.

I see. They could differ such that they are not affected though correct? The CVE itself also states

File overwrite hasn't been possible with the code available in GitHub in recent years, however.

Which would imply that any recent forks are not subject to this vuln.

Which would imply that any recent forks are not subject to this vuln.

Well, that was me adding contact to CVE request. But that's not how it should be understood.
Recent forks are less highly vulnerable but still vulnerable. You still can create files, but not overwrite them.

I see. They could differ such that they are not affected though correct?

Most probably, I can script something to check each of them if you prefer

Well, that was me adding contact to CVE request. But that's not how it should be understood.
Recent forks are less highly vulnerable but still vulnerable. You still can create files, but not overwrite them.

Gotcha. I guess those file creations would also be limited by the scope of the running process as well.

Most probably, I can script something to check each of them if you prefer

Ya that'd be cool. A minimal POC I can validate against the packagist packages would be great.

Still on my TODO list 👍🏻

👋 This pull request has been marked as stale because it has been open with no activity.  If you do nothing this pull request will be closed eventually by the stale bot. Please see CONTRIBUTING.md for more policy details.

Can you apply my suggested change @darakian ?
I think it is better to apply this PR as is and improve the affected packages in another PR

Sorry, I may have missed the POC. Can you point me at it?

There is no POC for now, atleast for the forked repos.
But for the main repo there is a POC: https://github.com/dilab/resumable.php/pull/39/commits/408f54dff10e48befa44d417933787232a64304b

I see, but based on the conversation we had up here https://github.com/github/advisory-database/pull/3214#issuecomment-1879604807 I was under the impression that we agreed that the forks could have different impact given that they may have forked off of more recent/fixed code.

👋 This pull request has been marked as stale because it has been open with no activity.  If you do nothing this pull request will be closed eventually by the stale bot. Please see CONTRIBUTING.md for more policy details.

👋 This pull request has been marked as stale because it has been open with no activity.  If you do nothing this pull request will be closed eventually by the stale bot. Please see CONTRIBUTING.md for more policy details.

I see, but based on the conversation we had up here #3214 (comment) I was under the impression that we agreed that the forks could have different impact given that they may have forked off of more recent/fixed code.

And I said that I prefer to do a first PR with the repository we know has the security issue. And maybe one day do another one with a POC to add more.
See https://github.com/github/advisory-database/pull/3214#issuecomment-1937758574
And https://github.com/github/advisory-database/pull/3214#discussion_r1485597289

👋 This pull request has been marked as stale because it has been open with no activity.  If you do nothing this pull request will be closed eventually by the stale bot. Please see CONTRIBUTING.md for more policy details.


Error deep in fit_generator when using SSD7_training notebook with TF v1.6.0

First, thanks for an incredibly detailed and well-documented code base and tutorials. This is an amazing piece of work.
I'm trying to retrain the SSD7 model on COCO data, by very slightly modifying the ssd7_training notebook. I'm getting the following error stack when I get to the history = model.fit_generator() step.
I'm using the notebook as is, except that I'm setting up the train/val datasets from json instead of csv:
train_dataset.parse_json(images_dirs=['{}/train2014'.format(coco_data_path)],
                         annotations_filenames=['{}/annotations/instances_train2014.json'.format(coco_data_path)],
                         ground_truth_available=True,
                         include_classes='all')

val_dataset.parse_json(images_dirs=['{}/val2014'.format(coco_data_path)],
                       annotations_filenames=['{}/annotations/instances_val2014.json'.format(coco_data_path)],
                       ground_truth_available=True,
                       include_classes='all')

I'm using TensorFlow 1.6.0. Could this be a versioning issue, as it seems deep within TensorFlow (i.e., down in a call to tf.clip_by_value and tf.sqrt?
WARNING:tensorflow:Variable *= will be deprecated. Use variable.assign_mul if you want assignment to the variable value or 'x = x * y' if you want a new python Tensor object.
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-24-22d018627654> in <module>()
     21                                                              cooldown=0)],
     22                               validation_data = val_generator,
---> 23                               validation_steps = ceil(num_val_samples/batch_size))
     24
     25 # TODO: Set the filename (without the .h5 file extension!) under which to save the model and weights.

~/Code/tensorflow/lib/python3.6/site-packages/keras/legacy/interfaces.py in wrapper(*args, **kwargs)
     89                 warnings.warn('Update your `' + object_name +
     90                               '` call to the Keras 2 API: ' + signature, stacklevel=2)
---> 91             return func(*args, **kwargs)
     92         wrapper._original_function = func
     93         return wrapper

~/Code/tensorflow/lib/python3.6/site-packages/keras/engine/training.py in fit_generator(self, generator, steps_per_epoch, epochs, verbose, callbacks, validation_data, validation_steps, class_weight, max_queue_size, workers, use_multiprocessing, shuffle, initial_epoch)
   2078
   2079         do_validation = bool(validation_data)
-> 2080         self._make_train_function()
   2081         if do_validation:
   2082             self._make_test_function()

~/Code/tensorflow/lib/python3.6/site-packages/keras/engine/training.py in _make_train_function(self)
    988                     training_updates = self.optimizer.get_updates(
    989                         params=self._collected_trainable_weights,
--> 990                         loss=self.total_loss)
    991                 updates = self.updates + training_updates + self.metrics_updates
    992                 # Gets loss and metrics. Updates weights at each call.

~/Code/tensorflow/lib/python3.6/site-packages/keras/legacy/interfaces.py in wrapper(*args, **kwargs)
     89                 warnings.warn('Update your `' + object_name +
     90                               '` call to the Keras 2 API: ' + signature, stacklevel=2)
---> 91             return func(*args, **kwargs)
     92         wrapper._original_function = func
     93         return wrapper

~/Code/tensorflow/lib/python3.6/site-packages/keras/optimizers.py in get_updates(self, loss, params)
    452
    453         t = K.cast(self.iterations, K.floatx()) + 1
--> 454         lr_t = lr * (K.sqrt(1. - K.pow(self.beta_2, t)) /
    455                      (1. - K.pow(self.beta_1, t)))
    456

~/Code/tensorflow/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py in sqrt(x)
   1459     zero = _to_tensor(0., x.dtype.base_dtype)
   1460     inf = _to_tensor(np.inf, x.dtype.base_dtype)
-> 1461     x = tf.clip_by_value(x, zero, inf)
   1462     return tf.sqrt(x)
   1463

~/Code/tensorflow/lib/python3.6/site-packages/tensorflow/python/ops/clip_ops.py in clip_by_value(t, clip_value_min, clip_value_max, name)
     58   """
     59   with ops.name_scope(name, "clip_by_value",
---> 60                       [t, clip_value_min, clip_value_max]) as name:
     61     t = ops.convert_to_tensor(t, name="t")
     62

~/Code/tensorflow/lib/python3.6/site-packages/tensorflow/python/framework/ops.py in __enter__(self)
   5614       if self._values is None:
   5615         self._values = []
-> 5616       g = _get_graph_from_inputs(self._values)
   5617       self._g_manager = g.as_default()
   5618       self._g_manager.__enter__()

~/Code/tensorflow/lib/python3.6/site-packages/tensorflow/python/framework/ops.py in _get_graph_from_inputs(op_input_list, graph)
   5282         graph = graph_element.graph
   5283       elif original_graph_element is not None:
-> 5284         _assert_same_graph(original_graph_element, graph_element)
   5285       elif graph_element.graph is not graph:
   5286         raise ValueError("%s is not from the passed-in graph." % graph_element)

~/Code/tensorflow/lib/python3.6/site-packages/tensorflow/python/framework/ops.py in _assert_same_graph(original_item, item)
   5218   if original_item.graph is not item.graph:
   5219     raise ValueError("%s must be from the same graph as %s." % (item,
-> 5220                                                                 original_item))
   5221
   5222

ValueError: Tensor("training/Adam/Const:0", shape=(), dtype=float32) must be from the same graph as Tensor("sub:0", shape=(), dtype=float32).

Hm, very strange. I haven't been able to reproduce this error in TensorFlow 1.4.1. I have a hunch though. Could you try to compile the model with a different optimizer?  keras.optimizers.SGD or something. Anything but Adam. Let me know what happens.

Thanks for the quick response!
You are correct: switching to SGD from Adam avoids that error.  I'm curious if you identified that so quickly because you know of changes to the Adam optimizer since v1.4.1 or what. Is your suggested workaround to "just use SGD" or downgrade my TF install to v1.4.1?
btw, I get a new error, but I'm assuming this is simply because I've done no work to verify that the COCO annotations are as expected for the SSD box encoder you created. I have not investigated this at all yet, but if you have any experience getting this working with COCO and can share any insight, that would certainly be great!
~/Code/ssd_keras/ssd_box_utils/ssd_box_encode_decode_utils.py in encode_y(self, ground_truth_labels, diagnostics)
    939                 assign_indices = np.nonzero(available_and_thresh_met)[0] # Get the indices of the left-over anchor boxes to which we want to assign this ground truth box
    940                 if len(assign_indices) > 0: # If we have any matches
--> 941                     y_encoded[i,assign_indices,:-8] = np.concatenate((class_vector[int(true_box[0])], true_box[1:]), axis=0) # Write the ground truth box coordinates and class to all assigned anchor box positions. Remember that the last four elements of `y_encoded` are just dummy entries.
    942                     available_boxes[assign_indices] = 0 # Make the assigned anchor boxes unavailable for the next ground truth box
    943                 else: # If we don't have any matches

IndexError: index 28 is out of bounds for axis 0 with size 6

Thanks for trying it out, I'm glad that my suspicion was confirmed. TensorFlow 1.6.0 introduced a new internal Optimizer API that affects particularly how AdamOptimizer must be used, which means that this is a Keras issue. What Keras version are you on?
As for your second error: You forgot to set the number of classes to 80 at the top of the notebook. Also, since the image size is non-constant in MS COCO, you will also need to use one of the options in BatchGenerator.generate() to make sure all images end up with the right size. You could either simply resize them or use max_crop_and_resize or random_pad_and_resize (or both).

Ah, ok, that makes sense. Thanks for the explanation.
I'm on Keras version 2.1.5.
I had switched to using resize but had not updated the number of classes. Thanks! Training is now running. I'm guessing I'll need to update the annotations, which are encoded at original image resolution, to the resized resolution for matching to ground truth at train time though...

Thanks for the quick response!
You are correct: switching to SGD from Adam avoids that error.  I'm curious if you identified that so quickly because you know of changes to the Adam optimizer since v1.4.1 or what. Is your suggested workaround to "just use SGD" or downgrade my TF install to v1.4.1?
btw, I get a new error, but I'm assuming this is simply because I've done no work to verify that the COCO annotations are as expected for the SSD box encoder you created. I have not investigated this at all yet, but if you have any experience getting this working with COCO and can share any insight, that would certainly be great!

~/Code/ssd_keras/ssd_box_utils/ssd_box_encode_decode_utils.py in encode_y(self, ground_truth_labels, diagnostics)
    939                 assign_indices = np.nonzero(available_and_thresh_met)[0] # Get the indices of the left-over anchor boxes to which we want to assign this ground truth box
    940                 if len(assign_indices) > 0: # If we have any matches
--> 941                     y_encoded[i,assign_indices,:-8] = np.concatenate((class_vector[int(true_box[0])], true_box[1:]), axis=0) # Write the ground truth box coordinates and class to all assigned anchor box positions. Remember that the last four elements of `y_encoded` are just dummy entries.
    942                     available_boxes[assign_indices] = 0 # Make the assigned anchor boxes unavailable for the next ground truth box
    943                 else: # If we don't have any matches

IndexError: index 28 is out of bounds for axis 0 with size 6

All image transformations that BatchGenerator provides adjusts the box annotations accordingly, so there's nothing you need to do. Otherwise the generator would be pretty useless ;)
If you don't mind I'll open an issue in the Keras repository an post your stack trace there, unless you want to do that yourself.

Oh! That's great to hear.
Yeah, I'm happy for you to open the Keras issue. You obviously know a lot more about it, so will be more useful in getting it resolved.
Would you recommend just using SGD until it's fixed, or downgrading TF to 1.4.1 for now?

Alright, I'll open an issue then.
I'd recommend going with SGD with 0.9 momentum. It's already in my previous answer above in a bit more detail.

Ah, sorry. I somehow didn't see the second paragraph. You totally already answered. Thanks again!

No worries and you're welcome!

@pierluigiferrari where's the link for the new issue?
And has it been solved already?
I'm still having the same problem with Adam.

Hi. Something weird is happening with me. I am using keras to train a mode. First, it's not changing weights for some reason, so there is no change in loss or accuracy.
Second, when I use some other model, I get the warning as shown above:
WARNING:tensorflow:Variable *= will be deprecated. Use variable.assign_mul if you want assignment to the variable value or 'x = x * y' if you want a new python Tensor object.

and then, my kernel crashes, it uses up all of my memory.
Can someone help me with what's happening?


Use servers in New Network detects no servers.

Describe the bug
Brain Simulator does not see any servers in new network dialog.
Application: Brain Simulator, Neuron Server
Module/Network: N/A
To Reproduce
Steps to reproduce the behavior:

Take two computers on the same local network.
Start a server on system #1.
Start the brain simulator on system #2.
Choose New Network.
Check 'Use Servers'.
Notice 'no servers detected'.
When done with only one computer, the results are the same.

Expected behavior
If a neuron server is running on a local network, it should be visible in the use servers list when 'use servers' is checked.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Windows 10 Pro  20H2
Version 1.0

Add any other context about the problem here.

Actually, the checking of the use servers checkbox in my case already brings up a request for the allowing of the firewall setting in the windows firewall. After that it should work fine if refresh is clicked, but that does not seem to work.

You must make an identical firewall entry on the server machine. Did you try that?
Charlie
From: Andre Slabber @.>
Sent: Thursday, April 15, 2021 2:26 AM
To: FutureAIGuru/BrainSimII @.>
Cc: Subscribed @.***>
Subject: Re: [FutureAIGuru/BrainSimII] Use servers in New Network detects no servers. (#38)
Actually, the checking of the use servers checkbox in my case already brings up a request for the allowing of the firewall setting in the windows firewall. After that it should work fine if refresh is clicked, but that does not seem to work.
[IMG_20210415_112122]https://user-images.githubusercontent.com/11266191/114846552-1b858300-9ddd-11eb-998a-039b1260d6f0.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/FutureAIGuru/BrainSimII/issues/38#issuecomment-820275805, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ALP7S7XQAXWVOBSHUDY3MVLTI2WLPANCNFSM422YEUDQ.

Hi Charlie,
For now I went with the idea that it would be possible to run both brain simulator and a neuronserver on one machine, but my setting should warn me whenever a firewall rule is required that is not there yet.
On 15 April 2021 at 13:45:58 +02:00, Charles Simon @.***> wrote:

You must make an identical firewall entry on the server machine. Did you try that?
Charlie
From: Andre Slabber @.>
Sent: Thursday, April 15, 2021 2:26 AM
To: FutureAIGuru/BrainSimII @.>
Cc: Subscribed @.***>
Subject: Re: [FutureAIGuru/BrainSimII] Use servers in New Network detects no servers. (#38)
Actually, the checking of the use servers checkbox in my case already brings up a request for the allowing of the firewall setting in the windows firewall. After that it should work fine if refresh is clicked, but that does not seem to work.
[IMG_20210415_112122]https://user-images.githubusercontent.com/11266191/114846552-1b858300-9ddd-11eb-998a-039b1260d6f0.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/FutureAIGuru/BrainSimII/issues/38#issuecomment-820275805, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ALP7S7XQAXWVOBSHUDY3MVLTI2WLPANCNFSM422YEUDQ.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/FutureAIGuru/BrainSimII/issues/38#issuecomment-820359889, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACV6RDZSAOXRBMY3ZY3ZB4DTI3GXNANCNFSM422YEUDQ.

Also some switches block broadcasting , just for detail, could be nice to server scan ip with ports or possible to add ip:port

I just found a way to punch through the firewall programmatically. The sample doesn’t work but I will investigate further.
https://doumer.me/allow-your-app-through-the-firewall-with-c/

This has now officially been solved.


MLDB-1389 python deps split

Looking good. We can remove the bat frame tests instead of manual'ing them.
Let's move them to a folder in mldb pro
On Tuesday, 16 February 2016, jraby<EMAIL_ADDRESS>wrote:

You can view, comment on, or merge this pull request online at:
https://github.com/mldbai/mldb/pull/184
Commit Summary

MLDB-1389: minimal python_requirements.txt
MLDB-1389: fix tests

File Changes

M mldb_base/docker_create_mldb_base.sh
https://github.com/mldbai/mldb/pull/184/files#diff-0 (2)
M python_requirements.txt
https://github.com/mldbai/mldb/pull/184/files#diff-1 (28)
A python_requirements_mldb_base.txt
https://github.com/mldbai/mldb/pull/184/files#diff-2 (28)
M testing/MLDB-485-svd_embedRow_returns_zeroes.py
https://github.com/mldbai/mldb/pull/184/files#diff-3 (5)
M testing/MLDB-694_external_python_procedure.py
https://github.com/mldbai/mldb/pull/184/files#diff-4 (3)
M testing/MLDB-894_runs_can_override_conf.py
https://github.com/mldbai/mldb/pull/184/files#diff-5 (1)
M testing/testing.mk
https://github.com/mldbai/mldb/pull/184/files#diff-6 (12)

Patch Links:

https://github.com/mldbai/mldb/pull/184.patch
https://github.com/mldbai/mldb/pull/184.diff

—
Reply to this email directly or view it on GitHub
https://github.com/mldbai/mldb/pull/184.

--
Nicolas Kruchten, Eng  |  Staff Software Engineer at Datacratic  |
http://datacratic.com/


fix for missing sugar-crepe example

Changed data class so it does not assume contiguous indices. Fix for #119

Hi @samarth4149 thank you very much and sorry for late reply, merging


zoomView can support viewpager

In my project,I want add viewpager as zoomView,how to do?

I did it，Thanks for your library！

@echo326 Can you explain how you have achieved it ?


Timeout while initializing fork server

Hello, author. Sorry to bother you. There seems to be only one step away from AFL implementation, with the following error:

Have you tried adjusting the timeout? Do you have any AFL-specific environment variables? What OS are you using? See if the discussion in #39 helps.
Moreover, is there any reason why you are using AFL with JQF? The Zest engine works much better for most purposes, and is easier to debug because there is no inter-process communication.

Closing due to inactivity. Please reopen if needed.


504 Gateway timeout on refresh / no refresh for months

Hello! I was noticing the badges on some of my repositories were broken, which led me to look at the goreportcard.com site and builds. After looking at the site I noticed builds haven't been checking my projects for months and a refresh eventually errors at "504 Gateway Timeout"
Is this service still supported?

https://goreportcard.com/report/github.com/moov-io/ach (1 year)
https://goreportcard.com/report/github.com/moov-io/paygate (10 months)

Hi Adam, yes the service is still supported, however we are having some scaling issues at the moment. I'm looking into it. That said, as it stands, checks do not automatically refresh themselves (as this would completely overwhelm our minimal infrastructure), to get the latest report you have to click the refresh button.

Ah okay. Thanks for the update and I'll try again in several hours or tomorrow.

Looks like this issue is already solved and can be closed. @adamdecaf


TortoiseGit issue tracker plugin

Feature Description
Looking for issue tracker something like https://tortoisegit.org/docs/tortoisegit/tgit-dug-bugtracker.html which allow user to select issue assigned from gitea repo and commit the changes with some configurable pre-define commit message
Screenshots

You need a TortoiseGit plugin for that which can talk to the service. Gitea (as a server, this repo) already offers an api which this plugin can use.
As this is the wrong place to ask for such a plugin, I will close this issue.


Test no set admin

In rabbitmq 2.6 there is no set_admin or clear_admin command and the way to check if an user is administrator change (change in regex). http://www.rabbitmq.com/man/rabbitmqctl.1.man.html
I change the code to work with 2.6 but there is not backward compatibility, I don't currently know how to get the variable $version from puppet in the library in ruby to make the change. If you can tell me how to do it I will, and also there is not tests, and I have no idea how to test puppet code, so, I will need some help too with that.
I opened an issue yesterday with this: https://github.com/puppetlabs/puppetlabs-rabbitmq/issues/9
Thanks.

you may want to check out master. I just merged https://github.com/puppetlabs/puppetlabs-rabbitmq/pull/8 which looks almost identical to your patch. Please let me know if I missed any differences.


Libp2p upgrade

!ci-build-me

@dkijania I don't think this upgrade should have any effect on the watchdog, but let me know if you believe otherwise.

!ci-build-me

!ci-build-me

!ci-build-me


Only One class present issue

I am working on my own data -purchase history of financial production.
So I have data as who, with features, purchased which products, with features and when.
However, I have found that the metric of the model is AUC -- and I, as expected, get the following error
ValueError: Only one class present in y_true. ROC AUC score is not defined in that case.
Since all my Ys are 1s -as I only have who purchased (clicked) which and there is no 0 value ( who didn't purchase which).
As other CTR prediction models also use AUC and log loss, I assume that there must be a way to use AUC for such a dataset.
Do you have any idea how to solve this issue?
That would be really helpful!

For any classification problem, we need more than one class. In your case, IIUIC, the collected data only contains positive examples, i.e., clicks. To evaluate the model, you need to construct negative samples by combining a user with some items that he/she didn't click, forming zero Ys.


Specify build as default target for cross-targeting projects too

Fix #1364
@rainersigwald @AArnott

@rainersigwald @jeffkl Thanks for the quick reviews. What's the process to get this in from here?

@nguerrera apparently "ping and remind us that neither of us pushed the button" 😁


Cannot ping clients from server or from other clients

I cannot ping connected clients from the server computer or from any other computer on the network, and I also cannot ping clients from other clients.
I am using this script with a fresh install of Debian. Here are the different settings that I have changed and/or verified:

IP Forwarding is turned on
client-to-client has been added to the config file
I've added a "push route" line to the config file
I've set up static routing in my network router
I've done a fresh OS install, re-installed OpenVPN through the script, and re-applied all of the above settings

I also just tried this on Ubuntu and ran into the same issue

Same issue!!!

In case anyone needs this functionality in the meantime, it seems to be working with Turnkey Wireguard and Turnkey OpenVPN.

Same here, did you found a solutions ?

@SMUEric1127 I never did find a way to make it work with this script, so I ended up going with the TurnKey OpenVPN container.

hey sorry for re-open it! after a while, i figured out that it's fairly very easy. The installation just didnt include client-to-client in the configuration.
So after add that line to the end of the openvpn configuration, then restarted it. It all got working! But yours seems also like a great alternative, I will check it out tonight!

I'm not very familiar with OpenVPN so I hadn't heard of that configuration. After some basic research it sounds like adding this to the config doesn't solve the issue of the server host OS not being able to reach the clients, which is the main issue I was facing. It's nice to know that exists though.


STATUS: Training service error: No such file

First of all, thanks for this great library.
Short summary about the issue/question:
NNI is started on server 1 and connects to server 2 via SSH. The MNIST example runs successfully.
The same scenario is repeated between server 1 and server 3, but the experiment fails. The following error message appears in the web interface: STATUS: Training service error: No such file
On server 1-3 NNI, Tensorflow etc. is installed in a virtualenv . This virtualenv is started automatically after the SSH login (.bashrc entry).
nnimanager.log (Server 3): [2019-8-7 11:19:30] ERROR [ 'Error: No such file\n    at SFTPStream._transform (/home/msalz/venv_nni/nni/node_modules/ssh2-streams/lib/sftp.js:412:27)\n    at SFTPStream.Transform._read (_stream_transform.js:190:10)\n    at SFTPStream._read (/home/msalz/venv_nni/nni/node_modules/ssh2-streams/lib/sftp.js:183:15)\n    at SFTPStream.Transform._write (_stream_transform.js:178:12)\n    at doWrite (_stream_writable.js:410:12)\n    at writeOrBuffer (_stream_writable.js:394:5)\n    at SFTPStream.Writable.write (_stream_writable.js:294:11)\n    at Channel.ondata (_stream_readable.js:666:20)\n    at Channel.emit (events.js:182:13)\n    at addChunk (_stream_readable.js:283:12)' ]
[2019-8-7 11:19:30] INFO [ 'Change NNIManager status from: RUNNING to: ERROR' ]
The error occurs with different NNI versions (tested with 0.9 and 0.7).
The default port for the web interface is 8080. The NNI participants connect via SSH. Are any other ports used in the background by NNI?
What exactly does the error message mean and what is the reason for this error message?
Brief what process you are following:

How to reproduce it:
On all servers I have executed the following setup:
git clone https://github.com/microsoft/nni.git
python3.5 -m venv venv_nni
source venv_nni/bin/activate
cd nni
pip install tensorflow==1.5.0
pip install keras
python -m pip install --upgrade nni
pip install numpy==1.16.4
cd ..

This command only executes on server 1:
nnictl create --config nni/examples/trials/mnist/config.yml

nni Environment:

nni version: <IP_ADDRESS>
nni mode(local|pai|remote): remote
OS: CentOS Linux 7
python version: Python 3.5
is conda or virtualenv used?: virtualenv
is running in docker?: no

need to update document(yes/no): no
Anything else we need to know:
Here is the config.yml file from server 1:
authorName: default
experimentName: example_mnist
trialConcurrency: 1
maxExecDuration: 1h
maxTrialNum: 10
#choice: local, remote, pai
trainingServicePlatform: remote
searchSpacePath: search_space.json
#choice: true, false
useAnnotation: false
tuner:
  #choice: TPE, Random, Anneal, Evolution, BatchTuner, MetisTuner, GPTuner
  #SMAC (SMAC should be installed through nnictl)
  builtinTunerName: TPE
  classArgs:
    #choice: maximize, minimize
    optimize_mode: maximize
trial:
  command: python3 mnist.py
  codeDir: .
  gpuNum: 0
machineList:
  - ip: <Server_3_IP>
    username: <username>
    passwd: <passwd>
    #port can be skip if using default ssh port 22
    #port: 22
nniManagerIp: <Server_1_IP>

The above scenarios refer to Tensorflow CPU. If Tensorflow GPU is installed on Server 3, the following error message appears in nnimanager.log:
[2019-8-8 08:49:57] WARNING [ 'Scheduler: trialJob id PG5pY, no machine can be scheduled, return TMP_NO_AVAILABLE_GPU ' ] [2019-8-8 08:49:57] INFO [ 'Right now no available GPU can be allocated for trial PG5pY, will try to schedule later' ]
(Tensorflow GPU on server 3 works perfectly independent from NNI)

@martsalz Can you check if nvidia-smi is available on your server 3?

Yes, nvidia-smi is available on server 3

@martsalz
Please check the permission of /tmp/nni on server 3 and chmod it to 777 if it's not.
Maybe you have run NNI in local mode on server 3 before? This would create the directory with bad permission.

The permission of /tmp/nni is now set to 777 and I can see that NNI creates subfolders when running. The above experiment now runs with Tensorflow CPU. The scenario with TF GPU on server 3 doesn't work - the question remains why the error message
TMP_NO_AVAILABLE_GPU
appears.
(My user account on server 3 has no admin permissions)

Any ideas?

@martsalz Is there a /tmp/nni/script folder? If yes, chmod it and everything inside to 777 as well.

On server 3 there is no /tmp/nni/script folder and no python3 -m nni_gpu_tool.gpu_metrics_collector process.

Please run METRIC_OUTPUT_DIR=/tmp/nni/script python3 -m nni_gpu_tool.gpu_metrics_collector manually and check the output.

After executing the command, there is no output and the /tmp/nni/script folder is not created under server 3.

Could you please use mkdir -p /tmp/nni/script to create folder firstly, and then use METRIC_OUTPUT_DIR=/tmp/nni/script python3 -m nni_gpu_tool.gpu_metrics_collector to test the command? Before exec the command, please make sure there is no active nni_gpu_tool.gpu_metrics_collector process backend.

Same as before: No output in the console and the  /tmp/nni/script folder is empty

@martsalz Please try this script with python3 gpu_metrics_collector.py:

Now gpu_metrics was created in /tmp/nni/script:
{"Timestamp": "Mon Aug 12 11:29:18 2019", "gpuCount": 2, "gpuInfos": [{"activeProcessNum": 2, "gpuMemUtil": "0", "gpuUtil": "0", "index": 0}, {"activeProcessNum": 2, "gpuMemUtil": "0", "gpuUtil": "0", "index": 1}]} {"Timestamp": "Mon Aug 12 11:29:23 2019", "gpuCount": 2, "gpuInfos": [{"activeProcessNum": 2, "gpuMemUtil": "3", "gpuUtil": "30", "index": 0}, {"activeProcessNum": 2, "gpuMemUtil": "0", "gpuUtil": "0", "index": 1}]} {"Timestamp": "Mon Aug 12 11:29:28 2019", "gpuCount": 2, "gpuInfos": [{"activeProcessNum": 2, "gpuMemUtil": "0", "gpuUtil": "0", "index": 0}, {"activeProcessNum": 2, "gpuMemUtil": "0", "gpuUtil": "0", "index": 1}]} {"Timestamp": "Mon Aug 12 11:29:33 2019", "gpuCount": 2, "gpuInfos": [{"activeProcessNum": 2, "gpuMemUtil": "0", "gpuUtil": "0", "index": 0}, {"activeProcessNum": 2, "gpuMemUtil": "10", "gpuUtil": "24", "index": 1}]}

@martsalz Seems there is already a gpu metric collector running. The pid is 21315.
Please paste the output of following commands: (in your venv)

ps aux | grep nni_gpu_tool
echo $METRIC_OUTPUT_DIR
tail $METRIC_OUTPUT_DIR/* (if the variable is not empty)

Seems there is already a gpu metric collector running. The pid is 21315.
Please show us the output of following commands: (in your venv)

ps aux | grep gpu_metric
echo $METRIC_OUTPUT_DIR
If the variable is not empty, head ${METRIC_OUTPUT_DIR}/*

No output for echo $METRIC_OUTPUT_DIR

@martsalz OK. The problem is that a failed "zombie" collector is preventing new ones to start.
Kill all related processes (1362, 2044, 21291, and 21315) and try running NNI again.

I've killed the processes.

ps aux | grep gpu_metric
nnictl  create --config nni/examples/trials/mnist/config.yml (start NNI on S1 remote S3)
ps aux | grep gpu_metric

nnimanager.log on server 1: TMP_NO_AVAILABLE_GPU

I don't know if this is helpful: the NNI tool can't be started on server 3 (local) either. Remote (server 1 -> server 3), NNI works on server 3 with TF CPU

It means the GPU metric collector is still not working...
Please kill all related processes, remove /tmp/nni, and try METRIC_OUTPUT_DIR=/tmp/nni/script python3 -m nni_gpu_tool.gpu_metrics_collector again.

After several attempts, I cannot make any progress with the solutions proposed. Therefore I installed and executed NNI locally on another PC:
Tensorflow GPU is installed and the GPU is used / available (see nvidia-smi). The GPU is used e.g. for this MNIST example: https://github.com/keras-team/keras/blob/master/examples/mnist_cnn.py
NNI works with TF CPU - the application switches to RUNNING mode after a few seconds.
NNI does NOT work with TF GPU - in this case no "experiments" folder is created and no error message is logged. The web interface says WAITING. This state remains permanent until the process is aborted.
My user account has admin privileges on this PC. I also executed the python3 gpu_metrics_collector.py script and killed individual processes (ps aux | grep gpu_metric).
See the following details:

And if I use the developer version: v0.8-319-g19173aa (local on server 3), then the WAITING mode remains permanent. No error message, no folder is created under "experiments" (GPU).
If the CPU is selected, everything works fine...

Try these steps:

Clear the environment (kill processes and remove directories)
Create directory /tmp/nni/script
Run command METRIC_OUTPUT_DIR=/tmp/nni/script python3 -m nni_gpu_tool.gpu_metrics_collector

The script should create /tmp/nni/script/gpu_metrics and write GPU info to it. (a JSON object per line)
If it does not, we can tell the bug is caused by this script.
If the script works well, keep it running and start NNI in another terminal, with gpuNum set to 1 in config file.

The gpu_metrics script is created in the /tmp/nni/script folder. The status in the web interface still remains permanently on WAITING.
(nvidia-smi indicates that memory is available but no python script (tensorflow gpu) has reserved memory)
$ ps aux | grep gpu_metric msalz    15709  0.0  0.0 112716   976 pts/5    S+   11:26   0:00 grep --color=auto gpu_metric
gpu_metrics:
{"Timestamp": "Tue Aug 20 11:24:25 2019", "gpuCount": 2, "gpuInfos": [{"activeProcessNum": 2, "gpuMemUtil": "2", "gpuUtil": "18", "index": 0}, {"activeProcessNum": 4, "gpuMemUtil": "0", "gpuUtil": "0", "index": 1}]}

Your GPUs are already in use. By default NNI will not use active GPUs.
You may want to set useActiveGpu to change this behaviour.
Please refer to the doc for details.

The GPUs on server 3 are still being used by other users at the same time. After specifying useActiveGpu the GPU is now used.
Thank you very much for your help. :-)


[Bug] Call to undefined function views_path() WHEN STTING NEW CUSTOM THEME

in documentation :
The my-cool-theme/inc/theme_styles.blade.php file should hold all custom CSS that your theme needs. For example:
{{-- You can load files directly from CDNs, they will get cached and loaded from local --}}
<EMAIL_ADDRESS>{{-- You can also load files from any place in your application directories --}}
@basset(views_path('my-cool-theme/assets/css/extra.css'))
{{-- You can also write inline CSS blocks --}}
@bassetBlock('my-cool-theme/custom-styling')

@endBassetBlock
but in usage shows an error : Call to undefined function views_path()

yeah, you right @azeddine-hf, thanks for the heads up 🙏
please use resource_path('assets/css/my-cool-theme/whatever.css'). (need to put the whatever.css in resources/assets/css/my-cool-theme/ directory.
I will send a PR to fix the docs 👍

how can i set it on blade file :
{{ resource_path('assets/css/my-cool-theme/whatever.css') }} LIKE THIS or inside <link ... />
??

On blade you use @basset() directive 👍 Basset will output the correct import tag for it, either link, script etc. eg: https://github.com/Laravel-Backpack/CRUD/blob/ac35070c94c3db7ceb7680b5eb7307cac56eea74/src/resources/views/crud/reorder.blade.php#L233

@pxpm please theme_scripts.blade.php doesn't load why ?

@pxpm please theme_scripts.blade.php doesn't load why ?

No clue, where do you have the file ? How are you including it ?
It's just a blade file, it should just load as any other blade file in the application 🤷

@pxpm the theme_styles it included automaticly but the theme_scripts  does not
i have include it in default.blade.php file manually thank you @pxpm

Yes, in the layout it's where we include them: https://github.com/Laravel-Backpack/theme-coreuiv2/blob/11ec0cbaecefd3272601a7fb0d32457533a09ce6/resources/views/layouts/top_left.blade.php#L50

@pxpm where data didn't load after set my custom them and i set fallback_theme core_ui2

styles of datatable also not loaded ??
i'm i missed something !


Decouple script reduction from signing

[x] ReducedTransaction introduced along with methods to create and sign it
[x] Implemented ColdBlockchainContext

SignedTransaction.toJson(false, false)

Why it is necessary?

SignedTransaction.toJson(false, false)

Why it is necessary?

I used it to serialize the signed transaction to transfer it back to the hot device (code). Because this is done via QR code, too, the size does matter. It is not mandatory to be minified because I could zip the json string as well, but I just stumbled upon that only pretty printed json output works and wanted to note it.

SignedTransaction.toJson(false, false)

Implemented serialization for SignedTransaction in BlockchainContext.parseSignedTransaction

Okay, found out: reducedTx.tx.unsignedTx().outputCandidates() gives a list with the needed information


Array parameter eaten outside of if/while block

as3 code for example:
package {
    public class Issue316 {
        public function Issue316(param1:int = 1) {
            var _loc1_:int = 1;
            this["hint" + _loc1_]; // <--
            this["hint" + param1]; // <--
            this["hint" + anything]; // <--
            if(1==1) {
               this["hint" + _loc1_];
               this["hint" + param1];
               this["hint" + anything];
            }
            while(_loc1_ != 1)
            {
               this["hint" + _loc1_];
               this["hint" + param1];
               this["hint" + anything];
            }
        }
    }
}

expected result

class Issue316
{
    public function new(param1 : Int = 1)
    {
        var _loc1_ : Int = 1;
        this["hint" + _loc1_];  // <--
        this["hint" + param1];  // <--
        this["hint" + anything];  // <--
        if (1 == 1)
        {
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
        }
        while (_loc1_ != 1)
        {
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
        }
    }
}

actual result
class Issue316
{
    public function new(param1 : Int = 1)
    {
        var _loc1_ : Int = 1;
        this["hint"];  // <--
        this["hint"];  // <--
        this["hint"];  // <--
        if (1 == 1)
        {
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
        }
        while (_loc1_ != 1)
        {
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
        }
    }
}

Doesn't happen in haxelib version ( 1.0.6 ) so should be one of the latest updates

Wow, this is a bug, but ActionScript code does not make any sense :(

Ya, i stripped it down from this["hint"].gotoAndPlay("abc"); for clarity ( same results when a method call follows the array declaration )
this["hint" + anything].gotoAndPlay("abc"); turns into this["hint"].gotoAndPlay("abc");

this["hint" + anything].gotoAndPlay("abc"); != this["hint" + anything];

Correct.. as I said, same results for both cases 😄
as3 code for example:
package {
    public class Issue {
        public function Issue(param1:int = 1) {
            var _loc1_:int = 1;
            var a, b, c;
            this["hint" + _loc1_]; // <--
            this["hint" + param1]; // <--
            this["hint" + anything]; // <--
            this["hint" + _loc1_].gotoAndPlay("on"); // <--
            this["hint" + param1].gotoAndPlay("on"); // <--
            this["hint" + anything].gotoAndPlay("on"); // <--
            a = this["hint" + _loc1_];
            b = this["hint" + param1];
            c = this["hint" + anything];
            if(1==1) {
               this["hint" + _loc1_];
               this["hint" + param1];
               this["hint" + anything];
               this["hint" + _loc1_].gotoAndPlay("on");
               this["hint" + param1].gotoAndPlay("on");
               this["hint" + anything].gotoAndPlay("on");
               a = this["hint" + _loc1_];
               b = this["hint" + param1];
               c = this["hint" + anything];
            }
            while(_loc1_ != 1)
            {
              this["hint" + _loc1_];
              this["hint" + param1];
              this["hint" + anything];
              this["hint" + _loc1_].gotoAndPlay("on");
              this["hint" + param1].gotoAndPlay("on");
              this["hint" + anything].gotoAndPlay("on");
              a = this["hint" + _loc1_];
              b = this["hint" + param1];
              c = this["hint" + anything];
            }
        }
    }
}

expected result
class Issue
{
    public function new(param1 : Int = 1)
    {
        var _loc1_ : Int = 1;
        var a;
        var b;
        var c;
        this["hint" + _loc1_];  // <--
        this["hint" + param1]];  // <--
        this["hint" + anything];  // <--
        this["hint" + _loc1_].gotoAndPlay("on");  // <--
        this["hint" + param1]].gotoAndPlay("on");  // <--
        this["hint" + anything].gotoAndPlay("on");  // <--
        a = this["hint" + _loc1_];
        b = this["hint" + param1];
        c = this["hint" + anything];
        if (1 == 1)
        {
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
            this["hint" + _loc1_].gotoAndPlay("on");
            this["hint" + param1].gotoAndPlay("on");
            this["hint" + anything].gotoAndPlay("on");
            a = this["hint" + _loc1_];
            b = this["hint" + param1];
            c = this["hint" + anything];
        }
        while (_loc1_ != 1)
        {
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
            this["hint" + _loc1_].gotoAndPlay("on");
            this["hint" + param1].gotoAndPlay("on");
            this["hint" + anything].gotoAndPlay("on");
            a = this["hint" + _loc1_];
            b = this["hint" + param1];
            c = this["hint" + anything];
        }
    }
}

actual result

class Issue
{
    public function new(param1 : Int = 1)
    {
        var _loc1_ : Int = 1;
        var a;
        var b;
        var c;
        this["hint"];  // <--
        this["hint"];  // <--
        this["hint"];  // <--
        this["hint"].gotoAndPlay("on");  // <--
        this["hint"].gotoAndPlay("on");  // <--
        this["hint"].gotoAndPlay("on");  // <--
        a = this["hint" + _loc1_];
        b = this["hint" + param1];
        c = this["hint" + anything];
        if (1 == 1)
        {
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
            this["hint" + _loc1_].gotoAndPlay("on");
            this["hint" + param1].gotoAndPlay("on");
            this["hint" + anything].gotoAndPlay("on");
            a = this["hint" + _loc1_];
            b = this["hint" + param1];
            c = this["hint" + anything];
        }
        while (_loc1_ != 1)
        {
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
            this["hint" + _loc1_].gotoAndPlay("on");
            this["hint" + param1].gotoAndPlay("on");
            this["hint" + anything].gotoAndPlay("on");
            a = this["hint" + _loc1_];
            b = this["hint" + param1];
            c = this["hint" + anything];
        }
    }
}

I think this is related :
gotoAndStop(param1 + 2);
ends up as :
gotoAndStop(param1);

I'll fix it tonight.

Watch out when testing, this seems to only happen to the first file in a directory that is being processed. The following files don't have this issue

https://github.com/HaxeFoundation/as3hx/commit/2b8bdc88be67478a1dd4154678419a5a53e664bb?w=1#diff-8f512c0986dbff22af802aba4b7463e3R2209
This change broke it, changing this line to                 case _: rvalue = e2; "fixes" it for me, but I don't know what else it would break. My "fix" doesn't seem like the previous code.

Yeah, I think that's a side-effect. process() seems to be missing var initializations to clean up the last file. I guess changing  :
    public function process(program : Program, writer : Output):Map<String, Bool> {
        warnings = new Map();

        //list of imported types must be reseted for each file,
        //as only one instance of Writer write all the files
        imported = [];

to
    public function process(program : Program, writer : Output):Map<String, Bool> {
        warnings = new Map();

        //list of imported types must be reseted for each file,
        //as only one instance of Writer write all the files
        imported = [];

        //we're in a new file, so reset all vars
        lvl = 0;
        varCount = 0;
        context = new Map();
        contextStack = new Array();
        inArrayAccess = false;
        inEField = false;
        inE4XFilter = false;
        inLvalAssign = false;
        lineIsDirty = false;
        rvalue = null;

        typeImportMap = new Map<String,String>();
        genTypes = [];

would make sense?

So the test case was tainted by that missing clean up. If we clean up rvalue by adding this to writeEBinop :
    function writeEBinop(op:String, e1:Expr, e2:Expr, newLineAfterOp:Bool):BlockEnd {
        rvalue = null;

Then it will happen for every line :
package {
    public class Hint {
        public function Hint(param1:int = 1) {

           gotoAndStop(param1 + 1);
           gotoAndStop(param1 + "hello");
           gotoAndStop("a" + "hello");
           if(_loc2_ < this.regionNum)
           {
               _loc3_ = new ColorTransform(a / 255);
               _loc3_ = new ColorTransform(a * 255);
               _loc3_ = new ColorTransform(a + 255);
               _loc3_ = new ColorTransform(a - 255);
           }
            this["hint" + _loc1_];
            this["hint" + param1];
            this["hint" + anything];
            this["hint" + _loc1_].gotoAndPlay("on" + 0);
            this["hint" + param1].gotoAndPlay("on" + 1);
            this["hint" + anything].gotoAndPlay("on" + 2);
            a = this["hint" + _loc1_];
            b = this["hint" + param1];
            c = this["hint" + anything];

            while (_loc2_ < this.regionNum) {
                // something
            }

            if(1==1) {
               gotoAndStop(param1 + 2);
               this["hint" + _loc1_];
               this["hint" + param1];
               this["hint" + anything];
               this["hint" + _loc1_].gotoAndPlay("on");
               this["hint" + param1].gotoAndPlay("on");
               this["hint" + anything].gotoAndPlay("on");
               a = this["hint" + _loc1_];
               b = this["hint" + param1];
               c = this["hint" + anything];
            }
            while(_loc1_ != 1)
            {
              gotoAndStop(param1 + 2);
              this["hint" + _loc1_];
              this["hint" + param1];
              this["hint" + anything];
              this["hint" + _loc1_].gotoAndPlay("on");
              this["hint" + param1].gotoAndPlay("on");
              this["hint" + anything].gotoAndPlay("on");
              a = this["hint" + _loc1_];
              b = this["hint" + param1];
              c = this["hint" + anything];
            }
        }
    }
}

result :

class Hint
{
    public function new(param1 : Int = 1)
    {
        gotoAndStop(param1);
        gotoAndStop(param1);
        gotoAndStop("a");
        if (_loc2_)
        {
            _loc3_ = new ColorTransform(a);
            _loc3_ = new ColorTransform(a);
            _loc3_ = new ColorTransform(a);
            _loc3_ = new ColorTransform(a);
        }
        this["hint"];
        this["hint"];
        this["hint"];
        this["hint"].gotoAndPlay("on");
        this["hint"].gotoAndPlay("on");
        this["hint"].gotoAndPlay("on");
        a = this["hint"];
        b = this["hint"];
        c = this["hint"];

        while (_loc2_)
        {  // something

        }

        if (1 == 1)
        {
            gotoAndStop(param1);
            this["hint"];
            this["hint"];
            this["hint"];
            this["hint"].gotoAndPlay("on");
            this["hint"].gotoAndPlay("on");
            this["hint"].gotoAndPlay("on");
            a = this["hint"];
            b = this["hint"];
            c = this["hint"];
        }
        while (_loc1_ != 1)
        {
            gotoAndStop(param1);
            this["hint"];
            this["hint"];
            this["hint"];
            this["hint"].gotoAndPlay("on");
            this["hint"].gotoAndPlay("on");
            this["hint"].gotoAndPlay("on");
            a = this["hint"];
            b = this["hint"];
            c = this["hint"];
        }
    }
}

The issue is this : rvalue != null check : https://github.com/HaxeFoundation/as3hx/blob/master/src/as3hx/Writer.hx#L2229
If we remove this check, the output is written correctly. OR if we give rvalue any kind of value - e.g. e1 or e2... ( the output is the same ). Any idea what rvalue is used for and when it should be really cleaned up?

@mastef I checked the last wizard and I do not have generation errors

@SlavaRa  was it the first file in the directory? as mentioned above this only affects the first file, because vars are not cleared up properly. apply this patch and run again https://github.com/HaxeFoundation/as3hx/issues/316#issuecomment-346021257

@SlavaRa in options change from 1.0.6 to GIT and hit compile : http://as3hx.spacemages.com/#46713

@SlavaRa did you have time to take a look? As this is a huge issue with the current git version

tonight

Any ideas?

I fixed, I'll push fix after work, now busy

Ok, time to test it! 😄

@mastef please try last master

@SlavaRa Thanks! Looks like it's fixed 😄
Still what do you think about the clean up in process?
Right now when you process multiple files, the global static vars are not cleaned up when a new file is being processed. So old settings are still present, although we're in a new file.

i will check it today


Missing R Host produces error that is not informative

For local we should not say 'on machine ABC' and rather say something like 'Installation of R is missing or corrupted at path' and check for the R Host existence (which we used to to in 0.5 and earlier)

https://github.com/Microsoft/RTVS/commit/541aabfcf429f850d4a153c9e75c6e63e8cf4d5b


SpeechRecognition not defined?

Hello,
I am trying to get the example code working:
   <script type="text/javascript">
    var recognition;
    document.addEventListener('deviceready', onDeviceReady, false);

    function onDeviceReady() {
        try {
            recognition = new SpeechRecognition();
        }
        catch(err){
            console.log(err.message);
        }
        recognition.onresult = function(event) {
            if (event.results.length > 0) {
                q.value = event.results[0][0].transcript;
                q.form.submit();
            }
        }
    }
    </script>
    <form action="http://www.example.com/search">
        <input type="search" id="q" name="q" size=60>
        <input type="button" value="Click to Speak" onclick="recognition.start()">
    </form>
    <script type="text/javascript" src="cordova.js"></script>
    <script type="text/javascript" src="js/index.js"></script>

`
However I recieve the error:

When I run cordova plugin ls the plugins are listed:

Any help is appreciated.

Solved, I was trying to use the Phonegap developer app instead of building and installing. Works after building.


Al and ML

Description
if any developer is expert in ai ml can you just add a roadmap of ai ml roadmap and also good resources.
Screenshots
No response
Additional information
No response

can't we use this playlist of Kunal on AI & ML as a starting point.

we all need this repository kind of roadmap and resources in ai and ml. industry's best creators of youtube resources like web development already have.

Hello guys, any one interested to collaborate w me to create the ML roadmap?

@Vishvsalvi, I would love to work with you. Please assign this to me.

I would also like to collaborate.

That's great guys, we need to inform maintainers first coz they are busy and barely pay any attention in this roadmap

can i contribute a roadmap for ML

I also want to contribute on this isssue

Hey @1nevil  can you assign this issue to me would love to contribute

how I will assign it @KaKashi1210   @sonustar @prakashvishal93 ?

sorry by mistake closed issue sorry for that.

Is this issue still open? I would like to contribute my part.


VPC, Subnet and KeyName not used from config

Hello,
So basicly yeah, title explains it all. Those values are not used from config, it just usses default values.
This is a small thing, i could fix it, admin confirm ?

Yes it's definitely an issue, a patch would be welcome!


[Application card] - Child age should not be negative

if the child age is less than 1 year, then display "< 1 рік", else display years

done


chore(monorepo): migrate frontend bundling from webpack to vite

Overview
This PR migrates monorepo frontend bundling from webpack to vite. It also migrates all jest tests to vitest.
Test Plan
Because this PR is so massive, the best way to test this is to smoke test:

PD
The desktop app
The ODD app (on a Flex)
Labware Library
Components library (storybook)

Changelog

Adopt vite as the frontend bundler
Adopt vitest as the frontend testing library

Review requests
This PR is massive so it's not going to be a good use of time to go through every file change. Important ones to review though:

vitest config
vite config in each project
package json in each project
electron bundler config
makefiles in each project

Risk assessment
on a scale from 1-10 probably like a 47

[ ] Fix hover case
Seems that fireEvent.mouseOver(element) doesn't work.
Also userEvent.hover() doesn't work...

  // with async
   await userEvent.hover(button)
   await waitFor(() => {
     expect(button).toHaveStyle(`background-color: ${COLORS.blue55}`)
   })


updated ledger, wallet, etc. in save schema howto (2nd try on PR)

I'm getting each HOW-TO example (in Rust for now) to work again

I'm closing this, resetting my fork and will resubmit the PR.  Sorry for my problem with DCO.


Different result from CLI and web UI

I tried to generate api key for login, however, key generated from web UI failed with CLI "bx login --apikey"
I then follow online doc to generate api key from CLI, login succeed, however, with empty Resource group, Org and Space. In web UI I could see all those:
Resource group: JamesGuanResourceGroup
Org: my ibm email<EMAIL_ADDRESS>Space: dev and another one
Another team member has the same issue. Talk to me offline to get all details.

I was confused with API endpoint:
in second try with "bx login -a api.ng.bluemix.net --sso" and then "bx iam api-key-create ...", the created API key can be seen from web UI https://console.bluemix.net/iam/#/apikeys
My first try set API endpoint api.stage1.ng.bluemix.net. Sorry!
BTW, if possible, could you show me URL for  api.stage1.ng.bluemix.net?


or-tools: enable cross-compilation

Description of changes
This PR enables cross-compiling Google OR-Tools. This required changes to pybind11 and protobuf as well.
pybind11 needed a setup hook to allow it's CMake module to find the proper Python headers and libraries for the host platform. This is basically the return of #200772 in setup hook form. This setup hook should help cross-compile other packages that use pybind11, but I haven't done much testing of this.
Each change is explained in more detail in the commit messages.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin
[x] armv6l-linux (cross)

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

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

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

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

[x] Fits CONTRIBUTING.md.

@ofborg build pkgsCross.armv7l-hf-multiplatform.or-tools

I realized this depends on #204875 as well. I'll include it this PR for testing purposes, but it doesn't need to go into staging so should be merged separately.

@ofborg build pkgsCross.armv7l-hf-multiplatform.or-tools

Can you please rebase

Bisected a failure to import the esphome component in home-assistant to 4039dbd (#205199).
2023-04-27 15:14:36.988 ERROR (MainThread) [homeassistant.config_entries] Error occurred loading flow for integration esphome: No module named 'google'
2023-04-27 15:14:36.988 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/nix/store/ad6hqr3bb565fag2a6h5hfniybpxab40-homeassistant-2023.4.6/lib/python3.10/site-packages/homeassistant/config_entries.py", line 2042, in _load_integration
    integration.get_platform("config_flow")
  File "/nix/store/ad6hqr3bb565fag2a6h5hfniybpxab40-homeassistant-2023.4.6/lib/python3.10/site-packages/homeassistant/loader.py", line 779, in get_platform
    cache[full_name] = self._import_platform(platform_name)
  File "/nix/store/ad6hqr3bb565fag2a6h5hfniybpxab40-homeassistant-2023.4.6/lib/python3.10/site-packages/homeassistant/loader.py", line 796, in _import_platform
    return importlib.import_module(f"{self.pkg_path}.{platform_name}")
  File "/nix/store/412d25bdawy2idxfpnis8vjcm8cz2ag7-python3-3.10.11/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 992, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/nix/store/ad6hqr3bb565fag2a6h5hfniybpxab40-homeassistant-2023.4.6/lib/python3.10/site-packages/homeassistant/components/esphome/__init__.py", line 10, in <module>
    from aioesphomeapi import (
  File "/nix/store/5agw8sbr6830qijn0bwvlfl76czvm4bl-python3.10-aioesphomeapi-13.7.2/lib/python3.10/site-packages/aioesphomeapi/__init__.py", line 3, in <module>
    from .client import APIClient
  File "/nix/store/5agw8sbr6830qijn0bwvlfl76czvm4bl-python3.10-aioesphomeapi-13.7.2/lib/python3.10/site-packages/aioesphomeapi/client.py", line 18, in <module>
    from google.protobuf import message
ModuleNotFoundError: No module named 'google'

#229148


[Defaults]: Year Collections items doesn't logging

Link to File
https://github.com/Kometa-Team/Kometa/blob/master/defaults/both/year.yml
Version Number
2.1.0
What branch are you on?
master
Describe the Bug
All best of Year collections aren't logging existing\missing items, and they aren't show in report as well

There would be no "missing" items since the Best of XXXX collections are based on the already existing items in your library, it does not check against any third-party site.


drop NaNs in binned output?

binned output contains NaNs (for time periods that are empty); should these be dropped?
when representing in NetCDF these become NaNs and would have to be replaced with the appropriate fill value; it seems more useful to all downstream tools to just drop the NaNs and have discontinuous time indices instead.

Yes.


chore: Add basic tests

Make multiple test modules into integration-tests
Add productionMode test.
Add developmentMode test.
Add test for reusable theme.
part of #4

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

New lines added.


Add leaderboard

Component to view top artists, filter by number of inks, sales & likes, and time range (all-time, last 30 days, last 7 days)

This is great!


Move flakey specs JS into script file

Context

Changes proposed in this pull request

Guidance to review

Link to Trello card

Things to check

[ ] If the code removes any existing feature flags, a data migration has also been added to delete the entry from the database
[ ] This code does not rely on migrations in the same Pull Request
[ ] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[ ] API release notes have been updated if necessary
[ ] Required environment variables have been updated added to the Azure KeyVault

Closing as this draft was checking build actions


add: add the Mapper component

Other than my specific comments, I think that we should try to narrow down tests in simpler ones with less rules for each test and not using a bigger JSON file loading them all.
I mean, I would like to have tests like this:
@Test
    public void test() {
        List<MappingRule> rules = new ArrayList<>();
        rules.add(new MappingRule("fleet/{fleet}/vehicle/{vehicle}", "fleet_{fleet}"));
        MqttKafkaMapper mapper = new MqttKafkaMapper(rules);
        assertThat(mapper.map("fleet/5/vehicle/10"), is("fleet_5"));
    }

You create your rules, provide them to a mapper and then use/test it.
In this way, we can have more tests focusing on specific patterns we want to test. You see the rules defined in the test, without the need to move to the JSON file/rules. You can immediately see what expecting.

@ppatierno I totally agree with you.

Other than my specific comments, I think that we should try to narrow down tests in simpler ones with less rules for each test and not using a bigger JSON file loading them all. I mean, I would like to have tests like this:
@Test
    public void test() {
        List<MappingRule> rules = new ArrayList<>();
        rules.add(new MappingRule("fleet/{fleet}/vehicle/{vehicle}", "fleet_{fleet}"));
        MqttKafkaMapper mapper = new MqttKafkaMapper(rules);
        assertThat(mapper.map("fleet/5/vehicle/10"), is("fleet_5"));
    }

You create your rules, provide them to a mapper and then use/test it. In this way, we can have more tests focusing on specific patterns we want to test. You see the rules defined in the test, without the need to move to the JSON file/rules. You can immediately see what expecting.

in addtion, if we want to test multiple entries. we just more MappingRule to the rules list.

in addtion, if we want to test multiple entries. we just add more MappingRule to the rules list.

of course, mine was just an example. For sure we want tests where there are multiple rules.

So, I took a look at the logic but I think it could be improved and maybe "simplified". I don't have the implementation but the overall picture of how it could work, so I will leave you @antonio-pedro99 to check how it could work and developed.
Let me use some examples to explain the logic I am envisaging.
From an MQTT perspective we could have the following three patterns:
buildings/{building}/rooms/{room}/device/{device}
buildings/+/rooms/+/device/+
buildings/+/rooms/{room}/device/+

So using all placeholders, all + or a mix of them.
When the user has placeholders in the MQTT pattern, they can be used in the Kafka topic template, so that we have a relationship between placeholder names.
When using the + in the MQTT pattern, I would avoid the user to use placeholders in the Kafka topic template because the "positional" replacement could be problematic.
What I am saying is ...
buildings/{building}/rooms/{room}/device/{device} --> buildings_{building}_rooms_{room}/device_{device} IS OK
buildings/+/rooms/+/device/+ --> buildings_{building}_rooms_{room}/device_{device} IS NOT OK
buildings/+/rooms/+/device/+ --> buildings_data IS OK
buildings/+/rooms/{room}/device/+ --> `buildings_data_{room} IS OK
Also the Java Pattern(s) to the corresponding MQTT ones could be like following
buildings/{building}/rooms/{room}/device/{device} --> buildings/(?<building>[^/]+)/rooms/(?<room>[^/]+)/device/(?<device>[^/]+)
buildings/+/rooms/+/device/+ --> buildings/([^/]+)/rooms/([^/]+)/device/([^/]+)
buildings/+/rooms/{room}/device/+ --> buildings/([^/]+)/rooms/(?<room>[^/]+)/device/([^/]+)
As you can see I am defining regex groups with names when there is a placeholder so that I can access the group by name (see matcher.group("nameofgroup") method) when I want to get the placeholder value from the actual MQTT topic and replacing inside the Kafka topic template.
Said that, I think that the following are things you could think about:

given the Kafka topic template with placeholders and MQTT topic pattern with placeholders, you have to be check that Kafka placeholders are in the list of the MQTT placeholders (in order to be able to do the replace with actual values).
to build the Java Pattern(s) with named groups you need anyway to extract the list of placeholders from the MQTT topic pattern. Then it should be easy to format a group as (?<name of the placeholder>[^/]+) and replace to build the Java Pattern.
when an actual MQTT topic matches a pattern, you can walk through the named groups, getting the value and replace into the Kafka topic template, to make the actual Kafka topic.

@ppatierno in this case
buildings/+/rooms/+/device/+ --> buildings_{building}_rooms_{room}/device_{device} IS NOT OK
what should be the output? Does not use exception suffices the problem?
In my recent approach, I am tackling this issue.
Splitting the template and the MQTT pattern won't work because the template can have delimiters or not. So what I am doing is, at first getting all the placeholders from the template and add in hash Map with null value, in this case:
building:null,
room: null,
device: null.
Now after splitting the MQTT pattern to check for placeholders, if no placeholders that are in the hash Map are found, we can not build the actual Kafka topic from the template. Otherwise, we just update the value of the placeholders that are in the hash Map with their actual values from the MQTT topic (not the pattern). To build the actual Kafka topic, we use all the values from the hash map, ignoring all entries with null values.

@ppatierno yes, it is good idea to use named groups.

1. given the Kafka topic template with placeholders and MQTT topic pattern with placeholders, you have to be check that Kafka placeholders are in the list of the MQTT placeholders (in order to be able to do the replace with actual values).
please check my comment

what should be the output? Does not use exception suffices the problem?

I am not sure about exception, maybe we could log a warning and getting the default topic.
For the rest, it's simpler to see the code than reading the explanation :-)


multi pub/sub support

Implements multi pub/sub support outlined in #31

This PR includes all the changes from https://github.com/dapr/go-sdk/pull/47.
I suggest to close this one and submit a new PR only with the Multi Pub/Sub changes. (https://github.com/dapr/go-sdk/pull/47 is approved and can be merged).


Global strings in decompiler

char s[] = {'w','o','r','l','d', '\n'};

int main() {
	printf("hello %s", s);
}

This snippet of code produce the following decompiled code
undefined8 main(void)
{
  printf("hello %s",s);
  return 0;
}

I was wondering if there's any chance to get the value of the char array instead of its name. Am i missing something?
I've compiled this snippet both for AARCH64 and x86_64 with gcc and it produce the same decompiled code.
In IDA hex-rays options if i untick "Print only constant string literals" i can get the following decompiled code:
int __cdecl main(int argc, const char **argv)
{
  printf("hello %s", "world\n");
  return 0;
}

Thank you in advance.

It will depend on if the value is in a memory section that is read-only.

Thank you for the answer, i solved the problem by setting the mutability to constant on the string. I consider this issue solved and closing it.

👍

if you go to the defined strings view, and right click a string the option "default settings" you can set the Mutability to constant and this will seemingly affect all strings everywhere!  Wish I found this ages ago!  It should be the default IMHO.


chore: rerun boiler (version boiler 0.1.0 (commit 8c1b4907))

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (17c9d35) 78.79% compared to head (faf5c04) 78.79%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##           master       #6   +/-   ##
=======================================
  Coverage   78.79%   78.79%
=======================================
  Files          33       33
  Lines        1924     1924
=======================================
  Hits         1516     1516
  Misses        408      408

Flag
Coverage Δ

rust
78.79% <ø> (ø)

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

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


A11y_SQLAzureDataStudio_ConnectToASQLServer_AdvancedProperties_ScreenReader: Wrong data announced by voice over for wrong label.

“Check out Accessibility Insights! - Identify accessibility bugs before check-in and make bug fixing faster and easier.”
GitHubTags:#A11yMAS;#A11yTCS;#SQL Azure Data Studio;#DesktopApp;#MacOs;#Benchmark;#A11y_SQLAzureDataStudioBenchmark;#A11ySev2;#MAS1.3.1;
Environment Details:
Application Name: Azure Data Studio
Version: 1.15.0-insider
Commit: 3a8b74a
Date: 2020-02-11T05:49:41.181Z
VS Code: 1.42.0
Electron: 7.1.11
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Darwin x64 19.3.0
Mac OS:10.15.3
Additional Details:
Screen reader: Voice Over
MAS reference: MAS1.3.1
Repro Steps:
1.Launch Azure Data Studio.
2.Select the Connections icon (if not already selected) from left bar.
3.Hover over the 'Servers' header and select the 'New Connection' icon.
4.Navigate till Advanced button under Connection details & hit enter.
5.Under Advanced Properties check if proper announcements are made by screen reader.
Actual:
"30 unselected" is announced for "Current Language" label under initialization drop down.
Expected:
"30 unselected" should not be announced by voice over screen reader as it is irrelative data  assigned to the "current language" label.
User Impact:
Screen reader users will get confused as wrong data is being announced for the wrong label.
Attachment link reference:
9448_A11y_SQLAzureDataStudio_ConnectToASQLServer_AdvancedProperties_ScreenReader.zip

this is a voice over behavior, we can't really do much here. we are using standard html input tags.

https://user-images.githubusercontent.com/91586743/218715239-e4f5e30d-8cab-412e-b7f7-c663f230573e.mov
Verified the bug issue is fixed.
Git Hub Tags: #Closed;

GitHubTags:#BM-TCS-SQLADS-MAC-Feb2020;


how to create txt files

Hi,
How to create val.txt files.
Anyone please help..

Hi,
you can convert VOC dataset by this:
YOLOv3_TensorFlow/misc/parse_voc_xml.py /

I have encountered the same problem. Have you solved it？


Support glob in src

It's an interesting thought but I think we should pass. It will break backwards compatibility with any files that contain a * in their name as well as add unnecessary code/dependencies. Someone can use glob before passing along src to spritesmith:
var glob = require('glob');
Spritesmith.run({
  src: glob.sync('path/to/files/*.png'),
  ...
}, function () { /* ... */ })

@twolfson sync is not good solution it is slow then async, we have big build and async (speed) is very important

The example was sync but async can be used as well:
var glob = require('glob');
glob('path/to/files/*.png', function handleGlob (err, files) {
  // If there was an error, handle it as desired
  if (err) {
    throw err;
  }

  // Call spritesmith
  Spritesmith.run({
    src: files,
    ...
  }, function () { /* ... */ })
});

@twolfson I would like to have this opportunity to base, but if this is not feasible so sorry


Allow users to report 'bad quality' songs to potentially build up a database of known bad quality ==> good quality replacements

Wouldn't happen for a veeeery long time, but hey could be nice data.

Meh.


Open design question: compound statements in match

Currently in a match-expression result, { } is an initializer list. It ought to be a compound-statement. But then you're into tail-expression territory, and we don't have a good story.

{ } is syntactically an initailizer-list everywhere else.
({ x; }) is gcc's expression-statement, and there x; is the tail expression.

What's the expression-statement story going to be?

Started this approach:
To the rhs of =>, allow expression, choice-init-name or unsafe { } or { }
The latter two are tail-expression-statements. Except inside a match-expression, these will be written as (unsafe{ }) and ({ }). This supercedes the gcc-expression-statement. If the last statement inside the block has no ; then it's a tail-expression and is used as the return object. This will transitively apply to all statements that are indirectly part of the tail-expression. For example:
({ stmts; for(auto i : vec) { if(i == 5) { i } } 101 })
In this case both the i and the 101 are tail-expressions.
Hitting a tail-expression should initialize the target place and break out of control flow, back to the initializer expression.


How does intero-uses-at work?

When I hit M-? on a symbol, other instances of the symbol are highlighted, and the buffer goes into read-only mode. I suspect there's some cool way to navigate between those highlighted instances, maybe even across files, but I'm not finding it by trial and error, and I'm not finding documentation. Also if there's a better way than reloading the buffer to escape intero-uses-at mode, that would be handy.

It's a small mode with n/p to jump between, RET to exit, and r to rename.

Neat!
Now that I know what it does, I may have found a small bug: the rename action does not rename something where its type is stated, only where it is defined and used.

That's right, a slight limitation of the backend engine. It doesn't take type signatures into account. However, one day I can get more info from the AST. When the current version was written, I was pretty new to the GHC API. Now, I could probably do a better job of it.

The mode doesn't seem to do anything in evil mode. n and p end up overridden by evil commands. What are they supposed to do? Perhaps I can rebind them but I can't figure out what n and p are supposed to be bound to in this mode in the first place.


Support for more than one language in generated translation CSV files

Is your feature request related to a problem? Please describe.
When generating CSV files for translation, it'll only include default language when generated, adding them to Godot's translation files. Adding locales to this csv file won't add them to Godot automatically, meaning that for each dialogue file, you have to remember to add the generated translation file to Godot after adding it to the CSV columns.
Describe the solution you'd like
A way to add multiple base languages to generated translation files so we can have the columns created at the same time as the file, resulting in other locales being imported at the same time.
Describe alternatives you've considered
Adding the new locales manually
Additional context
Not much to add.

I'll have to have a think about this because it would be adding complexity to Dialogue Manager that isn't really a direct responsibility of the plugin.

To clarify, forgive me if I don't fully understand, but as it stand right now, Dialogue Manager can't really support multiple languages, is that right?


KeyboardListener import Error on new flutter update

../.pub-cache/hosted/pub.dartlang.org/flutter_persistent_keyboard_height-1.0.0/lib/src/persistent_keyboard_height_provider.dart:54:17: Error: 'KeyboardListener' is imported from both 'package:flutter/src/widgets/keyboard_listener.dart' and 'package:keyboard_utils/keyboard_listener.dart'.
listener: KeyboardListener(willShowKeyboard: _onWillShowKeyboard),

Hi! It seems that you are importing both keyboard_utils and  flutter_persistent_keyboard_height in a single file. If you remove one of the imports, the error should go away. But if you need to use both packages in a single file you can use an import prefix.
For example, instead of import 'package:keyboard_utils/keyboard_listener.dart'; you could write
import 'package:keyboard_utils/keyboard_listener.dart' as keyboard_listener`;

and then use the KeyboardListener with the keyboard_listener import prefix like keyboard_listener.KeyboardListener.

Okay, Thanks

Tried that but still d same error, I used both flutter_persistent_keyboard_height and flutter_keyboard_visibility(it depends on keyboard_utils too)

I used both flutter_persistent_keyboard_height and flutter_keyboard_visibility

Did you try prefixing flutter_keyboard_visibility import too?

Yes

Can you please provide a minimal reproducible example? I tried importing both packages you mentioned (flutter_keyboard_visibility and flutter_persistent_keyboard_height) and everything works fine for me.

Without further information, I'm unable to help you therefore I'm closing the issue. I believe this is not an issue with the package. Please feel free to reopen if this still blocks you and you can provide a minimal reproducible example.

the package "flutter_persistent_keyboard_height" imports both 'package:flutter/src/widgets/keyboard_listener.dart' and 'package:keyboard_utils/keyboard_listener.dart'. KeyboardListener() is available in both imports.
You, as package creator, should check this.

Fixed in #2


Dockerfile.dev: install clean-css-cli instead of clean-css

In clean-css 4.0, the CLI script which we depend on was split out into a
separate package, clean-css-cli.[0] Install this instead.
[0]
https://github.com/jakubpawlowicz/clean-css#important-40-breaking-changes
Signed-off-by: Andrew Donnellan<EMAIL_ADDRESS>

Oh great thanks


Storage explorer web version fails to load blobs and thorws unhelpful message.

Storage Explorer Version: Web Version from console.
Build Number: NA
Platform/OS:  macOS Catalina
Architecture:  x64?
Regression From:  NA
Bug Description
Storage explorer web version fails to load storage account and shows cryptic error message
Steps to Reproduce
Browse to a storage account.
Try to open any of the blobs listed.
Expected Experience
The explorer should list blobs in the account.
Actual Experience
The explorer throws unhelpful error message.

Additional Context

@cloudhubzawsaz We don't own the web version of Storage Explorer. We only have control over the desktop version of Storage Explorer. If possible, please try the desktop version to see if solves your problem. You can download our application from here https://azure.microsoft.com/features/storage-explorer/

BTW, if #3875 is what you see after trying our desktop app, let's close this issue and investigate that one there.

Happy to close the issue. Where can I log the issue for the Web version please?

The web version is a part of Portal, you can go to https://portal.azure.com and submit a support ticket from the "smile face" button at the top.