Lack of Cross-Origin-Related HTTP Security Headers

When using <script src="https://js.stripe.com/v3" async></script> to embed Stripe in a website as detailed in your README here I would hope that Stripe is following best practices for resources that are consumed by other origins. They should be responding with a Cross-Origin-Resource-Policy so that sites embedding stripe can start using the following header on their main document: Cross-Origin-Embedder-Policy: require-corp.
Environment
No response
Reproduction
No response

Hi @dbosompem, thanks for filing this. We're aware of the lack of CORP headers on js.stripe.com/v3 assets, but we don't yet have any timeline for when we will add them. We're tracking this issue internally and will post updates here if we have anything to share.
For our knowledge, can we ask what features you are using on a page with Stripe.js that require cross-origin isolation? e.g. SharedArrayBuffer, performance, etc. Is it feasible for you to load Stripe.js on a separate page that doesn't make use of these features?

@madhav-stripe Thank you for the update, I'm a part of the same organization as @dbosompem. We don't have current needs for any of the API's locked behind COEP but are just trying to abide by best practices while living in a world where Spectre exists.
There is also talk of eventually browsers will begin to require pages to opt into cross-origin isolation as detailed here and we are trying to be prepared.

Chrome 110 ships with credentialless attribute for the iframe. All you have to do is to decorate your iframe with that.

Any updates on this ? @madhav-stripe

We do not currently have any updates to share.

There is no Cross-Origin-Resource-Policy defined in stripe url https://js.stripe.com/v3/m-outer-93afeeb17bc37e711759584dbfc50d47.html#url=

Hi @arunvc. As I mentioned in #460, I do not have any updates to share on this issue.

I'm needing to use SharedArrayBuffer in various components that may or may not be used on the same page as components that use Stripe.
It'd be great if we could get these headers added or potentially as "credentialless" to the iframe stripe controls.

Any updates on this? We need to use SharedArrayBuffer

This is not a stale issue, this should be reopened.

I also would like resolution on this issue.
Any way this can be prioritized?

I was able to workaround using @tylerzey lead, hopefully this helps someone else
        window.addEventListener('load', (e) => {
            const frames = document.getElementsByTagName('iframe')
            for (let i=0; i<frames.length; i++) {
                // @ts-ignore
                frames[i].credentialless = true
                frames[i].src = frames[i].src
            }
        })

Hey folks, just wanted to share here that we are investigating support for COEP/COOP/CORP internally, but there are no specific plans to enable this in the near future. Additionally, this is not a limitation/feature of this @stripe/stripe-js helper module but of the underlying Stripe.js it loads for you.
I would recommend that you write in to support to share your use case & need for this in a way that can be tied to your accounts: https://support.stripe.com/contact
Thank you @jronnen7 for sharing that potential workaround! I hope that helps others, too.

We also need this. It's pretty sad this has been in a holding pattern for over a year: we should be able to use CSP on our site without things breaking or needing workarounds (iframe credentialless) that don't work in every browser.

To be clear, the only workaround doesn't work in Safari or Firefox which is unworkable for us: https://developer.mozilla.org/en-US/docs/Web/Security/IFrame_credentialless#browser_compatibility

It looks like we'll be moving to Adyen because Stripe isn't responding to this issue. Here's my thread with support after signing into https://support.stripe.com/contact and reporting there:
`Hello,
I've flagged your request about needing COEP/COOP/CORP in stripe-js to the relevant team. As the Github issue mentions though, unfortunately we don't have any timeline that we can share about when this will be supported.
We will reach out to let you know when we implement support for COEP/COOP/CORP in stripe-js.
Best,
Alex
--------------- Original Message ---------------
From<EMAIL_ADDRESS>Sent: 10/20/2024, 4:46 AM
To<EMAIL_ADDRESS>Subject: We need support for COEP/COOP/CORP in stripe-js
We need support for COEP/COOP/CORP in stripe-js in order to continue to use it with our site securely, per https://github.com/stripe/stripe-js/issues/417`
`So, to be clear my options are:

wait for you to release an update, with no certainty of when this will happen
ditch stripe for a competitor
lower the security of our site.

This is very frustrating as you’ve known about this issue for well over a year. I haven’t had this type of issue with any other third party library.
Can you please escalate this and make it a priority?
If not, we may need to go with #2 and I’m sure we’re not the only ones. Thank you!
Regards,
Max Carlson`
`Hi Alex,
I appreciate you being clear and transparent about this!
Unfortunately, It looks like we need to move to Adyen as they seem to take these kinds of issues seriously and respond within a month, not years:
https://github.com/Adyen/adyen-web/issues?q=is%3Aissue+content+security+policy
https://github.com/Adyen/adyen-web/issues/2336
Thank you!
Regards,
Max Carlson
On Oct 22, 2024, at 6:37 PM, Stripe Support<EMAIL_ADDRESS>wrote:
Hello,
Thank you for sharing your concerns. I completely understand how frustrating this situation is for you.
Again, I apologize but we're truly unable to commit to any timeline to support COEP/COOP/CORP in stripe-js at the moment and you might want to consider that this feature is unlikely to be available in the near future.
Best,
Alex`

Can this be reopened? It is still an issue.


FacebookTimelineItemRecyclerListBinding

Where is this type?

this is generated class by jetpack data binding so clear and rebuild project it generated automatically


miss_sum is not initalised when running multi-class ReliefF

The solution was to initalise the variable on top of the compute_score function

Thank you for pointing this out, we'll update with the fix!


Move to nodejs org?

The original purpose of this module was to experiment in building the next-gen http/1.1 client for Node.js.
I think this library is now mature enough, mainly thanks to @ronag :).
Should we move this to the nodejs org and give it a little bit of a blessing?

Sounds good to me!

LGTM :)

Let's ask to the tsc then.


[Feature Request] open-appsec-npm

Can you add open-appsec-npm this is new Secure Feature of NPM.
https://github.com/openappsec/open-appsec-npm
https://docs.openappsec.io/integrations/nginx-proxy-manager-integration
https://docs.openappsec.io/integrations/nginx-proxy-manager-integration/install-nginx-proxy-manager-with-open-appsec-managed-from-central-webui-saas
https://docs.openappsec.io/getting-started/using-the-advanced-machine-learning-model

https://github.com/openappsec/attachment
Here are the Building Process
Additional prerequisites for compiling against other NGINX Proxy Manager version

https://docs.openappsec.io/integrations/nginx-proxy-manager-integration/install-nginx-proxy-manager-with-open-appsec-managed-from-npm-webui
Here are all Local ^^ and appsec can be integrated

https://github.com/openappsec/open-appsec-npm
And here are a list of Building Process for another Nginx Proxy manager version in the Readme

they are copying binaries, where I'm not sure about if they are opensource: https://github.com/openappsec/open-appsec-npm/tree/main/docker/lib

https://github.com/openappsec/open-appsec-npm/blob/main/LICENSE
You can use this to Contribute or Comercial Use

This are WAF Files this is Open Source

And this Files are modified versions for opensec and have no Limitations

I will se if I can compile it myself and how it needs to be configured, but if you want NPM with a good appsec ui, you should stay with appsecs fork

Thats very nicee Thanks, no i use your Repo generally.

Hii @Zoey2936 have you test it?

not yeet

will take some time, sorry

OkaY i hope this will add soon

Hii @Zoey2936 have you test it recently?


fireflyiii addon https configuration

Addon name : fireflyiii
Addon version : 5.6.10

Describe the bug
I'm trying to expose the fireflyiii on HTTPS port by using ngix addon without success:
config.yaml
APP_URL: "https://XXXXXX:8123/firefly"
TRUSTED_PROXIES: "**"
Ngix configuration
location /firefly {
proxy_pass http://XXXXXX:3473/;
proxy_set_header Host $http_host:8123/firefly;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_buffering off;
}

into html page it is incorrect the url

Ho can i made this?
System

Supervisor version: supervisor-2021.12.2
Host system version: core-2021.12.9

Hi, thanks - you should however probably post that to the addon nginx github, I don't use it and not sure how it should be configured... Not all apps support nginx however

Isnt nginx proxy manager (addon) not easy to use for this kind of configuration? I use in combination with inadyn to use subdomains bind to it.

honestly I have never used the addon nginx proxy manager...
I see  $http_host:8123/firefly;, however normally isn't it accessed from  $http_host:8123 directly ?
Also you could try http://XXXXXX:3473; for proxypass (without /)

I'm using NGINX Home Assistant SSL proxy  i have found a configuration of ngix will work at 95% at moment i see when i login it is not working the redirect i need to reload the page.
If NGIX it is not the best approach how can i use these addon but with https url?
I'm using this configuration:
       location /firefly {             proxy_pass http://IP LOCAL:3473/; 			proxy_set_header X-Forwarded-For 	$remote_addr; 			proxy_set_header X-Forwarded-Host 	$host; 			proxy_set_header X-Forwarded-Proto 	$scheme; 			proxy_set_header X-Forwarded-Port 	443; 			proxy_set_header Host 		$host; 			proxy_set_header X-Real-IP 		$remote_addr; 			proxy_set_header Accept-Encoding 	""; 			rewrite 	 ^/firefly/(.*)$ 	/$1 break; 			proxy_redirect   $scheme://$host 	$scheme://$host:8123/firefly; 			sub_filter 	 $scheme://$host 	$scheme://$host:8123/firefly; 			sub_filter 	 $scheme:\/\/$host 	$scheme:\/\/$host:8123/firefly; 			sub_filter_types text/plain application/xml application/json text/html text/css text/javascript application/javascript; 			sub_filter_once  			off; 			sub_filter_last_modified 		on; 			gzip_types      text/plain application/xml application/json text/html text/css text/javascript application/javascript; 			gzip_proxied    no-cache no-store private expired auth; 			add_header Service-Worker-Allowed /; }

i'm close becouse it is not related at the addon thanks for the help

Thanks. If you find a way though don't hesitate to create a PR to add the info in the addon documentation, I'm sure it could be useful for other people! :)

Hi, did you manage to make it work in the end?

Hi,
it is not work at 100% i have still the problem at login but with refreshing of page i can use.
Thanks

Thanks for the feedback!


[DP Informational] Reminder email sent 7 days and 2 days before the scheduled meeting

