[Rate-limit] Global visible device count [and others]

What is the meaning of Global visible device count for normal use? It fills my logs very quickly.

Good point. That collection of sensors should probably be limited to 60 second updates.
The global device count is effectively the count of how many unique bluetooth MAC addresses the system has seen recently (where "recently" is not tightly defined, since we prune the list occasionally). It is useful as one of the general indicators of health / functioning of the bluetooth backend, since the HA bluetooth integration doesn't give much visibility into whether it's working at all.
You're right though, those updates are excessive, I'll tame them down in a coming release.

I excluded them from the logbook as they are very excessive, mine hits 700 in a few hours.


Fix broken / invalid links

bitplatform.dev

components.bitplatform.dev

bitservices.company

Change LinkedIn URL to https://www.linkedin.com/company/bitplatformhq/


Visibility Closed Workflow need to sort close_time instead of start_time.

Currently all list close workflow APIs are ordered by workflow start_time, this lead to confusion when users try to "list failed workflows in last 7 days" where they only saw those failed workflow started within 7 days. The reason is closed_executions initially chose to use start_time as clustering key and sort by that.
With latest Cadence server v0.5.3, users need to follow the following steps to migrate to this feature:

update db schema and make sure visibility keyspace contains table closed_executions_v2
let visibility data goes to both close_execution and close_executions_v2 tables for longest domain retention.
enable dynamic config system.enableReadFromClosedExecutionV2 and restart server.
There is no changes needed from Cadence client side.

Details could be found:

https://github.com/uber/cadence/pull/1221
https://github.com/uber/cadence/pull/1470


Add awesome ALT commands

This adds the commands I find very helpful. Working on complete words is IMHO more helpful than working with characters.

Thank you :-)


Add a diff link to CHANGELOG.md, update cargo-release replacements.

Add links to CHANGELOG.md
Add related replacements for cargo-release

Motivation
The intent here is to make cargo-release also handle CHANGELOG.md.

Current dependencies on/for this PR:

main

PR #46   👈

This comment was auto-generated by Graphite.

I saw the --quiet go away in #45 but failed to fully realize the consequences. This is on 86aa081 this build should be failing.

Blech, OK, thanks


Run multiqc once for raw and trimmed data

Actually multiqc_before_trimming is removed altogether - all qc data are collected in one report, with separate fastqc sections for raw and trimmed data.


Handling different package names in different systems

How would differences in package names be handled? For example, on Arch Linux this project is called json-c while on Debian it's called libjson-c-dev. Perhaps a file could be created that tracked "translations" between operating systems.

Noted

Note:
Debian based systems tend to at lib at the beginning of some packages while arch tends to not


Viziquer integration with FAAS

FAAS stands for "Fast Approximate Autocompletion for SPARQL" and it is thoroughly explained under the page at https://aidanhogan.com/docs/sparql-autocompletion.pdf.
The aim of this ticket:

integrate Viziquer with FAAS
take "dss-based-schemata" branch as a starting point
in the initial stage it is acceptable to make a call to FAAS directly from Viziquer without involving data-shape-server
in the initial stage only Wikidata endpoints is targeted. Optionally DBpedia to be included
expected functionality:

query instances by class name
query instance by incoming and outgoing attributes
query properties by property

Integration work completed.


MuxCase and MuxLookup only take Bits subclasses, not Data subclasses?

Is there a reason MuxCase and MuxLookup can only take subclasses of Bits? It would be useful to also be able to call it for bundles. I tried making the change myself (just changing the type parameters in the definition) and it works just fine. I don't see why they shouldn't be able to take the same set of types as the regular Mux builtin.

I agree, can you make the corresponding PR?

Sure, I'll do that.


Vue.directive-The element of the instruction binding does not have data update. Upload also triggers.

When I bind two different elements to different instructions v-hello and v-world, I find that both v-hello and v-world hook functions upload are triggered when the template is updated, and I think the binding element upload should trigger only the elements bound by the instruction.

v-world hook functions

Are you using function syntax or an object with bind function? because if the first one then this behavior is correct. it will be called when the directive is bound to the element and also every time component is updated. Is explained in the docs https://vuejs.org/v2/guide/custom-directive.html#Function-Shorthand

Thank you for your answer.
The problem I have here is that the v-hello and v-word instructions update the data of other elements after they are bound to their respective elements, triggering the update hook function of the v-hello and v-word instructions, which I think is called when the template where the bound element is updated.

@chenrenxing can you provide some reproduction of this issue? i am afraid i don't quite understand your problem

@sqal
First of all, thank you
<button @click="change">{{msg}}

If you click the change event to trigger, I don't think the hook function alert ('update') of the v-world and v-hello instructions should be triggered.

@sqal
First of all, thank you

<button @click="change"> {{msg}} </button>

If you click the change event to trigger, I don't think the hook function alert ('update') of the v-world and v-hello instructions should be triggered.

@chenrenxing They should be triggered and here's why. When you click on the button you change this.msg property and because its value changed, it will trigger the update of the component (template). Now let's see what documenttion says about directive's update hook:

update: called after the containing component’s VNode has updated, but possibly before its children have updated.

So as you see your code works as expected. Notice that when you click on the button for the second time, update hooks are not called, because this.msg hasn't changed therefore Vue doesn't need to re-render your component.


Merged Workaround Packs

I merged the workaround packs for BOTW into GPU catagories for OpenGL and updated their version to 4.
Along with this removed the workarounds for intel flipped lights and reduced bloom as I tested and concluded that its a non issue on latest drivers for iGPUs
I also updated LWZX Crash pack to V4 as well.

#411 reorganizes workaround packs as well, personally more of a fan of how it's done there.


fix: handle tstzrange PostgreSQL column type

SUMMARY

Addresses the issue #19995 .
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TESTING INSTRUCTIONS

Use Superset to connect to a PostgreSQL database with a column of type tstzrange. Then, on "SQL Lab" -> "SQL Editor" try to query the database on data from the table that has the tstzrange column type.
The bug shows the error message stating it is unable to serialize the data. This PR creates a representation for that column type.
ADDITIONAL INFORMATION

[X] Has associated issue: #19995
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

@dmelo @john-bodley do either of you want to follow up on patching this PR to get it in and close the issue? I assume the issue is still valid in current Superset, but I'm not sure.

@rusackas , yes. I'll go over the PR. But I think I'll need a few more days.

Closing this PR, as it seems to have been superseded by https://github.com/apache/superset/pull/23865 . More details on the issue https://github.com/apache/superset/issues/19995


Update pre-commit versions and minor style fixes

Trying to help with the pre-commit automation https://github.com/pymc-devs/nutpie/pull/145 :)
I did some very minor style-related changes to make ruff happy :) This way we can unblock the pre-commit automation

Do I need to do some Cargo lock or something? 😅

Thank you, that constant failing autogenerated PR was a bit annoying :-)
I think the problem is that the pipeline is now trying to build with python 3.13, but the selected version of pyo3 only allows up to 3.12. We need to update pyo3 to fix this, but because of the new free-threaded python builds this requires some code changes. They are already part of https://github.com/pymc-devs/nutpie/pull/154, and I think that will be ready to merge pretty soon (next year though), so maybe we just wait with this PR until #154 is merged?
I think we can simply delete the notebook by the way, that shouldn't really be in the repo at all at this point.

Sounds good! Exited about https://github.com/pymc-devs/nutpie/pull/154 :)


face_id Null

I have setup my own local server, but it is not working the same as your hosted server. I can get some entries into my mongoDB, but not a face_Id. Also, I do not have the autocomplete on the stocks...any ideas?
  "_id": {
    "$oid": "57596b0c8707b1c81c086069"
},
"name": "Skillful Chinchilla",
"email"<EMAIL_ADDRESS>"zipcode": "98052",
"homeAddress": "800 Occidental Ave S, Seattle, WA",
"workAddress": "1 Microsoft Way Redmond, WA",
"stock": "ert",
"__v": 0,
"face_id": null

For the Face ID we've not yet added support for browser only snapshots, are you running the app in a Hosted web app container?


Bug: cancel dio request through interceptors does not make DioError type DioErrorType.CANCEL but DEFAULT

