Bear glTF 2.0 model is not displayed in Cesium.js v1.40 or later

I tried to display the bear glTF model that was in sketchfab with the latest version of Cesium.js.
https://sketchfab.com/models/f2f13a8630004b1c82730d8b9ffa0e1f
However, in Cesium.js v1.40 and later, an error is displayed and it seems that it is not displayed correctly.
Cesium.js v1.39 + Bear glTF model result:

Cesium.js v1.44 + Bear glTF model result:
Cesium.js:532
An error occurred while rendering.  Rendering has stopped.
undefined
TypeError: i.clampTime is not a function
TypeError: i.clampTime is not a function
    at Array.<anonymous> (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:497:22244)
    at h (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:496:19348)
    at c.update (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:496:21384)
    at Ae.update (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:498:20408)
    at a.update (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:492:8011)
    at tt (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:525:21935)
    at Ke (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:525:19739)
    at Qe (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:525:17745)
    at lt (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:525:25765)
    at ut (https://cdn.rawgit.com/cx20/gltf-test/279cba56/libs/cesium/1.44/Cesium.js:525:25933)

Although it may be another problem, in Cesium.js v1.42 or later, it seems that animation-enabled models are not animated. BoxAnimated, CesiumMan, Monster, etc..

@cx20 There was a change there, add shouldAnimate: true to the Cesium.Viewer constructor options.  The default behavior starts in pause now.

I noticed that the following glTF model can not be displayed. I will report this as a separate Issue.
https://cdn.rawgit.com/mrdoob/rome-gltf/784089b4/files/models/life_soup/quadruped_fox.gltf
https://cdn.rawgit.com/pissang/claygl/c4f45119/example/assets/models/SambaDancing/SambaDancing.gltf

@cx20 @emackey thanks for reporting all these glTF issues!  OK to close this one?

@pjcozzi The related PR #6422 didn't get merged yet.  @lilleyse is it being held up by the lack of a test model?

This auto-closed because I merged the animation fix.  I think I'm still seeing an issue where the bear renders inside-out when viewed from the back.  Not sure what that's about...

The side view just shows some slicing through the balloons.  The rear view is so bad it looks like you're seeing the front of the bear.

@emackey do you think this is fixed by #6513

do you think this is fixed by #6513

Sadly no.  I just merged master into that branch, but the artifacts look the same.

I've run through a bunch of other models, and haven't found any other than the bear that display this particular problem.  Also, the problem only appears when animations are enabled.  So... some bad interaction between something animated and the diffs in 417c3f9, it would seem.

It might be https://github.com/AnalyticalGraphicsInc/cesium/issues/6447.
We never figured out why log depth and skinned meshes don't play well together. The current workaround is an improvement but sometimes reveals artifacts like this.

Yes, that's the issue. If you remove the workaround, this model works fine. I'm looking into it.

@emackey  Did we check to see if this model has the same normalized bone weights problem as Cesium Man?
It looks unlikely that we will get to this for the 1.45 release today and just want to make sure the issue is model specific or at least not the sign of a larger problem.

No, the Bear model has the opposite problem, it is being damaged by a workaround that's in place for the sake of the broken Cesium Man model.
Let's not hold the release for this.


AttributeError: 'Set'  Object has no attribute 'append'

I am preparing AICity 2020 data and I have followed the instruction provided on process_aicity_data script. However, I am facing this issue and I've tried to solve it but I couldn't figure it out. Please help me to solve this issue.
PS I am a very new to this. I would really appreciate it.
Traceback (most recent call last):
File "2_prepare_real_trainlist.py", line 37, in
all_ids.append(vid)
AttributeError: 'set' object has no attribute 'append'

Having the same issue here

change all_ids = set()  to
all_ids = []
you can see all_ids is not used after all_ids.append(vid), so you just change set to list, will be ok.


Integrated Web API client

@Eilon @javiercn I think we need this. Otherwise you have to a do a bunch of work to setup the JwtBearer options in an environment independent way.


namespaces in the commands

how to include namespace while listing the repo and tags inside the namespace, can I do that with this tool?

thats not really how it works this tool is more for private registries running v2 docker registry

I am running the same, using portus UI which have namespaces available for users, so if I want to list the repos in my namespace does it work?


Sensor Status

Following on from my question about the Sensor Status update.
Is it possible to amend something (your driver or something in weewx.conf file or something in skins.conf etc) so that only the Battery Status is displayed and all other sensor stuff is omitted.
My coding skills or limited so if it is possible instructions would need to be simple and detailed! :)
Just to make it look a bit tidier. Many many thanks

Hi @JansonBHong,
Not possible. The values of sensors that showing is depending to your Weewx archive interval.
If your Weewx archive is set to 15min, the problem will not appear because Weatherlink.com register those values each 15min.
But if you're Weewx archive is another value, each time that the WLLDriver have not this values, a N/A will be show on your website.
On my website : https://meteo-jussy.fr, I use the Belchertown skill with a graphical wich show those values with an average. With this option, I've not a, None value for each.
Regards,
-Drealine

Once again many thanks for your help


Remove storage layer abstractions

This PR removes all remaining storage layer abstractions that are no longer useful after #130. Specifically the Query, Iterator, Key, and Requirement types were removed, and the gorm package was merged with the storage package.
My goal with this is to simplify our implementation and decouple each database method as much as possible before addressing other database issues like #148, #257, #382, and #414.
The file diffs aren't going to be very useful in reviewing this PR because files have been modified and moved, so many unchanged sections of the package are going to appear as new additions. The list of commits might be helpful.

Nice work! Breaking this up into small commits made this much easier to review. I'm curious to know how much you planned these steps in advance.

I didn't plan all the individual changes in advance (just the end goal). I did plan to use small enough commits so that each is individually coherent because I knew the full diff would be a mess.

I had one functional concern that I manually verified - perhaps this is also represented in tests. I wanted to be sure that filtering still worked on large collections of resources when the requested items were sparse and possibly at the very end of the list. (I checked and this was fine.) On reading the commits, I see no reason why it wouldn't have worked, since the filtered list handlers always get everything in one large page of results.

We have tests (example) that make sure pagination works correctly with filters when the matched elements are sparse, but it only uses 100 resources. Does that cover everything you're thinking of?


The latest code is not updated to the mvnrepository.

I know. I will deal with it as soon as i can.

http://repo1.maven.org/maven2/se/akerfeldt/okhttp-signpost/
I suppose search.maven.org will reflect that shortly.


Group violations per rule in output

Feature Request

Q
A

New Feature
yes

RFC
yes

BC Break
no

Summary
Currently the output of violations is grouped by class (fqcn), and all violations are listed under that. If violations were additionally grouped per rule, this could add to the clarity of the output AND reduce the line-length by splitting into more lines.
The output would look something like this:
App\Domain\Model has 2 violations:
  violated rule: should not depend on classes outside namespace App\Domain because we want protect our domain
    - App\Domain\Model depends on App\Services\UserService (on line 14)
    - App\Domain\Model depends on App\Services\OtherService (on line 26)
  violated rule: should implement EntityInterface

This idea came up in discussion in this PR: https://github.com/phparkitect/arkitect/pull/281#issuecomment-1216711549
I'd be able to pick this up and create a pull request when I have some spare time if this is a wanted feature

Thanks @annervisser, let me know if you need some help!

is this the same request as #187 ?

Yes @dbu it seems the same request!


Discord.JS Hosting

Module Request
Discord.JS
Game Information:
Game Title: Discord.js
How to obtain:
Need to be able to install node.js https://nodejs.org/en/
To start the script need away to start with custom .js file example index.js
Suppoted OSs: Any
Supports RCON/Console input?
Need to be able to run 'npm install ' in console
I confirm:

[x] that I have searched for an existing module request for this application.
[ ] that the server is an official server distributed by the games publishers/developers.
[x] that the server is available to the general public.
[x] that the server can be run headless (without a GUI).
[ ] I have already attempted to create a configuration myself using the configuration tool at https://config.getamp.sh/

there is a docker image for amp that comes with node pre-installed. this isn't really a game nor a particular application. I don't think this really can fall under a configurable generic module, rather should just be hosted with a manually configured node.js image. Thinks like which file to run, what commands exist in console, which ports to open etc will depend entirely on which bot you're hosting

Redundant - you can already do this. I might ship an example though because this really is simple to do.

Redundant - you can already do this. I might ship an example though because this really is simple to do.

That would be both awesome and quite helpful.

What's a commonly used bot that uses node.js? I can get a template created to use as an example. The GatekeeperV2 template works similarly as it uses a Python bot and the Python Docker image. So it would just be an adjustment to node.js instead.


Set User-Agent to "relman-auto-nag" for bugzilla queries

Fixes #82
I'm not completely sure we want to do this, but just in case...
maybe it should also have a version?  relman-auto-nag isn't currently versioned/released at all so that's icky too.

Coverage increased (+0.4%) to 48.69% when pulling 7e1e0a99614b2372808aaf1269fbf0e364005225 on jcristau:user-agent into 516284d4fca57623f40c1a0c0628a5472338d637 on mozilla:master.


Is PBMM good enough for v2, or do we need "enhanced"?

This is for the new login service (duplicate and answered on other board)


Question - Desktop App Window Size

Is there a way for me to resize the desktop app window when i run the app? Currently, it is the "standard" size when I run it, but the amount of components I have on it, the size could easily be half.
I am making a basic app to just sit in a corner of a screen, but would like it as small as possible.
I might have missed it in the docs.

That should be the size param of the launch() function/method. It's indeed a bit buried, because Flexx' version of launch calls webruntime's version: https://webruntime.readthedocs.io/en/latest/

Thank you. I will dig into that.

i guess i am just confused how to use the DesktopRuntime's launch_app feature
if __name__ == '__main__':     app = DesktopRuntime.launch_app(CryptoCalc, title='Crypto Calc',size=(100,200))     app.run()
this is what i have but am getting the following errors
Assigning result of a function call, where the function has no return
Unexpected keyword argument 'title' in unbound method call
Unexpected keyword argument 'size' in unbound method call
No value for argument 'url' in unbound method call