Reminder email sent 7 days and 2 days before the scheduled meeting. Content:
This is a reminder that a data plane informational meeting has been scheduled for (name of service).
Date and Time and who the meeting is scheduled with (in this case Azure SDK Onboarding team)
Reminder to complete pre-requisites 48 hours prior to start of the scheduled meeting or the meeting will be cancelled.
Note => We already do this 48h prior. Do we need to make changes to the existing behavior?

@ladonnaq  is this still needed?


built failed in android (branch optimized)

Because I hasn't check on Android yet.
I'll check it on weekend.

at least, I fixed compiled bug(typo).
And I'm going to run it.

Current progress
I found that it is slow on Android.
To solve this,

Use OpenGL ES 3.0 (I think it is easy and I need to implement openGL ES3.0 option)
Use OpenGL ES 2.0 Extension (But I found that segmentation fault is caused on Huwei's smatphone)
Implementing double or triple buffering

I try to 3.

It can compile on Android


Higher priority for matrix multiplication

What should we add?
In current implementation the priority of matrix multiplication & is lower than (or perhaps equal to) + which is really confusing. For example, we often write following code to represent an interaction Hamiltonian of two subspaces, e.g. Jaynes-Cummings
Ci & Aj + Ai & Cj

where Ci and Ai are creation and annihilation operator of subspace i. However, this sometimes results in non Hermitian matrix, because it might be parsed as
(Ci & Aj + Ai) & Cj

So we always need to write more explicitly
(Ci & Aj) + (Ai & Cj)

but to me it seems like a bug.

It's not possible to change this with the infix operators unfortunately - their precedence is set by Python's order.    The quantum_info module also now defines @ for dot (as opposed to & for compose) for its operators, which does have the precedence you want.

Perhaps the design philosophy is that & is intended for quantum circuit composition, so it is not intended to be used at the same time with +. It is better to write it with @ and + as Jake said.


Suggestion: /dialoge

Command, which will allow to open dialoges for players from console will be very useful for servers with NPC plugin installed. It will be helpful when u don't want players to open dialogs via commands, and want to show them dialogs when they interact with something.

Thank you for your nice feature idea. We update the command now you can call /dialog <id> [player]  and set a player name or a selector like @a or  @p for example.


Multiple Skilltrees per build

Unable to add/attach differing skill trees (Such as levelling and a full tree) to a single build

Well, manage trees working as intended in PoB v1.4.52:

2.6 multiple trees within same build
3.0 multiple trees within same build


Front Door + APIM Backend 500 Error

Using my SWA behind a standard tier Front Door and I am running into the following 500 error when I am sending out requests with my linked APIM backend.
For example when I send the following GET request  api/surveys/workplace/all from the /hello route
I am receiving the following in response:

Below is my configuration using custom B2C Auth:
{
  "auth": {
    "identityProviders": {
      "customOpenIdConnectProviders": {
        "b2cAS": {
          "registration": {
            "clientIdSettingName": "AS_AD_CLIENT_ID",
            "clientCredential": {
              "clientSecretSettingName": "AS_AD_CLIENT_SECRET"
            },
            "openIdConnectConfiguration": {
              "wellKnownOpenIdConfiguration": "https://as.auth.surveys.halotrade.net/9bc029c2-3751-47f7-964d-08917ee570af/B2C_1A_username_susi/v2.0/.well-known/openid-configuration"
            }
          },
          "login": {
            "nameClaimType": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name",
            "scopes": ["openid", "profile"]
          }
        },
        "b2cEU": {
          "registration": {
            "clientIdSettingName": "EU_AD_CLIENT_ID",
            "clientCredential": {
              "clientSecretSettingName": "EU_AD_CLIENT_SECRET"
            },
            "openIdConnectConfiguration": {
              "wellKnownOpenIdConfiguration": "https://eu.auth.surveys.halotrade.net/1c452f9d-5416-4fba-81fa-4991e2e939e3/B2C_1A_username_susi/v2.0/.well-known/openid-configuration"
            }
          },
          "login": {
            "nameClaimType": "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name",
            "scopes": ["openid", "profile"]
          }
        }
      }
    }
  },
  "routes": [
    {
      "route": "/",
      "allowedRoles": ["authenticated"],
      "headers": {
        "Cache-Control": "no-store"
      }
    },

    {
      "route": "/login",
      "allowedRoles": ["anonymous"]
    },
     {
      "route": "/hello",
      "allowedRoles": ["authenticated"]
    },
    {
      "route": "/api/*",
      "methods": ["GET", "POST"],
      "allowedRoles": ["authenticated"]
    },
    {
      "route": "/error",
      "allowedRoles": ["authenticated"]
    },
    {
      "route": "/logout",
      "redirect": "/.auth/logout"
    }
  ],
  "globalHeaders": {
    "content-security-policy": "script-src-elem * 'unsafe-inline'; connect-src https://signalr-worker-prod-cnin-001.service.signalr.net wss://signalr-worker-prod-cnin-001.service.signalr.net https://surveys.halotrade.net/ http://localhost:4280/ https://apim-halo-prod-cnin-001.azure-api.net/surveys/negotiate https://apim-halo-prod-westeu-001.azure-api.net/surveys/negotiate https://sthalosurveysprodcnin.blob.core.windows.net https://sthaloprod.blob.core.windows.net https://sthalosurveysprodwesteu.blob.core.windows.net https://apim-halo-prod-westeu-001.azure-api.net/api/surveys/workplace/all;"
  },
  "navigationFallback": {
    "rewrite": "index.html",
    "exclude": ["/images/*.{png,jpg,gif}", "/css/*"]
  },
  "networking": {
    "allowedIpRanges": ["AzureFrontDoor.Backend"]
  },
  "forwardingGateway": {
    "requiredHeaders": {
      "X-Azure-FDID": "e6e23c4c-2e6c-4dbb-baf5-e5e33535c886"
    },
    "allowedForwardedHosts": ["surveys.halotrade.net"]
  },
  "responseOverrides": {
    "400": {
      "rewrite": "/invalid-invitation-error.html"
    },
    "401": {
      "statusCode": 302,
      "redirect": "/login"
    },
    "403": {
      "rewrite": "/custom-forbidden-page.html"
    },
    "404": {
      "redirect": "/login"
    }
  },
  "mimeTypes": {
    ".json": "text/json"
  }
}

Maybe there is something I am missing.
Thanks!

After some further testing, it seems to not be Front Door related.
The request is working as intended and hitting the backend (APIM) if I change my config to so:
    {
      "route": "/hello",
      "allowedRoles": ["anonymous"]
    },
    {
      "route": "/api/*",
      "methods": ["GET", "POST"],
      "allowedRoles": ["anonymous"]
    }

Obviously this is not ideal, what auth config changes need to now be made?

Hi @adamsebesta, did you add the API you are trying to reach to the APIM product that got created when initially linking the static web app to the API Management instance? And is the backend API route matching the requested route. Note: Both routes must start with the api prefix. You can look the step up in our Documentation.

Hi @annikel. Thank you for the reply.
I can confirm everything is working as intended with the APIM backend when I change these two routes to anonymous - the errors begin when I change to authenticated
 {
      "route": "/hello",
      "allowedRoles": ["anonymous"]
    },
    {
      "route": "/api/*",
      "methods": ["GET", "POST"],
      "allowedRoles": ["anonymous"]
    }

So I believe I do have everything setup properly.
I can also confirm I am getting the appropriate roles after logging in as well

Is there a way I can view the logs while using APIM as a backend - it would be great to see what 500 error the SWA backend is throwing.
Also, I just noticed that when I sign in with my custom auth 'b2cAS' the requests are working as intended. The 500 error is just happening when the user is signed in with 'b2cEU'. Could there be something in my custom policy which is causing this error?
Thanks

Hi @adamsebesta, is there a chance the inbound policy of the during the linking process created APIM product was edited? The product name will contain the static web apps hostname. Could you please ensure that the audience defined in the product policy matches the Gateway URL of your API Management instance.

@annikel So here is the thing. Both APIMs have the same auto-generated product policy which I have not changed, and even the same API policy.
EU
    <inbound>
        <base />
        <validate-jwt header-name="X-MS-AUTH-TOKEN" failed-validation-httpcode="401" failed-validation-error-message="X-MS-AUTH-TOKEN invalid" require-expiration-time="true">
            <openid-config url="https://identity.1.azurestaticapps.net/.auth/.well-known/openid-configuration" />
            <audiences>
                <audience>https://apim-halo-prod-westeu-001.azure-api.net</audience>
            </audiences>
        </validate-jwt>
    </inbound>
    <backend>
        <base />
    </backend>
    <outbound>
        <base />
    </outbound>
    <on-error>
        <base />
    </on-error>
</policies>

ASIA
<policies>
    <inbound>
        <base />
        <validate-jwt header-name="X-MS-AUTH-TOKEN" failed-validation-httpcode="401" failed-validation-error-message="X-MS-AUTH-TOKEN invalid" require-expiration-time="true">
            <openid-config url="https://identity.1.azurestaticapps.net/.auth/.well-known/openid-configuration" />
            <audiences>
                <audience>https://apim-halo-prod-cnin-001.azure-api.net</audience>
            </audiences>
        </validate-jwt>
    </inbound>
    <backend>
        <base />
    </backend>
    <outbound>
        <base />
    </outbound>
    <on-error>
        <base />
    </on-error>
</policies>

When I link the SWA-EU --> APIM-ASIA the backend works as intended, just not SWA-EU --> APIM-EU.
There must be something I am missing.

@adamsebesta  are you still experiencing the issue?

@annikel , @adamsebesta I am having this exact same issue, but using the built-in providers (tested with AAD and github auth). Was there ever any resolution to it?


3D coordinates not supported for geo_shape

CrateDB version:
3.0.5
Environment description:
If using docker:

Docker: docker --version
Problem can be reproduced without docker:

[x] yes
[ ] no -> Consider reporting the issue in https://github.com/crate/docker-crate instead

-->
Problem description:
Considering a table with a column of geo_shape type, it's possible to insert a point in 2D, but not a 3D point

Steps to reproduce:

create table (location geo_shape, name string);
insert into test (location,name) values
({type = 'Point',coordinates = [7.213667035102844,43.66762132536883,80.0]},'truc');

return an error:
Error!

SQLActionException[ColumnValidationException: Validation failed for location: Cannot cast {"coordinates"=[7.213667035102844, 43.66762132536883, 80.0], "type"='Point'} to type geo_shape]

with only 2 dimensions in coordinates it is OK
insert into test (location,name) values
({type = 'Point',coordinates = [7.213667035102844,43.66762132536883]},'truc');

As in the documentation you refer GeoJSON as the base model, and as GeoJSON indicates support for 3D coordinates [x,y,z], with "z" as altitude: http://geojson.org/geojson-spec.html#geometry-objects
we can consider it's a bug not supporting 3D coordinates in geo_shape and geo_point.

removed the "documentation" tag
we have had a note about this in the docs now for some time: https://crate.io/docs/crate/reference/en/latest/general/ddl/data-types.html#geo-shape
leaving the ticket open as a feature request


cartographer 3d mapping in ROS2

Hi,
I wonder if this repository supports 3d mapping in ROS2. Since Dashing does not support XML format launch files, I think this has not been tested but just uploaded without testing. and It even looks just a copy-paste of the master branch.
Ryan

ROS2 is not officially supported by cartographer_ros yet, but there are plans to do so. We are unfortunately a bit slow with this at the moment as we are currently reviving this repository again as a community-based project. There is a pull request, but it is currently just a snapshot of a very outdated fork: #1488. The work that needs to be done is to apply similar changes to the current ROS1 master, or to integrate the changes that were made in ROS1 to the old ROS2 branch.
But if you want to accelerate this development of porting to ROS2, you're more than welcome to participate. Let me know if you have questions regarding that.

I have been using ros2 cartographer repository with some success

@Serafadam @MichaelGrupp
Thank you. maybe I use the repository from the ros2 community. It looks well maintained and updated. I will close this issue.

Be aware that the ros2 repository is now 2.5 years behind upstream. But it should compile. As I said, this is the reason we and the OSRF want to make a new version here.

@MichaelGrupp
Thank you for your comment. I will take a look at their repository and see what I can contribute here.
Jaehyun

Awesome, it would be great to get help for ROS2. If you have any questions let me know.

I think I'd also like to contribute to a newer port, but I have some questions regarding this first, should I create a new issue for that? @MichaelGrupp

@Serafadam Cool! You can comment here: #1536 I created a pinned issue so this doesn't get lost. We as maintainers will discuss some things this week and the whole thing is in a very early stage, but as I said I would be more than happy to involve people on the way.


[RFC] Deprecate init and write commands on 4.0.0

Discussed in https://github.com/dynaconf/dynaconf/discussions/1154

Originally posted by rochacbruno July  8, 2024
I suggest that on 4.0.0 we remove the following CLI commands

init

Users will need to write their schema manually so this command will not be very helpful

write

USers will need to use each source client to write, dynaconf will only read data from sources.

Changes to commands:

list

cleanup the tabular formatting, remove all coloring

Any comments? is there someone  using those commands?
closes https://github.com/dynaconf/dynaconf/issues/908 https://github.com/dynaconf/dynaconf/issues/936

About the init, I think it would be convenient to have an init for boostrapping framework integrations.
For example, have dynaconf init django convert the core settings into pre-populated schema classes, possibly populated with sane default validators and django's own default values.
This is a good candidate for being a dynaconf plugin/extension, as there might be several 3rth party integrations (or plugins of these frameworks) that can potentially want to implement such integration facilities.


⚠ api.piste.gouv.fr healthcheck has degraded performance

In ccc61cb, api.piste.gouv.fr healthcheck (https://api.piste.gouv.fr/cassation/judilibre/v1.0/healthcheck) experienced degraded performance:

HTTP code: 200
Response time: 2824 ms

Resolved: api.piste.gouv.fr healthcheck performance has improved in dcd5d94.


MVP-5 Release Documentation

User Statement
As a potential System Administrator of a portfolio web system deployment, I would like access to documentation describing the christianwestbrook.dev release process so that I can see an example of what a release could look like.
Engineering Response
We will assess the existing release process being used at www.christianwestbrook.dev and contribute new documentation describing this process for review by potential System Administrators.
Technical Breakout
Current release process:

Log in to Raspberry Pi
Turn on apache web server with 'service apache2 start'
Clone the repository
Check out and pull the target release branch
Copy all contents of the public folder within the repo to the public apache2 directory at /var/www/html/ to release the target version of the web system
Create an img directory within the deployed public apache2 directory
Move data, such as blog posts and images, into the released web system under the blogs/ and img/ directories

Acceptance Criteria

[ ] README updated with a basic description of the www.christianwestbrook.dev release process

Current release process:

Log in to Raspberry Pi
Turn on apache web server with 'service apache2 start'
Clone the repository
Check out and pull the target release branch
Move all contents to the public apache2 directory at /var/www/html/ to release the target version of the web system
Move data, such as blog posts and images, into the new release

Added a description of the release process to the README.

Work is complete and the issue feature branch has been merged into main. Closing this issue.


Will this affect the size of the stored documents?

I didn't quite understand the details. Will this mean that fewer points are actually stored because some are filtered away or is it just that each one is placed "in place" so to say? In the "Deep Guide" videos I got the feeling there were way too many points being stored as well as they being spread out everywhere...

Good question! recept will not change the number of points, it just moves them somewhere else. It is possible that xochitl is afterwards simplifying strokes such that points that are all more or less on one line are represented by less points. So while recept is not changing the number of points, it could still be that the resulting document is smaller, since the resulting stroke can be more efficiently simplified.


3a Monitor run notebook does not plot until the end of run

Describe the bug
Watcher script finds the bin files and extracts the tiffs and generates the MPH metrics (found in appropriate dir) but does not plot graphs until the run is finished
Expected behavior
Plots should be generated (channel stats, MPH plot etc) and updated every time a new FOV is found.

In addition, when/if a run is interrupted halfway on the MIBI scope, start_watcher function will keep watching for new FOVs without generating any plots as a new run will be initiated for the remaining FOVs while the original run json file will never be completed.

Maybe adding an additional cell that the user could run in the even that their MIBI run failed, which would trigger all of the run_callbacks.

In addition, when/if a run is interrupted halfway on the MIBI scope, start_watcher function will keep watching for new FOVs without generating any plots as a new run will be initiated for the remaining FOVs while the original run json file will never be completed.

We should make this a separate issue. I'll open one up.


missing dependency when deploying to a clean environment.

While postgres is great, you can use flask-sqlalchemy/sqlalchemy with many different databases and database client libraries. So it's completely up to you which one to install.


enable go-card on darwin Mac OSX

Hi, I was able to get go-card running on Mac OSX. Apple has an own implementation of PCSC-Lite which is not providing a unix socket. https://ludovicrousseau.blogspot.com/2014/03/differences-between-apple-pcsc-lite-and.html
Actually apple uses the winscard approach.
You would need CGO in order to get it running. It works on my machine and all the tests are passing.

Hi, thanks for your work. I'll have a closer look after the holidays. In the meantime two questions:

It looks like your code can easily be turned into a generic winscard wrapper that works on all platforms by adding Windows and Linux specific CFLAGS and LDFLAGS. Have you considered this?
Are there any changes in smartcard/smartcard_pcsclite.go and smartcard/smartcard_winscard.go apart from formatting and the +build lines?

Hi, your lib is really nice. Helped me a lot with a project of mine.
1.) Actually you are right, you could write a single winscard wrapper that works on all platforms by using cgo, as all are actually using pcsclite.
2.) No the only changes currently are the build lines. Didn't want to mess with the other code.