Platform name: flutter android
Platform version: Flutter 1.22.5, Dart 2.10.4
Dio version:  3.0.10
happens all the time :
This is very clear minimal code to reproduce:
Widget build(BuildContext context) {
    CancelToken token;
.
.
.
RaisedButton(
              child: Text('requst'),
              onPressed: () async {
                try {
                  Dio dio = new Dio();
                  dio.interceptors.add(InterceptorsWrapper(
                      onRequest: (RequestOptions options) async {
                    token = CancelToken();
                    options.cancelToken = token;
                    return options; //continue
                  }));

                  var res = await dio.get("/test/long");

                  print(res.data);
                } catch (e) {
                  if (CancelToken.isCancel(e)) {
                    print('cancelled by dio');
                  } else {
                    print('error${e.toString()}');
                  }
                }
              },
            ),
            RaisedButton(
              child: Text('cancel'),
              onPressed: () {
                token?.cancel('c');
              },
            )

If i create the CancelToken inside the onRequest interceptor it cancel the request but with DioErrorType.DEFAULT and not DioErrorType.CANCEL so I can't tell how this request has stopped
Thanks

same issue

Is this even working? For what I could see it seems like the requests are not being cancelled if the cancelToken is added through an interceptor


fix(deps): update terraform github.com/terraform-ibm-modules/terraform-ibm-landing-zone-vpc to v2.3.3

This PR contains the following updates:

Package
Type
Update
Change

github.com/terraform-ibm-modules/terraform-ibm-landing-zone-vpc
module
patch
v2.3.2 -> v2.3.3

Release Notes

terraform-ibm-modules/terraform-ibm-landing-zone-vpc
v2.3.3
Compare Source
Bug Fixes

remove acl and sg validation rule (#163) (c604a85)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

:tada: This PR is included in version 1.10.5 :tada:
The release is available on:

GitHub release
v1.10.5

Your semantic-release bot :package::rocket:


feat/placement of images is resolved

#265  placement of images in testimonial section is resolved
fixes #265 under gssoc'24

Check #291
I already made a pr for this issue.

Kindly close this PR.

@drick-infinity  this task has been done by the assignee


Zoom "end" is not called when pinch zooming and you start the zoom with the 2nd finger outside the chart

This also happens sometimes when the 2 fingers are inside the container at the start of the zoom (and the 2nd is outside when zooming stops), but it happens consistently if I start zooming with the 2nd finger outside the container.
I was using version 7.3.0 but when I tested with 7.8.0 it had the same behavior.

is this a duplicate of #229?

No, I have tried this on a tablet on Chrome and Samsung Internet (and the behavior is the one I am describing). I will edit my original post


Change data/dataKind fields to be a map (kind -> data) instead

This will allow build targets and other structures which are allowed to carry additional data to include more than one kind of data. For example, Scala targets need both Scala-specific data and more general JVM data. Currently that's solved by nesting the second kind of data as a field in the first kind of data. This won't scale well when we start supporting more extensions to the base protocol.

:+1: This would solve a problem that I have currently.
I would like to add a Twirl extension in BSP but currently this is only possible either by nesting the Scala extension into the Twirl one, or the Twirl one into the Scala one, which I would try to avoid both. A map of kind to data would be an elegant solution.

Agree. Essentially we could define data simply as a a json object with keys/values in the protocol.
Question is only how to avoid naming conflicts. Perhaps recommending namespaces is sufficient though.

Question is only how to avoid naming conflicts. Perhaps recommending namespaces is sufficient though.

Not sure what you mean by namespaces. Something like this should work though:
"data":{
  "jvm": {
    "javaHome": "???",
    "javaVersion": "???"
  },
  "scala":  {
    "scalaVersion": "???",
    "jars": ["", ""];
  },
 "twirl": {
    "twirlVersion": "???",
    "twirlCompilerJar": "???"
  }
}

I meant that if the number of data kinds becomes large enough, people might name their fields the same inadvertently. In which case we'd want something like the java package names convention. This doesn't seem necessary at the moment though.
Separately, we could support this in BSP 2.x by introducing a datakind: "map" that specifies that data can have multiple fields, and their content corresponds to the existing shapes for data. What do you think?

I agree that we should support this in BSP 2.x, by introducing a "datakind": "map" (or "datakind": "dictionary"). However I think we should not flatten the content of existing shapes in the same data object because, as you raised, there can be conflicts between keys, and also because the client would have to guess what data kind is provided. I think a better approach is to add one layer of nesting, like this:
{
  "datakind": "dictionary",
  "data": {
     "jvm": {
        // the fields of the JVM build target
      },
      "scala": {
        // the fields of the Scala build target
        // jvmBuildTarget should be left empty (it is optional)
      },
     "java": {
        // the fileds of the Java build target
     }
  }
}

Here the keys of data are some defined datakind, and their values are the corresponding build targets.

Having a data map and embedded data brings potential for duplication, consistency issues and conflicts. E.g. a scala module may contain some java and jvm settings and it may as well be a twirl module which also embeds some scala and jvm settings. Some good guidelines are needed then, when to refer to another data and when to embed. Better, we avoid such construct from the beginning and only allow a flat data map. Instead of embedding data, we just refer to the keys in the map?

@lefou just to clarify, you mean something like:
"data":{
    "javaHome": "???",
    "javaVersion": "???"
    "scalaVersion": "???",
    "jars": ["", ""];
    "twirlVersion": "???",
    "twirlCompilerJar": "???"
}

instead of
"data":{
  "jvm": {
    "javaHome": "???",
    "javaVersion": "???"
  },
  "scala":  {
    "scalaVersion": "???",
    "jars": ["", ""];
  },
 "twirl": {
    "twirlVersion": "???",
    "twirlCompilerJar": "???"
  }
}

?

"data":{
    "javaHome": "???",
    "javaVersion": "???"
    "scalaVersion": "???",
    "jars": ["", ""];
    "twirlVersion": "???",
    "twirlCompilerJar": "???"
}

That could work, but it would be nice then if the datakind lists all the data kinds instead of just map.
Like this: "datakind": "scala,jvm,java,twirl".
Or this: "datakind": ["scala", "jvm", "java", "twirl"].

@adpi2 wrote:

{
  "datakind": "dictionary",
  "data": {
     "jvm": {
        // the fields of the JVM build target
      },
      "scala": {
        // the fields of the Scala build target
        // jvmBuildTarget should be left empty (it is optional)
      },
     "java": {
        // the fileds of the Java build target
     }
  }
}

Here the keys of data are some defined datakind, and their values are the corresponding build targets.

This is also my preferred mental model, but I think the fact that we keep the nested/embedded "jvmBuildTarget" data in the scala data is problematic. Take the following example:
{
  "datakind": "dictionary",
  "data": {
     "jvm": {
        // the fields of the JVM build target
      },
      "scala": {
        // the fields of the Scala build target
        "jvmBuildTarget": {
          // some fields of the JVM build target
       }
      },
     "java": {
        // the fileds of the Java build target
     }
  }
}

Which is the correct JVM data? The top-level "jvm" or the nested "jvmBuildTarget" (in the scala data) one? What if they differ? Should they be merged or override each other? Should the nested one used only in some (scala) cases? What if a client does not support one of the data types in the map, can it assume that the top-level "jvm" data is complete?
IMHO, we should change the current spec and remove nested data. If not, we should be very specific, how this all is supposed to work. We need guidelines for server and client implementers then.

That could work, but it would be nice then if the datakind lists all the data kinds instead of just map.

Like this: "datakind": "scala,jvm,java,twirl".
Or this: "datakind": ["scala", "jvm", "java", "twirl"].

but if it's a map we dont need the dataKind at all - the map keys should do the trick

but if it's a map we dont need the dataKind at all - the map keys should do the trick

Do you mean that we should force it to be a map, always?

"data":{
    "javaHome": "???",
    "javaVersion": "???"
    "scalaVersion": "???",
    "jars": ["", ""];
    "twirlVersion": "???",
    "twirlCompilerJar": "???"
}

in this case we can read all the available fields from the map


There might be a search issue with ནཱ་/nA

The search engine seems to not recognize ནཱ་ in Tibetan unicode (but it does recognize nA in extended Wylie). I created a video to illustrate the issue:
https://capture.dropbox.com/WvGXNINyxhKjKaE7

well, there is actually, thanks for spotting that!
I've fixed the code but unfortunately fixing it on the website will require a full re-indexing. I think the end of the year is actually a good time for that but doing it right now could be a bit disruptive...


Taxa dropdown menu inconsistencies

In the dev branch, the taxa dropdown menu in the full-size navbar has a horizontal divider, the taxa dropdown menu in the medium sized (lower) navbar does not. Also, the divider uses a custom class. UIkit provides its own class for this:

This should be the preferred class for horizontal dividers in dropdown menus.
I'll note that the menus in the navbar-menu.html and navbar-lower-menu.html can be kept in sync by putting all the
...
 tags in a separate navbar-menu-items.html file and then including it in place of the
...
 content in the navbar-menu.html and navbar-lower-menu.html files. For example, navbar-menu.html would then be:

    {% include navbar-menu-items.html %}

Thanks, done. One reason I dropped the menu-items include was the tweak on off-screen-menu to add "View All" links. But now I think that a phone really shouldn't have a massive nav with subnav stuff so I've simplified the off-screen-menu to only hold links to the main pages, which is easier to deal with on a small device. I think that's more in line with what one expects from a hamburger menu.


Allow user to redefine or at least disable shortcuts.

Hi, I was using your pomodoro application and all was going fine and dandy, but then I had to click <control-S> in my editor, and I found it was a shortcut to focus Pomatez, also, installing with snap changed some configurations of my keyboard.

What shortcut are you using?

Oops sorry, I forgot to wrap the keys, I edited my original post.

What linux distro are you using? I can't seem to re-create it on manjaro at least.

Pop_OS

btw, with <control-S>  I mean <control-shift-s>

Hi! I have quit similar issue with app. I have been using Ubuntu and installed Pomatez by snap. I use multi languge system. When I try to switch language by shortcut <Win+Space>. Pomatez intersepts shortcut. It's posible to switch language only when app works in tray.

I want this feature.

I want this feature.

Hi @mehmetsalihyaldiz this feature will be included in the revamp version soon but as of now, we don't have the capacity to develop it in the main branch since in the future will still be replacing it with the revamp version.
Our priority as of now is to fixed some critical bugs.
But if you really want it as of this moment, you can try to help adding the feature and create a PR so other persons can also benefits from it.
Thank you 🙇🏼


Allow .JSONSchema() to return the result of Reflect

Sometimes I find that when I have a custom MarshalJSON and UnmarshalJSON I am basically building a different structure and then returning json.Marshal(newType), so that my code looks like:
type SomeType struct {...}

type otherType struct {...}

func (s SomeType) MarshalJSON() ([]byte, error) {
    var o *otherType = convertSomeTypeToOtherType(s)
    return json.Marshal(o)
}

(a real-world example I'm dealing with right now is a map[string]string that needs to be handed to a system that forbids additional properties, so MarshalJSON converts it to a []struct{key:string, value:string} and marshals that instead).
It would be great if I could also write:
func (s SomeType) JSONSchema() *jsonschema.Schema {
	return jsonschema.Reflect(otherType{})
}

The returned schema from Reflect has .Version set and its own internal .Definitions, though, and these don't get merged to the top, so I end up with an invalid final schema, with something like
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$ref": "#/$defs/SomeType",
  "$defs": {
    "SomeType": {
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "$ref": "#/$defs/otherType",
      "$defs": {
        "otherType": {...}
}}}}

I can get around this by defining
func (s SomeType) JSONSchema() *jsonschema.Schema {
	reflector := jsonschema.Reflector{
		DoNotReference:            true,
	}
	schema := reflector.Reflect(otherType{})
	schema.Version = ""
	return schema
}

but this seems clunky and forces me to fully expand otherType without references.
A) Is there a better way to do this?
B) If not, is there any reason why reflectCustomSchema couldn't check for definitions and a version on the returned schema, and extract and merge them into its own definitions if applicable?