right now i am using
if __name__ == '__main__':     app.launch(CryptoCalc, runtime='app or chrome-app', title='Crypto Calc')     app.run()
so far there is no way for me to set the window size

You can add it there:
app.launch(CryptoCalc, runtime='app or chrome-app', title='Crypto Calc', size=(100, 200))
                                                           here --------/

Hello,
I also run into this issue. The title name I set is shown correctly, but the window size is still the default.
Here is the code:
a = flx.App(TuneAI_Demo, title='TuneAI Demo', size=(1200, 100))
a.launch('app', size=(1200, 100))
flx.run()

Also, I tried the demo twente.py from the reference. The size parameter there is not working either.
I run the code from the command line on Windows 10. The Python version is 3.8.3. Any thought about what I might have missed?

It works for me for both firefox-app and chrome-app, on MacOS. What app are you using? This is probably an issue for the webruntime library.

I am using chrome-app on Windows. I see this question was posted in the webruntime github. It looks like chrome-app has an issue. Thank you!


Defining lambda timeout for custodian rule

One of my custodian rules is taking longer than 60 seconds (tag validation on S3 buckets) and is causing custodian to fail.  Where in custodian do I set the timeout for the lambda function that gets associated with the rule?

Timeout ought to be configured as a passthrough configuration under mode.

fixed in 0.8.24, timeout can now be specified under mode

Hi @kapilt
Here is one of the policies that we use
`policies:

name: tag-tables
resource: dynamodb-table
description: |
Detect when a new DynamoDB Table is created and mark it for deletion
mode:
role: arn:aws:iam::286420114124:role/c7n_lambda_role
type: cloudtrail
events:
- CreateTable
timeout: 180
actions:

type: mark-for-op
tag: CustodianMarkForDelete
msg: "Will be deleted: {action_date}"
op: delete
days: 2 I want to tag table after creation, But I'm getting the error in CloudWatch:Resource Tag Errors {'arn:aws:dynamodb:eu-central-1:2123xxxxxxxx:table/qwerty': 'ResourceNotFoundException'}`
Because it tries to list tags on resource that is still in creation state. The arn of the resource is right. I think that timeout is not working properly. Could you check it please?

@tmxak dynamodb tables can't be tagged on create, timeout is the max execution time of the lambda, ie if its was processing lots of resources. it doesn't inject wait semantics into custodian, its merely config for the lambda. there's a separate pr that I recently merged that handles dynamodb create events specifically since this has been a common use case by sleeping till the table is ready up to the time lambda timeout. also rather then commenting on a closed unrelated issue, its probably best to file a new issue.

re which recent pr https://github.com/cloud-custodian/cloud-custodian/pull/3516

thank you @kapilt
Waiting for the release then!


Audio Output Devices API

https://w3c.github.io/mediacapture-output/
There is an Intent to Ship this API on blink-dev, so if possible please prioritize this review.

taken up 11-11 on f2f

Alex: We need @travisleithead on this...

@slightlyoff to write up thoughts here and hopefully we can come up with some conclusions quickly

If you feel like you have the domain expertise, it would be nice to hear some thoughts about the potential for different shapes of the API for HTMLMediaElement and the Web Audio API, which I asked some questions about on blink-dev:
https://groups.google.com/a/chromium.org/d/msg/blink-dev/ELz4SxMwa0U/CWsWMGjfCwAJ
The situation we find ourselves in is that we don't have the primitives that underly both Web Audio and media elements, and this is the cause of some uncertainly both for this API and Media Session.

Hope to hear from you next week, then?
We're code complete on the implementation, TAG review is one of the things that people have asked for before we ship the feature.

I've looked this over today.
Audio Output Devices API
Reviewed: https://w3c.github.io/mediacapture-output/ (25 November 2015)
My takeaway: The design and concepts are simple and integrate well with other Web RTC concepts (e.g., the enumerateDevices() API). While I don't really like the name (sinkId; more below), otherwise, the integration points are fine. I note (as also noted above), that we don't yet have a fundamental concept of an audio/multimedia engine that would provide the substrate for features like this, though to be fair, this feature is only related to such an engine on the output edge (not tied to primitive operations--though it does describe starting/stopping audio).
Specific feedback:

sinkId is only for Audio? The name seems a bit ambiguous when applied to HTMLMediaElement (audio + video). In the context of a video element, sinkId could be confusing.
id-communications -- is the issue resolved with how to deal with headsets?
id-communications - what happens when this value is assigned, yet no comm device is available? The processing model needs to include specifics on handling these special values.

The sink-ID seems to work OK in practice, given that there isn't yet a model I know of where a page can choose which screen to display an element of.
I'm not sure what the writer of the NOTE for the headset issue intended to say, so can't answer that.
I think the right answer for the other question is that if the underlying system doesn't support "id-communications", it should default to the default device ("" or "id-multimedia").
I'll file a bug to that effect.

Discussed at TAG teleconf 16 December 2015: https://github.com/w3ctag/meetings/blob/gh-pages/2015/telcons/12-16-agenda.md

@alvestrand, additionally, the spec does not appear to hook into the Permission API (should file an issue to add a permission enum into that spec). That way it can keep track of permissions related to audio output.

Agreed to close on teleconf 16-dec. Will re-open if further requests come in.

As an aside, it's be great to see example code for this API somewhere so that folks can get a sense for how it hangs together with the rest of the system. The attribute/promise split for getter/setter might make a ton of sense, but it's hard to see. Same for the pre-defined devices list.

WebRTC / permissions API interaction is currently the subject of another ongoing discussion, so I think we are aligned here.
Example code can be found here: https://webrtc.github.io/samples/src/content/devices/multi/


Make host optional

This allows us to generate root/intermediate CA certicates.


Added missing localization of messages.

Added Popup class to simplify generic error and information reporting.
Also added more detailed information for Check for Update to clarify whether found release is an update or new product release.

Looks good.


⚠ Bofrost.de has degraded performance

In caa662d, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 979 ms

Resolved: Bofrost.de performance has improved in c630267 after 6 minutes.


Project Specific Settings Stored Outside .idea folder

We have been using Intellij 14 on Ubuntu 16.04.
Project inherits default settings of the plugin from Intellij.
But saveactions_settings.xml file being saved on  /home/userName location instead of .idea folder of project as mentioned at https://github.com/dubreuia/intellij-plugin-save-actions

I'm pretty sure they changed the way the settings files are saved around Intellij 15, and I'm using that new storage API. I'm actually surprised it works in 14...
I can check if I can retrofit the functionality to an old Intellij but I'm not sure that's possible.

WNF


plume: select aws partition by flag

Select AWS Partition by flag
Make AWS partition selectable via cmd flag
How to use
plume pre-release --partition=default

Testing done
I haven't run any tests yet.

Testing plume pre-release of stable Flatcar push to AWS China. This is the output
vagrant@vagrant-ubuntu-trusty-64:~$ plume pre-release -B amd64-usr -C stable -P china -V 2345.3.1 --platform aws -v
2020-04-15T13:34:56Z cli: Started logging at level INFO
2020-04-15T13:34:56Z storage: Fetching gs://flatcar-jenkins/stable/boards/amd64-usr/2345.3.1/
2020-04-15T13:34:57Z storage: Found 376 objects under gs://flatcar-jenkins/stable/boards/amd64-usr/2345.3.1/
2020-04-15T13:34:57Z plume: Running AWS pre-release...
2020-04-15T13:34:57Z plume: Reusing existing image "/home/vagrant/.cache/images/stable/amd64-usr/2345.3.1/flatcar_production_ami_vmdk_image.vmdk"
2020-04-15T13:34:57Z plume: Connecting to AWS China...
2020-04-15T13:35:01Z plume: Creating S3 object s3://flatcar-prod-ami-import-cn-north-1/amd64-usr/2345.3.1/flatcar_production_ami_vmdk_image.vmdk...
2020-04-15T13:35:03Z platform/api/aws: uploading s3://flatcar-prod-ami-import-cn-north-1/amd64-usr/2345.3.1/flatcar_production_ami_vmdk_image.vmdk