BackgroundColor Changer Project in Repository #71

Kindly do not make an entire new project in the repo, read readme.md.


Add required args for cli/arg

bb_requiredarg NAME DESCRIPTION
Retrieve with bb_getopt by name.
Issue bb_errusage during bb_parseargs if required arguments are unset.

Added bb_addarg


Add missing cmake dependences

While getting xstudio to build in a rez environment I discovered that these targets were missing dependencies.
I believe the compiler just needs header-only things from these packages and that is why the linker has never caused any errors.
If you installed all your dependencies are install under the same prefix the compiler is able to find them. This isn't always the case in an environment like rez were each package has their own prefix.

Thank you!


DLS and DLA should not be marked as PREVIEW in the output of "az -h"

Marked as "PREVIEW" implies other modules are GA which might not be true, e.g. webapp for linux
Let us quickly discuss the right term we should use
    dla              : (PREVIEW) Manage Data Lake Analytics accounts, jobs, and catalogs.
    dls              : (PREVIEW) Manage Data Lake Store accounts and filesystems.

//cc:@mayurid; @JasonRShaver

Moving this out of milestone as it has passed

We could make this an automated thing for modules based on the heuristic that anything with version < 2.0 is preview.  However, there are "branches" with a command module's subtree that could still be PREVIEW (network watcher for example) but it would be a workable solution for modules at least.

let us live with with.


Postprocessing

Need to define a methodology for fixing Outline (outline from cells to be removed and one outline layer to be added at top level) and poly edge (poly array should be either continuous or terminated by a wider poly) DRC's.

Outline layer and poly edge DRCs have been resolved. Postprocessing for color DRCs and mutltiple vias is in progress.

The actual postprocessing for multiple vias is being addressed by #410.

#410 has been merged to master. This issue can be closed.


Add ITRS Geneos as vendor

ITRS provides an Open Telemetry plugin that works with our Geneos product, see https://devdocs.itrsgroup.com/docs/geneos/data-collection/opentelemetry/current/opentelemetry.html

I'm not sure if the conversation in https://github.com/open-telemetry/opentelemetry.io/pull/2207 applies to ITRS, please let me know if there's anything more you need to know.

@jbarossitrs please make sure that you sign the CLA

@svrnm I'm just waiting to hear from our legal department to confirm who our CLA Manager is and then I will sign the CLA.

I now have internal confirmation but have encountered a problem with easyCLA so waiting for a ticket with lxf to resolve https://jira.linuxfoundation.org/plugins/servlet/desk/portal/4/SUPPORT-16896

@svrnm should all be resolved now I think

/fix:format

I thought that I might not be able to update the branch, but somewhat surprisingly I was.
Rebase done and checks fixed! 😅

@chalin agreed.


PlotlyWidget in offline mode

Hi,
First of all thank you for developing this awesome Python module, this has been super useful for developing slick GUIs for controlling my Python apps.
I have implemented the PlotlyWidget in my GUI, but the flexx server crashes when I try to start it without access to the internet, it seems that Plotly is dependent on internet, is there a way around this? It is kind of critical that my app works without internet.
Thanks!

Could you post the error with which the server crashes? That might help determine what's going on.