Hi! So essentially you're looking to be able to do "aliases" of the schemas. That's a tough one with the current set up. I'm not sure I'd try and use the Reflector in this way given that its not really meant to be embedded.
One solution that would require a PR, could be to add support for a JSONSchemaAlias() any interface method that would provide the other object to re-use, I can imagine tricky edge cases with that though around naming.
My personal recommendation right now would be to literally try and define the JSON Schema yourself manually inside the JSONSChema method. If you end up dealing with a lot of complexity, perhaps a refactor might be needed to simplify a little.
Happy to look at any PRs if you'd like to suggest an alternative approach!

@dplepage-dd okay, so by pure chance I had exactly the same problem today and had chance to implement a solution. You can see it in #108.
It allows to define a JSONSchemaAlias() any method that will return the type of object you really want to use to convert into a schema.
I'm hoping to deploy this soon.


Syslog as option for the plugin logs too

Syslog as an option to all the plugins log output would be very helpful.

I'm really not convinced that it is worth the extra code and configuration complexity.
Having DNS queries in system logs is not really convenient, and popular syslog daemons such as rsyslog can read files in addition to listening to syslog sockets.


Where did 'roboto.fonts' and 'css' go?

I'd like to update from 9.0.4 which included the resource packages roboto.fonts and css but they have been removed with 9.0.5+.
They're still in the repository and I could not find any related GitHub issue and jfoenix/build.gradle hasn't been touched within a year, so what happened?

they have been refactored, so they can be loaded using JFoenixResources


Deprecate method provided in sample code

Referring to getting started link from the official website, the below code uses a deprecated method
@Bean
	public UserDetailsService userDetailsService() {
		UserDetails userDetails = User.withDefaultPasswordEncoder()
				.username("user")
				.password("password")
				.roles("USER")
				.build();

		return new InMemoryUserDetailsManager(userDetails);
	}

This code can be replaced by
@Bean
	public UserDetailsService userDetailsService() {
		UserDetails userDetails = User.builder()
				.username("user")
				.password(bcryptEncoder().encode("password"))
				.roles("USER")
				.build();

		return new InMemoryUserDetailsManager(userDetails);
	}

@Bean
    public PasswordEncoder bcryptEncoder() {
        return new BCryptPasswordEncoder();
    }

@madhairsilence As per javadoc for User.withDefaultPasswordEncoder():

Deprecated
Using this method is not considered safe for production, but is acceptable for demos and getting started. For production purposes, ensure the password is encoded externally. See the method Javadoc for additional details. There are no plans to remove this support. It is deprecated to indicate that this is considered insecure for production purposes.

Note the bold text.
Although it's marked as deprecated, there are no plans to remove it. It's more of a marker to indicate to the user that it should not be used in production. However, it's fine to be used in demos or getting started experience.
I'm going to close this as the current usage is fine for the sample.


Add support for inline image in markdown editor by drag and drop of an image file

[ ] Bugfix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)

Proposed changes

This PR adds inline figure support to the markdown editor of Node-RED editor used for describing node's as documents discussed at this forum thread.

inserting an inline image as data URL () by drag & drop of an image file.

This PR is one of two features included in the previous PR.

Checklist

[x] I have read the contribution guidelines
[ ] For non-bugfix PRs, I have discussed this change on the forum/slack team.
[x] I have run grunt to verify the unit tests pass
[ ] I have added suitable unit tests to cover the new/changed functionality

Coverage: 68.246%. Remained the same when pulling b9fe4c5cd3af3c19250837a624138c91df1eeabd on node-red-hitachi:add-markdown-image-drag-and-drop into 928131cf08ebf498030ccb64e745bf5613551a70 on node-red:dev.

Looks good.
Do you think we should put some limits in place based on file extension and/or size?
If a user starts dropping in lots of 1+Mb images then they could quickly hit API payload size limits. Also, the file type - we should probably limit to png/jpeg/gif.

Do you think we should put some limits in place based on file extension and/or size?
If a user starts dropping in lots of 1+Mb images then they could quickly hit API payload size limits.

Considering that multiple images can be used in a flow, I think it can be difficult to determine the maximum size of droppable image file.

Also, the file type - we should probably limit to png/jpeg/gif.

According to this page, apng, avif, svg, and webp are other candidates.
I will update the code to prevent uploading unexpected file type.

Had to remove package-lock.json that had accidentally slipped in - but otherwise looks great


Option to clone inventory and routing

What is the motivation for adding/enhancing this feature?

Add option to clone routing and inventory rule. When cloning the new object's name will automatically have "Copy" appended to it

Will add support to clone the route from the details page in the UI upgrade PR.

Verified and working fine in release v1.1.0. Hence, closing it.
https://jam.dev/c/3db94087-d269-4285-9bc4-3b75081c67a8


Mean Squared Error for Binary Classification

I know this is typically not done but in my case, the metric I'm being judged on is the Brier Score which is the mean squared error of the prediction relative to target.  Is it possible to use mean squared error as an objective for classification?

you can write a customed objective function by yourself. refer to https://github.com/Microsoft/LightGBM/blob/master/examples/python-guide/advanced_example.py#L137-L166


Installation and running this?

Hi
I am using the following code
try {     DB::beginTransaction();     // database queries here     DB::commit(); } catch (\PDOException $e) {     // Woopsy     DB::rollBack(); }
In one of my controllers, how do I use this plugin so it can add the commits to the queue ?
Also I suppose that I need to enable latavel queue jobs , right ?
Can you please provide a step by step guide on how to make it work with laravel and what edits I need to make on laravel to make it work ?
Bear regards

Hi.
This package if for running laravel job after transaction successfully commits and skip if transaction fails.
Usage if fairly simple

Replace BusServiceProvider using one from package.
Add porperty $afterTransactions = true to jobs that has to be run after transaction successfully commits.
https://github.com/therezor/laravel-transactional-jobs/blob/master/README.md

@therezor thx for your reply .
What is the main difference between the built in queue in Laravel and your plugin ?

It uses the same queue class but extended to prevent adding jobs to queue before data was actually saved to DB. That make it inaccessible inside workers job

@therezor thanks, but what if the adding the job to DB fails, then we have data which has been saved to the DB?

If adding job to queue fails you'll have all your data committed to db.

@therezor then the saved data, which has relationships to the jobs is failed as well. how is it possible to reverse this or really make sure that the jobs is actually added upon DB commit ?


workbench.action.moveActiveEditor{Left,Right}?

VSCode Version: Code 1.3.1 (e6b4afa53e9c0f54edef1673de9001e9f0f547ae, 2016-07-12T13:31:10.994Z)
OS Version: Darwin x64 15.5.0

I was looking for a command to move an editor within a group, but workbench.action.moveActiveEditor{Left,Right} was deprecated (now there are only commands for moving groups).

@vogler there is currently no command to move an editor to the left or right within a group. I assume you mean moving the tab left and right?

Yes.
On OS X it'd be nice to have these defaults:

shift+cmd+] for nextEditor (OS-wide shortcut for tabs)
shift+alt+cmd+] for moveEditorRight (like in iTerm)
move (un)fold to shift+ctrl+] (default for Windows/Linux)

https://github.com/Microsoft/vscode/issues/8234 is related though that only talks about extensions API. In theory, once that is there we could assign keys to it.
However, I am having a hard time to justify for this command when tabs are disabled because then it does not make much sense to move the editor within the group unless maybe you look at the "opened editors" view.

This is implemented in #8234


CON-2013-Update-Access-Token-Endpoint

https://crowncommercialservice.atlassian.net/browse/CON-2013

This endpoint has no tests against it, as it is a backdoor external call to generate an access_token.
This is a testing endpoint, that is not required for CII or Conclave, and added to make testing easier. It will not be active in production, only non-prod environments.
As a result Code Climate 'diff-coverage' will fail at 0%, because there are no tests needed for this endpoint.

OK, thats good you added the notes


Make the committee_single view display the statistics

How To Do This

Try to get comfortable with highcharts.js
Modify the committee_single view so that the data from the database is passed though so that it is available for use on the page. Use the committees primary key pk to select the data from the database.
Integrate the data output with the selected charts ecosystem
Test the view by submitting data
Close this issue

There are several charts ecosystems, which one should be used?

http://gionkunz.github.io/chartist-js/index.html
http://www.chartjs.org/
http://www.highcharts.com/


prop data now datum in VictoryLabel

Closes FormidableLabs/victory-core#26
Unblocks FormidableLabs/victory-chart#116, FormidableLabs/victory-chart#150
Unblocks FormidableLabs/victory-pie#60, FormidableLabs/victory-pie#64

Approved!


Performant drop consistently every 3 seconds after update 0.4.6

Obsidian v0.13.19
Editor legacy mode on
I check all the plugin, once I disable supercharged_links and enable an older version, no more performant drop.

Hi, thank you for the report. Can you test out the latest version 0.4.7, see if it is better there?

Hi, thank you for the report. Can you test out the latest version 0.4.7, see if it is better there?

Thank you, the performance issue has been fixed with 0.4.7.


Incompatibility with python 3.8