Please git apply this to use unauthorized access to the bucket via --gce-json-key none:
diff --git a/cmd/plume/plume.go b/cmd/plume/plume.go
index fa6f5ad0..01ce8be2 100644
--- a/cmd/plume/plume.go
+++ b/cmd/plume/plume.go
@@ -36,10 +36,13 @@ var (
 )

 func init() {
-	root.PersistentFlags().StringVar(&gceJSONKeyFile, "gce-json-key", "", "use a JSON key for authentication")
+	root.PersistentFlags().StringVar(&gceJSONKeyFile, "gce-json-key", "", "use a JSON key for authentication (set to 'none' for unauthorized access)")
 }

 func getGoogleClient() (*http.Client, error) {
+	if gceJSONKeyFile == "none" {
+		return &http.Client{}, nil
+	}
 	if gceJSONKeyFile != "" {
 		if b, err := ioutil.ReadFile(gceJSONKeyFile); err == nil {
 			return auth.GoogleClientFromJSONKey(b)


Successful Tx flagged as failed?

Overview
This one is a bit strange. I had some ETH and went to send a test amount of like $100 or so. Went through the send flow and signed the Tx in my MM connected to the app.
Tx succeeded on chain, but

on the activity tab it showed as failed
it triggered the success toast but didn't sit as pending on the drawer

Ideally we make small amount sending more seamless and safe.
References and additional details
Tx from etherscan was fine

But on the activity tab it got flagged as failed.

Acceptance Criteria

[ ] We tighten up the pipeline from send -> drawer -> activity. making sure we have tx's properly flag
[ ] investigate why this guy got flagged as failed on our transactions. 0x9f589048633134cb89753a72e92ed8a5d53f26aea9be27e8e3d68d6e86fc451f

Need By Date
No response
Screenshots/Mockups
No response
Estimated effort
No response

networking request failing creates incorrect state for the transaction itself.

@shapeshift/operations can you help us to determine if you are able to replicate this? If its able to replicated, engineers can pick it up, but otherwise might close it without more information / reports of this.

Ops is currently unable to recreate the 'failed' error message state of this issue:

@twblack88 were you ever able to reproduce this issue consistently, or was this a one off?  I am in support of closing this issue if we cannot reproduce the error.

One off. @purelycrickets  closing 🤝


bugfix: 修改工作台复制单据

Codecov Report

Merging #643 (d9806f0) into v2.6.x_develop (13dc467) will not change coverage.
The diff coverage is n/a.

@@               Coverage Diff               @@
##           v2.6.x_develop     #643   +/-   ##
===============================================
  Coverage           62.26%   62.26%
===============================================
  Files                 442      442
  Lines               27468    27468
===============================================
  Hits                17103    17103
  Misses              10365    10365

Continue to review full report at Codecov.

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


openwhisk contains typo on catalog.md

In doc https://github.com/IBM-Bluemix/docs/blob/master/openwhisk/openwhisk_catalog.md
The sentence:

The content of the generated events depends on the value of the value of the includeDocs parameter when creating the trigger. If set to true, each trigger event that is fired includes the modified Cloudant document.

contains  depends on the value of the value of the includeDocs it should be depends on the value of the includeDoc

Closing as itt's merged


Rename and clean up custom Text and Button components.

Problem
I have observed in my own work and in PR reviews that a common pitfall in Expensify.cash is to do this:
import {Text} from 'react-native';

Which will result in text that does not have the correct font, line height, etc...
Why this is important?
Especially for new contributors, or when working with fancy IDE's such as WebStorm that auto-import things for you, it's an easy mistake to make. It's also an easy mistake to miss, because it's not always easy to tell the difference between GT America and the default font (on Android, in particular).
Solution
Rename our custom Text component and our custom Button component to ExpensifyText and ExpensifyButton, respectively. That should help make it clear to newcomers and reviewers that we should generally always be using our custom component. Some potential bonus solutions:

Put something like this in index.js:
import {AppRegistry, Text} from 'react-native';

...

if (__DEV__) {
    Text.render = () => {
        throw new Error('Must use <ExpensifyText /> instead of <Text />');
    };
}

Implement a new ESLint rule that complains if you create a custom component that shadows the name of a standard RN library component.

Platform:
Where is this issue occurring?
Web
iOS
Android
Desktop App
Mobile Web
Version Number: 1.0.53-0

Going to drop this.

I've renamed the components in https://github.com/Expensify/App/pull/6538. I'll announce it in #expensify-open-source once it's merged so people know as well.
There are still some cases of the react-native TouchableOpacity, Pressable, Text, and Button components being used. I didn't touch those. I just renamed the cases where our custom components were used.
I'll look into the bonus solutions a bit as well.

Put something like this in index.js:

I don't think this will work because our custom components and some other ones do use the react-native Text component.

Nice! A little while back, @marcaaron wrote up this handy-dandy SO on writing custom ESLint plugins. So we could make a lint rule prohibiting the use of the RN default components, and just disable the rule in the locations where we're intentionally making exceptions.

Nice, thanks for that!
I looked into this a bit and I think there's actually an easier way we can do it rather than creating a custom rule. ESLint has a default rule called no-restricted-imports which allows you to restrict certain imports from certain modules. So we can just restrict the use of Text, Button, and TouchableOpacity from react-native with a rule here like this:
'no-restricted-imports': ['error', {
    'paths': [{
        'name': 'react-native',
        'importNames': ['Text'],
        'message': 'Please use our custom ExpensifyText component instead.',
    }]
}]

It seems that you can't have RuleTester test their built-in rules, but it seems to work well:

What do you think @roryabraham @marcaaron?

Ooh nice find @puneetlath! Seems perfect for this use case.

Sweet, I'll get that added. Tracking the todos for it here: https://github.com/Expensify/Expensify/issues/187203

@anthony-hull suggested we also add an ESLint rule for TextInput since we have a handful of our own custom Text Input components as well: ExpensiTextInput, TextInputAutoWidth, TextInputFocusable, TextInputWithFocusStyles, TextInputWithLabel.
I think it makes sense. What do y'all think?

Sure, sounds good to me @puneetlath


Tests that app/module templates can be migrated to null-safety

With https://github.com/flutter/flutter/pull/74068 in place, the app and module template can be migrated to null-safety with the dart migrate tool. This adds a test to ensure that we don't regress this.
Sometimes after the next stable release we will migrate the actual templates to null safety. Until then, migrating them with dart migrate should be supported. See also https://github.com/flutter/flutter/issues/67447#issuecomment-759100279.
Fixes https://github.com/flutter/flutter/issues/67447.

This already exists in https://github.com/flutter/flutter/blob/master/packages/flutter_tools/test/integration.shard/migrate_test.dart . You could update the test cases to add one for the module example instead?

This already exists in https://github.com/flutter/flutter/blob/master/packages/flutter_tools/test/integration.shard/migrate_test.dart . You could update the test cases to add one for the module example instead?

Lol, I guess we had the same idea on Friday. I'll add the module test there as well.

Lol, I guess we had the same idea on Friday. I'll add the module test there as well.

Updated, PTAL.

Updated, PTAL.


adding m4a1-s PrintStream crashes

I cant load my configs because of the skin changer, I was going to just load my config without my skins but I wanted to add my main guns except as soon as I press add on printstream it crashes

bro, i have the same problem as you, the game crashes when adding inventory


Graph selection info

Adds node/edge selection and its relevant info
Closes #31

@dongbohu Was able to fix most of the npm warnings. Turns out react-scripts hadn't been updated in a long time. There's still one more warning remaining though:

but per this comment it's out of our control it seems like.

@vincerubinetti: Thanks. That is good enough. Please feel free to file another PR (or put in #54).


build(danger): Danger debug logging

Summary
Just for testing
Related Issues or PRs
relates to #357

We fixed #357 with a CircleCI config


How to find BackendEnvARN from AWS Console

Hi @yinlinchen
Can you tell me where I can find the backend ARN. Thanks.

@daltonfury42 You can use below command
aws amplify list-backend-environments --app-id=AmplifyAppId

Doc: list-backend-environments

Thanks


Merge in docs from the opsmanual

The opsmanual is retiring / merging with the developer docs. These two how-tos I found here:
https://github.gds/pages/gds/opsmanual/2nd-line/applications/local-links-manager.html
I've not changed any content.
https://trello.com/c/ZErfvzXs

🙌


How to convert pt-model to ONNX-model

How to convert pt-model to ONNX-model? I need to load and run an ONNX-model using opencv.
Thanks!

Define a onnx model with the exact same structure as libtorch model and copy the weight like convolution to the onnx model.

Is it possible to convert a torch::nn::Module to a torch::jit::Module?

Yes. That's what I answered before.

Thanks for your reply. If there is a simpler way, I will share it here.

Hi @KongCang did you manage to convert to onnx? Would you mind sharing your workflow? Thank you


More Links (sorry)

Don't merge this just yet - I'm adding more links.
I'll @ you when it's done.

Should I merge it?

Also you can't change the readme, you should revert the change you made.

@elbkr Just adding all the links to websites.json and then you can merge it :)

@elbkr :+1:

Merging, thanks ^^

I'm sorry for almost 1000 urls, I just had to do it due to the surge in Tesla scams.


feat!: Added getBootstrapDependencies and removed allowCycles.

Main changes
This PR reworks the dependencies management of the runtime:

Specifying both autoload and services in a configuration file is not allowed anymore and will throw an error.
The option allowCycles has been removed.
Each service can now export a getBootstrapDependencies to specify the services that it needs to be started when booting. The default implementation is empty, a default implementation is provided for the composer.
The services are sorted by dependencies only when autoload is not enabled (and thus services are specified). If autoloading is disabled, getBootstrapDependencies is never executed.
Clients are no longer considered bootstrap dependencies of a service.

Can you rebase?

Can you rebase?

Done!


Rename test profiler to be product profiler

This change largely moves and renames (from (lib)TestProfiler to (lib)MonitorProfiler) the test profiler to be the primary product profiler. None of the functionality has been changed at this point. Additional changes were made to use macros for checking pointers before using them.

/backport to release/6.x

/backport to release/6.x


Preserve property order to and from JSON Schema

We're using Javascript objects to represent JSON Schema, so we end up with essentially random order.  I think I'd like to keep using objects, but represent the keys as an array of name-type pairs, instead of as an object that maps from names to types.  That means for JSON Schema input we'll have to manually parse the data, and for output we might have to just print the JSON ourselves.

Depends on #646

Hi schani, are there any plans to fix this in the near future? If not I would try to solve the issue.
Cheers

@schani
Usually, I am much more concerned about the order of variables I declare. I believe the order matters a lot for clarity.
I am exploring this quicktype tool to convert JSONSchema to Typescript and may I expect this near future?


Add License file PRs to each extractors repository

Add a file called LICENSE.md to each extractor or software repository, submit a pull request, and assign all of the contributors to the repository for review.
The project specification is to use an MIT/BSD (or CC-BY 4.0) compliant license. Contributors can approve the PR or suggest an alternative MIT/BSD-compatible LICENSE. In cases w/ IP (only sunshade extractor so far) it is up to the authors to provide a copyright / reuse statement.
Probably easiest to use the GitHub interface: https://help.github.com/articles/adding-a-license-to-a-repository/
Here is an example: https://github.com/terraref/extractors-environmental/pull/26

extractor-stereo-rgb
https://github.com/terraref/extractors-stereo-rgb/pull/22

extractor-multispectral
https://github.com/terraref/extractors-multispectral/pull/16

extractor-3dscanner
https://github.com/terraref/extractors-3dscanner/pull/13

computing-pipeline
https://github.com/terraref/computing-pipeline/pull/371

extractors-meterological
https://github.com/terraref/extractors-meterological/pull/6

https://github.com/terraref/extractors-hyperspectral
I don't have access to add a file

extractors-metadata
https://github.com/terraref/extractors-metadata/pull/9

https://github.com/terraref/extractors-sunshade
I don't have access to add a file

https://github.com/terraref/extractors-lemnatec-indoor
I don't have access to add a file

terrautils
https://github.com/terraref/terrautils/pull/37

extractors-hyperspectral
https://github.com/terraref/extractors-hyperspectral/pull/41

extractors-lemnatec-indoor
https://github.com/terraref/extractors-lemnatec-indoor/pull/6


Differences in mesh color when using drainColor

Hi Diarmid,
Been loving this component, super useful and convenient to use, thank you for creating it!
I noticed a small discrepancy in my mesh colors when using the drainColor property and was wondering if there was a bug in the component? I am using A-Frame v.1.4.1.
The image below shows 2 a-boxes colored with the same hex value #8DA34E, the higher one is a non-instanced mesh while the lower one is an instanced-mesh with drainColor:true and the color is set through the colors property. You can see the instanced-mesh cube is much lighter than the regular one,  I wonder if the base white color is bleeding through or if I'm doing something wrong in the implementation?

relevant code:
<a-box id="mesh2" color="#8DA34E" position="0 4 -2"> </a-box>

<a-box id="mesh1" color="#456C22" instanced-mesh="drainColor:true;"> </a-box>
<a-entity id="block1" position="-2 2 -2" instanced-mesh-member="mesh:#mesh1; colors:#8DA34E;">
</a-entity>

Hi, can you check what version you are using?
drainColors is only implemented in v0.7.0, and I just noticed the README still refers to 0.6.0.  Might you be using an old version?

Using the 0.7.0 version, and your code fragment, the colors in this glitch look good to me:
https://glitch.com/edit/#!/scalloped-berry-smoke?path=index.html%3A8%3A35

hi @diarmidmackenzie thanks for testing. I took a look at my code and I am using v0.7.0; I did some further testing and found out that the color variation is due to the colorManagement property of the renderer AFrame parameter attached to my <a-scene>.
In the photo below, you can see that the colors render correctly when renderer="colorManagement: false" but is varied when renderer="colorManagement: true". I use colorManagement often as it helps to accurately render the color of 3D models in A-Frame and I was wondering if you knew why this could be happening/if there's a workaround.

Interesting.  I will look into this some more.

So we have a simple repro with A-Frame 1.4.2 here:
https://glitch.com/edit/#!/scalloped-berry-smoke?path=index.html%3A12%3A26

Here's an equivalent with pure THREE.js, and the same renderer settings that are applied when colorManagement is enabled...
https://glitch.com/edit/#!/alluring-dent-gambler?path=index.html%3A33%3A21
What's odd here is that both cubes end up the lighter color.
I found this PR, which seems relevant.
https://github.com/aframevr/aframe/pull/5210
So it appears that in A-Frame 1.4.2 (prior to this PR), when colorManagement is used, hex colors need to be adjusted using applyColorCorrection(colorOrTexture).  This component doesn't do that, so I guess that's the bug.
From A-Frame 1.5.0 it seems that this should not longer be necessary.
Fix looks fairly straightforward.

This version of instanced mesh fixes the problem.
<EMAIL_ADDRESS>

thanks for investigating and the quick fix @diarmidmackenzie! I really appreciate it.


Physics / Animations

I'm opening this issue so we can track these better.
Albert mentioned some issues related to animations and physics:

[ ] Missing facial expressions in-game (Leon's expression when he's hurt or dies should change)
[ ] Physics not working inside the inventory screen (causes clipping issues with Leon's jacket and the absence of Ada's black ribbon in the inventory)
[ ] Leon's physics when he's wearing the tactical vest (pl09) are gone (static hair).

About the inventory physics issue, albert mentioned it was a working in the bio4 demo (for the GC i guess), but they disabled it/removed for the final version.
I've been looking at this, and it appears there's a function for each character that controls these physics.
For Leon, it is cPlLeon::moveCloth.
Noping it's call makes it look like it does in inventory screen:

It is called by the cPlayer::move, which itself is inside gameMainLoop.
gameMainLoop isn't called while inside the inventory screen, so we get static cloth.
Not sure this would simply be fixed by having cPl**::moveCloth inside the inventory screen's main loop, but who knows?
About the tactical vest stuff: I do know the game applies different physics/cloth parameters based on what player model you're using. It is not something store inside the model itself (in this case pl09), but instead some type of table inside the .exe.
That other dll fixed the issue, as far as I can tell.

Hmm, had a look at the demo (for reference seems it's the japanese Taikenban demo, the US demos inventory is all 2D without any character render)
Couldn't actually rotate the char to check if cloth was moving or not, but since cloth did move when inventory opened I guess that meant its active.
Took a look at the .DOL for that demo, eventually found PlClothMoveLeon at 0x8013E4C4, opened the inventory & set a breakpoint on that in Dolphin, and seemed to be called from 0x80ADC79C.
Unfortunately GC builds use .REL files which separate the code into different files, kinda like Windows DLLs.
Tried searching for files that had matching bytes but no luck with that, some bytes were probably overwritten when the REL was loaded.
Eventually found some bytes that did match though - seems it's being called from Sscrn.rel, at 0x8050EDB8 if loaded  with IDA into 0x80500000 (not sure why lower bits of that addr are so different to what Dolphin got, but comparing code that dolphin shows seems to confirm that's the spot)
After comparing with the debug build Sscrn.rel that we have symbols for, I'm like 80% sure that func is SsPzzlMain::move, which makes sense. Seems the demo just had an extra block of code that'd run PlClothMoveLeon & a couple other functions before the rest of it, maybe hooking that func and adding the call back might get it working.

Leon's physics when he's wearing the tactical vest (pl09) are gone (static hair).

Looks like it's the cmp     byte ptr [eax+4FC9h], 2 checks inside cPlLeon::initCloth & cPlLeon::moveCloth that are responsible for this, if you nop the jz right after both of them it seems to allow hair physics to work at least.
pG+0x4FC9 seems to store the ID of the costume being used (gets set by PlSetCostume), not sure why they'd exclude the tactical vest specifically here, maybe there's some issue that enabling physics on it causes.

Hey! Sorry about just vanishing.
I got bit side-tracked trying to improve the user experience a bit:

E2: also heres my latest 1.1.0 IDB btw, managed to name around ~50% of functions so far 😄

Yoo! Thanks! Your IDB files have been a life saver :p

The pic above is just the result of running MotionMove & PlClothMoveLeon - if I add in a check to run PlClothSetLeon once then I get a slightly different result:

Very interesting results.
Maybe if we can find a way to just reposition Leon's jacket so it doesn't clip though his body in this screen, it would be already good enough. Maybe they removed these calls because it made no sense to have those running in a mostly static screen.

pG+0x4FC9 seems to store the ID of the costume being used (gets set by PlSetCostume), not sure why they'd exclude the tactical vest specifically here, maybe there's some issue that enabling physics on it causes.

Maybe they didn't even noticed the tactical vest wasn't included here, since you only get it right before the end of the game?
Nice find!

could be that running at 60FPS is making the pain animation happen too quickly for it to be seen

I haven't checked, but it should be happening at 30 fps too.
Also, Ashley's facial expressions do work, for some reason.

Do you know any easy way to actually check if chara face has changed though? Only way I've found is rotating camera with mouse, but even then it's kinda hard to see...

That's the same problem I've been having.
It's not that noticeable in motion, but it really looks odd when he dies from an explosion, for example, he lands face up and you can see a standard and stoical expression.

Ah just got to try out the new UI, seems to crash for me when I hit F1 though :/ Tried with both 1.1.0 & 1.0.6, is there something I need to copy in for it to work? I'm just using winmm.dll that it built, with no winmm.ini (since WriteSettings should create that?)
Maybe there's a certain point I should be using it?

Hmm.. weird, it should just work.
Does this build work?
winmm.zip

Yeah that seems to be fine, just tried making a new build with Release and that works too, seems it's just Debug that crashes for me.

Ah, I see. I haven't built it in debug mode for a long time. Not sure what could be the problem there though.

Never ended up implementing this fix, no.
Will do that, and hopefully also an option to allow the mafia costume in cutscenes before the next HD project update.

Still not sure why they specifically excluded the vest from having physics applied though, didn't really test with it that much, so could be some issue appears somewhere which made them disable it.
If there is anything like that maybe we could just hook cPlLeon::moveCloth and make it check for whatever condition caused an issue instead (holding certain weapon or whatever)

If anyone wants to try out the tactical vest fix, here's a build with that included (+ RaiseInventoryAlloc fix):
dinput8-tacticalVestPhysics.zip
From the little that I've tested it seems to work fine, but I'd guess there's probably some reason they chose to exclude it though...
(btw if you use Raz0rs trainer it seems to overwrite the area we need to patch inside cPlLeon::initCloth & cPlLeon::moveCloth back to vanilla every frame for some reason, not sure what's going on there, if you want to use that trainer to add tactical vest to inventory make sure to save game & restart after adding it)

but I'd guess there's probably some reason they chose to exclude it though...

I vote on it being an oversight, tbh. Can't really think of any possible issue that could occur with this enabled.
Thanks for implementing it. I'll implement the mafia leon on cutscenes thing then.

Ada's dress seems to clip through her thighs in the final cutscene where she takes away the sample from Leon.
Was watching Wii gameplay and the cloth doesn't clip through her thighs there.

Someone in re4hd site mentioned that Ashley's ballistics physics becomes less prominent in 60 fps mode. Can anyone check and verify this?

cPlAshley::moveBust & cSubChar::moveBust are ballistics related functions AFAIK. On GC these two are pretty much identical, but on PC it looks like cSubChar::moveBust added some code that uses pG+0x70 deltaTime float to help calculate something, but cPlAshley::moveBust doesn't have that included for some reason, maybe just needs that copied over.

Well found an easy way to copy the delta-time stuff to cPlAshley, with that it seems physics on her are slowed down to match 30FPS speed now - I'm not sure if this is what people had an issue with though?
Here's a build for anyone that wants to test (this only changes player-controlled Ashley, follower Ashley code is unchanged):
dinput8-ashleyBustPhysics.zip
Enable FixAshleyBustPhysics inside F1 menu for it to work, you can toggle it off/on during gameplay if you like.


Add New Language: Java

Description
All images Java Programming language Share All images Java is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. It is a general-purpose programming language intended to let programmers write once, run anywhere (WORA), meaning that compiled Java code can run on all platforms that support Java without the need to recompile.

This is an example issue.
The bot feature is added too, which is not implemented here.


Qt beutifier (Aristic Style) - fix formating for reference and address operator symbols

Currently, our config is not able to recognize and properly format between symbols & used as reference or as address operators.
We either need to find a solution or start using it on one side in other to be able to enable git hook in the future and to remove frustrations when a lot of code gets incorrectly formated.

wrongly raised the issue. The problem was with lambda expressions
Solved here:
https://github.com/IMProject/IMFlasher/pull/36


Progress bar a11y

#721
Not sure if setting tabIndex to -1 is absolutely necessary? - progress bar isn't focusable anyway, removed

[x] it works in Chrome,Safari & Edge, Firefox

[x] Firefox: screenreader gets stuck on progressbar if withStep is true (user can tab to skip) removing role fixed this

[x] added role="progressbar" for better compatibility having spoken to @OlenaKashuba this is an overkill, also introduces the bug in Firefox

https://user-images.githubusercontent.com/67011746/130981941-a4e210c4-8d16-44c5-869d-ccd8c56eec4b.mov
https://user-images.githubusercontent.com/67011746/130981398-2a42f8e1-ccdd-4ea2-8ed9-c6e14d17e422.mov

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Loadnet stuck

I already did all the things on readme but still when I run video.py it always stuck on "loadnet = torch.load(model_path)"
Here is the full command line
C:\Users\ellie\Downloads\GFPGAN-master\GFPGAN-master>python video.py                                                 start handle_video                                                                                PROCESSING :C:\Users\ellie\Downloads\GFPGAN-master\GFPGAN-master\data\videos\Video.mp4                                                                                run inference_gfpgan.py                                                                                C:\Python312\Lib\site-packages\realesrgan\utils.py:63: FutureWarning: You are using torch.load with weights_only=False (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for weights_only will be flipped to True. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via torch.serialization.add_safe_globals. We recommend you start setting weights_only=True for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.             loadnet = torch.load(model_path, map_location=torch.device('cpu'))                                                 C:\Python312\Lib\site-packages\torchvision\models_utils.py:208: UserWarning: The parameter 'pretrained' is deprecated since 0.13 and may be removed in the future, please use 'weights' instead.                                           warnings.warn(                                                                                C:\Python312\Lib\site-packages\torchvision\models_utils.py:223: UserWarning: Arguments other than a weight enum or None for 'weights' are deprecated since 0.13 and may be removed in the future. The current behavior is equivalent to passing weights=None.                                                                                warnings.warn(msg)                                                                                C:\Python312\Lib\site-packages\facexlib\detection_init_.py:22: FutureWarning: You are using torch.load with weights_only=False (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for weights_only will be flipped to True. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via torch.serialization.add_safe_globals. We recommend you start setting weights_only=True for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.  load_net = torch.load(model_path, map_location=lambda storage, loc: storage)                                       C:\Python312\Lib\site-packages\facexlib\parsing_init_.py:20: FutureWarning: You are using torch.load with weights_only=False (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for weights_only will be flipped to True. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via torch.serialization.add_safe_globals. We recommend you start setting weights_only=True for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.    load_net = torch.load(model_path, map_location=lambda storage, loc: storage)                                       C:\Users\ellie\Downloads\GFPGAN-master\GFPGAN-master\gfpgan\utils.py:92: FutureWarning: You are using torch.load with weights_only=False (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for weights_only will be flipped to True. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via torch.serialization.add_safe_globals. We recommend you start setting weights_only=True for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.                                                                                loadnet = torch.load(model_path)

ok, seems torch has some breaking changes with latest version. I'll try to add a quick fix for this at weekend

Hey man i'm encountering another issue with inference-gfpgan.py file that says invalid arguments. I check the argument on this line is correct.
command = f"python inference_gfpgan.py -i {upload_folder} -o {result_folder} -v 1.4 -s {upscale} --bg_upsampler realesrgan"

GFPGAN's official "inference_gfpgan.py" file does not have any new version for years. So this part should works.
I can only guess there is something wrong with your video's file path. For example,  is there any non-english character?  I also noticed your files are under a folder named "Machine Learning", with a space " " in it. Which could be a problem. Better remove that space from folder name.

Hey man i'm encountering another issue with inference-gfpgan.py file that says invalid arguments. I check the argument on this line is correct.

Ok, did some test, get the same error when using a short clip which is cut from a long video. Seems there is something missing in that video's header and need to be fixed before using with ffmpeg and this script.
I'll figure something out.

Hey man i'm encountering another issue with inference-gfpgan.py file that says invalid arguments. I check the argument on this line is correct.
command = f"python inference_gfpgan.py -i {upload_folder} -o {result_folder} -v 1.4 -s {upscale} --bg_upsampler realesrgan"
Format avi detected only with low score of 1, misdetection possible! [in#0 @ 000001455c518a80] Error opening input: Invalid data found when processing input Error opening input file D:\Machine Learning\GFPGAN-master\GFPGAN-master\data\results_videos\video1.avi. Error opening input files: Invalid data found when processing input end handle_video

ok, figure it out. When GFPGAN process is failed, and ffmpeg can not get the result video, then you get this error.
So, the real error msg, is the line before "walking". In your case, it is:
"error: unrecognized arguments: Learning\GFPGAN-master\GFPGAN-master\data\upload Learning\GFPGAN-master\GFPGAN-master\data\results".
So, I guess the space in folder name is the issue here.
Also, Project GFPGAN is based on another project named "basicsr" which does not work with the default torch and torchvision installed with GFPGAN. We have to install pytorch and torchvision by following torch's official website:
https://pytorch.org/get-started/locally/
Another possible issue is, when using GFPGAN for the first time, it gonna download 2 models from github to your local disk. If that downloading failed, then this project will fail too. If you got a downloading error, just downloat that model manually, the error msg will show the downloading link.
The base line is, if your GFPGAN  works, this project works. If your GFPGAN failed, this project failed too.
I'll update the document for all those details.

Updated document, check the install section to make it work.


Add Cross Cluster Parent Close Policy Types

LGTM. We have two approaches to handle parent close policy, workflow or direct call. I assume we just support the direct call approach. Is this correct?


Add fontweight styling to xaml textblocks (for textblock and factSet)

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

:shipit:


Board Report: Reports missing packets on upgrade test site

On report pages, the option to "Download Board Report and Attachments" is missing. Example:

Ditto https://github.com/datamade/la-metro-councilmatic/issues/558#issuecomment-598339293. Looks like our merging process is still chugging through board report documents. Let's check on this tomorrow.

Update: The merge has completed! @shrayshray, board reports should now display packets as expected. Look ok?


Polls are transient and lose their state on connection loss

Ideally they would persist across reconnects.
Should they also retain state across program exit/restart? What about the duration?

Added in 4c7b4866bc716f7be2ec5f8bcc779f283d7630d4.
Duration is left untouched, so in the case where the poll duration expired when the program was not connected, it will immediately end upon rejoining the relevant channel.


Add security linter with Bandit in pre commit and CI

Description
Add bandit hook in pre commit and CI (for reference https://github.com/PyCQA/bandit)
Types of Changes

[ ] Core
[ ] Bugfix
[ ] New feature
[x] Enhancement/optimization
[ ] Documentation

Issues Fixed or Closed by This PR

Fixes:

Checklist

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] I have tested the changes and verified that they work and don't break anything (as well as I can manage).

Thanks for this contribution!!
Some comments:
* I would add a badge to our readme (see here https://github.com/PyCQA/bandit#show-your-style)

sure i forgot this :)

* I saw it's possible to use the file `pyproject.toml` to configure bandit and I would prefer to have the least number of configuration files

From docs seems feasible but actually won't work with the pyproject 🤷🏽

* Bandit should also be included in `requirements-dev.txt`

right


Chance of 3.X.X style generator being added as option to 4.X.X?

Hi,
We have spent several hours trying to upgrade to 4.X.X but have hit a problem that is keeping us locked to version 3.X.X. based around inheritance.  It's a bit too late for us to redesign or rewrite large chunks of our codebase so we are stuck at the moment on 3.X.X
Is it possible to make a suggestion/request for a 3.X.X inheritance based generator (using the new result types) as an option on the 4.X.X schemagen?
Thanks

Before doing that (because it's hard to maintain both), I've been thinking about writing a migration guide. Can you give me a little more detail about the kind of change that was more difficult in your project?
I haven't used this before, but I also wonder if some migration changes could be automated with clang-tidy. It would require a system with clang tools to perform the automatic migration, but then it could target other tool chains. But maybe there's a pattern in your project which is more difficult to handle.
The last alternative would be to generate interop classes which allow inheritance but internally use the type-erased version. Everyone would still need to fix the signatures on all their method overrides, but if inheritance is the only option this would mimic the 3.x hierarchy. Not sure of all the details, but I think this approach would help avoid reintroducing some of the complexity that came with the different options and defaults in 3.x.

So we have some inheritance in the graphql schema with a large number of implementations, for example:
interface Node
{
    _id : ID!
}

type NodeTypeA implements Node
{
     _id : ID!
     ...
     ...
}

type NodeTypeB implements Node ...
type NodeTypeC implements Node ...
type NodeTypeD implements Node ...
type NodeTypeE implements Node ...

Unfortunatley we coupled our data layer to the generated 3.X.X class heirachy and as such it was simple to return an array of "Nodes" internally and perform filtering and other operations etc by downcasting before hitting graphql.
Now with the 4.X.X system, the implementation pointer is locked away inside a Concept and is inaccessible which causes some issues, we can't downcast and we can't access the implementation object once it is contained by generated object.
Your suggestion of interop classes seems like a reasonable idea and it's more portable than using clang

So the problem is you can't access methods/members of the impl type from the array of type-erased wrappers?
I think something like this would work. Substitute your own impl base-class interface in your internal storage, and then store the array of that type which you can still downcast. Using std::variant like I did with SharedHero and WeakHero in the learn sample adds some type safety, but you can use downcasting or virtual methods on the base class as you see fit. When you need a result of std::vector<std::shared_ptr<object::Node>>, use std::transform to fill it in with newly created type-erased wrappers.
If you had something like this in C++ before:
class NodeTypeA : public object::NodeTypeA
{
...
};

class NodeTypeB : public object::NodeTypeB
{
...
};

std::vector<std::shared_ptr<service::Object>> nodes {
    std::make_shared<NodeTypeA>(),
    std::make_shared<NodeTypeB>(),
    ...
};

then it would change to something like this:
class NodeTypeImpl
{
public:
    // Need to override this in the sub-classes to construct the correct sub-type wrappers.
    virtual std::shared_ptr<object::Node> make_node() const = 0;

    // Implement/declare the accessors you want to use without downcasting...
};

class NodeTypeA
    : public NodeTypeImpl
    , public std::enable_shared_from_this<NodeTypeA>
{
public:
    // Convert to a type-erased Node.
    std::shared_ptr<object::Node> make_node() const final
    {
        return std::make_shared<object::Node>(std::make_shared<object::NodeTypeA>(shared_from_this()));
    }
...
};

class NodeTypeB
    : public NodeTypeImpl
    , public std::enable_shared_from_this<NodeTypeB>
{
public:
    // Convert to a type-erased Node.
    std::shared_ptr<object::Node> make_node() const final
    {
        return std::make_shared<object::Node>(std::make_shared<object::NodeTypeB>(shared_from_this()));
    }
...
};

std::vector<std::shared_ptr<NodeTypeImpl>> nodes {
    std::make_shared<NodeTypeA>(),
    std::make_shared<NodeTypeB>(),
    ...
};

std::vector<std::shared_ptr<object::Node>> wrap_nodes()
{
    std::vector<std::shared_ptr<object::Node>> result(nodes.size());

    std::transform(nodes.cbegin(), nodes.cend(), result.begin(), [](const auto& node) {
        return node
            ? node->make_node()
            : std::shared_ptr<object::Node> {};
    });

    return result;
}

It's more boilerplate, but it has the advantage of making the vector of nodes more type safe than storing the std::shared_ptr<service::Object>, and your implementation hierarchy is decoupled from the generated code. You can avoid downcasting much of the time when operating on the nodes vector if you put your internal interface on the NodeTypeImpl base class, either as virtual methods or shared implementations when it doesn't depend on the sub-class to override it.

You may also be using multiple inheritance already to create a shared base class besides service::Object in your version of the nodes vector for greater type safety. In that case it should be easier to retrofit this approach just by adding something like the make_node virtual method.

Thanks for your response, I will revisit our 4.X.X branch and try this approach

With type erasure our code has to loop over lists now allocating additional memory for the graph objects and this is not great, the codebase became very complex.

If I'm understanding your comment correctly, I think you're referring to the loop/std::transform in my wrap_nodes example. Some of those loops can probably be avoided or amortized. This example demonstrates how to enable access to the strongly type object where before you would have had to either run through a loop performing a std::static_pointer_cast<service::Object> (or shared_from_this) on demand, or you would need to store the std::shared_ptr<service::Object> directly in your std::vector, which means you can't access the strongly typed contents anymore without unsafe down-casting (or RTTI-enabled dynamic casts). If you don't actually need access to the strongly typed objects anymore, you could use std::vector<std::shared_ptr<object::NodeObject>> for nodes and initialize it once with the type-erased implementation.

What if I can create a PR with an option to generate server objects that can be interited from? Is this likley to be merged?

If there's something you'd like to backport to 3.x for use with an inheritance pattern, I'd be more likely to take that PR. I don't really want to mix the inheritance and type-erasure models in the same branch, the complexity and confusion that would introduce would be far worse in my opinion.


CI: Add node.js github action

Add CI/CD feature for fast build, test and deploy application

The challenge with implementing CI/CD for our project is the absence of a dedicated server for deployment. Currently, we're utilizing Cpanel for hosting, which poses significant limitations for our application. Transitioning to a standalone application or migrating to a new server would resolve this issue seamlessly.

I have renamed this we will be looking CD part in different issue, I hope sound make sense


Add generic platforms

Thinking a bit more about @pvizeli 's suggestion about 'orangepi-h5', I came to the conclusion that having some clearly labelled generic platforms would be helpful.
I spent quite some trying trying to figure out how the specify which machine to use on my (then unsupported) Orange Pi Prime, before realising that the qemu machine was fairly generic.
This patch adds some generic platforms that can either be used outright, or as a template for new boards.

The generic variants are the qemuXXX versions. I don't know why all call that qemu but that is very common.
The naming for the machine depends on bootloader and device-tree to boot the Linux kernel. So any image has his machine type. I've planned to make HassOS also for some OrangePis, but currently, without any developer they won't help me on that, it's not possible.

I would expect the qemu* platforms would be used for testing/CI, which has some overlap, but may not necessarily be the same as what is required for a template.
An alternative would be to improve the documentation (which I'm happy to do) to direct users to the qemu* platforms, however, I do think this is a less valuable approach, as the goals for a generic vs testing platform may diverge.
What assistance do you require? I've got plenty of Orange Pis on hand.  ATM, I'm running the docker images under Armbian.

@deece the qemu version are not testing...

Is there any reason they shouldn't be named generic then?

Is there any reason they shouldn't be named generic
-> it's common to call this platforms qemu* in the world of embedded systems and low-level integration. Don't ask me why.

How good are your skills in system integration, build systems, kernel building and bootloader debugging (uart)? I can point you how you can port HassOS to orangepi-prime.

I should point out that my goal of having a generic config is not for HassOS, but for those who want to run the docker images on top of other Linux distros.

@deece please open an Issue on HassOS for orangepi-prime if you want help to porting HassOS and create an image for it. I will point to the points that needed to make this available. Should be a 1-2 days of work.


PEAR-1311: Limit height of custom filters and string cards, scrollbars

Description
Set max height to: h-96 (for all the facet cards)
WIP: waiting for @cemile-ctds's verification
Checklist

[N/A] Added proper unit tests
[N/A] Left proper TODO messages for any remaining tasks
[N/A] Scanned for web accessibility with aXe, and mitigated or documented
flagged issues

Screenshots/Screen Recordings (if Appropriate)

works for me. but somewhat exhausting to test. :) 👍

The changes look good to me.


Update configuration handling (incl. caching)

This PR consolidates all options to one DDIC structure (incl. caching) which is then used by all tools/classes.
This also update the SCI configuration screen with some explanatory texts and the cache option. To keep it simple for the user, "Use cache" will activate memory as well as disk-based caching.

I added ZABAPLINT_CACHE_VIEWER so you can quickly see the size and content of serialized files.

thanks 👍


Clarification on Subscription Status Change During Upgrade Payment Failures

I am writing to seek clarification regarding the behavior of subscription status changes during upgrade payment failures. According to the LS documentation, renewal payment failures change the subscription status to past_due. However, we have encountered a scenario that requires further understanding.
In our current setup, when a user attempts to upgrade their subscription and the payment fails, the subscription status changes to past_due. The user then receives emails prompting them to confirm the update, which works as expected if they complete the update.
Our concern is regarding the scenario where the user does not proceed with the upgrade from the email or any link provided by LS. Will the subscription eventually expire after some retries and dunning management, even if the user has already paid for the current billing period with a lesser quantity?
We would appreciate your guidance on this matter to ensure our subscription management process aligns with the expected behavior.

Hi,
Please reach out to our support<EMAIL_ADDRESS>Thanks!


[Bug]: ct-Value too high. Appeared with the latest version

Contact Details
No response
What happened?
Since some weeks I see these errors in my log:
State value to set for "deconz.0.Lights.31.ct" has value "28673" greater than max "8000"
It happened suddenly without any changes except updates of deconz and phoson container (Docker)
I think the number of light-groups that are claiming this is increasing.
Adapter Version
1.4.0
deConz (Phoscon) Version
2.26.3
JS-Controller Version
5.0.19
Node JS Version
18.20.2
NPM Version
10.5.2
Operating System
Ubuntu
Relevant log output
deconz.0
2024-04-29 21:12:46.667	warn	State value to set for "deconz.0.Lights.27.ct" has value "27878" greater than max "8000"

deconz.0
2024-04-29 21:12:45.905	warn	State value to set for "deconz.0.Lights.31.ct" has value "28382" greater than max "8000"

deconz.0
2024-04-29 21:12:45.660	warn	State value to set for "deconz.0.Lights.27.ct" has value "28170" greater than max "8000"

deconz.0
2024-04-29 21:12:44.829	warn	State value to set for "deconz.0.Lights.31.ct" has value "28673" greater than max "8000"

deconz.0
2024-04-29 21:12:44.645	warn	State value to set for "deconz.0.Lights.27.ct" has value "28462" greater than max "8000"

deconz.0
2024-04-29 21:12:43.849	warn	State value to set for "deconz.0.Lights.31.ct" has value "28965" greater than max "8000"

deconz.0
2024-04-29 21:12:43.557	warn	State value to set for "deconz.0.Lights.27.ct" has value "28754" greater than max "8000"

deconz.0
2024-04-29 21:12:42.708	warn	State value to set for "deconz.0.Lights.31.ct" has value "29258" greater than max "8000"

deconz.0
2024-04-29 21:12:42.593	warn	State value to set for "deconz.0.Lights.27.ct" has value "29044" greater than max "8000"

deconz.0
2024-04-29 21:12:41.805	warn	State value to set for "deconz.0.Lights.31.ct" has value "29550" greater than max "8000"

deconz.0
2024-04-29 21:12:41.583	warn	State value to set for "deconz.0.Lights.27.ct" has value "29336" greater than max "8000"

Anything else?
No response

What kind of devices are these (company/model)? Just out of interest.

Philips Hue Gu10 tuneable white (latest with bluetooth)

I think the device is not yet properly supported by deconz. You can use RESTED/deConz REST-API to check whether the correct values are being transferred.

I habe these devices since about 4 years now and I never had problems.
I think it is supported yet.

They are currently converting all devices to DDF and yours must also be included in one.

But it could also be related to this: deconz-rest-plugin

I dont know what ddf is, I dont know why this error happened suddenly without any changes in my setting.
Now I changed the log level to "fault" and I hope its silence now ;)

I have the same issue with a Hue Lightstrip. Also appeared suddenly after update.
State value to set for "deconz.0.Lights.60.ct" has value "42404" greater than max "8000"

I still think it's a problem form deconz-rest-plugin

Does adjusting the color temprature(ct) work? With a value of "42404" it would now only be blue.

In my case everything works fine. The error happens even without  changing the ct value.
actually my log level is error this makes it silence.

Interesting problem. I've also noticed that "colormode" always changes back from "ct" to "effect", although "effect" isn't a valid option there.
For me, setting the log level to "fault" also fixes flooding the log.

I've also noticed that "colormode" always changes back from "ct" to "effect", although "effect" isn't a valid option there.

You are right, effect isnt a valid value and more important: This does not exist as a state value on the object colormode.
If this value is really printed in colormode provide more information on which device this happens and the version of deconz software it is happen.

Yes, that's the case.
It's happening on my "Hue Spot GU10"'s (LCG002) and "Hue White and color ambiance" (bulbs / LCT015). Deconz release is 2.26.3

Yes, that's the case.
It's happening on my "Hue Spot GU10"'s (LCG002) and "Hue White and color ambiance" (bulbs / LCT015). Deconz release is 2.26.3

Seems that effect is defined as colormode in deConz for this models.

This issue should be resolved with v2.28.1 stable.

Thanks @mattreim.

still there
`

deconz.0 | 2024-10-07 16:18:35.727 | warn | State value to set for "deconz.0.Lights.16.ct" has value "25687" greater than max "8000"
-- | -- | -- | --
deconz.0 | 2024-10-07 16:18:35.154 | warn | State value to set for "deconz.0.Lights.15.ct" has value "44823" greater than max "8000"
deconz.0 | 2024-10-07 16:18:29.225 | warn | State value to set for "deconz.0.Lights.15.ct" has value "44823" greater than max "8000"
deconz.0 | 2024-10-07 16:18:29.184 | warn | State value to set for "deconz.0.Lights.16.ct" has value "25687" greater than max "8000"

`
Phoscon: 2.28.1
Deconz: 1.4.1


BigQuery Dialect - Qualify Usage Issue

I am using ZetaSQL to parse queries executed from BigQuery. I came across this scenario.
Apparently, in BigQuery, when you use the QUALIFY function, whether you use it with or without a where clause, it is gonna push through. However, if you parse that query in ZetaSQL and the query utilizes QUALIFY function without the WHERE clause, it's gonna fail to parse it.
com.google.zetasql.io.grpc.StatusRuntimeException: INVALID_ARGUMENT: QUALIFY clause must be used in conjunction with WHERE or GROUP BY or HAVING clause
is this an expected scenario? which in case of BigQuery dialect, we will have to create a work around or adding WHERE 1=1 or something? just to add context, the queries we are parsing are from audit logs.
sample query:
CREATE OR REPLACE TABLE
  `test_project`.`test_dataset`.`test_target_table`
PARTITION BY
  TIMESTAMP_TRUNC(test_datetime, day) AS (
  WITH
    test AS (
    SELECT
      *
    FROM
      `test_project`.`test_dataset`.`test_source_table`
    QUALIFY ROW_NUMBER() OVER(PARTITION BY test_col1, test_col2 ORDER BY test_datetime ASC) = 1 )
  SELECT
    *
  FROM
    test );

Here is something that can help: https://github.com/google/zetasql/issues/115.

thank you for the response @pgrivachev - I forgot to mention, I already had this enabled ZetaSQLOptions.LanguageFeature.FEATURE_V_1_3_QUALIFY). However, as for the second part, I'm not quite sure how do we add reserved keywords for java?

@jrbangit , you can try this way :
languageOptions.enableReservableKeyword("QUALIFY");


Allow a way to force reset the DOM between test runs in the same file

Clear and concise description of the problem
Currently, all tests in the same file share the same global object, though it does get reset between tests in different files.
This request is to expose some function or hook, or maybe provide a setting that would allow us to reset the global object between tests in the same file.
For example, currently, if I run 5 tests in one file, where each test binds a global even handler, I'll have 5 callbacks running by the end of the test suite.
I've tried going through and copying the code that vitest uses to clear the dom between test files but it's not trivial.
Suggested solution
I'm open to solutions here, but just some way to be able to force the reset would be great.
Alternative
I guess an alternative could be that jsdom expose a way to do this manually given that the jsdom global is available in the testing cope.
Another alternative would be to have someone create a library that handles this.
Additional context
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

I've tried going through and copying the code that vitest uses to clear the dom between test files but it's not trivial.

Vitest doesn't do any DOM specific clean ups between test files. By default each test file is isolated using node:worker_threads or node:child_process depending on selected pool. Isolation (clean DOM) between tests is provided by terminating previous worker/thread and spinning up a new one.
If you are using testing-library packages, you should use their cleanup() method in Vitest's afterEach() hook. https://testing-library.com/docs/react-testing-library/api#cleanup
Otherwise you'll need to provide your own cleanup methods manually, for example: https://github.com/AriPerkkio/aria-live-capture/blob/master/test/setup.ts.

As @AriPerkkio already said, we already provide isolation for every test file. This is the intended design of Vitest. If there was a way to isolate global scope in test functions, we would've already used it.
Please follow @AriPerkkio advice on how to cleanup DOM in your Vitest tests, there is nothing Vitest can do on our side.

Hi @AriPerkkio, thanks for helping me better understand how each test file is isolated from the other.
I'm currently using the cleanup method from the react-testing-library but it only cleans up the react tree. Specifically from the docs:

Unmounts React trees that were mounted with render.

Is there no way to isolate each test?

While researching a solution, i found that playwright seems to offer isolation for each test. Though they seem to be leveraging browser context instead of threads and forks:
https://playwright.dev/docs/writing-tests#test-isolation

Playwright opens a separate isolate page for every test, the test functions themselves are not isolated. Since Vitest just runs test functions, we cannot provide the same type of isolation that Playwright has.

If a new instance of jsdom/happy-dom/etc... were instantiated on every test case, would that solve the issue?

No, the global scope is the same.


Update to latest vitess.io/vitess 2024-05-25

Getting latest updates up to https://github.com/vitessio/vitess/pull/16000

@dbussink there's a bump again in the number of imported packages, leading to significant increase in binary size. Is this something worth spending time investigating & cleaning up? The influx seems to be caused by vitess.io/vitess/go/vt/vtgate/vindexes. e.g.:
$ go mod why github.com/philhofer/fwd
# github.com/philhofer/fwd
github.com/planetscale/schemadiff/pkg/base
vitess.io/vitess/go/vt/schemadiff
vitess.io/vitess/go/vt/vtgate/vindexes
vitess.io/vitess/go/vt/topotools
vitess.io/vitess/go/vt/topo
vitess.io/vitess/go/trace
gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer
github.com/tinylib/msgp/msgp
github.com/philhofer/fwd

$ go mod why github.com/DataDog/go-tuf v1.1.0-0.5.2
# github.com/DataDog/go-tuf
github.com/planetscale/schemadiff/pkg/base
vitess.io/vitess/go/vt/schemadiff
vitess.io/vitess/go/vt/vtgate/vindexes
vitess.io/vitess/go/vt/topotools
vitess.io/vitess/go/vt/topo
vitess.io/vitess/go/trace
gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer
github.com/DataDog/datadog-agent/pkg/remoteconfig/state
github.com/DataDog/go-tuf/client
github.com/DataDog/go-tuf/client.test
github.com/DataDog/go-tuf

https://github.com/vitessio/vitess/pull/16008 should fix this I think.

Updated to include https://github.com/vitessio/vitess/pull/16008 and reduce package dependencies.


AttributeError: 'ReacherMILEnv' object has no attribute 'viewer'

Traceback (most recent call last):
File "/home/user/gym-mil/gym/core.py", line 203, in del
self.close()
File "/home/user/gym-mil/gym/core.py", line 164, in close
self.render(close=True)
File "/home/user/gym-mil/gym/core.py", line 150, in render
return self._render(mode=mode, close=close)
File "/home/user/gym-mil/gym/envs/mujoco/mujoco_env.py", line 104, in _render
if self.viewer is not None:
AttributeError: 'ReacherMILEnv' object has no attribute 'viewer'
What makes this error?
Hope some tips,thanks.

Hi.Do you solve this problem?


Add unit tests for zone records

Closes #20

Thanks - I think will help a lot with reviewing future PRs.


Support java 17 record classes

At the moment using PropertyUtils.getPropertyName on a record will create an exception: java.lang.IllegalArgumentException: Cannot subclass primitive, array or final types.
Is there any way to support records or is it dependant on subclassing?

Supporting records is not that easy since the classes are final and we cannot use our existing proxy mechanism to capture the invoked method.
However, I’ve experimented with another approach that could work. I would appreciate any feedback. You can find the current draft in https://github.com/cronn/reflection-util/pull/15.

I'm not familiar with ByteBuddy so I can't comment on how RecordSupport is working but from the tests it looks like it will work well

Available in version 2.12.0

Excellent, seems to work perfectly


Use css3 for showing/hiding the loading bar and spinner.

I recently had an issue with the loading bar flashing before it faded in, so I updated the bar to use css3 transitions instead of $animate for fade in/out.  This seems to work just like it did before, and it simplified the css a little.
The bar and spinner are now only inserted the first time _start is called, and shown/hidden by adding/removing the active class.  Unfortunately, ngAnimate can't quite be removed as a dependency since we still need a cleanup promise from $animate.removeClass, but at least it's used minimally.
I couldn't get the tests to run, however...  npm install && grunt build resulted in the following error:
Everything seems ok in the example project, though, so I'm going to start using this fork in the hopes that this will get merged eventually.
I forgot to bower install, checking the tests now.

I ended up removing $animate alltogether - at the cost of using a $timeout to remove the DOM elements after the css animation finishes.  $animate.removeClass would have been ideal, but it was not returning a promise under test, and it resolves immediately if you don't have ngAnimate in your app.  To make $timeout less painful, I added a configuration option to set the fade duration.
I encapsulated the parts of the service that are transient - now it's easier to understand what gets thrown out when the timeout in .complete() is called.  This means the elements are created every time .start() is called and there isn't an active bar, which means there's no confusion when one bar is fading and another is started - the new one has new DOM elements and fades in right on top.


Response data using "function to perform" options

Hello, excellent tool, I have a question.
it is possible to create the response example, using the tag options "function to perform"
example:

and with the following options

but when generating the documentation, it appears as follows

Thank you!.
my apologies for the horrible english translation :disappointed:
Insomnia Rest 7.1.1
<EMAIL_ADDRESS>

I'll try to experiment with this, but I feel like this is something that you can't really accomplish because of how the Insomnia export file works. Will let you know!

okay thank you very much!. I will be pending. 😄 👍

Since functions to perform are executed inside of Insomnia, it is not possible to use them to export example responses. Insomnia doesn't export the responses anywhere so there's no way to refer to them. Closing for now.


onConfigurationReceived called multiple times upon connecting

Is this the expected behavior that onConfigurationChanged gets called multiple times (twice from my testing) when you first connect to the mqtt server?
I know you are suppose to get the current configuration when you connect to IoT core but I always get it twice right in a row. After the initial 2x call I get them only when they change the configuration like I should.
Possible bug?

Hi tyczj,
Thanks for bringing this up! I also observed this behavior when testing the library. I agree that it looks a little suspicious, but the duplicate device configuration messages originate from Cloud IoT Core. Since IotCoreClient.java subscribes to the Cloud IoT Core device configuration topic with MQTT QOS 1 (at least once), receiving duplicate device configuration is expected.
Hope that helps!
-Blake


Linted post-messages.js

Fixes #1777
This also allowes us to stop removing strict mode from our es6 modules.
To properly test, first run npm i && npm prune to assure the removed packages are actually removed.
Also restart your watch task if it is running, as the babel configuration has changed.

blocked until master is exposed (currently configuring it) will post the status as a comment, please do not merge it for now


Rewrite Rules

does anyone know how to setup rewrite rules?

Just create a file rewrite-rules.xml in the root directory.
Edit startup.cs to include:
using Microsoft.AspNetCore.Rewrite;
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {
    ...
   app.UseRewriter(new RewriteOptions().AddIISUrlRewrite(env.ContentRootFileProvider, "rewrite-rules.xml"));
}

And your rewrite-rules.xml should look like this:
<rewrite>
	<rules>

		</rule>-->
		<clear />

		<rule name="Redirect to https" stopProcessing="true">
			<match url=".*" />
			<conditions>
				<add input="{HTTPS}" pattern="off" ignoreCase="true" />
			</conditions>
			<action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}?{QUERY_STRING}" redirectType="Permanent" appendQueryString="false" />
		</rule> -->

	</rules>
</rewrite>


Add AWS region me-central-1

Add AWS region me-central-1
Description
We need support for opt in AWS region me-central-1.
Resources:

endpoint: https://docs.aws.amazon.com/general/latest/gr/ec2-service.html
country and signature_version: https://docs.aws.amazon.com/general/latest/gr/s3.html

Status

work in progress

We tried to follow the documentation (see [1]) to update theses files:

contrib/scrape-ec2-prices.py
contrib/scrape-ec2-sizes.py

Sadly when running tox -e scrape-ec2-sizes,scrape-ec2-prices, scrape-ec2-sizes failed:
root@a2eea4b5cfec:/work/libcloud# tox -e scrape-ec2-sizes,scrape-ec2-prices
scrape-ec2-sizes: commands[0]> bash -c 'echo "Scrapping EC2 sizes, this may take up to 10 minutes or more since the actual JSON data we download and scrape is very large"'
Scrapping EC2 sizes, this may take up to 10 minutes or more since the actual JSON data we download and scrape is very large
scrape-ec2-sizes: commands[1]> bash -c 'python contrib/scrape-ec2-sizes.py'
Scraping size data, this may take up to 10-15 minutes...
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 6.00G/6.00G [02:12<00:00, 45.4MiB/s]
scrape-ec2-sizes: exit -9 (652.54 seconds) /work/libcloud> bash -c 'python contrib/scrape-ec2-sizes.py' pid=21654
scrape-ec2-sizes: FAIL ✖ in 10 minutes 52.65 seconds
scrape-ec2-prices: commands[0]> python contrib/scrape-ec2-prices.py
Scraping EC2 pricing data (if this runs for the first time it has to download a 3GB file, depending on your bandwith it might take a while)....
Using data from existing cached file /tmp/ec.json (mtime=2024-07-22 21:09:14 UTC)
Starting to parse pricing data, this could take up to 15 minutes...
297107179it [09:43, 508892.55it/s]
Using data from existing cached file /tmp/ec.json (mtime=2024-07-22 21:09:14 UTC)
Starting to parse pricing data, this could take up to 15 minutes...
101166581it [05:49, 289104.63it/s]
Unexpected OS Ubuntu Pro
Unexpected OS Ubuntu Pro
...
  scrape-ec2-sizes: FAIL code -9 (652.65=setup[0.09]+cmd[0.01,652.54] seconds)
  scrape-ec2-prices: OK (942.42=setup[0.12]+cmd[942.30] seconds)
  evaluation failed :( (1595.18 seconds)

Afterwards we retried with trunk and its also failing:
root@a2eea4b5cfec:/work/libcloud# tox -e scrape-ec2-sizes
scrape-ec2-sizes: commands[0]> bash -c 'echo "Scrapping EC2 sizes, this may take up to 10 minutes or more since the actual JSON data we download and scrape is very large"'
Scrapping EC2 sizes, this may take up to 10 minutes or more since the actual JSON data we download and scrape is very large
scrape-ec2-sizes: commands[1]> bash -c 'python contrib/scrape-ec2-sizes.py'
Scraping size data, this may take up to 10-15 minutes...
Using data from existing cached file /tmp/ec.json
scrape-ec2-sizes: exit -9 (576.53 seconds) /work/libcloud> bash -c 'python contrib/scrape-ec2-sizes.py' pid=1832
  scrape-ec2-sizes: FAIL code -9 (576.78=setup[0.19]+cmd[0.06,576.53] seconds)
  evaluation failed :( (577.21 seconds)

Also the mentioned example (see [2]) in the documentation is outdated. The list EC2_REGIONS does not exist anymore in contrib/scrape-ec2-prices.py.
The change we did seems to be sufficient to delete a VM, are there other tests to run?
[1] https://libcloud.readthedocs.io/en/latest/development.html#updating-ec2-sizing-and-supported-regions-data
[2] https://github.com/apache/libcloud/commit/762f0e5623b6f9837204ffe27d825b236c9c9970
Checklist (tick everything that applies)

[x] Code linting (required, can be done after the PR checks)
[ ] Documentation
[ ] Tests
[ ] ICLA (required for bigger changes)

Is this PR ready for review or someone can investigate the problem? I also tried running the tox, scrape-ec2-sizes.py downloads a 6GB ec.json file, which looks okay. But this script prints this error.
Using data from existing cached file /tmp/ec.json
scrape-ec2-sizes: exit -9 (837.75 seconds) /opt/libcloud> bash -c 'python contrib/scrape-ec2-sizes.py' pid=28
scrape-ec2-sizes: FAIL ✖ in 13 minutes 58.98 seconds

thanks.


Update page.mdx

Fix Typo
Problem solved
Short description of the bug fixed or feature added

PR-Codex overview
The focus of this PR is to correct a typo in the description of ERC1155Drop.
Detailed summary

Fixed a typo in the description of ERC1155Drop: changed "ERC21155" to "ERC1155" for accuracy.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

Thank you!


Fix demo code in readme

I copy-pasted this code and ended up scratching my head for a few mins while PHP was reporting 'class not found'... and then I realised that the code was wrong.

ah my bad. I will merge it when I'm on my laptop later. thanks!


[WIP] Updated submodules

I have updated submodules.
But it is crashed.
The interface seems changed.
@blueyed Can you check it?

Yes, it is not trivial.  Would need some time, which I currently do not have.
You could leave some info about how it crashes though already here.. ;)

Closing in favor of https://github.com/zchee/deoplete-jedi/pull/179.
It should work there already, but can be enhanced further.

OK.  Thanks.


Rescaling image with modifier makes it "pixelated"

When I rescale the image with modifier attribute, the image looks sharp, pixelated. Like no anti-aliasing was applied to it.
Also, I tried to downscale image file to 150px, to see if it'll look sharp too, but no. It looks normal

fun main() = application {
    Window(
        onCloseRequest = ::exitApplication,
    ) {
        Column() {
            Image(painterResource("img/test.png"), null,  Modifier.size(150.dp, Dp.Unspecified))
            Image(painterResource("img/150px.png"), null)
        }
    }
}

Images used in test: images.zip

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.