Seems like you already posted the solution for this here:
https://github.com/flexxui/flexx/issues/618#issuecomment-591838269
I have implemented this solution, and the my flexx app now works offline :+1:
Thank you for the quick response though!


remove configuration service deprecated warnning

When running the unit-test in on-http, there will be plenty of Service.Configuration deprecated warning, it floods the console and hide those normal output.
This warning is intended to ensure the start is called before query configuration, but the start does nothing right now. So it's safe to simply remove this warning.
Of course, there are alternative ways to achieve this:
(1) Make sure the cofiguration.start is called in any service, so I need to change every repo's index.js or add the configuration.start in on-core's index.js.
(2) Still enable this deprecated warning reporting, but constraint it is only report once for each service runtime.
My PR just choose the most simple fix, I have no preference on these 3 solutions and I'm happy to change it to another one if reviewer thinks another is better.
DEPRECATION: Services.Configuration - Attempting to access color - prior to configuration service being started /node_modules/on-core/lib/services/argument-handler.js:38
DEPRECATION: Services.Configuration - Attempting to access logColorEnable - prior to configuration service being started /node_modules/on-core/lib/services/argument-handler.js:38
DEPRECATION: Services.Configuration - Attempting to access color - prior to configuration service being started /node_modules/on-core/lib/services/argument-handler.js:38
DEPRECATION: Services.Configuration - Attempting to access logColorEnable - prior to configuration service being started /node_modules/on-core/lib/services/argument-handler.js:38

@RackHD/corecommitters @iceiilin @cgx027 @WangWinson @sunnyqianzhang @pengz1

*** BUILD #297 ***
Test Name: test_node_workflows_del_active
Error Details: (404)
Reason: Not Found
HTTP response headers: HTTPHeaderDict({'Content-Length': '47', 'X-Powered-By': 'Express', 'Connection': 'keep-alive', 'ETag': 'W/"2f-Ami916vLhR5mgdpZ/fDNPQ"', 'Date': 'Thu, 03 Mar 2016 07:09:52 GMT', 'Access-Control-Allow-Origin': '*', 'Content-Type': 'application/json; charset=utf-8'})
HTTP response body: {"message":"No active workflow found for node"}

-------------------- >> begin captured logging << --------------------
urllib3.connectionpool: WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None)) after connection broken by 'ProtocolError('Connection aborted.', BadStatusLine("''",))': /api/1.1/nodes
urllib3.connectionpool: INFO: Starting new HTTP connection (10): localhost
--------------------- >> end captured logging << ---------------------
Stack Trace:   File "/usr/lib/python2.7/unittest/case.py", line 331, in run
    testMethod()
  File "/usr/lib/python2.7/unittest/case.py", line 1043, in runTest
    self._testFunc()
  File "/usr/local/lib/python2.7/dist-packages/proboscis/case.py", line 296, in testng_method_mistake_capture_func
    compatability.capture_type_error(s_func)
  File "/usr/local/lib/python2.7/dist-packages/proboscis/compatability/exceptions_2_6.py", line 27, in capture_type_error
    func()
  File "/usr/local/lib/python2.7/dist-packages/proboscis/case.py", line 350, in func
    func(test_case.state.get_state())
  File "/var/lib/jenkins/jobs/on-core/workspace/RackHD/test/tests/api/v1_1/nodes_tests.py", line 344, in test_node_workflows_del_active
    Nodes().nodes_identifier_workflows_active_delete(id)
  File "/usr/local/lib/python2.7/dist-packages/on_http_api1_1/apis/nodes_api.py", line 1336, in nodes_identifier_workflows_active_delete
    callback=params.get('callback'))
  File "/usr/local/lib/python2.7/dist-packages/on_http_api1_1/api_client.py", line 322, in call_api
    response_type, auth_settings, callback)
  File "/usr/local/lib/python2.7/dist-packages/on_http_api1_1/api_client.py", line 149, in __call_api
    post_params=post_params, body=body)
  File "/usr/local/lib/python2.7/dist-packages/on_http_api1_1/api_client.py", line 374, in request
    headers=headers)
  File "/usr/local/lib/python2.7/dist-packages/on_http_api1_1/rest.py", line 201, in DELETE
    query_params=query_params)
  File "/usr/local/lib/python2.7/dist-packages/on_http_api1_1/rest.py", line 177, in request
    raise ApiException(http_resp=r)
'(404)\nReason: Not Found\nHTTP response headers: HTTPHeaderDict({\'Content-Length\': \'47\', \'X-Powered-By\': \'Express\', \'Connection\': \'keep-alive\', \'ETag\': \'W/"2f-Ami916vLhR5mgdpZ/fDNPQ"\', \'Date\': \'Thu, 03 Mar 2016 07:09:52 GMT\', \'Access-Control-Allow-Origin\': \'*\', \'Content-Type\': \'application/json; charset=utf-8\'})\nHTTP response body: {"message":"No active workflow found for node"}\n\n-------------------- >> begin captured logging << --------------------\nurllib3.connectionpool: WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None)) after connection broken by \'ProtocolError(\'Connection aborted.\', BadStatusLine("\'\'",))\': /api/1.1/nodes\nurllib3.connectionpool: INFO: Starting new HTTP connection (10): localhost\n--------------------- >> end captured logging << ---------------------'

Thank you! I think it's safe to make the configuration library not a service as well. Originally there was a thought for requesting config values asynchronously, but that never really happened or turned out to be necessary.
:+1:

test this please

+1

:+1:  Great ! I don't like these annoying message, either.


Include screenshots in the README

It is extremely important to include examples of GUI use for those having the first look. Good example is ImGUI https://github.com/ocornut/imgui.

Agreed. Though, this is a 0.9 release, and we haven't really made a good looking demo yet. The other issue is that unlike ocornut's library, FlatUI does very little in dictating the looks, that really depends on the user.

@gwvo - The fact that the library does not dictate looks in and of itself is a key item that should be explained in the README or the Documentation.  Examples, screenshots, even some sort of a live, editable demo would be a huge boon to the understanding of new users coming to the project.

Yup, we realize we need to do a lot better in that regard.

Do you think we may still have screenshots ?

Hi, I am going to jump into this issue and remind you that this is a GUI library, yet you have absolutely no screenshots of UI's created with it, even after all this time.
I would appreciate it a lot if you could point us to some references or add some examples of what is possible to do with this on your wiki/readme, as otherwise, I'm not going to ever put in the effort to use it.
It will scare so many users away when they can't even see a single minimal example of what you can do with this. Thanks.

@carlfindahl I'm sad to say that this project currently doesn't have an active maintainer.. so unless someone wants to pick it up, the screenshots may not happen.


No light transition since december

Problem/Motivation
HA transition from web UI works well, but no transition from appdemaon, trying to reverting back to appdeamon 9.3 does not help, maybe a change in the HA API ?
The problem is present in 9.3, 10.1 and 11 version from my test
Expected behavior
Transition to work
Actual behavior
I use deconz and zigbee light, HA transition from UI works as expected but from appdemon, the parameter "transition" in turn_on command is not taken into account. Worked well back in november 2022.
Steps to reproduce

(How can someone else make/see it happen)

Proposed changes

(If you have a proposed change, workaround or fix,
describe the rationale behind it)

Debug log
2023-03-12 14:41:30.772915 DEBUG living_room: call_service: homeassistant/turn_on, {'transition': 30, 'entity_id': 'light.light_13_hue_e27_filament'}
2023-03-12 14:41:30.773054 DEBUG AppDaemon: call_service: namespace=default domain=homeassistant service=turn_on data={'transition': 30, 'entity_id': 'light.light_13_hue_e27_filament', '__name': 'living_room'}
2023-03-12 14:41:30.773171 DEBUG AppDaemon: thread_async loop, args={'function': <bound method Events.process_event of <appdaemon.events.Events object at 0x7f073baa35e0>>, 'args': ('admin', {'event_type': '__AD_LOG_EVENT', 'data': {'level': 'INFO', 'app_name': 'living_room', 'message': 'Previous message repeated 47 times', 'type': 'log', 'log_type': 'main_log', 'asctime': '2023-03-12 14:41:30.772813', 'ts': datetime.datetime(2023, 3, 12, 14, 41, 30, 772732), 'formatted_message': '2023-03-12 14:41:30.772813 INFO living_room: Previous message repeated 47 times'}}), 'kwargs': {}}
2023-03-12 14:41:30.773258 DEBUG HASS: call_plugin_service() namespace=default domain=homeassistant service=turn_on data={'transition': 30, 'entity_id': 'light.light_13_hue_e27_filament'}
2023-03-12 14:41:30.773900 DEBUG AppDaemon: Future removed from registry <Task finished name='Task-888' coro=<ADAPI.call_service() done, defined at /usr/lib/python3.10/site-packages/appdaemon/adapi.py:1677> result=None>

Issue that seems more related to home assistant API ?

This is not related to appdeamon as the problem appear in the UI too if light is off and transition is set without any other argument like brighness_pct, if target brighness argument is set transition works. turn_off transition does not work however


Look into anaconda + grakn installation failures for client-python

This issue was originally posted by @flyingsilverfin  on 2018-09-21 14:02.

@flyingsilverfin special package need to be built for Anaconda. I assume the recommended way for installing PyPI packages into Anaconda environment is using pip (as with regular installations)

Apparently it should be possible to use a standard pip package inside a conda environment, we just need to reproduce this and confirm it works.


pyyaml not installed with package installation

Summary
After initially creating a virtual environment using Python 3.10 and installing scm-config-clone using pip, the scm-clone settings command fails due to a ModuleNotFoundError: No module named 'yaml'.
Steps to Reproduce

Create a brand new python environment with python3 -m venv venv
Activate the environment source venv/bin/activate
Install the package with pip install scm-config-clone
Try to run the settings command with scm-clone settings

Error Logs
abarone@##### scm-config-clone % source .venv/bin/activate
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone % python3 --version
Python 3.10.11
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone % pip install scm-config-clone
Looking in indexes: https://pypi.org/simple<EMAIL_ADDRESS>Collecting scm-config-clone
  Obtaining dependency information for scm-config-clone from https://files.pythonhosted.org/packages/83/ad/4b47f4c526fcb97c3695f855ff4cf9b928b637fc347a8390fa9bf6a0e17f/scm_config_clone-0.2.1-py3-none-any.whl.metadata
  Using cached scm_config_clone-0.2.1-py3-none-any.whl.metadata (4.9 kB)