I noticed incompatibility of NNCF with python 3.8.
The problem occurs during installation of one of the dependencies of NNCF and it seems to be caused by the fact that platform.linux_distribution was removed in Python 3.8:
  Downloading matplotlib-3.0.3.tar.gz (36.6 B)
    ERROR: Command errored out with exit status :
     command: /opt/home/k8sworker/cibuilds/impt/nncf_for_digits-9/src/model_templates/.venv/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-0zqb86kn/matplotlib/setup.py'"'"'; __file__='"'"'/tmp/pip-install-0zqb86kn/matplotlib/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-0zqb86kn/matplotlib/pip-egg-info
        cwd: /tmp/pip-install-0zqb86kn/matplotlb/
    Complete output (51 line):
    Traceback (most recent call last)
      File "<string>", line 1, in <module
      File "/tmp/pip-install-0zqb86kn/matplotlib/setup.py", line 225, in <module>
       msg = pkg.install_help_msg(
      File "/tmp/pip-install-0zqb86kn/matplotlib/setupext.py", line 650, in install_help_msg
       release = platform.linux_distribution()[0].lowe()
    AttributeError: module 'platform' has no attribute 'linux_distributin'```

@asenina, can you please take a look and fix it when you are free from the current task?

@AlexKoff88 Ok

What's the status of this issue? It looks that NNCF uses too old version of Matplotlib (3.0.3).
Matplotlib supports Python 3.8 starting with version 2.2.5: https://github.com/matplotlib/matplotlib/releases/tag/v2.2.5


Ers tool

Description
Changes proposed in this pull request:

HTTP Client for ERS,
Refactoring - naming conventions.

Related issue(s)

/test pre-main-kcp-cli

/test pre-main-kcp-cli

/lgtm


[react-native] capture and report fatals on next launch

Addresses #468, #533, and maybe #489

When a fatal (global) error is thrown, raven-js now captures it and persists it before calling the original error handler when in production mode (e.g. so the JS error can bubble out and crash the app).  Then, when the react native plugin initializes, it checks for a persisted error, and reports it.
Some finer details:

In development mode, errors are not persisted, and the default error handler is always called.  This allows redboxes to pop as expected.
Any subsequent fatals thrown while raven-js is persisting the first one are ignored (we want to crash ASAP).
If the error fails to report; it won't be cleared.  This provides a very rudimentary retry mechanism (true offline support should be implemented more robustly, IMO).
I snuck in Raven.addShouldSendCallback so that the react-native plugin doesn't bash over existing configurations
onInitialize is useful for detecting if an error was previously reported (say, if you want to pop a "we're sorry" alert, or fix up your store)

This would be handy as a transport in other environments too (think no internet situations)

I also bumped into this issue. Thank you for PR!

@nevir Thanks for PR. I merged your PR in our fork and it works great!

@nevir – possible to update this to reflect changes in #636?

Ping @nevir, it would be awesome if you could update the PR. Thanks!

Ack, sorry!  Will get to this in the new few days

Alright, rebased it off of the latest! PTAL

Ping @benvinegar

Here goes nothing!

Sweet!

@nevir
Two question on the changes in the this commit.

Is there a reason why the function signature for  _sendProcessedPayload: function(data, callback) in src/raven.js includes a second callback argument? The only time _sendProcessedPayload seems to be called is a few lines above on line 1223, and is called with only one argument.

In lines 87-104 of plugins/react-native.js, isn't it possible for originalCallback to be undefined, causing the plugin to crash for non-fatal errors?

@abc123s Indeed, I'm actually having that exact error atm.

For the record, #692 addresses @abc123s's issue


Issue226 test.

Is this the test proving failure from #226 ?

Yea, but the test is inaccurate, fixing that now.

Looks like travis-ci Linux build succeeded, I guess then my environment setup is incorrect.

@filipw Should we set up a build based on .Net Core 2.1 preview or do we wait until RTM? Guess it does not hurt to be a little prepared for what's coming 😄

I can try updating travis-ci with net sdk 2.1 preview on this pr to see if it fails :?

I can try updating travis-ci with net sdk 2.1 preview on this pr to see if it fails :?

I think we just wait and see if thus is a problem when 2.1 ships.
If you just update the branch, we'll merge this as a regression test ensuring that we don't hit this in the future

I've reinstalled dotnet and removed fallback packages, tried with dotnet sdk 2.0.3 and 2.1.4 still no luck.
And I can clearly see while debugging that there is System.ComponentModel.Primitives <IP_ADDRESS> loaded and that assembly contains Component type, so I guess something is still wrong with Assembly loading, at least that would be my guess.

The important thing is that I can run Process.Start in .csproj projects and in Tests themselves (well none of the tests would work), and when in dotnet script interactive, but not with dotnet script Issue226.csx


Constraints on molecule type of Variant Path Statement subject

As for other Statement types, we need to consider what constraints to put on the subject variation molecule type (genomic, transcript, protein) for Variant Pathogenicity statements.  (e.g. for Molecular Consequence we constrained to genomic variation only).
Since sources like CIViC hold many annotations where a protein-level variation is the subject, or even a non-sequence variation such as "EGFR Exon18 overexpression", I assume we will need to allow for a broad range of variation levels as statement subjects.
If, however, we end up separating germline pathogenicity / predisposing statements from somatic oncogenicity statements (as depated here) - it may be that the former can be constrained to genomic variation subjects, but not the latter.  But even in this case, I would opt to be more permissive.

Note this relevant comment from @larrybabb  (made from the perspective of a germline path resource):

The subject of these interpretations are most notably the genomic DNA change, not the RNA or AA change. While those downstream impact(s) are directly related to the cause, the interpretation is an assessment of the genomic dna change.

I would also opt for permissiveness in genomic, transcript, protein for pathogenicity (both predisposition + oncogenicity) statements. See, for example, this study of a predisposing protein consequence.

Genetics community spend years to make sure DNA changes are captured (there are special considerations for large genetic alterations). For germline entries not requiring DNA changes capture would be going against best practices and will push field back into dark ages. Somatic field is lacking behind in consistently capturing DNA changes, at a minimum we should only allow AA changes if submitter certifies that all genomic changes leading to particular AA change have exactly the same biological consequences. Pathogenicity statements refer to genetic alterations and should not include mRNA over-expression.

I would concur with @dsonkin that we should make strong recommendations that the genomic DNA representation of variants be used for pathogenicity statements whenever reasonably possible. And I also agree that if an AA variant is used that has no single genomic change then the protein change can be used. However, I do understand that folks will generate statements as they wish, but if they submit to knowledge bases and repos like ClinVar they will be reduced to the genomic change whenever possible. This transformation to the genomic change would then be the "reference variant" for these statements making the ability to aggregate the statements with the same variant possible.

Decisions from 2-24-21 VA Call:

Allow for variation at genomic, transcript, or protein level in subject slot. But provide recommendations.
Germline variant (Mendelian path) - genomic subject strongly recommended but not formally required.
Somatic variant / cancer oncogenicity - genomic preferred, protein allowed (when annotation made explicitly at this level - often because annotation covers >1 genomic variation that leads to the same protein change)
Spec will provide recommendations (perhaps in a policy-type doc?)
a.  e.g. that data creator specifies genomic changes as well, when an as variation is subject, in the VOD  . . . but where/how exactly???
b. perhaps other recommendations around checking if variant is near intron exon boundary - to be sure all have same tx change
Question - what needed w.r.t. a recommendation / policy doc for v0?  Who will write recommendations / policies?


python inference demo

Do I have to use a browser to demonstrate when running a large model locally?
Is there a demo in Python that directly feeds images and language into Python?

Can only input one sentence per image per run? Can I enter a picture and have a continuous conversation

when I run this shell :
python -m llava.eval.run_llava
--model-name /LLaVA-13B-v0
--image-file "https://llava-vl.github.io/static/images/view.jpg"
--query "What are the things I should be cautious about when I visit here?"
it's error :
HFValidationError: Repo id must use alphanumeric chars or '-', '_', '.', '--' and '..' are forbidden, '-' and '.' cannot start or end the name, max length is 96: '/LLaVA-13B-v0'.

为什么直接下载这里的的模型不能直接用？https://huggingface.co/liuhaotian/LLaVA-13b-delta-v0

Cool, thank you very much @haotian-liu ! Are you currently working on providing a CLI that allows to feed multiple images and text prompts turn by turn?

Yes, I agree with @MaxFBurg, are there any such implementation plans?

@MaxFBurg @vishaal27
Yes, that's a great suggestion, and as mentioned in my previous reply, the interactive CLI support is planned.  We are planning to upgrade to the Vicuna v1.1 soon, as it has a better support for these.  Stay tuned!  And if you are interested in contributing, please let me know!

为什么直接下载这里的的模型不能直接用？https://huggingface.co/liuhaotian/LLaVA-13b-delta-v0

We are not allowed to share the full model weights due to the LLaMA license, please see here for weight conversion.

Thanks for your response @haotian-liu
I tried replacing these lines in your eval script llava.eval.run_llava.py:
    qs = args.query
    if mm_use_im_start_end:
        qs = qs + '\n' + DEFAULT_IM_START_TOKEN + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len + DEFAULT_IM_END_TOKEN
    else:
        qs = qs + '\n' + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len

with
    qs = args.query
    if mm_use_im_start_end:
        qs = qs + "\n" + DEFAULT_IM_START_TOKEN + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len + DEFAULT_IM_END_TOKEN + "\n" + DEFAULT_IM_START_TOKEN + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len + DEFAULT_IM_END_TOKEN
    else:
        qs = qs + "\n" + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len + "\n" + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len

I think this would be a naive extension of the current single image one turn inference procedure to a single turn inference procedure that can take two images as input in the prompt. Do you think something as straightforward as this will work out of the box?
However, this doesn't seem to work well in practice for multi-image comparisons, a few examples follow:
For all the below examples, I used the following prompt with the modified code above: {<img_1> <img_2> <"Describe the change applied to the first image to get to the second image">}.

As you can see, the generations completely ignore the first image and give a detailed description of the second image. However, the model does understand that there are two images in the third case, given that its description contains "In the second image".
For a comparison, these are the model's responses when prompting with the same images and prompt on the web demo:

This response is more coherent, and describes the difference between the two images fairly reasonably.
I am wondering if this is an inherent limitation of the single-turn multi-image prompting style I've used above since it could be out-of-distribution (since your visual instruction tuning dataset only contains a single image per sample) for the model. Do you have any suggestions on a better evaluation strategy for this multi-image comparison either through single turn or multi turn prompting?

Thanks for your response @haotian-liu I tried replacing these lines in your eval script llava.eval.run_llava.py:
    qs = args.query
    if mm_use_im_start_end:
        qs = qs + '\n' + DEFAULT_IM_START_TOKEN + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len + DEFAULT_IM_END_TOKEN
    else:
        qs = qs + '\n' + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len

with
    qs = args.query
    if mm_use_im_start_end:
        qs = qs + "\n" + DEFAULT_IM_START_TOKEN + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len + DEFAULT_IM_END_TOKEN + "\n" + DEFAULT_IM_START_TOKEN + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len + DEFAULT_IM_END_TOKEN
    else:
        qs = qs + "\n" + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len + "\n" + DEFAULT_IMAGE_PATCH_TOKEN * image_token_len

I think this would be a naive extension of the current single image one turn inference procedure to a single turn inference procedure that can take two images as input in the prompt. Do you think something as straightforward as this will work out of the box?
However, this doesn't seem to work well in practice for multi-image comparisons, a few examples follow:
For all the below examples, I used the following prompt with the modified code above: {<img_1> <img_2> <"Describe the change applied to the first image to get to the second image">}.

As you can see, the generations completely ignore the first image and give a detailed description of the second image. However, the model does understand that there are two images in the third case, given that its description contains "In the second image".
For a comparison, these are the model's responses when prompting with the same images and prompt on the web demo:

This response is more coherent, and describes the difference between the two images fairly reasonably.
I am wondering if this is an inherent limitation of the single-turn multi-image prompting style I've used above since it could be out-of-distribution (since your visual instruction tuning dataset only contains a single image per sample) for the model. Do you have any suggestions on a better evaluation strategy for this multi-image comparison either through single turn or multi turn prompting?

Did you also changed the image part

Yes, this is the code I updated:
    image = load_image(args.image_file)
    image_tensor = image_processor.preprocess(image, return_tensors='pt')['pixel_values'][0]

with
   image_tensor = torch.stack(
        [
            image_processor.preprocess(load_image(image_file), return_tensors="pt")["pixel_values"][0]
            for image_file in args.image_file.split(",")
        ]
    )

    input_ids = torch.as_tensor(inputs.input_ids).cuda()

I just pass in comma-separated image input files. Please let me know whether there is an issue in this impl?

@penghe2021 Due to the current way of training, we do not observe the model having very good capability referring to / comparing with multiple images.  We are working on improving this aspect as well, stay tuned!

Thanks @haotian-liu, so I assume the above implementation for a single turn multi-image inference is correct, but its an OOD problem due to the current training set-up of the model (sees only one image per sample during visual instruction tuning). However, I still see the model performing well on multiple images when used in the multi-turn set-up, so looking forward to your demo implementation of that, do you have a plan for when that can be released?

It might be a superfluous or large request, but if the model could be integrated into a huggingface AutoModel or pipeline setup, I think it would be very accessible. Especially for experimenting with different use-cases.

Hi @Marcusntnu, thank you for your interest in our work, and thank you for the great suggestion. This is WIP, and our first step is to move that the LLaVA model implementation to this repo, which has been completed.  It should be implemented very soon, thanks and stay tuned!

@haotian-liu Have you ever considered releasing the multi turn infernece code?

@wjjlisa, do you mean the multi-turn conversation in CLI, as in our Gradio demo?  This is planned for release by the end of this month.  Was busy working on the NeurIPS recently...

This is my experiments with prompt tunning. Not perfect but pretty amazing

@vishaal27 I Would like to know what the structure of the data input looks like. I am trying to do a similar thing.

@cyril-mino Sorry I don't get your question -- what do you mean by structure of data input? I just pass in two images to the model as a list of tensors (with the updated code above) and pass in the prompt that asks to compare the two images.

@vishaal27 apologies, I thought you were finetuning.

This is my experiments with prompt tunning. Not perfect but pretty amazing
Seems like img1,img2,text is better performing.

Hi, possible to share the input query prompts for this output? Thanks!

@wjjlisa, do you mean the multi-turn conversation in CLI, as in our Gradio demo? This is planned for release by the end of this month. Was busy working on the NeurIPS recently...

can I check whether the multi-turn framework would be updated into the repo anytime soon? Thanks for the great work.

Hi Adriel, as far as I recall (I must admit I haven't looked at this script in over a month) the model.generate function was able to take in multiple input images as a concatenated tensor. For full clarity, here is the script I used, hope it helps (disclaimer: this script uses a fork of the repository that is quite old, it is possible a few things might have changed since then): https://github.com/MaxFBurg/LLaVA/blob/main/llava/eval/run_llava_two_images.py#L51

Great, thanks for letting me know -- I will however need to get back to this script at some point  and get it to work, so I can let you know if I can figure something out for this use-case. Please do let me know if you are able to as well :)
Re. your question -- We used the llama-13b model back then, I think at that stage the opt model was not available if I recall correctly.

Hi Vishaal, thanks for sharing the code. Indeed the fork has changed quite a fair bit. Seems like the mm-projector is removed, and the pretrained model as well. I can confirm that the current fork with the modified image tensor input is unable to work due to the dimensionality error in one of the nn.modules during forward pass. Can I do a quick check with you, did you use the llama-13b model or the facebook/opt model for your testing back then?

@adrielkuek @vishaal27
We are also very interested in using multi-image input.  Our interest is less in comparison, but rather using multiple images to represent the same thing, as described here: https://github.com/haotian-liu/LLaVA/issues/197#issuecomment-1567164371

Interested in multiple image input as well. We're wondering if we could perform multimodal few-shot classification (on-the-fly, without fine-tuning) or not.
Will test Vishaal's solution and maybe create PR when I have time.

Hi, everyone. I've be surfing in the code base of LLaVA for a while and find it hard to find the exact generate() function implementation for llama based LLaVa. I'm trying to find the generate() for LLaMA.  It would be helpful since I want to find a way to work in the multiple image mode. Any help would be appreciated!

This is my experiments with prompt tunning. Not perfect but pretty amazing
Seems like img1,img2,text is better performing.

Hi, SeungyounShin. Would you mind sharing how you manage to embed both image into one query. It would be really helpful as I currently am not able to find a way to do this.

Something like #432 ? Would appreciate any suggestions.

This is my experiments with prompt tunning. Not perfect but pretty amazing
Seems like img1,img2,text is better performing.

Would you be able to upload this model to hugging face or share it some other way? Very interested in getting this to run with image comparison.

Hello, I am also interested in inputting more than one image for some experiments. I am trying to find the right template for this, considering that the base template is USER: <image>\n<prompt>\nASSISTANT:.

(i) What would be the prompt template when feeding more than one image? Should I use something like USER: <image1><image2>\n<prompt>\nASSISTANT:?
(ii) How do you input the multiple images? Do you concatenate them in the first dimension? For example, assuming this in my code snippet (from HuggingFace integration of LLaVA): output = pipe(           image, prompt=text_prompt, generate_kwargs={"max_new_tokens": 200}       )

I am in great need of a multi-dialog feature for batch-inference with SGLang.

@vishaal27 apologies, I thought you were finetuning.

Hi cyril-mino, did you make it to support the fine-tuning LLaVa with multi-images & text? I wonder if there are some extra steps besides the codes mentioned by @vishaal27. Thanks~

Is there any way we can embed other modalities? Such as bbox, class ... ?

Is there any way we can embed other modalities? Such as bbox, class ... ?我们有什么方法可以嵌入其他模式吗？比如 bbox、class ... ？

Have you figured it out？


create accessors for all distributions

Some distributions have this (like Exp), but others (like LogNormal) don't.
for example:
impl LogNormal {
  pub fn location(&self)->f64 { self.location }
  pub fn scale(&self)->f64 { self.scale }
}

this will make it far easier to interoperate these distributions in a variety of ways.

Those without parameter getters

Dirac
DiscreteUniform
LogNormal
Triangular
Uniform

I'd like to contribute by adding this feature. Any important guidelines or considerations before I start?

Hi, thanks for finding a place to contribute!
Some considerations; I believe they are relevant mostly to the multivariate distributions (we may not have consistency on these yet):

it is Rust idiom to not include the word get for these kinds of functions
non-Copy fields should not clone for immutable accessor, clones should be opt-in by caller


[skip ci]post-test add version check

add version check in post-test.
If in vagrant/ova has been installed rackhd of wrong version,
this script will report the error.
@panpan0000 @PengTian0
F.Y.I
when aptitude install onePackage=someVersion if the package of someVersion is invalid(like missing dependency, aptitude will choose a latest "backup" package for installation)

:+1:


Add ContractFilter from Kerbal Stuff

This pull request was automatically generated by Kerbal Stuff on behalf of SilverFox8124, to add ContractFilter to CKAN.
Please direct questions about this pull request to SilverFox8124.

Added it manually.


Extensions settings are unknown until document is modified

#33931 Issue Type: Bug

Open settings.json
All extension settings are Unknown Configuration Setting and dimmed out (not only disabled).

VS Code version: Code - Insiders 1.37.0-insider (e1d3dd53d17fb1529a002e4d6fb066db0a0bd385, 2019-07-23T05:23:48.960Z)
OS version: Windows_NT x64 10.0.18362

Good catch.


Example in doc of opentelekomcloud.cloud.vpc_route is wrong

Hello ,
today i used opentelekomcloud.cloud.vpc_route module.
I checked the example in the doc:
# Create a vpc route.
- opentelekomcloud.cloud.vpc_route:
    destination: "6ysa5bac-0925-6d5b-add8-cb6667b8"
    nexthop: "67sa5bac-0925-4p5b-add8-cb6667b8"
    router_id: "89sa5bac-0925-9h7b-add8-cb6667b8"
  register: vpc_route

According to the example the option for the router ID is:

router_id

But this is not working. The options is:

router

Could you please correct the doc?
Thanks in advance
This is also confusing:
- router
        ID or name of the router requesting for creating a route.
        [Default: (null)]
        type: str

Because names are not working.
Regards
Uli

Hi ,
the delete example seems to be wrong too.
# Delete vpc route
- opentelekomcloud.cloud.vpc_route:
    name: "peering2"
    state: absent

There is no option name available.
A woprking  example would be:
- name: "Delete Route"
  opentelekomcloud.cloud.vpc_route:
     route_id: a5904bd2-9b35-4957-8705-0ad5ab95a77b
     state: absent

Regards
Uli


Please check all of the platforms you are having the issue on (if platform is not listed, it is not supported)

[ ] iOS
[*] Android
[ ] UWP
[ ] watchOS
[ ] tvOS
[ ] Tizen
[ ] .NET Standard

Feature Library

[ ] Core
[*] BluetoothLE
[ ] Beacons
[ ] Locations
[ ] HTTP Transfers
[ ] Notifications
[ ] Sensors

Version of Library
Shiny.BluetoothLE <IP_ADDRESS>3-beta
(downloaded trough NuGet)
Version of OS(s) listed above with issue
Android 10.
I test it on a Nokia 7 Plus with Android One 10  updated to March 2020.
Steps to Reproduce

Create an App in Xamarin.Android (not Xamarin Forms!) and  register BleCentrail in your custom Application
In the MainActivity get a reference to centralManager, check you have the permission to use bluetooth.
subscribe to WhenStatusChanged observable

Expected Behavior
Trigger when bluetooth adapter change status (off/on)
Actual Behavior
Trigger only one time. If the user enable or disable the bluetooth the observable do not trigger
I am not sure if it is related to #195.

Please include some sort of sample.  Note that your subscription could be getting tombstoned with the activity.  You should be recreating it with onresume

Hi,
I have only one activity when I test it. I simply check if I the app have all needed permissions, if this is true I subscribe to WhenStatusChanged() (if not I asked the permission and redo the check after the user grant it). That's all.
Unfortunately I have no time to create a sample. For my current project I'm using your old bluetooth library (it does not have this bug)

Sorry for bringing this back!
But for Android.
   BleManager.WhenStatusChanged().Subscribe(async stat =>
            {
                System.Diagnostics.Debug.WriteLine("BleManager changed to state " + stat);
            }

The Notification is not being called when Disabling/Enabling the Bluetooth on the phone.

@wagenheimer try the delegate version first.  If you are still having an issue, file a proper bug with all of the necessary details please.


operational updates

Remove new command from CLI in non-editable installs to prevent creating migration files in the python site-packages install dir
Prevent releasing to pypi unless the tag major version matches the max migration version
Update to most recent dbami version (will be 0.2.0)
changelog updates for the above staged as part of the next release (currently v2.0.0)

Note that it is unclear to me how to test the latter without cutting a release. We should attempt to release a pre-release version once this PR is merged with the wrong major version (should fail), and with the right major version (should succeed).

Note that the dbami change I have staged locally. I cannot finish it until the new dbami release (v0.2.0) is published.

I also removed the management of the schema version table and version update from schema.sql. That will break tests until the new version of dbami is pulled in.

Codecov Report
Patch coverage: 100.00% and project coverage change: +1.43 :tada:

Comparison is base (dfba543) 89.47% compared to head (ce65cba) 90.90%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #15      +/-   ##
==========================================
+ Coverage   89.47%   90.90%   +1.43%
==========================================
  Files           3        3
  Lines          38       44       +6
==========================================
+ Hits           34       40       +6
  Misses          4        4

Impacted Files
Coverage Δ

src/swoop/db/cli.py
90.32% <100.00%> (+2.32%)
:arrow_up:

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


Issues with version 14.07.02

Great app and exactly what I need. However some issues were encountered.
Since the latest version 15.xx is an offline app, the latest webserver version is 14.07.02 which comes with a few issues, hoping they could be easily fixed.
1-) if a Note is saved and then try to delete it immediately after save the page freezes, the same applies for editing, workaround : Refresh the browser then do either task.
2-) Registration fails on this version for whatever reason. workaround : use version 15.xx just to create the users from the Legacy page settings then switch back to version 14.07.02 and the logins would work.
3-) Application prompts for update always to version 15.xx which is not compatible with Webserver setup : workaround : open OpenNote/openNote/openNote.js file and comment out the update function to look like this :
//Check for updates
//$http.get(config.getUpdateURL()).then(
//      function(response){//Successful
//              if(response.data.version!=config.getVersion())
//                      alertify.log(""+response.data.updateText+"", "", 0);
//      });
Hope the developer can have sometime to look at these issues.

15.x.x is an offline app and is the only supported version. You can use couchdb to syn and persist notes.


Delete a Index

Can you please help me..how to delete any index on a button click? @lucoceano  @lfarah @FelipeDocil @pedrohperalta @xperi

@abhii24 did you find a solution? if so, could share with us?

@lucoceano  i just had deleted that particular index From the viewControllers array and refreshed the view..but the problem is it takes me back to the index 0..!! can you please answer me to that issue related to default index that can help me!

@abhii24 nice, I'll have a look on the weekend


As per issue  #53842

Fixed the link from  Storage Queue Data Contributor  to point to Storage Blob Data Contributor

@simonlid : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@normesta I removed the locale from the link.

#sign-off


Some Check Failed errors in tf.raw_ops.Unbatch

Issue type
Bug
Have you reproduced the bug with TensorFlow Nightly?
Yes
Source
binary
TensorFlow version
tf 2.15
Custom code
No
OS platform and distribution
Linux Ubuntu 20.04
Mobile device
No response
Python version
3.10
Bazel version
No response
GCC/compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current behavior?
Some Check Failed errors in tf.raw_ops.Unbatch, which causes the program to crash. See the colab link below for details.
Standalone code to reproduce the issue
https://colab.research.google.com/drive/1JRw_-UwodqwPx87naMM04nnFLaLaZcXn?usp=sharing

Relevant log output
Check failed: size >= 0 (0 vs. -1) Aborted (core dumped)
Check failed: d < dims() (1 vs. 1) Aborted (core dumped)
Check failed: new_num_elements == NumElements() (6 vs. 18) Aborted (core dumped)

@xl1043237213 Could you please ensure the input tensor has a batch dimension greater than 0. If you're working with a single sample, try to reshape it to have a batch dimension of 1. You can use tf.expand_dims(tensor, axis=0).
Thank you!

Thanks for your answe.
I can avoid such errors by checking the input or modifying the input, but I think it's an unexpected execution behavior and hoping that TensorFlow can fix this bug.


misplaced md-button icons when put inside md-table

Steps to reproduce
create an md-table and put md-button with an icon inside any of its cells
Which browser?

Chrome: Version 56.0.2924.87 (64-bit)
What is expected?
centered icons inside button
image upload free
What is actually happening?
image upload free
Cause
.md-button.md-fab .md-icon, .md-button.md-icon-button .md-icon {
    position: absolute;
    top: 1px;
    right: 0;
    bottom: 0;
    left: 0;
}

Fix
.md-table .md-button.md-fab .md-icon, .md-table .md-button.md-icon-button .md-icon {
    position: static;
}

Duplicate of #534. Fixed in develop branch via pull request #538.


Update README.md

Description
Automate Google Search using Python. #11 #184
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

(Add x in the [] to mark as completed.)
Related Issues or Pull Requests
(https://github.com/The-Data-Alchemists-Manipal/MindWave/pull/184)

https://raw.githubusercontent.com/sammi-stack/MindWave/main/Deployed Projects/selenium_automation_google_search_query.py
Follow the above link for code

Please add the code to the code directory.

WHERE?

The directory which is added as the label in your issue.


(Review needed for ARM manifest changes. will merge later )Migration changes dev mysql microsoft.d bfor my sql 2022 06 01 privatepreview

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[ ] new service onboarding
[x] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.
When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month.
If updating an existing version, please select the specific language SDKs and CLIs that must be refreshed after the swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No refresh required for updates in this PR

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[x] Check this box if any of the following appy to the PR so that the label "ARMReview" and "WaitForARMFeedback" will be added by bot to kick off ARM API Review.  Missing to check this box in the following scenario may result in delays to the ARM manifest review and deployment.

Adding a new service
Adding new API(s)
Adding a new API version
-[ ] To review changes efficiently, ensure you are using OpenAPIHub to initialize the PR for adding a new version. More details, refer to the wiki.

[x] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If any of the following scenarios apply to the PR, request approval from the Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in a stable version
[ ] Removing properties in a stable version
[ ] Removing API version(s) in a stable version
[ ] Updating API in a stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

@pranavi-dandu - @NetRock asked me to also review your PR, so I've taken some time to look at it and provide comments, even though it's already approved by ARM.
Note, the first issue is that new API version PRs should be constructed using this process:

Copy all files from current API version to new API version folder.
Make a base commit.
Apply changes needed for new API version in subsequent commits (including updating the API version in each file).

If you use OpenAPIHub to generate your PR, it will automatically use the correct format.
This really helps reviewers see what's being changed in the new API version. Most ARM reviewers will require you resubmit your new API version PR in the correct format.

@pranavi-dandu - I took another look and updated one of my comments, but there are still unaddressed questions. Can you address the remaining questions?

@mentat9 I replied to all of the comments and waiting for you to resolve them.

@pranavi-dandu - I took another look and updated one of my comments, but there are still unaddressed questions. Can you address the remaining questions?

@mentat9 I replied to all of the comments and waiting for you to resolve them.

@pranavi-dandu - I resolved all of the ones you answered or changed. There are still 7 unaddressed/active comments here. Not sure why they aren't showing for you. You could also try using Codeflow if you don't see them above on this page...?

Codeflow

I still see pe

@pranavi-dandu - I took another look and updated one of my comments, but there are still unaddressed questions. Can you address the remaining questions?

@mentat9 I replied to all of the comments and waiting for you to resolve them.

@pranavi-dandu - I resolved all of the ones you answered or changed. There are still 7 unaddressed/active comments here. Not sure why they aren't showing for you. You could also try using Codeflow if you don't see them above on this page...?

@mentat9  I dont see any new resolved ones from your side. For eg below are a few of the unresolved ones

Codeflow

I still see pe

@pranavi-dandu - I took another look and updated one of my comments, but there are still unaddressed questions. Can you address the remaining questions?

@mentat9 I replied to all of the comments and waiting for you to resolve them.

@pranavi-dandu - I resolved all of the ones you answered or changed. There are still 7 unaddressed/active comments here. Not sure why they aren't showing for you. You could also try using Codeflow if you don't see them above on this page...?

@mentat9 I dont see any new resolved ones from your side. For eg below are a few of the unresolved ones

Hey @mentat9 I don't know what the issue is, but whenever I reply to the comments, they don't show up on your screen or my colleagues. Only Im able to see my replies. But nonetheless, Im able to quote messages. This functionality is working fine. Did you ever see this issue?

@pranavi-dandu, @cpj2195 - Thanks for powering through the comment issues. @pranavi-dandu I can see the images, but it's too hard to use them in responses, so I've responded to comment threads from @cpj2195. Also, quote comments seem to have reached some limit and aren't working now either. I vaguely recall seeing something like this once before, but it would have been a long time back: nothing recent.

Signing off with comments from ARM.

Hi @pranavi-dandu your PR is approved but the api-readiness check did not pass.
I added the OkToMerge label which works as merged if you want to update ARM's manifest.
Once your service is deployed, please ping me, and I will merge your PR

Hi @pranavi-dandu your PR is approved but the api-readiness check did not pass. I added the OkToMerge label which works as merged if you want to update ARM's manifest. Once your service is deployed, please ping me, and I will merge your PR

Sure I will let you know. As of now I do not want to merge the PR right away.

/azp run

Hi @pranavi-dandu, one or multiple breaking change(s) is detected in your PR. Please check out the breaking change(s), and provide business justification in the PR comment and @ PR assignee why you must have these change(s), and how external customer impact can be mitigated. Please ensure to follow breaking change policy to request breaking change review and approval before proceeding swagger PR review. Action: To initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki. If you want to know the production traffic statistic, please see ARM Traffic statistic. If you think it is false positive breaking change, please provide the reasons in the PR comment, report to Swagger Tooling Team via https://aka.ms/swaggerfeedback. Note: To avoid breaking change, you can refer to Shift Left Solution for detecting breaking change in early phase at your service code repository.

Hey @pranavi-dandu I rerun the pipelines and find that we now have cross-version breaking changes, this PR now requires the approval of breaking change review board. Please follow the guidance above to get that


Loading webpack bundles with hashed filenames

This may be a dumb question, but I dont find a simple solution for that. How can I load webpack bundles with hashed filenames without adjusting the <script>-tag all the time?
So in my index.html I would like to write
    <script src="/app.js"></script>

which loads something like /app.a76gs0ad5dh45sdh9aa.js.
Is there a simpler solution than parsing the index.html and replacing the script-tag?

@sokra Can you describe how to embed hash into HTML without plugins?

I spent a few hours searching for standard solutions, and ended up coding this plugin, which I only run in production mode.
When I'm not in production mode, no hashes are used and everything works, including in watch mode and dev modes (hot or not).
if (process.env.NODE_ENV === 'production') {
    // Hashing of this kind happens only in prod.
    config.output.filename = "bundle-[hash].js"; // In dev's config, it's "bundle.js"
    config.plugins.push(
        // To rewrite stuff like `bundle.js` to `bundle-[hash].js` in files that refer to it, I tried and
        // didn't like the following plugin: https://github.com/ampedandwired/html-webpack-plugin
        // for 2 reasons:
        //    1. because it didn't work with HMR dev mode...
        //    2. because it's centered around HTML files but I also change other files...
        // I hope we can soon find something standard instead of the following hand-coding.
        function () {
            this.plugin("done", function (stats) {
                var replaceInFile = function (filePath, toReplace, replacement) {
                    var replacer = function (match) {
                        console.log('Replacing in %s: %s => %s', filePath, match, replacement);
                        return replacement
                    };
                    var str = fs.readFileSync(filePath, 'utf8');
                    var out = str.replace(new RegExp(toReplace, 'g'), replacer);
                    fs.writeFileSync(filePath, out);
                };

                var hash = stats.hash; // Build's hash, found in `stats` since build lifecycle is done.

                replaceInFile(path.join(config.output.path, 'index.html'),
                    'bundle.js',
                    'bundle-' + hash + '.js'
                );
            });
        }
    );
}

Any updated way to achieve this?

I think the recommended way is to use the plugin.

because it didn't work with HMR dev mode...

FWIW, react-redux-starter-kit uses html-webpack-plugin with HMR just fine.

Came up with this inline plugin:
var Path = require("path");
var FileSystem = require("fs");

var webpackConfig = {
    ...
    plugins: [
        ...
        function() {
            this.plugin("done", function(statsData) {
                var stats = statsData.toJson();

                if (!stats.errors.length) {
                    var htmlFileName = "index.html";
                    var html = FileSystem.readFileSync(Path.join(__dirname, htmlFileName), "utf8");

                    var htmlOutput = html.replace(
                        /<script\s+src=(["'])(.+?)bundle\.js\1/i,
                        "<script src=$1$2" + stats.assetsByChunkName.main[0] + "$1");

                    FileSystem.writeFileSync(
                        Path.join(__dirname, "%your build path%", htmlFileName),
                        htmlOutput);
                }
            });
        }
    ]
};

It will replace bundle.js in html with minified version and copy html to build/dist folder.
Enable only on production.

@mezzario thanks for sharing :+1:

The best practice I find is a noncached microloader that serves all required (forever cached) chunks.
So I have very simple entry point:
<!DOCTYPE html>
<html>
<head>
    <title>App</title>
</head>
<body>
    <script src="app.loader.js?cached=false"></script>
</body>
</html>

When app.loader is never cached it can serve frequently changing and no changing dependencies, for example: app, common, vendor, polyfills, styles, buildinfo etc.
Inspired by GWT but didn't find easy solution to implement this yet with webpack.

A noncached microloader would require an additional roundtrip, while script tags don't require it.
Multiple script tags is the better option. You can use the HtmlWebpackPlugin to generate the HTML file.

@sokra in some scenarios people are publishing a library pointing to latest. You still need a micro loader. Sometimes a customer is using the bundle so you can't change the html as easily. I switched our code to use a 302 redirect. I was hoping aws s3 supports this but I ended up with nginx. How would you solve this scenario?

I used the same approach to concat a "prefetch" link to the head, this is what I did:
`
var path = require("path");
var fs = require("fs");
var webpackConfig = {
...
plugins: [
...
this.plugin('done', function(statsData) {
let stats = statsData.toJson();
let htmlPath = path.join(__dirname, 'public', 'assets', 'index.html');
if (!stats.errors.length) {
let prefetchLinks = '';
stats.assets
.filter(asset => !/.html$/.test(asset.name)) //Filter out the html file
.forEach((asset) => { //Add files to final string
console.log(Wepback: Added ${asset.name} to prefetch);
prefetchLinks += <link rel="prefetch" href="/public/asset/${asset.name}">;
});
var html = fs.readFileSync(htmlPath, 'utf8');
var htmlOutput = html.replace(//, <head> + prefetchLinks); //Append the html after
            fs.writeFileSync(htmlPath, htmlOutput);
        }
    });
]

};
`

Hello ,
You can use a plugin which created for production bundle. The plugin provides copy and after change the file by the given regex pattern.
Plugin link : https://www.npmjs.com/package/webpack-file-changer
Example Usage:
const fileChanger = new FileChanger({
    move: [{
        from: settings.paths.assets,
        to: settings.paths.www
    }, {
        from: settings.paths.node_modules + "/bootstrap/dist",
        to: settings.paths.www + "/vendor/bootstrap"
    }
    ],
    change: [{
        file: "index.html"
        parameters: {
            "bundle\\.js": "bundle.[hash].js",
            "\\$VERSION": package.version,
            "\\$BUILD_TIME": new Date()
        }
    }
    ]
});

settings.webpack.plugins.push(fileChanger);

@mezzario solution didn't work for me but gave me great clues. This is what I've ended up with, in case it helps someone.
function() {
        this.plugin("done", function(statsData) {
            const stats = statsData.toJson();

            if (!stats.errors.length) {
                const htmlFileName = "index.html";
                const html = fs.readFileSync(path.join(__dirname, "src", "www", htmlFileName), "utf8");

                // need to read the final js bundle file to replace in the distributed index.html file
                const asset = stats.assets[0];
                let htmlOutput = html.replace("bundle.js", asset.name);

                fs.writeFileSync(
                    path.join(buildPath, htmlFileName),
                    htmlOutput);
            }
        });
    }

Just wanted to add that if you already have the build's hash being included for the "main" bundles, using HtmlWebpackPlugin, and you want to add that hash to other, manually-added scripts in your html file (e.g. for ones compiled separately using webpack.DllPlugin), you can do the following: (just add it as a plugin after the HtmlWebpackPlugin)
function() {
		this.plugin("compilation", function(compilation) {
			compilation.plugin("html-webpack-plugin-after-html-processing", function(htmlPluginData, callback) {
				// this couldn't find the "manifest.json" asset
				/*var chunk0_filename = compilation.assets["manifest.json"][0];
				var hash = chunk0_filename.match(/?(.+)$/)[1];*/

				// this worked, except it used the "app.js"-specific content-hash, rather than the build's hash which we want
				//var hash = compilation.chunks[0].hash;

				// this gets the build's hash like we want
				var hash = htmlPluginData.html.match(/\.js\?([0-9a-f]+)["']/)[1];
				htmlPluginData.html = htmlPluginData.html.replace("/dll.vendor.js", "/dll.vendor.js?" + hash);
				callback(null, htmlPluginData);
			});
		});
	},

If you control your server that hosts the app, such as a node.js app, then you can easily get the hashed filename using the webpack-manifest.
import * as path from 'path';
// import * as fs from 'fs';
const NODE_ENV = process.env.NODE_ENV || 'production',
    isDev          = NODE_ENV === "development" || NODE_ENV === "localhost",
    isQA           = NODE_ENV === "qa" || NODE_ENV === "debug",
    isStaging      = NODE_ENV === "staging",
    isProd         = NODE_ENV === "production",
    localIP        = require('my-local-ip')(),
    root           = path.normalize(__dirname + '/..'),
    devServerPort           = process.env.DEVSERVERPORT || 4000,
    webServerPort           = process.env.WEBSERVERPORT || 5000;

let webpackManifestDev;
if (isDev) {

    // This is a mock of webpack-manifest.json specifically for webpack-dev-server, so the pug template can run without waiting for WDS to generate the manifest and read from it. This needs to be managed manually and be synced with the actual output of webpack. It should not change often though.
    webpackManifestDev = {
        "app"            : {
            "js" : `http://${localIP}:${devServerPort}/js/app.bundle.js`,
            "css": `http://${localIP}:${devServerPort}/js/app.style.css`
        },
        "commons"        : {
            "js": `http://${localIP}:${devServerPort}/js/commons.bundle.js`
        },
        "polyfills"      : {
            "js": `http://${localIP}:${devServerPort}/js/polyfills.bundle.js`
        },
        "vendors"        : {
            "js": `http://${localIP}:${devServerPort}/js/vendors.bundle.js`
        },
        "webpack-runtime": {
            "js": `http://${localIP}:${devServerPort}/js/webpack-runtime.js`
        },
        "assets"         : {
            "loading-animation.css": `http://${localIP}:${devServerPort}/css/loading-animation.css`,
        }
    };
}

/**
 * Get the filename of the hashed bundle from the webpack manifest. This changes any time code within that
 * specific bundle changes.
 */
const webpackManifest = isDev ? webpackManifestDev : require(root + '/wwwroot/webpack-manifest.json');
// or this:
// const webpackManifest = isDev ? null : JSON.parse(fs.readFileSync(path.join(root, '/wwwroot/webpack-manifest.json'), 'utf-8'));

/** This loads the chunk-manifest from webpack ChunkManifestPlugin, which extracts the manifest from
 * the webpack-runtime.js script. Since the webpack-runtime is being inlined anyway, it doesn't affect
 * caching of that file anyway, but its good to separate out the chunk manifest (for lazy loaded chunks)
 * into its own file for use as needed.
 */
const webpackChunkManifest = isDev ? null : require(root + '/wwwroot/' + webpackManifest['webpack-runtime']['json']);

export const config: any = {
    NODE_ENV            : NODE_ENV || 'production',
    isDev               : isDev,
    isQA                : isQA,
    isStaging           : isStaging,
    isProd              : isProd,
    localIP             : localIP,
    root                : root,
    DEVSERVERPORT       : devServerPort,
    WEBSERVERPORT       : webServerPort,
    webpackManifest     : webpackManifest,
    webpackChunkManifest: webpackChunkManifest
    // webpackRuntime : webpackRuntime
};