Requirement already satisfied: dynaconf<4.0.0,>=3.2.6 in ./.venv/lib/python3.10/site-packages (from scm-config-clone) (3.2.6)
Requirement already satisfied: pan-scm-sdk<0.4.0,>=0.3.4 in ./.venv/lib/python3.10/site-packages (from scm-config-clone) (0.3.6)
Requirement already satisfied: pandas<3.0.0,>=2.2.3 in ./.venv/lib/python3.10/site-packages (from scm-config-clone) (2.2.3)
Requirement already satisfied: setuptools<76.0.0,>=75.1.0 in ./.venv/lib/python3.10/site-packages (from scm-config-clone) (75.6.0)
Requirement already satisfied: tabulate<0.10.0,>=0.9.0 in ./.venv/lib/python3.10/site-packages (from scm-config-clone) (0.9.0)
Requirement already satisfied: typer<0.13.0,>=0.12.5 in ./.venv/lib/python3.10/site-packages (from scm-config-clone) (0.12.5)
Requirement already satisfied: cryptography<38.0.0,>=37.0.4 in ./.venv/lib/python3.10/site-packages (from pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (37.0.4)
Requirement already satisfied: oauthlib<4.0.0,>=3.2.2 in ./.venv/lib/python3.10/site-packages (from pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (3.2.2)
Requirement already satisfied: pydantic<3.0.0,>=2.9.2 in ./.venv/lib/python3.10/site-packages (from pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (2.10.3)
Requirement already satisfied: pyjwt<3.0.0,>=2.9.0 in ./.venv/lib/python3.10/site-packages (from pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (2.10.1)
Requirement already satisfied: requests-oauthlib<3.0.0,>=2.0.0 in ./.venv/lib/python3.10/site-packages (from pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (2.0.0)
Requirement already satisfied: numpy>=1.22.4 in ./.venv/lib/python3.10/site-packages (from pandas<3.0.0,>=2.2.3->scm-config-clone) (2.2.0)
Requirement already satisfied: python-dateutil>=2.8.2 in ./.venv/lib/python3.10/site-packages (from pandas<3.0.0,>=2.2.3->scm-config-clone) (2.9.0.post0)
Requirement already satisfied: pytz>=2020.1 in ./.venv/lib/python3.10/site-packages (from pandas<3.0.0,>=2.2.3->scm-config-clone) (2024.2)
Requirement already satisfied: tzdata>=2022.7 in ./.venv/lib/python3.10/site-packages (from pandas<3.0.0,>=2.2.3->scm-config-clone) (2024.2)
Requirement already satisfied: click>=8.0.0 in ./.venv/lib/python3.10/site-packages (from typer<0.13.0,>=0.12.5->scm-config-clone) (8.1.7)
Requirement already satisfied: typing-extensions>=<IP_ADDRESS> in ./.venv/lib/python3.10/site-packages (from typer<0.13.0,>=0.12.5->scm-config-clone) (4.12.2)
Requirement already satisfied: shellingham>=1.3.0 in ./.venv/lib/python3.10/site-packages (from typer<0.13.0,>=0.12.5->scm-config-clone) (1.5.4)
Requirement already satisfied: rich>=10.11.0 in ./.venv/lib/python3.10/site-packages (from typer<0.13.0,>=0.12.5->scm-config-clone) (13.9.4)
Requirement already satisfied: cffi>=1.12 in ./.venv/lib/python3.10/site-packages (from cryptography<38.0.0,>=37.0.4->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (1.17.1)
Requirement already satisfied: annotated-types>=0.6.0 in ./.venv/lib/python3.10/site-packages (from pydantic<3.0.0,>=2.9.2->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (0.7.0)
Requirement already satisfied: pydantic-core==2.27.1 in ./.venv/lib/python3.10/site-packages (from pydantic<3.0.0,>=2.9.2->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (2.27.1)
Requirement already satisfied: six>=1.5 in ./.venv/lib/python3.10/site-packages (from python-dateutil>=2.8.2->pandas<3.0.0,>=2.2.3->scm-config-clone) (1.17.0)
Requirement already satisfied: requests>=2.0.0 in ./.venv/lib/python3.10/site-packages (from requests-oauthlib<3.0.0,>=2.0.0->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (2.32.3)
Requirement already satisfied: markdown-it-py>=2.2.0 in ./.venv/lib/python3.10/site-packages (from rich>=10.11.0->typer<0.13.0,>=0.12.5->scm-config-clone) (3.0.0)
Requirement already satisfied: pygments<3.0.0,>=2.13.0 in ./.venv/lib/python3.10/site-packages (from rich>=10.11.0->typer<0.13.0,>=0.12.5->scm-config-clone) (2.18.0)
Requirement already satisfied: pycparser in ./.venv/lib/python3.10/site-packages (from cffi>=1.12->cryptography<38.0.0,>=37.0.4->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (2.22)
Requirement already satisfied: mdurl~=0.1 in ./.venv/lib/python3.10/site-packages (from markdown-it-py>=2.2.0->rich>=10.11.0->typer<0.13.0,>=0.12.5->scm-config-clone) (0.1.2)
Requirement already satisfied: charset-normalizer<4,>=2 in ./.venv/lib/python3.10/site-packages (from requests>=2.0.0->requests-oauthlib<3.0.0,>=2.0.0->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (3.4.0)
Requirement already satisfied: idna<4,>=2.5 in ./.venv/lib/python3.10/site-packages (from requests>=2.0.0->requests-oauthlib<3.0.0,>=2.0.0->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (3.10)
Requirement already satisfied: urllib3<3,>=1.21.1 in ./.venv/lib/python3.10/site-packages (from requests>=2.0.0->requests-oauthlib<3.0.0,>=2.0.0->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (2.2.3)
Requirement already satisfied: certifi>=2017.4.17 in ./.venv/lib/python3.10/site-packages (from requests>=2.0.0->requests-oauthlib<3.0.0,>=2.0.0->pan-scm-sdk<0.4.0,>=0.3.4->scm-config-clone) (2024.12.14)
Using cached scm_config_clone-0.2.1-py3-none-any.whl (75 kB)
Installing collected packages: scm-config-clone
Successfully installed scm-config-clone-0.2.1

[notice] A new release of pip is available: 23.2.1 -> 24.3.1
[notice] To update, run: pip install --upgrade pip
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone %
(.venv) abarone@##### scm-config-clone % scm-clone settings
Traceback (most recent call last):
  File "/Users/abarone/code/scm-config-clone/.venv/bin/scm-clone", line 5, in <module>
    from scm_config_clone.main import app
  File "/Users/abarone/code/scm-config-clone/.venv/lib/python3.10/site-packages/scm_config_clone/__init__.py", line 3, in <module>
    from .commands.objects.address import addresses
  File "/Users/abarone/code/scm-config-clone/.venv/lib/python3.10/site-packages/scm_config_clone/commands/objects/address.py", line 19, in <module>
    from scm_config_clone.utilities import load_settings, parse_csv_option
  File "/Users/abarone/code/scm-config-clone/.venv/lib/python3.10/site-packages/scm_config_clone/utilities/__init__.py", line 4, in <module>
    from .settings import load_settings
  File "/Users/abarone/code/scm-config-clone/.venv/lib/python3.10/site-packages/scm_config_clone/utilities/settings.py", line 7, in <module>
    import yaml
ModuleNotFoundError: No module named 'yaml'

great find, this happened because I recently removed Dynaconf from the dependencies and rely now on just loading the settings.yaml file directly with pyyaml, but it looks like we need to update the dependencies.

version 0.2.2. has been uploaded to pypi to account for the missing dependency, thanks for catching this!


Action Mod Roadmap

Planned for Modnix 3 (#23).
Modnix 3 Beta 1

[x] Expand mod_info to allow a Dictionary[] Actions field.
[x] Implement framework to allow mods to process Actions. (let's call it RunAction).
[x] Actions should add caller prefix to handler logger.
[x] Hide duplicate load log.
[x] All actions have Phase and OnError.

Modnix 3 Beta 2

[x] Make configurable. Pushed to Modnix 3.5 with config presets.
[x] Allow API to find caller.  Required to use the correct session. Need to bound caller to thread since API is thread-safe.
[x] The "Include" field runs Actions from another file, relative to the current file or absolute to the mod's folder.
[x] Update PPDefModifier to support action through include.
[x] Allow action mod to load library. Keep it simple. Between Modnix and Scripting Library, if a mod need something more it shouldn't be an action mod.
[x] Supports actions with the "Guid"/"Cls" field, and evaluates it like PPDefModifier. PPDefModifier has been updated and there is no need to have its cake.

Scripting Library Beta 1

[x] A new mod bundled with Modnix.
[x] Each mod have their own eval session, preserved between phases.
[x] Provides the "eval.cs" api to evaluate c# code.
[x] Provides the "pp.def" and "pp.defs" api for quick lookup of game def by guid, path, or type.
[x] Supports actions with the "Eval" field, and evaluates the code on the fly.
[x] Provide data cache for type/name/path.
Helpers to aid in modifying weapon, research, facility data. Weapon done, the rest need more ideas.
[x] Pre-load script evaluator in background.

Scripting Library Beta 2

[ ] A way to allow mod to add helpers.
[ ] Rewrite helpers to supports mod unload. Things get messy when multiple mods modify the same data. No good fix I can see.
[x] Use caller mod for API eval context.
[ ] A helper to get tactical item with tag(s).
[ ] Update dependent libraries.
[ ] Try to solve the assembly reference issue again to avoid dll copying.

Scripting Library no longer works, and I can't fix the dll conflicts.  Since all other tasks have been done, this tracker will now be closed.
It was nothing short of a miracle that it worked at all before.  Hopefully we can support some other kind of scripting in the future.  I am eyeing V8 integration, which should be a lot less messy in term of dlls.  It's been a pleasure, .Net Core, I will avoid you even more in the future.

Scripting Library no longer works, and I can't fix the dll conflicts.  Since all other tasks have been done, this tracker will now be closed.
It was nothing short of a miracle that it worked at all before.  Hopefully we can support some other kind of scripting in the future.  I am eyeing V8 integration, which should be a lot less messy in term of dlls.  It's been a pleasure, .Net Core, I will avoid you even more in the future.


Extra This node is not a swarm manager daemon logs

On master latest, docker inspect foo (where foo does not exist as any type of object in docker) - you see several unexpected swarm errors in the daemon log. I would expect to see just entries similar to /images/foo /networks/foo and /volumes/foo only.
time="2016-09-21T08:58:32.507710800-07:00" level=error msg="Handler for GET /v1.25/images/foo/json returned error: No such image: foo"
time="2016-09-21T08:58:32.510001500-07:00" level=error msg="Handler for GET /v1.25/networks/foo returned error: network foo not found"
time="2016-09-21T08:58:32.528259100-07:00" level=error msg="Handler for GET /v1.25/volumes/foo returned error: get foo: no such volume"
time="2016-09-21T08:58:32.529193700-07:00" level=error msg="Error getting service foo: This node is not a swarm manager. Use \"docker swarm init\" or \"docker swarm join\" to connect this node to swarm and try again."
time="2016-09-21T08:58:32.529193700-07:00" level=error msg="Handler for GET /v1.25/services/foo returned error: This node is not a swarm manager. Use \"docker swarm init\" or \"docker swarm join\" to connect this node to swarm and try again."
time="2016-09-21T08:58:32.531140300-07:00" level=error msg="Error getting task foo: This node is not a swarm manager. Use \"docker swarm init\" or \"docker swarm join\" to connect this node to swarm and try again."
time="2016-09-21T08:58:32.531140300-07:00" level=error msg="Handler for GET /v1.25/tasks/foo returned error: This node is not a swarm manager. Use \"docker swarm init\" or \"docker swarm join\" to connect this node to swarm and try again."
time="2016-09-21T08:58:32.532210300-07:00" level=error msg="Error getting node foo: This node is not a swarm manager. Use \"docker swarm init\" or \"docker swarm join\" to connect this node to swarm and try again."
time="2016-09-21T08:58:32.532210300-07:00" level=error msg="Handler for GET /v1.25/nodes/foo returned error: This node is not a swarm manager. Use \"docker swarm init\" or \"docker swarm join\" to connect this node to swarm and try again."

Yup, I noticed this as well. I think this was introduced by https://github.com/docker/docker/pull/23614, which checks all object types unconditionally (as the client isn't aware if the daemon it's talking to is running as a manger or not)
/cc @icecrime

Same here with docker 1.12.6
Have you found a workaround ?

@mfilotto this should be fixed by https://github.com/docker/docker/pull/29246, which is part of docker 1.13.1. The errors are safe to ignore though.
As a workaround, you can use docker inspect --type=container foo if you want to inspect a container, etc. Docker 1.13 adds inspect "per object type", e.g. docker image inspect foo, docker container inspect foo, etc
I'll close this issue, because this should be fixed, but feel free to comment after I closed


Cannot update ollama on windows through "restart to update"

What is the issue?
cannot update ollama on windows through clicking "restart to update" at taskbar, it has no response
OS
Windows
GPU
AMD
CPU
AMD
Ollama version
0.1.41

Hm, restart with last update worked fine for me on Windows 10. Are you on 10 or 11?

Hm, restart with last update worked fine for me on Windows 10. Are you on 10 or 11?

Thanks for replying. I'm on Windows 11.

What's your ollama version right now? (ollama -v in the Terminal)
also see #4944 , maybe same issue?

My current version is 0.1.41, and this issue also appeared last version. I do not think it's the same issue since my ollama never reestart it self.

I assume you mean the "system tray" in the lower right corner, not the taskbar. I think the best would be to take a screencast showing the problem in any case.
Take a look into the logs at C:\Users[username]\AppData\Local\Ollama, especially upgrade.log, to see if there are any error messages printed.

Yes I mean system tray actually, you're right, sorry for the confuse.

I've checked upgrade.log as image above. I didn't see any error message, and the lastest log is from May 31st.

I assume you mean the "system tray" in the lower right corner, not the taskbar. I think the best would be to take a screencast showing the problem in any case.
Take a look into the logs at C:\Users[username]\AppData\Local\Ollama, especially upgrade.log, to see if there are any error messages printed.

I think I found the reason at app.log.
"failed to register update available with tray: unable to set icon: This operation returned because the timeout period expired."
"upgrade attempt failed: no update downloads found"

I don't know if it is my network issue or due to other configuration problem.

I think it would be better to show a popup window or something to warn me that message.
By the way, I found that using a system proxy maybe the true cause into this.

By the way, I found that using a system proxy maybe the true cause into this.

Okay, cool 👍🏻 issue resolved (hopefully 🙂 ) ✔

Thanks to your help, I successfully updated to the latest version. Appreciate it ❤
Maybe I could close this issue? Or looing into how to solve this proxy caused issue?

I think it's better to close this issue as it has been resolved. If other users have a similar issue, they will find this under "closed" in the Issues section of this repo or via google.


fix(app): usernames starting with numbers/symbols

closes #1157
/deploy #persist

You can access the deployment of this PR at https://renku-ci-nb-1213.dev.renku.ch

Sorry @Panaetius can you re-approve? The acceptance tests caught a problem I would have introduced with this PR because I accidentally removed the part that truncates the username. K8s names cannot be longer than 63 characters. That truncation was already in place I just accidentally removed it earlier. Now it is back.


Various fixes discovered when preparing cs294s hw1

Fix normalization

do not remove name property even if it's not in the schema
output both the data json and the meta json since they are both needed for the device package

Add whitelist annotation to device class

genie will only load whitelisted functions if it's specified.

OK I think this is good now.


[Discussion] Azure Functions Runtime 1.0.11820 release

Discussion issue for the Azure Functions runtime release 1.0.11820 (release notes).

Release is complete.


Simple constructors

We talked about this already a month ago, I just never opened a PR. Simplifies the interaces to vertices and edges a little bit.

Explicit is better than implicit, it's better if the user specifies herself if she want ODEEdge or StaticEdge. Someone might unintentionally use the wrong signature and get a strange errormessage as a consequence (or none at all).
The has_nargs checked could be added to the standardconstructors however.


💡[FEATURE]: Sovereign Debt Crisis Prediction

Is your feature request related to a problem? Please describe.
Predict sovereign debt crises using macroeconomic indicators and deep learning.
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

@Akshat111111 pls assign it me


[Feature Request] Allow create form to be pre-filled via URL variables

Originally I posted a question in the DevDojo forum about this and @marktopper asked that I submit an issue, so here goes...
Background
In my application, I have some related tables that I would like to pre-populate certain fields via a link in a custom view.
For example, I have a table clients and while editing a client record, I need to be able to add tasks for the current client. There is already a client_id foreign key in the tasks table and I've set up a relationship but I'm wondering what is the best way to pass the client_id across in a link from the main client record view? The goal is to have the client_id pre-filled to save extra data entry.
I guess I will need to create a custom route and view for the tasks add form and pre-populate the data from the URL. It shouldn't be too complicated but since this seems like a fairly common scenario, I'm curious to know how others have done it...
Feature Request
If possible, it would be great for Voyager to support or streamline this functionality in some way. For my use, I currently only need to pass one value so I was thinking of doing it via GET parameters but maybe a POST would work better for populating multiple fields. I do like the simplicity of GET parameters when creating links to the form.
If there are any other details you need, please let me know.
Thanks for all your amazing work on Voyager!

I personally think that we could use GET until someone requests support for a longer payload.

@marktopper: I've been studying the code more and have managed to make this work in a simple manner by adding a few lines to the beginning of the handle function in src/FormFields/AbstractHandler.php:
// Allow override of value via querystring
$field = $row->field;

if (Request::get($field) !== null) {
    $dataTypeContent->$field = Request::get($field);
}

It's probably not the most elegant solution, so maybe others can suggest improvements, but for now it allows the value of any field to be pre-filled by adding a GET parameter with the same name as the field.
What do you think?

That looks like a good approach.
Will you open a pull request with this?

Yes, I'll make a pull request as soon as I have time.

I'd be hesitant to do it that way, at least without some checks in place.  That could potentially lead to injection-style attacks if we're not careful with it.  Also, there may be certain fields we don't want populated this way (e.g. "password")

You're right @fletch3555 - for my particular use case, this isn't such a concern but for something that would be included in the core, it would need much more serious consideration.
Having said that, wouldn't the underlying permissions cover most of the security concerns? My changes just allow pre-filling / overriding of certain fields but you'd still need to be authorised to add / edit for the data type.
Do you have any ideas on how you would approach this?


Add the ability to append additional fields on load.

It is possible to append arbitrary fields using the transform macro.
We should look at refactoring some of the load logic though to make it more generic.


Possible typo: libp2p / ipfs

The Community section of the website footer refers to libp2p twice, in line 164 of /messages/en.json.

"code implementations and tools using libp2p"
"join our regular product calls to discuss libp2p with us."

Is this supposed to say ipfs? I can make a PR if so.

//cc @daviddias

great catch @mishmosh. Yes please submit the PR :) Thank you!

reoslved in https://github.com/ipfs/js.ipfs.io/pull/264


No video plays on Batocera Linux

Netflix add-on version
Latest
Operative systems used
Linux (Ubuntu / Mint / ...)
Kodi version used
Kodi 20 (Nexus)
Description of the bug
When I successfully login and pick a movie it will not play. It comes up for about half a second with the playback controls and then gives an error dialog and logs this.
Steps to reproduce the behavior

Install
Login
Click on movie

Debug log - mandatory
https://paste.kodi.tv/lebatavifi.kodi
Possible fix
No response
Additional context
No response
Screenshots
No response

2024-06-18 06:35:13.340 T:2579    error : AddOnLog: inputstream.adaptive: Initialize: Failed to load library: /userdata/system/.kodi/cdm/libwidevinecdm.so: DT_RELR without GLIBC_ABI_DT_RELR dependency
2024-06-18 06:35:13.340 T:2579    error : AddOnLog: inputstream.adaptive: Unable to load widevine shared library (/userdata/system/.kodi/cdm/libwidevinecdm.so)
2024-06-18 06:35:13.340 T:2579    error : AddOnLog: inputstream.adaptive: PreInitializeDRM: OpenDRMSystem failed

this is not ISA bug, on linux arm64 you cant run widevine contents as is,
first you need to provide required library symbols to your OS
on wiki you can find some hints and links on how to solve
https://github.com/xbmc/inputstream.adaptive/wiki/Widevine-ARM64-support
here we cannot help more than this


Strategy for @client directive

Hello!
What would be the strategy for @client directive? Just ignore the whole file or ignore only a client part?
Thanks

I'm also curious, what will be the way to handle @client directive in queries. I'm planning to manage client state with apollo but no way to generate types, when I use @client directive in the query

Right now, having a @client directive in the query generates an error when the field that has been tagged with it is not in the schema.
It kind of makes sense that the field is not in the server-schema but maybe having the ability to feed multiple schemas (client and server schema etc) to codegen, which merges them and uses the result to validate the query would be useful.
Similar to what merge-graphql-schemas does but with the difference that all types are merged together.

It would be great to not have to exclude the whole file, as one of the promises of apollo-link-state is that you can get client-cached and remote data all in one query (once https://github.com/apollographql/apollo-link-state/issues/140 is fixed, at least). Plus, it would be good to have type-safety on even those local client operations.
Having those fields at least set to any would be at least a useful start though.

@kohlikohl, given that https://github.com/okgrow/merge-graphql-schemas/pull/118 has been merged, do you mind sharing how you made this all work for @client directives? What did you merge together to make codegen understand the directive? Do you literally define the client-side types, Query, and Mutation in a separate file and merge them in the cli?

@majelbstoat This is exactly what I am doing.

If anyone wants to work on incorporating a solution for this in apollo-codegen, contributions are very welcome!

I'm currently pre-processing my queries to strip the @client and @rest directives, and then using code-gen to make my TypeScript types. It's working fine, but irritating that I have to strip the directives myself.

Working on an extension for the graphql-cli-codgen tool to do just this. It uses the generate function under the hood. Most of the heavy lifting comes from the merge-graphql-schemas repo mentioned above.

I wrote a small script to merge the remote GraphQL schema with my apollo-link-state local/client schemas, not sure if its the right way though. Hope it helps anyone.

@zhenwenc's script worked perfectly for me. I created a clientSchema.graphql that defined the Queries and Mutations which use @client, pointed the script at that and my remote server, and it worked first time! I haven't looked at apollo-codegen's internals enough to know whether it would be a simple patch, but the approach works well. Thank you @zhenwenc!

@zhenwenc thx for the snippet worked for me too 👍
Though I had to change line 79 for:
const typeDefs = mergeTypes([remoteSchema, ...clientSchemas], { all: true });
(the all: true param)

@zhenwenc Thanks for your script, works perfect
As @nihaux mentioned, it's necessary to add { all: true } when you "extend" types from your server schema with new fields on the client, ie:
Person defined on server schema:
type Person {
  name: String
  dateOfBirth: Date!
}

Add agefield on the client schema:
type Person {
  age: Int!
}

Setting all: true on the mergeTypes call, merge-graphql-schemas actually merges both declarations into one type. Otherwise merge-graphql-schemas would fail (Type "Person" was defined more than once.)

Thanks @nihaux and @nilshartmann for pointing out the issue. 👍
I have updated the script. Cheers!

saved my life man!!!

Exciting update to share, we are working on official support for the @client directive at https://github.com/apollographql/apollo-cli/pull/480!

Support for the @client directive with client-side schemas has been released with Apollo CLI 1.4.0!

Is there a complete example where the schema is downloaded from the remote graphql server, combined with the local state, then generate the type definition files? I cannot seem to get this working (using apollo cli version 1.7.0)

Any documentation around how to do this would be helpful. I'm also having issues getting this to work.

I needed to generate typings for local state & remote queries.
After few unproductive hours with errors like:
   → Validation of GraphQL query document failed
   → Cannot read property 'extends' of undefined
Or trying to merge schema like in gist above and getting:
   → Type "Query" already exists in the schema. It cannot also be defined in this type definition.
I could not even recreate unit tests and then with rage I deleted apollo.config.js and suddenly everything works^^
My guess is that apollo-cli cannot read clientSchema from config and does not try to read it from flag when schema is defined in config, ugh.
@greatwitenorth  @danielwong2268  try it!

Example from unit tests for anyone in need
# src/state/schema.graphql

extend type Query { # needs to extend if type exists server-side
  localState: String!
  complexLocalState: LocalType!
}

type LocalType {
  someData: String!
}

Define some queries on some components

// src/components/SomeComponent.tsx

const GET_STUFF= gql`
  # some server query
  query SimpleQuery {
    users {
      id
    }

  # and some local
    localState @client

    complexLocalState @client {
      someData
    }
  }
`

Download schema with apollo schema:download

And hit

$ apollo codegen:generate generated \
   --queries=src/components/**/*.tsx \
   --target typescript \
   --schema src/generated/schema.json \
   --clientSchema src/state/schema.graphql

I'm so happy, that it works 🙃

@vadistic thank you for that!. I hit the same issue yesterday and was blocked by it this morning. I agree that some better error messaging would be helpful here.
I may work on a PR to help with that (and maybe some docs too).

For anyone else running into this issue, I had x2 problems:

Make sure the client schema is a .graphql file (not template literal in a .js/.ts file)
Make sure to use the extends type Mutation/Query (note the extends)

In<EMAIL_ADDRESS>I'm receiving

Unexpected argument: --clientSchema=src/config/schema.graphql`

While trying apollo client:codegen __generated --target typescript --clientSchema=src/config/schema.graphql
Did the argument change?
I was looking into the codegen there's actually no argument to pass local schema. Has this been updated and removed somehow?
I'm still not sure how this extend keyword works also. Doe anyone has a complete working example

@bsunderhus Since apollo v2, a client schema does not need to be explicitly defined anymore.  It should be evaluated appropriately if it is part of the --queries=... glob.
See this issue: https://github.com/apollographql/apollo-tooling/issues/696#issuecomment-439035918

I've noticed. I actually ended up opening the issue #731  just for this, and once I've finally found this information I immediately closed it! Totally forgot about commenting here, sorry @ZenSoftware


Support for compiling on SLES 12

To compile LISF on discover running SLES 12, I had to replace the JasPer library with openJPEG.  This pull request contains the changes needed to support either JasPer or openJPEG.
It also contains two modulefiles in a new env directory:
lisf_7_intel_18_0_3_222 for discover running SLES 11.3
lisf_7_intel_19_1_0_166 for discover running SLES 12.3

I was able to compile with this branch on discover, both SLES 11.3 and SLES 12.3, as well as on conrad.

Hi Jim:
I'm working on this now.  Question:  Do we want to merge this capability into the 557WW branch?

I do not believe that this is needed in the 557WW branch for the 7.3 release.

Thanks Jim!
Code compiles on both SLES 11 and 12.  No problems detected.  I approve.


Database performance audit

Hi Code Reviewer👋
In this PR:
-⭐Added email as an extra column to the owner's table.
-⭐ Inserted given data
##Queries:
SELECT COUNT(*) FROM visits where animal_id = 4;
Before:

After indexing:
⭐Saved > 600 ms of execution time

SELECT * FROM visits where vet_id = 2;
Before:

After indexing:
⭐Saved > 200 ms of execution time

SELECT * FROM owners where email =<EMAIL_ADDRESS>Before:

After indexing:
⭐Saved > 1400 ms of execution time

Hey @zeff96, Thanks a lot 💯 for your efforts in reviewing our code 😄

@MostafaShahat2021, Long time, how are you doing in the program

I'm doing great, I'm so happy that you gave me the code review 😄, wish you all the best brother 👍

@MostafaShahat2021, Wish you all the best too


vendor: update jedi to 2ba78ab

updtae jedi to https://github.com/davidhalter/jedi/commit/2ba78ab725f1e02dfef8bc50b0204cf656e8ee23

/cc @tweekmonster @blueyed

Heh, we did the same for jedi-vim today also: https://github.com/davidhalter/jedi-vim/pull/635

@blueyed I did PR because I saw it lol

Now fixed CI fail on another branch...

@tweekmonster @blueyed Passes CI test.
I'll merge.


Add IGNORE NULLs support in Window value functions

Value functions can have IGNORE NULL semantics.
i) first_value IGNORE NULLS gives the first non-null value of the frame. last_value IGNORE NULLs gives the last non-null value.
ii) nth_value IGNORE NULLS gives the nth non-null value of the frame.
iii) lead(lag) IGNORE NULLS gives the row at offsets (of non-null values only) from the current row.
This PR is only for IGNORE NULLS in value functions. There will be a subsequent PR IGNORE NULL in aggregate window functions.

@mbasmanova, @xiaoxmeng : Cannot add you both as reviewers for some reason. But would appreciate some feedback on this PR. Thanks !

ref https://github.com/facebookincubator/velox/pull/5502 for ExtractNulls API.

Some comments. I haven't read the whole PR, but it looks like there is a good amount of code repetition. Would it be possible to refactor?

@mbasmanova : I have done a refactoring pass to minimize the code.

@aditi-pandit There are some linter warnings.

@aditi-pandit There are some linter warnings.

@mbasmanova : These warnings are strange because those variables were being used. But they were used on only one branch of the template variable. I re-did the code in a way to remove those warnings.

These warnings are strange because those variables were being used. But they were used on only one branch of the template variable.

Thank you for checking. This particular linter rule is known to not handle this scenario well.


Convert 3.x ESCN skeletons, animations, and shaders upon import

Depends on #88009, #88078
The Problem
ESCN was a discrete scene format that was created by the Godot team for ease-of-export from Blender to Godot. The plugin was originally written for Godot 3.x and used its scene format, and has not since been updated.
However, while Godot still has support for importing this format, ESCN importing has been broken since Godot 4.0 was released due significant changes in the scene format that conversion was not implemented for:

Skeletons had a Transform pose property which was relative to bone rest in 3.x , which was broken out to Vector3 pose_position; Quaternion pose_rotation; Vector3 pose_scale that are absolute in 4.x.
Animations used to have a transform track type with transforms relative to bone rest in 3.x, which was similarly broken out into position_3d, rotation_3d, and scale types that are absolute in 4.x
The shaders that were included in the ESCN export were of the 3.x format, which is not compatible with 4.x.

Solution
This adds the following features to the ESCN editor importer:

Converts 3.x Skeletons to use the new pose properties and recomputes them to be absolute rather than relative to the bone rest.
Converts 3.x Animations with transform tracks into position, rotation, and scale tracks that are absolute rather than relative to the bone rest.
Converts old shader code to 4.x-compliant shader code

Design Considerations
The reason this is a draft right now is because of the following issues that I need advice on. This will likely be broken up into seperate PRs based on the feedback.
ResourceLoader modification to allow special handlers for a single load
I had issues with converting Animations and Shaders; basically, we can't handle converting them in either of the _set() functions for these classes like we can for Skeleton3D because:

Animation tracks are stored ini style:

This means that, upon load, each of those indexed properties gets set, one at a time. We need to split the transformation track up into position, rotation, and scale tracks, and we can't arbitrarily add tracks in the middle of a load, since the index of the tracks will change.

Shaders compile their code upon setting the code property; if the code fails to compile, code won't be set. Additionally, it will result in a very, very long error message that will obliterate the error logs and significantly confuse the user.

Both of those class names are the same from 3.x to 4.x, so I couldn't implement another class for either of those to handle the loading either.

So, to solve these issues, I modified the ResourceLoader to allow the addition of special handlers. Basically, we can add a handler for a specified Resource class that takes in a MissingResource and returns a Resource. If we try to load a resource, and the resource loader detects that it has a handler for this resource class, it will instead load the resource as a MissingResource and, after the resource and its properties are finished loading, it will hand it off to the handler to instantiate the resource and set its properties.
I had considered modifying the ResourceLoader classes to just add the property to missing_resource_properties if it fails to be set and then just getting those properties out of the metadata, but as mentioned above, this would result in a bunch of error messages (1000+ lines in total length) every time we tried to import an ESCN, which is not ideal.
The way I have it now, I'm not really sure if this is the correct design; this sort of special handling needs to be only for a single load rather than a global handler, so I decided to only add it to the instantiated ResourceLoader classes rather than the static ResourceFormatLoader classes. This breaks the pattern a bit, as it looks like it's intended that the user doesn't use the instantiated ResourceLoader class and instead uses the ResourceFormatLoader class. I'd appreciate some advice on how to implement this such that it can be used for a single load and doesn't break the pattern here.
ShaderLanguage token stream emitting
Converting Shaders from 3.x to 4.x is a bit more complicated than how it's currently handled in the 3.x to 4.x converter. In order to do a proper conversion of a 3.x to 4.x, we need to do the following:

Replace everything in RenamesMap3To4::shaders_renames
SCREEN_TEXTURE, DEPTH_TEXTURE, and NORMAL_ROUGHNESS_TEXTURE were removed, so their usage necessitates adding a uniform declaration at the top of the file
If shader_type is "particles", we need to rename the function void vertex() to void process()
CLEARCOAT_GLOSS was changed to CLEARCOAT_ROUGHNESS and its usage was inverted (i.e. ascending values now increase the roughness rather than decreasing it). So, we need to invert all usages of CLEARCOAT_GLOSS:

invert all lefthand assignments:

CLEARCOAT_GLOSS = 5.0 / foo;

becomes: CLEARCOAT_ROUGHNESS = (1.0 - (5.0 / foo));,

CLEARCOAT_GLOSS *= 1.1;

becomes CLEARCOAT_ROUGHNESS = (1.0 - ((1.0 - CLEARCOAT_ROUGHNESS) * 1.1));

invert all righthand usages

foo = CLEARCOAT_GLOSS;

becomes: foo = (1.0 - CLEARCOAT_ROUGHNESS);

async_visible and async_hidden were removed, so these render modes need to be removed
specular_blinn and specular_phong render modes were removed, and we can't handle these, so we just throw an error
MODULATE is not supported (yet) in 4.x, so we have to throw an error.

As you can see, this is a bit more complicated than a simple regex search and replace would allow for, in particular the CLEARCOAT_GLOSS replacement. We at least need a token stream in order to properly detect for these conditions and modify the code.
So, in order to do this, I modified ShaderLanguage to emit a token stream:

The function token_debug_stream() was added to emit a parsed token stream for the entire file.
Token was modified to add position and length members so that we can emit code based on the token stream; this is neccesary primarily because the token parser can modify both identifiers and constant values before creating the token.
The tokens TK_TAB, TK_CR ,TK_SPACE, TK_NEWLINE, TK_BLOCK_COMMENT, TK_LINE_COMMENT, and TK_PREPROC_DIRECTIVE were added and _get_token() was modified to emit them, but only if we are doing a debug parse. The reason for adding these was so that we can easily emit the new code from the token stream without obliterating the original formatting and comments

With these modifications, we're able to easily detect for the above conditions and insert and remove tokens from the token stream, and then emit code based on that token stream.
I'm a bit more confident about how I modified ShaderLanguage here but I'd still like to get feedback on how I modified ShaderLanguage here, and if there are any other 3.x to 4.x differences that I need to handle that I missed.

These are several unrelated improvements, please make a PR for each feature

These are several unrelated improvements, please make a PR for each feature

That's the plan, they're not going to stay in this PR. This is just my working branch so I can get feedback on specific design questions.

Thats not really how you should do things, each issue or feature should be discussed separately, and you shouldn't open a PR for your working branch but work on each feature on one branch unless they're dependent on each other 🙂, this just takes up processing and duplicates things

Ok, I have removed the extraneous commits and specified which PRs this depends on.

I think this adds too much complexity to the import system which is not really the point of the importer.
If the goal is to add back compat with 3.x resources, we should do it one of two ways:

expose them with a conversion utility (and perhaps the escn importer could invoke this conversion utility code automatically, but this way it isn't adding complexity to the import system itself). This code will have a maintenance cost to maintain.
fix data in the resource loader or the property setters.

My personal opinion is that if this is to be done automatically, it should be done in the resources itself, which you attempted to explain why it wasn't possible, but I think it should be made to be possible. For example, we have discussed a compatibility system. We know which Godot version the resources originated from, so perhaps we can add the missing parts to the resource loader so that we can adapt the properties. These would be a good usecase for such a compatibility system.

Animation tracks are stored ini style:

This means that, upon load, each of those indexed properties gets set, one at a time. We need to split the transformation track up into position, rotation, and scale tracks, and we can't arbitrarily add tracks in the middle of a load, since the index of the tracks will change.

Yes, but you will know how much the index changes: you can store an offset that starts at 0 and increases by 2 for every transform track. In principle, the indices could be offset as the properties are set. It certainly is challenging and may be impossible without some changes to the core resource loader, but I do think we should be willing to look outside of the box rather than adding a lot of complexity to the import system.

Shaders compile their code upon setting the code property; if the code fails to compile, code won't be set. Additionally, it will result in a very, very long error message that will obliterate the error logs and significantly confuse the user.

What if when the code fails to compile, it could attempt to run it through the above converter and use that converted code if it succeeds?

Both of those class names are the same from 3.x to 4.x, so I couldn't implement another class for either of those to handle the loading either.

Yeah I don't think we want to add compatibility code especially at runtime. Load-time or editor-time conversion could be supported only if TOOLS_ENABLED, for example.
Do note also that if we do go this route, we need to make sure mesh compatibility issues are solved .
related issues:

#87050 will fix skeletons upgraded on 3.x
#63550 meshes are broken on upgrade from 3.x - I think this would be a blocker. Do we need to solve this as well?

So what we talked about in the rocketchat was that the best course of action for modifying the resource loading to accommodate this would be to instead add void _start_load(int format, bool binary) and void _finish_load(int format, bool binary) virtual methods (that are NOPs by default) to Resource to accommodate this. the binary and text resource loaders would call _start_load() when the sub/main resource is instantiated, before any properties are loaded, and _finish_load() after all the properties have been read and set on the instanced resource.
For Animation, the main problem is that the transform tracks need to be split into seperate tracks, and all the properties for the tracks are set one at a time.
So for Animation, the steps would be:

if _start_load() is called, set a flag in the metadata
in _set() in Animation.cpp, if the _start_load() flag is set and if we read in a track with a transform type, store it and all of its subsequent properties in the resource metadata
once _finish_load() is called, get those tracks out of the metadata, and then split them into position_3d, rotation_3d, and scale_3d tracks, and then clear the metadata of the flag and the transform track data.

This would still entail some steps in the scene importer; we would still have to recompute the animation frames to be absolute rather than relative to the skeleton rest, but we already do plenty of that in the scene importer for other scene types.
For Shader, the main issues are:

the code is compiled as soon as the code property is set, which does not allow for fixing it after the fact,
failed compilations will spit out 1000+ line error messages
We don't want to auto-convert any shaders that aren't actually from Godot 3.x.

For Shader, the steps would be:

If _start_load() is called, AND the format value is binary format 3 or text format 2 (i.e. the resource format versions used for all Godot 3.x releases), then we set a flag in the metadata
in set_code() in Shader.cpp, if the flag is set:

instead of compiling right away, first run the code through the ShaderLanguage parser (this is done to avoid printing the huge error messages that accompany failed shader compiles)
If the ShaderLanguage parser fails, THEN we do some additional tests to see if it is in fact a 3.x shader (i.e. checking for old identifiers)
If our tests indiciate that it is a 3.x shader, we run it through the code converter
If the code conversion succeeds, then we compile and set the code property.

So, these steps would only be run on Shaders that are embeded in other resources (i.e. would not automatically be run for standalone gdshader files), and would only be run if the resource is in a deprecated format. This will prevent the "Unity shader auto-upgrade" shenanigans that @lyuma expressed their wishes in avoiding.

depends on #88078

I have a project that contains ESCN, that needs this PR to make it in....

grab one of the editor artifacts from the build jobs, import it, and then save it as a godot 4 scene :)


Install openssl using FetchContent for compatibility.

It currently uses find_package which has a hardcoded directory for my machine. This needs to be fixed for compatibility and ease of use.

https://github.com/janbar/openssl-cmake/tree/master

Never mind


Improve App card ui/ux

Right now only clicking on the line containing the App name within the app card would trigger a redirection, however we would like that the redirection is applied when clicking on the whole card content (excluding the action button)
More info about the card components names are here https://ant.design/components/card/ .
We also would like to apply a card light color on card hover

@aakrem hey, can I work on it?

Of course @nayeem01 . Assigned it to you!

hey @nayeem01, are you still working on this or shall I assign it to someone else ?

Hey, @aakrem should I attempt this issue? If other person is not working

Hi @Rhythm-08 Please do! thanks for taking this!


Add Parallax occlusion to the PerturbNormal node

https://forum.babylonjs.com/t/nodematerialeditor-and-parallax-occlusion/19962/2

Closed with #10257

Ok I've checked feasibility and it is far more complicated that I initially thought.
The problem is that parallax need to read from the normal maps multiple times (it is sampling the pixel environment to compute the parallax effect) and this is not how NME works unfortunately so the only possible way would be to duplicate the texture node to create the PerturbNormalWithParallax node but this seems overkill.
So I'm closing this issue as it will not be supported any time soon :(