Then in your index template, you'll need some sort of templating engine. I'm using Pug/Jade

doctype html
html(lang='')
    head
        title MyApp
        meta(charset='utf-8')
        meta(http-equiv='X-UA-Compatible', content='IE=edge')
        meta(name='viewport', content='width=device-width, initial-scale=1, shrink-to-fit=no' id="viewport-meta")
        meta(name='description', content='')
        link(href='https://fonts.googleapis.com/icon?family=Material+Icons', rel='stylesheet')
        link(href = config.webpackManifest['assets']['loading-animation.css'], rel = 'stylesheet' type = 'text/css')
        // base url
        base(href='/')

        script(type='text/javascript').
            window.webpackChunkManifest = !{JSON.stringify(config.webpackChunkManifest)};

        if config.NODE_ENV === 'development'

            // Development mode - use webpack-dev-serve

        else if config.NODE_ENV === 'debug' || config.NODE_ENV === 'qa'

            // Development / Debug QA mode - no gzip
            link(href= config.webpackManifest['app']['css'], rel = 'stylesheet' type = 'text/css')

        else if config.NODE_ENV === 'staging' || config.NODE_ENV === 'production'

            // Production mode - gzipped (currently disabled)
            link(href= config.webpackManifest['app']['css'], rel = 'stylesheet' type = 'text/css')

        else

            // No config.NODE_ENV Set - no gzip
            link(href= config.webpackManifest['app']['css'], rel = 'stylesheet' type = 'text/css')

    body(class=config.NODE_ENV)

    div(id="loader-wrapper")
        div(id="loader")
    app

    script(type='text/javascript', src = config.webpackManifest['webpack-runtime']['js'])
    script(type='text/javascript', src = config.webpackManifest['commons']['js'])
    script(type='text/javascript', src = config.webpackManifest['polyfills']['js'])
    script(type='text/javascript', src = config.webpackManifest['vendors']['js'])
    script(type='text/javascript', src = config.webpackManifest['app']['js'])

    if config.NODE_ENV === 'development'

        // Webpack mode
        // Local development stuff here

    else if config.NODE_ENV === 'debug' || config.NODE_ENV === 'qa'

        // Debug / QA mode - no gzip
        // Debug / QA development stuff here

    else if config.NODE_ENV === 'staging' || config.NODE_ENV === 'production'

        // Production mode - gzipped (currently disabled)
        // Production development stuff here

    else

        // No config.NODE_ENV Set

In order to generate the webpack manifest, you'll need a webpack plugin to do that. I use assets-manifest-plugin since I like the style of the output manifest.json file. I forked it an added some additional options here, such as creating a property for ALL assets that webpack emits, instead of just assetsByChunkName which is limited to entry chunks and chunks from CommonsChunkPlugin.
You'll also want to enable CommonsChunkPlugin and ChunkManifestPlugin so you can enable long-term caching of all assets. If the asset ever changes, webpack will generate a new hash as you know, so this manifest will update with the hash and then bust the cache.
If the asset doesn't change, the hash stays the same. Make sure you use [chunkhash] in your asset names and not [hash], since the former only changes when the file contents change, and the later changes every build. Lastly you will need MD5 plugin for deterministic hashes.
You can use [chunkhash] in loaders like file-loader and you can use [hash] in CopyWebpackPlugin which strangly enough, acts like [chunkhash] since it only changes when the files change, not on every build.

webpackConfig: {

  plugins [
   /**
    * Webpack plugin that emits a json file with assets paths.
    * This is a fork of the original plugin with new options and functionality added
    *
    * See: https://github.com/IAMtheIAM/assets-webpack-plugin
    */

   new AssetsPlugin({
      path       : Helpers.root(`./${outputDir}`),
      filename   : webpackManifestName,
      prettyPrint: true,
      allAssets  : true, // If true, lists all assets emitted from webpack under property `assets` and `chunks` in the emitted manifest
      forceAbsolutePath: true // If true, prepends a leading / to the allAssets and chunks property values to make them site-root relative. If the value already starts with /, it will not be changed.
   }),

   /** Plugin: ChunkManifestPlugin
    * Description: Extract chunk mapping into separate JSON file.
    * Allows exporting a JSON file that maps chunk ids to their resulting asset files.
    * Webpack can then read this mapping, assuming it is provided somehow on the client, instead
    * of storing a mapping (with chunk asset hashes) in the bootstrap script, which allows to
    * actually leverage long-term * caching.
    *
    * See: https://github.com/diurnalist/chunk-manifest-webpack-plugin */
   new ChunkManifestPlugin({
      filename        : 'chunk-manifest.json',
      manifestVariable: 'webpackChunkManifest'
   }),

      /**
       * CommonsChunkPlugin
       *
       * See: https://webpack.js.org/plugins/commons-chunk-plugin/
       * See: https://medium.com/webpack/webpack-bits-getting-the-most-out-of-the-commonschunkplugin-ab389e5f318
       */

      /**
       * This scans all entry points for common code, but not async lazy bundles,
       * and puts it in commons.bundle.js. An array of names is the same as running
       * the plugin multiple times for each entry point (name)
       */
      new webpack.optimize.CommonsChunkPlugin({
         name     : 'commons',
         minChunks: 2
         /*      ,filename : isDevServer
                  ? '/js/commons.bundle.js'
                  : '/js/commons.bundle.[hash].js'*/
      }),
      /**
       * This only scans lazy bundles, then puts all common code in lazy bundles
       * into one chunk called "commons.lazy-vendor.chunk.js", if it isn't already
       * in commons.bundle.js. If it is already in there, it removes the common code
       * in the lazy bundles and references the modules in commons.bundle.js
       */
      new webpack.optimize.CommonsChunkPlugin({
         async    : 'commons-lazy',
         minChunks: 2 // if it appears in 2 or more chunks, move to commons-lazy bundle
      }),

      /**
       * NOTE: Any name given that isn't in the entry config will be where the
       * webpack runtime code is extracted into, which is what we want. It needs to
       * be the LAST one. Order matters.
       */
      new webpack.optimize.CommonsChunkPlugin({
         name    : 'webpack-runtime',
         filename: isDevServer
            ? 'js/webpack-runtime.js'
            : 'js/webpack-runtime.[hash].js'
      }),

   /**
    * Plugin: WebpackMd5Hash
    * Description: Plugin to replace a standard webpack chunkhash with md5.
    *
    * See: https://www.npmjs.com/package/webpack-md5-hash
    */
   new WebpackMd5Hash(),

   /**
    * Plugin: ExtractTextPlugin
    * Description: Extract SCSS/CSS from bundle into external .css file
    *
    * See: https://github.com/webpack/extract-text-webpack-plugin
    */
   new ExtractTextPlugin({
      filename : 'css/[name].style.[chunkhash].css',
      disable  : false,
      allChunks: true
   }),

      /**
       * Copy Webpack Plugin
       * Copies individual files or entire directories to the build directory.
       *
       *  For more info about available [tokens]
       *  See: https://github.com/webpack/loader-utils
       */

      // This brings over all assets except styles and *.txt files
      new CopyWebpackPlugin([{
         from : 'src/assets',
         to   : '[path][name].[hash].[ext]',
         force: true
      }], {
         copyUnmodified: false,
         ignore        : ['robots.txt', 'humans.txt'] // these shouldn't get hashed or they won't be read properly by bots
      })
  ]
}

I hope this helps.

I use this php to parse the files and load them via wordpress.
`if ( !defined('ABSPATH') )
define('ABSPATH', dirname(FILE) . '/');
loadHashedAssets();
function loadHashedAssets()
{
$dirJS = new DirectoryIterator(ABSPATH.'dist');

foreach ($dirJS as $file) {

	if (pathinfo($file, PATHINFO_EXTENSION) === 'js') {
		$fullName = basename($file);
		$name = substr(basename($fullName), 0, strpos(basename($fullName), '.'));

		switch($name) {

		    case 'bundle':
		        $deps = array('jQuery');
		        break;

		    default:
                $deps = array('jQuery');
		        break;

		}

		wp_enqueue_script( $name, '/dist/'. $fullName, $deps, null, true );

	}

	if (pathinfo($file, PATHINFO_EXTENSION) === 'css') {
		$fullName = basename($file);
		$name = substr(basename($fullName), 0, strpos(basename($fullName), '.'));

		wp_enqueue_style( $name,  '/dist/'. $fullName,false, null, 'all' );
	}

}

};`